@charset "utf-8";
/*


*/

/* setting */
:root {
	
	--pages-width: 1200px;
	--pages-color1: #FFFFFF;
	--pages-color2: #04447C;
	--pages-color2b: rgba(4, 68, 124, 0.75);
	--pages-color2c: rgba(4, 68, 124, 0);
	--pages-color2d: rgba(4, 68, 124, 0.5);
	--pages-color3: #00A0DC;
	--pages-color4: #03578F;
	--pages-color5: #018EC9;
	--pages-color6: #004378;
	--pages-color7: #212121;
	--pages-anchor: #00f;
	
	--pages-font-family_ja: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	--pages-font-family_ja_min: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "Sawarabi Mincho", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "メイリオ", Meiryo, serif;
	
	
}



.bg1 {
	background: #ffa;
}
.bg2 {
	background: #affa;
}
body {
	position: relative;
}
@media screen and (min-width: 768px) {
	body:not(.bgnone)::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 267px;
		background: url(../img/common/body_bg.png) center top / 1920px auto no-repeat;
	}
	
	main {
		padding-top: 130px;
		padding-bottom: 80px;
	}
	
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
}
@media screen and (min-width: 1025px) {
}
@media screen and (min-width: 1920px) {
	body::before {
		background: url(../img/common/body_bg.png) center top / cover no-repeat;
	}
}
@media screen and (max-width: 767px) {
	
	main {
padding-bottom: 40px;
}
	
}
@media screen and (max-width: 480px) {
}



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






