@font-face {
	font-family: 'SourceHanSerifJP Regular';
	src: url(../fonts/SourceHanSerifJP/SourceHanSerifJP-Regular.otf) format('opentype');
}

@font-face {
	font-family: 'Sawarabi Mincho';
	src: url(../fonts/SawarabiMincho-Regular.ttf) format('truetype');
}

:root {
	--pc-height: 80px;
	--sp-height: 68px;
	--header_bg_out: rgba(54, 65, 84, 0.9);
	--footer_bg: var(--header_bg_out);
	--dark-base_out: var(--header_bg_out);
	--blue_icon_bg_out: rgba(6, 160, 233, 1);
	--contact_bg_out:  rgba(255, 102, 0, 1);
	--contact_bg_over: rgba(255, 51, 0, 1);
	--nav_link_over: rgba(255, 204, 51, 1);
	--font-mincho: 'Hiragino Mincho ProN', 'SourceHanSerifJP Regular', 'ＭＳ Ｐ明朝', 'MS明朝', serif;
	--logo_image_svg: url('data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_1%22%20data-name%3D%221%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%2088%2082%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%20%7Bfill%3A%20%23fff%3Bstroke-width%3A%200px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M32.47818%2C29.8969c.33362-.62029.15882-.88769-.56689-.89212-.55786-.00339-3.02491-.00879-3.75732%2C0-.94955-.00879-1.42473.47929-1.90362%2C1.11023-.27175.35814-3.42394%2C4.45537-3.85693%2C4.95685-.07131.08252-.18947.14826-.33539.12188-.13535-.02452-.19335-.15995-.20706-.26489v-5.21747c0-.36492-.29587-.66078-.66078-.66078h-7.9294c-.36491%2C0-.66078.29587-.66078.66078v22.46666c0%2C.36492.29587.66078.66078.66078h7.9294c.36491%2C0%2C.66078-.29587.66078-.66078v-9.85361c.06606-.14584.16084-.28224.30208-.34531.36927-.16495.93455-.11156%2C1.374-.01428.52914.11728%2C1.11418.25683%2C1.45877.72612.35048.47736.3925%2C1.06248.37363%2C1.6543v7.83278c0%2C.365.29587.66078.66078.66078h4.84407c.365%2C0%2C.66078-.29579.66078-.66078l-.01492-6.52452-.00073-3.34619c-.01121-1.5254-1.2351-2.73945-2.90746-2.90747-.52826-.05308-2.11286-.19278-2.38679-.2344-.27385-.0417-.36185-.28643-.18101-.54834.48946-.70878%2C6.22735-8.31732%2C6.44401-8.72022Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M47.45526%2C37.74855h5.99077c.365%2C0%2C.66078-.29642.66078-.66219v-5.17271c0-1.60916-1.30172-2.91365-2.90746-2.91365h-13.59558c-1.60574%2C0-2.90746%2C1.30449-2.90746%2C2.91365v18.01152c0%2C1.60916%2C1.30172%2C2.91365%2C2.90746%2C2.91365h13.59558c1.60574%2C0%2C2.90746-1.30449%2C2.90746-2.91365v-2.90735c0-.36569-.29579-.66219-.66078-.66219h-5.99077c-.36491%2C0-.66078.2965-.66078.66219v2.44498c0%2C.43885-.35499.7946-.79291.7946h-1.9713c-.43791%2C0-.79291-.35575-.79291-.7946v-5.24982c0-.43885.35499-.7946.79291-.7946h9.28363c.43791%2C0%2C.79291-.35575.79291-.7946v-1.58103c0-.43885-.35499-.7946-.79291-.7946h-9.28363c-.43791%2C0-.79291-.35575-.79291-.7946v-7.03617c0-.43885.35499-.7946.79291-.7946h1.9713c.43791%2C0%2C.79291.35575.79291.7946v4.66895c0%2C.36577.29587.66219.66078.66219Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M73.71238%2C29h-14.1543c-1.46285%2C0-2.64876%2C1.18591-2.64876%2C2.64876v18.54131c0%2C1.46285%2C1.18591%2C2.64876%2C2.64876%2C2.64876h14.1543c1.46285%2C0%2C2.64876-1.18591%2C2.64876-2.64876v-5.44706c0-.36577-.2965-.66219-.66219-.66219h-6.75988c-.36577%2C0-.66219.29642-.66219.66219v4.94047c0%2C.43885-.35575.7946-.7946.7946h-1.13054c-.43885%2C0-.7946-.35575-.7946-.7946v-17.0454c0-.43885.35575-.7946.7946-.7946h1.13054c.43885%2C0%2C.7946.35575.7946.7946v6.63604c0%2C.36577.2965.66219.66219.66219h6.75988c.36577%2C0%2C.66219-.29642.66219-.66219v-7.62536c0-1.46285-1.18591-2.64876-2.64876-2.64876Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M53.78217%2C9.06226c-8.31744-2.79224-2.00647-7.59271%2C1.03357-9.06226C38.0351%2C2.61395.53876%2C15.94562%2C0%2C41c.11688%2C18.92712%2C25.00372%2C28.84448%2C34.21783%2C31.93774%2C8.31744%2C2.79218%2C2.00647%2C7.59271-1.03357%2C9.06226%2C16.78064-2.61395%2C54.27698-15.94568%2C54.81573-41-.11688-18.92712-25.00372-28.84448-34.21783-31.93774ZM44%2C64c-21.53912%2C0-39-10.29749-39-23s17.46088-23%2C39-23%2C39%2C10.29742%2C39%2C23-17.46088%2C23-39%2C23Z%22%2F%3E%3C%2Fsvg%3E');
}

