@charset "utf-8";
/*------------------------------------------------------------
	トップコンテンツ
------------------------------------------------------------*/
/* common */
.redSpan {
  color: #c5090f;
}
.content {
  margin: 0 auto;
  width: 980px;
}
#gHeader {
  background-color: #fff;
  position: fixed;
  width: 100%;
  z-index: 100;
}
#pagePath {
  margin-bottom: 0;
  background: #a61e32;
  padding-top: 81px;
}
#gFooter .pageTop {
  margin-top: 16px;
}
@media screen and (min-width: 768px) and (max-width: 1100px) {
  #gHeader h1 {
    margin-left: 20px;
  }
}
@media screen and (max-width: 767px) {
  #pagePath {
    padding-top: 64px;
  }
  #gFooter .pageTop {
    margin-top: 0;
  }
}
@media all and (min-width: 0) and (max-width: 767px) {
  .content {
    width: auto;
  }
}

/* Index */
#main .sec01,
#main .sec05,
#main .sec06,
#main .sec07 {
  font-size: 27px;
  line-height: 1.85;
}
#main .sec08,
#main .sec09 {
  font-feature-settings: "palt";
  -moz-font-feature-settings: "palt";
}
#main .sec01 {
  background: url(../img/index/bg01.jpg) no-repeat center top 0;
  background-size: cover;
}
#main .sec01 .content {
  padding-bottom: 160px;
  box-sizing: border-box;
}
#main h1 {
  padding: 82px 0 329px 0px;
}
#main h1 img {
  width: 487px;
}
#main .sec01 .textBox {
  margin: 0 auto;
  text-align: center;
}
#main .sec01 .textBox p {
  color: #fff;
  font-size: 24px;
  line-height: 1.7;
  text-align: center;
}
#main .sec01 .textBox h2 {
  margin-bottom: 35px;
}
#main .sec01 .textBox h2 img {
  width: 459px;
}

#main .sec05 {
  position: relative;
  background: url(../img/index/bg05.png) repeat center top;
  background-size: cover;
}
#main .sec05 .content {
  padding: 25px 0 60px 0;
  box-sizing: border-box;
}
#main .sec05 h2 {
  position: relative;
  z-index: 15;
  margin: -40px 0 5% 0;
  text-align: center;
}
#main .sec05 h2 img {
  width: calc(880 / 980 * 100%);
}
#main .sec05 p {
  color: #000;
  letter-spacing: 0.8px;
  padding: 0 125px;
}
#main .sec05:before {
  width: 980px;
  height: 144px;
  position: absolute;
  bottom: -144px;
  left: 50%;
  z-index: 10;
  background: url(../img/index/arrow04.png) no-repeat left top;
  content: "";
  transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
}

#main .sec06 {
  padding-bottom: 93px;
  position: relative;
  background: url(../img/common/com_bg.png) repeat-x left top;
}
#main .sec06:before {
  max-width: 430px;
  width: 40%;
  height: 141px;
  position: absolute;
  bottom: -134px;
  left: 50%;
  z-index: 10;
  background: url(../img/index/arrow06.png) no-repeat left top;
  background-size: contain;
  content: "";
  transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
}
#main .sec06 h2 {
  margin-bottom: 41px;
  text-align: center;
}
#main .sec06 .textImg {
  padding: 12px 0 9px;
  text-align: center;
  background-color: #fff;
}
#main .sec06 .imgBox {
  padding: 0 20px 0 0;
  box-sizing: border-box;
}
#main .sec06 .imgBox .photoBox {
  margin: 0 -500px -196px 0;
  float: left;
}
#main .sec06 .imgBox .textBox {
  margin-top: 446px;
  width: 460px;
  float: right;
}
#main .sec06 .imgBox .textBox p {
  color: #fff;
  line-height: 1.54;
  letter-spacing: -1.5px;
}
#main .sec06 .redBox {
  padding: 175px 0 16px;
  background: #c0090d url(../img/common/red_box_bg.gif) repeat-x left top;
}
#main .sec06 .redBox h2 img {
  width: 100%;
}
#main .sec06 .grayBox {
  margin-bottom: 56px;
  height: 509px;
  text-align: center;
  position: relative;
  z-index: 10;
  background: #eceff4 url(../img/index/sec06_photo02.jpg) no-repeat center top;
}
#main .sec06 .grayBox img {
  max-width: 100%;
}
#main .sec06 h3 {
  position: relative;
  z-index: 15;
  text-align: center;
  margin-bottom: 70px;
}
#main .sec06 .h3Ttl img {
  margin: -8px 0 -98px;
}
#main .sec06 h4 {
  margin-bottom: 22px;
  text-align: center;
}
#main .sec06 .innerBox {
  box-sizing: border-box;
  padding-bottom: 146px;
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6) 60%, rgba(239, 240, 245, 1) 100%);
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6) 60%, rgba(239, 240, 245, 1) 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6) 60%, rgba(239, 240, 245, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#eff0f5',GradientType=0 );
}
#main .sec06 .innerBox p {
  color: #000;
}
#main .sec06 .innerBox .text01 {
  text-align: justify;
  text-justify: inter-ideograph;
  padding: 0 50px;
  box-sizing: border-box;
}
#main .sec06 .h2Ttl img {
  margin-top: -4%;
}
#main .sec06 .text02 {
  padding: 0 50px;
  box-sizing: border-box;
}
#main .sec06 .supplement,
#main .sec06 sup {
  font-size: 18px;
}
#main .sec06 .text01 .supplement {
  display: block;
  text-align: right;
  margin-top: -40px;
}

