@charset "UTF-8";
@font-face {
    font-family: 'GT Eesti';
    src: url('../font/GT-Eesti-Display-Regular.woff2') format('woff2'), url('../font/GT-Eesti-Display-Regular.woff') format('woff'), url('../font/GT-Eesti-Display-Regular-2.woff2') format('woff2'), url('../font/GT-Eesti-Display-Regular-2.woff') format('woff'), url('../font/GT-Eesti-Display-Regular.ttf') format('truetype'), url('../font/GT-Eesti-Display-Regular.otf') format('opentype');
}


/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 共通項目 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
*{margin:0;padding:0;text-decoration:none;box-sizing: border-box}fieldset{border:0}body{line-height:1.8}body,dd,dl,dt,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,select,ul{margin:0;padding:0}img{border:0;vertical-align:top}a{text-decoration:none}em{font-style:normal}ul li{list-style-type:none;list-style-image:none}address{font-style:normal}strong {font-weight: bold}img {width: 100%;height: auto}.sp {display: none}
:root {
  --design-width-pc: 1400;
  --design-width-sp: 421;
  --vw-ratio: calc(100vw / var(--design-width-pc));
}
@media (max-width: 767px) {
  :root {
    --vw-ratio: calc(100vw / var(--design-width-sp));
  }
}




