
@charset "utf-8";

/***************************************

base

***************************************/


html {
	font-size: 62.5%!important;
	height: 100%;
	position: relative;
	-webkit-overflow-scrolling: touch;/*スマホのスクロールをスムーズにする*/
	font-family:游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;	
	color: #666;
	background: #f1f1f1;
	margin: 0;
	padding: 0;
	letter-spacing: 0.1rem;
	word-break: break-word;/*自動改行*/
	
	font-family: "Noto Sans JP";
}


a {
	text-decoration: none;
	color: #333;
	outline: none;
}

a:hover {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	opacity: 0.5;
	filter: alpha(opacity=50);
	webkit-transition: 0.6s;
	transition: 0.6s;
}


.clearfix:after {/*親要素に display: flow-root Chrome と Firefox */
  content: "";
  clear: both;
  display: block;
}


ul{
	
	
display:-webkit-box;
display:-moz-box;
display:-ms-box;
display:-webkit-flexbox;
display:-moz-flexbox;
display:-ms-flexbox;
display:-webkit-flex;
display:-moz-flex;
display:-ms-flex;
display:flex;
-webkit-box-lines:multiple;
-moz-box-lines:multiple;
-webkit-flex-wrap:wrap;
-moz-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
}






/***************************************

menu

***************************************/





ul.menu{
	
	
	
	width: 100%;
	font-size: 1.0rem;
	line-height: 2rem;
	color: #000;
	overflow: hidden;
	margin: 1% auto 0;
	
	
		
}
	
ul.menu li.li20{
	width: 20%;
}

ul.menu li.li65{
	width: 60%;
}

ul.menu li{
	width: 3.75%;
	float: left;
	
}	
	
.logo{
	
	width: 40%;
	padding-left: 5%;
}


	
.sns{
	
	font-size: 2rem
}


@media screen  and (max-width:1200px){/*1200以下でレスポンシブ表示へ*/
	
	
	
	


ul.menu{
	
	position: fixed;
	bottom:0%;
	left:0%;
	
	width: 100%;
	font-size: 1.0rem;
	line-height: 2rem;
	color: #000;
	overflow: hidden;
	margin:  auto 0;
	
	z-index: 10000;
	background: #fff;
	
	padding: 2% 0;
	
	
		
}
	
ul.menu li.li20{
	width: 30%;
}

ul.menu li.li65{
	width: 30%;
}

ul.menu li{
	width: 10%;
	float: left;
	
}	
	
.logo{
	
	width: 100%;
	padding-left: 5%;
}


	

	
	
}	



/*---------トグル--------*/	

	.visible, .invisible {
                opacity: 0.0;
                transition: opacity 0.5s ease;
            }
            .visible {
                opacity: 1.0;
            }
            
            .visible.translateY,.invisible.translateY {
                transform: translateY(100px);
                transition: all 0.5s cubic-bezier(0.165, 0.840, 0.440, 1.000);
            }
            .visible.translateY {
                transform: translateY(0);
            }
            .visible.translateToLeft,.invisible.translateToLeft {
                transform: translateX(100px);
                transition: all 0.5s cubic-bezier(0.165, 0.840, 0.440, 1.000);
            }
            .visible.translateToLeft {
                transform: translateX(0);
            }
            .visible.translateToRight,.invisible.translateToRight {
                transform: translateX(-100px);
                transition: all 0.5s cubic-bezier(0.165, 0.840, 0.440, 1.000);
            }
            .visible.translateToRight {
                transform: translateX(0);
            }
            .visible.translateScaleUp,.invisible.translateScaleUp {
                transform: scale(.5);
                transition: all 0.5s cubic-bezier(0.165, 0.840, 0.440, 1.000);
            }
            .visible.translateScaleUp {
                transform: scale(1);
            }
            .visible.translateScaleDown,.invisible.translateScaleDown {
                transform: scale(1.4);
                transition: all 0.5s cubic-bezier(0.165, 0.840, 0.440, 1.000);
            }
            .visible.translateScaleDown {
                transform: scale(1);
            }
            .visible.translateRotate,.invisible.translateRotate {
                transform: rotate(360deg);
                transition: all 0.5s cubic-bezier(0.165, 0.840, 0.440, 1.000);
            }
            .visible.translateRotate {
                transform: rotate(0deg);
            }





/*---------コンテンツ--------*/	
	

.phase_00{
	width: 100%;
	margin: 10%　auto;
	padding: 1% 0;
	
	letter-spacing: 0.3rem;	
	
	
	}

	
.topimg{
	background: #dedede;
	text-align: center;
}




h1{

	margin: 5% auto;
	text-align: center;
	

}	
	

h3{
	width: 80%;
	margin: 10% auto 5%;
	text-align: center;
	font-size: 3rem;

}	
	



p.title_Disp{
width: 40%;	
font-size: 1.6rem;
line-height: 3.2rem;
letter-spacing: 0.3rem;	
text-align: left;
margin: 5% auto 3%;
font-weight: 500;

	
}


