@charset "UTF-8";

* {margin:0 0; padding:0 0; box-sizing:border-box;}
html, body {max-width:3840px; font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}

section {letter-spacing:0.5px;}
ul {list-style:none;}
a {display:inline-block; text-decoration:none !important; transition:all 0.3s ease-in-out;}
a:hover {text-decoration:none !important;}
h1 {margin:0 auto; padding:0 0; font-size:68px; line-height:1.5; color:#222; letter-spacing:0.5px; text-align:center; font-weight:600;}
h2 {margin:0 auto; padding:0 0; font-size:38px; line-height:1.6; color:#222; letter-spacing:0.5px; text-align:center; font-weight:600;}
h3 {margin:0 auto; padding:0 0; font-size:20px; line-height:1.6; color:#222; letter-spacing:0.5px; text-align:center; font-weight:400;}
p {margin:0 auto; padding:0 0; font-size:14px; line-height:1.8; color:#222; letter-spacing:0.5px; text-align:center; font-weight:400;}
span {display:inline-block;}
img {width:auto; height:auto; max-width:100%; max-height:100%;}

@font-face {
  font-family: 'icomoon';
  src: url("/fonts/icomoon.eot?4hmkpr");
  src: url("/fonts/icomoon.eot?4hmkpr#iefix") format("embedded-opentype"), url("/fonts/icomoon.ttf?4hmkpr") format("truetype"), url("/fonts/icomoon.woff?4hmkpr") format("woff"), url("/fonts/icomoon.svg?4hmkpr#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

@media only screen and (max-width: 768px) {
h1 {font-size:40px;}
h2 {font-size:24px;}
h3 {font-size:18px;}
p {font-size:12px;}
}

@media only screen and (max-width: 420px) {
h1 {font-size:26px; line-height:1.4;}
h2 {font-size:16px; margin:0 auto 10px auto;}
h3 {font-size:14px;}
p {font-size:12px;}
}

@media only screen and (max-width: 330px) {
p {font-size:11px;}
}



header {position:fixed; left:0; top:0; width:100%; height:80px; background:#FCFDFD; box-shadow:0 2px 6px -2px #C7E4F1; z-index:100;}
header div#hdr-wrap {position:relative; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:0 20px; margin:0 auto; padding:0 0; width:100%; height:100%; max-width:1240px;}

#logo {margin:0 0; padding:0 0; width:280px; height:50px; line-height:0.5;}
#logo a {line-height:0.5; transition: all 0.3s ease-in-out;}
#logo a:hover {opacity:0.7;}

#nav_and_cta {display:flex; flex-wrap:wrap; justify-content:end; align-items:center; gap:0 30px;}
ul.cta {display:inline-flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:0 10px; z-index:20;}
ul.cta li {margin:0 0; padding:0 0; text-align:center;}
ul.cta li a {display:inline-block; padding:15px 15px; min-width:200px; font-size:14px; line-height:20px; text-align:center; font-weight:600; letter-spacing:1px; color:#fff; background:#319EDA; border-radius:50px;}
ul.cta li a:hover {filter:brightness(0.9);}
ul.cta li a span {position:relative; padding:0 20px 0 0;}
ul.cta li a span::after {content:""; display:inline-block; position:absolute; right:0; top:50%; transform:translate(0, -60%); -webkit-transform:translate(0%, -60%); -ms-transform:translate(0, -60%); width:12px; height:12px; background:url(../img/icon_01_w.png) no-repeat 50% 50% / contain;}
ul.cta li a:hover span::after {background:url(../img/icon_01_w.png) no-repeat 50% 50% / contain;}


@media only screen and (max-width: 768px) {
#hbg {position:absolute; right:10px; top:9px; display:inline-block; width:28px; height:28px; text-indent:28px; white-space:nowrap; overflow:hidden; cursor:pointer; -webkit-tap-highlight-color:rgba(0, 0, 0, 0);}

#hbg span,
#hbg span::before,
#hbg span::after {position:absolute; top:50%; left:2px; height:2px; width:24px; background:#bbb; -webkit-transition:all 0.25s; transition:all 0.25s;}

#hbg span::before {content:""; top:-7px; left:0;}
#hbg span::after {content:""; top:7px; left:0;}

#hbg-chk:checked ~ #hbg span {height:0; background:transparent;}
#hbg-chk:checked ~ #hbg span::before {top:0; -webkit-transform:rotate(-45deg); transform:rotate(-45deg);}
#hbg-chk:checked ~ #hbg span::after {top:0; -webkit-transform:rotate(45deg); transform:rotate(45deg);}
#hbg-chk:not(:checked) ~ #nav_and_cta {display:none;}
#hbg-chk:checked ~ #nav_and_cta {display:block;}

ul.cta li a {padding:15px 20px;}
}


@media only screen and (max-width: 420px) {
ul.cta {justify-content:space-around; gap:0 10px;}
ul.cta li {flex-basis:calc((100% - 10px) / 2);}
ul.cta li a {width:100%; padding:15px 5px;}
}


@media only screen and (max-width: 330px) {
ul.cta {gap:0 5px;}
ul.cta li {flex-basis:auto;}
ul.cta li a {padding:15px 10px; font-size:14px;}
}



@media only screen and (min-width: 769px) {
div#page-top {display:block; position:fixed; right:40px; bottom:60px; margin-top:0; z-index:1100;}
div#page-top > a {overflow:hidden; display:block; width:62px; height:62px; transition:all 0.3s ease 0s; background:url(../img/up_btn.png) no-repeat 0 50%;}
div#page-top > a span {display:none;}
}


@media only screen and (max-width: 768px) {
header {height:50px; padding:0 20px;}
header .logo .inner a img {max-height:25px;}
header ul {gap:0 10px; right:10px; top:0; height:50px;}
header ul li a {padding:8px 15px; font-size:14px; border-radius:8px;}
#page-top {background:#f3f3f3;}
#page-top a {display:block; position:relative; font-size:14px; text-align:center; padding:10px 0; color:#15619d;}
#page-top a span::before {font-family:'icomoon' !important; font-style:normal; font-weight:normal; font-variant:normal; text-transform:none; line-height:1; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; content:"\e903"; display:inline-block; margin-right:10px;}
}


@media only screen and (max-width: 420px) {
header {padding:0 10px;}
header div#hdr-wrap {gap:0 20px;}
header #logo {flex-basis:170px;}
header #nav_and_cta {flex-basis:calc(100% - 20px - 170px);}
header #nav_and_cta ul.cta {width:100%;}
header #nav_and_cta ul.cta li {flex-basis:100%;}
header #nav_and_cta ul.cta li a {padding:8px 5px; font-size:16px;}
}

@media only screen and (max-width: 330px) {
header div#hdr-wrap {gap:0 10px;}
header #logo {flex-basis:150px;}
header #nav_and_cta {flex-basis:calc(100% - 10px - 150px);}
header #nav_and_cta ul.cta li a {font-size:14px;}

}









section#sc_mv {width:100%; margin:80px auto 0 auto; padding:50px 0 0 0 !important; background:url(../img/mv_bg.webp) no-repeat left 50% top 50% / cover, linear-gradient(90deg, #F5F5F5, #d8f4ff); background-blend-mode:multiply; overflow:hidden;}

section#sc_mv > div#mv_box {position:relative; margin:0 auto; padding:0 0; text-align:center; max-width:1240px;}

section#sc_mv > div#mv_box > div {position:relative; margin:0 0 100px 50px; padding:0 0; text-align:left; font-family:'Noto Sans JP', sans-serif;}
section#sc_mv > div#mv_box > div::after {content:""; display:block; position:absolute; right:0; bottom:-15%; padding-top:calc(72.32% * 0.47); width:47%; height:0; background:url(../img/mv_01.webp) no-repeat left 50% top 0 / contain;}
section#sc_mv > div#mv_box > div p {position:relative; font-weight:900; color:#434343; text-align:left;}
section#sc_mv > div#mv_box > div p:nth-of-type(1) {margin:0 0 15px 0; padding:0 0; font-size:24px; line-height:1.4;}
section#sc_mv > div#mv_box > div p:nth-of-type(1) strong {display:inline-block; margin:0 0 0 10px; padding:5px 15px; background:#fff; border:1px solid #03335F;}
section#sc_mv > div#mv_box > div p:nth-of-type(2) {margin:0 0; padding:0 0; font-size:44px; line-height:1.4; font-weight:600; color:#319FDB;}
section#sc_mv > div#mv_box > div p:nth-of-type(2) span {display:block;}
section#sc_mv > div#mv_box > div p:nth-of-type(3) {margin:0 0 25px 0; padding:0 0; font-size:44px; line-height:1.5; font-weight:600;}
section#sc_mv > div#mv_box > div h1 {position:relative; margin:0 0; padding:0 0; height:98px;}
section#sc_mv > div#mv_box > div h1::before {content:""; display:block; position:absolute; left:0; top:0; width:100%; height:98px; background:url(../img/logo.svg) no-repeat 0 50% / contain;}
section#sc_mv > div#mv_box > div h1 span {position:absolute; right:90px; bottom:10px; font-size:0; opacity:0;}

section#sc_mv > ul {position:relative; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:20px 20px; margin:0 auto; padding:30px 5px; background:rgba(49,159,219,0.95);}
section#sc_mv > ul li {margin:0 0; padding:0 0;}
section#sc_mv > ul li > span {position:relative; display:block; font-size:22px; line-height:1.4; font-weight:600; color:#fff;}
section#sc_mv > ul li > span::before {content:"＼"; display:inline;}
section#sc_mv > ul li > span::after {content:"／"; display:inline;}
section#sc_mv > ul li a {display:inline-block; margin:0 0; padding:15px 20px; min-width:280px; font-size:22px; line-height:30px; color:#03335F; letter-spacing:1px; font-weight:600; text-align:center; text-decoration:none; background:linear-gradient(90deg, #F4ED54, #EADC3D); border-radius:50px; transition:all 0.3s ease-in-out;}
section#sc_mv > ul li a:hover {filter:brightness(0.9);}
section#sc_mv > ul li a span {position:relative; padding:0 25px 0 0;}
section#sc_mv > ul li a span::after {content:""; display:inline-block; position:absolute; right:0; top:50%; transform:translate(0, -60%); -webkit-transform:translate(0%, -60%); -ms-transform:translate(0, -60%); width:20px; height:20px; background:url(../img/icon_01_b.png) no-repeat 50% 50% / contain;}
section#sc_mv > ul li a:hover span::after {background:url(../img/icon_01_b.png) no-repeat 50% 50% / contain;}


section[id^="sc_0"] {position:relative; z-index:10; margin:0 auto !important; padding:0 0;}
section[id^="sc_"] > div {margin:0 auto; padding:100px 0 100px 0; text-align:center; max-width:1240px;}
section[id^="sc_"] > div > h2 {position:relative; display:inline-block; margin:0 auto 20px auto; padding:0 0; font-size:34px !important; line-height:1.4; color:#222;}
section[id^="sc_"] > div > h2::after {content:""; display:block; margin:15px auto 0 auto; width:50px; height:6px; background:#319FDB; border-radius:10px;}
section[id^="sc_"] > div > h2 span.sub_txt {font-size:70%;}
section[id^="sc_"] > div > h2 strong {color:#027BCF;}
section[id^="sc_"] > div > h2 + p {margin:25px auto 0 auto; font-size:16px; line-height:1.6 !important; font-weight:600; max-width:1000px;}


p.cta_btn {margin:0 auto; padding:0 0;}
p.cta_btn a {display:inline-block; padding:15px 40px; font-size:22px; line-height:1.6; text-align:center; font-weight:600; letter-spacing:1px; color:#03335F; background:linear-gradient(90deg, #F4ED54, #EADC3D); border-radius:50px;}
p.cta_btn a:hover {filter:brightness(0.9);}
p.cta_btn a span {display:inline-block;}
p.cta_btn a span:nth-last-of-type(1) {position:relative; padding:0 25px 0 0;}
p.cta_btn a span:nth-last-of-type(1)::after {content:""; display:inline-block; position:absolute; right:0; top:50%; transform:translate(0, -60%); -webkit-transform:translate(0%, -60%); -ms-transform:translate(0, -60%); width:18px; height:18px; background:url(../img/icon_01_b.png) no-repeat 50% 50% / contain;}
p.cta_btn a:hover span:nth-last-of-type(1)::after {background:url(../img/icon_01_b.png) no-repeat 50% 50% / contain;}
p.cta_btn + p {margin:0 auto; font-size:16px !important; font-weight:400 !important;}


#sc_01 {background:#fff;}
#sc_01 > div > div > ul {display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px 20px; margin:40px auto 0 auto;}
#sc_01 > div > div > ul > li {width:calc((100% - 40px) / 3);}
#sc_01 > div > div > ul > li > dl {position:relative; margin:0 0;}
#sc_01 > div > div > ul > li > dl::before {transform:translate(0, 20px);  content:""; display:block; margin:0 auto 10px auto; width:100%; height:160px;}
#sc_01 > div > div > ul > li:nth-of-type(1) > dl:nth-of-type(1)::before {background:url(../img/sc_01_01a.webp) no-repeat left 50% top 50% / contain;}
#sc_01 > div > div > ul > li:nth-of-type(1) > dl:nth-of-type(2)::before {background:url(../img/sc_01_01b.webp) no-repeat left 50% top 50% / contain;}
#sc_01 > div > div > ul > li:nth-of-type(2) > dl:nth-of-type(1)::before {background:url(../img/sc_01_02a.webp) no-repeat left 50% top 50% / contain;}
#sc_01 > div > div > ul > li:nth-of-type(2) > dl:nth-of-type(2)::before {background:url(../img/sc_01_02b.webp) no-repeat left 50% top 50% / contain;}
#sc_01 > div > div > ul > li:nth-of-type(3) > dl:nth-of-type(1)::before {background:url(../img/sc_01_03a.webp) no-repeat left 50% top 50% / contain;}
#sc_01 > div > div > ul > li:nth-of-type(3) > dl:nth-of-type(2)::before {background:url(../img/sc_01_03b.webp) no-repeat left 50% top 50% / contain;}
#sc_01 > div > div > ul > li > dl:nth-of-type(1)::after {content:""; display:block; margin:20px auto 0 auto; width:60px; height:55px; background:#2E9AD4; clip-path:polygon(25% 0, 75% 0, 75% 40%, 100% 40%, 50% 100%, 0 40%, 25% 40%);}
#sc_01 > div > div > ul > li > dl dt {transform:translate(0, 25px); font-size:20px; line-height:1.5; font-weight:600; color:#FF7070;}
#sc_01 > div > div > ul > li > dl dt span {display:inline-block; margin:0 auto; min-width:65%; line-height:36px; font-weight:600;}
#sc_01 > div > div > ul > li > dl dt span:nth-last-of-type(1) {padding:4px 10px; font-size:24px; line-height:36px; background:#fff; border:3px solid #FF7070; border-radius:50px; box-sizing:border-box;}
#sc_01 > div > div > ul > li > dl:nth-of-type(2) dt span {color:#319FDB;}
#sc_01 > div > div > ul > li > dl:nth-of-type(2) dt span:nth-last-of-type(1) {color:#fff; background:#319FDB; border:3px solid #319FDB;}
#sc_01 > div > div > ul > li > dl dd {padding:45px 5px 20px 5px; background:#F0F0F0; border-radius:10px;}
#sc_01 > div > div > ul > li > dl:nth-of-type(2) dd {background:#CAE9FA;}
#sc_01 > div > div > ul > li > dl dd ul {display:inline-block; margin:0 auto; text-align:left; list-style:disc;}
#sc_01 > div > div > ul > li > dl dd ul li {margin:0 0 0 1em; font-weight:600; line-height:1.7;}
#sc_01 > div > h2 + p strong {color:#319FDB;}


#sc_02 {background:#f4f4f4;}
#sc_02 > div > div:nth-of-type(1) {margin:60px auto 0 auto; padding:45px 0; background:#fff;}
#sc_02 > div > div:nth-of-type(1) h3 {display:inline-block; margin:0 auto 20px auto; padding:5px 15px; font-size:26px; line-height:40px; font-weight:600; color:#FE7070; border:2px solid #FE7070;}
#sc_02 > div > div:nth-of-type(1) ol {position:relative; display:flex; flex-wrap:wrap; justify-content:center; gap:20px 20px; list-style:none; margin:30px auto 0 auto; max-width:1160px;}
#sc_02 > div > div:nth-of-type(1) ol li {position:relative; width:calc((100% - 100px) / 6); font-weight:600; color:#626262; background:#F4F4F4;}
#sc_02 > div > div:nth-of-type(1) ol li::before {content:""; display:block; position:absolute; right:0; top:50%; transform:translate(100%, -50%); width:16px; height:24px; clip-path:polygon(0 0, 100% 50%, 0 100%); background:#F4F4F4;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-last-of-type(1)::before {content:none;}
#sc_02 > div > div:nth-of-type(1) ol li::after {content:"";display:block; margin:10px auto 20px auto; width:100%; height:90px;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(1)::after {background:url(../img/sc_02_02_icon_01.png) no-repeat left 50% top 50% / contain;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(2)::after {background:url(../img/sc_02_02_icon_02.png) no-repeat left 50% top 50% / contain;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(3)::after {background:url(../img/sc_02_02_icon_03.png) no-repeat left 50% top 50% / contain;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(4)::after {background:url(../img/sc_02_02_icon_04.png) no-repeat left 50% top 50% / contain;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(5)::after {background:url(../img/sc_02_02_icon_05.png) no-repeat left 50% top 50% / contain;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(6)::after {background:url(../img/sc_02_02_icon_06.png) no-repeat left 50% top 50% / contain;}
#sc_02 > div > div:nth-of-type(1) ol li span {position:relative; display:block; padding:30px 0 0 0;}
#sc_02 > div > div:nth-of-type(1) ol li span::before {content:""; display:block; position:absolute; left:50%; top:0; transform:translate(-50%, -50%); width:40px; height:40px; font-size:16px; line-height:40px; text-align:center; font-weight:600; color:#fff; background:#FF7070; border-radius:50px;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(1) span::before {content:"01";}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(2) span::before {content:"02";}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(3) span::before {content:"03";}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(4) span::before {content:"04";}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(5) span::before {content:"05";}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(6) span::before {content:"06";}

#sc_02 > div > div:nth-of-type(2) {position:relative; margin:60px auto 0 auto; padding:45px 0; background:#CAE9FA;}
#sc_02 > div > div:nth-of-type(2)::before {content:""; display:block; position:absolute; left:50%; top:0; transform:translate(-50%, -50%); width:76px; height:76px; background:#CAE9FA url(../img/sc_02_03_icon_00.png) no-repeat left 50% top 50% / 34px auto; border-radius:50px;}
#sc_02 > div > div:nth-of-type(2) h3 {display:inline-block; margin:0 auto 20px auto; padding:5px 15px; font-size:26px; line-height:40px; font-weight:600; color:#319FDB; background:#fff; border:2px solid #0F8BCF;}
#sc_02 > div > div:nth-of-type(2) h3 strong {position:relative; display:inline-block; width:190px; height:40px; color:#fff; user-select:none;}
#sc_02 > div > div:nth-of-type(2) h3 strong::after {content:""; display:block; position:absolute; left:0; top:0; width:185px; height:40px; background:url(../img/logo.svg) no-repeat 0 50% / contain;}
#sc_02 > div > div:nth-of-type(2) ol {position:relative; display:flex; flex-wrap:wrap; justify-content:center; gap:20px 40px; list-style:none; margin:40px auto 0 auto; max-width:950px;}
#sc_02 > div > div:nth-of-type(2) ol li {position:relative; width:calc((100% - 80px) / 3); font-size:24px; line-height:1.2; font-weight:600; color:#626262; background:#fff;}
#sc_02 > div > div:nth-of-type(2) ol li::before {content:""; display:block; position:absolute; right:0; top:50%; transform:translate(100%, -50%); width:28px; height:40px; clip-path:polygon(0 0, 100% 50%, 0 100%); background:#fff;}
#sc_02 > div > div:nth-of-type(2) ol li:nth-last-of-type(1)::before {content:none;}
#sc_02 > div > div:nth-of-type(2) ol li::after {content:""; display:block; margin:10px auto 30px auto; width:100%; height:160px;}
#sc_02 > div > div:nth-of-type(2) ol li:nth-of-type(1)::after {background:url(../img/sc_02_03_icon_01.png) no-repeat left 50% top 50% / contain;}
#sc_02 > div > div:nth-of-type(2) ol li:nth-of-type(2)::after {background:url(../img/sc_02_03_icon_02.png) no-repeat left 50% top 50% / contain;}
#sc_02 > div > div:nth-of-type(2) ol li:nth-of-type(3)::after {background:url(../img/sc_02_03_icon_03.png) no-repeat left 50% top 50% / contain;}
#sc_02 > div > div:nth-of-type(2) ol li span {position:relative; display:block; padding:60px 0 0 0;}
#sc_02 > div > div:nth-of-type(2) ol li span::before {content:""; display:block; position:absolute; left:50%; top:0; transform:translate(-50%, -50%); width:64px; height:64px; font-size:32px; line-height:64px; text-align:center; font-weight:600; color:#fff; background:linear-gradient(90deg, #319FDB, #2C95CE); border-radius:50px;}
#sc_02 > div > div:nth-of-type(2) ol li:nth-of-type(1) span::before {content:"01";}
#sc_02 > div > div:nth-of-type(2) ol li:nth-of-type(2) span::before {content:"02";}
#sc_02 > div > div:nth-of-type(2) ol li:nth-of-type(3) span::before {content:"03";}


#sc_03 {background:#fff;}
#sc_03 > div > div {position:relative; display:flex; flex-wrap:wrap; justify-content:center; gap:30px 30px; margin:60px auto 0 auto; max-width:920px;}
#sc_03 > div > div > dl {width:calc((100% - 30px) / 2); padding:40px 30px; background:#fff; border:10px solid #EBEBEB; border-radius:20px;}
#sc_03 > div > div > dl dt {margin:0 0 10px 0; font-size:30px; font-weight:600; color:#2C95CE;}
#sc_03 > div > div > dl dd {position:relative; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:20px 20px; font-weight:600; color:#222;}
#sc_03 > div > div > dl dd::before {content:"";display:block; width:90px; height:80px;}
#sc_03 > div > div > dl:nth-of-type(1) dd::before {background:url(../img/sc_03_icon_01.png) no-repeat left 50% top 50% / contain;}
#sc_03 > div > div > dl:nth-of-type(2) dd::before {background:url(../img/sc_03_icon_02.png) no-repeat left 50% top 50% / contain;}
#sc_03 > div > div > dl:nth-of-type(3) dd::before {background:url(../img/sc_03_icon_03.png) no-repeat left 50% top 50% / contain;}
#sc_03 > div > div > dl:nth-of-type(4) dd::before {background:url(../img/sc_03_icon_04.png) no-repeat left 50% top 50% / contain;}
#sc_03 > div > div > dl:nth-of-type(5) dd::before {background:url(../img/sc_03_icon_05.png) no-repeat left 50% top 50% / contain;}
#sc_03 > div > div > dl:nth-of-type(6) dd::before {background:url(../img/sc_03_icon_06.png) no-repeat left 50% top 50% / contain;}
#sc_03 > div > div > dl dd span {width:calc(100% - 120px); text-align:left;}
#sc_03 > div > h2 + p strong {color:#319FDB;}


#sc_04 {background:#fff;}
#sc_04 > div > h2 span:nth-of-type(2) {font-size:80%;}
#sc_04 > div > h2 + p {max-width:780px;}
#sc_04 > div > div {margin:60px auto 0 auto; max-width:1010px;}
#sc_04 > div > div ol {list-style:none;}
#sc_04 > div > div ol li {position:relative; display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px 0; margin:20px auto; padding:20px 20px; background:#fff; border:10px solid #EBEBEB; border-radius:20px;}
#sc_04 > div > div ol li::before {content:""; display:block; width:70px; height:70px; font-size:28px; font-weight:600; line-height:70px; text-align:center; color:#fff; background:linear-gradient(90deg, #319FDB, #2C95CE); border-radius:100px;}
#sc_04 > div > div ol li:nth-of-type(1)::before {content:"01";}
#sc_04 > div > div ol li:nth-of-type(2)::before {content:"02";}
#sc_04 > div > div ol li:nth-of-type(3)::before {content:"03";}
#sc_04 > div > div ol li::after {content:""; display:block; width:43%; height:0; padding-top:calc(64.5% * 0.43);}
#sc_04 > div > div ol li:nth-of-type(1)::after {background:url(../img/sc_04_01.webp) no-repeat left 50% top 50% / contain;}
#sc_04 > div > div ol li:nth-of-type(2)::after {background:url(../img/sc_04_02.webp) no-repeat left 50% top 50% / contain;}
#sc_04 > div > div ol li:nth-of-type(3)::after {background:url(../img/sc_04_03.webp) no-repeat left 50% top 50% / contain;}
#sc_04 > div > div ol li dl {width:calc(100% - 70px - 43%); padding:0 5px 0 15px;}
#sc_04 > div > div ol li dl dt {margin:0 0 10px 0; height:70px; font-size:30px; line-height:70px; font-weight:600; text-align:left; color:#2E9AD4;}
#sc_04 > div > div ol li dl dd {text-align:left;}
#sc_04 > div > div ol li dl dd p {font-size:16px; line-height:1.6; font-weight:600; text-align:left;}
#sc_04 > div > div ol li dl dd p:nth-of-type(2) {display:flex; flex-wrap:wrap; align-items:center; gap:10px 10px; margin:5px 0 0 0; padding:0 10px 0 0; line-height:1.4;}
#sc_04 > div > div ol li:nth-of-type(1) dl dd p:nth-of-type(2) {padding:0 80px 0 0;}
#sc_04 > div > div ol li dl dd p:nth-of-type(2) span {display:inline-block; padding:5px 5px; border:2px solid #222;}
#sc_04 > div > div ol li dl dd p:nth-of-type(3) {margin:5px 0 0 0;}


#sc_05 {background:#f4f4f4;}
#sc_05 > div > div {position:relative; display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px 30px; margin:65px auto 0 auto; max-width:740px;}
#sc_05 > div > div > dl {display:flex; flex-direction:column; width:calc((100% - 30px) / 2); background:#fff; border-radius:30px; overflow:hidden;}
#sc_05 > div > div > dl dt {padding:15px 10px; font-size:26px; line-height:1.6; font-weight:600; color:#fff; background:linear-gradient(90deg, #319FDB, #2C95CE);}
#sc_05 > div > div > dl dt span:nth-of-type(2) {font-size:80%;}
#sc_05 > div > div > dl dd {padding:50px 10px; font-size:20px; font-weight:600; color:#222;}
#sc_05 > div > div > dl:nth-of-type(1) dd {display:flex; justify-content:center; align-items:center; height:100%;}
#sc_05 > div > div > dl:nth-of-type(1) dd div span:nth-of-type(1) {font-size:260%;}
#sc_05 > div > div > dl:nth-of-type(2) dd div span:nth-of-type(1) {font-size:260%;}
#sc_05 > div > div > p {padding:0 0; font-size:12px;}
#sc_05 > div > h2 + p strong {color:#319FDB;}

.sc_cta {background:url(../img/cta_bg.webp) no-repeat left 50% top 50% / cover, linear-gradient(90deg, #319FDB, #2C95CE); background-blend-mode:multiply;}
.sc_cta > div {position:relative; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:30px 0; margin:0 auto; padding:40px 0; max-width:680px;}
.sc_cta > div > div {width:57%; text-align:center;}
.sc_cta > div::after {content:"";display:block; width:42.5%; height:0; padding-top:calc(72.32% * 0.425); background:url(../img/mv_01.webp) no-repeat left 0 top 50% / contain;}
.sc_cta > div > div h2 {font-size:26px; line-height:1.4; color:#fff;}
.sc_cta > div > div h2::before {content:"＼"}
.sc_cta > div > div h2::after {content:"／"}
.sc_cta > div > div ul {display:inline-block; margin:10px auto; text-align:left; list-style:disc;}
.sc_cta > div > div ul li {margin:0 0 0 1em; font-size:18px; font-weight:600; line-height:1.6; color:#fff;}


#footer {position:relative; z-index:10; padding:30px 0; text-align:center; background:#fff;}
#footer p a {position:relative; margin:0 auto; min-width:250px; font-size:0;}
#footer p a::before {content:""; display:block; margin:0 0; width:100%; height:45px; background:url(../img/logo_sb_b.png) no-repeat 50% 50% / contain;}
#footer p a:hover {opacity:0.7;}
#footer small {display:inline-block; margin:0 auto;}




@media only screen and (max-width: 768px) {

section#hdr {height:50px; padding:0 10px 0 20px !important;}
#logo {height:34px;}
#logo a {height:34px;}

#nav_and_cta ul.cta li:nth-last-of-type(1) {display:none;}
#nav_and_cta ul.cta li a {padding:8px 30px; font-size:16px; line-height:18px; letter-spacing:1px;}
#nav_and_cta ul.cta li:nth-of-type(1) a {border:2px solid #E6963C;}
#nav_and_cta ul.cta li a span {padding:0 0;}
#nav_and_cta ul.cta li a span::after {content:none;}


section[id^="sc_"] > div {padding:50px 4% !important;}
section[id^="sc_"] > div > h2 {font-size:28px !important; margin:0 auto 10px auto;}
section[id^="sc_"] > div > h2 + p {margin:20px auto 0 auto;}


p.cta_btn {margin:0 auto;}
p.cta_btn a {padding:10px 10px; width:80%; font-size:20px;}
p.cta_btn a span:nth-last-of-type(1) {padding:0 22px 0 0;}
p.cta_btn a span:nth-last-of-type(1)::after {width:18px; height:18px;}
p.cta_btn + p {font-size:14px !important;}


section#sc_mv {margin:0 auto; padding:50px 0 0 0 !important;}
section#sc_mv > div#mv_box {padding:30px 4% !important;}
section#sc_mv > div#mv_box > div {margin:0 0;}
section#sc_mv > div#mv_box > div::after {bottom:-5%; padding-top:calc(72.32% * 0.45); width:45%;}
section#sc_mv > div#mv_box > div p:nth-of-type(1) {font-size:20px;}
section#sc_mv > div#mv_box > div p:nth-of-type(1) strong {margin:0 0 0 5px; padding:2px 10px;}
section#sc_mv > div#mv_box > div p:nth-of-type(2) {font-size:28px; line-height:1.5;}
section#sc_mv > div#mv_box > div p:nth-of-type(3) {margin:0 0 20px 0; font-size:32px;}
section#sc_mv > div#mv_box > div h1 {height:60px;}
section#sc_mv > div#mv_box > div h1::before {height:60px;}

section#sc_mv > ul {padding:20px 5px;}
section#sc_mv > ul li a {padding:10px 10px; font-size:20px; line-height:1.5;}
section#sc_mv > ul li a span {padding:0 22px 0 0;}
section#sc_mv > ul li a span::after {width:18px; height:18px;}


#sc_01 > div > div > ul {gap:30px 20px; margin:30px auto 0 auto;}
#sc_01 > div > div > ul > li {width:100%; padding:0 20px 20px 10px; border:10px solid #EBEBEB; border-radius:20px;}
#sc_01 > div > div > ul > li > dl {padding:0 0 0 150px;}
#sc_01 > div > div > ul > li > dl::before {transform:translate(0, 0); position:absolute; left:0; top:0; margin:0 0; width:140px; height:110px;}
#sc_01 > div > div > ul > li > dl:nth-of-type(1)::before {top:50px;}
#sc_01 > div > div > ul > li > dl:nth-of-type(2)::before {top:70px;}
#sc_01 > div > div > ul > li > dl:nth-of-type(1)::after {margin:10px auto -10px auto; width:50px; height:45px;}
#sc_01 > div > div > ul > li > dl dt {transform:translate(0, 20px); font-size:16px;}
#sc_01 > div > div > ul > li > dl dt span {line-height:30px;}
#sc_01 > div > div > ul > li > dl dt span:nth-last-of-type(1) {font-size:18px; line-height:26px;}
#sc_01 > div > div > ul > li > dl dd {padding:40px 5px 20px 5px;}

#sc_02 > div > div:nth-of-type(1) {padding:20px 0;}
#sc_02 > div > div:nth-of-type(1) h3 {margin:0 auto 10px auto; padding:5px 15px; font-size:20px; line-height:30px;}
#sc_02 > div > div:nth-of-type(1) ol {gap:30px 10px; padding:0 20px;}
#sc_02 > div > div:nth-of-type(1) ol li {width:calc((100% - 50px) / 6); font-size:12px;}
#sc_02 > div > div:nth-of-type(1) ol li::before {width:10px; height:15px;}
#sc_02 > div > div:nth-of-type(1) ol li::after {margin:0 auto; width:80%; height:0; padding-top:80%;}

#sc_02 > div > div:nth-of-type(2) {margin:50px auto 0 auto; padding:40px 0 20px 0;}
#sc_02 > div > div:nth-of-type(2)::before {width:60px; height:60px; background-size:26px auto;}
#sc_02 > div > div:nth-of-type(2) h3 {margin:0 auto 10px auto; padding:5px 15px; font-size:20px; line-height:30px;}
#sc_02 > div > div:nth-of-type(2) h3 strong {width:140px; height:30px;}
#sc_02 > div > div:nth-of-type(2) h3 strong::after {width:135px; height:30px;}
#sc_02 > div > div:nth-of-type(2) ol {gap:15px 15px; padding:0 20px;}
#sc_02 > div > div:nth-of-type(2) ol li {width:calc((100% - 30px) / 3); font-size:16px; line-height:1.4;}
#sc_02 > div > div:nth-of-type(2) ol li::before {width:15px; height:20px;}
#sc_02 > div > div:nth-of-type(2) ol li span {padding:45px 0 0 0;}
#sc_02 > div > div:nth-of-type(2) ol li span::before {width:50px; height:50px; font-size:24px; line-height:50px;}
#sc_02 > div > div:nth-of-type(2) ol li::after {margin:5px auto 10px auto; height:120px;}

#sc_03 > div > div {margin:30px auto 0 auto;}
#sc_03 > div > div > dl {padding:20px 20px;}
#sc_03 > div > div > dl dt {margin:0 0 5px 0; font-size:20px; text-align:left;}
#sc_03 > div > div > dl dd {font-size:14px; line-height:1.5;}
#sc_03 > div > div > dl dd::before {width:80px; height:70px;}
#sc_03 > div > div > dl dd span {width:calc(100% - 100px);}

#sc_04 > div > div {margin:30px auto 0 auto;}
#sc_04 > div > div ol li {margin:30px auto 0 auto;}
#sc_04 > div > div ol li::before {position:absolute; left:20px; top:20px; width:40px; height:40px; font-size:20px; line-height:40px;}
#sc_04 > div > div ol li::after {width:40%; padding-top:calc(64.5% * 0.4);}
#sc_04 > div > div ol li dl {width:60%; padding:0 5px 0 0;}
#sc_04 > div > div ol li dl dt {margin:0 0 10px 50px; height:40px; font-size:22px; line-height:50px;}
#sc_04 > div > div ol li dl dd p:nth-of-type(2) {gap:5px 5px; padding:0 0; font-size:14px;}
#sc_04 > div > div ol li:nth-of-type(1) dl dd p:nth-of-type(2) {padding:0 0;}
#sc_04 > div > div ol li dl dd p:nth-of-type(2) span {border:1px solid #222;}
#sc_04 > div > div ol li dl dd p:nth-of-type(3) {font-size:12px;}

#sc_05 > div > div {margin:30px auto 0 auto;}
#sc_05 > div > div > dl dt {padding:10px 5px; font-size:22px;}
#sc_05 > div > div > dl dd {padding:40px 5px; font-size:18px;}

.sc_cta > div {max-width:640px;}
.sc_cta > div::after {width:39%; padding-top:calc(72.32% * 0.39);}
.sc_cta > div > div {width:60%;}
.sc_cta > div > div h2 {font-size:22px;}
.sc_cta > div > div ul {margin:10px auto 15px auto;}
.sc_cta > div > div ul li {font-size:16px;}


#page-top {background:#f4f4f4;}


#footer {padding:20px 0 20px 0;}
#footer p a {margin:0 auto 10px auto; min-width:240px;}
#footer p a::before {height:40px;}
#footer small {margin:10px auto 0 auto;}

}









@media only screen and (max-width: 430px) {

#logo {height:34px;}
#logo a {height:34px;}



section[id^="sc_"] > div > h2 {max-width:calc(100% - 10px); font-size:18px !important;}
section[id^="sc_"] > div > h2::after {margin:10px 0 0 -5px; width:calc(100% + 10px); height:2px;}
section[id^="sc_"] > div > h2 + p {font-size:16px; text-align:left;}
section[id^="sc_"] > div > h2 + p span {display:inline;}

p.cta_btn a {padding:10px 10px; width:92%; font-size:18px; line-height:1.5;}
p.cta_btn a span:nth-last-of-type(1) {padding:0 20px 0 0;}
p.cta_btn a span:nth-last-of-type(1)::after {width:16px; height:16px;}
p.cta_btn + p {font-size:12px !important;}

section#sc_mv > div#mv_box {padding:20px 4% !important;}
section#sc_mv > div#mv_box > div::after {position:static; margin:10px auto 0 auto; padding-top:calc(72.32% * 0.6); width:60%;}
section#sc_mv > div#mv_box > div p:nth-of-type(1) {font-size:18px; line-height:2; text-align:center;}
section#sc_mv > div#mv_box > div p:nth-of-type(1) span {display:block;}
section#sc_mv > div#mv_box > div p:nth-of-type(1) strong {line-height:1.4}
section#sc_mv > div#mv_box > div p:nth-of-type(2) {font-size:26px; text-align:center;}
section#sc_mv > div#mv_box > div p:nth-of-type(2) span {display:inline-block;}
section#sc_mv > div#mv_box > div p:nth-of-type(3) {position:relative; margin:0 0 15px 0; font-size:22px; text-align:center;}
section#sc_mv > div#mv_box > div h1 {height:45px;}
section#sc_mv > div#mv_box > div h1::before {height:45px; background-position:left 50% top 50%;}

#sc_01 > div > div > ul > li {padding:0 15px 15px 15px;}
#sc_01 > div > div > ul > li > dl {padding:0 0;}
#sc_01 > div > div > ul > li > dl::before {position:static; left:auto; top:auto; margin:0 auto; transform:translate(0, 15px);}
#sc_01 > div > div > ul > li > dl dd {padding:30px 5px 10px 15px;}
#sc_01 > div > div > ul > li > dl dd ul {display:block;}
#sc_01 > div > div > ul > li > dl dd ul li {font-size:14px; line-height:1.6;}

#sc_01 > div > h2 + p strong {white-space:nowrap;}


#sc_02 > div > div:nth-of-type(1) {margin:30px auto 0 auto; padding:20px 15px;}
#sc_02 > div > div:nth-of-type(1) h3 {padding:5px 5px; width:100%;}
#sc_02 > div > div:nth-of-type(1) ol {padding:0 0;}
#sc_02 > div > div:nth-of-type(1) ol li {width:calc((100% - 20px) / 3);}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(1) {order:1;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(2) {order:2;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(3) {order:3;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(4) {order:6;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(5) {order:5;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(6) {order:4;}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(3)::before {right:auto; top:auto; left:50%; bottom:0; transform:translate(-50%, 100%); width:15px; height:10px; clip-path:polygon(0 0, 100% 0, 50% 100%);}
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(4)::before,
#sc_02 > div > div:nth-of-type(1) ol li:nth-of-type(5)::before {right:auto; left:0; transform:translate(-100%, -50%); clip-path:polygon(0 50%, 100% 0, 100% 100%);}
#sc_02 > div > div:nth-of-type(2) {margin:30px auto 0 auto; padding:20px 15px;}
#sc_02 > div > div:nth-of-type(2)::before {top:-5px; width:40px; height:40px; background-size:20px auto;}
#sc_02 > div > div:nth-of-type(2) h3 {padding:5px 5px; width:100%; font-size:18px; line-height:30px;}
#sc_02 > div > div:nth-of-type(2) ol {gap:45px 0; padding:0 0;}
#sc_02 > div > div:nth-of-type(2) ol li {width:100%;}
#sc_02 > div > div:nth-of-type(2) ol li::before {right:auto; top:auto; left:50%; bottom:0; transform:translate(-50%, 100%); width:20px; height:15px; clip-path:polygon(0 0, 100% 0, 50% 100%);}

#sc_03 > div > div {gap:20px 20px;}
#sc_03 > div > div > dl {width:100%; padding:15px 15px;}
#sc_03 > div > div > dl dd {gap:10px 10px;}
#sc_03 > div > div > dl dd span {width:calc(100% - 90px);}

#sc_04 > div > div ol li {gap:15px 0; padding:25px 15px 15px 15px;}
#sc_04 > div > div ol li::before {left:50%; top:-5px; transform:translate(-50%, -50%); width:50px; height:50px; font-size:24px; line-height:50px;}
#sc_04 > div > div ol li::after {width:100%; padding-top:calc(64.5% * 1);}
#sc_04 > div > div ol li dl {width:100%; padding:0 0;}
#sc_04 > div > div ol li dl dt {margin:0 auto 5px auto; height:auto; font-size:22px; line-height:1.6; text-align:center;}
#sc_04 > div > div ol li dl dd p:nth-of-type(2) {margin:10px 0 0 0; font-size:12px;}


#sc_05 > div > div > dl {width:100%; border-radius:20px;}
#sc_05 > div > div > dl dd {padding:20px 5px;}
#sc_05 > div > div > dl:nth-of-type(2) dd div span:nth-of-type(1) {font-size:200%;}

.sc_cta > div {gap:20px 0; padding:30px 0;}
.sc_cta > div::after {content:none;}
.sc_cta > div > div {width:100%;}
.sc_cta > div > div h2 {font-size:20px;}
.sc_cta > div > div ul {position:relative; display:block; margin:15px 0; padding:0 40% 0 1.5em;}
.sc_cta > div > div ul::before {content:""; display:block; position:absolute; right:4%; top:-10px; padding-top:calc(72.32% * 0.35); width:35%;  background:url(../img/mv_01.webp) no-repeat left 50% top 0 / contain;}
.sc_cta > div > div ul li {margin-bottom:5px; font-size:14px; line-height:1.4;}


#footer {padding:20px 0 20px 0;}
#footer p a {margin:0 auto 10px auto; min-width:240px;}
#footer p a::before {height:40px;}
#footer small {margin:10px auto 0 auto;}

}


@media only screen and (max-width: 320px) {

section[id^="sc_"] > div > h2 + p {font-size:14px;}

section#sc_mv > div#mv_box > div p:nth-of-type(1) {font-size:16px;}
section#sc_mv > div#mv_box > div p:nth-of-type(2) {font-size:24px;}

#sc_02 > div > div:nth-of-type(1) h3 {font-size:16px;}
#sc_02 > div > div:nth-of-type(2) h3 {font-size:16px;}

#sc_04 > div > div ol li dl dt {font-size:20px;}
#sc_04 > div > div ol li dl dd p {font-size:14px;}

.sc_cta > div > div h2 {font-size:18px;}
.sc_cta > div > div ul li {font-size:12px;}

}