@charset "UTF-8";

/* ---------------------------------------------------

	Layout - All Page Common

--------------------------- */
* {
    margin: 0;
    padding: 0;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
	}
/*html,body { height: 100%; }*/
body {
    background: transparent;
    color: rgba(0, 0, 0, 1);
    cursor: default;
    display: block;
    font-family: 'Noto Sans JP', sans-serif,"Montserrat","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
    font-weight: 400;
    /*height: 100%;*/
    line-height: 1.5;
    overflow-x: hidden;
    position: relative;
    vertical-align: baseline;
    width: 100%;
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
	}
a,a:hover {
	color: rgba(10, 20, 45, 1);
	text-decoration: none;
	}
a:link {}
a:visited {}
img {
    margin: 0;
    padding: 0;
    max-width: 100%;
    vertical-align: bottom;
    outline: none;
	}
img:hover { outline: none; }
ul { list-style: none; }
h1,h2,h3,h4,h5,h6 {
    font-weight: 400;
    margin: 0;
	}
p {
    -webkit-transform: rotate(0.0001deg);
    transform: rotate(0.0001deg);
	}
input,select,textarea { font-size: 16px; }
button { cursor: pointer; }
/* ------------------------ */
@media (min-width: 751px) {
}
/* ------------------------ */
@media (max-width: 750px) {
}

/* ---------------------------------------------------	

	Common

--------------------------- */
/* ---------------------------
	Common > body
--------------------------- */
body.glnav-open { overflow: hidden; }
/* ---------------------------
	Common > Logo
--------------------------- */
.com-logo { transition: all .5s; }
	.clg-item {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		transition: all .5s;
		}
		.clg-item img { width: 100%; }
/* ---------------------------
	Common > Read More
--------------------------- */
.com-readmore {
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	}
	.com-readmore a {
		font-family: 'Kanit', sans-serif;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		border-radius: 5px;
		}
	.com-readmore a:after { content: ''; }
	/* Common > Read More > Scheme */
	.com-readmore.jcct { justify-content: center; }
	.com-readmore.jcfs { justify-content: flex-start; }
	.com-readmore.jcfe { justify-content: flex-end; }
		.com-readmore a.rm {
			background: transparent linear-gradient(90deg, rgba(255, 14, 11, 1) 0%, rgba(244, 168, 146, 1) 100%) 0% 0% no-repeat padding-box;
			color: rgba(255, 255, 255, 1);
			}
		.com-readmore a.rm:after {
			background-color: rgba(255, 255, 255, 1);
			border-radius: 100px;
			}
		.com-readmore a.cs {
			background-color: rgba(255, 255, 255, .9);
			border: 1px solid rgba(255, 14, 11, 1);
			color: rgba(255, 14, 11, 1);
			pointer-events: none;
			}
		.com-readmore a.cs:after { display: none; }
/* ---------------------------
	Common > Color Wave
--------------------------- */
canvas#colorwave {
	left: -10%;
    position: fixed;
    right: -10%;
    top: 40%;
    width: 120%;
    z-index: -1;
    transform: translateY(-50%);
    animation: 10s infinite waverotate;
	}
@keyframes waverotate {
	0% { transform: rotate(10deg); }
	50% { transform: rotate(-10deg); }
	100% { transform: rotate(10deg); }
	}
/* ---------------------------
	Common > Background Line
--------------------------- */
.bgline {
	left: 0;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 100vw;
	z-index: -1;
	box-sizing: border-box;
	}
	.bgline-item {
		background-position: center;
		background-repeat: no-repeat;
		overflow: hidden;
		position: relative;
		width: 100%;
		}
	.bgline-item:nth-child(odd) { background-image:url(/src/img/common/line/01.svg); }
	.bgline-item:nth-child(even) { background-image:url(/src/img/common/line/02.svg); }
/* ------------------------ */
@media (min-width: 751px) {
.bgline-item {
	background-size: contain;
	height: 600px;
	}
}
/* ------------------------ */
@media (max-width: 750px) {
.bgline-item {
	background-size: 200%;
	height: 500px;
	}
}
/* ---------------------------
	Common > Link Area
--------------------------- */
.com-linkarea {}
	.com-link-item {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: flex-start;
		}
	.com-link-item:before {
		background-position: center;
		background-repeat: no-repeat;
		content: '';
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		}
	/* Common > Link Area > Scheme */
	.com-link-item.radius:before { border-radius: 50%; }
	.com-link-item.navy { color: rgba(10, 20, 45, 1); }
	.com-link-item.arrow.navy:before {
		background-image: url(/src/img/common/arrow/right-navy.svg);
		border: 1px solid rgba(10, 20, 45, 1);
		}
