@charset "UTF-8";

/* ボックスレイアウト
=========================================== */
.flex.col_1>div {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .flex.col_1>div {
    width: 100%;
  }
}

.flex.flex-between.col_1>div {
  width: 98.5%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_1>div {
    width: 100%;
  }
}

.flex.col_2>div {
  width: 50%;
}

@media only screen and (max-width: 767px) {
  .flex.col_2>div {
    width: 100%;
  }
}

.flex.flex-between.col_2>div {
  width: 48.5%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_2>div {
    width: 100%;
  }
}

.flex.col_3>div {
  width: 33.3333333333%;
}

@media only screen and (max-width: 767px) {
  .flex.col_3>div {
    width: 100%;
  }
}

.flex.flex-between.col_3>div {
  width: 31.8333333333%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_3>div {
    width: 100%;
  }
}

.flex.col_4>div {
  width: 25%;
}

@media only screen and (max-width: 767px) {
  .flex.col_4>div {
    width: 100%;
  }
}

.flex.flex-between.col_4>div {
  width: 23.5%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_4>div {
    width: 100%;
  }
}

.flex.col_5>div {
  width: 20%;
}

@media only screen and (max-width: 767px) {
  .flex.col_5>div {
    width: 100%;
  }
}

.flex.flex-between.col_5>div {
  width: 18.5%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_5>div {
    width: 100%;
  }
}

.flex.col_6>div {
  width: 16.6666666667%;
}

@media only screen and (max-width: 767px) {
  .flex.col_6>div {
    width: 100%;
  }
}

.flex.flex-between.col_6>div {
  width: 15.1666666667%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_6>div {
    width: 100%;
  }
}

.flex.col_7>div {
  width: 14.2857142857%;
}

@media only screen and (max-width: 767px) {
  .flex.col_7>div {
    width: 100%;
  }
}

.flex.flex-between.col_7>div {
  width: 12.7857142857%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_7>div {
    width: 100%;
  }
}

.flex.col_8>div {
  width: 12.5%;
}

@media only screen and (max-width: 767px) {
  .flex.col_8>div {
    width: 100%;
  }
}

.flex.flex-between.col_8>div {
  width: 11%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_8>div {
    width: 100%;
  }
}

.flex.col_9>div {
  width: 11.1111111111%;
}

@media only screen and (max-width: 767px) {
  .flex.col_9>div {
    width: 100%;
  }
}

.flex.flex-between.col_9>div {
  width: 9.6111111111%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_9>div {
    width: 100%;
  }
}

.flex.col_10>div {
  width: 10%;
}

@media only screen and (max-width: 767px) {
  .flex.col_10>div {
    width: 100%;
  }
}

.flex.flex-between.col_10>div {
  width: 8.5%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_10>div {
    width: 100%;
  }
}

.flex.col_11>div {
  width: 9.0909090909%;
}

@media only screen and (max-width: 767px) {
  .flex.col_11>div {
    width: 100%;
  }
}

.flex.flex-between.col_11>div {
  width: 7.5909090909%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_11>div {
    width: 100%;
  }
}

.flex.col_12>div {
  width: 8.3333333333%;
}

@media only screen and (max-width: 767px) {
  .flex.col_12>div {
    width: 100%;
  }
}

.flex.flex-between.col_12>div {
  width: 6.8333333333%;
}

@media only screen and (max-width: 767px) {
  .flex.flex-between.col_12>div {
    width: 100%;
  }
}

/* margin
=========================================== */
.mt1 {
  margin-top: 1px;
}

.mr1 {
  margin-right: 1px;
}

.mb1 {
  margin-bottom: 1px;
}

.ml1 {
  margin-left: 1px;
}

.mt2 {
  margin-top: 2px;
}

.mr2 {
  margin-right: 2px;
}

.mb2 {
  margin-bottom: 2px;
}

.ml2 {
  margin-left: 2px;
}

.mt3 {
  margin-top: 3px;
}

.mr3 {
  margin-right: 3px;
}

.mb3 {
  margin-bottom: 3px;
}

.ml3 {
  margin-left: 3px;
}

.mt4 {
  margin-top: 4px;
}

.mr4 {
  margin-right: 4px;
}

.mb4 {
  margin-bottom: 4px;
}

.ml4 {
  margin-left: 4px;
}

.mt5 {
  margin-top: 5px;
}

.mr5 {
  margin-right: 5px;
}

.mb5 {
  margin-bottom: 5px;
}

.ml5 {
  margin-left: 5px;
}

.mt6 {
  margin-top: 6px;
}

.mr6 {
  margin-right: 6px;
}

.mb6 {
  margin-bottom: 6px;
}

.ml6 {
  margin-left: 6px;
}

.mt7 {
  margin-top: 7px;
}

.mr7 {
  margin-right: 7px;
}

.mb7 {
  margin-bottom: 7px;
}

.ml7 {
  margin-left: 7px;
}

.mt8 {
  margin-top: 8px;
}

.mr8 {
  margin-right: 8px;
}

.mb8 {
  margin-bottom: 8px;
}

.ml8 {
  margin-left: 8px;
}

.mt9 {
  margin-top: 9px;
}

.mr9 {
  margin-right: 9px;
}

.mb9 {
  margin-bottom: 9px;
}

.ml9 {
  margin-left: 9px;
}

.mt10 {
  margin-top: 10px;
}

.mr10 {
  margin-right: 10px;
}

.mb10 {
  margin-bottom: 10px;
}

.ml10 {
  margin-left: 10px;
}

.mt11 {
  margin-top: 11px;
}

.mr11 {
  margin-right: 11px;
}

.mb11 {
  margin-bottom: 11px;
}

.ml11 {
  margin-left: 11px;
}

.mt12 {
  margin-top: 12px;
}

.mr12 {
  margin-right: 12px;
}

.mb12 {
  margin-bottom: 12px;
}

.ml12 {
  margin-left: 12px;
}

.mt13 {
  margin-top: 13px;
}

.mr13 {
  margin-right: 13px;
}

.mb13 {
  margin-bottom: 13px;
}

.ml13 {
  margin-left: 13px;
}

.mt14 {
  margin-top: 14px;
}

.mr14 {
  margin-right: 14px;
}

.mb14 {
  margin-bottom: 14px;
}

.ml14 {
  margin-left: 14px;
}

.mt15 {
  margin-top: 15px;
}

.mr15 {
  margin-right: 15px;
}

.mb15 {
  margin-bottom: 15px;
}

.ml15 {
  margin-left: 15px;
}

.mt16 {
  margin-top: 16px;
}

.mr16 {
  margin-right: 16px;
}

.mb16 {
  margin-bottom: 16px;
}

.ml16 {
  margin-left: 16px;
}

.mt17 {
  margin-top: 17px;
}

.mr17 {
  margin-right: 17px;
}

.mb17 {
  margin-bottom: 17px;
}

.ml17 {
  margin-left: 17px;
}

.mt18 {
  margin-top: 18px;
}

.mr18 {
  margin-right: 18px;
}

.mb18 {
  margin-bottom: 18px;
}

.ml18 {
  margin-left: 18px;
}

.mt19 {
  margin-top: 19px;
}

.mr19 {
  margin-right: 19px;
}

.mb19 {
  margin-bottom: 19px;
}

.ml19 {
  margin-left: 19px;
}

.mt20 {
  margin-top: 20px;
}

.mr20 {
  margin-right: 20px;
}

.mb20 {
  margin-bottom: 20px;
}

.ml20 {
  margin-left: 20px;
}

.mt21 {
  margin-top: 21px;
}

.mr21 {
  margin-right: 21px;
}

.mb21 {
  margin-bottom: 21px;
}

.ml21 {
  margin-left: 21px;
}

.mt22 {
  margin-top: 22px;
}

.mr22 {
  margin-right: 22px;
}

.mb22 {
  margin-bottom: 22px;
}

.ml22 {
  margin-left: 22px;
}

.mt23 {
  margin-top: 23px;
}

.mr23 {
  margin-right: 23px;
}

.mb23 {
  margin-bottom: 23px;
}

.ml23 {
  margin-left: 23px;
}

.mt24 {
  margin-top: 24px;
}

.mr24 {
  margin-right: 24px;
}

.mb24 {
  margin-bottom: 24px;
}

.ml24 {
  margin-left: 24px;
}

.mt25 {
  margin-top: 25px;
}

.mr25 {
  margin-right: 25px;
}

.mb25 {
  margin-bottom: 25px;
}

.ml25 {
  margin-left: 25px;
}

.mt26 {
  margin-top: 26px;
}

.mr26 {
  margin-right: 26px;
}

.mb26 {
  margin-bottom: 26px;
}

.ml26 {
  margin-left: 26px;
}

.mt27 {
  margin-top: 27px;
}

.mr27 {
  margin-right: 27px;
}

.mb27 {
  margin-bottom: 27px;
}

.ml27 {
  margin-left: 27px;
}

.mt28 {
  margin-top: 28px;
}

.mr28 {
  margin-right: 28px;
}

.mb28 {
  margin-bottom: 28px;
}

.ml28 {
  margin-left: 28px;
}

.mt29 {
  margin-top: 29px;
}

.mr29 {
  margin-right: 29px;
}

.mb29 {
  margin-bottom: 29px;
}

.ml29 {
  margin-left: 29px;
}

.mt30 {
  margin-top: 30px;
}

.mr30 {
  margin-right: 30px;
}

.mb30 {
  margin-bottom: 30px;
}

.ml30 {
  margin-left: 30px;
}

.mt31 {
  margin-top: 31px;
}

.mr31 {
  margin-right: 31px;
}

.mb31 {
  margin-bottom: 31px;
}

.ml31 {
  margin-left: 31px;
}

.mt32 {
  margin-top: 32px;
}

.mr32 {
  margin-right: 32px;
}

.mb32 {
  margin-bottom: 32px;
}

.ml32 {
  margin-left: 32px;
}

.mt33 {
  margin-top: 33px;
}

.mr33 {
  margin-right: 33px;
}

.mb33 {
  margin-bottom: 33px;
}

.ml33 {
  margin-left: 33px;
}

.mt34 {
  margin-top: 34px;
}

.mr34 {
  margin-right: 34px;
}

.mb34 {
  margin-bottom: 34px;
}

.ml34 {
  margin-left: 34px;
}

.mt35 {
  margin-top: 35px;
}

.mr35 {
  margin-right: 35px;
}

.mb35 {
  margin-bottom: 35px;
}

.ml35 {
  margin-left: 35px;
}

.mt36 {
  margin-top: 36px;
}

.mr36 {
  margin-right: 36px;
}

.mb36 {
  margin-bottom: 36px;
}

.ml36 {
  margin-left: 36px;
}

.mt37 {
  margin-top: 37px;
}

.mr37 {
  margin-right: 37px;
}

.mb37 {
  margin-bottom: 37px;
}

.ml37 {
  margin-left: 37px;
}

.mt38 {
  margin-top: 38px;
}

.mr38 {
  margin-right: 38px;
}

.mb38 {
  margin-bottom: 38px;
}

.ml38 {
  margin-left: 38px;
}

.mt39 {
  margin-top: 39px;
}

.mr39 {
  margin-right: 39px;
}

.mb39 {
  margin-bottom: 39px;
}

.ml39 {
  margin-left: 39px;
}

.mt40 {
  margin-top: 40px;
}

.mr40 {
  margin-right: 40px;
}

.mb40 {
  margin-bottom: 40px;
}

.ml40 {
  margin-left: 40px;
}

.mt41 {
  margin-top: 41px;
}

.mr41 {
  margin-right: 41px;
}

.mb41 {
  margin-bottom: 41px;
}

.ml41 {
  margin-left: 41px;
}

.mt42 {
  margin-top: 42px;
}

.mr42 {
  margin-right: 42px;
}

.mb42 {
  margin-bottom: 42px;
}

.ml42 {
  margin-left: 42px;
}

.mt43 {
  margin-top: 43px;
}

.mr43 {
  margin-right: 43px;
}

.mb43 {
  margin-bottom: 43px;
}

.ml43 {
  margin-left: 43px;
}

.mt44 {
  margin-top: 44px;
}

.mr44 {
  margin-right: 44px;
}

.mb44 {
  margin-bottom: 44px;
}

.ml44 {
  margin-left: 44px;
}

.mt45 {
  margin-top: 45px;
}

.mr45 {
  margin-right: 45px;
}

.mb45 {
  margin-bottom: 45px;
}

.ml45 {
  margin-left: 45px;
}

.mt46 {
  margin-top: 46px;
}

.mr46 {
  margin-right: 46px;
}

.mb46 {
  margin-bottom: 46px;
}

.ml46 {
  margin-left: 46px;
}

.mt47 {
  margin-top: 47px;
}

.mr47 {
  margin-right: 47px;
}

.mb47 {
  margin-bottom: 47px;
}

.ml47 {
  margin-left: 47px;
}

.mt48 {
  margin-top: 48px;
}

.mr48 {
  margin-right: 48px;
}

.mb48 {
  margin-bottom: 48px;
}

.ml48 {
  margin-left: 48px;
}

.mt49 {
  margin-top: 49px;
}

.mr49 {
  margin-right: 49px;
}

.mb49 {
  margin-bottom: 49px;
}

.ml49 {
  margin-left: 49px;
}

.mt50 {
  margin-top: 50px;
}

.mr50 {
  margin-right: 50px;
}

.mb50 {
  margin-bottom: 50px;
}

.ml50 {
  margin-left: 50px;
}

.mt51 {
  margin-top: 51px;
}

.mr51 {
  margin-right: 51px;
}

.mb51 {
  margin-bottom: 51px;
}

.ml51 {
  margin-left: 51px;
}

.mt52 {
  margin-top: 52px;
}

.mr52 {
  margin-right: 52px;
}

.mb52 {
  margin-bottom: 52px;
}

.ml52 {
  margin-left: 52px;
}

.mt53 {
  margin-top: 53px;
}

.mr53 {
  margin-right: 53px;
}

.mb53 {
  margin-bottom: 53px;
}

.ml53 {
  margin-left: 53px;
}

.mt54 {
  margin-top: 54px;
}

.mr54 {
  margin-right: 54px;
}

.mb54 {
  margin-bottom: 54px;
}

.ml54 {
  margin-left: 54px;
}

.mt55 {
  margin-top: 55px;
}

.mr55 {
  margin-right: 55px;
}

.mb55 {
  margin-bottom: 55px;
}

.ml55 {
  margin-left: 55px;
}

.mt56 {
  margin-top: 56px;
}

.mr56 {
  margin-right: 56px;
}

.mb56 {
  margin-bottom: 56px;
}

.ml56 {
  margin-left: 56px;
}

.mt57 {
  margin-top: 57px;
}

.mr57 {
  margin-right: 57px;
}

.mb57 {
  margin-bottom: 57px;
}

.ml57 {
  margin-left: 57px;
}

.mt58 {
  margin-top: 58px;
}

.mr58 {
  margin-right: 58px;
}

.mb58 {
  margin-bottom: 58px;
}

.ml58 {
  margin-left: 58px;
}

.mt59 {
  margin-top: 59px;
}

.mr59 {
  margin-right: 59px;
}

.mb59 {
  margin-bottom: 59px;
}

.ml59 {
  margin-left: 59px;
}

.mt60 {
  margin-top: 60px;
}

.mr60 {
  margin-right: 60px;
}

.mb60 {
  margin-bottom: 60px;
}

.ml60 {
  margin-left: 60px;
}

.mt61 {
  margin-top: 61px;
}

.mr61 {
  margin-right: 61px;
}

