@charset "utf-8";

@import url('//fonts.googleapis.com/css?family=Roboto+Condensed:400,700|Roboto:500');


/*	base font
------------------------------------------*/

@font-face{
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 500;
}
@font-face{
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}

html{ font-size: calc(14px + 3 * ( 100vh - 480px ) / 408 )}
@media(min-height: 850px){ html{ font-size: 16px }}
@media(max-height: 460px){ html{ font-size: 13px }}

body{
	color: #444;
	font-family: "Yu Gothic", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 1rem;
	font-weight: 500;
	line-height:1.7;
	font-feature-settings : "palt";
	-webkit-text-size-adjust: none;
	text-rendering:optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}



/*	link effects
------------------------------------------*/

a:link, a:visited					{color:rgb(42,156,128); text-decoration: none}
a:hover, a:active, a:focus			{color:rgb(42,156,128); text-decoration: none}

a.cl_link							{color:rgb(204,0,51)}

a.ul_green{
	display: inline;
	font-weight: bold;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #ffdcb8));
	background: linear-gradient(transparent 70%, #ffdcb8 0%);
	padding: 0 2px 4px;
}




/*	structure
------------------------------------------*/

html{
	background:#fff;
	overflow:auto;
	overflow-x: hidden;
}
#page{
	position:relative;
	width:100%;
	height:100%;
	min-height:100vh;
	min-width:100%;
	overflow:hidden;
}
#container{
	position:relative;
	width:100%;
	height:100%;
	overflow:hidden;
}



/*	loader
------------------------------------------*/

#loader{
	display:none;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	height:100vh;
	background:#fff;
	opacity:1;
	z-index:10000;
}


/*	hbg
------------------------------------------*/

.drawer-overlay{
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(3,141,120,.97);
	z-index: 100;
}

#hbg{
	position:absolute;
	z-index: 101;
	right:-18.25rem;
	top: 0;
	overflow: hidden;
	width: 18.25rem;
	height: 100%;
	color: #222;
	background-color: #fff;
	overflow-y: scroll;
	transition:.3s;
	z-index:1001;
}
	#hbg.hbg_on{
		right:0;
	}
/* #hbg inner */
.drawer-menu{
	margin: 0;
	padding: 0;
	height:auto !important;
}

#hbg .hbg_info{
	display:table;
	width:90%;
	margin:0 auto .5rem;
}
	#hbg .hbg_info li{
		display:table-cell;
		text-align:center;
		padding:1rem 0 0;
	}
	#hbg .hbg_info li img{
		width:100%;
		max-width:73px;
		height:auto;
	}
	#hbg .hbg_menu-ttl{
		width:100%;
		text-align:center;
		color:rgb(42,156,128);
		font-family:'Roboto Condensed', sans-serif;
		font-size:1.7rem;
		font-weight:700;
		padding-bottom:4px;
		border-bottom:1px solid rgb(42,156,128);
	}
	
	#hbg .drawer-menu > li > a,
	#hbg .drawer-menu ul.dropdown-menu > li > a{
		display:block;
		position:relative;
		padding:13px 10px;
		color:rgb(42,156,128);
		font-size:.9rem;
		font-weight:bold;
		line-height:1.2;
		border-bottom:1px solid rgb(42,156,128);
	}
	#hbg .drawer-menu > li.dropdown{
		background-image:url(/img/i_arrow_down_green.png);
		background-repeat:no-repeat;
		background-position:99% 18px;
	}
	#hbg .drawer-menu > li.dropdown.arrow_up{
		background-image:url(/img/i_arrow_up_green.png);
	}
	#hbg .drawer-menu ul.dropdown-menu{
		display:none;
	}
	#hbg .drawer-menu ul.dropdown-menu > li{
		padding:0 0 0 .8em;
		background:rgba(3,141,120,.15);
	}
	
	.hbg_other{
		position:relative;
		padding:20px 28px 0;
	}
	.hbg_other::after{
		content: "";
		display: table;
		clear: both;
	}
	.hbg_other .hbg_other1{
		width:220px;
		height:33px;
		margin-bottom:10px;
	}
		.hbg_other .hbg_other1 li{
			display:inline-block;
			vertical-align:middle;
		}
	
	.hbg_other .hbg_other2{
		width:220px;
		height:24px;
	}
		.hbg_other .hbg_other2 dt,
		.hbg_other .hbg_other2 dd{
			display:inline-block;
			vertical-align:middle;
		}
		.hbg_other .hbg_other2 dt{
			margin:0 5px 0 0;
		}
		
/* btn */
.hbg_btn{
	display: none;
	position: fixed;
	right:0;
	top: 0;
	width: 2rem;
	padding: 18px .75rem 30px;
	transform: translate3d(0, 0, 0);
	background-color: transparent;
	transition:.3s;
	box-sizing: content-box;
	z-index: 104;
	cursor: pointer;
}
	.hbg_btn.hbg_on{
		right:18.25rem;
		top:-30px;
	}

.hbg_btn-icon{
	position: relative;
	display: block;
	top:47px;
	width: 100%;
	margin-top: 10px;
}
	.hbg_btn-icon,
	.hbg_btn-icon::before,
	.hbg_btn-icon::after{
		width: 100%;
		height: 2px;
		-webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
		transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
		background-color: rgb(42,156,128);
	}
	.hbg_btn-icon::before,
	.hbg_btn-icon::after{
		position: absolute;
		top: -10px;
		left: 0;
		content: '';
	}
	.hbg_btn-icon::after{
		top: 10px;
	}
	
.hbg_btn-label{
	position:absolute;
	display:block;
	left:12px;
	top:92px;
	content:'';
	width:29px;
	height:8px;
}

/* opened */
.hbg_btn.hbg_on .hbg_btn-icon{
	background-color: transparent;
}
	.hbg_btn.hbg_on .hbg_btn-icon::before{
		top:0;
		background-color: #fff;
		transform: rotate(45deg);
	}
	.hbg_btn.hbg_on .hbg_btn-icon::after{
		top:0;
		background-color: #fff;
		transform: rotate(-45deg);
	}
	.hbg_btn.hbg_on .hbg_btn-label{
		display:none;
	}

@media(max-width: 680px){
	.hbg_btn{
		display:block;
	}
}
@media(max-width: 500px){
	.hbg_btn-icon{
		top:22px;
	}
	.hbg_btn-label{
		top:65px;
	}
}

.drawer_bg{
	display:none;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(42,156,128,.97);
	overflow:hidden;
	transition:.3s;
	z-index:1;
}
	.drawer_bg.hbg_on{
		display:block;
	}
#container.hbg_on{
	position:fixed;
}



/*	hd
------------------------------------------*/

