/* utility */

/* font size */
.text70 {
  font-size: 70%;
}

.text80 {
  font-size: 80%;
}

.text90 {
  font-size: 90%;
}

.text100 {
  font-size: 100%;
}

.text110 {
  font-size: 110%;
}

.text120 {
  font-size: 120%;
}

.text130 {
  font-size: 130%;
}

.text140 {
  font-size: 140%;
}

.text150 {
  font-size: 150%;
}

.text160 {
  font-size: 160%;
}

.text170 {
  font-size: 170%;
}

.text180 {
  font-size: 180%;
}

.text190 {
  font-size: 190%;
}

.text200 {
  font-size: 200%;
}

.text210 {
  font-size: 210%;
}

.text220 {
  font-size: 220%;
}

/* text-decoration */
.b {
  font-weight: 700;
}

.u {
  text-decoration: underline;
}

.del {
  text-decoration: line-throug;
}

/* font color */
.red {
  color: red;
}

.blue {
  color: #2ca9e1;
}

.green {
  color: #82ae46;
}

.orange {
  color: #ff7d00;
}

.yellow {
  color: #fff000;
}

.pink {
  color: #ff0084;
}

.gray {
  color: #999999;
}

/* background color */
.bg-yellow {
  padding: 2px;
  background-color: #ff0;
}

.bg-blue {
  padding: 2px;
  background-color: #4ab0f5;
}

.bg-red {
  padding: 2px;
  background-color: red;
}

/* text align */
.align1 {
  text-align: center !important;
}

.align2 {
  text-align: right !important;
}

.align3 {
  text-align: left !important;
}

/* text style */
.att {
  padding-left: 1em;
  text-indent: -1em;
}

.att_box {
  margin: 2em 0 2.5em;
  padding: 1em 1.2em;
  line-height: 2;
  border: 1px dotted #cccccc;
  background: #fcfcfc;
  box-shadow: 0px 4px 0px 0px #f7f7f7;
}

/* padding */
.p0 {
  padding: 0 !important;
}

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

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

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

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

