@charset "UTF-8";
/* CSS Document */

h1{ margin: 0;}

*[lang="ko-KR"],
*[lang="zh-CN"],
*[lang="zh-TW"]{ font-weight: bold;}

.table_fees{ color: #000; font-size: 86%; width: 100%; border: solid 2px #8FC31F;}
.table_fees *{ margin-top: 0;}
.table_fees th,
.table_fees td{ padding: 0.5em; line-height: 1.5; vertical-align: middle; text-align: center;}
.table_fees th{ background: #8FC31F; color: #FFF; font-weight: 800;}
.table_fees td{ background: #FFF; color: #000; font-weight: 800;}
.table_fees .caption{ font-size: 77%;}
.table_fees tr th:nth-child(3){ border-left: solid 2px #FFF;}
.table_fees tr th:nth-child(2n){ border-left: dotted 2px #FFF;}
.table_fees tr td:nth-child(3){ border-left: solid 2px #8FC31F;}
.table_fees tr td:nth-child(2n){ border-left: dotted 2px #8FC31F;}
.table_fees tr td{ border-bottom: solid 2px #8FC31F;}
@media screen and ( max-width: 480px ) {
  .table_fees{ font-size: 100%;}
}

.tax_note{ display: flex; gap: 4%; align-items: flex-end;}
.tax_note > *{ flex: 0 0 48%;}
.tax_note h3{ font-size: 128%;}
@media screen and ( max-width: 480px ) {
  .tax_note figure{ flex: 0 0 33%;}
  .tax_note h3{ flex-grow: 1; font-size: 108%; font-weight: bold;}
}

.past_project_title{ text-align: center; margin: 2.0em 0 0 0;}
.past_project_title h3{ font-size: 128%; letter-spacing: 0.1em;}


.projects{}
.projects article{ margin: 2.0em 0 0 0; display: flex; gap: 0 4%;}
.projects article > *{ flex: 0 0 48%;}
.projects article h3{ margin: 0; font-size: 128%; font-weight: bold; line-height: 1.5;}
.projects article ul{}
.projects article ul li{ margin: 0.3em 0 0 0; line-height: 1.5;}

.link_block{ background: #FFFFFF; border-radius: 0.5em; display: flex; align-items: center;}
.link_block span{ display: block; margin: 0; background: #3A2762; color: #FFF; font-weight: bold; padding: 0.5em 1.5em; border-radius: 0.5em 0 0 0.5em;}
.link_block a{ display: block; margin: 0 0 0 1.0em;}
@media screen and ( max-width: 480px ) {
  .projects article{ display: block;}
  .link_block{ display: block; background: none;}
  .link_block span{ width: fit-content; border-radius: 0.5em 0.5em 0 0; padding: 0.5em;}
  .link_block a{ display: block; background: #fff; margin: 0; padding: 0.5em; border-radius: 0 0.5em 0.5em 0.5em;}
}

.section_contact{ margin: 2.0em 0 0 0; border-top: solid 2px #3A2762;}
.contact_jp{ display: flex; gap: 0 8%;}
.contact_jp figure{ flex: 0 0 25%;}
.contact_jp h3{ margin: 0; font-weight: bold;}

.contact_foreign{ text-align: center; border: 2px #3A2762; border-style: dotted none;}
.contact_foreign h3{ margin: 0; font-weight: bold;}
.contact_foreign h3+*{ margin-top: 0;}
.contact_foreign article{ margin: 0; padding: 1.0em 0;}