/* ---------------------------
	Common > Google Map
--------------------------- */
.com-googlemap {}
	.com-googlemap iframe {
		height: 100%;
		width: 100%;
		}
/* ------------------------ */
@media (min-width: 751px) {
/* ---------------------------
	Common > Read More
--------------------------- */
.com-readmore {}
	.com-readmore a {
		font-size: 16px;
		letter-spacing: 2px;
		height: 60px;
		padding: 0 60px;
		transition: all .3s;
		}
	.com-readmore a:after { transition: all .3s; }
	/* Common > Read More > Scheme */
	.com-readmore a.min {
		font-size: 14px;
		height: 40px;
		padding: 0 30px;
		}
	.com-readmore a.rm:after {
		height: 10px;
		margin-left: 12.5px;
		min-width: 10px;
		}
	.com-readmore a.jp { font-family: inherit; }
	/* Common > Read More > Hover */
	.com-readmore a:hover { box-shadow: 5px 5px 30px rgba(255, 14, 11, .3); }
	.com-readmore a.rm:hover {
		background: rgba(255, 255, 255, 1);
		color: rgba(255, 14, 11, 1);
		}
	.com-readmore a.rm:hover:after { background: transparent linear-gradient(90deg, rgba(255, 14, 11, 1) 0%, rgba(244, 168, 146, 1) 100%) 0% 0% no-repeat padding-box; }
/* ---------------------------
	Common > Link Area
--------------------------- */
.com-linkarea {}
	.com-link-item { transition: all .3s; }
	.com-link-item:before {
		margin-right: 15px;
		transition: all .3s;
		}
	/* Common > Link Area > Scheme */
	.com-link-item.radius:before {
		background-size: 15px 15px;
		height: 25px;
		width: 25px;
		}
	.com-link-item.arrow.navy { font-size: 20px; }
	/* Common > Link Area > Hover */
	.com-link-item.radius:hover:before {
		margin-right: 25px;
		transform: rotate(360deg);
		}
}
/* ------------------------ */
@media (max-width: 750px) {
/* ---------------------------
	Common > Read More
--------------------------- */
.com-readmore {}
	.com-readmore a {
		font-size: 14px;
		height: 50px;
		padding: 0 50px;
		}
	/* Common > Read More > Scheme */
	.com-readmore a.min {
		height: 40px;
		padding: 0 30px;
		}
	.com-readmore a.rm {}
	.com-readmore a.rm:after {
		height: 10px;
		margin-left: 12.5px;
		min-width: 10px;
		}
	.com-readmore a.cs {}
/* ---------------------------
	Common > Link Area
--------------------------- */
.com-linkarea {}
	.com-link-item {}
	.com-link-item:before { margin-right: 15px; }
	/* Common > Link Area > Scheme */
	.com-link-item.radius:before {
		background-size: 10px 10px;
		height: 20px;
		width: 20px;
		}
	.com-link-item.arrow.navy { font-size: 17px; }
}

/* ---------------------------------------------------

	Header

--------------------------- */
#gl-header {
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 100;
	transition: all .4s ease;
	}
	#glh-wrap {
		background-color: rgba(255, 255, 255, 1);
		position: relative;
		display: flex;
		justify-content: space-between;
		position: relative;
		}
		.glh-block {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			}