/* contact, reserve */
/*********************
INPUTS
*********************/
input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], select, textarea, .field {
	display: block;
	height: 40px;
	line-height: 40px;
	font-size: 1em;
	color: #5c6b80;
	border-radius: 3px;
	vertical-align: middle;
	box-shadow: none;
	border: 1px solid #ADABAB;
	width: 90%;
	font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
	background-color: #fff;
	-webkit-transition: background-color 0.24s ease-in-out;
	transition: background-color 0.24s ease-in-out;
	padding-left: 5px;
}
input[type="text"]:focus, input[type="text"]:active, input[type="password"]:focus, input[type="password"]:active, input[type="datetime"]:focus, input[type="datetime"]:active, input[type="datetime-local"]:focus, input[type="datetime-local"]:active, input[type="date"]:focus, input[type="date"]:active, input[type="month"]:focus, input[type="month"]:active, input[type="time"]:focus, input[type="time"]:active, input[type="week"]:focus, input[type="week"]:active, input[type="number"]:focus, input[type="number"]:active, input[type="email"]:focus, input[type="email"]:active, input[type="url"]:focus, input[type="url"]:active, input[type="search"]:focus, input[type="search"]:active, input[type="tel"]:focus, input[type="tel"]:active, input[type="color"]:focus, input[type="color"]:active, select:focus, select:active, textarea:focus, textarea:active, .field:focus, .field:active {
	background-color: #f7f8fa;
}
input[type="text"].error, input[type="text"].is-invalid, input[type="password"].error, input[type="password"].is-invalid, input[type="datetime"].error, input[type="datetime"].is-invalid, input[type="datetime-local"].error, input[type="datetime-local"].is-invalid, input[type="date"].error, input[type="date"].is-invalid, input[type="month"].error, input[type="month"].is-invalid, input[type="time"].error, input[type="time"].is-invalid, input[type="week"].error, input[type="week"].is-invalid, input[type="number"].error, input[type="number"].is-invalid, input[type="email"].error, input[type="email"].is-invalid, input[type="url"].error, input[type="url"].is-invalid, input[type="search"].error, input[type="search"].is-invalid, input[type="tel"].error, input[type="tel"].is-invalid, input[type="color"].error, input[type="color"].is-invalid, select.error, select.is-invalid, textarea.error, textarea.is-invalid, .field.error, .field.is-invalid {
	color: #fbe3e4;
	border-color: #fbe3e4;
	background-color: white;
	background-position: 99% center;
	background-repeat: no-repeat;
	/*background-image: url(../img/common/ask/ask_error.png);*/
	outline-color: #fbe3e4;
}
input[type="text"].success, input[type="text"].is-valid, input[type="password"].success, input[type="password"].is-valid, input[type="datetime"].success, input[type="datetime"].is-valid, input[type="datetime-local"].success, input[type="datetime-local"].is-valid, input[type="date"].success, input[type="date"].is-valid, input[type="month"].success, input[type="month"].is-valid, input[type="time"].success, input[type="time"].is-valid, input[type="week"].success, input[type="week"].is-valid, input[type="number"].success, input[type="number"].is-valid, input[type="email"].success, input[type="email"].is-valid, input[type="url"].success, input[type="url"].is-valid, input[type="search"].success, input[type="search"].is-valid, input[type="tel"].success, input[type="tel"].is-valid, input[type="color"].success, input[type="color"].is-valid, select.success, select.is-valid, textarea.success, textarea.is-valid, .field.success, .field.is-valid {
	color: #e6efc2;
	border-color: #e6efc2;
	background-color: white;
	background-position: 99% center;
	background-repeat: no-repeat;
	/*background-image: url(../img/common/ask/ask_ok.png);*/
	outline-color: #e6efc2;
}
input[type="text"][disabled], input[type="text"].is-disabled, input[type="password"][disabled], input[type="password"].is-disabled, input[type="datetime"][disabled], input[type="datetime"].is-disabled, input[type="datetime-local"][disabled], input[type="datetime-local"].is-disabled, input[type="date"][disabled], input[type="date"].is-disabled, input[type="month"][disabled], input[type="month"].is-disabled, input[type="time"][disabled], input[type="time"].is-disabled, input[type="week"][disabled], input[type="week"].is-disabled, input[type="number"][disabled], input[type="number"].is-disabled, input[type="email"][disabled], input[type="email"].is-disabled, input[type="url"][disabled], input[type="url"].is-disabled, input[type="search"][disabled], input[type="search"].is-disabled, input[type="tel"][disabled], input[type="tel"].is-disabled, input[type="color"][disabled], input[type="color"].is-disabled, select[disabled], select.is-disabled, textarea[disabled], textarea.is-disabled, .field[disabled], .field.is-disabled {
	cursor: not-allowed;
	border-color: #cfcfcf;
	opacity: 0.6;
}
input[type="text"][disabled]:focus, input[type="text"][disabled]:active, input[type="text"].is-disabled:focus, input[type="text"].is-disabled:active, input[type="password"][disabled]:focus, input[type="password"][disabled]:active, input[type="password"].is-disabled:focus, input[type="password"].is-disabled:active, input[type="datetime"][disabled]:focus, input[type="datetime"][disabled]:active, input[type="datetime"].is-disabled:focus, input[type="datetime"].is-disabled:active, input[type="datetime-local"][disabled]:focus, input[type="datetime-local"][disabled]:active, input[type="datetime-local"].is-disabled:focus, input[type="datetime-local"].is-disabled:active, input[type="date"][disabled]:focus, input[type="date"][disabled]:active, input[type="date"].is-disabled:focus, input[type="date"].is-disabled:active, input[type="month"][disabled]:focus, input[type="month"][disabled]:active, input[type="month"].is-disabled:focus, input[type="month"].is-disabled:active, input[type="time"][disabled]:focus, input[type="time"][disabled]:active, input[type="time"].is-disabled:focus, input[type="time"].is-disabled:active, input[type="week"][disabled]:focus, input[type="week"][disabled]:active, input[type="week"].is-disabled:focus, input[type="week"].is-disabled:active, input[type="number"][disabled]:focus, input[type="number"][disabled]:active, input[type="number"].is-disabled:focus, input[type="number"].is-disabled:active, input[type="email"][disabled]:focus, input[type="email"][disabled]:active, input[type="email"].is-disabled:focus, input[type="email"].is-disabled:active, input[type="url"][disabled]:focus, input[type="url"][disabled]:active, input[type="url"].is-disabled:focus, input[type="url"].is-disabled:active, input[type="search"][disabled]:focus, input[type="search"][disabled]:active, input[type="search"].is-disabled:focus, input[type="search"].is-disabled:active, input[type="tel"][disabled]:focus, input[type="tel"][disabled]:active, input[type="tel"].is-disabled:focus, input[type="tel"].is-disabled:active, input[type="color"][disabled]:focus, input[type="color"][disabled]:active, input[type="color"].is-disabled:focus, input[type="color"].is-disabled:active, select[disabled]:focus, select[disabled]:active, select.is-disabled:focus, select.is-disabled:active, textarea[disabled]:focus, textarea[disabled]:active, textarea.is-disabled:focus, textarea.is-disabled:active, .field[disabled]:focus, .field[disabled]:active, .field.is-disabled:focus, .field.is-disabled:active {
	background-color: #d5edf8;
}
input[type="password"] {
	letter-spacing: 0.3em;
}
.button {
	width: 320px;
	max-width: 100%;
	text-align: center;
	text-decoration: none;
	padding: 1em 1em;
	color: #000000;
	background: #FFE660;
	border: none;
	box-sizing: border-box;
	text-transform: uppercase;
	border-radius: 5px;
	background-clip: padding-box;
	cursor: pointer;
	font-size: 16px;
}
.button:hover {
	color: #000000;
	background: #FFCD06;
	box-sizing: border-box;
	text-transform: uppercase;
	border-radius: 5px;
	background-clip: padding-box;
	cursor: pointer;
	font-size: 16px;
}
.submit_box {
	margin: 2em 0 1em;
}



