@charset "UTF-8";

/* 必須指定 */
#contWrap {
    margin: 0 auto;
    width: 100%;
    color: #333;
}
#contWrap ul{
    list-style-type: none;
}
#contWrap h3,#contWrap h4,#contWrap ul,#contWrap a{
    margin: 0;
}
@media screen and (max-width: 750px)  {
	#contWrap {
		width: 100%;
        max-width: 100%;
        min-width: 100%;
	}
}
.product-box__ttl,.product-box__price,.product-box__catch{
    text-align: left;
}
/*共通パーツ
---------------------------------------*/
.link-btn:hover{
    text-decoration: none;
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
.wrap{
    width: 96.55172413793103%;
    padding-top: 80px;
    padding-bottom: 50px;
    margin: 0 auto;
    text-align: center;
}
.wrap_wrap{
    margin-top: 70px;
}
.ttl3{
    font-size: 30px;
    font-weight: 700;
    text-align: center;
    line-height: 1.7;
    position: relative;
    display: inline-block;
    margin: 0 auto;
    color: #002558;
}
.ttl3::before{
    content: url("images/ttl3_img01.png");
    position: absolute;
    top:14px;
    left:-100px;
}
.ttl3::after{
    content: url("images/ttl3_img02.png");
    position: absolute;
    top:14px;
    right:-100px;
}
.ttl3 span{
    font-size: 18px;
}

#contWrap .ttle-h2  {
  position: relative;
  padding: 1.3rem 1.5rem calc(1.5rem + 10px);
  border: 2px solid #000;
    font-size: 27px;
    font-weight: 700;
    text-align: center;
  background: #002a41;
  color: #FFF;
  margin-top: 27px;
}

#contWrap .ttle-h2:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  content: '';
  border-top: 2px solid #000;
  background-image: -webkit-repeating-linear-gradient(135deg, #FFF, #FFF 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #FFF, #FFF 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#contWrap .ttle-h2 span{
  font-size: 24px;
}


@media screen and (max-width: 750px) {
    #contWrap .ttle-h2{
    font-size: 19px;
    }
}



.chumoku{
  padding: 0.8rem 2rem;
  background: #ffff00;
  font-size: 19px;
  font-weight: bold;
  text-align: center;
  width: 40%;
    margin: 30px auto 30px;
  color: #002a41;
  line-height: 1.2;
}

@media screen and (max-width: 750px) {
    .chumoku{
    font-size: 16px;
  width: 100%;
    }
}

.chumoku span{
  font-size: 17px;
}


.chumoku02{
  padding: 0.8rem 2rem;
  background: #ffff00;
  font-size: 19px;
  font-weight: bold;
  text-align: center;
  width: 70%;
    margin: 30px auto 30px;
  color: #002a41;
  line-height: 1.2;
}
.chumoku span{
  font-size: 17px;
}
@media screen and (max-width: 750px) {
    .chumoku02{
    font-size: 16px;
  width: 100%;
    }
}

.chumoku_S{
  padding: 0.8rem 2rem;
  background: #ffff00;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  width: 100%;
    margin: 30px auto 30px;
  color: #003e94;
  line-height: 1.2;
}
.chumoku_S span{
  font-size: 12px;
}


#contWrap .ttle-h3 {
  position: relative;
  padding: 1rem 0.5rem calc(1rem + 10px);
  background: #d4145a;
    font-size: 21px;
    font-weight: 700;
    text-align: center;
  color: #FFF;
}

#contWrap .ttle-h3:before {
  position: absolute;
  top: -7px;
  left: -7px;
  width: 100%;
  height: 100%;
  content: '';
  border: 2px solid #000;
}

@media screen and (max-width: 750px) {
    #contWrap .ttle-h3{
    font-size: 17px;
    }
}


.ttl4{
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}
.ttl5{
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    padding-top: 30px;
}
.textbox{
    font-size: 16px;
    text-align: left;
    line-height: 1.8;
}
.textbox a{
    color: #006cab;
}
@media screen and (max-width: 750px) {
    .wrap{
        width: 94.66666666666667%;
        padding-top: 50px;
        margin: 0 auto;
        text-align: center;
        padding-bottom: 50px;
    }
    .wrap_wrap{
        margin-top: 50px;
    }
    .ttl3{
        font-size: 20px;
        line-height: 1.4;
        padding-bottom: 10px;
        border-bottom: #006cab solid 4px;
    }
    .ttl3 span{
        font-size: 16px;
        font-weight: 300;
    }
    .ttl3::before,.ttl3::after{
        content: none;
    }
    .ttl4{
        font-size: 20px;
    }
}
@media screen and (max-width: 320px){
    .ttl3 {
        font-size: 18px;
    }
    .ttl3 span{
        font-size: 14px;
    }
}