/* リンク */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
a {
	color: #282828;
	text-decoration: none;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
a:before {
	transition: 0.3s;
	-webkit-transition: 0.3s;
}


/* カラーコード */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.c-purple {
	color: #925ED2;
}
.c-orange {
	color: #F06400;
}
.c-blue {
	color: #0A9BCD;
}
.c-green {
	color: #00B176;
}
.c-yellow {
	color: #F5B400;
}
.c-white {
	color: #fff;
}
.c-black {
	color: #282828;
}

.bg-purple {
	background: #925ED2;
}
.bg-orange {
	background: #F06400;
}
.bg-blue {
	background: #0A9BCD;
}
.bg-green {
	background: #00B176;
}
.bg-yellow {
	background: #F5B400;
}
.bg-white {
	background: #fff;
}
.bg-black {
	background: #282828;
}
.bg-gray {
	background: #F7F7F7;
}



/* 横幅 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
body {
	background: url("../img/bg.webp") repeat center top;
	font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-size: clamp(14px, calc(16 * var(--vw-ratio)), 24px);
	font-weight: 400;
	color: #282828;
	padding: 0;
	margin: 0;
	letter-spacing: 0;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
}
body.fixed {
	width: 100%;
	height: 100%;
	position: fixed;
	overflow: hidden;
}



/* フォント */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.en {
	font-family: 'GT Eesti', sans-serif;
	font-weight: 500;
}




/* flex */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.flex {
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.flex-start {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
}
.flex-end {
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	 -ms-flex-direction: row-reverse;
		 flex-direction: row-reverse;
}
.flex-center {
	display: flex;
	justify-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: calc(60 * var(--vw-ratio));
	padding: 0 calc(10 * var(--vw-ratio)) 0 calc(15 * var(--vw-ratio));
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 12;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
	#header .logo {
		width: calc(330 * var(--vw-ratio));
	}
		#header .logo a {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			line-height: 1;
		}
			#header .logo a img {
				display: block;
				width: calc(140 * var(--vw-ratio));
				line-height: 1;
			}

			#header .logo a .en {
				display: block;
				line-height: 1.3em;
				margin-left: calc(20 * var(--vw-ratio));
			}

	#header .nav {
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
		#header .nav ul.globalnav li {
			margin-right: calc(30 * var(--vw-ratio));
			position: relative;
		}
			#header .nav ul.globalnav li a {
				height: calc(60 * var(--vw-ratio));
				line-height: calc(60 * var(--vw-ratio));
				font-weight: 500;
			}
			#header .nav ul.globalnav li a:hover,
			#header .nav ul.globalnav li.active a {
				color: #8D8D8D;
			}
			#header .nav ul.globalnav li a.head:before {
				content: "";
				width: 0;
				height: 0;
				border-style: solid;
				border-width: 0 0.6vw 0.6vw 0.6vw;
				border-color: transparent transparent #282828 transparent;
				position: absolute;
				bottom: calc(5 * var(--vw-ratio));
				left: 50%;
				margin-left: -0.5vw;
				opacity: 0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#header .nav ul.globalnav li.has-child.active a.head:before {
				bottom: 0;
				opacity: 1;
			}

			#header .nav ul.globalnav li.has-child ul.sub_list {
				width: calc(200 * var(--vw-ratio));
				border: solid 1px #282828;
				position: absolute;
				left: 50%;
				top: calc(60 * var(--vw-ratio));
				padding: 0;
				overflow: hidden;
				margin-left: calc(-100 * var(--vw-ratio));
				background: #fff;
				visibility: hidden;
				opacity: 0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#header .nav ul.globalnav li.has-child:hover > .sub_list {
				top: calc(60 * var(--vw-ratio));
				visibility: visible;
				opacity: 1;
			}
				#header .nav ul.globalnav li.has-child ul.sub_list li {
					margin-right: 0;
					border-bottom: solid 1px #282828;
				}
				#header .nav ul.globalnav li.has-child ul.sub_list li:nth-last-child(1) {
					border-bottom: none;
				}
					#header .nav ul.globalnav li.has-child ul.sub_list li a {
						display: flex;
						justify-content: flex-start;
						align-items: center;
						height: auto;
						min-height: calc(40 * var(--vw-ratio));
						line-height: 1.3em;
						background: #fff url("../img/icon_arrow_black.svg") no-repeat right calc(12 * var(--vw-ratio)) center / calc(16 * var(--vw-ratio));
						padding: calc(8 * var(--vw-ratio)) calc(33 * var(--vw-ratio)) calc(8 * var(--vw-ratio)) calc(12 * var(--vw-ratio));
						color: #282828;
					}
					#header .nav ul.globalnav li.has-child ul.sub_list li a:hover {
						background: #F7F7F7 url("../img/icon_arrow_black.svg") no-repeat right calc(12 * var(--vw-ratio)) center / calc(16 * var(--vw-ratio));
					}

		#header .nav ul.cta-btn li {
			width: calc(140 * var(--vw-ratio));
			margin-right: calc(2 * var(--vw-ratio));
			position: relative;
		}
			#header .nav ul.cta-btn li a {
				display: block;
				height: calc(40 * var(--vw-ratio));
				font-weight: 600;
				text-align: center;
				line-height: calc(42 * var(--vw-ratio));
			}
				#header .nav ul.cta-btn li.has-child ul.sub_list {
					width: calc(140 * var(--vw-ratio));
					border: solid 1px #925ED2;
					position: absolute;
					left: 50%;
					top: calc(50 * var(--vw-ratio));
					padding: 0;
					overflow: hidden;
					margin-left: calc(-70 * var(--vw-ratio));
					background: #fff;
					visibility: hidden;
					opacity: 0;
					transition: 0.3s;
					-webkit-transition: 0.3s;
				}
				#header .nav ul.cta-btn li.has-child:hover > .sub_list {
					top: calc(40 * var(--vw-ratio));
					visibility: visible;
					opacity: 1;
				}
					#header .nav ul.cta-btn li.has-child ul.sub_list li {
						width: 100%;
						margin-right: 0;
						border-bottom: solid 1px #925ED2;
					}
					#header .nav ul.cta-btn li.has-child ul.sub_list li:nth-last-child(1) {
						border-bottom: none;
					}
						#header .nav ul.cta-btn li.has-child ul.sub_list li a {
							display: flex;
							justify-content: flex-start;
							align-items: center;
							height: auto;
							min-height: calc(40 * var(--vw-ratio));
							line-height: 1.3em;
							background: #fff url("../img/icon_arrow_purple.svg") no-repeat right calc(10 * var(--vw-ratio)) center / calc(16 * var(--vw-ratio));
							padding: calc(8 * var(--vw-ratio)) calc(33 * var(--vw-ratio)) calc(8 * var(--vw-ratio)) calc(10 * var(--vw-ratio));
							text-align: left;
						}
						#header .nav ul.cta-btn li.has-child ul.sub_list li a:hover {
							background: #925ED2 url("../img/icon_arrow_white.svg") no-repeat right calc(10 * var(--vw-ratio)) center / calc(16 * var(--vw-ratio));
							color: #fff;
						}

		#header .nav ul.cta-btn li#menubtn {
			width: calc(70 * var(--vw-ratio));
			height: calc(40 * var(--vw-ratio));
		}
			#menubtn .menu {
				display: block;
				position: relative;
				cursor: pointer;
				border-radius: calc(5 * var(--vw-ratio));
				width: 100%;
				height: calc(40 * var(--vw-ratio));
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
				#menubtn .menu span {
					width: calc(30 * var(--vw-ratio));
					display: inline-block;
					border-radius: calc(1 * var(--vw-ratio));
					position: absolute;
					top: 50%;
					left: 50%;
					margin-left: calc(-15 * var(--vw-ratio));
					height: calc(1 * var(--vw-ratio));
					background: #fff;
					transition: 0.3s;
					-webkit-transition: 0.3s;
				}
				#menubtn .menu span:nth-of-type(1) {
					margin-top: calc(-3 * var(--vw-ratio));
				}
				#menubtn .menu span:nth-of-type(2) {
					margin-top: calc(3 * var(--vw-ratio));
				}

				#menubtn .menu.active .openbtn-area {
					transform: rotateY(-360deg);
				}
					#menubtn .menu.active span {
						background: #fff;
					}
					#menubtn .menu.active span:nth-of-type(1) {
						transform: translateY(6px) rotate(-155deg);
						margin-top: -6px;
					}
					#menubtn .menu.active span:nth-of-type(2) {
						transform: translateY(-6px) rotate(155deg);
						margin-top: 6px;
					}