.mb61 {
  margin-bottom: 61px;
}

.ml61 {
  margin-left: 61px;
}

.mt62 {
  margin-top: 62px;
}

.mr62 {
  margin-right: 62px;
}

.mb62 {
  margin-bottom: 62px;
}

.ml62 {
  margin-left: 62px;
}

.mt63 {
  margin-top: 63px;
}

.mr63 {
  margin-right: 63px;
}

.mb63 {
  margin-bottom: 63px;
}

.ml63 {
  margin-left: 63px;
}

.mt64 {
  margin-top: 64px;
}

.mr64 {
  margin-right: 64px;
}

.mb64 {
  margin-bottom: 64px;
}

.ml64 {
  margin-left: 64px;
}

.mt65 {
  margin-top: 65px;
}

.mr65 {
  margin-right: 65px;
}

.mb65 {
  margin-bottom: 65px;
}

.ml65 {
  margin-left: 65px;
}

.mt66 {
  margin-top: 66px;
}

.mr66 {
  margin-right: 66px;
}

.mb66 {
  margin-bottom: 66px;
}

.ml66 {
  margin-left: 66px;
}

.mt67 {
  margin-top: 67px;
}

.mr67 {
  margin-right: 67px;
}

.mb67 {
  margin-bottom: 67px;
}

.ml67 {
  margin-left: 67px;
}

.mt68 {
  margin-top: 68px;
}

.mr68 {
  margin-right: 68px;
}

.mb68 {
  margin-bottom: 68px;
}

.ml68 {
  margin-left: 68px;
}

.mt69 {
  margin-top: 69px;
}

.mr69 {
  margin-right: 69px;
}

.mb69 {
  margin-bottom: 69px;
}

.ml69 {
  margin-left: 69px;
}

.mt70 {
  margin-top: 70px;
}

.mr70 {
  margin-right: 70px;
}

.mb70 {
  margin-bottom: 70px;
}

.ml70 {
  margin-left: 70px;
}

.mt71 {
  margin-top: 71px;
}

.mr71 {
  margin-right: 71px;
}

.mb71 {
  margin-bottom: 71px;
}

.ml71 {
  margin-left: 71px;
}

.mt72 {
  margin-top: 72px;
}

.mr72 {
  margin-right: 72px;
}

.mb72 {
  margin-bottom: 72px;
}

.ml72 {
  margin-left: 72px;
}

.mt73 {
  margin-top: 73px;
}

.mr73 {
  margin-right: 73px;
}

.mb73 {
  margin-bottom: 73px;
}

.ml73 {
  margin-left: 73px;
}

.mt74 {
  margin-top: 74px;
}

.mr74 {
  margin-right: 74px;
}

.mb74 {
  margin-bottom: 74px;
}

.ml74 {
  margin-left: 74px;
}

.mt75 {
  margin-top: 75px;
}

.mr75 {
  margin-right: 75px;
}

.mb75 {
  margin-bottom: 75px;
}

.ml75 {
  margin-left: 75px;
}

.mt76 {
  margin-top: 76px;
}

.mr76 {
  margin-right: 76px;
}

.mb76 {
  margin-bottom: 76px;
}

.ml76 {
  margin-left: 76px;
}

.mt77 {
  margin-top: 77px;
}

.mr77 {
  margin-right: 77px;
}

.mb77 {
  margin-bottom: 77px;
}

.ml77 {
  margin-left: 77px;
}

.mt78 {
  margin-top: 78px;
}

.mr78 {
  margin-right: 78px;
}

.mb78 {
  margin-bottom: 78px;
}

.ml78 {
  margin-left: 78px;
}

.mt79 {
  margin-top: 79px;
}

.mr79 {
  margin-right: 79px;
}

.mb79 {
  margin-bottom: 79px;
}

.ml79 {
  margin-left: 79px;
}

.mt80 {
  margin-top: 80px;
}

.mr80 {
  margin-right: 80px;
}

.mb80 {
  margin-bottom: 80px;
}

.ml80 {
  margin-left: 80px;
}

.mt81 {
  margin-top: 81px;
}

.mr81 {
  margin-right: 81px;
}

.mb81 {
  margin-bottom: 81px;
}

.ml81 {
  margin-left: 81px;
}

.mt82 {
  margin-top: 82px;
}

.mr82 {
  margin-right: 82px;
}

.mb82 {
  margin-bottom: 82px;
}

.ml82 {
  margin-left: 82px;
}

.mt83 {
  margin-top: 83px;
}

.mr83 {
  margin-right: 83px;
}

.mb83 {
  margin-bottom: 83px;
}

.ml83 {
  margin-left: 83px;
}

.mt84 {
  margin-top: 84px;
}

.mr84 {
  margin-right: 84px;
}

.mb84 {
  margin-bottom: 84px;
}

.ml84 {
  margin-left: 84px;
}

.mt85 {
  margin-top: 85px;
}

.mr85 {
  margin-right: 85px;
}

.mb85 {
  margin-bottom: 85px;
}

.ml85 {
  margin-left: 85px;
}

.mt86 {
  margin-top: 86px;
}

.mr86 {
  margin-right: 86px;
}

.mb86 {
  margin-bottom: 86px;
}

.ml86 {
  margin-left: 86px;
}

.mt87 {
  margin-top: 87px;
}

.mr87 {
  margin-right: 87px;
}

.mb87 {
  margin-bottom: 87px;
}

.ml87 {
  margin-left: 87px;
}

.mt88 {
  margin-top: 88px;
}

.mr88 {
  margin-right: 88px;
}

.mb88 {
  margin-bottom: 88px;
}

.ml88 {
  margin-left: 88px;
}

.mt89 {
  margin-top: 89px;
}

.mr89 {
  margin-right: 89px;
}

.mb89 {
  margin-bottom: 89px;
}

.ml89 {
  margin-left: 89px;
}

.mt90 {
  margin-top: 90px;
}

.mr90 {
  margin-right: 90px;
}

.mb90 {
  margin-bottom: 90px;
}

.ml90 {
  margin-left: 90px;
}

.mt91 {
  margin-top: 91px;
}

.mr91 {
  margin-right: 91px;
}

.mb91 {
  margin-bottom: 91px;
}

.ml91 {
  margin-left: 91px;
}

.mt92 {
  margin-top: 92px;
}

.mr92 {
  margin-right: 92px;
}

.mb92 {
  margin-bottom: 92px;
}

.ml92 {
  margin-left: 92px;
}

.mt93 {
  margin-top: 93px;
}

.mr93 {
  margin-right: 93px;
}

.mb93 {
  margin-bottom: 93px;
}

.ml93 {
  margin-left: 93px;
}

.mt94 {
  margin-top: 94px;
}

.mr94 {
  margin-right: 94px;
}

.mb94 {
  margin-bottom: 94px;
}

.ml94 {
  margin-left: 94px;
}

.mt95 {
  margin-top: 95px;
}

.mr95 {
  margin-right: 95px;
}

.mb95 {
  margin-bottom: 95px;
}

.ml95 {
  margin-left: 95px;
}

.mt96 {
  margin-top: 96px;
}

.mr96 {
  margin-right: 96px;
}

.mb96 {
  margin-bottom: 96px;
}

.ml96 {
  margin-left: 96px;
}

.mt97 {
  margin-top: 97px;
}

.mr97 {
  margin-right: 97px;
}

.mb97 {
  margin-bottom: 97px;
}

.ml97 {
  margin-left: 97px;
}

.mt98 {
  margin-top: 98px;
}

.mr98 {
  margin-right: 98px;
}

.mb98 {
  margin-bottom: 98px;
}

.ml98 {
  margin-left: 98px;
}

.mt99 {
  margin-top: 99px;
}

.mr99 {
  margin-right: 99px;
}

.mb99 {
  margin-bottom: 99px;
}

.ml99 {
  margin-left: 99px;
}

.mt100 {
  margin-top: 100px;
}

.mr100 {
  margin-right: 100px;
}

.mb100 {
  margin-bottom: 100px;
}

.ml100 {
  margin-left: 100px;
}

/* padding
=========================================== */
.pt1 {
  padding-top: 1px;
}

.pr1 {
  padding-right: 1px;
}

.pb1 {
  padding-bottom: 1px;
}

.pl1 {
  padding-left: 1px;
}

.pt2 {
  padding-top: 2px;
}

.pr2 {
  padding-right: 2px;
}

.pb2 {
  padding-bottom: 2px;
}

.pl2 {
  padding-left: 2px;
}

.pt3 {
  padding-top: 3px;
}

.pr3 {
  padding-right: 3px;
}

.pb3 {
  padding-bottom: 3px;
}

.pl3 {
  padding-left: 3px;
}

.pt4 {
  padding-top: 4px;
}

.pr4 {
  padding-right: 4px;
}

.pb4 {
  padding-bottom: 4px;
}

.pl4 {
  padding-left: 4px;
}

.pt5 {
  padding-top: 5px;
}

.pr5 {
  padding-right: 5px;
}

.pb5 {
  padding-bottom: 5px;
}

.pl5 {
  padding-left: 5px;
}

.pt6 {
  padding-top: 6px;
}

.pr6 {
  padding-right: 6px;
}

.pb6 {
  padding-bottom: 6px;
}

.pl6 {
  padding-left: 6px;
}

.pt7 {
  padding-top: 7px;
}

.pr7 {
  padding-right: 7px;
}

.pb7 {
  padding-bottom: 7px;
}

.pl7 {
  padding-left: 7px;
}

.pt8 {
  padding-top: 8px;
}

.pr8 {
  padding-right: 8px;
}

.pb8 {
  padding-bottom: 8px;
}

.pl8 {
  padding-left: 8px;
}

.pt9 {
  padding-top: 9px;
}

.pr9 {
  padding-right: 9px;
}

.pb9 {
  padding-bottom: 9px;
}

.pl9 {
  padding-left: 9px;
}

.pt10 {
  padding-top: 10px;
}

.pr10 {
  padding-right: 10px;
}

.pb10 {
  padding-bottom: 10px;
}

.pl10 {
  padding-left: 10px;
}

.pt11 {
  padding-top: 11px;
}

.pr11 {
  padding-right: 11px;
}

.pb11 {
  padding-bottom: 11px;
}

.pl11 {
  padding-left: 11px;
}

.pt12 {
  padding-top: 12px;
}

.pr12 {
  padding-right: 12px;
}

.pb12 {
  padding-bottom: 12px;
}

.pl12 {
  padding-left: 12px;
}

.pt13 {
  padding-top: 13px;
}

.pr13 {
  padding-right: 13px;
}

.pb13 {
  padding-bottom: 13px;
}

.pl13 {
  padding-left: 13px;
}

.pt14 {
  padding-top: 14px;
}

.pr14 {
  padding-right: 14px;
}

.pb14 {
  padding-bottom: 14px;
}

.pl14 {
  padding-left: 14px;
}

.pt15 {
  padding-top: 15px;
}

.pr15 {
  padding-right: 15px;
}

.pb15 {
  padding-bottom: 15px;
}

.pl15 {
  padding-left: 15px;
}

.pt16 {
  padding-top: 16px;
}

.pr16 {
  padding-right: 16px;
}

.pb16 {
  padding-bottom: 16px;
}

.pl16 {
  padding-left: 16px;
}

.pt17 {
  padding-top: 17px;
}

.pr17 {
  padding-right: 17px;
}

.pb17 {
  padding-bottom: 17px;
}

.pl17 {
  padding-left: 17px;
}

.pt18 {
  padding-top: 18px;
}

.pr18 {
  padding-right: 18px;
}

.pb18 {
  padding-bottom: 18px;
}

.pl18 {
  padding-left: 18px;
}

.pt19 {
  padding-top: 19px;
}

.pr19 {
  padding-right: 19px;
}

.pb19 {
  padding-bottom: 19px;
}

.pl19 {
  padding-left: 19px;
}

.pt20 {
  padding-top: 20px;
}

.pr20 {
  padding-right: 20px;
}

.pb20 {
  padding-bottom: 20px;
}

.pl20 {
  padding-left: 20px;
}

.pt21 {
  padding-top: 21px;
}

.pr21 {
  padding-right: 21px;
}

.pb21 {
  padding-bottom: 21px;
}

.pl21 {
  padding-left: 21px;
}

.pt22 {
  padding-top: 22px;
}

.pr22 {
  padding-right: 22px;
}

.pb22 {
  padding-bottom: 22px;
}

.pl22 {
  padding-left: 22px;
}

.pt23 {
  padding-top: 23px;
}

.pr23 {
  padding-right: 23px;
}

.pb23 {
  padding-bottom: 23px;
}

.pl23 {
  padding-left: 23px;
}

.pt24 {
  padding-top: 24px;
}

.pr24 {
  padding-right: 24px;
}

.pb24 {
  padding-bottom: 24px;
}

.pl24 {
  padding-left: 24px;
}

.pt25 {
  padding-top: 25px;
}

.pr25 {
  padding-right: 25px;
}

.pb25 {
  padding-bottom: 25px;
}

.pl25 {
  padding-left: 25px;
}

.pt26 {
  padding-top: 26px;
}

.pr26 {
  padding-right: 26px;
}

.pb26 {
  padding-bottom: 26px;
}

.pl26 {
  padding-left: 26px;
}

.pt27 {
  padding-top: 27px;
}

.pr27 {
  padding-right: 27px;
}

.pb27 {
  padding-bottom: 27px;
}

.pl27 {
  padding-left: 27px;
}

.pt28 {
  padding-top: 28px;
}

.pr28 {
  padding-right: 28px;
}

.pb28 {
  padding-bottom: 28px;
}

.pl28 {
  padding-left: 28px;
}

.pt29 {
  padding-top: 29px;
}

.pr29 {
  padding-right: 29px;
}

.pb29 {
  padding-bottom: 29px;
}

.pl29 {
  padding-left: 29px;
}

.pt30 {
  padding-top: 30px;
}

.pr30 {
  padding-right: 30px;
}

.pb30 {
  padding-bottom: 30px;
}

.pl30 {
  padding-left: 30px;
}

.pt31 {
  padding-top: 31px;
}

.pr31 {
  padding-right: 31px;
}

.pb31 {
  padding-bottom: 31px;
}

.pl31 {
  padding-left: 31px;
}

.pt32 {
  padding-top: 32px;
}

.pr32 {
  padding-right: 32px;
}

.pb32 {
  padding-bottom: 32px;
}

.pl32 {
  padding-left: 32px;
}

.pt33 {
  padding-top: 33px;
}

.pr33 {
  padding-right: 33px;
}

.pb33 {
  padding-bottom: 33px;
}

.pl33 {
  padding-left: 33px;
}

.pt34 {
  padding-top: 34px;
}

.pr34 {
  padding-right: 34px;
}

.pb34 {
  padding-bottom: 34px;
}

.pl34 {
  padding-left: 34px;
}

.pt35 {
  padding-top: 35px;
}

.pr35 {
  padding-right: 35px;
}

.pb35 {
  padding-bottom: 35px;
}

.pl35 {
  padding-left: 35px;
}

.pt36 {
  padding-top: 36px;
}

.pr36 {
  padding-right: 36px;
}

.pb36 {
  padding-bottom: 36px;
}

.pl36 {
  padding-left: 36px;
}

.pt37 {
  padding-top: 37px;
}

.pr37 {
  padding-right: 37px;
}

.pb37 {
  padding-bottom: 37px;
}

.pl37 {
  padding-left: 37px;
}

.pt38 {
  padding-top: 38px;
}

.pr38 {
  padding-right: 38px;
}