/* ------------------------ */
@media (min-width: 751px) {
#gl-header {}
	#glh-wrap {}
	/* header > Scheme > Scroll */
	.scrollactive #glh-wrap {
		background-color: rgba(255, 255, 255, .3);
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
		/*
		*/
		}
	#gl-header.mdl-scrollhide.hide { margin-top: -100px; }
	.scrollactive #gl-header:hover { background-color: rgba(255, 255, 255, 1); }
}
/* ------------------------ */
@media (max-width: 750px) {
#gl-header {}
#gl-header:before {
	background-color: rgba(255, 255, 255, 1);
	content: '';
    height: 0;
    left: 0;
	opacity: 0;
	right: 0;
	position: fixed;
	top: 0;
	visibility: hidden;
	width: 100vw;
	z-index: 0;
	transition: all .75s;
	}
	#glh-wrap { z-index: 1; }
	/* header > Scheme > Open */
	.glnav-open #gl-header:before {
		height: 100vh;
		opacity: 1;
		visibility: visible;
		}
	/* header > Scheme > Scroll */
	#gl-header.mdl-scrollhide.hide { margin-top: -70px; }
}
	/* -----------------------
		Header > Logo Area
	----------------------- */
	.glhh-logoarea {
		z-index: 1;
		display: flex;
		align-items: center;
		justify-content: center;
		transition: all .3s;
		}
	/* ------------------------ */
	@media (min-width: 751px) {
	.glhh-logoarea { padding: 0 40px; }
		.glhh-logoarea .tdm-j_com { width: 200px; }
	}
	/* ------------------------ */
	@media (min-width: 751px) and (max-width: 1000px) {
	.glhh-logoarea { padding: 0 15px; }
		.glhh-logoarea .tdm-j_com { width: 100px; }
	}
	/* -------------------- */
	@media (max-width: 750px) {
	.glhh-logoarea { padding: 0 15px; }
		.glhh-logoarea .tdm-j_com { width: 130px; }
	}
	/* -----------------------
		Header > Link Area
	----------------------- */
	.glnav-linkarea {}
		.glnav-la-item {}
			.glnav-la-item a {
				display: inline-flex;
				align-items: center;
				justify-content: center;
				}
			.glnav-la-item a:after {
				background-position: center;
				background-repeat: no-repeat;
				content: '';
				}
		/* Header > Link Area > Scheme */
		.glnav-la-item.inquiry a {
			background: transparent linear-gradient(90deg, rgba(255, 14, 11, 1) 0%, rgba(244, 168, 146, 1) 100%) 0% 0% no-repeat padding-box;
			color: rgba(255, 255, 255, 1);
			border-radius: 5px;
			}
		.glnav-la-item.inquiry a:after { background-image: url(/src/img/common/icon/email-white.svg); }
	/* ------------------------ */
	@media (min-width: 751px) {
	.glnav-linkarea { padding: 0 20px; }
		/* Header > Link Area > Scheme */
		.glnav-la-item.inquiry a {
			font-size: 15px;
			height: 60px;
			width: 200px;
			transition: all ease .3s;
			}
		.glnav-la-item.inquiry a:after {
			background-size: 20px 13.6px;
			margin-left: 10px;
			height: 13.6px;
			width: 20px;
			}
		/* Header > Link Area > Hover */
		.glnav-la-item.inquiry a:hover {
			transform: scale(1.05);
			box-shadow: 5px 5px 30px rgba(255, 14, 11, .3);
			}
	}
	/* -------------------- */
	@media (min-width: 751px) and (max-width: 1050px) {
		.glnav-la-item.inquiry a {
			font-size: 12px;
			width: 120px;
			}
	}
	/* -------------------- */
	@media (max-width: 750px) {
	.glnav-linkarea {}
		/* Header > Link Area > Scheme */
		.glnav-la-item.inquiry a {
			height: 50px;
			width: 120px;
			font-size: 12px;
			}
		.glnav-la-item.inquiry a:after {
			background-size: 20px 19.2px;
			height: 17.2px;
			width: 20px;
			margin-left: 5px;
			}
	}
	/* -----------------------
		Header > Glnav
	----------------------- */
	#glnav {
		position: relative;
		transition: all .4s ease;
		}
		.glnav-scrollarea {
			display: flex;
			flex-direction: column;
			align-items: flex-end;
			transition: all .3s ease;
			}
			.glnav-block {
				position: relative;
				display: inline-flex;
				flex-wrap: wrap;
				align-items: center;
				justify-content: flex-start;
				width: 100%;
				box-sizing: border-box;
				}
				.glnav-item { position: relative; }
					.glnav-item a {
						color: rgba(0, 0, 0, 1);
						font-weight: 700;
						overflow: hidden;
						position: relative;
						display: flex;
						align-items: flex-start;
					    box-sizing: border-box;
						}
						.glnav-item a small { font-weight: 300; }
		/* header > Glnav > Scheme */
		.glnav-item.current a { color: rgba(250, 100, 0, 1); }
	/* ------------------------ */
	@media (min-width: 751px) {
	#glnav { left: 0 !important; }
		.glnav-scrollarea {}
			.glnav-block { height: 100px; }
				.glnav-item { margin: 0 5px; }
					.glnav-item a {
						font-size: 15px;
						line-height: 1.3;
						padding: 0 15px;
						flex-direction: column;
						justify-content: center;
						transition: all .4s ease;
						}
						.glnav-item a small {
							font-size: 11px;
							letter-spacing: 1px;
							}
		/* header > Glnav > Hover */
		.glnav-item a:hover { color: rgba(255, 14, 11, 1); }
	}
	/* ------------------------ */
	@media (min-width: 751px) and (max-width: 1000px) {
		.glnav-item a {
			font-size: 14px;
			padding: 0 10px;
			}
	}
	/* -------------------- */
	@media (max-width: 750px) {
	#glnav {
		min-height: calc(100vh - 60px);
		opacity: 0;
		position: fixed;
		left: 200%;
		top: 0;
		transition: opacity 1s;
		}
		.glnav-scrollarea {
			height: 100vh;
			overflow-x: hidden;
			overflow-y: scroll;
			padding: 20px;
			box-sizing: border-box;
			}
			.glnav-block {
				padding: 0 30px;
				display: flex;
				justify-content: center;
				}
				.glnav-item {
					border-top: 1px solid rgba(0, 0, 0, .1);
					width: 100%;
					}
				.glnav-item:last-child { border-bottom: 1px solid rgba(0, 0, 0, .1); }
					.glnav-item a {
						font-size: 16px;
						line-height: 1.3;
						height: 60px;
						align-items: center;
						}
						.glnav-item a small {
							font-size: 11px;
							letter-spacing: 1px;
							margin-left: 10px;
							}
		/* Header > Glnav > Open */
		.glnav-open #gt-wrap {}
			.glnav-open #glnav {
				left: 0;
				opacity: 1;
				padding-bottom: 70px;
				padding-top: 70px;
				width: 100%;
				}
				.glnav-open .glnav-block {}
					.glnav-open .n-itm-link {
						opacity: 1;
						transform: scale(1) translate(0);
						}
					.acd-open .n-itm-link { color: rgba(0, 90, 200, 1); }
					.acd-open .n-itm-link.acd-tgl:after { transform: translateY(-50%) rotate(135deg); }
	}
	/* -----------------------
		Header > Trigger
	----------------------- */
	/* ------------------------ */
	@media (min-width: 751px) {
	#glnav-trigger { display: none; }
	}
	/* -------------------- */
	@media (max-width: 750px) {
	#glnav-trigger {
		background-color: rgba(255, 255, 255, 1);
		color: rgba(70, 70, 70, 1);
		cursor: pointer;
		display: table;
		height: 70px;
		width: 70px;
	    transition: all .3s ease;
		}
		#gt-wrap {
			display: table-cell;
			height: 100%;
			width: 100%;
			vertical-align: middle;
			text-align: center;
		    transition: all .3s ease;
			}
			#gt-mark {
			    margin: 0 auto;
			    height: 20px;
			    position: relative;
			    width: 25px;
			    z-index: 200;
				}
				#gt-mark span {
					background-color: rgba(70, 70, 70, 1);
					display: block;
					height: 4px;
					position: absolute;
					width: 25px;
				    transition: all .3s ease;
					border-radius: 2px;
					}
					#gt-mark span:nth-child(1) { top: 0; }
					#gt-mark span:nth-child(2) { top: 8px; }
					#gt-mark span:nth-child(3) { bottom: 0; }
			#gt-txt {
				font-size: 14px;
				font-weight: 700;
				letter-spacing: -1px;
				margin-top: 3px;
				word-break: keep-all;
				}
	/* header > Trigger > Open */
	.glnav-open #gt-mark span {}
	.glnav-open #gt-mark span:nth-child(1) {
		top: 0;
    	-webkit-transform: translateY(10px) rotate(-45deg);
    	transform: translateY(10px) rotate(-45deg);
		}
	.glnav-open #gt-mark span:nth-child(2) { width: 0; }
	.glnav-open #gt-mark span:nth-child(3) {
		top: 19px;
    	-webkit-transform: translateY(-10px) rotate(45deg);
    	transform: translateY(-10px) rotate(45deg);
		}
	}

