@charset "utf-8";

:root {
  --text:#000000;
  --text-nk-blue700:#003E70;
  --caution:#ce0000;
  --nk-darkblue:#213C4C;
  --nk-lightblue:#5DAAF3;
  --nk-lightblue200:#F1F8FF;
  --nk-whiteblue:#E9F7FF;
  --nk-blue700:#003E70;
  --nk-blue500:#005FAC;
  --bg-light-gray:#F0F0F0;
  --footer-blue:#405C72;
  --faq-yellow:#FFEA01;
}

*,*::before,*::after {box-sizing: border-box;}

html { scroll-behavior: smooth; scroll-padding: 58px;}
body { color:var(--text); font-family:"Noto Sans JP", sans-serif; font-size:100%;min-height: 100vh;}

a {color:var(--text); text-decoration:underline; transition:0.5s ease;}
a:hover {text-decoration:none;}
p {font-size: 1rem; font-weight: 500; line-height: 1.8; margin-block-start:0; margin-block-end:20px;}
p:last-child {margin-block-end: 0;}
img { max-inline-size:100%; max-block-size: 100%;}
ul, ol { list-style: none; padding: 0; margin: 0;}

@media screen and (max-width: 768px) {
  p {font-size: 0.875rem;}
}

/** title tag: ウィンドウ幅に合わせて書体サイズを自動調整する記述に **/
h1 {color:var(--text-nk-blue700); font-size: clamp(30px, calc(30px + (56 - 30) * ((100vw - 768px) / (1920 - 768))), 56px); line-height: 1.3; font-weight:700; margin-block-start:0; margin-block-end:10px;}
h1 span {font-size: clamp(24px, calc(24px + (48 - 24) * ((100vw - 768px) / (1920 - 768))), 48px); font-weight: 700;}
h1:last-child {margin-block-end:0;}
h2 {position:relative; color:var(--text-nk-blue700); font-size: clamp(30px, calc(30px + (36 - 30) * ((100vw - 1200px) / (1920 - 1200))), 36px); margin-block-start:0; padding-block-end:20px; margin-block-end:20px; line-height: 1.5; font-weight:600; text-align:center;}
h2 span {font-size: clamp(24px, calc(21px + (24 - 21) * ((100vw - 1200px) / (1920 - 1200))), 24px);font-weight:700;}
h2::after {position:absolute; content:''; width:88px; height:3px; background-color: #5DAAF3; left:50%; bottom:0; transform: translateX(-50%);}
h2.u-white {color:#FFF;}
h3 {font-size: clamp(24px, calc(24px + (30 - 24) * ((100vw - 1200px) / (1920 - 1200))), 30px); margin-block-start:0; margin-block-end:30px; line-height: 1.5; font-weight:700;}
h4 {color:var(--text-nk-blue700); font-size:clamp(21px, calc(21px + (24 - 21) * ((100vw - 1200px) / (1920 - 1200))), 24px); font-weight:700; text-align: center; margin-block-start:0; margin-block-end:20px;}
h5 {color:var(--text-nk-blue700); font-size:clamp(16px, calc(16px + (18 - 16) * ((100vw - 1200px) / (1920 - 1200))), 18px); margin-block-start:0; text-align: center; margin-block-end:20px; line-height:1.5;}
h6 {font-size: clamp(16px, calc(16px + (18 - 16) * ((100vw - 1200px) / (1920 - 1200))), 18px); margin-block-start:0; margin-block-end:20px;}

br.brpc {display: block;}
br.brmd {display: none;}
br.brsp {display: none;}
br.brmd-only {display: none;}

@media screen and (max-width: 1024px) {
  br.brmd {display: block;}
}
@media screen and (max-width: 1024px) and (min-width:769px) {
  br.brmd-only {display: block;}
}

@media screen and (max-width: 768px) {
  h1 {font-size:1.875rem; text-align:center;}
  h1 span {font-size: 1.5rem}
  h2 {font-size: 1.5rem;}
  h3 {font-size: 1.25rem;}
  h4 {font-size: 1.125rem;}
  h5 {font-size:1rem;}
  h6 {font-size:0.875rem;}
  br.brpc {display: none;}
}
@media screen and (max-width: 640px) {
  br.brsp {display: block;}
}
/* header */
header {padding:8px 20px;}
.c-header-inner { max-width: 1200px; width: 100%; display: flex; justify-content:space-between; align-items:center; margin: 0 auto;
}
header .c-logo {max-width:207px; width:100%; height:32px;}
header .c-logo a {display: inline-block;} 
header .c-btn {max-width:300px; height:48px;}

@media screen and (max-width: 768px) {
header .c-logo {max-width:120px; width: 100%; height:auto;}
header .c-btn {max-width: 180px; height: 40px; margin:0;}
}
  
/*mv*/
.p-mv {background:url(../images/mainvisual_img.webp)no-repeat top right; background-size:cover;}
.p-mv__container {max-width:1200px; width:100%; padding-inline:0; margin:0 auto;}
.p-mv__inner {position:relative; display: flex; justify-content: flex-start; align-items:center; height: 350px; }
.p-mv__text {color: var(--nk-blue700); font-size: clamp(16px, calc(16px + (28 - 16) * ((100vw - 768px) / (1920 - 768))), 28px);  font-weight:500; margin-block-end:15px;}
.p-mv__text ruby > rt {font-size:1rem; text-align:center;}
.p-mv__subtitle {color: var(--nk-blue700);}
.p-mv__image {position:relative; max-width:400px; background:none;}
.p-mv__image img {position:relative; left:0; bottom:-85px;}

@media screen and (max-width: 1280px) {
  .p-mv__container {padding-inline:40px;}
  .p-mv {background:url(../images/mainvisual_img.webp)no-repeat top right -150px;}
}

@media screen and (max-width: 1024px) {
  .p-mv { background: url(../images/mainvisual_img.webp) no-repeat top right -220px;}
  .p-mv__image {max-width:300px;}
  .p-mv__image img {bottom:-110px;}
  .p-mv__content {width: 100%;}
}

@media screen and (max-width: 768px) {
  .p-mv {background:url(../images/mainvisual_img_sp.png)no-repeat bottom center; padding-block-start:40px;}
  .p-mv__container {padding: 0;}
  .p-mv__inner {flex-wrap:wrap; height:auto;}
  .p-mv__content {margin-block-end:40px; padding-inline:20px;}
  .p-mv__text {font-size:1.125rem; font-weight:500; margin-block-end:10px; text-align:center;}
  .p-mv__text ruby > rt {font-size:0.75rem;}
  .p-mv__image {max-width:initial; width: 100%; background:url(../images/mainvisual_mv_img_bg.png)no-repeat top center; background-size:cover;width: 100%; height: 100%; aspect-ratio: 192 / 125;}
  .p-mv__image img {position:absolute; width:70%; bottom:-40px; left:50%; transform:translateX(-50%); height:auto;}
}

/* intro */
.p-intro-section {background: url(../images/intro_bgimg.png)no-repeat bottom center; background-size:cover; padding-block:30px; padding-inline:40px;}
.p-intro-section__container { max-width: 1200px; width: 100%; margin: 0 auto;}
.p-intro-section__title {text-align:left;}
.p-intro-section__content {color: var(--text-nk-blue700);}

@media screen and (max-width: 768px) {
  .p-intro-section { padding-block: 60px 30px; padding-inline:20px;}
}

/* service */
.p-service-section {background:url(../images/service_section_bgimg.svg) no-repeat bottom center #F1F8FF; background-size: contain; padding-block: 30px 60px; padding-inline: 40px;}
.p-service-section__container {max-width:1200px; width:100%; margin: 0 auto;}
.p-service-section__inner { margin-block-end:40px; padding-inline: 40px;}
.p-service-list {border-radius:10px; box-shadow: 0 4px 10px rgb(0 0 0 / 10%); background-color:#FFF;}
.p-service-list__inner {padding: 10px;}
.p-service-section__subtitle {color: var(--nk-blue700);}
.p-service-list__table {border-collapse:collapse}
.p-service-list__table-header { background-color:var(--nk-blue500); color:#FFF; height: 32px; }
.p-service-list__table-header.u-b_radius_lt10 {border-radius: 10px 0 0 0;}
.p-service-list__table-header.u-b_radius_rt10 {border-radius:  0 10px 0 0;}
tbody .p-service-list__table-row:nth-child(odd) { background-color:var(--bg-light-gray);}
.p-service-list__table-item:first-child {width:18.6525%; font-size:1rem; color: var(--text-nk-blue700); font-weight:700; padding-block: 10px; padding-inline:20px; line-height:1.5; vertical-align:middle; }
.p-service-list__table-item {width:27.1158%; font-size: 0.875rem; padding: 10px; border-inline-end: 1px solid #C0CCD6; vertical-align: text-bottom; line-height:1.8; letter-spacing:0;}
.p-service-list__table-item-list {margin: 0; padding-inline-start:15px;}
.p-service-list__table-item-list li {position:relative;}
.p-service-list__table-item-list li::before {position: absolute; content:'●'; left: -15px; top: 0;}


@media screen and (max-width: 768px) {
  .p-service-section {padding-block:40px; padding-inline:0;}
  .p-service-section__inner {margin-inline:20px; padding-inline:0;}
  .p-service-list__tablearea {overflow: scroll;}
  .p-service-list__table {width:1000px;}
}

/* cta */
.p-cta-section {color:#FFF; background-color: var(--nk-darkblue); padding-block: 60px;}
.p-cta-section__container {max-width:1024px; width:100%; margin:0 auto;}
.p-button-group {display: flex; justify-content: center; align-items: flex-start;}
.c-btn-area { display: flex; justify-content: center; gap: 60px; margin-block-end: 40px; flex-wrap: wrap;}
.c-btn-group__item { max-width:300px; width:100%; }
.c-btn-group__item-text,.c-btn-group__item-subtext {text-align:center;}
.c-btn-group__item-subtext.blue {color: var(--nk-blue700);}
.c-btn-group__item-subtext a {color:#FFF;}
.c-btn-group__item-subtext a.blue {color:var(--nk-blue700);}
.c-btn { max-width: 350px; width: 100%; height: 60px;}
.c-btn .c-btn-link {position: relative; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; background: #FFEA01; background: linear-gradient(-119deg,rgba(255, 234, 1, 1) 0%, rgba(235, 176, 15, 1) 100%); color:var(--text-nk-blue700); text-decoration: none; border-radius: 5px; font-weight: 700; border-radius: 60px; font-size: 1.125rem; transition: 0.5s ease;}
.c-btn .c-btn-link:hover { background: rgba(255, 234, 1); background: linear-gradient(-119deg,rgb(255, 246, 141) 0%, rgb(255, 201, 51) 100%);  transition: 0.5s ease;}

@media screen and (max-width: 768px) {
  .p-cta-section {padding-block:40px;}
  .p-cta-section__inner {padding-inline:20px;}
  .c-btn-area {gap:30px; margin-block-end:20px;}
  .c-btn {max-width:300px; height:48px; margin: 0 auto;}
  .c-btn.mb40 {margin-block-end: 40px;}
  .c-btn .c-btn-link {font-size:1rem;}
}

/* case */
.p-case-section {padding-block:30px;}
.p-case-section__container {max-width:1024px; width:100%; margin:0 auto;}
.p-case-section__inner {padding:40px;}
.p-case-title-wrapper__item { display:flex; align-items:center; gap:20px; margin-block-end:20px; }
.p-case-title-text {margin-block-end:0;}
.p-case-title-text .tex-blue {color: var(--nk-blue500);}
.p-case-title-number { max-width: 120px; width:100%; aspect-ratio:1; height:100%; border: 1px solid var(--nk-blue500); border-radius:100%; display:flex; justify-content:center; align-items: center; }
.p-case-title-number-text { color: var(--nk-blue500); font-weight:700; text-align: center; line-height:1;}
.p-case-title-number-text span {font-size: 2.375rem;}
 .case-database-image {display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; margin-block-end: 10px;}
 .case-database-image.mb40 {margin-block-end:40px;}
.case-database-description {margin-block-end:20px;}
.case-database-description.sideby-side {display: flex; gap: 40px;}
.case-database-description.sideby-side .case-database-image {max-width:350px; width:100%; display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; margin-block-end:10px;}
.case-database-text-notice {font-size:0.75rem; text-align:center;}

@media screen and (max-width: 768px) {
  .p-case-section__inner {padding:0 20px;}
  .p-case-title-wrapper__item {flex-wrap:wrap; justify-content:center; gap:10px;}
  .p-case-title-text {width:100%; text-align:center;}
  .p-case-title-number {max-width:80px;}
  .p-case-title-number-text span {font-size:1.75rem;}
  .p-service-list__table-item:first-child {padding-inline:10px;}
  .case-database-description.sideby-side {flex-wrap: wrap; margin-bottom: 0;}
  .case-database-description.sideby-side .case-database-image {max-width:initial; margin-bottom:0;}
  .case-database-text-notice {text-align:left;}
}

/* price */
.p-price-section {background:url(../images/price_content_bgimg.svg) no-repeat bottom center var(--nk-lightblue200); background-size: contain; padding-block:30px;}
.p-price-section__container {max-width:1024px; width:100%; margin:0 auto;}
.p-price-section__inner {padding:40px;}
.p-price-section__inner-text {color: var(--nk-blue700); text-align:center;}
.tabs { margin-top: 50px; padding-block-end: 0; width: 100%; margin: 0 auto;}
.tab_item { width:calc(100%/2 - 1px); height:50px; background-color:#d9d9d9; line-height:50px; font-size:1rem; text-align:center;     color: #333; display:block; float:left; text-align:center; font-weight:bold; transition:all 0.2s ease; margin-block-end: 0; cursor:pointer; border-radius: 10px 10px 0 0;}
.tab_item:hover {background-color: var(--nk-lightblue); color: var(--nk-lightblue200);}
.tab_item.u-mr1 {margin-right: 1px;}
.tab_item.u-ml1 {margin-left: 1px;}
input[name="tab_item"] { display: none; }
.tab_content { display: none; padding: 40px 40px; clear: both; overflow: hidden; background:#FFF; border-top:5px solid var(--nk-blue500); box-shadow:0 4px 10px rgb(0 0 0 / 10%);}
#online-contract:checked ~ #online-contract_content, #prepaid:checked ~ #prepaid_content {display: block;}
.tabs input:checked + .tab_item { background-color: var(--nk-blue500); color: #fff; }
.tabs input:checked + .tab_item:hover {cursor: default;}
.p-online-contract-card-wrapper {display:flex; justify-content:center; gap:20px; margin-block-end:40px;}
.p-online-contract-card { background: var(--nk-whiteblue); padding: 40px 30px 30px; border-radius:10px;}
.p-online-contract-card-title {display: flex; justify-content: center; align-items: center; height:83px; vertical-align: middle; border-block-end: 1px solid var(--nk-blue700); padding-block-end:20px; margin-block-end: 20px;}
.p-online-contract-card-title h5 {margin-block-end:0;}
.p-online-contract-card-title-span {color: var(--nk-blue500);}
.p-online-course {text-align:right; font-size: 0.75rem;}

.p-online-price-area {margin-block-end:60px;}
.p-online-course-box {margin-block-end:30px; border-radius:10px; overflow:hidden;}
.p-online-course-content {background-color:#EEF3F6; padding:30px 40px;}
.p-online-price-title {border-block-end:4px solid var(--nk-blue700); margin-bottom: 30px;}
.p-online-course-title {background-color:var(--nk-blue500); height:50px;}
.p-online-price-title__h4 {position:relative; width:calc(50% - 40px); color:#FFF; text-align:left; background-color: var(--nk-blue700); margin-block-end:0; padding: 6px 20px;}
.p-online-price-title__h4::after {position:absolute; content:''; top:0; right:-40px; width: 0; height: 0; border-style: solid; border-width:40px 0 0 40px; border-color: transparent transparent transparent var(--nk-blue700);}
.p-online-price-title__h5 {text-align:left; border-block-end: 2px solid var(--nk-blue700); padding-block-end: 2px;}
.p-online-course-title.regular-course {background-color: var(--nk-blue700);}
.p-online-price-image {display:flex; justify-content:center;}
.p-online-price-description span {color: var(--nk-blue500); font-weight:700;}
.p-regular-course {color: #FFF; margin-block-end:0; text-align:left; padding: 11px 20px;}
.p-online-price-note {text-align: right;}
.p-online-course-image {display:flex; justify-content:center; margin:0 auto 30px; max-width: 530px; width: 100%;}

.p-prepaid-card-wrapper {display:grid; grid-template-columns:1fr 1fr 1fr 1fr; gap:5px; margin-block-end:40px;}
.p-prepaid-card {background-color:#E9F7FF; border-radius:10px; padding: 30px 18px;}
.p-prepaid-card-image {display:flex; justify-content:center; margin-block-end:30px;}
.p-prepaid-card-description {text-align: center; color: var(--nk-blue500); font-weight:700;}
.p-prepaid-price-area {margin-block-end: 60px;}
.p-prepaid-price-table {max-width:720px; width:100%; border:1px solid #DDDDDD; border-collapse:collapse; margin:0 auto;}
.p-prepaid-price-table th {background-color:#EEF3F6; border:1px solid #DDDDDD; padding:5px;}
.p-prepaid-price-table td {text-align:center; border: 1px solid #DDDDDD; padding:12px;}
.p-prepaid-price-list {position: relative;}
.p-prepaid-price-list-wrapper {background: #EEF3F6; margin-block-end:30px;}
.p-prepaid-price-title {color:var(--text); text-align:left;}
.p-prepaid-price-title span {position:relative; color:var(--nk-blue500);padding-inline-start:50px;}
.p-prepaid-price-title span::before {position: absolute; content:''; width:0; height:0; border-style:solid; border-width:calc(17px / 2) 0 calc(17px / 2) 8px; border-color: transparent transparent transparent #005FAC; left:22px; top:6px;}
.p-prepaid-num-triangle {position:absolute; color:#FFF; width:96px; height:96px; padding: 10px 8px;}
.p-prepaid-num-triangle span {position:relative; font-size:1.3125rem; color:#FFF; z-index:2; font-weight:700;}
.p-prepaid-num-triangle::after {position:absolute; content:''; width:0; height:0; border-style: solid; border-width:96px 96px 0 0; border-color:#005FAC transparent transparent transparent; top:0; left:0; z-index: 1;}
.p-prepaid-price-content {padding:30px 80px 30px 85px;}
.p-prepaid-price-content p {margin-block-end:5px;}
.p-prepaid-price-case {padding-bottom: 5px; border-bottom: 1px solid #333;}
.p-prepaid-price-credit-list {margin-block-end:20px;}
.p-prepaid-price-credit-list li {text-indent:-1em; padding-left:1em; margin-block-end:5px; line-height: 1.6;}
.p-prepaid-price-credit-list li:last-child {margin-block-end:0;}

@media screen and (max-width: 768px) {
  .p-price-section__inner {padding:0 20px 30px;}
  .tab_content { padding:40px 20px; }
  .tab_item {width:calc(100% / 2 - 21px); font-size: 0.875rem;}
  .tab_item.u-mr1 {margin-inline-start:20px; margin-inline-end:1px;}
  .tab_item.u-ml1 {margin-inline-start:1px; margin-inline-end:20px;}
  .p-online-contract-card-wrapper {flex-wrap:wrap; gap: 20px; margin-block-end:40px;}
  .p-online-contract-card { padding:20px; }
  .p-online-contract-card-title {margin-block-end:10px; height:initial;}
  .p-online-course-title {height:auto;}
  .p-online-course-content {padding:20px;}
  .p-online-price-area {margin-block-end:40px;}
  .p-online-price-title {margin-block-end:15px;}
  .p-online-price-title__h4 {width:calc(80% - 25px); padding: 2px 10px;}
  .p-online-price-title__h4::after {right: -25px; border-width: 25px 0 0 25px; }
  .p-prepaid-price-list-wrapper {margin-block-end:20px;}
  .p-prepaid-card-wrapper {grid-template-columns:1fr 1fr; margin-block-end:20px;}
  .p-prepaid-card {padding: 20px 10px;}
  .p-prepaid-card-image {margin-block-end: 10px;}
  .p-prepaid-card-image img {width: 50%;}
  .p-prepaid-card-description {font-size:0.75rem;}
  .p-prepaid-price-title {width:100%; display:flex; flex-wrap:wrap; justify-content:center; text-align:center; gap:40px;}
  .p-prepaid-price-title span { width:100%; padding-inline-start:initial; }
  .p-prepaid-price-title span::before {left:50%; top:-25px; transform:rotate(90deg) translateY(-50%);}
  .p-prepaid-num-triangle::after { border-width: 70px 70px 0 0; }
  .p-prepaid-num-triangle span {font-size: 1.125rem;}
  .p-prepaid-price-content {padding:30px 20px 30px 20px;}
}


/* faq */
.p-faq-section {padding-block:30px;}
.p-faq-section__container {max-width:1024px; width:100%; margin:0 auto;}
.p-faq-section__description {color:var(--nk-blue700); font-size:1.125rem; text-align:center;}
.c-faq-accordion-area { max-width: 100%; margin: 0 auto 40px; }
.c-faq-accordion-box { transition: 0.4s ease; }
.c-faq-accordion-box p { margin-block-end: 15px; }
.c-faq-accordion-box p:last-child { margin-block-end: 0; }
.c-faq-accordion-box a { color: #FFF; }
.c-faq-accordion-box a:hover { text-decoration: underline; }
.c-faq-acc-toggle { display: none; }
.c-faq-label {padding-block:20px; padding-inline:95px 40px; display: block; font-weight: 700; line-height: 150%; border-radius:10px; }
.c-faq-label::before { content:""; width: 10px; height: 10px; border-top: 2px solid #FFF; border-right: 2px solid #FFF; -webkit-transform: rotate(45deg); position:absolute; top:25px; right:20px; transform: rotate(135deg); transition: all 0.6s ease; border-radius: 1px;}
.c-faq-label::after { content:"Q."; color: #FFF; position: absolute; font-size:2.25rem; font-family:'roboto'; font-weight: 500; top:15px; left:40px; line-height:1;}
.c-faq-accordion-box:hover .c-faq-label { cursor: pointer; }
.c-faq-label, .c-faq-content {color:#FFF; -webkit-backface-visibility: hidden; backface-visibility: hidden; transform: translateZ(0); background-color:#036EB8;}
.c-faq-label:hover { opacity: 0.5; }
.c-faq-content { height: 0; margin-block-end:26px; padding:0 20px; overflow: hidden; }
.c-faq-content::after { content:"A."; color: #FFEA01; position: absolute; font-size:2.25rem; font-family:'roboto'; font-weight: 500; top:15px; left:70px; line-height:1;}
.c-faq-acc-toggle:checked + .c-faq-label { border-bottom:none; border-radius:8px 8px 0 0; margin-block-end:0; }
.c-faq-acc-toggle:checked + .c-faq-label + .c-faq-content { height: auto; padding:20px 70px 20px 115px; margin-block-end: 12px; line-height: 150%; background-color:#036EB8; border-top: none; border-radius: 0 0 8px 8px; }
.c-faq-acc-toggle:checked + .c-faq-label::before { transform: rotate(-45deg); }
.faq-answertitle { position: relative; font-size: 18px; font-weight: 700; margin-block-end: 15px; padding-left: 25px; }
.faq-answertitle::before { position: absolute; color: #FFF; content: '■'; left: 0; top: 0; }
.faq-subtext { font-weight: 700; }
.c-faq-list { margin-block-end: 15px; }
.c-faq-list li { position: relative; padding-left: 20px; margin-block-end: 5px; }
.c-faq-list li::before { position: absolute; color: #FFF; content: '・'; left: 0; top: 0; }
.faq_caution { font-size: 14px; margin-block-end: 20px; }

@media screen and (max-width: 1024px) {
  .p-faq-section__inner {padding-inline:40px;}
}

@media screen and (max-width: 768px) {
  .p-faq-section__inner {padding-inline:20px;}
  .c-faq-label { padding-inline: 50px 40px;}
  .c-faq-label::after { font-size: 1.75rem; top: 15px; left:15px; line-height: 1;}
  .c-faq-accordion-area {margin-block-end: 0;}
  .c-faq-acc-toggle:checked + .c-faq-label + .c-faq-content { padding-inline: 50px 20px;}
  .c-faq-content {margin-block-end:15px;}
  .c-faq-content::after {font-size: 1.75rem; top: 15px; left:15px; line-height: 1;}
}


/* footer sitemap */
.footer-map-top {background: #405c72;}
.footer-map-top-in { max-width:980px; width:100%; margin: 0 auto; padding: 40px 0; display: flex; justify-content: flex-start; align-items: flex-start; }
.footer-map-top-lists { width: 20%; padding-inline-start: 0; }
.footer-map-top-lists.per25 { width: 25%; }
.footer-map-top-lists .parent { font-size: 0.875rem; line-height: 30px; font-weight: 700; }
.footer-map-top-lists li a { color: #fff; text-decoration:none; }
.footer-map-top-splists {display: none;}

@media screen and (max-width: 1024px) {
.footer-map-top-in {padding:40px;}
}

@media (max-width: 768px) {
  .footer-map-top-in {padding: 0;}
  .footer-map-top-lists {display: none;}
  .footer-map-top-splists {width:100%; display:grid; grid-template-columns: 1fr 1fr;}
  .footer-map-top-splists li {height: 100%; float: left; border-bottom: 1px solid #213c4c; border-right: 1px solid #213c4c; box-sizing: border-box;}
  .footer-map-top-splists li a { display: block; font-size: 0.8275rem; font-weight: bold; padding:18px 0 18px 12px; color: #fff; text-decoration:none; }
}

/* footer */
footer {padding:13px 20px; background-color: #FFF; letter-spacing: 0;}
footer .p-footer-container {max-width:980px; width:100%; margin: 0 auto;}
footer .p-footer-inner {display:flex; justify-content:flex-start; align-items: center; gap:40px;}
footer .p-footer-logo {display: flex; justify-content: flex-start; align-items: center; gap:10px;}
footer .p-footer-desc { font-size: 0.75rem; margin-block: 0;}
footer .p-footer-links {font-size:0.75rem; display: flex; justify-content: flex-end; align-items: center; gap: 20px;}
footer .p-footer-links a {text-decoration:none;}
footer .p-footer-links li img {margin-left:5px;}

@media (max-width: 768px) {
  footer .p-footer-inner {padding:10px 0; flex-direction:column; gap:20px; }
  footer .p-footer-links {justify-content:center; align-items:flex-start; gap:10px 20px; flex-wrap: wrap;}
}
