@charset "utf-8";
p{
  font-weight: 500;
}

/*見出し関連*/
#op_title {
  margin: 30px auto 0;
}
#op_title h1{
  font-size: min(5vw, 30px);
  text-align: center;
  font-weight: bold;
}
#op_title h1::before {
  content: '';
  display: block;
  width: 40px;
  height: 40px;
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}
#op-omakase #op_title h1::before {
  background-image: url(../../img/front/new_common/kakou_ico_omakase.svg);
}
#op-bouchu #op_title h1::before {
  background-image: url(../../img/front/new_common/kakou_ico_bouchu.svg);
}
#op-uv #op_title h1::before {
  background-image: url(../../img/front/new_common/kakou_ico_uv.svg);
}

/*  */
.container{
  max-width: 880px;
}

/**/
.ti_bl{
  display: block;
}




/*------------------------------
	  〇〇〇加工とは？（intro）
------------------------------*/
#op-intro .container{
  text-align: center;
  position: relative;
}
.main_img{
  position: relative;
  max-width: 550px;
  margin: 0 auto;
}
.main_img .icon{
  position: absolute;
  top: -33px;
  z-index: 10;
}





/*------------------------------
	  　おまかせ加工の一例
------------------------------*/
#op-exs h3{
  margin-bottom: 10px;
  line-height: 45px;
}

#op-exs ul{
  max-width: 880px;
  margin: 0 auto;
}
#op-exs ul li{
  border: solid 1px #144282;
  border-radius: 10px;
  padding: 1em;
  margin-bottom: 30px;
  text-align: center;
}
#op-exs ul li > img{
  margin: 1em 0 ;
  width: 380px;
}
#op-exs a.btn:hover{
  background: #E6EDFD;
}


/*------------------------------
	  　どんな影響を与えるの？
------------------------------*/
section#op-exs.area > .container{
  max-width: 1080px;
}
#op-exs dl.fwrap{
  justify-content: space-around;
}
#op-exs .exs-box{
  background: #FFF;
  width: 100%;
  padding: 30px 20px;
  margin-bottom: 50px;
  border-radius: 10px;
}
#op-exs .exs-box dt{
  font-size: 18px;
  color: #144282;
  font-weight: bold;
  text-align: center;
  margin-bottom: 5px;
}
#op-exs .exs-box dd{
  font-weight: 500;
}
  @media screen and (min-width: 768px) {
    #op-exs .exs-box{
      width: 40%;
    }
  }
/* デラックス加工の工程 */
#op-deluxe #op-exs dt{
  margin-bottom: 15px;
}
#op-deluxe #op-exs dt span{
  background: #FFFCA0;
  padding: 5px 10px;
  border-radius: 50px;
  margin-right: 5px;
}
#op-deluxe .exs-box .fwrap img{
  height: fit-content;
  margin: 0 auto;
}
#op-deluxe .exs-box .fwrap p{
  margin: 10px 0 0 0;
  width: 100%;
}
  @media screen and (min-width: 480px) {
    #op-deluxe .exs-box .fwrap{
      flex-wrap: nowrap;
    }
    #op-deluxe .exs-box .fwrap p{
      width: 80%;
        margin: 0 0 0 10px;
    }
  }


/*------------------------------
	  おすすめのアイテム・素材
------------------------------*/
#op-items .item_list{
  justify-content: space-around;
}
#op-items .item_list li{
  width: 30%;
  text-align: center;
}
    @media screen and (max-width: 768px){
      #op-items .item_list li{
        width: 37%;
        margin-top: 15px;
      }
    }
#op-items .item_list li p{
  font-size: 16px;
  font-weight: bold;
  margin-top: 10px;
}
#op-items .ng{
  max-width: 500px;
  background: #FFF0F0;
  margin: 30px auto 0;
  padding: 20px;
  border-radius: 10px;
  text-align: center;
}
#op-items .ng ul{
  list-style: disc;
  width: 260px;
  text-align: left;
  margin: 0 auto 10px;
  padding-left: 15px;
}
  @media screen and (max-width: 480px) {
    #op-items .ng ul{
      width: 240px;
    }
  }
#op-items .ng li{
  font-weight: 500;
}
.ng_title{
  background-image: url(../../img/front/futon/bg_batsu.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.ng_title p{
  font-weight: bold;
  font-size: 16px;
}
.ng .red{
  max-width: 400px;
  margin: 0 auto;
}
/* ＵＶ撥水加工のみ×の画像非表示 */
#op-uv .ng_title{
  background-image: none;
}
/* デラックス加工のみセクションのパディング調整（） */
@media screen and (min-width: 768px) {
  #op-deluxe section#op-items.area{
      padding: 100px 4%;
  }
}


/*-------------------------------------
	  　こんな時こんな場合におすすめ
-------------------------------------*/
#op-recs .ti_deco {
  max-width: 600px;
  display: block;
  height: 57px;
  line-height: 30px;
  margin-bottom: 30px;
}
  @media screen and (min-width: 480px) {
    #op-recs .ti_deco {
      height: 80px;
      line-height: 40px;
    }
  }
#op-recs h2 span{
  display: block;
}
#op-recs dl{
  margin: 50px auto;
}
#op-recs dl .fwrap{
  flex-wrap: nowrap;
  margin: 0 auto 30px;
  max-width: 880px;
  justify-content: space-between;
}
#op-recs dl dt{
  width: 25%;
  /* background: #FFF; */
  text-align: right;
}
#op-recs dl dd{
  width: 70%;
}
  @media screen and (max-width: 480px) {
    #op-recs dl dt{
      width: 30%;
    }
    #op-recs dl dd{
      width: 65%;
    }
  }
