@charset "UTF-8";
/* ==================================================
  特集ページ　レスポンシブ専用CSS
  コンテンツ幅 992px

  デスクトップ 1025px以上
  タブレット 768~1024px
  スマホ 767px以下

  ※font-family: 'Noto Sans JP'; 使えます
  ※画像遅延読み込み <img class="lazyload" data-src="" alt=""> で使えます
================================================== */

/* ------------------------------
  共通
------------------------------ */
* img {
  width: auto;
  max-width: 100%;
}
/* フル画像トリミング（レスポンシブ用） */
.simpleMv--full .simpleMv__img {
  object-fit: cover;
}
.is-pc{
    display:block;
}
.is-sp{
    display:none;
}
.mv .obi {
	height: 750px;
	background: url(../img/mv.png) center bottom no-repeat;
	overflow: hidden;
	background-color: #fff;
}
.mv .obi .logo {
	width: 100%;
	height: 100%;
	margin: auto;
	background: url(../img/logo.png) no-repeat center center;
}
h2.heading--title{
    font-weight: 900;
    font-size: 27px;
    letter-spacing: 5px;
}
h2.heading--title span{
    font-family: century-gothic, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 145px;
    color: #ddd;
    letter-spacing:0;
}
/*案内*/
.guidance {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  border: solid;
  width: 992px;
  margin: 3rem auto 0;
  padding: 0.5rem;
}
.guidance p { font-size: 1.3rem; }

/*船紹介*/
#ship .heading--md {
    font-size: 30px;
    margin-bottom: 15px;
    background: url(../img/seat.png) no-repeat right center;
    background-size: contain;
    padding: 5% 0;
    text-shadow: 2px 0 0 #fff, 0 2px 0 #fff, -2px 0 0 #fff, 0 -2px 0 #fff;
}
#ship .grid-row {
    margin: 25px -8px;
}
#ship p.pro{
    font-size: 16px;
    font-weight: 900;
    line-height: 2.5;
    width: 70%;
    margin: 8% auto;
    text-align: center;
}
/* クローズ */
#CloseArea p.close-text{
  text-align: center;
  font-weight: bold;
  font-size: calc(18px + 0.25vw) ;
}
#CloseArea span.is-inline-block {
  display: inline-block;
}