.pb38 {
  padding-bottom: 38px;
}

.pl38 {
  padding-left: 38px;
}

.pt39 {
  padding-top: 39px;
}

.pr39 {
  padding-right: 39px;
}

.pb39 {
  padding-bottom: 39px;
}

.pl39 {
  padding-left: 39px;
}

.pt40 {
  padding-top: 40px;
}

.pr40 {
  padding-right: 40px;
}

.pb40 {
  padding-bottom: 40px;
}

.pl40 {
  padding-left: 40px;
}

.pt41 {
  padding-top: 41px;
}

.pr41 {
  padding-right: 41px;
}

.pb41 {
  padding-bottom: 41px;
}

.pl41 {
  padding-left: 41px;
}

.pt42 {
  padding-top: 42px;
}

.pr42 {
  padding-right: 42px;
}

.pb42 {
  padding-bottom: 42px;
}

.pl42 {
  padding-left: 42px;
}

.pt43 {
  padding-top: 43px;
}

.pr43 {
  padding-right: 43px;
}

.pb43 {
  padding-bottom: 43px;
}

.pl43 {
  padding-left: 43px;
}

.pt44 {
  padding-top: 44px;
}

.pr44 {
  padding-right: 44px;
}

.pb44 {
  padding-bottom: 44px;
}

.pl44 {
  padding-left: 44px;
}

.pt45 {
  padding-top: 45px;
}

.pr45 {
  padding-right: 45px;
}

.pb45 {
  padding-bottom: 45px;
}

.pl45 {
  padding-left: 45px;
}

.pt46 {
  padding-top: 46px;
}

.pr46 {
  padding-right: 46px;
}

.pb46 {
  padding-bottom: 46px;
}

.pl46 {
  padding-left: 46px;
}

.pt47 {
  padding-top: 47px;
}

.pr47 {
  padding-right: 47px;
}

.pb47 {
  padding-bottom: 47px;
}

.pl47 {
  padding-left: 47px;
}

.pt48 {
  padding-top: 48px;
}

.pr48 {
  padding-right: 48px;
}

.pb48 {
  padding-bottom: 48px;
}

.pl48 {
  padding-left: 48px;
}

.pt49 {
  padding-top: 49px;
}

.pr49 {
  padding-right: 49px;
}

.pb49 {
  padding-bottom: 49px;
}

.pl49 {
  padding-left: 49px;
}

.pt50 {
  padding-top: 50px;
}

.pr50 {
  padding-right: 50px;
}

.pb50 {
  padding-bottom: 50px;
}

.pl50 {
  padding-left: 50px;
}

.pt51 {
  padding-top: 51px;
}

.pr51 {
  padding-right: 51px;
}

.pb51 {
  padding-bottom: 51px;
}

.pl51 {
  padding-left: 51px;
}

.pt52 {
  padding-top: 52px;
}

.pr52 {
  padding-right: 52px;
}

.pb52 {
  padding-bottom: 52px;
}

.pl52 {
  padding-left: 52px;
}

.pt53 {
  padding-top: 53px;
}

.pr53 {
  padding-right: 53px;
}

.pb53 {
  padding-bottom: 53px;
}

.pl53 {
  padding-left: 53px;
}

.pt54 {
  padding-top: 54px;
}

.pr54 {
  padding-right: 54px;
}

.pb54 {
  padding-bottom: 54px;
}

.pl54 {
  padding-left: 54px;
}

.pt55 {
  padding-top: 55px;
}

.pr55 {
  padding-right: 55px;
}

.pb55 {
  padding-bottom: 55px;
}

.pl55 {
  padding-left: 55px;
}

.pt56 {
  padding-top: 56px;
}

.pr56 {
  padding-right: 56px;
}

.pb56 {
  padding-bottom: 56px;
}

.pl56 {
  padding-left: 56px;
}

.pt57 {
  padding-top: 57px;
}

.pr57 {
  padding-right: 57px;
}

.pb57 {
  padding-bottom: 57px;
}

.pl57 {
  padding-left: 57px;
}

.pt58 {
  padding-top: 58px;
}

.pr58 {
  padding-right: 58px;
}

.pb58 {
  padding-bottom: 58px;
}

.pl58 {
  padding-left: 58px;
}

.pt59 {
  padding-top: 59px;
}

.pr59 {
  padding-right: 59px;
}

.pb59 {
  padding-bottom: 59px;
}

.pl59 {
  padding-left: 59px;
}

.pt60 {
  padding-top: 60px;
}

.pr60 {
  padding-right: 60px;
}

.pb60 {
  padding-bottom: 60px;
}

.pl60 {
  padding-left: 60px;
}

.pt61 {
  padding-top: 61px;
}

.pr61 {
  padding-right: 61px;
}

.pb61 {
  padding-bottom: 61px;
}

.pl61 {
  padding-left: 61px;
}

.pt62 {
  padding-top: 62px;
}

.pr62 {
  padding-right: 62px;
}

.pb62 {
  padding-bottom: 62px;
}

.pl62 {
  padding-left: 62px;
}

.pt63 {
  padding-top: 63px;
}

.pr63 {
  padding-right: 63px;
}

.pb63 {
  padding-bottom: 63px;
}

.pl63 {
  padding-left: 63px;
}

.pt64 {
  padding-top: 64px;
}

.pr64 {
  padding-right: 64px;
}

.pb64 {
  padding-bottom: 64px;
}

.pl64 {
  padding-left: 64px;
}

.pt65 {
  padding-top: 65px;
}

.pr65 {
  padding-right: 65px;
}

.pb65 {
  padding-bottom: 65px;
}

.pl65 {
  padding-left: 65px;
}

.pt66 {
  padding-top: 66px;
}

.pr66 {
  padding-right: 66px;
}

.pb66 {
  padding-bottom: 66px;
}

.pl66 {
  padding-left: 66px;
}

.pt67 {
  padding-top: 67px;
}

.pr67 {
  padding-right: 67px;
}

.pb67 {
  padding-bottom: 67px;
}

.pl67 {
  padding-left: 67px;
}

.pt68 {
  padding-top: 68px;
}

.pr68 {
  padding-right: 68px;
}

.pb68 {
  padding-bottom: 68px;
}

.pl68 {
  padding-left: 68px;
}

.pt69 {
  padding-top: 69px;
}

.pr69 {
  padding-right: 69px;
}

.pb69 {
  padding-bottom: 69px;
}

.pl69 {
  padding-left: 69px;
}

.pt70 {
  padding-top: 70px;
}

.pr70 {
  padding-right: 70px;
}

.pb70 {
  padding-bottom: 70px;
}

.pl70 {
  padding-left: 70px;
}

.pt71 {
  padding-top: 71px;
}

.pr71 {
  padding-right: 71px;
}

.pb71 {
  padding-bottom: 71px;
}

.pl71 {
  padding-left: 71px;
}

.pt72 {
  padding-top: 72px;
}

.pr72 {
  padding-right: 72px;
}

.pb72 {
  padding-bottom: 72px;
}

.pl72 {
  padding-left: 72px;
}

.pt73 {
  padding-top: 73px;
}

.pr73 {
  padding-right: 73px;
}

.pb73 {
  padding-bottom: 73px;
}

.pl73 {
  padding-left: 73px;
}

.pt74 {
  padding-top: 74px;
}

.pr74 {
  padding-right: 74px;
}

.pb74 {
  padding-bottom: 74px;
}

.pl74 {
  padding-left: 74px;
}

.pt75 {
  padding-top: 75px;
}

.pr75 {
  padding-right: 75px;
}

.pb75 {
  padding-bottom: 75px;
}

.pl75 {
  padding-left: 75px;
}

.pt76 {
  padding-top: 76px;
}

.pr76 {
  padding-right: 76px;
}

.pb76 {
  padding-bottom: 76px;
}

.pl76 {
  padding-left: 76px;
}

.pt77 {
  padding-top: 77px;
}

.pr77 {
  padding-right: 77px;
}

.pb77 {
  padding-bottom: 77px;
}

.pl77 {
  padding-left: 77px;
}

.pt78 {
  padding-top: 78px;
}

.pr78 {
  padding-right: 78px;
}

.pb78 {
  padding-bottom: 78px;
}

.pl78 {
  padding-left: 78px;
}

.pt79 {
  padding-top: 79px;
}

.pr79 {
  padding-right: 79px;
}

.pb79 {
  padding-bottom: 79px;
}

.pl79 {
  padding-left: 79px;
}

.pt80 {
  padding-top: 80px;
}

.pr80 {
  padding-right: 80px;
}

.pb80 {
  padding-bottom: 80px;
}

.pl80 {
  padding-left: 80px;
}

.pt81 {
  padding-top: 81px;
}

.pr81 {
  padding-right: 81px;
}

.pb81 {
  padding-bottom: 81px;
}

.pl81 {
  padding-left: 81px;
}

.pt82 {
  padding-top: 82px;
}

.pr82 {
  padding-right: 82px;
}

.pb82 {
  padding-bottom: 82px;
}

.pl82 {
  padding-left: 82px;
}

.pt83 {
  padding-top: 83px;
}

.pr83 {
  padding-right: 83px;
}

.pb83 {
  padding-bottom: 83px;
}

.pl83 {
  padding-left: 83px;
}

.pt84 {
  padding-top: 84px;
}

.pr84 {
  padding-right: 84px;
}

.pb84 {
  padding-bottom: 84px;
}

.pl84 {
  padding-left: 84px;
}

.pt85 {
  padding-top: 85px;
}

.pr85 {
  padding-right: 85px;
}

.pb85 {
  padding-bottom: 85px;
}

.pl85 {
  padding-left: 85px;
}

.pt86 {
  padding-top: 86px;
}

.pr86 {
  padding-right: 86px;
}

.pb86 {
  padding-bottom: 86px;
}

.pl86 {
  padding-left: 86px;
}

.pt87 {
  padding-top: 87px;
}

.pr87 {
  padding-right: 87px;
}

.pb87 {
  padding-bottom: 87px;
}

.pl87 {
  padding-left: 87px;
}

.pt88 {
  padding-top: 88px;
}

.pr88 {
  padding-right: 88px;
}

.pb88 {
  padding-bottom: 88px;
}

.pl88 {
  padding-left: 88px;
}

.pt89 {
  padding-top: 89px;
}

.pr89 {
  padding-right: 89px;
}

.pb89 {
  padding-bottom: 89px;
}

.pl89 {
  padding-left: 89px;
}

.pt90 {
  padding-top: 90px;
}

.pr90 {
  padding-right: 90px;
}

.pb90 {
  padding-bottom: 90px;
}

.pl90 {
  padding-left: 90px;
}

.pt91 {
  padding-top: 91px;
}

.pr91 {
  padding-right: 91px;
}

.pb91 {
  padding-bottom: 91px;
}

.pl91 {
  padding-left: 91px;
}

.pt92 {
  padding-top: 92px;
}

.pr92 {
  padding-right: 92px;
}

.pb92 {
  padding-bottom: 92px;
}

.pl92 {
  padding-left: 92px;
}

.pt93 {
  padding-top: 93px;
}

.pr93 {
  padding-right: 93px;
}

.pb93 {
  padding-bottom: 93px;
}

.pl93 {
  padding-left: 93px;
}

.pt94 {
  padding-top: 94px;
}

.pr94 {
  padding-right: 94px;
}

.pb94 {
  padding-bottom: 94px;
}

.pl94 {
  padding-left: 94px;
}

.pt95 {
  padding-top: 95px;
}

.pr95 {
  padding-right: 95px;
}

.pb95 {
  padding-bottom: 95px;
}

.pl95 {
  padding-left: 95px;
}

.pt96 {
  padding-top: 96px;
}

.pr96 {
  padding-right: 96px;
}

.pb96 {
  padding-bottom: 96px;
}

.pl96 {
  padding-left: 96px;
}

.pt97 {
  padding-top: 97px;
}

.pr97 {
  padding-right: 97px;
}

.pb97 {
  padding-bottom: 97px;
}

.pl97 {
  padding-left: 97px;
}

.pt98 {
  padding-top: 98px;
}

.pr98 {
  padding-right: 98px;
}

.pb98 {
  padding-bottom: 98px;
}

.pl98 {
  padding-left: 98px;
}

.pt99 {
  padding-top: 99px;
}

.pr99 {
  padding-right: 99px;
}

.pb99 {
  padding-bottom: 99px;
}

.pl99 {
  padding-left: 99px;
}

.pt100 {
  padding-top: 100px;
}

.pr100 {
  padding-right: 100px;
}

.pb100 {
  padding-bottom: 100px;
}

.pl100 {
  padding-left: 100px;
}

/* 游ゴシック
=========================================== */
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

@font-face {
  font-family: 'Avenir';
  src: url("../font/AvenirLTStd-Medium.woff") format("woff");
}

@font-face {
  font-family: 'din';
  src: url("../font/din1451alt.woff") format("woff");
}

/* 矢印
=========================================== */
/* 角丸
=========================================== */
/* ページ設定
=========================================== */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

body {
  font-size: 16px;
}

@media only screen and (max-width: 767px) {
  body {
    font-size: 10px;
  }
}

.linkBox {
  cursor: pointer;
}

.linkBox:hover {
  opacity: 0.8;
}

figure img {
  max-width: 100%;
}

/* コンテンツ幅 */
.container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.sp {
  display: none;
}

@media only screen and (max-width: 767px) {
  .sp {
    display: inline;
  }
}

@media only screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}

main section {
  padding: 5% 0;
}

main section p {
  line-height: 1.7;
  color: #1E2E53;
}

/* clearfix
=========================================== */
.clearfix:before,
.clearfix:after {
  content: "";
  display: block;
  overflow: hidden;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

.left {
  float: left;
}

.right {
  float: right;
}

/* リスト
=========================================== */
ul {
  list-style: none;
}

/* リンク
=========================================== */
a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

/* flexbox
=========================================== */
.flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
  .flex {
    flex-direction: column;
  }
}

.flex.flex-between {
  justify-content: space-between;
}

.flex.reverse {
  flex-direction: row-reverse;
}

@media only screen and (max-width: 767px) {
  .flex.reverse {
    flex-direction: row;
  }
}

@media only screen and (max-width: 767px) {
  .spFlexRow {
    flex-direction: row;
    flex-wrap: nowrap;
  }
}

/* header
=========================================== */
header {
  background-color: rgba(0, 0, 0, 0.3);
  width: 100%;
  padding: 10px;
  color: #fff;
  position: absolute;
  z-index: 99;
}

header h1 img {
  width: 86px;
}

@media only screen and (max-width: 767px) {
  header h1 img {
    width: 40px;
  }
}

header .telBox {
  text-align: right;
}

@media only screen and (max-width: 767px) {
  header .telBox {
    display: none;
  }
}

header .telBox>div {
  line-height: 130%;
  padding: 10px 0;
}

