@charset "UTF-8";


/*----------------------------- Common*/

.sct_bg01{
  padding: 42px 0;
}
.sct_bg01.bg_f3{
  background-color: #f3f3f3;
}
.sct_bg01.bg_cf1{
  background-color: #cf142b;
  color: #fff;
}

.cnt_max{
}
.clm_box{
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  padding: 8px;
  width: 100%;
}
.clm_box p{
  margin: 0;
}
.clm_box.reverse{
  flex-direction: row-reverse;
}
.clm_box .clm_text{
  width: 50%;
  padding: 0 45px 0 0;
  background: rgba(125,0,125, 0.0);
  box-sizing: border-box;
}
.clm_box.reverse .clm_text{
  padding: 0 0 0 45px;
}
.clm_box .clm_illust{
  width: 50%;
  background: rgba(0,125,125, 0.0);
}
.clm_box .clm_illust img{
  width: 100%;
  background: rgba(125,125,125, 0.0);
}
.sct02 .clm_box .clm_text,
.sct03 .clm_box .clm_text{
  width: 45.4%;
}
.sct02 .clm_box .clm_illust,
.sct03 .clm_box .clm_illust{
  width: 54.6%;
}
.sct04 .clm_box .clm_text{
  width: 49.45%;
}
.sct04 .clm_box .clm_illust{
  width: 50.55%;
}
.sct05 .clm_box .clm_text{
  width: 42.4%;
}
.sct05 .clm_box .clm_illust{
  width: 57.6%;
}

@media (max-width: 640px) {
  .sct_bg01{
    padding: 28px 0 36px 0;
  }
  .clm,
  .clm_box{
    display: block;
    padding: 8px 20px;
  }
  .clm_text,
  .clm_illust{
    padding: 0 !important;
    width: 100% !important;
  }
  .clm_illust{
    margin-top: 16px;
    width: 100%;
  }
}

a.btnlink{
  display: block;
  padding: 8px 14px 0 14px;
  max-width: 180px;
  height: 36px;
  border-radius: 5px;
  background: url(../img/icon_arrow_w.png) 95.0% 50% no-repeat #cf142b;
  color: #fff;
  box-sizing: border-box;
  overflow: hidden;
  opacity: 1;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  transition: all 0.4s;
}
a.btnlink:hover{
  text-decoration: none;
  opacity: 0.6;
}
a.btnlink.btn_w{
  padding: 17px 14px 0 14px;
  height: 60px;
  background: url(../img/icon_arrow_bk.png) 97.75% 50% no-repeat #fff;
  color: #333;
  text-align: center;
  font-size: 20px;
}

@media (max-width: 640px) {
  a.btnlink{
    padding: 7px 14px 0 14px;
    max-width: 200px;
    font-size: 18px;
    transition: none;
  }
  a.btnlink:hover{
    opacity: 1;
  }
  a.btnlink.btn_w{
    padding:10px 14px 0 14px;
    height: 40px;
    font-size: 18px;
  }
}


/*----------------------------------------*/

.main_vi_sct.main_vi_hm {
  background: #f3f3f3;
  z-index: 1;
}
.main_vi_sct.main_vi_hm .main_vi {
  max-width: 1366px;
  margin-top: 0;
  padding: 0;
}
.main_vi {
  max-width: 1008px;
  margin: 0 auto 8px;
  padding: 0 8px;
}
.main_vi .main_vi_img img {
  display: block;
}
.main_vi_img {
  position: relative;
}
.baloon{
  position: absolute;
  margin: auto;
  width: 100%;
  height: 100%;
  max-width: 1024px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(125,125,0, 0.0);
}
.baloon figure {
  position: absolute;
  top: 12.5%;
  left: 0;
  max-width: 180px;
  width: 18.75%;
}
.baloon figure img {
  width: 100%;
  height: auto;
}
.baloon .txt_inner{
  position: absolute;
  top: 35.25%;
  left: 30.25%;
  width: 64.64%;
  background-color: rgba(255,255,255, 0.0);
}
.baloon h2 {
  font-size: 60px;
  line-height: 1.0;
  font-feature-settings: "palt";
  overflow: visible;
}
.baloon p {
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: 0.01em;
  font-feature-settings: "palt";
}

@media screen and (max-width: 1064px) {
  .baloon figure {
    left: 12.25%;
    width: 14.0%;
  }
  .baloon .txt_inner{
    left: 33.25%;
  }
  .baloon h2 {
    font-size: 55px;
  }
  .baloon p {
    font-size: 18px;
  }
}
@media screen and (max-width: 900px) {
  .baloon h2 {
    font-size: 40px;
  }
  .baloon p {
    font-size: 13px;
  }
}
@media screen and (max-width: 640px) {
  .baloon figure {
    top: 9.5%;
    left: 8.5%;
    width: 19.5%;
  }
  .baloon .txt_inner{
    top: 37.75%;
    left: 19.5%;
  }
  .baloon h2 {
    font-size: 36px;
  }
  .baloon p {
    font-size: 16px;
  }
}