/* sitemap */
@media screen and (min-width: 768px) {
	.smap {
		margin-left: 5px;
		margin-bottom: 20px;
	}
	.smap ul {
		margin: 0;
		padding: 0;
		list-style-type: none;
	}
	.smap li {
		margin: 0;
		padding-bottom: 5px;
	}
	.smap a {
		display: block;
		color: #000000;
		width: 480px;
		padding: 2px 10px;
		text-decoration: none;
		margin-bottom: 5px;
		margin-top: 5px;
		border-bottom-width: 1px;
		border-bottom-style: dotted;
		border-bottom-color: #CCCCCC;
		background-image: none;
	}
	.smap .nolink {
		display: block;
		color: #000000;
		width: 500px;
		padding: 2px 10px;
		text-decoration: none;
		margin-bottom: 5px;
		margin-top: 5px;
		border-bottom-width: 1px;
		border-bottom-style: dotted;
		border-bottom-color: #CCCCCC;
		background-image: none;
	}
	.smap a:hover {
		color: #333;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #CCCCCC;
	}
	.smap ul ul {
		margin-left: 20px;
		padding: 0;
		list-style-type: none;
	}
	.smap li li a {
		display: block;
		color: #333;
		width: 450px;
		padding: 5px 10px;
		margin: 0;
		text-decoration: none;
		border-left-width: 1px;
		border-top-style: none;
		border-bottom-style: dotted;
		border-left-style: solid;
		border-left-color: #CCCCCC;
		border-bottom-width: 1px;
		border-bottom-color: #CCCCCC;
	}
	/* 第一階層 */
	.smap>li>a {
		font-size: 1.6rem;
		font-weight: bold;
	}
}
@media screen and (max-width: 767px) {
	.smap {
		margin-left: 5px;
		margin-bottom: 20px;
	}
	.smap ul {
		margin: 0;
		padding: 0;
		list-style-type: none;
	}
	.smap li {
		margin: 0;
		padding-bottom: 5px;
	}
	.smap a {
		display: block;
		color: #000000;
		padding: 2px 10px;
		text-decoration: none;
		margin-bottom: 5px;
		margin-top: 5px;
		border-bottom-width: 1px;
		border-bottom-style: dotted;
		border-bottom-color: #CCCCCC;
		background-image: none;
	}
	.smap .nolink {
		display: block;
		color: #000000;
		padding: 2px 10px;
		text-decoration: none;
		margin-bottom: 5px;
		margin-top: 5px;
		border-bottom-width: 1px;
		border-bottom-style: dotted;
		border-bottom-color: #CCCCCC;
		background-image: none;
	}
	.smap a:hover {
		color: #333;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #CCCCCC;
	}
	.smap ul ul {
		margin-left: 20px;
		padding: 0;
		list-style-type: none;
	}
	.smap li li a {
		display: block;
		color: #333;
		padding: 5px 10px;
		margin: 0;
		text-decoration: none;
		border-left-width: 1px;
		border-top-style: none;
		border-bottom-style: dotted;
		border-left-style: solid;
		border-left-color: #CCCCCC;
		border-bottom-width: 1px;
		border-bottom-color: #CCCCCC;
	}
	/* 第一階層 */
	.smap>li>a {
		font-size: 1.6rem;
		font-weight: bold;
	}
}


