@charset "utf-8";

/*------------------------------------------------------------------------------
Css name: common.css
Css info: 共通スタイル
------------------------------------------------------------------------------*/

/*------------------------------------------------------------------------
基本
--------------------------------------------------------------------------*/
@-ms-viewport/*IE でスクロールバーがコンテンツに重なるのを避ける*/
	{
	width: auto !important;
	initial-scale: 1 !important;
	}

html{
	height:100%;
	overflow-y:scroll; 
	overflow-x : hidden ;
	font-size: 62.5%;/*10px*/
	}
html.open{overflow:hidden;}

body{
	background:#ffffff url("../images/bg-01.png") center 120px repeat-x;
	image-rendering: -webkit-optimize-contrast;/*Chrome*/
	height:100%;
	text-align:center;
	margin:0px;
	padding:0px;
	font-family: "Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	font-weight:normal;
	font-style:normal;
	color:#222222;
	position: relative;
	font-size: 1.2rem;
	}

article, aside, dialog, figure, footer,header,hgroup, nav, section { display: block; }

body *,
body p{ 
    line-height:1.6;
	}

table, th, td, th {
	border-collapse: collapse;
	border-spacing: 0;
	font-weight: normal;
	font-size:1em;
	}

table,div,ol,ul,dl,dt,dd{
	margin:0px;
	padding:0px;
	list-style-type:none;
	-ms-zoom: normal;/*IE8*/
	}
	li{
		margin:0px;
		padding:0px;
		}

textarea,input{
	font-size:1em;
	}

/* For modern browsers 回り込みの解除 */
.clearfix:before,
.clearfix:after {
    content:"";
    display:table;
	}
 
.clearfix:after {
    clear:both;
	}

.f-lef{
	float:left;
	}
	
.f-rig{
	float:right;
	}

.cen{
	text-align:center;
	}

.rig{
	text-align:right;
	}

.lef{
	text-align:left;
	}

h1,h2,h3,h4,h5,h6,small{
	font-size:100%;
	line-height:100%;
	margin:0px;
	padding:0px;
	}

em{
	font-style:normal;
	}
	
hr {
	display:none;
	}
	.hr-s1{
		background: #cecece;
		height:1px; /* 水平線の太さ */
		margin:40px 0px;
		}

img,table {		/* イメージ・テーブル線消し */
	border:0px;
	}

img{
	vertical-align: bottom;	/* Strict時の画像下のスキマを埋める(Firefox) */
	image-rendering: -webkit-optimize-contrast;/*Chrome*/
	}

address{
	font-style:normal;
	}


a{
	color:#0055cc;
	text-decoration:none;
	} 
a:hover{
	text-decoration:underline;
	} 


@media screen and (max-width:959px){/*タブレット用指定*/
	br.pc{
		display:none;
	}
}
@media print, screen and (min-width:960px){/*PC用指定*/
	br.sp{
		display:none;
	}
}



/*------------------------------------------------------------------------
レイアウト
--------------------------------------------------------------------------*/
#wrap{overflow:hidden;margin:0;}


@media screen and (max-width:959px){/*タブレット用指定*/
	main{
		width:100%;
		box-sizing: border-box;
		text-align:left;
		padding:0 5%;
		margin:0 auto;
		position: relative;
		}
	main.s1{
		padding:0;
		}
		main article{
			margin:0;
			position: relative;
			}
		main aside{
			margin:0;
			position: relative;
			}
}
@media print, screen and (min-width:960px) {/*PC用指定*/
	main{
		max-width:1600px;
		width:100%;
		box-sizing: border-box;
		text-align:left;
		padding:0 30px;
		margin:0 auto;
		position: relative;
		display: flex;
		flex-flow: row wrap;
		align-items:stretch;
		justify-content:space-between;
		}
		main article{
			flex: 1;
			min-width: 580px;
			order: 1;
			position: relative;
			}
		main aside{
			flex-basis: 250px;
			max-width: 250px;
			margin:0 40px 0 0;
			position: relative;
			}
}
@media screen and (max-width:559px){/*スマホ用指定*/
header{
	width:100%;
	height:250px;
	box-sizing: border-box;
	text-align:left;
	padding:0;
	margin:0;
	position: relative;
	}	
header::after{
	content:"";
	position: relative;
	top: -56px;
	/* position: absolute;
	top:110px; */
	left:0;
	right:0;
	margin:0;
	display:block;
	width:100%;
	height:10px;
	background:#008877;
	}
	header .header-in{
		max-width:1600px;
		width:100%;
		box-sizing: border-box;
		padding:0 5%;
		margin:0 auto;
		position: relative;
		}
}
@media screen and (min-width:560px) and (max-width:1099px){/*タブレット用指定*/		
header{
	width:100%;
	height:360px;
	box-sizing: border-box;
	text-align:left;
	padding:0;
	margin:0;
	position: relative;
	}	
header::after{
	content:"";
	position: relative;
	top: -80px;
	/* position: absolute;
	top:110px; */
	left:0;
	right:0;
	margin:0;
	display:block;
	width:100%;
	height:10px;
	background:#008877;
	}
	header .header-in{
		max-width:1600px;
		width:100%;
		box-sizing: border-box;
		padding:0 5%;
		margin:0 auto;
		position: relative;
		}
}

@media screen and (min-width:1100px) and (max-width:1259px){/*PC用指定（狭）*/
header{
	width:100%;
	box-sizing: border-box;
	text-align:left;
	padding:0;
	margin:0;
	position: relative;
	}
	header .header-in{
		max-width:1600px;
		width:100%;
		box-sizing: border-box;
		padding: 0 30px;
		margin: 0 auto;
		position: relative;
		}
	header #header-top-box {
		display: flex;
		justify-content: space-between;
	}
}
@media print, screen and (min-width:1260px){/*PC用指定（広）*/		
header{
	width:100%;
/*	height:220px; */
	box-sizing: border-box;
	text-align:left;
	padding:0;
	margin:0;
	position: relative;
	}
/*header::after{
	content:"";
	position: absolute;
	top:110px;
	left:0;
	right:0;
	margin:0;
	display:block;
	width:100%;
	height:10px;
	background:#008877;
	} */
	header .header-in{
		max-width:1600px;
		width:100%;
		box-sizing: border-box;
		padding: 0 30px;
		margin: 0 auto;
		position: relative;
		}
	header #header-top-box {
		display: flex;
	/*	justify-content: space-between; */
		justify-content: flex-end;
	}
}


@media screen and (max-width:959px){/*タブレット用指定*/		
footer{
	width:100%;
	box-sizing: border-box;
	text-align:left;
	padding:0;
	margin:0;
	position: relative;
	}
	footer #footer-bana{
		border-top:1px solid #bbe6dd;
		max-width:1600px;
		width:100%;
		box-sizing: border-box;
		padding: 40px 5% 20px 5%;
		margin:0 auto;
		}
	footer #footer-in{
		background:#bbe6dd;
		width:100%;
		box-sizing: border-box;
		padding:0;
		margin:0;
		}
		footer #footer-in .box-s1{
			max-width:1600px;
			width:100%;
			box-sizing: border-box;
			padding:70px 5%;
			margin:0 auto;
			}
}
@media print, screen and (min-width:960px){/*PC用指定*/
footer{
	width:100%;
	box-sizing: border-box;
	text-align:left;
	padding:0;
	margin:0;
	position: relative;
	}
	footer #footer-bana{
		border-top:1px solid #bbe6dd;
		max-width:1600px;
		width:100%;
		box-sizing: border-box;
		padding: 40px 30px 20px 30px;
		margin:0 auto;
		}
	footer #footer-in{
		background:#bbe6dd;
		width:100%;
		box-sizing: border-box;
		padding:0;
		margin:0;
		}
		footer #footer-in .box-s1{
			max-width:1600px;
			width:100%;
			box-sizing: border-box;
			padding:70px 30px 40px;
			margin:0 auto;
			}
}