.p5 {
  padding: 5px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.p10 {
  padding: 10px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.p15 {
  padding: 15px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.p20 {
  padding: 20px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.p25 {
  padding: 25px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.p30 {
  padding: 30px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.p35 {
  padding: 35px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.p40 {
  padding: 40px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.p45 {
  padding: 45px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.p50 {
  padding: 50px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.p55 {
  padding: 55px !important;
}

.pt55 {
  padding-top: 55px !important;
}

.pr55 {
  padding-right: 55px !important;
}

.pb55 {
  padding-bottom: 55px !important;
}

.pl55 {
  padding-left: 55px !important;
}

.p60 {
  padding: 60px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.p65 {
  padding: 65px !important;
}

.pt65 {
  padding-top: 65px !important;
}

.pr65 {
  padding-right: 65px !important;
}

.pb65 {
  padding-bottom: 65px !important;
}

.pl65 {
  padding-left: 65px !important;
}

.p70 {
  padding: 70px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pr70 {
  padding-right: 70px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pl70 {
  padding-left: 70px !important;
}

.p75 {
  padding: 75px !important;
}

.pt75 {
  padding-top: 75px !important;
}

.pr75 {
  padding-right: 75px !important;
}

.pb75 {
  padding-bottom: 75px !important;
}

.pl75 {
  padding-left: 75px !important;
}

.p80 {
  padding: 80px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pr80 {
  padding-right: 80px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pl80 {
  padding-left: 80px !important;
}

.p85 {
  padding: 85px !important;
}

.pt85 {
  padding-top: 85px !important;
}

.pr85 {
  padding-right: 85px !important;
}

.pb85 {
  padding-bottom: 85px !important;
}

.pl85 {
  padding-left: 85px !important;
}

.p90 {
  padding: 90px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pr90 {
  padding-right: 90px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pl90 {
  padding-left: 90px !important;
}

.p95 {
  padding: 95px !important;
}

.pt95 {
  padding-top: 95px !important;
}

.pr95 {
  padding-right: 95px !important;
}

.pb95 {
  padding-bottom: 95px !important;
}

.pl95 {
  padding-left: 95px !important;
}

.p100 {
  padding: 100px !important;
}

.pt100 {
  padding-top: 100px !important;
}

.pr100 {
  padding-right: 100px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

.pl100 {
  padding-left: 100px !important;
}

/* padding sp */
@media (max-width: 767px) {
  .sp0 {
    padding: 0 !important;
  }

  .spt0 {
    padding-top: 0 !important;
  }

  .spr0 {
    padding-right: 0 !important;
  }

  .spb0 {
    padding-bottom: 0 !important;
  }

  .spl0 {
    padding-left: 0 !important;
  }

  .sp5 {
    padding: 5px !important;
  }

  .spt5 {
    padding-top: 5px !important;
  }

  .spr5 {
    padding-right: 5px !important;
  }

  .spb5 {
    padding-bottom: 5px !important;
  }

  .spl5 {
    padding-left: 5px !important;
  }

  .sp10 {
    padding: 10px !important;
  }

  .spt10 {
    padding-top: 10px !important;
  }

  .spr10 {
    padding-right: 10px !important;
  }

  .spb10 {
    padding-bottom: 10px !important;
  }

  .spl10 {
    padding-left: 10px !important;
  }

  .sp15 {
    padding: 15px !important;
  }

  .spt15 {
    padding-top: 15px !important;
  }

  .spr15 {
    padding-right: 15px !important;
  }

  .spb15 {
    padding-bottom: 15px !important;
  }

  .spl15 {
    padding-left: 15px !important;
  }

  .sp20 {
    padding: 20px !important;
  }

  .spt20 {
    padding-top: 20px !important;
  }

  .spr20 {
    padding-right: 20px !important;
  }

  .spb20 {
    padding-bottom: 20px !important;
  }

  .spl20 {
    padding-left: 20px !important;
  }

  .sp25 {
    padding: 25px !important;
  }

  .spt25 {
    padding-top: 25px !important;
  }

  .spr25 {
    padding-right: 25px !important;
  }

  .spb25 {
    padding-bottom: 25px !important;
  }

  .spl25 {
    padding-left: 25px !important;
  }

  .sp30 {
    padding: 30px !important;
  }

  .spt30 {
    padding-top: 30px !important;
  }

  .spr30 {
    padding-right: 30px !important;
  }

  .spb30 {
    padding-bottom: 30px !important;
  }

  .spl30 {
    padding-left: 30px !important;
  }

  .sp35 {
    padding: 35px !important;
  }

  .spt35 {
    padding-top: 35px !important;
  }

  .spr35 {
    padding-right: 35px !important;
  }

  .spb35 {
    padding-bottom: 35px !important;
  }

  .spl35 {
    padding-left: 35px !important;
  }

  .sp40 {
    padding: 40px !important;
  }

  .spt40 {
    padding-top: 40px !important;
  }

  .spr40 {
    padding-right: 40px !important;
  }

  .spb40 {
    padding-bottom: 40px !important;
  }

  .spl40 {
    padding-left: 40px !important;
  }

  .sp45 {
    padding: 45px !important;
  }

  .spt45 {
    padding-top: 45px !important;
  }

  .spr45 {
    padding-right: 45px !important;
  }

  .spb45 {
    padding-bottom: 45px !important;
  }

  .spl45 {
    padding-left: 45px !important;
  }

  .sp50 {
    padding: 50px !important;
  }

  .spt50 {
    padding-top: 50px !important;
  }

  .spr50 {
    padding-right: 50px !important;
  }

  .spb50 {
    padding-bottom: 50px !important;
  }

  .spl50 {
    padding-left: 50px !important;
  }

  .sp55 {
    padding: 55px !important;
  }

  .spt55 {
    padding-top: 55px !important;
  }

  .spr55 {
    padding-right: 55px !important;
  }

  .spb55 {
    padding-bottom: 55px !important;
  }

  .spl55 {
    padding-left: 55px !important;
  }

  .sp60 {
    padding: 60px !important;
  }

  .spt60 {
    padding-top: 60px !important;
  }

  .spr60 {
    padding-right: 60px !important;
  }

  .spb60 {
    padding-bottom: 60px !important;
  }

  .spl60 {
    padding-left: 60px !important;
  }

  .sp65 {
    padding: 65px !important;
  }

  .spt65 {
    padding-top: 65px !important;
  }

  .spr65 {
    padding-right: 65px !important;
  }

  .spb65 {
    padding-bottom: 65px !important;
  }

  .spl65 {
    padding-left: 65px !important;
  }

  .sp70 {
    padding: 70px !important;
  }

  .spt70 {
    padding-top: 70px !important;
  }

  .spr70 {
    padding-right: 70px !important;
  }

  .spb70 {
    padding-bottom: 70px !important;
  }

  .spl70 {
    padding-left: 70px !important;
  }

  .sp75 {
    padding: 75px !important;
  }

  .spt75 {
    padding-top: 75px !important;
  }

  .spr75 {
    padding-right: 75px !important;
  }

  .spb75 {
    padding-bottom: 75px !important;
  }

  .spl75 {
    padding-left: 75px !important;
  }

  .sp80 {
    padding: 80px !important;
  }

  .spt80 {
    padding-top: 80px !important;
  }

  .spr80 {
    padding-right: 80px !important;
  }

  .spb80 {
    padding-bottom: 80px !important;
  }

  .spl80 {
    padding-left: 80px !important;
  }

  .sp85 {
    padding: 85px !important;
  }

  .spt85 {
    padding-top: 85px !important;
  }

  .spr85 {
    padding-right: 85px !important;
  }

  .spb85 {
    padding-bottom: 85px !important;
  }

  .spl85 {
    padding-left: 85px !important;
  }

  .sp90 {
    padding: 90px !important;
  }

  .spt90 {
    padding-top: 90px !important;
  }

  .spr90 {
    padding-right: 90px !important;
  }

  .spb90 {
    padding-bottom: 90px !important;
  }

  .spl90 {
    padding-left: 90px !important;
  }

  .sp95 {
    padding: 95px !important;
  }

  .spt95 {
    padding-top: 95px !important;
  }

  .spr95 {
    padding-right: 95px !important;
  }

  .spb95 {
    padding-bottom: 95px !important;
  }

  .spl95 {
    padding-left: 95px !important;
  }

  .sp100 {
    padding: 100px !important;
  }

  .spt100 {
    padding-top: 100px !important;
  }

  .spr100 {
    padding-right: 100px !important;
  }

  .spb100 {
    padding-bottom: 100px !important;
  }

  .spl100 {
    padding-left: 100px !important;
  }
}

/* margin */
.m0 {
  margin: 0 !important;
}

.mt0 {
  margin-top: 0 !important;
}

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

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

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

.m5 {
  margin: 5px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.ml5 {
  margin-left: 5px !important;
}

.m10 {
  margin: 10px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.m15 {
  margin: 15px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.m20 {
  margin: 20px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.m25 {
  margin: 25px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.m30 {
  margin: 30px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.m35 {
  margin: 35px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.m40 {
  margin: 40px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.m45 {
  margin: 45px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.m50 {
  margin: 50px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.m55 {
  margin: 55px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mr55 {
  margin-right: 55px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.ml55 {
  margin-left: 55px !important;
}

.m60 {
  margin: 60px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.m65 {
  margin: 65px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mr65 {
  margin-right: 65px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.ml65 {
  margin-left: 65px !important;
}

.m70 {
  margin: 70px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.ml70 {
  margin-left: 70px !important;
}

.m75 {
  margin: 75px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mr75 {
  margin-right: 75px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.ml75 {
  margin-left: 75px !important;
}

.m80 {
  margin: 80px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.m85 {
  margin: 85px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mr85 {
  margin-right: 85px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.ml85 {
  margin-left: 85px !important;
}

.m90 {
  margin: 90px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.m95 {
  margin: 95px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mr95 {
  margin-right: 95px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.ml95 {
  margin-left: 95px !important;
}

.m100 {
  margin: 100px !important;
}

.mt100 {
  margin-top: 100px !important;
}

.mr100 {
  margin-right: 100px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.ml100 {
  margin-left: 100px !important;
}

/* margin sp */
@media (max-width: 767px) {
  .sm0 {
    margin: 0 !important;
  }

  .smt0 {
    margin-top: 0 !important;
  }

  .smr0 {
    margin-right: 0 !important;
  }

  .smb0 {
    margin-bottom: 0 !important;
  }

  .sml0 {
    margin-left: 0 !important;
  }

  .sm5 {
    margin: 5px !important;
  }

  .smt5 {
    margin-top: 5px !important;
  }

  .smr5 {
    margin-right: 5px !important;
  }

  .smb5 {
    margin-bottom: 5px !important;
  }

  .sml5 {
    margin-left: 5px !important;
  }

  .sm10 {
    margin: 10px !important;
  }

  .smt10 {
    margin-top: 10px !important;
  }

  .smr10 {
    margin-right: 10px !important;
  }

  .smb10 {
    margin-bottom: 10px !important;
  }

  .sml10 {
    margin-left: 10px !important;
  }

  .sm15 {
    margin: 15px !important;
  }

  .smt15 {
    margin-top: 15px !important;
  }

  .smr15 {
    margin-right: 15px !important;
  }

  .smb15 {
    margin-bottom: 15px !important;
  }

  .sml15 {
    margin-left: 15px !important;
  }

  .sm20 {
    margin: 20px !important;
  }

  .smt20 {
    margin-top: 20px !important;
  }

  .smr20 {
    margin-right: 20px !important;
  }

  .smb20 {
    margin-bottom: 20px !important;
  }

  .sml20 {
    margin-left: 20px !important;
  }

  .sm25 {
    margin: 25px !important;
  }

  .smt25 {
    margin-top: 25px !important;
  }

  .smr25 {
    margin-right: 25px !important;
  }

  .smb25 {
    margin-bottom: 25px !important;
  }

  .sml25 {
    margin-left: 25px !important;
  }

  .sm30 {
    margin: 30px !important;
  }

  .smt30 {
    margin-top: 30px !important;
  }

  .smr30 {
    margin-right: 30px !important;
  }

  .smb30 {
    margin-bottom: 30px !important;
  }

  .sml30 {
    margin-left: 30px !important;
  }

  .sm35 {
    margin: 35px !important;
  }

  .smt35 {
    margin-top: 35px !important;
  }

  .smr35 {
    margin-right: 35px !important;
  }

  .smb35 {
    margin-bottom: 35px !important;
  }

  .sml35 {
    margin-left: 35px !important;
  }

  .sm40 {
    margin: 40px !important;
  }

  .smt40 {
    margin-top: 40px !important;
  }

  .smr40 {
    margin-right: 40px !important;
  }

  .smb40 {
    margin-bottom: 40px !important;
  }

  .sml40 {
    margin-left: 40px !important;
  }

  .sm45 {
    margin: 45px !important;
  }

  .smt45 {
    margin-top: 45px !important;
  }

  .smr45 {
    margin-right: 45px !important;
  }

  .smb45 {
    margin-bottom: 45px !important;
  }

  .sml45 {
    margin-left: 45px !important;
  }

  .sm50 {
    margin: 50px !important;
  }

  .smt50 {
    margin-top: 50px !important;
  }

  .smr50 {
    margin-right: 50px !important;
  }

  .smb50 {
    margin-bottom: 50px !important;
  }

  .sml50 {
    margin-left: 50px !important;
  }

  .sm55 {
    margin: 55px !important;
  }

  .smt55 {
    margin-top: 55px !important;
  }

  .smr55 {
    margin-right: 55px !important;
  }

  .smb55 {
    margin-bottom: 55px !important;
  }

  .sml55 {
    margin-left: 55px !important;
  }

  .sm60 {
    margin: 60px !important;
  }

  .smt60 {
    margin-top: 60px !important;
  }

  .smr60 {
    margin-right: 60px !important;
  }

  .smb60 {
    margin-bottom: 60px !important;
  }

  .sml60 {
    margin-left: 60px !important;
  }

  .sm65 {
    margin: 65px !important;
  }

  .smt65 {
    margin-top: 65px !important;
  }

  .smr65 {
    margin-right: 65px !important;
  }

  .smb65 {
    margin-bottom: 65px !important;
  }

  .sml65 {
    margin-left: 65px !important;
  }

  .sm70 {
    margin: 70px !important;
  }

  .smt70 {
    margin-top: 70px !important;
  }

  .smr70 {
    margin-right: 70px !important;
  }

  .smb70 {
    margin-bottom: 70px !important;
  }

  .sml70 {
    margin-left: 70px !important;
  }

  .sm75 {
    margin: 75px !important;
  }

  .smt75 {
    margin-top: 75px !important;
  }

  .smr75 {
    margin-right: 75px !important;
  }

  .smb75 {
    margin-bottom: 75px !important;
  }

  .sml75 {
    margin-left: 75px !important;
  }

  .sm80 {
    margin: 80px !important;
  }

  .smt80 {
    margin-top: 80px !important;
  }

  .smr80 {
    margin-right: 80px !important;
  }

  .smb80 {
    margin-bottom: 80px !important;
  }

  .sml80 {
    margin-left: 80px !important;
  }

  .sm85 {
    margin: 85px !important;
  }

  .smt85 {
    margin-top: 85px !important;
  }

  .smr85 {
    margin-right: 85px !important;
  }

  .smb85 {
    margin-bottom: 85px !important;
  }

  .sml85 {
    margin-left: 85px !important;
  }

  .sm90 {
    margin: 90px !important;
  }

  .smt90 {
    margin-top: 90px !important;
  }

  .smr90 {
    margin-right: 90px !important;
  }

  .smb90 {
    margin-bottom: 90px !important;
  }

  .sml90 {
    margin-left: 90px !important;
  }

  .sm95 {
    margin: 95px !important;
  }

  .smt95 {
    margin-top: 95px !important;
  }

  .smr95 {
    margin-right: 95px !important;
  }

  .smb95 {
    margin-bottom: 95px !important;
  }

  .sml95 {
    margin-left: 95px !important;
  }

  .sm100 {
    margin: 100px !important;
  }

  .smt100 {
    margin-top: 100px !important;
  }

  .smr100 {
    margin-right: 100px !important;
  }

  .smb100 {
    margin-bottom: 100px !important;
  }

  .sml100 {
    margin-left: 100px !important;
  }
}

/* ハーフレディングを打ち消す */
.mb-hl {
  margin-block: calc((1em - 1lh) / 2) !important;
}

.mbs-hl {
  margin-block-start: calc((1em - 1lh) / 2) !important;
}

.mbe-hl {
  margin-block-end: calc((1em - 1lh) / 2) !important;
}

/* float */
.r-flo {
  float: right;
  margin: 10px;
}

.l-flo {
  float: left;
  margin: 10px;
}

.f-clear {
  clear: both;
}

/* hover */
a img.fade {
  background: none !important;
  outline: none;
  transition: all 0.3s;
}

@media (any-hover: hover) {
  a:hover img.fade {
    opacity: 0.7;
    filter: alpha(opacity=70);
    background: none !important;
  }
}

/* image frame */
img.frame {
  border: 1px solid #d2d2d2;
  box-shadow: 0 6px 6px -6px #cccccc;
}

/* is pc device */
@media (max-width: 767px) {
  .is-pc {
    display: none !important;
  }
}

/* is sp device */
@media not all and (max-width: 767px) {
  .is-sp {
    display: none !important;
  }
}

/* external link */
.e_link {
  display: inline-block;
  position: relative;
}

.e_link:after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 0.8em;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M212.31-140Q182-140 161-161q-21-21-21-51.31v-535.38Q140-778 161-799q21-21 51.31-21h222.3q12.77 0 21.39 8.62 8.61 8.61 8.61 21.38T456-768.62q-8.62 8.62-21.39 8.62h-222.3q-4.62 0-8.46 3.85-3.85 3.84-3.85 8.46v535.38q0 4.62 3.85 8.46 3.84 3.85 8.46 3.85h535.38q4.62 0 8.46-3.85 3.85-3.84 3.85-8.46v-222.3q0-12.77 8.62-21.39 8.61-8.61 21.38-8.61t21.38 8.61q8.62 8.62 8.62 21.39v222.3Q820-182 799-161q-21 21-51.31 21H212.31ZM760-717.85 409.85-367.69q-8.31 8.3-20.89 8.5-12.57.19-21.27-8.5-8.69-8.7-8.69-21.08 0-12.38 8.69-21.08L717.85-760H590q-12.77 0-21.38-8.62Q560-777.23 560-790t8.62-21.38Q577.23-820 590-820h193.84q15.47 0 25.81 10.35Q820-799.31 820-783.84V-590q0 12.77-8.62 21.38Q802.77-560 790-560t-21.38-8.62Q760-577.23 760-590v-127.85Z"/></svg>')
    no-repeat center / 1em;
  background: currentColor;
  margin-left: 0.1em;
}

/* auto break */
.a_break {
  display: inline-block;
}

@media (max-width: 767px) {
  .a_break {
    display: block;
  }
}

/* scroll table */
@media (max-width: 767px) {
  .s_table {
    overflow: auto;
    white-space: nowrap;
    padding-inline: var(--tcdce-utility-scroll-table-margin, 20px);
    margin-inline: calc(var(--tcdce-utility-scroll-table-margin, 20px) * -1);
  }

  .s_table table {
    position: relative;
  }

  .s_table table:after {
    content: "";
    position: absolute;
    top: 0;
    left: 100%;
    height: 1px;
    width: var(--tcdce-utility-scroll-table-margin, 20px);
  }
}

/* contact form 7 */
.wpcf7 {
  width: 100%;
  border: 1px solid #ddd;
  background: #fafafa;
  font-size: 14px;
}

.wpcf7 form {
  margin: 1.5em 1.5em 0;
}

.wpcf7 p {
  margin-bottom: 1em;
  font-size: 16px;
}

.wpcf7 input,
.wpcf7 textarea {
  width: 100%;
  padding: 8px;
  border: 1px solid #ccc;
  line-height: 1.2;
}

.wpcf7 select,
.wpcf7 input[type="checkbox"],
.wpcf7 input[type="radio"] {
  width: auto;
  max-width: 97%;
  padding: 8px;
  border: 1px solid #ccc;
}

.wpcf7 select,
.wpcf7 .wpcf7-list-item-label {
  font-size: 14px;
  line-height: 1.2;
}

.wpcf7 .wpcf7-list-item {
  display: block;
}

.wpcf7 textarea {
  height: 300px;
}

.wpcf7 input:focus,
.wpcf7 textarea:focus {
  border: 1px solid #bbb;
  outline: none;
}

.wpcf7 .wpcf7-submit,
.wpcf7 .wpcf7-previous {
  background-color: #000000;
  display: block;
  position: relative;
  width: 225px;
  height: 48px;
  margin: 30px auto 0;
  border: none !important;
  outline: none;
  color: #fff;
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s;
}

.wpcf7 .wpcf7-submit:hover,
.wpcf7 .wpcf7-previous:hover {
  background-color: color-mix(in srgb, #000000 70%, transparent);
}

.wpcf7 .wpcf7-submit .wpcf7-not-valid {
  background: pink;
}

.wpcf7 .wpcf7-submit .wpcf7-response-output {
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  margin: 10px 0 0;
  padding: 8px 35px 8px 14px;
  border-radius: 4px;
}

.wpcf7 .wpcf7-submit .wpcf7-validation-errors {
  border: 1px solid #eed3d7;
  background-color: #f2dede;
  color: #b94a48;
}

.wpcf7 .wpcf7-submit .wpcf7-mail-sent-ok {
  border: 1px solid #bce8f1;
  background-color: #d9edf7;
  color: #3a87ad;
}

.wpcf7 .wpcf7-previous + br {
  display: none;
}

.wpcf7 form .wpcf7-response-output {
  margin: 2em 0.5em 2em;
  padding: 0;
  border: none;
  text-align: center;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
  color: #dc3232;
  font-size: 1em;
}
