@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&family=Oswald:wght@200;300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@100..900&display=swap");
.mt0 { margin-top: 0rem !important; }

.mr0 { margin-right: 0rem !important; }

.mb0 { margin-bottom: 0rem !important; }

.ml0 { margin-left: 0rem !important; }

.pt0 { padding-top: 0rem !important; }

.pr0 { padding-right: 0rem !important; }

.pb0 { padding-bottom: 0rem !important; }

.pl0 { padding-left: 0rem !important; }

.mt5 { margin-top: 0.5rem !important; }

.mr5 { margin-right: 0.5rem !important; }

.mb5 { margin-bottom: 0.5rem !important; }

.ml5 { margin-left: 0.5rem !important; }

.pt5 { padding-top: 0.5rem !important; }

.pr5 { padding-right: 0.5rem !important; }

.pb5 { padding-bottom: 0.5rem !important; }

.pl5 { padding-left: 0.5rem !important; }

.mt10 { margin-top: 1rem !important; }

.mr10 { margin-right: 1rem !important; }

.mb10 { margin-bottom: 1rem !important; }

.ml10 { margin-left: 1rem !important; }

.pt10 { padding-top: 1rem !important; }

.pr10 { padding-right: 1rem !important; }

.pb10 { padding-bottom: 1rem !important; }

.pl10 { padding-left: 1rem !important; }

.mt15 { margin-top: 1.5rem !important; }

.mr15 { margin-right: 1.5rem !important; }

.mb15 { margin-bottom: 1.5rem !important; }

.ml15 { margin-left: 1.5rem !important; }

.pt15 { padding-top: 1.5rem !important; }

.pr15 { padding-right: 1.5rem !important; }

.pb15 { padding-bottom: 1.5rem !important; }

.pl15 { padding-left: 1.5rem !important; }

.mt20 { margin-top: 2rem !important; }

.mr20 { margin-right: 2rem !important; }

.mb20 { margin-bottom: 2rem !important; }

.ml20 { margin-left: 2rem !important; }

.pt20 { padding-top: 2rem !important; }

.pr20 { padding-right: 2rem !important; }

.pb20 { padding-bottom: 2rem !important; }

.pl20 { padding-left: 2rem !important; }

.mt25 { margin-top: 2.5rem !important; }

.mr25 { margin-right: 2.5rem !important; }

.mb25 { margin-bottom: 2.5rem !important; }

.ml25 { margin-left: 2.5rem !important; }

.pt25 { padding-top: 2.5rem !important; }

.pr25 { padding-right: 2.5rem !important; }

.pb25 { padding-bottom: 2.5rem !important; }

.pl25 { padding-left: 2.5rem !important; }

.mt30 { margin-top: 3rem !important; }

.mr30 { margin-right: 3rem !important; }

.mb30 { margin-bottom: 3rem !important; }

.ml30 { margin-left: 3rem !important; }

.pt30 { padding-top: 3rem !important; }

.pr30 { padding-right: 3rem !important; }

.pb30 { padding-bottom: 3rem !important; }

.pl30 { padding-left: 3rem !important; }

.mt35 { margin-top: 3.5rem !important; }

.mr35 { margin-right: 3.5rem !important; }

.mb35 { margin-bottom: 3.5rem !important; }

.ml35 { margin-left: 3.5rem !important; }

.pt35 { padding-top: 3.5rem !important; }

.pr35 { padding-right: 3.5rem !important; }

.pb35 { padding-bottom: 3.5rem !important; }

.pl35 { padding-left: 3.5rem !important; }

.mt40 { margin-top: 4rem !important; }

.mr40 { margin-right: 4rem !important; }

.mb40 { margin-bottom: 4rem !important; }

.ml40 { margin-left: 4rem !important; }

.pt40 { padding-top: 4rem !important; }

.pr40 { padding-right: 4rem !important; }

.pb40 { padding-bottom: 4rem !important; }

.pl40 { padding-left: 4rem !important; }

.mt45 { margin-top: 4.5rem !important; }

.mr45 { margin-right: 4.5rem !important; }

.mb45 { margin-bottom: 4.5rem !important; }

.ml45 { margin-left: 4.5rem !important; }

.pt45 { padding-top: 4.5rem !important; }

.pr45 { padding-right: 4.5rem !important; }

.pb45 { padding-bottom: 4.5rem !important; }

.pl45 { padding-left: 4.5rem !important; }

.mt50 { margin-top: 5rem !important; }

.mr50 { margin-right: 5rem !important; }

.mb50 { margin-bottom: 5rem !important; }

.ml50 { margin-left: 5rem !important; }

.pt50 { padding-top: 5rem !important; }

.pr50 { padding-right: 5rem !important; }

.pb50 { padding-bottom: 5rem !important; }

.pl50 { padding-left: 5rem !important; }

.mt55 { margin-top: 5.5rem !important; }

.mr55 { margin-right: 5.5rem !important; }

.mb55 { margin-bottom: 5.5rem !important; }

.ml55 { margin-left: 5.5rem !important; }

.pt55 { padding-top: 5.5rem !important; }

.pr55 { padding-right: 5.5rem !important; }

.pb55 { padding-bottom: 5.5rem !important; }

.pl55 { padding-left: 5.5rem !important; }

.mt60 { margin-top: 6rem !important; }

.mr60 { margin-right: 6rem !important; }

.mb60 { margin-bottom: 6rem !important; }

.ml60 { margin-left: 6rem !important; }

.pt60 { padding-top: 6rem !important; }

.pr60 { padding-right: 6rem !important; }

.pb60 { padding-bottom: 6rem !important; }

.pl60 { padding-left: 6rem !important; }

.mt65 { margin-top: 6.5rem !important; }

.mr65 { margin-right: 6.5rem !important; }

.mb65 { margin-bottom: 6.5rem !important; }

.ml65 { margin-left: 6.5rem !important; }

.pt65 { padding-top: 6.5rem !important; }

.pr65 { padding-right: 6.5rem !important; }

.pb65 { padding-bottom: 6.5rem !important; }

.pl65 { padding-left: 6.5rem !important; }

.mt70 { margin-top: 7rem !important; }

.mr70 { margin-right: 7rem !important; }

.mb70 { margin-bottom: 7rem !important; }

.ml70 { margin-left: 7rem !important; }

.pt70 { padding-top: 7rem !important; }

.pr70 { padding-right: 7rem !important; }

.pb70 { padding-bottom: 7rem !important; }

.pl70 { padding-left: 7rem !important; }

.mt75 { margin-top: 7.5rem !important; }

.mr75 { margin-right: 7.5rem !important; }

.mb75 { margin-bottom: 7.5rem !important; }

.ml75 { margin-left: 7.5rem !important; }

.pt75 { padding-top: 7.5rem !important; }

.pr75 { padding-right: 7.5rem !important; }

.pb75 { padding-bottom: 7.5rem !important; }

.pl75 { padding-left: 7.5rem !important; }

.mt80 { margin-top: 8rem !important; }

.mr80 { margin-right: 8rem !important; }

.mb80 { margin-bottom: 8rem !important; }

.ml80 { margin-left: 8rem !important; }

.pt80 { padding-top: 8rem !important; }

.pr80 { padding-right: 8rem !important; }

.pb80 { padding-bottom: 8rem !important; }

.pl80 { padding-left: 8rem !important; }

.mt85 { margin-top: 8.5rem !important; }

.mr85 { margin-right: 8.5rem !important; }

.mb85 { margin-bottom: 8.5rem !important; }

.ml85 { margin-left: 8.5rem !important; }

.pt85 { padding-top: 8.5rem !important; }

.pr85 { padding-right: 8.5rem !important; }

.pb85 { padding-bottom: 8.5rem !important; }

.pl85 { padding-left: 8.5rem !important; }

.mt90 { margin-top: 9rem !important; }

.mr90 { margin-right: 9rem !important; }

.mb90 { margin-bottom: 9rem !important; }

.ml90 { margin-left: 9rem !important; }

.pt90 { padding-top: 9rem !important; }

.pr90 { padding-right: 9rem !important; }

.pb90 { padding-bottom: 9rem !important; }

.pl90 { padding-left: 9rem !important; }

.mt95 { margin-top: 9.5rem !important; }

.mr95 { margin-right: 9.5rem !important; }

.mb95 { margin-bottom: 9.5rem !important; }

.ml95 { margin-left: 9.5rem !important; }

.pt95 { padding-top: 9.5rem !important; }

.pr95 { padding-right: 9.5rem !important; }

.pb95 { padding-bottom: 9.5rem !important; }

.pl95 { padding-left: 9.5rem !important; }

.mt100 { margin-top: 10rem !important; }

.mr100 { margin-right: 10rem !important; }

.mb100 { margin-bottom: 10rem !important; }

.ml100 { margin-left: 10rem !important; }

.pt100 { padding-top: 10rem !important; }

.pr100 { padding-right: 10rem !important; }

.pb100 { padding-bottom: 10rem !important; }

.pl100 { padding-left: 10rem !important; }

@media screen and (min-width: 961px) { .pc-mt0 { margin-top: 0rem !important; }
  .pc-mr0 { margin-right: 0rem !important; }
  .pc-mb0 { margin-bottom: 0rem !important; }
  .pc-ml0 { margin-left: 0rem !important; }
  .pc-pt0 { padding-top: 0rem !important; }
  .pc-pr0 { padding-right: 0rem !important; }
  .pc-pb0 { padding-bottom: 0rem !important; }
  .pc-pl0 { padding-left: 0rem !important; }
  .pc-mt5 { margin-top: 0.5rem !important; }
  .pc-mr5 { margin-right: 0.5rem !important; }
  .pc-mb5 { margin-bottom: 0.5rem !important; }
  .pc-ml5 { margin-left: 0.5rem !important; }
  .pc-pt5 { padding-top: 0.5rem !important; }
  .pc-pr5 { padding-right: 0.5rem !important; }
  .pc-pb5 { padding-bottom: 0.5rem !important; }
  .pc-pl5 { padding-left: 0.5rem !important; }
  .pc-mt10 { margin-top: 1rem !important; }
  .pc-mr10 { margin-right: 1rem !important; }
  .pc-mb10 { margin-bottom: 1rem !important; }
  .pc-ml10 { margin-left: 1rem !important; }
  .pc-pt10 { padding-top: 1rem !important; }
  .pc-pr10 { padding-right: 1rem !important; }
  .pc-pb10 { padding-bottom: 1rem !important; }
  .pc-pl10 { padding-left: 1rem !important; }
  .pc-mt15 { margin-top: 1.5rem !important; }
  .pc-mr15 { margin-right: 1.5rem !important; }
  .pc-mb15 { margin-bottom: 1.5rem !important; }
  .pc-ml15 { margin-left: 1.5rem !important; }
  .pc-pt15 { padding-top: 1.5rem !important; }
  .pc-pr15 { padding-right: 1.5rem !important; }
  .pc-pb15 { padding-bottom: 1.5rem !important; }
  .pc-pl15 { padding-left: 1.5rem !important; }
  .pc-mt20 { margin-top: 2rem !important; }
  .pc-mr20 { margin-right: 2rem !important; }
  .pc-mb20 { margin-bottom: 2rem !important; }
  .pc-ml20 { margin-left: 2rem !important; }
  .pc-pt20 { padding-top: 2rem !important; }
  .pc-pr20 { padding-right: 2rem !important; }
  .pc-pb20 { padding-bottom: 2rem !important; }
  .pc-pl20 { padding-left: 2rem !important; }
  .pc-mt25 { margin-top: 2.5rem !important; }
  .pc-mr25 { margin-right: 2.5rem !important; }
  .pc-mb25 { margin-bottom: 2.5rem !important; }
  .pc-ml25 { margin-left: 2.5rem !important; }
  .pc-pt25 { padding-top: 2.5rem !important; }
  .pc-pr25 { padding-right: 2.5rem !important; }
  .pc-pb25 { padding-bottom: 2.5rem !important; }
  .pc-pl25 { padding-left: 2.5rem !important; }
  .pc-mt30 { margin-top: 3rem !important; }
  .pc-mr30 { margin-right: 3rem !important; }
  .pc-mb30 { margin-bottom: 3rem !important; }
  .pc-ml30 { margin-left: 3rem !important; }
  .pc-pt30 { padding-top: 3rem !important; }
  .pc-pr30 { padding-right: 3rem !important; }
  .pc-pb30 { padding-bottom: 3rem !important; }
  .pc-pl30 { padding-left: 3rem !important; }
  .pc-mt35 { margin-top: 3.5rem !important; }
  .pc-mr35 { margin-right: 3.5rem !important; }
  .pc-mb35 { margin-bottom: 3.5rem !important; }
  .pc-ml35 { margin-left: 3.5rem !important; }
  .pc-pt35 { padding-top: 3.5rem !important; }
  .pc-pr35 { padding-right: 3.5rem !important; }
  .pc-pb35 { padding-bottom: 3.5rem !important; }
  .pc-pl35 { padding-left: 3.5rem !important; }
  .pc-mt40 { margin-top: 4rem !important; }
  .pc-mr40 { margin-right: 4rem !important; }
  .pc-mb40 { margin-bottom: 4rem !important; }
  .pc-ml40 { margin-left: 4rem !important; }
  .pc-pt40 { padding-top: 4rem !important; }
  .pc-pr40 { padding-right: 4rem !important; }
  .pc-pb40 { padding-bottom: 4rem !important; }
  .pc-pl40 { padding-left: 4rem !important; }
  .pc-mt45 { margin-top: 4.5rem !important; }
  .pc-mr45 { margin-right: 4.5rem !important; }
  .pc-mb45 { margin-bottom: 4.5rem !important; }
  .pc-ml45 { margin-left: 4.5rem !important; }
  .pc-pt45 { padding-top: 4.5rem !important; }
  .pc-pr45 { padding-right: 4.5rem !important; }
  .pc-pb45 { padding-bottom: 4.5rem !important; }
  .pc-pl45 { padding-left: 4.5rem !important; }
  .pc-mt50 { margin-top: 5rem !important; }
  .pc-mr50 { margin-right: 5rem !important; }
  .pc-mb50 { margin-bottom: 5rem !important; }
  .pc-ml50 { margin-left: 5rem !important; }
  .pc-pt50 { padding-top: 5rem !important; }
  .pc-pr50 { padding-right: 5rem !important; }
  .pc-pb50 { padding-bottom: 5rem !important; }
  .pc-pl50 { padding-left: 5rem !important; }
  .pc-mt55 { margin-top: 5.5rem !important; }
  .pc-mr55 { margin-right: 5.5rem !important; }
  .pc-mb55 { margin-bottom: 5.5rem !important; }
  .pc-ml55 { margin-left: 5.5rem !important; }
  .pc-pt55 { padding-top: 5.5rem !important; }
  .pc-pr55 { padding-right: 5.5rem !important; }
  .pc-pb55 { padding-bottom: 5.5rem !important; }
  .pc-pl55 { padding-left: 5.5rem !important; }
  .pc-mt60 { margin-top: 6rem !important; }
  .pc-mr60 { margin-right: 6rem !important; }
  .pc-mb60 { margin-bottom: 6rem !important; }
  .pc-ml60 { margin-left: 6rem !important; }
  .pc-pt60 { padding-top: 6rem !important; }
  .pc-pr60 { padding-right: 6rem !important; }
  .pc-pb60 { padding-bottom: 6rem !important; }
  .pc-pl60 { padding-left: 6rem !important; }
  .pc-mt65 { margin-top: 6.5rem !important; }
  .pc-mr65 { margin-right: 6.5rem !important; }
  .pc-mb65 { margin-bottom: 6.5rem !important; }
  .pc-ml65 { margin-left: 6.5rem !important; }
  .pc-pt65 { padding-top: 6.5rem !important; }
  .pc-pr65 { padding-right: 6.5rem !important; }
  .pc-pb65 { padding-bottom: 6.5rem !important; }
  .pc-pl65 { padding-left: 6.5rem !important; }
  .pc-mt70 { margin-top: 7rem !important; }
  .pc-mr70 { margin-right: 7rem !important; }
  .pc-mb70 { margin-bottom: 7rem !important; }
  .pc-ml70 { margin-left: 7rem !important; }
  .pc-pt70 { padding-top: 7rem !important; }
  .pc-pr70 { padding-right: 7rem !important; }
  .pc-pb70 { padding-bottom: 7rem !important; }
  .pc-pl70 { padding-left: 7rem !important; }
  .pc-mt75 { margin-top: 7.5rem !important; }
  .pc-mr75 { margin-right: 7.5rem !important; }
  .pc-mb75 { margin-bottom: 7.5rem !important; }
  .pc-ml75 { margin-left: 7.5rem !important; }
  .pc-pt75 { padding-top: 7.5rem !important; }
  .pc-pr75 { padding-right: 7.5rem !important; }
  .pc-pb75 { padding-bottom: 7.5rem !important; }
  .pc-pl75 { padding-left: 7.5rem !important; }
  .pc-mt80 { margin-top: 8rem !important; }
  .pc-mr80 { margin-right: 8rem !important; }
  .pc-mb80 { margin-bottom: 8rem !important; }
  .pc-ml80 { margin-left: 8rem !important; }
  .pc-pt80 { padding-top: 8rem !important; }
  .pc-pr80 { padding-right: 8rem !important; }
  .pc-pb80 { padding-bottom: 8rem !important; }
  .pc-pl80 { padding-left: 8rem !important; }
  .pc-mt85 { margin-top: 8.5rem !important; }
  .pc-mr85 { margin-right: 8.5rem !important; }
  .pc-mb85 { margin-bottom: 8.5rem !important; }
  .pc-ml85 { margin-left: 8.5rem !important; }
  .pc-pt85 { padding-top: 8.5rem !important; }
  .pc-pr85 { padding-right: 8.5rem !important; }
  .pc-pb85 { padding-bottom: 8.5rem !important; }
  .pc-pl85 { padding-left: 8.5rem !important; }
  .pc-mt90 { margin-top: 9rem !important; }
  .pc-mr90 { margin-right: 9rem !important; }
  .pc-mb90 { margin-bottom: 9rem !important; }
  .pc-ml90 { margin-left: 9rem !important; }
  .pc-pt90 { padding-top: 9rem !important; }
  .pc-pr90 { padding-right: 9rem !important; }
  .pc-pb90 { padding-bottom: 9rem !important; }
  .pc-pl90 { padding-left: 9rem !important; }
  .pc-mt95 { margin-top: 9.5rem !important; }
  .pc-mr95 { margin-right: 9.5rem !important; }
  .pc-mb95 { margin-bottom: 9.5rem !important; }
  .pc-ml95 { margin-left: 9.5rem !important; }
  .pc-pt95 { padding-top: 9.5rem !important; }
  .pc-pr95 { padding-right: 9.5rem !important; }
  .pc-pb95 { padding-bottom: 9.5rem !important; }
  .pc-pl95 { padding-left: 9.5rem !important; }
  .pc-mt100 { margin-top: 10rem !important; }
  .pc-mr100 { margin-right: 10rem !important; }
  .pc-mb100 { margin-bottom: 10rem !important; }
  .pc-ml100 { margin-left: 10rem !important; }
  .pc-pt100 { padding-top: 10rem !important; }
  .pc-pr100 { padding-right: 10rem !important; }
  .pc-pb100 { padding-bottom: 10rem !important; }
  .pc-pl100 { padding-left: 10rem !important; } }

