@charset "UTF-8";

/* reset */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,figure,footer,header,hgroup,menu,nav,section,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}article,aside,figure,footer,header,hgroup,nav,section{display:block;}img,object,embed{vertical-align: bottom;}html{overflow-y:scroll;}ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}del{text-decoration:line-through;}abbr[title],dfn[title]{border-bottom:1px dotted #000;cursor:help;}table{border-collapse:collapse;border-spacing:0;}th{font-weight:bold;vertical-align:bottom;}td{font-weight:inherit;vertical-align:top;}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;}input,select{vertical-align:middle;}pre{white-space:pre;white-space:pre-wrap;white-space:pre-line;word-wrap:break-word;}input[type="radio"]{vertical-align:text-bottom;}input[type="checkbox"]{vertical-align:bottom;*vertical-align:baseline;}select,input,textarea{font:99% sans-serif;}table{font-size:inherit;font:100%;}a:hover,a:active{outline:none;}strong,th{font-weight:bold;}td,td img{vertical-align:top;}sub,sup{font-size:75%;line-height:0;position:relative;}sup{top:-0.5em;}sub{bottom:-0.25em;}pre,code,kbd,samp{font-family:monospace,sans-serif;}label,input[type=button],input[type=submit],button{cursor:pointer;}button,input,select,textarea{margin:0;}button{width:auto;overflow:visible;}[hidden]{display:none !important;}[disabled]{cursor:not-allowed;}:focus:not(:focus-visible){outline:none;}

/* clear */
.clear:before,.clear:after{content:"\0020";display:block;height:0;overflow:hidden;}.clear:after{clear:both;}.clear{zoom:1;}

/* base */

:root {
  --COL-WHT: #fff;
  --COL-WHT-rgb: 255, 255, 255;
  --COL-BLK: #000;
  --COL-BLK-rgb: 0, 0, 0;
  --COL-TXT: #192321;
  --COL-TXT-rgb: 25,35,33;
  --COL-TXT2: #00332a;
  /* Gray */
  --COL-GRY: #c6c6c6;
  /* others */
  --COL-RED: #de0b19;
  --COL-GRE: #00a794;
  --COL-GRE-rgb: 0, 167, 148;
  --COL-DGRE: #087f6e;
  --COL-DGRE-rgb: 8, 127, 110;
  --COL-AQU: #66cccc;
  --COL-AQU-rgb: 102,204,204;
  --COL-BLU: #1c9ec9;
  --COL-YEL: #fcb92c;
  --COL-YEL-rgb: 252,185,44;

  --COL-BG1: #fcf8e7;
  --COL-BG2: #f0f7e9;
  --COL-BG3: #e6f2f0;
  --COL-BG4: #e5f4f6;
  --COL-BG5: #e5f0f7;

  --GRD-GRE: linear-gradient(110.04deg, var(--COL-BLU, #1c9ec9) 0%, var(--COL-GRE, #00a794) 100%);
	
  --FNT-base: 'Work Sans', sans-serif;
  --WGT-R: 400;
  --WGT-M: 500;
  --WGT-D: 700;
  --WGT-B: 700;

}

html {
	height: 100vh;
    overflow: auto;
    font-family: var(--FNT-base);
    font-weight: var(--WGT-R);
    font-style: normal;
    line-height: 1;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
    position: relative;
    width: 100%;
    min-height: 100%;
    line-height: 1;
    color: var(--COL-TXT);
    background-color: var(--COL-WHT);
}

@media screen and (min-width: 768px) {

	html { font-size: 1px; }

	@media ( max-width: 1280px ) { html { font-size: 0.078125vw; /*w1280のときの1px*/ } }

	body {
		min-width:1280rem;
		height: 100vh;
		font-size: 16rem;
		letter-spacing: 0;
	}

}
@media screen and (max-width: 767px) {

	html {
		font-size: .266666667vw;; /* base 375 */
		-webkit-font-smoothing: antialiased;
	}
	body{
		min-width: 375rem;
		min-height: 100vh;
		font-size: 16rem;
		letter-spacing: 0;
	}

}

/* 明朝 
.serif{
	font-family: '游明朝',YuMincho,'ヒラギノ明朝 ProN W3','Hiragino Mincho ProN','ＭＳ Ｐ明朝',serif;
	font-weight: 400;
}
*/
/* 見出し文字 
.bold{
    font-family: var(--FNT-base);
    font-weight: var(--WGT-B);
}
*/

*,
*::before,
*::after {
	box-sizing: border-box;
}
/*
p,li,dd,td {
	text-align: justify;
	text-justify: inter-ideograph;
}
*/
h1,h2,h3,h4,h5{
    font-weight: var(--WGT-R);
}

img {
	max-width: 100%;
	height: auto;
	image-rendering: -webkit-optimize-contrast; /* Chromeぼやけ対策 */
}

button, input, select, textarea {
    font-family: inherit;
    font-size: 100%;
}

i {
    font-size: 0%;
}

a:link,
a:visited,
a:hover,
a:active{
    color: var(--COL-TXT);
	text-decoration: none;
	overflow-wrap: break-word;
}

a.textlink:link,
a.textlink:visited{
    color: var(--COL-TXT);
	text-decoration: underline;
	text-decoration-color: var(--COL-TXT);
}
a.textlink:hover,
a.textlink:active{
    color: rgba(var(--COL-TXT-rgb), 0.6);
}
a.alpha:link,
a.alpha:visited,
a.trans:link,
a.trans:visited {
	transition-property: opacity;
	opacity: 1;
}
a.alpha:hover,
a.alpha:active {
	opacity: 0.6;
}
a.trans:hover,
a.trans:active {
	opacity: 0;
}

a.btn_shadow{
	filter: drop-shadow(2px 3px 4px rgba(0,0,0,0));
	transition-property: all;
}
a.btn_shadow:hover{
	filter: drop-shadow(2px 3px 4px rgba(0,0,0,0.4));
}

@media screen and (min-width: 768px) {

	.br_sp,
	.text_sp,
	.block_sp{
		display:none;
	}
	.br_pc,
	.text_pc{
		display:inline;
	}
	.block_pc{
		display:block;
	}

	a[href^="tel:"] { pointer-events: none !important; }

	a,a > *,a::before,a::after,
	button,button::before,button::after {
	  transition-property: none;
	  transition-duration: .5s;
	  transition-timing-function: ease-in-out;
	}

}
@media screen and (max-width: 767px) {

	.br_sp,
	.text_sp{
		display:inline;
	}
	.block_sp{
		display:block;
	}
	.br_pc,
	.text_pc,
	.block_pc{
		display:none;
	}

}

/* utility */

.touch_anime{transition: opacity .3s;}
@media all and (min-width:768px) {.touch_anime:not(.nopacity):hover{opacity: .7;}}
@media all and (max-width:767px) {.touch_anime:not(.nopacity).touch__start{opacity: .7;}}
.scroll_anime{transition: all 1.5s ease .1s;}
.scroll_anime.fuwa{opacity:0; transform: scale(.95);}
.scroll_anime.fuwa.scroll__start{opacity:1;transform: scale(1)}
.scroll_anime.fuwa-up{transform: translateY(50px);opacity:0;}
.scroll_anime.fuwa-up.scroll__start{transform: translateY(0px);opacity:1;}
.scroll_anime.fuwa-down{transform: translateY(-50px);opacity:0;}
.scroll_anime.fuwa-down.scroll__start{transform: translateY(0px);opacity:1;}
.scroll_anime.fuwa-right{transform: translateX(-30px);opacity:0;}
.scroll_anime.fuwa-right.scroll__start{transform: translateX(0px);opacity:1;}
.scroll_anime.fuwa-left{transform: translateX(30px);opacity:0;}
.scroll_anime.fuwa-left.scroll__start{transform: translateX(0px);opacity:1;}
.scroll_filter{position: relative;overflow: hidden;}
.scroll_filter::before{content: '';width: 100%;height: 100%;background: #fff;position: absolute;left:0;top:0;transition: all 3.5s ease .1s;}
.scroll_filter.filter-left.scroll__start::before{left:-100%;}
.scroll_filter.filter-right.scroll__start::before{left: 100%;}
.scroll_filter.filter-up.scroll__start::before{top:-100%;}
.scroll_filter.filter-down.scroll__start::before{top: 100%;}


@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
}


/******************************************************
header
******************************************************/

.header{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 500;
	@media screen and (min-width: 768px) {
	    min-width: 1280rem;
	}

	.header_inner{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		@media screen and (min-width: 768px) {
			padding: 32rem 2.5% 0;
		}
		@media screen and (max-width: 767px) {
			padding: 14rem 5% 0;
		}

		.header_logo{
			display: block;
			font-size: 0%;
			line-height: 0%;
			text-indent: 100%;
			letter-spacing: 0;
			white-space: nowrap;
			overflow: hidden;
			background: url("../../img/logo.svg") 50% 50% no-repeat;
			background-size: contain;
			@media screen and (min-width: 768px) {
				width: 240rem;
				height: 57rem;
			}
			@media screen and (max-width: 767px) {
				width: 160rem;
				height: 38rem;
			}
		}
	}

}

@media screen and (min-width: 768px) {

	.header_nav{
		.list_cont{
			display: flex;
			justify-content: flex-end;
			gap: 32rem;
			> li{
				position: relative;
				> a{
					display: flex;
					flex-direction: column;
					justify-content: center;
					align-items: center;
					gap: 6rem;
					padding: 8rem 8rem 0;
					> .label{
						display: inline-block;
						padding: 0 8rem;
						font-size: 18rem;
						font-weight: var(--WGT-B);
						color: var(--COL-WHT);
					}
					&::after{
						display: block;
						width: 100%;
						height: 5rem;
						content: "";
						background-color: rgba(var(--COL-WHT-rgb) ,0.8);
						transform: scale(0, 1);
						transform-origin: right top;
						transition-property: transform;
						transition-duration: .3s;
					}
					&:hover{
						&::after{
							transform: scale(1, 1);
							transform-origin: left top;
						}
					}
				}
				> .popup_nav{
					position: absolute;
					top: 2.0em;
					left: 0;
					width: 100%;
					z-index: 999;
					visibility: hidden;
					opacity: 0;
					transition: all 0.4s ease-out;
					> ul{
						display: flex;
						flex-direction: column;
						align-items: stretch;
						gap: 4rem;
						padding: 4rem;
						background-color: var(--COL-WHT);
						> li{
							> a{
								display: flex;
								justify-content: center;
								align-items: center;
								width: 100%;
								line-height: 1.75;
								font-weight: var(--WGT-B);
								color: var(--COL-GRE);
								background-color: var(--COL-WHT);
								transition-property: color, background;
								&:hover{
									color: var(--COL-WHT);
									background-color: var(--COL-GRE);
								}
							}
						}
					}
				}
				&:hover > .popup_nav{
					visibility: visible;
					opacity: 1;
				}
			}
		}
	}

	.btn_menu,
	.bg_menu{
		display: none;
	}

}
@media screen and (max-width: 767px) {

	.header_nav{
		position:fixed;
		top: 0;
		right: -110vw;
		width: 100vw;
		height: auto;
		background: var(--GRD-GRE);
		overflow: hidden;
		z-index: 500;
		transition: all 0.4s;
		.list_cont{
			display: flex;
			flex-direction: column;
			align-items: stretch;
			padding: 64rem 40rem;
			> li{
				display: flex;
				justify-content: flex-start;
				align-items: center;
				border-bottom: solid 1rem rgba(var(--COL-WHT-rgb), .80);
				> a{
					display: inline-block;
					padding: 1.25em 1em;
					> .label{
						font-size: 18rem;
						font-weight: var(--WGT-B);
						color: var(--COL-WHT);
					}
				}
				> .popup_nav{
					> ul{
						display: flex;
						justify-content: flex-start;
						align-items: center;
						gap: 4rem;
						> li{
							> a{
								display: flex;
								justify-content: center;
								align-items: center;
								width: 5em;
								line-height: 1.75;
								font-weight: var(--WGT-B);
								color: var(--COL-GRE);
								background-color: var(--COL-WHT);
								border-radius: 4rem;
								transition-property: color, background;
							}
						}
					}
				}
			}
		}
	}
	.header_nav.active{
		right:0;
	}

	.btn_menu{
		position: fixed;
		top: 0;
		right: 0;
		width: 60rem;
		height: 60rem;
		z-index: 510;
		background-color: transparent;
		transition: background .4s ease-out;
		> a{
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
			gap: 4rem;
			width: 100%;
			height: 100%;
			position: relative;
			transition: .35s ease-out;
			&::before,
			&::after{
				display: block;
				content: "";
				width: 24rem;
				height: 2rem;
				background-color: var(--COL-WHT);
				transition: .35s ease-in-out;
			}
			> span{
				display: block;
				width: 24rem;
				height: 2rem;
				font-size: 0%;
				line-height: 0%;
				text-indent: 100%;
				letter-spacing: 0;
				white-space: nowrap;
				overflow: hidden;
				background-color: var(--COL-WHT);
				transition: opacity .3s ease-out;
			}
		}
	}
	.header.header_fix .btn_menu{
		background-color: rgba(var(--COL-GRE-rgb), .80);
	}
	.btn_menu.active{
		gap: 0;
		> a{
			&::before{
				transform: translateY(6rem) rotate(135deg);
			}
			&::after{
				transform: translateY(-6rem) rotate(-135deg);
			}
			> span{
				opacity: 0;
			}
		}
	}

	/* ハンバーガーメニュー開いているとき背景固定、グレー表示 */
	/*body.fixed{
		position: fixed;
		width: 100%;
		height: 100%;
	}*/
	.bg_menu{
		position: fixed;
		left: 0;
		top: 0;
		width: 100vw;
		height: 100vh;
		background: var(--COL-BLK);
		opacity: 0;
		visibility: hidden;
		z-index: -1;
		transition: all 0.5s;
		cursor: pointer;
	}
	.btn_menu.active + .bg_menu{
		opacity: 0.6;
		visibility: visible;
	}

}

/******************************************************
.contents
******************************************************/

.contents{
    overflow-x: hidden;
	overflow-y: hidden;
	line-height: 1.5;
}


/******************************************************
.contents_header
******************************************************/

.contents_header{
    position: relative;
	overflow: hidden;
    /*z-index: 100;*/

	.visual{
		width: 100%;
		@media screen and (min-width: 768px) {
		    height: 800rem;
		}
		@media screen and (max-width: 767px) {
		    height: 480rem;
		}
		img{
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}

	.copy{
		position: absolute;
		left: 0;
		font-weight: var(--WGT-B);
		color: var(--COL-WHT);
		@media screen and (min-width: 768px) {
			top: 164rem;
			padding: 0 7%;
			.copy01{
				font-size: 38rem;
				letter-spacing: 0.025em;
			}
			.copy02{
				font-size: 66rem;
				letter-spacing: 0;
				line-height: 1.2;
				transition-delay: 0.4s;
			}
		}
		@media screen and (max-width: 767px) {
			top: 86rem;
			padding: 0 7%;
			.copy01{
				font-size: 18rem;
				letter-spacing: 0.025em;
			}
			.copy02{
				font-size: 44rem;
				letter-spacing: 0;
				line-height: 1;
				transition-delay: 0.4s;
			}
		}
	}

}


/******************************************************
.section
******************************************************/

/* .section ********************/

.section{
    width: 100%;
/*
	@media screen and (min-width: 768px) {
		max-width: 1280rem;
		margin-left: auto;
		margin-right: auto;
		padding-left: calc((100vw - 1280rem)/ 2);
		padding-right: calc((100vw - 1280rem)/ 2);
		padding-top: 104rem;
		padding-bottom: 104rem;
		box-sizing: content-box;

	}
	@media screen and (max-width: 767px) {
		padding-top: 40rem;
		padding-bottom: 40rem;
	}
*/
}


/* .section_label ********************/

.section_label{
}
.section_label > .label{
}

/* .section_body ********************/

.section_body{
}
.section_body + .section_body{

	@media screen and (min-width: 768px) {
		margin-top: 80rem;
	}
	@media screen and (max-width: 767px) {
		margin-top: 40rem;
	}

}

/* 見出し ********************/

.section_body_label{
	background: var(--COL-LBL-01);
	> .label{
		font-weight: var(--WGT-B);
		line-height: 1.5;
	}

	@media screen and (min-width: 768px) {
		padding: 16rem 24rem;
		border-radius: 16rem;
		> .label{
			font-size: 24rem;
		}
	}
	@media screen and (max-width: 767px) {
		padding: 16rem;
		border-radius: 8rem;
		> .label{
			font-size: 20rem;
		}
	}

}

/* 汎用 ********************/

/* 　マップ枠　 */

.box_iframe iframe{
    width: 100%;
    height: 440rem;
}

/* 　ボタンの入れ物　 */

.btn_center{
	display: flex;
	justify-content: center;
	align-items: center;
}

/* 　MOREボタン　 */

.btn_box_arrow{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 10rem;
	border: 2rem solid var(--COL-DGRE);
	background-color: var(--COL-WHT);
	width: auto;
	min-width: 240rem;
	height: auto;
	padding: 8rem 36rem 8rem 16rem;
	transition-property: border, background;
	@media screen and (min-width: 768px) {
		min-height: 70rem;
	}
	@media screen and (max-width: 767px) {
		min-height: 56rem;
	}
	
	> .label{
		font-weight: var(--WGT-B);
		line-height: 1.2;
		color: var(--COL-DGRE);
		text-align: center;
		transition-property: color;
		@media screen and (min-width: 768px) {
			font-size: 18rem;
		}
		@media screen and (max-width: 767px) {
		}
	}
	> svg{
		position: absolute;
		top: 50%;
		right: 12rem;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 24rem;
		height: 24rem;
		transform: translateY(-50%);
		fill: var(--COL-DGRE);
		transition-property: fill;
	}

}
.btn_box_arrow.dl{
	padding: 8rem 80rem 8rem 24rem;
	> svg{
		width: 52rem;
		height: 52rem;
	}
}

@media screen and (min-width: 768px) {

	.btn_box_arrow:hover,
	a:hover .btn_box_arrow{
		border-color: var(--COL-WHT);
		background-color: var(--COL-GRE);
		> .label{
			color: var(--COL-WHT);
		}
		> svg{
			fill: var(--COL-WHT);
		}
	}

}



@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
}


/******************************************************
■ HOME　■
******************************************************/

/* .section_access ********************/

.section_access{
	position: relative;
	z-index: 10;
	color: var(--COL-WHT);
	background: 50% 50% no-repeat;
	background-size: cover;
	@media screen and (min-width: 768px) {
 		min-height: 490rem;
		background-image: url("../../img/bg_access_pc.jpg");
	}
	@media screen and (max-width: 767px) {
 		min-height: 505rem;
		background-image: url("../../img/bg_access_sp.jpg");
	}

	&::before{
		position: absolute;
		display: block;
		width: 100%;
		content: "";
		background-repeat: no-repeat;
		background-size: contain;
		z-index: -1;
		@media screen and (min-width: 768px) {
			bottom: 0;
			left: 50%;
			transform: translateX(-50%);
			height: 609rem;
			background-position: 50% 100%;
			background-image: url("../../img/fig_map_pc.svg");
		}
		@media screen and (max-width: 767px) {
			top: -64rem;
			left: 0;
			height: 382rem;
			background-position: 0 0;
			background-image: url("../../img/fig_map_sp.svg");
		}
	}

	@media screen and (min-width: 768px) {

		.section_label{
			position: absolute;
			top: -44rem;
			left: 0;
			width: 100%;
			> .label{
				display: block;
				width: 100%;
				max-width: 1200rem;
				margin: 0 auto;
				font-size: 54rem;
				font-weight: var(--WGT-B);
			}
		}
		.section_body{
			width: 100%;
			max-width: 1200rem;
			margin: 0 auto;
			padding-top: 64rem;
			padding-right: 400rem;
			.sbody_text{
				font-size: 18rem;
				font-weight: var(--WGT-M);
				line-height: 1.6;
			}
			.sbody_img{
				padding-top: 40rem;
			}
		}

	}
	@media screen and (max-width: 767px) {

		.section_label{
			padding: 88rem 24rem 16rem 176rem;
			> .label{
				font-size: 24rem;
				font-weight: var(--WGT-B);
				line-height: 1.25;
			}
		}
		.section_body{
			.sbody_text{
				padding: 0 24rem 24rem 176rem;
				font-size: 15rem;
				font-weight: var(--WGT-M);
				line-height: 1.46;
			}
			.sbody_img{
			}
		}

	}

}

/* .section_temperatures ********************/

.section_temperatures{
	background-color: rgba(var(--COL-GRE-rgb), 0.1);

	@media screen and (min-width: 768px) {
		max-width: 1200rem;
		margin-left: auto;
		margin-right: auto;
		padding-left: calc((100vw - 1200rem)/ 2);
		padding-right: calc((100vw - 1200rem)/ 2);
		padding-top: 32rem;
		padding-bottom: 0;
		box-sizing: content-box;

	}
	@media screen and (max-width: 767px) {
		padding: 40rem 23rem 0;
	}

	.section_label{
		padding-bottom: 1em;
		> .label{
			color: var(--COL-DGRE);
			font-weight: var(--WGT-B);
			@media screen and (min-width: 768px) {
				font-size: 24rem;
			}
			@media screen and (max-width: 767px) {
				font-size: 18rem;
			}
		}
	}
	.section_body{
		.temperatures01{
			padding-bottom: 32rem;
		}
		.temperatures02{
			@media screen and (min-width: 768px) {
				padding: 32rem 0 72rem;
			}
			@media screen and (max-width: 767px) {
				padding: 32rem 0 40rem;
			}
		}
		.btn_acc_more{
			display: flex;
			justify-content: space-between;
			align-items: center;
			width: 120rem;
			height: 34rem;
			padding: 0 10rem 0 24rem;
			margin-left: auto;
			background: var(--GRD-GRE);
			cursor: pointer;
			@media screen and (max-width: 767px) {
				margin-right: -23rem;
			}
			> .label{
				flex-grow: 1;
				font-weight: var(--WGT-M);
				color: var(--COL-WHT);
				letter-spacing: 0.05em;
				text-align: center;
			}
			> svg{
				width: 16rem;
				height: 16rem;
				fill: var(--COL-WHT);
				transform: rotate(90deg);
				transition: transform .3s ease-out;
			}
		}
	}
	.section_body.is_close{
		.btn_acc_more{
			> svg{
				transform: rotate(270deg);
			}
		}
	}

}

/* .section_translation ********************/

.section_translation{

	@media screen and (min-width: 768px) {
		max-width: 1020rem;
		margin-left: auto;
		margin-right: auto;
		padding-left: calc((100vw - 1020rem)/ 2);
		padding-right: calc((100vw - 1020rem)/ 2);
		padding-top: 48rem;
		padding-bottom: 48rem;
		box-sizing: content-box;

	}
	@media screen and (max-width: 767px) {
		padding: 40rem 20rem;
	}

	.section_label{
		display: flex;
		align-items: center;
		gap: 1em;
		@media screen and (min-width: 768px) {
			padding-bottom: 1.0em;
		}
		@media screen and (max-width: 767px) {
			padding-bottom: 0.5em;
		}
		&::before, &::after{
			flex-grow: 1;
			display: block;
			width: auto;
			height: 6rem;
			content: "";
			background-color: rgba(var(--COL-DGRE-rgb), 0.35);
	 	}
		> .label{
			font-weight: var(--WGT-B);
			color: var(--COL-DGRE);
			@media screen and (min-width: 768px) {
				font-size: 18rem;
			}
			@media screen and (max-width: 767px) {
				font-size: 16rem;
			}
		}
	}
	.section_body{
		@media screen and (min-width: 768px) {
			font-size: 13rem;
		}
		@media screen and (max-width: 767px) {
			font-size: 12rem;
		}
	}

}

/* .section_recommend ********************/

.section_recommend.section_recommend01{
	background-color: var(--COL-BG1);
}
.section_recommend.section_recommend02{
	background-color: var(--COL-BG2);
}
.section_recommend.section_recommend03{
	background-color: var(--COL-BG3);
}
.section_recommend.section_recommend04{
	background-color: var(--COL-BG4);
}
.section_recommend.section_recommend05{
	background-color: var(--COL-BG5);
}

@media screen and (min-width: 768px) {

	.section_recommend{
		padding-bottom: 120rem;
		.section_visual{
			position: relative;
			display: flex;
			align-items: stretch;
			width: 100%;
			height: 628rem;
			&::before{
				display: block;
				width: 18%;
				height: 100%;
				content: "";
				background: var(--GRD-GRE);
			}
			picture{
				width: 82%;
				img{
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
			}
			> .label{
				position: absolute;
				bottom: 94rem;
				/*left: 18%;
				transform: translateX(-50%);*/
				left: calc(18% - 316rem);
				display: block;
				width: 632rem;
				height: 250rem;
				font-size: 0%;
				line-height: 0%;
				text-indent: 100%;
				letter-spacing: 0;
				white-space: nowrap;
				overflow: hidden;
				background: 50% 50% no-repeat;
				background-size: contain;
			}
		}
		> header{
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			gap: 0.5em;
			width: 82%;
			max-width: 1000rem;
			margin-left: 18%;
			margin-right: auto;
			padding: 32rem 0 64rem;
			> .section_label{
				font-size: 32rem;
				font-weight: var(--WGT-B);
				color: var(--COL-TXT2);
			}
			> .section_lead{
				line-height: 1.625;
			}
		}
	}

	.section_recommend.section_recommend01{
		> header{
			max-width: 1080rem;
		}
	}
	.section_recommend.section_recommend02,
	.section_recommend.section_recommend04{
		.section_visual{
			flex-direction: row-reverse;
			> .label{
				left: auto;
				right: calc(18% - 316rem);
				/*right: 18%;
				transform: translateX(50%);*/
			}
		}
		> header{
			margin-left: auto;
			margin-right: 18%;
			align-items: flex-end;
			> .section_label{
				text-align: right;
			}
			> .section_lead{
				text-align: right;
			}
		}
	}

	.section_recommend.section_recommend01{.section_visual{> .label{
		background-image: url("../../img/label_recommend01.svg");
	}}}
	.section_recommend.section_recommend02{.section_visual{> .label{
		background-image: url("../../img/label_recommend02.svg");
	}}}
	.section_recommend.section_recommend03{.section_visual{> .label{
		background-image: url("../../img/label_recommend03.svg");
	}}}
	.section_recommend.section_recommend04{.section_visual{> .label{
		background-image: url("../../img/label_recommend04.svg");
	}}}
	.section_recommend.section_recommend05{.section_visual{> .label{
		background-image: url("../../img/label_recommend05.svg");
	}}}

}
@media screen and (max-width: 767px) {

	.section_recommend{
		padding-bottom: 56rem;
		.section_visual{
			> .label{
				display: none;
			}
		}
		> header{
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			gap: 0.5em;
			padding: 12rem 30rem 40rem;
			> .section_label{
				font-size: 24rem;
				font-weight: var(--WGT-B);
				color: var(--COL-TXT2);
			}
			> .section_lead{
				font-size: 16rem;
				line-height: 1.625;
			}
		}
	}

}

/* .list_recommend */

.list_recommend{
	display: flex;
	@media screen and (min-width: 768px) {
		gap: 16rem;
		width: 100%;
		max-width: 1600rem;
		margin: 0 auto;
		padding: 0 36rem;
	}
	@media screen and (max-width: 767px) {
		flex-direction: column;
		align-items: stretch;
		gap: 48rem;
		padding: 0 20rem;
	}

	> li{
		flex: 1;
		> .card{
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			gap: 0.5em;
			> .img{
				position: relative;
				width: 100%;
				padding-top: 70.27%; /* 370:260 */
				overflow: hidden;
				> img{
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
					object-fit: cover;
					transform: scale(1, 1);
					transform-origin: center center;
					transition: transform 0.4s ease-out;
				}
			}
			> .label{
				font-weight: var(--WGT-B);
				line-height: 1.4;
				color: var(--COL-TXT2);
				transition-property: color;
				@media screen and (min-width: 768px) {
					padding-top: 0.5em;
					padding-right: 0.5em;
	 				font-size: 22rem;
				}
				@media screen and (max-width: 767px) {
					padding-top: 0.25em;
	 				font-size: 20rem;
				}
			}
			> .text{
				display: flex;
				flex-direction: column;
				align-items: flex-start;
				gap: 4rem;
				@media screen and (min-width: 768px) {
					padding-right: 1.5em;
				}
				> p{
					font-size: 14rem;
					line-height: 1.5;
				}
			}
		}
		@media screen and (min-width: 768px) {
			> a.card:hover{
				> .img{
					> img{
						transform: scale(1.07, 1.07);
					}
				}
				> .label{
					color: var(--COL-GRE);
				}
			}
			&:nth-child(2){
				transition-delay: .3s;
			}
			&:nth-child(3){
				transition-delay: .6s;
			}
			&:nth-child(4){
				transition-delay: .9s;
			}
		}
	}
}

/* .btn_more */

.card{
	.btn_more{
		position: relative;
		display: flex;
		align-items: center;
		gap: 0.3em;
		padding: 0.1em 0.2em 0.2em;
		z-index: 10;
		@media screen and (max-width: 767px) {
		}
		> .label{
			font-size: 14rem;
			font-weight: var(--WGT-B);
			color: var(--COL-GRE);
			letter-spacing: 0.05em;
			transition: color .3s;
		}
		> svg{
			width: 10rem;
			height: 10rem;
			fill: var(--COL-GRE);
			transition: fill .3s;
		}
		&::before{
			position: absolute;
			top: 0;
			left: 0;
			display: block;
			width: 100%;
			height: 100%;
			content: "";
			background: var(--GRD-GRE);
			transform: scale(0, 1);
			transform-origin: right top;
			transition-property: transform;
			transition-duration: .3s;
			z-index: -1;
		}
		&::after{
			position: absolute;
			bottom: 0;
			left: 0;
			display: block;
			width: 100%;
			height: 3rem;
			content: "";
			background-color: var(--COL-GRE);
		}
	}
}
@media screen and (min-width: 768px) {
	a.card:hover{
		.btn_more{
			cursor: pointer;
			> .label{
				color: var(--COL-WHT);
			}
			> svg{
				fill: var(--COL-WHT);
			}
			&::before{
				transform: scale(1, 1);
				transform-origin: left top;
			}
		}
	}
}

/* .section_body_trail */

.section_body_trail{

	@media screen and (min-width: 768px) {

		position: relative;
		margin-top: 120rem !important;

		> .label{
			position: absolute;
			top: 40rem;
			left: calc(50% - 640rem);
			width: 600rem;
			filter: drop-shadow(7px 7px 5px rgba(var(--COL-BLK-rgb),0.2));
			z-index: 100;
		}
		> .sbody_img{
			display: flex;
			align-items: flex-start;
			gap: 12rem;
			width: 100%;
			padding-left: 36rem;
			> .img:nth-of-type(1){
				flex-grow: 1;
				margin-top: 222rem;
				> img{
					width: 100%;
					height: 500rem;
					object-fit: cover;
				}
			}
			> .img:nth-of-type(2){
				flex-grow: 1;
				> img{
					width: 100%;
					height: 600rem;
					object-fit: cover;
					object-position: right center;
				}
			}
		}
		> .sbody_text{
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			width: 100%;
			max-width: 1168rem;
			margin: -40rem auto 0;
			> .map_trail{
				width: 600rem;
				.btn_michinoku_trail{
					padding-top: 20rem;
					width: 276rem;
				}
			}
			> .info_trail{
				width: calc(100% - 670rem);
			}
		}

	}
	@media screen and (max-width: 767px) {

		margin-top: 64rem !important;

		> .label{
			position: relative;
			width: 320rem;
			filter: drop-shadow(5px 5px 4px rgba(var(--COL-BLK-rgb),0.2));
			z-index: 10;
		}
		> .sbody_img{
			margin-top: -20rem;
			> .img:nth-of-type(1){
				width: 70%;
				margin-left: auto;
				> img{
					width: 100%;
					height: 144rem;
					object-fit: cover;
				}
			}
			> .img:nth-of-type(2){
				width: 93%;
				margin-right: auto;
				> img{
					width: 100%;
					height: 200rem;
					object-fit: cover;
					object-position: right center;
				}
			}
		}
		> .sbody_text{
			display: flex;
			flex-direction: column-reverse;
			align-items: stretch;
			> .map_trail{
				padding: 32rem 10rem 0;
				.btn_michinoku_trail{
					width: 276rem;
					margin: 0 auto;
					padding-top: 32rem;
				}
			}
			> .info_trail{
				padding: 32rem 20rem 0;
			}
		}

	}
	
	> .sbody_text{
		> .info_trail{
			> p {
				line-height: 1.625;
			}
			> p + p{
				padding-top: 1.5em;
			}
			> .info{
				padding-top: 2.5em;
			}
		}
	}
	
}

/* .info */

.info{
	> .label{
		padding-bottom: 0.2em;
		font-weight: var(--WGT-B);
		color: var(--COL-TXT2);
		@media screen and (min-width: 768px) {
			font-size: 22rem;
		}
		@media screen and (max-width: 767px) {
			font-size: 20rem;
		}
	}
	> .list_info{
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		gap: 0rem;
		> dt{
			padding: 8rem 8rem 8rem 0;
			font-weight: var(--WGT-B);
			line-height: 1.5;
			color: var(--COL-TXT2);
			border-top: 1px solid var(--COL-DGRE);			
		}
		> dd{
			flex-grow: 1;
			padding: 8rem 0;
			line-height: 1.5;
			border-top: 1px solid var(--COL-DGRE);			
		}
		@media screen and (min-width: 768px) {
			> dt{
				width: 7em;
			}
			> dd{
				width: calc(100% - 7em);
			}
		}
		@media screen and (max-width: 767px) {
			> dt{
				width: 4em;
			}
			> dd{
				width: calc(100% - 4em);
			}
		}
	}
}

/* .list_spot */

.list_spot{
	display: flex;
	align-items: stretch;
	gap: 20rem;
	@media screen and (min-width: 768px) {
		flex-wrap: wrap;
		width: 100%;
		max-width: 1200rem;
		margin: 0 auto;
	}
	@media screen and (max-width: 767px) {
		flex-direction: column;
		padding: 0 20rem;
	}

	> li{
		@media screen and (min-width: 768px) {
			width: calc(50% - 10rem);
		}
		> .card{
			position: relative;
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			gap: 1em;
			height: 100%;
			background-color: var(--COL-WHT);
			border: solid 2rem var(--COL-WHT);
			transition-property: border;
			@media screen and (min-width: 768px) {
				padding: 50rem 20rem 20rem 30rem;
			}
			@media screen and (max-width: 767px) {
				padding: 50rem 20rem 20rem;
			}
			> .tag{
				position: absolute;
				top: -2rem;
				left: -2rem;
				display: inline-block;
				padding: 0 1em;
				font-size: 14rem;
				font-weight: var(--WGT-B);
				line-height: 2; 
				color: var(--COL-WHT);
				background: var(--GRD-GRE);
			}
			> .label{
				font-weight: var(--WGT-B);
				line-height: 1.4;
				color: var(--COL-TXT2);
				transition-property: color;
				@media screen and (min-width: 768px) {
	 				font-size: 22rem;
				}
				@media screen and (max-width: 767px) {
	 				font-size: 18rem;
				}
			}
			> .body{
				flex-grow: 1;
				display: flex;
				align-items: stretch;
				gap: 20rem;
				@media screen and (min-width: 768px) {
				}
				@media screen and (max-width: 767px) {
					flex-direction: column;
				}
				> .text{
					display: flex;
					flex-direction: column;
					align-items: flex-start;
					gap: 4rem;
					@media screen and (min-width: 768px) {
						width: calc(51% - 20rem);
					}
					@media screen and (max-width: 767px) {
						width: 100%;
					}
					> p{
						font-size: 14rem;
						line-height: 1.5;
					}
				}
				> .img{
					position: relative;
					overflow: hidden;
					@media screen and (min-width: 768px) {
						width: 49%;
						height: 100%;
						padding-top: 37.17%; /* 538:200 */
					}
					@media screen and (max-width: 767px) {
						width: 100%;
						padding-top: 75.59%; /* 295:223 */
					}
					> img{
						position: absolute;
						top: 0;
						left: 0;
						width: 100%;
						height: 100%;
						object-fit: cover;
						transform: scale(1, 1);
						transform-origin: center center;
						transition: transform 0.4s ease-out;
					}
				}
			}
		}
		@media screen and (min-width: 768px) {
			> a.card:hover{
				border-color: var(--COL-GRE);
				> .label{
					color: var(--COL-GRE);
				}
				> .body{
					> .img{
						> img{
							transform: scale(1.07, 1.07);
						}
					}
				}
			}
		}
	}

	/* .list_spot .item_wide */

	@media screen and (min-width: 768px) {
		> li.item_wide{
			width: 100%;
			> .card{
				> .body{
					justify-content: space-between;
					> .movie{
						width: 800rem;
						> iframe{
							width: 800rem;
							height: 450rem;
						}
					}
					> .info{
						width: calc(100% - 832rem);
						> .list_info{
							margin-top: 2em;
							font-size: 14rem;
						}
					}
				}
			}
		}
	}
	@media screen and (max-width: 767px) {
		> li.item_wide{
			> .card{
				> .body{
					> .movie{
						width: 100%;
						> iframe{
							width: 100%;
							height: 165rem;
						}
					}
					> .info{
						display: flex;
						flex-direction: column-reverse;
						gap: 16rem;
						> .list_info{
							font-size: 14rem;
							> dt{
								width: 7em;
							}
							> dd{
								width: calc(100% - 7em);
							}
						}
					}
				}
			}
		}
	}
	
}

/* .section_body_learn */

@media screen and (min-width: 768px) {

	.section_body_learn{

		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		max-width: 1100rem;
		margin: 0 auto;
		padding-top: 40rem;
		> .sbody_img{
			width: 440rem;
			margin-right: -80rem;
			> .img{
				img{
					filter: drop-shadow(7px 7px 5px rgba(var(--COL-BLK-rgb),0.2));
				}
			}
		}
		> .sbody_text{
			width: calc(100% - 420rem);
			> .label{
				display: flex;
				align-items: center;
				gap: 1em;
				padding-bottom: 1.0em;
				font-size: 24rem;
				font-weight: var(--WGT-B);
				color: var(--COL-TXT2);
				&::before, &::after{
					flex-grow: 1;
					display: block;
					width: auto;
					height: 8rem;
					content: "";
					background: var(--GRD-GRE);
				}
			}
			> p{
				line-height: 1.625;
			}
			> p + p{
				padding-top: 1.5em;
			}
		}

	}
	.section_body_learn + .section_body_learn{

		flex-direction: row;
		padding-top: 0;
		> .sbody_img{
			margin-left: -80rem;
			margin-right: 0;
		}

	}

}
@media screen and (max-width: 767px) {

	.section_body_learn{

		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 32rem;
		padding-left: 30rem;
		padding-right: 30rem;
		> .sbody_img{
			> .img{
				img{
					filter: drop-shadow(7px 7px 5px rgba(var(--COL-BLK-rgb),0.2));
				}
			}
		}
		> .sbody_text{
			> .label{
				padding-bottom: 0.75em;
				font-size: 20rem;
				font-weight: var(--WGT-B);
				line-height: 1.2;
				color: var(--COL-TXT2);
			}
			> p{
				line-height: 1.625;
			}
			> p + p{
				padding-top: 1.5em;
			}
		}

	}

}

/* .section_link */

.section_link{
	background-color: var(--COL-GRE);
	@media screen and (min-width: 768px) {
		max-width: 1280rem;
		margin-left: auto;
		margin-right: auto;
		padding-left: calc((100vw - 1280rem)/ 2);
		padding-right: calc((100vw - 1280rem)/ 2);
		padding-top: 104rem;
		padding-bottom: 104rem;
		box-sizing: content-box;
	}
	@media screen and (max-width: 767px) {
		padding: 80rem 40rem;
	}

	> .section_body{
		> .section_label{
			display: flex;
			justify-content: center;
			padding-bottom: 1.2em;
			> .label{
				font-weight: var(--WGT-B);
				line-height: 1.2;
				color: var(--COL-WHT);
				@media screen and (min-width: 768px) {
					font-size: 28rem;
				}
				@media screen and (max-width: 767px) {
					font-size: 22rem;
				}
			}
		}

		@media screen and (min-width: 768px) {
			> .list_link{
				display: flex;
				justify-content: center;
				align-items: center;
				flex-wrap: wrap;
				gap: 20rem 8rem;
			}
		}
		@media screen and (max-width: 767px) {
			> .list_link{
				display: flex;
				flex-direction: column;
				align-items: stretch;
				gap: 5rem;
				> li{
					> .btn_box_arrow{
						width: 100%;
					}
				}
			}
		}
	}
	> .section_body + .section_body{
		@media screen and (min-width: 768px) {
			margin-top: 48rem;
		}
		@media screen and (max-width: 767px) {
			margin-top: 32rem;
		}
	}

}

/* .section_instagram */

.section_instagram{
	background-color: var(--COL-WHT);
	@media screen and (min-width: 768px) {
		max-width: 1280rem;
		margin-left: auto;
		margin-right: auto;
		padding-left: calc((100vw - 1280rem)/ 2);
		padding-right: calc((100vw - 1280rem)/ 2);
		padding-top: 104rem;
		padding-bottom: 104rem;
		box-sizing: content-box;
	}
	@media screen and (max-width: 767px) {
		padding: 80rem 20rem;
	} 

	> .section_label{
		display: flex;
		justify-content: center;
		padding-bottom: 1em;
		> .label{
			font-weight: var(--WGT-B);
			line-height: 1.2;
			color: var(--COL-TXT2);
			@media screen and (min-width: 768px) {
				font-size: 28rem;
			}
			@media screen and (max-width: 767px) {
				font-size: 22rem;
			}
		}
	}

	> .section_body{

	}

}









@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
}


/******************************************************
.page-top
******************************************************/

.page-top{
    position: fixed;
    z-index: 300;
    opacity: 0;
    transition: opacity .5s ease-in-out;
	@media screen and (min-width: 768px) {
		right: 24rem;
		bottom: 24rem;
		width: 56rem;
		height: 56rem;
	}
	@media screen and (max-width: 767px) {
		right: 8rem;
		bottom: 8rem;
		width: 40rem;
		height: 40rem;
	}
	> a{
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		border: solid 1rem rgba(var(--COL-DGRE-rgb), 0.1);
		background: rgba(var(--COL-WHT-rgb), 0.9);
		> svg{
			width: 40%;
			height: 40%;
			transform: rotate(-90deg);
			fill: var(--COL-GRE);
			transition: fill .4s ease-out;
		}
		&::before{
			position: absolute;
			top: 0;
			left: 0;
			display: block;
			width: 100%;
			height: 100%;
			content: "";
			background: var(--GRD-GRE);
			opacity: 0;
			transition: opacity .4s ease-out;
		}
		@media screen and (min-width: 768px) {
			&:hover{
				> svg{
					fill: var(--COL-WHT);
				}
				&::before{
					opacity: 1;
				}
			}
		}
	}
}
.page-top.active{
    opacity: 1;
}

/******************************************************
.footer
******************************************************/

.footer{
	background: var(--GRD-GRE);
	color: var(--COL-WHT);

	@media screen and (min-width: 768px) {
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		align-items: flex-start;
		gap: 40rem;
		max-width: 1200rem;
		margin-left: auto;
		margin-right: auto;
		padding-left: calc((100vw - 1200rem)/ 2);
		padding-right: calc((100vw - 1200rem)/ 2);
		padding-top: 64rem;
		padding-bottom: 56rem;
		box-sizing: content-box;

	}
	@media screen and (max-width: 767px) {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 56rem;
		padding: 56rem 24rem 32rem;
	}

	.sns_nav{
		display: flex;
		justify-content: center;
		gap: 32rem;
		> li{
			> a{
				>svg {
					display: block;
					width: 26rem;
					height: 26rem;
					fill: var(--COL-WHT);
					@media screen and (max-width: 767px) {
						width: 32rem;
						height: 32rem;
					}
				}
				@media screen and (min-width: 768px) {
					&:hover{
						>svg {
							animation: icn_hover .4s cubic-bezier(.175,.885,.32,1.275) 0s;
						}
					}
				}
			}
		}
	}

	.footer_info{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		color: var(--COL-WHT);
		@media screen and (min-width: 768px) {
			gap: 24rem;
		}
		@media screen and (max-width: 767px) {
			gap: 16rem;
		}

		.footer_label{
			@media screen and (min-width: 768px) {
				width: 240rem;
			}
			@media screen and (max-width: 767px) {
				width: 190rem;
			}
		}
		.footer_address{
			font-size: 13rem;
			line-height: 1.5;
			a[href^="tel:"]{
				color: var(--COL-WHT) !important;
			}
		}
		.footer_copy{
			@media screen and (min-width: 768px) {
				padding-top: 1em;
				font-size: 12rem;
			}
			@media screen and (max-width: 767px) {
				font-size: 10rem;
			}
		}

	}

}

@keyframes icn_hover{0%{transform:none}20%{transform:scale(.33)}100%{transform:none}};





@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
}


/******************************************************
汎用クラス
******************************************************/

.hidden{
	height: 0px;
	font-size: 0%;
	line-height: 0%;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	padding: 0;
	margin: 0;
}


@media screen and (min-width: 768px) {

	.small{
		font-size: 14rem;
	}

}
@media screen and (max-width: 767px) {

	.small{
		font-size: 14rem;
	}

}

.red,
.notice{
    color: var(--COL-RED);
}
.gray{
	color:var(--COL-GRY);
}

strong{
    font-family: var(--FNT-base);
    font-weight: var(--WGT-B);
	font-style:normal;
}
em{
    font-family: var(--FNT-base);
    font-weight: var(--WGT-B);
	font-style:normal;
}

.ta_right{
	text-align:right;
}
.ta_left{
	text-align:left;
}
.ta_center{
	text-align:center;
}

/* indent */
.list_ind1,
.list_ind2,
.list_ind1-5{
	padding:1em 0;
}
.ind1,
.list_ind1 li{
	padding-left:1em;
	text-indent:-1em;
}
.ind2,
.list_ind2 li{
	padding-left:2em;
	text-indent:-2em;
}
.ind1-5,
.list_ind1-5 li{
	padding-left:1.5em;
	text-indent:-1.5em;
}

/* dl リスト */
.dl_row{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.dl_row dt{
    width: 6em;
	text-align: left;
}
.dl_row dd{
    width: calc(100% - 6em);
    padding-left: 1em;
	text-align: left;
}
.dl_row.dl_line{
    border-bottom: solid 1rem var(--COL-GRY-01);
}
.dl_row.dl_line dt{
    padding: 0.75em 0;
    border-top: solid 1rem var(--COL-GRY-01);
}
.dl_row.dl_line dd{
    padding: 0.75em 0 0.75em 1em;
    border-top: solid 1rem var(--COL-GRY-01);
}

/* table 表 */
table {
	width: 100%;
/*	table-layout: fixed;*/
	border-collapse: collapse;
	border-spacing: 0;
}
table.table_line {
	border: 1rem solid var(--COL-GRY-01);
}
table.table_line th{
    font-weight: var(--WGT-R);
    color: var(--COL-WHT);
    line-height: 1.5;
	text-align: left;
	vertical-align: top;
	background-color: var(--COL-GRY-01);
	border: 1rem solid var(--COL-GRY-02);
}
table.table_line thead th{
	text-align: center;
	vertical-align: middle;
}
table.table_line thead + tbody th{
    color: var(--COL-TXT); 
	text-align: left;
	vertical-align: top;
	background-color: var(--COL-WHT);
	border: 1rem solid var(--COL-GRY-01);
}
table.table_line td {
    line-height: 1.5;
	text-align: center;
	vertical-align: middle;
	border: 1rem solid var(--COL-GRY-01);
}
table.table_line thead th,
table.table_line tbody th,
table.table_line td{
    padding: 0.5em 1.5em;
}

/* slick で高さを揃える（縦スライド vertical: true にはNG）
.slick-track {
    display: flex !important;
    align-items: stretch;
}
.slick-slide {
    height: auto !important;
} */

/* slick で1つだけのドットを非表示 
.slick-dots > li:only-child {
    display: none;
} */

/* Google 翻訳 
html.translated-ltr .header { top: auto; }
html.translated-ltr.non-toolbar .header { top: 0; }
*/