@charset "UTF-8";

/* sass */
img { max-width: 100%; }

.sp-none { display: none; }

.bg-01 { background: #FFF8DE; border-top: 2px solid #F6AF00; padding-bottom: 120px; }

.bg-02 { background: #DAF7FA; border-top: 2px solid #4DB2D0; padding-bottom: 42px; border-bottom: 1px solid #C9C9C9; }

.bg-03 { background: #EEEEEE; }

.bg-04 { background: #31B7F4; }

.bg-05 { background: #F5F5F5; }

.center { margin: 0 auto; }

.l-all { padding-top: 65px; }

.l-head { position: fixed; width: 100%; top: 0; left: 0; background: #ffffff; box-shadow: 0px 8px 16px -1px rgba(10, 10, 10, 0.1); z-index: 2; }

.l-head .logo { width: 60px; }

.l-head .menu-icon { display: block; width: 20px; height: 25px; cursor: pointer; position: absolute; right: 18px; top: 18px; }

.l-head .menu-icon span { display: block; height: 3px; background-color: #2672B8; position: relative; transition: all .3s; }

.l-head .menu-icon span:before, .l-head .menu-icon span:after { transition: all .3s; content: ""; display: block; width: 20px; height: 3px; background: #2672B8; position: absolute; top: -7px; }

.l-head .menu-icon span:after { top: auto; bottom: -7px; }

.l-head .wrap-menu { visibility: hidden; position: absolute; opacity: 0; transition: opacity .4s; }

.l-head .g-nav { width: 310px; margin: 17px auto 0; }

.l-head .g-nav li { line-height: 1.4; font-family: "M PLUS Rounded 1c", sans-serif; font-size: 1.6rem; -webkit-transform: rotate(0.1deg); transform: rotate(0.1deg); }

.l-head .g-nav a { display: block; color: #2672B8; text-decoration: none; position: relative; padding: 16px 0; }

.l-head .g-nav a:after { content: ""; width: 6px; height: 6px; border: 0px; border-top: solid 2px #2672B8; border-right: solid 2px #2672B8; -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; top: 50%; right: 15px; margin-top: -3px; }

.l-head .app-menu { position: fixed; bottom: 0; }

.open-menu { height: 100%; }

.open-menu .l-head .l-inner { display: block; }

.open-menu .l-head .logo { opacity: 0; }

.open-menu .l-head .wrap-menu { visibility: visible; position: relative; right: 0; opacity: 1; border-top: 1px solid #C9C9C9; height: calc(100vh - 60px); padding-bottom: 160px; overflow-y: auto; }

.open-menu .l-head .menu-icon span { background: transparent; }

.open-menu .l-head .menu-icon span:before { top: 0; -webkit-transform: rotate(-45deg) translateY(0px); transform: rotate(-45deg) translateY(0px); }

.open-menu .l-head .menu-icon span:after { bottom: 0; -webkit-transform: rotate(45deg) translateY(0px); transform: rotate(45deg) translateY(0px); }

.open-menu .l-head .app-menu { width: 100%; }

.open-menu .l-head .app-menu .l-inner { display: inline-block; }

.app-menu { text-align: center; background: #F5F5F5; padding: 17px 0; }

.app-menu .l-inner { display: inline-block; margin: 0 auto; }

.app-menu .wrap-txt { display: flex; align-items: center; justify-content: center; font-size: 1.6rem; line-height: 1.5; font-weight: bold; text-align: left; }

.app-menu .wrap-txt img { width: 58px; margin-right: 8px; }

.app-menu .wrap-txt span { color: #2672B8; }

.app-menu .wrap-btn { display: flex; }

.app-menu .wrap-btn img { height: 68px; }

.l-body .l-inner { margin: 0 20px; }

.hdg-lv01 { font-size: 2.6rem; line-height: 1.7; color: #2672B8; text-align: center; }

.hdg-lv02 { font-size: 3rem; color: #2672B8; text-align: center; }

.hdg-bdr01 { font-size: 2rem; font-weight: bold; margin-top: 23px; text-align: center; }

.hdg-bdr01:after { content: ""; display: block; width: 100%; height: 1px; border-bottom: 1px solid #C9C9C9; margin: 20px 0 28px; }

.hdg-lv03 { position: relative; display: inline-block; font-size: 1.8rem; line-height: 1.7; background: #F6AF00; border-radius: 30px; padding: 6px 26px; z-index: 1; }

.hdg-lv03 .sub { position: absolute; top: -40px; left: 0; right: 0; text-align: center; letter-spacing: 2.5px; }

.hdg-lv03 .sub span { font-size: 1.8rem; }

.hdg-lv03 .sub .large { font-size: 3.6rem; }

.hdg-lv03:before { content: ""; position: absolute; top: -50px; left: 0; right: 0; margin: 0 auto; display: block; width: 100px; height: 100px; background: url(../image/hdg_img01.png) no-repeat; background-size: contain; z-index: -1; }

.hdg-lv03.col-01 { background: #4DB2D0; }

.hdg-lv03.col-01:before { background: url(../image/hdg_img02.png) no-repeat; background-size: contain; }

.hdg-lv03 .bs { font-family: Arial; font-size: 2.3rem; }

.wrap-hdg { text-align: center; margin-top: -28px; }

.wrap-mv { background: #F5F5F5; }

.wrap-mv img { margin: 0 auto; }

.wrap-period { padding: 35px 0 136px; }

.dl-period { text-align: center; }

.dl-period dt { font-size: 1.6rem; line-height: 1.4; }

.dl-period dd { margin-top: 18px; }

.dl-period .date { font-size: 2rem; line-height: 1.4; font-weight: bold; }

.dl-period .date .large { font-size: 2.6rem; }

.list-info { font-size: 1.6rem; line-height: 1.4; color: #F42F66; font-weight: bold; text-align: center; margin-top: 16px; }

.list-note { font-size: 1.2rem; line-height: 1.6; }

.wrap-list { margin-top: 30px; }

.wrap-list.wide { margin: 20px -20px 0; }

.wrap-list.wide .list-row li p { margin: 16px 20px 0; }

.list-row li + li { margin-top: 40px; }

.list-row li P { font-size: 1.6rem; line-height: 1.4; margin-top: 16px; }

.list-row li .dtl { font-weight: bold; }

.list-row.row2-4 { display: flex; flex-wrap: wrap; justify-content: space-between; }

.list-row.row2-4 > li { width: calc(50% - 10px); }

.list-row.row2-4 > li:nth-child(2) { margin-top: 0; }

.list-row.row2-4 > li .dtl { font-size: 1.4rem; }

.wrap-tbl { margin: 40px -20px 0; }

.tbl-st { width: 100%; font-size: 1.6rem; line-height: 1.4; }

.tbl-st thead { background: #F6AF00; }

.tbl-st thead th { font-weight: bold; padding: 14px 20px; border-left: 2px solid #FFF8DE; }

.tbl-st thead th:first-child { width: 140px; border: none; }

.tbl-st tbody { background: #ffffff; }

.tbl-st tbody tr:nth-child(even) { background: #F5F5F5; }

.tbl-st tbody th, .tbl-st tbody td { font-weight: normal; padding: 20px 20px 15px; border-top: 2px solid #FFF8DE; vertical-align: top; }

.tbl-st tbody td { padding: 20px 15px 15px; border-left: 2px solid #FFF8DE; }

.wrap-cnt { padding: 30px 0; }

.dl-st > div { padding: 6px 0 40px; }

.dl-st > div + div { padding: 36px 0 40px; border-top: 1px dotted #C9C9C9; }

.dl-st > div dt { font-size: 2rem; font-weight: bold; margin-bottom: 24px; }

.dl-st > div dd { font-size: 1.6rem; line-height: 1.5; margin-top: 14px; }

.wrap-qa { padding: 20px 0 34px; }

.box-rds { background: #ffffff; border-radius: 16px; padding: 35px 20px 40px; }

.list-qa > div { font-size: 1.6rem; line-height: 1.6; margin-top: 48px; }

.list-qa > div dt { color: #F42F66; font-weight: bold; }

.list-qa > div dt:after { content: ""; display: block; width: 100%; height: 1px; border-bottom: 1px solid #E0E0E0; margin: 12px 0 14px; }

.list-qa > div dd { position: relative; padding-left: 50px; }

.list-qa > div dd .sub { position: absolute; top: 0; left: 28px; color: #2672B8; font-weight: bold; }

.wrap-myroute:before { content: ""; display: block; width: 100%; height: 6px; background: url(../image/line_sp.jpg) no-repeat; background-size: cover; }

.wrap-myroute .hdg-lv02 { margin-top: 42px; }

.cnt-myroute { position: relative; margin-top: 52px; }

.wrap-arrow { position: relative; border-top: 1px solid #707070; border-bottom: 1px solid #707070; }

.wrap-arrow > .l-inner { display: flex; align-items: center; justify-content: center; padding: 0 0 10px; margin-left: -20px; }

.wrap-arrow > .l-inner img { height: 70px; }

.wrap-arrow > .l-inner p { font-size: 1.7rem; line-height: 1.5; font-weight: bold; font-family: "M PLUS Rounded 1c", sans-serif; -webkit-transform: rotate(0.1deg); transform: rotate(0.1deg); }

.wrap-arrow > .l-inner p span { color: #3E71B5; }

.wrap-arrow:before { content: ""; display: block; height: 28px; background: url(../image/arrow01.png) no-repeat; background-size: contain; background-position: center; margin-top: -1px; }

.wrap-arrow:after { position: absolute; bottom: -20px; content: ""; display: block; width: 100%; height: 20px; background: url(../image/arrow02.png) no-repeat; background-size: contain; background-position: center; }

.wrap-point { padding: 40px 0 36px; }

.list-point > li { background: #ffffff; border-radius: 30px; padding: 30px; box-shadow: 0px 4px 16px -6px rgba(0, 0, 0, 0.16); }

.list-point > li + li { margin-top: 24px; }

.list-point > li .ttl { display: flex; font-size: 1.6rem; line-height: 1.5; }

.list-point > li .ttl span { position: relative; font-size: 1.2rem; color: #ffffff; background: #000000; padding: 2px 4px 4px 9px; margin-right: 30px; min-width: 80px; height: 21px; }

.list-point > li .ttl span:after { position: absolute; top: 0; right: -10px; content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 10px 0 11px 10px; border-color: transparent transparent transparent #000000; }

.list-point > li .lead { font-size: 2rem; line-height: 1.4; color: #2672B8; font-weight: bold; margin-top: 22px; }

.list-point > li .dtl { font-size: 1.4rem; line-height: 1.5; margin-top: 10px; }

.list-point > li .wrap-img { position: relative; margin-top: 24px; }

.list-point > li .wrap-img .txt-tag { position: absolute; }

.txt-tag { display: inline-block; font-size: 1.2rem; color: #ffffff; background: #2AB8F4; padding: 9px 16px; border-radius: 90px; letter-spacing: 1.5px; }

.btn-st { text-align: center; margin-top: 44px; }

.btn-st > a { position: relative; display: inline-block; font-size: 1.6rem; font-weight: bold; color: #ffffff; background: #F42F66; border-radius: 30px; padding: 16px 94px 14px; text-decoration: none; }

.btn-st > a:after { content: ""; width: 6px; height: 6px; border: 0px; border-top: solid 2px #ffffff; border-right: solid 2px #ffffff; -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; top: 50%; right: 24px; margin-top: -3px; }

.l-foot { width: 320px; text-align: center; padding: 66px 20px 80px; margin: 0 auto; }

.l-foot .list-foot { display: flex; justify-content: center; margin-top: 40px; }

.l-foot .list-foot li { width: 50%; font-size: 1.6rem; font-weight: bold; text-align: center; }

.l-foot .list-foot li:nth-child(even) { border-left: 1px solid; }

.l-foot .list-foot li a { color: #333333; text-decoration: none; }

.l-foot .copy { font-size: 1.4rem; line-height: 1.4; color: #777777; margin-top: 40px; }

@media print, all and (min-width: 768px) { a img { transition: all 0.3s; }
  a:hover img { opacity: 0.7; } .sp-none { display: block; } .pc-none { display: none; } .bg-01 { border-top: 3px solid #F6AF00; } .bg-02 { border-top: 3px solid #4DB2D0; } .l-all { padding-top: 60px; } .l-head .g-nav a:hover { transition: all 0.3s; opacity: 0.7; } .l-head .app-menu a img { transition: none; }
  .l-head .app-menu a:hover { transition: all 0.3s; } .open-menu .l-body, .open-menu .l-foot { display: block; }
  .open-menu .l-head .app-menu .l-inner { display: flex; } .app-menu > .l-inner { display: flex; align-items: center; justify-content: center; }
  .app-menu .wrap-txt { font-size: 2rem; margin-right: 20px; }
  .app-menu .wrap-txt img { width: 108px; margin-right: 10px; }
  .app-menu .wrap-btn { display: flex; }
  .app-menu .wrap-btn img { height: 90px; } .l-body .l-inner { max-width: 920px; margin: 0 auto; padding: 0 20px; }
  .l-body .l-inner.wide { max-width: 1060px; } .hdg-lv01 { font-size: 3rem; } .hdg-lv02 { font-size: 3rem; } .hdg-bdr01 { font-size: 2.6rem; } .hdg-lv03 { min-width: 570px; font-size: 1.8rem; } .wrap-period { padding: 88px 0 136px; } .dl-period .date { font-size: 3rem; }
  .dl-period .date .large { font-size: 5rem; }
  .dl-period .date .medium { font-size: 2.5rem; } .list-info { font-size: 1.8rem; } .list-note { font-size: 1.3rem; } .wrap-list { margin: 40px 0 0; }
  .wrap-list.wide { margin: 40px 0 0; }
  .wrap-list.wide .list-row li p { margin: 16px 0 0; } .list-row.row1-3 { display: flex; flex-wrap: wrap; justify-content: space-between; }
  .list-row.row1-3 > li { width: calc(33.3% - 15px); }
  .list-row.row1-3 > li:nth-child(-n + 3) { margin-top: 0; }
  .list-row.row2-4 > li { width: calc(25% - 14px); }
  .list-row.row2-4 > li:nth-child(-n +4) { margin-top: 0; } .wrap-tbl { margin: 64px 0 0; } .tbl-st thead th:first-child { min-width: 340px; } .wrap-cnt { padding: 80px 0 74px; } .wrap-qa { padding: 70px 0 80px; } .box-rds { padding: 65px 60px 55px; } .wrap-myroute:before { height: 3px; background: url(../image/line_pc.jpg) no-repeat; } .wrap-arrow:before { height: 44px; }
  .wrap-arrow:after { bottom: -30px; height: 30px; }
  .wrap-arrow > .l-inner img { height: 90px; margin-top: -20px; }
  .wrap-arrow > .l-inner p { font-size: 2.4rem; } .wrap-point { padding: 70px 0 60px; } .list-point > li { position: relative; padding: 60px; }
  .list-point > li + li { margin-top: 20px; }
  .list-point > li .ttl { font-size: 2rem; }
  .list-point > li .ttl span { font-size: 1.5rem; padding: 4px 4px 5px 9px; height: 26px; }
  .list-point > li .ttl span:after { right: -13px; border-width: 13px 0 13px 13px; }
  .list-point > li .lead { font-size: 3.2rem; margin-top: 28px; }
  .list-point > li .dtl { font-size: 1.6rem; line-height: 1.6; margin-top: 24px; }
  .list-point > li > .wrap-dtl { max-width: 510px; margin-right: 220px; }
  .list-point > li .wrap-img { position: inherit; margin: 30px 0 44px; }
  .list-point > li .wrap-img .txt-tag { position: relative; margin-bottom: 24px; }
  .list-point > li .wrap-img .item { position: absolute; top: 60px; right: 20px; width: 278px; height: auto; } .btn-st > a { font-size: 2.6rem; min-width: 637px; transition: all 0.3s; }
  .btn-st > a:hover { opacity: 0.7; } .l-foot { width: auto; padding: 80px 0; }
  .l-foot .logo { width: 410px; margin: 0 auto; }
  .l-foot .list-foot { margin-top: 80px; }
  .l-foot .list-foot li { width: 200px; font-size: 2rem; }
  .l-foot .list-foot li a:hover { text-decoration: underline; } }

@media print, all and (max-width: 320px) { .hdg-lv03 { font-size: 4.5vw; }
  .hdg-lv03 .bs { font-size: 1.8rem; } }