/*コース紹介*/
#corse .corse_box{
  position: relative;
  z-index: 0;
  margin: 5% auto 2%;
  padding-bottom: 110px;
}
#corse .corse_box:after{
  content: '';
  position: absolute;
  left:0;
  top: 0;
 
  /*四角形を傾けます*/
  transform: skewY(4deg);
  transform-origin: top right;
 
  z-index: -1;
  width:100%;
  height:100%;
  background:#c40a03;
}
#corse .corse_box:nth-child(3n):after{
  background:#fff;
}
#corse .corse_box:nth-child(3n) div.info div.text{
    color: #333;    
}
#corse .corse_box div.info,
#corse .corse_box ul.product{
    max-width: 992px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    padding-top: 3%;
}
#corse .corse_box div.info div.text{
    width: 55%;
    margin-right: 1%;
    color: #fff;
}
#corse .corse_box div.info div.text p{
    
}
#corse .corse_box div.info div.text ul{
    border-top: 1px solid #c40a03;
    margin-top: 10px;
    padding-top: 10px;
}
#corse .corse_box div.info div.text p.title{
    font-size: 2em;
    font-weight: 900;
    background: url(../img/flag01.png) no-repeat left top;
    padding: 15px 94px 55px;
}
#corse .corse_box:nth-child(3) div.info div.text p.title{
    font-size: 2em;
    font-weight: 900;
    background: url(../img/flag02.png) no-repeat left top;
    padding: 15px 94px 55px;
}
#corse .corse_box:nth-child(4) div.info div.text p.title{
    font-size: 2em;
    font-weight: 900;
    background: url(../img/flag03.png) no-repeat left top;
    padding: 15px 94px 55px;
}
#corse .corse_box:nth-child(5) div.info div.text p.title{
  font-size: 2em;
  font-weight: 900;
  background: url(../img/flag04.png) no-repeat left top;
  padding: 15px 94px 55px;
}
#corse .corse_box div.info div.text div.box{
    background: #fff;
    color: #333;
    padding: 3%;
    margin-top: 2%;
}
#corse .corse_box:nth-child(3n) div.info div.text div.box {
    background: #c40a03;
    color: #fff;
}
#corse .corse_box div.info div.img{
    width: 44%;
}
#corse .corse_box ul.product li {
  width: calc((100% - 2%) / 4);
}
#corse .corse_box ul.product li.osusume{
    width: 100%;
}
#corse .corse_box ul.product li {
    margin: 0 0.1rem 0.3rem;
    background: #fff;
    padding: 1%;
    border-radius: 10px;
    position: relative;
    border: 2px solid #c40a03;
}
#corse .corse_box ul.product li:empty{
    display:none;
}
#corse .corse_box ul.product li:hover{
    border: 2px solid #333;
    background-color: #f2f2f2;
}
#corse .corse_box ul.product li div.item p.img{
    position:relative;
}
#corse .corse_box ul.product li div.item p.img span{
    position: absolute;
    top: 0;
    left: 0;
    background: #c40a03;
    color: #fff;
    padding: 5px;
}
#corse .corse_box ul.product li div.item div.item-box{
    margin: 2%;
}
#corse .corse_box ul.product li div.item div.item-box p.ttl{
    font-size: 1.2rem;
    font-weight: bold;
    /* height: 70px; */
}
#corse .corse_box ul.product li div.item div.item-box p.point{
    background: #e2e2e2c2;
    padding: 0.5rem;
    margin-top: 0.5rem;
    /* height: 75px; */
}
#corse .corse_box ul.product li div.item div.item-box p.price{
    margin-top: 10px;
    font-weight: 900;
    font-size: 20px;
    color: #c40a03;
}
#corse .corse_box ul.product li div.item p.link a{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
#corse p.btn{
   max-width: 992px;
   width: 40%;
   margin: 1% auto;
}
#corse p.btn .Text{
  position: relative;
  border: 3px solid #c40a03;
  color: #c40a03;
  font-size: 17px;
  display: block;
  text-align: center;
  text-decoration: none;
  padding: 2%;
  font-weight: 900;
  transition : all 0.5s ease 0s;
}
#corse p.btn .Text:hover{
    background:#c40a03;
    color:#fff;
}
#corse p.btn .Text:before,
#corse p.btn .Text:after{
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 11%;
  height: 2px;
  background: #c40a03;
  transition : all 0.5s ease 0s;
}
#corse p.btn .Text:hover:before,
#corse p.btn .Text:hover:after{
    background:#fff;
}
#corse p.btn .Text:before{
  width: 60px;
  transform: translate(30px, 0px);
}
#corse p.btn .Text:after{
  width: 15px;
  transform-origin: right center;
  transform: translate(30px, 0px) rotate(25deg);
}
/*お問い合わせ*/
#contact{
    
}
#contact .contact-box{
    max-width: 992px;
    margin: 1% auto;
    border: 3px solid #000;
    padding: 2%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
#contact .contact-box div.info{
    width: 70%;
}
#contact .contact-box div.info p.name{
    font-size: 27px;
    font-weight: 900;
}
#contact .contact-box p.tel{
    width: 30%;
    font-size: 28px;
    font-weight: 900;
    color: #c40a03;
}
#contact .contact-box div.allshop{
    width: 100%;
    border-top: 3px solid #000;
    margin-top: 3%;
}
#contact .contact-box div.allshop p{
   max-width: 992px;
   width: 60%;
   margin: 3% auto 1%;
}
#contact .contact-box div.allshop p .Text{
  position: relative;
  border: 3px solid #c40a03;
  color: #c40a03;
  font-size: 20px;
  display: block;
  text-align: center;
  text-decoration: none;
  padding: 2%;
  font-weight: 900;
  transition : all 0.5s ease 0s;
}
#contact .contact-box div.allshop p .Text:hover{
    background:#c40a03;
    color:#fff;
}
#contact .contact-box div.allshop p .Text:before,
#contact .contact-box div.allshop p .Text:after{
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 11%;
  height: 2px;
  background: #c40a03;
  transition : all 0.5s ease 0s;
}
#contact .contact-box div.allshop p .Text:hover:before,
#contact .contact-box div.allshop p .Text:hover:after{
    background:#fff;
}
#contact .contact-box div.allshop p .Text:before{
  width: 60px;
  transform: translate(30px, 0px);
}
#contact .contact-box div.allshop p .Text:after{
  width: 15px;
  transform-origin: right center;
  transform: translate(30px, 0px) rotate(25deg);
}
/* 検索 */
div#searchModSection {
  padding: 3rem 1rem;
}
/* ------------------------------
  タブレットのみ
------------------------------ */
@media screen and (min-width: 768px) and (max-width: 1024px) {
  /* ここに記入 */
    #ship .grid-col2{
        width: 60%;
    }
    #ship .grid-col2:first-child{
        width:40%;
    }
}



