@charset "UTF-8";
@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=Urbanist:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,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 */ }

html { font-size: 62.5%; }

@media screen and (max-width: 960px) { html { font-size: 2.66667vw; } }

/*@media only (min-width: 750px) and (max-width: 768px) {
    html {
        font-size: 1.6vw;
    }
}*/
body { font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", 'Hiragino Kaku Gothic Pro', "メイリオ", 'Meiryo', "ＭＳ Ｐゴシック", 'MS PGothic', Arial, sans-serif; font-style: normal; font-size: 14px; font-size: 1.4rem; line-height: 1.28571; color: #323232; background-color: #fff; word-break: normal; line-break: strict; font-weight: 400; letter-spacing: 0.02em; }

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 8vw 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; }

.container { max-width: 123rem; padding: 0 1.5rem; margin: 0 auto; }

@media screen and (max-width: 960px) { .container { padding: 0 2rem; } }

.inner { max-width: 99rem; margin: 0 auto; padding: 0 1.5rem; }

@media screen and (max-width: 960px) { .inner { padding: 0 2rem; } }

#hambuger { width: 2.4rem; height: 2.4rem; 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; cursor: pointer; position: relative; -moz-border-radius: 50%; border-radius: 50%; }

#hambuger.open span.open { display: none; }

#hambuger.open span.close { display: inline-block; }

.nav-icon ul { position: relative; width: 2.4rem; height: 1.8rem; }

.nav-icon ul li { list-style: none; position: absolute; background: #fff; width: 2.4rem; height: 0.1rem; left: 0; -moz-border-radius: 20px; border-radius: 20px; -webkit-transform: translate(0, -50%); -moz-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease; }

.nav-icon ul li:nth-of-type(1) { top: 10%; }

.nav-icon ul li:nth-of-type(2) { top: 50%; }

.nav-icon ul li:nth-of-type(3) { top: 90%; width: 50%; left: 0; }

.nav-icon ul li span { display: inline-block; }

.nav-icon.open ul { opacity: 1; visibility: visible; }

.nav-icon.open ul li { background: #fff; }

.nav-icon.open ul li:nth-of-type(1) { width: 100%; top: 50%; -webkit-transform: translate(0, -50%) rotate(36deg); -moz-transform: translate(0, -50%) rotate(36deg); -ms-transform: translate(0, -50%) rotate(36deg); transform: translate(0, -50%) rotate(36deg); }

.nav-icon.open ul li:nth-of-type(3) { width: 100%; top: 50%; -webkit-transform: translate(0, -50%) rotate(-36deg); -moz-transform: translate(0, -50%) rotate(-36deg); -ms-transform: translate(0, -50%) rotate(-36deg); transform: translate(0, -50%) rotate(-36deg); }

.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, 50px); -moz-transform: translate(0, 50px); -ms-transform: translate(0, 50px); transform: translate(0, 50px); -webkit-transition: all 0.8s; -moz-transition: all 0.8s; transition: all 0.8s; }

.js-view.fadein { opacity: 1; -webkit-transform: translate(0, 0); -moz-transform: translate(0, 0); -ms-transform: translate(0, 0); transform: translate(0, 0); }

@-webkit-keyframes btnHover { 0% { -webkit-transform: translateX(0%); transform: translateX(0%);
    -webkit-transform-origin: 50% 0%;
            transform-origin: 50% 0%; }
  33% { -webkit-transform: translateX(101%); transform: translateX(101%);
    -webkit-transform-origin: 100% 50%;
            transform-origin: 100% 50%; }
  34% { visibility: hidden; }
  65% { visibility: hidden; }
  66% { -webkit-transform: translateX(-101%); transform: translateX(-101%);
    -webkit-transform-origin: 100% 50%;
            transform-origin: 100% 50%; }
  100% { -webkit-transform: translateX(0%); transform: translateX(0%);
    -webkit-transform-origin: 50% 0%;
            transform-origin: 50% 0%; } }

@-moz-keyframes btnHover { 0% { -moz-transform: translateX(0%); transform: translateX(0%);
    -moz-transform-origin: 50% 0%;
         transform-origin: 50% 0%; }
  33% { -moz-transform: translateX(101%); transform: translateX(101%);
    -moz-transform-origin: 100% 50%;
         transform-origin: 100% 50%; }
  34% { visibility: hidden; }
  65% { visibility: hidden; }
  66% { -moz-transform: translateX(-101%); transform: translateX(-101%);
    -moz-transform-origin: 100% 50%;
         transform-origin: 100% 50%; }
  100% { -moz-transform: translateX(0%); transform: translateX(0%);
    -moz-transform-origin: 50% 0%;
         transform-origin: 50% 0%; } }

@keyframes btnHover { 0% { -webkit-transform: translateX(0%); -moz-transform: translateX(0%); transform: translateX(0%);
    -webkit-transform-origin: 50% 0%;
       -moz-transform-origin: 50% 0%;
            transform-origin: 50% 0%; }
  33% { -webkit-transform: translateX(101%); -moz-transform: translateX(101%); transform: translateX(101%);
    -webkit-transform-origin: 100% 50%;
       -moz-transform-origin: 100% 50%;
            transform-origin: 100% 50%; }
  34% { visibility: hidden; }
  65% { visibility: hidden; }
  66% { -webkit-transform: translateX(-101%); -moz-transform: translateX(-101%); transform: translateX(-101%);
    -webkit-transform-origin: 100% 50%;
       -moz-transform-origin: 100% 50%;
            transform-origin: 100% 50%; }
  100% { -webkit-transform: translateX(0%); -moz-transform: translateX(0%); transform: translateX(0%);
    -webkit-transform-origin: 50% 0%;
       -moz-transform-origin: 50% 0%;
            transform-origin: 50% 0%; } }

.btn { display: block; font-size: 2rem; font-weight: 300; font-style: italic; font-family: "Urbanist", sans-serif; width: 100%; max-width: 37.4rem; padding: 1rem 0; position: relative; overflow: hidden; }

.btn:before, .btn:after { position: absolute; content: ''; }

