@charset "UTF-8";
/* .concept_wrap {
  background: url("../index.html") no-repeat;
}
.concept_col_2 {
  text-align: center;
  margin-top: 20px;
} */


.concept {
    background: url("../img/concept_bg_ext.jpg") no-repeat;
    padding: 42px 0;
    margin-top: 30px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    height: 3416px;
    width: 1080px;
    position: relative;
}

.sec01 {
    padding-top: 30px;
    padding-bottom: 360px;
    float: right;
    clear: both;
}

.sec01 h3 {
    width: 598px;
    float: right;
    font-size: 43px;
    line-height: 1.3;
    letter-spacing: -4px;
    font-weight: normal;
    padding-bottom: 9%;
}

.sec01 h3 em {
	color: #c30d23;
}

.sec01 p {
    font-size: 23px;
    line-height: 1.6;
    padding-bottom: 1.7em;
    width: 530px;
    margin-right: 2.5em;
}

.sec02 {
    clear: both;
}

.sec02 h3 {
    font-size: 43px;
    padding : 32px 47px;
    font-weight: normal;
}

.sec02_txt {
    width: 585px;
    padding: 50px 30px;
    font-size: 22px;
}

.sec02_txt p {
    padding-bottom: 1.5em;
    line-height: 1.5;
}

.sec03 {
    padding-top: 50px;
    float: right;
    margin-right: 75px;  
    width: 530px; 
}

.sec03_top {  
    font-size: 23px;
    line-height: 1.6;
    letter-spacing: -1px;
    margin: 0px 36px;
}

.sec03_top p {
    padding-bottom: 1.4em;
}

.sec03_btm {
    font-size: 55px;
    font-weight: normal;
    line-height: 1.4;
    letter-spacing: -6px;
    padding-top: 36px;
    padding-left: 20px;
}

.sec03_btm em {
    background: #fff000;
    color: #000;
    font-weight: bold;
    letter-spacing: 5px;
}

.sec03_btm .red {
    color: #e50012;
}

.sec04 {
    clear: both;
    width: 685px;
    margin-top: 90px;
    margin-right: 30px;
    font-size: 33px;
    float: right;
    line-height: 1.9;
    letter-spacing: -2px;
}

.sec05 {
    clear: both;
    padding-top: 88px;
    padding-left: 88px;
}

.sec05 .line1 {
    font-size: 26px;
    line-height: 1.5;
    color: #000;
    font-weight: bold;
    padding-bottom: 65px;
}

.sec05 .line2 {
    font-size: 26px;
    line-height: 1.5;
    font-weight: bold;
    padding-bottom: 80px;
}

.sec05 .line3 {
    font-size: 60px;
    color: #e50012;
    font-weight: bold;
    letter-spacing: -5px;
    margin-left: -32px;
    padding-bottom: 63px;
}

.sec05 .line4 {
    font-size: 33px;
    letter-spacing: -1px;
}


/* 2019.03.07 */
#concept .options_banner {
  position: relative;
  margin-top: -30%;
}
#concept .options_banner a { position: relative; }
#concept .options_banner a:hover {
  opacity: 1;
  -webkit-filter: brightness(120%);
  filter: brightness(120%);
}
#concept .options_banner img {
  width: 100%;
  height: auto;
}

.options_banner a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 11;
  width: 76px;
  height: 104px;
  right: 0;
  bottom: 0;
  transform: translate(0,0);
  background: url("../img/options_banner_hand.png") no-repeat center / contain;
  animation: 0.5s handfocus infinite linear;
}

@keyframes handfocus {
  0% { transform: translate(0,0); }
  50% { transform: translate(-20%, -20%); }
  100% { transform: translate(0,0); }
}