#hd{
	position:relative;
	width:100%;
	height:210px;
	z-index:2;
}
	#hd::after{
		position:absolute;
		left:0;
		bottom:0;
		display:block;
		content:"";
		width:100%;
		height:44px;
		background:rgb(42,156,128);
		z-index:-1;
	}
	#hd > .wrap{
		position:relative;
		width:970px;
		height:210px;
		margin:0 auto;
	}
	#hd #logo{
		position:absolute;
		left:0;
		top:59px;
	}
	
	#hd .gm1{
		position:absolute;
		display:table;
		bottom:0;
		width:100%;
		height:44px;
		border-left:1px solid rgba(255,255,255,.3);
	}
	#hd .gm1 *{
		font-size:0;
		line-height:1;
	}
	#hd .gm1 > li{
		display:table-cell;
		height:44px;
		text-align:center;
		border-right:1px solid rgba(255,255,255,.3);
	}
	#hd .gm1 > li > a{
		display:block;
		width:100%;
		height:100%;
		padding:4px;
		transition:.5s;
	}
	#hd .gm1 > li > a:hover{
		background:rgb(25,100,60);
	}

	#hd .gm-sub{
		position:absolute;
		right:0;
		top:70px;
		width:475px;
	}
	
	#hd .gm2{
		position:relative;
		left:0;
		top:0;
		width:250px;
		height:74px;
	}
		#hd .gm2 li{
			display:inline-block;
			margin:0 5px 0 0;
		}
		
	#hd .gm3{
		position:absolute;
		right:0;
		top:39px;
		width:220px;
		height:33px;
	}
		#hd .gm3 li{
			display:inline-block;
			vertical-align:middle;
			background: rgb(42,156,128);
			border-radius: 3px;
		}
		#hd .gm3 li img{
			display:block;
		}
	
	#hd .gm4{
		position:absolute;
		right:0;
		top:0;
		width:220px;
		height:24px;
	}
		#hd .gm4 dt,
		#hd .gm4 dd{
			display:inline-block;
			vertical-align:middle;
			letter-spacing:-1em;
			font-size:0;
		}
		#hd .gm4 dt{
			margin:0 2px 0 0;
		}
	
	.ticker{
		position:absolute;
		left:0;
		top:0;
		width:100%;
		background:rgb(42,156,128);
		padding:6px;
		height:34px;
		overflow:hidden;
		z-index:3;
	}
		.ticker li{
			display:block;
			float:left;
			width:100%;
			height:34px;
			padding:4px 1rem 0;
			text-align:center;
		}
		.ticker *{
			color:#fff !important;
			line-height:1 !important;
		}


/* demo */
	.ticker_demo{
		position:fixed;
		background:rgb(42,156,128);
		z-index:10;
	}
	
	
	#hd .sm{
		display:none;
		position:absolute;
		left:0;
		top:44px;
		width:100%;
		padding:20px 0 22px;
		text-align:center;
		background:rgba(42,156,128,.3);
		border-radius:0 0 8px 8px;
	}
		#hd .sm li{
			display:inline;
		}
		#hd .sm li a{
			position:relative;
			display:inline-block;
			padding:11px 12px 9px;
			width:18%;
			text-align:center;
			line-height:0;
			background:#fff;
			border:2px solid rgb(42,156,128);
			border-radius:10px;
			margin:0 5px 15px;
		}
		#hd .sm li a span{
			display:inline-block;
			font-size:.9rem;
			font-weight:bold;
			line-height:1.3;
			margin:.7rem 0 0;
		}
		#hd .sm li a i{
			position:absolute;
			left:0;
			top:0;
			display:block;
			width:100%;
			padding:4px 6px;
			color:#fff;
			font-size:.85rem;
			background:rgb(42,156,128);
			z-index: 1;
		}
		#hd .sm li img{
			display:block;
			width:100%;
			max-width:146px;
			height:auto;
			margin:0 auto;
		}

@media(max-width: 970px){
	#hd > .wrap{
		width:96%;
	}
}
@media(max-width: 780px){
	#hd .gm1 > li > a{
		padding:7px 4px;
		transition:.5s;
	}
	#hd .gm1 > li > a > img{
		height:30px;
		width:auto;
	}
}
@media(max-width: 680px){
	#hd{
		height:130px;
	}
	#hd::after{
		height:4px;
	}
	#hd #logo{
		top:50px;
	}
	#hd #logo img{
		width:30%;
		min-width:128px;
		height:auto;
	}
	#hd .gm-sub{
		position:absolute;
		right:5%;
		top:50px;
		width:219px;
	}
	#hd .gm1{
		display:none;
	}
	#hd .gm2 li{
		margin:0 3px 0 0;
	}
	#hd .gm2 li img{
		height:63px;
		width:auto;
	}
	#hd .gm3,#hd .gm4{
		display:none;
	}
}
@media(max-width: 500px){
	#hd{
		height:94px;
	}
	#hd #logo{
		left:0;
		top:32px;
		width:100%;
	}
	#hd #logo img{
		width:20%;
		min-width:100px;
	}
	#hd .gm-sub{
		top:34px;
		right:inherit;
		left:35%;
		width:36%;
	}
	#hd .gm-sub img{
		top:30px;
	}
	#hd .gm2 li img{
		height:48px;
	}
	.ticker{
		padding:0 4px;
		height:25px;
	}
	.ticker li{
		padding:6px 0 0;
		height:25px;
	}
	.ticker li,
	.ticker li a{
		font-size:.8rem;
	}
}



/*	content
------------------------------------------*/

.main{
	margin:0 auto 10rem;
}

.inner{
	position:relative;
	width:970px;
	margin:0 auto;
}
@media(max-width: 970px){
	.inner{
		width:90%;
	}
}

.bd_btm_grass{
	padding-bottom:4rem;
	background:url(/img/bd_grass.png) repeat-x left bottom;
}

.inq_insta{
	position:relative;
	display:inline-block;
	padding:.4rem .8rem;
	line-height:1.2;
	background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	border-radius:4px;
	box-shadow:3px 3px 3px rgba(0,0,0,.2);
	transition:.5s;
}
.inq_insta:hover{
	box-shadow:3px 3px 6px rgba(0,0,0,.6);
}
	.inq_insta span{
		position:relative;
		display:inline-block;
		top:-9px;
		color:#fff;
		font-size:.8rem;
	}
@media(max-width: 550px){
	.inq_insta{
		text-align:center;
	}
	.inq_insta span{
		display:block;
		top:inherit;
		margin:6px auto;
	}
}




/*	blist
------------------------------------------*/
.blist{
	margin:0 auto 1rem;
	padding:0 2rem;
	font-size:.8rem;
	line-height:2;
}
.blist ul > li{
	position:relative;
	display:inline-block;
	padding-right:.7rem;
	margin-right:.7rem;
}
.blist ul > li:not(:last-child):after{
	position:absolute;
	content: ">";
	right:-.3rem;
	top:0;
	display:block;
}