@media screen and (max-width: 960px) { .sp-mt0 { margin-top: 0rem !important; }
  .sp-mr0 { margin-right: 0rem !important; }
  .sp-mb0 { margin-bottom: 0rem !important; }
  .sp-ml0 { margin-left: 0rem !important; }
  .sp-pt0 { padding-top: 0rem !important; }
  .sp-pr0 { padding-right: 0rem !important; }
  .sp-pb0 { padding-bottom: 0rem !important; }
  .sp-pl0 { padding-left: 0rem !important; }
  .sp-mt5 { margin-top: 0.5rem !important; }
  .sp-mr5 { margin-right: 0.5rem !important; }
  .sp-mb5 { margin-bottom: 0.5rem !important; }
  .sp-ml5 { margin-left: 0.5rem !important; }
  .sp-pt5 { padding-top: 0.5rem !important; }
  .sp-pr5 { padding-right: 0.5rem !important; }
  .sp-pb5 { padding-bottom: 0.5rem !important; }
  .sp-pl5 { padding-left: 0.5rem !important; }
  .sp-mt10 { margin-top: 1rem !important; }
  .sp-mr10 { margin-right: 1rem !important; }
  .sp-mb10 { margin-bottom: 1rem !important; }
  .sp-ml10 { margin-left: 1rem !important; }
  .sp-pt10 { padding-top: 1rem !important; }
  .sp-pr10 { padding-right: 1rem !important; }
  .sp-pb10 { padding-bottom: 1rem !important; }
  .sp-pl10 { padding-left: 1rem !important; }
  .sp-mt15 { margin-top: 1.5rem !important; }
  .sp-mr15 { margin-right: 1.5rem !important; }
  .sp-mb15 { margin-bottom: 1.5rem !important; }
  .sp-ml15 { margin-left: 1.5rem !important; }
  .sp-pt15 { padding-top: 1.5rem !important; }
  .sp-pr15 { padding-right: 1.5rem !important; }
  .sp-pb15 { padding-bottom: 1.5rem !important; }
  .sp-pl15 { padding-left: 1.5rem !important; }
  .sp-mt20 { margin-top: 2rem !important; }
  .sp-mr20 { margin-right: 2rem !important; }
  .sp-mb20 { margin-bottom: 2rem !important; }
  .sp-ml20 { margin-left: 2rem !important; }
  .sp-pt20 { padding-top: 2rem !important; }
  .sp-pr20 { padding-right: 2rem !important; }
  .sp-pb20 { padding-bottom: 2rem !important; }
  .sp-pl20 { padding-left: 2rem !important; }
  .sp-mt25 { margin-top: 2.5rem !important; }
  .sp-mr25 { margin-right: 2.5rem !important; }
  .sp-mb25 { margin-bottom: 2.5rem !important; }
  .sp-ml25 { margin-left: 2.5rem !important; }
  .sp-pt25 { padding-top: 2.5rem !important; }
  .sp-pr25 { padding-right: 2.5rem !important; }
  .sp-pb25 { padding-bottom: 2.5rem !important; }
  .sp-pl25 { padding-left: 2.5rem !important; }
  .sp-mt30 { margin-top: 3rem !important; }
  .sp-mr30 { margin-right: 3rem !important; }
  .sp-mb30 { margin-bottom: 3rem !important; }
  .sp-ml30 { margin-left: 3rem !important; }
  .sp-pt30 { padding-top: 3rem !important; }
  .sp-pr30 { padding-right: 3rem !important; }
  .sp-pb30 { padding-bottom: 3rem !important; }
  .sp-pl30 { padding-left: 3rem !important; }
  .sp-mt35 { margin-top: 3.5rem !important; }
  .sp-mr35 { margin-right: 3.5rem !important; }
  .sp-mb35 { margin-bottom: 3.5rem !important; }
  .sp-ml35 { margin-left: 3.5rem !important; }
  .sp-pt35 { padding-top: 3.5rem !important; }
  .sp-pr35 { padding-right: 3.5rem !important; }
  .sp-pb35 { padding-bottom: 3.5rem !important; }
  .sp-pl35 { padding-left: 3.5rem !important; }
  .sp-mt40 { margin-top: 4rem !important; }
  .sp-mr40 { margin-right: 4rem !important; }
  .sp-mb40 { margin-bottom: 4rem !important; }
  .sp-ml40 { margin-left: 4rem !important; }
  .sp-pt40 { padding-top: 4rem !important; }
  .sp-pr40 { padding-right: 4rem !important; }
  .sp-pb40 { padding-bottom: 4rem !important; }
  .sp-pl40 { padding-left: 4rem !important; }
  .sp-mt45 { margin-top: 4.5rem !important; }
  .sp-mr45 { margin-right: 4.5rem !important; }
  .sp-mb45 { margin-bottom: 4.5rem !important; }
  .sp-ml45 { margin-left: 4.5rem !important; }
  .sp-pt45 { padding-top: 4.5rem !important; }
  .sp-pr45 { padding-right: 4.5rem !important; }
  .sp-pb45 { padding-bottom: 4.5rem !important; }
  .sp-pl45 { padding-left: 4.5rem !important; }
  .sp-mt50 { margin-top: 5rem !important; }
  .sp-mr50 { margin-right: 5rem !important; }
  .sp-mb50 { margin-bottom: 5rem !important; }
  .sp-ml50 { margin-left: 5rem !important; }
  .sp-pt50 { padding-top: 5rem !important; }
  .sp-pr50 { padding-right: 5rem !important; }
  .sp-pb50 { padding-bottom: 5rem !important; }
  .sp-pl50 { padding-left: 5rem !important; }
  .sp-mt55 { margin-top: 5.5rem !important; }
  .sp-mr55 { margin-right: 5.5rem !important; }
  .sp-mb55 { margin-bottom: 5.5rem !important; }
  .sp-ml55 { margin-left: 5.5rem !important; }
  .sp-pt55 { padding-top: 5.5rem !important; }
  .sp-pr55 { padding-right: 5.5rem !important; }
  .sp-pb55 { padding-bottom: 5.5rem !important; }
  .sp-pl55 { padding-left: 5.5rem !important; }
  .sp-mt60 { margin-top: 6rem !important; }
  .sp-mr60 { margin-right: 6rem !important; }
  .sp-mb60 { margin-bottom: 6rem !important; }
  .sp-ml60 { margin-left: 6rem !important; }
  .sp-pt60 { padding-top: 6rem !important; }
  .sp-pr60 { padding-right: 6rem !important; }
  .sp-pb60 { padding-bottom: 6rem !important; }
  .sp-pl60 { padding-left: 6rem !important; }
  .sp-mt65 { margin-top: 6.5rem !important; }
  .sp-mr65 { margin-right: 6.5rem !important; }
  .sp-mb65 { margin-bottom: 6.5rem !important; }
  .sp-ml65 { margin-left: 6.5rem !important; }
  .sp-pt65 { padding-top: 6.5rem !important; }
  .sp-pr65 { padding-right: 6.5rem !important; }
  .sp-pb65 { padding-bottom: 6.5rem !important; }
  .sp-pl65 { padding-left: 6.5rem !important; }
  .sp-mt70 { margin-top: 7rem !important; }
  .sp-mr70 { margin-right: 7rem !important; }
  .sp-mb70 { margin-bottom: 7rem !important; }
  .sp-ml70 { margin-left: 7rem !important; }
  .sp-pt70 { padding-top: 7rem !important; }
  .sp-pr70 { padding-right: 7rem !important; }
  .sp-pb70 { padding-bottom: 7rem !important; }
  .sp-pl70 { padding-left: 7rem !important; }
  .sp-mt75 { margin-top: 7.5rem !important; }
  .sp-mr75 { margin-right: 7.5rem !important; }
  .sp-mb75 { margin-bottom: 7.5rem !important; }
  .sp-ml75 { margin-left: 7.5rem !important; }
  .sp-pt75 { padding-top: 7.5rem !important; }
  .sp-pr75 { padding-right: 7.5rem !important; }
  .sp-pb75 { padding-bottom: 7.5rem !important; }
  .sp-pl75 { padding-left: 7.5rem !important; }
  .sp-mt80 { margin-top: 8rem !important; }
  .sp-mr80 { margin-right: 8rem !important; }
  .sp-mb80 { margin-bottom: 8rem !important; }
  .sp-ml80 { margin-left: 8rem !important; }
  .sp-pt80 { padding-top: 8rem !important; }
  .sp-pr80 { padding-right: 8rem !important; }
  .sp-pb80 { padding-bottom: 8rem !important; }
  .sp-pl80 { padding-left: 8rem !important; }
  .sp-mt85 { margin-top: 8.5rem !important; }
  .sp-mr85 { margin-right: 8.5rem !important; }
  .sp-mb85 { margin-bottom: 8.5rem !important; }
  .sp-ml85 { margin-left: 8.5rem !important; }
  .sp-pt85 { padding-top: 8.5rem !important; }
  .sp-pr85 { padding-right: 8.5rem !important; }
  .sp-pb85 { padding-bottom: 8.5rem !important; }
  .sp-pl85 { padding-left: 8.5rem !important; }
  .sp-mt90 { margin-top: 9rem !important; }
  .sp-mr90 { margin-right: 9rem !important; }
  .sp-mb90 { margin-bottom: 9rem !important; }
  .sp-ml90 { margin-left: 9rem !important; }
  .sp-pt90 { padding-top: 9rem !important; }
  .sp-pr90 { padding-right: 9rem !important; }
  .sp-pb90 { padding-bottom: 9rem !important; }
  .sp-pl90 { padding-left: 9rem !important; }
  .sp-mt95 { margin-top: 9.5rem !important; }
  .sp-mr95 { margin-right: 9.5rem !important; }
  .sp-mb95 { margin-bottom: 9.5rem !important; }
  .sp-ml95 { margin-left: 9.5rem !important; }
  .sp-pt95 { padding-top: 9.5rem !important; }
  .sp-pr95 { padding-right: 9.5rem !important; }
  .sp-pb95 { padding-bottom: 9.5rem !important; }
  .sp-pl95 { padding-left: 9.5rem !important; }
  .sp-mt100 { margin-top: 10rem !important; }
  .sp-mr100 { margin-right: 10rem !important; }
  .sp-mb100 { margin-bottom: 10rem !important; }
  .sp-ml100 { margin-left: 10rem !important; }
  .sp-pt100 { padding-top: 10rem !important; }
  .sp-pr100 { padding-right: 10rem !important; }
  .sp-pb100 { padding-bottom: 10rem !important; }
  .sp-pl100 { padding-left: 10rem !important; } }

.col-0p { width: 0%; }

.col-1p { width: 1%; }

.col-2p { width: 2%; }

.col-3p { width: 3%; }

.col-4p { width: 4%; }

.col-5p { width: 5%; }

.col-6p { width: 6%; }

.col-7p { width: 7%; }

.col-8p { width: 8%; }

.col-9p { width: 9%; }

.col-10p { width: 10%; }

.col-11p { width: 11%; }

.col-12p { width: 12%; }

.col-13p { width: 13%; }

.col-14p { width: 14%; }

.col-15p { width: 15%; }

.col-16p { width: 16%; }

.col-17p { width: 17%; }

.col-18p { width: 18%; }

.col-19p { width: 19%; }

.col-20p { width: 20%; }

.col-21p { width: 21%; }

.col-22p { width: 22%; }

.col-23p { width: 23%; }

.col-24p { width: 24%; }

.col-25p { width: 25%; }

.col-26p { width: 26%; }

.col-27p { width: 27%; }

.col-28p { width: 28%; }

.col-29p { width: 29%; }

.col-30p { width: 30%; }

.col-31p { width: 31%; }

.col-32p { width: 32%; }

.col-33p { width: 33%; }

.col-34p { width: 34%; }

.col-35p { width: 35%; }

.col-36p { width: 36%; }

.col-37p { width: 37%; }

.col-38p { width: 38%; }

.col-39p { width: 39%; }

.col-40p { width: 40%; }

.col-41p { width: 41%; }

.col-42p { width: 42%; }

.col-43p { width: 43%; }

.col-44p { width: 44%; }

.col-45p { width: 45%; }

.col-46p { width: 46%; }

.col-47p { width: 47%; }

.col-48p { width: 48%; }

.col-49p { width: 49%; }

.col-50p { width: 50%; }

.col-51p { width: 51%; }

.col-52p { width: 52%; }

.col-53p { width: 53%; }

.col-54p { width: 54%; }

.col-55p { width: 55%; }

.col-56p { width: 56%; }

.col-57p { width: 57%; }

.col-58p { width: 58%; }

.col-59p { width: 59%; }

.col-60p { width: 60%; }

.col-61p { width: 61%; }

.col-62p { width: 62%; }

.col-63p { width: 63%; }

.col-64p { width: 64%; }

.col-65p { width: 65%; }

.col-66p { width: 66%; }

.col-67p { width: 67%; }

.col-68p { width: 68%; }

.col-69p { width: 69%; }

.col-70p { width: 70%; }

.col-71p { width: 71%; }

.col-72p { width: 72%; }

.col-73p { width: 73%; }

.col-74p { width: 74%; }

.col-75p { width: 75%; }

.col-76p { width: 76%; }

.col-77p { width: 77%; }

.col-78p { width: 78%; }

.col-79p { width: 79%; }

.col-80p { width: 80%; }

.col-81p { width: 81%; }

.col-82p { width: 82%; }

.col-83p { width: 83%; }

.col-84p { width: 84%; }

.col-85p { width: 85%; }

.col-86p { width: 86%; }

.col-87p { width: 87%; }

.col-88p { width: 88%; }

.col-89p { width: 89%; }

.col-90p { width: 90%; }

.col-91p { width: 91%; }

.col-92p { width: 92%; }

.col-93p { width: 93%; }

.col-94p { width: 94%; }

.col-95p { width: 95%; }

.col-96p { width: 96%; }

.col-97p { width: 97%; }

.col-98p { width: 98%; }

.col-99p { width: 99%; }

.col-100p { width: 100%; }

@media screen and (max-width: 960px) { .col-0p-sp { width: 0%; }
  .col-1p-sp { width: 1%; }
  .col-2p-sp { width: 2%; }
  .col-3p-sp { width: 3%; }
  .col-4p-sp { width: 4%; }
  .col-5p-sp { width: 5%; }
  .col-6p-sp { width: 6%; }
  .col-7p-sp { width: 7%; }
  .col-8p-sp { width: 8%; }
  .col-9p-sp { width: 9%; }
  .col-10p-sp { width: 10%; }
  .col-11p-sp { width: 11%; }
  .col-12p-sp { width: 12%; }
  .col-13p-sp { width: 13%; }
  .col-14p-sp { width: 14%; }
  .col-15p-sp { width: 15%; }
  .col-16p-sp { width: 16%; }
  .col-17p-sp { width: 17%; }
  .col-18p-sp { width: 18%; }
  .col-19p-sp { width: 19%; }
  .col-20p-sp { width: 20%; }
  .col-21p-sp { width: 21%; }
  .col-22p-sp { width: 22%; }
  .col-23p-sp { width: 23%; }
  .col-24p-sp { width: 24%; }
  .col-25p-sp { width: 25%; }
  .col-26p-sp { width: 26%; }
  .col-27p-sp { width: 27%; }
  .col-28p-sp { width: 28%; }
  .col-29p-sp { width: 29%; }
  .col-30p-sp { width: 30%; }
  .col-31p-sp { width: 31%; }
  .col-32p-sp { width: 32%; }
  .col-33p-sp { width: 33%; }
  .col-34p-sp { width: 34%; }
  .col-35p-sp { width: 35%; }
  .col-36p-sp { width: 36%; }
  .col-37p-sp { width: 37%; }
  .col-38p-sp { width: 38%; }
  .col-39p-sp { width: 39%; }
  .col-40p-sp { width: 40%; }
  .col-41p-sp { width: 41%; }
  .col-42p-sp { width: 42%; }
  .col-43p-sp { width: 43%; }
  .col-44p-sp { width: 44%; }
  .col-45p-sp { width: 45%; }
  .col-46p-sp { width: 46%; }
  .col-47p-sp { width: 47%; }
  .col-48p-sp { width: 48%; }
  .col-49p-sp { width: 49%; }
  .col-50p-sp { width: 50%; }
  .col-51p-sp { width: 51%; }
  .col-52p-sp { width: 52%; }
  .col-53p-sp { width: 53%; }
  .col-54p-sp { width: 54%; }
  .col-55p-sp { width: 55%; }
  .col-56p-sp { width: 56%; }
  .col-57p-sp { width: 57%; }
  .col-58p-sp { width: 58%; }
  .col-59p-sp { width: 59%; }
  .col-60p-sp { width: 60%; }
  .col-61p-sp { width: 61%; }
  .col-62p-sp { width: 62%; }
  .col-63p-sp { width: 63%; }
  .col-64p-sp { width: 64%; }
  .col-65p-sp { width: 65%; }
  .col-66p-sp { width: 66%; }
  .col-67p-sp { width: 67%; }
  .col-68p-sp { width: 68%; }
  .col-69p-sp { width: 69%; }
  .col-70p-sp { width: 70%; }
  .col-71p-sp { width: 71%; }
  .col-72p-sp { width: 72%; }
  .col-73p-sp { width: 73%; }
  .col-74p-sp { width: 74%; }
  .col-75p-sp { width: 75%; }
  .col-76p-sp { width: 76%; }
  .col-77p-sp { width: 77%; }
  .col-78p-sp { width: 78%; }
  .col-79p-sp { width: 79%; }
  .col-80p-sp { width: 80%; }
  .col-81p-sp { width: 81%; }
  .col-82p-sp { width: 82%; }
  .col-83p-sp { width: 83%; }
  .col-84p-sp { width: 84%; }
  .col-85p-sp { width: 85%; }
  .col-86p-sp { width: 86%; }
  .col-87p-sp { width: 87%; }
  .col-88p-sp { width: 88%; }
  .col-89p-sp { width: 89%; }
  .col-90p-sp { width: 90%; }
  .col-91p-sp { width: 91%; }
  .col-92p-sp { width: 92%; }
  .col-93p-sp { width: 93%; }
  .col-94p-sp { width: 94%; }
  .col-95p-sp { width: 95%; }
  .col-96p-sp { width: 96%; }
  .col-97p-sp { width: 97%; }
  .col-98p-sp { width: 98%; }
  .col-99p-sp { width: 99%; }
  .col-100p-sp { width: 100%; } }

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/** 1. Change the default font family in all browsers (opinionated). 2. Prevent adjustments of font size after orientation changes in IE and iOS. */
html { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/** Remove the margin in all browsers (opinionated). */
body { margin: 0; }

/* HTML5 display definitions ========================================================================== */
/** Add the correct display in IE 9-. 1. Add the correct display in Edge, IE, and Firefox. 2. Add the correct display in IE. */
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary { /* 1 */ display: block; }

/** Add the correct display in IE 9-. */
audio, canvas, progress, video { display: inline-block; }

/** Add the correct display in iOS 4-7. */
audio:not([controls]) { display: none; height: 0; }

/** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { vertical-align: baseline; }

/** Add the correct display in IE 10-. 1. Add the correct display in IE. */
template, [hidden] { display: none; }

/* Links ========================================================================== */
/** 1. Remove the gray background on active links in IE 10. 2. Remove gaps in links underline in iOS 8+ and Safari 8+. */
a { background-color: transparent; /* 1 */ -webkit-text-decoration-skip: objects; /* 2 */ }

/** Remove the outline on focused links when they are also active or hovered in all browsers (opinionated). */
a:active, a:hover { outline-width: 0; }

/* Text-level semantics ========================================================================== */
/** 1. Remove the bottom border in Firefox 39-. 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 2 */ }

/** Prevent the duplicate application of `bolder` by the next rule in Safari 6. */
b, strong { font-weight: inherit; }

/** Add the correct font weight in Chrome, Edge, and Safari. */
b, strong { font-weight: bolder; }

/** Add the correct font style in Android 4.3-. */
dfn { font-style: italic; }

/** Correct the font size and margin on `h1` elements within `section` and `article` contexts in Chrome, Firefox, and Safari. */
h1 { font-size: 2em; margin: 0.67em 0; }

