@charset "utf-8";


/*---------------------------------------------------------------------------------------
	Overall settings
----------------------------------------------------------------------------------------*/

:root { --blue: #007C9C;}

body{
	color: #111;
	text-align: center;
}
body.ovh{ position: fixed; left: 0; top: 0; width: 100%; height: 100vh;}
a{ color: #111; text-decoration:none; -webkit-transition: all .2s; transition: all .2s;}
a:hover{ opacity: .7; text-decoration:none;}
.underline{ text-decoration: underline;}
/* font */
.gothic{ font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;}
.mincho{ font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;}
.raleway{ font-family: 'Raleway', sans-serif;}
.arial{ font-family: "Arial", "メイリオ";}
/* bg */
.bg-white{ background: #fff;}
/* color */
.white{ color: #fff;}
.red{ color: #c00;}
.f-red{ color: #D12222;}
.f-blue{ color: var(--blue);}
.f-aqua{ color: #36C4F8;}
.f-orange{ color: #DD6D32;}
.f-green{ color: #00935F;}
.f-emerald{ color: #30AFB4;}
.bg-aqua{ background: #E0F5FA;}
.f16{ font-size: 16px; line-height: 1.4;}
.f18{ font-size: 18px; line-height: 1.4;}
.f20{ font-size: 20px; line-height: 1.4;}
.f22{ font-size: 22px; line-height: 1.4;}
.f24{ font-size: 24px; line-height: 1.4;}
.f28{ font-size: 28px; line-height: 1.4;}
.f30{ font-size: 30px; line-height: 1.4;}
.lh2{ line-height: 2;}
.fw300{ font-weight: 300;}
.fw400{ font-weight: 400;}
.fw500{ font-weight: 500;}
.fw600{ font-weight: 600;}
.fw700{ font-weight: 700;}
.ttl{
	color: var(--blue);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.4;
}
.ttl strong{ font-size: 54px;}
.ttl2{
	color: var(--blue);
	font-size: 38px;
	font-weight: 500;
}
.ttl2 span{
	font-size: 24px;
	line-height: 1.2;
	font-style: italic;
	display: inline-block;
	padding-bottom: 5px;
	border-bottom: 2px solid var(--blue);
	margin-bottom: 8px;
}
.ttl3{
	color: var(--blue);
	font-size: 26px;
	font-weight: 400;
	line-height: 1.4;
	text-align: left;
	padding-bottom: 10px;
	border-bottom: 1px solid #85C3D9;
	position: relative;
}
.ttl3:before{
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 140px;
	height: 1px;
	background: #007C9C;
	display: block;
}
.ttl3.nobdr{
	border: none;
	font-weight: 500;
}
.ttl3.nobdr:before{
	display: none;
}
.ttl4{
	color: var(--blue);
	font-weight: 500;
}
.ttl4 span{
	display: inline-block;
	padding-bottom: 3px;
	border-bottom: 2px solid var(--blue);
}
.ttl5{
	color: var(--blue);
	font-size: 38px;
	line-height: 1.4;
	font-weight: 500;
}
.ttl6{
	color: var(--blue);
	font-size: 22px;
	line-height: 1.4;
	font-weight: 400;
	text-align: center;
	padding: 10px;
	background: #ECF7F8;
}
.ttl6.ttl6-2{
	font-size: 20px;
	padding: 3px;
}
.ttl7{
	color: var(--blue);
	font-size: 26px;
	font-weight: 400;
	line-height: 1.5;
	text-align: left;
	padding-left: 30px;
	border-left: 14px solid #007C9C;
}
.ttl8{
	font-size: 22px;
	font-weight: 400;
	line-height: 1.4;
	text-align: left;
	padding-left: 30px;
	position: relative;
}
.ttl8:before{
	content: "";
	position: absolute;
	top: 8px;
	left: 2px;
	width: 18px;
	height: 18px;
	display: block;
	background: #007C9C;
}
.ttl9{
	color: var(--blue);
	font-size: 24px;
	line-height: 1.4;
	font-weight: 500;
	padding-bottom: 10px;
	position: relative;
}
.ttl9:after{
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	width: 66px;
	height: 2px;
	display: block;
	background: var(--blue);
	margin: 0 auto;
}
.ttl9.f38{
	font-size: 38px;
	padding-bottom: 20px;
}
.ttl10{
	font-size: 18px;
	font-weight: 400;
	line-height: 1.4;
	text-align: left;
	padding-left: 30px;
	position: relative;
}
.ttl10.fw500{ font-weight: 500;}
.ttl10.f20{ font-size: 20px;}
.ttl10.f22{ font-size: 22px;}
.ttl10:before{
	content: "";
	position: absolute;
	top: 4px;
	left: 2px;
	width: 18px;
	height: 18px;
	display: block;
	background: #30AFB4;
}
.ttl10.f20:before{ top: 5px;}
.ttl10.f22:before{ top: 7px;}
.ttl11{
	color: var(--blue);
	font-size: 20px;
	line-height: 1.4;
	font-weight: 400;
	padding-bottom: 10px;
	border-bottom: 1px solid #D9D9D9;
}
.btn-dl{
	color: var(--blue);
	border: 1px solid var(--blue);
	padding: 15px 20px;
	display: inline-block;
}

.tag{
	color: #fff;
	font-size: 14px;
	line-height: 1.1;
	display: inline-block;
	width: 90px;
	text-align: center;
	padding: 4px;
}
.tag-ir{ background: #307CB4;}
.tag-news{ background: #30B4AF;}
.tag-finance{ background: #9F4FB2;}
.pdf{
	color: #D12222;
	font-size: 12px;
	line-height: 1.2;
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #D12222;
	padding: 1px 8px;
}
.btn{
	color: var(--blue);
	display: inline-block;
	padding-right: 80px;
	background: url("../img/arrow-blue.svg") right center no-repeat;
}
.btn.bd-btm{
	padding-right: 40px;
	border-bottom: 1px solid var(--blue);
}
.btn2{
	color: #fff;
	font-size: 20px;
	line-height: 1.4;
	display: inline-block;
	padding: 20px 45px 20px 25px;
	background: linear-gradient(to right, #FF7510, #FFC507);
	position: relative;
	max-width: 380px;
	width: 100%;
}
.btn2:after{
	content: "";
	position: absolute;
	top: 48%;
	right: 25px;
	background: url("../img/arrow-white.svg") center no-repeat;
	display: block;
	width: 16px;
	height: 6px;
}
.btn3{
	color: #fff;
	font-size: 20px;
	line-height: 1.4;
	display: inline-block;
	border: 1px solid #fff;
	padding: 20px 45px 20px 25px;
	position: relative;
	max-width: 380px;
	width: 100%;
}
.btn3:after{
	content: "";
	position: absolute;
	top: 48%;
	right: 25px;
	background: url("../img/arrow-white.svg") center no-repeat;
	display: block;
	width: 16px;
	height: 6px;
}
.btn4{
	color: #30AFB4;
	text-align: center;
	padding: 5px 12px;
	display: inline-block;
	min-width: 185px;
	border: 1px solid #30AFB4;
	border-radius: 5px;
	background: url("../img/arrow-right-aqua.svg") right 6px center no-repeat;
}
.btn4.btn4-outside{
	background: url("../img/ic-outside.svg") right 6px center no-repeat;
	padding: 5px 15px;
}
.btn4.btn4-large{
	padding: 10px 12px;
	min-width: 260px;
}
.btn4.btn4-back{ background: url("../img/arrow-left-aqua.svg") left 6px center no-repeat;}
.btn4.btn4-back.btn4-large{ background: url("../img/arrow-left-aqua.svg") left 8px center no-repeat;}

.lower1-ttl{
	text-align: left;
	padding-top: 50px;
	background: url("../img/lower1-ttl-pc.jpg") center / cover no-repeat;
	position: relative;
}
.lower1-ttl.ttl-recruit{ background: url("../img/lower-recruit-ttl.jpg") center / cover no-repeat;}
.lower1-ttl.ttl-corporate{ background: url("../img/lower-corporate-ttl.jpg") center / cover no-repeat;}
.lower1-ttl.ttl-csr{ background: url("../img/lower-csr-ttl.jpg") center / cover no-repeat;}
.lower1-ttl,.lower1-ttl .wrap{ min-height: 150px;}
.lower1-ttl:after{
	content: "";
	position: absolute;
	z-index: 0;
	bottom: 0;
	left: 0;
	width: calc(51% - (1000px / 2));
	height: 100px;
	background: #fff;
	display: block;
}
.lower1-ttl .wrap{
	position: relative;
	padding: 0;
}
.lower1-ttl .lower1-ttl1{
	color: #fff;
	font-size: 22px;
	font-weight: 500;
	position: absolute;
	top: 0;
	left: 0;
}
.lower1-ttl .lower1-ttl2{
	color: var(--blue);
	font-size: 38px;
	font-weight: 400;
	line-height: 100px;
	padding-right: 65px;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 9;
}
.lower1-ttl .lower1-ttl3{
	color: #fff;
	font-size: 108px;
	line-height: 1.3;
	font-weight: 300;
	opacity: .3;
	position: absolute;
	right: 0;
	bottom: 0;
}
.recruit-ttl{
	padding: 195px 5%;
	background: url("../img/recruit-main.jpg") center / cover no-repeat;
}
.recruit-ttl div{
	color: #fff;
	font-size: 32px;
	line-height: 1.6;
	background-color: rgba(48, 175, 180,0.75);
	max-width: 500px;
	padding: 45px 5px;
	margin: 0 auto;
}
.recruit-ttl div h2{
	font-size: 50px;
	font-weight: 400;
	line-height: 1.4;
}
.f14{ font-size: 14px;}
p.list{
	color: #111;
	text-align: left;
	position: relative;
	padding-left: 1.5em;
}
p.list:before{
	content: "";
	position: absolute;
	top: .4em;
	left: 0;
	width: 15px;
	height: 15px;
	background: #007C9C;
	display: block;
}
ul.list li{
	font-size: 18px;
	text-align: left;
	padding-left: 1.5em;
	position: relative;
	margin-bottom: 5px;
}
ul.list.f16 li{ font-size: 16px;}
ul.list li:before{
	content: "";
	position: absolute;
	top: .4em;
	left: 0;
	width: 15px;
	height: 15px;
	background: #007C9C;
	display: block;
}
.hissu{
	color: #fff;
	font-size: 14px;
	display: inline-block;
	padding: 2px 15px;
	background: #DD6D32;
}
.pan{
	padding: 10px 0;
	background: #f4f4f4;
}
.pan.fixed{
	width: 100%;
	top: 60px;
	left: 0;
}
.pan ol{
	font-size: 12px;
	display: flex;
}
.pan ol li:before{
	content: "〉";
	display: inline-block;
	margin-left: .3em;
}
.pan ol li:first-child:before{ content: none;}
.pan ol li a{
	color: var(--blue);
	text-decoration: underline;
}
table.tb1{
	width: 100%;
	border-top: 1px solid #85C3D9;
}
table.tb1 th,table.tb1 td{
	border-bottom: 1px solid #85C3D9;
	vertical-align: top;
}
table.tb1 th{
	color: var(--blue);
	font-weight: 500;
	width: 23.5%;
	padding: 30px 58px 30px 0;
	position: relative;
}
table.tb1 th .hissu{
	position: absolute;
	top: 30px;
	right: 0;
}
table.tb1 td{
	padding: 20px 0 20px 25px;
	width: 76.5%;
	vertical-align: middle;
}
table.tb1 td .clm2{
	display: flex;
	flex-wrap: wrap;
}
table.tb1 td .clm2 label{
	width: 50%;
	padding-right: 5px;
	margin-bottom: 20px;
}
table.tb1 td ul.modal-btn{
	font-size: 14px;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
}
table.tb1 td ul.modal-btn li{ margin-left: 30px;}
table.tb1 td dl.contact-dl{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
table.tb1 td dl.contact-dl dt{
	font-weight: 500;
	width: 85px;
	padding-right: 5px;
}
table.tb1 td dl.contact-dl dd{ flex: 1;}

table.tb1 td ::placeholder{ color: #A2A2A2;}

table.tb2{ width: 100%;}
table.tb2 th,table.tb2 td{
	font-size: 16px;
	line-height: 2;
}
table.tb2 > tbody > tr > th,table.tb2 > tbody > tr > td{
	padding: 25px 30px;
	border-bottom: 1px solid #D9D9D9;
}
table.tb2 > tbody > tr > th{
	font-weight: 700;
}
table.tb2 > tbody > tr > td{
	padding-left: 0;
}
table.tb2 > tbody td.kome{
	width: 6.5em;
	padding-right: 1.2em;
	position: relative;
}
table.tb2 > tbody td.kome .f-blue{
	position: absolute;
	top: 0;
	right: 0;
}
table.tb2 > tbody > tr > td table th,table.tb2 > tbody > tr > td table td{ padding-right: 15px;}

.inline-cont{
	text-align: left;
	padding: 40px 60px;
	background: #fff;
	border-radius: 10px;
	word-break: break-all;
}
.inline-cont table.tb1 tr.no_bdr th, .inline-cont table.tb1 tr.no_bdr td{
	border: none;
}
.inline-cont table.tb1 th,.inline-cont table.tb1 td{ padding: 10px 0;}
.inline-cont table.tb1 td{ padding-right: 20px;}
.inline-cont .check{
	text-align: center;
}
.inline-cont .check a{
	color: #fff;
	font-weight: 500;
	padding: 10px 40px;
	background-color: #D12222;
}
.sidenav-cont{
	text-align: left;
	display: flex;
	justify-content: space-between;
}
.sidenav-cont .sidenav-cont-left{
	padding-top: 60px;
	padding-bottom: 100px;
	max-width: 750px;
	width: 100%;
}
ul.sidenav{
	text-align: left;
	width: 200px;
	border-top: 1px solid #D9D9D9;
	margin: 50px 0 50px 50px;
}
ul.sidenav.csr{
	width: 350px;
}
ul.sidenav li{ border-bottom: 1px solid #D9D9D9;}
ul.sidenav li.active{ background: #F5F5F5;}
ul.sidenav li a{
	color: var(--blue);
	font-size: 14px;
	display: block;
	padding: 25px 13px;
}
ul.sidenav li a span{
	border-left: 3px solid #30AFB4;
	padding-left: 15px;
}
.ac{ overflow: hidden;}
.ac dt{
	color: var(--blue);
	font-size: 22px;
	line-height: 1.4;
	padding: 7px 35px 7px 75px;
	position: relative;
	background: url("../img/arrow-circle-bottom.svg") right 12px center no-repeat #ECF7F8;
	cursor: pointer;
	min-height: 50px;
	margin-bottom: 10px;
}
.ac dt.open{ background: url("../img/arrow-circle-top.svg") right 12px center no-repeat #ECF7F8;}
.ac dt:before{
	content: "Q";
	color: #fff;
	font-size: 26px;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	height: 50px;
	line-height: 42px;
	background: #75b9c9;
	display: block;
}
.ac dd{
	display: none;
	line-height: 2;
	padding: 10px 0 40px 75px;
}
.fixed{
	position: fixed;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 1130px) {
	.lower1-ttl .wrap{ padding: 0 5%;}
	.lower1-ttl .lower1-ttl1,.lower1-ttl .lower1-ttl2{ left: 5%;}
	.lower1-ttl:after{ width: 100px;}
}
@media screen and (max-width: 768px) {
	a:hover{ opacity: 1;}
	.f16{ font-size: 15px;}
	.f18{ font-size: 16px;}
	.f20{ font-size: 18px;}
	.f24{ font-size: 20px;}
	.f28{ font-size: 22px;}
	.f30{ font-size: 24px;}
	.ttl{ font-size: 16px; line-height: 1.2;}
	.ttl strong{ font-size: 36px;}
	.ttl2{ font-size: 26px;}
	.ttl2 span{
		font-size: 18px;
		margin-bottom: 5px;
	}
	.ttl3{
		font-size: 20px;
		padding-bottom: 5px;
	}
	.ttl3:before{ width: 100px;}
	.ttl5{ font-size: 26px;}
	.ttl6{ font-size: 18px;}
	.ttl6.ttl6-2{ font-size: 17px;}
	.ttl7{
		font-size: 20px;
		padding-left: 15px;
		border-left: 7px solid #007C9C;
	}
	.ttl8{
		font-size: 20px;
		padding-left: 25px;
	}
	.ttl8.f20{ font-size: 17px;}
	.ttl8:before{
		top: 6px;
		left: 0;
		width: 15px;
		height: 15px;
	}
	.ttl9{
		font-size: 20px;
		padding-bottom: 7px;
	}
	.ttl9:after{ width: 50px;}
	.ttl9.f38{ font-size: 26px;}
	.ttl10{
		font-size: 16px;
		padding-left: 22px;
	}
	.ttl10.f20{ font-size: 18px;}
	.ttl10.f22{ font-size: 20px;}
	.ttl10:before{
		top: 4px;
		left: 0;
		width: 16px;
		height: 16px;
	}
	.ttl10.f22:before{ top: 6px;}
	.tag{
		font-size: 12px;
		width: 60px;
	}

	.lower1-ttl{
		padding-top: 50px;
		background: url("../img/lower1-ttl-sp.jpg") center / cover no-repeat;
	}
	.lower1-ttl:after{
		width: 50px;
		height: 60px;
	}
	.lower1-ttl,.lower1-ttl .wrap{ min-height: 100px;}
	.lower1-ttl .lower1-ttl1{
		font-size: 18px;
		left: 5%;
		margin-bottom: 8px;
	}
	.lower1-ttl .lower1-ttl2{
		font-size: 26px;
		line-height: 60px;
		left: 5%;
		padding-right: 40px;
	}
	.lower1-ttl .lower1-ttl3{
		font-size: 54px;
		top: 10px;
		right: inherit;
		bottom: inherit;
		left: 5%;
	}
	.f14{ font-size: 13px;}
	ul.list li{ font-size: 16px;}
	ul.list.f16 li{ font-size: 14px;}
	ul.list li:before{
		width: 14px;
		height: 14px;
	}
	.btn2{
		font-size: 18px;
		padding: 15px 45px 15px 20px;
	}
	.btn3{
		font-size: 18px;
		padding: 15px 45px 15px 20px;
	}
	.pan{
		overflow-x: scroll;
		word-break: keep-all;
		white-space: nowrap;
	}
	table.tb1.tb-sp th,table.tb1.tb-sp td{
		display: block;
		width: 100%;
	}
	table.tb1.tb-sp th{
		border-bottom: none;
		padding: 15px 58px 0 0;
	}
	table.tb1 th .hissu{ top: 15px;}
	table.tb1.tb-sp td{ padding: 15px 0;}
	table.tb1 td .clm2{ display: block;}
	table.tb1 td .clm2 label{
		width: 100%;
		padding-right: 0;
		margin-bottom: 10px;
	}
	table.tb1 td ul.modal-btn li{ margin: 0 0 10px 10px;}
	table.tb2 th,table.tb2 td{ font-size: 15px;}
	table.tb2.tb-sp th,table.tb2.tb-sp td{
		display: block;
	}
	table.tb2.tb-sp td table th,table.tb2.tb-sp td table td{ display: table-cell;}
	table.tb2.tb-sp th{
		border-bottom: none;
		padding-bottom: 0;
	}
	table.tb2 > tbody > tr > th,table.tb2 > tbody > tr > td{ padding: 10px 15px;}
	.inline-cont{
		padding: 15px 20px;
		border-radius: 5px;
	}
	.sidenav-cont{ display: block;}
	.sidenav-cont .sidenav-cont-left{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	ul.sidenav{
		width: 100%;
		margin: 0 0 50px;
	}
	.ac dt{
		font-size: 18px;
		padding: 5px 32px 5px 50px;
		background: url("../img/arrow-circle-bottom.svg") right 10px center / 20px auto no-repeat #ECF7F8;
		min-height: 40px;
	}
	.ac dt.open{ background: url("../img/arrow-circle-top.svg") right 10px center / 20px auto no-repeat #ECF7F8;}
	.ac dt:before{
		font-size: 20px;
		width: 40px;
		height: 40px;
		line-height: 35px;
	}
	.ac dd{ padding: 5px 0 20px 50px; line-height: 1.8;}
}
@media screen and (max-width: 375px) {
	html{ font-size: 50%;}
}

/* FadeUp */
.move.move-active.FadeUp{ animation: FadeUp 1s; opacity: 0;}
@keyframes FadeUp {
  0% { transform: translateY(60px); opacity: 0;}
  100% { transform: translateY(0); opacity: 1;}
}
.move.move-active.FadeLeft{ animation: FadeLeft 1s; opacity: 0;}
@keyframes FadeLeft {
  0% { transform: translateX(60px); opacity: 0;}
  100% { transform: translateY(0); opacity: 1;}
}
.move.move-active.FadeRight{ animation: FadeRight 1s;}
@keyframes FadeRight {
  0% { transform: translateX(-60px); opacity: 0;}
  100% { transform: translateY(0); opacity: 1;}
}





/*---------------------------------------------------------------------------------------
	header
----------------------------------------------------------------------------------------*/

header{
	width: 100%;
	height: 60px;
	padding: 0 3%;
	margin: 0 auto;
	background: #fff;
}
header.fixed{
	top: 0;
	left: 0;
}
header.top-header{
	color: #fff;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 999;
	background: none;
}
header.top-header a{ color: #fff;}
header .site-logo{
	float: left;
	padding: 15px 0 5px;
}
header .site-logo.f-none{ float: none;}
header .site-logo img{
	width: 302px;
}
header .site-logo span{
	line-height: 1;
	display: inline-block;
	vertical-align: bottom;
	margin-bottom: 4px;
}
header .spmenu{
	display: none;
}
/* nav */
header nav{
	font-size: 14px;
	float: right;
	display: flex;
}
header nav ul{
	display: flex;
	justify-content: space-between;
}
header nav ul > li a{
	padding: 20px 15px 0;
	height: 60px;
	display: block;
}
header nav .lang{
	margin-left: 15px;
	padding-top: 20px;
}
header nav .lang a{
	color: var(--blue);
	line-height: 1.1;
	border: 1px solid var(--blue);
	display: inline-block;
	padding: 5px 10px;
}
header.top-header nav .lang a{
	color: #fff;
	border: 1px solid #fff;
}

@media screen and (max-width: 1040px) {
	header{
		width: 100%;
		height: 60px;
		z-index: 999;
		padding: 0;
	}
	header.top-header a{ color: #000;}
	header .site-logo{
		text-align: left;
		padding: 12px 0 0 5%;
		width: 240px;
		position: relative;
		z-index: 999;
		float: left;
	}
	header .site-logo.f-none{
		width: 100%;
		text-align: center;
	}
	header .site-logo img{
		width: 230px;
		height: auto;
	}
	header .spmenu{
		color: #000;
		font-size: 1.6rem;
		display: block;
		float: right;
		width: 60px;
		height: 60px;
		cursor: pointer;
		z-index: 101;
		position: relative;
	}
	header .spmenu span,
	header .spmenu span:before,
	header .spmenu span:after{
		position: absolute;
		display: block;
		background: #000;
		width: 40px;
		height: 2px;
		transition: all .5s;
	}
	header .spmenu span{
		top: 18px;
		left: 10px;
	}
	header .spmenu span:before,header .spmenu span:after{
		content: "";
		left: 0;
	}
	header .spmenu span:before{
		top: 10px;
	}
	header .spmenu span:after{
		top: 20px;
	}
	header.open .spmenu span{
		background: #000;
		top: 5px;
		-webkit-transform: translateY(20px) rotate(-45deg);
		transform: translateY(20px) rotate(-45deg);
	}
	header.open .spmenu span:before{
		opacity: 0;
	}
	header.open .spmenu span:after{
		background: #000;
		-webkit-transform: translateY(-20px) rotate(90deg);
		transform: translateY(-20px) rotate(90deg);
		top: 20px;
	}
	/* nav */
	header nav{
		font-size: 1.8rem;
		position: relative;
		z-index: 1;
		top: 0;
		right: 0;
		width: 100%;
		background: #000;
		display: block;
		text-align: left;
		float: none;
	}
	header nav{
		overflow: auto;
		display: block;
		position: absolute;
		z-index: 99;
		top: 60px;
		width: 100%;
		left: 0;
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: center top;
		transform-origin: center top;
		opacity: 0;
		transition-property: opacity, transform, -webkit-transform;
		transition-duration: .5s, 0s, 0s;
		transition-delay: 0s, .5s, .5s;
		box-shadow: 0 0 0 100vh #fff;
		background: #fff;
		height: calc(100vh - 60px);
	}
	header.open nav{
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 1;
		transition-delay: 0s, 0s, 0s;
	}
	header nav ul{
		display: block;
		border-top: 1px solid #808080;
		margin-bottom: 15px;
	}
	header nav ul > li.mega:hover > ul,header nav ul > li.gnav-privacy.mega:hover > ul{ border-top: none;}
	header nav ul > li{
		float: none;
		height: auto;
		margin-left: 0;
		padding: 0;
	}
	header nav ul > li:nth-child(4){ display: block;}
	header nav ul > li a{
		color: #000;
		display: block;
		padding: 12px;
		height: inherit;
		margin: 0;
		border-bottom: 1px dashed #808080;
		position: relative;
		min-height: inherit;
	}
	header nav .lang{ padding-top: 0;}
	header.top-header nav .lang a{
		color: var(--blue);
		border: 1px solid var(--blue);
	}
}





/*---------------------------------------------------------------------------------------
	section
----------------------------------------------------------------------------------------*/

section{}
.wrap{
	clear: both;
	box-sizing: content-box;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 5%;
	padding-right: 5%;
}

.mv img{ width: 100%;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
}






/*---------------------------------------------------------------------------------------
	footer
----------------------------------------------------------------------------------------*/

footer{
	padding: 90px 0 50px;
	background:linear-gradient(to bottom,#E6F9FF, #B2D8D2);
}
footer.footer-pop{ padding: 15px 5%;}
footer .footer-link{
	text-align: left;
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
}
footer .footer-link ul li{ margin-bottom: 15px;}
footer ul.footer-bnr{
	display: flex;
	justify-content: space-between;
}
footer ul.footer-bnr{ margin-bottom: 40px;}
footer ul.footer-bnr li{ width: 32%;}
footer .copy{
	color: #fff;
	font-size: 10px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	footer{ padding: 50px 0 40px;}
	footer .wrap{ padding-right: 10%; padding-left: 10%;}
	footer .footer-link{
		display: block;
		margin-bottom: 50px;
	}
	footer .footer-link .footer-logo{ margin-bottom: 40px;}
	footer .footer-link ul li{ margin-bottom: 10px;}
	footer ul.footer-bnr{
		display: block;
		margin-bottom: 20px;
	}
	footer ul.footer-bnr li{
		width: 100%;
		max-width: 320px;
		margin: 0 auto 15px;
	}
}









/*---------------------------------------------------------------------------------------
	top
----------------------------------------------------------------------------------------*/

/* youtube */
.mv{ position: relative; width: 100%; padding-top: 56.25%;}
.mv video{ position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important;}

.top-bg{ background: url("../img/top-bg.png") center / cover no-repeat;}

/* top-news */
.top-news{
	text-align: left;
	width: 97%;
	background: #fff;
	padding: 50px 70px;
	display: flex;
	position: relative;
}
.top-news .ttl{ width: 200px;}
.top-news div{ flex: 1;}
.top-news div dl{
	display: flex;
	margin-bottom: 18px;
}
.top-news div dl dt{ width: 13em;}
.top-news div dl dt .date{ font-weight: 500;}
.top-news div dl dt span{ display: inline-block; margin-right: 1em;}
.top-news div dl dd{
	flex: 1;
}
.top-news div dl dd .pdf{ margin: 0 0 5px 10px;}
.top-news p{
	position: absolute;
	right: 30px;
	bottom: 20px;
}
.top-news p a.btn{ border-bottom: 1px solid var(--blue);}

/* top-bnr */
.top-bnr{
	padding: 40px 5% 50px;
}
.top-bnr .top-bnr-slide .slick-slide{ margin: 0 15px;}

/* top-pickup */
.top-pickup{
	overflow: hidden;
	text-align: left;
	margin-left: 6%;
	padding: 50px 15% 50px 90px;
	background:linear-gradient(to right,#A4D7E5, #D6F2EE);
}
.top-pickup .top-pickup-slide .slick-track{ display: flex;}
.top-pickup .top-pickup-slide .slick-list{ overflow: visible;}
.top-pickup .top-pickup-slide .slick-slide{
	color: var(--blue);
	font-size: 18px;
	line-height: 1.4;
	padding: 0 0 20px;

	background: #fff;
	margin-right: 15px;
	height: auto!important;
}
.top-pickup .top-pickup-slide .slick-slide div{ padding: 25px 30px;}
.top-pickup .top-pickup-slide .slick-slide p{ margin-bottom: 5px;}
.top-pickup .top-pickup-slide .slick-slide .tag{
	color: var(--blue);
	font-size: 14px;
	border: 1px solid var(--blue);
	width: auto;
	padding: 4px 15px;
	display: inline-block;
	margin: 0 10px 5px 0;
}
.top-pickup .top-pickup-slide .slick-slide .tag.tag-aqua{
	color: #fff;
	background: #307CB4;
}
.top-pickup .top-pickup-slide .slick-slide .tag.tag-heat{
	color: #fff;
	border: 1px solid #D69020;
	background: #D69020;
}
.top-pickup .top-pickup-slide .slick-slide .tag.tag-sound{
	color: #fff;
	border: 1px solid #579113;
	background: #579113;
}
.top-pickup .top-pickup-slide .slick-prev{
	top: -60px;
	left: inherit;
	right: 72px;
}
.top-pickup .top-pickup-slide .slick-next{
	top: -60px;
	right: 0;
}
.top-pickup a.btn{ border-bottom: 1px solid var(--blue);}

/* top-about */
.top-about{ padding: 35px 0 45px;}
.top-about .wrap{
	max-width: 1400px;
	padding-right: 4%;
	padding-left: 4%;
}
.top-about .wrap div{
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}
.top-about div a{
	color: var(--blue);
	font-size: 20px;
	line-height: 1.4;
	width: 32%;
	padding: 30px 40px;
	background: #fff;
	display: block;
	margin-right: 15px;
}
.top-about div a .btn{ padding-right: 35px;}

/* top-bnr2 */
.top-bnr2{
	text-align: left;
	margin-right: 8%;
	background:linear-gradient(to right,#A4D7E5, #D6F2EE);
	padding: 85px 7% 70px;
}
.top-bnr2 .inner{ padding-left: 10%;}
.top-bnr2 .inner div{
	display: flex;
	flex-wrap: wrap;
}
.top-bnr2 .inner div a{
	font-size: 20px;
	font-weight: 500;
	width: 48%;
	height: 180px;
	display: flex;
	align-items: center;
	padding-left: 24%;
	background: #fff;
	margin: 0 2% 15px 0;
}
.top-bnr2 .inner div a.bnr2-corporate{ background: url("../img/top-company.jpg") left center / auto 100% no-repeat #fff;}
.top-bnr2 .inner div a.bnr2-ir{ background: url("../img/top-ir.jpg") left center / auto 100% no-repeat #fff;}
.top-bnr2 .inner div a.bnr2-csr{ background: url("../img/top-csr.jpg") left center / auto 100% no-repeat #fff;}
.top-bnr2 .inner div a.bnr2-recruit{ background: url("../img/top-recruit.jpg") left center / auto 100% no-repeat #fff;}
.top-bnr2 .inner div a p.btn{
	width: 100%;
	padding: 0 48px 0 20px;
	background-position: right 28px center;
}

/* top-support */
.top-support{
	text-align: left;
	padding: 70px 0;
}
.top-support.lower{ background: url("../img/contact-bg.jpg") center / cover no-repeat;}
.top-support .wrap{ max-width: 1115px;}
.top-support .wrap div{
	padding: 30px 40px;
	background: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.top-support .wrap div p{ width: 38%;}
.top-support .wrap div p.lead{ padding: 0 20px;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.mv{ padding-top: 177.75%;}

	/* top-news */
	.top-news{
		padding: 10px 5% 30px;
		display: block;
	}
	.top-news .ttl{ width: 100%; margin-bottom: 20px;}
	.top-news div{ margin-bottom: 20px;}
	.top-news div dl{
		display: block;
		margin-bottom: 10px;
	}
	.top-news div dl dt{ width: 100%; margin-bottom: 5px;}

	/* top-bnr */
	.top-bnr{ padding: 20px 10% 25px;}
	.top-bnr .top-bnr-slide .slick-slide{ margin: 0 5px;}
	.top-bnr .top-bnr-slide .slick-prev{ left: -25px;}
	.top-bnr .top-bnr-slide .slick-next{ right: -25px;}

	/* top-pickup */
	.top-pickup{ padding: 25px 5% 30px 25px;}
	.top-pickup .top-pickup-slide .slick-slide{
		padding: 5px 20px 15px;
		margin-right: 10px;
	}
	.top-pickup .top-pickup-slide .slick-prev{
		top: -30px;
		right: 40px;
	}
	.top-pickup .top-pickup-slide .slick-next{ top: -30px;}

	/* top-about */
	.top-about{ padding: 35px 0;}
	.top-about .wrap{
		padding-right: 10%;
		padding-left: 10%;
	}
	.top-about .wrap div{ display: block;}
	.top-about div a{
		font-size: 16px;
		width: 100%;
	padding: 30px 40px;
		margin: 0 0 15px;
	}

	/* top-bnr2 */
	.top-bnr2{
		margin-right: 5%;
		padding: 30px 6% 35px;
	}
	.top-bnr2 .inner{ padding-left: 5%;}
	.top-bnr2 .inner div{ display: block;}
	.top-bnr2 .inner div a{
		font-size: 16px;
		width: 100%;
		height: 120px;
		padding-left: 45%;
		margin: 0 2% 10px 0;
	}
	.top-bnr2 .inner div a p.btn{
		padding: 0 40px 0 20px;
		background-position: right 20px center;
	}

	/* top-support */
	.top-support{ font-size: 14px; padding: 50px 0;}
	.top-support .wrap div{
		padding: 30px 20px 20px;
		display: block;
	}
	.top-support .wrap div p{ width: 100%;}
	.top-support .wrap div h2{ margin-bottom: 20px;}
	.top-support .wrap div p.lead{ padding: 0; margin-bottom: 15px;}
	.top-support .wrap div a{ padding-top: 15px;}
}



/* technology */
.technology-cont{
	padding: 120px 0;
	background: url("../img/technology-bg.jpg") top center / 100% auto no-repeat;
}
.technology-cont .bg-aqua,.technology-cont .bg-head,.technology-cont .bg-sound{
	color: #fff;
	display: inline-block;
	padding: 1px 10px;
	margin: 3px 5px;
}
.technology-cont .bg-aqua{ background: linear-gradient(to bottom, #087ef4, #8cb9ed);}
.technology-cont .bg-head{ background: linear-gradient(to bottom, #fd8932, #fcd14b);}
.technology-cont .bg-sound{ background: linear-gradient(to right, #97e7bb, #48c7c7);}
.technology-cont .movie-cont{
	max-width: 680px;
	margin: 0 auto;
}
.technology-link{
	position: relative;
	margin-bottom: 40px;
}
.technology-link.mb120{ margin-bottom: 120px;}
.technology-link:before{
	content: "";
	position: absolute;
	z-index: -1;
	width: 64.4%;
	height: 180px;
	display: block;
	top: -20px;
}
.technology-link.first:before{ top: 35px;}
.technology-link.bg-left:before{ left: 0;}
.technology-link.bg-right:before{ right: 0;}
.technology-link.technology1:before{ background: #e6eff6;}
.technology-link.technology2:before{ background: #fbece4;}
.technology-link.technology3:before{ background: #e0f2eb;}
.technology-link .technology-ttl{
	color: #fff;
	font-size: 32px;
	line-height: 70px;
	font-weight: 500;
	margin-bottom: 20px;
}
.technology-link .technology-ttl.technology-ttl1{ background: url("../img/technology-ttl1.jpg") center / cover no-repeat;}
.technology-link .technology-ttl.technology-ttl2{ background: url("../img/technology-ttl2.jpg") center / cover no-repeat;}
.technology-link .technology-ttl.technology-ttl3{ background: url("../img/technology-ttl3.jpg") center / cover no-repeat;}
.technology-link .wrap div{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.technology-link.bg-right .wrap div{ flex-direction: row-reverse;}
.technology-link div a{
	display: block;
	position: relative;
	padding: 35px 30px;
	background: #fff;
	width: 40%;
}
.technology-link.technology1 div a,.technology-link.technology1 div a .btn{ color: #307CB4;}
.technology-link.technology2 div a,.technology-link.technology2 div a .btn{ color: #DD6D32;}
.technology-link.technology3 div a,.technology-link.technology3 div a .btn{ color: #00935F;}
.technology-link.technology1 div a .btn{
	border-bottom: 1px solid #307CB4;
	background: url("../img/arrow-blue.svg") right center no-repeat;
}
.technology-link.technology2 div a .btn{
	border-bottom: 1px solid #DD6D32;
	background: url("../img/arrow-orange.svg") right center no-repeat;
}
.technology-link.technology3 div a .btn{
	border-bottom: 1px solid #00935F;
	background: url("../img/arrow-green.svg") right center no-repeat;
}
.technology-link.bg-left div a{ right: -60px;}
.technology-link.bg-right div a{ left: -60px;}
.technology-link div a h5{
	font-size: 32px;
	font-weight: 500;
	margin-bottom: 20px;
}
.technology-link div a .btn{
	width: 120px;
	padding-right: 40px;
	border-bottom: 1px solid var(--blue);
}
.technology-link div figure{ width: 60%;}
.technology-link div figure img{ border-radius: 10px;}
.technology-cont2{
	padding: 70px 0 40px;
	background: #6ec7ca;
}
.technology-cont2 .product-search{
	background: #fff;
	box-shadow: 2px 2px 16px -6px rgba(0,0,0,0.16);
	margin-bottom: 40px;
}
.technology-cont2.bg-none{ background: none;}
.technology-cont2.bg-none .wrap{
	max-width: 100%;
	margin-right: 6%;
	margin-left: 6%;
	padding: 0;
}
.technology-cont2.bg-none .product-search{
	padding-top: 55px;
	padding-bottom: 60px;
}
.technology-cont2 h2{
	color: #007C9C;
	font-size: 24px;
	font-weight: 400;
}
.technology-cont2 p{ font-size: 16px;}
.technology-cont2 .btn-area{
	display: flex;
	justify-content: space-between;
}
.technology-cont2 .btn-area a{
	width: 48%;
	background: url("../img/arrow-blue.svg") right 10px bottom 15px no-repeat #fff;
	padding: 45px 5px 40px;
	display: block;
	box-shadow: 2px 2px 16px 0 rgba(0,0,0,0.2);
}
.technology-cont2 .btn-area a dl dt{
	color: var(--blue);
	font-size: 24px;
	line-height: 1.4;
	margin-bottom: 15px;
}
.technology-cont2 .btn-area a dl dd{
	font-size: 16px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.technology-cont{ padding: 60px 0;}
	.technology-cont .bg-aqua,.technology-cont .bg-head,.technology-cont .bg-sound{
		padding: 1px 5px;
		margin: 2px 3px;
	}
	.technology-link.mb120{ margin-bottom: 60px;}
	.technology-link:before{
		width: 75%;
		height: 180px;
	}
	.technology-link.first:before{ top: 25px;}
	.technology-link .technology-ttl{
		font-size: 24px;
		line-height: 50px;
		margin-bottom: 10px;
	}
	.technology-link .wrap div{
		display: block;
	}
	.technology-link div a{
		padding: 20px 15px;
		width: 100%;
		margin-bottom: 10px;
	}
	.technology-link.bg-left div a{ right: 0;}
	.technology-link.bg-right div a{ left: 0;}
	.technology-link div a h5{
		font-size: 24px;
		margin-bottom: 5px;
	}
	.technology-link div figure{ width: 100%;}
	.technology-cont2 .btn-area{ display: block;}
	.technology-cont2 .btn-area a{
		width: 100%;
		padding: 25px 10px 20px;
		box-shadow: 2px 2px 8px 0 rgba(0,0,0,0.2);
		margin: 0 0 15px;
	}
	.technology-cont2 .btn-area a dl dt{ font-size: 20px; margin-bottom: 10px;}
	.technology-cont2 .btn-area a dl dd{ font-size: 15px;}
	.technology-cont2{ padding: 40px 0 30px;}
	.technology-cont2.bg-none .product-search{
		padding-top: 30px;
		padding-bottom: 30px;
	}
}



/* product */
.product-search{ padding: 25px 5% 5px;}
.product-search dl{
	color: var(--blue);
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}
.product-search dl.free-word{
	background: #ECF7F8;
	padding: 20px 30px;
}
.product-search dl dt{
	text-align: left;
	width: 16%;
}
.product-search dl.free-word dt{ width: 10em;}
.product-search dl dd{
	display: flex;
	justify-content: space-between;
	flex: 1;
}
.product-search dl dd select,.product-search dl dd a{
	color: var(--blue);
	text-align: center;
	display: block;
	padding: 0 10px;
	cursor: pointer;
}
.product-search dl dd a{
	height: 60px;
	line-height: 60px;
	font-size: 16px;
	border: 1px solid #85C3D9;
	background: url("../img/arrow-bottom.svg") right 15px center no-repeat;
}
.product-search dl dd.clm3 select,.product-search dl dd.clm3 a{ width: 32%;}
.product-search dl dd.clm4 select,.product-search dl dd.clm4 a{ width: 24%;}
.product-search dl.free-word dd input{
	height: 70px;
	line-height: 70px;
	flex: 1;
	border: 1px solid #85C3D9;
	padding-left: 4.5%;
	border-radius: 3px 0 0 3px;
}
.product-search dl.free-word dd button{
	height: 70px;
	line-height: 70px;
	color: #fff;
	background: var(--blue);
	width: 15%;
}
.product-search .result{
	color: var(--blue);
	font-size: 22px;
	text-align: left;
	margin-bottom: 20px;
}
.product-search .result small{ font-size: 16px;}
.product-search .result strong{ font-size: 33px; font-weight: normal;}

.product-cont{ position: relative;}
.product-cont:last-child{ margin-bottom: 25px;}
.product-cont:before{
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	left: 0;
	top: 0;
	width: 100%;
	height: 280px;
}
.product-cont.bg1:before{ background: url("../img/product-ttl1.jpg") center top / cover no-repeat;}
.product-cont.bg2:before{ background: url("../img/product-ttl2.jpg") center top / cover no-repeat;}
.product-cont.bg3:before{ background: url("../img/product-ttl3.jpg") center top / cover no-repeat;}
.product-cont.bg4:before{ background: url("../img/product-ttl4.jpg") center top / cover no-repeat;}
.product-cont.bg5:before{ background: url("../img/product-ttl5.jpg") center top / cover no-repeat;}
.product-cont.bg6:before{ background: url("../img/product-ttl6.jpg") center top / cover no-repeat;}
.product-cont.bg7:before{ background: url("../img/product-ttl7.jpg") center top / cover no-repeat;}
.product-cont .product-ttl1{
	color: #fff;
	font-size: 36px;
	line-height: 1;
	font-weight: 500;
	padding: 70px 0 63px;
}
.product-cont .product-ttl1 span{
	font-size: 22px;
	letter-spacing: .05em;
	line-height: 1.15;
	display: inline-block;
	font-style: italic;
	font-weight: 600;
}
.product-cont .product-ttl2{
	color: var(--blue);
	font-weight: 400;
	padding: 40px 25px 40px 0;
	background: linear-gradient(to bottom, #fff, #EDFCFF);
	display: flex;
	justify-content: space-between;
	align-items: center;
	border: 1px solid #85C3D9;
	margin-bottom: 35px;
}
.product-cont .product-ttl2 span{
	font-size: 26px;
	line-height: 1.4;
	padding-left: 40px;
	border-left: 14px solid var(--blue);
}
.product-cont .product-ttl2 a{
	width: 120px;
	padding-right: 40px;
	border-bottom: 1px solid var(--blue);
}
.product-list{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 10px;
}
.product-list a{
	width: 31%;
	margin: 0 3.5% 40px 0;
	border: 1px solid #E0E0E0;
}
.lower2 .product-list a{ text-decoration: none;}
.product-list a:nth-child(3n){ margin-right: 0;}
.product-list a p{
	color: var(--blue);
	font-size: 18px;
	text-align: left;
	padding: 30px 25px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.product-search dl{
		display: block;
	}
	.product-search dl.free-word{
		padding: 10px 15px;
	}
	.product-search dl dt{
		width: 100%;
		margin-bottom: 5px;
	}
	.product-search dl dd{ flex-wrap: wrap;}
	.product-search dl dd.clm3 select,.product-search dl dd.clm3 a{ width: 49%; margin-bottom: 10px;}
	.product-search dl dd.clm4 select,.product-search dl dd.clm4 a{ width: 100%; margin-bottom: 10px;}
	.product-search dl.free-word dd input{
		height: 60px;
		line-height: 60px;
		padding: 0 10px;
	}
	.product-search dl.free-word dd button{
		height: 60px;
		line-height: 60px;
		width: 4em;
	}
	.product-search .result{
		font-size: 20px;
		margin-bottom: 20px;
	}
	.product-search .result small{ font-size: 14px;}
	.product-search .result strong{ font-size: 24px;}

	.product-cont:before{ height: 200px;}
	.product-cont .product-ttl1{
		font-size: 28px;
		padding: 40px 0 30px;
	}
	.product-cont .product-ttl1 span{ font-size: 14px;}
	.product-cont .product-ttl2{
		text-align: left;
		padding: 20px 20px 15px 0;
		display: block;
		overflow: hidden;
		margin-bottom: 20px;
	}
	.product-cont .product-ttl2 span{
		font-size: 22px;
		padding-left: 15px;
		border-left: 10px solid var(--blue);
		float: left;
		margin: 0 10px 10px 0;
	}
	.product-cont .product-ttl2 a{
		font-size: 14px;
		float: right;
		margin-top: 10px;
	}
	.product-list a{
		width: 48%;
		margin: 0 4% 20px 0;
	}
	.product-list a:nth-child(3n){ margin-right: 4%;}
	.product-list a:nth-child(2n){ margin-right: 0;}
	.product-list a p{
		font-size: 14px;
		padding: 10px 15px;
	}
}



/* example */
.example-list{
	display: flex;
	flex-wrap: wrap;
}
.example-list a{
	text-align: left;
	width: 48%;
	padding: 35px 100px 35px 45px;
	margin: 0 4% 25px 0;
	position: relative;
	min-height: 145px;
	border: 1px solid #ccc;
}
.example-list a:nth-child(2n){ margin-right: 0;}
.example-list a:before,.example-list a:after{
	content: "";
	position: absolute;
}
.example-list a:before{
	right: 0;
	bottom: 0;
	z-index: 1;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 62px 62px;
	border-color: transparent transparent #ecf7f8 transparent;
}
.example-list a:after{
	z-index: 2;
	right: 10px;
	bottom: 15px;
	background: url("../img/arrow-blue.svg") center no-repeat;
	width: 16px;
	height: 6px;
}
.example-list a h3{
	color: var(--blue);
	font-size: 20px;
	line-height: 1.4;
	font-weight: 400;
	margin-bottom: 10px;
}
.example-list a p{ font-size: 14px;}

.example-detail dl.task{
	color: var(--blue);
	font-size: 26px;
	line-height: 1.4;
	position: relative;
	padding: 30px;
	border: 1px solid var(--blue);
}
.example-detail dl.task dt{
	position: absolute;
	top: -18px;
	right: 0;
	left: 0;
	padding: 0 .5em;
	background: #fff;
	width: fit-content;
	margin: 0 auto;
}
.example-detail .balloon{
	color: #fff;
	font-size: 32px;
	font-weight: 400;
	line-height: 1.4;
	padding: 20px;
	border-radius: 99px;
	background: #DD6D32;
	position: relative;
}
.example-detail .balloon:after{
	content: "";
	position: absolute;
	right: 0;
	bottom: -18px;
	left: 0;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 18px 10px 0 10px;
	border-color: #dd6e32 transparent transparent transparent;
	margin: 0 auto;
}
.example-detail .bd-gray{
	padding: 40px 60px;
	border: 1px solid #c0bebd;
}
.maxw800{
	max-width: 800px;
	margin-right: auto;
	margin-left: auto;
}
.example-detail ul.merit li{
	font-size: 22px;
	line-height: 1.4;
	text-align: left;
	background: #ECF7F8;
	position: relative;
	padding: 15px 35px;
	margin-bottom: 10px;
}
.example-detail ul.merit li:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 21px 21px 0 0;
	border-color: #c2dcdd transparent transparent transparent;
	display: block;
}
.example-btn{
	font-size: 14px;
	text-align: left;
	max-width: 480px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	align-items: center;
	padding: 18px 40px 18px 18px;
	border: 1px solid #ccc;
	background: url("../img/arrow-blue.svg") right 20px center no-repeat;
}
.example-btn figure{
	margin-right: 25px;
}
.example-btn p strong{
	color: var(--blue);
	font-size: 20px;
	font-weight: 400;
}

/* facility */
.facility-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 100px;
}
.facility-list a{
	width: 31%;
	border: 1px solid #E0E0E0;
	position: relative;
}
.facility-list a:before,.facility-list a:after{
	content: "";
	position: absolute;
	display: block;
}
.facility-list a:before{
	z-index: 1;
	right: 0;
	bottom: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 62px 62px;
	border-color: transparent transparent #ecf7f8 transparent;
}
.facility-list a:after{
	z-index: 2;
	right: 10px;
	bottom: 15px;
	background: url("../img/arrow-blue.svg") center no-repeat;
	width: 16px;
	height: 6px;
}
.facility-list a div{
	font-size: 17px;
	text-align: left;
	padding: 20px 20px 40px;
}
.facility-list a div .f-blue{ padding-top: 10px;}

.facility-bnr{
	background: #ECF7F8;
	padding: 30px 0;
}
.facility-bnr .wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.facility-bnr .wrap a{
	color: var(--blue);
	font-size: 18px;
	line-height: 1.4;
	font-weight: 500;
	text-align: left;
	width: 31%;
	display: flex;
	align-items: center;
	padding: 20px 40px 20px 15px;
	background: url("../img/arrow-blue.svg") right 20px center no-repeat #fff;
}
.facility-bnr .wrap a figure{ margin-right: 15px;}

/* techno */
ul.techno-list > li{
	display: flex;
	padding: 0 20px;
	margin-bottom: 30px;
}
ul.techno-list > li figure{
	width: 33.3%;
	margin-right: 20px;
}
ul.techno-list > li dl{
	font-size: 16px;
	line-height: 2;
	text-align: left;
	width: 63%;
}
ul.techno-list > li dl dt{
	color: var(--blue);
	font-size: 20px;
	line-height: 1.2;
	font-weight: 500;
	margin-bottom: 10px;
}
.research-imgright{
	display: flex;
}
.research-imgright p{
	color: var(--blue);
	font-size: 30px;
	line-height: 1.5;
	font-weight: 500;
	text-align: center;
	background: #E9F6F7;
	width: 33.75%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.research-imgright figure{
	width: 66.25%;
}
.research-contact{
	text-align: left;
	display: flex;
	align-items: center;
	padding: 0 20px;
}
.research-contact figure{
	width: 34%;
}
.research-contact div{
	line-height: 2;
	width: 61%;
	padding-left: 5%;
	border-left: 1px solid #707070;
	margin-left: 5%;
}
.research-contact div a{
	word-break: break-all;
}

/* acoustic */
.acoustic-imgright1{
	display: flex;
	justify-content: space-between;
}
.acoustic-imgright1 dl{ width: 48.25%; line-height: 2;}
.acoustic-imgright1 figure{ font-size: 14px; width: 45%;}
.acoustic-imgright2{
	display: flex;
	justify-content: space-between;
}
.acoustic-imgright2 p{ width: 75%; text-align: left; line-height: 2;}
.acoustic-imgright2 figure{ width: 22.5%; font-size: 14px;}
.acoustic-imgright2 figure figcaption{ text-align: left;}
.acoustic-imgright2 figure img.bd{ border: 1px solid #000;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.example-list{ display: block;}
	.example-list a{
		width: 100%;
		padding: 15px 50px 15px 25px;
		margin: 0 0 15px;
		min-height: inherit;
		display: block;
	}
	.example-list a h3{
		font-size: 18px;
		margin-bottom: 5px;
	}
	.example-list a p{ font-size: 12px;}

	.example-detail dl.task{
		font-size: 20px;
		padding: 15px 15px 10px;
	}
	.example-detail dl.task dt{ top: -16px;}
	.example-detail .balloon{
		font-size: 22px;
		padding: 15px;
	}
	.example-detail .balloon:after{
		bottom: -9px;
		border-width: 9px 5px 0 5px;
	}
	.example-detail ul.merit li{
		font-size: 18px;
		padding: 10px 20px;
		margin-bottom: 5px;
	}
	.example-detail ul.merit li:before{ border-width: 14px 14px 0 0;}
	.example-detail .bd-gray{ padding: 15px 20px;}
	.example-btn{
		padding: 10px 30px 10px 10px;
		background: url("../img/arrow-blue.svg") right 10px center no-repeat;
	}
	.example-btn figure{
		width: 80px;
		margin-right: 15px;
	}
	.example-btn p strong{ font-size: 18px;}

	/* facility */
	.facility-list{ margin-bottom: 40px; display: block;}
	.facility-list a{
		width: 100%;
		display: block;
		margin-bottom: 30px;
	}
	.facility-list a:before{ border-width: 0 0 40px 40px;}
	.facility-list a:after{
		right: 5px;
		bottom: 10px;
	}
	.facility-list a div{
		font-size: 16px;
		padding: 10px 10px 20px;
	}
	.facility-list a div .f-blue{ padding-top: 5px;}
	.facility-bnr{ padding: 20px 0 5px;}
	.facility-bnr .wrap{ display: block;}
	.facility-bnr .wrap a{
		font-size: 16px;
		width: 100%;
		padding: 5px 40px 5px 15px;
		background: url("../img/arrow-blue.svg") right 20px center no-repeat #fff;
		margin-bottom: 15px;
	}

	/* techno */
	ul.techno-list > li{
		display: block;
		padding: 0;
		margin-bottom: 30px;
	}
	ul.techno-list > li figure{
		width: 100%;
		margin: 0 0 20px;
	}
	ul.techno-list > li dl{
		font-size: 15px;
		width: 100%;
	}
	ul.techno-list > li dl dt{
		font-size: 18px;
		margin-bottom: 5px;
	}
	.sp-plr5p{ padding: 0 5%;}
	.sp-pl0{ padding: 0;}
	.research-imgright{ display: block;}
	.research-imgright p{
		font-size: 18px;
		width: 100%;
		padding: 10px;
	}
	.research-imgright figure{ width: 100%;}
	.research-contact{
		display: block;
		padding: 0;
	}
	.research-contact figure{ width: 100%; text-align: center; margin-bottom: 15px;}
	.research-contact div{
		width: 100%;
		padding: 15px 0 0;
		border-left: none;
		border-top: 1px solid #707070;
		margin: 0;
	}

	/* acoustic */
	.acoustic-imgright1{
		display: block;
		padding: 0 5%;
	}
	.acoustic-imgright1 dl{ width: 100%; margin-bottom: 20px; line-height: 1.8;}
	.acoustic-imgright1 figure{ width: 100%;}
	.acoustic-imgright2{ display: block;}
	.acoustic-imgright2 p{
		width: 100%;
		line-height: 1.8;
	}
	.acoustic-imgright2 figure{
		width: 100%;
		max-width: 195px;
		margin: 0 auto;
	}
}



/* lower2 */
.lower2{
	text-align: left;
	position: relative;
	padding: 1px 0 30px;
}
.lower2:before{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 410px;
	display: block;
}
.lower2.lower2-bg1:before{ background: url("../img/lower2-ttl1.jpg") center / cover no-repeat;}
.lower2.lower2-bg2:before{ background: url("../img/lower2-ttl2.jpg") center / cover no-repeat;}
.lower2.lower2-bg3:before{ background: url("../img/lower2-ttl3.jpg") center / cover no-repeat;}
.lower2 .lower2-header{
	text-align: center;
	position: relative;
	z-index: 9;
	margin-top: 30px;
	padding: 30px;
}
.lower2-header .ttl4{ color: #fff;}
.lower2-header .ttl4 span{ border-bottom: 2px solid #fff;}
.lower2-header .ttl5{ color: #fff;}
.lower2-header.bg-white .ttl4{ color: var(--blue);}
.lower2-header.bg-white .ttl4 span{ border-bottom: 2px solid var(--blue);}
.lower2-header.bg-white .ttl5{ color: var(--blue);}
.lower2-header .tag{
	border: 1px solid #307CB4;
	width: auto;
	padding: 4px 14px;
	margin: 0 5px 2px;
}
.lower2-header .tag.tag-blue{
	color: #fff;
	background: #307CB4;
}
.lower2-header .tag.tag-white{ color: #307CB4;}
.lower2-header .thumb-item,.lower2-header .thumb-item-nav{
	text-align: left;
	font-size: 12px;
	margin-right: auto;
	margin-left: auto;
}
.lower2-header .thumb-item{ max-width: 600px; margin-bottom: 15px;}
.lower2-header .thumb-item img{ margin-bottom: 5px;}
.lower2-header .thumb-item-nav{ max-width: 610px; margin-bottom: 20px;}
.lower2-header .thumb-item-nav .slick-slide{ margin: 0 5px; cursor: pointer;}
.lower2-header .thumb-item-nav .slick-slide img{ border: 1px solid #000;}
.lower2-header .btn-area{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.lower2-header .btn-area a{ text-decoration: none;}
.lower2-header .btn-area .btn-dl{
	margin: 0 5px 5px;
}
.lower2 .lower2-header .thumb-item figure{
	position: relative;
	padding-top: 71.66%;
	height: 0;
	overflow: hidden;
}
.lower2 .lower2-header .thumb-item figure img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.lower2 .lower2-header .thumb-item-nav{
	padding: 0 .7%;
	transform: unset !important;
	width: 100% !important;
	display: flex;
	justify-content: space-between;
	flex-flow: row wrap;
}
.lower2 .lower2-header .thumb-item-nav .slick-track{
  transform: unset !important;
  width: 100% !important;
  display: flex;
  flex-flow: row wrap;
}
.lower2 .lower2-header .thumb-item-nav .slick-slide{
    display: block!important;
    float: none !important;
    flex: 0 0 13%;
	margin: 0 1.5% 10px 0;
}
.lower2 .lower2-header .thumb-item-nav div:nth-child(7n){ margin-right: 0;}
.lower2 a{ text-decoration: underline;}
.lower2 ul li{
	padding-left: 1.5em;
	position: relative;
}
.lower2 ul li:before{
	content: "";
	position: absolute;
	top: .4em;
	left: 0;
	width: 14px;
	height: 14px;
	background: #007C9C;
}
.lower2 ul.clm3{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.lower2 ul.clm3 li{ width: 30%;}
.txt-link{
	color: var(--blue);
	text-decoration: underline;
	display: inline-block;
	min-height: 22px;
	padding-left: 30px;
	position: relative;
}
.txt-link:before{
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	background: url("../img/ic-txt-link.svg") center no-repeat;
	width: 22px;
	height: 22px;
	display: block;
}
.lower2-contact{
	color: #fff;
	position: relative;
	padding: 30px 55px 30px 39%;
	background: linear-gradient(to bottom, #30AFB4, #669BC3);
	margin-top: 120px;
}
.lower2-contact a{ text-decoration: none;}
.lower2-contact figure{
	position: absolute;
	bottom: 30px;
	left: 5.5%;
	width: 30%;
	height: 0;
	padding-top: 21.6%;
}
.lower2-contact figure img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.lower2-contact dl dt{
	font-size: 28px;
	font-weight: 500;
	margin-bottom: 20px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.lower2:before{ height: 200px;}
	.lower2 .lower2-header{
		margin-top: 15px;
		padding: 15px;
	}
	.lower2-header .thumb-item-nav .slick-slide{ margin: 0 3px;}
	.lower2 ul li{ padding-left: 1.2em;}
	.lower2 ul li:before{ top: .35em;}
	.lower2 ul.clm3{ display: block;}
	.lower2 ul.clm3 li{ width: 100%;}
	.lower2-contact{
		padding: 15px;
		margin-top: 40px;
	}
	.lower2-contact figure{
		position: static;
		text-align: center;
		width: 100%;
		margin-bottom: 15px;
		height: inherit;
		padding-top: 0;
	}
	.lower2-contact figure img{
		position: static;
		width: 100%;
		height: inherit;
	}
	.lower2-contact dl dt{
		font-size: 20px;
		margin-bottom: 10px;
	}
}



/* news-list-cont */
.news-list-cont{
	text-align: left;
	padding-top: 60px;
	padding-bottom: 75px;
}
.news-list-cont .category .ct_list{
	display: flex;
	margin-bottom: 20px;
}
.news-list-cont .category .ct_list li{
	margin-right: 10px;
	padding-right: 10px;
	border-right: 1px solid #85c2d9;
	cursor: pointer;
}
.news-list-cont .category .ct_list li.active{
	color: #007898;
}
.news-list-cont .category .ct_list li.active a{
	color: #007898;
}
.news-list-cont .news-ttl{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 10px;
}
.news-list-cont .news-ttl h3{ font-weight: 400;}
.news-list-cont .news-ttl div{
	color: #111;
	font-size: 16px;
	display: flex;
	align-items: center;
}
.news-list-cont .news-ttl div select{
	width: 130px;
	height: 40px;
	padding-left: 20px;
	margin-left: 15px;
}
.news-list-cont .news-list dl{
	display: flex;
	padding: 20px 0;
	border-bottom: 1px solid #85C3D9;
}
.news-list-cont .news-list dl dt{ width: 13em;}
.news-list-cont .news-list dl dt .date{ font-weight: 500;}
.news-list-cont .news-list dl dt span{ display: inline-block; margin-right: 1em;}
.news-list-cont .news-list dl dd{
	flex: 1;
}
.news-list-cont .news-list dl dd .pdf{ margin: 0 0 5px 10px;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.news-list-cont{ padding-top: 30px; padding-bottom: 35px;}
	.news-list-cont .news-ttl{
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.news-list-cont .news-ttl div{ justify-content: flex-end;}
	.news-list-cont .news-list dl{
		display: block;
		padding: 10px 0;
	}
	.news-list-cont .news-list dl dt{ width: 100%; margin-bottom: 5px;}
}



/* ir-list */
.ir-list{
	display: flex;
	justify-content: space-between;
	padding: 0 14%;
}
.ir-list .news-list-cont{ width: 70%;}
.ir-list ul.sidenav{ width: 20%;}
ul.library-list li{ margin-bottom: 10px;}
ul.library-list li a{ text-decoration: underline;}
ul.library-list li .pdf{ margin: 0 0 5px 10px;}
ul.library-list table th,ul.library-list table td{ text-align: left;}
ul.library-list table th{ width: 25%;}
ul.library-list table td div{ display: flex; flex-wrap: wrap;}
ul.library-list table td div a{ width: 50%; padding-right: 10px;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.ir-list{ display: block; padding: 0 5%;}
	.ir-list .news-list-cont{ width: 100%;}
	.ir-list ul.sidenav{
		width: 100%;
		margin: 0 0 50px;
	}
	ul.sidenav li a{ padding: 15px 0;}
	ul.sidenav li a span{
		border-left: 2px solid #30AFB4;
		padding-left: 10px;
	}
}

/* finance */
.news-list-cont.ir-finance{ padding-top: 50px;}
.ir-finance #tab{
	clear: both;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	text-align: center;
	margin-bottom: 60px;
}
.ir-finance #tab li{
	color: var(--blue);
	font-size: 14px;
	width: 32%;
	padding: 15px 5px 20px;
	margin: 0 2% 10px 0;
	line-height: 1.3;
	background: url("../img/arrow-bottom.svg") no-repeat center bottom 7px;
	vertical-align: middle;
	cursor: pointer;
	-webkit-transition: all .2s; transition: all .2s;
	border: 1px solid var(--blue);
	display: flex;
	justify-content: center;
	align-items: center;
}
.ir-finance #tab li:nth-child(3n){ margin-right: 0;}
.ir-finance #tab li.active,
.ir-finance #tab li:hover{
	color: #fff;
	background: var(--blue);
	background-position: center bottom 5px;
}
.ir-finance #panel>div{
	display: none;
	overflow: hidden;
}
.ir-finance #panel div.active{
	display: block;
}
.ir-finance #panel div .chart-container{
    position: relative;
    width: 50vw;
    height: 40vh;
    margin-bottom: 50px;
}
.ir-finance #panel div canvas{
	height: 380px;
	margin-bottom: 50px;
}
.ir-finance #panel div table{
	width: 100%;
	text-align: center;
}
.ir-finance #panel div table th{
	padding: 10px;
	border: 1px solid #EAEAEA;
	background: #FAFAFA;
}
.ir-finance #panel div table td{
	padding: 10px;
	border: 1px solid #EAEAEA;
}
.ir-finance #panel div .past{
	text-align: center;
}
.ir-finance #panel div .past a{
	color: var(--blue);
	font-size: 14px;
	text-align: left;
	max-width: 300px;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	align-items: center;
	border: 1px solid var(--blue);
	padding: 18px 40px 18px 18px;
	background: url("../img/arrow-blue.svg") right 20px center no-repeat;
}
.ir-finance #panel div .past a:hover{
	background: url("../img/arrow-blue.svg") no-repeat right 15px center #eee;
}
.ir-finance-pop{
	max-width: 800px;
	padding: 40px 5%;
	margin: 0 auto;
	text-align: left;
}
.ir-finance-pop table{
	width: 100%;
	text-align: center;
}
.ir-finance-pop table th{
	padding: 5px;
	background: #F2F2F2;
	border-bottom: 1px solid #EAEAEA;
}
.ir-finance-pop table td{
	padding: 5px;
	border-left: 1px solid #EAEAEA;
	border-bottom: 1px solid #EAEAEA;
}
.ir-finance-pop table .bgwhite{ background: #fff;}
.ir-finance-pop table .bgblue{ background: #DDECFA;}
.ir-finance-pop .btn{
	text-align: center;
	margin-bottom: 20px;
}
.ir-finance-pop .btn a{
	display: inline-block;
	width: 100%;
	max-width: 210px;
	line-height: 50px;
	border: 1px solid #747474;
}
.ir-finance-pop .btn a:hover{
	background: #eee;
}
.ir-finance-pop #copy{
	clear: both;
	font-size: 8px;
	text-align: center;
}
#ir-finance-pop{
	max-width: 800px;
	padding: 41px 5% 42px;
	margin: 0 auto;
	text-align: left;
}
#ir-finance-pop table{
	width: 100%;
	text-align: center;
}
#ir-finance-pop table th{
	padding: 5px;
	background: #FAFAFA;
	border-bottom: 1px solid #EAEAEA;
}
#ir-finance-pop table td{
	padding: 5px;
	border-left: 1px solid #EAEAEA;
	border-bottom: 1px solid #EAEAEA;
}
#ir-finance-pop table .bgwhite{ background: #fff;}
#ir-finance-pop table .bgblue{ background: #E2EFDA;}
#ir-finance-pop .btn{
	text-align: center;
	margin-bottom: 20px;
}
#ir-finance-pop .btn a{
	display: inline-block;
	width: 100%;
	max-width: 210px;
	line-height: 50px;
	border: 1px solid #747474;
}
#ir-finance-pop .btn a:hover{
	background: #eee;
}
#ir-finance-pop #copy{
	clear: both;
	font-size: 8px;
	text-align: center;
}
.pop-btn{
	color: var(--blue);
	display: inline-block;
    width: 100%;
    max-width: 210px;
    line-height: 50px;
    border: 1px solid var(--blue);
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	/* finance */
    .ir-finance #panel div .chart-container{
        width: 85vw;
        height: 40vh;
        margin-bottom: 25px;
    }
	.ir-finance #panel div canvas{
		margin-bottom: 30px;
	}
	.ir-finance #panel div table{
		width: 100%;
		text-align: center;
	}
	.ir-finance #panel div table th{
		padding: 10px;
		border-bottom: 1px solid #EAEAEA;
	}
	.ir-finance #panel div table td{
		padding: 10px;
		border-left: 1px solid #EAEAEA;
		border-bottom: 1px solid #EAEAEA;
	}
	.ir-finance #panel div .past{
		text-align: center;
		margin-bottom: 30px;
	}
	.ir-finance-pop table{
		font-size: 13px;
	}
	#ir-finance-pop table{
		font-size: 13px;
	}
}
@media screen and (max-width:500px){
	/* finance */
	.ir-finance #tab{ margin-bottom: 10px;}
	.ir-finance #tab li{
		clear: both;
		width: 100%;
		margin-right: 0;
	}
	.ir-finance-pop table{
		font-size: 12px;
	}
	#ir-finance-pop table{
		font-size: 12px;
	}
}



/* company-cont */
.company-cont{
	text-align: left;
	padding-top: 80px;
	margin-bottom: 80px;
}

ul.history-cont{ padding-left: 40px;}
ul.history-cont li{
	padding-left: 30px;
	position: relative;
	padding-bottom: 50px;
}
ul.history-cont li:last-child{ padding-bottom: 0;}
ul.history-cont li:before,ul.history-cont li:after{
	content: "";
	position: absolute;
	top: 9px;
	display: block;
}
ul.history-cont li:before{
	z-index: 2;
	left: 0;
	width: 15px;
	height: 15px;
	display: block;
	border-radius: 50%;
	background: #30AFB4;
}
ul.history-cont li:after{
	z-index: 1;
	left: 7px;
	width: 1px;
	height: 100%;
	background: #D9D9D9;
}
ul.history-cont li:last-child:after{ height: calc(100% - 7px);}
ul.history-cont li h4{
	color: #30AFB4;
	font-size: 22px;
	line-height: 1.4;
	font-weight: 500;
	margin-bottom: 15px;
}
ul.history-cont li p.lead{
	font-size: 18px;
	font-weight: 500;
	margin: 0 0 15px 15px;
}
ul.history-cont li .history-ac{
	margin-left: 15px;
}
ul.history-cont li .history-ac div{
	border-top: 1px solid #85C3D9;
	padding: 10px 0;
	background: #F7FBFC;
	display: none;
}
ul.history-cont li .history-ac table{
	width: 100%;
}
ul.history-cont li .history-ac table th,ul.history-cont li .history-ac table td{
	font-size: 16px;
	padding: 5px 20px;
}
ul.history-cont li .history-ac table th{
	color: #30AFB4;
	font-weight: 500;
	width: 140px;
}
ul.history-cont li .history-ac table td{
	padding-left: 0;
}
ul.history-cont li .history-ac p{
	color: var(--blue);
	font-size: 16px;
	text-align: center;
	padding: 3px;
	background:linear-gradient(#FDFDFD, #D8FAFF);
	border: 1px solid #85C3D9;
	cursor: pointer;
}
ul.history-cont li .history-ac p.open{
	color: #fff;
	background: #85C3D9;
}
ul.history-cont li .history-ac p span{
	padding: 0 20px;
	display: inline-block;
}
ul.history-cont li .history-ac p span.ac-open{ background: url("../img/ac-plus.svg") right center no-repeat;}
ul.history-cont li .history-ac p span.ac-close{
	display: none;
	background: url("../img/ac-minus.svg") right top 1px no-repeat;
}
ul.history-cont li .history-ac p.open span.ac-open{ display: none;}
ul.history-cont li .history-ac p.open span.ac-close{ display: inline-block;}

.philosophy-main{
	display: flex;
	justify-content: flex-end;
	position: relative;
}
.philosophy-main figure{
	width: 60%;
	margin-right: 4%;
}
.philosophy-main p{
	color: #707070;
	font-size: 24px;
	line-height: 2;
	position: absolute;
	top: 0;
	left: 4%;
}
.catalog{
	display: flex;
	flex-wrap: wrap;
}
.catalog a{
	display: flex;
	align-items: flex-end;
	margin-bottom: 20px;
}
.catalog a figure{ margin-right: 10px;}

ul.office-list{ margin-bottom: 65px;}
ul.office-list li{
	display: flex;
	justify-content: space-between;
	padding-bottom: 50px;
	border-bottom: 1px solid #D9D9D9;
	margin-bottom: 50px;
}
ul.office-list li figure{
	width: 48.6%;
}
ul.office-list li div{
	width: 49%;
	padding-bottom: 40px;
	position: relative;
}
ul.office-list li div p.abs{
	position: absolute;
	bottom: 0;
	left: 0;
}
ul.office-list li div small{ font-size: 13.5px;}
ul.office-internal li{
	padding: 15px 0;
	border-bottom: 1px solid #D9D9D9;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
ul.office-outside li{
	padding: 30px 0;
	border-bottom: 1px solid #D9D9D9;
}

ul.movie-list{
	display: flex;
	flex-wrap: wrap;
}
ul.movie-list li{
	width: 48.6%;
	margin: 0 2.8% 30px 0;
}
ul.movie-list li:nth-child(2n){ margin-right: 0;}
ul.movie-list li div{ margin-bottom: 10px;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.company-cont{
		padding-top: 40px;
		margin-bottom: 40px;
	}
	ul.history-cont{ padding-left: 0;}
	ul.history-cont li:before, ul.history-cont li:after{ top: 8px;}
	ul.history-cont li{ padding-left: 25px;}
	ul.history-cont li h4{
		font-size: 20px;
		margin-bottom: 5px;
	}

	ul.history-cont li p.lead{
		font-size: 15px;
		margin: 0 0 10px 1px;
	}

	.philosophy-main{
		display: block;
		margin-bottom: 30px;
	}
	.philosophy-main figure{
		width: 100%;
		margin-right: 0;
	}
	.philosophy-main p{
		font-size: 20px;
		text-align: center;
		position: static;
	}
	.catalog a{
		display: block;
		width: 50%;
	}
	.catalog a figure{ margin: 0 0 10px;}
	ul.office-list{ margin-bottom: 35px;}
	ul.office-list li{
		display: block;
		padding-bottom: 25px;
		margin-bottom: 25px;
	}
	ul.office-list li figure{ width: 100%; margin-bottom: 20px;}
	ul.office-list li div{
		width: 100%;
		padding-bottom: 50px;
	}
	ul.office-list li div small{ font-size: 13px;}
	ul.office-internal li{
		padding: 10px 0;
	}
	ul.office-internal li .ttl10{ margin-bottom: 10px;}
	ul.office-outside li{ padding: 15px 0;}
	ul.office-internal li .ttl10{ margin-right: 10px;}

	ul.movie-list{
		display: block;
	}
	ul.movie-list li{
		width: 100%;
		margin: 0 0 20px;
	}
	ul.movie-list li div{ margin-bottom: 5px;}
}



/* company-cont */
.company-cont{
	text-align: left;
	padding-top: 80px;
	margin-bottom: 80px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.company-cont{
		padding-top: 40px;
		margin-bottom: 40px;
	}
}



/* recruit-cont */
.recruit-cont{
	text-align: left;
	padding-top: 80px;
	margin-bottom: 80px;
}
.recruit-ttl02{
	color: #007C9C;
	background: url("../img/recruit-main02.jpg") center / cover no-repeat;
	position: relative;
	height: 400px;
}
.recruit-ttl02 h3{
	font-size: 36px;
	font-weight: 500;
	text-align: center;
	background: linear-gradient(90deg, rgba(255,255,255,0),rgba(255,255,255,1),rgba(255,255,255,1),rgba(255,255,255,1),rgba(255,255,255,1),rgba(255,255,255,0));
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 450px;
	height: 70px;
	line-height: 70px;
}
.recruit1{ padding: 80px 5% 75px;}
.recruit2{
	padding: 50px 5% 60px;
	background: #ECF7F8;
}
.recruit2 .wmax-680{
	max-width: 680px;
	margin: 0 auto;
}
.recruit3{
	padding: 60px 5%;
	background: #6ec7ca;
}
.recruit3 .wrap{
	display: flex;
	justify-content: center;
}
.recruit3 a{
	width: 38.5%;
	background: url("../img/arrow-blue.svg") right 10px bottom 15px no-repeat #fff;
	padding: 45px 5px 40px;
	display: block;
	box-shadow: 2px 2px 16px 0 rgba(0,0,0,0.2);
	margin: 0 18px;
}
.recruit3 a dl dt{
	color: var(--blue);
	font-size: 24px;
	line-height: 1.4;
	margin-bottom: 15px;
}
.recruit3 a dl dd{
	font-size: 16px;
}
.recruit4{ padding: 60px 5% 75px;}

.recruit-btn-area{
	display: flex;
	justify-content: center;
	background: #ECF7F8;
	padding: 30px 5%;
}
.recruit-btn-area a{
	color: #085B71;
	font-size: 18px;
	text-align: center;
	padding: 45px;
	margin: 0 18px;
	display: block;
	background: url("../img/arrow-blue.svg") right 20px center no-repeat #fff;
	max-width: 310px;
	width: 100%;
}
.recruit-btn-area a.outside{ background: url("../img/ic-outside.svg") right 20px center no-repeat #fff;}

.recruit-cont.faq-cont{ padding-top: 60px;}
.faq-cont .anc-cont{
	display: flex;
	justify-content: space-between;
}
.faq-cont .anc-cont a{
	color: var(--blue);
	text-align: center;
	display: block;
	width: 19%;
	padding: 20px 5px 25px;
	border: 1px solid #85C3D9;
	background: url("../img/arrow-bottom.svg") center bottom 8px no-repeat;
}
.faq-cont .anc-cont a.anc-app{ border-top: 5px solid #007898;}
.faq-cont .anc-cont a.anc-adopt{ border-top: 5px solid #edb740;}
.faq-cont .anc-cont a.anc-assignment{ border-top: 5px solid #049b8d;}
.faq-cont .anc-cont a.anc-welfare{ border-top: 5px solid #5f69af;}
.faq-cont .anc-cont a.anc-other{ border-top: 5px solid #b37ab2;}
.faq-cont .app-cont .ttl7{ border-left: 14px solid #007898;}
.faq-cont .adopt-cont .ttl7{ border-left: 14px solid #edb740;}
.faq-cont .assignment-cont .ttl7{ border-left: 14px solid #049b8d;}
.faq-cont .welfare-cont .ttl7{ border-left: 14px solid #5f69af;}
.faq-cont .other-cont .ttl7{ border-left: 14px solid #b37ab2;}
.faq-cont .app-cont .ac dt:before{ background: #007898;}
.faq-cont .adopt-cont .ac dt:before{ background: #edb740;}
.faq-cont .assignment-cont .ac dt:before{ background: #049b8d;}
.faq-cont .welfare-cont .ac dt:before{ background: #5f69af;}
.faq-cont .other-cont .ac dt:before{ background: #b37ab2;}
.introduction-cont{
	display: flex;
	flex-wrap: wrap;
}
.introduction-cont dl{
	width: 49%;
	margin: 0 2% 20px 0;
	border: 1px solid #007C9C;
}
.introduction-cont dl:nth-child(2n){ margin-right: 0;}
.introduction-cont dl dt{
	color: #fff;
	font-size: 26px;
	line-height: 1.4;
	text-align: center;
	background: #007C9C;
	padding: 10px;
}
.introduction-cont dl dd{
	font-size: 16px;
	padding: 15px 20px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.recruit-cont{
		padding-top: 40px;
		margin-bottom: 60px;
	}
	.recruit-ttl02{ height: 200px;}
	.recruit-ttl02 h3{
		font-size: 24px;
		width: 200px;
		height: 50px;
		line-height: 50px;
	}
	.recruit1{ padding: 40px 5% 35px;}
	.recruit2{ padding: 25px 5% 30px;}
	.recruit3{ padding: 30px 5% 15px;}
	.recruit3 .wrap{ display: block;}
	.recruit3 a{
		width: 100%;
		padding: 25px 10px 20px;
		box-shadow: 2px 2px 8px 0 rgba(0,0,0,0.2);
		margin: 0 0 15px;
	}
	.recruit3 a dl dt{ font-size: 20px; margin-bottom: 10px;}
	.recruit3 a dl dd{ font-size: 15px;}
	.recruit4{ padding: 30px 5% 35px;}
	.recruit-cont.faq-cont{ padding-top: 30px;}
	.recruit-btn-area{
		display: block;
		padding: 20px 5%;
	}
	.recruit-btn-area a{
		font-size: 16px;
		padding: 20px;
		margin: 0 10px;
		background: url("../img/arrow-blue.svg") right 20px center no-repeat #fff;
		max-width: 310px;
		width: 100%;
		display: inline-block;
		margin-bottom: 15px;
	}
	.recruit-btn-area a:last-child{ margin-bottom: 0;}

	.faq-cont .anc-cont{ flex-wrap: wrap; justify-content: center;}
	.faq-cont .anc-cont a{
		width: 49%;
		padding: 15px 5px 20px 0;
		margin: 0 2% 7px 0;
		background: url("../img/arrow-bottom.svg") center bottom 8px no-repeat;
	}
	.faq-cont .anc-cont a.anc-app{ border-top: 3px solid #007898;}
	.faq-cont .anc-cont a.anc-adopt{ border-top: 3px solid #edb740;}
	.faq-cont .anc-cont a.anc-assignment{ border-top: 3px solid #049b8d;}
	.faq-cont .anc-cont a.anc-welfare{ border-top: 3px solid #5f69af;}
	.faq-cont .anc-cont a.anc-other{ border-top: 3px solid #b37ab2;}
	.faq-cont .anc-cont a:nth-child(2n){ margin-right: 0;}
	.introduction-cont{ display: block;}
	.introduction-cont dl{
		width: 100%;
		margin: 0 0 20px;
	}
	.introduction-cont dl dt{
		font-size: 20px;
		padding: 5px;
	}
	.introduction-cont dl dd{
		font-size: 15px;
		padding: 10px 15px;
	}
}



/* contact-cont */
.contact-cont{
	text-align: left;
	padding-top: 65px;
	margin-bottom: 55px;
}
.contact-cont .agree label{
	font-size: 20px;
	padding: 30px;
	background: #ECF7F8;
	display: flex;
	justify-content: center;
	align-items: center;
}
.contact-cont .agree label:hover{ opacity: .75;}
.contact-cont .ac-catalog{ display: none;}
.contact-cont .ac-catalog table.tb1 tr th{ padding-left: 15px;}
.contact-cont .ac-catalog table.tb1 tr th,.contact-cont .ac-catalog table.tb1 tr td{
	background: #F4F4F4;
	border-bottom: none;
}
table.tb1.bd-top-no{ border-top: none;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.contact-cont{
		padding-top: 35px;
		margin-bottom: 30px;
	}
	.contact-cont .ac-catalog table.tb1 tr th,.contact-cont .ac-catalog table.tb1 tr td{ padding-left: 10px;}
}



/* csr */
.sdgs-cont h4{
	color: #30AFB4;
	font-size: 22px;
	line-height: 1.4;
	text-align: center;
	padding-bottom: 15px;
	border-bottom: 1px solid #30AFB4;
	position: relative;
	margin-bottom: 50px;
}
.sdgs-cont h4:after{
	content: "";
	position: absolute;
	right: 0;
	bottom: -14px;
	left: 0;
	background: url("../img/ttl-arrow-bottom.jpg") center / 20px auto no-repeat;
	width: 20px;
	height: 15px;
	display: block;
	margin: 0 auto;
}
.sdgs-cont ol{ overflow: hidden; margin-bottom: 40px;}
.sdgs-cont ol > li{ margin-bottom: 60px;}
.sdgs-cont ol > li .sdgs-ttl{
	color: var(--blue);
	font-size: 22px;
	line-height: 1.4;
	text-align: center;
	position: relative;
	padding: 8px 140px;
	min-height: 50px;
	background: #ECF7F8;
	margin-bottom: 30px;
}
.sdgs-cont ol > li .sdgs-ttl em{
	color: #fff;
	font-size: 26px;
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	height: 50px;
	line-height: 45px;
	background: var(--blue);
}
.sdgs-cont ol > li .sdgs-ttl ul{
	position: absolute;
	top: 10px;
	right: 10px;
	display: flex;
}
.sdgs-cont ol > li .sdgs-ttl ul li{
	margin: 0 0 6px 6px;
}
.sdgs-cont ol > li .clm2{
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.sdgs-cont ol > li .clm2 figure{ width: 48.5%;}
.sdgs-cont ol > li h5{
	color: var(--blue);
	font-size: 22px;
	font-weight: 500;
}

/* quality */
.quality-box{
	padding: 10px 25px;
	border: 1px solid #707070;
	display: flex;
	align-items: center;
	width: fit-content;
}
.quality-box figure{ margin-right: 20px;}
.quality-box dl dd{ font-size: 14px; line-height: 1.4;}
ol.quality-ol li{
	font-size: 1.6rem;
	padding-left: 1.8em;
	text-indent: -1.8em;
	margin-bottom: .5em;
}
.aisatsu{
	text-align: right;
}
.aisatsu span{
	text-align: left;
	display: inline-block;
}

/* report */
.report-cont{
	display: flex;
	flex-wrap: wrap;
}
.report-cont a{
	display: flex;
	align-items: center;
	flex-direction: column;
	width: 33%;
	text-align: center;
	margin-bottom: 20px;
}
.report-cont a figure{ margin-right: 10px; width: 50%;}
.report-cont a p span{
	display: block;
	text-decoration: underline;
}

.iso_wrap{
	display: flex;
	gap: 20px;
}
.iso_wrap .quality-box{
	width: calc(100% - 140px);
	height: fit-content;
}
.iso_wrap .link_wrap{
    width: 120px;
}
.iso_wrap .link_wrap a{
	display: inline-block;
}
.iso_wrap .link_wrap a p{
	text-align: center;
	font-size: 14px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	/* sdgs */
	.sdgs-cont h4{
		font-size: 18px;
		padding-bottom: 10px;
		margin-bottom: 25px;
	}
	.sdgs-cont ol{ margin-bottom: 0;}
	.sdgs-cont ol > li{ margin-bottom: 30px;}
	.sdgs-cont ol > li .sdgs-ttl{
		font-size: 18px;
		padding: 8px 45px;
		min-height: 40px;
		margin-bottom: 45px;
	}
	.sdgs-cont ol > li .sdgs-ttl em{
		font-size: 22px;
		width: 40px;
		height: 40px;
		line-height: 36px;
	}
	.sdgs-cont ol > li .sdgs-ttl ul{
		top: inherit;
		right: 5px;
		bottom: -40px;
	}
	.sdgs-cont ol > li .sdgs-ttl ul li{ width: 40px;}
	.sdgs-cont ol > li .clm2{ margin-bottom: 15px;}
	.sdgs-cont ol > li h5{ font-size: 18px;}

	/* quality */
	.quality-box{
		padding: 10px 25px;
		display: block;
	}
	.quality-box figure{ margin: 0 0 10px; text-align: center;}

	/* report */
	.report-cont a{ display: block; width: 49%; margin: 0 2% 20px 0;}
	.report-cont a:nth-child(2n){ margin-right: 0;}
	.report-cont a figure{ margin: 0 0 5px; width: 100%;}

	.sp-p0{ padding: 0;}

	.iso_wrap{
		flex-direction: column;
		margin-bottom: 30px;
	}
	.iso_wrap .quality-box{
		width: 100%;
	}
	.iso_wrap .link_wrap a p{
		font-size: 14px;
	}
}



/* site-polocy */
ol.polocy-ol li{
	position: relative;
	padding-left: 4em;
	margin-bottom: .6em;
}
ol.polocy-ol li span{
	position: absolute;
	top: 0;
	left: 0;
}
.polocy-clm{ display: flex;}
.polocy-clm div{
	display: flex;
	margin-right: 70px;
}
.polocy-clm div figure{ margin-right: 10px;}
.polocy-clm div dl dt{
	color: var(--blue);
	font-size: 18px;
	font-weight: 500;
	margin-bottom: 15px;
}
.polocy-clm div dl dd{ margin-bottom: 5px;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	ol.polocy-ol li{ padding-left: 2.5em;}
	.polocy-clm{ display: block;}
	.polocy-clm div{ margin: 0 0 20px;}
	.polocy-clm div figure{ width: 81px; text-align: center;}
	.polocy-clm div dl{ width: calc(100% - 91px);}
	.polocy-clm div dl dt{
		font-size: 16px;
		margin-bottom: 10px;
	}
}



/* product-history */
::-webkit-scrollbar{ width: 15px;}
::-webkit-scrollbar-track{ background-color: #f1f1f1;}
::-webkit-scrollbar-thumb{ background-color: #c1c1c1;}
.product-history{
	margin-top: 100px;
	overflow-x: auto;
	overflow-y: hidden;
	position: relative;
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.product-history::-webkit-scrollbar{ display:none;}
.product-historywrap{
	display: flex;
	width: calc(100% + 3830px);
	height: calc(100vh - 100px);
	min-height: 668px;
}
.product-historywrap.page2{
	width: 3830px;
}
.product-history img{
	height: 100%;
	width: auto;
	max-width: inherit;
}
.product-history-main{
	position: absolute;
	left: 0;
	color: #fff;
	width: 100vw;
	height: calc(100vh - 100px);
	padding: 0 0 0 7.3%;
	background:linear-gradient(to right, #1096c1, #87f7ee);
	display: flex;
	align-items: center;
}
.product-history-main figure{
	height: 668px;
	background: url("../img/product-history-main.jpg") center / cover no-repeat;
	width: 25.4%;
}
.product-history-main div{
	text-align: left;
	font-size: 1.76vw;
	width: 67.3%;
	padding-right: 7.32%;
}
.product-history-main div h2 small{
	font-weight: 400;
	letter-spacing: .3em;
	display: block;
	padding-left: 5.77%;
	margin-bottom: 5%;
}
.product-history-main div h2 span{
	display: block;
	padding-left: 8.8%;
}
.product-history-main div a{
	color: #fff;
	display: block;
	text-align: right;
	position: relative;
	padding: 0 4.6% 0 0;
	background: url("../img/ic-scroll.svg") center bottom / 100% auto no-repeat;
	margin-bottom: 5%;
	cursor: pointer;
}
.product-history-main div p{ text-align: center;}
.product-history-main div p span{
	font-size: 1vw;
	display: inline-block;
	text-align: left;
	width: 43.26%;
}
#product-history-cont{
	position: absolute;
	left: 100vw;
	width: 3836px;
	height: calc(100vh - 100px);
	background: linear-gradient(to bottom, rgba(187, 212, 239, 1) 0%,rgba(187, 212, 239, 1) 85%,rgba(241, 240, 228, 1) 100%);
}
#product-history-cont.cont2{
	left: 0;
}
#product-history-cont:before{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 670px);
	display: block;
	background: linear-gradient(to bottom, rgba(187, 212, 239, 1) 0%,rgba(241, 240, 228, 1) 70%,rgba(241, 240, 228, 1) 100%);
}
#product-history-cont.cont2:before{
	top: 0;
	bottom: inherit;
}
.product-history #product-history-cont figure img{ height: 671px;}
#product-history-cont p{ position: absolute; left: 137px;}
#product-history-cont.cont1 p.next{ top: 540px;}
#product-history-cont.cont2 p.next{
	top: inherit;
	bottom: 550px;
}
#product-history-cont p.next a{
	width: 74px;
	height: 74px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 14px;
	line-height: 1.2;
	background: #30AFB4;
	border-radius: 50%;
	position: relative;
	z-index: 1;
}
#product-history-cont.cont2 p.next a span{ padding-bottom: 10px;}
#product-history-cont ul{
	width: 3830px;
	height: 688px;
	position: absolute;
	left: 0;
	top: 0;
}
#product-history-cont.cont2 figure{
	position: absolute;
	left: 0;
	bottom: 0;
}
#product-history-cont.cont2 ul{
	top: inherit;
	bottom: 0;
}
#product-history-cont li{ position: absolute;}
#product-history-cont li img{ width: 100%; -webkit-transition: all .2s; transition: all .2s; position: relative;}
#product-history-cont li img:hover{ transform: scale(2); z-index: 1;}
#product-history-cont.cont1 li.map1{ left: 6.05%; top: 24%; width: 3.8%;}
#product-history-cont.cont1 li.map2{ left: 11.5%; top: 6%; width: 2.3%;}
#product-history-cont.cont1 li.map3{ left: 18.6%; top: 31%; width: 2.3%;}
#product-history-cont.cont1 li.map4{ left: 21.1%; top: 7.9%; width: 2.1%;}
#product-history-cont.cont1 li.map5{ left: 22.3%; top: 35%; width: 1.8%;}
#product-history-cont.cont1 li.map6{ left: 29.7%; top: 55.7%; width: 3.4%;}
#product-history-cont.cont1 li.map7{ left: 34.5%; top: 42%; width: 2.7%;}
#product-history-cont.cont1 li.map8{ left: 28.3%; top: 30%; width: 2.3%;}
#product-history-cont.cont1 li.map9{ left: 35.3%; top: 55.5%; width: 2%;}
#product-history-cont.cont1 li.map10{ left: 38.4%; top: 40.2%; width: 3.1%;}
#product-history-cont.cont1 li.map11{ left: 41.2%; top: 20.5%; width: 2.1%;}
#product-history-cont.cont1 li.map12{ left: 39.4%; top: 75%; width: 3.3%;}
#product-history-cont.cont1 li.map13{ left: 44%; top: 75%; width: 3.3%;}
#product-history-cont.cont1 li.map14{ left: 45.6%; top: 60.5%; width: 2.2%;}
#product-history-cont.cont1 li.map15{ left: 52.5%; top: 5.5%; width: 2.3%;}
#product-history-cont.cont1 li.map16{ left: 55.6%; top: 64.2%; width: 2.1%;}
#product-history-cont.cont1 li.map16-2{ left: 58.1%; top: 72.2%; width: 1.5%; z-index: 2}
#product-history-cont.cont1 li.map17{ left: 49.9%; top: 84%; width: 2%;}
#product-history-cont.cont1 li.map18{ left: 58.8%; top: 69.5%; width: 6.1%; z-index: 1;}
#product-history-cont.cont1 li.map19{ left: 67%; top: 53.5%; width: 3.4%;}
#product-history-cont.cont1 li.map20{ left: 70.7%; top: 19%; width: 1.7%;}
#product-history-cont.cont1 li.map21{ left: 74%; top: 32.2%; width: 1.9%;}
#product-history-cont.cont1 li.map22{ left: 79%; top: 72%; width: 3.8%;}
#product-history-cont.cont1 li.map23{ left: 80.8%; top: 52.5%; width: 3.4%;}
#product-history-cont.cont1 li.map24{ left: 78.7%; top: 20.5%; width: 2%;}
#product-history-cont.cont1 li.map25{ left: 84.5%; top: 7%; width: 3%;}
#product-history-cont.cont1 li.map25 img:hover{ transform: scale(1.5);}
#product-history-cont.cont1 li.map26{ left: 87%; top: 64.5%; width: 2.5%;}
#product-history-cont.cont1 li.map27{ left: 93.2%; top: 79.4%; width: 2.2%;}
#product-history-cont.cont1 li.map28{ left: 84.2%; top: 30%; width: 3.2%;}
#product-history-cont.cont1 li.map29{ left: 94.2%; top: 4.2%; width: 4.2%;}
#product-history-cont.cont1 li.map29 img:hover{ transform: scale(1.5);}
#product-history-cont.cont1 li.map30{ left: 95%; top: 29.5%; width: 3.6%;}
#product-history-cont.cont2 li.map1{ left: 10.05%; top: 65.5%; width: 9.3%;}
#product-history-cont.cont2 li.map1 img:hover{ transform: scale(1.5);}
#product-history-cont.cont2 li.map2{ left: 16.5%; top: 12.2%; width: 5.4%;}
#product-history-cont.cont2 li.map3{ left: 36.4%; top: 9.9%; width: 2.1%;}
#product-history-cont.cont2 li.map4{ left: 35.8%; top: 67.9%; width: 2.9%;}
#product-history-cont.cont2 li.map5{ left: 29.1%; top: 80.5%; width: 2.9%;}
#product-history-cont.cont2 li.map6{ left: 37.1%; top: 86.7%; width: 3.2%;}
#product-history-cont.cont2 li.map7{ left: 49.3%; top: 9%; width: 3.7%;}
#product-history-cont.cont2 li.map8{ left: 54.5%; top: 4.5%; width: 4.3%;}
#product-history-cont.cont2 li.map9{ left: 52.8%; top: 23.3%; width: 5.3%;}
#product-history-cont.cont2 li.map10{ left: 60.6%; top: 74.9%; width: 4.2%;}
#product-history-cont.cont2 li.map11{ left: 66.1%; top: 47.5%; width: 3.8%;}
#product-history-cont.cont2 li.map12{ left: 70.2%; top: 40.4%; width: 4.3%;}
#product-history-cont.cont2 li.map13{ left: 81.2%; top: 43.3%; width: 3.8%;}
#product-history-cont.cont2 li.map14{ left: 73.5%; top: 86.8%; width: 2.9%;}
#product-history-cont.cont2 li.map15{ left: 72.9%; top: 59.5%; width: 2%;}
#product-history-cont.cont2 li.map16{ left: 79.8%; top: 77.1%; width: 3.3%;}
#product-history-cont.cont2 li.map17{ left: 80.7%; top: 19.6%; width: 1.7%;}
#product-history-cont.cont2 li.map18{ left: 81.1%; top: 61.5%; width: 3.1%;}
#product-history-cont.cont2 li.map19{ left: 93.6%; top: 62.8%; width: 5.1%;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	.product-history{ margin-top: 100px;}
	.product-historywrap{
		display: flex;
		width: calc(100% + 3150px);
		height: calc(100vh - 100px);
		min-height: 566px;
	}
	.product-history-main figure{
		background: url("../img/product-history-main.jpg") center / cover no-repeat;
		width: 45%;
		position: absolute;
		z-index: 0;
		top: 0;
		left: 5%;
		margin: 0;
		height: 566px;
		min-height: 566px;
	}
	#product-history-cont{ width: 3238px;}
	.product-history #product-history-cont figure img{ height: 566px;}
	.product-history-main div{
		position: relative;
		z-index: 9;
		font-size: 3vw;
		width: 100%;
		padding-right: 7.32%;
	}
	.product-history-main div h2 span{
		display: block;
		padding-left: 0;
	}
	.product-history-main div h2 span img{ width: 100%;}
	.product-history-main div a{
		padding: 3% 4.6% 0 0;
		background: url("../img/ic-scroll.svg") center bottom / 100% auto no-repeat;
		margin-bottom: 5%;
	}
	.product-history-main div p{ text-align: right;}
	#product-history-cont.cont1 p.next{
		left: 10px;
		top: 450px;
	}
	#product-history-cont.cont1 p.next a{
		width: 70px;
		height: 70px;
		font-size: 12px;
	}
	.product-historywrap.page2{ width: 3238px;}
	#product-history-cont p{ left: 10px;}
	#product-history-cont.cont2 p.next{ bottom: 77%;}
	#product-history-cont:before{ height: calc(100% - 566px);}
	#product-history-cont ul{
		width: 3230px;
		height: 566px;
	}
}



/* dl */
dl.catalog-caution{
	border: 1px solid #30AFB4;
	padding: 30px;
}
.catalog_btn{
	display: flex;
	flex-wrap: wrap;
}
.catalog_btn li{
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #007898;
	padding: 10px 30px;
	margin: 5px 10px;
}
.catalog_btn li a{
	color: #007C9C;
}
.catalog_btn a li{
	color: #007C9C;
}
dl.catalog-caution dt{
	color: #007C9C;
	font-size: 20px;
	margin-bottom: 10px;
}
ul.catalog-dot-list li{
	padding-left: 1.2em;
	position: relative;
}
ul.catalog-dot-list li:before{
	content: "";
	position: absolute;
	top: .4em;
	left: 0;
	background: url("../img/ic-circle.svg") center no-repeat;
	width: 12px;
	height: 12px;
	display: block;
}
ul.catalog-dot-list li div{ display: flex; align-items: center;}
ul.catalog-dot-list li div p{ margin-right: 1em;}
ul.catalog-dot-list li a{
	color: #067F9E;
	text-decoration: underline;
}
ul.catalog-dot-list li a:hover{ text-decoration: none;}
ul.catalog-list{
	display: flex;
	flex-wrap: wrap;
}
ul.catalog-list li{
	font-size: 16px;
	position: relative;
	width: 22%;
	padding-bottom: 40px;
	margin: 0 5% 80px;
}
ul.catalog-list li figure{ margin-bottom: 10px;}
ul.catalog-list li p{ padding: 0 8px 0 4px;}
ul.catalog-list li p small{ font-size: 14px;}
ul.catalog-list li p.abs{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}
ul.catalog-list li p .btn4{ width: 100%;}
@media print{
	.sp{
		display: none;
	}
}
/*------------------------------ responsive ------------------------------*/
@media screen and (max-width: 768px) {
	@media print{
		.pc{
			display: none;
		}
	}
	dl.catalog-caution{ padding: 15px;}
	dl.catalog-caution dt{
		font-size: 18px;
		margin-bottom: 5px;
	}
	ul.catalog-dot-list li{
		padding-left: 1.1em;
		margin-bottom: .5em;
	}
	ul.catalog-dot-list li:before{ top: .45em;}
	ul.catalog-dot-list li div{ display: block;}
	ul.catalog-dot-list li div p{ margin: 0 0 10px;}
	ul.catalog-list{ display: block;}
	ul.catalog-list li{
		font-size: 14px;
		width: 100%;
		padding-bottom: 35px;
		margin: 0 0 40px;
	}
	ul.catalog-list li figure{ margin-bottom: 5px;}
	ul.catalog-list li p{ padding: 0 5% 0 3%;}
	ul.catalog-list li p small{ font-size: 12px;}

	.catalog_btn{
		flex-direction: column;
	}
	.catalog_btn li{
		width: 100%;
		margin: 5px 0;
	}
}