* {
	margin: 0;
	padding: 0;
	line-height: 1;
	box-sizing: border-box;
}

html, body {
	font-size: 16px;
}

body {
	margin: 0;
	padding: 0;
	background-color: #fff;
	font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', /* 'Hiragino Sans', */ 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, 'メイリオ', arial, sans-serif;
	color: #000;
	-webkit-text-size-adjust: 100%; /* for iPhone */
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),(min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}

ul, ol {
	list-style: none;
}

fieldset, img {
	border: none;
}

table {
	border-collapse: collapse;
}

a, a:focus, *:focus {
	outline: none;
}

a:link {
	text-decoration: none;
	color: rgba(0, 151, 255, 1);
}

a:visited {
	text-decoration: none;
	color: rgba(0, 151, 255, 0.5);
}

a:hover, 
a:active {
	text-decoration: underline;
}

#main {
	margin: 0;
	padding: 0;
}

/****************************
  SP
****************************/

@media (max-width: 999px) {
	.header {
		position: fixed;
		z-index: 200;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: var(--sp-height);
		margin: 0;
		padding: 0;
		background-color: var(--header_bg_out);
		transition: all 0.5s;
	}

	.header.hide {
		transform: translateY(calc(0px - var(--sp-height)));
	}

	.header > div {
		margin: 0;
		padding: 0;
	}

	#logo {
		display: table;
		width: calc(100% - var(--sp-height));
		height: var(--sp-height);
		margin: 0;
		padding: 0;
		background-image: var(--logo_image_svg);
		background-repeat: no-repeat;
		background-position: left 15px center;
		background-size: auto 32px;
	}

	#logo > a {
		display: table-cell;
		margin: 0;
		padding: 0 0 0 65px;
		vertical-align: middle;
		text-align: left;
		font-size: 16px;
		color: #fff;
		text-decoration: none;
	}

	#global_nav {
		position: fixed;
		top: var(--sp-height);
		bottom: 0;
		display: none;
		width: 100%;
		margin: 0;
		padding: 0 0 40px;
		background-color: var(--header_bg_out);
		text-align: left;
		transition: all 0.5s;
	}

	.open #global_nav {
		display: block;
		overflow-y: auto;
	}

	#global_nav > ul {
		display: block;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	#global_nav > ul > li {
		display: block;
		width: 100%;
		margin: 0;
		padding: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 1);
		text-align: left;
		font-weight: normal;
		font-style: normal;
		font-size: 16px;
		line-height: 1;
	}

	#global_nav > ul > li > a {
		display: block;
		margin: 0;
		padding: 20px 16px;
		text-align: left;
		font-weight: normal;
		font-size: 16px;
		line-height: 1;
		color: #fff;
		text-decoration: none;
	}

	#global_nav > ul > li:last-child, 
	#global_nav > ul > li:last-child > a {
		border-bottom: none;
	}

	#global_nav > ul > li > a:hover, 
	#global_nav > ul > li > a.active {
		text-decoration: none;
	}

	#global_nav > ul > li > ul {
		margin: 0;
		padding: 0;
	}

	#global_nav > ul > li > ul > li {
		margin: 0;
		padding: 0;
	}

	#global_nav > ul > li > ul > li > a {
		display: block;
		margin: 0;
		padding: 10px 10px 20px 32px;
		text-align: left;
		font-weight: normal;
		font-size: 14px;
		line-height: 1;
		color: #fff;
		text-decoration: none;
	}

	#nav-toggle {
		display: flex;
		justify-content: center;
		position: absolute;
		z-index: 400;
		top: 0;
		right: 0;
		width: var(--sp-height);
		height: var(--sp-height);
		margin: 0 auto;
		padding: 0;
		text-align: center;
		cursor: pointer;
		text-decoration: none;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
	}

	#nav-toggle > div {
		width: 20px;
		height: 14px;
		margin: 27px 0 0;
		padding: 0;
		position: relative;
	}

	#nav-toggle span {
		display: block;
		position: absolute;
		width: 100%;
		height: 2px;
		background-color: #fff;
		left: 0;
		transition: 0.2s;
	}

	#nav-toggle span:nth-child(1) {
		top: 0;
	}

	#nav-toggle span:nth-child(2) {
		top: 6px;
	}

	#nav-toggle span:nth-child(3) {
		top: 12px;
	}

	.open #nav-toggle span:nth-child(1) {
		top: 6px;
		transform: rotate(-45deg);
	}

	.open #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}

	.open #nav-toggle span:nth-child(3) {
		top: 6px;
		transform: rotate(45deg);
	}
}