.btn:before { width: 100%; height: 0.1rem; left: 0; bottom: 0; background: #1A1A1A; }

.btn:after { width: 2.6rem; height: 2.6rem; right: 1rem; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../img/btn_icon.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; -webkit-transition: all .25s linear; -moz-transition: all .25s linear; transition: all .25s linear; }

.btn.white:before { background: #fff; }

.btn.white:after { background: url(../img/btn_icon_w.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

.btn:hover:before { -webkit-animation: btnHover 1s linear; -moz-animation: btnHover 1s linear; animation: btnHover 1s linear; }

.btn:hover:after { right: 0; }

.page-main { position: relative; }

.anchor { display: inline-block; visibility: hidden; height: 0; padding-top: 10rem; margin-top: -10rem; }

@media screen and (max-width: 960px) { .anchor { padding-top: 6.6rem; margin-top: -6.6rem; } }

.font_en { font-family: "Urbanist", sans-serif; }

@media screen and (min-width: 961px) { .section-title { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: end; -moz-box-align: end; -ms-flex-align: end; align-items: flex-end; margin: 0 0 8rem; } }

@media screen and (max-width: 960px) { .section-title { margin: 0 0 4rem; } }

.section-title .en { font-size: 6rem; font-weight: 200; line-height: 0.8; font-style: italic; }

@media screen and (max-width: 960px) { .section-title .en { font-size: 3.4rem; } }

.section-title .ja { display: inline-block; letter-spacing: 0.15em; position: relative; padding: 0 0 0 4.2rem; margin-left: 1.5rem; }

.section-title .ja:before { position: absolute; content: ''; width: 4.2rem; height: 4.2rem; left: 0; bottom: 0; background: url(../img/title_line.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .section-title .ja { font-size: 1.2rem; margin: 1rem 0 0; padding-left: 2rem; }
  .section-title .ja:before { width: 1rem; height: 1rem; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } }

.maskToLeft { position: relative; -webkit-transform: translateZ(0); -moz-transform: translateZ(0); transform: translateZ(0); overflow: hidden; transition: transform 0.8s ease, opacity 1s ease, -webkit-transform 0.8s ease; }

.maskToLeft:before { position: absolute; content: ""; width: 100%; height: 100%; left: 0; top: 0; -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); background: #5D5F63; -webkit-transition: -webkit-transform 0.8s linear; transition: -webkit-transform 0.8s linear; -webkit-transition: -webkit-transform 1.2s linear; transition: -webkit-transform 1.2s linear; -moz-transition: transform 1.2s linear, -moz-transform 1.2s linear; transition: transform 1.2s linear; transition: transform 1.2s linear, -webkit-transform 1.2s linear, -moz-transform 1.2s linear; transition: transform 1.2s linear, -webkit-transform 1.2s linear; z-index: 2; }

.maskToLeft.active:before { -webkit-transform: translate3d(-100%, 0, 0); -moz-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); }

/* Loading
-------------------------------*/
.loading { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #8feeff; background: -webkit-gradient(left top, right top, color-stop(0%, #8feeff), color-stop(100%, #ef5afe)); background: -webkit-linear-gradient(left, #8feeff 0%, #ef5afe 100%); background: -webkit-gradient(linear, left top, right top, from(#8feeff), to(#ef5afe)); background: -moz- oldlinear-gradient(left, #8feeff 0%, #ef5afe 100%); background: linear-gradient(to right, #8feeff 0%, #ef5afe 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8feeff', endColorstr='#ef5afe', GradientType=1 ); 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%; }

.loading__logo { -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 456px; text-align: center; }

@media screen and (max-width: 960px) { .loading__logo { width: 58.66667vw; } }

.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: 7rem; margin-left: -3rem; }

@media screen and (max-width: 768px) { .loading__spinner { margin-top: 9rem; } }

.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); } }

@-webkit-keyframes transX { 0% { -webkit-transform: translateX(-100%); transform: translateX(-100%); }
  47.5% { -webkit-transform: translateX(0); transform: translateX(0); }
  52.5% { -webkit-transform: translateX(0); transform: translateX(0); }
  100% { -webkit-transform: translateX(200%); transform: translateX(200%); } }

@-moz-keyframes transX { 0% { -moz-transform: translateX(-100%); transform: translateX(-100%); }
  47.5% { -moz-transform: translateX(0); transform: translateX(0); }
  52.5% { -moz-transform: translateX(0); transform: translateX(0); }
  100% { -moz-transform: translateX(200%); transform: translateX(200%); } }

@keyframes transX { 0% { -webkit-transform: translateX(-100%); -moz-transform: translateX(-100%); transform: translateX(-100%); }
  47.5% { -webkit-transform: translateX(0); -moz-transform: translateX(0); transform: translateX(0); }
  52.5% { -webkit-transform: translateX(0); -moz-transform: translateX(0); transform: translateX(0); }
  100% { -webkit-transform: translateX(200%); -moz-transform: translateX(200%); transform: translateX(200%); } }

@-webkit-keyframes imgZoom { 0% { -webkit-transform: scale(1.2); transform: scale(1.2); }
  100% { -webkit-transform: scale(1); transform: scale(1); } }

@-moz-keyframes imgZoom { 0% { -moz-transform: scale(1.2); transform: scale(1.2); }
  100% { -moz-transform: scale(1); transform: scale(1); } }

@keyframes imgZoom { 0% { -webkit-transform: scale(1.2); -moz-transform: scale(1.2); transform: scale(1.2); }
  100% { -webkit-transform: scale(1); -moz-transform: scale(1); transform: scale(1); } }

@-webkit-keyframes imgOpacity { 0% { opacity: 0;
    -webkit-transform: scale3d(1.02, 1.02, 1);
            transform: scale3d(1.02, 1.02, 1); }
  75% { opacity: 0;
    -webkit-transform: scale3d(1.02, 1.02, 1);
            transform: scale3d(1.02, 1.02, 1); }
  100% { opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

@-moz-keyframes imgOpacity { 0% { opacity: 0;
    -moz-transform: scale3d(1.02, 1.02, 1);
         transform: scale3d(1.02, 1.02, 1); }
  75% { opacity: 0;
    -moz-transform: scale3d(1.02, 1.02, 1);
         transform: scale3d(1.02, 1.02, 1); }
  100% { opacity: 1;
    -moz-transform: scale3d(1, 1, 1);
         transform: scale3d(1, 1, 1); } }

@keyframes imgOpacity { 0% { opacity: 0;
    -webkit-transform: scale3d(1.02, 1.02, 1);
       -moz-transform: scale3d(1.02, 1.02, 1);
            transform: scale3d(1.02, 1.02, 1); }
  75% { opacity: 0;
    -webkit-transform: scale3d(1.02, 1.02, 1);
       -moz-transform: scale3d(1.02, 1.02, 1);
            transform: scale3d(1.02, 1.02, 1); }
  100% { opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
       -moz-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

.tranX { visibility: hidden; position: relative; overflow: hidden; }

.tranX:before { -moz-backface-visibility: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden; content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; -moz-transform: translateX(-101%); -ms-transform: translateX(-101%); -webkit-transform: translateX(-101%); transform: translateX(-101%); z-index: 2; background: #1A1A1A; }

.tranX img { width: 100%; height: 100%; object-fit: cover; opacity: 0; visibility: hidden; }

.tranX.active { visibility: visible; }

.tranX.active:before { -webkit-animation: transX 2s cubic-bezier(0.78, 0.07, 0, 1) normal; -moz-animation: transX 2s cubic-bezier(0.78, 0.07, 0, 1) normal; animation: transX 2s cubic-bezier(0.78, 0.07, 0, 1) normal; }

.tranX.active img { -webkit-animation: imgZoom 2s linear normal; -moz-animation: imgZoom 2s linear normal; animation: imgZoom 2s linear normal; opacity: 1; visibility: visible; -webkit-transition-delay: 1s; -moz-transition-delay: 1s; transition-delay: 1s; }

.tranX_S { visibility: hidden; position: relative; overflow: hidden; }

.tranX_S:before { -moz-backface-visibility: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden; content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; -moz-transform: translateX(-101%); -ms-transform: translateX(-101%); -webkit-transform: translateX(-101%); transform: translateX(-101%); z-index: 2; background: #fff; }

.tranX_S img { width: 100%; height: 100%; object-fit: cover; }

.tranX_S.active { visibility: visible; }

.tranX_S.active:before { -webkit-animation: transX 2s cubic-bezier(0.78, 0.07, 0, 1) normal; -moz-animation: transX 2s cubic-bezier(0.78, 0.07, 0, 1) normal; animation: transX 2s cubic-bezier(0.78, 0.07, 0, 1) normal; }

.tranX_S.active img { -webkit-animation: imgOpacity 2s linear; -moz-animation: imgOpacity 2s linear; animation: imgOpacity 2s linear; }

.tranX_M { visibility: hidden; position: relative; overflow: hidden; }

.tranX_M:before { -moz-backface-visibility: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden; content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; -moz-transform: translateX(-101%); -ms-transform: translateX(-101%); -webkit-transform: translateX(-101%); transform: translateX(-101%); z-index: 2; background: #1A1A1A; }

.tranX_M img { width: 100%; height: 100%; object-fit: cover; }

.tranX_M.active { visibility: visible; }

.tranX_M.active:before { -webkit-animation: transX 2s cubic-bezier(0.78, 0.07, 0, 1) normal; -moz-animation: transX 2s cubic-bezier(0.78, 0.07, 0, 1) normal; animation: transX 2s cubic-bezier(0.78, 0.07, 0, 1) normal; }

/*----------------------------------------------------------
    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 { background: #1A1A1A; color: #fff; 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: 1.5rem -webkit-calc(40/1366 * 100%); padding: 1.5rem -moz-calc(40/1366 * 100%); padding: 1.5rem calc(40/1366 * 100%); position: fixed; left: 0; top: 0; width: 100%; z-index: 9; }

@media screen and (max-width: 960px) { .page-header { padding: 1.2rem 2rem; } }

.logo {font-size: 2rem;/* font-weight: 400; *//* font-family: "Urbanist", sans-serif; */}

.logo span { display: inline-block; font-family: 'Urbanist', sans-serif; font-size: 1.2rem; opacity: 0.3; }

@media screen and (max-width: 960px) { .logo {font-size: 1.8rem;letter-spacing: 0;} }

@media screen and (min-width: 961px) { .menu { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; } }

@media screen and (min-width: 961px) { .menu li + li { margin-left: 5rem; letter-spacing: 0.12em; } }

@media screen and (max-width: 960px) { .menu li + li { margin-top: 0.5rem; } }

@media screen and (max-width: 960px) { .menu li { display: block; }
  .menu li span { display: block; } }

.menu-item span { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }

@media screen and (min-width: 961px) { .menu-item_en { display: none; } }

@media screen and (max-width: 960px) { .menu-item_en { font-size: 2.4rem; font-weight: 300; line-height: 1; font-family: "Urbanist", sans-serif; } }

@media screen and (max-width: 960px) { .menu-item_ja { font-size: 1.2rem; letter-spacing: 0.15em; margin-top: 0.5rem; } }

@media screen and (max-width: 960px) { .menu-item a { display: block; padding: 2.2rem 2rem 2.5rem; position: relative; z-index: 2; }
  .menu-item a:after { position: absolute; content: ''; width: 73%; height: 100%; left: 13%; top: 0; background: #1A1A1A; z-index: -1; -webkit-transform: skewX(-45deg); -moz-transform: skewX(-45deg); -ms-transform: skewX(-45deg); transform: skewX(-45deg); } }

@media screen and (min-width: 961px) { .g-nav { display: block !important; } }

@media screen and (max-width: 960px) { .g-nav { display: none; width: 100%; position: absolute; left: 0; top: 5.2rem; background: #272727; padding: 2rem; } }

@media screen and (min-width: 961px) { .h_home.page-header { padding: 6rem -webkit-calc(40/1366 * 100%); padding: 6rem -moz-calc(40/1366 * 100%); padding: 6rem calc(40/1366 * 100%); -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
  .h_home .menu-item_en { display: block; font-size: 2.4rem; font-family: "Urbanist", sans-serif; font-weight: 300; line-height: 1; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; transition: all 0.3s ease; }
  .h_home .menu-item_ja { font-size: 1.2rem; color: #B7B7B7; } }

@media screen and (min-width: 1280px) { .h_home .menu li + li { margin-left: 8rem; } }

/** footer
======================================= **/
@media screen and (min-width: 961px) { .footer { width: -webkit-calc(720/1200 * 100%); width: -moz-calc(720/1200 * 100%); width: calc(720/1200 * 100%); } }

@media screen and (min-width: 961px) { .footer-logo { width: -webkit-calc(480/1200 * 100%); width: -moz-calc(480/1200 * 100%); width: calc(480/1200 * 100%); } }

@media screen and (max-width: 960px) { .footer-logo { margin-bottom: 4rem; } }

.footer-top { background: #1A1A1A; color: #fff; padding: 9rem 0 6.5rem; }

@media screen and (max-width: 960px) { .footer-top { padding: 5rem 0 7rem; } }

@media screen and (min-width: 961px) { .footer-top .container { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; } }

.footer-bottom { padding: 2.5rem 0; }

.footer-bottom .container { 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; }

@media screen and (min-width: 961px) { .footer-bottom_left { 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; } }

.footer-nav_top { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; }

@media screen and (min-width: 961px) { .footer-nav_col { width: 30%; } }

@media screen and (max-width: 960px) { .footer-nav_col { width: 50%; } }

@media screen and (min-width: 961px) { .footer-nav_col:last-child { width: 70%; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; } }

@media screen and (min-width: 961px) { .footer-nav_col__s { width: 50%; } }

@media screen and (max-width: 960px) { .footer-nav_col__s + .footer-nav_col__s { margin-top: 1.7rem; } }

.footer-nav_item + .footer-nav_item { margin-top: 4rem; }

@media screen and (max-width: 960px) { .footer-nav_item + .footer-nav_item { margin-top: 1.7rem; } }

.footer-nav_item .ttl { font-size: 2.4rem; font-weight: 300; }

.footer-nav_item .txt { display: inline-block; font-size: 1.2rem; color: #B7B7B7; letter-spacing: 0.15em; }

.footer-nav_item__list { padding-left: 2rem; margin-top: 1.7rem; }

.footer-nav_item__list li { list-style: disc; }

.footer-nav_item__list li + li { margin-top: 1.2rem; }

.footer-nav_bottom { margin-top: 6rem; }

.footer-nav_bottom ul { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; }

@media screen and (max-width: 960px) { .footer-nav_bottom ul { -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; } }

@media screen and (min-width: 961px) { .footer-nav_bottom ul li + li { margin-left: 4rem; }
  .footer-nav_bottom ul li:nth-child(2), .footer-nav_bottom ul li:nth-child(3) { display: none; } }

@media screen and (max-width: 960px) { .footer-nav_bottom ul li { width: 50%; margin-top: 1rem; } }

.footer-nav_bottom ul li a { display: inline-block; font-size: 1.2rem; color: #B7B7B7; }

.s-logo { width: 10.8rem; }

@media screen and (max-width: 960px) { .s-logo { width: 8.9rem; } }

.s-logo a { display: block; }

.s-link { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin-left: 6rem; }

.s-link li + li { margin-left: 4rem; }

.s-link li a { font-size: 1.2rem; }

@media screen and (max-width: 960px) { .s-link { display: none; } }

.copyright { display: inline-block; font-size: 1.2rem; letter-spacing: 0.05em; }

@media screen and (max-width: 960px) { .copyright { font-size: 1rem; } }

/** home
======================================= **/
@-webkit-keyframes header_animate { 0% { opacity: 1;
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  25% { opacity: 1; }
  100% { opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); } }
@-moz-keyframes header_animate { 0% { opacity: 1;
    -moz-transform: scale(1.1);
         transform: scale(1.1); }
  25% { opacity: 1; }
  100% { opacity: 1;
    -moz-transform: scale(1);
         transform: scale(1); } }
@keyframes header_animate { 0% { opacity: 1;
    -webkit-transform: scale(1.1);
       -moz-transform: scale(1.1);
            transform: scale(1.1); }
  25% { opacity: 1; }
  100% { opacity: 1;
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
            transform: scale(1); } }

@-webkit-keyframes fadezoom { 0% { -webkit-transform: scale(1.2); transform: scale(1.2); }
  100% { -webkit-transform: scale(1); transform: scale(1); } }

@-moz-keyframes fadezoom { 0% { -moz-transform: scale(1.2); transform: scale(1.2); }
  100% { -moz-transform: scale(1); transform: scale(1); } }

@keyframes fadezoom { 0% { -webkit-transform: scale(1.2); -moz-transform: scale(1.2); transform: scale(1.2); }
  100% { -webkit-transform: scale(1); -moz-transform: scale(1); transform: scale(1); } }

.slide-animation { -webkit-animation: fadezoom 8s 0s forwards; -moz-animation: fadezoom 8s 0s forwards; animation: fadezoom 8s 0s forwards; }

.main-visual { margin-top: 16rem; }

.main-visual.active .mv-slider { opacity: 1; visibility: visible; -webkit-transition-delay: 1s; -moz-transition-delay: 1s; transition-delay: 1s; }

@media screen and (max-width: 960px) { .main-visual { margin-top: 5.2rem; } }

.mv-slider { opacity: 0; visibility: hidden; /*> .slick-list, > .slick-list > .slick-track, > .slick-list > .slick-track > .slick-slide > div { position: relative; height: 100%; }*/ }

.mv-slider_item { -webkit-transition: all .25s ease; -moz-transition: all .25s ease; transition: all .25s ease; }

.mv-slider_item__in { height: 0; line-height: 0; overflow: hidden; padding-bottom: 56.25%; position: relative; width: 100%; }

.mv-slider_item__in img { opacity: 0; position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: contain;'; }

.mv-slider .slick-slide { /*img { transition: all 4s cubic-bezier(.2,.74,1,1); transform: scale(1); width: 100%; height: 100%; object-fit: cover; }*/ }

.mv-slider .slick-slide.slick-active { -webkit-animation: fadezoom 5s 0s forwards; -moz-animation: fadezoom 5s 0s forwards; animation: fadezoom 5s 0s forwards; }

.mv-slider .slick-slide.slick-active img { opacity: 1; }

.mv-slider .slick-dots { 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: absolute; bottom: 3rem; left: 50%; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); }

.mv-slider .slick-dots li { width: 0.8rem; height: 0.8rem; background: #CCCCCC; -moz-border-radius: 50%; border-radius: 50%; }

.mv-slider .slick-dots li + li { margin-left: 1.5rem; }

.mv-slider .slick-dots li button { background: none; outline: none; border: none; text-indent: -9999px; }

.mv-slider .slick-dots li.slick-active { width: 1.2rem; height: 1.2rem; background: #1A1A1A; }

@media screen and (max-width: 960px) { .mv-slider .slick-dots { position: static; -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); width: 100%; margin-top: 2rem; } }

.p-home { /** _concept **/ /** _brands **/ /** _contents **/ /** _news **/ }

.p-home_concept { padding: 11.2rem 0 3rem 0; }

@media screen and (max-width: 960px) { .p-home_concept { padding: 5.5rem 0 0 0; } }

@media screen and (min-width: 961px) { .p-home .concept-contents { 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: 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; } }

@media screen and (min-width: 961px) { .p-home .concept-contents_img { width: -webkit-calc(680/1200 * 100%); width: -moz-calc(680/1200 * 100%); width: calc(680/1200 * 100%); } }

@media screen and (max-width: 960px) { .p-home .concept-contents_img { margin-bottom: 4rem; } }

@media screen and (min-width: 961px) { .p-home .concept-contents_copy { width: -webkit-calc(420/1200 * 100%); width: -moz-calc(420/1200 * 100%); width: calc(420/1200 * 100%); } }

@media screen and (max-width: 960px) { .p-home .concept-contents_copy { text-align: center; } }

.p-home .concept-contents_ttl { font-size: 3rem; font-weight: 300; letter-spacing: 0.25em; line-height: 1.8; margin-bottom: 6rem; }

@media screen and (max-width: 960px) { .p-home .concept-contents_ttl { font-size: 2rem; margin-bottom: 3rem; } }

.p-home .concept-contents_txt { line-height: 2.14; }

.p-home .concept-contents_txt p + p { margin-top: 2.5rem; }

@media screen and (max-width: 960px) { .p-home .concept-contents_txt p + p { margin-top: 2rem; } }

.p-home_brands { padding: 11.2rem 0 0 0; }

@media screen and (min-width: 961px) { .p-home_brands .section-title { margin-bottom: 10rem; } }

@media screen and (max-width: 960px) { .p-home_brands { padding: 7.5rem 0 8rem 0; } }

.p-home .article-ttl { font-size: 3rem; font-weight: 300; margin-bottom: 2.8rem; }

@media screen and (max-width: 960px) { .p-home .article-ttl { font-size: 2rem; margin-bottom: 1.5rem; } }

.p-home .article-sub { font-size: 2rem; font-weight: 300; letter-spacing: 0.25em; line-height: 1.7; margin-bottom: 1.9rem; }

@media screen and (max-width: 960px) { .p-home .article-sub { margin-bottom: 2rem; } }

.p-home .article-txt { line-height: 2.14; margin-bottom: 3rem; }

@media screen and (min-width: 961px) { .p-home .brands-article { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -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; position: relative; }
  .p-home .brands-article:after { position: absolute; content: ''; width: -webkit-calc(350/1366 * 100%); width: -moz-calc(350/1366 * 100%); width: calc(350/1366 * 100%); height: 50%; left: 0; top: -2rem; background: #1A1A1A; } }

@media screen and (max-width: 960px) { .p-home .brands-article + .brands-article { margin-top: 6rem; } }

@media screen and (min-width: 961px) { .p-home .brands-article_img { width: -webkit-calc(1016/1366 * 100%); width: -moz-calc(1016/1366 * 100%); width: calc(1016/1366 * 100%); } }

@media screen and (max-width: 960px) { .p-home .brands-article_img { margin-bottom: 2.7rem; } }

@media screen and (min-width: 961px) { .p-home .brands-article_ctn { position: absolute; left: -webkit-calc(83/1366 * 100%); left: -moz-calc(83/1366 * 100%); left: calc(83/1366 * 100%); top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); width: -webkit-calc(534/1366 * 100%); width: -moz-calc(534/1366 * 100%); width: calc(534/1366 * 100%); padding: -webkit-calc(60/1366 * 100%) -webkit-calc(80/1366 * 100%); padding: -moz-calc(60/1366 * 100%) -moz-calc(80/1366 * 100%); padding: calc(60/1366 * 100%) calc(80/1366 * 100%); background: #fff; z-index: 2; } }

@media screen and (max-width: 960px) { .p-home .brands-article_ctn { padding: 0 2rem; } }

@media screen and (min-width: 961px) { .p-home .brands-article.reverse { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -moz-box-orient: horizontal; -moz-box-direction: normal; -ms-flex-flow: row; flex-flow: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .p-home .brands-article.reverse:after { left: auto; right: 0; }
  .p-home .brands-article.reverse .brands-article_ctn { left: auto; right: -webkit-calc(83/1366 * 100%); right: -moz-calc(83/1366 * 100%); right: calc(83/1366 * 100%); } }

@media screen and (max-width: 960px) { .p-home .brands-article.reverse .article-sub { letter-spacing: 0.19em; } }

.p-home_contents { padding: 11.2rem 0 13.8rem 0; background: #1A1A1A; color: #fff; }

@media screen and (max-width: 960px) { .p-home_contents { padding: 6.5rem 0 7rem 0; } }

.p-home_contents .section-title .ja:before { background: url(../img/title_line_w.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (min-width: 961px) { .p-home_contents .wrap-btn { margin-top: 8rem; }
  .p-home_contents .wrap-btn .btn { margin-left: auto; } }

@media screen and (max-width: 960px) { .p-home_contents .wrap-btn { margin-top: 5rem; } }

.p-home .contents-ttl { font-size: 2rem; font-weight: 300; line-height: 1.7; letter-spacing: 0.25em; text-align: center; padding: 2rem 0; margin-bottom: 8rem; position: relative; }

.p-home .contents-ttl:before, .p-home .contents-ttl:after { position: absolute; content: ''; }

.p-home .contents-ttl:before { width: 100%; height: 1px; left: 0; top: 0; background: white; background: -webkit-gradient(left top, right top, color-stop(0%, white), color-stop(100%, #1a1a1a)); background: -webkit-linear-gradient(left, white 0%, #1a1a1a 100%); background: -webkit-gradient(linear, left top, right top, from(white), to(#1a1a1a)); background: -moz- oldlinear-gradient(left, white 0%, #1a1a1a 100%); background: linear-gradient(to right, white 0%, #1a1a1a 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#1a1a1a', GradientType=1 ); }

@media screen and (min-width: 961px) { .p-home .contents-ttl:before { width: 80%; left: 20%; } }

.p-home .contents-ttl:after { width: 100%; height: 1px; left: 0; bottom: 0; background: #1a1a1a; background: -webkit-gradient(left top, right top, color-stop(0%, #1a1a1a), color-stop(100%, white)); background: -webkit-linear-gradient(left, #1a1a1a 0%, white 100%); background: -webkit-gradient(linear, left top, right top, from(#1a1a1a), to(white)); background: -moz- oldlinear-gradient(left, #1a1a1a 0%, white 100%); background: linear-gradient(to right, #1a1a1a 0%, white 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1a1a1a', endColorstr='#ffffff', GradientType=1 ); }

@media screen and (min-width: 961px) { .p-home .contents-ttl:after { width: 80%; right: 20%; left: auto; } }

@media screen and (max-width: 960px) { .p-home .contents-ttl { font-size: 1.6rem; padding: 1.5rem 0; margin-bottom: 4rem; } }

@media screen and (min-width: 961px) { .p-home .contents-slider { padding-left: -webkit-calc((100% - 1366px) / 2 + 83px); padding-left: -moz-calc((100% - 1366px) / 2 + 83px); padding-left: calc((100% - 1366px) / 2 + 83px); position: relative; } }

@media screen and (max-width: 960px) { .p-home .contents-slider { padding: 0 2rem; } }

@media screen and (min-width: 961px) { .p-home .contents-slider_item { padding: 0 2.5rem; width: 50rem; } }

@media screen and (max-width: 960px) { .p-home .contents-slider_item + .contents-slider_item { margin-top: 5rem; } }

.p-home .contents-slider_item__thumb { overflow: hidden; margin-bottom: 2.5rem; height: 45rem; }

@media screen and (max-width: 960px) { .p-home .contents-slider_item__thumb { height: 33.5rem; } }

.p-home .contents-slider_item__thumb img { width: 100%; height: 100%; object-fit: cover; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; transition: all 0.5s; -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }

.p-home .contents-slider_item__ttl { font-size: 1.8rem; font-weight: 300; letter-spacing: 0.1em; line-height: 1.89; margin-bottom: 1rem; /*a { display: inline-block; @include pc { &:hover { text-decoration: underline; } } }*/ }

@media screen and (max-width: 960px) { .p-home .contents-slider_item__ttl { font-size: 1.6rem; } }

.p-home .contents-slider_item__txt { line-height: 1.7; }

.p-home .contents-slider_item__tags { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid #fff; }

.p-home .contents-slider_item__tags li { font-size: 1.2rem; }

.p-home .contents-slider_item__tags li + li { margin-left: 2rem; }

.p-home .contents-slider_item__tags a { display: inline-block; }

@media screen and (min-width: 961px) { .p-home .contents-slider_item__tags a:hover { text-decoration: underline; } }

@media screen and (min-width: 961px) { .p-home .contents-slider_item__link:hover .contents-slider_item__thumb img { -webkit-transform: scale(1.1); -moz-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); }
  .p-home .contents-slider_item__link:hover .contents-slider_item__ttl { text-decoration: underline; } }

.p-home .contents-slider .slick-dots { 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: absolute; bottom: -11rem; }

.p-home .contents-slider .slick-dots li { width: 0.8rem; height: 0.8rem; background: #CCCCCC; -moz-border-radius: 50%; border-radius: 50%; }

.p-home .contents-slider .slick-dots li + li { margin-left: 1.5rem; }

.p-home .contents-slider .slick-dots li button { background: none; outline: none; border: none; text-indent: -9999px; }

.p-home .contents-slider .slick-dots li.slick-active { width: 1.2rem; height: 1.2rem; }

.p-home_news { padding: 11.2rem 0 10rem 0; background: #F6F6F6; }

@media screen and (min-width: 961px) { .p-home_news .wrap-btn { margin-top: 7rem; }
  .p-home_news .wrap-btn .btn { margin-left: auto; } }

@media screen and (max-width: 960px) { .p-home_news { padding: 5.5rem 0 7rem 0; }
  .p-home_news .wrap-btn { margin-top: 4rem; } }

.news-item { background: #fff; }

.news-item + .news-item { margin-top: 1.5rem; }

.news-item_date { font-family: "Urbanist", sans-serif; font-size: 1.6rem; letter-spacing: 0.1em; line-height: 1; width: 16rem; padding: 0 1rem; }

@media screen and (max-width: 960px) { .news-item_date { display: inline-block; font-size: 1.4rem; width: 100%; padding: 0; margin-bottom: 0.5rem; } }

@media screen and (min-width: 961px) { .news-item_ctn { width: -webkit-calc(100% - 16rem); width: -moz-calc(100% - 16rem); width: calc(100% - 16rem); } }

.news-item_ttl { display: inline-block; font-style: normal; line-height: 2.14; }

@media screen and (max-width: 960px) { .news-item_ttl { line-height: 1.57; } }

.news-item_cat { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; margin-top: 1rem; }

.news-item_cat li { background: #F6F6F6; padding: 1rem; font-size: 1.2rem; display: inline-block; }

.news-item_cat li + li { margin-left: 1.5rem; }

@media screen and (max-width: 960px) { .news-item_cat li + li { margin-left: 1rem; } }

.news-item_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: 100%; padding: 2rem; position: relative; z-index: 1; overflow: hidden; }

@media screen and (min-width: 961px) { .news-item_link:after { position: absolute; content: ''; width: -webkit-calc(612/1200 * 100%); width: -moz-calc(612/1200 * 100%); width: calc(612/1200 * 100%); height: 100%; left: 0; top: 0; background: rgba(255, 255, 255, 0); background: -webkit-gradient(left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(50%, #ececec), color-stop(100%, rgba(255, 255, 255, 0))); background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, #ececec 50%, rgba(255, 255, 255, 0) 100%); background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(50%, #ececec), to(rgba(255, 255, 255, 0))); background: -moz- oldlinear-gradient(left, rgba(255, 255, 255, 0) 0%, #ececec 50%, rgba(255, 255, 255, 0) 100%); background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #ececec 50%, rgba(255, 255, 255, 0) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff', GradientType=1 ); z-index: -1; -moz-backface-visibility: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden; -moz-transform: translateX(-101%); -ms-transform: translateX(-101%); -webkit-transform: translateX(-101%); transform: translateX(-101%); }
  .news-item_link:hover { opacity: 1; }
  .news-item_link:hover:after { -webkit-animation: transX .8s linear normal; -moz-animation: transX .8s linear normal; animation: transX .8s linear normal; }
  .news-item_link:hover .news-item_ttl { text-decoration: underline; } }

@media screen and (max-width: 960px) { .news-item_link { padding: 1.5rem; display: block; } }

.category-list { 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; margin: 0 0 8rem 0; }

@media screen and (max-width: 960px) { .category-list { margin: 0 0 5rem 0; } }

.category-list li + li { margin-left: 5rem; }

@media screen and (max-width: 960px) { .category-list li + li { margin-left: 2rem; } }

.category-list li a { display: inline-block; color: #C2C2C2; }

.category-list li a:hover, .category-list li a.active { color: #1A1A1A; position: relative; }

.category-list li a:hover:before, .category-list li a.active:before { position: absolute; content: ''; width: 0.6rem; height: 0.6rem; left: 50%; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); top: -1.2rem; background: #1A1A1A; -moz-border-radius: 50%; border-radius: 50%; }

.p-news { padding: 15rem 0 9rem; }

@media screen and (max-width: 960px) { .p-news { padding: 10rem 0; } }

.p-news .section-title { display: block; }

@media screen and (max-width: 960px) { .p-news .section-title { margin-bottom: 5rem; } }

.p-news .section-title .en { font-size: 8rem; font-weight: 200; }

@media screen and (max-width: 960px) { .p-news .section-title .en { font-size: 3.4rem; font-style: italic; } }

.p-news .section-title .ja { margin: 1rem 0 0 0; padding: 0; font-size: 1.6rem; }

.p-news .section-title .ja:before { width: 0; height: 0; background: transparent; }

@media screen and (max-width: 960px) { .p-news .section-title .ja { font-size: 1.2rem; } }

.p-news .news-item { border-bottom: 1px solid #D6D6D6; }

.p-news .news-item:first-child { border-top: 1px solid #D6D6D6; }

.p-news .news-item + .news-item { margin-top: 0; }

.p-news .news-item_date { margin-bottom: 1rem; }

.p-news .news-item_cat { margin-top: 1rem; }

.p-news .news-item_ttl { font-size: 1.6rem; font-weight: 300; letter-spacing: 0.25em; line-height: 1.75; }

.p-news .news-item_link:after { width: 0; height: 0; background: transparent; }

@media screen and (max-width: 960px) { .p-news .news-item_link { padding: 2rem 0; } }

.pagination { margin: 7rem 0 0; text-align: center; }

.pageds { 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; }

.pageds li + li { margin-left: 3rem; }

@media screen and (max-width: 960px) { .pageds li + li { margin-left: 2rem; } }

.paged { display: inline-block; font-size: 2.6rem; font-family: "Urbanist", sans-serif; font-weight: 300; font-style: italic; color: #7D7D7D; }

@media screen and (max-width: 960px) { .paged { font-size: 2rem; } }

.paged.current, .paged:hover { font-weight: 400; text-decoration: underline; color: #191A1C; font-style: normal; }

.paged.prev, .paged.next { text-indent: -9999px; width: 2.6rem; height: 2.6rem; }

.paged.prev { margin-right: 3rem; background: url(../img/icon_prev.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .paged.prev { margin-right: 1.5rem; } }

.paged.next { margin-left: 3rem; background: url(../img/icon_next.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .paged.next { margin-left: 1.5rem; } }

.back-link { display: inline-block; padding-left: 4rem; position: relative; margin: 0 0 5rem 0; }

@media screen and (max-width: 960px) { .back-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; padding-left: 3.5rem; margin: 0 0 4rem 0; } }

.back-link:before, .back-link:after { position: absolute; content: ''; }

.back-link:before { width: 2.6rem; height: 2.6rem; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: #F6F6F6; -moz-border-radius: 50%; border-radius: 50%; }

.back-link:after { width: 0.4rem; height: 0.8rem; left: 1rem; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../img/icon_left.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

.back-link .en { font-size: 2.4rem; font-weight: 300; letter-spacing: 0.15em; }

@media screen and (max-width: 960px) { .back-link .en { font-size: 2rem; } }

.back-link .ja { display: inline-block; font-size: 1.2rem; letter-spacing: 0.15em; }

@media screen and (max-width: 960px) { .back-link .ja { font-size: 1rem; margin-left: 0.5rem; } }

.entry { max-width: 96rem; margin: 0 auto; }

.entry-meta { 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: 0 0 3rem; }

.entry-meta_date { display: inline-block; font-family: "Urbanist", sans-serif; font-weight: 400; letter-spacing: 0.1em; }

.entry-meta .news-item_cat { margin: 0 0 0 3rem; }

@media screen and (max-width: 960px) { .entry-meta { display: block; margin: 0 0 1.5rem; }
  .entry-meta .news-item_cat { margin: 1rem 0 0; } }

.entry-title { font-size: 2.6rem; font-weight: 300; line-height: 1.7; padding-bottom: 4rem; margin-bottom: 5rem; border-bottom: 1px solid #D6D6D6; }

@media screen and (max-width: 960px) { .entry-title { font-size: 1.8rem; padding-bottom: 2.5rem; margin-bottom: 3rem; } }

.entry-feature { margin-bottom: 5rem; }

@media screen and (max-width: 960px) { .entry-feature { margin: 0 -2rem 3rem; } }

.entry-content img { display: block; margin: 5rem auto 0; }

@media screen and (max-width: 960px) { .entry-content img { margin: 4rem auto 3rem; } }

.entry-content .movie { width: 100%; max-width: 80rem; height: 0; padding-bottom: 56.25%; margin: 8rem auto 0; position: relative; }

.entry-content .movie iframe { width: 100%; height: 100%; position: absolute; left: 0; top: 0; }

@media screen and (max-width: 960px) { .entry-content .movie { margin: 4rem auto 2.5rem; } }

.entry-content h2 { font-size: 2rem; font-weight: 300; letter-spacing: 0.21em; line-height: 1.7; margin: 8rem 0 2.5rem; }

@media screen and (max-width: 960px) { .entry-content h2 { font-size: 1.6rem; margin: 4rem 0 2.5rem; } }

.entry-content p { line-height: 2.14; }

.entry-content p + p { margin-top: 2.5rem; }

.entry-content a { text-decoration: underline; }

.entry-content a:hover { text-decoration: none; }

.p-detail { padding-bottom: 0; }

.p-detail_nav { background: #F6F6F6; padding: 3rem 0; margin: 10rem 0 0; }

@media screen and (max-width: 960px) { .p-detail_nav { margin: 6rem 0 0; } }

.p-nav { 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; -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: 100%; position: relative; }

.p-nav li { width: -webkit-calc(100%/3); width: -moz-calc(100%/3); width: calc(100%/3); }

.p-nav li a { display: inline-block; font-size: 2rem; font-family: "Urbanist", sans-serif; font-weight: 300; line-height: 1; position: relative; }

@media screen and (max-width: 960px) { .p-nav li a { font-size: 1.6rem; } }

.p-nav li a:before, .p-nav li a:after { position: absolute; content: ''; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.p-nav li.p-nav_index { text-align: center; }

.p-nav li.p-nav_index a { padding-left: 2rem; }

.p-nav li.p-nav_index a:before { width: 1.1rem; height: 1.1rem; left: 0; background: url(../img/icon_index.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

.p-nav li.p-nav_prev a, .p-nav li.p-nav_next a { font-style: italic; }

.p-nav li.p-nav_prev a:before, .p-nav li.p-nav_next a:before { width: 2.6rem; height: 2.6rem; }

@media screen and (max-width: 960px) { .p-nav li.p-nav_prev a span, .p-nav li.p-nav_next a span { display: none; } }

.p-nav li.p-nav_prev { text-align: left; position: absolute; left: 0; }

.p-nav li.p-nav_prev a { padding-left: 4.6rem; }

.p-nav li.p-nav_prev a:before { left: 0; background: url(../img/icon_prev.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-nav li.p-nav_prev a { padding: 0 0 0.6rem 2.6rem; } }

.p-nav li.p-nav_next { text-align: right; position: absolute; right: 0; }

.p-nav li.p-nav_next a { padding-right: 4.6rem; }

.p-nav li.p-nav_next a:before { right: 0; background: url(../img/icon_next.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-nav li.p-nav_next a { padding: 0 0 0.6rem 2.6rem; } }

/** style modal **/
.fancybox-bg { background: rgba(106, 106, 106, 0.7); }

.fancybox-is-open .fancybox-bg { opacity: 0.7; }

.p-record_modal { width: 100%; max-width: 100rem; padding: 8rem; background: #fff; overflow: hidden; }

@media screen and (max-width: 960px) { .p-record_modal { padding: 4rem 2rem; } }

.p-record_modal__heading { text-align: center; font-size: 2.6rem; font-weight: 300; line-height: 1.5; letter-spacing: 0.18em; margin-bottom: 4rem; }

@media screen and (max-width: 960px) { .p-record_modal__heading { font-size: 2rem; margin-bottom: 2rem; } }

.p-record_modal__content { position: relative; z-index: 2; text-align: center; }

.p-record_modal__content h3 { font-size: 2rem; font-weight: 300; letter-spacing: 0.18em; line-height: 1.5; margin-bottom: 4rem; }

@media screen and (max-width: 960px) { .p-record_modal__content h3 { margin-bottom: 2rem; } }

.p-record_modal__content p { line-height: 2.14; margin-bottom: 5rem; }

@media screen and (max-width: 960px) { .p-record_modal__content p { text-align: left; margin-bottom: 3rem; } }

.p-record_modal__content ul { 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; margin: 0 0 0 -3rem; }

.p-record_modal__content ul li { width: -webkit-calc(50% - 3rem); width: -moz-calc(50% - 3rem); width: calc(50% - 3rem); margin: 0 0 0 3rem; background: #EBEBEB; }

.p-record_modal__content ul li a { 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; width: 100%; height: 8rem; font-size: 1.6rem; line-height: 1.5; position: relative; }

.p-record_modal__content ul li a:after { position: absolute; content: ''; width: 2.6rem; height: 2.6rem; right: 3rem; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../img/btn_icon.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-record_modal__content ul li a:after { right: 2rem; } }

.p-record_modal__content ul li:last-child { background: #1A1A1A; color: #fff; }

.p-record_modal__content ul li:last-child a:after { background: url(../img/btn_icon_w.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

@media screen and (max-width: 960px) { .p-record_modal__content ul { display: block; margin: 0; }
  .p-record_modal__content ul li { width: 100%; margin: 0; }
  .p-record_modal__content ul li:last-child { margin: 2rem 0 0; } }

.p-record_modal .fancybox-button.fancybox-close-small { top: 3rem; right: 3rem; width: 2.6rem; height: 2.7rem; padding: 0; background: url(../img/icon_close.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; }

.p-record_modal .fancybox-button.fancybox-close-small svg { display: none; }

@media screen and (max-width: 960px) { .p-record_modal .fancybox-button.fancybox-close-small { top: 1rem; right: 1rem; } }

/* 20230118 */
.menu-item:nth-child(2n) a:after {
  -webkit-transform: skewX(45deg) rotate(180deg);
  -moz-transform: skewX(45deg) rotate(180deg);
  -ms-transform: skewX(45deg) rotate(180deg);
  transform: skewX(45deg) rotate(180deg);
}

.p-home .brands-article .article-sub {
  margin-right: -1.5rem;
}

@media screen and (max-width: 960px) {
  .p-nav li {
    width: 20%;
  }
  .p-nav li.p-nav_index {
    width: 60%;
  }
}


/** forclinic index
======================================= **/

.p-clinic { padding: 6.3rem 0 0; }

@media screen and (max-width: 960px) { .p-clinic { padding: 5.2rem 0 0; } }

.p-clinic .section-title-wrap { display: flex; padding: 10rem 0;}

@media screen and (max-width: 960px) { .p-clinic .section-title-wrap { display: block; padding: 5.5rem 0 4rem; } }

.p-clinic .section-title { position: relative; display: block; margin-bottom: 0;}

@media screen and (max-width: 960px){ .p-clinic .section-title { display: inline-block ;}}

.p-clinic .section-title::after {
  position: absolute;
    content: '';
    background-image: url(../img/forclinic/title_line.svg);
    background-position: center;
    right: -14rem;
    top: 50%;
    transform: translate(0, -50%);
    width: 14rem;
    height: 14rem;
}

@media screen and (max-width: 960px){.p-clinic .section-title::after { width: 5.4rem; height: 5.4rem; right: -5rem;}}

.p-clinic .section-title .en { font-size: 8rem; font-weight: 200; letter-spacing: 0.02em;}

@media screen and (max-width: 960px) { .p-clinic .section-title .en { font-size: 3.4rem; font-style: italic; } }

.p-clinic .section-title .ja { margin: 2rem 0 0 0; padding: 0; font-size: 1.6rem; line-height: 1.375;}

.p-clinic .section-title .ja:before { width: 0; height: 0; background: transparent; }

@media screen and (max-width: 960px) { .p-clinic .section-title .ja { font-size: 1.2rem; margin: 1rem 0 0 0; letter-spacing: 0.1em;} }

.p-clinic .section-sub-title { font-size: 1.6rem; font-weight: 200; line-height: 2.1; letter-spacing: 0.15em; margin-left: 180px;}

@media screen and (max-width: 960px){.p-clinic .section-sub-title{ margin-left: 0; letter-spacing: 0.25em; line-height: 1.625; margin-top: 3rem;}}

.p-clinic .container {position: relative;}

.p-clinic .order { margin: 0 calc(50% - 50vw) 0; width: 100vw}

@media screen and (max-width: 960px){.p-clinic .order{margin: 0rem calc(50% - 50vw) 0; width: 100vw}}

.p-clinic .order-text-wrap {  position: absolute; top: 15%; left: 2rem; max-width: 55rem; }

@media screen and (max-width: 960px){.p-clinic .order-text-wrap { top: 5rem; left: 0; padding: 0 2rem;}}

.p-clinic .order-text-wrap .order-title { font-size: 2.6rem; color: #ffffff; font-weight: 200; letter-spacing: 0.18em; line-height: 1.7;}

@media screen and (max-width: 960px){.p-clinic .order-text-wrap .order-title{ font-size: 2rem; letter-spacing: 0.25em; line-height: 1.5;}}

.p-clinic .order-text-wrap .order-text { font-size: 1.8rem; color: #ffffff; margin-top: 3.2rem; letter-spacing: 0.02em; line-height: 1.7;}

@media screen and (max-width: 960px){.p-clinic .order-text-wrap .order-text{ font-size: 1.6rem; line-height: 2;}}

.p-clinic .order-link { max-width: 120rem; margin: 0 auto; padding: 5.7rem 0 7.3rem;}

@media screen and (max-width: 960px){ .p-clinic .order-link{ padding: 4rem 0 6rem;} }

.p-clinic .order-link-list { display: flex; justify-content: center; margin-top: 4.6rem;}

@media screen and (max-width: 960px){.p-clinic .order-link-list{ display: block;}}

.p-clinic .order-link-item {text-align: center;}

.p-clinic .order-link-item:last-child { margin-left: 5.3rem;}

@media screen and (max-width: 960px){.p-clinic .order-link-item:last-child { margin-left: 0; margin-top: 3rem;}}

.p-clinic .order-link-item p {display: inline-block; position: relative; padding: 0 4rem 0;}

.p-clinic .order-link-item p::before { position: absolute;
  content: '';
  width: 3.2rem;
  height: 3.2rem;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  background: url(../img/title_line.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

.p-clinic .order-link-item p::after { position: absolute;
  content: '';
  width: 3.2rem;
  height: 3.2rem;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  background: url(../img/title_line.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

@media screen and (max-width: 960px){ .p-clinic .order-link-item p::before{ width: 2.4rem; height: 2.4rem; } }

@media screen and (max-width: 960px){ .p-clinic .order-link-item p::after{ width: 2.4rem; height: 2.4rem; } }

.p-clinic .order-link-button {
  background: #1A1A1A; color: #fff; display: flex; align-items: center; justify-content: center;
  width: 45rem;
  height: 8rem;
  font-size: 1.6rem;
  line-height: 1.5;
  position: relative;
  margin-top: 2rem;
}

@media screen and (max-width: 960px){.p-clinic .order-link-button { width: 100%; font-size: 1.4rem; margin-top: 1.5rem; height: 6.6rem;}}

.p-clinic .order-link-button:hover::after{
  right: 2rem;
  transition: all 0.5s;
}

.p-clinic .order-link-button .en { font-family: "Urbanist", sans-serif; display: contents;}

.p-clinic .order-link-button::after {position: absolute;
  content: '';
  width: 2.6rem;
  height: 2.6rem;
  right: 3rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../img/btn_icon_w.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  transition: all 0.5s;
}

.p-clinic .order-link-text { font-size: 1.6rem; text-align: center; letter-spacing: 0.02em; line-height: 1.93;}


@media screen and (max-width: 960px){.p-clinic .order-link-text { font-size: 1.4rem; line-height: 2.1; text-align: left;}}

.p-clinic .society { background-color: #F6F6F6; padding: 10rem 0 8rem;}

@media screen and (max-width: 960px){ .p-clinic .society {padding: 5rem 0}}

.p-clinic .society-title { font-weight: 200; font-size: 2.6rem; text-align: center; letter-spacing: 0.18em;}

@media screen and (max-width: 960px){ .p-clinic .society-title { font-size: 2rem; letter-spacing: 0.25em; line-height: 1.5;}}

.p-clinic .society-slider { margin-top: 6rem; padding-bottom: 5rem; display: flex; justify-content: center;}

.p-clinic .society-slider {/* padding-left: calc((100% - 1366px) / 2 + 83px) */}

@media screen and (max-width: 960px){ .p-clinic .society-slider{ margin-top: 3rem; padding-bottom: 5rem; padding-left: 1.5rem;} }

.p-clinic .society-slider .society-slider-contents .society-list .society-item { background-color: #fff; margin-top: 5px; padding: 3.5rem 2.5rem; width: 35rem;}

@media screen and (max-width: 960px){.p-clinic .society-slider .society-slider-contents .society-list .society-item{ width: 31.5rem; padding: 2rem 2.5rem;}}

.p-clinic .society-slider .society-slider-contents .society-list {padding: 0 1rem;}

@media screen and (max-width: 960px){.p-clinic .society-slider .society-slider-contents .society-list{ padding: 0 0.7rem;}}

.p-clinic .society-list .society-item .society-item-year { color: #7D7D7D; font-family: "Urbanist", sans-serif; font-size: 18px; letter-spacing: 0.02em;}

.p-clinic .society-list .society-item .society-item-year span { font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", 'Hiragino Kaku Gothic Pro', "メイリオ", 'Meiryo', "ＭＳ Ｐゴシック", 'MS PGothic', Arial, sans-serif; font-size: 12px; }

.p-clinic .society-list .society-item .society-item-text { margin-top: 0.7rem;}

.p-clinic .society-slider .slick-dots{
  position: absolute;
  left: 50%;
  bottom: 0;
  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;
  justify-content: center;
  transform: translate(-50%, 0);
}

.p-clinic .society-slider .slick-prev{
  position: absolute;
  bottom: -1.2rem;
  left: 40%;
  background: #FFFFFF;
  outline: none;
  border: none;
  text-indent: -9999px;
  background-image: url(../img/forclinic/btn_icon_slider.svg);
  background-repeat: no-repeat;
  background-position: center;
  width: 4rem;
  height: 4rem;
  transform: translate(-50%, 0);
  cursor: pointer;
}

@media screen and (max-width: 960px){.p-clinic .society-slider .slick-prev{left: 2rem; transform: translate(0,0);}}

.p-clinic .society-slider .slick-next{
  position: absolute;
  bottom: -1.2rem;
  left: 60%;
  background: #FFFFFF;
  outline: none;
  border: none;
  text-indent: -9999px;
  background-image: url(../img/forclinic/btn_icon_slider.svg);
  background-repeat: no-repeat;
  background-position: center;
  width: 4rem;
  height: 4rem;
  transform: rotate(180deg) translate(-50%, 0);
  transform-origin: left;
  cursor: pointer;
}

@media screen and (max-width: 960px){.p-clinic .society-slider .slick-next{right: 2rem; left: auto; transform-origin: center; transform: translate(0, 0px) rotate(180deg);}}

.p-clinic .society-slider .slick-dots li {
  width: 0.8rem;
  height: 0.8rem;
  background: #CCCCCC;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.p-clinic .society-slider .slick-dots li:nth-child(n+2){
  margin-left: 1.5rem;
}

.p-clinic .society-slider .slick-dots li button {
  background: none;
  outline: none;
  border: none;
  text-indent: -9999px;
}

.p-clinic .society-slider .slick-dots li.slick-active {
  width: 1.5rem;
  height: 1.5rem;
  background-color: #1A1A1A;
}

.p-clinic .society-link { margin-top: 5.7rem; text-align: center;}

@media screen and (max-width: 960px){ .p-clinic .society-link {padding: 0 2rem; margin-top: 4rem;} }

.p-clinic .society-button {
  width: 35rem; background: #1A1A1A; color: #fff; display: flex; align-items: center; justify-content: center;
  height: 8rem;
  font-size: 1.6rem;
  line-height: 1.5;
  position: relative;
  margin: 0 auto;
}

.p-clinic .society-button:hover::after{
  right: 2rem;
  transition: all 0.5s;
}

.p-clinic .society-button::after{
  position: absolute;
  content: '';
  width: 2.6rem;
  height: 2.6rem;
  right: 3rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../img/btn_icon_w.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  transition: all 0.5s;
}

@media screen and (max-width: 960px){.p-clinic .society-button{width: 100%; max-width: 100%; font-size: 1.4rem; height: 6.6rem;}}

.p-clinic .material { padding: 9.7rem 0 12.6rem; max-width: 120rem; margin: 0 auto;}

@media screen and (max-width: 960px){.p-clinic .material { padding: 6rem 0;}}

.p-clinic .material-title { font-weight: 200; font-size: 2.6rem; text-align: center; line-height: 1.7; letter-spacing: 0.18em;}

@media screen and (max-width: 960px){.p-clinic .material-title { font-size: 2rem; letter-spacing: 0.25em; line-height: 1.5;} }

.p-clinic .material-text { text-align: center; margin-top: 4rem; letter-spacing: 0.02em; line-height: 2.2;}

@media screen and (max-width: 960px){.p-clinic .material-text{ font-size: 1.6rem; line-height: 2; margin-top: 3rem; text-align: left;}}

.p-clinic .material-list { display: flex; justify-content: center; margin-top: 8.5rem;}

@media screen and (max-width: 960px){.p-clinic .material-list{ display: block; margin-top: 4rem;}}

.p-clinic .material-item { position: relative; border: solid 25px #f6f6f6; width: calc(50% - 2rem); padding: 5.4rem 2rem; text-align: center;}

@media screen and (max-width: 960px){.p-clinic .material-item { width: 100%; border: solid 15px #f6f6f6; padding: 2.5rem 1.5rem;}}

.p-clinic .material-item::before { position: absolute; content: "";  border-left: solid 1px #1A1A1A; border-top: solid 1px #1A1A1A;
  width: 60px;
  height: 60px;
  top: -25px;
  left: -25px;
}

.p-clinic .material-item::after {position: absolute; content: "";  border-right: solid 1px #1A1A1A; border-bottom: solid 1px #1A1A1A;
  width: 60px;
  height: 60px;
  bottom: -25px;
  right: -25px;
}

@media screen and (max-width: 960px){.p-clinic .material-item::before{ top: -15px; left: -15px;}}

@media screen and (max-width: 960px){.p-clinic .material-item::after{ bottom: -15px; right: -15px;}}

.p-clinic .material-item:last-child { margin-left: 4rem;}

@media screen and (max-width: 960px){.p-clinic .material-item:last-child{margin-left: 0; margin-top: 3rem;}}

.p-clinic .material-item-title { font-size: 2rem; font-weight: 200; letter-spacing: 0.25em; line-height: 1.7;}

@media screen and (max-width: 960px){.p-clinic .material-item-title{ font-size: 1.8rem; line-height: 1.5;}}

.p-clinic .material-item-text { margin-top: 2rem; letter-spacing: 0.02em; line-height: 2;}

.p-clinic .material-button {
  width: 35rem; background: #1A1A1A; color: #fff; display: flex; align-items: center; justify-content: center;
  height: 8rem;
  font-size: 1.6rem;
  line-height: 1.5;
  position: relative;
  margin: 2.4rem auto 0;
}

@media screen and (max-width: 960px){.p-clinic .material-button { width: 100%; height: 6.6rem; font-size: 1.4rem; margin: 1.5rem auto 0;}}


.p-clinic .material-button:hover::after{
  right: 2rem;
  transition: all 0.5s;
}


.p-clinic .material-button::after{
  position: absolute;
  content: '';
  width: 2.6rem;
  height: 2.6rem;
  right: 3rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../img/btn_icon_w.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  transition: all 0.5s;
}


/** forclinic society
======================================= **/

.p-society{
  padding-top: 12rem;
}

@media screen and (max-width: 960px){.p-society { padding-top: 7rem;}}

.p-society .container { position: relative;}

.p-society .back-link .en{
  letter-spacing: 0.02em;
}

.p-society .section-title{
  display: block;
  font-size: 2.6rem;
  letter-spacing: 0.18em;
  line-height: 2;
  font-weight: 200;
  text-align: center;
  margin-bottom: 0;
}

@media screen and (max-width: 960px){.p-society .section-title { font-size: 2rem; letter-spacing: 0.25em;}}

.p-society .section-sub-title {
  margin-top: 2.5rem;
  text-align: center;
}

@media screen and (max-width: 960px){.p-society .section-sub-title { font-size: 1.6rem; line-height: 2; text-align: left;}}

.p-society .society-list{
  margin-top: 10rem;
  margin-bottom: 7rem;
}

@media screen and (max-width: 960px){.p-society .society-list { margin-top: 4rem; margin-bottom: 6rem;}}

.p-society .society-list .society-item{
  border-bottom: 1px solid #D6D6D6;
}

.p-society .society-item .society-item-year{
  position: relative;
  font-size: 4rem;
  font-family: "Urbanist", sans-serif;
  font-weight: 200;
  font-style: italic;
  padding: 2rem 0;
  cursor: pointer;
}
@media screen and (max-width: 960px){.p-society .society-item .society-item-year { font-size: 3.2rem;}}

.p-society .society-item .society-item-year .text{
  font-size: 1.6rem;
  font-family: "Notosans";
  font-style: normal;
  font-weight: 500;
  color: #7D7D7D;
  margin-left: 0.9rem;
}

.p-society .society-item .society-item-year .icon{
  position: relative;
  display: inline-block;
  width: 2.6rem;
  height: 2.6rem;
  border: 1px solid #1A1A1A;
  border-radius: 50%;
  margin-right: 2rem;
}

.p-society .society-item .society-item-year .icon::before{
  position: absolute;
  content: "";
  width: 11px;
  height: 1px;
  background-color: #191A1C;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.p-society .society-item .society-item-year .icon::after{
  position: absolute;
  content: "";
  width: 13px;
  height: 1px;
  background-color: #191A1C;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  transition: 0.2s;
}

.p-society .society-item .society-item-year.active .icon::before{
  opacity: 0;
}

.p-society .society-item .society-item-year.active .icon::after{
  transform: translate(-50%, -50%) rotate(0deg);
  transition: 0.2s;
}


.p-society .society-item .society-item-inner{
  display: none;
  margin-bottom: 3rem;
}

@media screen and (max-width: 960px){.p-society .society-item .society-item-inner { margin-bottom: 2rem;}}

.p-society .society-item:first-child .society-item-inner{
  display: block;
}

.p-society .society-item-inner dl{
  display: flex;
  padding: 1.5rem 2rem;
  max-width: 111rem;
  margin: 0 auto;
  background-color: #F6F6F6;
}

@media screen and (max-width: 960px){.p-society .society-item-inner dl { display: block; }}

.p-society .society-item-inner dl:nth-child(2n){
  background-color: #fff;
}

.p-society .society-item-inner dt{
  font-size: 1.8rem;
  font-family: "Urbanist", sans-serif;
  color: #7D7D7D;
  width: 26%;
  letter-spacing: 0.02em;
}

@media screen and (max-width: 960px){.p-society .society-item-inner dt { width: 100%;} }

.p-society .society-item-inner dt span{
  font-size: 1.4rem;
  font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", 'Hiragino Kaku Gothic Pro', "メイリオ", 'Meiryo', "ＭＳ Ｐゴシック", 'MS PGothic', Arial, sans-serif;

}

.p-society .society-item-inner dd{
  letter-spacing: 0.12em;
}

@media screen and (max-width: 960px){.p-society .society-item-inner dd { margin-top: 0.5rem;}}

.p-society .order { margin: 0 calc(50% - 50vw) 0; width: 100vw}

@media screen and (max-width: 960px){.p-society .order{margin: 0rem calc(50% - 50vw) 0; width: 100vw}}

.p-society .order-text-wrap {  position: absolute; top: 15%; left: 2rem; max-width: 55rem; }

@media screen and (max-width: 960px){.p-society .order-text-wrap { top: 5rem; left: 0; padding: 0 2rem;}}

.p-society .order-text-wrap .order-title { font-size: 2.6rem; color: #ffffff; font-weight: 200; letter-spacing: 0.18em; line-height: 1.7;}

@media screen and (max-width: 960px){.p-society .order-text-wrap .order-title{ font-size: 2rem; letter-spacing: 0.25em; line-height: 1.5;}}

.p-society .order-text-wrap .order-text { font-size: 1.8rem; color: #ffffff; margin-top: 3.2rem; letter-spacing: 0.02em; line-height: 1.7;}

@media screen and (max-width: 960px){.p-society .order-text-wrap .order-text{ font-size: 1.6rem; line-height: 2;}}

.p-society .order-link { max-width: 120rem; margin: 0 auto; padding: 5.7rem 0 7.3rem;}

@media screen and (max-width: 960px){ .p-society .order-link{ padding: 4rem 0 6rem;} }

.p-society .order-link-list { display: flex; justify-content: center; margin-top: 4.6rem;}

@media screen and (max-width: 960px){.p-society .order-link-list{ display: block;}}

.p-society .order-link-item {text-align: center;}

.p-society .order-link-item:last-child { margin-left: 5.3rem;}

@media screen and (max-width: 960px){.p-society .order-link-item:last-child { margin-left: 0; margin-top: 3rem;}}

.p-society .order-link-item p {display: inline-block; position: relative; padding: 0 4rem 0;}

.p-society .order-link-item p::before { position: absolute;
  content: '';
  width: 3.2rem;
  height: 3.2rem;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  background: url(../img/title_line.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

.p-society .order-link-item p::after { position: absolute;
  content: '';
  width: 3.2rem;
  height: 3.2rem;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  background: url(../img/title_line.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

@media screen and (max-width: 960px){ .p-society .order-link-item p::before{ width: 2.4rem; height: 2.4rem; } }

@media screen and (max-width: 960px){ .p-society .order-link-item p::after{ width: 2.4rem; height: 2.4rem; } }

.p-society .order-link-button {
  background: #1A1A1A; color: #fff; display: flex; align-items: center; justify-content: center;
  width: 45rem;
  height: 8rem;
  font-size: 1.6rem;
  line-height: 1.5;
  position: relative;
  margin-top: 2rem;
}

@media screen and (max-width: 960px){.p-society .order-link-button { width: 100%; font-size: 1.4rem; margin-top: 1.5rem; height: 6.6rem;}}

.p-society .order-link-button:hover::after{
  right: 2rem;
  transition: all 0.5s;
}

.p-society .order-link-button .en { font-family: "Urbanist", sans-serif; display: contents;}

.p-society .order-link-button::after {position: absolute;
  content: '';
  width: 2.6rem;
  height: 2.6rem;
  right: 3rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../img/btn_icon_w.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  transition: all 0.5s;
}

.p-society .order-link-text { font-size: 1.6rem; text-align: center; letter-spacing: 0.02em; line-height: 1.93;}


@media screen and (max-width: 960px){.p-society .order-link-text { font-size: 1.4rem; line-height: 2.1; text-align: left;}}


.p-deal {padding-top: 12rem;}

@media screen and (max-width: 960px){.p-deal {padding-top: 7rem;}}

.p-deal .container { position: relative;}

.p-deal .back-link .en{
  letter-spacing: 0.02em;
}

.p-deal .section-title{
  display: block;
  font-size: 2.6rem;
  letter-spacing: 0.18em;
  line-height: 2;
  font-weight: 200;
  text-align: center;
  margin-bottom: 0;
}

@media screen and (max-width: 960px){.p-deal .section-title { font-size: 2rem; letter-spacing: 0.25em; line-height: 1.7;}}

.p-deal .section-sub-title {
  margin-top: 2.5rem;
  text-align: center;
  line-height: 2.2;
}

@media screen and (max-width: 960px){ .p-deal .section-sub-title{ font-size: 1.6rem; text-align: left;}}

.p-deal .flow{
  background-color: #F6F6F6;
  padding: 100px 20px;
  margin-top: 8rem;
}

@media screen and (max-width: 960px){.p-deal .flow { margin-top: 6rem; padding: 5rem 0;}}

.p-deal .flow-title {
  display: block;
  font-size: 2.6rem;
  letter-spacing: 0.18em;
  line-height: 2;
  font-weight: 200;
  text-align: center;
  margin-bottom: 0;
}

@media screen and (max-width: 960px){.p-deal .flow-title { font-size: 2rem; letter-spacing: 0.25em; line-height: 1.7;}}

.p-deal .flow-item {position: relative; margin-top: 6rem;}

@media screen and (max-width: 960px){.p-deal .flow-item { margin-top: 4rem;}}

.p-deal .flow-item:nth-child(n + 2){ margin-top: 10rem;}

.p-deal .flow-item:nth-child(n + 2)::after{
  position: absolute;
  content: "";
  top: -3rem;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../img/forclinic/icon-arrow-flow.png);
  width: 6rem;
  height: 3rem;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;

}

@media screen and (max-width: 960px){.p-deal .flow-item:nth-child(n + 2){ margin-top: 8rem;}}

@media screen and (max-width: 960px){.p-deal .flow-item:nth-child(n + 2)::after { width: 3.7rem; height: 1.8rem;}}

.p-deal .flow-item-title { text-align: center; font-size: 2.6rem; letter-spacing: 0.18em; line-height: 1.7; font-weight: 200;}

.p-deal .flow-item-title span{ font-size: 5rem; font-family: "Urbanist", sans-serif; font-weight: 200; font-style: italic; letter-spacing: 0.02em; margin-right: 20px;}

@media screen and (max-width: 960px){.p-deal .flow-item-title{ font-size: 1.8rem; letter-spacing: 0.25em;}}

@media screen and (max-width: 960px){.p-deal .flow-item-title span{ font-size: 3.2rem; display: block; margin-right: 0;}}

.p-deal .flow-item-wrap { display: flex; min-height: 250px; margin-top: 3rem;}

@media screen and (max-width: 960px){.p-deal .flow-item-wrap{ flex-direction: column-reverse;}}

.p-deal .flow-item-text { background-color: #1A1A1A; color: #FFFFFF; width: 50%; display: flex; flex-direction: column; justify-content: center;}

@media screen and (max-width: 960px){.p-deal .flow-item-text{ width: 100%; }}

.p-deal .flow-item-text p {padding: 10%; font-size: 1.6rem; line-height: 2; letter-spacing: 0.02em;}

@media screen and (max-width: 960px){.p-deal .flow-item-text p {font-size: 1.4rem; padding: 2.5rem;}}

.p-deal .flow-item-text a { text-decoration: underline; }

.p-deal .flow-item-img { width: 50%;}

@media screen and (max-width: 960px){.p-deal .flow-item-img { width: 100%;}}

.p-deal .flow-item-img figure { display: block; height: 100%;}

.p-deal .flow-item-img figure img { height: 100%; object-fit: cover;}

.p-deal .flow-button {
    background: #1A1A1A;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35rem;
    height: 8rem;
    font-size: 1.6rem;
    line-height: 1.5;
    position: relative;
    margin: 10rem auto 0;
}

.p-deal .flow-button::after{
  position: absolute;
  content: '';
  width: 2.6rem;
  height: 2.6rem;
  right: 3rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../img/btn_icon_w.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  transition: all 0.5s;
}

@media screen and (max-width: 960px){.p-deal .flow-button { width: 100%; height: 6rem; margin-top: 4rem; font-size: 1.4rem;}}


.p-deal .flow-button:hover::after {
  right: 2rem;
  transition: all 0.5s;
}

.p-deal .faq{
  margin-top: 8rem;
  margin-bottom: 10rem;
}

@media screen and (max-width: 960px){.p-deal .faq { margin: 6rem 0;}}

.p-deal .faq-title {
  display: block;
  font-size: 2.6rem;
  letter-spacing: 0.18em;
  line-height: 2;
  font-weight: 200;
  text-align: center;
  margin-bottom: 0;
}

@media screen and (max-width: 960px){.p-deal .faq-title { font-size: 2rem; letter-spacing: 0.25em;}}

.p-deal .faq-list { margin-top: 7rem;}

@media screen and (max-width: 960px){.p-deal .faq-list { margin-top: 4rem;}}

.p-deal .faq-item{ margin-top: 4rem ;}

@media screen and (max-width: 960px){.p-deal .faq-item{ margin-top: 2.5rem;}}

.p-deal dt { font-size: 2rem; font-weight: 200; display: flex;}

.p-deal dt span { display: block; font-family: "Urbanist", sans-serif; font-weight: 200; font-size: 2.6rem; padding: 0 2rem; white-space: nowrap;}

@media screen and (max-width: 960px){.p-deal dt span { font-size: 2rem; padding: 0 1rem 0 0;}}

.p-deal dt p { font-size: 2rem; letter-spacing: 0.18em;}

@media screen and (max-width: 960px){.p-deal dt p{ font-size: 1.6rem; letter-spacing: 0.25em; line-height: 1.75;} }

.p-deal dd {  display: flex; background-color: #F6F6F6; margin-top: 2rem; padding: 2rem;}

@media screen and (max-width: 960px){.p-deal dd { width: 100vw; margin: 2.5rem calc(50% - 50vw) 0; }}

.p-deal dd span {  display: block; font-family: "Urbanist", sans-serif; font-weight: 200; font-size: 2.6rem; padding: 0 2rem 0 0; white-space: nowrap;}

@media screen and (max-width: 960px){.p-deal dd span { font-size: 2rem; padding: 0 1rem 0 0;}}

.p-deal dd p { font-size: 1.4rem; line-height: 2; letter-spacing: 0.12em;}

@media screen and (max-width: 960px){.p-deal dd p { letter-spacing: 0.12em;}}

.p-deal dd p a { text-decoration: underline;}

.p-deal dd p .faq-item-link { position: relative; display: block; font-size: 1.6rem; color: #707070; letter-spacing: 0.18em; text-decoration: underline; padding-left: 3.5rem; margin-top: 1rem;}

@media screen and (max-width: 960px){.p-deal dd p .faq-item-link { font-size: 1.4rem; letter-spacing: 0.1em;}}

.p-deal dd p .faq-item-link::before{
  position: absolute;
  content: '';
  width: 2.6rem;
  height: 2.6rem;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../img/btn_icon.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  transition: all 0.5s;
}


.p-deal .faq-button {
  background: #1A1A1A;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 35rem;
  height: 7rem;
  font-size: 1.6rem;
  line-height: 1.5;
  position: relative;
  margin: 10rem auto 0;
}

@media screen and (max-width: 960px){.p-deal .faq-button { width: 100%; margin: 4rem auto 0; font-size: 1.4rem; height: 6.6rem;}}

.p-deal .faq-button::after{
position: absolute;
content: '';
width: 2.6rem;
height: 2.6rem;
right: 3rem;
top: 50%;
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
background: url(../img/btn_icon_w.svg) left top no-repeat;
-moz-background-size: cover;
background-size: cover;
transition: all 0.5s;
}

.p-deal .faq-button:hover::after {
  right: 2rem;
  transition: all 0.5s;
}

@media screen and (max-width: 960px){.p-deal .faq-hide { display: none;}}

.p-deal .material { padding: 9.7rem 0 12.6rem; margin: 0 auto; background-color: #F6F6F6;}

@media screen and (max-width: 960px){.p-deal .material { padding: 5rem 0;}}

.p-deal .material-title { font-weight: 200; font-size: 2.6rem; text-align: center; line-height: 1.7; letter-spacing: 0.18em;}

@media screen and (max-width: 960px){.p-deal .material-title { font-size: 2rem; letter-spacing: 0.25em; line-height: 1.5;} }

.p-deal .material-list { display: flex; justify-content: center; margin-top: 8.5rem;}

@media screen and (max-width: 960px){.p-deal .material-list{ display: block; margin-top: 4rem;}}

.p-deal .material-item { position: relative; background-color: #FFFFFF; width: calc(50% - 2rem); padding: 5.4rem 2rem; text-align: center;}

@media screen and (max-width: 960px){.p-deal .material-item { width: 100%; padding: 4.5rem 1.5rem;}}

.p-deal .material-item::before { position: absolute; content: "";  border-left: solid 1px #1A1A1A; border-top: solid 1px #1A1A1A;
  width: 60px;
  height: 60px;
  top: 0px;
  left: 0px;
}

.p-deal .material-item::after {position: absolute; content: "";  border-right: solid 1px #1A1A1A; border-bottom: solid 1px #1A1A1A;
  width: 60px;
  height: 60px;
  bottom: 0px;
  right: 0px;
}
.p-deal .material-item:last-child { margin-left: 4rem;}

@media screen and (max-width: 960px){.p-deal .material-item:last-child{margin-left: 0; margin-top: 3rem;}}

.p-deal .material-item-title { font-size: 2rem; font-weight: 200; letter-spacing: 0.25em; line-height: 1.7;}

@media screen and (max-width: 960px){.p-deal .material-item-title{ font-size: 1.8rem; line-height: 1.5;}}

.p-deal .material-item-title span { display: block; color: #999999; font-size: 1.4rem; letter-spacing: 0.02em; margin-top: 1rem;}

@media screen and (max-width: 960px){.p-deal .material-item-title span{ margin-top: 0.5rem;}}

.p-deal .material-item-text { margin-top: 2rem; letter-spacing: 0.02em; line-height: 2;}

@media screen and (max-width: 960px){.p-deal .material-item-text { }}

.p-deal .material-item-tel { position: relative; display: inline-block; font-size: 6rem; font-family: "Urbanist", sans-serif; font-style: italic; font-weight: 200; margin-top: 3rem; padding-left: 4.5rem;}

.p-deal .material-item-tel::before {
  position: absolute;
  content: "";
  width: 3rem;
  height: 3rem;
  background-image: url(../img/forclinic/icon-phone.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 0.6rem;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}

@media screen and (max-width: 960px){.p-deal .material-item-tel{ font-size: 3.2rem; padding-left: 3rem; margin-top: 2rem;}}

@media screen and (max-width: 960px){.p-deal .material-item-tel::before{ width: 2rem; height: 2rem; }}

.p-deal .material-button {
  width: 35rem; background: #1A1A1A; color: #fff; display: flex; align-items: center; justify-content: center;
  height: 8rem;
  font-size: 1.6rem;
  line-height: 1.5;
  position: relative;
  margin: 2.4rem auto 0;
}

@media screen and (max-width: 960px){.p-deal .material-button { width: 100%; height: 6.6rem; font-size: 1.4rem; margin: 1.5rem auto 0;}}


.p-deal .material-button:hover::after{
  right: 2rem;
  transition: all 0.5s;
}


.p-deal .material-button::after{
  position: absolute;
  content: '';
  width: 2.6rem;
  height: 2.6rem;
  right: 3rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../img/btn_icon_w.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  transition: all 0.5s;
}



/** access index
======================================= **/



.p-access { padding: 6.3rem 0 0; }

@media screen and (max-width: 960px) { .p-access { padding: 5.2rem 0 0; } }

.p-access .section-title-wrap { display: flex; padding: 10rem 0;}

@media screen and (max-width: 960px) { .p-access .section-title-wrap { display: block; padding: 5.5rem 0 4rem; } }

.p-access .section-title { position: relative; display: block; margin-bottom: 0;}

@media screen and (max-width: 960px){ .p-access .section-title { display: inline-block ;}}

.p-access .section-title::after {
  position: absolute;
    content: '';
    background-image: url(../img/access/title_line.svg);
    background-position: center;
    right: -14rem;
    top: 50%;
    transform: translate(0, -50%);
    width: 14rem;
    height: 14rem;
}

@media screen and (max-width: 960px){.p-access .section-title::after { width: 5.4rem; height: 5.4rem; right: -2rem; transform: translate(100%, -50%);}}

.p-access .section-title .en { font-size: 8rem; font-weight: 200; letter-spacing: 0.02em;}

@media screen and (max-width: 960px) { .p-access .section-title .en { font-size: 3.4rem; font-style: italic; } }

.p-access .section-title .ja { margin: 2rem 0 0 0; padding: 0; font-size: 1.6rem; line-height: 1.375;}

.p-access .section-title .ja:before { width: 0; height: 0; background: transparent; }

@media screen and (max-width: 960px) { .p-access .section-title .ja { font-size: 1.2rem; margin: 1rem 0 0 0; letter-spacing: 0.1em;} }

.p-access .section-sub-title { font-size: 1.6rem; font-weight: 200; line-height: 2.1; letter-spacing: 0.15em; margin-left: 180px;}

@media screen and (max-width: 960px){.p-access .section-sub-title{ margin-left: 0; letter-spacing: 0.25em; line-height: 1.625; margin-top: 3rem;}}

.p-access .container {position: relative;}

.p-access .order { margin: 0 calc(50% - 50vw) 0; width: 100vw}

@media screen and (max-width: 960px){.p-access .order{margin: 0rem calc(50% - 50vw) 0; width: 100vw}}



.p-access .flow{
  padding: 10rem 0 12rem;
}

@media screen and (max-width: 960px){ .p-access .flow { padding: 5rem 0 8rem; }}

.p-access .flow-item {position: relative;}

.p-access .flow-item:nth-child(n + 2){ margin-top: 10rem;}

@media screen and (max-width: 960px){.p-access .flow-item:nth-child(n + 2){ margin-top: 7rem;}}

.p-access .flow-item:nth-child(n + 2)::after{
  position: absolute;
  content: "";
  top: -3rem;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../img/forclinic/icon-arrow-flow.png);
  width: 6rem;
  height: 3rem;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;

}

@media screen and (max-width: 960px){.p-access .flow-item:nth-child(n + 2)::after { width: 3.7rem; height: 1.8rem; }}

.p-access .flow-item-title { text-align: center; font-size: 2.6rem; letter-spacing: 0.18em; line-height: 1.7; font-weight: 200;}

@media screen and (max-width: 960px){.p-access .flow-item-title{ font-size: 1.8rem;}}

.p-access .flow-item-title span{ font-size: 5rem; font-family: "Urbanist", sans-serif; font-weight: 200; font-style: italic; letter-spacing: 0.02em; margin-right: 20px;}

@media screen and (max-width: 960px){.p-access .flow-item-title span { font-size: 3.2rem; display: block;}}

.p-access .flow-item-wrap { margin-top: 3rem;}


.p-access .flow-button {
    background: #1A1A1A;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35rem;
    height: 8rem;
    font-size: 1.6rem;
    line-height: 1.5;
    position: relative;
    margin: 7rem auto 0;
    cursor: pointer;
}

.p-access .flow-button:hover{ opacity: .75;}

.p-access .flow-button::after{
  position: absolute;
  content: '';
  width: 2.6rem;
  height: 2.6rem;
  right: 3rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../img/btn_icon_w.svg) left top no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  transition: all 0.5s;
}

.p-access .flow-button:hover::after{ right: 2rem; transition: all 0.5s;}


@media screen and (max-width: 960px){.p-access .flow-button {
  width: 100%;
  margin-top: 4rem;
  height: 6.6rem;
  font-size: 1.4rem;
}}

.p-access .flow-button input { background-color: #1A1A1A; color: #fff;}

.p-access .flow-item-checkbox { display: flex; margin-top: 2rem;}

@media screen and (max-width: 960px){.p-access .flow-item-checkbox { display: block; } }

.p-access .flow-item-checkbox-title { background-color: #1A1A1A; color: #FFFFFF; width: 27%; display: flex; flex-direction: column; justify-content: center;}

@media screen and (max-width: 960px){ .p-access .flow-item-checkbox-title { width: 100%; }}

.p-access .flow-item-checkbox-title p  {padding: 53px; font-size: 2.8rem; letter-spacing: 0.02em; font-weight: 200; }

@media screen and (max-width: 960px) { .p-access .flow-item-checkbox-title p {padding: 20px; text-align: center; font-size: 2rem;}}

.p-access .flow-item-checkbox-wrap { background-color: #F6F6F6; padding: 4rem; width: 73%; display: flex; align-items: baseline;}

@media screen and (max-width: 960px){ .p-access .flow-item-checkbox-wrap{ display: block; width: 100%; padding: 3rem 2rem;}}

.p-access .flow-item-checkbox-all { width: 13%;}

@media screen and (max-width: 960px){.p-access .flow-item-checkbox-all{ width: 100%;}}

.p-access .flow-item-checkbox-boxes {display: flex; flex-wrap: wrap; width: 87%;}

@media screen and (max-width: 960px){.p-access .flow-item-checkbox-boxes { display: block; width: 100%;}}

.p-access .flow-item-checkbox input[type="checkbox"]{
  display: none;
}

.p-access .flow-item-checkbox input[type="checkbox"]+label{
  display: none;
  cursor: pointer;
  display: inline-block;
  position: relative;
  padding-left: 3rem;
  padding-right: 1rem;
  line-height: 2;
  color: #1a1a1a;
}

@media screen and (max-width: 960px){ .p-access .flow-item-checkbox input[type="checkbox"]+label { font-size: 1.4rem; line-height: 1.5; padding-right: 0rem;}}

.p-access .flow-item-checkbox .flow-item-checkbox-boxes input[type="checkbox"]+label{ width: 50%; }

@media screen and (max-width: 960px){.p-access .flow-item-checkbox .flow-item-checkbox-boxes input[type="checkbox"]+label { width: 100%;} }

.p-access .flow-item-checkbox .flow-item-checkbox-boxes input[type="checkbox"]+label:nth-of-type(n + 3){
  margin-top: 1rem;

}
@media screen and (max-width: 960px){.p-access .flow-item-checkbox .flow-item-checkbox-boxes input[type="checkbox"]+label { margin-top: 1rem;}}

.p-access .flow-item-checkbox input[type="checkbox"]+label::before{
  content: "";
  position: absolute;
  display: block;
  box-sizing: border-box;
  width: 2rem;
  height: 2rem;
  left: 0;
  top: 0.5rem;
  border: 1px solid #B7B7B7;
  background-color: #FFF;
}

@media screen and (max-width: 960px){.p-access .flow-item-checkbox input[type="checkbox"]+label::before { top: 0;}}

.p-access .flow-item-checkbox input[type="checkbox"]:checked+label::after{
  content: "";
  position: absolute;
  display: block;
  box-sizing: border-box;
  width: 1.8rem;
  height: 0.9rem;
  top: 1rem;
  left: 3px;
  transform: rotate(-45deg);
  border-bottom: 3px solid;
  border-left: 3px solid;
  border-color:  #585753; /* チェックの色変更 お好きな色を */
}

@media screen and (max-width: 960px){.p-access .flow-item-checkbox input[type="checkbox"]:checked+label::after{
  top: 0.5rem;
}}

.p-access .flow-item-select {
  width: 375px;
  margin: 0 auto;
  border-color: #B7B7B7;
  display: block;
  padding: 20px;
  appearance: none;
}

@media screen and (max-width: 960px){.p-access .flow-item-select{ width: 100%;}}

.p-access .flow-item-select-wrap { background-color: #F6F6F6; padding: 4rem;}

@media screen and (max-width: 960px){.p-access .flow-item-select-wrap{ padding: 2rem;}}

.p-access .flow-item-select-arrow { position : relative; width: 375px; margin: 0 auto;}

@media screen and (max-width: 960px){ .p-access .flow-item-select-arrow { width: 100%;}}

.p-access .flow-item-select-arrow::after {
  position: absolute;
  content: "";
  background-image: url(../img/access/icon-arrow.svg);
  width: 1.4rem;
  height: 0.7rem;
  top: 50%;
  right: 2rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.p-access .flow-item-select::part(listbox) { background-color: red ;}



.p-list{
  padding-top: 12rem;
}

@media screen and (max-width: 960px){.p-list { padding-top: 7rem; } }

.p-list .container { position: relative;}

.p-list .back-link .en{
  letter-spacing: 0.02em;
}

.p-list .section-title{
  display: block;
  font-size: 2.6rem;
  letter-spacing: 0.18em;
  line-height: 2;
  font-weight: 200;
  text-align: center;
  margin-bottom: 0;
}

@media screen and (max-width: 960px){.p-list .section-title { font-size: 2rem; line-height: 1.5;}}

.p-list .section-sub-title {
  margin-top: 2.5rem;
  text-align: center;
}

@media screen and (max-width: 960px){.p-list .section-sub-title { text-align: left; line-height: 1.7;}}

.p-list .wrap { display: flex; padding-bottom: 7rem;}

@media screen and (max-width: 960px){.p-list .wrap { display: flex; flex-direction: column-reverse; padding-bottom: 5rem;}}

.p-list .clinic-list { max-width: 84rem; width: 70%; margin-top: 5.4rem;}

@media screen and (max-width: 960px) { .p-list .clinic-list{ max-width: 100%; width: 100%; margin-top: 6rem;}}

.p-list .clinic-list-title { font-size: 2rem; letter-spacing: 0.25em; font-weight: 200; border-bottom: 1px solid #D6D6D6; padding-bottom: 2rem;}

.p-list .clinic-item { background-color: #F6F6F6; padding: 2rem; margin-top: 3rem;}

@media screen and (max-width: 960px){.p-list .clinic-item {margin-top: 2rem;}}

.p-list .clinic-item-text { max-width: 60rem; width: 75%;}

@media screen and (max-width: 960px){.p-list .clinic-item-text { width: 100%; max-width: 100%;}}

.p-list .clinic-item-wrap { display: flex;}

@media screen and (max-width: 960px){.p-list .clinic-item-wrap { flex-direction: column-reverse; }}

.p-list .clinic-item-title { font-size: 1.8rem; font-weight: 200; line-height: 1.6; border-bottom: 1px solid #D6D6D6; padding-bottom: 1rem;}

@media screen and (max-width: 960px){.p-list .clinic-item-title { font-size: 1.6rem; margin-top: 0rem; line-height: 2;}}

.p-list .clinic-item-adress { display: flex; align-items: flex-start; margin-top: 1.5rem; line-height: 1.6;}

.p-list .clinic-item-adress img { margin-right: 1rem; }

.p-list .clinic-item-adress span { display: block;}

.p-list .clinic-item-img { position: relative; width: 18rem; height: 18rem; margin-left: 2rem;}

@media screen and (max-width: 960px){.p-list .clinic-item-img { position: relative; width: 100%; height: 100%; margin-left: 0; margin-bottom: 2rem;}}

@media screen and (max-width: 960px){.p-list .clinic-item-img::before {  content: ""; display: block; padding-top: 100%;}}

.p-list .clinic-item-img img {position: absolute; width: 100%; height: 100%; object-fit: cover; top: 0; left: 0;}

@media screen and (max-width: 960px){ .p-list .clinic-item-img .animation { position: absolute; width: 100%; height: 100%; top: 0; left: 0;}}

.p-list .clinic-item-img .animation img { position: absolute; width: 100%; height: 100%; object-fit: cover; animation: change-img-anim 8s infinite;}

.p-list .clinic-item-img .animation img:nth-of-type(1) {
  animation-delay: 4s;
}
.p-list .clinic-item-img .animation img:nth-of-type(2) {
  animation-delay: 0s;
}

@keyframes change-img-anim {
  0%{ opacity: 0;}
  30%{ opacity: 0;}
  50%{ opacity: 1;}
  80%{ opacity: 1;}
  100%{ opacity: 0;}
}

.p-list .clinic-item-info { display: flex; margin-top: 2rem;}

.p-list .clinic-item-info .clinic-item-web { margin-left: 4.5rem; text-decoration: underline; cursor: pointer}

.p-list .clinic-item-info .clinic-item-web:hover {text-decoration: unset}

.p-list .clinic-item-info .clinic-item-phone { text-decoration: underline; }

.p-list .clinic-item .tag-list { display: flex; flex-wrap: wrap; margin-top: 3rem;}


@media screen and (max-width: 960px){.p-list .clinic-item .tag-list { margin-top: 2rem;}}

.p-list .clinic-item .tag-list .tag-item { background-color: #FFFFFF;  padding: 0.4rem 1rem; margin-top: 1rem; margin-right: 1rem; font-size: 1.2rem;}

@media screen and (max-width: 960px){.p-list .clinic-item .tag-list .tag-item { margin-top: 0.5rem; margin-right: 0.5rem;}}

.p-list .clinic-search { margin-top: 10rem; max-width: 31rem; width: 26%; margin-left: 4%;}

@media screen and (max-width: 960px){.p-list .clinic-search { width: 100%; margin-top: 4rem; margin-left: 0; max-width: 100%;}}

.p-list .search-item { padding: 2rem 0; border-top: 1px solid #D6D6D6;}

.p-list .search-item:last-child { border-bottom: 1px solid #D6D6D6; }

.p-list .search-item-title { font-size: 1.8rem; letter-spacing: 0.25em; line-height: 1.8; font-weight: 200;}


@media screen and (max-width: 960px){.p-list .search-item-title { font-size: 1.8rem;}}

.p-list .search-item-checkbox {position: relative; display: block; margin-top: 2rem;}

@media screen and (max-width: 960px){.p-list .search-item-checkbox { display: block; } }


.p-list .search-item-checkbox-title { padding-left: 2.5rem; position: relative; text-decoration: underline;}

.p-list .search-item-checkbox-title::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  width: 1.4rem;
  height: 0.7rem;
  background-image: url(../img/access/icon-arrow.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transition: all 0.3s;
}

.p-list .search-item-checkbox-title.active::before {
  transform: translate(0, -50%) rotate(180deg);
  transition: all 0.3s;
}
@media screen and (max-width: 960px){ .p-list .search-item-checkbox-title { width: 100%; }}

.p-list .search-item-checkbox-title p  {font-size: 2rem; letter-spacing: 0.02em; font-weight: 200; }

@media screen and (max-width: 960px) { .p-list .search-item-checkbox-title p {padding: 0px; text-align: left; font-size: 2rem;}}

.p-list .search-item-checkbox-wrap { display: none;}

@media screen and (max-width: 960px){ .p-list .search-item-checkbox-wrap{ display: none; width: 100%; padding: 1rem 0;}}

.p-list .search-item-checkbox-wrap.active { display: block;}

.p-list .search-item-checkbox-all {margin-top: 1rem;}

@media screen and (max-width: 960px){.p-list .search-item-checkbox-all{ width: 100%; margin-top: 1rem;}}


@media screen and (max-width: 960px){.p-list .search-item-checkbox-boxes { display: block; width: 100%;}}

.p-list .search-item-checkbox input[type="checkbox"]{
  display: none;
}

.p-list .search-item-checkbox input[type="checkbox"]+label{
  display: none;
  cursor: pointer;
  display: inline-block;
  position: relative;
  padding-left: 3rem;
  padding-right: 1rem;
  line-height: 2;
  color: #1a1a1a;
}

@media screen and (max-width: 960px){ .p-list .search-item-checkbox input[type="checkbox"]+label { font-size: 1.4rem; line-height: 1.5;}}

.p-list .search-item-checkbox .search-item-checkbox-boxes input[type="checkbox"]+label{ margin-top: 1rem; }

@media screen and (max-width: 960px){.p-list .search-item-checkbox .search-item-checkbox-boxes input[type="checkbox"]+label { width: 100%;} }

@media screen and (max-width: 960px){.p-list .search-item-checkbox .search-item-checkbox-boxes input[type="checkbox"]+label { margin-top: 1rem;}}

.p-list .search-item-checkbox input[type="checkbox"]+label::before{
  content: "";
  position: absolute;
  display: block;
  box-sizing: border-box;
  width: 2rem;
  height: 2rem;
  left: 0;
  top: 0.5rem;
  border: 1px solid #B7B7B7;
  background-color: #FFF;
}

@media screen and (max-width: 960px){.p-list .search-item-checkbox input[type="checkbox"]+label::before { top: 0;}}

.p-list .search-item-checkbox input[type="checkbox"]:checked+label::after{
  content: "";
  position: absolute;
  display: block;
  box-sizing: border-box;
  width: 1.8rem;
  height: 0.9rem;
  top: 1rem;
  left: 3px;
  transform: rotate(-45deg);
  border-bottom: 3px solid;
  border-left: 3px solid;
  border-color:  #585753; /* チェックの色変更 お好きな色を */
}

@media screen and (max-width: 960px){.p-list .search-item-checkbox input[type="checkbox"]:checked+label::after{ top: 0.5rem;}}

.p-list .search-item-select {
  width: 100%;
  margin: 0 auto;
  border-color: #B7B7B7;
  display: block;
  padding: 20px;
  appearance: none;
}

@media screen and (max-width: 960px){.p-list .search-item-select{ width: 100%;}}

.p-list .search-item-select-wrap {margin-top: 2rem;}

.p-list .search-item-select-arrow { position : relative; width: 88%; max-width: 27rem; margin: 0 auto;}

@media screen and (max-width: 960px){ .p-list .search-item-select-arrow { width: 100%; max-width: 100%;}}

.p-list .search-item-select-arrow::after {
  position: absolute;
  content: "";
  background-image: url(../img/access/icon-arrow.svg);
  width: 1.4rem;
  height: 0.7rem;
  top: 50%;
  right: 2rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.p-list .search-item-select::part(listbox) { background-color: red ;}


.p-list .search-button {
  background: #1A1A1A;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 6rem;
  font-size: 1.6rem;
  line-height: 1.5;
  position: relative;
  margin: 2rem auto 0;
  cursor: pointer;
}

@media screen and (max-width: 960px){.p-list .search-button {
  width: 100%;
  margin-top: 3rem;
  font-size: 1.4rem;
}}

.p-list .search-button:hover{ opacity: .75;}


/** privacy **/
.heading-lv3 { font-size: 2.6rem; font-weight: 300; letter-spacing: 0.18em; line-height: 2; margin-bottom: 6rem; }

@media screen and (max-width: 960px) { .heading-lv3 { font-size: 2rem; margin-bottom: 3rem; } }

.txt { line-height: 2.215; }

@media screen and (max-width: 960px) { .txt { line-height: 2.1423; text-align: left; } }

.page-title_en { font-size: 8rem; line-height: 1; font-weight: 300; font-style: italic; font-family: "Urbanist", sans-serif; letter-spacing: 0.02em; margin-bottom: 1rem; }

@media screen and (max-width: 960px) { .page-title_en { font-size: 3.4rem; margin-bottom: 0.5rem; } }

.page-title_ja { display: inline-block; font-size: 1.6rem; letter-spacing: 0.15em; letter-spacing: 1.375; }

@media screen and (max-width: 960px) { .page-title_ja { font-size: 1.2rem; } }

.page-title.no-kv { margin-top: 15rem; }

@media screen and (max-width: 960px) { .page-title.no-kv { margin-top: 10rem; margin-bottom: 5rem; } }

.p-policy_top { text-align: center; padding: 6rem 0 10rem; }

@media screen and (max-width: 960px) { .p-policy_top { padding: 0 0 7rem; }
  .p-policy_top .heading-lv3 { font-size: 2rem; } }

.p-policy_content { padding: 0 0 10rem 0; }

.p-policy_content h3 { font-size: 2rem; font-weight: 300; letter-spacing: 0.18em; color: #323232; padding-bottom: 2rem; border-bottom: 1px solid #323232; margin-bottom: 2.5rem; }

.p-policy_content h3:not(:first-child) { margin-top: 5rem; }

@media screen and (max-width: 960px) { .p-policy_content h3 { font-size: 1.6rem; padding-bottom: 1.5rem; margin-bottom: 2rem; }
  .p-policy_content h3:not(:first-child) { margin-top: 3.5rem; } }

.p-policy_content h4 { font-size: 1.6rem; font-weight: 400; margin: 3rem 0 2rem; }

@media screen and (max-width: 960px) { .p-policy_content h4 { margin: 2.5rem 0 2rem; font-size: 1.4rem; } }

.p-policy_content p { line-height: 2.1423; }

.p-policy_content p + p { margin-top: 3rem; }

@media screen and (max-width: 960px) { .p-policy_content p + p { margin-top: 2.5rem; } }

.p-policy_content a { text-decoration: underline; }

.p-policy_content .list-link { margin-top: 2rem; }

.p-policy_content .list-link li + li { margin-top: 1rem; }

.p-policy_content .list-link li a { display: inline-block; color: #323232; font-weight: 600; position: relative; }

.p-policy_content .list-link li a:after { content: ''; width: 1rem; height: 1rem; background: url(../img/icon_blank.svg) left top no-repeat; -moz-background-size: cover; background-size: cover; display: inline-block; vertical-align: middle; margin-left: 1rem; }

.p-policy_content .list-bool li { line-height: 2.286; padding-left: 1.5rem; text-indent: -1.5rem; }