/** Add the correct background and color in IE 9-. */
mark { background-color: #ff0; color: #000; }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* Embedded content ========================================================================== */
/** Remove the border on images inside links in IE 10-. */
img { border-style: none; }

/** Hide the overflow in IE. */
svg:not(:root) { overflow: hidden; }

/* Grouping content ========================================================================== */
/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, pre, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/** Add the correct margin in IE 8. */
figure { margin: 1em 40px; }

/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr { -moz-box-sizing: content-box; box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

/* Forms ========================================================================== */
/** 1. Change font properties to `inherit` in all browsers (opinionated). 2. Remove the margin in Firefox and Safari. */
button, input, select, textarea { font: inherit; /* 1 */ margin: 0; /* 2 */ }

/** Restore the font weight unset by the previous rule. */
optgroup { font-weight: bold; }

/** Show the overflow in IE. 1. Show the overflow in Edge. */
button, input { /* 1 */ overflow: visible; }

/** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
button, select { /* 1 */ text-transform: none; }

/** 1. Prevent a WebKit bug where (2) destroys native `audio` and `video` controls in Android 4. 2. Correct the inability to style clickable types in iOS and Safari. */
button, html [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; /* 2 */ }

/** Remove the inner border and padding in Firefox. */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

/** Restore the focus styles unset by the previous rule. */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

/** Change the border, margin, and padding in all browsers (opinionated). */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

/** 1. Correct the text wrapping in Edge and IE. 2. Correct the color inheritance from `fieldset` elements in IE. 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers. */
legend { -moz-box-sizing: border-box; box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }

/** Remove the default vertical scrollbar in IE. */
textarea { overflow: auto; }

/** 1. Add the correct box sizing in IE 10-. 2. Remove the padding in IE 10-. */
[type="checkbox"], [type="radio"] { -moz-box-sizing: border-box; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

/** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }

/** Remove the inner padding and cancel buttons in Chrome and Safari on OS X. */
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** Correct the text style of placeholders in Chrome, Edge, and Safari. */
::-webkit-input-placeholder { color: inherit; opacity: 0.54; }

/** 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to `inherit` in Safari. */
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

@font-face { font-family: 'DINPro'; src: url(../fonts/DINPro-Bold.woff2) format("woff2"), url(../fonts/DINPro-Bold.woff) format("woff"), url(../fonts/DINPro-Bold.ttf) format("truetype"); font-weight: bold; }

@font-face { font-family: 'DINPro'; src: url(../fonts/DINPro-Medium.woff2) format("woff2"), url(../fonts/DINPro-Medium.woff) format("woff"), url(../fonts/DINPro-Medium.ttf) format("truetype"); font-weight: 500; }

html { font-size: 62.5%; }

@media screen and (max-width: 960px) { html { font-size: -webkit-calc(100vw / 32); font-size: -moz-calc(100vw / 32); font-size: calc(100vw / 32); }
  html.disableScroll #wrapper { position: fixed; left: 0; top: 0; width: 100%; } }

@media screen and (min-width: 960px) and (max-width: 1280px) { html { font-size: -webkit-calc(100vw / 128); font-size: -moz-calc(100vw / 128); font-size: calc(100vw / 128); } }

/*@media only (min-width: 750px) and (max-width: 768px) {
    html {
        font-size: 1.6vw;
    }
}*/
body { font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", 'Hiragino Kaku Gothic Pro', "メイリオ", 'Meiryo', "ＭＳ Ｐゴシック", 'MS PGothic', Arial, sans-serif; font-style: normal; font-size: 16px; font-size: 1.6rem; line-height: 1.28571; color: #ffffff; background-color: #008342; word-break: normal; line-break: strict; font-weight: 400; letter-spacing: 0; }

@media screen and (max-width: 960px) { body.open { overflow-y: hidden; } }

a { color: inherit; text-decoration: none; -webkit-transition-duration: 0.3s; -moz-transition-duration: 0.3s; transition-duration: 0.3s; }

a:hover { text-decoration: none; }

@media screen and (min-width: 961px) { a:hover { opacity: .75; } }

a:focus { outline: none; text-decoration: none; }

ul, ol { margin: 0; padding: 0; }

ul li, ol li { list-style: none; }

h1, h2, h3, h4, h5, h6 { font-weight: 700; margin: 0; }

p { margin: 0px 0px 30px 0px; padding: 0; }

p:last-child { margin-bottom: 0px; }

@media screen and (max-width: 768px) { p { margin: 0 0 7.69231vw 0; } }

figure { margin: 0; padding: 0; line-height: 0; }

figure img { max-width: 100%; height: auto; }

input[type="submit"] { border: none; -webkit-transition-duration: 0.2s; -moz-transition-duration: 0.2s; transition-duration: 0.2s; }

table { border-spacing: inherit; border-collapse: collapse; }

dl, dt, dd { margin: 0; padding: 0; }

* { -moz-box-sizing: border-box; box-sizing: border-box; word-break: break-word; }

img { max-width: 100%; height: auto; vertical-align: middle; }

/* clearfix (micro) */
.clearfix:before, .clearfix:after { content: ' '; display: table; }

.clearfix:after { clear: both; }

/* For IE 6/7 only */
.clearfix { *zoom: 1; }

div, p { word-break: break-all; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, nav, picture { margin: 0; padding: 0; border: 0; vertical-align: baseline; }

ul, ol, li { list-style: none; }

.text-bold { font-weight: 700; }

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

.align-right { text-align: right; }

.c-white { color: #fff; }

.fw-bold { font-weight: bold; }

.fit { font-family: "object-fit: cover;"; height: 100%; width: 100%; object-fit: cover; }

#wrapper { margin: 0 auto; position: relative; overflow: hidden; background-color: #008342; }

#wrapper.open:after { position: absolute; content: ''; width: 100%; height: 100%; left: 0; top: 0; background: rgba(0, 0, 0, 0.16); z-index: 9; }

.container { max-width: 105rem; padding: 0 2.5rem; margin: 0 auto; }

#hambuger { width: 3.2rem; height: 1.2rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: column; flex-flow: column; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; z-index: 12; -moz-border-radius: 50%; border-radius: 50%; cursor: pointer; position: relative; }

#hambuger span { display: inline-block; font-size: 0.9rem; font-family: "Poppins", sans-serif; line-height: 1; font-weight: 500; color: #F4B13E; margin-top: 0.5rem; }

#hambuger.open span { display: none; }

#hambuger.open span.open { display: none; }

#hambuger.open span.close { display: inline-block; }

.nav-icon ul { position: relative; width: 100%; height: 100%; }

.nav-icon ul li { list-style: none; position: absolute; background: #fff; width: 100%; height: 0.1rem; left: 50%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease; }

.nav-icon ul li:nth-of-type(1) { top: 1%; }

.nav-icon ul li:nth-of-type(2) { top: 50%; }

.nav-icon ul li:nth-of-type(3) { top: 90%; }

.nav-icon ul li span { display: inline-block; }

.nav-icon.open ul { opacity: 1; visibility: visible; }

.nav-icon.open ul li { background: #000; }

.nav-icon.open ul li:nth-of-type(1) { width: 100%; top: 50%; -webkit-transform: translate(-50%, -50%) rotate(45deg); -moz-transform: translate(-50%, -50%) rotate(45deg); -ms-transform: translate(-50%, -50%) rotate(45deg); transform: translate(-50%, -50%) rotate(45deg); }

.nav-icon.open ul li:nth-of-type(3) { width: 100%; top: 50%; -webkit-transform: translate(-50%, -50%) rotate(-45deg); -moz-transform: translate(-50%, -50%) rotate(-45deg); -ms-transform: translate(-50%, -50%) rotate(-45deg); transform: translate(-50%, -50%) rotate(-45deg); }

.nav-icon.open ul li:nth-of-type(2) { opacity: 0; }

@media screen and (min-width: 961px) { .show_sp { display: none !important; }
  .show_pc { display: inherit; }
  .MissingWH { position: relative; overflow: hidden; height: 100%; width: 100%; }
  .MissingWH img { position: absolute; left: 0; top: 0; margin: 0; width: auto !important; display: none; height: auto; min-width: 100%; min-height: 100%; max-height: none; max-width: none; -webkit-transition: 0.5s ease-in-out; -moz-transition: 0.5s ease-in-out; transition: 0.5s ease-in-out; }
  /*a[href^=tel] { pointer-events: none; text-decoration: none; opacity: 1 !important; cursor: default !important; }*/
  #hambuger { display: none; } }

@media screen and (max-width: 960px) { body p { word-break: normal; line-break: strict; }
  .show_sp { display: inherit; }
  .show_pc { display: none !important; } }

.mode-txt { writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; -ms-writing-mode: vertical-rl; }

.txt_center { text-align: center; }

.js-view { opacity: 0; -webkit-transform: translate(0, 20px); -moz-transform: translate(0, 20px); -ms-transform: translate(0, 20px); transform: translate(0, 20px); }

.js-view.fadein { opacity: 1; -webkit-transition: opacity 500ms ease 0s, -webkit-transform 500ms ease 0s; transition: opacity 500ms ease 0s, -webkit-transform 500ms ease 0s; -moz-transition: transform 500ms ease 0s, opacity 500ms ease 0s, -moz-transform 500ms ease 0s; transition: transform 500ms ease 0s, opacity 500ms ease 0s; transition: transform 500ms ease 0s, opacity 500ms ease 0s, -webkit-transform 500ms ease 0s, -moz-transform 500ms ease 0s; -webkit-transform: translateY(0px); -moz-transform: translateY(0px); -ms-transform: translateY(0px); transform: translateY(0px); }

@-webkit-keyframes loading { from { -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to { -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@-moz-keyframes loading { from { -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
      transform: rotate(0deg); }
  to { -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
      transform: rotate(360deg); } }

@keyframes loading { from { -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
      transform: rotate(0deg); }
  to { -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
      transform: rotate(360deg); } }

@-webkit-keyframes AnimeBtnLink_Next { 0% { -webkit-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0); }
  30.99% { -webkit-transform: translate3d(70%, -50%, 0); transform: translate3d(70%, -50%, 0);
    opacity: 0; }
  70% { -webkit-transform: translate3d(-70%, -50%, 0); transform: translate3d(-70%, -50%, 0);
    opacity: 0; }
  to { -webkit-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0);
    opacity: 1; } }

@-moz-keyframes AnimeBtnLink_Next { 0% { -moz-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0); }
  30.99% { -moz-transform: translate3d(70%, -50%, 0); transform: translate3d(70%, -50%, 0);
    opacity: 0; }
  70% { -moz-transform: translate3d(-70%, -50%, 0); transform: translate3d(-70%, -50%, 0);
    opacity: 0; }
  to { -moz-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0);
    opacity: 1; } }

@keyframes AnimeBtnLink_Next { 0% { -webkit-transform: translate3d(-50%, -50%, 0); -moz-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0); }
  30.99% { -webkit-transform: translate3d(70%, -50%, 0); -moz-transform: translate3d(70%, -50%, 0); transform: translate3d(70%, -50%, 0);
    opacity: 0; }
  70% { -webkit-transform: translate3d(-70%, -50%, 0); -moz-transform: translate3d(-70%, -50%, 0); transform: translate3d(-70%, -50%, 0);
    opacity: 0; }
  to { -webkit-transform: translate3d(-50%, -50%, 0); -moz-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0);
    opacity: 1; } }

@-webkit-keyframes arw_r { 0% { margin-right: 0; }
  50% { opacity: 0;
    margin-right: -1rem; }
  50.1% { opacity: 1;
    margin-right: 1rem; }
  100% { opacity: 1;
    margin-right: 0; } }

@-moz-keyframes arw_r { 0% { margin-right: 0; }
  50% { opacity: 0;
    margin-right: -1rem; }
  50.1% { opacity: 1;
    margin-right: 1rem; }
  100% { opacity: 1;
    margin-right: 0; } }

@keyframes arw_r { 0% { margin-right: 0; }
  50% { opacity: 0;
    margin-right: -1rem; }
  50.1% { opacity: 1;
    margin-right: 1rem; }
  100% { opacity: 1;
    margin-right: 0; } }

.js-ttl { -webkit-transform: translateY(100%); -moz-transform: translateY(100%); -ms-transform: translateY(100%); transform: translateY(100%); -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: -webkit-transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19); -moz-transition: transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19), -moz-transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19), -moz-transform 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.js-ttl.active { -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); -webkit-transition: -webkit-transform 1.25s cubic-bezier(0.37, 0.16, 0.12, 1); transition: -webkit-transform 1.25s cubic-bezier(0.37, 0.16, 0.12, 1); -moz-transition: transform 1.25s cubic-bezier(0.37, 0.16, 0.12, 1), -moz-transform 1.25s cubic-bezier(0.37, 0.16, 0.12, 1); transition: transform 1.25s cubic-bezier(0.37, 0.16, 0.12, 1); transition: transform 1.25s cubic-bezier(0.37, 0.16, 0.12, 1), -webkit-transform 1.25s cubic-bezier(0.37, 0.16, 0.12, 1), -moz-transform 1.25s cubic-bezier(0.37, 0.16, 0.12, 1); }

.page-main { position: relative; z-index: 4; overflow: hidden; }

.anchor { display: block; padding-top: 0rem; margin-top: 0rem; visibility: hidden; }

@media screen and (max-width: 960px) { .anchor { padding-top: 0; margin-top: 0; } }

/* Loading
-------------------------------*/
.loading { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #0582D5; z-index: 1000000; }

.loading__logo, .loading__spinner { position: absolute; -webkit-transition: opacity 0.8s ease-in; -moz-transition: opacity 0.8s ease-in; transition: opacity 0.8s ease-in; text-align: center; top: 50%; left: 50%; margin-top: -2rem; }

.loading__logo { -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 20rem; text-align: center; }

@media screen and (max-width: 960px) { .loading__logo { width: 51.28205vw; } }

.loading__logo img { min-width: 100%; }

.loading__logo .logo { width: 14.2rem; height: 9.6rem; }

.loading__logo .logo-text { margin-top: 3rem; }

.loading__spinner { width: 6rem; margin-top: 3rem; margin-left: -3rem; }

@media screen and (max-width: 768px) { .loading__spinner { margin-top: 3rem; } }

.loading__spinner > div { width: 1rem; height: 1rem; background: #fff; -moz-border-radius: 100%; border-radius: 100%; display: inline-block; -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both; -moz-animation: sk-bouncedelay 1.4s infinite ease-in-out both; animation: sk-bouncedelay 1.4s infinite ease-in-out both; }

.loading__spinner .bounce1 { -webkit-animation-delay: -0.32s; -moz-animation-delay: -0.32s; animation-delay: -0.32s; }

.loading__spinner .bounce2 { -webkit-animation-delay: -0.16s; -moz-animation-delay: -0.16s; animation-delay: -0.16s; }

.loading.is-show .loading__logo, .loading.is-show .loading__spinner { z-index: 15001; opacity: 1; }

@-webkit-keyframes sk-bouncedelay { 0%, 80%, 100% { -webkit-transform: scale(0);
    transform: scale(0); }
  40% { -webkit-transform: scale(1);
    transform: scale(1); } }

@-moz-keyframes sk-bouncedelay { 0%, 80%, 100% { -webkit-transform: scale(0);
    -moz-transform: scale(0);
      transform: scale(0); }
  40% { -webkit-transform: scale(1);
    -moz-transform: scale(1);
      transform: scale(1); } }

@keyframes sk-bouncedelay { 0%, 80%, 100% { -webkit-transform: scale(0);
    -moz-transform: scale(0);
      transform: scale(0); }
  40% { -webkit-transform: scale(1);
    -moz-transform: scale(1);
      transform: scale(1); } }

/*----------------------------------------------------------
    keyframes
----------------------------------------------------------*/
@-webkit-keyframes menu { 0% { -webkit-transform: translateX(0); transform: translateX(0); }
  50% { -webkit-transform: translateX(100%); transform: translateX(100%); }
  50.001% { -webkit-transform: translateX(-100%); transform: translateX(-100%); }
  100% { -webkit-transform: translateX(0); transform: translateX(0); } }
@-moz-keyframes menu { 0% { -moz-transform: translateX(0); transform: translateX(0); }
  50% { -moz-transform: translateX(100%); transform: translateX(100%); }
  50.001% { -moz-transform: translateX(-100%); transform: translateX(-100%); }
  100% { -moz-transform: translateX(0); transform: translateX(0); } }
@keyframes menu { 0% { -webkit-transform: translateX(0); -moz-transform: translateX(0); transform: translateX(0); }
  50% { -webkit-transform: translateX(100%); -moz-transform: translateX(100%); transform: translateX(100%); }
  50.001% { -webkit-transform: translateX(-100%); -moz-transform: translateX(-100%); transform: translateX(-100%); }
  100% { -webkit-transform: translateX(0); -moz-transform: translateX(0); transform: translateX(0); } }

@-webkit-keyframes openMenu { 0% { -webkit-transform: translateY(120%); transform: translateY(120%); }
  40% { -webkit-transform: translateY(120%); transform: translateY(120%); }
  100% { -webkit-transform: translateY(0); transform: translateY(0); } }

@-moz-keyframes openMenu { 0% { -moz-transform: translateY(120%); transform: translateY(120%); }
  40% { -moz-transform: translateY(120%); transform: translateY(120%); }
  100% { -moz-transform: translateY(0); transform: translateY(0); } }

@keyframes openMenu { 0% { -webkit-transform: translateY(120%); -moz-transform: translateY(120%); transform: translateY(120%); }
  40% { -webkit-transform: translateY(120%); -moz-transform: translateY(120%); transform: translateY(120%); }
  100% { -webkit-transform: translateY(0); -moz-transform: translateY(0); transform: translateY(0); } }

@-webkit-keyframes closeMenu { 0% { -webkit-transform: translateY(0); transform: translateY(0); }
  60% { -webkit-transform: translateY(-120%); transform: translateY(-120%); }
  100% { -webkit-transform: translateY(-120%); transform: translateY(-120%); } }

@-moz-keyframes closeMenu { 0% { -moz-transform: translateY(0); transform: translateY(0); }
  60% { -moz-transform: translateY(-120%); transform: translateY(-120%); }
  100% { -moz-transform: translateY(-120%); transform: translateY(-120%); } }

@keyframes closeMenu { 0% { -webkit-transform: translateY(0); -moz-transform: translateY(0); transform: translateY(0); }
  60% { -webkit-transform: translateY(-120%); -moz-transform: translateY(-120%); transform: translateY(-120%); }
  100% { -webkit-transform: translateY(-120%); -moz-transform: translateY(-120%); transform: translateY(-120%); } }

@-webkit-keyframes scrollDown { 0% { -webkit-transform: scaleY(0); transform: scaleY(0);
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0; }
  50% { -webkit-transform-origin: 100% 0; transform-origin: 100% 0;
    -webkit-transform: scaleY(1);
            transform: scaleY(1); }
  50.1% { -webkit-transform: scaleY(1); transform: scaleY(1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%; }
  100% { -webkit-transform: scaleY(0); transform: scaleY(0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%; } }

@-moz-keyframes scrollDown { 0% { -moz-transform: scaleY(0); transform: scaleY(0);
    -moz-transform-origin: 100% 0;
         transform-origin: 100% 0; }
  50% { -moz-transform-origin: 100% 0; transform-origin: 100% 0;
    -moz-transform: scaleY(1);
         transform: scaleY(1); }
  50.1% { -moz-transform: scaleY(1); transform: scaleY(1);
    -moz-transform-origin: 0 100%;
         transform-origin: 0 100%; }
  100% { -moz-transform: scaleY(0); transform: scaleY(0);
    -moz-transform-origin: 0 100%;
         transform-origin: 0 100%; } }

@keyframes scrollDown { 0% { -webkit-transform: scaleY(0); -moz-transform: scaleY(0); transform: scaleY(0);
    -webkit-transform-origin: 100% 0;
       -moz-transform-origin: 100% 0;
            transform-origin: 100% 0; }
  50% { -webkit-transform-origin: 100% 0; -moz-transform-origin: 100% 0; transform-origin: 100% 0;
    -webkit-transform: scaleY(1);
       -moz-transform: scaleY(1);
            transform: scaleY(1); }
  50.1% { -webkit-transform: scaleY(1); -moz-transform: scaleY(1); transform: scaleY(1);
    -webkit-transform-origin: 0 100%;
       -moz-transform-origin: 0 100%;
            transform-origin: 0 100%; }
  100% { -webkit-transform: scaleY(0); -moz-transform: scaleY(0); transform: scaleY(0);
    -webkit-transform-origin: 0 100%;
       -moz-transform-origin: 0 100%;
            transform-origin: 0 100%; } }

.js-effect { -webkit-transition: opacity 0.5s, -webkit-transform 0.5s; transition: opacity 0.5s, -webkit-transform 0.5s; -moz-transition: transform 0.5s, opacity 0.5s, -moz-transform 0.5s; transition: transform 0.5s, opacity 0.5s; transition: transform 0.5s, opacity 0.5s, -webkit-transform 0.5s, -moz-transform 0.5s; }

.delay_01 { -webkit-transition-delay: 0.1s; -moz-transition-delay: 0.1s; transition-delay: 0.1s; }

.delay_02 { -webkit-transition-delay: 0.2s; -moz-transition-delay: 0.2s; transition-delay: 0.2s; }

.delay_03 { -webkit-transition-delay: 0.3s; -moz-transition-delay: 0.3s; transition-delay: 0.3s; }

.delay_04 { -webkit-transition-delay: 0.4s; -moz-transition-delay: 0.4s; transition-delay: 0.4s; }

.delay_05 { -webkit-transition-delay: 0.5s; -moz-transition-delay: 0.5s; transition-delay: 0.5s; }

.delay_06 { -webkit-transition-delay: 0.6s; -moz-transition-delay: 0.6s; transition-delay: 0.6s; }

.delay_07 { -webkit-transition-delay: 0.7s; -moz-transition-delay: 0.7s; transition-delay: 0.7s; }

.delay_08 { -webkit-transition-delay: 0.8s; -moz-transition-delay: 0.8s; transition-delay: 0.8s; }

.delay_09 { -webkit-transition-delay: 0.9s; -moz-transition-delay: 0.9s; transition-delay: 0.9s; }

.delay_10 { -webkit-transition-delay: 1s; -moz-transition-delay: 1s; transition-delay: 1s; }

.delay_11 { -webkit-transition-delay: 1.1s; -moz-transition-delay: 1.1s; transition-delay: 1.1s; }

.delay_12 { -webkit-transition-delay: 1.2s; -moz-transition-delay: 1.2s; transition-delay: 1.2s; }

.delay_13 { -webkit-transition-delay: 1.3s; -moz-transition-delay: 1.3s; transition-delay: 1.3s; }

.delay_14 { -webkit-transition-delay: 1.4s; -moz-transition-delay: 1.4s; transition-delay: 1.4s; }

.delay_15 { -webkit-transition-delay: 1.5s; -moz-transition-delay: 1.5s; transition-delay: 1.5s; }

.fadeIn { opacity: 0; }

.fadeIn.active { opacity: 1; }

.slideUp { -webkit-transform: translate3d(0, 10rem, 0); -moz-transform: translate3d(0, 10rem, 0); transform: translate3d(0, 10rem, 0); opacity: 0; }

.slideUp.active { opacity: 1; -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.slideToRight { -webkit-transform: translate3d(10rem, 0, 0); -moz-transform: translate3d(10rem, 0, 0); transform: translate3d(10rem, 0, 0); opacity: 0; }

.slideToRight.active { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); opacity: 1; }

.fadeInUp { opacity: 0; -webkit-transform: translate(0, 5rem); -moz-transform: translate(0, 5rem); -ms-transform: translate(0, 5rem); transform: translate(0, 5rem); }

.fadeInUp.active { opacity: 1; -webkit-transform: translate(0, 0); -moz-transform: translate(0, 0); -ms-transform: translate(0, 0); transform: translate(0, 0); }

/** header area
====================================== **/
.page-header { position: absolute; left: 0; top: 0; width: 100%; z-index: 9; -webkit-transition: all 0.4s ease-in-out; -moz-transition: all 0.4s ease-in-out; transition: all 0.4s ease-in-out; }

@media screen and (max-width: 960px) { .page-header { padding: 0 !important; } }

.page-header .hd-inner { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; padding: 4.8rem 4.5rem 4.8rem 12rem; }

@media screen and (max-width: 960px) { .page-header .hd-inner { position: relative; z-index: 999; padding: 0; } }

.page-header .hd-left { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -moz-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }

@media screen and (max-width: 960px) { .page-header .hd-left { margin-left: 0; padding-left: 2.2rem; position: relative; z-index: 999; } }

@media screen and (max-width: 960px) { .page-header .hd-right { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; position: relative; z-index: 999; } }

.page-header .hd-right .btn-line { width: 37.8rem; height: 5.3rem; background: #ffffff; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; font-size: 2rem; font-weight: bold; line-height: -webkit-calc(22.2 / 20); line-height: -moz-calc(22.2 / 20); line-height: calc(22.2 / 20); color: #008342; letter-spacing: 0.06em; -moz-border-radius: 2.8rem; border-radius: 2.8rem; padding: 0 5rem 0 10.3rem; -webkit-transition: 0.3s all; -moz-transition: 0.3s all; transition: 0.3s all; position: relative; }

.page-header .hd-right .btn-line::before { content: ""; position: absolute; top: 50%; left: 5.5rem; width: 3.5rem; height: 3.4rem; background: url(../img/icon_btn_line.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.page-header .hd-right .btn-line:hover { opacity: 0.75; }

@media screen and (max-width: 960px) { .page-header { padding: 5.33vw; background: transparent; border-bottom: none; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  .page-header .container { padding: 0; } }

@media screen and (max-width: 960px) and (min-width: 961px) { .page-header.is_active { background: #fff; border-bottom: 1px solid #E0E0E0; } }

@media screen and (max-width: 960px) and (max-width: 960px) { .page-header.is_active .nav-icon ul li { background: #000; } }

.page-header .site-logo { margin-right: 17.2rem; }

@media screen and (max-width: 960px) { .page-header .site-logo { margin-right: 0; }
  .page-header .site-logo a { width: 13.2rem; height: 2rem; display: inline-block; } }

.page-header .p-link { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; }

@media screen and (max-width: 960px) { .page-header .p-link { -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: column; flex-flow: column; margin-top: 4rem; } }

.page-header .p-link li + li { margin-left: 1rem; }

@media screen and (max-width: 960px) { .page-header .p-link li + li { margin-left: 0; margin-top: 1.2rem; } }

@media screen and (max-width: 960px) { .page-header.open .site-logo .svg path { fill: #000 !important; }
  .page-header.open .site-logo .svg rect { fill: #000 !important; } }

@media screen and (min-width: 961px) { .header-backdrop { position: fixed; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(25, 27, 31, 0.3); pointer-events: none; }
  .header-backdrop.header-backdrop_visible { -webkit-transition: .3s ease-out; -moz-transition: .3s ease-out; transition: .3s ease-out; }
  .header-backdrop:not(.header-backdrop_visible) { visibility: hidden; opacity: 0; -webkit-transition: .25s ease-out; -moz-transition: .25s ease-out; transition: .25s ease-out; } }

@media screen and (min-width: 961px) { .home .page-header.is_active { background: #fff; border-bottom: 1px solid #E0E0E0; padding: 1rem -webkit-calc(24/1280 * 100%) 1rem; padding: 1rem -moz-calc(24/1280 * 100%) 1rem; padding: 1rem calc(24/1280 * 100%) 1rem; } }

.home .page-header.is_active .site-description { -webkit-transform: translateY(-100%); -moz-transform: translateY(-100%); -ms-transform: translateY(-100%); transform: translateY(-100%); }

.home .page-header.is_active .menu li a { color: #000000; }

@media screen and (max-width: 960px) { .home .page-header.open .site-logo .svg path { fill: #000 !important; }
  .home .page-header.open .site-logo .svg rect { fill: #000 !important; } }

.home .page-header .site-logo.logo-sub { display: none; }

.g-nav { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; width: -webkit-calc(100% - 11rem); width: -moz-calc(100% - 11rem); width: calc(100% - 11rem); margin-left: auto; }

@media screen and (max-width: 960px) { .g-nav { -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: column; flex-flow: column; -webkit-box-pack: start; -moz-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; background: transparent; position: fixed; left: 0; top: 0; right: 0; bottom: 0; width: 100%; height: 100%; padding: 3.6rem 2.5rem 0; overflow-y: auto; opacity: 0; visibility: hidden; -webkit-transition: all .3s ease-out; -moz-transition: all .3s ease-out; transition: all .3s ease-out; }
  .g-nav.open { opacity: 1; visibility: visible; } }

@media screen and (max-width: 960px) { .g-wrap { position: fixed; width: 100%; height: 0; top: 0; left: 0; overflow: hidden; -webkit-transition: 0s height; -moz-transition: 0s height; transition: 0s height; -webkit-transition-delay: 1s; -moz-transition-delay: 1s; transition-delay: 1s; display: block !important; z-index: 99; }
  .g-wrap::before { content: ""; position: absolute; top: 0; left: 0; right: 0; width: 100%; height: 46.5rem; opacity: 0; background: #008342; -webkit-transition: opacity 0.5s ease-in-out; -moz-transition: opacity 0.5s ease-in-out; transition: opacity 0.5s ease-in-out; } }

.g-wrap.open::before { opacity: 1; }

.g-wrap.open .menu li { -webkit-transition-delay: 0.7s; -moz-transition-delay: 0.7s; transition-delay: 0.7s; opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.g-wrap.open .menu li:nth-child(1) { -webkit-transition-delay: 570ms; -moz-transition-delay: 570ms; transition-delay: 570ms; }

.g-wrap.open .menu li:nth-child(2) { -webkit-transition-delay: 640ms; -moz-transition-delay: 640ms; transition-delay: 640ms; }

.g-wrap.open .menu li:nth-child(3) { -webkit-transition-delay: 710ms; -moz-transition-delay: 710ms; transition-delay: 710ms; }

.g-wrap.open .menu li:nth-child(4) { -webkit-transition-delay: 780ms; -moz-transition-delay: 780ms; transition-delay: 780ms; }

.g-wrap.open .menu li:nth-child(5) { -webkit-transition-delay: 850ms; -moz-transition-delay: 850ms; transition-delay: 850ms; }

.g-wrap.open .menu li:nth-child(6) { -webkit-transition-delay: 920ms; -moz-transition-delay: 920ms; transition-delay: 920ms; }

.g-wrap.open .menu li:nth-child(7) { -webkit-transition-delay: 990ms; -moz-transition-delay: 990ms; transition-delay: 990ms; }

.g-wrap.open .menu li:nth-child(8) { -webkit-transition-delay: 1060ms; -moz-transition-delay: 1060ms; transition-delay: 1060ms; }

.g-wrap.open .logo-sp { -webkit-transition-delay: 1s; -moz-transition-delay: 1s; transition-delay: 1s; opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.g-wrap.open .btn-close { -webkit-transition-delay: 1.2s; -moz-transition-delay: 1.2s; transition-delay: 1.2s; height: 4vw; }

.js-open .g-wrap { height: 100%; -webkit-transition: 0s height; -moz-transition: 0s height; transition: 0s height; background: #ffffff; }

.g-list_links { margin: 1.8rem auto 0; -webkit-transition-delay: 0.7s; -moz-transition-delay: 0.7s; transition-delay: 0.7s; }

.g-list_links a { width: 24rem; height: 6.7rem; margin: 0 auto; background: #ffffff; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; font-size: 1.3rem; font-weight: bold; line-height: -webkit-calc(32 / 30); line-height: -moz-calc(32 / 30); line-height: calc(32 / 30); color: #008342; letter-spacing: 0.05em; -moz-border-radius: -moz-calc(7.5rem / 2); border-radius: -webkit-calc(7.5rem / 2); border-radius: calc(7.5rem / 2); padding: 0 2.5rem 0 6.8rem; position: relative; }

.g-list_links a::before { content: ""; position: absolute; top: 50%; left: 2.7rem; width: 3.3rem; height: 3.1rem; background: url(../img/icon_btn_line.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.g-cta .tel { font-family: "DINPro"; font-size: -webkit-calc(3.559rem / 2); font-size: -moz-calc(3.559rem / 2); font-size: calc(3.559rem / 2); font-weight: 500; line-height: 1; letter-spacing: 0.05em; text-align: center; margin-top: 2.4rem; -webkit-transition-delay: 0.8s; -moz-transition-delay: 0.8s; transition-delay: 0.8s; }

.g-cta .tel > span { font-size: -webkit-calc(4.858rem / 2); font-size: -moz-calc(4.858rem / 2); font-size: calc(4.858rem / 2); font-weight: bold; }

.g-cta .fax { font-family: "DINPro"; font-size: -webkit-calc(2.847rem / 2); font-size: -moz-calc(2.847rem / 2); font-size: calc(2.847rem / 2); font-weight: 500; letter-spacing: 0.05em; text-align: center; margin-top: 0.4rem; -webkit-transition-delay: 0.9s; -moz-transition-delay: 0.9s; transition-delay: 0.9s; }

.g-cta .address { font-size: -webkit-calc(2.403rem / 2); font-size: -moz-calc(2.403rem / 2); font-size: calc(2.403rem / 2); font-weight: bold; letter-spacing: 0.1em; line-height: -webkit-calc(35.59 / 24.03); line-height: -moz-calc(35.59 / 24.03); line-height: calc(35.59 / 24.03); text-align: center; margin-top: 1.3rem; -webkit-transition-delay: 1s; -moz-transition-delay: 1s; transition-delay: 1s; }

.g-cta .copyright { font-family: "hiragino-kaku-gothic-pron", sans-serif; font-weight: 300; font-size: 0.9rem; line-height: -webkit-calc(30 / 18); line-height: -moz-calc(30 / 18); line-height: calc(30 / 18); letter-spacing: 0.1em; text-align: center; margin-top: 2.4rem; -webkit-transition-delay: 1.1s; -moz-transition-delay: 1.1s; transition-delay: 1.1s; }

.menu { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin-top: 0.8rem; }

@media screen and (max-width: 960px) { .menu { -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: column; flex-flow: column; margin-top: 0; padding-left: 1rem; } }

@media screen and (max-width: 960px) { .menu li { padding: 1.1rem 0 1rem; } }

.menu li + li { margin-left: 3.4rem; }

@media screen and (max-width: 960px) { .menu li + li { margin-left: 0; } }

.menu li a { height: 100%; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; font-family: "Roboto Slab", serif; font-size: 1.6rem; line-height: -webkit-calc(46.14 / 16); line-height: -moz-calc(46.14 / 16); line-height: calc(46.14 / 16); color: #ffffff; mix-blend-mode: difference; font-weight: bold; position: relative; letter-spacing: 0.07em; -webkit-transition: opacity 0.3s ease-in-out; -moz-transition: opacity 0.3s ease-in-out; transition: opacity 0.3s ease-in-out; }

.menu li a:hover { opacity: 0.75; }

@media screen and (max-width: 960px) { .menu li a { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; }
  .menu li a .menu_en { font-size: -webkit-calc(3.5rem / 2); font-size: -moz-calc(3.5rem / 2); font-size: calc(3.5rem / 2); line-height: -webkit-calc(46 / 35); line-height: -moz-calc(46 / 35); line-height: calc(46 / 35); letter-spacing: 0.075em; position: relative; padding-right: 1.4rem; margin-right: 1.4rem; }
  .menu li a .menu_en::after { content: ""; position: absolute; top: 50%; right: 0; width: 0.1rem; height: 1.4rem; background: #ffffff; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
  .menu li a .menu_jp { font-size: 1rem; line-height: -webkit-calc(35 / 20); line-height: -moz-calc(35 / 20); line-height: calc(35 / 20); letter-spacing: -0.02em; } }

.openbtn1 { position: fixed; /*ボタン内側の基点となるためrelativeを指定*/ top: 3.3rem; right: 2.5rem; background: transparent; cursor: pointer; width: 2.5rem; height: 1.5rem; }

/*ボタン内側*/
.openbtn1 span { display: inline-block; -webkit-transition: all .4s; -moz-transition: all .4s; transition: all .4s; /*アニメーションの設定*/ position: absolute; left: 0; height: 0.2rem; background: #008342; width: 100%; }

.openbtn1.is-color span { background: #ffffff; }

.openbtn1 span:nth-of-type(1) { top: 0; }

.openbtn1 span:nth-of-type(2) { top: 0.8rem; }

.openbtn1 span:nth-of-type(3) { top: 1.6rem; }

/*activeクラスが付与されると線が回転して×に*/
.openbtn1.active { width: 1.5rem; height: 1.5rem; top: 2.2rem; right: 2.1rem; }

.openbtn1.active span:nth-of-type(1) { top: 0; left: 0; -webkit-transform: translateY(0.6rem) rotate(-45deg); -moz-transform: translateY(0.6rem) rotate(-45deg); -ms-transform: translateY(0.6rem) rotate(-45deg); transform: translateY(0.6rem) rotate(-45deg); width: 2rem; background: #ffffff; }

.openbtn1.active span:nth-of-type(2) { opacity: 0; /*真ん中の線は透過*/ }

.openbtn1.active span:nth-of-type(3) { top: 1.2rem; left: 0; -webkit-transform: translateY(-0.6rem) rotate(45deg); -moz-transform: translateY(-0.6rem) rotate(45deg); -ms-transform: translateY(-0.6rem) rotate(45deg); transform: translateY(-0.6rem) rotate(45deg); width: 2rem; background: #ffffff; }

/** footer
======================================= **/
.footer { padding: 4.5rem 0 5.8rem; }

@media screen and (max-width: 960px) { .footer { padding: 2.3rem 0 6.1rem; } }

.footer .footer-cr { text-align: center; }

.footer .footer-cr .copyright { font-family: "hiragino-kaku-gothic-pron", sans-serif; font-weight: 300; font-size: 1.2rem; line-height: -webkit-calc(30 / 12); line-height: -moz-calc(30 / 12); line-height: calc(30 / 12); letter-spacing: 0.1em; text-align: center; }

@media screen and (max-width: 960px) { .footer .footer-cr .copyright { font-size: 0.9rem; line-height: -webkit-calc(30 / 18); line-height: -moz-calc(30 / 18); line-height: calc(30 / 18); } }

/** home
======================================= **/
@-webkit-keyframes header_animate { 0% { opacity: 0;
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  25% { opacity: 0; }
  100% { opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); } }
@-moz-keyframes header_animate { 0% { opacity: 0;
    -moz-transform: scale(1.1);
         transform: scale(1.1); }
  25% { opacity: 0; }
  100% { opacity: 1;
    -moz-transform: scale(1);
         transform: scale(1); } }
@keyframes header_animate { 0% { opacity: 0;
    -webkit-transform: scale(1.1);
       -moz-transform: scale(1.1);
            transform: scale(1.1); }
  25% { opacity: 0; }
  100% { opacity: 1;
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
            transform: scale(1); } }

.main-visual { padding-top: 19.3rem; padding-bottom: 21.8rem; position: relative; }

@media screen and (max-width: 960px) { .main-visual { padding: 0; } }

.main-visual .mv_inner { position: relative; }

.main-visual .mv_copyright { position: fixed; top: 41rem; left: -11.5rem; font-size: 1.9rem; font-family: "Roboto Slab", serif; font-weight: bold; line-height: -webkit-calc(33 / 19); line-height: -moz-calc(33 / 19); line-height: calc(33 / 19); letter-spacing: 0.12em; -webkit-transform: rotate(-90deg); -moz-transform: rotate(-90deg); -ms-transform: rotate(-90deg); transform: rotate(-90deg); z-index: 9; }

@media screen and (max-width: 960px) { .main-visual .mv_copyright { position: absolute; top: 3.4rem; left: 2.5rem; font-size: -webkit-calc(1.9rem / 2); font-size: -moz-calc(1.9rem / 2); font-size: calc(1.9rem / 2); -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); color: #008342; z-index: 999; } }

.main-visual .mv_box { max-width: 102.2rem; margin: 0 auto; padding-left: 1.1rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; position: relative; }

@media screen and (max-width: 960px) { .main-visual .mv_box { max-width: 100%; padding-left: 0; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; } }

.main-visual .mv_box::before { content: ""; position: absolute; bottom: -10.3rem; right: -1rem; width: 80.7rem; height: 16rem; background: url(../img/bg_city_01_pc.png) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .main-visual .mv_box::before { bottom: 11.4rem; right: 1.3rem; width: 29.5rem; height: -webkit-calc(11.7rem / 2); height: -moz-calc(11.7rem / 2); height: calc(11.7rem / 2); background: url(../img/bg_city_01_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; } }

.main-visual .mv_box-content { background: #ffffff; -moz-border-radius: 1.2rem 2.5rem 2.5rem 2.5rem; border-radius: 1.2rem 2.5rem 2.5rem 2.5rem; padding: 5.1rem 0; width: 40rem; height: 40rem; }

@media screen and (max-width: 960px) { .main-visual .mv_box-content { width: 100%; height: 50.8rem; -moz-border-radius: 0; border-radius: 0; padding-top: 9rem; } }

.main-visual .mv_box-content .logo { width: 11rem; margin: 0 auto; }

@media screen and (max-width: 960px) { .main-visual .mv_box-content .logo { width: -webkit-calc(29.1rem / 2); width: -moz-calc(29.1rem / 2); width: calc(29.1rem / 2); } }

.main-visual .mv_box-content .mv_text { font-size: 1.4rem; font-weight: bold; line-height: 1; color: #008342; text-align: center; margin-top: 1.3rem; }

@media screen and (max-width: 960px) { .main-visual .mv_box-content .mv_text { font-size: 1.6rem; line-height: -webkit-calc(42 / 32); line-height: -moz-calc(42 / 32); line-height: calc(42 / 32); margin-top: 1.8rem; letter-spacing: -0.05em; } }

.main-visual .mv_box-content .consultation { font-family: "vdl-logona", sans-serif; font-weight: 400; font-size: 3rem; line-height: 1; color: #ffffff; letter-spacing: 0.2em; width: 24rem; height: 6rem; margin: 0 auto; background: #008342; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -moz-border-radius: 3rem; border-radius: 3rem; margin-top: 1.2rem; margin-bottom: 2.3rem; }

@media screen and (max-width: 960px) { .main-visual .mv_box-content .consultation { width: -webkit-calc(53.7rem / 2); width: -moz-calc(53.7rem / 2); width: calc(53.7rem / 2); height: -webkit-calc(13.4rem / 2); height: -moz-calc(13.4rem / 2); height: calc(13.4rem / 2); font-size: -webkit-calc(6.7rem / 2); font-size: -moz-calc(6.7rem / 2); font-size: calc(6.7rem / 2); -moz-border-radius: -moz-calc(6.7rem / 2); border-radius: -webkit-calc(6.7rem / 2); border-radius: calc(6.7rem / 2); margin-top: 3rem; } }

.main-visual .mv_box-content .mv_link { font-size: 2rem; font-weight: bold; line-height: -webkit-calc(23 / 20); line-height: -moz-calc(23 / 20); line-height: calc(23 / 20); color: #008342; position: relative; letter-spacing: 0.001em; margin-left: 3.7rem; }

@media screen and (max-width: 960px) { .main-visual .mv_box-content .mv_link { font-size: 1.6rem; line-height: -webkit-calc(37 / 32); line-height: -moz-calc(37 / 32); line-height: calc(37 / 32); letter-spacing: -0.01em; margin-left: 3.1rem; } }

.main-visual .mv_box-content .mv_link::after { content: ""; position: absolute; top: 50%; right: -2.6rem; width: 2.1rem; height: 2.1rem; background: url(../img/icon_btn.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .main-visual .mv_box-content .mv_link::after { right: -1.9rem; width: 1.5rem; height: 1.5rem; } }

.main-visual .mv_box-heading { width: -webkit-calc(100% - 40rem); width: -moz-calc(100% - 40rem); width: calc(100% - 40rem); padding-left: 10.5rem; padding-top: 4.4rem; }

@media screen and (max-width: 960px) { .main-visual .mv_box-heading { width: 100%; padding-left: 0; padding-top: 9.1rem; text-align: center; } }

.main-visual .mv_box-heading img { width: 49rem; }

@media screen and (max-width: 960px) { .main-visual .mv_box-heading img { width: -webkit-calc(51.9rem / 2); width: -moz-calc(51.9rem / 2); width: calc(51.9rem / 2); } }

.main-visual .mv_box .btn-line { width: 27rem; height: 7.5rem; margin: 13.1rem auto 0; background: #ffffff; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; font-size: 1.5rem; font-weight: bold; line-height: -webkit-calc(32 / 30); line-height: -moz-calc(32 / 30); line-height: calc(32 / 30); color: #008342; letter-spacing: 0.05em; -moz-border-radius: -moz-calc(7.5rem / 2); border-radius: -webkit-calc(7.5rem / 2); border-radius: calc(7.5rem / 2); padding: 0 2.5rem 0 7.6rem; position: relative; }

.main-visual .mv_box .btn-line::before { content: ""; position: absolute; top: 50%; left: 3rem; width: 3.5rem; height: 3.4rem; background: url(../img/icon_btn_line.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.main-visual .mv_contact_link { position: fixed; top: 41rem; right: 0.6rem; font-family: "Roboto Slab", serif; font-size: 1.9rem; font-weight: bold; line-height: -webkit-calc(33 / 19); line-height: -moz-calc(33 / 19); line-height: calc(33 / 19); color: #ffffff; letter-spacing: 0.12em; -webkit-transform: rotate(90deg); -moz-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); z-index: 9; }

.main-visual .mv_contact_link::before { content: ""; position: absolute; top: 0.3rem; right: -3.5rem; width: 2.5rem; height: 2.5rem; background: url(../img/icon_arrow_next.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: rotate(-90deg); -moz-transform: rotate(-90deg); -ms-transform: rotate(-90deg); transform: rotate(-90deg); }

.main-visual .mv_scroll { position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; text-align: center; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

@media screen and (max-width: 960px) { .main-visual .mv_scroll { position: relative; margin-top: 1.9rem; } }

.main-visual .mv_scroll p { font-family: "Roboto Slab", serif; font-size: 1.1rem; font-weight: bold; color: #ffffff; margin-bottom: 0.9rem; }

@media screen and (max-width: 960px) { .main-visual .mv_scroll p { font-size: -webkit-calc(1.65rem / 2); font-size: -moz-calc(1.65rem / 2); font-size: calc(1.65rem / 2); } }

.main-visual .mv_scroll .icon_scroll { position: relative; width: 2.5rem; height: 2.5rem; margin: 0 auto; }

@media screen and (max-width: 960px) { .main-visual .mv_scroll .icon_scroll { width: -webkit-calc(3.75rem / 2); width: -moz-calc(3.75rem / 2); width: calc(3.75rem / 2); height: -webkit-calc(3.75rem / 2); height: -moz-calc(3.75rem / 2); height: calc(3.75rem / 2); } }

.main-visual .mv_scroll .icon_scroll::before { content: ""; position: absolute; bottom: 0; left: 0; right: 0; width: 2.5rem; height: 2.5rem; background: url(../img/icon_arrow_scroll.png) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .main-visual .mv_scroll .icon_scroll::before { width: 1.9rem; height: -webkit-calc(3.9rem / 2); height: -moz-calc(3.9rem / 2); height: calc(3.9rem / 2); bottom: 0.4rem; background: url(../img/icon_arrow_scroll_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

/** section-straight-out **/
.p-sec .heading .ja { font-size: 2rem; font-weight: bold; line-height: -webkit-calc(26 / 20); line-height: -moz-calc(26 / 20); line-height: calc(26 / 20); letter-spacing: 0.2em; margin-bottom: 3rem; }

@media screen and (max-width: 960px) { .p-sec .heading .ja { font-size: -webkit-calc(2.1rem / 2); font-size: -moz-calc(2.1rem / 2); font-size: calc(2.1rem / 2); line-height: -webkit-calc(26 / 21); line-height: -moz-calc(26 / 21); line-height: calc(26 / 21); margin-bottom: 1.9rem; } }

.p-sec .heading .en { font-family: "Roboto Slab", serif; font-size: 12rem; line-height: -webkit-calc(90 / 120); line-height: -moz-calc(90 / 120); line-height: calc(90 / 120); font-weight: bold; letter-spacing: 0.014em; }

@media screen and (max-width: 960px) { .p-sec .heading .en { font-size: 4.2rem; line-height: -webkit-calc(63 / 84); line-height: -moz-calc(63 / 84); line-height: calc(63 / 84); } }

.p-sec .belief { padding: 15.7rem 0 0; }

@media screen and (max-width: 960px) { .p-sec .belief { padding-top: 7.6rem; } }

.p-sec .belief .container { max-width: 105.8rem; }

@media screen and (max-width: 960px) { .p-sec .belief .container { max-width: 100%; } }

.p-sec .belief_content { margin-top: 12.1rem; padding-left: 10.3rem; }

@media screen and (max-width: 960px) { .p-sec .belief_content { padding-left: 0; margin-top: 5.5rem; } }

.p-sec .belief_content .label { font-size: 2.4rem; font-weight: bold; line-height: -webkit-calc(30 / 24); line-height: -moz-calc(30 / 24); line-height: calc(30 / 24); letter-spacing: 0.2em; margin-bottom: 2.9rem; }

@media screen and (max-width: 960px) { .p-sec .belief_content .label { font-size: -webkit-calc(2.7rem / 2); font-size: -moz-calc(2.7rem / 2); font-size: calc(2.7rem / 2); line-height: -webkit-calc(45 / 27); line-height: -moz-calc(45 / 27); line-height: calc(45 / 27); margin-bottom: 2.4rem; } }

.p-sec .belief_content .txt { font-size: 1.8rem; font-weight: 500; line-height: -webkit-calc(36 / 18); line-height: -moz-calc(36 / 18); line-height: calc(36 / 18); letter-spacing: 0.12em; margin-bottom: 3.6rem; }

@media screen and (max-width: 960px) { .p-sec .belief_content .txt { font-size: -webkit-calc(2.5rem / 2); font-size: -moz-calc(2.5rem / 2); font-size: calc(2.5rem / 2); line-height: -webkit-calc(48 / 25); line-height: -moz-calc(48 / 25); line-height: calc(48 / 25); letter-spacing: 0.02em; margin-bottom: 2.4rem; } }

.p-sec .belief_content .name { font-size: 1.6rem; font-weight: bold; line-height: -webkit-calc(25 / 16); line-height: -moz-calc(25 / 16); line-height: calc(25 / 16); letter-spacing: 0.22em; margin-top: 6.4rem; }

@media screen and (max-width: 960px) { .p-sec .belief_content .name { font-size: 1.2rem; line-height: -webkit-calc(39 / 24); line-height: -moz-calc(39 / 24); line-height: calc(39 / 24); letter-spacing: 0.2em; margin-top: 4.2rem; } }

.p-sec .belief_content .name > span { font-size: 2.1rem; line-height: -webkit-calc(25 / 21); line-height: -moz-calc(25 / 21); line-height: calc(25 / 21); margin-left: 2.2rem; }

@media screen and (max-width: 960px) { .p-sec .belief_content .name > span { font-size: -webkit-calc(3.15rem / 2); font-size: -moz-calc(3.15rem / 2); font-size: calc(3.15rem / 2); line-height: -webkit-calc(37.5 / 31.5); line-height: -moz-calc(37.5 / 31.5); line-height: calc(37.5 / 31.5); margin-left: 1.7rem; } }

.p-sec .belief_banner { margin-left: -webkit-calc(50% - 60rem); margin-left: -moz-calc(50% - 60rem); margin-left: calc(50% - 60rem); margin-top: 15.4rem; }

@media screen and (max-width: 960px) { .p-sec .belief_banner { margin-left: auto; width: 29.5rem; margin-top: 5.7rem; } }

.p-sec .business { padding-top: 15.9rem; }

@media screen and (max-width: 960px) { .p-sec .business { padding-top: 7.9rem; } }

.p-sec .business .heading .ja { margin-bottom: 3.4rem; }

@media screen and (max-width: 960px) { .p-sec .business .heading .ja { margin-bottom: 2.1rem; } }

.p-sec .business .heading .en { font-size: 9.5rem; letter-spacing: 0.056em; }

@media screen and (max-width: 960px) { .p-sec .business .heading .en { font-size: 4.2rem; letter-spacing: 0.075em; } }

.p-sec .business_box { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 960px) { .p-sec .business_box { -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; } }

.p-sec .business_box.box-01 { margin-top: 15.7rem; margin-bottom: 15.1rem; }

@media screen and (max-width: 960px) { .p-sec .business_box.box-01 { margin-top: 5.9rem; margin-bottom: 9.2rem; } }

.p-sec .business_box.box-02 { margin-top: 14rem; margin-bottom: 14.3rem; }

@media screen and (max-width: 960px) { .p-sec .business_box.box-02 { margin-top: 0; margin-bottom: 9.4rem; } }

.p-sec .business_box.box-02 .content { -webkit-box-ordinal-group: 2; -moz-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; width: 48.4rem; margin-right: -10.3rem; padding-top: 12.2rem; }

@media screen and (max-width: 960px) { .p-sec .business_box.box-02 .content { width: 100%; padding-top: 16rem; margin-right: 0; -webkit-box-ordinal-group: 0; -moz-box-ordinal-group: 0; -ms-flex-order: -1; order: -1; }
  .p-sec .business_box.box-02 .content .txt { letter-spacing: 0.02em; } }

.p-sec .business_box.box-02 .content-hd .number { bottom: -7.1rem; right: 0; }

@media screen and (max-width: 960px) { .p-sec .business_box.box-02 .content-hd .number { bottom: -3.6rem; right: 3.8rem; } }

.p-sec .business_box.box-02 .pic { width: 51rem; }

@media screen and (max-width: 960px) { .p-sec .business_box.box-02 .pic { width: 100%; margin-top: 6.2rem; } }

.p-sec .business_box.box-02 .pic .pic-01 { top: 0; left: -0.4rem; z-index: 1; }

@media screen and (max-width: 960px) { .p-sec .business_box.box-02 .pic .pic-01 { left: 0; width: -webkit-calc(22.1rem / 2); width: -moz-calc(22.1rem / 2); width: calc(22.1rem / 2); } }

.p-sec .business_box.box-02 .pic .pic-02 { right: 0.4rem; bottom: -3.4rem; z-index: 2; }

@media screen and (max-width: 960px) { .p-sec .business_box.box-02 .pic .pic-02 { right: 0; bottom: 0; width: -webkit-calc(41.9rem / 2); width: -moz-calc(41.9rem / 2); width: calc(41.9rem / 2); margin-left: 6.2rem; margin-top: -2.1rem; } }

.p-sec .business_box .content { width: 56rem; padding-top: 2.6rem; }

@media screen and (max-width: 960px) { .p-sec .business_box .content { width: 100%; } }

.p-sec .business_box .content-hd { position: relative; margin-bottom: 3.6rem; }

@media screen and (max-width: 960px) { .p-sec .business_box .content-hd { margin-bottom: 1.7rem; } }

.p-sec .business_box .content-hd .title { font-size: 3.2rem; font-weight: bold; line-height: -webkit-calc(62 / 32); line-height: -moz-calc(62 / 32); line-height: calc(62 / 32); letter-spacing: 0.18em; }

@media screen and (max-width: 960px) { .p-sec .business_box .content-hd .title { font-size: 1.6rem; letter-spacing: 0.2em; } }

.p-sec .business_box .content-hd .number { position: absolute; bottom: -7.1rem; right: 10.9rem; font-family: "Roboto Slab", serif; font-size: 22rem; font-weight: bold; line-height: -webkit-calc(340 / 220); line-height: -moz-calc(340 / 220); line-height: calc(340 / 220); letter-spacing: 0.04em; opacity: 0.1; }

@media screen and (max-width: 960px) { .p-sec .business_box .content-hd .number { bottom: -3.6rem; right: 4.5rem; font-size: 11rem; } }

.p-sec .business_box .content .txt { font-size: 1.6rem; font-weight: 500; line-height: 2; letter-spacing: 0.12em; }

@media screen and (max-width: 960px) { .p-sec .business_box .content .txt { font-size: -webkit-calc(2.5rem / 2); font-size: -moz-calc(2.5rem / 2); font-size: calc(2.5rem / 2); line-height: -webkit-calc(48 / 25); line-height: -moz-calc(48 / 25); line-height: calc(48 / 25); letter-spacing: 0.1em; } }

.p-sec .business_box .pic { width: -webkit-calc(100% - 56rem); width: -moz-calc(100% - 56rem); width: calc(100% - 56rem); position: relative; }

@media screen and (max-width: 960px) { .p-sec .business_box .pic { width: 100%; margin-top: 2.1rem; } }

.p-sec .business_box .pic .pic-01 { width: 20.8rem; position: absolute; top: 0; left: 4.4rem; z-index: 2; }

@media screen and (max-width: 960px) { .p-sec .business_box .pic .pic-01 { position: relative; width: -webkit-calc(22.7rem / 2); width: -moz-calc(22.7rem / 2); width: calc(22.7rem / 2); left: 0; } }

.p-sec .business_box .pic .pic-02 { width: 39.5rem; position: absolute; right: -10rem; bottom: -0.2rem; z-index: 1; }

@media screen and (max-width: 960px) { .p-sec .business_box .pic .pic-02 { position: relative; width: -webkit-calc(43.1rem / 2); width: -moz-calc(43.1rem / 2); width: calc(43.1rem / 2); right: 0; bottom: 0; margin-left: 5.5rem; margin-top: -2.2rem; } }

.p-sec .business .flow { padding-bottom: 20rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow { padding-bottom: 0; } }

.p-sec .business .flow:last-child { padding-bottom: 16.7rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow:last-child { padding-bottom: 11.7rem; }
  .p-sec .business .flow:last-child .flow_inner { margin-top: 5.1rem; } }

.p-sec .business .flow_heading { text-align: center; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

.p-sec .business .flow_heading .ja { font-size: 2.6rem; font-weight: bold; line-height: -webkit-calc(60 / 26); line-height: -moz-calc(60 / 26); line-height: calc(60 / 26); letter-spacing: 0.2em; }

@media screen and (max-width: 960px) { .p-sec .business .flow_heading .ja { font-size: 1.2rem; line-height: -webkit-calc(89 / 24); line-height: -moz-calc(89 / 24); line-height: calc(89 / 24); } }

.p-sec .business .flow_heading .en { font-family: "Roboto Slab", serif; font-size: 5rem; font-weight: bold; line-height: 1; letter-spacing: 0.075em; }

@media screen and (max-width: 960px) { .p-sec .business .flow_heading .en { font-size: -webkit-calc(7.5rem / 2); font-size: -moz-calc(7.5rem / 2); font-size: calc(7.5rem / 2); margin-top: -0.3rem; } }

.p-sec .business .flow_inner { margin-top: 8.1rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner { margin-top: 5.2rem; } }

.p-sec .business .flow_inner .tab-buttons { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; }

.p-sec .business .flow_inner .tab-btn { width: 22rem; border: none; color: #ffffff; background: rgba(255, 255, 255, 0.4); -moz-border-radius: 1.5rem 1.5rem 0 0; border-radius: 1.5rem 1.5rem 0 0; font-size: 2.8rem; font-weight: bold; line-height: -webkit-calc(36 / 28); line-height: -moz-calc(36 / 28); line-height: calc(36 / 28); padding: 2rem 0 1.1rem; text-align: center; cursor: pointer; -webkit-transition: background-color 0.3s ease; -moz-transition: background-color 0.3s ease; transition: background-color 0.3s ease; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-btn { width: 11rem; font-size: 1.4rem; line-height: -webkit-calc(37 / 28); line-height: -moz-calc(37 / 28); line-height: calc(37 / 28); -moz-border-radius: 1rem 1rem 0 0; border-radius: 1rem 1rem 0 0; padding: 1.1rem 0 0.4rem; } }

.p-sec .business .flow_inner .tab-btn.active { background: #ffffff; color: #008342; }

.p-sec .business .flow_inner .tab-content { background: #ffffff; -moz-border-radius: 0 1.5rem 1.5rem 1.5rem; border-radius: 0 1.5rem 1.5rem 1.5rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content { -moz-border-radius: 0 1rem 1rem 1rem; border-radius: 0 1rem 1rem 1rem; } }

.p-sec .business .flow_inner .tab-content.tab-estate { -moz-border-radius: 1.5rem; border-radius: 1.5rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content.tab-estate { -moz-border-radius: 1rem; border-radius: 1rem; } }

.p-sec .business .flow_inner .tab-content.tab-estate .content { height: 149.2rem; padding-top: 11.3rem; display: block; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content.tab-estate .content { height: 105rem; padding-top: 4.2rem; } }

.p-sec .business .flow_inner .tab-content .content { height: 156rem; padding: 8.1rem 10rem 11.4rem; display: none; position: relative; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content { padding: 4.2rem 1.4rem; height: 116.3rem; } }

.p-sec .business .flow_inner .tab-content .content::after { content: ""; position: absolute; bottom: 11.8rem; left: 0; right: 0; margin: 0 auto; width: 68.8rem; height: 13rem; background: url(../img/bg_city_02_pc.png) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content::after { bottom: 6.5rem; width: -webkit-calc(48.5rem / 2); width: -moz-calc(48.5rem / 2); width: calc(48.5rem / 2); height: 4.6rem; background: url(../img/bg_city_02_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; } }

.p-sec .business .flow_inner .tab-content .content.show { display: block; }

.p-sec .business .flow_inner .tab-content .content#sale .step.step-01 { margin-bottom: 5.4rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-01 { margin-bottom: 5.3rem; } }

.p-sec .business .flow_inner .tab-content .content#sale .step.step-02 { margin-bottom: 2rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-02 { margin-bottom: 3.3rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-02 .step-right { padding-top: 0.7rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-02 .step-right .title { margin-bottom: 0.6rem; } }

.p-sec .business .flow_inner .tab-content .content#sale .step.step-02::before { bottom: 0.3rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-02::before { height: -webkit-calc(18.6rem / 2); height: -moz-calc(18.6rem / 2); height: calc(18.6rem / 2); bottom: -0.7rem; background: url(../img/icon_bottom_02_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

.p-sec .business .flow_inner .tab-content .content#sale .step.step-03 { margin-bottom: 8.5rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-03 { margin-bottom: 2.5rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-03 .step-right .title { margin-bottom: 1.8rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-03 .step-right .txt { padding-left: 0; } }

.p-sec .business .flow_inner .tab-content .content#sale .step.step-03::before { bottom: -5.7rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-03::before { height: -webkit-calc(4.2rem / 2); height: -moz-calc(4.2rem / 2); height: calc(4.2rem / 2); bottom: -0.3rem; background: url(../img/icon_bottom_03_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

.p-sec .business .flow_inner .tab-content .content#sale .step.step-04 { margin-bottom: 1.9rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-04 { margin-bottom: 3.5rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-04 .step-right .title { margin-bottom: 1.6rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-04 .step-right .txt { padding-left: 0; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-04 .step-right .notes { padding-left: 0; } }

.p-sec .business .flow_inner .tab-content .content#sale .step.step-04::before { bottom: 0.4rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-04::before { height: -webkit-calc(15.6rem / 2); height: -moz-calc(15.6rem / 2); height: calc(15.6rem / 2); bottom: -0.9rem; background: url(../img/icon_bottom_04_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

.p-sec .business .flow_inner .tab-content .content#sale .step.step-05 { margin-bottom: 5.9rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-05 { margin-bottom: 3.4rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-05 .step-right { padding-top: 0.6rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-05 .step-right .title { margin-bottom: 1.1rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-05 .step-right .txt { padding-left: 0; } }

.p-sec .business .flow_inner .tab-content .content#sale .step.step-05::before { bottom: -2.9rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-05::before { height: -webkit-calc(15.6rem / 2); height: -moz-calc(15.6rem / 2); height: calc(15.6rem / 2); bottom: -0.4rem; background: url(../img/icon_bottom_04_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#sale .step.step-06 .step-right .title { margin-bottom: 1.9rem; }
  .p-sec .business .flow_inner .tab-content .content#sale .step.step-06 .step-right .txt { padding-left: 0; } }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#purchase::after { bottom: 11.8rem; } }

.p-sec .business .flow_inner .tab-content .content#purchase .step.step-01 { margin-bottom: 5.4rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#purchase .step.step-01 .step-right { padding-top: 0.7rem; }
  .p-sec .business .flow_inner .tab-content .content#purchase .step.step-01 .step-right .title { margin-bottom: 0.2rem; } }

.p-sec .business .flow_inner .tab-content .content#purchase .step.step-02 { margin-bottom: 7.6rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#purchase .step.step-02 { margin-bottom: 2.6rem; }
  .p-sec .business .flow_inner .tab-content .content#purchase .step.step-02 .step-right .title { margin-bottom: 1.6rem; } }

.p-sec .business .flow_inner .tab-content .content#purchase .step.step-02::before { bottom: -5.3rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#purchase .step.step-02::before { height: -webkit-calc(10.1rem / 2); height: -moz-calc(10.1rem / 2); height: calc(10.1rem / 2); bottom: -1rem; background: url(../img/icon_bottom_05_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

.p-sec .business .flow_inner .tab-content .content#purchase .step.step-03 { margin-bottom: 8.5rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#purchase .step.step-03 { margin-bottom: 3.4rem; }
  .p-sec .business .flow_inner .tab-content .content#purchase .step.step-03 .step-right .txt { padding-left: 0; } }

.p-sec .business .flow_inner .tab-content .content#purchase .step.step-03::before { bottom: -5.7rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#purchase .step.step-03::before { height: -webkit-calc(10.1rem / 2); height: -moz-calc(10.1rem / 2); height: calc(10.1rem / 2); bottom: -1.5rem; background: url(../img/icon_bottom_05_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

.p-sec .business .flow_inner .tab-content .content#purchase .step.step-04 { margin-bottom: 4.7rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#purchase .step.step-04 { margin-bottom: 0.3rem; }
  .p-sec .business .flow_inner .tab-content .content#purchase .step.step-04 .step-right { padding-top: 0.8rem; }
  .p-sec .business .flow_inner .tab-content .content#purchase .step.step-04 .step-right .title { margin-bottom: 1.1rem; }
  .p-sec .business .flow_inner .tab-content .content#purchase .step.step-04 .step-right .txt { padding-left: 0; } }

.p-sec .business .flow_inner .tab-content .content#purchase .step.step-04::before { bottom: -2.4rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#purchase .step.step-04::before { height: -webkit-calc(15.6rem / 2); height: -moz-calc(15.6rem / 2); height: calc(15.6rem / 2); bottom: 2rem; background: url(../img/icon_bottom_04_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#purchase .step.step-05 .step-right .title { margin-bottom: 2.8rem; }
  .p-sec .business .flow_inner .tab-content .content#purchase .step.step-05 .step-right .txt { padding-left: 0; } }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#estate::after { bottom: 6.9rem; } }

.p-sec .business .flow_inner .tab-content .content#estate .step.step-01 { margin-bottom: 5.4rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#estate .step.step-01 { margin-bottom: 5.2rem; } }

.p-sec .business .flow_inner .tab-content .content#estate .step.step-02 { margin-bottom: 4.9rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#estate .step.step-02 { margin-bottom: 2.9rem; }
  .p-sec .business .flow_inner .tab-content .content#estate .step.step-02 .step-right .title { margin-bottom: 1.6rem; } }

.p-sec .business .flow_inner .tab-content .content#estate .step.step-02::before { bottom: -2.5rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#estate .step.step-02::before { height: -webkit-calc(12.7rem / 2); height: -moz-calc(12.7rem / 2); height: calc(12.7rem / 2); bottom: -1.2rem; background: url(../img/icon_bottom_06_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

.p-sec .business .flow_inner .tab-content .content#estate .step.step-03 { margin-bottom: 8.5rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#estate .step.step-03 { margin-bottom: 2.6rem; }
  .p-sec .business .flow_inner .tab-content .content#estate .step.step-03 .step-right .title { margin-bottom: 1.8rem; }
  .p-sec .business .flow_inner .tab-content .content#estate .step.step-03 .step-right .txt { padding-left: 0; } }

.p-sec .business .flow_inner .tab-content .content#estate .step.step-03::before { bottom: -5.7rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#estate .step.step-03::before { height: -webkit-calc(4.2rem / 2); height: -moz-calc(4.2rem / 2); height: calc(4.2rem / 2); bottom: -0.3rem; background: url(../img/icon_bottom_03_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

.p-sec .business .flow_inner .tab-content .content#estate .step.step-04 { margin-bottom: 4.7rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#estate .step.step-04 { margin-bottom: 2.1rem; }
  .p-sec .business .flow_inner .tab-content .content#estate .step.step-04 .step-right { padding-top: 0.6rem; }
  .p-sec .business .flow_inner .tab-content .content#estate .step.step-04 .step-right .title { margin-bottom: 1.3rem; letter-spacing: 0.02em; }
  .p-sec .business .flow_inner .tab-content .content#estate .step.step-04 .step-right .txt { padding-left: 0; } }

.p-sec .business .flow_inner .tab-content .content#estate .step.step-04::before { bottom: -2.4rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#estate .step.step-04::before { height: -webkit-calc(15.6rem / 2); height: -moz-calc(15.6rem / 2); height: calc(15.6rem / 2); bottom: -0.3rem; background: url(../img/icon_bottom_04_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content#estate .step.step-05 .step-right .title { margin-bottom: 1.8rem; }
  .p-sec .business .flow_inner .tab-content .content#estate .step.step-05 .step-right .txt { padding-left: 0; } }

.p-sec .business .flow_inner .tab-content .content .step { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-column-gap: 4.5rem; -moz-column-gap: 4.5rem; column-gap: 4.5rem; position: relative; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step { -webkit-column-gap: 0; -moz-column-gap: 0; column-gap: 0; } }

.p-sec .business .flow_inner .tab-content .content .step::before { content: ""; position: absolute; left: 4.1rem; width: 1.4rem; height: 4.1rem; background: url(../img/icon_bottom_02.png) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step::before { bottom: -2.8rem; left: 1.8rem; width: -webkit-calc(1.5rem / 2); width: -moz-calc(1.5rem / 2); width: calc(1.5rem / 2); height: -webkit-calc(21.5rem / 2); height: -moz-calc(21.5rem / 2); height: calc(21.5rem / 2); background: url(../img/icon_bottom_01_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

.p-sec .business .flow_inner .tab-content .content .step.step-01::before { content: ""; position: absolute; bottom: -2.2rem; left: 4.1rem; width: 1.4rem; height: 10rem; background: url(../img/icon_bottom_01.png) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step.step-01::before { bottom: -2.8rem; left: 1.8rem; width: -webkit-calc(1.5rem / 2); width: -moz-calc(1.5rem / 2); width: calc(1.5rem / 2); height: -webkit-calc(21.5rem / 2); height: -moz-calc(21.5rem / 2); height: calc(21.5rem / 2); background: url(../img/icon_bottom_01_sp.png) no-repeat; -moz-background-size: contain; background-size: contain; } }

.p-sec .business .flow_inner .tab-content .content .step:last-child::before { display: none; }

.p-sec .business .flow_inner .tab-content .content .step-left { width: 9.5rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-left { width: 4.3rem; } }

.p-sec .business .flow_inner .tab-content .content .step-left .step-ttl { width: 100%; height: 9.5rem; background: #008342; -moz-border-radius: 50%; border-radius: 50%; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; font-family: "Roboto Slab", serif; font-weight: bold; line-height: 1; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-left .step-ttl { height: 4.3rem; } }

.p-sec .business .flow_inner .tab-content .content .step-left .step-ttl .en { font-size: 1.4rem; letter-spacing: 0.075em; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-left .step-ttl .en { font-size: -webkit-calc(1.26rem / 2); font-size: -moz-calc(1.26rem / 2); font-size: calc(1.26rem / 2); } }

.p-sec .business .flow_inner .tab-content .content .step-left .step-ttl .nb { font-size: 3.6rem; letter-spacing: 0.05em; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-left .step-ttl .nb { font-size: -webkit-calc(3.24rem / 2); font-size: -moz-calc(3.24rem / 2); font-size: calc(3.24rem / 2); } }

.p-sec .business .flow_inner .tab-content .content .step-right { width: -webkit-calc(100% - 14rem); width: -moz-calc(100% - 14rem); width: calc(100% - 14rem); padding-top: 2.9rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right { width: -webkit-calc(100% - 4.3rem); width: -moz-calc(100% - 4.3rem); width: calc(100% - 4.3rem); padding-top: 1.4rem; padding-left: 1.5rem; } }

.p-sec .business .flow_inner .tab-content .content .step-right .title { font-size: 2.4rem; font-weight: bold; line-height: -webkit-calc(40 / 24); line-height: -moz-calc(40 / 24); line-height: calc(40 / 24); letter-spacing: 0.1em; color: #008342; position: relative; padding-left: 6.1rem; margin-bottom: 1.5rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .title { font-size: 1.4rem; line-height: -webkit-calc(35 / 28); line-height: -moz-calc(35 / 28); line-height: calc(35 / 28); padding-left: 4rem; margin-bottom: 1.3rem; } }

.p-sec .business .flow_inner .tab-content .content .step-right .title::before { content: ""; position: absolute; top: 50%; left: 0; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-01::before { width: 3.5rem; height: 2.7rem; background: url(../img/icon_step_01.svg) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-01::before { width: -webkit-calc(4.3rem / 2); width: -moz-calc(4.3rem / 2); width: calc(4.3rem / 2); height: -webkit-calc(3.3rem / 2); height: -moz-calc(3.3rem / 2); height: calc(3.3rem / 2); } }

.p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-02::before { width: 4rem; height: 4rem; background: url(../img/icon_step_02.svg) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-02::before { width: -webkit-calc(4.9rem / 2); width: -moz-calc(4.9rem / 2); width: calc(4.9rem / 2); height: -webkit-calc(4.9rem / 2); height: -moz-calc(4.9rem / 2); height: calc(4.9rem / 2); } }

.p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-03::before { width: 4.3rem; height: 3.9rem; background: url(../img/icon_step_03.svg) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-03::before { width: -webkit-calc(5.3rem / 2); width: -moz-calc(5.3rem / 2); width: calc(5.3rem / 2); height: -webkit-calc(4.7rem / 2); height: -moz-calc(4.7rem / 2); height: calc(4.7rem / 2); } }

.p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-04::before { width: 4rem; height: 3.8rem; background: url(../img/icon_step_04.svg) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-04::before { width: -webkit-calc(4.9rem / 2); width: -moz-calc(4.9rem / 2); width: calc(4.9rem / 2); height: -webkit-calc(4.6rem / 2); height: -moz-calc(4.6rem / 2); height: calc(4.6rem / 2); } }

.p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-05::before { width: 3.6rem; height: 3rem; background: url(../img/icon_step_05.svg) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-05::before { width: -webkit-calc(4.4rem / 2); width: -moz-calc(4.4rem / 2); width: calc(4.4rem / 2); height: -webkit-calc(3.8rem / 2); height: -moz-calc(3.8rem / 2); height: calc(3.8rem / 2); } }

.p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-06::before { width: 3.5rem; height: 3.8rem; background: url(../img/icon_step_06.svg) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .title._ttl-06::before { width: -webkit-calc(4.3rem / 2); width: -moz-calc(4.3rem / 2); width: calc(4.3rem / 2); height: -webkit-calc(4.7rem / 2); height: -moz-calc(4.7rem / 2); height: calc(4.7rem / 2); } }

.p-sec .business .flow_inner .tab-content .content .step-right .txt { font-size: 1.6rem; font-weight: 500; line-height: -webkit-calc(28 / 16); line-height: -moz-calc(28 / 16); line-height: calc(28 / 16); letter-spacing: -0.05em; color: #000000; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .txt { font-size: 1.1rem; line-height: -webkit-calc(35 / 22); line-height: -moz-calc(35 / 22); line-height: calc(35 / 22); padding-left: 0.4rem; } }

.p-sec .business .flow_inner .tab-content .content .step-right .tel { font-family: "DINPro"; font-size: 2.1rem; font-weight: 500; line-height: -webkit-calc(36 / 21); line-height: -moz-calc(36 / 21); line-height: calc(36 / 21); color: #008342; margin-top: -0.3rem; letter-spacing: 0.08em; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .tel { font-size: 1.5rem; line-height: -webkit-calc(54.3 / 30); line-height: -moz-calc(54.3 / 30); line-height: calc(54.3 / 30); padding-left: 0.4rem; } }

.p-sec .business .flow_inner .tab-content .content .step-right .tel > span { font-family: "DINPro"; font-size: 3rem; font-weight: bold; -webkit-transform: translateY(0.1rem); -moz-transform: translateY(0.1rem); -ms-transform: translateY(0.1rem); transform: translateY(0.1rem); display: inline-block; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .tel > span { font-size: -webkit-calc(4.1rem / 2); font-size: -moz-calc(4.1rem / 2); font-size: calc(4.1rem / 2); line-height: -webkit-calc(54.3 / 41); line-height: -moz-calc(54.3 / 41); line-height: calc(54.3 / 41); } }

.p-sec .business .flow_inner .tab-content .content .step-right .step-link { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; width: 30rem; height: 3rem; border: 0.1rem solid #008342; font-family: "Roboto Slab", serif; font-size: 1.4rem; line-height: 1.5; font-weight: bold; letter-spacing: 0.099em; color: #008342; position: relative; margin-top: 1.2rem; padding-left: 2.2rem; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .step-link { width: -webkit-calc(35.5rem / 2); width: -moz-calc(35.5rem / 2); width: calc(35.5rem / 2); height: -webkit-calc(6.5rem / 2); height: -moz-calc(6.5rem / 2); height: calc(6.5rem / 2); font-size: -webkit-calc(2.1rem / 2); font-size: -moz-calc(2.1rem / 2); font-size: calc(2.1rem / 2); letter-spacing: 0.1em; margin-top: 1.1rem; margin-left: 0.5rem; padding-left: 1.6rem; } }

.p-sec .business .flow_inner .tab-content .content .step-right .step-link::before { content: ""; position: absolute; top: 50%; right: 2.5rem; width: 2rem; height: 0.7rem; background: url(../img/icon_arrow_rigth.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .step-link::before { right: 1rem; width: -webkit-calc(3.1rem / 2); width: -moz-calc(3.1rem / 2); width: calc(3.1rem / 2); height: 0.6rem; background: url(../img/icon_arrow_rigth_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; } }

.p-sec .business .flow_inner .tab-content .content .step-right .notes { font-size: 1.4rem; font-weight: 500; line-height: -webkit-calc(28 / 14); line-height: -moz-calc(28 / 14); line-height: calc(28 / 14); letter-spacing: 0.05em; color: #008342; }

@media screen and (max-width: 960px) { .p-sec .business .flow_inner .tab-content .content .step-right .notes { font-size: 0.9rem; line-height: -webkit-calc(25 / 18); line-height: -moz-calc(25 / 18); line-height: calc(25 / 18); padding-left: 0.4rem; margin-top: 0.3rem; } }

.p-sec .cta-inner { max-width: 125rem; padding: 0 2.5rem; margin: 0 auto; }

@media screen and (max-width: 960px) { .p-sec .cta-inner { max-width: 100%; padding: 0; } }

.p-sec .cta-box { background: #ffffff; -moz-border-radius: 1.5rem; border-radius: 1.5rem; padding: 10rem 11.2rem 10.4rem 11rem; }

@media screen and (max-width: 960px) { .p-sec .cta-box { -moz-border-radius: 0; border-radius: 0; padding: 7.2rem 2.5rem 8.8rem; } }

.p-sec .cta-box .label { width: 65rem; height: 7.6rem; background: url(../img/bg_line_pc.png) no-repeat; margin: 0 auto; -moz-background-size: cover; background-size: cover; font-size: 1.6rem; font-weight: bold; line-height: -webkit-calc(28 / 16); line-height: -moz-calc(28 / 16); line-height: calc(28 / 16); color: #008342; text-align: center; padding: 1.6rem 0; }

@media screen and (max-width: 960px) { .p-sec .cta-box .label { width: 27rem; height: 7rem; background: url(../img/bg_line_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; font-size: 1.1rem; line-height: -webkit-calc(28 / 22); line-height: -moz-calc(28 / 22); line-height: calc(28 / 22); padding: 1.9rem 0; } }

.p-sec .cta-box .logo { width: 11rem; margin: 1.2rem auto 0; }

@media screen and (max-width: 960px) { .p-sec .cta-box .logo { width: 7.9rem; } }

.p-sec .cta-box .title { font-size: 3rem; font-weight: bold; line-height: 1.6; color: #008342; letter-spacing: 0.2em; text-align: center; }

@media screen and (max-width: 960px) { .p-sec .cta-box .title { font-size: 1.5rem; line-height: 2; margin-top: -0.7rem; } }

.p-sec .cta-list { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; padding-left: 2.3rem; margin-top: 2.2rem; }

@media screen and (max-width: 960px) { .p-sec .cta-list { -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; padding-left: 0; margin-top: 2.9rem; } }

.p-sec .cta-list .name { font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(59/ 18); line-height: -moz-calc(59/ 18); line-height: calc(59/ 18); letter-spacing: 0.1em; text-align: center; color: #008342; }

@media screen and (max-width: 960px) { .p-sec .cta-list .name { font-size: 1.7rem; line-height: -webkit-calc(92 / 34); line-height: -moz-calc(92 / 34); line-height: calc(92 / 34); } }

.p-sec .cta-list--info { color: #008342; width: 36.8rem; }

@media screen and (max-width: 960px) { .p-sec .cta-list--info { width: 100%; } }

.p-sec .cta-list--info .tel { font-family: "DINPro"; font-size: 3rem; font-weight: 500; line-height: -webkit-calc(47 / 30); line-height: -moz-calc(47 / 30); line-height: calc(47 / 30); letter-spacing: 0.05em; margin-top: -0.8rem; }

@media screen and (max-width: 960px) { .p-sec .cta-list--info .tel { font-size: 2.3rem; line-height: -webkit-calc(76 / 46); line-height: -moz-calc(76 / 46); line-height: calc(76 / 46); margin-top: 0.3rem; } }

.p-sec .cta-list--info .tel > span { font-size: 4.2rem; line-height: -webkit-calc(47 / 42); line-height: -moz-calc(47 / 42); line-height: calc(47 / 42); font-weight: bold; }

@media screen and (max-width: 960px) { .p-sec .cta-list--info .tel > span { font-size: 3.2rem; line-height: -webkit-calc(76 / 64); line-height: -moz-calc(76 / 64); line-height: calc(76 / 64); } }

.p-sec .cta-list--info .fax { font-family: "DINPro"; font-size: 2.2rem; font-weight: 500; line-height: -webkit-calc(47 / 22); line-height: -moz-calc(47 / 22); line-height: calc(47 / 22); letter-spacing: 0.05em; margin-top: -1.4rem; }

@media screen and (max-width: 960px) { .p-sec .cta-list--info .fax { font-size: 1.7rem; line-height: -webkit-calc(76 / 34); line-height: -moz-calc(76 / 34); line-height: calc(76 / 34); text-align: center; margin-top: -1.1rem; } }

.p-sec .cta-list--info .time { font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(59 / 18); line-height: -moz-calc(59 / 18); line-height: calc(59 / 18); letter-spacing: 0.1em; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; margin-top: -1.6rem; }

@media screen and (max-width: 960px) { .p-sec .cta-list--info .time { font-size: 1.2rem; line-height: 4; margin-top: -1.4rem; } }

.p-sec .cta-list--info .time .open { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; width: 12rem; height: 3rem; border: 0.1rem solid #008342; margin-left: 1.3rem; }

@media screen and (max-width: 960px) { .p-sec .cta-list--info .time .open { width: -webkit-calc(18.5rem / 2); width: -moz-calc(18.5rem / 2); width: calc(18.5rem / 2); height: -webkit-calc(4.5rem / 2); height: -moz-calc(4.5rem / 2); height: calc(4.5rem / 2); margin-left: 1rem; } }

.p-sec .cta-list--contact { width: 45rem; }

@media screen and (max-width: 960px) { .p-sec .cta-list--contact { width: 100%; margin-top: 1rem; } }

.p-sec .cta-list--contact .btnWrap { margin-top: 1.6rem; }

@media screen and (max-width: 960px) { .p-sec .cta-list--contact .btnWrap { margin-top: 0.2rem; } }

.p-sec .cta-list--contact .btn-contact { width: 100%; height: 7.5rem; -moz-border-radius: 3.75rem; border-radius: 3.75rem; background: #008342; font-family: "Roboto Slab", serif; font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(57 / 18); line-height: -moz-calc(57 / 18); line-height: calc(57 / 18); letter-spacing: 0.1em; color: #ffffff; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; position: relative; }

@media screen and (max-width: 960px) { .p-sec .cta-list--contact .btn-contact { font-size: 1.5rem; line-height: -webkit-calc(68 / 30); line-height: -moz-calc(68 / 30); line-height: calc(68 / 30); } }

.p-sec .cta-list--contact .btn-contact::after { content: ""; position: absolute; top: 50%; right: 4.9rem; width: 1.8rem; height: 0.7rem; background: url(../img/icon_arrow_white.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-sec .cta-list--contact .btn-contact::after { right: 2.2rem; width: 1rem; height: -webkit-calc(2.3rem / 2); height: -moz-calc(2.3rem / 2); height: calc(2.3rem / 2); background: url(../img/icon_arrow_white_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; } }

.p-sec .line { padding: 19rem 0 5rem; }

@media screen and (max-width: 960px) { .p-sec .line { padding: 6.1rem 0; } }

.p-sec .line-inner { max-width: 87.6rem; margin: 0 auto; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 960px) { .p-sec .line-inner { -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; max-width: 100%; } }

.p-sec .line-inner .content { width: 40rem; padding-top: 3.3rem; }

@media screen and (max-width: 960px) { .p-sec .line-inner .content { width: 100%; } }

.p-sec .line-inner .content .name { font-size: 2rem; font-weight: bold; line-height: 1.6; letter-spacing: 0.2em; text-align: center; position: relative; }

@media screen and (max-width: 960px) { .p-sec .line-inner .content .name { font-size: -webkit-calc(2.5rem / 2); font-size: -moz-calc(2.5rem / 2); font-size: calc(2.5rem / 2); } }

.p-sec .line-inner .content .name::before { content: ""; position: absolute; top: 50%; left: 4.4rem; width: 1.7rem; height: 4rem; background: url(../img/icon_line_left_pc.png) no-repeat; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-sec .line-inner .content .name::before { left: 6.3rem; width: -webkit-calc(2.1rem / 2); width: -moz-calc(2.1rem / 2); width: calc(2.1rem / 2); height: -webkit-calc(4.9rem / 2); height: -moz-calc(4.9rem / 2); height: calc(4.9rem / 2); background: url(../img/icon_line_left_sp.png) no-repeat; } }

.p-sec .line-inner .content .name::after { content: ""; position: absolute; top: 50%; right: 4.4rem; width: 1.7rem; height: 4rem; background: url(../img/icon_line_right_pc.png) no-repeat; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-sec .line-inner .content .name::after { right: 6.3rem; width: -webkit-calc(2.1rem / 2); width: -moz-calc(2.1rem / 2); width: calc(2.1rem / 2); height: -webkit-calc(4.9rem / 2); height: -moz-calc(4.9rem / 2); height: calc(4.9rem / 2); background: url(../img/icon_line_right_sp.png) no-repeat; } }

.p-sec .line-inner .content .title { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; margin-top: 0.6rem; padding-left: 0.8rem; }

@media screen and (max-width: 960px) { .p-sec .line-inner .content .title { padding-left: 0; margin-top: 0.3rem; } }

.p-sec .line-inner .content .title .en { font-family: "Roboto Slab", serif; font-size: 13rem; font-weight: bold; line-height: -webkit-calc(153 / 130); line-height: -moz-calc(153 / 130); line-height: calc(153 / 130); letter-spacing: 0.06em; }

@media screen and (max-width: 960px) { .p-sec .line-inner .content .title .en { font-size: 8.1rem; line-height: -webkit-calc(191 / 162); line-height: -moz-calc(191 / 162); line-height: calc(191 / 162); } }

.p-sec .line-inner .content .title .ja { font-size: 3.5rem; font-weight: bold; line-height: 1.6; letter-spacing: 0.4em; margin-top: -0.7rem; }

@media screen and (max-width: 960px) { .p-sec .line-inner .content .title .ja { font-size: 2.2rem; margin-top: -0.5rem; } }

.p-sec .line-inner .content .btnWrap { margin-top: 4rem; }

@media screen and (max-width: 960px) { .p-sec .line-inner .content .btnWrap { margin-top: 2.5rem; } }

.p-sec .line-inner .content .btnWrap .btn-line { display: block; width: 100%; height: 7.5rem; -moz-border-radius: 3.75rem; border-radius: 3.75rem; background: #ffffff; font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(59 / 18); line-height: -moz-calc(59 / 18); line-height: calc(59 / 18); letter-spacing: 0.4em; padding: 0.9rem 8.6rem; color: #000000; position: relative; }

@media screen and (max-width: 960px) { .p-sec .line-inner .content .btnWrap .btn-line { width: 25rem; height: 4.7rem; margin: 0 auto; font-size: 1.5rem; padding: 0 3.3rem; } }

.p-sec .line-inner .content .btnWrap .btn-line::after { content: ""; position: absolute; top: 50%; right: 8.4rem; width: 1.8rem; height: 2.1rem; background: url(../img/icon_arrow_black.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-sec .line-inner .content .btnWrap .btn-line::after { right: 2.7rem; width: -webkit-calc(2.3rem / 2); width: -moz-calc(2.3rem / 2); width: calc(2.3rem / 2); height: 1.3rem; background: url(../img/icon_arrow_black_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; } }

.p-sec .line-inner .pic { width: 36.7rem; margin-right: 1.7rem; }

@media screen and (max-width: 960px) { .p-sec .line-inner .pic { width: 17.6rem; margin: 3.3rem auto 0; } }

.p-sec .company { padding-top: 11.1rem; }

.p-sec .company .heading .ja { margin-bottom: 2.3rem; }

@media screen and (max-width: 960px) { .p-sec .company .heading .ja { margin-bottom: 1.4rem; } }

.p-sec .company .heading .en { font-size: 7.5rem; line-height: -webkit-calc(90 / 75); line-height: -moz-calc(90 / 75); line-height: calc(90 / 75); letter-spacing: 0.05em; }

@media screen and (max-width: 960px) { .p-sec .company .heading .en { font-size: 4.2rem; line-height: -webkit-calc(96 / 84); line-height: -moz-calc(96 / 84); line-height: calc(96 / 84); } }

.p-sec .company .company_list { margin-top: 10.7rem; padding: 0 5rem; }

@media screen and (max-width: 960px) { .p-sec .company .company_list { padding: 0; margin-top: 4.2rem; } }

.p-sec .company .company_list dl { border-bottom: 0.1rem solid #ffffff; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(33 / 18); line-height: -moz-calc(33 / 18); line-height: calc(33 / 18); letter-spacing: 0.2em; padding: 3.9rem 0 2.9rem; }

@media screen and (max-width: 960px) { .p-sec .company .company_list dl { -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; font-size: -webkit-calc(2.7rem / 2); font-size: -moz-calc(2.7rem / 2); font-size: calc(2.7rem / 2); line-height: -webkit-calc(41 / 27); line-height: -moz-calc(41 / 27); line-height: calc(41 / 27); letter-spacing: 0.1em; border-bottom: none; padding: 3.9rem 0 0; } }

.p-sec .company .company_list dl:first-child { padding-top: 0; padding-bottom: 3rem; }

@media screen and (max-width: 960px) { .p-sec .company .company_list dl:first-child { padding-bottom: 0; } }

.p-sec .company .company_list dl:nth-child(2) { padding: 4.2rem 0 4.1rem; }

@media screen and (max-width: 960px) { .p-sec .company .company_list dl:nth-child(2) { padding: 3.9rem 0 0; }
  .p-sec .company .company_list dl:nth-child(2) dd { padding-top: 1.6rem; } }

.p-sec .company .company_list dl dt { width: 15rem; padding-left: 1.7rem; }

@media screen and (max-width: 960px) { .p-sec .company .company_list dl dt { width: 100%; padding-left: 0; border-bottom: 0.1rem dashed #ffffff; padding-bottom: 0.2rem; } }

.p-sec .company .company_list dl dd { width: -webkit-calc(100% - 15rem); width: -moz-calc(100% - 15rem); width: calc(100% - 15rem); padding-left: 15.2rem; }

@media screen and (max-width: 960px) { .p-sec .company .company_list dl dd { width: 100%; padding-left: 0; padding-top: 1.6rem; } }

.p-sec .company .map { width: 90rem; margin: 7.8rem auto 0; }

@media screen and (max-width: 960px) { .p-sec .company .map { width: 27rem; margin-top: 6.7rem; }
  .p-sec .company .map .gg-map iframe { width: 27rem; } }

.p-sec .company .map .name { font-size: 2.4rem; font-weight: bold; line-height: -webkit-calc(33 / 24); line-height: -moz-calc(33 / 24); line-height: calc(33 / 24); letter-spacing: 0.2em; margin-top: 3.9rem; }

@media screen and (max-width: 960px) { .p-sec .company .map .name { font-size: -webkit-calc(2.7rem / 2); font-size: -moz-calc(2.7rem / 2); font-size: calc(2.7rem / 2); line-height: -webkit-calc(33 / 27); line-height: -moz-calc(33 / 27); line-height: calc(33 / 27); margin-top: 2.7rem; } }

.p-sec .company .map .address { font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(33 / 18); line-height: -moz-calc(33 / 18); line-height: calc(33 / 18); letter-spacing: 0.2em; margin-top: 0.5rem; }

@media screen and (max-width: 960px) { .p-sec .company .map .address { font-size: 1.2rem; line-height: -webkit-calc(33 / 24); line-height: -moz-calc(33 / 24); line-height: calc(33 / 24); margin-top: 1.2rem; } }

.p-sec .intro { margin-top: 19.8rem; margin-bottom: 3rem; }

@media screen and (max-width: 960px) { .p-sec .intro { margin-top: 6.8rem; } }

.p-sec .intro .title { font-size: 3rem; line-height: -webkit-calc(43 / 30); line-height: -moz-calc(43 / 30); line-height: calc(43 / 30); font-weight: bold; letter-spacing: 0.2em; text-align: center; margin-bottom: 8.2rem; }

@media screen and (max-width: 960px) { .p-sec .intro .title { font-size: 2rem; line-height: -webkit-calc(55 / 40); line-height: -moz-calc(55 / 40); line-height: calc(55 / 40); letter-spacing: 0.1em; margin-bottom: 3.9rem; } }

.p-sec .intro .pic { width: 80rem; margin: 0 auto; }

@media screen and (max-width: 960px) { .p-sec .intro .pic { width: -webkit-calc(54.7rem / 2); width: -moz-calc(54.7rem / 2); width: calc(54.7rem / 2); } }

.p-sec .intro .btnWrap { margin-top: 9.4rem; }

@media screen and (max-width: 960px) { .p-sec .intro .btnWrap { margin-top: 4.5rem; } }

.p-sec .intro .btnWrap .btn-intro { width: 80rem; height: 10rem; margin: 0 auto; -moz-border-radius: 5rem; border-radius: 5rem; background: #ffffff; font-size: 2rem; line-height: 2; font-weight: bold; letter-spacing: 0.5em; color: #008342; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; position: relative; }

@media screen and (max-width: 960px) { .p-sec .intro .btnWrap .btn-intro { width: 27rem; height: 7.5rem; font-size: 1.3rem; line-height: -webkit-calc(55 / 26); line-height: -moz-calc(55 / 26); line-height: calc(55 / 26); letter-spacing: 0.2em; } }

.p-sec .intro .btnWrap .btn-intro::after { content: ""; position: absolute; top: 50%; right: 6.9rem; width: 3.8rem; height: 1.2rem; background: url(../img/icon_arrow_green.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-sec .intro .btnWrap .btn-intro::after { right: 2.2rem; width: 1rem; height: 1.1rem; background: url(../img/icon_arrow_green_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; } }

@media screen and (max-width: 960px) { .p-sec .intro .name { font-size: 1.7rem; letter-spacing: 0.1em; text-align: center; margin-top: 5.9rem; } }

.p-sec .intro .phone { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-column-gap: 3.5rem; -moz-column-gap: 3.5rem; column-gap: 3.5rem; margin-top: 10.9rem; }

@media screen and (max-width: 960px) { .p-sec .intro .phone { -webkit-column-gap: 0; -moz-column-gap: 0; column-gap: 0; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; margin-top: 1.5rem; } }

.p-sec .intro .phone .tel { font-family: "DINPro"; font-size: 3rem; font-weight: 500; line-height: -webkit-calc(47 / 30); line-height: -moz-calc(47 / 30); line-height: calc(47 / 30); margin-top: -0.3rem; letter-spacing: 0.05em; }

@media screen and (max-width: 960px) { .p-sec .intro .phone .tel { font-size: 2.3rem; line-height: -webkit-calc(76 / 46); line-height: -moz-calc(76 / 46); line-height: calc(76 / 46); text-align: center; }
  .p-sec .intro .phone .tel.fax { font-size: 1.7rem; line-height: -webkit-calc(76 / 34); line-height: -moz-calc(76 / 34); line-height: calc(76 / 34); margin-top: -1.1rem; }
  .p-sec .intro .phone .tel.fax > span { font-size: 1.7rem; line-height: -webkit-calc(76 / 34); line-height: -moz-calc(76 / 34); line-height: calc(76 / 34); } }

.p-sec .intro .phone .tel > span { font-family: "DINPro"; font-size: 4.2rem; line-height: -webkit-calc(47 / 42); line-height: -moz-calc(47 / 42); line-height: calc(47 / 42); font-weight: bold; -webkit-transform: translateY(0.1rem); -moz-transform: translateY(0.1rem); -ms-transform: translateY(0.1rem); transform: translateY(0.1rem); display: inline-block; }

@media screen and (max-width: 960px) { .p-sec .intro .phone .tel > span { font-size: 3.2rem; line-height: -webkit-calc(76 / 64); line-height: -moz-calc(76 / 64); line-height: calc(76 / 64); } }

.p-sec .intro .time { font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(59/ 18); line-height: -moz-calc(59/ 18); line-height: calc(59/ 18); letter-spacing: 0.1em; text-align: center; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; }

@media screen and (max-width: 960px) { .p-sec .intro .time { font-size: 1.2rem; line-height: -webkit-calc(92 / 28); line-height: -moz-calc(92 / 28); line-height: calc(92 / 28); margin-top: -0.8rem; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

.p-sec .intro .time .open { width: 12rem; height: 3rem; border: 0.1rem solid #ffffff; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-left: 1.4rem; }

@media screen and (max-width: 960px) { .p-sec .intro .time .open { width: -webkit-calc(18.5rem / 2); width: -moz-calc(18.5rem / 2); width: calc(18.5rem / 2); height: -webkit-calc(4.5rem / 2); height: -moz-calc(4.5rem / 2); height: calc(4.5rem / 2); margin-left: 0; margin-right: 0.8rem; } }

.p-sec .intro .address { font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(33 / 18); line-height: -moz-calc(33 / 18); line-height: calc(33 / 18); letter-spacing: 0.2em; text-align: center; }

@media screen and (max-width: 960px) { .p-sec .intro .address { font-size: -webkit-calc(2.7rem / 2); font-size: -moz-calc(2.7rem / 2); font-size: calc(2.7rem / 2); line-height: -webkit-calc(40 / 27); line-height: -moz-calc(40 / 27); line-height: calc(40 / 27); letter-spacing: 0.1em; margin-top: 1.5rem; } }

.p-sec .page-top { position: fixed; bottom: 0; right: 3.2rem; height: 11.6rem; opacity: 0; -webkit-transform: translateY(3rem); -moz-transform: translateY(3rem); -ms-transform: translateY(3rem); transform: translateY(3rem); -webkit-transition: opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1), -webkit-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1); transition: opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1), -webkit-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1); -moz-transition: transform 0.8s cubic-bezier(0.61, 1, 0.88, 1), opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1), -moz-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1); transition: transform 0.8s cubic-bezier(0.61, 1, 0.88, 1), opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1); transition: transform 0.8s cubic-bezier(0.61, 1, 0.88, 1), opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1), -webkit-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1), -moz-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1); }

@media screen and (max-width: 960px) { .p-sec .page-top { position: relative; right: 0; left: 0; bottom: -0.3rem; height: 5rem; margin: 0 auto; text-align: center; } }

.p-sec .page-top.is_show { opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.p-sec .page-top .js-top { display: inline-block; font-family: "Roboto Slab", serif; font-weight: bold; font-size: 1.7rem; line-height: -webkit-calc(30 / 17); line-height: -moz-calc(30 / 17); line-height: calc(30 / 17); letter-spacing: 0.1em; position: relative; height: 100%; }

@media screen and (max-width: 960px) { .p-sec .page-top .js-top { font-size: 1.5rem; line-height: -webkit-calc(52.5 / 30); line-height: -moz-calc(52.5 / 30); line-height: calc(52.5 / 30); } }

.p-sec .page-top .js-top::after { content: ""; position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; width: 1.6rem; height: 8.2rem; background: url(../img/icon_page_top.png) no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-sec .page-top .js-top::after { bottom: 0.4rem; width: 1.3rem; height: 1.5rem; background: url(../img/icon_page_top_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; } }

.anim_bur { opacity: 0; -webkit-transform: translateY(30px); -moz-transform: translateY(30px); -ms-transform: translateY(30px); transform: translateY(30px); will-change: transform; -webkit-transition: opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1), -webkit-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1); transition: opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1), -webkit-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1); -moz-transition: transform 0.8s cubic-bezier(0.61, 1, 0.88, 1), opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1), -moz-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1); transition: transform 0.8s cubic-bezier(0.61, 1, 0.88, 1), opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1); transition: transform 0.8s cubic-bezier(0.61, 1, 0.88, 1), opacity 0.6s cubic-bezier(0.61, 1, 0.88, 1), -webkit-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1), -moz-transform 0.8s cubic-bezier(0.61, 1, 0.88, 1); }

.anim_bur.is_show { opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.anim_bur.ltr { -webkit-transform: translate(0); -moz-transform: translate(0); -ms-transform: translate(0); transform: translate(0); }

@-webkit-keyframes loading-bar { 0% { -webkit-transform: translate3d(-50%, 0, 0); transform: translate3d(-50%, 0, 0); }
  100% { -webkit-transform: translate3d(150%, 0, 0); transform: translate3d(150%, 0, 0); } }

@-moz-keyframes loading-bar { 0% { -moz-transform: translate3d(-50%, 0, 0); transform: translate3d(-50%, 0, 0); }
  100% { -moz-transform: translate3d(150%, 0, 0); transform: translate3d(150%, 0, 0); } }

@keyframes loading-bar { 0% { -webkit-transform: translate3d(-50%, 0, 0); -moz-transform: translate3d(-50%, 0, 0); transform: translate3d(-50%, 0, 0); }
  100% { -webkit-transform: translate3d(150%, 0, 0); -moz-transform: translate3d(150%, 0, 0); transform: translate3d(150%, 0, 0); } }

select { /* Reset Select */ -webkit-appearance: none; -moz-appearance: none; appearance: none; outline: 0; border: 0.1rem solid #cccccc; -moz-box-shadow: none; box-shadow: none; /* Personalize */ -webkit-box-flex: 1; -moz-box-flex: 1; -ms-flex: 1; flex: 1; background: #f5f5f5 url(../img/icon_arrow_down.png) no-repeat right; background-position-x: 43.2rem; -moz-border-radius: 0.5rem; border-radius: 0.5rem; padding: 1.8rem 2rem; cursor: pointer; width: 47rem; font-size: 1.4rem; font-weight: bold; letter-spacing: 0.1em; }

@media screen and (max-width: 960px) { select { width: 100%; padding: 3.733vw 3.2vw 4vw; background-position-x: 97%; font-size: 3.733vw; } }

/* Remove IE arrow */
select::-ms-expand { display: none; }

/* Custom Select wrapper */
[type="radio"]:checked, [type="radio"]:not(:checked) { position: absolute; left: -9999px; }

[type="radio"]:checked + label, [type="radio"]:not(:checked) + label { position: relative; padding-left: 28px; cursor: pointer; line-height: 20px; display: inline-block; }

[type="radio"]:checked + label:before, [type="radio"]:not(:checked) + label:before { content: ""; position: absolute; left: 0; top: 0; width: 17px; height: 17px; border: 1px solid #cccccc; -moz-border-radius: 100%; border-radius: 100%; background: #f3f3f3; -moz-box-sizing: border-box; box-sizing: border-box; }

[type="radio"]:checked + label:after, [type="radio"]:not(:checked) + label:after { content: ""; width: 11px; height: 11px; background: #434443; position: absolute; top: 3px; left: 3px; -moz-border-radius: 100%; border-radius: 100%; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; transition: all 0.2s ease; }

[type="radio"]:not(:checked) + label:after { opacity: 0; -webkit-transform: scale(0); -moz-transform: scale(0); -ms-transform: scale(0); transform: scale(0); }

[type="radio"]:checked + label:after { opacity: 1; -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }

.ipt { border: 0.1rem solid #B2A397; outline: none; background-color: #008342; -moz-border-radius: 0.3rem; border-radius: 0.3rem; width: 48rem; padding: 0.9rem 1.2rem; font-family: "Noto Sans JP", sans-serif; font-size: 1.4rem; font-weight: 400; line-height: 1.428; letter-spacing: 0.1em; color: #ffffff; }

@media screen and (max-width: 960px) { .ipt { width: 100%; padding: 0.9rem 1.1rem; } }

.ipt.medium { max-width: 26.8rem; }

@media screen and (max-width: 960px) { .ipt.medium { max-width: 100%; } }

.ipt.short { max-width: 25rem; }

@media screen and (max-width: 960px) { .ipt.short { max-width: 22rem; } }

.ipt.message { height: 12rem; }

.ipt.year { width: 9rem; }

@media screen and (max-width: 960px) { .ipt.year { width: 7.7rem; } }

.ipt.month { width: 7rem; }

@media screen and (max-width: 960px) { .ipt.month { width: 5.2rem; } }

.ipt.error { border-color: #c51f20; background: #fbe9e8 url(../img/icon_err.png) 98% center no-repeat; -moz-background-size: 23px 22px; background-size: 23px 22px; }

.ipt.active { background: #f5f5f5 url(../img/icon_ok.png) 98% center no-repeat; -moz-background-size: 23px 22px; background-size: 23px 22px; }

.ipt::-webkit-input-placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */ color: #B2A397; opacity: 1; /* Firefox */ }

.ipt::-moz-placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */ color: #B2A397; opacity: 1; /* Firefox */ }

.ipt:-ms-input-placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */ color: #B2A397; opacity: 1; /* Firefox */ }

.ipt::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */ color: #B2A397; opacity: 1; /* Firefox */ }

.ipt:-ms-input-placeholder { /* Internet Explorer 10-11 */ color: #B2A397; }

.ipt::-ms-input-placeholder { /* Microsoft Edge */ color: #B2A397; }

.ipt.age { width: 12rem; margin-right: 0.6rem; }

@media screen and (max-width: 960px) { .ipt.age { width: 22.133vw; margin-right: 1.6vw; } }

.error_blank { color: #be0000; letter-spacing: 0.08em; padding-left: 2.5rem; }

@media screen and (min-width: 961px) { .error_blank { display: inline-block; position: absolute; top: 0; right: 0; } }

@media screen and (max-width: 960px) { .error_blank { position: relative; margin-top: 0.5rem; display: inherit; } }

.error_blank.icon:before { background: url(../img/icon_err_blank.png) left center no-repeat; -moz-background-size: cover; background-size: cover; left: 0; top: 0; content: ""; width: 2rem; height: 2rem; position: absolute; }

.error_blank.active { /*&:before { background: none; width: 0; height: 0; }*/ }

.req { display: inline-block; width: 3.4rem; height: 1.9rem; -moz-border-radius: 0.2rem; border-radius: 0.2rem; background-color: #C71414; font-family: "Noto Sans JP", sans-serif; font-size: 1.2rem; font-weight: 600; line-height: 1; letter-spacing: 0.1em; text-align: center; color: #008342; padding: 0.3rem 0 0.4rem; margin-right: 1rem; }

.optional { display: none !important; font-size: 1.3rem; color: #fff; background: #dddddd; border: 1px solid #acacac; -moz-border-radius: 1rem; border-radius: 1rem; width: 5rem; height: 2.2rem; text-align: center; padding: 0.2rem 0; }

.slc_wrap { display: inline; position: relative; }

.slc_wrap:after { position: absolute; content: ""; width: 1.5rem; height: 0.9rem; right: 1.5rem; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../img/icon_down_b.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

.button-wrap { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -moz-box-orient: horizontal; -moz-box-direction: reverse; -ms-flex-flow: row-reverse; flex-flow: row-reverse; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-top: 10rem; }

@media screen and (max-width: 960px) { .button-wrap { display: block; margin-top: 3.5rem; } }

.button-wrap .btn { margin: 0; }

@media screen and (min-width: 961px) { .button-wrap .btn.btn-back { margin-right: 3rem; } }

@media screen and (max-width: 960px) { .button-wrap .btn.btn-back { margin-top: 2rem; } }

.btn-back { background: #fff; color: #000; }

.btn-back:after { border-color: #000; }

.btn-back:hover { background: #000; color: #fff; }

.btn-back:hover:after { border-color: #fff; }

.ckbPrivacy { text-align: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; margin: 0; }

.ckbPrivacy .form-ctrl_check { display: inline-block; -webkit-transform: translateX(-0.9rem); -moz-transform: translateX(-0.9rem); -ms-transform: translateX(-0.9rem); transform: translateX(-0.9rem); padding-left: 2.3rem; }

@media screen and (max-width: 960px) { .ckbPrivacy .form-ctrl_check { -webkit-transform: translateX(0rem); -moz-transform: translateX(0rem); -ms-transform: translateX(0rem); transform: translateX(0rem); } }

.ckbPrivacy .form-ctrl_check .checkmark { position: absolute; top: 0; left: 0; height: 1.4rem; width: 1.4rem; border: 0.1rem solid #000000; }

.ckbPrivacy .form-ctrl_check:hover input ~ .checkmark { border: 0.1rem solid #ffffff; }

.ckbPrivacy .form-ctrl_check input:checked ~ .checkmark { background-color: #ffffff; border: 0.1rem solid #ffffff; }

.ckbPrivacy .form-ctrl_check .checkmark:after { border: solid #008342; left: 0.3rem; top: -0.1rem; width: 0.4rem; height: 0.8rem; border-width: 0 0.2rem 0.2rem 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg); }

.ckbPrivacy .form-ctrl_ctn { margin-bottom: 4.1rem; }

[type="file"] { padding: 0; position: relative; width: auto; padding: 0.5rem 3rem 0.5rem 3rem; border: 1px solid #b5b4b4; -moz-border-radius: 0.5rem; border-radius: 0.5rem; background: #fff; text-align: center; cursor: pointer; -moz-box-sizing: border-box; box-sizing: border-box; margin: auto; }

@media screen and (max-width: 960px) { [type="file"] { padding: 0.5rem 1rem 0.5rem 1rem; } }

[type="file"]::-webkit-file-upload-button { visibility: hidden; width: 0; padding: 1.5rem 2rem 1.5rem 2rem; border: 1px solid #b5b4b4; background: #fff; cursor: pointer; border-radius: 0.5rem; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }

@media screen and (min-width: 961px) { [type="file"]:hover { opacity: 0.75; background: #e3e3e3; } }

.file-box { background: #f7f7f7; border: 1px solid #b5b4b4; -moz-border-radius: 0.5rem; border-radius: 0.5rem; text-align: center; padding: 1.6rem 0 2.3rem; }

.file-ttl { font-weight: bold; letter-spacing: 0.1em; margin-bottom: 0.8rem; }

.file_note { font-size: 1.2rem; font-weight: bold; color: #b2b2b2; display: block; margin-bottom: 1.5rem; line-height: 1.35; }

@media screen and (min-width: 961px) { .p-entry { padding: 8rem 12rem; } }

@media screen and (max-width: 960px) { .p-entry { padding: 6rem 3rem 10rem; } }

.form-ctrl { position: relative; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; }

@media screen and (max-width: 960px) { .form-ctrl { -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-flow: column; flex-flow: column; padding: 0 1.7rem; }
  .form-ctrl:nth-child(5) { margin-top: 2.8rem !important; }
  .form-ctrl:nth-child(5) .form-ctrl_lbl { margin-bottom: 0.9rem; } }

.form-ctrl + .form-ctrl { margin-top: 3rem; }

@media screen and (max-width: 960px) { .form-ctrl + .form-ctrl { margin-top: 2.4rem; } }

.form-ctrl:nth-child(4) .form-ctrl_ctn { padding-top: 4.6rem; }

@media screen and (max-width: 960px) { .form-ctrl:nth-child(4) .form-ctrl_ctn { padding-top: 0.9rem; } }

@media screen and (max-width: 960px) { .form-ctrl:nth-child(6) { margin-top: 2.2rem; }
  .form-ctrl:nth-child(6) .form-ctrl_lbl { margin-bottom: 0.9rem; } }

.form-ctrl:nth-child(6) .form-ctrl_ctn-notes { margin-top: 0.6rem; }

@media screen and (max-width: 960px) { .form-ctrl:nth-child(7) .form-ctrl_lbl { margin-bottom: 0.9rem; } }

.form-ctrl:nth-child(7) .form-ctrl_ctn-notes { margin-top: 0.6rem; }

.form-ctrl_lbl { font-family: "Noto Sans JP", sans-serif; font-size: 1.4rem; font-weight: 700; line-height: 1; letter-spacing: 0.1em; text-align: right; width: 24rem; padding-top: 1rem; }

@media screen and (max-width: 960px) { .form-ctrl_lbl { width: 100%; text-align: left; padding-top: 0; margin-bottom: 0.4rem; } }

.form-ctrl_lbl .required { display: none !important; }

.form-ctrl_ctn { width: 51rem; margin-left: 2rem; }

@media screen and (max-width: 960px) { .form-ctrl_ctn { width: 100%; margin-left: 0; } }

.form-ctrl_ctn-notes { font-family: "Noto Sans JP", sans-serif; font-size: 1.4rem; font-weight: 400; line-height: 1.428; letter-spacing: 0.1em; text-align: left; color: #000000; margin-top: 0.2rem; }

@media screen and (max-width: 960px) { .form-ctrl_ctn-notes { font-size: 1.3rem; line-height: 1.4; margin-top: 0.4rem; } }

.form-ctrl_ctn--in { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; }

.form-ctrl_ctn--in > div { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; margin-right: 2rem; }

@media screen and (max-width: 960px) { .form-ctrl_ctn--in > div { margin-right: 1.8rem; } }

.form-ctrl_ctn--in > div > span { font-family: "Noto Sans JP", sans-serif; font-size: 1.6rem; font-weight: 600; line-height: 1,375; letter-spacing: 0.1em; margin-left: 1rem; }

.form-ctrl_check { display: block; position: relative; padding-left: 2.6rem; cursor: pointer; font-family: "Noto Sans JP", sans-serif; font-size: 1.4rem; font-weight: 600; line-height: 1; letter-spacing: 0.1em; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.form-ctrl_check + .form-ctrl_check { margin-top: 2.2rem; }

.form-ctrl_check input { position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0; }

.form-ctrl_check .checkmark { position: absolute; top: 0; left: 0; height: 1.5rem; width: 1.5rem; border: 0.2rem solid #000000; }

.form-ctrl_check:hover input ~ .checkmark { border: 0.2rem solid #ffffff; }

.form-ctrl_check input:checked ~ .checkmark { background-color: #008342; border: 0.2rem solid #ffffff; }

.form-ctrl_check .checkmark:after { content: ""; position: absolute; display: none; }

.form-ctrl_check input:checked ~ .checkmark:after { display: block; }

.form-ctrl_check .checkmark:after { left: 0.3rem; top: -0.1rem; width: 0.3rem; height: 0.8rem; border: solid #ffffff; border-width: 0 0.2rem 0.2rem 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg); }

@media screen and (min-width: 961px) { .form-ctrl_sub { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; } }

.form-ctrl_sub + .form-ctrl_sub { margin-top: 1rem; }

.form-ctrl_sub__left { font-size: 1.6rem; font-weight: 500; letter-spacing: 0.08em; }

@media screen and (min-width: 961px) { .form-ctrl_sub__left { width: -webkit-calc(240 / 680 * 100%); width: -moz-calc(240 / 680 * 100%); width: calc(240 / 680 * 100%); padding: 1.5rem 0; } }

@media screen and (max-width: 960px) { .form-ctrl_sub__left { margin-bottom: 1rem; } }

@media screen and (min-width: 961px) { .form-ctrl_sub__right { width: -webkit-calc(440 / 680 * 100%); width: -moz-calc(440 / 680 * 100%); width: calc(440 / 680 * 100%); } }

.form-ctrl_sub__right ul { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; }

.form-ctrl_sub__right ul li:last-child { position: relative; margin-left: 2.8rem; }

.form-ctrl_sub__right ul li:last-child:before { position: absolute; content: ""; width: 0.8rem; height: 0.1rem; left: -1.8rem; top: 50%; background: #707070; }

.form-ctrl_sub__right .note { font-size: 1.2rem; letter-spacing: 0.08em; color: #a6a6a6; margin-top: 1rem; }

.form-ctrl .error { display: none; font-family: "Noto Sans JP", sans-serif; font-size: 1.4rem; font-weight: 400; line-height: 1; letter-spacing: 0.1em; text-align: left; color: #C71414; margin-top: 1rem; }

.form-privacy { max-width: 47.9rem; margin: 6rem auto 2.5rem; }

@media screen and (max-width: 960px) { .form-privacy { max-width: 100%; margin: 3.7rem 0 2.6rem; } }

.form-privacy__ttl { font-family: "Noto Sans JP", sans-serif; font-size: 1.4rem; font-weight: 700; line-height: 1; letter-spacing: 0.1em; text-align: center; margin-bottom: 0.9rem; }

.form-privacy__detail { width: 100%; height: 12rem; background-color: #E8E4E1; -moz-border-radius: 0.3rem; border-radius: 0.3rem; padding: 1.4rem 0 1rem; }

.form-privacy__detail > div { height: 9.7rem; overflow-y: scroll; padding: 0 3.1rem 0 2rem; scrollbar-width: none; -ms-overflow-style: none; }

@media screen and (max-width: 960px) { .form-privacy__detail > div { padding: 0 2.1rem 0 1.2rem; } }

.form-privacy__detail > div::-webkit-scrollbar { width: 0 !important; display: none; }

.form-privacy__detail > div > p { font-family: "Noto Sans JP", sans-serif; font-size: 1.4rem; font-weight: 400; line-height: 1.57; letter-spacing: 0.1em; text-align: right; color: #000; }

.form-privacy_link { font-size: 1.2rem; font-weight: bold; margin-top: 2rem; }

.form-privacy_link a { display: inline-block; text-decoration: underline; }

.form-btn { text-align: center; margin-top: 3.7rem; }

@media screen and (max-width: 960px) { .form-btn { margin-top: 2.1rem; } }

.btn-submit { display: inline-block; width: 29.9rem; height: 8.2rem; border: 0.2rem solid #766152 !important; font-family: "Noto Sans JP", sans-serif; font-size: 1.8rem; font-weight: 600; line-height: 2; letter-spacing: 0.1em; text-align: center; color: #F8F7F6; outline: none; background: #000000; cursor: pointer; -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; }

.btn-submit:hover { background-color: #ffffff; }

@media screen and (max-width: 960px) { .page-contact .openbtn1 span { background: #fff; } }

.p-contact { padding: 22rem 0 10.4rem; }

.p-contact__inner { max-width: 100rem; margin: 0 auto; }

.p-contact_ttl { font-family: "Roboto Slab", serif; font-size: 10rem; line-height: 1; font-weight: bold; color: #fff; padding-left: 1.2rem; letter-spacing: 0.06em; margin-bottom: 9.2rem; }

.p-contact_head { font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(33 / 18); line-height: -moz-calc(33 / 18); line-height: calc(33 / 18); letter-spacing: 0.2em; text-align: center; }

@media screen and (max-width: 960px) { .p-contact_head { font-size: -webkit-calc(2.7rem / 2); font-size: -moz-calc(2.7rem / 2); font-size: calc(2.7rem / 2); line-height: 2; letter-spacing: 0.1em; } }

.p-contact .btnWrap { margin-top: 5rem; }

.p-contact .btnWrap .p-thanks_btn { width: 45rem; height: 7.5rem; margin: 0 auto; -moz-border-radius: 3.75rem; border-radius: 3.75rem; background: #ffffff; font-family: "Roboto Slab", serif; font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(57 / 18); line-height: -moz-calc(57 / 18); line-height: calc(57 / 18); letter-spacing: 0.1em; color: #008342; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; position: relative; }

@media screen and (max-width: 960px) { .p-contact .btnWrap .p-thanks_btn { width: 27rem; font-size: 1.5rem; line-height: -webkit-calc(68 / 30); line-height: -moz-calc(68 / 30); line-height: calc(68 / 30); } }

.p-contact .btnWrap .p-thanks_btn::after { content: ""; position: absolute; top: 50%; right: 3rem; width: 3.8rem; height: 1.2rem; background: url(../img/icon_arrow_green.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-contact .btnWrap .p-thanks_btn::after { right: 2.2rem; width: 1rem; height: 1.1rem; background: url(../img/icon_arrow_green_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; } }

.p-contact .infor .bg-br { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; margin: 0 auto; background-color: #fff; -moz-border-radius: 2rem; border-radius: 2rem; color: #008342; font-size: 1.6rem; width: 29.9rem; height: 3.5rem; font-weight: bold; padding-top: 0.4rem; letter-spacing: 0.18em; padding-left: 0.5rem; margin-bottom: 3.2rem; }

.p-contact .infor .tel { font-family: "DINPro"; font-weight: bold; font-size: 4.2rem; letter-spacing: 0.04em; line-height: -webkit-calc(47 / 42); line-height: -moz-calc(47 / 42); line-height: calc(47 / 42); text-align: center; display: block; margin-bottom: 2px; }

.p-contact .infor .tel span { font-size: 3rem; }

.p-contact .infor .fax { font-family: "DINPro"; font-weight: 500; font-size: 2.2rem; letter-spacing: 0.05em; line-height: -webkit-calc(47 / 42); line-height: -moz-calc(47 / 42); line-height: calc(47 / 42); text-align: center; display: block; padding-left: 4px; }

.p-contact .infor .txt { text-align: center; margin-top: 3.6rem; margin-bottom: 5.4rem; font-size: 1.4rem; font-weight: 500; line-height: -webkit-calc(29 / 14); line-height: -moz-calc(29 / 14); line-height: calc(29 / 14); }

.p-contact .formContent .note { color: #f2e421; font-family: "Noto Sans JP", sans-serif; font-weight: bold; font-size: 1.6rem; line-height: -webkit-calc(30 / 16); line-height: -moz-calc(30 / 16); line-height: calc(30 / 16); letter-spacing: 0.09em; margin-bottom: 1.5rem; }

.p-contact .formContent .frm-group { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -moz-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; border-top: 1px solid #b2b2b2; padding: 3rem 0 3.1rem; }

.p-contact .formContent .frm-group.no-br { border-top: none; }

.p-contact .formContent .frm-group.policy { max-width: 80rem; margin: 8.6rem auto 0; width: 100%; padding: 0; border-top: none; }

.p-contact .formContent .frm-group.policy .title { height: 3.9rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; position: relative; background-color: #333; font-weight: bold; font-size: 1.5rem; letter-spacing: 0.15em; padding-left: 0.6rem; cursor: pointer; }

.p-contact .formContent .frm-group.policy .title::before { content: ""; position: absolute; top: 1.4rem; right: 6.9rem; width: 0px; height: 0px; border-style: solid; border-width: 1.4rem 0.9rem 0 0.9rem; border-color: #fff transparent transparent transparent; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); }

.p-contact .formContent .frm-group.policy .title.open + .content { max-height: 200.9rem; }

.p-contact .formContent .frm-group.policy .title.open::before { -webkit-transform: rotate(-180deg); -moz-transform: rotate(-180deg); -ms-transform: rotate(-180deg); transform: rotate(-180deg); }

.p-contact .formContent .frm-group.policy .content { max-height: 0; overflow: hidden; -webkit-transition: max-height 0.5s ease; -moz-transition: max-height 0.5s ease; transition: max-height 0.5s ease; }

.p-contact .formContent .frm-group.policy .txt { padding: 5.9rem 7.5rem 5.2rem; font-size: 1.4rem; font-weight: 500; line-height: -webkit-calc(22 / 14); line-height: -moz-calc(22 / 14); line-height: calc(22 / 14); background-color: #fff; color: #2c1d1a; }

.p-contact .formContent .frm-group.checkprcy { font-weight: 500; font-size: 1.6rem; line-height: -webkit-calc(24 / 16); line-height: -moz-calc(24 / 16); line-height: calc(24 / 16); color: #fff; text-align: center; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; padding: 0; margin-top: 7.3rem; }

.p-contact .formContent .frm-group.checkprcy .checkbox { position: relative; max-width: 20rem; margin: 2rem auto 0; width: 100%; }

.p-contact .formContent .frm-group.checkprcy #f_check-error { position: absolute; top: 100%; left: 50%; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); white-space: nowrap; color: #f2e421; font-size: 1.2rem; font-weight: 400; }

.p-contact .formContent .frm-group.checkprcy input { width: 2rem; height: 2rem; position: absolute; top: 0.4rem; left: 2.6rem; border: 1px solid #fff; outline: none; -moz-box-shadow: none; box-shadow: none; cursor: pointer; }

.p-contact .formContent .frm-group.checkprcy .checklb { font-size: 1.8rem; font-weight: bold; padding-left: 3.7rem; letter-spacing: 0.4em; }

.p-contact .formContent .frm-group input { height: 3.8rem; width: 100%; padding: 1rem; border: none; color: #000; }

.p-contact .formContent .frm-group input::-webkit-input-placeholder { color: inherit; }

.p-contact .formContent .frm-group input::-moz-placeholder { color: inherit; }

.p-contact .formContent .frm-group input:-ms-input-placeholder { color: inherit; }

.p-contact .formContent .frm-group input::placeholder { color: inherit; }

.p-contact .formContent .frm-group input:focus { outline: none; -moz-box-shadow: unset; box-shadow: unset; border: none; color: #000; }

.p-contact .formContent .frm-group textarea { width: 76.7rem; height: 23rem; padding: 1rem; border: none; resize: none; color: #000; }

.p-contact .formContent .frm-group textarea::-webkit-input-placeholder { color: inherit; }

.p-contact .formContent .frm-group textarea::-moz-placeholder { color: inherit; }

.p-contact .formContent .frm-group textarea:-ms-input-placeholder { color: inherit; }

.p-contact .formContent .frm-group textarea::placeholder { color: inherit; }

.p-contact .formContent .frm-group textarea:focus { color: #000; outline: none; -moz-box-shadow: unset; box-shadow: unset; border: none; }

.p-contact .formContent .frm-tit { font-weight: bold; color: #fff; font-size: 1.6rem; padding-top: 0.9rem; padding-left: 2.8rem; letter-spacing: 0.1em; width: -webkit-calc(100% - 76.7rem); width: -moz-calc(100% - 76.7rem); width: calc(100% - 76.7rem); }

.p-contact .formContent .frm-tit .eq { color: #f2e421; }

.p-contact .formContent .frm-control { width: 76.7rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

.p-contact .formContent .frm-control .error { margin: 1rem 0 0; color: #f2e421; font-size: 1.2rem; font-weight: 400; }

.p-contact .formContent .frm-control .text-input { font-weight: bold; color: #fff; font-size: 1.6rem; padding-top: 0.9rem; padding-left: 2.8rem; letter-spacing: 0.1em; display: none; }

.p-contact .formContent .frmBtn { margin-top: 3.7rem; text-align: center; }

.p-contact .formContent .btn_frm { width: 80rem; height: 10rem; -moz-border-radius: 5rem; border-radius: 5rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; background-color: #333333; color: #fff; font-weight: bold; font-size: 2rem; border: 0; margin: 0 auto 0; padding-top: 1rem; letter-spacing: 0.9rem; padding-left: 1.6rem; cursor: pointer; -webkit-transition: opacity 0.3s ease; -moz-transition: opacity 0.3s ease; transition: opacity 0.3s ease; }

.p-contact .formContent .btn_frm.back-button { margin-bottom: 4rem; display: none; }

.p-contact .formContent .btn_frm.submit { display: none; }

.p-contact .formContent .btn_frm:hover { opacity: 0.7; }

.p-contact .line { padding: 8.7rem 0 5rem; }

@media screen and (max-width: 960px) { .p-contact .line { padding: 5.1rem 0 0; } }

.p-contact .line-inner { max-width: 87.6rem; margin: 0 auto; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 960px) { .p-contact .line-inner { -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; max-width: 100%; } }

.p-contact .line-inner .content { width: 40rem; padding-top: 3.3rem; }

@media screen and (max-width: 960px) { .p-contact .line-inner .content { width: 100%; } }

.p-contact .line-inner .content .name { font-size: 2rem; font-weight: bold; line-height: 1.6; letter-spacing: 0.2em; text-align: center; position: relative; }

@media screen and (max-width: 960px) { .p-contact .line-inner .content .name { font-size: -webkit-calc(2.5rem / 2); font-size: -moz-calc(2.5rem / 2); font-size: calc(2.5rem / 2); } }

.p-contact .line-inner .content .name::before { content: ""; position: absolute; top: 50%; left: 4.4rem; width: 1.7rem; height: 4rem; background: url(../img/icon_line_left_pc.png) no-repeat; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-contact .line-inner .content .name::before { left: 6.3rem; width: -webkit-calc(2.1rem / 2); width: -moz-calc(2.1rem / 2); width: calc(2.1rem / 2); height: -webkit-calc(4.9rem / 2); height: -moz-calc(4.9rem / 2); height: calc(4.9rem / 2); background: url(../img/icon_line_left_sp.png) no-repeat; } }

.p-contact .line-inner .content .name::after { content: ""; position: absolute; top: 50%; right: 4.4rem; width: 1.7rem; height: 4rem; background: url(../img/icon_line_right_pc.png) no-repeat; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-contact .line-inner .content .name::after { right: 6.3rem; width: -webkit-calc(2.1rem / 2); width: -moz-calc(2.1rem / 2); width: calc(2.1rem / 2); height: -webkit-calc(4.9rem / 2); height: -moz-calc(4.9rem / 2); height: calc(4.9rem / 2); background: url(../img/icon_line_right_sp.png) no-repeat; } }

.p-contact .line-inner .content .title { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; margin-top: 0.6rem; padding-left: 0.8rem; }

@media screen and (max-width: 960px) { .p-contact .line-inner .content .title { padding-left: 0; margin-top: 0.3rem; } }

.p-contact .line-inner .content .title .en { font-family: "Roboto Slab", serif; font-size: 13rem; font-weight: bold; line-height: -webkit-calc(153 / 130); line-height: -moz-calc(153 / 130); line-height: calc(153 / 130); letter-spacing: 0.06em; }

@media screen and (max-width: 960px) { .p-contact .line-inner .content .title .en { font-size: 8.1rem; line-height: -webkit-calc(191 / 162); line-height: -moz-calc(191 / 162); line-height: calc(191 / 162); } }

.p-contact .line-inner .content .title .ja { font-size: 3.5rem; font-weight: bold; line-height: 1.6; letter-spacing: 0.4em; margin-top: -0.7rem; }

@media screen and (max-width: 960px) { .p-contact .line-inner .content .title .ja { font-size: 2.2rem; margin-top: -0.5rem; } }

.p-contact .line-inner .content .btnWrap { margin-top: 4rem; }

@media screen and (max-width: 960px) { .p-contact .line-inner .content .btnWrap { margin-top: 2.5rem; } }

.p-contact .line-inner .content .btnWrap .btn-line { display: block; width: 100%; height: 7.5rem; -moz-border-radius: 3.75rem; border-radius: 3.75rem; background: #ffffff; font-size: 1.8rem; font-weight: bold; line-height: -webkit-calc(59 / 18); line-height: -moz-calc(59 / 18); line-height: calc(59 / 18); letter-spacing: 0.4em; padding: 0.9rem 8.6rem; color: #000000; position: relative; }

@media screen and (max-width: 960px) { .p-contact .line-inner .content .btnWrap .btn-line { width: 25rem; height: 4.7rem; margin: 0 auto; font-size: 1.5rem; padding: 0 3.3rem; } }

.p-contact .line-inner .content .btnWrap .btn-line::after { content: ""; position: absolute; top: 50%; right: 8.4rem; width: 1.8rem; height: 2.1rem; background: url(../img/icon_arrow_black.png) no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 960px) { .p-contact .line-inner .content .btnWrap .btn-line::after { right: 2.7rem; width: -webkit-calc(2.3rem / 2); width: -moz-calc(2.3rem / 2); width: calc(2.3rem / 2); height: 1.3rem; background: url(../img/icon_arrow_black_sp.png) no-repeat; -moz-background-size: cover; background-size: cover; } }

.p-contact .line-inner .pic { width: 36.7rem; margin-right: 1.7rem; }

@media screen and (max-width: 960px) { .p-contact .line-inner .pic { width: 17.6rem; margin: 3.3rem auto 0; } }

@media screen and (max-width: 960px) { .p-contact { padding: 10.8rem 0 5.4rem; }
  .p-contact__inner { max-width: 100rem; margin: 0 auto; }
  .p-contact_ttl { font-family: "Roboto Slab", serif; font-size: 4.2rem; line-height: 1; font-weight: bold; color: #fff; padding-left: 0; letter-spacing: 0.06em; margin-bottom: 6.5rem; text-align: center; padding-right: 0.7rem; }
  .p-contact .infor .bg-br { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; margin: 0 auto; background-color: #fff; -moz-border-radius: 2rem; border-radius: 2rem; color: #008342; font-size: 1.05rem; width: 19.8rem; height: 2.3rem; font-weight: bold; padding-top: 0.4rem; letter-spacing: 0.18em; padding-left: 0; margin-bottom: 2rem; }
  .p-contact .infor .tel { font-family: "DINPro"; font-weight: bold; font-size: 2.73rem; letter-spacing: 0.04em; line-height: -webkit-calc(47 / 42); line-height: -moz-calc(47 / 42); line-height: calc(47 / 42); text-align: center; display: block; margin-bottom: 0.6rem; }
  .p-contact .infor .tel span { font-size: 2rem; font-weight: 500; }
  .p-contact .infor .fax { font-family: "DINPro"; font-weight: 500; font-size: 1.6rem; letter-spacing: 0.05em; line-height: -webkit-calc(47 / 42); line-height: -moz-calc(47 / 42); line-height: calc(47 / 42); text-align: center; display: block; padding-left: 4px; }
  .p-contact .infor .txt { text-align: center; margin-top: 1.8rem; margin-bottom: 3.6rem; font-size: 1.2rem; font-weight: 500; line-height: -webkit-calc(38 / 24); line-height: -moz-calc(38 / 24); line-height: calc(38 / 24); padding: 0 2.6rem; text-align: left; letter-spacing: 0.01em; -moz-font-feature-settings: "palt" 1; font-feature-settings: "palt" 1; }
  .p-contact .formContent { padding: 0 2rem; }
  .p-contact .formContent .note { color: #f2e421; font-family: "Noto Sans JP", sans-serif; font-weight: bold; font-size: 1.2rem; line-height: -webkit-calc(30 / 16); line-height: -moz-calc(30 / 16); line-height: calc(30 / 16); letter-spacing: 0.09em; margin-bottom: 0.8rem; padding-left: 0.6rem; }
  .p-contact .formContent .frm-group { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; border-top: none; padding: 2.2rem 0 1.5rem; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
  .p-contact .formContent .frm-group.no-br { border-top: none; }
  .p-contact .formContent .frm-group:nth-child(1) { border-top: 1px solid #b2b2b2; }
  .p-contact .formContent .frm-group.policy { max-width: 100%; margin: 0.2rem auto 0; width: 100%; padding: 0; border-top: none; }
  .p-contact .formContent .frm-group.policy .title { height: 3rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; position: relative; background-color: #333; font-weight: bold; font-size: 1.05rem; letter-spacing: 0.15em; padding-left: 0rem; cursor: pointer; }
  .p-contact .formContent .frm-group.policy .title::before { content: ""; position: absolute; top: 1.1rem; right: 2rem; width: 0px; height: 0px; border-style: solid; border-width: 0.7rem 0.45rem 0 0.45rem; border-color: #fff transparent transparent transparent; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); }
  .p-contact .formContent .frm-group.policy .title.open + .content { max-height: 200.9rem; }
  .p-contact .formContent .frm-group.policy .title.open::before { -webkit-transform: rotate(-180deg); -moz-transform: rotate(-180deg); -ms-transform: rotate(-180deg); transform: rotate(-180deg); }
  .p-contact .formContent .frm-group.policy .content { max-height: 0; overflow: hidden; -webkit-transition: max-height 0.5s ease; -moz-transition: max-height 0.5s ease; transition: max-height 0.5s ease; }
  .p-contact .formContent .frm-group.policy .txt { padding: 1.7rem 1.6rem 5.2rem; font-size: 1.05rem; font-weight: 500; line-height: -webkit-calc(20 / 14); line-height: -moz-calc(20 / 14); line-height: calc(20 / 14); background-color: #fff; color: #2c1d1a; }
  .p-contact .formContent .frm-group.checkprcy { font-weight: 500; font-size: 1.05rem; line-height: -webkit-calc(33 / 21); line-height: -moz-calc(33 / 21); line-height: calc(33 / 21); color: #fff; text-align: center; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-box-orient: vertical; -moz-box-direction: normal; -ms-flex-direction: column; flex-direction: column; padding: 0; margin-top: 3.2rem; margin-left: -1.4rem; margin-right: -1.4rem; }
  .p-contact .formContent .frm-group.checkprcy .checkbox { position: relative; max-width: 20rem; margin: 2.6rem auto 0; width: 100%; }
  .p-contact .formContent .frm-group.checkprcy input { width: 2.7rem; height: 2.7rem; position: absolute; top: -0.5rem; left: 3.9rem; border: 1px solid #fff; outline: none; -moz-box-shadow: none; box-shadow: none; cursor: pointer; }
  .p-contact .formContent .frm-group.checkprcy .checklb { font-size: 1.2rem; font-weight: bold; padding-left: 2.9rem; letter-spacing: 0.4em; }
  .p-contact .formContent .frm-group input { height: 4rem; width: 100%; padding: 1rem; border: none; -moz-border-radius: 5px; border-radius: 5px; }
  .p-contact .formContent .frm-group input:focus { outline: none; -moz-box-shadow: unset; box-shadow: unset; border: none; }
  .p-contact .formContent .frm-group textarea { width: 100%; height: 35rem; padding: 1rem; border: none; resize: none; -moz-border-radius: 5px; border-radius: 5px; }
  .p-contact .formContent .frm-group textarea:focus { outline: none; -moz-box-shadow: unset; box-shadow: unset; border: none; }
  .p-contact .formContent .frm-control { width: 100%; }
  .p-contact .formContent .frm-control .text-input { font-size: 1.35rem; padding-left: 0; letter-spacing: 0.1em; }
  .p-contact .formContent .frm-tit { font-weight: bold; color: #fff; font-size: 1.35rem; padding-top: 0; padding-left: 0; letter-spacing: 0.1em; margin-bottom: 0.9rem; width: 100%; }
  .p-contact .formContent .frm-tit .eq { color: #f2e421; font-size: 1.2rem; margin-left: -0.5rem; }
  .p-contact .formContent .frmBtn { margin-top: 1.9rem; }
  .p-contact .formContent .btn_frm { width: -webkit-calc(100% + 2.4rem); width: -moz-calc(100% + 2.4rem); width: calc(100% + 2.4rem); height: 5rem; -moz-border-radius: 5rem; border-radius: 5rem; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; background-color: #333333; color: #fff; font-weight: bold; font-size: 1.4rem; border: 0; margin: 0 auto 0; padding-top: 0; letter-spacing: 0.7rem; padding-left: 1.1rem; cursor: pointer; -webkit-transition: opacity 0.3s ease; -moz-transition: opacity 0.3s ease; transition: opacity 0.3s ease; margin-right: -1.2rem; margin-left: -1.2rem; }
  .p-contact .formContent .btn_frm:hover { opacity: 0.7; }
  .p-contact .formContent .btn_frm.back-button { margin-bottom: 2rem; } }