header .telBox p.tel {
  font-family: "Avenir";
  font-size: 214.29%;
  background-image: url(../image/freedial.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 62px auto;
  padding: 10px 0 10px 68px;
  margin-left: 15px;
}

/* FIrst View PC
=========================================== */
.first_view{
  text-align: center;
  padding-top: 82px;
  background-image: url(../image/first_view_bg2.jpg?1);
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width:767px) {
  .first_view{
    display: none;
  }
}
.first_view .first_view_inner{
  position: relative;
  max-width: 1920px; 
  margin: 0 auto;
}
.first_view .background_image{
  width: 100%;
  max-width: 1920px;
  height: auto;
  vertical-align: bottom;
  margin: 0 auto -2px;
  overflow: hidden;
}
.first_view .first_view_main{
  position: absolute;
  top: 0;
  right: 20%;
  width: 768px;
  background-color: #1b2034;
  padding-bottom: 44px;
}
@media screen and (max-width:1680px) {
  .first_view .first_view_main{
    right: 10%;
  }
}
@media screen and (max-width:900px) {
  .first_view .first_view_main{
    right: 3%;
  }
}
@media screen and (max-width:800px) {
  .first_view .first_view_main{
    right: 1%;
  }
}
.first_view .first_view_main img{
  width: 100%;
  height: auto;
}
.first_view .first_view_main .cta_button{
  width: 525px;
  margin: 15px auto;
  display: block;
}
.first_view .first_view_main .cta_button img{
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}
.first_view .first_view_main .cta_button:hover{
  opacity: 0.9;
}
.first_view .first_view_main .attention{
  color: white;
  font-size: 12px;
}

/* FIrst View SP
=========================================== */
.first_view_sp{
  display: none;
  position: relative;
  background-image: url(../image/first_view_bg2.jpg?1);
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 49px;
}
@media screen and (max-width:767px) {
  .first_view_sp{
    display: block;
  }
}
.first_view_sp img{
  width: 100%;
  height: auto;
  margin-bottom: -2px;
}
.first_view_sp .first_view_inner{
  position: relative;
  margin: 0 auto;
}
.first_view_sp .background_image{
  width: 100%;
  height: auto;
  vertical-align: bottom;
  margin: 0 auto -2px;
  overflow: hidden;
}
.first_view_sp .first_view_main{
  width: 100%;
  position: absolute;
  top: 0;
  padding-bottom: 44px;
}
.first_view_sp .first_view_main .cta_button{
  display: block;
  width: 90%;
  margin: 15px auto;
}
.first_view_sp .first_view_main .attention{
  color: white;
  font-size: 10px;
  margin-left: 10%;
  line-height: 1.5;
}
/* @media screen and (min-width:1501px) { 
  .first_view.pc{
    display: block;
  }
}
@media screen and (max-width:1500px) {
  .first_view.ipad1{
    display: block;
  }
}
@media screen and (max-width:1100px) {
  .first_view.ipad1{
    display: none;
  }
  .first_view.ipad2{
    display: block;
  } 
}
@media screen and (max-width:768px) {
  .first_view.ipad2{
    display: none;
  }
  .first_view.sp{
    display: block;
    padding-top: 49px;
  } 
} */


/* main visual
=========================================== */
#mv {
  background-image: url(../image/top_bg001.jpg);
  background-size: cover;
  padding-top: 82px;
}

@media ( max-width : 767px ) {
  #mv {
    padding-top: 50px;
  }
}

@media only screen and (max-width: 767px) {
  #mv {
    min-height: auto;
    height: 100%;
    overflow: hidden;
  }
}

@media ( min-width : 920px ) {
  #mv .sp-only {
    display: none;
  }
}

@media ( max-width : 919px ) {
  #mv .container {
    padding: 25px 0;
  }
}

@media (max-width : 1220px) {
  #mv .container {
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media only screen and (max-width: 767px) {
  #mv .container {
    min-height: auto;
  }
}

#mv .container>.flex {
  display: flex;
}

@media ( max-width : 919px ) {
  #mv .container>.flex {
    max-width: 555px;
    margin: auto;
  }
}

@media (max-width : 919px) {
  #mv .container>.flex {
    display: block;
  }
}

@media (min-width : 920px) {
  #mv .container>.flex .box-topimage {
    width: 48%;
    margin-left: 2%;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
  }
}

@media ( max-width : 919px ) {
  #mv .container>.flex .box-topimage {
    display: none;
  }
}

#mv .container>.flex .box-topimage img {
  width: 100%;
  max-width: 555px;
}

@media (min-width : 920px) {
  #mv .container>.flex .catch {
    width: 50%;
    min-height: 484px;
    display: flex;
    align-items: center;
    padding: 17px 0;
  }
}

#mv .container>.flex .catch .inner {
  width: 100%;
}

#mv .container>.flex .catch .ballon {
  background-color: #1E2E53;
  color: #fff;
  font-size: 114.29%;
  font-weight: bold;
  padding: 13px 20px;
  margin-bottom: 20px;
  text-align: center;
  position: relative;
  max-width: 525px;
}

#mv .container>.flex .catch .ballon span {
  display: inline-block;
}

@media only screen and (max-width: 767px) {
  #mv .container>.flex .catch .ballon {
    line-height: 150%;
    padding: 5px;
  }
}

#mv .container>.flex .catch .ballon:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 15px 0 0;
  border-color: #1e2e53 transparent transparent transparent;
  position: absolute;
  bottom: -15px;
  left: 5%;
}

@media only screen and (max-width: 767px) {
  #mv .container>.flex .catch .ballon:before {
    bottom: -15px;
  }
}

#mv .container>.flex .catch .copy p {
  font-size: 30px;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.2rem;
}

@media (max-width : 1080px) {
  #mv .container>.flex .catch .copy p {
    font-size: 24px;
  }
}

@media only screen and (max-width: 767px) {
  #mv .container>.flex .catch .copy p {
    letter-spacing: 0;
    text-align: left;
  }
}

@media (max-width : 475px) {
  #mv .container>.flex .catch .copy p {
    font-size: 18px;
  }
}

#mv .container>.flex .catch .copy p.gold {
  letter-spacing: 0;
  margin-left: -30px;
  margin-top: 15px;
  margin-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  #mv .container>.flex .catch .copy p.gold {
    margin-left: -20px;
  }
}

#mv .container>.flex .catch .copy p.gold span.kenjitsu {
  color: #E9CC79;
  font-size: 60px;
  letter-spacing: -0.05em;
}

@media only screen and (max-width: 1220px) {
  #mv .container>.flex .catch .copy p.gold span.kenjitsu {
    font-size: 45px;
  }
}

@media only screen and (max-width: 475px) {
  #mv .container>.flex .catch .copy p.gold span.kenjitsu {
    font-size: 30px;
  }
}

#mv .container>.flex .catch .copy p.gold span.apart {
  font-size: 170%;
  display: inline-block;
  margin-left: -20px;
}

@media only screen and (max-width: 767px) {
  #mv .container>.flex .catch .copy p.gold span.apart {
    font-size: 150%;
  }
}

@media ( min-width : 920px ) {
  #mv .container>.flex .catch .spBtmBox {
    max-width: 525px;
    margin-top: 25px;
  }
}

#mv .container>.flex .catch .spBtmBox a {
  color: #fff;
  text-decoration: none;
}

#mv .container>.flex .catch .spBtmBox>.flex>div {
  background-image: url(../image/bg_mv_icon.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  min-height: 165px;
  min-width: 48%;
  text-align: center;
  color: #fff;
}

@media ( max-width : 425px ) {
  #mv .container>.flex .catch .spBtmBox>.flex>div {
    min-height: 130px;
  }
  #mv .container>.flex .catch .spBtmBox>.flex>div .percent  {
    margin-top: 5px;
    margin-bottom: 5px;
  }
}

#mv .container>.flex .catch .spBtmBox>.flex>div a {
  padding: 4%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

#mv .container>.flex .catch .spBtmBox>.flex>div .ttl {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 5px;
}

#mv .container>.flex .catch .spBtmBox>.flex>div .percent {
  font-size: 22px;
  margin-top: 10px;
  margin-bottom: 14px;
}

#mv .container>.flex .catch .spBtmBox>.flex>div .percent span {
  color: #E9CC79;
  font-size: 69px;
  font-family: "din";
}

@media ( max-width : 425px ) {
  #mv .container>.flex .catch .spBtmBox>.flex>div .percent span {
    font-size: 50px;
  }
}

#mv .container>.flex .catch .spBtmBox>.flex>div .note {
  font-size: 14px;
}

#mv .container>.flex .catch .spBtmBox p.syuekiNote {
  color: #fff;
  font-size: 78.57%;
  line-height: 150%;
  margin-top: 15px;
}

@media ( max-width : 425px ) {
  #mv .container>.flex .catch .spBtmBox>.flex>div .ttl {
    font-size: 12px;
  }
  #mv .container>.flex .catch .spBtmBox>.flex>div .percent {
    font-size: 18px;
  }
  #mv .container>.flex .catch .spBtmBox>.flex>div .note {
    font-size: 12px;
  }
}

/* メディア掲載情報
=========================================== */
#media ul {
  text-align: center;
  padding: 0.5% 0;
}

@media only screen and (max-width: 767px) {
  #media ul {
    padding: 2em 0;
  }
}

#media ul li {
  display: inline-block;
  font-size: 112.5%;
  font-weight: bold;
  color: #1E2E53;
  vertical-align: middle;
  margin-right: 3%;
}

@media only screen and (max-width: 767px) {
  #media ul li {
    width: 18%;
  }

  #media ul li img {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  #media ul li:first-child {
    display: block;
    width: 100%;
    font-size: 16px;
    margin-bottom: 10px;
  }

  #media ul li:nth-child(4) {
    margin-right: 0;
  }

  #media ul li:nth-child(5) {
    margin-right: 0;
  }
}

/* CTA
=========================================== */
.ctaBox {
  background: -webkit-linear-gradient(#2a4166 0%, #1c1f32 100%);
  background: -o-linear-gradient(#2a4166 0%, #1c1f32 100%);
  background: linear-gradient(#2a4166 0%, #1c1f32 100%);
  padding: 3% 0 2% 0;
  color: #fff;
}

@media only screen and (max-width: 767px) {
  .ctaBox {
    padding: 5% 5% 5% 5%;
  }
}

.ctaBox h2{
  background-color: #655C57;
  color: white;
  text-align: center;
  padding: 30px 0;
  width: 100%;
  font-size: 30px;
  font-weight: bold;
}

.ctaBox h2 .sp_bar{
  display: none;
}

@media only screen and (max-width: 767px) {
  .ctaBox h2{
    font-size: 18px;
    padding: 15px 0;
    line-height: 1.5;
  }
  .ctaBox h2 .sp_bar{
    display: block;
  }
}

.ctaBox .border {
  border: 2px #655C57 solid;
  border-top: none;
  padding: 0 0 1.5% 1.5%;
  font-size: 150%;
  font-weight: bold;
  text-align: center;
  line-height: 150%;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
}

@media only screen and (max-width: 767px) {
  .ctaBox .border {
    display: none;
  }
}

.ctaBox .border p{
  font-size: 16px;
  font-weight: normal;
}

.ctaBox .border img{
  width: 100%;
  height: auto;
}

.ctaBox .border .document{
  width: 188px;
  margin-top: 59px;
  display: inherit;
}

.ctaBox .border .cta_button{
  display: block;
  max-width: 665px;
  margin: 59px auto 0;
}

.ctaBox .border .cta_button img{
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}

.ctaBox .border .cta_button:hover{
  opacity: 0.9;
}

@media screen and (max-width:1200px) {
  .ctaBox .border .cta_button{
    margin: 20px 30px;
  }
}

.ctaBox .border .book{
  width: 275px;
  margin-top: 55px;
  display: inherit;
}

.ctaBox .border .main_content .text1{
  margin-top: 20px;
  line-height: 1.5;
}

.ctaBox .border .main_content .text2{
  font-size: 14px;
  text-align: center;
}

/* CTA SP
=========================================== */
.ctaBox .border_sp {
  display: none;
}

@media only screen and (max-width: 767px) {
  .ctaBox .border_sp {
    display: block;
  }
}

.ctaBox .border_sp {
  border: 2px #655C57 solid;
  border-top: none;
  padding-bottom: 20px;
}

.ctaBox .border_sp .document_and_book img{
  width: 100%;
  height: auto;
}

.ctaBox .border_sp .cta_button{
  display: block;
  width: 90%;
  margin: 10px auto;
}

.ctaBox .border_sp .cta_button img{
  width: 100%;
  height: auto;
}

.ctaBox .border_sp .text1{
  font-size: 14px;
  padding: 20px 15px;
  line-height: 1.5;
}

.ctaBox .border_sp .text2{
  font-size: 10px;
  margin-top: 5px;
  padding-left: 20px;
  line-height: 1.5;
}

/* .ctaBox .border p {
  font-size: 22px;
}

@media only screen and (max-width: 767px) {
  .ctaBox .border p {
    font-size: 100%;
    line-height: 150%;
    padding: 0 3%;
  }
}

.ctaBox .border p span {
  color: #E9CC79;
}

.ctaBox .border h2 {
  display: table;
  background-color: #A88C67;
  padding: 10px 3em;
  margin: auto;
  border-radius: 25px;
  margin-top: -25px;
  margin-bottom: 1%;
  font-size: 24px;
}

@media only screen and (max-width: 767px) {
  .ctaBox .border h2 {
    margin-top: 0;
    border-radius: 0;
    font-size: 1.15rem;
    padding-left: 0;
    padding-right: 0;
    line-height: 150%;
  }
}
@media ( max-width : 767px ) {
  .ctaBox .border .textBox {
    padding: 10px 0;
  }
}
.ctaBox .border .telBox {
  align-items: center;
}
@media ( min-width : 768px ) {
  .ctaBox .border .telBox .col {
    width: 49%;
  }
  .ctaBox .border .telBox .col:not(:last-child) {
    margin-right: 2%;
    display: flex;
    align-items: center;
  }
  .ctaBox .border .telBox .col > img {
    margin-right: 10px;
  }
}
@media ( max-width : 767px ) {
  .ctaBox .border .telBox .col {
    width: 100%;
    padding: 0 10px;
  }
  .ctaBox .border .telBox .col:not(:last-child) {
    margin-bottom: 4%;
  }
}
.ctaBox .border .telBox p {
  font-size: 18px;
  font-weight: normal;
}

@media only screen and (max-width: 767px) {
  .ctaBox .border .telBox p {
    font-size: 15px;
  }
}

.ctaBox .border .telBox p.tel {
  font-family: "Avenir";
  font-size: 49px;
  padding-left: 90px;
  position: relative;
  line-height: normal;
}
.ctaBox .border .telBox p.tel:before {
  content: '';
  display: block;
  position: absolute;
  width: 88px;
  height: 51px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(../image/freedial_cta.png) no-repeat center / cover;
}
@media ( max-width : 767px ) {
  .ctaBox .border .telBox p.tel {
    background-size: 70px auto;
    padding-left: 65px;
    font-size: 225%;
    padding-top: 5px;
  }
  .ctaBox .border .telBox p.tel:before {
    width: 60px;
    height: 39px;
  }
}
@media only screen and (max-width: 767px) {
  .ctaBox .border .telBox p.tel {
    background-size: 70px auto;
    padding-left: 75px;
    font-size: 225%;
    padding-top: 5px;
  }
}

.ctaBox .border .telBox p.tel a {
  color: #fff;
}

.ctaBox .border .telBox p.time {
  text-align: center;
  border: 1px #fff solid;
  padding: 3px;
  line-height: 1.4;
}

@media only screen and (max-width: 767px) {
  .ctaBox .border .telBox p.time {
    font-size: 100%;
  }
}

.ctaBox .border .telBox div a img {
  width: 100%;
  vertical-align: bottom;
}

@media only screen and (max-width: 767px) {
  .pbBox {
    padding-bottom: 5%;
  }
} */

/* こんなお悩みはありませんか？
=========================================== */
#trouble {
  background-image: url(../image/bg_trouble2.jpg);
  background-position: top center;
  background-repeat: no-repeat;
  padding-bottom: 0;
}

@media only screen and (max-width: 767px) {
  #trouble {
    padding-top: 5em;
  }
}

#trouble h2 {
  font-size: 257.14%;
  line-height: 130%;
  text-align: center;
}