.phase_01{
	width: 100%;
	margin: 10%　auto;
	padding: 1% 0;
	
	letter-spacing: 0.3rem;	
	
	
	}


.sp_only{display: none;}








.point_Disp{
	
position: fixed;
right: 0;
bottom: 5%;	
	
background:#edbcd6;
padding: 2% 0;	
	
width: 15%;	
margin: 0 auto;
	
color:#fff;	
	
z-index: 10000;	
	
/*デフォルトで非表示にする*/
  opacity: 0;
  visibility: hidden;	


}

/*このクラスが付与されると表示する*/
.active{
  opacity: 1;
  transition: .7s;	
  visibility: visible;
}


p.point_Disp_m{
	
width: 90%;	
		
font-size: 1.3rem;
line-height: 2rem;	
text-align: center;
margin: 2% auto;	
font-weight: 400;	
	}	


p.coupon{
	
border-radius:10px;
background: #fff;
	
width: 80%;	
margin: 0 auto;	
	
color:#333;	
font-size: 1.3rem;
padding: 1%;
text-align: center;	
font-weight: 900;	
}





.info_Disp{
	
background: #666;
padding: 2% 0;	
	
width: 40%;	
margin: 2% auto;
	
color:#fff;	


}


p.info_Disp_m{
	
width: 90%;	
		
font-size: 1.4rem;
line-height: 3rem;	
text-align: center;
margin: 2% auto;	
font-weight: 400;	
	}	




@media screen  and (max-width:1200px){/*1200以下でレスポンシブ表示へ*/
	
.sidenavi{
	


	
}

.sidenavi ul{
display: none;
	
}
	
}










@media screen  and (max-width:1200px){/*1200以下でレスポンシブ表示へ*/
	
	

.sp_only{display: inline-block;}	
	
.pc_only{display: none;}	
	
	
	
.item{
	width: 100%;
	margin: 5% auto 0;
}





.sub_img{
	
	
    display: block;
	
	margin: 0 auto;
	width: 100%
}


table{
	
  border-collapse: collapse;
  border-spacing: 0;
	
}

table img{
	display: block;
	width: 100%;
}


	
	


/*---------コンテンツ--------*/	
	
	


	


p.title_Disp{
width: 90%;	
font-size: 1.7rem;
line-height: 2.3rem;
letter-spacing: 0.1rem;	
text-align: left;
margin: 5% auto 3%;
font-weight: 600;

	
}



	
	
	
.point_Disp{
	
position: fixed;
right: 0;
top: 0;	
	
background:#edbcd6;

	
width: 100%;	
	height: 5%;
margin: 0 auto;
	
color:#fff;	
	
z-index: 10000;	
	
/*デフォルトで非表示にする*/
  opacity: 0;
  visibility: hidden;	


}

/*このクラスが付与されると表示する*/
.active{
  opacity: 1;
  transition: .7s;	
  visibility: visible;
}	



p.point_Disp_m{
	
width: 90%;	
		
font-size: 1.1rem;
line-height: 1.5rem;	
text-align: center;
margin: 1% auto;	
font-weight: 400;	
	}	


p.coupon{
	
border-radius:10px;
background: #fff;
	
width: 40%;	
margin: 0 auto;	
	
color:#333;	
font-size: 1.1rem;
padding: 1%;
text-align: center;	
font-weight: 900;	
}




	

}






/****************************************

コンテンツメイン 2/11

****************************************/

	
	
.phase_0211{
	width: 100%;
	margin: 10% auto;
}





.sub_title{
	display:flex;
	width: 50%;
	margin: 5% auto;
	
}


.sub_title_box{
	width: 30%;
	font-size: 1.4rem;	
	text-align: center;
	margin: 0 auto;
	line-height: 3rem;	
}

.sub_title_box_center{
	width: 10%;
	
}

.sub_title_box_center p{
font-size: 3rem;
font-weight: 800;
text-align: center;	
position: relative;
top: 40%;
-webkit-transform: translateY(-40%); /* Safari用 */
transform: translateY(-40%);
}



.sub_title_box img{
	width: 100%;
	
}



.sub_disp{
	
	width: 60%;
	font-size: 1.6rem;
	text-align: left;
	margin: 3% auto;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}



.code_disp{
	
	width: 40%;
	margin: 1% auto 0;
	font-size: 1.1rem;
	text-align: center;
	line-height: 1.5rem;
	letter-spacing: 0.2rem;
	font-weight: 100;
}


.main_img{
	
	width: 80%;
	margin: 0 auto;
	text-align: center;
}


.main_img img{
	
	
	
}



.item_cont{
	display:flex;
	width: 80%;
	margin: 2% auto 10%;
	
}


.item_box_left,
.item_box_right{
	width: 45%;
	font-size: 1.5rem;
	text-align: center;
	
}

.item_box_center{
	width: 10%;
	font-size: 6rem;
	font-weight: 800;
	text-align: center;
	
	
}

