@charset "utf-8";
:root {
--fs-13: 0.6771vw;
--fs-16: 0.8333vw;
--fs-18: 0.9375vw;
--fs-20: 1.0417vw;
--fs-22: 1.1458vw;
--fs-26: 1.3542vw;
--fs-28: 1.4583vw;
--fs-34: 1.7708vw;
--fs-40: 2.0833vw;
--fs-50: 2.6042vw;
--fs-62: 3.2292vw;
--fs-70: 3.6458vw;
}

#wrap .xs { display: none !important; }
#wrap .md { display: none !important; }
#wrap .xl { display: block !important; }
#wrap .xl-none { display: none !important; }
#wrap .xs-flex { display: none !important; }
#wrap .md-flex { display: none !important; }
#wrap .xl-flex { display: flex !important; }

#wrap .xs-inline { display: none !important; }
#wrap .md-inline { display: none !important; }
#wrap .xl-inline { display: inline-block !important; }

#wrap .inner-wrap { padding-left: var(--w-60); padding-right: var(--w-60); }
#wrap .xl-center { width: 83.3333vw; margin-left: auto; margin-right: auto; }
#wrap .xl-inner { padding-left: var(--w-60); padding-right: var(--w-60); }
#wrap .xl-keep-all { word-break: keep-all; }

#wrap .d-xl-flex { display: flex !important; }
#wrap .flex-xl-center { justify-content: center !important; align-items: center !important; }
#wrap .flex-xl-wrap { flex-wrap: wrap !important; }
#wrap .flex-xl-ac { align-items: center !important; }
#wrap .flex-xl-as { align-items: flex-start !important; }
#wrap .flex-xl-ae { align-items: flex-end !important; }
#wrap .flex-xl-js { justify-content: flex-start !important; }
#wrap .flex-xl-je { justify-content: flex-end !important; }
#wrap .flex-xl-jc { justify-content: center !important; }
#wrap .flex-xl-jsb { justify-content: space-between !important; }
#wrap .flex-xl-col { flex-direction: column !important; }
#wrap .flex-xl-0-0-auto { flex: 0 0 auto !important; }
#wrap .flex-xl-1-1-auto { flex: 1 1 auto !important; }
#wrap .flex-xl-0-1-auto { flex: 0 1 auto !important; }
#wrap .flex-xl-1-0-auto { flex: 1 0 auto !important; }
#wrap .mx-xl-auto { margin-left: auto !important; margin-right: auto !important; }

#wrap .ellipsis-xl-1 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; word-wrap: normal; }
#wrap .ellipsis-xl-2 { overflow: hidden; display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; }
#wrap .ellipsis-xl-3 { overflow: hidden; display: -webkit-box !important; -webkit-line-clamp: 3; -webkit-box-orient: vertical; text-overflow: ellipsis; }
#wrap .ellipsis-xl-4 { overflow: hidden; display: -webkit-box !important; -webkit-line-clamp: 4; -webkit-box-orient: vertical; text-overflow: ellipsis; }
#wrap .ellipsis-xl-5 { overflow: hidden; display: -webkit-box !important; -webkit-line-clamp: 5; -webkit-box-orient: vertical; text-overflow: ellipsis; }
#wrap .ellipsis-xl-6 { overflow: hidden; display: -webkit-box !important; -webkit-line-clamp: 6; -webkit-box-orient: vertical; text-overflow: ellipsis; }


#wrap .section { width: 83.3333vw; margin: 0 auto; }
#wrap .section > .title { display: flex; justify-content: space-between; align-items: flex-end; padding-bottom: 2.0833vw; border-bottom: var(--static-20) solid var(--text-main-color); }
#wrap .section > .title > p { font-size: var(--fs-62); color: var(--text-main-color); font-weight: 700; }
#wrap .section > .title > span { font-size: var(--fs-28); color: #07B340; }
#wrap .section > .title > p.black { color: #333; font-size: var(--fs-40); }
#wrap .section > .title:has(.black) { display: block; border-bottom: var(--static-20) solid #333; }
#wrap .section > .title:has(.black) > span { display: block; margin-top: 0.5208vw; font-size: var(--fs-20); color: #333; }