@media screen and (max-width: 767px) {
	#header .logo {
		width: auto;
	}
		#header .logo a {
			display: block;
			line-height: 1;
		}
			#header .logo a img {
				display: block;
				width: calc(100 * var(--vw-ratio));
			}

			#header .logo a .en {
				font-size: calc(10 * var(--vw-ratio));
				margin-top: calc(8 * var(--vw-ratio));
				margin-left: 0;
			}
				#header .logo a .en br,
				#header .logo a .en span {
					display: none;
				}

	#header .nav {
		display: block;
	}
		#header .nav ul.globalnav {
			display: none;
		}

		#header .nav ul.cta-btn {
		}
}


	



	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フローティングナビ */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#flowting {
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 10;
}
	#flowting li {
		margin-top: calc(2 * var(--vw-ratio));	
	}
		#flowting li a {
			display: block;
			width: calc(50 * var(--vw-ratio));	
			height: calc(170 * var(--vw-ratio));
			-ms-writing-mode: tb-rl;
			writing-mode: vertical-rl;
			text-align: center;
			font-weight: 700;
			line-height: calc(48 * var(--vw-ratio));	
		}
		#flowting li a:hover {
			background: #282828;
		}
@media screen and (max-width: 767px) {
	#flowting {
		width: 100%;
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
	}
		#flowting li {
			width: 33.3333333%;
			margin-top: 0;	
		}
			#flowting li a {
				display: block;
				width: 100%;
				height: calc(44 * var(--vw-ratio));
				font-size: calc(12 * var(--vw-ratio));
				-ms-writing-mode: horizontal-tb;
				writing-mode: horizontal-tb;
				line-height: calc(44 * var(--vw-ratio));	
			}
}


	



	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* メニュー展開 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#menubox {
	display: none;
	width: 100%;
	height: 100vh;
	background: #fff url("../img/menu_bg.svg") no-repeat center bottom / 120%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
}
	#menubox .menunav {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100vh;
	}
		#menubox .menunav .globalnav {
			width: 90%;
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			column-gap: calc(50 * var(--vw-ratio));
			row-gap: calc(50 * var(--vw-ratio));
		}
			#menubox .menunav .globalnav .box .head {
				background: #F7F7F7;
				line-height: 1;
				padding: calc(12 * var(--vw-ratio)) calc(15 * var(--vw-ratio));
				font-weight: 700;
				margin-bottom: calc(20 * var(--vw-ratio));
			}

			#menubox .menunav .globalnav .box ul li {
				margin-bottom: calc(10 * var(--vw-ratio));
			}
				#menubox .menunav .globalnav .box ul li a {
					display: block;
					line-height: 1.3em;
					padding-left: calc(22 * var(--vw-ratio));
					background: url("../img/icon_arrow_black.svg") no-repeat left center / calc(15 * var(--vw-ratio));
				}
				#menubox .menunav .globalnav .box ul li a:hover {
					opacity: 0.7;
					padding-left: calc(18 * var(--vw-ratio));
				}