.item_box_center p{
position: relative;
top: 40%;
-webkit-transform: translateY(-40%); /* Safari用 */
transform: translateY(-40%);
}



.item_box_left_box,
.item_box_right_box{
	display:flex;
	flex-wrap:wrap;
	width: 100%;
	margin: 0 auto;
	
}



.item_box_left_box_s{
	width: 50%;
	padding-bottom: 5%;
	
	
}





.item_box_left_box_s img{
	width: 95%;
	margin: 0 auto;
	text-align: center;
}


.item_name{
	font-size: 1.2rem;
	font-weight: none;
	text-align: center;
	padding: 1% 0;
	letter-spacing: 0.2rem;
}


.yoyaku{
	border: 1px #666 solid;
	padding: 0 .5%;
	font-size: 1.1rem;
	margin-right: 1%;
	color:#666;
	
}



.button03 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 2% auto 2%;
  padding: 1em 2em;
  width: 30%;
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
  border: 2px solid #000;
}

.button03 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #000;
  border-right: 3px solid #000;
  transform: rotate(45deg);
}

.button03 a:hover {
  color: #fff;
  text-decoration: none;
  background-color: #333;
}

.button03 a:hover::after {
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
}


@media screen  and (max-width:1200px){/*1200以下でレスポンシブ表示へ*/
	
	



	
}

@media screen  and (max-width:1200px){/*1200以下でレスポンシブ表示へ*/
	
	

	
	
div.topimg h1 img{
		width: 100%;
	}	
	
	
	
	
.phase_0211{
	width: 100%;
	margin: 10% auto;
}





.sub_title{
	display:flex;
	width: 100%;
	margin: 5% auto;
	
}


.sub_title_box{
	width: 30%;
	font-size: 1.4rem;	
	text-align: center;
	margin: 0 auto;
	line-height: 3rem;	
}

.sub_title_box_center{
	width: 10%;
	
}

.sub_title_box_center p{
font-size: 3rem;
font-weight: 800;
text-align: center;	
position: relative;
top: 40%;
-webkit-transform: translateY(-40%); /* Safari用 */
transform: translateY(-40%);
}



.sub_title_box img{
	width: 100%;
	
}



.sub_disp{
	
	width: 90%;
	font-size: 1.5rem;
	text-align: left;
	margin: 3% auto;
	line-height: 2.5rem;
	letter-spacing: 0.2rem;
}

	
img.codeimg{
	width: 100%
	}	


.code_disp{
	
	width: 90%;
	margin: 1% auto 0;
	font-size: 0.8rem;
	text-align: center;
	line-height: 1.5rem;
	letter-spacing: 0.1rem;
	font-weight: 100;
}


.main_img{
	
	width: 100%;
	margin: 0 auto;
	text-align: center;
}


h2 img{
	
	width: 100%;
	
}


h3{
	width: 95%;
	margin: 10% auto 5%;
	text-align: center;
	font-size: 1.7rem;
	letter-spacing: 0.1rem;
}	


.item_cont{
	display: inline;
	width: 80%;
	margin: 2% auto 10%;
	
}


.item_box_left,
.item_box_right{
	width: 100%;
	font-size: 1.5rem;
	text-align: center;
	
}

.item_box_center{
	width: 100%;
	font-size: 6rem;
	font-weight: 800;
	text-align: center;
	
	
}

.item_box_center p{
padding-top: 15%;
}



.item_box_left_box,
.item_box_right_box{
	display:flex;
	flex-wrap:wrap;
	width: 100%;
	margin: 0 auto;
	
}



.item_box_left_box_s{
	width: 50%;
	padding-bottom: 5%;
	
	
}





.item_box_left_box_s img{
	width: 95%;
	margin: 0 auto;
	text-align: center;
}


.item_name{
	font-size: 1.2rem;
	font-weight: none;
	text-align: center;
	padding: 1% 0;
	letter-spacing: 0.2rem;
}


.yoyaku{
	border: 1px #666 solid;
	padding: 0 .5%;
	font-size: 1.1rem;
	margin-right: 1%;
	color:#666;
	
}



.button03 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 2% auto 2%;
  padding: 1em 2em;
  width: 70%;
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
  border: 2px solid #000;
}

.button03 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #000;
  border-right: 3px solid #000;
  transform: rotate(45deg);
}

.button03 a:hover {
  color: #fff;
  text-decoration: none;
  background-color: #333;
}

.button03 a:hover::after {
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
}	
	

	
}



/***************************************

fotter

***************************************/





footer{
	clear:both;
	width: 100%;
	text-align:center;
	margin:3% auto 2%;
}

footer > p{
	font-size: .7rem;
	

}


	
	
/********************************-*/
	
@media screen and (min-width:480px) and (max-width:600px){/**480px〜：SP横 */
	
 
}

@media screen and (min-width:600px) and (max-width:960px){/**600px〜タブレット　768px〜sp縦*/
	
 
}	