/*------------------------------------------------------------------------
ヘッダー
--------------------------------------------------------------------------*/
/*ヘッダーメニュー*/
@media screen and (max-width:1099px){/*タブレット用指定*/	

#header-top-box #ham-chk {
	opacity: 0;
	height: 0;
	width: 0;
}

#header-top-box #hamburger {
	width: 60px;
	height: 60px;
	position: relative;
	background: #008877;
	z-index: 9;
	}
	#header-top-box .ham-bar {
		display: inline-block;
		width: 74%;
		height: 4px;
		position: absolute;
	    transition: all 0.5s;
		left: 0;
		right: 0;
		margin: auto;
		background: #FFFFFF;
	    box-sizing: border-box;
		}
		#header-top-box .ham-bar:nth-child(1) {
			top: 14px;
			}
		#header-top-box .ham-bar:nth-child(2) {
			top: 30px;
			transform: translateY(-50%);
			}
		#header-top-box .ham-bar:nth-child(3) {
			top: 46px;
			transform: translateY(-100%);
			}
		#header-top-box #ham-chk:checked + label span:nth-of-type(1) {
		transform: translateY(16px) rotate(-45deg);
		}
		#header-top-box #ham-chk:checked + label span:nth-of-type(2) {
		opacity: 0;
		}
		#header-top-box #ham-chk:checked + label span:nth-of-type(3) {
		transform: translateY(-16px) rotate(45deg);
		}

#header-nav-box {
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	height: 100vh;
	width: 280px;
	background: #008877;
	padding-top: 100px;
	z-index: 8;
	display: none;
	transition: all 0.5s;
	}
	#header-nav-box.open {
		display: inline-block;
		}
	#header-nav-box .lis-s1{
		width: 100%;
	    box-sizing: border-box;
	}
	#header-nav-box .lis-s1 li{
		font-size: 1.5rem;/*15px*/
		font-size: clamp(14px, 1.5vw, 15px);
		font-weight: bold;
		width: 100%;
	    box-sizing: border-box;
		border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	    padding: 12px 30px;
	    margin: 0 auto;
		position: relative;
		}
		#header-nav-box .lis-s1 li:last-child {
			border-bottom: none;
			}
		#header-nav-box .lis-s1 li.item-1{
			/* home */
		}
		#header-nav-box .lis-s1 li.item-1 a{
		}
		#header-nav-box .lis-s1 li.item-1 img {
			width: 20px;
			height: auto;
		}
		#header-nav-box .lis-s1 li a,
		#header-nav-box .lis-s1 li span,
		#header-nav-box .lis-s1 li label{
			box-sizing: border-box;
			color:#ffffff;
			padding-left: 16px;
			text-decoration: none;
			}
			#header-nav-box .lis-s1 li.item-1 span {
				/* 画像があるため左に寄せる */
				padding-left: 12px;
			}
		#header-nav-box .lis-s1 li a:hover,
		#header-nav-box .lis-s1 li span:hover,
		#header-nav-box .lis-s1 li label:hover{
			background: #00665c;
			}

	#header-nav-box #menu-hook01 { opacity: 0; height: 0; width: 0; }
	#header-nav-box #menu-hook02 { opacity: 0; height: 0; width: 0; }
	#header-nav-box #menu-hook03 { opacity: 0; height: 0; width: 0; }
	#header-nav-box #menu-hook04 { opacity: 0; height: 0; width: 0; }
	#header-nav-box #menu-hook05 { opacity: 0; height: 0; width: 0; }
	#header-nav-box .lis-s1 ul.sub{
		height: 0;
		overflow: hidden;
		width: 100%;
		position: relative;
	    transition: all 0.5s;
		}
		#header-nav-box #menu-hook01:checked + ul.sub,
		#header-nav-box #menu-hook02:checked + ul.sub,
		#header-nav-box #menu-hook03:checked + ul.sub,
		#header-nav-box #menu-hook04:checked + ul.sub,
		#header-nav-box #menu-hook05:checked + ul.sub {
			height: auto;
			}
		#header-nav-box .lis-s1 ul.sub li a { display: block; }
		#header-nav-box .lis-s1 ul.sub li{
			padding: 8px 0;
			padding-left: 8px;
		}
		#header-nav-box .lis-s1 ul.sub li:first-child{
	    	margin-top:20px;
			border-top: 1px solid rgba(255, 255, 255, 0.3);
		}
		#header-nav-box .lis-s1 li ul.sub li.indentblock{
			padding-left: 16px;
		}
}
@media print, screen and (min-width:1100px){/*PC用指定*/

#header-top-box #hamburger { display:none; }
#header-top-box #ham-chk { display:none; }

#header-nav-box .menu-hook { display:none; }

#header-nav-box {
	width: 100%;
	background: #008877;
	}
	#header-nav-box .lis-s1{
		max-width:1600px;
		width: 100%;
	    box-sizing: border-box;
	    padding: 0 30px;
	    margin: 0 auto;
	    position: relative;
		display: flex;
		justify-content: space-between;
	}
	#header-nav-box .lis-s1 li{
		font-size: 1.5rem;/*15px*/
		font-size: clamp(14px, 1.5vw, 15px);
		font-weight: bold;
		width: 100%;
		position: relative;
		}
		#header-nav-box .lis-s1 li.item-1{
			/* home */
			flex: 1;
			border-left: 2px solid rgba(255, 255, 255, 0.3);
		}
		#header-nav-box .lis-s1 li.item-1 span { display: none; }
		#header-nav-box .lis-s1 li.item-1 img {
			width: 20px;
			height: auto;
		}
		#header-nav-box .lis-s1 li.item-1 a{
			width: 66px;
		}
		#header-nav-box .lis-s1 li a,
		#header-nav-box .lis-s1 li span,
		#header-nav-box .lis-s1 li label{
			display: flex;
			flex-flow: row nowrap;
			align-items: center;
			justify-content: center;
			height: 46px; /* 70px */
			box-sizing: border-box;
			border-right: 2px solid rgba(255, 255, 255, 0.3);
			color:#ffffff;
			text-decoration: none;
			}
		#header-nav-box .lis-s1 li.active{
			background: #00665c;
			position: relative;
		}
		#header-nav-box .lis-s1 li.active::after{
	        position: absolute;
	        content: "";
			width: 0;
			height: 0;
			border-style: solid;
			border-width: 12px 14px 0 14px;
			border-color: #008877 transparent transparent transparent;
	        left: 0;
	        right: 0;
	        margin: auto;
	        top: 50px;
		}
		#header-nav-box .lis-s1 li a:hover,
		#header-nav-box .lis-s1 li span:hover,
		#header-nav-box .lis-s1 li label:hover{
			background: #00665c;
			}
	#header-nav-box .lis-s1 ul.sub{
		display: none; /*デフォルト非表示*/
		z-index: 999;
		width: 100%;
		position: absolute;
		top: 46px; /* 70px */
		left: 0;
		background: #ffffff;
		border: 2px solid #008877;
		box-sizing: border-box;
		}
		#header-nav-box .lis-s1 li:hover ul.sub{
			display: block;
		}
		#header-nav-box .lis-s1 li ul.sub li{
			border-bottom: 2px solid #008877;
			font-size: 1.6rem;/*16px*/
			font-size: clamp(14px, 1.6vw, 16px);
			font-weight: normal;
			padding: 0 10px;
			width: calc(100% - 20px);
		}
		#header-nav-box .lis-s1 li ul.sub li.indentblock{
			padding-left: 24px;
			width: calc(100% - 32px);
		}
		#header-nav-box .lis-s1 li ul.sub li:last-child{
			border-bottom: none;
		}
		#header-nav-box .lis-s1 ul.sub li a,
		#header-nav-box .lis-s1 ul.sub li span{
			display: flex;
			flex-flow: row nowrap;
			align-items: center;
			justify-content: left;
			background: #FFFFFF;
			color:#000000;
			height: unset;
			padding: 0 0 0 15px;
			/* padding: 16px 0 16px 15px; */
			text-decoration: none;
			position: relative;
			height: 52px;
			}
		#header-nav-box .lis-s1 ul.sub li a{
			background: url("../images/header_img-03.png") 0 center no-repeat;	
			background-size:11px auto;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			}
		#header-nav-box .lis-s1 ul.sub li span:hover,
		#header-nav-box .lis-s1 ul.sub li a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}