@media screen and (max-width: 767px) {
	#menubox {
		height: 100dvh;
	}
		#menubox .menunav {
			display: block;
			overflow-y: scroll;
			height: 100dvh;
		}
			#menubox .menunav .globalnav {
				display: block;
				width: 100%;
				padding: calc(90 * var(--vw-ratio)) calc(35 * var(--vw-ratio)) calc(40 * var(--vw-ratio)) calc(35 * var(--vw-ratio));
			}
				#menubox .menunav .globalnav .box {
					margin-bottom: calc(40 * var(--vw-ratio));
				}
				#menubox .menunav .globalnav .box:nth-last-child(1) {
					margin-bottom: 0;
				}
}





	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* パンクズ */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#breadcrumbs {
	width: calc(100% - calc(100 * var(--vw-ratio)));
	margin: 0 auto;
	padding-top: calc(75 * var(--vw-ratio));
}
	#breadcrumbs a {
		color: #7B7B7B;
		text-decoration: underline;
	}
	#breadcrumbs a:hover {
		text-decoration: none;
	}
@media screen and (max-width: 767px) {
	#breadcrumbs {
		width: calc(100% - calc(30 * var(--vw-ratio)));
		padding-top: calc(70 * var(--vw-ratio));
		font-size: calc(10 * var(--vw-ratio));
	}
}





	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ページタイトル */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* pagetitle */
#pagetitle .text {
	padding-top: calc(60 * var(--vw-ratio));
	text-align: center;
}
	#pagetitle .text h1 {
		font-size: calc(50 * var(--vw-ratio));
		font-weight: 700;
		line-height: 1.3em;
		margin-bottom: calc(10 * var(--vw-ratio));
	}

	#pagetitle .text .en {
		line-height: 1.3em;
	}

/* title */
.title {
	margin-bottom: calc(50 * var(--vw-ratio));
	text-align: center;
}
	.title .en {
		font-weight: 500;
		line-height: 1.3em;
		letter-spacing: 0.04em;
		margin-bottom: calc(10 * var(--vw-ratio));
	}

	.title h2 {
		font-size: calc(34 * var(--vw-ratio));
		line-height: 1.3em;
	}
@media screen and (max-width: 767px) {
	/* pagetitle */
	#pagetitle .text {
		padding-top: calc(40 * var(--vw-ratio));
	}
		#pagetitle .text h1 {
			font-size: calc(38 * var(--vw-ratio));
			margin-bottom: calc(8 * var(--vw-ratio));
		}

	/* title */
	.title {
		margin-bottom: calc(35 * var(--vw-ratio));
	}
		.title h2 {
			font-size: calc(30 * var(--vw-ratio));
		}
}




	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* main */
#main {
	display: block;
}
.inner {
	padding-right: calc(150 * var(--vw-ratio));
	padding-left: calc(150 * var(--vw-ratio));
	position: relative;
}
.area .inner {
	padding-right: calc(100 * var(--vw-ratio));
	padding-left: calc(100 * var(--vw-ratio));
}
.inner_full {
	width: 100%;
	margin: 0 auto;
	position: relative;
}
	
/* area */
.area {
	margin: 0 calc(50 * var(--vw-ratio));
}

/* img-over */
a .img-over {
	overflow: hidden;
}
	a .img-over img {
		-moz-transition: -moz-transform 0.2s linear;
		-webkit-transition: -webkit-transform 0.2s linear;
		-o-transition: -o-transform 0.2s linear;
		-ms-transition: -ms-transform 0.2s linear;
		transition: transform 0.2s linear;
	}
	a:hover .img-over img {
		-webkit-transform: scale(1.05);
		-moz-transform: scale(1.05);
		-o-transform: scale(1.05);
		-ms-transform: scale(1.05);
		transform: scale(1.05);
	}