#trouble h2 span {
  font-weight: normal;
  font-size: 28px;
}

#trouble .jonsonBox {
  margin-top: 5em;
}

@media only screen and (max-width: 767px) {
  #trouble .jonsonBox {
    padding-left: 5%;
    padding-right: 5%;
  }
}

#trouble .jonsonBox>div {
  background-color: #fff;
  box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.16);
  padding: 4% 2% 2% 2%;
  width: 23%;
  position: relative;
}

@media only screen and (max-width: 767px) {
  #trouble .jonsonBox>div {
    width: 100%;
    margin-bottom: 2em;
    padding: 5%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
  }
}

#trouble .jonsonBox>div:before {
  content: "";
  display: block;
  width: 57px;
  height: 57px;
  background-image: url(../image/icon_checkmark.png);
  background-repeat: no-repeat;
  position: absolute;
  top: -20px;
  left: 40%;
}

@media only screen and (max-width: 767px) {
  #trouble .jonsonBox>div:before {
    display: none;
  }
}

#trouble .jonsonBox>div figure {
  text-align: center;
  margin-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  #trouble .jonsonBox>div figure {
    margin-right: 15px;
    margin-bottom: 0;
    /* width: 50px; */
  }
  /* #trouble .jonsonBox>div figure img{
    width: 100%;
  } */
}

#trouble .jonsonBox>div p {
  color: #1E2E53;
  font-weight: bold;
  font-size: 128.57%;
  line-height: 1.6;
}

@media only screen and (max-width: 767px) {
  #trouble .jonsonBox>div p {
    font-size: 1.0rem;
    width: 90%;
  }
}

#trouble .oldAge {
  text-align: center;
}

#trouble .oldAge p {
  font-size: 130%;
  margin: 1.5em 0 3em 0;
}

@media only screen and (max-width: 767px) {
  #trouble .oldAge p {
    margin: 0 0 30px 0;
    padding-left: 3%;
    padding-right: 3%;
    font-size: 1.0rem;
  }
}

@media only screen and (max-width: 767px) {
  #trouble .oldAge figure {
    width: 90%;
    margin: 0 auto 30px auto;
  }
}

@media only screen and (max-width: 767px) {
  #trouble .oldAge figure.arrow {
    width: 130.5px;
    margin-bottom: 15px;
  }
}

section.teian {
  display: flex;
  padding: 0;
  background: linear-gradient(
    to bottom,
    rgba(198,197,197,0) 0%,
    rgba(198,197,197,0) 80px,
    rgba(198,197,197,1) 80px,
    rgba(255,255,255,1) 100%
  );
  position: relative;
}
section.teian:before {
  content: '';
  display: block;
  position: absolute;
  width: 164px;
  height: 164px;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(calc(-50% + 40px));
  background: url(../image/bg_logo01.png) no-repeat center / cover;
}
@media ( max-width : 767px ) {
  section.teian {
    background: linear-gradient(
      to bottom,
      rgba(198,197,197,1) 0%,
      rgba(255,255,255,1) 100%
    );
  }
  section.teian:before {
    transform: translateX(-50%) translateY(-50%);
  }
}
section.teian:after {
  content: '';
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 70px 0 70px;
  border-color: #fff transparent transparent transparent;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%) translateY(100%);
  z-index: 1;
}
section.teian .row {
  display: flex;
  position: relative;
  z-index: 1;
}
section.teian .col:first-child {
  width: 18%;
}
@media ( max-width : 767px ) {
  section.teian .col.img {
    display: none;
  }
}
section.teian .col:first-child figure {
  width: 142.5%;
  height: 100%;
  display: flex;
  align-items: flex-end;
}
section.teian .col:first-child figure img {
  width: 100%;
}
section.teian .col:last-child {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 80px;
  padding: 10px 0;
}
@media ( max-width : 767px ) {
  section.teian .col.txt {
    width: 100%;
    padding: 40px 0;
    margin: 0;
  }
}
section.teian .col:last-child .inner {
  width: 100%;
}
section.teian p {
  margin: 0;
  font-size: 40px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}
section.teian p.top span {
  font-size: 50px;
  display: inline-block;
}
section.teian p.bottom span:first-child {
  font-size: 60px;
}
section.teian p.bottom span:last-child {
  display: inline-block;
}
section.teian p.bottom span span {
  color: #AE903B;
}
@media ( max-width : 1000px ) {
  section.teian p {
    font-size: 28px;
  }
  section.teian p.top span {
    font-size: 36px;
  }
  section.teian p.bottom span:first-child {
    font-size: 50px;
  }
}
@media ( max-width : 580px ) {
  section.teian p {
    font-size: 18px;
  }
  section.teian p.top span {
    font-size: 24px;
  }
  section.teian p.bottom span:first-child {
    font-size: 28px;
  }
}

/* なぜ資産形成にアパート経営がいいのか？
=========================================== */
#why {
  background: linear-gradient(
    45deg,
    rgba(42,65,102,1) 0%,
    rgba(28,31,50,1) 100%
  );
  padding-bottom: 0;
  color: #fff;
  position: relative;
}
@media ( max-width : 767px ) {
  #why {
    padding-top: 60px;
  }
}
#why:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 70px 0 70px;
  border-color: #1e243a transparent transparent transparent;
  position: absolute;
  bottom: -25px;
  left: calc(50% - 35px);
}

@media only screen and (max-width: 767px) {
  #why:before {
    left: 30%;
  }
}

#why .container {
  padding-bottom: 6%;
}
@media ( max-width : 1200px ) {
  #why .container {
    padding: 0 10px;
  }
}

@media only screen and (max-width: 767px) {
  #why .container {
    background: none;
  }
}

#why .box {
  width: 100%;
  margin-right: 0;
  margin-left: auto;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  #why .box {
    width: 100%;
  }
}

#why h2 {
  font-size: 50px;
  margin-bottom: 3%;
  line-height: normal;
}
#why h2 span {
  display: inline-block;
}
#why h2 span span {
  color: #E9CC79;
}
@media only screen and (max-width: 767px) {
  #why h2 {
    font-size: 28px;
  }
}

#why .box > p {
  color: #fff;
  text-align: center;
  font-size: 18px;
  line-height: 1.89;
  margin-bottom: 60px;
}

@media only screen and (max-width: 767px) {
  #why p {
    font-size: 1.0rem;
  }
}
#why .flow {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#why .flow .white {
  background-color: #fff;
  color: #000;
  padding: 25px 2%;
  position: relative;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.4);
  width: 49.2%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  margin-bottom: 40px;
}
@media ( max-width : 767px ) {
  #why .flow .white {
    padding-top: 64px;
  }
}
@media ( max-width : 600px ) {
  #why .flow .white {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media ( min-width : 768px ) {
  #why .flow .white .inner {
    margin-left: 95px;
    margin-top: 20px;
  }
}


#why .flow .white h3 {
  font-size: 32px;
  text-align: left;
  letter-spacing: 0.08em;
  color: #AE903B;
  margin-bottom: 25px;
}
@media ( max-width : 767px ) {
  #why .flow .white h3 {
    font-size: 24px;
  }
}
@media ( max-width : 600px ) {
  #why .flow .white h3 {
    font-size: 20px;
    margin-bottom: 15px;
  }
}
#why .flow .white h3 span {
  display: inline-block;
}

#why .flow .white h3:before {
  content: "";
  display: block;
  width: 90px;
  height: 90px;
  position: absolute;
  top: -11px;
  left: 20px;
}

@media ( max-width : 767px ) {
  #why .flow .white h3:before {
    width: 60px;
    height: 60px;
  }
}

#why .flow .white h3.label01:before {
  background: url(../image/label01.png) no-repeat center / cover;
}

#why .flow .white h3.label02:before {
  background: url(../image/label02.png) no-repeat center / cover;
}

#why .flow .white h3.label03:before {
  background: url(../image/label03.png) no-repeat center / cover;
}

#why .flow .white h3.label04:before {
  background: url(../image/label04.png) no-repeat center / cover;
}

#why .flow .white p {
  color: #000;
  text-align: left;
  font-size: 16px;
  line-height: 1.625;
}
@media ( max-width : 600px ) {
  #why .flow .white p {
    font-size: 16px;
    line-height: normal;
  }
}

/* 選ばれる理由　冒頭
=========================================== */
#read {
  background-image: url(../image/bg_read.png);
  background-position: top center;
  background-repeat: no-repeat;
  padding: 8% 0 12%;
}

@media only screen and (max-width: 767px) {
  #read {
    padding-left: 5%;
    padding-right: 5%;
  }
}

#read p {
  text-align: center;
  font-weight: bold;
  font-size: 157.14%;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin-top: 1.5em;
}

#read p span.gold {
  color: #AE903B;
  font-size: 32px;
}

#read p span.imp {
  color: #E50012;
  font-size: 170%;
  display: inline-block;
  position: relative;
}

#read p span.imp:before {
  content: "";
  display: block;
  width: 100%;
  height: 17px;
  background-color: #FFF95A;
  position: absolute;
  bottom: 0px;
  z-index: -1;
  line-height: 100%;
}

#read .reason {
  margin-top: 2em;
}

#read .reason>div {
  text-align: center;
  width: 23%;
  padding: 0 10px;
}

@media only screen and (max-width: 767px) {
  #read .reason{
    display: none;
  }
  #read .reason>div {
    width: 100%;
    margin-bottom: 4em;
    padding: 0;
  }
}

#read .reason>div h3 {
  font-size: 128.57%;
  margin: 15px 0 10px 0;
  line-height: 1.5;
}

@media only screen and (max-width: 767px) {
  #read .reason>div h3 {
    font-size: 1.5rem;
  }

  #read .reason>div h3 br {
    display: none;
  }
}

#read .reason>div p {
  font-weight: normal;
  font-size: 16px;
  letter-spacing: 0;
  margin-top: 0;
}

#read .reason>div a.more {
  display: inline-block;
  border: 1px #000 solid;
  padding: 10px 2em;
  color: #000;
  margin-top: 10px;
  border-radius: 18px;
  text-decoration: none;
  transition: .3s;
  position: relative;
}

@media only screen and (max-width: 767px) {
  #read .reason>div a.more {
    font-size: 1.0rem;
  }
}

#read .reason>div a.more:hover {
  background-color: #000;
  color: #fff;
}

#read .reason>div a.more:hover:before {
  border-color: #fff;
}

#read .reason>div a.more:before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-right: 1px #000 solid;
  border-bottom: 1px #000 solid;
  transform: rotate(45deg);
  position: absolute;
  right: 15px;
  top: 13px;
}
#reason {
  background: #F5F5F5;
}

@media only screen and (max-width: 767px) {
  #reason .container {
    width: 100%;
  }
}
#reason .ttl_wrapper {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: auto;
  transform: translateY(50%);
}
@media only screen and (max-width: 767px) {
  #reason .ttl_wrapper {
    margin: 0 auto 0 10px;
  }
}
#reason .ttl_wrapper h2 {
  color: #fff;
  background: #1E2E53;
  font-size: 22px;
  letter-spacing: 0.05em;
  line-height: 50px;
  width: 370px;
  text-align: center;
}
@media ( max-width : 767px ) {
  #reason .ttl_wrapper {
    display: block;
    transform: translateY(20px);
  }
  #reason .ttl_wrapper img {
    width: 80px;
    height: 25px;
  }
  #reason .ttl_wrapper h2 {
    font-size: 20px;
    width: auto;
    text-align: left;
    line-height: normal;
    padding: 0.4em 0.6em;
  }
}
#reason01 .row {
  display: flex;
  flex-wrap: wrap;
  padding: 80px 7.5% 40px 7.5%;
  background: #fff;
}
@media ( max-width : 767px ) {
  #reason01 .row {
    padding: 60px 10px;
  }
}
#reason01 .row .col.text {
  width: 54%;
  margin-right: 2%;
}
@media ( max-width : 767px ) {
  #reason01 .row .col.text {
    width: 100%;
    margin-bottom: 25px;
  }
}
#reason01 .row .col.text h3 {
  font-size: 32px;
  color: #AE903B;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
#reason01 .row .col.text h3:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 5px;
  left: 0;
  bottom: 0;
  background: #AE903B;
}
#reason01 .row .col.text .block:not(:last-child) {
  margin-bottom: 40px;
}
#reason01 .row .col.text p.catch {
  font-size: 18px;
  line-height: 1.66;
  font-weight: bold;
}
#reason01 .row .col.text p.txt {
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
@media ( max-width : 767px ) {
  #reason01 .row .col.text h3 {
    font-size: 20px;
    display: block;
    text-align: center;
  }
  #reason01 .row .col.text h3:before {
    height: 3px;
  }
  #reason01 .row .col.text p.catch {
    font-size: 16px;
    margin-bottom: 5px;
  }
  #reason01 .row .col.text p.txt {
    font-size: 16px;
  }
}
#reason01 .row .col.graph {
  width: 44%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media ( max-width : 767px ) {
  #reason01 .row .col.graph {
    width: 100%;
    justify-content: center;
  }
}
#reason01 .row .col.graph img {
  width: 100%;
  max-width: 346px;
}
@media ( max-width : 767px ) {
  #reason01 .row .col.graph {
    text-align: center;
  }
  #reason01 .row .col.graph img {
    width: 70%;
  }
}
#reason01 .row .col.graph p {
  font-size: 16px;
  text-align: center;
  margin-top: 5px;
}

#reason .reason02 {
  margin-top: 5em;
}

#reason .reason02 .row {
  background: #fff;
  padding: 80px 0 60px 0;
}
@media ( max-width : 767px ) {
  #reason .reason02 .row {
    padding: 60px 10px;
  }
}
#reason .reason02 .row h3 {
  font-size: 32px;
  color: #AE903B;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
  display: inline-block;
  margin-left: 2.66%;
  margin-right: 2.66%;
}
@media ( max-width : 767px ) {
  #reason .reason02 .row h3 {
    display: block;
    text-align: center;
    margin: 0 auto 20px;
  }
}
#reason .reason02 .row h3:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 5px;
  left: 0;
  bottom: 0;
  background: #AE903B;
}
@media ( max-width : 767px ) {
  #reason .reason02 .row h3 {
    font-size: 20px;
  }
  #reason .reason02 .row h3:before {
    height: 3px;
  }
}
#reason .reason02 .row .reason02_01, #reason .reason02 .row .reason02_03 {
  text-align: right;
}
#reason .reason02 .row .reason02_01 h3:after, #reason .reason02 .row .reason02_03 h3:after {
  right: 0;
}
#reason .reason02 .row .reason02_02 h3:after {
  content: 'Soundproof';
}
#reason .reason02 .row .reason02_03 h3:after {
  content: 'Seismic capacity';
}
@media ( max-width : 767px ) {
  #reason .reason02 .row .reason02_02 .txt_wrapper, #reason .reason02 .row .reason02_03 .txt_wrapper {
    padding-top: 0;
  }
}
#reason .reason02 .row .txt_wrapper {
  padding: 25px 2.66%;
}
#reason .reason02 .row p.txt {
  font-size: 16px;
  line-height: 1.75;
  text-align: left;
}
@media ( max-width : 767px ) {
  #reason .reason02 .row p.txt {
    font-size: 16px;
  }
}
#reason .reason02 .row .img_wrapper {
  padding: 0 2.66%;
}
#reason .reason02 .row .reason02_01, #reason .reason02 .row .reason02_02 {
  margin-bottom: 40px;
}



#reason .reason03 {
  margin-top: 5em;
}