/*会員ページメニュー*/
#header-top-box .membersnav-box ul {
    display: flex;
	justify-content: center;
    flex-wrap: wrap;
    list-style-type: none;
    padding: 0;
    margin: 10px auto;
    gap: 10px 10px;
	}
	#header-top-box .membersnav-box ul> li {
		width: 84px;
	}
	#header-top-box .membersnav-box .link_btn {
	    display: block;
	    text-align: center;
		/* padding: 1em 0.5em 0.5em; */
	    padding: 8px 0 6px;
	    margin: 0;
	    text-decoration: none;
	    cursor: pointer;
	    position: relative;
	    width: 84px;
	    height: calc(84px - 16px);
	    flex-flow: 1;
		font-size: 1.1rem;/*11px*/
	    font-size: clamp(11px, 1.1vw, 11px);
	    font-weight: 700;
	    transition: .3s;
	    background-color: #d2f0eb;
	    background-repeat: no-repeat,no-repeat;
	    background-position: center 6px, center 34px;
	    image-rendering: -webkit-optimize-contrast;
	    box-shadow: none;
	    border: 2px solid #007799;
	    color: #007799;
		}
    	#header-top-box .membersnav-box li:nth-child(1) .link_btn {
    		background-image: url(../images/gnav_img-10.png),url(../images/gnav_txt-05.png);
	    	background-size: 24px auto, 66px auto;
    	}
    	#header-top-box .membersnav-box li:nth-child(2) .link_btn {
    		background-image: url(../images/gnav_img-11.png),url(../images/gnav_txt-06.png);
	    	background-size:24px auto, 66px auto;
    	}
    	#header-top-box .membersnav-box li:nth-child(3) .link_btn {
    		background-image: url(../images/gnav_img-12.png),url(../images/gnav_txt-07.png);
	    	background-size: 18px auto, 32px auto;
    	}
    	#header-top-box .membersnav-box li:nth-child(4) .link_btn {
    		background-image: url(../images/gnav_img-13.png),url(../images/gnav_txt-08.png);
	    	background-size: 20px auto, 48px auto;
    	}
    	#header-top-box .membersnav-box li:nth-child(5) .link_btn {
    		background-image: url(../images/gnav_img-14.png),url(../images/gnav_txt-09.png);
	    	background-size: 18px auto, 66px auto;
    	}
    	#header-top-box .membersnav-box .link_btn:hover {
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
		}
/* 	#header-top-box .membersnav-box .link_btn i {
		color: #007799;
		text-align: center;
		font-size: 2rem;
	}
	#header-top-box .membersnav-box .flexbox .cap p {
		line-height: 1.1;
		margin: 4px 0;
	} */
	/* レイアウトBOX */
/*	#header-top-box .membersnav-box .link_btn .layout01 p {
		display: inline-block;
	}
	#header-top-box .membersnav-box .link_btn .layout01 p.vertical {
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	} */


@media screen and (max-width:559px){/*スマホ用指定*/

#header-top-box .membersnav-box {
		display: none;
	}
}

@media screen and (min-width:1099px) and (max-width:1199px){/*PC用指定（一行表示）*/

#header-top-box {
	height: unset;
	}
#header-top-box .membersnav-box {
	position: relative;
	width: 100%;
	margin-right: 10px;
	}
	#header-top-box .membersnav-box ul {
	    justify-content: space-evenly;
	}
	#header-top-box .membersnav-box ul> li {
		width: calc(20% - 14px);
	}
	#header-top-box .membersnav-box .link_btn {
	    width: 100%;
	    height: calc(84px - 16px);
	}
}
@media print, screen and (min-width:1200px){/*PC用（最大幅）指定*/

#header-top-box .membersnav-box {
	width: unset;
	margin-right: 10px;
}
	#header-top-box .membersnav-box ul> li {
		width: 84px;
	}
	#header-top-box .membersnav-box .link_btn {
	    width: 84px;
	    height: calc(84px - 16px);
	}
}

/*ハンバーガーメニューボタン*/
@media screen and (max-width:959px){/*タブレット用指定*/	
.drawer-hamburger .drawer-hamburger-icon {
	background:url("../images/menu-s.png") 0 0 no-repeat;
	background-size:55px 120px;
	image-rendering: -webkit-optimize-contrast;/*Chrome*/
	display:block;
	position: fixed;
	top:0;
	bottom:0;
	right:0;
	margin:auto;
	z-index: 9999;
	width: 55px;
	height: 120px;
	cursor: pointer;
	}
}
@media print, screen and (min-width:960px){/*PC用指定*/	
.drawer-toggle{
	position: fixed;
	top:0;
	bottom:0;
	margin:auto;
	}	
.drawer-hamburger-icon{
	display:none;
	}
.drawer-toggle .drawer-menu-btn {
	position:relative;
	right:27px;
	background:url("../images/menu.png") 0 0 no-repeat;
	image-rendering: -webkit-optimize-contrast;/*Chrome*/
	display:block;
	width: 55px;
	height: 230px;
	cursor: pointer;
	}
}


/*ドロワーメニュー（横からスライド）*/
.overlay {
	content: "";
	display: block;
	width: 0;
	height: 0;
	background: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	opacity: 0;
	transition: opacity .5s;
	}
.overlay.open {
	width: 100%;
	height: 100%;
	overflow:hidden;
	position:fixed;
	opacity: 1;
	cursor: pointer;
	}


.close {
	content: "";
	display: block;
	width: 33px;
	height: 33px;
	background:url("../images/close.png")0 0 no-repeat;
	background-size:contain;
	image-rendering: -webkit-optimize-contrast;/*Chrome*/
	position: fixed;
	top: 20px;
	right: 295px;
	z-index: 3;
	opacity: 0;
	transition: opacity .5s;
	}
.close.open {
	opacity: 1;
	cursor: pointer;
	}
@media print, screen and (min-width:960px){/*PC用指定*/
.close {
	right: 365px;/*15+350*/
	}
}


@media screen and (max-width:959px){/*タブレット用指定*/	
	.menu-trigger {/*ドロワーメニューボタン*/
		position: fixed;
		top:0;
		right:0;
		bottom:0;
		margin:auto;
		z-index: 9999;
		cursor: pointer;
		background:url("../images/menu-s.png") 0 0 no-repeat;
		background-size:55px 120px;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		display:block;
		width: 55px;
		height: 120px;
		}
}
@media print, screen and (min-width:960px){/*PC用指定*/
	.menu-trigger {/*ドロワーメニューボタン*/
		position: fixed;
		top:0;
		right:0;
		bottom:0;
		margin:auto;
		z-index: 9999;
		cursor: pointer;
		background:url("../images/menu.png") 0 0 no-repeat;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		display:block;
		width: 55px;
		height: 230px;
		transform: translateZ(0);
		transition: all .5s;
		}
}
	.menu-trigger.active {
		transform: translate(55px);
		transition: all .5s;
		}
	.menu-trigger:hover{
		opacity: 0.7;
		-ms-filter:"alpha(opacity=70)";
		-moz-opacity: 0.7;
		}


