@charset "UTF-8";
:root { --color-gray: #929292; --color-gray-second: #c4c4c4; --color-gray-third: #707070; --color-gray-fourth: #d8d5d5; --color-gray-fifth: #e3e3e3; --color-gray-sixth: #F6F6F6; --color-black: #000000; --color-black-second: #0d0d0d; --color-black-third: #262421; --color-white: #ffffff; --color-brown: #684117; --color-red: #ff0000; --font-noto-sans-jp: "Noto Sans JP", sans-serif; --font-noto-serif-jp: "Noto Serif JP", serif; --font-saira: "Saira Semi Condensed", sans-serif; --font-libre-baskerville: "Libre Baskerville", serif; }

:root { --color-gray: #929292; --color-gray-second: #c4c4c4; --color-gray-third: #707070; --color-gray-fourth: #d8d5d5; --color-gray-fifth: #e3e3e3; --color-gray-sixth: #F6F6F6; --color-black: #000000; --color-black-second: #0d0d0d; --color-black-third: #262421; --color-white: #ffffff; --color-brown: #684117; --color-red: #ff0000; --font-noto-sans-jp: "Noto Sans JP", sans-serif; --font-noto-serif-jp: "Noto Serif JP", serif; --font-saira: "Saira Semi Condensed", sans-serif; --font-libre-baskerville: "Libre Baskerville", serif; }

@keyframes moveDown { 0% { transform: translateY(-70px);
    opacity: 0; }
  100% { transform: translateY(0px);
    opacity: 1; } }

@keyframes crlMugLoader { 0%, 10% { transform: translateY(64px); }
  90%, 100% { transform: translateY(0px); } }

.loading { position: fixed; left: 0; top: 0; bottom: 0; right: 0; background: #fff; z-index: 8977; -webkit-transition: 0.5s ease all; -moz-transition: 0.5s ease all; -ms-transition: 0.5s ease all; -o-transition: 0.5s ease all; transition: 0.5s ease all; }

.loading .loading-logo { box-sizing: border-box; position: absolute; left: 0; right: 0; margin: 0 auto; top: 50%; text-align: center; }

.loading .loader { width: 64px; height: 64px; position: relative; border-radius: 50%; box-sizing: border-box; position: absolute; left: 0; right: 0; margin: 0 auto; overflow: hidden; top: 50%; }

.loading .loader:before { content: ''; position: absolute; inset: 0px; margin: auto; background: #AA3C80; animation: crlMugLoader 1s linear infinite alternate; }

.loading .loader:after { content: ''; position: absolute; inset: 8px; margin: auto; background: #fff; border-radius: 50%; }

.loading.is-hidden { opacity: 0; pointer-events: none; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .loading .loading-logo { width: 250px; margin: 0 auto; } }

/* ========== end △ */
.c-box-orange ul { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.c-box-orange ul li { width: 33.33%; padding: 4px 4px; position: relative; position: relative; }

.c-box-orange ul li:before { display: block; content: " "; width: 100%; padding-top: 100%; }

.c-box-orange ul li > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.c-box-orange ul li:before { background: #FFBA03; background: linear-gradient(180deg, #ffba03 10%, #ff730b 100%); border-radius: 50%; }

.c-box-orange ul li:after { position: absolute; content: ""; left: 8px; right: 8px; bottom: 8px; top: 8px; border: 1px solid #fff; border-radius: 50%; pointer-events: none; }

.c-box-orange ul li .box { position: absolute; content: ""; left: 0; right: 0; top: 50%; text-align: center; transform: translateY(-50%); }

.c-box-orange ul li .box p { color: #fff; font-size: 18px; line-height: 1.66667; letter-spacing: 0em; font-weight: bold; }

.c-box-orange ul li .box p small { font-size: 16px; line-height: 1.875; }

/* ▽ PC-TAB layout ========== */
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .c-box-orange ul li { padding: 1px 1px; }
  .c-box-orange ul li:after { left: 3px; right: 3px; bottom: 3px; top: 3px; }
  .c-box-orange ul li .box p { font-size: 14px; line-height: 1.57143; }
  .c-box-orange ul li .box p small { font-size: 10px; line-height: 2.2; } }

/* ========== end △ */
.main-visual { position: relative; text-align: center; padding: 0; z-index: 23; padding: 88px 60px 60px; height: 988px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .main-visual { overflow: hidden; } }

/* ========== end △ */
.main-visual:after { position: absolute; content: ""; right: 60px; bottom: 60px; width: 770px; height: 261px; background: url(../images/mv_bg02.png) no-repeat right bottom; background-size: 100% auto; z-index: 4; }

.main-visual .mv-scroll { position: absolute; left: 34px; bottom: 118px; z-index: 22; height: 155px; width: 45px; }

.main-visual .mv-scroll .line { overflow: hidden; position: absolute; content: ""; left: 0; top: 99px; z-index: 2; height: 70px; width: 1px; }

.main-visual .mv-scroll .line:before { position: absolute; content: ""; left: 0; top: 0; background: #ccc; z-index: 1; height: 70px; width: 1px; }

.main-visual .mv-scroll .line:after { position: absolute; content: ""; left: 0; top: 0; background: #878787; border-radius: 35px; z-index: 3; height: 70px; width: 1px; animation: moveDown 2s ease-in-out 1s infinite; }

.main-visual .mv-scroll .txt { font-size: 16px; line-height: 1.875; letter-spacing: 0.1em; font-weight: 400; display: inline-block; transform: rotate(90deg); white-space: nowrap; transform-origin: 0; }

.main-visual .mv-img { width: 100%; position: relative; z-index: 3; height: 100%; border-radius: 35px; }

.main-visual .mv-img:before { position: absolute; content: ""; left: 0; top: 0; bottom: 0; right: 0; background: #002570; opacity: 0.2; border-radius: 35px; z-index: 2; }

.main-visual .mv-img:after { position: absolute; content: ""; left: 0; bottom: 0; right: 0; height: 65%; background: #1C2C83; background: linear-gradient(180deg, rgba(28, 44, 131, 0) 0%, #1c2c83 100%); z-index: 2; border-radius: 0 0 35px 35px; opacity: 0.7; pointer-events: none; }

.main-visual .mv-img .c-img { width: 100%; height: 100%; border-radius: 35px; }

.main-visual .mv-img .c-img img { border-radius: 35px; }

.main-visual .mv-box01 { position: absolute; right: 82px; bottom: 58px; z-index: 22; width: 577px; }

.main-visual .mv-catch { position: absolute; left: 20px; right: 20px; width: 100%; max-width: 1260px; margin: 0 auto; z-index: 33; text-align: left; bottom: 130px; padding: 0 60px; }

.main-visual .mv-ttl01 { color: #fff; font-size: 64px; line-height: 1.40625; letter-spacing: 0.1em; font-weight: 500; margin-bottom: 20px; }

.main-visual .mv-ttl01 small { font-size: 48px; line-height: 1.875; }

/* ▽ PC-TAB layout ========== */
@media only screen and (min-width: 768px) and (max-width: 1600px) { .main-visual .mv-ttl01 { font-size: 3.33333vw; }
  .main-visual .mv-ttl01 small { font-size: 2.5vw; } }

/* ========== end △ */
.main-visual .mv-ttl02 { color: #fff; font-size: 48px; line-height: 1.35417; letter-spacing: 0.1em; font-weight: 500; margin-bottom: 41px; }

/* ▽ PC-TAB layout ========== */
@media only screen and (min-width: 768px) and (max-width: 1600px) { .main-visual .mv-ttl02 { font-size: 2.5vw; } }

/* ========== end △ */
.main-visual .mv-desc01 { color: #fff; font-size: 26px; line-height: 1.38462; letter-spacing: 0.1em; font-weight: 500; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .main-visual .mv-desc01 { max-width: 50%; } }

@media only screen and (min-width: 768px) and (max-width: 1600px) { .main-visual .mv-desc01 { font-size: 1.35417vw; } }

/* ========== end △ */
.main-visual .mv-note01 { color: #fff; font-size: 16px; line-height: 2.25; letter-spacing: 0.1em; font-weight: 500; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .main-visual .mv-note01 { max-width: 50%; } }

@media only screen and (min-width: 768px) and (max-width: 1600px) { .main-visual .mv-note01 { font-size: 0.83333vw; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .main-visual .mv-bnr { width: 304px; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .main-visual { padding: 0 5px 0; height: 320px; }
  .main-visual:after { position: absolute; content: ""; right: 60px; bottom: 60px; width: 770px; height: 261px; background: url(../images/mv_bg02.png) no-repeat right bottom; background-size: 100% auto; z-index: 4; display: none; }
  .main-visual .mv-scroll { display: none; position: absolute; left: 5px; right: 0; margin: 0 auto; bottom: -125px; height: 125px; width: 15px; }
  .main-visual .mv-scroll .line { top: 75px; height: 45px; width: 1px; }
  .main-visual .mv-scroll .line:before { height: 45px; }
  .main-visual .mv-scroll .line:after { border-radius: 0; height: 45px; }
  .main-visual .mv-scroll .txt { font-size: 11px; line-height: 2; }
  .main-visual .mv-img { border-radius: 20px; }
  .main-visual .mv-img:before { border-radius: 20px; }
  .main-visual .mv-img:after { height: 75%; border-radius: 0 0 20px 20px; }
  .main-visual .mv-img .c-img { border-radius: 20px; }
  .main-visual .mv-img .c-img img { border-radius: 20px; }
  .main-visual .mv-box01 { position: relative; right: 0; bottom: 0; z-index: 22; width: 100%; margin: -20px auto 0; max-width: 365px; }
  .main-visual .mv-catch { left: 15px; right: 15px; bottom: 35px; padding: 0; width: auto; }
  .main-visual .mv-ttl01 { font-size: 24px; line-height: 1.16667; margin-bottom: 10px; }
  .main-visual .mv-ttl01 small { font-size: 18px; line-height: 1.55556; }
  .main-visual .mv-ttl02 { font-size: 15px; line-height: 1.73333; margin-bottom: 5px; }
  .main-visual .mv-desc01 { font-size: 14px; line-height: 1.57143; margin: 0 0 2px; }
  .main-visual .mv-note01 { color: #fff; font-size: 10px; line-height: 1.5; } }

/* ========== end △ */
.sec01 { padding: 105px 0 46px; position: relative; }

.sec01 .ttl01 { font-size: 46px; line-height: 1.19565; letter-spacing: 0em; font-weight: 500; text-align: center; }

.sec01 .ttl01 em { color: #1F75CC; font-style: normal; position: relative; display: inline-block; }

.sec01 .ttl01 em:before { position: absolute; content: ""; left: 50%; margin-left: -6px; width: 12px; height: 12px; border-radius: 50%; background: #1F75CC; top: -15px; }

.sec01 .img01 { text-align: center; margin: 55px 0 0; z-index: 32; position: relative; }

.sec01 .cmmt { z-index: 32; border-radius: 100px; border: 3px solid #BFBFBF; text-align: center; position: relative; margin: 20px 0 0; padding: 21px 20px 22px; position: relative; background: #fff; }

.sec01 .cmmt:before { position: absolute; content: ""; width: 39px; height: 30px; background: url(../images/arr01.png) no-repeat center center; background-size: 100% auto; z-index: 4; left: 0; right: 0; margin: 0 auto; top: -22px; }

.sec01 .cmmt p { position: relative; font-size: 24px; line-height: 1.91667; letter-spacing: 0em; font-weight: 500; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec01 { padding: 145px 0 10px; }
  .sec01 .ttl01 { font-size: 20px; line-height: 1.5; letter-spacing: 0em; }
  .sec01 .ttl01 em:before { margin-left: -4px; width: 6px; height: 6px; top: -6px; }
  .sec01 .img01 { margin: 15px 0 0; }
  .sec01 .cmmt { border-radius: 20px; border: 2px solid #BFBFBF; margin: 20px 0 0; padding: 15px 10px 15px; }
  .sec01 .cmmt:before { width: 28px; height: 19px; top: -15px; }
  .sec01 .cmmt p { font-size: 15px; line-height: 1.73333; } }

/* ========== end △ */
.sec02 { padding: 50px 0 54px; position: relative; }

.sec02:before { position: absolute; content: ""; right: 0; left: 0; bottom: 0; top: -293px; background: #EBF5FE; }

.sec02:after { position: absolute; content: ""; right: 0; bottom: 0; top: -203px; background: url(../images/bg01.jpg) no-repeat center top; background-size: cover; width: calc(50% + 780px); }

/* ▽ PC-TAB layout ========== */
@media only screen and (min-width: 768px) and (max-width: 1780px) { .sec02:after { width: calc(100% - 20px); } }

/* ========== end △ */
.sec02 .container { position: relative; z-index: 22; }

.sec02 .c-ttl01 { margin-bottom: 55px; }

.sec02 .case__heading { position: relative; z-index: 22; margin: 0 0 31px; }

.sec02 .case__heading .case__count { color: #1F75CC; font-size: 20px; line-height: 1.2; letter-spacing: 0em; font-weight: 500; }

.sec02 .case__heading .case__count span { font-size: 24px; line-height: 1; }

.sec02 .case__heading .case__ttl { font-size: 32px; line-height: 1.4375; letter-spacing: 0em; font-weight: 500; margin: 6px 0 0; }

.sec02 .case__heading .case__ttl .icon { display: inline-block; vertical-align: top; margin: -23px 0 0 31px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec02 .case__heading { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 0 8px; }
  .sec02 .case__heading .avt { width: 190px; }
  .sec02 .case__heading .group-ttl { width: calc(100% - 190px); padding: 109px 0 0 32px; } }

/* ========== end △ */
.sec02 .case__info { position: relative; z-index: 25; }

.sec02 .case__info .box-ttl { font-size: 24px; line-height: 1.45833; letter-spacing: 0em; font-weight: 500; border-bottom: 1px solid #BFBFBF; padding: 0 3px 8px; }

.sec02 .case__info .box-desc { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 500; margin: 20px 3px 0; }

.sec02 .case__info .box + .box { margin-top: 25px; }

.sec02 .case { position: relative; padding: 0 62px 53px; margin-bottom: 53px; }

.sec02 .case:before { position: absolute; content: ""; left: 0; top: 80px; bottom: 0; right: 0; border-radius: 30px; background: #fff; z-index: 2; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec02 .case.case02 .case__heading .case__ttl .icon { margin: -31px 0 0 31px; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec02 .case.case03 .case__heading .case__ttl .icon { margin: -15px 0 0 31px; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec02 { padding: 30px 0 30px; }
  .sec02:before { top: -225px; }
  .sec02:after { top: -180px; width: calc(100% - 15px); }
  .sec02 .c-ttl01 { margin-bottom: 15px; }
  .sec02 .case__heading { margin: 0 0 15px; }
  .sec02 .case__heading .case__count { font-size: 16px; line-height: 1.25; }
  .sec02 .case__heading .case__count span { font-size: 19px; line-height: 1.05263; }
  .sec02 .case__heading .avt { width: 95px; margin: 0 auto; }
  .sec02 .case__heading .case__ttl { font-size: 20px; line-height: 1.6; margin: 6px 0 0; }
  .sec02 .case__heading .case__ttl .icon { margin: 1px 0 0 10px; display: inline-block; vertical-align: top; }
  .sec02 .case__heading .case__ttl .icon img { max-height: 30px; }
  .sec02 .case__info { position: relative; z-index: 25; }
  .sec02 .case__info .box-ttl { font-size: 18px; line-height: 1.44444; padding: 0 3px 4px; }
  .sec02 .case__info .box-desc { font-size: 15px; line-height: 1.6; margin: 10px 3px 0; }
  .sec02 .case__info .box + .box { margin-top: 20px; }
  .sec02 .case { padding: 0 12px 30px; margin-bottom: 25px; }
  .sec02 .case:before { left: 0; top: 45px; border-radius: 15px; } }

/* ========== end △ */
.sec-contact01 { background: #1F75CC; position: relative; padding: 73px 0 70px; }

.sec-contact01:before { position: absolute; content: ""; width: 1920px; height: 800px; background: url(../images/bg02.png) no-repeat center center; background-size: 100% auto; z-index: 4; left: 50%; margin: 0 auto; top: 0; transform: translateX(-50%); }

.sec-contact01 .container { position: relative; z-index: 22; }

.sec-contact01 .sec-desc01 { text-align: center; color: #Fff; font-size: 20px; line-height: 1.8; letter-spacing: 0em; font-weight: 400; margin-bottom: 42px; }

.sec-contact01 .sec-desc01 small { font-size: 16px; line-height: 2.25; }

.sec-contact01 .block { border-radius: 30px; background: #fff; position: relative; padding: 42px 38px 39px; }

.sec-contact01 .block__lst01 { position: absolute; right: 46px; top: -42px; z-index: 22; width: 440px; }

.sec-contact01 .block__lst01 .box p { font-size: 16px; line-height: 1.625; }

.sec-contact01 .block__lst01 .box p small { font-size: 12px; line-height: 2.16667; }

.sec-contact01 .block__rows .col a { border-radius: 10px; text-decoration: none; background: #1C2C83; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; -moz-justify-content: center; justify-content: center; align-items: center; height: 125px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec-contact01 .block__rows .col a:hover { opacity: 0.6; } }

/* ========== end △ */
.sec-contact01 .block__rows .col a .txt { width: 100%; color: #fff; text-align: center; }

.sec-contact01 .block__rows .col a .txt01 { font-size: 16px; line-height: 1.5; letter-spacing: 0em; font-weight: 500; margin: 0 0 16px; }

.sec-contact01 .block__rows .col a .txt01 span { display: inline-block; background: #04156E; border-radius: 20px; padding: 5px 30px 5px; }

.sec-contact01 .block__rows .col a .txt02 { color: #fff; font-size: 24px; line-height: 1; letter-spacing: 0em; font-weight: 500; }

.sec-contact01 .block__rows .col a .time { font-size: 16px; line-height: 1.125; letter-spacing: 0em; font-weight: 500; margin: 0 0 10px; }

.sec-contact01 .block__rows .col a .tel { font-size: 50px; line-height: 1; letter-spacing: 0em; font-weight: 500; margin: 0 0 20px; }

.sec-contact01 .block__rows .col a .tel span { display: inline-block; position: relative; padding: 0 0 0 43px; }

.sec-contact01 .block__rows .col a .tel span:before { position: absolute; content: ""; left: 0; top: 6px; width: 34px; height: 39px; background: url(../common_img/ico_tel02.svg) no-repeat left top; background-size: 100% auto; z-index: 4; }

.sec-contact01 .block__rows .col a .note01 { font-size: 14px; line-height: 1.07143; letter-spacing: 0em; font-weight: 500; }

.sec-contact01 .block__rows .col.col03 .txt { color: #000000; }

.sec-contact01 .block__rows .col.col03 a { background: none; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec-contact01 .block__rows { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; }
  .sec-contact01 .block__rows .col01 { width: 23%; }
  .sec-contact01 .block__rows .col02 { width: 34.5%; margin-top: 84px; }
  .sec-contact01 .block__rows .col03 { width: 34.5%; margin-top: 84px; margin-right: 10px; } }

/* ========== end △ */
.sec-contact01 .sec-desc02 { text-align: center; color: #Fff; font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; margin: 22px 0 0; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec-contact01 { padding: 40px 0 35px; }
  .sec-contact01:before { left: 50%; }
  .sec-contact01 .sec-desc01 { font-size: 16px; line-height: 1.5; margin-bottom: 20px; text-align: left; }
  .sec-contact01 .sec-desc01 small { font-size: 14px; line-height: 1.71429; }
  .sec-contact01 .block { border-radius: 15px; padding: 15px 12px 25px; }
  .sec-contact01 .block__lst01 { position: relative; right: 0; top: 0; width: 100%; left: 0; margin: 0 auto 15px; }
  .sec-contact01 .block__lst01 .box p { font-size: 12px; line-height: 1.5; }
  .sec-contact01 .block__lst01 .box p small { font-size: 8px; line-height: 2.25; }
  .sec-contact01 .block__rows .col a { height: 100px; }
  .sec-contact01 .block__rows .col a .txt01 { font-size: 14px; line-height: 1.57143; margin: 0 0 8px; }
  .sec-contact01 .block__rows .col a .txt01 span { border-radius: 20px; padding: 4px 20px 4px; }
  .sec-contact01 .block__rows .col a .txt02 { font-size: 22px; line-height: 1; }
  .sec-contact01 .block__rows .col a .time { font-size: 14px; line-height: 1.85714; margin: 0 0 5px; }
  .sec-contact01 .block__rows .col a .tel { font-size: 35px; line-height: 1; margin: 0 0 10px; }
  .sec-contact01 .block__rows .col a .tel span { padding: 0 0 0 30px; }
  .sec-contact01 .block__rows .col a .tel span:before { top: 6px; width: 25px; height: 28px; }
  .sec-contact01 .block__rows .col a .note01 { font-size: 12px; line-height: 1.25; }
  .sec-contact01 .block__rows .col.col03 { margin: 15px 0 0; }
  .sec-contact01 .block__rows .col.col03 .txt { color: #000000; }
  .sec-contact01 .block__rows .col.col03 a { background: none; }
  .sec-contact01 .block__rows .col01 { width: 150px; margin: 0 auto 20px; }
  .sec-contact01 .sec-desc02 { font-size: 13px; line-height: 1.84615; margin: 15px 0 0; } }

/* ========== end △ */
.sec04 { padding: 95px 0 112px; }

.sec04 .c-ttl01 { margin-bottom: 55px; }

.sec04 .reason { margin-bottom: 80px; }

.sec04 .reason__img img { border-radius: 15px; }

.sec04 .reason__count { margin: 0 0 10px; }

.sec04 .reason__count span { display: inline-block; background: #1C2C83; padding: 4px 7px 5px; border-radius: 5px; font-size: 20px; line-height: 1.2; letter-spacing: 0em; font-weight: bold; color: #fff; }

.sec04 .reason__count span em { font-style: normal; font-size: 24px; line-height: 1; letter-spacing: 0em; }

.sec04 .reason__ttl { font-size: 32px; line-height: 1.4375; letter-spacing: 0em; font-weight: 500; margin: 0 0 29px; }

.sec04 .reason__desc p { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; margin: 0 0 20px; }

.sec04 .reason__desc p:last-child { margin-bottom: 0; }

.sec04 .reason__desc p .note { display: inline-block; font-size: 14px; line-height: 2.14286; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec04 .reason { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec04 .reason__info { order: 2; width: 51.7%; padding: 14px 0 0 50px; }
  .sec04 .reason__img { width: 48.3%; order: 1; }
  .sec04 .reason.reason02 .reason__info, .sec04 .reason.reason04 .reason__info { order: 1; padding: 14px 50px 0 0; }
  .sec04 .reason.reason02 .reason__img, .sec04 .reason.reason04 .reason__img { order: 2; } }

/* ========== end △ */
.sec04 .block01 { position: relative; border-radius: 30px; box-shadow: 0 4px 20px rgba(28, 44, 131, 0.12); background: #ffe6c1; text-align: center; overflow: hidden; border: 5px solid #fff; margin: 108px 0 0; padding: 42px 30px 40px; }

.sec04 .block01:before { position: absolute; content: ""; left: 0; bottom: 0; background: url(../images/bg04_l.jpg) no-repeat left bottom; background-size: 100% auto; width: 225px; height: 461px; }

.sec04 .block01:after { position: absolute; content: ""; right: 0; top: 0; background: url(../images/bg04_r.jpg) no-repeat right top; background-size: 100% auto; width: 315px; height: 461px; }

.sec04 .block01 .block01__ttl { text-align: center; font-size: 46px; line-height: 1.19565; letter-spacing: 0em; font-weight: 500; }

.sec04 .block01 .block01__inner { position: relative; z-index: 22; }

.sec04 .block01 .block__desc { margin: 26px 0 0; }

.sec04 .block01 .block__desc p { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; margin: 0 0 16px; }

.sec04 .block01 .block__desc p .note { font-size: 14px; line-height: 2.14286; }

.sec04 .block01 .block__desc p:last-child { margin-bottom: 0; }

.sec04 .block01 .block__desc p .note { display: inline-block; font-size: 14px; line-height: 2.14286; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec04 { padding: 45px 0 45px; }
  .sec04 .c-ttl01 { margin-bottom: 25px; }
  .sec04 .reason { margin-bottom: 40px; }
  .sec04 .reason__img { margin: 20px 0 0; text-align: center; }
  .sec04 .reason__img img { width: 100%; border-radius: 10px; }
  .sec04 .reason__count { margin: 0 0 5px; }
  .sec04 .reason__count span { padding: 2px 10px 3px; font-size: 15px; line-height: 1.2; }
  .sec04 .reason__count span em { font-size: 18px; line-height: 1; }
  .sec04 .reason__ttl { font-size: 20px; line-height: 1.5; margin: 0 0 10px; }
  .sec04 .reason__desc p { font-size: 15px; line-height: 1.46667; margin: 0 0 20px; }
  .sec04 .reason__desc p:last-child { margin-bottom: 0; }
  .sec04 .reason__desc p .note { font-size: 13px; line-height: 1.92308; }
  .sec04 .block01 { border-radius: 15px; border: 4px solid #fff; margin: 35px 0 0; padding: 20px 10px 20px; }
  .sec04 .block01:before { width: 45%; height: 80%; }
  .sec04 .block01:after { width: 45%; height: 80%; }
  .sec04 .block01 .block01__ttl { font-size: 26px; line-height: 1.34615; }
  .sec04 .block01 .block__desc { margin: 15px 0 0; text-align: left; }
  .sec04 .block01 .block__desc p { font-size: 15px; line-height: 1.6; margin: 0 0 16px; }
  .sec04 .block01 .block__desc p .note { font-size: 13px; line-height: 1.84615; }
  .sec04 .block01 .block__desc p:last-child { margin-bottom: 0; } }

/* ========== end △ */
.sec05 { padding: 71px 0 71px; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec05 { padding: 40px 0 40px; } }

/* ========== end △ */
.sec06 { padding: 95px 0 102px; }

.sec06 .container { max-width: 1060px; }

.sec06 .c-ttl01 { margin-bottom: 48px; }

.sec06 .sec-desc01 { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 500; text-align: center; }

.sec06 .flow { position: relative; }

.sec06 .flow:before { position: absolute; content: ""; left: 30px; right: 30px; height: 2px; background: #1C2C83; top: 98px; }

.sec06 .flow li { position: relative; z-index: 33; text-align: center; }

.sec06 .flow li .cap { font-size: 24px; line-height: 1.25; letter-spacing: 0em; font-weight: 400; text-align: center; margin: 15px 0 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec06 .flow { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; margin: 30px auto 0; } }

/* ========== end △ */
.sec06 .sec-desc02 { margin: 34px 0 0; font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 500; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec06 { padding: 40px 0 40px; }
  .sec06 .c-ttl01 { margin-bottom: 15px; }
  .sec06 .sec-desc01 { font-size: 15px; line-height: 1.6; text-align: left; margin: 0 0 20px; }
  .sec06 .flow:before { display: none; }
  .sec06 .flow li { position: relative; padding: 0 0 30px; }
  .sec06 .flow li:before { position: absolute; content: ""; left: 0; right: 0; height: 25px; width: 2px; bottom: 100%; margin: 0 auto; background: #04156E; }
  .sec06 .flow li:first-child:before { display: none; }
  .sec06 .flow li .img { max-width: 180px; margin: 0 auto; }
  .sec06 .flow li .cap { font-size: 18px; line-height: 1.44444; margin: 8px 0 0; }
  .sec06 .sec-desc02 { margin: 0; font-size: 15px; line-height: 1.6; } }

/* ========== end △ */
.sec07 { background: url(../images/bg03.jpg) no-repeat center top; background-size: cover; padding: 94px 0 90px; }

.sec07 .lst-qa { margin: 54px 0 0; }

.sec07 .qa { position: relative; background: #fff; border-radius: 20px; position: relative; padding: 0 0 19px; margin: 0 0 20px; }

.sec07 .qa .ques { position: relative; padding: 34px 27px 19px 74px; }

.sec07 .qa .ques:after { position: absolute; content: ""; width: 12px; height: 30px; background: url(../images/ico_q.svg) no-repeat center center; background-size: 100% auto; z-index: 4; left: 27px; top: 36px; }

.sec07 .qa .ques .ttl { color: #1F75CC; font-size: 24px; line-height: 1.25; letter-spacing: 0em; font-weight: 500; }

.sec07 .qa .ans { position: relative; padding: 0 27px 8px 74px; }

.sec07 .qa .ans:after { position: absolute; content: ""; width: 12px; height: 30px; background: url(../images/ico_a.svg) no-repeat center center; background-size: 100% auto; z-index: 4; left: 27px; top: 0; }

.sec07 .qa .ans p { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec07 { padding: 45px 0 35px; }
  .sec07 .lst-qa { margin: 25px 0 0; }
  .sec07 .qa { border-radius: 10px; padding: 0; margin: 0 0 15px; }
  .sec07 .qa .ques { padding: 17px 30px 15px 40px; }
  .sec07 .qa .ques:after { left: 15px; top: 20px; }
  .sec07 .qa .ques:before { position: absolute; content: ""; right: 12px; top: 26px; background: url("data:image/svg+xml,%3Csvg width='13' height='11' viewBox='0 0 13 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.06213 10.4893L-4.3869e-05 4.86374e-05H12.1243L6.06213 10.4893Z' fill='%231C2C83'/%3E%3C/svg%3E%0A") no-repeat center; background-size: 100% auto; width: 13px; height: 11px; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }
  .sec07 .qa .ques .ttl { font-size: 18px; line-height: 1.44444; }
  .sec07 .qa .ques.is-act:before { transform: rotate(180deg); }
  .sec07 .qa .ans { display: none; padding: 0 30px 20px 40px; }
  .sec07 .qa .ans:after { left: 15px; top: 0; }
  .sec07 .qa .ans p { font-size: 15px; line-height: 1.6; } }

/* ========== end △ */
.sec08 { background-size: cover; padding: 94px 0 102px; }

.sec08 .c-ttl01 { margin-bottom: 48px; }

.sec08 .sec-desc01 { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 500; text-align: center; }

.sec08 .rows { margin: 33px 0 0; }

.sec08 .rows .col { border-radius: 30px; border: 3px solid rgba(31, 117, 204, 0.2); background: rgba(31, 117, 204, 0.07); padding: 60px 47px 41px; }

.sec08 .rows .col .col-ttl { text-align: center; margin-bottom: 9px; }

.sec08 .rows .col .col-ttl span { display: inline-block; position: relative; color: #fff; background: #1F75CC; border-radius: 10px; text-align: center; padding: 8px 10px 9px; font-size: 32px; line-height: 1.4375; letter-spacing: 0em; font-weight: 500; width: 100%; max-width: 232px; margin: 0 auto 0; }

.sec08 .rows .col .col-info dl { border-bottom: 1px solid #E5E5E5; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 23px 5px 23px; }

.sec08 .rows .col .col-info dl dt, .sec08 .rows .col .col-info dl dd { font-size: 18px; line-height: 1.66667; letter-spacing: 0em; font-weight: 400; }

.sec08 .rows .col .col-info dl dt { width: 45%; }

.sec08 .rows .col .col-info dl dd { width: 55%; padding: 0 0 0 5px; }

.sec08 .rows .col .col-info dl:last-child { border-bottom: 0; }

.sec08 .rows .col.col02 { border: 3px solid rgba(255, 166, 3, 0.2); background: rgba(255, 166, 3, 0.07); }

.sec08 .rows .col.col02 .col-ttl span { background: #FFBA03; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec08 .rows { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec08 .rows .col { width: 48.5%; margin: 0 3% 0 0; }
  .sec08 .rows .col:nth-child(2n) { margin-right: 0; } }

/* ========== end △ */
.sec08 .sec-desc02 { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 500; text-align: left; margin: 25px 0 0; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec08 { padding: 40px 0 40px; }
  .sec08 .c-ttl01 { margin-bottom: 15px; }
  .sec08 .sec-desc01 { font-size: 15px; line-height: 1.6; text-align: left; }
  .sec08 .rows { margin: 25px 0 0; }
  .sec08 .rows .col { border-radius: 15px; border: 2px solid rgba(31, 117, 204, 0.2); padding: 30px 15px 25px; margin: 0 0 20px; }
  .sec08 .rows .col .col-ttl { margin-bottom: 9px; }
  .sec08 .rows .col .col-ttl span { padding: 8px 10px 9px; font-size: 20px; line-height: 1.4; max-width: 180px; }
  .sec08 .rows .col .col-info dl { padding: 10px 5px 10px; }
  .sec08 .rows .col .col-info dl dt, .sec08 .rows .col .col-info dl dd { font-size: 16px; line-height: 1.5; }
  .sec08 .rows .col .col-info dl dt { width: 100%; }
  .sec08 .rows .col .col-info dl dd { width: 100%; padding: 3px 0 0; }
  .sec08 .rows .col .col-info dl:last-child { border-bottom: 0; }
  .sec08 .rows .col.col02 { border: 2px solid rgba(255, 166, 3, 0.2); }
  .sec08 .sec-desc02 { font-size: 15px; line-height: 1.6; margin: 20px 0 0; } }

/* ========== end △ */
.sec10 { padding: 94px 0 105px; }

.sec10 .c-ttl01 { margin-bottom: 55px; }

.sec10 .sec-desc01 { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 500; text-align: center; }

.sec10 .block01 { margin: 33px 0 0; }

.sec10 .block01__img img { border-radius: 20px; }

.sec10 .block01__info dl { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 0 10px; }

.sec10 .block01__info dl dt, .sec10 .block01__info dl dd { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; }

.sec10 .block01__info dl dt { width: 100px; }

.sec10 .block01__info dl dd { width: calc(100% - 100px); padding: 0 0 0 10px; }

.sec10 .block01__info dl:last-child { border-bottom: 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec10 .block01 { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec10 .block01__img { width: 44%; }
  .sec10 .block01__info { width: 56%; padding: 24px 0 0 68px; } }

/* ========== end △ */
.sec10 .block02 { margin: -80px 0 0; }

.sec10 .block02__img img { border-radius: 20px; }

.sec10 .block02__info p { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; margin-bottom: 30px; }

.sec10 .block02__info p:last-child { margin-bottom: 0; }

.sec10 .block02__info p.sign { text-align: right; margin: 47px 10px 0 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec10 .block02 { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec10 .block02__img { width: 38%; order: 2; }
  .sec10 .block02__info { order: 1; width: 62%; padding: 166px 58px 0 72px; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec10 { padding: 40px 0 40px; }
  .sec10 .c-ttl01 { margin-bottom: 15px; }
  .sec10 .sec-desc01 { font-size: 15px; line-height: 1.6; text-align: left; }
  .sec10 .block01 { margin: 25px 0 0; }
  .sec10 .block01__img { text-align: center; margin: 0 0 15px; }
  .sec10 .block01__img img { border-radius: 10px; }
  .sec10 .block01__info dl { margin: 0 0 10px; }
  .sec10 .block01__info dl dt, .sec10 .block01__info dl dd { font-size: 15px; line-height: 1.6; }
  .sec10 .block01__info dl dt { width: 100px; }
  .sec10 .block01__info dl dd { width: calc(100% - 100px); padding: 0 0 0 10px; }
  .sec10 .block01__info dl:last-child { border-bottom: 0; }
  .sec10 .block02 { margin: 20px 0 0; }
  .sec10 .block02__img { text-align: center; margin: 0 0 15px; }
  .sec10 .block02__img img { border-radius: 10px; }
  .sec10 .block02__info p { font-size: 15px; line-height: 1.6; margin-bottom: 20px; }
  .sec10 .block02__info p:last-child { margin-bottom: 0; }
  .sec10 .block02__info p.sign { margin: 25px 0 0 0; padding: 0 0 0 35%; } }

/* ========== end △ */
.sec11 { background: #EBF5FE; padding: 94px 0 110px; }

.sec11 .c-ttl01 { margin-bottom: 55px; }

.sec11 .form-ttl01 { text-align: center; color: #fff; background: black; border-radius: 5px; font-size: 18px; line-height: 1.66667; letter-spacing: 0em; font-weight: 500; padding: 10px 20px 10px; margin-bottom: 20px; }

.sec11 .block01 { border: 5px solid #fff; background: #1F75CC; border-radius: 20px; padding: 30px 77px 30px; margin-bottom: 20px; }

.sec11 .block01__ttl { font-size: 32px; line-height: 1.40625; letter-spacing: 0em; font-weight: 500; color: #fff; }

.sec11 .block01__info { text-align: center; }

.sec11 .block01__info .time { color: #fff; font-size: 16px; line-height: 1.25; letter-spacing: 0em; font-weight: 500; margin: 0 0 10px; }

.sec11 .block01__info .note01 { color: #fff; font-size: 14px; line-height: 1.42857; letter-spacing: 0em; font-weight: 500; }

.sec11 .block01__info .tel { color: #fff; font-size: 50px; line-height: 1; letter-spacing: 0em; font-weight: 500; margin: 0 0 15px; }

.sec11 .block01__info .tel span { display: inline-block; position: relative; padding: 0 0 0 43px; }

.sec11 .block01__info .tel span:before { position: absolute; content: ""; left: 0; top: 6px; width: 36px; height: 39px; background: url(../common_img/ico_tel01.svg) no-repeat left top; background-size: 100% auto; z-index: 4; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec11 .block01 a { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; width: 100%; }
  .sec11 .block01__ttl { font-size: 32px; line-height: 1.40625; letter-spacing: 0em; font-weight: 500; color: #fff; width: 50%; }
  .sec11 .block01__info { border-left: 1px solid rgba(245, 245, 245, 0.3); padding: 0 0 0 69px; width: 50%; } }

/* ========== end △ */
.sec11 .pp-block { margin: 100px 0 0; background: #fff; border-radius: 30px; padding: 68px 64px 51px; }

.sec11 .pp-ttl { text-align: center; font-size: 32px; line-height: 1.4375; letter-spacing: 0em; font-weight: 500; margin-bottom: 30px; }

.sec11 .pp-subttl { font-size: 20px; line-height: 1.5; letter-spacing: 0em; font-weight: 500; margin-bottom: 0; }

.sec11 .pp-box { margin: 0 0 19px; }

.sec11 .pp-box p { font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; }

.sec11 .pp-box p + p { margin-top: 20px; }

.sec11 .pp-lst01 { margin: 20px 0 20px 10px; }

.sec11 .pp-lst01 li { position: relative; padding: 0 0 0 20px; font-size: 16px; line-height: 1.875; letter-spacing: 0em; font-weight: 400; }

.sec11 .pp-lst01 li:before { position: absolute; content: ""; left: 2px; top: 12px; width: 8px; height: 8px; border-radius: 50%; background: #000; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec11 { padding: 45px 0 50px; }
  .sec11 .c-ttl01 { margin-bottom: 15px; }
  .sec11 .block01 { border: 3px solid #fff; border-radius: 10px; padding: 18px 12px 20px; margin-bottom: 25px; text-align: center; }
  .sec11 .block01__ttl { font-size: 22px; line-height: 1.59091; margin: 0 0 15px; }
  .sec11 .block01__info .time { font-size: 15px; line-height: 1.33333; margin: 0 0 5px; }
  .sec11 .block01__info .note01 { font-size: 13px; line-height: 1.53846; }
  .sec11 .block01__info .tel { font-size: 35px; line-height: 1; margin: 0 0 8px; }
  .sec11 .block01__info .tel span { padding: 0 0 0 30px; }
  .sec11 .block01__info .tel span:before { top: 8px; width: 23px; height: 26px; }
  /* ▽ PC-TAB layout ========== */ }

@media only screen and (max-width: 767px) and (min-width: 768px) { .sec11 .block01 a { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; width: 100%; }
  .sec11 .block01__ttl { font-size: 32px; line-height: 1.40625; letter-spacing: 0em; font-weight: 500; color: #fff; width: 50%; }
  .sec11 .block01__info { border-left: 1px solid rgba(245, 245, 245, 0.3); padding: 0 0 0 69px; width: 50%; } }

@media only screen and (max-width: 767px) { /* ========== end △ */
  .sec11 .pp-block { margin: 30px 0 0; border-radius: 10px; padding: 30px 12px 15px; }
  .sec11 .pp-ttl { font-size: 22px; line-height: 1.36364; margin-bottom: 15px; }
  .sec11 .pp-subttl { font-size: 16px; line-height: 1.5; margin-bottom: 0; }
  .sec11 .pp-box { margin: 0 0 19px; }
  .sec11 .pp-box p { font-size: 15px; line-height: 1.6; }
  .sec11 .pp-box p + p { margin-top: 20px; }
  .sec11 .pp-lst01 { margin: 15px 0 15px 10px; }
  .sec11 .pp-lst01 li { font-size: 15px; line-height: 1.6; padding: 0 0 0 15px; }
  .sec11 .pp-lst01 li:before { left: 2px; top: 11px; width: 6px; height: 6px; } }

/* ========== end △ */

/*# sourceMappingURL=maps/top.css.map */