/* ---------------------------------------------------

	Intro

--------------------------- */
#intro { position: relative; }
/* ------------------------ */
@media (min-width: 751px) {
#intro {}
}
/* ------------------------ */
@media (max-width: 750px) {
#intro {}
}

/* ---------------------------------------------------

	container

--------------------------- */
.container {
	position: relative;
	z-index: 1;
	}
/* ------------------------ */
@media (min-width: 751px) {
.container {}
}
/* ------------------------ */
@media (max-width: 750px) {
.container {}
}

/* ---------------------------------------------------

	News

--------------------------- */
.news-list {
	margin: 0 auto;
	max-width: 900px;
	}
	.news-lst-item {}
	.news-lst-item:last-child { border-bottom: none; }
		.news-lst-link {
			background-color: rgba(242, 242, 242, 1);
			display: flex;
			align-items: center;
			justify-content: flex-start;
			}
			.news-data,
			.news-cat,
			.news-ttl { font-weight: 500; }
			.news-data { font-family: 'Kanit', sans-serif; }
			.news-cat {
				border: 1px solid rgba(255, 14, 11, 1);
				display: inline-flex;
				align-items: center;
				justify-content: center;
				}
			.news-ttl { word-break: break-all; }
/* ------------------------ */
@media (min-width: 751px) {
.news-list {
	margin-top: 30px;
	padding: 0 60px;
	}
	.news-lst-item { margin-bottom: 20px; }
		.news-lst-link {
			padding: 20px 50px;
			border-radius: 10px;
			}
			.news-data,
			.news-cat,
			.news-ttl {
				font-size: 16px;
				line-height: 1.75;
				}
			.news-data { min-width: 100px; }
			.news-cat {
				margin-right: 20px;
				min-width: 100px;
				height: 40px;
				border-radius: 5px;
				}
			.news-ttl {
				padding: 5px 0;
				transition: all ease .3s;
				}
	/* News > Hover */
	a.news-lst-link:hover .news-ttl { color: rgba(255, 14, 11, 1); }
}
/* ------------------------ */
@media (max-width: 1180px) {
	.news-lst-link { flex-wrap: wrap; }
}
/* ------------------------ */
@media (max-width: 750px) {
.news-list {
	margin-top: 20px;
	padding: 0 30px;
	}
	.news-lst-item { margin-bottom: 15px; }
		.news-lst-link {
			padding: 15px 20px;
			border-radius: 10px;
			}
			.news-data,
			.news-cat {
				font-size: 13px;
				line-height: 1.75;
				}
			.news-data { min-width: 85px; }
			.news-cat {
				margin-right: 20px;
				min-width: 80px;
				height: 30px;
				border-radius: 5px;
				}
			.news-ttl {
				font-size: 15px;
				margin-top: 10px;
				width: 100%;
				}
}