#reason .reason03 .row {
  background: #fff;
  padding: 80px 0 60px 0;
}
@media ( max-width : 767px ) {
  #reason .reason03 .row {
    padding: 60px 10px;
  }
}
#reason .reason03 .row h3 {
  font-size: 32px;
  color: #AE903B;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
  display: inline-block;
  /*margin-left: 3.66%;*/
  margin-left: 15%;
  margin-right: 3.66%;
}
@media ( max-width : 767px ) {
  #reason .reason03 .row h3 {
    display: block;
    margin: 0 auto 20px;
    text-align: center;
  }
}
#reason .reason03 .row h3:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 5px;
  left: 0;
  bottom: 0;
  background: #AE903B;
}
#reason .reason03 .row h3:after {
  content: '';
  display: block;
  position: absolute;
  font-size: 2.5em;
  font-weight: normal;
  top: 0;
  color: #9E9E9F;
  font-family: 'Century Old Style Std';
  opacity: 0.1;
  white-space: nowrap;
}
@media ( max-width : 767px ) {
  #reason .reason03 .row h3 {
    font-size: 20px;
  }
  #reason .reason03 .row h3:before {
    height: 3px;
  }
}
#reason .reason03 .row .reason03_01, #reason .reason03 .row .reason03_03 {
  text-align: right;
}
#reason .reason03 .row .reason03_01 h3:after, #reason .reason03 .row .reason03_03 h3:after {
  right: 0;
}
#reason .reason03 .row .reason03_02 h3:after {
  content: '';
}
#reason .reason03 .row .reason03_03 h3:after {
  content: '';
}
@media ( max-width : 767px ) {
  #reason .reason03 .row .reason03_02 .txt_wrapper, #reason .reason03 .row .reason03_03 .txt_wrapper {
    padding-top: 0;
  }
}
#reason .reason03 .row .txt_wrapper {
  padding: 25px 2.66%;
}
#reason .reason03 .row p.txt {
  font-size: 16px;
  line-height: 1.75;
  text-align: left;
}
@media ( max-width : 767px ) {
  #reason .reason03 .row p.txt {
    font-size: 16px;
  }
}
#reason .reason03 .row .img_wrapper {
  padding: 0 2.66%;
}
#reason .reason03 .row .reason03_01, #reason .reason03 .row .reason03_02 {
  margin-bottom: 40px;
}


#reason .reason03 .row .reason03_01, #reason .reason03 .row .reason03_03 {
  text-align: center;
}
#reason .reason03 .row .reason03 h3:after {
  right: 0;
}
#reason .reason03 .row .txt_wrapper {
  padding: 25px 2.66%;
}
#reason .reason03 .row p.txt {
  font-size: 16px;
  line-height: 1.75;
  text-align: left;
}
@media ( max-width : 767px ) {
  #reason .reason03 .row p.txt {
    font-size: 16px;
  }
}
#reason .reason03 .row .img_wrapper {
  padding: 0 2.66%;
}
#reason .reason03 .row .reason03_01, #reason .reason03 .row .reason03_02 {
  margin-bottom: 40px;
}
#reason03 .row .col.text p.catch {
  font-size: 18px;
  line-height: 1.66;
  font-weight: bold;
}
#reason03 .row .col.text p.txt {
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
@media ( max-width : 767px ) {
  #reason03 .row .col.text h3 {
    font-size: 20px;
  }
  #reason03 .row .col.text h3:before {
    height: 3px;
  }
  #reason03 .row .col.text p.catch {
    font-size: 16px;
    margin-bottom: 5px;
  }
  #reason03 .row .col.text p.txt {
    font-size: 16px;
  }
}


#reason .reason04 {
  margin-top: 5em;
}

#reason .reason04 .row {
  background: #fff;
  padding: 80px 0 15px 0;
  text-align: center;
}
@media ( max-width : 767px ) {
  #reason .reason04 .row {
    padding: 60px 0 5px 0;
  }
}

#reason .reason04 .row h3 {
  font-size: 32px;
  color: #AE903B;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
  display: inline-block;
}
#reason .reason04 .row h3:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 5px;
  left: 0;
  bottom: 0;
  background: #AE903B;
}
@media ( max-width : 767px ) {
  #reason .reason04 .row h3 {
    font-size: 20px;
  }
  #reason .reason04 .row h3:before {
    height: 3px;
  }
}
#reason .reason04 .row p.txt {
  font-size: 16px;
  line-height: 1.75;
  text-align: left;
}
@media ( max-width : 767px ) {
  #reason .reason04 .row p.txt {
    font-size: 16px;
  }
}
#reason .reason04 .row .txt_wrapper {
  padding: 25px 2.66%;
}

#reason .reason04 {
  margin-top: 5em;
}

#reason .reason04 .row {
  background: #fff;
  padding: 80px 7.5% 40px 7.5%;
  text-align: center;
}
@media ( max-width : 767px ) {
  #reason .reason04 .row {
    padding: 60px 10px;
  }
}

#reason .reason04 .row h3 {
  font-size: 32px;
  color: #AE903B;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
  display: inline-block;
}
#reason .reason04 .row h3:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 5px;
  left: 0;
  bottom: 0;
  background: #AE903B;
}
@media ( max-width : 767px ) {
  #reason .reason04 .row h3 {
    font-size: 20px;
    display: block;
    text-align: center;
  }
  #reason .reason04 .row h3:before {
    height: 3px;
  }
}
#reason .reason04 .row p.txt {
  font-size: 16px;
  line-height: 1.75;
  text-align: left;
}
@media ( max-width : 767px ) {
  #reason .reason04 .row p.txt {
    font-size: 16px;
  }
}

#reason .reason04 .row .list_of_support{
  margin: 20px 0 30px;
}

@media screen and (max-width:767px) {
  #reason .reason04 .row .list_of_support{
    margin: 10px 0 20px;
  }
}

#reason .reason04 .row .list_of_support h4{
  text-align: center;
  font-size: 26px;
  font-weight: bold;
  color: white;
  background-color: #1E2E53;
  padding: 15px 0;
}

@media screen and (max-width:767px) {
  #reason .reason04 .row .list_of_support h4{
    font-size: 18px;
  }
}

#reason .reason04 .row .list_of_support .boxes{
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: center;
}

#reason .reason04 .row .list_of_support .boxes .box{
  width: 50%;
}

@media screen and (max-width:767px) {
  #reason .reason04 .row .list_of_support .boxes{
    display: block;
  }
  
  #reason .reason04 .row .list_of_support .boxes .box{
    width: 100%;
  }
}

#reason .reason04 .row .list_of_support .boxes .box .item{
  padding: 15px;
  background-color: #F9FDFF;
  font-size: 20px;
  font-weight: bold;
  color: #1E2E53;
  border: 1px solid #1E2E53;
  text-align: left;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start; 
  border-top: none;
}

#reason .reason04 .row .list_of_support .boxes .box:nth-child(1) .item{
  border-right: none;
}

@media screen and (max-width:767px) {
  #reason .reason04 .row .list_of_support .boxes .box:nth-child(1) .item{
    border-right: 1px solid #1E2E53;
  }
}

@media screen and (max-width:1050px) {
  #reason .reason04 .row .list_of_support .boxes .box .item{
    height: 90px;
  }
}

@media screen and (max-width:767px) {
  #reason .reason04 .row .list_of_support .boxes .box .item{
    height: auto;
    padding: 10px;
    font-size: 16px;
  }
}

#reason .reason04 .row .list_of_support .boxes .box .item .number_icon{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  width: 41px;
  height: 36px;
  background-image: url(../image/number_icon.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-right: 15px;
}

@media screen and (max-width:767px) {
  #reason .reason04 .row .list_of_support .boxes .box .item .number_icon{
    margin-right: 10px;
    width: 32px;
    height: 27px;
  }
}
#reason .reason04 .row .list_of_support .boxes .box .item .number_icon span{
  font-size: 22px;
  color: white;
}
@media screen and (max-width:767px) {
  #reason .reason04 .row .list_of_support .boxes .box .item .number_icon span{
    font-size: 17px;
  }
}

#reason .reason04 .row .textarea{
  padding: 0 10px;
}
@media screen and (max-width:767px) {
  #reason .reason04 .row .textarea{
    padding: 0;
  }
}
/* #reason .reason04 .row .img_wrapper {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  margin: 40px 0;
}
#reason .reason04 .row .img_wrapper .circle {
  text-align: center;
  width: 14.4%;
}
@media ( max-width : 1040px ) {
  #reason .reason04 .row .img_wrapper .circle {
    width: 28.8%;
    margin-bottom: 20px;
  }
}
@media ( max-width : 520px ) {
  #reason .reason04 .row .img_wrapper .circle {
    width: 50%;
    margin-bottom: 20px;
  }
}
#reason .reason04 .row .img_wrapper .circle figure {
  width: 124px;
  height: 124px;
  border: 2px solid #AE903B;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
  margin-bottom: 15px;
}
#reason .reason04 .row .img_wrapper .circle p {
  font-size: 18px;
  line-height: 1.38;
  font-weight: bold;
  text-align: center;
}
@media ( max-width : 520px ) {
  #reason .reason04 .row .img_wrapper .circle p {
    font-size: 16px;
  }
} */
#reason .reason04 .row .reason04_01, #reason .reason04 .row .reason04_02 {
  margin-bottom: 40px;
}

#reason05 .row {
  display: flex;
  flex-wrap: wrap;
  padding: 80px 7.5% 40px 7.5%;
  background: #fff;
}
@media ( max-width : 767px ) {
  #reason05 .row {
    padding: 60px 10px;
  }
}
#reason05 .row .col.text {
  width: 54%;
  margin-right: 2%;
}
@media ( max-width : 767px ) {
  #reason05 .row .col.text {
    width: 100%;
    margin-bottom: 25px;
  }
}
#reason05 .row .col.text h3 {
  font-size: 32px;
  color: #AE903B;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
#reason05 .row .col.text h3:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 5px;
  left: 0;
  bottom: 0;
  background: #AE903B;
}
#reason05 .row .col.text .block:not(:last-child) {
  margin-bottom: 40px;
}
#reason05 .row .col.text p.catch {
  font-size: 18px;
  line-height: 1.66;
  font-weight: bold;
}
#reason05 .row .col.text p.txt {
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
@media ( max-width : 767px ) {
  #reason05 .row .col.text h3 {
    font-size: 20px;
  }
  #reason05 .row .col.text h3:before {
    height: 3px;
  }
  #reason05 .row .col.text p.catch {
    font-size: 16px;
    margin-bottom: 5px;
  }
  #reason05 .row .col.text p.txt {
    font-size: 16px;
  }
}
#reason05 .row .col.graph {
  width: 55%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media ( max-width : 767px ) {
  #reason05 .row .col.graph {
    width: 100%;
    justify-content: center;
  }
}
#reason05 .row .col.graph img {
  width: 100%;
  max-width: 380px;
}
@media ( max-width : 767px ) {
  #reason05 .row .col.graph {
    text-align: center;
  }
  #reason05 .row .col.graph img {
    width: 60%;
  }
}
#reason05 .row .col.graph p {
  font-size: 16px;
  text-align: center;
  margin-top: 5px;
}














/* 物件掲載
=========================================== */
#property {
    padding: 4% 0;
    /*background-image: url(../image/bg_logo02.png);*/
    background-image: url(../image/bg_read.png);
    background-position: top center;
    background-repeat: no-repeat;
}

@media only screen and (max-width: 767px) {
  #close {
    background-position: top center;
    margin-bottom: 0;
  }
}

#property h2 {
  font-size: 228.57%;
  line-height: 150%;
  text-align: center;
  color: #1E2E53;
}

#property .property .row {
  background: #fff;
  padding: 80px 0 15px 0;
  text-align: center;
}
@media ( max-width : 767px ) {
  #property .property .row {
    padding: 60px 0 5px 0;
  }
}

#property .property .row h3 {
  font-size: 32px;
  color: #AE903B;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 20px;
  display: inline-block;
}
#property .property .row h3:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 5px;
  left: 0;
  bottom: 0;
  background: #AE903B;
}
@media ( max-width : 767px ) {
  #property .property .row h3 {
    font-size: 20px;
  }
  #property.property .row h3:before {
    height: 3px;
  }
}
#property .property .row p.txt {
  font-size: 16px;
  line-height: 1.75;
  text-align: left;
}
@media ( max-width : 767px ) {
  #property .property .row p.txt {
    font-size: 16px;
  }
}
#property .property .row .txt_wrapper {
  padding: 25px 2.66%;
}

.property .row img{
  display: block;
  margin: 0px auto;
}


/* 代表メッセージ
=========================================== */
#president {
  background-image: url(../image/bg_president01.png);
  background-size: contain;
  padding: 5em 0 0 0;
  text-align: center;
  overflow: hidden;
  background-position: top center;
}

@media only screen and (max-width: 767px) {
  #president {
    padding: 8em 0 0 0;
    background-size: auto;
  }
}

#president h2 {
  color: #fff;
  font-size: 185.71%;
  line-height: 200%;
}

@media only screen and (max-width: 767px) {
  #president h2 {
    padding: 0 5%;
  }
}

#president .bg {
  margin-top: 8em;
  background-color: #2D2A25;
}

#president .bg p {
  color: #fff;
  text-align: left;
  font-size: 114.29%;
  line-height: 200%;
}

#president .bg .flex>div:nth-of-type(1) {
  padding: 5em 4em 0 0;
  position: relative;
  width: 60%;
}

@media only screen and (max-width: 767px) {
  #president .bg .flex>div:nth-of-type(1) {
    width: 100%;
    padding: 2em 2em 0 2em;
    padding-top: 0;
  }
}

#president .bg .flex>div:nth-of-type(1) h3 {
  background-color: #AE903B;
  color: #fff;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  padding: 1em 10px 0.8em;
  font-size: 185.71%;
  letter-spacing: 0.5rem;
  position: absolute;
  right: 0;
  top: 0;
}

@media only screen and (max-width: 767px) {
  #president .bg .flex>div:nth-of-type(1) h3 {
    position: static;
    -webkit-writing-mode: initial;
    -ms-writing-mode: initial;
    writing-mode: initial;
    padding: 10px;
    margin-bottom: 15px;
  }
}

#president .bg .flex>div:nth-of-type(1) p {
  margin-bottom: 2em;
}

@media only screen and (max-width: 767px) {
  #president .bg .flex>div:nth-of-type(1) p {
    font-size: 16px;
    line-height: 1.65;
  }
}

#president .bg .flex>div:nth-of-type(1) p.name {
  font-weight: bold;
  text-align: right;
}

#president .bg .flex>div:nth-of-type(1) p.name span {
  display: inline-block;
  margin-left: 15px;
}

@media only screen and (max-width: 767px) {
  #president .bg .flex>div:nth-of-type(1) p.name span {
    display: block;
    margin-left: 0;
  }
}

@media only screen and (max-width: 767px) {
  #president .bg .flex>div:nth-of-type(1) p.name {
    margin-bottom: 0;
    text-align: right;
    margin-top: -48px;
    line-height: 150%;
    padding-bottom: 10px;
  }
}

#president .bg .flex>div:nth-of-type(2) img {
  margin-top: -30%;
}

@media only screen and (max-width: 767px) {
  #president .bg .flex>div:nth-of-type(2) img {
    margin-top: 0;
    width: 50%;
  }
}

#president .bg .flex>figure {
  padding-top: 2em;
}

#president .bg img.sp {
  width: 80%;
  vertical-align: bottom;
}