.globalnav{
	overflow: hidden;
	width: 280px;
	height: 100%;
	background: #ffffff;
	overflow-y: scroll;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10;
	transform: translate(280px);
	transition: all .5s;
	}
.globalnav.open {
	transform: translateZ(0);
	}	

@media print, screen and (min-width:960px){/*PC用指定*/
.globalnav{
	width: 320px;
	transform: translate(350px);
	}
}

	.globalnav .logo{
		background:#d9f7f1;
		text-align: center;
		padding:20px;
		margin: 0;
		}
		.globalnav .logo a {
			max-width: 276px;
			height:0;
			background: url("../images/logo-txt.png") no-repeat;
			background-size: contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			padding-top: 21.06%;/*131/276*/
			text-indent: 100%;
			white-space: nowrap;
			display: inline-block;
			overflow: hidden;
			}
		.globalnav .logo a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}

	.globalnav .txt-s1{
		font-size: 1.6rem;/*16px*/
		font-size: clamp(14px, 1.6vw, 16px);
		text-align: center;
		padding:10px;
		margin:0;
		}

	.globalnav .lis-s1{
		display: flex;
		flex-flow: row wrap;
		align-items:center;
		justify-content:center;
		margin:0 0 0 -20px;
		}
		.globalnav .lis-s1 li{
			margin:0 0 20px 20px;
			}
			.globalnav .lis-s1 li a{
				display: block;
				width:71px;
				height:73px;
				}
			.globalnav .lis-s1 li:nth-child(1) a{
				background:url("../images/gnav_img-06.png") 0 0 no-repeat;
				background-size:71px auto;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				}
			.globalnav .lis-s1 li:nth-child(2) a{
				background:url("../images/gnav_img-05.png") 0 0 no-repeat;
				background-size:71px auto;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				}
			.globalnav .lis-s1 li:nth-child(3) a{
				background:url("../images/gnav_img-04.png") 0 0 no-repeat;
				background-size:71px auto;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				}
			.globalnav .lis-s1 li:nth-child(3) a.ac{
				background:url("../images/gnav_img-04-ac.png") 0 0 no-repeat;
				background-size:71px auto;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				}
			.globalnav .lis-s1 li:nth-child(4) a{
				background:url("../images/gnav_img-07.png") 0 0 no-repeat;
				background-size:71px auto;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				}
			.globalnav .lis-s1 li:nth-child(5) a{
				background:url("../images/gnav_img-08.png") 0 0 no-repeat;
				background-size:71px auto;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				}
			.globalnav .lis-s1 li:nth-child(6) a{
				background:url("../images/gnav_img-09.png") 0 0 no-repeat;
				background-size:71px auto;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				}
			.globalnav .lis-s1 li a:hover{
				opacity: 0.7;
				-ms-filter:"alpha(opacity=70)";
				-moz-opacity: 0.7;
				}
				.globalnav .lis-s1 li a span{
					visibility: hidden;
					}

	.globalnav .search{
		position:relative;
		width:240px;
		text-align: center;
		margin:0 auto 20px auto;
		}
		.globalnav .search input{
			-webkit-appearance: none;
			width:240px;
			height:35px;
			padding:0 35px 0 15px;
			box-sizing: border-box;
			border:1px solid #000000;
			border-radius: 18px;
			font-size: 1.6em;/*16px*/
			}
		.globalnav .search button{
			position: absolute;
			top:0;
			bottom:0;
			right:14px;
			margin:auto;
			display:block;
			width:17px;
			height:20px;
			background:url("../images/search01.png") 0 0 no-repeat;
			background-size:contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			border:none;
			}
@media print, screen and (min-width:960px){/*PC用指定*/
	.globalnav .search{
		width:270px;
		}
		.globalnav .search input{
			width:270px;
			}
}
			.globalnav .search input::placeholder {
				color: #cccccc;
				line-height: 1;
				font-family:"Helvetica";
				font-weight:bold;
				position: relative;
				top:2px;
				}
			.globalnav .search input:-ms-input-placeholder {/*IE*/
				color: #cccccc;
				line-height: 1;
				font-family:"Helvetica";
				font-weight:bold;
				position: relative;
				top:2px;
				}

	.globalnav .menu{
		border-top:1px solid #222222;
		margin:0;
		}
		.globalnav .menu > li{	
			font-size: 1.6rem;/*16px*/
			font-size: clamp(14px, 1.6vw, 16px);	
			font-weight: 700;
			color:#FFFFFF;
			text-align: left;
			border-bottom:1px solid #FFFFFF;
			background: #008877;
			}
			.globalnav .menu > li > a{	
				display:block;
				background:url("../images/menu_img-03.png") 95% center no-repeat;
				background-size:11px auto;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				box-sizing: border-box;
				padding:20px;
				color:#FFFFFF;
				text-decoration: none;
				}
			.globalnav .menu > li:first-child > a{
				background:url("../images/menu-home-bg.png") 95% center no-repeat;
				background-size:contain;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				}
			.globalnav .menu > li > a:hover{
				opacity: 0.5;
				-ms-filter:"alpha(opacity=50)";
				-moz-opacity: 0.5;
				background: #4cab9f;
				}
				.globalnav .menu > li > a:hover{	
					background: #4cab9f url("../images/menu_img-03.png") 95% center no-repeat;
					background-size:11px auto;
				}
				.globalnav .menu > li:first-child > a:hover{
					background: #4cab9f url("../images/menu-home-bg.png") 95% center no-repeat;
					background-size:contain;
				}
			.globalnav .menu > li > span{	
				display:block;
				background:url("../images/menu_img-04.png") 95% center no-repeat;
				background-size:11px auto;
				image-rendering: -webkit-optimize-contrast;/*Chrome*/
				box-sizing: border-box;
				padding:20px;
				color:#FFFFFF;
				text-decoration: none;
				cursor: pointer;
				}
			.globalnav .menu > li > span:hover{
				opacity: 0.5;
				-ms-filter:"alpha(opacity=50)";
				-moz-opacity: 0.5;
				background: #4cab9f;
				}
				.globalnav .menu > li > span:hover{	
					background: #4cab9f url("../images/menu_img-04.png") 95% center no-repeat;
					background-size:11px auto;
				}
				.globalnav .menu li .sub{
					display: none;
					border-top:1px solid #000000;
					margin:0;
					}
				.globalnav .menu li .sub li{	
					font-size: 1.6rem;/*16px*/
					font-size: clamp(14px, 1.6vw, 16px);
					color:#008877;
					text-align: left;
					background:#D9F7F1;
					border-bottom:1px solid #000000;
					}
				.globalnav .menu li .sub li:last-child{	
					border-bottom:none;
					}
					.globalnav .menu li .sub li a{	
						display:block;
						background:url("../images/menu_img-01.png") 95% center no-repeat;
						background-size:11px auto;
						image-rendering: -webkit-optimize-contrast;/*Chrome*/
						box-sizing: border-box;
						padding:20px;
						color:#222222;
						text-decoration: none;
						}
					.globalnav .menu li .sub li a:hover{
						background-color:#f5f5f5;
						}
					.globalnav .menu li .sub li span{	
						display:block;
						background:url("../images/menu_img-02.png") 95% center no-repeat;
						background-size:11px auto;
						image-rendering: -webkit-optimize-contrast;/*Chrome*/
						box-sizing: border-box;
						padding:20px;
						color:#222222;
						text-decoration: none;
						}
					.globalnav .menu li .sub li span:hover{
						background-color:#f5f5f5;
						}
					.globalnav .menu li .sub li .sub-01{
						display: none;
						border-top:1px solid #000000;
						margin:0;
						}
						.globalnav .menu li .sub-01 li{	
							color:#222222;
							text-align: left;
							background:#FFFFFF;
							border-bottom:1px solid #000000;
						}
						.globalnav .menu li .sub-01 li:last-child{	
							border-bottom:none;
							}
							
	.globalnav .pickup{	
		background:#d9f7f1;
		padding:30px 0 20px 0;
		}

	.globalnav .pickup h2.tit-s1{	
		font-size: 1.6rem;/*19px*/
		font-size: clamp(16px, 1.6vw, 16px);
		font-weight:bold;
		color:#008877;
		margin-bottom: 10px;
		}

	.globalnav .pickup li{
		background: #FFFFFF;
		border: 1px solid #008877;
		margin: 0 24px 8px;
		padding: 0 19px;
	}
	.globalnav .pickup li a{
		display: flex;
		align-items: center;
		justify-content: flex-start;
		height: 60px;
		text-decoration: none;
		color: #222222;
		font-size: 1.6rem;/*16px*/
		font-size: clamp(14px, 1.6vw, 16px);
		background: url(../images/ico_10.png) right center no-repeat;
		background-size: 11px auto;
		image-rendering: -webkit-optimize-contrast;
		}
		.globalnav .pickup li a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}

	.globalnav .lis-bana{
		background:#d9f7f1;
		padding:0 24px 24px;
	}
		.globalnav .lis-bana li{
			max-width:250px;
			position: relative;
			}