/* ---------------------------------------------------

	Product

--------------------------- */
.prd-list {
	margin: 0 auto;
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	}
	.prd-lst-item {
		position: relative;
		width: 100%;
		display: inline-flex;
		align-items: center;
		justify-content: flex-start;
		}
		.prd-thumb {
			background-color: rgba(242, 242, 242, 1);
			width: 100%;
			}
			.prd-thumb a {
				overflow: hidden;
				width: 100%;
				display: flex;
				align-items: center;
				justify-content: center;
				}
		.prd-lst-ttlarea {
			width: 100%;
			box-sizing: border-box;
			}
			.prd-cat {
				display: flex;
				flex-wrap: wrap;
				align-items: center;
				justify-content: flex-start;
				}
				.prd-cat span {
					background-color: rgba(255, 14, 11, 1);
					color: rgba(255, 255, 255, 1);
					display: inline-flex;
					align-items: center;
					justify-content: center;
					border-radius: 5px;
					}
			.prd-ttl { font-weight: 700; }
		.prd-lst-con { width: 100%; }
/* ------------------------ */
@media (min-width: 1001px) {
.prd-list {}
	.prd-lst-item {
		margin: 0 2% 30px;
		max-width: 29.33333333333333%;
		flex-wrap: wrap;
		}
		.prd-thumb {}
			.prd-thumb a { border-radius: 10px; }
				.prd-thumb img { transition: all ease .3s; }
		.prd-lst-ttlarea { margin-top: 10px; }
			.prd-cat {}
				.prd-cat span {
					font-size: 17px;
				    margin: 3px;
					padding: 3px 10px;
					}
			.prd-ttl {
				font-size: 25px;
				line-height: 1.5;
				margin-top: 5px;
				}
		.prd-lst-con { margin-top: 10px; }
			.prd-outline {
				font-size: 17px;
				line-height: 1.75;
				letter-spacing: 1px;
				}
			.prd-lst-item .com-readmore { margin-top: 20px; }
	/* Product > Hover */
	.prd-lst-item:hover .prd-thumb img { transform: scale(1.1); }
}
/* ------------------------ */
@media (max-width: 1000px) {
.prd-list {
	margin-top: 20px;
	padding: 0 30px;
	flex-wrap: wrap;
	}
	.prd-lst-item {
		border-bottom: 1px solid rgba(0, 0, 0, .5);
		max-width: 100%;
		padding: 25px 0;
		}
	.prd-lst-item:first-child { border-top: 1px solid rgba(0, 0, 0, .5); }
		.prd-thumb {}
			.prd-thumb a { border-radius: 10px; }
		.prd-lst-ttlarea {
			max-width: 240px;
			padding: 20px 30px;
			}
			.prd-cat {}
				.prd-cat span {
					font-size: 15px;
					margin: 3px;
					padding: 5px 10px;
					}
			.prd-ttl {
				font-size: 23px;
				line-height: 1.5;
				margin-top: 10px;
				}
		.prd-lst-con {
			padding: 20px 0;
			min-width: 30%;
			}
			.prd-outline {
				font-size: 15px;
				line-height: 1.5;
				}
			.prd-lst-item .com-readmore { margin-top: 20px; }
				.prd-lst-item .com-readmore a { padding: 0 30px; }
}
/* ------------------------ */
@media (max-width: 800px) {
		.prd-thumb {
			max-width: 150px;
			min-width: 150px;
			}
}
/* ------------------------ */
@media (max-width: 750px) {
	.prd-lst-item { flex-wrap: wrap; }
		.prd-thumb {
			max-width: 40%;
			min-width: 40%;
			border-radius: 10px;
			}
		.prd-lst-ttlarea {
			max-width: 60%;
			padding: 0 0 0 20px;
			}
			.prd-cat {}
				.prd-cat span { font-size: 12px; }
			.prd-ttl {
				font-size: 22px;
				line-height: 1.5;
				margin-top: 12.5px;
				width: 100%
				}
		.prd-lst-con { padding: 10px 0 0; }
			.prd-outline {
				font-size: 13px;
				line-height: 1.5;
				}
			.prd-lst-item .com-readmore { margin-top: 15px; }
}