/* 動画一覧
=========================================== */
#video {
  margin: 5em 0;
  background-image: url(../image/video_play_icon.png);
  background-repeat: no-repeat;
  background-position: top 2% center;
}

@media only screen and (max-width: 767px) {
  #video {
    background-position: top center;
    margin-bottom: 0;
    background-image: url(../image/video_play_icon_sp.png);
  }
}

#video h2 {
  font-size: 228.57%;
  line-height: 150%;
  text-align: center;
  color: #1E2E53;
}

#video .container{
  max-width: 1500px;
  margin-top: 140px;
}

@media screen and (max-width:1500px) {
  #video .container{
    padding: 0 20px;
  }
}

@media screen and (max-width:767px) {
  #video .container{
    margin-top: 50px;
  }
}

#video .container .videos{
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
}

#video .container .videos .video_thumbnail{
  width: 32%;
}

@media screen and (max-width:767px) {
  #video .container .videos{
    display: block;
  }
  #video .container .videos .video_thumbnail{
    width: 100%;
    margin-top: 50px;
  }
}

#video .container .videos .video_thumbnail img{
  width: 100%;
  height: auto;
  cursor: pointer;
}

#video .container .videos .video_thumbnail h3{
  background-color: #1E2E53;
  padding: 15px 20px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  line-height: 1.4;
}

#video .container .videos .video_thumbnail h3 span{
  font-size: 18px;
  font-weight: bold;
  color: white;
}

#video .container .videos .video_thumbnail .playtime{
  text-align: center;
  background-color: #D8D8D8;
  color: #1E2E53;
  font-size: 18px;
  font-weight: bold;
  padding: 10px 0;
  transform: translateY(-2px);
}

#video .container .videos .video_thumbnail .playtime span{
  font-size: 22px;
  display: inline-block;
  margin: 0 5px 0 15px;
}

@media screen and (max-width:767px) {
  #video .container .videos .video_thumbnail .playtime{
    font-size: 14px;
    padding: 5px 0;
  }

  #video .container .videos .video_thumbnail .playtime span{
    font-size: 18px;
  }
}

#video .modal_video{
  position: relative;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: none;
  z-index: 100;
}

#video .modal_video.on{
  display: block;
}

#video .modal_video .modal_content{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  z-index: 101;
  position: relative;
  height: 100vh;
}

@media screen and (min-width:768px) {
  #video .modal_video .modal_content iframe{
    width: 900px;
    height: 506px;
  }
}

#video .modal_video .modal_background{
  position: absolute;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
}

/* クロージング
=========================================== */
#close {
  margin: 5em 0 0;
  background-image: url(../image/bg_logo02.png);
  background-repeat: no-repeat;
  background-position: top 2% center;
}

@media only screen and (max-width: 767px) {
  #close {
    background-position: top center;
    margin-bottom: 0;
  }
}

#close h2 {
  font-size: 228.57%;
  line-height: 150%;
  text-align: center;
  color: #1E2E53;
}

#close .build {
  margin-top: 6em;
}

#close #number {
  margin-top: 8em;
  max-width: 1000px;
}

#close #number h3 {
  text-align: center;
  position: relative;
  margin-bottom: 80px;
}

#close #number h3:before {
  content: "aikenjapan";
  font-family: 'Dancing Script', cursive;
  font-size: 428.57%;
  color: #F1F1F1;
  font-weight: normal;
  position: absolute;
  top: 0;
  z-index: -1;
  top: -50px;
  left: calc(40%);
}

@media only screen and (max-width: 767px) {
  #close #number h3:before {
    left: 30%;
    top: -35px;
  }
}

#close #number h3 p {
  display: inline-block;
  font-size: 257.14%;
  position: relative;
  color: #fff;
  width: 66px;
  height: 66px;
  text-align: center;
  line-height: 66px;
  margin-right: 8px;
}

@media only screen and (max-width: 767px) {
  #close #number h3 p {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 1.5rem;
    margin-right: 4px;
    margin-bottom: 4px;
  }
}

#close #number h3 p:before {
  content: "";
  display: block;
  width: 66px;
  height: 66px;
  background-color: #1E2E53;
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

@media only screen and (max-width: 767px) {
  #close #number h3 p:before {
    width: 40px;
    height: 40px;
  }
}

#close #number h3 p.ye {
  background-color: #AE903B;
}

#close #number .number_area {
  margin-bottom: 64px;
}

#close #number .number_area h2 {
  color: #AE903B;
  position: relative;
  font-size: 2rem;
  padding: 16px 0;
  font-weight: normal;
}

#close #number .number_area h2 span{
  font-size: 2.8rem;
  display: inline-block;
  margin-left: 10px;
}

#close #number .number_area h2:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #1E2E53;
}

#close #number .number_area h2:after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #1E2E53;
}

@media only screen and (max-width: 767px) {
  #close #number .number_area h2 {
    font-size: 1.4rem;
  }
  #close #number .number_area h2 span{
    font-size: 2rem;
    margin-left: 5px;
  }
}

#close #number .number_area h4 {
  color: #1E2E53;
  line-height: 1.5;
}

#close #number .flex {
  margin-top: 2em;
}

#close #number .flex>div {
  width: 48%;
}

@media only screen and (max-width: 767px) {
  #close #number .flex>div {
    width: 100%;
    padding-left: 10%;
    padding-right: 10%;
    margin-bottom: 2em;
  }
}

#close #number .flex>div h4 {
  font-size: 180%;
  line-height: 1.3;
  padding: 5px;
  margin-bottom: 15px;
  border-radius: 14.5px;
}

@media only screen and (max-width: 767px) {
  #close #number .flex>div h4 {
    font-size: 1.2rem;
  }
}

#close #number .flex>div h5 {
  font-size: 120%;
  color: #fff;
  text-align: center;
  background-color: #1E2E53;
  padding: 16px;
  margin-bottom: 16px;
}


#close #number .flex>div figure {
  text-align: center;
  min-height: 111px;
  margin-top: 60px;
}

@media only screen and (max-width: 767px) {
  #close #number .flex>div figure {
    margin-top: 0;
  }
}

@media only screen and (max-width: 767px) {
  #close #number .flex>div figure {
    min-height: auto;
    margin-bottom: 10px;
  }
}

#close #number .flex>div figure img {
  vertical-align: middle;
}

#close #number .flex>div p {
  font-size: 114.29%;
  margin-bottom: 10px;
}

@media only screen and (max-width: 767px) {
  #close #number .flex>div p {
    font-size: 1rem;
  }
}

#close #number .flex>div p span {
  font-size: 12px;
}

/* 4つの安心保証
=========================================== */
#guarantee{
  background-color: #F5F5F5;
  margin: 0;
  background-image: url(../image/bg_guarantee.png);
  background-repeat: no-repeat;
  background-position: top 80px center;
  padding: 6% 0 5%;
}

@media screen and (max-width:2100px) {
  #guarantee{
    padding: 7% 0 5%;
  }
}

@media screen and (max-width:1800px) {
  #guarantee{
    padding: 9% 0 5%;
  }
}

@media screen and (max-width:1500px) {
  #guarantee{
    padding: 11% 0 5%;
  }
}

@media screen and (max-width:1200px) {
  #guarantee{
    padding: 13% 0 5%;
  }
}

@media screen and (max-width:1000px) {
  #guarantee{
    padding: 16% 0 5%;
  }
}

@media screen and (max-width:768px) {
  #guarantee {
    background-image: url(../image/bg_guarantee_sp.png);
    background-position: top 30px center;
    padding: 15% 0;
  }
}

#guarantee .container h2{
  width: 320px;
  margin: 0 auto;
}

#guarantee .container h2 img{
  width: 100%;
}

@media screen and (max-width:768px) {
  #guarantee .container h2{
    width: 180px;
    margin: 0 auto;
  }
}

#guarantee .container .guarantee_boxes{
  margin-top: 90px;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-evenly;
  flex-wrap: wrap;
}

@media screen and (max-width:768px) {
  #guarantee .container .guarantee_boxes{
    /* display: block; */
    margin-top: 30px;
  }
}

#guarantee .container .guarantee_boxes .guarantee_box{
  width: 45%;
  border: 2px solid #283C5F;
  border-radius: 10px;
  background-color:white;
  padding: 40px;
  position: relative;
}

@media screen and (max-width:768px) {
  #guarantee .container .guarantee_boxes .guarantee_box{
    width: 90%;
    padding: 15px;
    margin: 20px auto 0;
  }
}

#guarantee .container .guarantee_boxes .guarantee_box:nth-child(3),
#guarantee .container .guarantee_boxes .guarantee_box:nth-child(4){
  margin-top: 50px;
}

@media screen and (max-width:768px) {
  #guarantee .container .guarantee_boxes .guarantee_box:nth-child(3),
  #guarantee .container .guarantee_boxes .guarantee_box:nth-child(4){
    margin-top: 20px;
  }
}

#guarantee .container .guarantee_boxes .guarantee_box .number{
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  width: 100%;
  text-align: center;
}

@media screen and (max-width:768px) {
  #guarantee .container .guarantee_boxes .guarantee_box .number{
    top: 12px;
    left: 10px;
    width: 40px;
  }
  #guarantee .container .guarantee_boxes .guarantee_box .number img{
    width: 100%;
    height: auto;
  }
}

#guarantee .container .guarantee_boxes .guarantee_box .image{
  text-align: center;
}

@media screen and (max-width:768px) {
  #guarantee .container .guarantee_boxes .guarantee_box .image{
    width: 40px; 
    /* margin: 20px auto 0; */
    position: absolute;
    top: 5px;
    right: 10px;
  }

  #guarantee .container .guarantee_boxes .guarantee_box:nth-child(1) .image{
    width: 55px;
    top: 15px;
  }

  #guarantee .container .guarantee_boxes .guarantee_box:nth-child(2) .image{
    width: 50px;
    top: 10px;
  }

  #guarantee .container .guarantee_boxes .guarantee_box:nth-child(3) .image{
    top: 10px;
  }

  #guarantee .container .guarantee_boxes .guarantee_box .image img{
    width: 100%;
    height: auto;
  }
  /* #guarantee .container .guarantee_boxes .guarantee_box .text{
    width: 75%;
  } */
  #guarantee .container .guarantee_boxes .guarantee_box .text p{
    font-size: 14px;
  }
}

#guarantee .container .guarantee_boxes .guarantee_box h3{
  font-size: 32px;
  text-align: center;
  color: #1E2E53;
  margin: 15px 0;
  line-height: 1.2;
}

@media screen and (max-width:768px) {
  #guarantee .container .guarantee_boxes .guarantee_box h3{
    font-size: 18px;
    margin: 15px 0 10px;
    /* text-align: left; */
  }
  /* #guarantee .container .guarantee_boxes .guarantee_box h3 .pc{
    display: none;
  } */
}

/* オーナー様の声
=========================================== */
#owner {
  background-color: #FBF5E4;
  padding-top: 10em;
}

#owner .default.off{
  display: none;
}

@media only screen and (max-width: 767px) {
  #owner {
    padding-left: 5%;
    padding-right: 5%;
  }
}

#owner h2 {
  font-family: 'Montserrat', sans-serif;
  font-size: 285.71%;
  text-align: center;
  position: relative;
  display: table;
  margin: auto;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
  color: #1E2E53;
}

#owner h2:before {
  content: "Feel the aikenjapan.";
  display: block;
  color: #AE903B;
  font-family: 'Dancing Script', cursive;
  position: absolute;
  width: 100%;
  text-align: center;
  top: -50px;
  font-size: 22px;
  font-weight: normal;
}

#owner h2:after {
  content: "";
  display: block;
  width: 136px;
  height: 4px;
  background-color: #1E2E53;
  position: absolute;
  left: calc(50% - 68px);
  bottom: 0;
}

#owner h2 span {
  font-weight: 200;
}

#owner h2 p {
  font-size: 16px;
  font-family: "Yu Gothic", YuGothic;
  font-weight: 500;
  font-weight: normal;
  margin-top: 15px;
}

@media only screen and (max-width: 767px) {
  #owner h2 p {
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro";
  }
}

#owner .white {
  background-color: #fff;
  max-width: 1000px;
  margin: auto;
  padding: 3em;
}

@media only screen and (max-width: 767px) {
  #owner .white {
    padding: 5%;
  }
}

#owner .white .flex>div:nth-child(1) {
  width: 40%;
}

@media only screen and (max-width: 767px) {
  #owner .white .flex>div:nth-child(1) {
    width: 100%;
    margin-bottom: 10px;
  }
}

#owner .white .flex>div:nth-child(1) img {
  width: 100%;
}

#owner .white .flex>div:nth-child(2) {
  width: 56%;
}

@media only screen and (max-width: 767px) {
  #owner .white .flex>div:nth-child(2) {
    width: 100%;
  }
}

#owner .white .flex>div:nth-child(2) p.name {
  font-size: 16px;
  margin-left: 20px;
  line-height: 140%;
}

#owner .white .flex>div:nth-child(2) p.name span {
  display: block;
  font-weight: bold;
}

#owner .white .flex>div:nth-child(2) p.vol {
  font-family: "din";
  color: #AE903B;
  font-size: 185.71%;
  line-height: 180%;
}

@media only screen and (max-width: 767px) {
  #owner .white .flex>div:nth-child(2) p.vol {
    line-height: 200%;
    padding-top: 5px;
  }
}

#owner .white .flex>div:nth-child(2) p.vol span {
  font-size: 200%;
}

#owner .white .flex>div:nth-child(2) h3 {
  font-size: 180%;
  border-bottom: 1px #000 solid;
  margin: 10px 0;
  padding: 0 0 10px 0;
  line-height: 150%;
}

#owner .white .flex>div:nth-child(2) .more a {
  display: block;
  background-color: #1E2E53;
  color: #fff;
  padding: 15px;
  text-align: center;
  border-radius: 5px;
  margin-top: 15px;
}

@media only screen and (max-width: 767px) {
  #owner .white .flex>div:nth-child(2) .more a {
    font-size: 0.8rem;
  }
}

#owner .white .flex>div:nth-child(2) p.accodion {
  display: none;
  margin-top: 15px;
}

@media only screen and (max-width: 767px) {
  #owner .white .flex>div:nth-child(2) p {
    font-size: 0.9rem;
  }
}

#owner .mt3 {
  margin-top: 3em;
}

/* よくあるご質問
=========================================== */
#faq {
  padding: 0;
}

#faq h2 {
  background-color: #1E2E53;
  color: #fff;
  font-size: 228.57%;
  text-align: center;
  padding: 2em 0;
  background-image: url(../image/bg_logo02.png);
  background-repeat: no-repeat;
  background-position: left 40% bottom;
}

@media only screen and (max-width: 767px) {
  #faq h2 {
    background-size: 65.5px auto;
    padding: 1.25em 0;
  }
}

#faq .container {
  max-width: 1000px;
}

@media only screen and (max-width: 767px) {
  #faq .container {
    padding-left: 3%;
    padding-right: 3%;
  }
}

#faq dl {
  border-top: 1px #DDDDDD solid;
  position: relative;
  padding-top: 1em;
  padding-bottom: 1.0em;
}

#faq dl:before {
  content: "";
  display: block;
  width: 50px;
  height: 50px;
  background-color: #AE903B;
  position: absolute;
  left: 0;
  top: 1em;
}

#faq dl dt, #faq dl dd {
  font-size: 128.57%;
  line-height: 140%;
}

@media only screen and (max-width: 767px) {
  #faq dl dt, #faq dl dd {
    font-size: 1.0rem;
  }
}