/****************************
  PC
****************************/

@media (min-width: 1000px) {
	#nav-toggle {
		display: none;
	}

	.header {
		position: fixed;
		z-index: 200;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: var(--pc-height);
		margin: 0;
		padding: 0;
		background-color: var(--header_bg_out);
		transition: all 0.5s;
	}

	.header.hide {
		transform: translateY(calc(0px - var(--pc-height)));
	}

	.header > div {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		margin: 0;
		padding: 0 30px 0 50px;
	}

	#logo {
		display: table;
		margin: 0;
		padding: 0;
	}

	#logo > a {
		display: table-cell;
		height: var(--pc-height);
		margin: 0;
		padding: 0 0 0 60px;
		background-image: var(--logo_image_svg);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 44px 41px;
		text-align: left;
		vertical-align: middle;
		font-style: normal;
		font-weight: normal;
		font-size: 20px;
		line-height: 1;
		color: #fff;
		text-decoration: none;
	}

	#global_nav {
		position: static;
		transform: none;
		width: initial;
		margin: 0;
		padding: 0;
	}

	#global_nav > ul {
		width: initial;
		margin: 0;
		padding: 0;
	}

	#global_nav > ul > li {
		display: inline-block;
		margin: 0;
		padding: 0;
	}

	#global_nav > ul > li > a {
		display: inline-block;
		margin: 0;
		padding: 0 12px;
		font-weight: normal;
		font-style: normal;
		font-size: 14px;
		line-height: 42px;
		color: rgba(255, 255, 255, 1);
		text-decoration: none;
		transition: all 0.3s;
	}

	#global_nav > ul > li > a:hover, 
	#global_nav > ul > li > a.active {
		color: var(--nav_link_over);
		text-decoration: none;
	}

	#global_nav > ul > li.contact > a {
		padding: 0 20px;
		background-color: var(--contact_bg_out);
	}

	#global_nav > ul > li.contact > a:hover, 
	#global_nav > ul > li.contact > a.active {
		background-color: var(--contact_bg_over);
		color: rgba(255, 255, 255, 1);
		text-decoration: none;
	}

	#global_nav > ul > li {
		position: relative;
	}

	#global_nav > ul > li > ul {
		position: absolute;
		z-index: 1;
		top: 90%;
		left: 50%;
		transform: translateX(-50%);
		margin: 0;
		padding: 0;
		background-color: var(--header_bg_out);
		text-align: center;
		white-space: nowrap;
		transition: all 0.2s ease;
		visibility: hidden;
		opacity: 0;
	}

	#global_nav > ul > li:hover > ul {
		top: 100%;
		margin: 0;
		padding: 0;
		visibility: visible;
		opacity: 1;
	}

	#global_nav > ul > li > ul > li {
		display: block;
		margin: 0;
		padding: 0;
		text-align: center;
	}

	#global_nav > ul > li > ul > li > a {
		display: block;
		margin: 0;
		padding: 0 15px;
		font-size: 14px;
		line-height: 50px;
		color: #fff;
		text-decoration: none;
	}

	#global_nav > ul > li > ul > li > a:hover {
		color: var(--nav_link_over);
		text-decoration: none;
	}
}
@media (min-width: 1100px) {
	#global_nav > ul > li > a {
		padding: 0 15px;
	}
}
@media (min-width: 1200px) {
	#global_nav > ul > li > a {
		padding: 0 20px;
	}
}

