@charset "shift_jis";

.maindesign{
font-size: 16px;
padding-bottom: 20px 
}
/*h1特集タイトル*/
.maindesign h1{
position: relative;
}
/*description*/
.maindesign .description{
font-size:1em;
background: #cfcfcf;
text-align:left;
line-height: 1.6;
padding: 10px 20px;
text-align: justify;
margin: 0;
margin-bottom: 30px;

}
@media screen and (max-width:767px){
.maindesign .description{
font-size:0.8em;

}
}


/*h2 見出し 共通ボーダー*/
.maindesign h2.headingMiddle {
position: relative;
padding-bottom: 0.8em;
border-bottom: 3px solid #DDD;
font-size: 1.25em;
font-weight: bold;
margin:40px 0 30px 0;
text-align: left
}
.maindesign h2.headingMiddle::after {
position: absolute;
content: " ";
border-bottom: solid 3px #E5002D;
bottom: -3px;
width: 6.5%;
display: block;
}
@media screen and (max-width:767px){
.maindesign h2.headingMiddle{
margin: 30px 0 20px 0
}
.maindesign h2.headingMiddle::after {
width: 10.5%;
}
}
/*h2見出しコメント*/

.maindesign h2.ander_text{
margin-bottom:1em;
}
.maindesign .h2comment{
margin-bottom: 30px;
overflow-wrap: break-word;
word-wrap: break-word;
}

/* tableタグ　縦方向中央初期化*/
.maindesign th{ vertical-align: middle;}
.maindesign td{ vertical-align: middle;}

/* ボタンリンク */
/*角丸基本*/
.maindesign a.btnRadius01{
border-radius: 40px;
font-weight: bold;
color: #000;
/*padding: 15px;*/
display: flex;
border: 1px solid;
box-sizing: border-box;
text-align: center;
opacity: 1.0;
height: 100%;
align-items: center;
justify-content: center;
}
.maindesign a.btnRadius01:hover{
border-color: #E5002D;
transition: 0.6s;
}

.maindesign a.btnRadius02{
border-radius: 40px;
font-weight: bold;
width: auto;
height: 100%;
margin: 0;
color: #FFF;
display: flex;
cursor: pointer;
text-decoration: none;
box-sizing: border-box;
align-items: center;
justify-content: center;
text-align: center;

}
.maindesign a.btnRadius02:hover{
opacity: 0.75;
transition: 0.6s;
}
/*-- 文字サイズおよびパディング --*/
.maindesign .fsSmall { font-size: 0.8em; padding: 0.8em 1.2em; }
.maindesign .fsMedium { font-size: 1.0em; padding: 0.75em 2.85em; }
.maindesign .fslarge { font-size: 1.62em; padding: 1.05em 1em; }

/*ホバー設定*/
.maindesign a.btnRadius:hover {
transition: 0.6s;
opacity: 0.75
}