@media screen and (max-width:559px){/*スマホ用指定*/

		.globalnav .lis-bana li.machi-kateiiryo a {
			width: 232px;
			height: 100px;
			background: url("../images/menu_bana-01.jpg") no-repeat;
			background-size: contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			display: inline-block;
			overflow: hidden;
			}
}
@media screen and (min-width:560px) and (max-width:959px){/*スマホ・タブレット用指定*/

		.globalnav .lis-bana li.machi-kateiiryo a {
			width: 232px;
			height: 100px;
			background: url("../images/menu_bana-01.jpg") no-repeat;
			background-size: contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			display: inline-block;
			overflow: hidden;
			}
}
@media print, screen and (min-width:960px){/*PC用指定*/

		.globalnav .lis-bana li.machi-kateiiryo a {
			width: 270px;
			height: 110px;
			background: url("../images/menu_bana-01.jpg") no-repeat;
			background-size: contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			display: inline-block;
			overflow: hidden;
			}
}
		.globalnav .lis-bana li a:hover{
				opacity: 0.7;
				-ms-filter:"alpha(opacity=70)";
				-moz-opacity: 0.7;
				}

	.globalnav .snsnav{	
		background:#d9f7f1;
		padding:30px 0 15px 0;
		display: flex;
		flex-flow: row nowrap;
		align-items:center;
		justify-content:center;
		margin:0 0 0 -10px;
		}
		.globalnav .snsnav li{	
			margin:0 0 0 10px;
			}
			.globalnav .snsnav li img{	
				max-width:53px;
				width:100%;
				height:auto;
				}
			.globalnav .snsnav li a:hover img{
				opacity: 0.7;
				-ms-filter:"alpha(opacity=70)";
				-moz-opacity: 0.7;
				}

	.globalnav .logo2{	
		background:#d9f7f1;
		padding:15px 0 30px 0;	
		font-size: 1.5rem;/*15px*/
		font-size: clamp(14px, 1.5vw, 15px);
		text-align: center;
		line-height: 1.2;
		margin:0;
		}
		.globalnav .logo2 img{	
			max-width:70px;
			width:100%;
			height:auto;
			margin:0 0 20px 0;
			}
		.globalnav .logo2 a:hover img{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
	.globalnav .gnav-footer{
		color: #ffffff;
		background: #008877;
		font-size: 1.6rem;/*16px*/
		font-size: clamp(14px, 1.6vw, 16px);
		padding: 30px 20px 40px;
		}
		.globalnav .gnav-footer .button{
			background: #FFFFFF;
			border: 1px solid #008877;
			margin-top: 16px;
			padding: 0 19px;
		}
@media screen and (max-width:959px){/*スマホ・タブレット用指定*/

		.globalnav .gnav-footer .button a{
			display: flex;
			align-items: center;
			justify-content: flex-start;
			height: 60px;
			text-decoration: none;
			color: #222222;
			font-size: 1.4rem;/*14px*/
			font-size: clamp(14px, 1.4vw, 14px);
			background: url(../images/ico_10.png) right center no-repeat;
			background-size: 11px auto;
			image-rendering: -webkit-optimize-contrast;
			}
}
@media print, screen and (min-width:960px){/*PC用指定*/

		.globalnav .gnav-footer .button a{
			display: flex;
			align-items: center;
			justify-content: flex-start;
			height: 60px;
			text-decoration: none;
			color: #222222;
			font-size: 1.6rem;/*16px*/
			font-size: clamp(14px, 1.6vw, 16px);
			background: url(../images/ico_10.png) right center no-repeat;
			background-size: 11px auto;
			image-rendering: -webkit-optimize-contrast;
			}
}
		.globalnav .gnav-footer .button a:hover{
				opacity: 0.7;
				-ms-filter:"alpha(opacity=70)";
				-moz-opacity: 0.7;
				}

@media screen and (max-width:559px){/*スマホ用指定*/
header .logo{
	position:relative;
	top:20px;
	left:0;
	margin:0;
	display: flex;
	flex-flow: row nowrap;
	align-items:flex-start;
	justify-content:flex-start;
	}
	header .logo span:nth-child(1){
		max-width:40px;
		width:20%;
		}
	header .logo span:nth-child(2){
		max-width: 70%;
		width:calc(80% - 20px);
		margin: 0;
		}
	header .logo span:nth-child(1) img{
		max-width:70px;
		width:100%;
		height:auto;
		}
	header .logo span:nth-child(2) a{
		max-width: 276px;
		width: 100%;
		height:0;
		background: url("../images/logo-txt.png") 0 0 no-repeat;
		background-size: contain;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		padding-top: 30%; /*86/276*/
		/* padding-top:31.15%; *//*86/276*/
		text-indent: 100%;
		white-space: nowrap;
		display: inline-block;
		overflow: hidden;
		}
		header .logo a:hover img,
		header .logo span:nth-child(2) a:hover {
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}
@media screen and (min-width:560px) and (max-width:1259px){/*スマホ・タブレット用指定*/
header .logo{
	position:relative;
	top:20px;
	left:0;
	margin:0;
	display: flex;
	flex-flow: row nowrap;
	align-items:flex-start;
	justify-content:flex-start;
	}
	header .logo span:nth-child(1){
		max-width:40px;
		width:20%;
		}
	header .logo span:nth-child(2){
		max-width: 70%;
		width:calc(80% - 20px);
		margin: 0;
		}
	header .logo span:nth-child(1) img{
		max-width:70px;
		width:100%;
		height:auto;
		}
	header .logo span:nth-child(2) a{
		max-width: 276px;
		width: 100%;
		height:0;
		background: url("../images/logo-txt.png") 0 0 no-repeat;
		background-size: contain;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		padding-top: 22%; /*86/276*/
		/* padding-top:31.15%; *//*86/276*/
		text-indent: 100%;
		white-space: nowrap;
		display: inline-block;
		overflow: hidden;
		}
		header .logo a:hover img,
		header .logo span:nth-child(2) a:hover {
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}
@media print, screen and (min-width:1260px){/*PC用指定*/
header .logo{
	position: absolute;
	padding-top:20px;
	padding-bottom: 16px;
    top: 0;
    bottom: 0;
	left: 0;
    margin: auto;
	}
	header .logo span{
		}
	header .logo span:nth-child(1) img{
		max-width:70px;
		width:100%;
		height:auto;
		}
	header .logo span:nth-child(2){
		margin:0 0 0 20px;
		}
		header .logo span:nth-child(2) a{
			width: 320px;
			height: 66px;
			background: url("../images/logo-txt.png") no-repeat;
			background-size: contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			text-indent: 100%;
			white-space: nowrap;
			display: inline-block;
			overflow: hidden;
			}
		header .logo a:hover img,
		header .logo span:nth-child(2) a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}
@media print, screen and (min-width:1260px) and (max-width:1599px){/*PC用指定*/
header .logo{
	margin-left: 10px;
	}
}

@media screen and (max-width:559px){/*スマホ用指定*/
header .guidenav-box{
	position: absolute;
	top:10px;
	right:20px;
	display: flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:center;
	}
header .guidenav{
	display:none;
	}
}
@media screen and (min-width:559px) and (max-width:1099px){/*タブレット用指定*/
header .guidenav-box{
	position: absolute;
	top:10px;
	right:20px;
	display: flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:center;
	}
header .guidenav {
	display: flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:center;
	margin:0 20px 0 -5px;
	}
	header .guidenav li{
		margin:0 0 0 5px;
		}
		header .guidenav li a{
			display: block;
			width:85px;
			height:85px;
			}
		header .guidenav li:nth-child(1) a,
		header .guidenav li:nth-child(2) a{
			display:none;
			}
		header .guidenav li:nth-child(3) a{
			background: url("../images/gnav_txt-04-s.png") 0 0 no-repeat;
			background-size:contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			border-radius:10px;
			}
		header .guidenav li a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
			header .guidenav li a span{
				visibility: hidden;
				}
}
@media print, screen and (min-width:1100px){/*PC用指定*/
header .guidenav-box{
	/* position: absolute;
	top:10px;
	right:20px; */
	position: relative;
	display: flex;
	padding-top: 10px;
	flex-flow: row nowrap;
	align-items: flex-start;
	justify-content:flex-end;
	}
header .guidenav {
	display: flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:center;
	margin:0 0 0 -5px;
	}
	header .guidenav li{
		margin:0 0 0 5px;
		}
		header .guidenav li:nth-child(1) a,
		header .guidenav li:nth-child(2) a{
			display: block;
			width:85px;
			height:85px;
			}
		header .guidenav li:nth-child(1) a{
			background-color:#008877;
			background-image: url("../images/gnav_img-03.png"),url("../images/gnav_txt-03.png");
			background-repeat: no-repeat,no-repeat;
			background-position: center 8px, center 40px;
			background-size:25px auto,73px auto;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			}
		header .guidenav li:nth-child(2) a{
			background-color:#008877;
			background-image: url("../images/gnav_img-02.png"),url("../images/gnav_txt-02.png");
			background-repeat: no-repeat,no-repeat;
			background-position: center 8px, center 40px;
			background-size:25px auto,73px auto;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			}
		header .guidenav li:nth-child(3) a{
			display: block;
			width:175px;
			height:60px;
			background: url("../images/gnav_txt-04.png") 0 0 no-repeat;
			background-size:contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			}
		header .guidenav li a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
			header .guidenav li a span{
				visibility: hidden;
				}
}


@media screen and (max-width:1099px){/*スマホ・タブレット用指定*/
header .box-s1{
	position: relative;
	top:65px;
	margin:0;
	}
header .box-s1.login{
	top:50px;
	}
}
@media print, screen and (min-width:1100px){/*PC用指定*/
header .box-s1{
	position: relative;
	margin: 40px 0 20px;
	display: flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:space-between;
	}
}	


@media screen and (max-width:1099px){/*スマホ・タブレット用指定*/
header .txt-s1.login{
	font-size: 1.4rem;/*14px*/
	font-size: clamp(14px, 1.6vw, 16px);
	padding:0;
	margin:0;
	display:inline-flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:center;
	}
	header .txt-s1.login a{
		background:#000000;
		width:250px;
		height:40px;
		font-size: 1.4rem;/*14px*/
		line-height: 1;
		color:#ffffff;
		text-decoration: none;
		margin:0;
		display: flex;
		flex-flow: row nowrap;
		align-items:center;
		justify-content:center;
		}
		header .txt-s1.login a span{
			position: relative;
			padding:0 0 0 35px
			}
		header .txt-s1.login a span::after{
			content:"";
			position: absolute;
			top:0;
			bottom:0;
			left:0;
			margin:auto;
			display:block;
			width:25px;
			height:25px;
			background:url("../images/ico_05.png") 0 -1.5px no-repeat;
			background-size:contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			}
header .txt-s1.logout{
	background: url("../images/header_img-01.png") 0 0 no-repeat;
	background-size:21px auto;
	image-rendering: -webkit-optimize-contrast;/*Chrome*/
	font-size: 1.6rem;/*16px*/
	padding:0 0 0 25px;
	margin:0;
	display:inline-flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:center;
	}
	header .txt-s1.logout a{
		background:#000000 url("../images/header_img-02.png") 13px center no-repeat;
		background-size:11px auto;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		height:29px;
		box-sizing: border-box;
		padding:0 15px 0 35px;
		font-size: 1.3rem;/*13px*/
		line-height: 1;
		color:#ffffff;
		text-decoration: none;
		margin:0 0 0 8px;
		display: flex;
		flex-flow: row nowrap;
		align-items:center;
		justify-content:center;
		}
	header .txt-s1 a:hover{
		opacity: 0.7;
		-ms-filter:"alpha(opacity=70)";
		-moz-opacity: 0.7;
		}
}
@media print, screen and (min-width:1100px){/*PC用指定*/
header .txt-s1.login{
	padding:0;
	margin:0;
	display: flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:flex-start;
	}
	header .txt-s1.login a{
		background:#000000;
		width:250px;
		height:50px;
		font-size: 1.6rem;/*16px*/
		line-height: 1;
		color:#ffffff;
		text-decoration: none;
		margin:0;
		display: flex;
		flex-flow: row nowrap;
		align-items:center;
		justify-content:center;
		position: relative;
		}
	header .txt-s1.login a::after{
		content:"会員限定コンテンツを見る";
		position: absolute;
		top:-18px;
		bottom:0;
		left:0;
		margin:auto;
		display:block;
		width:250px;
		text-align: center;
		font-size: 1.5rem;/*15px*/
		color:#222222;
		}
		header .txt-s1.login a span{
			position: relative;
			padding:0 0 0 35px
			}
		header .txt-s1.login a span::after{
			content:"";
			position: absolute;
			top:0;
			bottom:0;
			left:0;
			margin:auto;
			display:block;
			width:25px;
			height:25px;
			background:url("../images/ico_05.png") 0 -3px no-repeat;
			background-size:contain;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			}
header .txt-s1.logout{
	background: url("../images/header_img-01.png") 0 0 no-repeat;
	background-size:21px auto;
	image-rendering: -webkit-optimize-contrast;/*Chrome*/
	font-size: 1.6rem;/*16px*/
	padding:0 0 0 25px;
	margin:0;
	display: flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:flex-start;
	}
	header .txt-s1.logout a{
		background:#000000 url("../images/header_img-02.png") 13px center no-repeat;
		background-size:11px auto;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		height:29px;
		box-sizing: border-box;
		padding:0 15px 0 35px;
		font-size: 1.3rem;/*13px*/
		line-height: 1;
		color:#ffffff;
		text-decoration: none;
		margin:0 0 0 8px;
		display: flex;
		flex-flow: row nowrap;
		align-items:center;
		justify-content:center;
		}
	header .txt-s1 a:hover{
		opacity: 0.7;
		-ms-filter:"alpha(opacity=70)";
		-moz-opacity: 0.7;
		}
}


@media screen and (max-width:959px){/*スマホ用指定*/
header .search{
	position:relative;
	text-align: right;
	margin:10px 0 0 0;
	}
	header .search input{
		-webkit-appearance: none;
		width:265px;
		height:35px;
		padding:0 35px 0 15px;
		box-sizing: border-box;
		border:1px solid #008877;
		border-radius: 18px;
		font-size: 1.6em;/*16px*/
		}
	header .search button{
		position: absolute;
		top:0;
		bottom:0;
		right:14px;
		margin:auto;
		display:block;
		width:16px;
		height:20px;
		background:url("../images/search.png") 0 0 no-repeat;
		background-size:contain;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		border:none;
		}
		header .search input::placeholder {
			color: #aaddcc;
			font-size: 100%;
			line-height: 1;
			font-family:"Helvetica";
			font-weight:bold;
			position: relative;
			top:2px;
			}
		header .search input:-ms-input-placeholder {/*IE*/
			color: #aaddcc;
			line-height: 1;
			font-family:"Helvetica";
			font-weight:bold;
			position: relative;
			top:2px;
			}
}
@media print, screen and (min-width:960px){/*PC・タブレット用指定*/
header .search{
	position:relative;
	margin:0;
	}
	header .search input{
		-webkit-appearance: none;
		width:265px;
		height:35px;
		padding:0 35px 0 15px;
		box-sizing: border-box;
		border:1px solid #008877;
		border-radius: 18px;
		font-size: 1.5em;/*15px*/
		}
	header .search button{
		position: absolute;
		top:0;
		bottom:0;
		right:14px;
		margin:auto;
		display:block;
		width:16px;
		height:20px;
		background:url("../images/search.png") 0 0 no-repeat;
		background-size:contain;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		border:none;
		}
		header .search input::placeholder {
			color: #aaddcc;
			font-size: 100%;
			line-height: 1;
			font-family:"Helvetica";
			font-weight:bold;
			position: relative;
			top:2px;
			}
		header .search input:-ms-input-placeholder {/*IE*/
			color: #aaddcc;
			line-height: 1;
			font-family:"Helvetica";
			font-weight:bold;
			position: relative;
			top:2px;
			}
}	





/*------------------------------------------------------------------------
フッター
--------------------------------------------------------------------------*/

@media screen and (max-width:959px){/*スマホ・タブレット用指定*/	
footer #footer-bana ul{	
	display: flex;
	flex-flow: row wrap;
	align-items:center;
	justify-content:center;
	margin:0 0 0 -20px;
	}
	footer #footer-bana ul li{	
		margin:0 0 20px 20px;
		}
		footer #footer-bana ul li img{	
			max-width:215px;
			width:100%;
			height:auto;
			}
		footer #footer-bana ul a:hover img{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}
@media print, screen and (min-width:960px){/*PC用指定*/
footer #footer-bana ul{	
	display: flex;
	flex-flow: row wrap;
	align-items:center;
	justify-content:center;
	margin:0 0 0 -20px;
	}
	footer #footer-bana ul li{	
		margin:0 0 20px 20px;
		}
		footer #footer-bana ul li img{	
			max-width:215px;
			width:100%;
			height:auto;
			}
		footer #footer-bana ul a:hover img{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}