/* sitetop */
#sitetop {
	position: relative;
	padding-top: 0;
	/* z-index: 1; */
}
#sitetop h2 {
	padding-top: 0;
	border-top: none;
	border-top-width: 0;
}
#sitetop h2 .en {
	order: 1;
	margin-top: 0;
	padding-left: 0;
	color: var(--pages-color2);
}
#sitetop h2 .ja {
	order: 1;
	margin-top: 0;
}
#sitetop h3 {
	padding-top: 0;
}
#sitetop h3::before {
	display: none;
}
#sitetop .sec3 .list1 a {
	color: #333;
	transition: all 333ms ease;
}
#sitetop .sec3 .list1 a:hover {
	background: rgba(255, 255, 255, 0.95);
}
@media screen and (min-width: 768px) {
	#sitetop h2 .en {
		font-size: 28px;
	}
	#sitetop h2 .ja {
		font-size: 16px;
	}
	#sitetop h3 {
		font-size: 150%;
		justify-content: center;
	}
	
	#sitetop .main_img {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		align-content: center;
		width: 100%;
		height: 450px;
		background: url(../img/top/main_img@2x.jpg) center center / cover no-repeat;
	}
	#sitetop .main_img > .inner {
		width: 1200px;
		max-width: 100%;
		margin: 0 auto;
	}
	#sitetop .main_img h1 {
		color: #fff;
		text-align: center;
		line-height: 1.1;
		margin-top: 1.33em;
	}
	#sitetop .main_img h1 .txt1 {
		display: block;
		width: 100%;
		font-size: 25%;
	}
	#sitetop .main_img h1 .txt2 {
		display: block;
		width: 100%;
		margin-top: 0.2em;
		margin-bottom: 0.33em;
		font-size: 50%;
	}
	#sitetop .main_img h1 .txt3 {
		display: block;
		width: 100%;
		font-size: 33%;
	}
	
	#sitetop .sec1 {
		padding-left: 20px;
		padding-right: 20px;
	}
	#sitetop .sec1 > .inner {
		display: flex;
		justify-content: space-between;
		width: 1200px;
		max-width: 100%;
		margin: 0 auto;
	}
	#sitetop .sec1 .sec1-1,
	#sitetop .sec1 .sec1-2 {
		display: block !important;
		width: calc(50% - 20px);
	}
	.infolist .wrap {
		overflow-y: auto;
		height: 320px;
	}
	.infolist .wrap dl {
		display: flex;
		flex-wrap: wrap;
	}
	.infolist .wrap dl dt {
		width: 100px;
		padding: 0.5em 0;
		line-height: 1.2;
		border-bottom: 1px dashed #ccc;
	}
	.infolist .wrap dl dd {
		width: calc(100% - 100px);
		padding: 0.5em 0;
		line-height: 1.2;
		border-bottom: 1px dashed #ccc;
		font-size: 14px;
	}
	
	#sitetop .sec2 {
		padding: 60px 20px 100px;
		background: transparent linear-gradient(0deg, #FFFFFF, #84A3BF);
	}
	#sitetop .sec2 > .inner {
		width: 1200px;
		max-width: 100%;
		margin: 0 auto;
	}
	#sitetop .sec2 > .inner > .wrap {
		display: flex;
		justify-content: space-between;
		width: 100%;
	}
	#sitetop .sec2 .sec2-1,
	#sitetop .sec2 .sec2-2 {
		width: calc(50% - 20px);
		padding: 30px 30px;
		background: #fff;
	}
	#sitetop .sec2 .sec2-1 .text,
	#sitetop .sec2 .sec2-2 .text {
		position: relative;
		width: 100%;
		padding-right: 35%;
	}
	#sitetop .sec2 .sec2-1 .btnblock,
	#sitetop .sec2 .sec2-2 .btnblock {
		width: 100%;
		padding-right: 35%;
	}
	#sitetop .sec2 .sec2-1 .img,
	#sitetop .sec2 .sec2-2 .img {
		position: absolute;
		top: 0;
		right: -20px;
		width: 50%;
		height: 100%;
	}
	#sitetop .sec2 .sec2-1 .img1 {
		position: absolute;
		top: -20px;
		right: -20px;
		width: 100%;
		height: auto;
	}
	#sitetop .sec2 .sec2-1 .img2 {
		position: absolute;
		top: 150px;
		right: -20px;
		width: 75%;
		height: auto;
	}
	#sitetop .sec2 .sec2-2 .img1 {
		position: absolute;
		top: 0;
		right: -20px;
		width: 100%;
		height: auto;
	}
	
	#sitetop .sec3 {
		background: url(../img/top/sec3_bg@2x.png) center center / cover no-repeat;
	}
	#sitetop .sec3 > .inner {
		width: 1200px;
		max-width: 100%;
		margin: 0 auto;
	}
	#sitetop .sec3 h2 .ja,
	#sitetop .sec3 h2 .en {
		color: #fff;
	}
	#sitetop .sec3 > .inner > .wrap {
		display: flex;
		justify-content: space-between;
	}
	#sitetop .sec3 .list1 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width: 65.8%;
	}
	#sitetop .sec3 .list1 > .item {
		display: block;
		width: 48.1%;
		padding: 20px;
		background: rgba(255, 255, 255, 0.86);
	}
	#sitetop .sec3 .list1 > .item:nth-of-type(3),
	#sitetop .sec3 .list1 > .item:nth-of-type(4),
	#sitetop .sec3 .list1 > .item:nth-of-type(5) {
		margin-top: 30px;
	}
	#sitetop .sec3 .list1 h3 {
		margin-bottom: 0;
		padding-bottom: 0;
		text-align: center;
	}
	#sitetop .sec3 .list1 h3 + p {
		font-size: 14px;
		text-align: center;
	}
	
	#sitetop .sec3 .list2 {
		width: 31.6%;
		padding: 20px;
		background: rgba(255, 255, 255, 0.86);
	}
	#sitetop .sec3 .list2 h3 {
		margin-bottom: 5px;
		padding-bottom: 0;
		font-size: 140%;
		text-align: center;
	}
	#sitetop .sec3 .list2 h3 + p {
		font-size: 14px;
	}
	#sitetop .sec3 .list2 .btnblock {
		flex-wrap: wrap;
	}
	#sitetop .sec3 .list2 .btnblock .btn0 {
		/*justify-content: flex-start;*/
		justify-content: center;
		width: 100%;
		height: 80px;
		font-size: 90%;
	}
	#sitetop .sec3 .list2 .btnblock .btn0 + .btn0 {
		margin-top: 20px;
	}
	#sitetop .sec3 .list2 .btnblock .btn0 span {
		margin-left: 0.25em;
		margin-right: 0.25em;
	}
	#main_article .btn0[href*="technical/"] {