#wrap .form-wrap { padding: 5.2083vw 0; }
#wrap .form-wrap > form > dl { display: flex; }
#wrap .form-wrap > form > dl~dl { border-top: var(--static-10) solid #E2E2E2; }
#wrap .form-wrap > form > dl > dt { flex: 0 0 auto; width: 14.0625vw; height: 4.4792vw; font-size: var(--fs-18); display: flex; align-items: center; color: var(--text-main-color); }
#wrap .form-wrap > form > dl > dt.required { display: flex; gap: 0.1042vw; }
#wrap .form-wrap > form > dl > dt.required::after { content: '*'; color: #07B340; }
#wrap .form-wrap > form > dl > dd { flex: 0 0 auto; width: 52.0833vw; display: flex; justify-content: space-between; align-items: center; }
#wrap .form-wrap > form > dl > dd > input[type=email],
#wrap .form-wrap > form > dl > dd > input[type=tel],
#wrap .form-wrap > form > dl > dd > input[type=text] { border: var(--static-10) solid #bfbfbf; border-radius: 0.2083vw; background: #fff; height: 2.7083vw; width: 100%; padding: 0 0.8333vw; font-size: var(--fs-16); }
#wrap .form-wrap > form > dl > dd > input.harf { width: 25.7813vw; }
#wrap .form-wrap > form > dl > dd > input::placeholder { color: rgba(0,0,0,0.45); }
#wrap .form-wrap > form > dl > dd > select { border: var(--static-10) solid #bfbfbf; border-radius: 0.2083vw; height: 2.7083vw; width: 100%; padding: 0 0.8333vw; font-size: var(--fs-16); color: rgba(0,0,0,0.45); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M6 8L10 12L14 8' stroke='%23212222' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") calc(100% - 0.8333vw) center/1.0417vw 1.0417vw no-repeat #fff; }
#wrap .form-wrap > form > dl > dd > select.active { color: var(--text-body); }
#wrap .form-wrap > form > dl > dd > ul { display: flex; flex-wrap: wrap; gap: 1.0417vw; padding: 1.2500vw 0; }
#wrap .form-wrap > form > dl > dd > ul > li { flex: 0 0 auto; width: 16.6vw; }
#wrap .form-wrap > form > dl > dd > ul > li > input[type=checkbox] { display: none; }
#wrap .form-wrap > form > dl > dd > ul > li > label { display: flex; align-items: center; gap: 0.5208vw; font-size: var(--fs-16); }
#wrap .form-wrap > form > dl > dd > ul > li > label::before { content: ''; width: 1.2500vw; height: 1.2500vw; border-radius: 0.2083vw; border: var(--static-10) solid #bfbfbf; }
#wrap .form-wrap > form > dl > dd > ul > li > input:checked+label::before { background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10' fill='none'%3E%3Cpath d='M13 1L5.0625 9L1 4.90909' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/0.7292vw 0.5208vw no-repeat #fff; }
#wrap .form-wrap > form > dl > dd > textarea { resize: none; width: 100%; height: 10.4167vw; overflow-y: auto; border-radius: 0.2083vw; border: var(--static-10) solid #bfbfbf; margin-top: 0.7813vw; padding: 0.8333vw; font-size: var(--fs-16); }
#wrap .form-wrap > form > div.promotion { margin-top: 1.5625vw; border-top: var(--static-10) solid #BFBFBF; display: flex; gap: 1.5625vw; align-items: center; justify-content: center; padding: 2.6042vw 0; }
#wrap .form-wrap > form > div.promotion > p { width: 4.2708vw; height: 4.2708vw; flex: 0 0 auto; }
#wrap .form-wrap > form > div.promotion > div { font-size: var(--fs-28); color: #07B340; line-height: 1.39; }
#wrap .form-wrap > form > div.privacy { display: flex; padding: 2.0833vw 0; justify-content: center; align-items: center; }
#wrap .form-wrap > form > div.privacy > input[type=checkbox] { display: none; }
#wrap .form-wrap > form > div.privacy > label { display: flex; align-items: center; gap: 0.5208vw; font-size: var(--fs-20); }
#wrap .form-wrap > form > div.privacy > label::before { content: ''; width: 1.2500vw; height: 1.2500vw; border-radius: 0.2083vw; border: var(--static-10) solid #bfbfbf; }
#wrap .form-wrap > form > div.privacy > input:checked+label::before { background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10' fill='none'%3E%3Cpath d='M13 1L5.0625 9L1 4.90909' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/0.7292vw 0.5208vw no-repeat #fff; }
#wrap .form-wrap > form > div.privacy > label a { color: #07B340; font-size: var(--fs-20); margin-left: 0.2604vw; }