/****************************
  footer
****************************/

#footer {
	width: 100%;
	margin: 0;
	padding: 20px 15px;
	background-color: var(--footer_bg);
}

#footer > div {
	width: 100%;
	margin: 0;
	padding: 0;
}

#footer a {
	color: #fff;
	text-decoration: none;
}

#footer a:hover {
	text-decoration: underline;
}

#footer > div > div > a {
	display: block;
	margin: 0;
	padding: 0 0 0 40px;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: auto 26px;
	background-image: var(--logo_image_svg);
	text-align: left;
	font-weight: normal;
	font-style: normal;
	font-size: 15px;
	line-height: 26px;
}

#footer > div > nav {
	margin: 0;
	padding: 0;
}

#footer > div > nav ul {
	margin: 0;
	padding: 0 0;
	text-align: left;
}

#footer > div > nav li {
	display: inline-block;
	margin: 0;
	padding: 15px 10px 0 0;
}

#footer > div > nav li a {
	font-size: 13px;
	line-height: 1;
}

#copy {
	display: block;
	width: 100%;
	margin: 0;
	padding: 30px 0 0;
	text-align: left;
	font-weight: normal;
	font-style: normal;
	font-size: 12px;
	line-height: 1;
	color: #fff;
}

#now_year {
	padding: 0 0.5em 0 0;
}

@media (min-width: 1000px) {
	#footer {
		padding: 15px 40px 20px;
	}

	#footer > div {
		display: flex;
		justify-content: space-between;
	}

	#footer > div > div > a {
		font-size: 15px;
	}

	#footer > div > nav {
		margin: 0;
		padding: 0 0 0 20px;
	}

	#footer > div > nav ul {
		margin: 0;
		padding: 0;
		text-align: left;
	}

	#footer > div > nav li {
		display: inline-block;
		margin: 0;
		padding: 5px 0 0 1em;
	}

	#footer > div > nav li a {
		font-size: 14px;
		line-height: 1;
	}

	#copy {
		padding: 12px 0 0;
		text-align: right;
		font-size: 13px;
		line-height: 1;
	}
}

