@charset "UTF-8";
img {
  max-width: 100%;
  vertical-align: bottom;
  height: auto;
}

body {
  color: #000;
}

a {
  text-decoration: none;
  color: #272727;
}

p {
  line-height: 1.4;
}

p.triangle {
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 4px solid #666;
}

.sp, .sp-ib {
  display: none !important;
}

.clear_both {
  clear: both;
}

.is-empty {
  border: 0 !important;
  height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
}

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix .box {
  box-sizing: border-box;
}

.clearfix.box-2 .box {
  width: 49%;
  float: left;
  margin-right: 2%;
}

.clearfix.box-2 .box:last-child {
  margin-right: 0;
}

.clearfix.box-3 .box {
  width: 32%;
  float: left;
  margin-right: 2%;
}

.clearfix.box-3 .box:last-child {
  margin-right: 0;
}

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

.w100p {
  width: 100%;
}

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

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

.t-center {
  text-align: center !important;
}

i {
  padding-right: 5px;
}

/* dl */
.dl_01 {
  margin-bottom: 40px;
}

.dl_01 dt {
  margin-bottom: 20px;
}

/* ul */
ul.col-2 {
  font-size: 0;
}

ul.col-2:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

ul.col-2 li {
  width: 49%;
  float: left;
  margin-right: 1%;
  margin-bottom: 2%;
}

ul.col-2 li:nth-child(2n) {
  margin-right: 0;
  margin-left: 1%;
}

ul.col-2 li img {
  width: 100%;
}

.btn {
  cursor: pointer;
  text-align: center;
  display: block;
  margin: 0 auto;
  width: 300px;
  font-size: 16px;
  border-radius: 5px;
  line-height: 56px;
  box-sizing: border-box;
}

.btn.small {
  width: 250px;
  line-height: 42px;
}

.btn-01 {
  text-align: center;
  display: block;
  margin: 0 auto;
  width: 300px;
  font-size: 16px;
  border: 1px solid #111;
  border-radius: 5px;
  line-height: 56px;
  box-sizing: border-box;
}

.btn-02 {
  text-align: center;
  background: #111;
  color: #fff;
  display: block;
  margin: 0 auto;
  width: 300px;
  font-size: 16px;
  border-radius: 5px;
  line-height: 56px;
  box-sizing: border-box;
}

.btn-03 {
  background: #274a78;
  color: #fff;
}

.btn-03-o {
  border: 1px solid #274a78;
  color: #274a78;
}

.btn-03-o:hover {
  background: #274a78;
  color: #fff;
}

.btn-04 {
  text-align: center;
  display: block;
  margin: 0 auto;
  width: 250px;
  font-size: 14px;
  border: 1px solid #111;
  border-radius: 5px;
  line-height: 42px;
  box-sizing: border-box;
}

.btn-05 {
  border: 2px solid #ec008c;
  color: #666;
  font-weight: bold;
}

.btn-06 {
  background: #E60023;
  color: #fff;
  font-weight: bold;
  border-radius: 40px;
  font-size: 20px;
  max-width: 100%;
}

.btn-07 {
  background: #F4B008;
  color: #fff;
  font-weight: bold;
  border-radius: 40px;
  font-size: 20px;
}

/* text */
.t-center {
  text-align: center;
}

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

.t-left {
  text-align: left;
}

.c-red {
  color: #ff0000;
}

/* boxレイアウト */
.clearfix .box img {
  max-width: 100%;
}

.clearfix .box p {
  line-height: 1.5;
}

.clearfix.box_2 .box, .clearfix.box_2_2 .box {
  float: left;
  box-sizing: border-box;
  width: 49%;
}

.clearfix.box_2 .box:nth-child(1), .clearfix.box_2_2 .box:nth-child(1) {
  margin-right: 1%;
}

.clearfix.box_2 .box:nth-child(2), .clearfix.box_2_2 .box:nth-child(2) {
  margin-left: 1%;
}

ul.ul_2 li {
  width: 48%;
  box-sizing: border-box;
  display: inline-block;
}

ul.ul_2 li img {
  max-width: 100%;
}

ul.ul_3 li {
  width: 32%;
  box-sizing: border-box;
  display: inline-block;
}

ul.ul_3 li img {
  max-width: 100%;
}

/* width */
.w20_100 {
  width: 20%;
}

.w30_100 {
  width: 30%;
}

.w40_100 {
  width: 40%;
}

.w50_100 {
  width: 50%;
}

.w60_100 {
  width: 60%;
}

.w70_100 {
  width: 70%;
}

.w80_100 {
  width: 80%;
}

.w90_100 {
  width: 90%;
}