/* ---------------------------------------------------

	Second Wire

--------------------------- */
.sec-wire {
	display: flex;
	justify-content: center;
	}
	.sec-wir-item {
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		position: relative;
		width: 100%;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		}
	.sec-wir-item:before {
		background-color: rgba(0, 0, 0, .5);
		bottom: 0;
		content: '';
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
		}
		.sec-wir-inner {
			position: relative;
			width: 100%;
			z-index: 1;
			box-sizing: border-box;
			}
			.sec-wir-ttl {
				color: rgba(255, 255, 255, 1);
				display: flex;
				align-items: center;
				justify-content: center;
				}
				.sec-wir-ttl span.en { font-weight: 300; }
				.sec-wir-ttl span.jp { font-weight: 700; }
/* ------------------------ */
@media (min-width: 751px) {
.sec-wire { padding: 0.5%; }
	.sec-wir-item {
		margin: 0.25%;
		padding: 100px 3%;
		}
	.sec-wir-item:before {}
		.sec-wir-inner { padding: 30px; }
			.sec-wir-ttl { flex-direction: column; }
				.sec-wir-ttl span { letter-spacing: 3px; }
				.sec-wir-ttl span.en { font-size: 20px; }
				.sec-wir-ttl span.jp { font-size: 40px; }
			.sec-wir-item .com-readmore { margin-top: 50px; }
}
/* ------------------------ */
@media (max-width: 750px) {
.sec-wire {
	padding: 0.5%;
	flex-wrap: wrap;
	}
	.sec-wir-item { margin-bottom: 0.5%; }
		.sec-wir-inner { padding: 30px; }
			.sec-wir-ttl { flex-direction: column; }
				.sec-wir-ttl span { letter-spacing: 2px; }
				.sec-wir-ttl span.en { font-size: 15px; }
				.sec-wir-ttl span.jp { font-size: 20px; }
			.sec-wir-item .com-readmore { margin-top: 20px; }
				.sec-wir-item .com-readmore a {
					height: 40px;
					padding: 0 30px;
					}
}