/*ボタンカラー*/
.maindesign a.monoBtn{background: #969494;}/*グレー*/
.maindesign a.catchyBtn{background:#EA6D0D;}/*赤*/
.maindesign a.decisionBtn{background:#535353;}/*濃いグレー*/
.maindesign a.orangeBtn{background:#EA6D0D;}/*オレンジ*/

.webfont{ font-family: "Noto Sans JP","ＭＳ Ｐゴシック","MS PGothic",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,Sans-Serif;}

.maindesign a.borderRadiusBtn{
text-decoration: none;
color: #000;
padding: 18px 10px 18px 35px;
display: block;
border: 1px solid;
border-radius: 6px;
text-align: left;
box-sizing: border-box;
}
.maindesign a.borderRadiusBtn:hover {
border-color: #E5002D;
transition: 0.6s;
}
.maindesign a.smallRadiusBtn {
color: #333;
text-decoration: none;
display: block;
box-sizing: border-box;
padding: 10px 8px;
border: 1px solid #CCC;
border-radius: 5px;

}
.maindesign a.smallRadiusBtn:hover {
border-color: #E5002D;
transition: 0.6s;
}


/*pc sp 切り替え*/
@media screen and (min-width:768px){
.pc-only{
display: block;
}

.sp-only{
display: none;
}
}

@media screen and (max-width:767px){
.pc-only{
display: none;
}

.sp-only{
display: block;
}
}

/*ボタンメニュー*/
/*4col⇔2col*/

.botton_box{
display:flex;
flex-wrap: wrap;
margin-top: 10px;
margin-bottom: 10px;
}
.botton_box li{
width:calc(25% - 7.5px);
margin-right:calc(30px / 3);
margin-bottom:10px;
}
.botton_box li:nth-child(4n){
margin-right:0px;
}	

@media screen and (max-width:767px){
.botton_box li{
width:calc(50% - 5px);
margin-right:calc(10px / 1);
margin-bottom:10px;
}
.botton_box li:nth-child(2n){
margin-right:0px;
}
}

/*ボタンメニュー*/
/*3col⇔1col*/
.botton_box2{
display:flex;
flex-wrap: wrap;
margin-top: 10px;
margin-bottom: 10px;
}
.botton_box2 li{
width:calc(33.33% - 7px);
margin-right:calc(21px / 2);
margin-bottom:10px;
text-align: center;
}
.botton_box2 li:nth-child(3n){
margin-right:0px;
}	

@media screen and (max-width:767px){

.botton_box2 li{
width:100%;
margin-right:0px;
margin-bottom:10px;
}
}


/*画像付きリンク*/
.maindesign .links{
display:flex;
flex-wrap: wrap;
margin-top: 10px;
margin-bottom: 30px;
width: 100%;
margin:0 auto;
}
.maindesign .links li{
box-sizing:border-box;
}
.maindesign .links li img{
width:100%;
}		
.maindesign .links li .text-box{
text-align: center;
background-color: #fff;	
}
.maindesign .border li{
box-sizing:border-box;
border:1px solid #ccc;
}	
.maindesign .border_radiuse li{
box-sizing: border-box;
border: 1px solid #ccc;
border-radius: 5px;
overflow: hidden;
}	

.bottom_img{
width: 100%;
display: block;
position: relative;
bottom: 0px;
}

.maindesign li a{
color:#333;
text-decoration: none;
display:block;
}

/*4カラム<-->2カラム*/

.maindesign .links li{
width:calc(25% - 7.5px);
margin-right:calc(30px / 3);
margin-bottom:20px;
position: relative;
} 
.maindesign .links.cols4-2 li:nth-child(4n){
margin-right:0px;
}

.maindesign .links.cols4-2 .text-box{
padding: 0.5em;
line-height: 1.6em;
}

@media screen and (max-width:767px){
/*4カラム<-->2カラム*/
.maindesign .links.cols4-2 li{
width:calc(50% - 5px);
margin-right:calc(10px / 1);
margin-bottom:20px;
}
.maindesign .links.cols4-2 li:nth-child(2n){
margin-right:0px;
}	
.maindesign .links.cols4-2 .text-box{
padding: 0.5em;
line-height: 1.6em;
}
}

/*商品ブロック*/
.maindesign .goods{
display:flex;
flex-wrap: wrap;
margin-top: 10px;
margin-bottom: 30px;
}
.maindesign .goods li{
box-sizing:border-box;
}	
.maindesign .goods li img{
width:100%;
}		

/*4カラム<-->2カラム*/

.maindesign .goods.cols4-2 li{
width:calc(25% - 7.5px);
margin-right:calc(30px / 3);
margin-bottom:20px;
position: relative;
} 
.maindesign .goods.cols4-2 li:nth-child(4n){
margin-right:0px;
}

.maindesign .goods.cols4-2 .text-box{
padding:0.5em;
padding: 0.5em;
line-height: 1.6em;
}

.maindesign .goods.cols4-2 .cover-btn{
position: absolute;
bottom: 0%;
width:100%;
}	

@media screen and (max-width:767px){
/*4カラム<-->2カラム*/
.maindesign .goods.cols4-2 li{
width:calc(50% - 5px);
margin-right:calc(10px / 1);
margin-bottom:20px;
}
.maindesign .goods.cols4-2 li:nth-child(2n){
margin-right:0px;
}	
.maindesign .cols4-2 .cover-btn{
width:100%;
}
}

/*3カラム<-->1カラム*/

.maindesign .cols3-1 li{
width:calc(33.33% - 7px);
margin-right:calc(21px / 2);
margin-bottom:20px;
position: relative;
} 
.maindesign .cols3-1 li:nth-child(3n){
margin-right:0px;
}

.maindesign .cols3-1 .text-box{
padding:0.5em;
padding: 0.5em;
line-height: 1.6em;
}

.maindesign .cols3-1 .cover-btn{
position: absolute;
bottom: 0%;
width:100%;
}	

@media screen and (max-width:767px){
/*3カラム<-->1カラム*/
.maindesign .cols3-1 li{
width:100%;
margin-right: 0;
margin-bottom:20px;
}
.maindesign .cols3-2 .cover-btn{
width:100%;
}
}

/*3カラム<-->2カラム*/
.maindesign .cols3-2 li{
width:calc(49% - 7px);
margin-right:calc(21px / 2);
margin-bottom:20px;
position: relative;
} 

.maindesign .cols3-2 .text-box{
padding:0.5em;
line-height: 1.6em;
}

.maindesign .cols3-2 .cover-btn{
position: absolute;
bottom: 0%;
width:100%;
}	
@media screen and (min-width:768px){
/*3カラム<-->2カラム*/
.maindesign .cols3-2 li:nth-child(2n){
margin-right:0px;
}

.maindesign .banner_list2-1 li:nth-child(2n){
margin-right:0px;
}
	
.maindesign .banner_list3-2 li:nth-child(3n){
margin-right:0px;
}
}
@media screen and (max-width:767px){
/*3カラム<-->2カラム*/
.maindesign .links.cols3-2 li{
width:calc(50% - 5px);
margin-right:calc(10px / 1);
margin-bottom:20px;
}
.maindesign .links.cols3-2 li:nth-child(2n){
margin-right:0px;
}	
.maindesign .links.cols3-2 .text-box{
padding: 0.5em;
line-height: 1.6em;
}
}
/*2カラム<-->1カラム*/

.maindesign .cols2-1st li{
width:calc(50% - 5px);
margin-right:calc(10px / 1);
margin-bottom:20px;
position: relative;
} 
.maindesign .cols2-1st li:nth-child(2n){
margin-right:0px;
}

.maindesign .cols2-1st .text-box{
padding:0.5em;
padding: 0.5em;
line-height: 1.6em;
}

.maindesign .cols2-1st .cover-btn{
position: absolute;
bottom: 0%;
width:100%;
}	

@media screen and (max-width:767px){
/*2カラム<-->1カラム*/
.maindesign .cols2-1st li{
width:100%;
margin-right:0;
margin-bottom:20px;
}
.maindesign .cols2-1st .cover-btn{
width:100%;
}
}

.maindesign .cols2-1ex li{
width:calc(50% - 5px);
margin-right:calc(10px / 1);
margin-bottom:20px;
position: relative;

}
.maindesign .cols2-1ex .pd{
/*購入ボタン退避領域*/
padding-bottom:calc(2em + 6px);	
}

.maindesign .cols2-1ex li:nth-child(2n){
margin-right:0px;
}

.maindesign .cols2-1ex .text-box{
padding:0.5em;
padding: 0.5em;
line-height: 1.6em;
}

.maindesign .cols2-1ex .cover-btn{
position: absolute;
bottom: 0%;
width:100%;
}	

@media screen and (max-width:767px){
/*2カラム<-->1カラム*/
.maindesign .cols2-1ex li{
width:100%;
margin-right:0;
margin-bottom:20px;
}
.maindesign .cols2-1ex .cover-btn{
width:100%;
}
}

/*バナーグループ（2カラム⇔1カラム）*/
.maindesign .banner_list2-1 {
display: flex;
flex-wrap: wrap;
}
.maindesign .banner_list2-1 li {
width:calc(50% - 5px);
margin-right:calc(10px / 1);
margin-bottom:20px;
}
.maindesign .banner_list2-1 a img {
width: 100%;
border:0px;
}
@media screen and (min-width:767px){ 
.maindesign .banner_list2-1 li:nth-child(2n){
margin-right:0px;
}
}

@media screen and (max-width:767px){ 
.maindesign .banner_list2-1 li {
width: 100%;
margin-right:0;
}
} 


/*バナーグループ（3カラム⇔2カラム）*/
.maindesign .banner_list3-2 {
display: flex;
flex-wrap: wrap;
}
.maindesign .banner_list3-2 li {
width:calc(33.33% - 7px);
margin-right:calc(21px / 2);
margin-bottom:20px;
}

.maindesign .banner_list3-2 a img {
width: 100%;
border:0px;
}
@media screen and (min-width:767px){ 
.maindesign .banner_list3-2 li:nth-child(3n){
margin-right:0px;
}
}
@media screen and (max-width:767px){ 
.maindesign .banner_list3-2 li {
width:calc(50% - 5px);
margin-right:calc(10px / 1);
margin-bottom:20px;
}
.maindesign .banner_list3-2 li:nth-child(2n){
margin-right:0px;
}

} 
/*スライドテーブル*/
@media screen and (max-width:767px){
.maindesign .slideTable {
position: relative;
overflow-x: scroll;
-ms-overflow-x: scroll;
-moz-overflow-x: scroll;
-webkit-overflow-x: scroll;
}

.maindesign p.scrolltxt {
color: #E00012;
font-weight: bold;
margin: 10px 0 15px 0;
text-align: left;
}
.maindesign p.scrolltxt span {
/* background-color: #FAE2DE; */
padding: 8px 6px;
font-size: 0.95em;
border: 2px solid #E00012;
box-sizing: border-box;
}

}
/*Youtube*/

.maindesign .youtube{
position:relative;
width:100%;
padding-top:56.2%;
margin-bottom:20px;
}
.maindesign .youtube iframe{
position: absolute;
top: 0;
right: 0;
width: 100% !important;
height: 100% !important;
}
/*--------------------------------*/
#wrap h1 {
	margin-top: 0;
	margin-bottom: 0;
}
/*
div#wrap a:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	background: #fff;
}
*/
	
#main{
	margin:0;
	padding:0;
}
#contents{
	width:100%;
	text-align:left
}
#contents img{
	float:none;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
}
#contents .obj_box{
	padding-bottom:0;
}