/*--flex---*/
.flexWrap{
    display: flex;
    justify-content: space-between;
}
.flexWrap-right{
    display: flex;
    flex-direction : row-reverse;
    justify-content: space-between;
}
@media screen and (max-width: 750px){
    .flexWrap,.flexWrap-right{
        display: block;
    }
}

/*--テキスト---*/
.center{text-align: center;}
.bold{font-weight: 700;}
.white{color: #FFF;}
.red{color: #ed1e83;}
.fs18{font-size: 18px;}
.fs20{font-size: 20px;}
.fs28{font-size: 28px;}
.ma50{margin: 50px auto;} 
.mat50{margin-top: 50px;} 
.mat20{margin-top: 20px;} 
.mal20{margin-left: 20px;}
.pab50{padding-bottom: 50px;}
.mab30{margin-bottom: 30px;}
.mab10{margin-bottom: 10px;} 
.mab15{margin-bottom: 15px;} 
@media screen and (max-width: 750px) {
    .fs18{font-size: 14px;}
    .fs20{font-size: 14px;}
    .center{text-align: center;margin-left: 2%;margin-right: 2%;}
}



/*メニューボタン
-----------------------------------*/
#menuBtn ul{
    width: 98%;
    margin: 30px auto 0;
    display: flex;
    justify-content: space-between;
}
#menuBtn li{
    width: 33%;
}
#menuBtn li a:hover{
    opacity: 0.5;
}
@media screen and (max-width: 750px) {
    #menuBtn ul{
        width:98%;
        margin: 10px auto 5px auto;
        flex-wrap: wrap;
    }
    #menuBtn li{
        width: 49%;
    }
}


/*メニューボタン2
-----------------------------------*/

.menuBtn02 {
    margin-top: 30px;
}

.menuBtn02 ul{
    width: 100%;
    margin: 30px auto 15px;
    display: flex;
    justify-content: space-between;
}
.menuBtn02 li{
    width: 49%;
}
.menuBtn02 li a:hover{
    opacity: 0.5;
}
@media screen and (max-width: 750px) {
    .menuBtn02 ul{
        width:98%;
        margin: 10px auto 5px auto;
        flex-wrap: wrap;
    }
   .menuBtn02 li{
        width: 49%;
    }
}

/*コロナバナー
---------------------------------------*/
.center01{
     text-align:center;
     margin: 00 30px;
}



/*mv
---------------------------------------*/
#mv{
    width: 100%;
}

/*オリジナルデザインもお任せください！
---------------------------------------*/
#design-link ul{
    margin: 0 auto;
    padding: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
}  
#design-link li{
    width: 48.82882882882883%;
}
#design-link img{
    width: 100%;
}
@media screen and (max-width: 750px) {
    #design-link .wrap{
        padding-bottom: 60px;
    }
    #design-link .wrap_wrap{
        padding: 0;
    }
    #design-link ul{
        display: block;
    }
    #design-link li{
    width: 100%;
}
}


/* recoBox
/* ------------------------------------------------------------------------ */

.recoBox {
  margin: 0 auto;
  padding: 0 0 10px 0;
}

.recoBox  p{
  margin: 0 auto;
  padding: 0 20px;
}

.recoBox .title span {
  font-size: 18px;
  display: block;
  line-height: 2;
  margin-bottom: 5px;
}

.recoBox .title span br{
	display: none;
}

.recoBox .title .br1 {
  display: none;
}

.recoBox .inner {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  max-width: 1130px;
  padding: 0 20px 0 45px;
  margin: 50px auto 20px;
}

.recoBox .inner .re2box {
  background: #f3f3f3;
  background: #fff;
  max-width: 530px;
  width: 48%;
  padding: 0 0 30px;
  margin: 0 20px 0 0;
  border: #003e94 2px solid;
  border-radius: 10px;
}

.recoBox .inner .re2box .title2 {
  font-size: 23px;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #ffff00;
  padding:30px 10px;
  color: #003e94;
  text-align:center;
  border-radius: 10px;
}


.recoBox .inner .re2box .catch {
  margin: 20px auto 0;
  width: 440px;
}

.recoBox .inner .re2box .catch img {
  width: 100%;
  margin: 0 0 15px 0;
}

.recoBox .inner .re2box .txt {
  margin: 15px 0 0 0;
  text-align: left;
  line-height: 2;
  padding: 0 20px;
}