/* ---------------------------------------------------

	Footer

--------------------------- */
#gl-footer {
	background-color: rgba(244, 247, 247, .5);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	box-sizing: border-box;
	}
	.glf-block {
		display: flex;
		align-items: flex-start;
		}
/* ------------------------ */
@media (min-width: 751px) {
#gl-footer { padding: 100px 3.65%; }
	.glf-block { margin-top: 15px; }
}
/* ------------------------ */
@media (max-width: 750px) {
#gl-footer { padding: 40px 20px; }
	.glf-block {
		margin-top: 20px;
		flex-wrap: wrap;
		}
}
	/* -----------------------
		Footer > Logo Area
	----------------------- */
	.glf-logoarea {
		margin: 0 auto;
		width: 100%;
		box-sizing: border-box;
		}
	/* ------------------------ */
	@media (min-width: 751px) {
	.glf-logoarea {
		max-width: 1070px;
		padding: 0 30px;
		}
		.glf-logoarea .com-logo.tdm-j_com { width: 230px; }
	}
	/* -------------------- */
	@media (max-width: 750px) {
	.glf-logoarea {}
		.glf-logoarea .com-logo.tdm-j_com {
			margin: 0 auto;
			width: 200px;
			}
	}
	/* -----------------------
		Footer > Credit Area
	----------------------- */
	.glf-creditarea {}
		.glf-address { font-style: normal; }
		.glf-telarea {
			display: flex;
			flex-direction: column;
			}
			.glf-telarea dl {
				display: flex;
				align-items: flex-start;
				justify-content: flex-start;
				}
			.glf-telarea dl dd {
				display: flex;
				flex-direction: column;
				align-items: flex-start;
				}
			.glf-telarea dl dd span:last-child { margin-bottom: 0; }
		.glf-copy {}
	/* ------------------------ */
	@media (min-width: 751px) {
	.glf-creditarea { padding: 10px 30px; }
		.glf-address {
			font-size: 15px;
			line-height: 1.5;
			}
		.glf-telarea { margin-top: 10px; }
			.glf-telarea dl dt { min-width: 35px; }
			.glf-telarea dl dd span { margin-bottom: 5px; }
		.glf-copy {
			font-size: 13px;
			margin-top: 30px;
			}
	}
	/* -------------------- */
	@media (max-width: 750px) {
	.glf-creditarea {
		margin: 15px auto 0;
		text-align: center;
		}
		.glf-address {
			font-size: 14px;
			line-height: 1.5;
			}
		.glf-telarea { margin-top: 10px; }
			.glf-telarea dl dt { min-width: 45px; }
			.glf-telarea dl dd span { margin-bottom: 5px; }
		.glf-copy {
			font-size: 12px;
			margin-top: 15px;
			}
	}
	/* -----------------------
		Footer > Nav Area
	----------------------- */
	.glf-navarea {
		display: flex;
		align-items: flex-start;
		}
		.glf-nav-list {
			display: flex;
			flex-wrap: wrap;
			justify-content: flex-start;
			align-items: flex-start;
			}
			.glfnav-item {
				color: rgba(0, 0, 0, 1);
				position: relative;
				box-sizing: border-box;
				}
				.glfnav-item a {
					color: rgba(0, 0, 0, 1);
					font-weight: 700;
					overflow: hidden;
					position: relative;
					display: flex;
					box-sizing: border-box;
					}
					.glfnav-item a small { font-weight: 300; }
		.glf-na-linkarea {}
			.glf-na-la-item {}
				.glf-na-la-item a {
					display: inline-flex;
					align-items: center;
					justify-content: center;
					}
				.glf-na-la-item a:after {
					background-position: center;
					background-repeat: no-repeat;
					content: '';
					}
			.glf-na-la-item.inquiry {}
				.glf-na-la-item.inquiry a {
					background: transparent linear-gradient(90deg, rgba(255, 14, 11, 1) 0%, rgba(244, 168, 146, 1) 100%) 0% 0% no-repeat padding-box;
					color: rgba(255, 255, 255, 1);
					border-radius: 5px;
					}
				.glf-na-la-item.inquiry a:after { background-image: url(/src/img/common/icon/email-white.svg); }
	/* -------------------- */
	@media (min-width: 751px) {
	.glf-navarea { justify-content: flex-start; }
		.glf-nav-list {
			max-width: 460px;
			padding: 10px 30px;
			}
			.glfnav-item { margin-bottom: 25px; }
				.glfnav-item a {
					font-size: 15px;
					line-height: 1.3;
					padding: 0 15px;
					align-items: flex-start;
					flex-direction: column;
					justify-content: center;
					transition: all .4s ease;
					}
					.glfnav-item a small {
						font-size: 11px;
						letter-spacing: 1px;
						}
		.glf-na-linkarea { padding: 10px 30px; }
			.glf-na-la-item {}
			.glf-na-la-item.inquiry {}
				.glf-na-la-item.inquiry a {
					font-size: 15px;
					height: 60px;
					width: 200px;
					transition: all ease .3s;
					}
				.glf-na-la-item.inquiry a:after {
					background-size: 20px 13.6px;
					margin-left: 10px;
					height: 13.6px;
					width: 20px;
					}
		/* Footer > Nav Area > Hover */
		.glfnav-item a:hover { color: rgba(255, 14, 11, 1); }
		.glf-na-la-item.inquiry a:hover { box-shadow: 5px 5px 30px rgba(255, 14, 11, .3); }
	}
	/* -------------------- */
	@media (max-width: 750px) {
	.glf-navarea {
		flex-wrap: wrap;
		justify-content: center;
		}
		.glf-nav-list {
			background-color: rgba(0, 0, 0, .05);
			margin-top: 20px;
			padding: 10px 30px;
			border-radius: 10px;
			}
			.glfnav-item {
				border-bottom: 1px solid rgba(0, 0, 0, .2);
				width: 100%;
				}
			.glfnav-item:last-child { border-bottom: none; }
				.glfnav-item a {
					font-size: 13px;
					line-height: 1.3;
					padding: 20px 0;
					width: 100%;
					align-items: center;
					justify-content: flex-start;
					transition: all .4s ease;
					}
					.glfnav-item a small {
						font-size: 11px;
						letter-spacing: 1px;
						margin-left: 10px;
						}
		.glf-na-linkarea { margin-top: 20px; }
			.glf-na-la-item {}
			.glf-na-la-item.inquiry {}
				.glf-na-la-item.inquiry a {
					font-size: 15px;
					height: 60px;
					width: 200px;
					}
				.glf-na-la-item.inquiry a:after {
					background-size: 20px 13.6px;
					margin-left: 10px;
					height: 13.6px;
					width: 20px;
					}
	}