/*	footer
------------------------------------------*/
#ft{
	position:relative;
	padding:190px 0 0;
	background-image:url(/img/ft_illust.png);
	background-repeat:repeat-x;
	background-position:center top;
	background-size:auto;
	background-color:rgb(42,156,128);
}
	#ft-mn::after{
		content: "";
		display: table;
		clear: both;
	}
		#ft-mn > ul{
			display:block;
			float:left;
			width:23%;
			margin:0 1% 1rem;
		}
		#ft-mn a{
			color:#fff;
			font-size:.9rem;
			vertical-align:middle;
		}
		#ft-mn li.gp:first-letter{
			font-size:.7rem;
			padding-right:.5em;
		}
	
	#ft-mn_s{
		display:none;
	}
		#ft-mn_s::after{
			content: "";
			display: table;
			clear: both;
		}
		#ft-mn_s li{
			float:left;
			width:49%;
			border: 2px solid #ffa3ba;
			border-radius:6px;
			margin:0 .5% .4rem;
		}
		#ft-mn_s li a{
			display:block;
			padding:1em;
			text-align:center;
			color:#ff567f;
			font-weight:bold;
			line-height:1;

			background:#fff;
			transition:.5s;
		}
		#ft-mn_s li a:hover,
		#ft-mn_s li a:active{
			background:#ffe4eb;
		}
	
	#colophon{
		text-align:center;
		margin:0 0 1rem;
	}
		#colophon p{
			color:#fff;
			line-height:1;
			margin:1rem 0 0;
		}
		#colophon b{
			display:block;
			font-family:'Roboto Condensed', sans-serif;
			font-weight:normal;
			font-size:1.5rem;
			margin:8px 0 0;
		}
	
	#ft-wh{
		position:relative;
		padding:20px 0 24px;
		background:#fff;
	}
		#ft-wh .bn_sns_s{
			position:absolute;
			left:10px;
			top:15px;
		}
			.bn_sns_s div{
				display:inline-block;
				margin:0 2px 0 0;
			}

	#copyright{
		text-align:center;
		font-family:'Roboto Condensed', sans-serif;
	}

@media(max-width: 600px){
	#ft{
		padding:115px 0 0;
		background-image:url(/img/ft_illust_s.png);
		background-size:auto;
	}
	#ft-mn{
		display:none;
	}
	#ft-mn_s{
		top:-2rem;
		display:block;
	}
	#colophon div img{
		width:30%;

		min-width:128px;
		height:auto;
	}
	#ft-wh .bn_sns_s{
		position:relative;
		left:inherit;
		top:inherit;
		text-align:center;
		margin:0 auto 1rem;
	}
}

#i_pagetop{
	display:block;
	position:fixed;
	right:0;
	bottom:0;
	width:6vh;
	height:6vh;
	background:rgb(42,156,128);
	z-index:100;
	cursor:pointer;
	transition: 0.3s;
}
	#i_pagetop a{
		display:block;
		width:100%;
		height:100%;
	}
	#i_pagetop img{
		position:absolute;
		display:block;
		top:0;
		left:0;
		right:0;
		bottom:0;
		margin:auto;
	}
	#i_pagetop:hover{
		background:rgb(25,100,60);
	}

.loading{
	display:none;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(255,255,255,.6);
	border-radius:10px;
}
	.loading img{
		position:absolute;
		display:block;
		left:0;
		top:0;
		right:0;
		bottom:0;
		margin:auto;
	}




/*	ajax
------------------------------------------*/
.modal{
	display:block;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(255,255,255,.97);
	z-index:1000;
}
.overlay{
	display:block;
	position:relative;
	top:0;
	left:0;
	width:100%;
	height:100%;
	margin:0 auto 0;
	z-index:1001;
}
.btn_close{
	display:block;
	position:fixed;
	top:0;
	right:0;
	width:45px;
	height:45px;
	background:rgb(105,160,128);
	border-radius:1px;
	z-index:1002;
	cursor:pointer;
	transition: .5s;
}
	.btn_close img{
		position:absolute;
		display:block;
		top:0;
		left:0;
		right:0;
		bottom:0;
		margin:auto;
	}
	.btn_close:hover{
		background:rgba(105,160,128,.7);
	}



/*	form
------------------------------------------*/

.caution_msg{
	display:inline-block;
	padding:10px 16px;
	color:rgb(192,63,63);
	font-size:1.05rem;
	line-height:1.4;
	font-weight:bold;
	background:mistyrose;
	border-radius:3px;
}
.er_msg_box{
	display:inline-block;
	padding:10px 16px;
	color:rgb(192,63,63);
	font-size:.9rem;
	line-height:1.4;
	background:mistyrose;
	border-radius:3px;
}
.er{
	display:inline-block;
	padding:7px 1em;
	color:rgb(192,63,63);
	font-size:.9rem;
	line-height:1;
	background:mistyrose;
	margin:.5rem 0;
	border-radius:3px;
}




/*	banner
------------------------------------------*/
.bn_related{
	width:90%;
	max-width:302px;
	text-align:center;
	margin:0 auto;
	box-shadow:5px 5px 3px rgba(0,0,0,.15);
	transition:.5s;
}
.bn_related:hover{
	box-shadow:5px 5px 5px rgba(0,0,0,.3);
}




/*	nav
------------------------------------------*/

.local-nav{
	margin:2px 0 0;
}
	.local-nav::after{
		content: "";
		display: table;
		clear: both;
	}
	.local-nav ul{
		width:970px;
		margin:0 auto;
	}
	.local-nav li{
		position:relative;
		float:left;
		width:25%;
		border: 1px solid rgba(42,156,128,.4);
		border-radius:2px;
		border-width:0 1px 1px 0;
		background:#fff url(/img/i_arrow_green.png) no-repeat 98% 50%;
		transition:.5s;
	}
	.local-nav li:first-child{
		border-width:0 1px 1px 1px;
	}
	.local-nav li:nth-of-type(5){
		border-width:0 1px 1px 1px;
	}
	.local-nav li a{
		display:block;
		padding:.7rem 0;
		text-align:center;
		color:rgb(42,156,128);
		font-size:0.9rem;
		font-weight:bold;
		line-height:1.1;
	}
	.local-nav li:hover,
	.local-nav li:active{
		background-color:#f9f9dc;
	}
	.local-nav-2 li{
		width:50%;
	}
	.local-nav-4 li{
		width:25%;
	}
	
@media(max-width: 970px){
	.local-nav ul{
		width:100%;
	}
}
@media(max-width: 680px){
	.local-nav ul{
		display:none;
	}
}


.thumb-nav{}
	.thumb-nav::after{
		content: "";
		display: table;
		clear: both;
	}
	.thumb-nav::after{
		display: table;
		width:100%;
	}
	.thumb-nav li{
		position:relative;
		float:left;
		width:31.1%;
		background-repeat:no-repeat;
		background-position:0 50%;
		background-size:auto;
		border: 2px solid rgb(42,156,128);
		border-radius:6px;
		overflow:hidden;
		margin:0 1.1% 5px;
		transition:.2s;
	}
	.thumb-nav li:hover,
	.thumb-nav li:active{
		background-color:#f9f9dc;
	}
	.thumb-nav li a{
		display:table;
		width:100%;
	}
	.thumb-nav li a span{
		display:table-cell;
		vertical-align:middle;
		width:35%;
		color:rgb(42,156,128);
		font-size:.95rem;
		font-weight:bold;
		line-height:1.1;
	}
	.thumb-nav li a span:nth-child(2){
		width:65%;
		padding:0 .1em 0 .5em;
	}
	.thumb-nav li a span img{
		display:block;
		width:100%;
		height:auto;
	}
	.thumb-nav-4 li{
		width:24.2%;
		margin:0 .4% .4rem;
	}
	.thumb-nav-2 li{
		width:49%;
		margin:0 .4% .4rem;
	}
	