#main .sec07 {
  background-color: #bf090d;
}
#main .sec07 .textImg {
  position: relative;
  text-align: center;
  background: url(../img/common/com_shadow_bg.png) repeat-x left top;
}
#main .sec07 .textImg .image img {
  max-width: 100%;
}
#main .sec07 .textImg h2 {
  position: absolute;
  top: 136px;
  left: 49.55%;
  transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
}
#main .sec07 .listUl {
  margin: -5.2% auto 0;
  max-width: 881px;
  text-align: center;
}
#main .sec07 .listUl li {
  padding-bottom: 17.1%;
  background-color: #fff;
}
#main .sec07 .listUl li .photo img {
  margin: -52px 0 -39.2% 3.2%;
}
#main .sec07 .listUl li p {
  margin-left: 11%;
  width: 54%;
  text-align: justify;
  line-height: 1.85;
}
#main .sec07 .listUl li:nth-child(2) {
  padding-bottom: 10.8%;
  margin-top: -61px;
  background-color: #bf090d;
}
#main .sec07 .listUl li:nth-child(2) p {
  margin: 0;
  padding: 0 10% 0 0;
  width: 56%;
  float: right;
  color: #fff;
}
#main .sec07 .listUl li:nth-child(2) img {
  margin: -75px 0 -40% 0.2%;
}
#main .sec07 .listUl li:last-child {
  padding-bottom: 6.3%;
}
#main .sec07 .listUl li:last-child .photo img {
  margin: -81px -3.2% -41.6% 0;
}

.sec10 #contact_btn {
  padding: 83px 0 65px;
  text-align: center;
}

@media all and (-ms-high-contrast: none) {
  #main .sec05::before {
    width: 950px;
    background-size: 100% auto;
  }
}

@media all and (min-width: 0) and (max-width: 520px) {
  #main .sec01 .content {
    padding: 0 10% 43px 22px;
  }
}