/* ---------------------------------------------------

  Solution - Illust

--------------------------- */
.slt-illust { margin: 0 auto; }
	.slt-illust .outer {}
	.slt-illust .inner { position: relative; }
		.slt-ilt-icon {
			bottom: 0;
			left: 0;
			position: absolute;
			right: 0;
			top: 0;
			}
			.slt-ilt-icon a { position: absolute; }
	/* Illust > Scheme */
	.slt-ilt-icon a:nth-child(odd) { animation: floatA 4s ease infinite; }
	.slt-ilt-icon a:nth-child(even) { animation: floatB 4s ease infinite; }
    @keyframes floatA {
        0% { transform:translate(0, 0); }
        20% { transform:translate(0, 4px); }
        80% { transform:translate(0, -4px); }
        100% { transform:translate(0, 0); }
        }
    @keyframes floatB {
        0% { transform:translate(0, 0); }
        20% { transform:translate(0, -4px); }
        80% { transform:translate(0, 4px); }
        100% { transform:translate(0, 0); }
        }
	/* -------------------- */
	@media (min-width: 751px) {
	.slt-illust { max-width: 1300px; }
	}
	/* -------------------- */
	@media (max-width: 750px) {
	.slt-illust { margin-top: 30px; }
	}

/* ---------------------------------------------------

	Print

--------------------------- */
@media print {
body { padding-top: 0; }
#gl-header { position: relative; }
#gl-header.mdl-scrollhide.hide { margin-top: 0; }
}
/* ------------------------ */
@media print and (min-width: 751px) {
}
/* ------------------------ */
@media print and (max-width: 750px) {}