/* ------------------------------
  タブレット以下
------------------------------ */
@media screen and (max-width: 1024px) {
  .breadcrumb {
    width: 100%;
  }
  .section__container {
    width: 100%;
    padding: 24px 15px;
  }
  .goTop__img--pc {
    display: none;
  }
  .goTop__img--sp {
    display: block;
  }
  #ship .heading--md {
      font-size: 4vw;
  }
  h2.heading--title span {
    font-size: 15vw;
  }
  .mv .obi .logo {
    background-size: 100%;
  }
  #corse .corse_box {
    padding: 2% 2% 110px;
    margin: 5% auto 5%;
  }
  #corse p.btn {
    width: 90%;
  }
}


/* ------------------------------
  スマホ以下
------------------------------ */
@media screen and (max-width: 750px) {
    .is-pc{
        display:none;
    }
    .is-sp{
        display:block;
    }
    .mv .obi {
        height: 600px;
        background: url(../img/mv_sp.png) center bottom no-repeat;
        overflow: hidden;
        background-color: #fff;
    }

    /*案内*/
    .guidance{
      font-size: 1rem;
      width: 90%;
      margin: 2rem auto 0;
    }
    .guidance p { font-size: 1rem; }

    #ship .heading--md {
        font-size: 6vw;
    }
    #ship p.pro {
        width: 100%;
        font-size: 14px;
        padding: 0 3rem;
        line-height: 2.0;
    }
    #corse .corse_box div.info, #corse .corse_box ul.product {
        display: block;
        padding-top: 5%;
    }
    #corse .corse_box div.info div.text {
        width: 100%;
    } 
    #corse .corse_box div.info div.img {
        width: 100%;
        margin-top: 3%;
    }
    #corse .corse_box ul.product li{
        width: 100%;
        padding: 3%;
        margin-bottom: 1rem;
    }
    #corse .corse_box ul.product li.osusume div.item {
        display: block;
    }
    #corse .corse_box ul.product li.osusume div.item p.img {
        width: 100%;
    }
    #corse .corse_box ul.product li.osusume div.item div.item-box {
        width: 100%;
    }
    #corse .corse_box ul.product li div.item div.item-box p.price{
      text-align: center;
      font-size: 17px !important;
    }
    #corse .corse_box ul.product li div.item div.item-box p.fuel{
      text-align: center;
    }
    #corse .corse_box ul.product li div.item div.item-box p.ttl {
      font-size: 1.1rem;
    }
    #corse .corse_box ul.product li div.item div.item-box p.point {
      height: 60px;
    }
    #contact .contact-box {
        display: block;
        text-align: center;
    }
    #contact .contact-box div.info {
        width: 100%;
    }
    #contact .contact-box p.tel {
        width: 100%;
    }
    #contact .contact-box div.allshop p {
        width: 80%;
    }
    #corse p.btn .Text:before {
        width: 30px;
    }
/* 検索 */
.headfoot-is-sp div#searchModSection {
  padding: 00 1rem;
}
/* 特集 */
.headfoot-is-sp .innner,.headfoot-is-sp .section__container{ width:100%; margin: 0 auto;}
.headfoot-is-sp .feature{ width:100%; margin: 2rem auto 0;}
.headfoot-is-sp ul.clearfix {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
}
.headfoot-is-sp ul.clearfix li{  width: calc(90% / 2); padding: 0.5rem;}

}



/* ------------------------------
  デスクトップ以上
------------------------------ */
@media screen and (min-width: 1025px) {
  .goTop__img--pc {
    display: block;
  }
  .goTop__img--sp {
    display: none;
  }
}

@media screen and (max-width: 1024px) and (orientation: portrait){
  #corse .corse_box ul.product li div.item div.item-box p.ttl {
    font-size: 1rem;
    height: 44px;
}
  #corse .corse_box ul.product li div.item div.item-box p.price {
    font-size: 15px;
}
  #corse .corse_box ul.product li div.item div.item-box p.fuel {
    font-size: 0.9rem;
    text-align: center;
}
/* #corse .corse_box ul.product li div.item div.item-box p.point {
  height: 120px;
} */
}