#wrap .form-wrap > form > p { display: flex; justify-content: center; }
#wrap .form-wrap > form > p > input[type=submit] { width: 14.5833vw; height: 4.5833vw; border-radius: 5.2083vw; background: #212222; color: #fff; border: 0; font-size: var(--fs-22); cursor: pointer; }

#wrap .form-wrap > form+.title { margin-top: 6.2500vw; }
#wrap .form-wrap > .information { display: flex; }
#wrap .form-wrap > .information > dl { flex: 1 1 0; text-align: center; font-size: var(--fs-18); }
#wrap .form-wrap > .information > dl > dt { color: #333; padding: 1.5625vw 0; }
#wrap .form-wrap > .information > dl > dd { padding: 1.5625vw 0; border-top: var(--static-10) solid #E2E2E2; border-bottom: var(--static-10) solid #E2E2E2; }
#wrap .form-wrap > .information > dl > dd > a { color: #333; font-size: var(--fs-20); }


#wrap .section1 { width: 100%; padding: 5.2083vw 0; background: url('../img/bg.webp') 100%/cover no-repeat; }
#wrap .section1 .inner { width: 83.3333vw; margin: 0 auto; }
#wrap .section1 .inner > p { font-size: var(--fs-50); color: var(--text-main-color); font-weight: 700; }
#wrap .section1 .inner > div { margin-top: 3.1250vw; display: flex; gap: 6.2500vw; align-items: center; }
#wrap .section1 .inner > div > p { width: 16.5104vw; flex: 0 0 auto; }
#wrap .section1 .inner > div > p > img { width: 100%; }
#wrap .section1 .inner > div > div { font-size: var(--fs-26); color: #333; line-height: 1.7; }
#wrap .section1 .inner > div > div > p.text1 { line-height: 2.0vw;}
#wrap .section1 .inner > div > div > p.text2 { margin-top: 0.6vw; line-height: 2.0vw; }
#wrap .section1 .inner > div > div > p.text3 { margin-top: 0.6vw; line-height: 2.0vw;}


#wrap .section2 { width: 100%; padding: 5.2083vw 0; background: #172451; color: #fff; }
#wrap .section2 .inner { width: 83.3333vw; margin: 0 auto; display: flex; gap: 6.2500vw; }
#wrap .section2 .inner > p { font-size: var(--fs-70); font-weight: 700; width: 16.1458vw; flex: 0 0 auto; }
#wrap .section2 .inner > ul {}
#wrap .section2 .inner > ul > li { font-size: var(--fs-28); line-height: 1.2; display: flex; gap: 0.9375vw; }
#wrap .section2 .inner > ul > li::before { content: ''; width: 0.7292vw; height: 0.7292vw; border-radius: 5.2083vw; background: #fff; margin-top: 0.3646vw; }
#wrap .section2 .inner > ul > li~li { margin-top: 0.7813vw; }