#faq dl dt {
  position: relative;
  padding: 0.65em 0 0 70px;
  min-height: 50px;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  #faq dl dt {
    padding-top: 0px;
  }
}

#faq dl dt:before {
  content: "";
  display: block;
  width: 20px;
  height: 4px;
  background-color: #fff;
  position: absolute;
  left: 15px;
  top: 22px;
}

#faq dl dt:after {
  content: "";
  display: block;
  width: 20px;
  height: 4px;
  background-color: #fff;
  position: absolute;
  left: 15px;
  top: 22px;
  transform: rotate(90deg);
  transition: .3s;
}

#faq dl dt.open:after {
  transform: rotate(0deg);
}

#faq dl dd {
  padding: 10px 0;
  line-height: 150%;
  display: none;
}

/* フォーム
=========================================== */
#form {
  /* iOSでのデフォルトスタイルをリセット */
}

#form .explain{
  text-align: center;
  margin-top: 3em;
}

#form .explain p{
  font-size: 1.0rem;
}

@media only screen and (max-width: 767px) {
  #form .explain{
    padding: 0 10px;
  }
}

#form h2 {
  background-color: #1E2E53;
  color: #fff;
  font-size: 228.57%;
  text-align: center;
  padding: 1em 0;
  background-image: url(../image/bg_logo02.png);
  background-repeat: no-repeat;
  background-position: left 40% bottom;
}

@media only screen and (max-width: 767px) {
  #form h2 {
    background-size: 65.5px auto;
    padding: 1.25em 0;
    line-height: 150%;
  }
}

#form .container {
  max-width: 900px;
}

@media only screen and (max-width: 767px) {
  #form .container {
    padding-left: 10px;
    padding-right: 10px;
  }
}

#form figure {
  margin-top: 1em;
}

#form .formTbl {
  width: 100%;
  margin-top: 1em;
}

#form .formTbl th, #form .formTbl td {
  padding: 20px;
}

@media only screen and (max-width: 767px) {
  #form .formTbl th, #form .formTbl td {
    display: block;
    width: 100%;
    padding: 10px;
    border: none;
    font-size: 0.9rem;
  }
}

#form .formTbl th {
  background-color: #eee;
  width: 25%;
  border-bottom: 10px solid #fff;
  border-right: 10px solid #fff;
  text-align: left;
  font-weight: normal;
  position: relative;
  vertical-align: top;
  line-height: 180%;
  padding-top: 30px;
}

@media only screen and (max-width: 767px) {
  #form .formTbl th {
    width: 100%;
    padding: 10px;
    border: none;
  }
}

#form .formTbl th span.req {
  display: inline-block;
  background-color: #ef0033;
  color: #fff;
  font-size: 0.7rem;
  padding: 3px 10px;
  line-height: 1.5em;
  position: absolute;
  right: 20px;
  top: 35%;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
}

#form .formTbl th span.req.ok {
  background-color: #4ca3e0;
}

#form .formTbl th span.req.t30{
  top: 30px;
}

@media only screen and (max-width: 767px) {
  #form .formTbl th span.req,
  #form .formTbl th span.req.t30{
    top: 12px;
  } 
}

#form .formTbl td {
  border-bottom: 10px solid #fff;
}

#form .formTbl td textarea,
#form .formTbl td input[type=text],
#form .formTbl td input[type=tel] {
  padding: 0 10px;
  font-size: 14px;
  line-height: 3em;
  background: #fff;
  min-height: 3em;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #bbb;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

#form .formTbl td select {
  padding: 0 10px;
  font-size: 14px;
  line-height: 3em;
  background: #fff;
  min-height: 3em;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #bbb;
}

#form .formTbl td textarea {
  width: 100%;
  height: 200px;
  resize: none;
  line-height: 150%;
}

@media only screen and (max-width: 767px) {
  #form .formTbl td textarea {
    height: 150px;
  }
}

#form .formTbl td .w_short {
  width: 27%;
}

#form .formTbl td .w60p {
  width: 60%;
}

@media only screen and (max-width: 767px) {
  #form .formTbl td .w_short {
    width: 46%;
  }
  #form .formTbl td .w60p {
    width: 100%;
  }
}

#form .formTbl td span.note {
  font-size: 12px;
  display: inline-block;
  margin-left: 5px;
}

#form .formTbl td.pink {
  background: #fff3f3;
}

#form .formTbl td .form_label{
  font-size: 14px;
}

#form .submit {
  text-align: center;
  margin-top: 1em;
  position: relative;
  display: table;
  margin-left: auto;
  margin-right: auto;
}

#form .submit:before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-right: 1px #fff solid;
  border-bottom: 1px #fff solid;
  transform: rotate(-45deg);
  position: absolute;
  right: 20px;
  top: 43%;
  z-index: 2;
}

#form input[type="submit"],
#form input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
}

#form input[type="submit"]::-webkit-search-decoration,
#form input[type="button"]::-webkit-search-decoration {
  display: none;
}

#form input[type="submit"]:focus,
#form input[type="button"]:focus {
  outline-offset: -2px;
}

#form input[type=submit] {
  background-color: #149721;
  border: none;
  color: #fff;
  font-family: "Yu Gothic", YuGothic;
  font-weight: 500;
  font-weight: bold;
  font-size: 1.2rem;
  padding: 1em 5em;
  cursor: pointer;
  position: relative;
}

@media only screen and (max-width: 767px) {
  #form input[type=submit] {
    font-size: 1rem;
  }
}

@media only screen and (max-width: 767px) {
  #form input[type=submit] {
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro";
    width: 100%;
  }
}

#form input[type=submit]:hover {
  opacity: 0.8;
}

a.telLink {
  pointer-events: none;
}

@media only screen and (max-width: 767px) {
  a.telLink {
    pointer-events: auto;
    color: #fff;
  }
}

#confirm #form {
  padding-top: 0;
}

#confirm #form h2 {
  padding-top: 6em;
}

#confirm #form .attention{
  color: red;
  margin-top: 3em;
  font-size: 16px;
}

@media only screen and (max-width: 767px) {
  #confirm #form .attention{
    font-size: 14px;
  }
}

#confirm #form .formTbl th, #confirm #form .formTbl td {
  padding: 15px 10px;
  vertical-align: top;
  line-height: 180%;
}

#confirm #form .back {
  text-align: center;
}

#confirm #form .back a {
  display: inline-block;
  margin-top: 4em;
}

@media only screen and (max-width: 767px) {
  #confirm #form .back a {
    font-size: 1.0rem;
    margin-bottom: 5em;
  }
}

#thanks #form {
  padding-top: 0;
}

#thanks #form h2 {
  padding-top: 6em;
}

#thanks #form .container p {
  padding-top: 5em;
  line-height: 180%;
}

@media only screen and (max-width: 767px) {
  #thanks #form .container p {
    font-size: 1.0rem;
    padding-top: 2.5em;
  }
}

#thanks #form .back {
  text-align: center;
}

@media only screen and (max-width: 767px) {
  #thanks #form .back {
    margin-bottom: 5em;
  }
}

#thanks #form .back a {
  display: inline-block;
  margin-top: 4em;
}

@media only screen and (max-width: 767px) {
  #thanks #form .back a {
    font-size: 1.0rem;
  }
}

span.redStrong {
  color: #E50012;
  font-weight: bold;
}

#fixedBtn {
  display: none;
}

@media only screen and (max-width: 767px) {
  #fixedBtn {
    position: fixed;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    bottom: 0;
    left: 0;
    padding: 10px;
    z-index: 99;
  }

  #fixedBtn>p {
    text-align: center;
    font-size: 0.8rem;
    line-height: 150%;
    color: #fff;
    padding-bottom: 10px;
  }

  #fixedBtn ul li {
    width: 49%;
  }

  #fixedBtn ul li a {
    display: block;
    padding: 5px;
    font-size: 0.8rem;
    text-align: center;
    color: #fff;
    font-weight: bold;
    padding: 1em 0;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    position: relative;
  }

  #fixedBtn ul li a span {
    position: relative;
    display: inline-block;
    padding-left: 20px;
  }

  #fixedBtn ul li a span:before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
    background-repeat: no-repeat;
  }

  #fixedBtn ul li a.tel {
    background-color: #FF7301;
  }

  #fixedBtn ul li a.tel span:before {
    background-image: url(../image/icon_fixed_tel.png);
    background-size: 16px auto;
    left: 0px;
    top: -2px;
  }

  #fixedBtn ul li a.mail {
    background-color: #149721;
  }

  #fixedBtn ul li a.mail span:before {
    background-image: url(../image/icon_fixed_mail.png);
    background-size: 16px auto;
    left: 0px;
    top: 0px;
  }
}

#seiWrap {
  margin-right: 10px;
}

@media only screen and (max-width: 767px) {
  #seiWrap {
    margin-right: 0;
  }
}

@media only screen and (max-width: 767px) {
  .w30p {
    width: 85%;
  }
}

/* footer
=========================================== */
footer {
  padding-bottom: 3em;
}

footer p.copyright {
  text-align: center;
}

footer ul{
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 20px;
  margin: 25px 0 15px;
}

footer ul li{
  position: relative;
}

footer ul li:last-child::before {
  content: "";
  height: 15px;
  width: 1px;
  position: absolute;
  left: -11px;
  top: 2px;
  bottom: 6px;
  background: #232E4D;
}

footer ul li a{
  color: #232E4D;
  font-size: 14px;
}

#company {
  background-color: #f8f8f8;
  padding: 4.0rem 0;
  background-image: url(../image/bg_movie.png);
  background-repeat: no-repeat;
  background-position: bottom center;
}

@media only screen and (max-width: 600px) {
  #company {
    background-size: 150% auto;
    padding-left: 3%;
    padding-right: 3%;
  }
}

#company h2 {
  font-size: 228.57%;
  color: #232e4d;
  text-align: center;
  margin-bottom: 30px;
}

@media only screen and (max-width: 600px) {
  #company h2 {
    font-size: 2.4rem;
  }
}

#company table {
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (max-width: 767px) {
  #company table {
    border-bottom: 1px #ccc solid;
  }
}

#company table th, #company table td {
  font-size: 14px;
  text-align: left;
  line-height: 1.7;
  border: 1px #ccc solid;
  padding: 15px;
}

@media only screen and (max-width: 767px) {
  #company table th, #company table td {
    width: 100%;
    display: block;
  }
}

#company table th {
  font-weight: bold;
  color: #232e4d;
  line-height: 1.3;
  background-color: #f8f8f8;
}

@media only screen and (max-width: 767px) {
  #company table th {
    border-bottom: none;
  }
}

#company table td {
  background-color: #fff;
  vertical-align: middle;
}

@media only screen and (max-width: 767px) {
  #company table td {
    border-bottom: none;
  }
}

#fixed_banner {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 10;
}

@media only screen and (max-width: 767px) {
  #fixed_banner {
    display: none;
  }
}

#fixed_banner img {
  max-width: 432px;
}

#fixed_banner .c-footer__float-bottom-close {
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: none;
  background: #575757;
  overflow: hidden;
  text-indent: -999px;
  position: absolute;
  top: -15px;
  right: -15px;
  cursor: pointer;
  -webkit-transition: opacity 300ms;
  transition: opacity 300ms;
}

#fixed_banner .c-footer__float-bottom-close:before, #fixed_banner .c-footer__float-bottom-close:after {
  content: "";
  width: 2px;
  height: 18px;
  display: block;
  background: #fff;
  position: absolute;
  top: 6px;
  left: 14px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#fixed_banner .c-footer__float-bottom-close:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#sp_display_banner {
  display: none;
}

@media only screen and (max-width: 767px) {
  #sp_display_banner {
    display: block;
    padding-bottom: 30px;
    padding: 15px 15px 0 15px;
  }

  #sp_display_banner img {
    max-width: 100%;
  }
}

#number .graph {
  margin-top: 20px;
}

#number .graph img {
  max-width: 100%;
}

section.introduction {
  background: url(../image/top_bg002.jpg) no-repeat center / cover;
}
section.introduction .container {
  max-width: 800px;
}
@media ( max-width : 820px ) {
  section.introduction .container {
    padding: 0 10px;
  }
}
section.introduction .row {
  display: flex;
  flex-wrap: wrap;
}
@media ( max-width : 767px ) {
  section.introduction .row {
    max-width: 500px;
    margin: auto;
  }
}
section.introduction .row .col {
  width: 48.75%;
  background: #fff;
}
@media ( max-width : 767px ) {
  section.introduction .row .col {
    width: 100%;
  }
}
section.introduction .row .col:not(:last-child) {
  margin-right: 2%;
}
@media ( max-width : 767px ) {
  section.introduction .row .col:not(:last-child) {
    margin-right: 0;
    margin-bottom: 4%;
  }
}
section.introduction .row .col h3 {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  line-height: 55px;
  background: linear-gradient(
    180deg,
    rgba(42,65,102,1) 0%,
    rgba(28,31,50,1) 100%
  );
}
section.introduction .row .col .block {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(100% - 55px);
  padding: 20px 10px;
}
section.introduction .row .col .block .inner {
  width: 100%;
}
section.introduction .row .col figure {
  text-align: center;
}
section.introduction .row .col figure img {
  width: 100%;
}
section.introduction .row .col p {
  text-align: center;
  color: #1E2E53;
  font-size: 18px;
  font-weight: bold;
}
section.introduction .row .col p span {
  font-size: 20px;
  color: #AE903B;
}
section.introduction .row .col p span span {
  display: inline-block;
}

/* animations */
.wow.slideInUp.animated {
  animation-name: slideInUp;
  animation-duration: 0.5s;
  animation-fill-mode: both;
}
@keyframes slideInUp {
  0% {
    opacity: 0;
    transform: translateY(5px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.wow.slideInBorder:before {
  animation-delay: 0.2s;
}
.wow.slideInBorder.animated:before {
  animation-name: slideInBorder;
  animation-duration: 1s;
  animation-fill-mode: both;
  animation-timing-function: ease-in-out;
}
@keyframes slideInBorder {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}

.wow.slideInImage {
  position: relative;
}
.wow.slideInImage:before {
  content: '';
  display: block;
  position: absolute;
  width: 0;
  height: 100%;
  right: 0;
  top: 0;
  background: #fff;
  animation-delay: 0.2s;
}
.wow.slideInImage.animated:before {
  animation-name: slideInImage;
  animation-duration: 1s;
  animation-fill-mode: both;
}
@keyframes slideInImage {
  0% {
    width: 100%;
  }
  100% {
    width: 0;
  }
}
/* animations */


#panph_amazon{
    >a {
    width: 50%;
    margin: 0 auto;
  }
  >a img {
    width: 80%;
    height: auto;
  }
  >a img.pc-only {
    display: block;
  }
  >a img.sp-only {
    display: none;
  }
  >a {
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 48px;
    text-align: center;
    text-decoration: none;
    display: block;
    background: #22a05c;
    border-radius: 24px;
    position: relative;
    margin-top: auto;
  }
  >a:hover {
    opacity: 0.7;
  }
  >a:after {
    content: "▶";
    color: #fff;
    position: absolute;
    top: 0;
    right: 14px;
  }
}
@media screen and (max-width:768px){
  #panph_amazon {
    display: block;
  }
  #panph_amazon > a {
    width: 100%;
  }
  #panph_amazon > div {
    width: 100%;
    padding-left: 0;
  }
  #npanph_amazon > a img.pc-only {
    display: none;
  }
  #panph_amazon> a img.sp-only {
    display: block;
  }

}

.e_officer{
  color: black;
}
.e_officer span{
  display: inline-block;
  width: 140px;
}