@media all and (min-width: 0) and (max-width: 767px) {
  #main .sec01,
  #main .sec05,
  #main .sec06,
  #main .sec07 {
    font-size: 14px;
    font-feature-settings: "palt";
    -moz-font-feature-settings: "palt";
  }
  #main h1 {
    padding: 30px 0 114px;
  }
  #main h1 img {
    width: 150px;
  }

  #main .sec01 .content {
    padding: 0 4% 8%;
  }
  #main .sec01 .textBox h2 {
    margin-bottom: 14px;
  }
  #main .sec01 .textBox h2 img {
    width: 70%;
  }
  #main .sec01 {
    background-size: cover;
    background-position: center top -10px;
    padding: 24px 0;
  }
  #main .sec01 {
  background: url(../img/index/bg01.jpg) no-repeat 60%;
  background-size: cover;
}
  #main .sec01 .textBox img {
    width: 210px;
  }
  #main .sec01 .textBox p {
    font-size: 12px;
  }
  #main .sec01 h2 {
    margin: 14px 0 9px;
  }
  #main .sec01 h2 img {
    width: 200px;
  }
  #main .sec01 .textBox {
    width: auto;
  }

  #main .sec05 .content {
    padding: 15px 0;
  }
  #main .sec05 p {
    margin: 0 40px 14px;
    padding: 0;
  }
  #main .sec05::before {
    width: 100%;
    background-size: 100% auto;
    background-position: center top;
  }

  #main .sec06 .redBox {
    padding-top: 67px;
    background-size: 1px 15px;
  }
  #main .sec06 .redBox h2 {
    margin-bottom: 4.2%;
  }
  #main .sec06 h2 {
    margin-bottom: -10%;
  }
  #main .sec06 .textImg {
    padding: 5px 0 3px;
    display: flex;
    justify-content: center;
  }
  #main .sec06 .imgBox {
    padding: 0;
  }
  #main .sec06 .imgBox .photoBox {
    margin: 0 0 -23.2%;
  }
  #main .sec06 .imgBox .photoBox img {
    width: 100%;
  }
  #main .sec06 .imgBox .textBox {
    margin: -25% 2.5% 0 0;
    width: 46%;
  }
  #main .sec06 .supplement,
  #main .sec06 sup {
    font-size: 10px;
  }
  #main .sec06 .text01 .supplement {
    text-align: left;
    margin-top: 10px;
  }
  #main .sec06 h3 img {
    margin: -16px 0 -22px;
    width: 100%;
  }
  #main .sec06 .h3Ttl img {
    margin: 1px 0;
  }
  #main .sec06 .grayBox {
    margin-bottom: 24px;
    height: auto;
  }
  #main .sec06 .grayBox img {
    width: 100%;
  }
  #main .sec06 .innerBox {
    padding: 0 20px 14%;
  }
  #main .sec06 h4 {
    margin-bottom: 7px;
  }
  #main .sec06 h4 img {
    width: 100%;
  }
  #main .sec06 .textImg img {
    width: 74%;
  }
  #main .sec06 .innerBox .text01 {
    padding: 0;
  }
  #main .sec06 .h2Ttl img {
    width: 100%;
  }
  #main .sec06 .text02 {
    padding: 15% 20px 2%;
  }
  #main .sec06::before {
    width: 162px;
    height: 60px;
    bottom: -57px;
    background-size: 162px auto;
  }
  #main .sec06 {
    padding-bottom: 30px;
  }

  #main .sec07 img {
    max-width: 100%;
  }
  #main .sec07 .listUl {
    margin: -10% 19px 0;
  }
  #main .sec07 .listUl li {
    padding: 0 24px 11.1% 35px;
  }
  #main .sec07 .listUl li p {
    margin-left: 2%;
    width: 65%;
    line-height: 1.72;
    letter-spacing: -0.5px;
  }
  #main .sec07 .listUl li .photo img {
    margin: -20px 0 -48%;
  }
  #main .sec07 .listUl li:nth-child(2) {
    margin-top: 11.2%;
    padding: 0 27px 20.5% 23px;
  }
  #main .sec07 .listUl li:nth-child(2) .photo img {
    margin: -23.3% 0 -47.5% 0.2%;
  }
  #main .sec07 .listUl li:nth-child(2) p {
    padding: 0 1% 0 0;
    width: 68%;
  }
  #main .sec07 .listUl li:last-child .photo img {
    margin: -11% -3.2% -50.6% 0;
  }
  #main .sec07 .listUl li:last-child {
    margin-top: -9%;
    padding: 0 32px 6.5% 33px;
  }
  #main .sec07 .textImg h2 {
    width: 76%;
    top: 13.7%;
  }
  #main .sec07 .textImg {
    overflow: hidden;
  }
  #main .sec07 .textImg .image {
    margin: 0 -26%;
  }
  #main .sec07 .textImg .image img {
    margin: 0;
    width: 100%;
    max-width: none;
  }

  .sec10 #contact_btn {
    padding: 32px 0 25px;
  }
  .sec10 #contact_btn img {
    width: 70% !important;
    height: auto;
  }
  .listUl2 li img {
    width: 20%;
  }
  #main .sec06 h3 {
    margin-bottom: -10px;
  }
}

@media all and (min-width: 0) and (max-width: 350px) {
  #main .sec07 .textImg h2 {
    width: 240px;
  }
}

@media all and (min-width: 475px) and (max-width: 767px) {
  #main .sec07 .listUl li:nth-child(2) {
    margin-top: -1.8%;
  }
  #main .sec07 .listUl li:nth-child(2) .photo img {
    margin-top: -10%;
  }
}

@media all and (min-width: 570px) and (max-width: 767px) {
  #main .sec04 li:last-child .photo img {
    width: 105%;
  }
}

@media all and (min-width: 0) and (max-width: 1400px) {
  #main .sec07 .textImg h2 img {
    width: 90% !important;
    height: auto;
  }
}

@media all and (-ms-high-contrast: none) {
  .series .sec10 .link a {
    padding: 13px 0 9px;
  }
}

