﻿@charset "UTF-8";

.result-content .update {
	text-align: right;
    width: 73%;
    margin-top: -70px;
    font-size: 14px;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) and (max-width: 1000px) {
.result-content .update {
	width: 100%;
}
}
@media screen and (max-width: 767px) {
.result-content .update {
	width: 100%;
}
}

/* ----------------------------------
       compliance
---------------------------------- */
.compliance {
	margin-bottom: 30px;
}
.compliance .compliance_nav {
	display: flex;
	justify-content: center;
	gap: 20px 0;
}
.compliance .compliance_nav li {
  font-size: 15px;
  padding: 0 20px;
	border-right: 1px solid rgba(0, 0, 0, 0.12);
}
.compliance .compliance_nav li:last-child {
	border: none;
}
    .compliance-link-btn {
      background: none;
      border: none;
      padding: 0;
      margin: 0 auto;
      font-family: inherit;
      font-size: 0.85rem;
      color: #333;
      cursor: pointer;
      text-decoration: none;
      transition: color 0.2s ease, text-decoration 0.2s ease;
    }
    .compliance-link-btn:hover {
		opacity: .7;
    }
	
    .modal-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.6);
      display: flex;
      justify-content: center;
      align-items: center;
      z-index: 9999;
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.3s ease, visibility 0.3s ease;
      padding: 20px;
      box-sizing: border-box;
	  color: #333;
    }
    .modal-overlay.is-open {
      opacity: 1;
      visibility: visible;
    }

    .compliance-container {
      position: relative;
      max-width: 1080px;
      width: 100%;
      max-height: 85vh;
      overflow-y: auto;
      background-color: #ffffff;
      padding: 40px;
      border-radius: 8px;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
      text-align: left;
	  letter-spacing: 0;
    }
	
    .modal-close-btn {
      position: absolute;
      top: 15px;
      right: 20px;
      background: none;
      border: none;
      font-size: 2rem;
      line-height: 1;
      color: #888888;
      cursor: pointer;
      padding: 5px;
      transition: color 0.2s ease;
    }

    .modal-close-btn:hover {
      color: #333333;
    }

    .compliance-container h2.main-title {
      font-size: 1.6rem;
      text-align: center;
      margin-top: 0;
      margin-bottom: 30px;
      padding-bottom: 15px;
      border-bottom: 3px solid #333;
      color: #333;
	  line-height: 1.5;
      background-color: transparent;
      border-left: none;
      padding-left: 0;
    }

    .compliance-container h3 {
      font-size: 1.25rem;
      background-color: #f0f4f8;
      color: #333;
      padding: 5px 15px;
      border-left: 4px solid #333;
      margin-top: 40px;
      margin-bottom: 20px;
    }

    .compliance-container h4 {
      font-size: 1.05rem;
      color: #333;
      margin-top: 0;
      margin-bottom: 10px;
      border-bottom: 2px solid #e0e0e0;
      padding-bottom: 5px;
    }

    .compliance-container p {
      margin-bottom: 15px;
      line-height: 1.5;
      color: #333333;
    }

    .compliance-container ol {
		list-style: decimal;
  list-style-position: outside;
      padding-left: 20px;
      margin-bottom: 30px;
    }

    .compliance-container ol li {
      margin-bottom: 8px;
      line-height: 1.5;
    }

    .compliance-container ul {
		list-style: disc;
  list-style-position: outside;
      padding-left: 20px;
      margin-bottom: 20px;
    }
	.compliance-container ul ul {
  list-style: circle;
  margin-bottom: 0;
}

    .compliance-container ul li {
      margin-bottom: 8px;
      line-height: 1.5;
    }

    .compliance-container .contact-info,
    .compliance-container .address-box {
      background-color: #f8f9fa;
      border: 1px solid #e9ecef;
      padding: 15px 20px;
      border-radius: 5px;
      margin: 15px 0 25px 0;
    }

    .compliance-container .contact-info p,
    .compliance-container .address-box p {
      margin: 5px 0;
    }

    .compliance-container dl.contact-dl {
      display: grid;
      grid-template-columns: 180px 1fr;
      gap: 10px 15px;
    }

    .compliance-container dl.contact-dl dt {
      font-weight: bold;
      color: #495057;
    }

    .compliance-container dl.contact-dl dd {
      margin: 0;
	  line-height: 1.5;
    }
	
    .compliance-container .date_name {
		text-align: right;
		margin-top: 45px;
		margin-bottom: 30px;
	}
	.compliance-container .smp_on {
		display: none;
	}
    @media (max-width: 600px) {
	.compliance .compliance_nav li {
		padding: 0 10px;
	}
      .compliance-container {
        padding: 30px 15px 20px 15px;
        max-height: 90vh;
		line-height: 1.4;
		font-size: 14px;
		letter-spacing: 0;
      }

      .compliance-container h2.main-title {
        font-size: 1.2rem;
      }

      .compliance-container h3 {
        font-size: 1.02rem;
      }
	  
	  .compliance-container h4 {
	  	font-size: 1rem;
	  }

      .compliance-container dl.contact-dl {
        grid-template-columns: 1fr;
        gap: 5px;
      }

      .compliance-container dl.contact-dl dt {
        margin-top: 10px;
      }

      .compliance-container dl.contact-dl dt:first-child {
        margin-top: 0;
      }
	  .compliance-container .contact-info, .compliance-container .address-box {
	  	padding: 10px 10px;
	  }
	  .compliance-container .smp_on {
		display: inline-block;
	}
    }