@media screen and (max-width:959px){/*スマホ・タブレット用指定*/	
footer .box-s1{	
	margin:0;
	}
	footer .box-s1 div{	
		margin:0;
		}
	footer .box-s1 nav{	
		margin:0 0 80px 0;
		display: flex;
		flex-flow: row wrap;
		align-items:stretch;
		justify-content:center;
		}
		footer .box-s1 nav.nav-1 div{	
			width:275px;
			margin:0 27.5px;
			}
}
@media print, screen and (min-width:960px){/*PC用指定*/
footer .box-s1{	
	display: block;
	margin:0;
	}
	footer .box-s1 div{	
		order: -1;
		margin:0;
		}
	footer .box-s1 nav{	
		margin:0;
		display: flex;
		flex-flow: row nowrap;
		align-items:stretch;
		justify-content: space-between
		}
		footer .box-s1 nav div{	
			margin:0;
			}
}

@media screen and (max-width:959px){/*スマホ・タブレット用指定*/
footer .logo{
	text-align: center;
	margin:0 0 20px 0;
	}
	footer .logo span{
		display:block;
		}
	footer .logo span:nth-child(1) img{
		max-width:70px;
		width:100%;
		height:auto;
		margin:0 0 20px 0;
		}
	footer .logo span:nth-child(2) a {
		width: 276px;
		height: 86px;
		background: url("../images/logo-txt.png") no-repeat;
		background-size: contain;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		text-indent: 100%;
		white-space: nowrap;
		display: inline-block;
		overflow: hidden;
		}
	footer .logo a:hover img,
	footer .logo span:nth-child(2) a:hover{
		opacity: 0.7;
		-ms-filter:"alpha(opacity=70)";
		-moz-opacity: 0.7;
		}
}
@media print, screen and (min-width:960px){/*PC用指定*/
footer .logo{
	text-align: center;
	margin:0 0 20px 0;
	}
	footer .logo span{
		display:block;
		}
	footer .logo span:nth-child(1) img{
		max-width:70px;
		width:100%;
		height:auto;
		margin:0 0 20px 0;
		}
	footer .logo span:nth-child(2) a {
		width: 276px;
		height: 86px;
		background: url("../images/logo-txt.png") no-repeat;
		background-size: contain;
		image-rendering: -webkit-optimize-contrast;/*Chrome*/
		text-indent: 100%;
		white-space: nowrap;
		display: inline-block;
		overflow: hidden;
		}
	footer .logo a:hover img,
	footer .logo span:nth-child(2) a:hover{
		opacity: 0.7;
		-ms-filter:"alpha(opacity=70)";
		-moz-opacity: 0.7;
		}
}