.recoBox .inner .re2box .txt span {
  font-size: 12px;
  display: block;
  margin: 2px 0 0 0;
  text-indent: -1em;
  padding: 0 0 0 1em;
}

@media (max-width:1050px) {
	.recoBox .title {
		max-width: 640px;
		padding-bottom: 15px;
	}

	.recoBox .title span{
		line-height: 1.6;
	}

	.recoBox .title span br{
		display: block;
	}

  .recoBox .title .br1 {
    display: block;
  }
  .recoBox .inner .re3box .catch {
    width: 80%;
  }
}

@media (max-width:767px) {
  .recoBox {
    padding: 0;
  }
  .recoBox .title {
    font-size: 25px;
    letter-spacing: 1px;
    min-height: auto;
    max-width: 400px;
    width: 93.75%;
    margin: 0 auto;
    padding: 30px 0 0 0;
    position: relative;
    background: none;
    line-height: 1.3;
  }
  .recoBox .title span {
    font-size: 12px;
    line-height: 1.4;
  }
  .recoBox .title .br1 {
    display: none;
  }
  .recoBox .inner {
    display: block;
    padding: 0 15px;
  }
  .recoBox .inner .re2box {
    max-width: 100%;
    width: 100%;
    padding: 20px 0 15px;
    margin: 15px 20px 0 0;
  }
  .recoBox .inner .re2box .title2 {
    font-size: 17px;
      font-weight: bold;
  }
  .recoBox .inner .re2box .catch {
    margin: 10px auto 0;
    width: 60%;
  }
  .recoBox .inner .re2box .txt {
    margin: 15px 0 0 0;
    line-height: 1.7;
    padding: 0 20px;
  }
  .recoBox .inner .re2box .txt span {
    font-size: 12px;
  }
}
/* 商品リンクボタン*/
.button-2 {
  display: inline-block;
  padding:1em 4em;
  margin-top: 2em;
  font-size: 17px;
  color: #FFF;
  text-decoration: none;
  user-select: none;
  border: 1px #00b5ad solid;
  border-radius: 20px;
  transition: 0.4s ease;
  text-align:center;
  background: #00a397;
}

.button-2:hover {
  color: #fff;
  background: #ff85ba;
}
/*テキストボックス色なし
---------------------------------------*/

.box1 {
    padding: 0 1em 2em; 
    margin: 0;
    font-weight: bold;
    font-size: 17px;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #002558;
    background: #FFF;
    text-align: center;
}


.box1_S {
    padding: 0 1em 2em; 
    margin: 0;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #000;
    background: #FFF;
    text-align: left;
}

.box1 h4 {
	background: linear-gradient(transparent 60%, #ffffa8 0%);
	padding: 0 0 10px;
	margin:  30px;
	display: inline-block;
	color: #002558;
	font-weight: bold;
	font-size: 19px;
}
.box1 p {
    margin-bottom: 15px; 
    padding-left: 50px;
}
@media screen and (max-width: 750px) {
    .box1{
        margin: 2em 2%;
    }
    .box1 h4{
        margin: 30px auto;
        text-align: center;
    }
    .box1 p {
    margin: 0; 
    padding-left: 0px;
   }
}

/*テキストボックス色付き
---------------------------------------*/

.box2 {
    padding: 2em 1em 2em; 
    margin: 2em 0;
    font-weight: bold;
    font-size: 17px;
    line-height: 1.7;
    letter-spacing: 0.1em;
    color: #002558;
    background: #f9feff;
    text-align: center;
}
.box2 h4 {
	background: linear-gradient(transparent 60%, #ffffa8 0%);
	padding: 0 0 10px;
	margin:  30px;
	display: inline-block;
	color: #003e94;
	font-weight: bold;
	font-size: 19px;
}
.box2 p {
    margin-bottom: 15px; 
    padding-left: 50px;
}
@media screen and (max-width: 750px) {
    .box2{
        margin: 2em 2%;
    }
    .box2 h4{
        margin: 30px auto;
        text-align: center;
    }
    .box2 p {
    margin: 0; 
    padding-left: 0px;
   }
}
/*表示面デザイン
------------------------------------*/
#designArea{
    background-color: #e2f0fa;
    padding: 20px 0;
    margin-top: 100px;
}
#designArea h3{
    font-size: 42px;
    color: #003E98;
    font-weight: 600;
    position: relative;
    margin: 40px auto 40px 7.75%;
}
#designArea h3 span{
    font-size:20px;
}
#designArea > img{
    margin-top: -160px;
    padding: 0 7.75%;
}
#designArea .designArea-h4{
    color: #003E98;
    background-color: transparent;
    font-size: 24px;
    margin-left: 20px;
    padding: 0;
    font-weight: 600;
}
.designArea-box{
    background-color: #FFF;
    margin: 20px 2%;
    padding: 20px 2%;
}
.boxTop{
    border-bottom: solid 3px #e2f0fa;
    padding-bottom: 10px;
}
.boxTop p{
    margin-bottom: 10px;
    margin-left: 20px;
}
.boxBottom{
    margin: 20px;
}
.boxBottom-text{
        width: 45%;
 }