/* wrap */
.wrap-beginning {
	padding-top: calc(100 * var(--vw-ratio));
}
.wrap-top {
	padding-top: calc(150 * var(--vw-ratio));
}
.wrap-bottom {
	padding-bottom: calc(150 * var(--vw-ratio));
}

/* txt */
.txt-20 {
	font-size: calc(20 * var(--vw-ratio));
	line-height: calc(28 * var(--vw-ratio));
}
.txt-18 {
	font-size: calc(18 * var(--vw-ratio));
	line-height: calc(40 * var(--vw-ratio));
}
.txt-17 {
	font-size: calc(17 * var(--vw-ratio));
	line-height: calc(36 * var(--vw-ratio));
}
.txt-16 {
	font-size: calc(16 * var(--vw-ratio));
	line-height: calc(32 * var(--vw-ratio));
}
.txt-15 {
	font-size: calc(16 * var(--vw-ratio));
	line-height: calc(30 * var(--vw-ratio));
}
.txt-14 {
	font-size: calc(14 * var(--vw-ratio));
	line-height: calc(26 * var(--vw-ratio));
}
.txt-13 {
	font-size: calc(13 * var(--vw-ratio));
	line-height: calc(24 * var(--vw-ratio));
}
.txt-12 {
	font-size: calc(12 * var(--vw-ratio));
	line-height: calc(24 * var(--vw-ratio));
}
.txt-11 {
	font-size: calc(11 * var(--vw-ratio));
	line-height: calc(21 * var(--vw-ratio));
}
.txt-10 {
	font-size: calc(10 * var(--vw-ratio));
	line-height: calc(22 * var(--vw-ratio));
}
	
/* btn */
.btn {
	width: calc(250 * var(--vw-ratio));
}
	.btn a {
		display: block;
		height: calc(50 * var(--vw-ratio));
		background: #282828 url(../img/icon_arrow_white.svg) no-repeat right calc(20 * var(--vw-ratio)) center / calc(15 * var(--vw-ratio));
		border-radius: calc(25 * var(--vw-ratio));
		line-height: calc(50 * var(--vw-ratio));
		font-weight: 500;
		text-align: center;
		color: #fff;
	}
	.btn a:hover {
		background: #000 url(../img/icon_arrow_white.svg) no-repeat right calc(15 * var(--vw-ratio)) center / calc(15 * var(--vw-ratio));
	}
	
/* more */
a .more {
	display: inline-block;
	height: calc(40 * var(--vw-ratio));
	line-height: calc(40 * var(--vw-ratio));
	padding-right: calc(50 * var(--vw-ratio));
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
a .more.c-blue {
	background: url("../img/icon_arrow_blue.svg") no-repeat right center / calc(40 * var(--vw-ratio));
}
a .more.c-purple {
	background: url("../img/icon_arrow_purple.svg") no-repeat right center / calc(40 * var(--vw-ratio));
}
a .more.c-orange {
	background: url("../img/icon_arrow_orange.svg") no-repeat right center / calc(40 * var(--vw-ratio));
}
a:hover .more {
	padding-right: calc(40 * var(--vw-ratio));
}
a:hover .more.c-blue {
	background: url("../img/icon_arrow_blue.svg") no-repeat right center / calc(30 * var(--vw-ratio));
}
a:hover .more.c-purple {
	background: url("../img/icon_arrow_purple.svg") no-repeat right center / calc(30 * var(--vw-ratio));
}
a:hover .more.c-orange {
	background: url("../img/icon_arrow_orange.svg") no-repeat right center / calc(30 * var(--vw-ratio));
}
@media screen and (max-width: 767px) {
	.sp {
		display: block;
	}
	.pc {
		display: none !important;
	}
	
	/* inner */
	.inner {
		padding-right: calc(25 * var(--vw-ratio));
		padding-left: calc(25 * var(--vw-ratio));
	}
	.area .inner {
		padding-right: calc(25 * var(--vw-ratio));
		padding-left: calc(25 * var(--vw-ratio));
	}

	/* wrap */
	.wrap-beginning {
		padding-top: calc(50 * var(--vw-ratio));
	}
	.wrap-top {
		padding-top: calc(75 * var(--vw-ratio));
	}
	.wrap-bottom {
		padding-bottom: calc(75 * var(--vw-ratio));
	}
	
	/* area */
	.area {
		margin: 0 calc(10 * var(--vw-ratio));
	}
	
	/* btn */
	.btn {
		width: 60%;
		margin: 0 auto;
	}
	
	/* more */
	a .more {
		height: calc(30 * var(--vw-ratio));
		line-height: calc(30 * var(--vw-ratio));
		padding-right: calc(40 * var(--vw-ratio));
	}
	a .more.c-blue {
		background: url("../img/icon_arrow_blue.svg") no-repeat right center / calc(30 * var(--vw-ratio));
	}
	a .more.c-purple {
		background: url("../img/icon_arrow_purple.svg") no-repeat right center / calc(30 * var(--vw-ratio));
	}
	a .more.c-orange {
		background: url("../img/icon_arrow_orange.svg") no-repeat right center / calc(30 * var(--vw-ratio));
	}
	a:hover .more {
		padding-right: calc(40 * var(--vw-ratio));
	}
	a:hover .more.c-blue {
		background: url("../img/icon_arrow_blue.svg") no-repeat right center / calc(30 * var(--vw-ratio));
	}
	a:hover .more.c-purple {
		background: url("../img/icon_arrow_purple.svg") no-repeat right center / calc(30 * var(--vw-ratio));
	}
	a:hover .more.c-orange {
		background: url("../img/icon_arrow_orange.svg") no-repeat right center / calc(30 * var(--vw-ratio));
	}
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フッター */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#page-top {
	display: none;
	width: calc(50 * var(--vw-ratio));
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 8;
}
	#page-top a {
		display: block;
	}
	#page-top a:hover {
		opacity: 0.7;
	}