/****************************
  fix footer
****************************/

body, 
#wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

#footer {
	margin-top: auto;
}

/****************************
  toTop
****************************/

a#toTop {
	display: none;
	position: fixed;
	z-index: 150;
	right: 15px;
	bottom: 180px;
	width: 57px;
	height: 66px;
	margin: 0;
	padding: 0;
	background-position: left top;
	background-size: 57px 66px;
	background-repeat: no-repeat;
	background-image: url('data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_x31_%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%2057%2066%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.st0%20%7B%20fill%3A%20none%3B%20stroke%3A%20%23002f6d%3B%20stroke-miterlimit%3A%2010%3B%20stroke-width%3A%202px%3B%20%7D%20.st1%20%7B%20fill%3A%20%23002f6d%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22st0%22%20cx%3D%2228.5%22%20cy%3D%2244%22%20r%3D%2221%22%2F%3E%20%3Cg%3E%20%3Cg%3E%20%3Cpath%20class%3D%22st1%22%20d%3D%22M2.264.176c1.004%2C0%2C1.6.132%2C2.141.548.662.515.895%2C1.339.895%2C2.03%2C0%2C2.557-2.363%2C2.557-3.213%2C2.557h-1.049v3.512H0V.176h2.264ZM2.197%2C4.368c.717%2C0%2C2.065%2C0%2C2.065-1.603%2C0-1.645-1.314-1.645-2.065-1.645h-1.159v3.248h1.159Z%22%2F%3E%20%3Cpath%20class%3D%22st1%22%20d%3D%22M8.025%2C6.267l-.949%2C2.558h-1.171L9.217.177h1.457l3.312%2C8.648h-1.17l-.95-2.557h-3.841ZM11.525%2C5.346l-1.579-4.215-1.578%2C4.215h3.157Z%22%2F%3E%20%3Cpath%20class%3D%22st1%22%20d%3D%22M22.044%2C1.79c-.817-.593-1.645-.846-2.66-.846-2.186%2C0-3.754%2C1.34-3.754%2C3.524%2C0%2C1.722.972%2C3.588%2C3.908%2C3.588%2C1.049%2C0%2C1.689-.241%2C1.965-.34v-2.612h-2.428v-.933h3.455v4.226c-.961.405-1.988.603-3.036.603-3.433%2C0-4.902-2.272-4.902-4.511%2C0-2.623%2C1.987-4.489%2C4.803-4.489%2C1.589%2C0%2C2.605.571%2C3.013.802l-.364.988Z%22%2F%3E%20%3Cpath%20class%3D%22st1%22%20d%3D%22M29.009%2C3.875v.944h-3.853v3.062h4.383v.944h-5.421V.176h5.255v.944h-4.218v2.754h3.854Z%22%2F%3E%20%3Cpath%20class%3D%22st1%22%20d%3D%22M37.795%2C8.825h-1.038V1.12h-2.915V.176h6.867v.944h-2.914v7.705Z%22%2F%3E%20%3Cpath%20class%3D%22st1%22%20d%3D%22M45.863%2C0c2.483%2C0%2C4.504%2C1.79%2C4.504%2C4.5s-2.021%2C4.5-4.504%2C4.5-4.515-1.767-4.515-4.5%2C2.042-4.5%2C4.515-4.5ZM45.863%2C8.056c2.108%2C0%2C3.477-1.722%2C3.477-3.556s-1.369-3.556-3.477-3.556-3.489%2C1.713-3.489%2C3.556c0%2C1.844%2C1.38%2C3.556%2C3.489%2C3.556Z%22%2F%3E%20%3Cpath%20class%3D%22st1%22%20d%3D%22M53.964.176c1.004%2C0%2C1.6.132%2C2.141.548.663.516.895%2C1.339.895%2C2.031%2C0%2C2.557-2.363%2C2.557-3.213%2C2.557h-1.049v3.512h-1.038V.176h2.264ZM53.898%2C4.368c.717%2C0%2C2.065%2C0%2C2.065-1.603%2C0-1.645-1.314-1.645-2.065-1.645h-1.159v3.248h1.159Z%22%2F%3E%20%3C%2Fg%3E%20%3Cpolyline%20class%3D%22st0%22%20points%3D%2238.148%2046.961%2028.499%2037.359%2018.852%2046.961%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
	text-decoration: none;
}