.w20_100, .w30_100, .w40_100, .w50_100, .w60_100, .w70_100, .w80_100, .w90_100 {
  margin: 0 auto;
}

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

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

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

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

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

.m0 {
  margin: 0px !important;
}

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

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

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

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

.p5 {
  padding: 5px !important;
}

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

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

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

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

.m5 {
  margin: 5px !important;
}

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

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

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

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

.p10 {
  padding: 10px !important;
}

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

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

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

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

.m10 {
  margin: 10px !important;
}

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

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

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

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

.p15 {
  padding: 15px !important;
}

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

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

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

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

.m15 {
  margin: 15px !important;
}

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

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

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

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

.p20 {
  padding: 20px !important;
}

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

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

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

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

.m20 {
  margin: 20px !important;
}

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

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

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

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

.p25 {
  padding: 25px !important;
}

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

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

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

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

.m25 {
  margin: 25px !important;
}

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

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

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

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

.p30 {
  padding: 30px !important;
}

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

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

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

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

.m30 {
  margin: 30px !important;
}

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

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

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

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

.p35 {
  padding: 35px !important;
}

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

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

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

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

.m35 {
  margin: 35px !important;
}

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

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

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

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

.p40 {
  padding: 40px !important;
}

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

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

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

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

.m40 {
  margin: 40px !important;
}

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

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

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

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

.p45 {
  padding: 45px !important;
}

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

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

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

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

.m45 {
  margin: 45px !important;
}

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

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

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

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

.p50 {
  padding: 50px !important;
}

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

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

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

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

.m50 {
  margin: 50px !important;
}

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

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

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

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

.p55 {
  padding: 55px !important;
}

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

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

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

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

.m55 {
  margin: 55px !important;
}

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

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

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

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

.p60 {
  padding: 60px !important;
}

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

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

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

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

.m60 {
  margin: 60px !important;
}

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

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

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

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

.p65 {
  padding: 65px !important;
}

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

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

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

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

.m65 {
  margin: 65px !important;
}

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

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

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

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

.p70 {
  padding: 70px !important;
}

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

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

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

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

.m70 {
  margin: 70px !important;
}

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

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

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

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

.p75 {
  padding: 75px !important;
}

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

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

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

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

.m75 {
  margin: 75px !important;
}

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

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

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

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

.p80 {
  padding: 80px !important;
}

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

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

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

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

.m80 {
  margin: 80px !important;
}

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

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

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

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

.p85 {
  padding: 85px !important;
}

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

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

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

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

.m85 {
  margin: 85px !important;
}

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

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

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

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

.p90 {
  padding: 90px !important;
}

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

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

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

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

.m90 {
  margin: 90px !important;
}

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

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

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

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

.p95 {
  padding: 95px !important;
}

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

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

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

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

.m95 {
  margin: 95px !important;
}

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

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

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

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

.p100 {
  padding: 100px !important;
}

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

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

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

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

.m100 {
  margin: 100px !important;
}

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

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

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

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

/* sp */
@media (max-width: 768px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: inherit !important;
  }
  .sp-ib {
    display: inline-block !important;
  }
  .clearfix .box {
    box-sizing: border-box;
  }
  .clearfix.box-2 .box {
    width: 100%;
    float: none;
    margin-right: 0%;
    margin-bottom: 30px;
  }
  .clearfix.box-2 .box:last-child {
    margin-right: 0;
  }
  .clearfix.box-3 .box {
    width: 100%;
    float: none;
    margin-right: 0%;
  }
  .clearfix.box-3 .box:last-child {
    margin-right: 0;
  }
  .btn {
    width: 80%;
    max-width: 300px;
  }
  .btn-01 {
    border: 1px solid #111;
    border-radius: 5px;
    font-size: 16px;
    font-weight: bold;
    line-height: 46px;
    display: block;
    margin: 0 auto;
    width: 80%;
    max-width: 300px;
  }
  .btn-02 {
    line-height: 46px;
    margin: 0 auto;
    width: 80%;
    max-width: 300px;
  }
  .btn-04 {
    width: 80%;
    max-width: 300px;
    font-weight: bold;
    font-size: 14px;
    border: 1px solid #111;
    border-radius: 5px;
    line-height: 42px;
    box-sizing: border-box;
  }
  /* boxレイアウト */
  .clearfix .box {
    float: none !important;
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    margin-bottom: 20px;
  }
  .clearfix.box_2_2 .box {
    width: 50% !important;
    float: left !important;
    margin-bottom: 0px;
  }
  /* width */
  .w20_100, .w30_100, .w40_100, .w50_100, .w60_100, .w70_100, .w80_100, .w90_100 {
    width: 100%;
  }
}