#contents .obj_box ul{
	list-style:none;
}

#contents .obj_box  li{
	float:left;
	position:relative;
	margin:0;
	padding:0;
}

#contents .obj_box li div{
	overflow:hidden;
}

/*--- 特徴を比較して選ぶ ---*/
#contents .obj_box2{
	padding-bottom:0;
}

#contents .obj_box2 ul{
	list-style:none;
}

#contents .obj_box2 li{
	float:left;
	position:relative;
	margin:0;
	padding:0;
}

#contents .obj_box2 li a{
	display:block;
	overflow:hidden;
	width:96px;
	height:96px;

}
#contents .obj_box2 li div img{
	width:96px;
	height:192px;
}

#contents .obj_box2 li a:hover img{
	opacity:1.0;
	filter: alpha(opacity=100);
	-ms-filter:alpha( opacity=100);
	background-color: transparent;
	margin-top:-96px;
}

#contents .obj_box2 li a:hover{
	z-index:9999;
}

.mt10 { margin-top:10px;}
.mt20 { margin-top:20px;}
.mt30 { margin-top:30px;}
.mt40 { margin-top:40px;}
.mt50 { margin-top:50px;}
.mb10 { margin-bottom:10px;}
.mb20 { margin-bottom:20px;}
.mr10 { margin-right:10px;}
.mr20 { margin-right:20px;}

