@charset "utf-8";
* {
  box-sizing: border-box;
}
img {
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
  vertical-align: bottom;
}
html {
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
}
body {
  line-height: 1.5;
  font-size: 1.4rem;
  color: #333333;
}
body, main, section, h1, h2, h3, p, ul, li, dl, dd, figure {
  margin: 0;
  padding: 0;
}
.headTitleBox {
  margin-bottom: 0;
}
.contentsWrap {
  width: 100%;
}
.oneContents .contentsWrap #main {
  width: 100%;
}
#main {
  padding: 0;
}
/*==========*/
#footerLink {
  margin-top: 0;
}
/*=====main=====*/
.pcOnly {
  display: none;
}
.main-inner {
  background:url("../images/idx_bg01.webp") repeat;
  background-size: 100%;
  padding: 3% 0 10%;
}

.end{
  padding: 3% 5% 4%;
  background-color: #b60005;
}
.date{
  position: relative;
}
.date .txDate{
  margin:  0 8vw;
  position: absolute;
  top: 4vw;
}

/*.contents01*/
.contents01{
  margin: 10% 4% 28%;
}
.contents01 span{
  display: block;
}
.contents01 .tx01{
  margin: 0 25%;
}
.contents01 .tx02{
  margin: 3% 25% 1%;
}
.txLead{
  margin: 8% 15% 0;
}
/*.contents02*/
.contents02 {
  margin: 0 3%;
}
.contents02 h2{
  margin: 0 3% 7%;
}
.contents02 .point01{
  margin-right: 25%;
}
.contents02 figure{
  margin: 2% 4% -25% 16%;
}
.contents02 .point02{
  margin-left: 38%;
}

/*.contents03*/
.contents03{
  margin: 26% 0 18%;
}
.contents03 p{
  margin: 0 5% 1%;
}
/*.contents04*/
.contents04{
  padding: 0 5%;
}
.contents04 h2{
  margin: 0 15% 10%;
}
.contents04 li + li{
  margin-top: 15%;
}

.btnArea {
  margin: 12% 0 5%;
}
.btnArea p:nth-of-type(n+2) {
  margin: 3% 3% 0;
}
.attention {
  color: #fff;
  font-size: 1.2rem;
}
.recomend{
  position: relative;
}
.recomend .txRecomend {
  display: block;
  margin:  0 10vw;
  position: absolute;
  top: 2vw;
}
.recomend ul li {
  width: 100%;
}

/*=====mediaQuery=====*/
@media screen and (min-width:751px), print {
  .pcOnly {
    display: inline-block;
  }
  .spOnly {
    display: none;
  }
  #main {
    background-image: linear-gradient(-45deg, #f0f0f0 25%, #f6f6f6 25%, #f6f6f6 50%, #f0f0f0 50%, #f0f0f0 75%, #f6f6f6 75%, #f6f6f6);
    background-size: 15px 15px;
  }
  #main h1 , #main .date{
    text-align: center;
  }
  .main-inner, .date, .end{
    width: 1000px;
    margin: 0 auto;
  }
  .main-inner{
    background:url("../images/idx_bg01pc.webp") repeat;
    background-size: auto;
    padding: 20px 0 40px;
    overflow: hidden;
  }
  .end{
    text-align: center;
    padding: 15px 0;
  }
  .end img{
    width: 475px;
  }
  .date .txDate{
    margin:  0 auto;
    width: 475px;
    top: 24px;
    left: 0;
    right: 0;
  }
  /*.contents01*/
  .contents01{
    margin: 60px auto 100px;
    width: 540px;
  }
  .contents01 span{
    display: block;
  }
  .contents01 .tx01{
    margin: 0 25%;
  }
  .contents01 .tx02{
    margin: 3% 25% 1%;
  }
  .txLead{
    margin: 35px 0 0;
    text-align: center;
  }
  /*.contents02*/
  .contents02 {
    margin: 0 45px 0 70px;
    position: relative;
  }
  .contents02 h2{
    margin: 0 0 170px 0
  }
  .contents02 .point01{
    margin: 0 0 0 auto;
    width: 325px;
  }
  .contents02 figure{
    margin: 0;
    position: absolute;
    width: 375px;
    top: 40px;
    left: 270px;
  }
  .contents02 .point02{
    margin: 60px auto 0 0;
    width: 280px;
  }

  /*.contents03*/
  .contents03{
    margin: 115px -10px 30px 25px;
    display: flex;
    justify-content: space-between;
  }
  .contents03 p{
    margin: 210px -50px 0 0;
  }
  
  /*.contents04*/
  .contents04{
    padding: 0 30px;
  }
  .contents04 h2{
    width: 320px;
    margin: 0 auto 50px;
  }
  .contents04 ul{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: baseline;
  }
  .contents04 li{
    width: 450px;
  }
  .contents04 li:first-of-type {
    margin: 0 245px;
  }
  .contents04 li + li{
    margin-top: 35px;
  }
  
  .btnArea {
    width: 465px;
    margin: 50px auto 40px;
  }
  .btnArea p:nth-of-type(n+2) {
    margin: 20px 20px 0;
  }
  .attention {
    font-size: 1.5rem;
    text-align: left;
  }
  .recomend {
    width: 1000px;
    margin: 0 auto;
  }
  
  .recomend h2 {
    text-align: center;
  }
  .recomend .txRecomend {
    margin:  0 auto;
    top: 20px;
    left: 0;
    right: 0;
  }
  .recomend ul {
    display: -webkit-flex;
    display: flex;
  }
  .recomend ul li {
    width: 100%;
  }
}