.thumb-nav_pink li{
	border-color:#ff7b9c;
}
	.thumb-nav_pink li a span{
		color:#ff7b9c;
	}
		
@media(max-width: 600px){
	.thumb-nav li{
		width:48%;
		margin:0 1% .4rem;
	}
	.thumb-nav-4 li{
		width:48%;
		margin:0 1% .4rem;
	}
}
@media(max-width: 374px){
	.thumb-nav li{
		float:none !important;
		width:100% !important;
		margin:0 0 .4rem !important;
	}
	.thumb-nav li a span img{
		width:auto;
		height:50px;
	}
	.thumb-nav li a span{
		width:20%;
	}
	.thumb-nav li a span:nth-child(2){
		width:80%;
	}
}

.thumb-nav_orange li{border: 2px solid rgb(255,119,48)}
.thumb-nav_brown li{border: 2px solid rgb(160, 119, 40)}
.thumb-nav_syu li{border: 2px solid #e84444}
.thumb-nav_orange li a span{color:rgb(255,119,48)}
.thumb-nav_brown li a span{color:rgb(160, 119, 40)}
.thumb-nav_syu li a span{color:#e84444}

@media(max-width: 600px){
	.thumb-nav-3 li{
		width: 48%;
	}
}

.thumb-list{
}
	.thumb-list::after{
		content: "";
		display: table;
		clear: both;
	}
	.thumb-list_item{
		float:left;
		width:15.7%;
		margin:0 .9% 1rem 0;
	}
	.thumb-list_item a{
		display:block;
	}
	.thumb-list_item img{
		display:block;
		width:100%;
		margin:0 0 5px 0;
	}

@media(max-width: 600px){
	.thumb-list_item{
		width:24%;
		margin:0 1% .2rem 0;
	}
}



/*	column layout
------------------------------------------*/

.flex2{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:0 auto;
}
	.flex2 > div{
		width:46%;
		margin-bottom:2rem;
	}
@media(max-width: 413px){
	.flex2 > div{
		width:100%;
	}
}

.flex3{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:0 auto;
}
	.flex3 > div{
		width:30%;
		margin-bottom:2rem;
	}
@media(max-width: 600px){
	.flex3 > div{
		width:46%;
	}
}
@media(max-width: 374px){
	.flex3 > div{
		width:100%;
	}
}



.clm2,.clm3{
	position:relative;
}
	.clm2::after,
	.clm3::after{
		content: "";
		display: table;
		clear: both;
	}
	.clm2_item{
		float:left;
		width:49%;
		margin:0 1% 1rem 0;
	}
	.clm2_padR{
		padding-right:2rem;
	}
	
	.clm3_item{
		float:left;
		width:32%;
		margin:0 2% 1rem 0;
	}
	.clm3_item:nth-child(3n){
		margin:0 0 1rem 0;
	}
	.clm3_item_mgn-wide{
		width:29%;
		margin:0 6.4% 1rem 0;
	}
	.clm3_item_mgn-wide:nth-child(3n){
		margin:0 0 1rem 0;
	}

/* variable */
.clm_20p{ width:18%}
.clm_30p{ width:28%}
.clm_40p{ width:38%}
.clm_50p{ width:48%}
.clm_60p{ width:58%}
.clm_70p{ width:68%}
.clm_80p{ width:78%}
.clm_100p{ width:100%}

@media(max-width: 600px){
	.clm3_600_clm2{
		width:49%;
		margin:0 2% 1rem 0;
	}
	.clm3_600_clm2:nth-child(2n){
		margin:0 0 1rem 0;
	}
	.clm2_padR{
		padding-right:0;
	}
	.clm3_600_clm2.clm3_item_mgn-wide{
		width:47%;
		margin:0 6% 1rem 0;
	}
	.clm3_600_clm2.clm3_item_mgn-wide:nth-child(2n){
		margin:0 0 1rem 0;
	}
}

/* 7:3 image column */
.clm_img::after{
	content: "";
	display: table;
	clear: both;
}
	.clm_img_item{
		float:left;
		width:65%;
		padding:0 3em 0 0;
		margin:0 0 1rem 0;
	}
	.clm_img_item:nth-child(2n){
		width:35%;
		padding:0 0 0 0;
	}
	
@media(max-width: 600px){
	.clm_img_item,
	.clm_img_item:nth-child(2){
		float:none;
		width:100%;
		padding:0 0 0 0;
		margin:0 0 1rem 0;
	}
	.clm_img_item:nth-child(2){
		width:100%;
		margin:0 auto 2rem;
	}
}
@media(max-width: 768px){
	.clm3_tpp .clm3_item:nth-child(1){
		width: 100%;
		margin: 0 0 1rem;
	}
	.clm3_tpp .clm3_item:nth-child(n+2){
		width: 48.4%;
	}
}



/*	frame
------------------------------------------*/

.fr_beige,
.fr_green,
.fr_blue,
.fr_mistyrose{
	position:relative;
	border-radius:0.4rem;
	background:rgb(243,241,231);
}
	.fr_green		{background:rgb(235,244,229)}
	.fr_blue		{background:rgb(42,156,128,.15)}
	.fr_mistyrose	{background:mistyrose}

.fr_beige_pad{
	position:relative;
	padding:.6rem;
	background:rgb(243,241,231);
}
.fr_green_pad{
	position:relative;
	padding:.6rem;
	border:2px solid rgb(42,156,128);
	border-radius:0.4rem;
	background:#fff;
}
.fr_pink_pad{
	position:relative;
	padding:1.5rem 2rem 0;
	border:2px solid #ffa3ba;
	border-radius:0.4rem;
	background:#fff;
}

.fr_inner{
	padding:2rem 1.5rem 2rem;
}
.fr_ttl_green,
.fr_ttl_pink{
	padding: .2rem 0 .6rem;
	text-align:center;
	color:#fff;
	font-size:1.3rem;
	line-height:1;
	font-weight:bold;
	background:rgb(42,156,128);
	border-radius:0;
}
.fr_ttl_pink{
	background:#ff7b9c;
}

.fr_ttl_brown,
.fr_ttl_purple,
.fr_ttl_blue{
	padding: .2rem 0 .6rem;
	text-align:center;
	color:#fff;
	font-size:1.4rem;
	font-weight:bold;
	line-height:1.3;
	background:rgba(160, 119, 40, .8);
	border-radius:0;
}
.fr_ttl_purple{background: rgb(155,90,179)}
.fr_ttl_blue{background: rgb(81,143,198)}

.fr_lightblue_pad,
.fr_yellowgreen_pad{
    position: relative;
    padding: 1.5rem 2rem 0;
    border: 2px solid #51a8df;
    border-radius: 0.4rem;
    background: #eff7fc;
}
.fr_yellowgreen_pad{
    border: 2px solid rgb(0, 160, 78);
    background: #ebf8f1;
}



/*	table
------------------------------------------*/

/* plain no-border */
.table_plain{
	width:100%;
	border-collapse: separate;
	border-spacing: 0;
	border-bottom:1px solid rgba(255,255,255,.3);
}
	.table_plain th{
		padding:10px 10px 10px 0;
		vertical-align:middle;
		text-align:left;
		white-space:nowrap;
		border-top:1px solid rgba(255,255,255,.3);
	}
	.table_plain td{
		padding:10px;
		vertical-align:middle;
		text-align:left;
		border-top:1px solid rgba(255,255,255,.3);
	}

/* green */
.table_green{
	width:100%;
	border-collapse: separate;
	border-spacing: 1px;
	background:rgba(42,156,128,.5);
}
	.table_green th,
	.table_green td{
		padding:.7rem .7rem;
		vertical-align:middle;
	}
	.table_green th{
		white-space:nowrap;
		background:#dff0ec;
	}
	.table_green td{
		background:#fff;
	}

/* blue */
.table_blue{
	width:100%;
	border-collapse: separate;
	border-spacing: 1px;
	background:rgba(44,150,255,.5);
}
	.table_blue th,
	.table_blue td{
		padding:.7rem .7rem;
		vertical-align:middle;
	}
	.table_blue th{
		white-space:nowrap;
		background:#d7ebff;
	}
	.table_blue td{
		background:#fff;
	}

/* red */
.table_red{
	width:100%;
	border-collapse: separate;
	border-spacing: 1px;
	background:#cf4b5d;
}
	.table_red th,
	.table_red td{
		padding:.7rem .7rem;
		vertical-align:middle;
	}
	.table_red th{
		white-space:nowrap;
		background:#f7e8e8;
	}
	.table_red td{
		background:#fff;
	}



/*	title
------------------------------------------*/

/* page ttl */

.pgttl{
	position:relative;
	display:table;
	width:100%;
	height:240px;
	height:10rem;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover;
	margin:0 auto;
}
	.pgttl a,
	.pgttl div{
		display:table-cell;
		text-align:center;
		vertical-align:middle;
	}
	.pgttl span{
		display:inline-block;
		text-align:center;
	}
	.pgttl img{
		width:auto;
		height:52px;
	}
@media(max-width: 400px){
	.pgttl{
		height:8rem;
	}
	.pgttl div span{
		padding:5px 0 0;
	}
	.pgttl div img{
		width:100%;
		max-width:290px;
		height:auto;
	}
}


/* common ttl */

.ttl_dada_1,
.ttl_dada_2{
	color:rgb(42,156,128);
	font-family:'DSダダ';
	font-size:2.8rem;
	line-height:1.2;
	letter-spacing:.3rem;
	margin:0 0 1rem;
}
	.ttl_dada_2{
		font-size:2.3rem;
	}

.ttl_suzumushi_1,
.ttl_suzumushi_2{
	color:rgb(42,156,128);
	font-family:'すずむし';
	font-size:3rem;
	line-height:1.2;
	letter-spacing:.3rem;
	margin:0 0 1rem;
}
	.ttl_suzumushi_2{
		font-size:2.5rem;
	}

.ttl_img{
	text-align:center;
	margin:0 0 1rem;
}
	.ttl_img img,
	.ttl_img_s img{
		width:100%;
		max-width:500px;
		height:auto;
		margin:auto;
	}
	.ttl_img_s img{
		max-width:214px;
	}

.ttl_label_green,
.ttl_label_blue,
.ttl_label_grey{
	background: rgb(42,156,128);
	color: #fff;
	border-radius: 3px;
	padding: .5em .6em .55rem;
	font-size: 1.1rem;
	line-height:1.2;
}
.ttl_label_blue{
	background: rgb(44,150,255);
}
.ttl_label_grey{
	background: rgb(170,170,170);
}

.ttl_LLL_brown,
.ttl_LL_brown,
.ttl_L_brown{
	color:rgb(160, 119, 40);
	font-size: 3rem;
	font-size: calc(30px + 8 * (100vh - 440px) / 440);
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 1.5rem;
}
.ttl_LL_brown{font-size: 2.3rem}
.ttl_L_brown{font-size: 1.5rem;　margin-bottom: 1rem}

.ttl_LLL_green,
.ttl_LL_green,
.ttl_L_green{
	color:rgb(42,156,128);
	font-size:3rem;
	font-size: calc(30px + 8 * (100vh - 440px) / 440);
	font-weight:bold;
	line-height:1.2;
	margin-bottom:1.5rem;
}
.ttl_LL_green{font-size:2.3rem}
.ttl_L_green{font-size:1.5rem;margin-bottom:1rem}

.ttl_LLL_blue,
.ttl_LL_blue,
.ttl_L_blue{
	color:rgb(42,156,128);
	font-size:3rem;
	font-size: calc(30px + 8 * (100vh - 440px) / 440);
	font-weight:bold;
	line-height:1.2;
	margin-bottom:1.5rem;
}
.ttl_LL_blue{font-size:2.3rem}
.ttl_L_blue{font-size:1.5rem;margin-bottom:1rem}

.ttl_jp-en{
	position:relative;
	padding:0 0 1rem;
	background: url(/img/bd_snow_grey.png) left bottom repeat-x;
}
	.ttl_jp-en span{
		display:inline-block;
		color:#666;
		font-family:'Roboto', sans-serif;
		font-size:.9rem;
		font-weight:400;
		margin-right:20px;
		transform:translateY(-70%);
	}

/* komidashi */
.km_L_green, .km_MML_green, .km_ML_green, .km_M_green,
.km_L_blue, .km_MML_blue, .km_ML_blue, .km_M_blue,
.km_L_orange, .km_ML_orange, .km_M_orange,
.km_L_tomato, .km_ML_tomato, .km_M_tomato,
.km_L_brown, .km_ML_brown, .km_M_brown,
.km_L_purple, .km_ML_purple,.km_M_purple,
.km_L_syu, .km_ML_syu, .km_M_syu,
.km_L_lightblue, .km_ML_lightblue, .km_M_lightblue,
.km_L_yellowgreen, .km_ML_yellowgreen, .km_M_yellowgreen{
	color:rgb(42,156,128);
	font-size:1.5rem;
	font-weight:bold;
	line-height:1.4;
	margin-bottom:.8rem;
}
	.km_ML_green	{font-size:1.3rem;margin-bottom:.6rem}
	.km_MML_green	{font-size:1.15rem;margin-bottom:.5rem}
	.km_M_green		{font-size:1rem;margin-bottom:.4rem}

.km_L_blue,
.km_ML_blue,
.km_MML_blue,
.km_M_blue{
	color:rgb(81,143,198);
	font-weight:bold;
	line-height:1.3;
}
	.km_L_blue		{font-size:1.5rem;margin-bottom:.6rem}
	.km_ML_blue		{font-size:1.3rem;margin-bottom:.6rem}
	.km_MML_blue	{font-size:1.15rem;margin-bottom:.6rem}
	.km_M_blue		{font-size:1rem;margin-bottom:.4rem}

.km_L_pink,
.km_ML_pink,
.km_M_pink{
	color:#ff7b9c;
	font-weight:bold;
	line-height:1.3;
}
	.km_L_pink		{font-size:1.5rem;margin-bottom:.6rem}
	.km_ML_pink		{font-size:1.3rem;margin-bottom:.6rem}
	.km_M_pink		{font-size:1rem;margin-bottom:.4rem}

.km_L_orange,
.km_ML_orange,
.km_M_orange{
	color:rgb(255,119,48);
	font-weight:bold;
	line-height:1.3;
}
	.km_L_orange	{font-size:1.5rem;margin-bottom:.6rem}
	.km_ML_orange	{font-size:1.3rem; margin-bottom: .6rem}
	.km_M_orange	{font-size:1rem; margin-bottom: .4rem}

.km_L_tomato,
.km_ML_tomato,
.km_M_tomato{
	color:rgb(255,103,92);
	font-weight:bold;
	line-height:1.3;
}
	.km_L_tomato	{font-size:1.5rem;margin-bottom:.6rem}
	.km_ML_tomato	{font-size:1.3rem; margin-bottom: .6rem}
	.km_M_tomato	{font-size:1rem; margin-bottom: .4rem}

.km_L_brown, .km_ML_brown, .km_M_brown{
	color:rgb(160, 119, 40);
	font-weight:bold;
	line-height:1.3;
}
	.km_L_brown		{font-size:1.5rem;margin-bottom:.6rem}
	.km_ML_brown	{font-size:1.3rem;margin-bottom:.6rem}
	.km_M_brown		{font-size:1rem;margin-bottom:.4rem}

.km_L_purple,
.km_ML_purple,
.km_M_purple{
	color:rgb(155,90,179);
	font-weight:bold;
	line-height:1.3;
}
	.km_L_purple	{font-size:1.5rem;margin-bottom:.6rem}
	.km_ML_purple	{font-size:1.3rem}
	.km_M_purple	{font-size:1rem}

.km_L_syu, .km_ML_syu, .km_M_syu{
	color:#e84444;
	font-weight:bold;
	line-height:1.3;
}
	.km_L_syu	{font-size:1.5rem;margin-bottom:.6rem}
	.km_ML_syu	{font-size:1.3rem;margin-bottom:.6rem}
	.km_M_syu	{font-size:1rem;margin-bottom:.4rem}

.km_L_lightblue, .km_ML_lightblue, .km_M_lightblue{
	color:rgb(42,156,128);
	font-weight:bold;
	line-height:1.3;
}
	.km_L_lightblue		{font-size:1.5rem;margin-bottom:.6rem}
	.km_ML_lightblue	{font-size:1.3rem;margin-bottom:.6rem}
	.km_M_lightblue		{font-size:1rem;margin-bottom:.4rem}

.km_L_yellowgreen,
.km_ML_yellowgreen,
.km_M_yellowgreen{
	color:rgb(0, 160, 78);
	font-weight:bold;
	line-height:1.3;
}
	.km_L_yellowgreen	{font-size:1.5rem;margin-bottom:.6rem}
	.km_ML_yellowgreen	{font-size:1.3rem;margin-bottom:.6rem}
	.km_M_yellowgreen	{font-size:1rem;margin-bottom:.4rem}

.km_bd-dot_green,
.km_bd-dot_pink,
.km_bd-dot_yellowgreen,
.km_bd-dot_lightbluen,
.km_bd-dot_syu,
.km_bd-dot_blue,
.km_bd-dot_purple,
.km_bd-dot_brown{
	padding-bottom:1rem;
	background:url(/img/bd_snow_grey.png) left bottom repeat-x;
}




/*	data format
------------------------------------------*/

.clm_data{
	border-top:1px solid rgba(0,0,0,.15);
}
	.clm_data dt{
		display:inline-block;
		padding:.3rem 1rem 0 0;
		font-weight:bold;
	}
	.clm_data > dd{
		display:inline;
		padding:.3rem 0;
	}
	.clm_data > dd::after{
		display:block;
		content:'';
		width:100%;
		height:1px;
		background:rgba(0,0,0,.15);
		margin:5px 0 0;
	}
	.clm_data dl dt{
		display:inline-block;
		padding:.3rem 1rem .3rem 0;
		font-weight:bold;
	}
	.clm_data dl dd{
		display:inline;
		padding:.3rem 0;
	}
	.clm_data .fr_beige{
		padding:1rem;
	}




/*	btn
------------------------------------------*/

.btn_white_arrow{
	display: inline-block;
	padding: .7rem 1.5rem .6rem;
	color: #fff !important;
	font-size:.9rem;
	line-height: 1.1em;
	white-space: nowrap;
	background-color:rgb(42,156,128);
	background-image:url(/img/i_arrow_white.png);
	background-position:96% 50%;
	background-repeat:no-repeat;
	border-radius: 3px;
	box-shadow:3px 3px 3px rgba(0,0,0,.2);
	transition: .5s;
	cursor:pointer;
}
.btn_white_arrow:hover{
	padding: .7rem 1.5rem .6rem;
	background-color:rgb(25,100,60);
	box-shadow:3px 3px 6px rgba(0,0,0,.6);
}

.btn_winterblue{
	text-align:center;
}
	.btn_winterblue a{
		display:inline-block;
		padding:1rem;
		color:#fff;
		font-weight:bold;
		line-height:1;
		background:rgb(42,156,128);
		box-shadow:3px 3px 3px rgba(0,0,0,.2);
		border-radius: 3px;
		transition: .5s;
		cursor:pointer;
	}
	.btn_winterblue a:hover{
		box-shadow:3px 3px 6px rgba(0,0,0,.6);
		background:rgb(25,100,60);
	}

.btn_green:link,
.btn_green:visited{
	display:inline-block;
	padding:15px 30px 15px 20px;
	text-align:center;
	background: rgb(42,156,128) url(/img/i_arrow_white.png) no-repeat 98% 50%;
	box-shadow:3px 3px 3px rgba(0,0,0,.2);
	border-radius:3px;
	transition:.5s;
	cursor:pointer;
}
	.btn_green:hover{
		box-shadow:3px 3px 6px rgba(0,0,0,.6);
	}
	.btn_green span{
		display:inline-block;
		color:#fff;
		font-size:1rem;
		font-weight:bold;
		line-height:1;
	}

.btn_pink:link,
.btn_pink:visited{
	display:inline-block;
	padding:12px 50px;
	text-align:center;
	background: #ff7b9c url(/img/i_arrow_white.png) no-repeat 98% 50%;
	box-shadow:3px 3px 3px rgba(0,0,0,.2);
	border-radius:3px;
	transition: .5s;
	cursor:pointer;
}
	.btn_pink:hover{
		background-color:rgb(159,53,159);
		box-shadow:3px 3px 6px rgba(0,0,0,.6);
	}
	.btn_pink span{
		display:inline-block;
		color:#fff;
		font-size:1rem;
		font-weight:bold;
		line-height:1;
	}

.btn_green_s:link,
.btn_green_s:visited{
	display:inline-block;
	padding:2px 30px 2px 10px;
	text-align:center;
	background: rgb(42,156,128) url(/img/i_arrow_white.png) no-repeat 98% 50%;
	box-shadow:3px 3px 3px rgba(0,0,0,.2);
	border-radius:3px;
	transition: .5s;
}
	.btn_green_s:hover{
		box-shadow:3px 3px 6px rgba(0,0,0,.6);
	}
	.btn_green_s span{
		display:inline-block;
		color:#fff;
		font-size:.9rem;
		line-height:1;
	}

.btn_bd-green a{
	position:relative;
	display:inline-block;
	padding:.8rem 2rem .6rem;
	color:rgb(42,156,128);
	font-size:1.1rem;
	font-weight:bold;
	background:#fff;
	border:3px solid rgb(42,156,128);
	box-shadow:3px 3px 3px rgba(0,0,0,.2);
	border-radius:10px;
	transition: .5s;
	cursor:pointer;
}
	.btn_bd-green a:hover{
		background:#fff68d;
		box-shadow:3px 3px 6px rgba(0,0,0,.6);
	}
	.btn_bd-green a::after{
		position:absolute;
		display:block;
		content:'';
		right:6px;
		top:50%;
		width:7px;
		height:11px;
		background:url(/img/i_arrow_green.png) no-repeat;
		transform:translateY(-50%);
	}

.btn_bd-green:link,
.btn_bd-green:visited{
	position:relative;
	display:inline-block;
	padding:.8rem 2rem .6rem;
	color:rgb(42,156,128);
	font-size:1.1rem;
	font-weight:bold;
	background:#fff;
	border:3px solid rgb(42,156,128);
	border-radius:10px;
	box-shadow:3px 3px 3px rgba(0,0,0,.2);
	transition: .5s;
	cursor:pointer;
}
	.btn_bd-green:hover{
		background:#fff68d;
		box-shadow:3px 3px 6px rgba(0,0,0,.6);
	}
	.btn_bd-green::after{
		position:absolute;
		display:block;
		content:'';
		right:6px;
		top:50%;
		width:7px;
		height:11px;
		background:url(/img/i_arrow_green.png) no-repeat;
		transform:translateY(-50%);
	}

.btn_img_shadow{
	box-shadow:3px 3px 3px rgba(0,0,0,.2);
	transition:.5s;
}
	.btn_img_shadow:hover{
		box-shadow:3px 3px 6px rgba(0,0,0,.6);
	}

.btn_insta-color{
	background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}




/*	icon
------------------------------------------*/

a.i_yt{
	display:block;
	position:relative;
}
	a.i_yt::after{
		display:block;
		position:absolute;
		content:'';
		left:0;
		top:0;
		width:100%;
		height:100%;
		background:url(/img/i_youtube-play.png) no-repeat 92% 92%;
		z-index:1;
		transition:.3s;
	}
	a.i_yt:hover::after{
		opacity:.5;
	}



/*	font
------------------------------------------*/

/* font family */
.ff_min			{font-family: "A1明朝"; font-weight:normal}
.ff_meiryo		{font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W5', 'Hiragino Kaku Gothic Pro', Osaka, 'ＭＳ Ｐゴシック', 'MS P Gothic', sans-serif}
.ff_gothic		{font-family: "Yu Gothic", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; font-weight: 500}
.ff_marufork	{font-family: "丸フォーク M"; font-weight:normal}


/* font size */
.fs_LLL	{font-size:2.0rem}
.fs_LL	{font-size:1.75rem}
.fs_L	{font-size:1.5rem}
.fs_ML	{font-size:1.2rem}
.fs_MML	{font-size:1.15rem}
.fs_M	{font-size:1rem}
.fs_MMS	{font-size:.9rem}
.fs_MS	{font-size:.8rem}
.fs_S	{font-size:.75rem}

#leadtxt{
	font-size:1.05rem;
	line-height:1.7;
}

/* font weight */
.fw_bold	{font-weight:bold}
.fw_normal	{font-weight:normal}

/* text decoration*/
.txd_ul,.txd_ul a		{text-decoration:underline !important}
.txd_none, .txd_none a	{text-decoration:none !important}
.txd_ul_yellow			{background: linear-gradient(transparent 70%, rgba(255 204 0 / .5) 0);}

.txt_emphasis{
	margin:1rem 0;
}
	.txt_emphasis span{
		display:inline-block;
		padding:.6rem .6rem .5rem;
		color:#fff;
		font-size:1.1rem;
		font-weight:bold;
		line-height:1;
		background:rgb(255,119,48);
		border-radius:3px;
		margin:0 4px 4px 0;
	}


/*	other
------------------------------------------*/

/* color */
.cl_grey	{color:rgb(35,35,35)}
.cl_white	{color:rgb(255,255,255)}
.cl_green	{color:rgb(42,156,128)}
.cl_blue	{color:rgb(81,143,198)}
.cl_pink	{color:#ff7b9c}
.cl_red		{color:rgb(218,49,52)}
.cl_orange	{color:rgb(255,119,48)}
.cl_tomato	{color:rgb(255,103,92)}
.cl_black	{color:rgb(0,0,0)}
.cl_grey	{color:rgb(68,68,68)}
.cl_brown	{color:rgb(160,119,40)}
.cl_purple	{color:rgb(155,90,179)}
.cl_syu	{color: #e84444}
.cl_lightblue{color:#51a8df}
.cl_yellowgreen{color: rgb(0, 160, 78)}


/* border */
.bd_green	{border-color:rgb(42,156,128)}
.bd_pink	{border-color:#ff7b9c}
.bd_beige	{border-color:rgb(189,223,255)}

/* display */
.dp_hide		{display:none}
.dp_block		{display:block}
.dp_inline		{display:inline}
.dp_in-block	{display:inline-block}
.dp_flex{
	display:flex;
	flex-flow:row wrap;
	justify-content:space-between;
}

.dp_show1000,
.dp_show900,
.dp_show800,
.dp_show700,
.dp_show600,
.dp_show500,
.dp_show400{
	display:none;
}
@media(max-width: 1000px){.dp_show1000{display:block}}
@media(max-width: 900px){.dp_show900{display:block}}
@media(max-width: 800px){.dp_show800{display:block}}
@media(max-width: 700px){.dp_show700{display:block}}
@media(max-width: 600px){.dp_show600{display:block}}
@media(max-width: 500px){.dp_show500{display:block}}
@media(max-width: 400px){.dp_show400{display:block}}

.dp_hide1000,
.dp_hide900,
.dp_hide800,
.dp_hide700,
.dp_hide600,
.dp_hide500,
.dp_hide400{
	display:block;
}
@media(max-width: 1000px){.dp_hide1000{display:none}}
@media(max-width: 900px){.dp_hide900{display:none}}
@media(max-width: 800px){.dp_hide800{display:none}}
@media(max-width: 700px){.dp_hide700{display:none}}
@media(max-width: 600px){.dp_hide600{display:none}}
@media(max-width: 500px){.dp_hide500{display:none}}
@media(max-width: 400px){.dp_hide400{display:none}}

/* clear */
.clearfix::after{
	content: "";
	display: table;
	clear: both;
}


/* img */
.imgfit{
	display:block;
	width:100%;
	height:auto;
}
.img_bd_white{
	border:.5rem solid #fff;
	box-shadow:3px 3px 10px rgba(0,0,0,.3);
}

/* float */
.float_R{float:right}
.float_L{float:left}
.float_C{margin:0 auto 0}

/* align */
.align_R{text-align:right}
.align_L{text-align:left}
.align_C{text-align:center}

/* margin */
.mb_LLL	{margin-bottom: calc( 30px + 70 * ( 100vh - 460px ) / 408 ) !important}	/* 30-100 */
.mb_LL	{margin-bottom: calc( 26px + 44 * ( 100vh - 460px ) / 408 ) !important}	/* 26-70 */
.mb_L	{margin-bottom: calc( 24px + 30 * ( 100vh - 460px ) / 408 ) !important}	/* 24-54 */
.mb_MMM	{margin-bottom: calc( 20px + 25 * ( 100vh - 460px ) / 408 ) !important} 	/* 20-45 */
.mb_MM	{margin-bottom: calc( 18px + 20 * ( 100vh - 460px ) / 408 ) !important}	/* 18-38 */
.mb_M	{margin-bottom: calc( 15px + 10 * ( 100vh - 460px ) / 408 ) !important} 	/* 15-25 */
.mb_SSS	{margin-bottom: calc( 12px + 8 * ( 100vh - 460px ) / 408 ) !important}		/* 12-20 */
.mb_SS	{margin-bottom: calc( 10px + 5 * ( 100vh - 460px ) / 408 ) !important}		/* 10-15 */
.mb_S	{margin-bottom: calc( 5px + 5 * ( 100vh - 460px ) / 408 ) !important}		/* 5-10 */
.mb_Z	{margin-bottom:0 !important}

.ml_L	{margin-left:2rem}
.ml_M	{margin-left:1rem}
.ml_S	{margin-left:.5rem}
.mr_L	{margin-right:2rem}
.mr_M	{margin-right:1rem}
.mr_S	{margin-right:.5rem}

@media(min-height: 868px){
	.mb_LLL	{margin-bottom: 100px !important}
	.mb_LL	{margin-bottom: 70px !important}
	.mb_L	{margin-bottom: 54px !important}
	.mb_MMM	{margin-bottom: 45px !important}
	.mb_MM	{margin-bottom: 38px !important}
	.mb_M	{margin-bottom: 25px !important}
	.mb_SSS	{margin-bottom: 20px !important}
	.mb_SS	{margin-bottom: 15px !important}
	.mb_S	{margin-bottom: 10px !important}
}
@media(max-height: 460px){
	.mb_LLL	{margin-bottom: 30px !important}
	.mb_LL	{margin-bottom: 26px !important}
	.mb_L	{margin-bottom: 24px !important}
	.mb_MMM	{margin-bottom: 20px !important}
	.mb_MM	{margin-bottom: 18px !important}
	.mb_M	{margin-bottom: 15px !important}
	.mb_SSS	{margin-bottom: 12px !important}
	.mb_SS	{margin-bottom: 10px !important}
	.mb_S	{margin-bottom: 5px !important}
}



/* padding */
.pad-L_10	{padding-left:10px}
.pad-L_20	{padding-left:20px}
.pad-L_30	{padding-left:30px}
.pad-R_10	{padding-right:10px}
.pad-R_20	{padding-right:20px}
.pad-R_30	{padding-right:30px}

/* line-height */
.lh_100		{line-height:1}
.lh_110		{line-height:1.1}
.lh_120		{line-height:1.2}
.lh_130		{line-height:1.3}
.lh_140		{line-height:1.4}
.lh_150		{line-height:1.5}
.lh_170		{line-height:1.7}
.lh_200		{line-height:2}
.lh_240		{line-height:2.4}
.lh_300		{line-height:3}


/* corona */
.corona{
	padding:0.6rem 0.8rem;
	text-indent:4rem;
	color:rgb(43,88,193);
	font-size:1.1rem;
	font-weight:bold;
	border:2px solid rgb(43,88,193);
	border-radius:5px;
	background:rgba(43,88,193,.2) url(/img/i_corona.png) no-repeat -2px -2px;
	margin:1rem 0;
}

.thumb_nav_closed{
	position:relative;
	display:block;
	opacity:.4;
}

.clm_corona{
	position:relative;
}
.clm_corona::after{
	position:absolute;
	display:block;
	content:' ';
	left:0;
	top:0;
	width:100%;
	height:100%;
	min-height:20px;
	background:rgba(255,255,255,.7);
	border-radius:5px;
}

.i_canceled{
	display:block;
	position:relative;
}
.i_canceled::after{
	position:absolute;
	display:block;
	content:'';
	left:0;
	top:0;
	width:100%;
	height:100%;
	background-color:rgba(255,255,255,.5);
	background-image:url(/img/m_chushi.png);
	background-repeat:no-repeat;
	background-size:cover;
	z-index:1;
}

/* netshop banner */
.bn_netshop{
	width:min(80%,165px);
	margin:0 auto;
	transition:.3s;
}
	.bn_netshop:hover{
		transform-origin: center;
		transform:scale(1.04);
		opacity:.8;
	}

/* coming soon */
.bg_comingsoon{
	position:relative;
}
.bg_comingsoon::after{
	position:absolute;
	display:block;
	content:'';
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0 0 0 / .3) url(/img/bg_comingsoon.png) repeat;
	z-index:100;
	opacity:.5;
}

/* overlayer */
.ov_kyushi{
	position:relative;
}
.ov_kyushi::after{
	position:absolute;
	display:block;
	content:'';
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(255 255 255 / .7) url(/img/m_kyushi.webp) no-repeat center;
	background-size:min(90%,207px) auto;
	z-index:100;
}

/* patch up */
.imgbtn_tmp{
	display:block;
	transform-origin: center;
	transition: .3s;
}
.imgbtn_tmp:hover{
	transform:scale(1.03);
}

/* underconstruction */
.underconstruction{
	position:relative;
	height:80vh;
	overflow:hidden;
}
.underconstruction::after{
	position:absolute;
	display:block;
	left:-10px;
	top:-10px;
	content:' ';
	width:calc(100% + 20px);
	height:calc(100% + 20px);
	background:rgba(255 255 255 / 0.8) url("/img/m_uc.webp") no-repeat 50% 50%;
	z-index:1;
}