.boxBottom-img{
        width: 54%;
 }

@media screen and (max-width: 750px) {
    #designArea h3{
        font-size: 24px;
        margin: 0 auto;
        text-align: center;
    }
    #designArea h3 span{
        font-size:16px;
    }
    #designArea > img{
        margin-top: 0;
    }
    #designArea .designArea-h4{
        font-size: 18px;
        margin:2%;
    }
    .boxTop p{
        margin:2%;
    }
    .boxBottom{
        margin: 2%;
    }
    .boxBottom-text{
        width: 100%;
    }
    .boxBottom-img{
        width: 100%;
     }
}
@media screen and (max-width: 320px){
    #designArea h3{
        font-size: 20px;
    }
    #designArea h3 span{
        font-size:14px;
    }
}
.designAreaBtn{/*ボタン*/
    margin-top: 20px;
}
.designAreaBtn a{
    display: inline-block;
    text-decoration: none;
    background: #003E98;
    color: #FFF;
    border-radius: 3px;
    padding: 10px 40px;
    line-height: 1.4; 
}
.designAreaBtn a:hover{
    opacity: 0.7;
}
@media screen and (max-width: 750px) {
    .designAreaBtn{
        text-align: center;
    }
}
/*contactA お問合せエリア
---------------------------------------*/
.contactA-area{
    width: 100%;
    background-color:  #E2F0FA;
    padding: 0 0 44px 0;
}
.contactA-area>p:nth-child(1){
    font-size: 20px;
    line-height: 1.7;
    color: #003E98;
    margin: 30px 0 4px 0;
    text-align: center;
    font-weight: 600;
}
.contactA-area>p:nth-child(2){
    font-size: 16px;
    text-align: center;
    font-weight: 600;
    margin-bottom: 30px;
}
.contactA-wrap{
    width: 80%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.contactA-box{
    width: 48.86%;
    background-color: #fff;
    border-radius: 6px;
    padding: 10px 0 3px;
    text-align: center;
}
#designArea .contactA-h4{
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px;
    background-color: transparent;
    color: #333;
    margin-top: 0;
    padding-top: 12px;
}
.contactA-tel{
    color: #ff6c00;
    text-decoration: none;
    font-size: 38px;
    font-weight: 700;
    line-height: 0.8;
}
.contactA-box-p{
    color: #333;
    margin: 20px 0;
    font-size: 14px;
}
.contactA-btn{/*ボタン*/
    display: inline-block;
    background-color: #ff6c00;
    border-radius: 6px;
    text-decoration: none;
    color: #fff;
    font-weight: 700;
    font-size: 20px;
    padding: 15px 11% 12px 11%;
    border-bottom: solid 4px #a14400;
    margin-bottom: 20px;
    position: relative;
}
.contactA-btn:hover,.contactA-tel:hover{
    text-decoration: none;
    opacity: 0.5;
}
@media screen and (max-width: 750px) {
    .contactA-area>p{
        font-size: 16px;
    }
    .contactA-wrap{
        width: 100%;
        display: block;
    }
    .contactA-box{
        width: 95%;
        margin: 0 auto;
        padding: 20px 0 8px;
    }
    .contactA-box:nth-child(1){
        margin-bottom: 20px;
    }
    .contactA-area>p:nth-child(1){
        font-size: 16px;
    }
}
/*比較テーブル
---------------------------------------*/
.itiran {
    width: 98%;
    margin: 20px auto 0;
}

table {
  border-collapse: collapse;
  border: solid 2px #002558;/*表全体を線で囲う*/
}
table th, table td {
  border: dashed 1px #002558;/**/
  /*破線 1px オレンジ*/
}

.itiran td {
    text-align: center;
    padding: 20px 10px;
    width: 215px;
}

.itiran2 {
    text-align: left !important;
    vertical-align: top;
    line-height: 150%;
    padding: 15px !important;
}

.check {
    background: url(../images/check1.png) right bottom no-repeat;
}

