@media screen and (max-width: 767px) { /*============================================================================== basic style ============================================================================= */
  html { font-size: 13.333333333vw; }
  body { font-size: 0.2rem; }
  .inner { margin: 0 0.3rem; width: auto; }
  .pc-only { display: none; }
  .br-pc { display: none; }
  .br-sp { display: inline; }
  img { width: 100%; }
  .deco:before { left: -1.5rem; width: 0.12rem; }
  .deco:after { top: 0; right: -1.4rem; width: 0.12rem; }
  .pink { color: #ea4459; }
  #container { background-color: #dff1fd; }
  /*============================================================================== function ============================================================================= */
  /*============================================================================== header style ============================================================================= */
  #header{ background: #fff; }
  .header-inner { display: flex; align-items: center; justify-content: space-between; padding: 0.2rem 0; }
  .header-logo { width: 4rem; }
  .header-logo02 { width: 2.4rem; }
  /*============================================================================== fv ============================================================================= */
  .fv-bg { position: relative; z-index: 2; padding: 1.63rem 0 0.34rem; background-image: url(../img/fv_bg01_sp.png); background-repeat: no-repeat; background-size: cover; background-position: top center; }
  .fv-inner { width: 100%; margin: 0; }
  .fv-bg02 { position: relative; z-index: 1; padding: 0.36rem 0rem 0; background-image: url(../img/fv_bg03_sp.png); background-repeat: repeat-y; background-size: 100%; background-position: top center; }
  .fv-bg02:after { content: ""; display: block; width: 100%; height: 1rem; background: #fff; }
  .fv-list { width: 6.75rem; margin: 0 auto 0.35rem; padding: 0.4rem 0.35rem 0.48rem; padding-right: 0.2rem; background-image: url(../img/fv_bg02_sp.png); background-repeat: no-repeat; background-size: 100% 100%; background-position: top center; }
  .fv-item { position: relative; display: flex; align-items: center; justify-content: space-between; margin-bottom: 0.3rem; }
  .fv-item:after { content: ""; display: block; position: absolute; bottom: -0.35rem; right: 0; left: 0; margin: 0 auto; width: 0.2rem; height: 0.38rem; background-image: url(../img/fv_arrow02_sp.png); background-repeat: no-repeat; background-size: contain; background-position: top center; }
  .fv-item:last-child { margin-bottom: 0; }
  .fv-item:last-child:after { content: none; }
  .fv-num01 { width: 1.3rem; }
  .fv-txt01 { width: 4.7rem; font-size: 0.34rem; text-align: left; line-height: 1.4; letter-spacing: 0.04em; }
  .fv-txt01 .color { color: #008be4; }
  .fv-comment01 { width: 5.7rem; margin: 0 auto 0.23rem; }
  .fv-btn { display: block; width: 6.2rem; margin: 0 auto 0.65rem; }
  .fv-imgbox { background: #fff; }
  .fv-txt02 { position: relative; display: block; font-size: .42rem; text-align: center; background: url(../img/imgbox_bg.jpg) no-repeat center/cover; color: #fff; font-weight: bold; line-height: 1; padding: .38rem 0; }
  .fv-txt02::after { position: absolute; content: ""; width: .31rem; height: .2rem; background: url(../img/fv_arrow_sp.png) no-repeat center/contain; bottom: -.2rem; left: 50%; transform: translateX(-50%); }
  .fv-container { margin: .56rem 0 0; }
  .fv .container-txt { width: 4.1rem; font-size: .36rem; color: #fff; font-weight: bold; text-align: center; line-height: 1; background: #00297d; border-radius: .36rem; padding: .23rem 0 .16rem; margin: 0 auto .33rem; }
  .fv .container-img { width: 7rem; margin: 0 auto; }
  .fv .container-img02, .fv .container-img03 { width: 6.8rem; }
  .fv-style02 { margin: .41rem 0 0; }
  .fv-style03 { margin: .52rem 0 0; }
  /*============================================================================== fit ============================================================================= */
  .fit-bg { position: relative; z-index: 2; background-image: url(../img/fv_bg03_sp.png); background-repeat: repeat-y; background-size: 100%; background-position: top center; }
  .fit-ttl01 { transform: translateY(-0.4rem); }
  .fit-img01 { width: 5.37rem; margin: 0 auto 0.45rem; }
  .fit-txt01 { width: 6rem; margin: 0 auto 0.3rem; font-size: 0.3rem; }
  .fit-ttl02 { width: 5.7rem; margin: 0 auto; padding: 0.5rem 0 0.4rem; border-top: 0.02rem dashed #003180; }
  .fit-bg02 { padding: 1.2rem 0 0.9rem; background: url(../img/fit_bg01_sp.png) no-repeat top center/100% 100%, url(../img/fv_bg03_sp.png) repeat-y top left/100%; }
  .fit-ttl03 { margin-bottom: 0.6rem; text-align: center; color: #ffffff; font-size: 0.4rem; }
  .fit-img02 { width: 7.5rem; margin-left: -0.3rem; margin-bottom: 0.5rem; box-shadow: 0 0 49px rgba(103, 103, 103, 0.58); }
  .fit-txt02 { width: 4.7rem; margin: 0 auto; }
  /*============================================================================== relax ============================================================================= */
  .relax-bg { position: relative; z-index: 1; margin-bottom: -0.4rem; padding: 0.75rem 0 1.1rem; background-image: url(../img/fv_bg03_sp.png); background-repeat: repeat-y; background-size: 100%; background-position: top center; }
  .relax-inner { box-shadow: 0 0 21px rgba(1, 1, 1, 0.23); background: url(../img/relax_bg02_sp.png), #fff; background-repeat: no-repeat; background-size: contain; background-position: top center; }
  .relax-box { padding: 1rem 0.4rem 0.6rem; }
  .relax-head { display: flex; align-items: center; justify-content: center; width: 100%; height: 2.15rem; background: url(../img/relax_bg01_sp.png); background-repeat: no-repeat; background-size: cover; background-position: top center; }
  .relax-ttl01 { width: 6rem; }
  .relax-img01 { width: 6.36rem; margin: 0 auto 0.6rem; }
  .relax-ttl02 { width: 5.97rem; margin: 0 auto 0.9rem; }
  .relax-item { position: relative; color: #333333; margin-bottom: 0.85rem; }
  .relax-item:last-child { margin-bottom: 0; }
  .relax-item-img03 { position: absolute; z-index: 100; width: 1.69rem; height: 1.69rem; top: -.2rem; right: .13rem; }
  .relax-img02 { width: 3.16rem; }
  .relax-img02 img { display: block; }
  .relax-img02-01 { margin: 0 0 .43rem; }
  .relax-img02-01 img { width: 2.51rem; }
  .relax-img02-02 { margin: 0 0 .17rem; }
  .relax-img02-03 { margin: 0 0 .16rem; }
  .relax-img02-03 img { width: 1.55rem; margin: 0 auto; }
  .relax-item-inner { position: relative; padding: 0.43rem; border: 2px solid #003180; }
  .relax-item-inner::after { position: absolute; content: ""; width: 0; height: 0; border-style: solid; border-width: 0 2.34rem 2.34rem 0; border-color: transparent #ffe238 transparent transparent; top: 0; right: 0; }
  .relax-item-inner03 { margin: .38rem 0 0; }
  .relax-item-inner03::after { border-color: transparent #008be4 transparent transparent; }
  .relax-num { position: absolute; top: -0.5rem; left: 0; right: 0; text-align: center; margin: 0 auto; height: 0.37rem; }
  .relax-num img { height: 100%; width: inherit; }
  .relax-ttl03 { color: #003180; font-size: 0.28rem; font-weight: bold; text-align: center; line-height: 1.6; letter-spacing: 0.03em; padding: 0.35rem 0.4rem; background-color: #ffe238; }
  .relax-txt01 { margin-bottom: 0.4rem; }
  .relax-txt01 .job { display: block; font-size: 0.28rem; }
  .relax-txt01 .name { font-size: 0.24rem; }
  .relax-txt02 { font-size: 0.28rem; line-height: 1.5; color: #00297d; padding: .35rem 0 0; margin-bottom: 0.3rem; border-top: 1px dashed #00297d; }
  .relax-btn01 { display: block; width: 2.6rem; }
  .relax-txt03 { width: 6.9rem; margin: 0 0 0 -.4rem; }
  .relax-list { margin: .9rem 0 0; }
  /*============================================================================== cta ============================================================================= */
  .cta-bg { position: relative; z-index: 2; padding: 0.92rem 0 0.76rem; background-image: url(../img/cta_bg01_sp.png); background-repeat: no-repeat; background-size: cover; background-position: top center; }
  .cta-inner { width: 100%; margin: 0; }
  .cta-ttl01 { width: 7rem; margin: 0 auto 0.12rem; }
  .cta-btn01 { display: block; width: 6.2rem; margin: 0 auto; }
  /*============================================================================== what ============================================================================= */
  .what-bg { position: relative; z-index: 1; padding: 0.8rem 0 1.2rem; margin-bottom: -0.5rem; background-image: url(../img/what_bg01_sp.png); background-repeat: no-repeat; background-size: cover; background-position: top -1.2rem center; }
  .what-ttl01 { width: 6.32rem; margin: 0 auto 0.62rem; }
  .what-ttl02 { width: 6.7rem; margin: 0 auto 0.3rem; }
  .what-box01 { width: 6.7rem; margin: 0 auto; position: relative; margin-bottom: 0.3rem; }
  .what-txt01 { margin-bottom: 0.35rem; font-weight: bold; font-size: 0.3rem; line-height: 1.5; }
  .what-txt01.small { width: 4.5rem; margin-right: auto; margin-bottom: 0.4rem; }
  .what-img01 { width: 2.4rem; position: absolute; bottom: 0.2rem; right: -0.4rem; }
  .what-ttl03 { position: relative; z-index: 2; width: 7.2rem; transform: translateX(-0.3rem); margin-bottom: -0.22rem; }
  .what-list { position: relative; z-index: 1; background-color: #ffffff; margin-bottom: 0.14rem; padding: 0.3rem 0.2rem; padding-bottom: 0; }
  .what-item { display: flex; align-items: center; padding: 0.23rem 0.25rem; background-color: #ffffff; }
  .what-item:nth-child(even) { background-color: #f3f3f3; }
  .what-item-num { width: 0.82rem; }
  .what-item-txt { font-weight: bold; width: 4.9rem; margin-left: 0.2rem; font-size: 0.32rem; line-height: 1.4; }
  .what-item-txt .color { display: block; color: #00297d; font-size: 0.38rem; }
  .what-note { color: #444444; text-align: right; font-size: 0.22rem; }
  /*============================================================================== point ============================================================================= */
  .point-bg { position: relative; z-index: 2; padding-bottom: 0.9rem; }
  .point-ttl01 { position: relative; z-index: 1; width: 7.5rem; margin-bottom: -0.65rem; }
  .point-ttl02 { position: relative; z-index: 2; width: 6.3rem; margin-left: auto; margin-bottom: 0.6rem; }
  .point-img01 { margin: 0 auto; }
  /*============================================================================== offer ============================================================================= */
  .offer-bg { position: relative; z-index: 1; margin-bottom: -0.6rem; padding: 0 0rem 1.3rem; background-image: url(../img/offer_bg01_sp.png); background-repeat: repeat; background-size: 38px; background-position: top center; }
  .offer-ttl01 { margin: 0 auto 0.5rem; transform: translateY(-0.22rem); }
  .offer-inner { border: 2px solid #00297d; background-color: #ffffff; }
  .offer-box { padding: 0.5rem 0.3rem 0.8rem; }
  .offer-head02 { display: flex; align-items: center; justify-content: center; height: 1.3rem; background-color: #fdf876; }
  .offer-txt01 { width: 3.75rem; }
  .offer-img01 { width: 5.04rem; margin: 0 auto 0.3rem; }
  .offer-txt02 { color: #000000; font-size: 0.3rem; margin-bottom: 0.6rem; }
  .offer-img02 { margin-bottom: 0.6rem; border-radius: 10px; overflow: hidden; }
  .offer-ttl02 { margin: 0 auto 0.2rem; }
  .offer-txt03 { position: relative; width: 4.8rem; color: #010101; font-size: 0.3rem; font-weight: bold; line-height: 1.5; }
  .offer-txt03:after { content: ""; display: block; position: absolute; top: 50%; right: -1.3rem; width: 1.4rem; height: 0.91rem; background-image: url(../img/offer_icon01_pc.png); background-repeat: no-repeat; background-size: contain; background-position: top center; transform: translateY(-50%); }
  .offer-sub { font-size: .3rem; font-weight: bold; margin: 1em 0 0; }
  /*============================================================================== change ============================================================================= */
  .change-bg { position: relative; z-index: 1; padding: 1rem 0 0.6rem; margin-bottom: -0.3rem; background-image: url(../img/change_bg01_sp.png); background-repeat: no-repeat; background-size: cover; background-position: top center; }
  .change-ttl01 { width: 6rem; margin: 0 auto 0.6rem; }
  .change-txt01 { color: #00297d; font-size: 0.3rem; font-weight: 700; text-align: center; line-height: 1.8; }
  .change-ttl02 { width: 7.5rem; margin-left: -0.3rem; }
  .change-bg02 { position: relative; z-index: 2; padding-bottom: 0.8rem; background: url(../img/change_bg02_pc.png); background-repeat: no-repeat; background-size: contain; background-position: top center; }
  .change-ttl03 { width: 7rem; margin-left: -0.1rem; transform: translateY(-0.2rem); margin-bottom: 0.3rem; }
  /*============================================================================== style ============================================================================= */
  .style-bg { position: relative; z-index: 1; margin-bottom: -0.5rem; padding-bottom: 2rem; }
  .style-ttl01 { margin-bottom: 0.42rem; }
  .style .swiper-button-prev, .style .swiper-button-next { top: 2.7rem; width: 0.7rem; height: 0.7rem; background-image: url(../img/style_arrow01_pc.png); background-repeat: no-repeat; background-size: contain; background-position: top center; transform: none; margin-top: 0; }
  .style .swiper-button-prev.swiper-button-prev02 { left: -0.16rem; }
  .style .swiper-button-next.swiper-button-next02 { right: -0.16rem; transform: rotate(180deg); }
  .style .swiper-pagination.swiper-pagination02 { bottom: -0.6rem; display: flex; align-items: center; justify-content: center; width: 100%; margin: 0 auto; }
  .style .swiper-pagination-bullet { width: 0.2rem; height: 0.2rem; margin-right: 0.15rem; background-color: #828282; display: block; opacity: 1; border-radius: 50%; }
  .style .swiper-pagination-bullet:last-child { margin-right: 0; }
  .style .swiper-pagination-bullet.swiper-pagination-bullet-active { background-color: #008be4; }
  .style-slide-inner { padding-bottom: 0.4rem; border-bottom: 0.2rem solid #9fd3fc; background: #fff; }
  .style-slide-right { padding: 0.35rem 0.4rem 0rem; }
  .style-slide-ttl { color: #00297d; font-size: 0.4rem; text-align: center; font-weight: bold; margin-bottom: 0.2rem; }
  .style-slide-txt { color: #000000; font-size: 0.36rem; font-weight: 700; line-height: 2; }
  /*============================================================================== voice ============================================================================= */
  .voice-bg { position: relative; z-index: 1; padding: 0.8rem 0 1rem; background: #ffffff; }
  .voice-ttl01 { width: 6.9rem; margin: 0 auto 0.57rem; }
  .voice-list { margin-bottom: 0.08rem; }
  .voice-item { position: relative; overflow: hidden; margin-bottom: 0.65rem; padding: 0.7rem 0.3rem 0.55rem; border-radius: 3px; border: 2px solid #00297d; background-image: url(../img/voice_bg01_sp.png); background-repeat: repeat-y; background-size: 100%; background-position: top center; }
  .voice-item:last-child { margin-bottom: 0; }
  .voice-num { position: absolute; top: -0.5rem; left: -0.3rem; width: 2.2rem; }
  .voice-ttl02 { color: #00297d; font-weight: bold; font-size: 0.39rem; margin-bottom: 0.4rem; padding: 0rem 0.2rem 0.2rem 0.6rem; border-bottom: 2px dashed #00297d; letter-spacing: 0.03em; }
  .voice-flex { display: flex; align-items: center; margin-bottom: 0.4rem; }
  .voice-img { width: 2.16rem; margin-right: 0.7rem; }
  .voice-txt01 { font-size: 0.4rem; font-weight: 700; }
  .voice-txt01 .info { display: block; font-size: 0.28rem; }
  .voice-txt02 { line-height: 1.6; font-size: 0.34rem; font-weight: 700; }
  .voice-note { font-size: 0.2rem; text-align: right; }
  /*============================================================================== step ============================================================================= */
  .step-bg { position: relative; z-index: 1; margin-bottom: -0.5rem; padding-bottom: 1.4rem; background-image: url(../img/step_bg01_sp.png); background-repeat: repeat-y; background-size: 100%; background-position: top center; }
  .step-ttl01 { margin-bottom: 0.3rem; transform: translateY(-0.4rem); }
  .step-item { position: relative; padding: 0.45rem 0.6rem; margin-bottom: 1.8rem; box-shadow: 0rem 0.2rem 0 #00297d; background-color: #ffffff; }
  .step-item:before { content: ""; display: block; position: absolute; background-repeat: no-repeat; background-size: 100%; background-position: top center; }
  .step-item:after { content: ""; display: block; position: absolute; left: 0; right: 0; top: -1.2rem; margin: 0 auto; width: 0.4rem; height: 0.8rem; background-image: url(../img/step_arrow01_pc.png); background-repeat: no-repeat; background-size: 100%; background-position: top center; }
  .step-item:nth-child(1):before { width: 1.14rem; height: 3.24rem; top: -0.4rem; left: -0.3rem; background-image: url(../img/step_icon01_sp.png); }
  .step-item:nth-child(1):after { content: ""; display: block; position: absolute; right: -0.3rem; left: inherit; top: inherit; bottom: -0.7rem; margin: 0 auto; width: 0.95rem; height: 3.56rem; background-image: url(../img/step_icon01-2_sp.png); background-repeat: no-repeat; background-size: 100%; background-position: top center; }
  .step-item:nth-child(2):before { width: 3rem; height: 2.35rem; top: -0.8rem; right: -0.7rem; background-image: url(../img/step_icon02_pc.png); }
  .step-item:last-child { margin-bottom: 0; }
  .step-item:last-child:before { width: 1.44rem; height: 1.57rem; top: 0.15rem; left: 0.7rem; background-image: url(../img/step_icon03_pc.png); }
  .step-item .red { color: #ff0000; }
  .step-num { height: 0.8rem; margin-bottom: 0.5rem; text-align: center; }
  .step-num img { height: 100%; width: inherit; }
  .step-ttl02 { color: #00297d; font-size: 0.4rem; font-weight: 700; line-height: 1.7; text-align: center; margin-bottom: 0.5rem; }
  .step-txt01 { color: #000000; font-size: 0.29rem; line-height: 1.7; font-weight: 700; }
  /*============================================================================== concept ============================================================================= */
  .concept-bg { padding: 0.8rem 0 0.7rem; background-image: url(../img/concept_bg01_sp.jpg); background-repeat: no-repeat; background-size: cover; background-position: top center; }
  .concept-inner { position: relative; z-index: 1; }
  .concept-ttl01 { margin-bottom: 0.8rem; }
  .concept-ttl02 { width: 4.4rem; margin-bottom: 0.54rem; }
  .concept-box { position: relative; border-radius: 0.25rem 0 0.25rem 0.25rem; padding: 0.3rem; background-color: #ffffff; margin-bottom: 0.5rem; }
  .concept-box-ttl { color: #010101; font-size: 0.3rem; font-weight: 700; margin-bottom: 0.1rem; }
  .concept-box-txt { font-size: 0.26rem; line-height: 1.7; letter-spacing: -.04em; }
  .concept-box-img { position: absolute; z-index: -1; top: -3.5rem; right: -0.05rem; width: 2.35rem; }
  .concept-txt01 { width: 6.5rem; margin: 0 auto 0.4rem; color: #000000; font-size: 0.3rem; font-weight: 500; line-height: 1.8; letter-spacing: 0.06em; }
  .concept-txt01:last-child { margin-bottom: 0; }
  /*============================================================================== project ============================================================================= */
  .project-bg { position: relative; z-index: 1; padding-bottom: 1rem; background: #fff; }
  .project-ttl01 { margin-bottom: 0.3rem; }
  .project-txt01 { margin-bottom: 0.5rem; font-size: 0.32rem; line-height: 1.7; font-weight: 700; }
  .project-img01 { margin-bottom: 0.6rem; }
  .project-box01 { margin-bottom: 0.65rem; padding: 0.35rem 0.32rem 0.5rem; background-color: #f7f7f7; }
  .project-box-en { display: flex; align-items: center; position: relative; color: #002077; font-weight: bold; font-size: 0.28rem; margin-bottom: 0.3rem; margin-left: -0.3rem; }
  .project-box-en:before { content: ""; display: block; width: 0.6rem; height: 0.06rem; background: #002077; border-radius: 10px; margin-right: 0.2rem; }
  .project-box-ttl { font-size: 0.28rem; font-weight: 700; margin-bottom: 0.4rem; }
  .project-box-dl01 { margin-top: 0.3rem; }
  .project-box-dl01 dt { font-size: 0.28rem; }
  .project-box-dl01 dd { margin-top: 0.05rem; font-size: 0.26rem; }
  .project-box02 { padding: 0.4rem 0.32rem 0.5rem; background-color: #e0f1fd; }
  .project-img02 { margin-bottom: 0.3rem; }
  .project-box-dl02 { margin-top: 0.3rem; }
  .project-box-dl02 dt { font-size: 0.28rem; }
  .project-box-dl02 dd { margin-top: 0.05rem; font-size: 0.26rem; }
  /*============================================================================== faq ============================================================================= */
  .faq-bg { position: relative; z-index: 3; padding-bottom: 1.8rem; margin-bottom: -0.5rem; background-image: url(../img/offer_bg01_sp.png); background-repeat: repeat; background-size: 38px; background-position: top center; }
  .faq-ttl { transform: translateY(-0.3rem); margin-bottom: 0.35rem; }
  .faq__accordion { margin-bottom: 0.8rem; }
  .faq__accordion:last-child { margin-bottom: 0; }
  .faq__accordion.open .toggle { border-radius: 3px 3px 0 0; }
  .faq__accordion.open .toggle:after { transform: translateY(-50%) rotate(0deg); }
  .faq__accordion .toggle { display: flex; align-items: center; cursor: pointer; position: relative; height: 1.6rem; padding-left: 0.2rem; background-color: #fff; border: 2px solid #141a55; border-radius: 3px; background: linear-gradient(to right, #fff 6rem, #008be4 6rem); }
  .faq__accordion .toggle:before { position: absolute; z-index: -1; left: 0; right: 0; bottom: -0.2rem; content: ""; display: block; width: 99%; margin: 0 auto; height: 0.2rem; background: rgba(0, 0, 0, 0.31); }
  .faq__accordion .toggle .num { width: 0.35rem; margin-right: 0.23rem; }
  .faq__accordion .toggle .txt { align-self: center; color: #00297d; font-size: 0.3rem; line-height: 1.8; font-weight: bold; }
  .faq__accordion .toggle::after { position: absolute; top: 50%; transform: translateY(-50%) rotate(180deg); right: 0.25rem; width: 0.31rem; height: 0.19rem; background-image: url(../img/faq_toggle01.png); background-repeat: no-repeat; background-size: contain; background-position: top center; content: ""; }
  .faq__accordion .content { margin: 0 0; padding: 0.5rem 0.5rem; background: #fff; border: 2px solid #141a55; border-top: none; border-radius: 0 0 3px 3px; position: relative; }
  .faq__accordion .content:after { position: absolute; z-index: -1; left: 0; right: 0; bottom: -0.2rem; content: ""; display: block; width: 99%; margin: 0 auto; height: 0.2rem; background: rgba(0, 0, 0, 0.31); }
  .faq__accordion .content p { font-size: 0.3rem; line-height: 1.7; font-weight: 700; color: #00297d; letter-spacing: 0.04em; }
  /*============================================================================== form ============================================================================= */
  .form .bg { position: relative; z-index: 4; padding: 0 0 0.84rem; background-image: url(../img/step_bg01_sp.png); background-repeat: repeat-y; background-size: 100%; background-position: top center; }
  .form-ttl { transform: translateY(-0.4rem); margin-bottom: 0.2rem; }
  .form_body_row .item { margin: 0 0 0.6rem; }
  .form_body_row .item_head { position: relative; background-color: #002077; border: 0.02rem solid #00297d; border-radius: 3px; }
  .form .open .item_head { border-radius: 3px 3px 0 0; }
  .form_body_row .item_head_inner { position: relative; display: flex; align-items: center; height: 1rem; justify-content: center; width: 100%; }
  .form_body_row .item_head_inner::before { position: absolute; top: 0; bottom: 0; right: 0; margin: auto 0; width: 0.98rem; height: 0.98rem; box-sizing: border-box; border: 2px solid #002077; background-color: #ffffff; content: ""; }
  .form_body_row .item_head_inner::after { position: absolute; top: 0; bottom: 0; right: 0.2rem; margin: auto 0; width: 0.56rem; height: 0.51rem; background: url("../img/form_toggle01.png") 50% 0; background-size: cover; content: ""; }
  .form_body_row .open .item_head_inner::after { background-position: 50% bottom; }
  .form_body_row .item_head_copy { vertical-align: middle; }
  .form_body_row .item_head_copy .txt { color: #ffffff; font-weight: bold; font-size: 0.4rem; text-align: center; }
  .form_body_row .item_ctn { padding: 0.4rem 0.3rem 0.3rem; background-color: #ffffff; border: 2px solid #00297d; border-top: none; border-radius: 0 0 3px 3px; }
  .form_body_row .item_ctn_list { display: flex; flex-wrap: wrap; width: 100%; }
  .form_body_row .item_ctn_li { margin-bottom: 0.3rem; width: 100%; }
  .form_body_row .item_ctn_li .chb_lbl { display: flex; align-items: flex-start; position: relative; display: block; padding-left: 0.9rem; }
  .form_body_row .item_ctn_li .chb_checkmark { box-sizing: border-box; width: 0.56rem; height: 0.56rem; border: 2px solid #000000; background-color: #f9f8db; position: absolute; top: 0; bottom: 0; left: 0; margin: auto; color: #fff; text-indent: -99999rem; }
  .form_body_row .item_ctn_li .chb_ip { display: none; }
  .form_body_row .item_ctn_li .chb_ip:checked + .chb_checkmark { background-color: #fdf876; }
  .form_body_row .item_ctn_li .chb_ip:checked + .chb_checkmark:after { content: ""; display: block; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; width: 0.2rem; height: 0.15rem; background-image: url(../img/form_icon01_pc.png); background-repeat: no-repeat; background-size: cover; background-position: top center; }
  .form_body_row .item_ctn_li .chb_txt { font-size: 0.31rem; line-height: 1.666667; font-weight: bold; display: inline-block; }
  .form_btn { display: block; width: 6.2rem; margin: 0 auto; cursor: pointer; }
  .form .inner { position: relative; }
  .form-sub { font-size: .23rem; position: absolute; z-index: 100; width: auto; text-align: right; font-weight: bold; top: -.7rem; right: 14%; }
	
	.form_btn + .txt{ background: rgba(255,255,255,0.6); color: #002077; font-size: 0.2rem; text-align: center; margin: 0.3rem auto 0;  padding: 0.3rem 0 0.2rem; }
	.form_btn + .txt b{font-size: 0.23rem; font-weight: bold; margin: 0 0 0.05rem; display: block; }
	.form_btn + .txt b img{ width: 3.2rem; height: auto; display: inline-block; margin: 0 0.1rem 0 0; vertical-align: -0.18rem; }
  /*============================================================================== footer style ============================================================================= */
  .footer-inner { padding: 0.6rem 0 0.7rem; }
  .footer-img01 { width: 5.27rem; margin: 0 auto 0.62rem; }
  .footer-copy { display: block; text-align: center; font-size: 0.2rem; font-weight: 500; }

.graph .graph_ttl{
background: #003180;
color: #fff;
font-size: 0.4rem;
text-align: center;
padding: 0.35rem 0;
}
.graph .graph_ttl b{
color: #ffe013;
}
.graph .bg{
background: url("../img/graph_bg02.jpg") no-repeat 50% 0;
background-size: cover;
padding: 0.5rem 0;
}
.graph .bg .text01{
width: 100%;
font-size: 0.3rem;
font-weight: bold;
text-align: center;
line-height: 1.8;
margin: 0 auto 0.5rem;
}
.graph .bg [class^="text"] b{
color: #f10854;
}
.graph .bg .block{
width: 100%;
margin: 0 auto;
}
.graph .bg .block .image01{
width: 100%;
margin: 0 auto 0.5rem;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
.graph .bg .block .image02{
width: 100%;
}
.graph .bg .block .text02{ 
width: 100%;
font-size: 0.3rem;
font-weight: bold;
text-align: center;
line-height: 1.8;
margin: 0 auto 0.5rem;
}
}
