@charset "utf-8";

@media screen and (max-width: 768px) {
	:root {
		--padding: var(--Size_12);
		--SectionWrapA_padding: var(--Margin_S) var(--padding) 0;
		--SectionWrapB_padding: 0 0;
		--Flex-direction_CRR: column;
		--Flex-direction_CCR: column;
		--Flex-direction_CCC: column;
		--Flex-direction_RCC: row;
		--FWrap_WNN: wrap;
	}
}

@media screen and (min-width:769px) and ( max-width:1160px) {
	:root {
		--padding: var(--Size_12);
		--SectionWrapA_padding: var(--Margin_S) var(--padding) 0;
		--SectionWrapB_padding: 0 0;
		--Flex-direction_CRR: row;
		--Flex-direction_CCR: column;
		--Flex-direction_CCC: column;
		--Flex-direction_RCC: column;
		--FWrap_WNN: nowrap;
	}
}

@media screen and (min-width:1161px) {
	:root {
		--padding: calc( calc( 100% - 1140px) / 2);
		--SectionWrapA_padding: var(--Margin_S) var(--padding) 0;
		--SectionWrapB_padding: 0 0;
		--Flex-direction_CRR: row;
		--Flex-direction_CCR: row;
		--Flex-direction_CCC: column;
		--Flex-direction_RCC: column;
		--FWrap_WNN: nowrap;
	}
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	position: relative;
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 62.5%;
	font: inherit;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

*,
*:before,
*:after {
	box-sizing: inherit;
	transition: var(--Transition);
	-o-transition: var(--Transition);
	-moz-transition: var(--Transition);
	-webkit-transition: var(--Transition);
}

html {
	max-width: 100%;
	background: var(--Color_K);
	scroll-behavior: smooth;
}

body {
	min-height: 100vh;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;

	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
	line-height: 1.6;
	font-weight: 400;
}

body#Teppen_Dash_Company.Top {
	background: var(--Color_K);
}

body#Teppen_Dash_Company.Page {
	background: var(--Color_FF);
}

body#Teppen_Japan.Page {
	background: var(--Color_FF);
}

html, body, header, article, section, div, footer,
table, tr, th, td, ol, ul, li, dl, dt, dd,
h1, h2, h3, h4, h5, h6, p, span, b, i, a {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

@keyframes fadeIn         { 0% { opacity: 0 } 100% { opacity: 1 } }
@-webkit-keyframes fadeIn { 0% { opacity: 0 } 100% { opacity: 1 } }

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

p, ol, ul, dl {
	color: var(--Color_1D100);
	line-height: 1.6;
}

ol, ul {
	list-style: none;
}

p, ol li, ul li, dl dt, dl dd {
	font-size: var(--Size_10);
}

a {
	text-decoration: none;
	border: 0;
	transition: var(--Transition);
	-o-transition: var(--Transition);
	-moz-transition: var(--Transition);
	-webkit-transition: var(--Transition);
}

a:hover {
	
}

figure {
	margin: 0;
}

img {
	max-width: 100%;
	vertical-align: baseline;
	object-fit: cover;
}

h1,h2,h3,h4,h5 {
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;

	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Noto Sans JP",  sans-serif;
	line-height: 1.6;
	font-weight: 600;
}

main {
	max-width: 100%;
	& article {
		margin: 70px 0 var(--Margin_S);
		& .wrapA {
			margin: 0 0 0;
			padding: var(--SectionWrapA_padding);
			width: 100%;
		}
		& .wrapB {
			margin: var(--Margin_M) 0 0;
			padding: var(--SectionWrapB_padding);
			width: 100%;
		}
	}
}

#e404 {
	padding: var(--Margin_M) 0 0;
	& div {
		display: flex;
		justify-content: center;
		gap: var(--Gap_M);
		height: var(--Size_44);
		background: var(--Color_1D000);
		& h2 {
			display: flex;
			align-items: center;
			margin: 0;
			padding: 0 var(--Gap_L);
			text-align: left;
			font-size: var(--Size_14);
			font-weight: 600;
		}
		& span {
			flex: 1;
			background: url('../common/img/search/h2.png');
			background-size: auto var(--Size_44);
		}
		& span:nth-of-type(1) {
			background-position: right center;
		}
		& span:nth-of-type(2) {
			background-position: left center;
		}
	}
}

.scrollBox::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}

.scrollBox::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius: 5px;
}

.scrollBox::-webkit-scrollbar-thumb {
	background: #888;
	border-radius: 5px;
}

.scrollBox::-webkit-scrollbar-thumb:hover {
	background: #555;
}