@media (min-width: 1000px) {
	a#toTop {
		right: 40px;
		bottom: 120px;
	}
}

/****************************
  effect
****************************/

.effect,
.effect_scroll {
	overflow: hidden;
}

/*
@media (max-width: 820px) {
	.effect .effect_each, 
	.effect_scroll .effect_scroll_each {
		opacity: 1;
		transition: none;
	}

	.effect_slide_left, 
	.effect_slide_right, 
	.effect_slide_top, 
	.effect_slide_bottom,
	.effect_view {
		transform: translate(0, 0);
	}

	.effect .effect_each.delay1, 
	.effect_scroll .effect_scroll_each.delay1, 
	.effect .effect_each.delay2, 
	.effect_scroll .effect_scroll_each.delay2, 
	.effect .effect_each.delay3, 
	.effect_scroll .effect_scroll_each.delay3, 
	.effect .effect_each.delay4, 
	.effect_scroll .effect_scroll_each.delay4, 
	.effect .effect_each.delay5, 
	.effect_scroll .effect_scroll_each.delay5, 
	.effect .effect_each.delay6, 
	.effect_scroll .effect_scroll_each.delay6, 
	.effect .effect_each.delay7, 
	.effect_scroll .effect_scroll_each.delay7 {
		transition-delay: 0;
	}
}
*/

@media (min-width: 821px) {
	.effect .effect_each, 
	.effect_scroll .effect_scroll_each {
		opacity: 0;
		transition: all 1.5s ease 0s;
	}

	.effect .effect_each.effect_view, 
	.effect_scroll .effect_scroll_each.effect_view {
		opacity: 1;
		transform: translate(0, 0);
	}

	.effect_slide_left {
		transform: translate(20px, 0);
	}

	.effect_slide_right {
		transform: translate(-20px, 0);
	}

	.effect_slide_top {
		transform: translate(0, 20px);
	}

	.effect_slide_bottom {
		transform: translate(0, -20px);
	}

	.effect .effect_each.delay1, 
	.effect_scroll .effect_scroll_each.delay1 {
		transition-delay: 0.4s;
	}

	.effect .effect_each.delay2, 
	.effect_scroll .effect_scroll_each.delay2 {
		transition-delay: 0.6s;
	}

	.effect .effect_each.delay3, 
	.effect_scroll .effect_scroll_each.delay3 {
		transition-delay: 0.8s;
	}

	.effect .effect_each.delay4, 
	.effect_scroll .effect_scroll_each.delay4 {
		transition-delay: 1.0s;
	}

	.effect .effect_each.delay5, 
	.effect_scroll .effect_scroll_each.delay5 {
		transition-delay: 1.2s;
	}

	.effect .effect_each.delay6, 
	.effect_scroll .effect_scroll_each.delay6 {
		transition-delay: 1.4s;
	}

	.effect .effect_each.delay7, 
	.effect_scroll .effect_scroll_each.delay7 {
		transition-delay: 1.6s;
	}
}