text-align: left;
}
	
	#sitetop .sec4 > .inner {
		width: 1200px;
		max-width: 100%;
		margin: 0 auto;
	}
	#sitetop .sec4-1 .coltxt .wrap {
		padding-top: 3em;
		padding-left: 15%;
	}
	#sitetop .sec4-2 .coltxt .wrap {
		padding-top: 3em;
		padding-right: 15%;
	}
	#sitetop .sec4 ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 2em;
	}
	#sitetop .sec4 ul li::before {
		content: "> ";
		color: #fff;
		font-size: 90%;
	}
	#sitetop .sec4 ul li a {
		color: #fff;
		font-size: 110%;
	}
	#sitetop .sec4-1 ul li {
		margin-top: 0.33em;
		margin-bottom: 0.33em;
		width: calc((100% - -145px) / 3);
		font-size: 14px;
	}
	#sitetop .sec4-2 ul li {
		margin-top: 0.33em;
		margin-bottom: 0.33em;
		width: calc((100% - 15px) / 2);
	}
	
	
	
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
}
@media screen and (min-width: 1025px) {
}
@media screen and (max-width: 767px) {
	#sitetop h2 .en {
		font-size: 28px;
	}
	#sitetop h2 .ja {
		font-size: 16px;
	}
	#sitetop h3 {
		font-size: 150%;
		justify-content: center;
	}
	
	#sitetop .main_img {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		align-content: center;
		width: 100%;
		height: calc(637 / 750 * 100vw);
		background: url(../img/sp/top/main_img@2x.jpg) center center / cover no-repeat;
	}
	#sitetop .main_img > .inner {
		width: 1200px;
		max-width: 100%;
		margin: 0 auto;
	}
	#sitetop .main_img h1 {
		color: #fff;
		text-align: center;
		line-height: 1.1;
	}
	#sitetop .main_img h1 .txt1 {
		display: block;
		width: 100%;
		font-size: 70%;
	}
	#sitetop .main_img h1 .txt2 {
		display: block;
		width: 100%;
		margin-top: 0.2em;
		margin-bottom: 0.33em;
		font-size: 125%;
	}
	#sitetop .main_img h1 .txt3 {
		display: block;
		width: 100%;
		font-size: 80%;
	}
	
	#sitetop .sec1 {
		padding-left: 20px;
		padding-right: 20px;
	}
	#sitetop .sec1 > .inner {
		width: 100%;
		margin: 0 auto;
	}
	#sitetop .sec1 .sec1-1,
	#sitetop .sec1 .sec1-2 {
		width: 100%;
	}
	#sitetop .sec1 .tablist a {
		display: inline-block;
		margin-bottom: 1.5em;
		color: #333;
		line-height: 1.2;
	}
	#sitetop .sec1 .tablist a .en {
		color: var(--pages-color2);
		font-size: 150%;
	}
	#sitetop .sec1 .tablist a + a {
		display: inline-block;
		margin-left: 1.5em;
	}
	#sitetop .sec1 .tablist a:not(.active) {
		opacity: 0.5;
	}
	.infolist .wrap {
		overflow-y: auto;
		height: 320px;
	}
	.infolist .wrap dl dt {
		width: 100%;
		padding: 0.5em 0 0.1em;
		line-height: 1.2;
	}
	.infolist .wrap dl dd {
		width: 100%;
		padding: 0.1em 0 0.5em;
		line-height: 1.2;
		border-bottom: 1px dashed #ccc;
	}
	
	#sitetop .sec2 {
		padding: calc(60 / 750 * 100vw) 0 calc(100 / 750 * 100vw);
		background: transparent linear-gradient(0deg, #FFFFFF, #84A3BF);
	}
	#sitetop .sec2 > .inner {
		width: 100%;
		margin: 0 auto;
	}
	#sitetop .sec2 > .inner > .wrap {
		width: 100%;
	}
	#sitetop .sec2 .sec2-1,
	#sitetop .sec2 .sec2-2 {
		width: 100%;
		padding: calc(30 / 750 * 100vw);
		background: #fff;
	}
	#sitetop .sec2 .sec2-2 {
		margin-top: 40px;
	}
	#sitetop .sec2 .sec2-1 h3,
	#sitetop .sec2 .sec2-2 h3 {
		font-size: calc(34 / 750 * 100vw);
		line-height: 1.25;
	}
	#sitetop .sec2 .sec2-1 .text,
	#sitetop .sec2 .sec2-2 .text {
		position: relative;
		width: 100%;
		padding-right: 40%;
	}
	#sitetop .sec2 .sec2-1 .text p,
	#sitetop .sec2 .sec2-2 .text p {
		font-size: calc(28 / 750 * 100vw);
		line-height: 1.25;
	}
	#sitetop .sec2 .sec2-1 .btnblock,
	#sitetop .sec2 .sec2-2 .btnblock {
		width: 100%;
		padding-right: 40%;
	}
	#sitetop .sec2 .sec2-1 .img,
	#sitetop .sec2 .sec2-2 .img {
		position: absolute;
		top: 0;
		right: 0;
		width: 50%;
		height: 100%;
	}
	#sitetop .sec2 .sec2-1 .img1 {
		position: absolute;
		top: -10px;
		right: -20px;
		width: 100%;
		height: auto;
	}
	#sitetop .sec2 .sec2-1 .img2 {
		position: absolute;
		top: calc(200 / 750 * 100vw);
		right: -20px;
		width: 75%;
		height: auto;
	}
	#sitetop .sec2 .sec2-2 .img1 {
		position: absolute;
		top: 0;
		right: -20px;
		width: 100%;
		height: auto;
	}
	
	#sitetop .sec3 {
		background: url(../img/sp/top/sec3_bg.png) center center / cover no-repeat;
	}
	#sitetop .sec3 > .inner {
		width: 100%;
		margin: 0 auto;
		padding-left: 0;
		padding-right: 0;
	}
	#sitetop .sec3 h2 .ja,
	#sitetop .sec3 h2 .en {
		color: #fff;
	}
	#sitetop .sec3 .wrap {
		width: 100%;
	}
	#sitetop .sec3 .list1 {
		width: 100%;
		padding: 30px 20px;
	}
	#sitetop .sec3 .list1 > .item {
		display: block;
		width: 100%;
		padding: 20px;
		background: rgba(255, 255, 255, 0.86);
	}
	#sitetop .sec3 .list1 > .item + .item {
		margin-top: 30px;
	}
	#sitetop .sec3 .list1 h3 {
		margin-bottom: 0;
		padding-bottom: 0;
		text-align: center;
	}
	#sitetop .sec3 .list1 h3 + p {
		font-size: 14px;
		text-align: center;
	}
	
	#sitetop .sec3 .list2 {
		width: 100%;
		padding: 30px 20px;
		background: var(--pages-color2d);
	}
	#sitetop .sec3 .list2 > .wrap {
		padding: 20px;
		background: rgba(255, 255, 255, 0.86);
	}
	#sitetop .sec3 .list2 h3 {
		margin-bottom: 5px;
		padding-bottom: 0;
		font-size: 140%;
		text-align: center;
	}
	#sitetop .sec3 .list2 h3 + p {
		font-size: 14px;
	}
	#sitetop .sec3 .list2 .btnblock {
		flex-wrap: wrap;
	}
	#sitetop .sec3 .list2 .btnblock .btn0 {
		justify-content: flex-start;
		width: 100%;
		height: 80px;
		font-size: 90%;
	}
	#sitetop .sec3 .list2 .btnblock .btn0 + .btn0 {
		margin-top: 20px;
	}
	#sitetop .sec3 .list2 .btnblock .btn0 span {
		margin-left: 0.25em;
		margin-right: 0.25em;
	}
	
	#sitetop .sec4 > .inner {
		width: 100%;
		margin: 0 auto;
	}
	#sitetop .sec4-1 .coltxt .wrap {
		padding-top: 3em;
		/* padding-left: 15%; */
	}
	#sitetop .sec4-2 .coltxt .wrap {
		padding-top: 3em;
		/* padding-right: 15%; */
	}
	#sitetop .sec4 ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 2em;
	}
	#sitetop .sec4 ul li::before {
		content: "> ";
		color: #fff;
		font-size: 90%;
	}
	#sitetop .sec4 ul li a {
		color: #fff;
		font-size: calc(26 / 750 * 100vw);
		letter-spacing: -0.05em;
	}
	#sitetop .sec4-1 ul li {
		margin-top: 0.33em;
		margin-bottom: 0.33em;
		width: calc((100% - 15px) / 2);
	}
	#sitetop .sec4-2 ul li {
		margin-top: 0.33em;
		margin-bottom: 0.33em;
		width: calc((100% - 15px) / 2);
	}
	
	
	
	
}
@media screen and (max-width: 480px) {
}


/* products */
.asidenav {
	opacity: 0;
	bottom: -100;
	/* transition: opacity 250ms ease; */
	transition: all 250ms ease;
}
.asidenav.show {
	opacity: 1;
	bottom: 0;
}
@media screen and (min-width: 768px) {
	.asidenav {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		padding: 10px 0;
		background: rgba(255, 255, 255, 0.5);
		z-index: 40;
	}
	.asidenav > .inner {
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
	}
	.asidenav .btnblock {
		margin-top: 0;
	}
	.asidenav a {
		height: 70px;
		font-size: 90%;
		line-height: 1.3;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	.asidenav a {
		height: 60px;
		font-size: 90%;
	}
}
@media screen and (min-width: 1025px) {
}
@media screen and (max-width: 767px) {
	.asidenav {
		display: none;
	}
}
@media screen and (max-width: 480px) {
}



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



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



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