/*-------------------------------------
	9+αラインナップ
-------------------------------------*/
#main .sec09 {
  position: relative;
  color: #fff;
  background: #BA090F;
  letter-spacing: 0;
}
#main .sec09 .subBox {
  padding-bottom: 134px;
  background: url("../img/index/sec09_bg02.png") no-repeat center top 224px;
  background-size: 2000px auto;
  padding-top: 100px;
}
#main .sec09::before {
  width: 100%;
  height: 45px;
  position: absolute;
  left: 0;
  background: url("../img/index/sec09_bg-top.png") repeat-x center top / 100% 80px;
  content: "";
  z-index: 10;
}
#main .sec09 h2 {
  margin-bottom: 38px;
  text-align: center;
  position: relative;
}
#main .sec09 h2 img {
  width: 768px;
  margin: 0 auto 0;
}
#main .sec09 .pTxt {
  margin-bottom: 60px;
  font-size: 0.9375rem;
  letter-spacing: 0.12em;
  line-height: 2.2;
  text-align: center;
}
#main .sec09 .textImg {
  margin: 0 auto;
  width: 821px;
  position: relative;
}
#main .sec09 .textImg img {
  transform: translate(-19px, 128px);
}
#main .sec09 .textImg p {
  padding: 15px 25px 15px 30px;
  width: 275px;
  position: absolute;
  top: 0;
  left: 50px;
  color: #fff;
  /*font-size: 1.3rem;*/
  line-height: 3.08;
  letter-spacing: 0.01em;
  text-align: justify;
  box-sizing: border-box;
  background: url("../img/index/sec09_bg03.png") no-repeat left top / 30px 30px, url("../img/index/sec09_bg04.png") no-repeat right bottom / 30px 30px;
}
#main .sec09 .textImg .comBtn {
  position: absolute;
  left: 110px;
}
#main .sec09 .textImg .comBtn a {
  padding: 9px 10px 7px 20px;
  width: 248px;
  /* font-size: 0.8rem; */
}
#main .sec09 .textImg .comBtn a::after {
  display: none;
}
#main .sec09 .textImg .comBtn a:hover {
  opacity: 0.7;
}
#main .sec09 .textImg .comBtn:nth-of-type(2n-1) {
  left: 415px;
}
#main .sec09 .textImg .comBtn01 {
  top: 2720px;
  left: 30px !important;
}
#main .sec09 .textImg .comBtn02 {
  top: 740px;
}
#main .sec09 .textImg .comBtn03 {
  top: 1064px;
}
#main .sec09 .textImg .comBtn04 {
  top: 1340px;
}
#main .sec09 .textImg .comBtn05 {
  top: 1658px;
}
#main .sec09 .textImg .comBtn06 {
  top: 1967px;
}
#main .sec09 .textImg .comBtn07 {
  top: 2267px;
}
@media all and (max-width: 767px) {
  #main .sec09 {
    background: none;
  }
  #main .sec09 .subBox {
    padding-bottom: 0;
    background: none;
    padding: 0;
  }
  #main .sec09::before {
    display: none;
  }
  #main .sec09 h2 {
    margin-bottom: 0;
	position: relative;
  }
  #main .sec09 h2::before {
  	width: 100%;
  	height: 20px;
  	position: absolute;
  	left: 0;
  	top: 0;
  	box-shadow: inset 0 20px 15px -20px rgba(0, 0, 0, 0.6);
  	content: '';
  	z-index: 1;
  }
  #main .sec09 h2 img {
	margin: 0;
    width: 100%;
  }
  #main .sec09 .pTxt {
    padding: 17px 10px 21px;
    margin-bottom: 0;
    font-size: 0.71875rem;
	letter-spacing: 0.25em;
    line-height: 2.3;
    background: #c0090e;
  }
  #main .sec09 .textImg {
    margin: 0 auto;
    width: auto;
  }
  #main .sec09 .textImg img {
    margin-top: -1px;
    width: 100%;
    transform: translate(0, 0);
  }
  #main .sec09 .textImg p {
	padding: 0;
	top: 48vw;
	left: 5vw;
	right: 5vw;
	color: #000;
	font-size: 0.9rem;
	line-height: 2;
	width: auto;
	letter-spacing: -0.7px;
	background: none;
  }
  #main .sec09 .textImg .comBtn a {
    letter-spacing: 0.5em !important;
  }
  #main .sec09 .textImg .comBtn {
    width: 100%;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%);
  }
  #main .sec09 .textImg .comBtn01 {
    top: 945vw;
  }
  #main .sec09 .textImg .comBtn02 {
    top: 198vw;
  }
  #main .sec09 .textImg .comBtn03 {
    top: 308vw;
  }
  #main .sec09 .textImg .comBtn04 {
    top: 400vw;
  }
  #main .sec09 .textImg .comBtn05 {
    top: 502.5vw;
  }
  #main .sec09 .textImg .comBtn06 {
    top: 602vw;
  }
  #main .sec09 .textImg .comBtn07 {
    top: 705vw;
  }
}
@media screen and (max-width: 374px) {
  #main .sec09 .pTxt {
	font-size: 3.4vw;
  }
  #main .sec09 .textImg p {
    font-size: 3.54vw;
  }
}
@media all and (-ms-high-contrast: none) {
  #main .comBtn a {
    padding: 15px 20px 10px 13px !important;
  }
}