footer .address{
	font-size: 1.6rem;/*16px*/
	font-size: clamp(16px, 1.6vw, 16px);
	text-align: center;
	margin-bottom: 24px;
}

@media screen and (max-width:959px){/*スマホ・タブレット用指定*/	
footer .snsnav{	
	display: flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:center;
	margin:0 0 15px -10px;
	}
	footer .snsnav li{	
		margin:0 0 0 10px;
		}
		footer .snsnav li img{	
			max-width:53px;
			width:100%;
			height:auto;
			}
		footer .snsnav li a:hover img{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}
@media print, screen and (min-width:960px){/*PC用指定*/
footer .snsnav{	
	display: flex;
	flex-flow: row nowrap;
	align-items:center;
	justify-content:center;
	margin:0 0 15px -10px;
	}
	footer .snsnav li{	
		margin:0 0 0 10px;
		}
		footer .snsnav li img{	
			max-width:53px;
			width:100%;
			height:auto;
			}
		footer .snsnav li a:hover img{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}


@media screen and (max-width:959px){/*スマホ・タブレット用指定*/	
footer .tit-s1{
	font-size: 1.6rem;/*16px*/
	font-size: clamp(16px, 1.6vw, 16px);	
	font-weight:bold;
	color:#008877;
	padding:0 0 5px 0;
	border-bottom:1px solid #008877;
	margin:0 0 10px 0;
	}
}
@media print, screen and (min-width:960px){/*PC用指定*/
footer .tit-s1{
	font-size: 1.6rem;/*16px*/
	font-size: clamp(16px, 1.6vw, 16px);	
	font-weight:bold;
	color:#008877;
	padding:0 0 5px 0;
	border-bottom:1px solid #008877;
	margin:0 0 10px 0;
	}
}


@media screen and (max-width:959px){/*スマホ・タブレット用指定*/
footer nav.nav-1{
	margin-bottom: 40px;
}
footer .assistnav{
	margin:0;
	margin-bottom: 40px;
	}
	footer .assistnav li{	
		font-size: 1.6rem;/*16px*/
		font-size: clamp(16px, 1.6vw, 16px);
		text-align: left;
		padding:5px 0;
		text-indent: -1em;
		margin:0 0 0 1em;
		}
		footer .assistnav li a{
			background: url("../images/footer_img-02.png") 0 center no-repeat;	
			background-size:11px auto;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			padding:0 0 0 15px;
			color:#333333;
			text-decoration: none;
			}
		footer .assistnav li a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}
@media print, screen and (min-width:960px){/*PC用指定*/
footer nav.nav-1{
}
footer .assistnav{
	margin:0;
	margin-bottom: 40px;
	}
	footer .assistnav li{	
		font-size: 1.6rem;/*16px*/
		font-size: clamp(16px, 1.6vw, 16px);
		text-align: left;
		padding:5px 0;
		text-indent: -1em;
		margin:0 0 0 1em;
		}
		footer .assistnav li a{
			background: url("../images/footer_img-02.png") 0 center no-repeat;	
			background-size:11px auto;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			padding:0 0 0 15px;
			color:#333333;
			text-decoration: none;
			}
		footer .assistnav li a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}


@media screen and (max-width:959px){/*スマホ・タブレット用指定*/
footer nav.nav-2{
	margin:0 auto 40px;
	padding:24px;
	display: block;
	max-width: 560px;
	background: rgba(119,187,187,0.2);
	border-radius: 24px;
}
footer .assistnav-sub{
	margin:0;
	}
	footer .assistnav-sub li{	
		font-size: 1.6rem;/*16px*/
		font-size: clamp(16px, 1.6vw, 16px);
		text-align: center;
		padding:5px 0;
		text-indent: -1em;
		margin:0 0 0 1em;
		}
		footer .assistnav-sub li a{
			background: url("../images/footer_img-02.png") 0 center no-repeat;	
			background-size:11px auto;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			padding:0 0 0 15px;
			color:#333333;
			text-decoration: none;
			}
		footer .assistnav-sub li a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}
@media print, screen and (min-width:960px){/*PC用指定*/
footer nav.nav-2{
	margin:0 auto 40px;
	display: block;
	background: rgba(119,187,187,0.2);
	border-radius: 24px;
}
footer .assistnav-sub{
	margin:0 auto;
	padding: 8px 0;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-around;
	max-width: 960px;
	}
	footer .assistnav-sub li{	
		font-size: 1.6rem;/*16px*/
		font-size: clamp(16px, 1.6vw, 16px);
		text-align: center;
		padding:5px 0;
		text-indent: -1em;
		margin:0 0 0 1em;
		}
		footer .assistnav-sub li a{
			background: url("../images/footer_img-02.png") 0 center no-repeat;	
			background-size:11px auto;
			image-rendering: -webkit-optimize-contrast;/*Chrome*/
			padding:0 0 0 15px;
			color:#333333;
			text-decoration: none;
			}
		footer .assistnav-sub li a:hover{
			opacity: 0.7;
			-ms-filter:"alpha(opacity=70)";
			-moz-opacity: 0.7;
			}
}


@media screen and (max-width:559px){/*スマホ用指定*/
	footer .cop{
		background:#008877;
		margin:0;
		}	
	footer .cop small{
		width:100%;
		box-sizing: border-box;
		padding:15px 5%;
		display:block;
		font-size: 1.4rem;/*14px*/
		line-height: 1;
		text-align:center;
		color:#ffffff;
		margin:0 auto;
		}
		footer .cop small a{
			color:#ffffff;
			text-decoration: none;
			}
}
@media print, screen and (min-width:560px){/*PC・タブレット用指定*/	
	footer .cop{
		background:#008877;
		margin:0;
		}	
	footer .cop small{
		max-width:1600px;
		width:100%;
		box-sizing: border-box;
		padding:15px 30px 15px 95px;
		display:block;
		font-size: 1.4rem;/*14px*/
		line-height: 1;
		text-align:center;
		color:#ffffff;
		margin:0 auto;
		}
		footer .cop small a{
			color:#ffffff;
			text-decoration: none;
			}
}



@media screen and (max-width:559px){/*スマホ用指定*/	
	.gotop{display:none;
		position: fixed;
		right:10px;
		bottom:10px;
		z-index: 999;
		margin:0;
		}
		.gotop a{
			display: block;
			width:50px;
			height:50px;
			background-color:rgba(255,255,255,0.7);
			text-indent: 100%;
			white-space: nowrap;
			overflow: hidden;
			position:relative;
			}
		.gotop a::before {
			content: "";
			position: absolute;
			top:10px;
			bottom:0;
			left: 0;
			right:0;
			width: 14px;
			height: 14px;
			border-top: 2px solid #5b9b00;
			border-right: 2px solid #5b9b00;
			transform: translateX(0) rotate(-45deg);
			margin:auto;
			}
		.gotop a:hover{
			background-color:rgba(255,255,255,1);
			}
}
@media print, screen and (min-width:560px){/*PC・タブレット用指定*/	
	.gotop{display:none;
		position: fixed;
		right:0;
		bottom:0;
		z-index: 999;
		margin:0;
		}
		.gotop a{
			display: block;
			width:50px;
			height:50px;
			background-color:rgba(255,255,255,0.7);
			text-indent: 100%;
			white-space: nowrap;
			overflow: hidden;
			position:relative;
			}
		.gotop a::before {
			content: "";
			position: absolute;
			top:10px;
			bottom:0;
			left: 0;
			right:0;
			width: 14px;
			height: 14px;
			border-top: 2px solid #008877;
			border-right: 2px solid #008877;
			transform: translateX(0) rotate(-45deg);
			margin:auto;
			}
		.gotop a:hover{
			background-color:rgba(255,255,255,1);
			}
}


@media print {/*レスポンシブサイトで印刷用レイアウトを保つ*/
    body{
        width: 1600px;
		transform: scale(0.6);
		-moz-transform: scale(0.6);/*Firefox*/
		-webkit-transform: scale(0.6);/*Google Chrome/Safari*/
		transform-origin: 0 0;
    }
	
	.globalnav{
        display:none;
    }
}


/* IE10以上 */
@media print and (-ms-high-contrast: none) {
        /* @pageの指定いらないかも */
    @page {
        size: A4;
        margin: 12.7mm 9.7mm;
    }

    body {
        zoom: 1.8;
        width: 1400px;
        transform: scale(0.5);
        transform-origin: 0 0;
    }
}