.point {
    font-weight: bold;
    color: #C30;
    font-size: 1.2em;
}

.nagare {
    background: url(../images/foot.png) no-repeat, #f8eba2;
    padding: 260px 90px 0 90px;
    line-height: 160%;
    height: 450px;
    margin: 10px 0;
}


/*レスポンシブ 2列
---------------------------------------*/

*, *:before, *:after {
	box-sizing: border-box;
}
.col_2{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
    margin: 10px auto 0;
}
.col_2 > div{
	width: 50%;
	padding: 10px;
}
@media screen and (max-width: 960px) {
	.col_2 > div{
		width: 100%;
	}
}


/*リンクボタン レスポンシブ 2列
---------------------------------------*/

*, *:before, *:after {
	box-sizing: border-box;
}
.col_2002{
	width: 75%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
    margin: 0 auto 50px;
}
.col_2002 > div{
	width: 50%;
	padding: 10px;
}
@media screen and (max-width: 960px) {
	.col_2002 > div{
		width: 100%;
	}
}


/*レスポンシブ 3列
---------------------------------------*/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_3{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_3 > div{
	width: 33.33333%;
	padding: 10px;

}
.col_3 > div p{
    font-size: 14px;
	padding: 8px 0 14px 45px;
    color: #ff375f;
    font-weight: bold;
}
@media screen and (max-width: 960px) {
	.col_3 > div{
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.col_3 > div{
		width: 100%;
	}
}

/*商品タイトル
---------------------------------------*/

h4 {
  padding: 0.7em 0;
  background-color: #003e94;
  color: #FFF; 
    font-weight: 700;
    font-size: 17px;
	text-align: center;
}

/* 商品リンクボタン*/
.button-2 {
  display: inline-block;
  padding:1em 4em;
  margin-top: 2em;
  font-size: 17px;
  color: #FFF;
  text-decoration: none;
  user-select: none;
  border: 1px #00b5ad solid;
  border-radius: 20px;
  transition: 0.4s ease;
  text-align:center;
  background: #00a397;
}

.button-2:hover {
  color: #fff;
  background: #ff85ba;
}

/*サイズテーブル
---------------------------------------*/
div.col_3 table{
  margin:0 auto 15px;
	width: 100%;
  border:1px solid #003e94;
}

div.col_3 table th{
		width: 42%;
}

div.col_3 table td,th{
  border:1px solid #003e94;
  padding:13px;
}
div.col_3 table th{
  color:#003e94;
  background: #ffff00;
}

/*メニューへ戻る
---------------------------------------*/

.goMenu{
    text-align: right;
    font-size: 16px;
    color: #003E98;
    font-weight: 700;
}
.goMenu::after{
    content: " ";
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 5px 8.7px 5px;
    border-color: transparent transparent #003d98 transparent;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
    margin: 10px 0 30px 0;
}
@media screen and (max-width: 750px) {
    .goMenu{
        margin: 16px 2% 0 0;
    }
}


/*アルミリンクボタン */

a.btn--yellow {
color: #FFF;
    font-weight: bold;
    text-align: center;
  background-color: #ed1e83;
}

a.btn--yellow:hover {
  color: #000;
  background: #fff20a;
}

a.btn--yellow.btn--cubic {
  border-bottom: 5px solid #c30643;
}

a.btn--yellow.btn--cubic:hover {
  margin-top: 3px;
  border-bottom: 2px solid #c30643;
}

a.btn-c {
  font-size: 20px;
  position: relative;
  padding: 2rem 5rem 2rem;
  border-radius: 100vh;
}

a.btn-c i.fa {
  margin-right: 1rem;
}

a.btn-c:before {
  font-size: 1.4rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
}


@media screen and (max-width: 750px) {
    a.btn-c{
    font-size: 15px;
  padding: 0 5rem 2rem;
    }
a.btn-c:before {
    font-size: 15px;
  line-height: 1;
  position: absolute;
  top: calc(90% - .8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
}
}

/*アイテムリスト
------------------------------------*/
.itemList{
    background-color: #E2F0FA;
    text-align: center;
    padding: 10px 0;
}
.itemList img{
    position: relative;
    width: 100%;
}
.itemList p{
  margin: 15px 0;
  font-size: 14px;
}
.itemList li{
    width: 150px;
}
@media screen and (max-width: 750px) {
    .itemList ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 10px 2%;
    }
    .itemList li{
        background-color: #003E98;
        width: 49%;
        margin-bottom: 4px;
    }
    .itemList li > a{
        font-size: 14px;
        color: #FFF;
        padding: 7px 2%;
    }
}