#wrap .section3 { background: #F5F5F7; padding: 5.2083vw 8.3333vw; width: 100%; }
#wrap .section3 > div { display: flex; justify-content: space-between; align-items: center; }
#wrap .section3 > div > p { font-size: var(--fs-62); color: var(--text-main-color); font-weight: 700; }
#wrap .section3 > div > a { padding: 0.8333vw 1.2500vw; border-radius: 5.2083vw; background: #07B340; color: #fff; font-size: var(--fs-18); display: flex; align-items: center; line-height: 1; gap: 0.4167vw; }
#wrap .section3 > div > a > span { padding-top: 0.1042vw; }
#wrap .section3 > ul { margin-top: 2.0833vw; display: grid; grid-template-columns: repeat(3, 26.2500vw); gap: 2.0833vw; }
#wrap .section3 > ul > li { background: #fff; border-radius: 1.0417vw; width: 100%; height: 29.6875vw; padding: 1.0417vw; position: relative; display: flex; flex-direction: column; }
#wrap .section3 > ul > li > p { position: absolute; left: 1.2500vw; top: 1.2500vw; width: 4.6875vw; height: 4.6875vw; border-radius: 4.6875vw; border: var(--static-10) solid #07B340; display: flex; align-items: center; justify-content: center; font-size: var(--fs-22); color: #07b340; }
#wrap .section3 > ul > li > div { width: 100%; height: 22.3958vw; flex: 0 0 auto; border-bottom: var(--static-10) solid #D3D3D5; }
#wrap .section3 > ul > li > ul { padding: 1.0417vw 0 0; }
#wrap .section3 > ul > li > ul > li { font-size: var(--fs-18); line-height: 1.66; color: #616161; display: flex; align-items: center; gap: 0.5208vw; }
#wrap .section3 > ul > li > ul > li::before { content: ''; width: 0.2083vw; height: 0.2083vw; background: #616161; border-radius: 5.2083vw; }
#wrap .section3 > ul > li > span { display: block; margin-top: 0.2604vw; font-size: var(--fs-13); color: #8c8c8c;         padding-left: 0.8vw;}

#wrap .section3 > ul > li > div { text-align: center; }
#wrap .section3 > ul > li:nth-of-type(1) > div > img { width: 21.5625vw; margin-top: 7.8125vw; }
#wrap .section3 > ul > li:nth-of-type(2) > div > img { width: 6.5104vw; margin-top: 5.5729vw; }
#wrap .section3 > ul > li:nth-of-type(3) > div > img { width: 20.3125vw; margin-top: 8.1250vw; }
#wrap .section3 > ul > li:nth-of-type(4) > div > img { width: 21.8229vw; margin-top: 6.2500vw; }
#wrap .section3 > ul > li:nth-of-type(5) > div > img { width: 13.6979vw; margin-top: 6.5104vw; }
#wrap .section3 > ul > li:nth-of-type(6) > div > img { width: 9.3750vw; margin-top: 4.0104vw; }


#wrap #footer { background: #000; color: #fff; padding: 3.1250vw; height: 14.0625vw; display: flex; justify-content: space-between; }
#wrap #footer a { color: #fff; }
#wrap #footer > div {}
#wrap #footer > div > div { display: flex; align-items: center; }
#wrap #footer > div > div > p:nth-of-type(1) { font-size: var(--fs-34); font-weight: 700; }
#wrap #footer > div > div > a { margin-left: 1.4063vw; width: 1.7708vw; }
#wrap #footer > div > div > a > img { width: 100%; }
#wrap #footer > div > div > p:nth-of-type(2) { margin-left: 0.6771vw; font-size: var(--fs-13); color: #878787; }
#wrap #footer > div > ul { margin-top: 2.0833vw; display: flex; gap: 1.0417vw; font-size: var(--fs-16); }
#wrap #footer > div > p { margin-top: 0.7292vw; font-size: var(--fs-13); color: #878787; }
#wrap #footer > p { width: 9.2708vw; }
#wrap #footer > p > img { width: 100%; }


.popup { position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: #fff; z-index: 90; padding: 3.1250vw; display: none; box-sizing: border-box; }
.popup * { margin: 0; padding: 0; list-style: none; box-sizing: border-box; }
.popup .close { cursor: pointer; }
.popup > div { display: flex; flex-direction: column; width: 100%; height: 100%; }
.popup > div > div:nth-of-type(1) { flex: 0 0 auto; display: flex; justify-content: space-between; font-size: var(--fs-62); font-weight: 700; color: var(--text-main-color); align-items: center; }
.popup > div > div:nth-of-type(2) { font-size: var(--fs-18); margin-top: 2.0833vw; overflow-y: auto; white-space: pre-wrap; line-height: 1.3; }