/* home */
@media (min-width: 821px) {
	.effect .effect_slide_height {
		transform: scaleY(0);
		transform-origin: left bottom;
		transition: all 0.5s ease-out 0.5s;
	}

	.effect .effect_slide_height.effect_view {
		transform: scaleY(1);
	}

	.effect_scroll .effect_each_slide_height {
		transform: scaleY(0);
		transform-origin: left top;
		transition: all 0.5s ease-out 0s;
	}

	.effect_scroll .effect_each_slide_height.effect_view {
		transform: scaleY(1);
	}

	.effect .effect_slide_height.delay1,
	.effect_scroll .effect_each_slide_height.delay1 {
		transition-delay: 1.4s;
	}

	.effect .effect_slide_height.delay2,
	.effect_scroll .effect_each_slide_height.delay2 {
		transition-delay: 1.7s;
	}

	.effect .effect_slide_height.delay3,
	.effect_scroll .effect_each_slide_height.delay3 {
		transition-delay: 2.0s;
	}

	.effect .effect_slide_height.delay4,
	.effect_scroll .effect_each_slide_height.delay4 {
		transition-delay: 2.4s;
	}

	#home_service .effect_scroll .effect_each_slide_height.delay1 {
		transition-delay: 0s;
	}

	#home_service .effect_scroll .effect_each_slide_height.delay2 {
		transition-delay: 0.5s;
	}

	#home_service .effect_scroll .effect_each_slide_height.delay3 {
		transition-delay: 1.0s;
	}
}

/****************************
  pagination
****************************/

.pagination {
	width: 100%;
	margin: 0px auto 30px;
	padding: 0;
	text-align: center;
}

.pagination a, 
.pagination span {
	display: inline-block;
	min-width: 28px;
	height: 28px;
	line-height: 28px;
	margin: 0 2px;
	padding: 0 2px;
	text-align: center;
	font-weight: normal;
	font-size: 14px;
}

.pagination a:link, 
.pagination a:visited {
	background-color: #f6f6f6;
	background-color: transparent;
	color: #000;
	text-decoration: none;
}

.pagination a:hover, 
.pagination a:active, 
.pagination a.active, 
.pagination span {
	background-color: var(--dark-base_out);
	color: #fff;
	text-decoration: none;
}

.pagination a.active {
	pointer-events : none;
}

.pagination span.disabled {
	background-color: transparent;
	color: #aaa;
}

.icon_angle {
	font-size: 14px;
}

.pagination a.nav_page {
	background-color: transparent;
	color: #000;
}

@media (max-width: 768px) {
	.pagination {
		text-align: left;
	}
}

/****************************
  misc
****************************/

.clearfix:before {
	display: table;
	content: '';
}

.clearfix:after {
	display: table;
	content: '';
	clear: both;
}

.responsive {
	width: 100%;
	height: initial;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

a.readmore {
	display: inline-block;
	height: 38px;
	margin: 0;
	padding: 0 20px;
	background-color: var(--header_bg_out);
	vertical-align: top;
	text-align: center;
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	line-height: 38px;
	color: #fff;
	text-decoration: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	white-space: nowrap;
	transition: all 0.3s;
}

a.readmore.small {
	height: 38px;
	line-height: 38px;
}

a.readmore:hover {
	background-color: var(--header_bg_out);
	color: #fff;
}

@media (min-width: 1000px) {
	a.readmore {
		width: 200px;
		height: 58px;
		padding: 0;
		font-size: 16px;
		line-height: 58px;
	}

	a.readmore.small {
		width: 160px;
		height: 50px;
		line-height: 50px;
	}
}

@media (max-width: 999px) {
	.hide_if_sp {
		display: none;
	}
}
@media (min-width: 1000px) {
	.hide_if_pc,
	#global_nav > ul > li.hide_if_pc {
		display: none;
	}
}

.error_h1 {
	margin: 0;
	padding: 100px 0 0;
	text-align: center;
	font-style: normal;
	font-weight: normal;
	font-size: 20px;
	line-height: 1;
}

.error_h2 {
	margin: 0;
	padding: 30px 0 0;
	text-align: center;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	line-height: 1;
}

@media (min-width: 1000px) {
	.error_h1 {
		padding: 130px 0 0;
		font-size: 26px;
		line-height: 1;
	}

	.error_h2 {
		padding: 30px 0 0;
		font-size: 16px;
		line-height: 1;
	}
}