#op-recs dl h3{
  text-align: left;
  color: #F24D53;
  margin-top: 0;
}
.w_bg_text{
  background: #FFF;
  color: #F24D53;
  padding: 30px 20px;
  font-weight: bold;
  text-align: center;
  border-radius: 20px;
}




/*------------------------------
	           料金表
------------------------------*/
.tbl_wrap{
  margin: 0 auto;
  max-width: 750px;
}
table.price_list {
  font-family: "Helvetica Neue",Arial,"游ゴシック","Yu Gothic","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
  width: 100%;
  border-collapse: collapse;
}
.price_list th {
  background-color: #144282;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  padding: 20px 15px;
  text-align: center;
}
.price_list td {
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 15px;
  font-weight: bold;
  padding: 15px 5px;
}
.price_list tbody td + td{
  border-top: dashed 1px #ccc;
}
.name{
  font-size: 15px;
  font-weight: bold;
}
.name span{
  background: #FFF59D;
  padding: 5px;
  margin-right: 5px;
  font-size: 13px;
  color: #144282;
}
.name .blue{
  background: #E6EDFD;
}
.price {
  font-family: '游明朝', 'Yu Mincho', 'Hiragino Mincho Pro', serif;
  font-size: min(5vw, 22px);
  color: #F24D53;
  line-height: 1.2;
  letter-spacing: 0.05rem;
  margin-bottom: 0;
  font-weight: bold;
}
.price span {
  font-size: 60%;
  color: #969696;
  display: block;
}
.cta_box{
  margin: 20px auto 0px;
}
.cta_box a{
  width: 100%;
  max-width: 350px;
  min-width: 150px;
  height: 50px;
  font-size: 15px;
  border-radius: 25px;
  background: #FFFCD6;
  border: solid 1px #FFF59D;
  color: #3B3B3B;
  padding: 0;
  margin: 1.5em auto 0;
  text-align: center;
  line-height: 50px;
  font-weight: bold;
  cursor: pointer;
}
.cta_box a.blue{
  background: #E6EDFD;
  border: solid 1px #144282;
  color: #144282;
}



/*------------------------------
	     Ｗ加工
------------------------------*/
section#op-double.bg_gray{
  background-image: url(../../img/front/option/w_bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
}
.double_icon{
  margin-bottom: 30px;
}
#op-double a.btn:hover{
  background: #E6EDFD;
}
p.link{
  display: inline-block;
}
a.text_link{
  display: block;
  color: #144282;
  border-bottom: dashed 1px #144282;
  font-size: 110%;
}
a.text_link img{
  margin-left: 5px;
  vertical-align: middle;
}
a.text_link::after{
  display: none;
}
#op-double .sp_left{
  margin-bottom: 20px;
}
/* モーダル上書き */
.modal_inner{
  max-width: 1080px;
}
.op-modal .cta_box{
  margin: 0;
}
/* デラックス加工だけ */
#op-deluxe #op-double dt{
  margin: 0 auto;
}
#op-deluxe #op-double dd h2{
  font-size: min(5.2vw, 20px);
}
#op-deluxe #op-double dd p{
  text-align: left;
}
  @media screen and (min-width: 768px){
    #op-deluxe #op-double dt{
      width: 40%;
    }
    #op-deluxe #op-double dd{
      width: 50%;
    }
  }
  @media screen and (max-width: 480px){
    #op-deluxe #op-double dl{
      flex-direction: column-reverse;
    }
  }


/*------------------------------
	     フッター（共通）
------------------------------*/
#op-footer{
  padding-bottom: 15px;
}
.ban_link {
  margin: 0 auto;
  text-align: center;
}
.op-links {
  font-family: "Helvetica Neue", Arial, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
  padding-top: min(9vw, 50px);
  padding-bottom: min(9vw, 50px);
  background: #E0F2FF;
  text-align: center;
}
.op-links .fwrap{
  flex-wrap: nowrap;
  justify-content: space-around;
  max-width: 880px;
  margin: 0 auto;
}
.op-links .fwrap li {
  width: 30%;
}
.op-links .fwrap li > a p{
  margin-top: 10px;
  font-size: 14px;
  font-weight: bold;
  color: #144282;
}
  @media screen and (max-width: 480px) {
    .op-links .fwrap li img {
        width: 70%;
    }
  }


/*--　各ページへのナビゲーション　--*/
#op-nav ul{
  max-width: 880px;
  margin: 0 auto;
  justify-content: space-between;
}
#op-nav ul li{
  width: 48%;
  max-width: 300px;
  color: #144282;
  border: solid 1px #144282;
  border-radius: 50px;
  margin-bottom: 15px;
}
#op-nav ul li.on{
  background: #E6EDFD;
}
.nav_wrap{
  width: 250px;
}
#op-nav figure{
  display: inline-block;
  width: 30px;
}
#op-nav ul li a{
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: min(3.5vw,15px);
  padding: 5px 0;
  border-radius: 50px;
}
#op-nav ul li a:hover{
  background: #E6EDFD;
}
#op-nav ul li.on a:hover{
  opacity: 1;
  cursor: auto;
}
#op-nav ul li p{
  font-weight: bold;
}
  @media screen and (min-width: 768px){
    #op-nav ul{
      justify-content: space-evenly;
    }
    #op-nav figure{
      width: 45px;
      margin-right: 5px;
    }
  }