#footer .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: calc(40 * var(--vw-ratio));
	padding-bottom: calc(40 * var(--vw-ratio));
}
	#footer .logo a {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		line-height: 1;
	}
		#footer .logo a img {
			display: block;
			width: calc(158 * var(--vw-ratio));
			line-height: 1;
		}

		#footer .logo a .en {
			display: block;
			line-height: 1.3em;
			margin-left: calc(20 * var(--vw-ratio));
		}

	#footer .text .linktxt {
		margin-bottom: calc(15 * var(--vw-ratio));
		line-height: 1;
		text-align: right;
	}
		#footer .text .linktxt a {
			text-decoration: underline;
			margin-left: calc(20 * var(--vw-ratio));
		}
		#footer .text .linktxt a:hover {
			text-decoration: none;
		}

	#footer .text .copyright {
		line-height: 1;
		text-align: right;
	}
@media screen and (max-width: 767px) {
	#page-top {
		width: calc(44 * var(--vw-ratio));
		left: auto;
		right: 0;
		bottom: calc(44 * var(--vw-ratio));
	}
		#page-top a:hover {
			opacity: 1;
		}
	
	#footer .inner {
		display: block;
		padding-bottom: calc(80 * var(--vw-ratio))
	}
		#footer .logo a {
			display: block;
			line-height: 1;
			text-align: center;
		}
			#footer .logo a img {
				width: calc(140 * var(--vw-ratio));
				margin: 0 auto;
			}

			#footer .logo a .en {
				margin-top: calc(10 * var(--vw-ratio));
				font-size: calc(10 * var(--vw-ratio));
			}
				#footer .logo a .en br {
					display: none;
				}

		#footer .text .linktxt {
			margin-top: calc(30 * var(--vw-ratio));
			margin-bottom: calc(20 * var(--vw-ratio));
			text-align: center;
		}
			#footer .text .linktxt a:nth-child(1) {
				margin-left: 0;
			}

		#footer .text .copyright {
			text-align: center;
		}
}






/* img-wrap */
.img-wrap {
	opacity: 0;
}
.img-wrap.img-animation {
	animation: img-opacity 2s cubic-bezier(.4, 0, .2, 1);
	overflow: hidden;
	position: relative;
	opacity: 1;
}

.img-wrap.img-animation:before {
  animation: img-animation 2s cubic-bezier(.4, 0, .2, 1) forwards;
  background: #fff;
  bottom: 0;
  content: '';
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}
@keyframes img-opacity {
  0% {
	opacity: 0;
  }
	
}
@keyframes img-animation {
  100% {
	transform: translateX(101%);
	opacity: 1;
  }
}