@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@300;400;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@400;500;600;700&display=swap');
/*------------------------------------------------------------
Theme Name: TOKALOY
Theme URI: null
Description: Description
Version: 1.0
------------------------------------------------------------*/
.aligncenter {
	display: block;
	margin: 0 auto;
}
.alignright {
	float: right;
}
.alignleft {
	float: left;
}
img[class*="wp-image-"],
img[class*="attachment-"] {
	height: auto;
	max-width: 100%;
}
.wp-block-image figure,
.wp-block-image figcaption {
	display: block;
}
a.nolink,
a.nolink:hover {
	opacity: 1;
	cursor: default;
	pointer-events: none;
}
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
}
html {
	font-size: 62.5%;
}
body, table, input, textarea, select, option {
	font-family: 'Noto Sans JP', sans-serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
a,
a:link {
	color: #fff;
	text-decoration: none;
	transition: .3s;
}
a:visited {
	color: #fff;
}
a:hover {
	color: #fff;
}
a:active {
	color: #fff;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 1280px;
	color: #fff;
	font-size: 1.5rem;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #000;
}
#container {
	text-align: left;
}
#main {
	display: block;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
@media all and (-ms-high-contrast:none) {
	#container {
		overflow: hidden;
	}
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: inherit;
		font-size: 1.2rem;
	}
	body.fixed {
		width: 100%;
		position: fixed;
		left: 0;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	position: relative;
	background-color: #fff;
	z-index: 9999;
}
#gHeader .hBox {
	margin: 0 auto;
	padding-left: 59px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
}
#gHeader h1 {
	width: 55px;
}
#gHeader .hRBox {
	min-width: 980px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
#gHeader .hBtn {
	width: 218px;
}
#gHeader .hBtn a {
	padding: 32px 20px 36px;
	display: block;
	font-size: 1.2rem;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.2em;
	background-color: #000;
}
#gHeader .hBtn a span {
	display: block;
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.2em;
	font-family: 'Source Sans Pro', sans-serif;
}
#gNavi {
	margin-right: 21px;
}
#gNavi a {
	color: #000;
}
#gNavi .hLinkList {
	display: flex;
}
#gNavi .hLinkList a {
	padding: 33px 14px 35px;
	display: block;
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.2em;
	text-align: center;
	font-family: 'Source Sans Pro', sans-serif;
}
#gNavi .hLinkList .list02 {
	cursor: pointer;
}
#gNavi .hLinkList .list02 > a {
	pointer-events: none;
}
#gNavi .hLinkList li {
	position: relative;
}
#gNavi .hLinkList li .bgBox {
	padding: 22px 0;
	width: 173px;
	position: absolute;
	left: calc(50% + 5px);
	top: 100%;
	transform: translateX(-50%);
	background-color: #000;
	display: none;
}
#gNavi .hLinkList li .linkUl li a {
	padding: 9px 24px 8px 23px;
	color: #fff;
	font-size: 1.2rem;
	text-align: left;
	letter-spacing: 0;
	background: url(img/common/icon03.png) no-repeat right 19px center / 7px auto;
}
#gNavi .hLinkList li.on a {
	color: #A0A0A0;
}
#gNavi .hLinkList a span {
	display: block;
	color: #505050;
	font-size: 1.2rem;
	font-weight: 400;
	font-feature-settings: "palt";
	font-family: 'Noto Sans JP', sans-serif;
}
@media all and (min-width: 897px) {
	#gNavi .hLinkList a:hover {
		color: #A0A0A0;
	}
	#gHeader .hBtn a:hover {
		color: #A0A0A0;
	}
	#gNavi .hLinkList li .linkUl li a:hover {
		opacity: 0.7;
	}
	#gNavi .hLinkList li .bgBox.box01 {
		left: calc(50% - 15px);
	}
	#gNavi .hLinkList li .bgBox.box01 .linkUl a {
		font-size: 1.2rem;
		letter-spacing: 0;
		background-position: right 12px center;
	}
	#gNavi .hLinkList li .bgBox.box01 .linkUl li.fot01 a {
		font-size: 1.1rem;
		line-height: 1.36;
	}
}
@media all and (max-width: 896px) {
	#gHeader {
		padding: 14px 22px 9px;
	}
	#gHeader .hBox {
		margin: 0 auto;
		padding-left: 0;
		max-width: inherit;
		display: flex;
		align-items: center;
		justify-content: space-between;
		box-sizing: border-box;
	}
	#gHeader h1 {
		width: 41px;
	}
	#gHeader .hRBox {
		min-width: inherit;
		display: block;
	}
	#gHeader .hBtn {
		display: none;
	}
	#gNavi {
		margin-right: 0;
		padding: 59px 81px 100px;
		width: 100%;
		height: 100%;
		position: fixed;
		left: 0;
		top: 0;
		z-index: 999;
		box-sizing: border-box;
		background-color: #000;
		overflow-y: auto;
		display: none;
	}
	#gNavi a {
		color: #fff;
	}
	#gNavi .hLinkList {
		margin-bottom: 52px;
		display: block;
		text-align: left;
	}
	#gNavi .hLinkList a {
		padding: 7px 14px 7px 0;
		display: block;
		font-size: 0;
		font-weight: 500;
		letter-spacing: 0;
		text-align: left;
		background: url(img/common/icon03.png) no-repeat right 3px center / 7px auto;
	}
	#gNavi .hLinkList .list02 {
		cursor: inherit;
	}
	#gNavi .hLinkList .list02 > a {
		cursor: default;
		pointer-events: none;
		background-image: none;
	}
	#gNavi .hLinkList a span {
		display: block;
		font-size: 1.6rem;
	}
	#gNavi .hLinkList li a span {
		font-size: 1.2rem;
		color: #fff;
	}
	#gNavi .hLinkList li.list01 a span {
		color: #fff;
		font-size: 1.6rem;
	}
	#gNavi .hLinkList li.list01 {
		margin-bottom: 43px;
	}
	#gNavi .hLinkList > li {
		margin-bottom: 3px;
	}
	#gNavi .hLinkList > li:last-of-type {
		margin-bottom: 0;
	}
	#gNavi .hLinkList > li:nth-of-type(3) {
		margin-bottom: 48px;
	}
	#gNavi .hLinkList li .bgBox {
		padding: 0;
		width: auto;
		position: relative;
		left: 0;
		top: 0;
		transform: translateX(0);
		background-color: transparent;
		display: block;
	}
	#gNavi .hLinkList li .linkUl li a {
		padding: 9px 24px 8px 0;
		color: #fff;
		font-size: 1.2rem;
		text-align: left;
		letter-spacing: 0;
		background-position: right 3px center;
	}
	#gNavi .btn {
		margin: 0 -56px;
	}
	#gNavi .btn a {
		margin: 0 auto;
		padding: 27px 10px;
		max-width: 400px;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 500;
		border: 1px solid #fff;
		letter-spacing: 0.04em;
		text-align: center;
		box-sizing: border-box;
		display: block;
	}
	.menu {
		width: 30px;
		height: 30px;
		display: flex;
		flex-flow: row wrap;
		align-items: center;
		justify-content: center;
		position: absolute;
		right: 20px;
		top: 24px;
		box-sizing: border-box;
		z-index: 99999;
	}
	.menu span {
		width: 22px;
		height: 1px;
		position: relative;
		background-color: #000;
		transition: .3s;
	}
	.menu span::after,
	.menu span::before {
		width: 100%;
		height: 1px;
		display: block;
		position: absolute;
		left: 0;
		top: 50%;
		background-color: #000;
		transition: .3s;
		content: '';
	}
	.menu span::before {
		margin-top: -8px;
	}
	.menu.on span {
		background-color: transparent;
	}
	.menu.on span::before,
	.menu.on span::after {
		background-color: #fff;
	}
	.menu.on span::before {
		transform: rotate(-45deg);
	}
	.menu span::after {
		margin-top: 8px;
	}
	.menu.on span::before,
	.menu.on span::after {
		margin-top: 0;
	}
	.menu.on span::after {
		transform: rotate(-135deg);
	}
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
	padding: 0 0 79px;
	position: relative;
	background-color: #fff;
}
#gFooter::after {
	width: 100%;
	height: 8px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: url(img/common/f_bg01.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#gFooter .fContactBox {
	margin-bottom: 66px;
	padding: 164px 30px 0 0;
	min-height: 685px;
	background: url(img/common/f_bg02.jpg) no-repeat center center / cover;
	box-sizing: border-box;
}
#gFooter .fContactBox .title {
	margin-bottom: 75px;
	color: #fff;
	font-size: 2.2rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: center;
}
#gFooter .fContactBox .title span {
	display: block;
	font-size: 5rem;
	letter-spacing: 0.15em;
	font-weight: 500;	
	font-family: 'Source Sans Pro', sans-serif;
}
#gFooter .fContactBox ul {
	padding-left: 20px;
	display: flex;
	justify-content: center;
	text-align: center;
	font-size: 1.7rem;
	letter-spacing: 0.04em;
	font-feature-settings: "palt";
}
#gFooter .fContactBox li {
	margin: 0 85px;
}
#gFooter .fContactBox li a {
	margin: 51px auto 0;
	width: 330px;
	height: 90px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 1.7rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-align: center;
	border: 1px solid #fff;
	background: url(img/common/icon05.png) no-repeat right 25px center / 34px auto;
	box-sizing: border-box;
}
#gFooter .fContactBox li a:hover {
	opacity: 0.7;
}
#gFooter .fBox {
	margin: 0 auto;
	width: 1250px;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
#gFooter .fBox.box01 {
	align-items: inherit;
}
#gFooter p,
#gFooter a {
	color: #000;
}
#gFooter .lBox .fLogo {
	margin-bottom: 59px;
}
#gFooter .lBox .fLogo a {
	width: 55px;
	display: block;
}
#gFooter .lBox {
	width: 330px;
}
#gFooter .lBox p {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.59;
	letter-spacing: 0.05em;
}
#gFooter .lBox .ttl {
	margin-bottom: 31px;
}
#gFooter .lBox .text {
	margin-bottom: 18px;
}
#gFooter .fNavi {
	width: 220px;
}
#gFooter .fNavi li:not(:last-of-type) {
	margin-bottom: 26px;
}
#gFooter .fNavi a {
	font-weight: 500;
	letter-spacing: 0.2em;
}
#gFooter .fNavi.navi01 .list01 > span {
	padding-right: 22px;
	color: #000;
	font-weight: 500;
	letter-spacing: 0.2em;
	background: url(img/common/icon19.png) no-repeat right center / 10px auto;
	cursor: pointer;
	transition: .3s;
}
#gFooter .fNavi.navi01 .list01 > span.on {
	background-image: url(img/common/icon20.png);
}
#gFooter .fNavi.navi01 .fLinkUl {
	margin: 15px 0 59px;
	display: none;
}
#gFooter .fNavi.navi01 .fLinkUl li:not(:last-of-type) {
	margin-bottom: 7px;
}
#gFooter .fNavi.navi01 .fLinkUl a {
	font-size: 1.1rem;
	line-height: 1.36;
	letter-spacing: 0;
}
#gFooter .rBox.box01 {
	width: 340px;
}
#gFooter .rBox.box01 {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#gFooter .rBox .fLinkList {
	margin-bottom: 36px;
}
#gFooter .rBox .fLinkList li:not(:last-of-type) {
	margin-bottom: 30px;
}
#gFooter .rBox.box01 .fLinkList li:not(:last-of-type) {
	margin-bottom: 26px;
}
#gFooter .rBox .fLinkList a {
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}
#gFooter .copyright {
	display: block;
	color: #000;
	font-size: 1.1rem;
	font-style: normal;
	letter-spacing: 0.08em;
}
#gFooter.recruitPage {
	padding-top: 66px;
}
#gFooter.recruitPage .fContactBox {
	display: none;
}
@media all and (min-width: 897px) {
	#gFooter .fNavi a:hover {
		text-decoration: underline;
	}
	#gFooter .rBox .fLinkList a:hover {
		text-decoration: underline;
	}
	#gFooter .fNavi.navi01 .list01 > span:hover {
		text-decoration: underline;
	}
}
@media all and (max-width: 896px) {
	#gFooter {
		padding: 0 0 34px;
	}
	#gFooter.recruitPage {
		padding-top: 45px;
		padding-bottom: 170px;
	}
	#gFooter::after {
		height: 5px;
	}
	#gFooter .fContactBox {
		margin-bottom: 45px;
		padding: 37px 0 0;
		min-height: 516px;
		background-image: url(img/common/sp_f_bg01.jpg);
	}
	#gFooter .fContactBox .title {
		margin: 0 0 28px;
		font-size: 1.5rem;
	}
	#gFooter .fContactBox .title span {
		font-size: 2.8rem;
	}
	#gFooter .fContactBox ul {
		padding: 0;
		display: block;
		font-size: 1.4rem;	
		line-height: 1.2;
	}
	#gFooter .fContactBox li {
		margin: 0;
	}
	#gFooter .fContactBox li:not(:last-child) {
		margin-bottom: 58px;
	}
	#gFooter .fContactBox li a {
		margin: 13px 25px 0;
		width: auto;
		height: 80px;
		background: url(img/common/icon05.png) no-repeat right 20px center / 34px auto;
	}
	#gFooter .fBox {
		margin: 0 20px;
		width: auto;
		display: block;
	}
	#gFooter p {
		margin-right: -20px;
	}
	#gFooter .lBox .fLogo {
		margin-bottom: 31px;
	}
	#gFooter .lBox .fLogo a {
		width: 41px;
	}
	#gFooter .lBox {
		margin: 0 auto 47px;
		width: 250px;
	}
	#gFooter .lBox p {
		font-size: 1.3rem;
	}
	#gFooter .lBox .ttl {
		margin-bottom: 26px;
	}
	#gFooter .fNavi {
		margin: -10px auto 35px;
		width: 250px;
		height: 110px;
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
	}
	#gFooter .fNavi.navi01 {
		margin: -10px auto 30px;
		height: auto;
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: space-between;
	}
	#gFooter .fNavi li {
		margin-top: 10px;
		width: 170px;
	}
	#gFooter .fNavi.navi01 > li {
		margin-top: 10px;
		width: 170px;
	}
	#gFooter .fNavi.navi01 > li:nth-of-type(2) {
		margin-right: -15px;
		width: 75px;
	}
	#gFooter .fNavi li:nth-of-type(n + 3) {
		width: 75px;
	}
	#gFooter .fNavi .fList li {
		margin-bottom: 10px !important;
		width: auto;
	}
	#gFooter .fNavi .fList li:last-of-type {
		margin-bottom: 0 !important;
	}
	#gFooter .fNavi.navi01 li.list01 {
		margin-bottom: 14px !important;
		width: 100%;
	}
	#gFooter .fNavi li:not(:last-of-type) {
		margin-bottom: 0;
	}
	#gFooter .fNavi.navi01 .fLinkUl {
		margin: 10px 0 0;
	}
	#gFooter .fNavi.navi01 .fLinkUl li:first-of-type {
		margin-top: 0 !important;
	}
	#gFooter .fNavi.navi01 .fLinkUl a {
		display: inline-block;
		vertical-align: top;
	}
	#gFooter .fNavi a {
		font-weight: 500;
		font-size: 1.3rem;
		letter-spacing: 0.1em;
	}
	#gFooter .rBox {
		width: auto;
	}
	#gFooter .rBox.box01 {
		width: auto;
	}
	#gFooter .rBox .fLinkList {
		margin: 0 auto 46px;
		width: 250px;
	}
	#gFooter .rBox .fLinkList li:not(:last-of-type) {
		margin-bottom: 11px;
	}
	#gFooter .rBox.box01 .fLinkList li:not(:last-of-type) {
		margin-bottom: 11px;
	}
	#gFooter .rBox .fLinkList a {
		font-size: 1.3rem;
		letter-spacing: 0.2em;
	}
	#gFooter .copyright {
		margin: 0 -15px;
		font-size: 1.2rem;
		text-align: center;
		letter-spacing: 0.04em;
		font-feature-settings: 'palt';
	}
}
@media all and (max-width: 374px) {
	#gFooter .fContactBox li a {
		background-size: 24px auto;
	}
	#gFooter .fContactBox li:last-child a {
		background-size: 30px auto;
	}
}
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.comBox {
	margin: 0 auto;
	width: 1000px;
}
@media all and (max-width: 896px) {
	.comBox {
		margin: 0 25px;
		width: auto;
	}
}
/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
	margin: 0 auto;
	width: 611px;
}
@media all and (max-width: 896px) { 
	.content {
		padding: 0 25px;
		width: auto;
	}
}
/*------------------------------------------------------------
	pageTitle
------------------------------------------------------------*/
.pageTitle {
	margin-bottom: 110px;
	background: url(img/common/page_title_bg.jpg) no-repeat center center / cover;
}
.pageTitle .inner {
	margin: 0 auto;
	padding: 0 0 25px 25px;
	width: 1000px;
	height: 430px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
}
.pageTitle h2 {
	width: 100%;
	font-size: 3.6rem;
	font-weight: 500;
	letter-spacing: 0.25em;
	text-align: center;
}
.pageTitle h2 span {
	margin-top: 18px;
	display: block;
	font-size: 1.8rem;
	letter-spacing: 0.2em;
}
@media all and (max-width: 896px) {
	.pageTitle {
		margin-bottom: 105px;
		background-image: url(img/common/sp_page_title_bg.jpg);
	}
	.pageTitle .inner {
		margin: 0 auto;
		padding: 0 25px 47px 63px;
		width: auto;
		height: 240px;
	}
	.pageTitle h2 {
		font-size: 2.4rem;
	}
	.pageTitle h2 span {
		margin-top: 14px;
		font-size: 1.2rem;
		letter-spacing: 0.25em;
	}
}
/*------------------------------------------------------------
	comScroll
------------------------------------------------------------*/
.comScroll a {
	width: 21px;
	position: absolute;
	left: 20px;
	bottom: -56px;
	display: block;
	height: 120px;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	writing-mode: horizontal-tb;
	writing-mode: vertical-rl;
	writing-mode: tb-rl;
	-webkit-writing-mode: horizontal-tb;
	-webkit-writing-mode: vertical-rl;
	-webkit-writing-mode: tb-rl; 
	font-family: 'Source Sans Pro', sans-serif;
}
.comScroll a span {
	width: 3px;
	height: 185px;
	position: absolute;
	left: 8px;
	bottom: -163px;
	overflow: hidden;
}
.comScroll a span::before {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	background: url(img/common/line01.jpg) no-repeat center top / 100% 100%;
	content: '';
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
	-webkit-animation: scroll-line-move 2s infinite;
	animation: scroll-line-move 2s infinite; 
}
@-webkit-keyframes scroll-line-move {
	0% {
	  -webkit-transform: translate3d(0, -100%, 0);
			  transform: translate3d(0, -100%, 0); }
	50% {
	  -webkit-transform: translate3d(0, 0, 0);
			  transform: translate3d(0, 0, 0); }
	100% {
	  -webkit-transform: translate3d(0, 100%, 0);
			  transform: translate3d(0, 100%, 0); }
}
  
  @keyframes scroll-line-move {
	0% {
	  -webkit-transform: translate3d(0, -100%, 0);
			  transform: translate3d(0, -100%, 0); }
	50% {
	  -webkit-transform: translate3d(0, 0, 0);
			  transform: translate3d(0, 0, 0); }
	100% {
	  -webkit-transform: translate3d(0, 100%, 0);
			  transform: translate3d(0, 100%, 0); } 
	}
@media all and (-ms-high-contrast:none){
	.comScroll a::before {
		left: 7px;
	}
}
@media all and (min-width: 897px) {
	.comScroll a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.comScroll a {
		width: 18px;
		left: 22px;
		bottom: 29px;
		height: 90px;
		font-size: 1.2rem;
	}
	.comScroll a span {
		height: 90px;
		left: 7px;
		bottom: -78px;
	}
}
/*------------------------------------------------------------
	wp-pagenavi
------------------------------------------------------------*/
.wp-pagenavi {
	margin: -20px 0 127px;
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
	width: 35px;
	height: 35px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	border: 1px solid #fff;
	box-sizing: border-box;
	padding: 1px 5px;
	margin: 20px 10px 0;
	font-family: 'Source Sans Pro', sans-serif;
}
.wp-pagenavi span.current {
	color: #000;
	background-color: #fff;
}
.wp-pagenavi .first,
.wp-pagenavi .last,
.wp-pagenavi .pages {
	display: none;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	margin-left: 25px;
	border: none;
	background: url(img/common/icon01.png) no-repeat center center / 13px auto;
}
.wp-pagenavi .previouspostslink {
	margin: 20px 25px 0 10px;
	background-image: url(img/common/icon02.png);
}
.wp-pagenavi .extend {
	border: none;
	letter-spacing: 0.1em;
}
@media all and (min-width: 897px) {
	.wp-pagenavi a:hover {
		color: #000;
		background-color: #fff;
	}
	.wp-pagenavi .previouspostslink:hover,
	.wp-pagenavi .nextpostslink:hover {
		background-color: transparent;
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.wp-pagenavi {
		margin-bottom: 103px;
	}
}
/*------------------------------------------------------------
	pageNavi
------------------------------------------------------------*/
.pageNavi {
	margin-bottom: 143px;
	display: flex;
	justify-content: center;
}
.pageNavi li {
	margin: 0 41px;
}
.pageNavi a {
	padding-left: 59px;
	display: block;
	font-size: 1.6rem;
	font-weight: 600;
	letter-spacing: 0.38em;
	background: url(img/common/icon04.png) no-repeat left top calc(50% - 2px) / 34px auto;
	font-family: 'Source Sans Pro', sans-serif;
}
.pageNavi .next a {
	padding: 0 59px 0 0;
	background-image: url(img/common/icon05.png);
	background-position: right top calc(50% - 2px);
}
@media all and (min-width: 897px) {
	.pageNavi a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.pageNavi {
		margin-bottom: 98px;
		justify-content: space-between;
	}
	.pageNavi li {
		margin: 0;
	}
}
/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
	margin-bottom: 104px;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 1.28;
	text-align: center;
}
@media all and (max-width: 896px) {
	.headLine01 {
		margin-bottom: 37px;
	}
}
@media all and (max-width: 374px) {
	.headLine01 {
		font-size: 2.3rem;
	}
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
	margin-bottom: 40px;
	font-size: 3rem;
	font-weight: 400;
	letter-spacing: 0.2em;
	line-height: 2.5;
	text-align: center;
}
@media all and (max-width: 896px) {
	.headLine02 {
		margin-bottom: 42px;
		font-size: 2.5rem;
	}
}
/*------------------------------------------------------------
	headLine03
------------------------------------------------------------*/
.headLine03 {
	margin: 0 auto 121px;
	max-width: 1280px;
	font-size: 3.4rem;
	letter-spacing: 0.17em;
	line-height: 1.75;
}
.headLine03 strong {
	display: inline-block;
	font-weight: 500;
	text-align: right;
	vertical-align: top;
}
.headLine03 span {
	margin-bottom: -21px;
	display: inline-block;
	font-size: 6.7rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	font-family: 'Source Sans Pro', sans-serif;
	vertical-align: top;
}
@media all and (max-width: 896px) {
	.headLine03 {
		margin: 0 10px 60px;
		max-width: inherit;
		font-size: 1.5rem;
		line-height: 1.75;
		text-align: center;
	}
	.headLine03 strong {
		text-align: center;
	}
	.headLine03 span {
		margin-bottom: -8px;
		font-size: 2.8rem;
	}
}
/*------------------------------------------------------------
	headLine04
------------------------------------------------------------*/
.headLine04 {
	margin-bottom: 63px;
	color: #000;
	font-size: 2.2rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: center;
}
.headLine04 span {
	margin-bottom: -3px;
	display: block;
	font-size: 5rem;
	font-weight: 500;
	letter-spacing: 0.15em;
	font-family: 'Source Sans Pro', sans-serif;
}
@media all and (max-width: 896px) {
	.headLine04 {
		margin-bottom: 35px;
		color: #000;
		font-size: 1.5rem;
	}
	.headLine04 span {
		margin-bottom: -3px;
		font-size: 2.8rem;
	}
}
/*------------------------------------------------------------
	headLine05
------------------------------------------------------------*/
.headLine05 {
	margin-bottom: 102px;
	color: #000;
	font-size: 1.5rem;
	letter-spacing: 0.2em;
	text-align: center;
}
.headLine05.head01 {
	margin-bottom: 90px;
	color: #fff;
}
.headLine05 em {
	display: block;
	font-size: 8rem;
	letter-spacing: 0.2em;
	font-style: italic;
	font-family: 'Source Sans Pro', sans-serif;
}
.headLine05.head01 em {
	margin-bottom: 3px;
	font-size: 7.5rem;
}
@media all and (max-width: 896px) {
	.headLine05 {
		margin-bottom: 57px;
		font-size: 1.3rem;
	}
	.headLine05.head01 {
		margin-bottom: 48px;
	}
	.headLine05 em {
		margin-bottom: -10px;
		font-size: 4.5rem;
		letter-spacing: 0.1em;
	}
	.headLine05.head01 em {
		margin-bottom: -9px;
		font-size: 4.5rem;
	}
}
/*------------------------------------------------------------
	headLine06
------------------------------------------------------------*/
.headLine06 {
	margin-bottom: 60px;
	position: relative;
	font-size: 3.6rem;
	letter-spacing: 0.119em;
	font-weight: 500;
	text-align: center;
}
.headLine06 .en {
	font-size: 8.3rem;
	letter-spacing: 0.119em;
	line-height: 1;
	color: rgba(255,255,255,0.21);
}
.headLine06 .jp {
	display: block;
	margin-top: -60px;
}
@media all and (max-width: 896px) {
	.headLine06 {
		margin-bottom: 19px;
		font-size: 3.1rem;
	}
	.headLine06 .en {
		font-size: 5.5rem;
	}
	.headLine06 .jp {
		margin-top: -47px;
	}
}
@media all and (max-width: 374px) {
	.headLine06 {
		font-size: 2.6rem;
	}
	.headLine06 .en {
		font-size: 4.5rem;
	}
}
/*------------------------------------------------------------
	mailForm
------------------------------------------------------------*/
.mailForm {
	padding: 69px 70px 101px;
	background-color: #fff;
}
.mailForm table {
	margin-bottom: 67px;
	width: 100%;
	border-collapse: collapse;
}
.mailForm table th,
.mailForm table td {
	padding: 35px 10px 10px 0;
	width: 30.7%;
	position: relative;
	color : #000;
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: left;
	vertical-align: top;
	font-feature-settings: 'palt';
}
.mailForm table th .txt {
	margin-top: 5px;
	display: block;
	font-size: 1.3rem;
}
.mailForm table th .must {
	padding-bottom: 1px;
	width: 46px;
	color : #DA2A2C;
	font-size: 1.2rem;
	font-weight: bold;
	display: block;
	position: absolute;
	right: 79px;
	top: 40px;
	text-align: center;
	border: 1px solid #DA2A2C;
	box-sizing: border-box;
}
.mailForm table td {
	padding: 27px 0;
	width: 69.3%;
	font-size: 1.4rem;
	font-weight: 400;
}
.mailForm input[type="file"],
.mailForm input[type="text"],
.mailForm input[type="radio"],
.mailForm input[type="checkbox"],
.mailForm input[type="tel"],
.mailForm input[type="email"],
.mailForm input[type="submit"],
.mailForm input[type="button"],
.mailForm textarea {
	width: 100%;
	height: 45px;
	padding: 5px 18px;
	color: #000;
	font-size: 1.4rem;
	font-weight: 400;
	box-shadow: none;
	letter-spacing: 0.1em;
	border: 1px solid #ccc;
	background-color: #F0F0F0;
	box-sizing: border-box;
	appearance: none;
	-webkit-appearance: none;
}
.mailForm input[type="file"] {
	margin-right: 20px;
	width: 190px;
	background-color: #fff;
}
.mailForm textarea {
	padding-top: 15px;
	height: 275px;
	resize: vertical;
	vertical-align: top;
}
.mailForm .a-upload {
	display: flex;
	position: relative;
	align-items: center;
}
.mailForm .a-upload.on {
	display: inline-block;
}
.mailForm span.file,
.mailForm span[data-name="file"]{
	opacity: 0;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.mailForm div.wpcf7 input[type="file"] {
	font-size: 0;
	height: 100%;
	width: 100%;
	padding: 0;
	top: 0;
	position: absolute;
}
.mailForm .fileerrorTip {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 20px;
	width: 187px;
	height: 45px;
	padding: 5px 18px;
	color: #000;
	font-size: 1.4rem;
	font-weight: 400;
	box-shadow: none;
	letter-spacing: 0.1em;
	border: 1px solid #858585;
	background-color: #fff;
	box-sizing: border-box;
}
.mailForm table td .radioList span {
	font-size: 1.4rem;
	vertical-align: -3px;
}
.mailForm table td .radioList {
	margin-top: -10px;
	display: flex;
	flex-wrap: wrap;
}
.mailForm table td .radioList li {
	margin-top: 10px;
	width: 25%;
}
.mailForm table td .radioList input {
	display: none;
}
.mailForm table td .radioList input + span {
	padding: 2px 0 2px 27px;
	display: block;
	background: url(img/common/icon06.png) no-repeat left center / 18px auto;
}
.mailForm table td .radioList input:checked + span {
	background-image: url(img/common/icon07.png);
}
.mailForm table td .firstNone .wpcf7-list-item.first {
	display: none;
}
.mailForm table td span.wpcf7-list-item {
	vertical-align: -6px;
	margin-left: 55px;
}
.mailForm table td .firstNone .wpcf7-list-item:nth-child(2) {
	margin-left: 0;
}
.mailForm table td .checkList span.wpcf7-list-item {
	margin-left: 37px;
}
.mailForm table td .checkList .wpcf7-list-item:nth-child(5n+1) {
	margin-left: 0;
}
.mailForm p.agree {
	margin-bottom: 102px;
	padding-top: 58px;
	text-align: left;
	border-top: 1px solid #464646;
}
.mailForm .agree input {
	display: none;
}
.mailForm .agree input + span {
	padding: 3px 0 3px 35px;
	display: inline-block;
	position: relative;
	color: #000;
	font-size: 1.5rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	vertical-align: top;
	background: url(img/common/icon08.jpg) no-repeat left center / 26px auto;
}
.mailForm .agree input + span::after {
	width: 24px;
	height: 24px;
	position: absolute;
	left: 1px;
	top: 50%;
	transform: translateY(-50%);
	background: url(img/common/icon09.png) no-repeat center center / cover;
	content: '';
	opacity: 0;
}
.mailForm .agree input:checked + span::after {
	opacity: 1;
}
.mailForm .agree input + span a {
	padding-bottom: 3px;
	color : #FF0000;
	border-bottom: 1px solid #FF0000;
	vertical-align: top;
}
.mailForm .agree span.wpcf7-list-item {
	margin-left: 0;
}
.mailForm .submitList {
	display: flex;
	justify-content: center;
}
.mailForm .submitList li {
	margin: 0 21px;
	width: 330px;
	position: relative;
	cursor: pointer;
}
.mailForm .submitList li::after {
	width: 34px;
	height: 7px;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	background: url(img/common/icon10.png) no-repeat center center / cover;
	content: '';
}
.mailForm .submitList li input {
	width: 100%;
	height: 46px;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.075em;
	border-color: #000;
	background-color: #000;
	cursor: pointer;
}
.mailForm .submitList li.list01 input {
	color: #000;
	background-color: #fff;
}
.mailForm .wpcf7 form.invalid .wpcf7-response-output, 
.mailForm .wpcf7 form.unaccepted .wpcf7-response-output {
	color: #000;
}
.mailForm div.wpcf7 .ajax-loader {
	display: none;
}

@media all and (min-width: 897px) {
	.mailForm .agree input + span a:hover {
		border-color: #fff;
	}
	.mailForm .submitList li:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.mailForm {
		padding: 43px 22px 69px;
	}
	.mailForm table {
		margin-bottom: 55px;
	}
	.mailForm table th,
	.mailForm table td {
		margin-bottom: 12px;
		padding: 0;
		width: 100%;
		display: block;
	}
	.mailForm table th .txt {
		margin-top: 0;
	}
	.mailForm table th .must {
		padding-bottom: 1px;
		color : #DA2A2C;
		font-size: 1.2rem;
		font-weight: bold;
		display: block;
		position: absolute;
		right: 0;
		top: 0;
		line-height: 1.5;
		text-align: center;
		border: 1px solid #DA2A2C;
		box-sizing: border-box;
	}
	.mailForm table td {
		margin-bottom: 35px;
		padding: 0;
		width: 100%;
	}
	.mailForm table tr:last-of-type td {
		margin-bottom: 0;
	}
	.mailForm input[type="file"],
	.mailForm input[type="text"],
	.mailForm input[type="radio"],
	.mailForm input[type="checkbox"],
	.mailForm input[type="tel"],
	.mailForm input[type="email"],
	.mailForm input[type="submit"],
	.mailForm input[type="button"],
	.mailForm textarea {
		padding: 5px 10px;
		width: 100%;
	}
	.mailForm input[type="file"] {
		margin: 0 0 25px;
		background-color: #E5E5E5;
		border-color: #E5E5E5;
	}
	.mailForm textarea {
		height: 405px;
	}
	.mailForm table td .radioList span {
		margin-top: 12px;
		display: block;
	}
	.mailForm table td .radioList {
		margin-top: 0;
		display: block;
	}
	.mailForm table td .radioList :last-of-type {
		margin-bottom: 0;
	}
	.mailForm table td .radioList li {
		margin: 0 0 12px;
		width: auto;
	}
	.mailForm table td .checkList span.wpcf7-list-item {
		margin-left: 0;
	}
	.mailForm table td .radioList input + span {
		padding: 2px 0 2px 27px;
		font-size: 1.4rem;
		background-size: 17px auto;
	}
	.mailForm table td .radioList input:checked + span {
		background-image: url(img/common/icon07.png);
	}
	.mailForm table td span.wpcf7-list-item {
		margin-left: 0;
	}
	.mailForm .a-upload {
		display: block;
		margin-top: 15px;
	}
	.mailForm .fileerrorTip {
		margin-bottom: 24px;
		margin-right: 0;
		width: 100%;
		border: none;
		background-color: #E5E5E5;
	}
	.mailForm .showFileName {
		font-size: 1.5rem;
	}
	.mailForm p.agree {
		margin-bottom: 52px;
		padding-top: 40px;
	}
	.mailForm .agree input + span {
		font-size: 1.4rem;
	}
	.mailForm .submitList {
		display: block;
	}
	.mailForm .submitList li {
		margin: 0 auto 20px;
		width: auto;
		max-width: 330px;
	}
	.mailForm .submitList li:last-of-type {
		margin-bottom: 0;
	}
	.mailForm .submitList li input {
		font-size: 1.5rem;
	}
}
@media all and (max-width: 374px) {
	.mailForm .submitList li input {
		font-size: 1.2rem;
	}
	.mailForm .submitList li::after {
		width: 23px;
		height: 5px;
	}
}
/*------------------------------------------------------------
	comBtn
------------------------------------------------------------*/
.comBtn {
	margin: 0 auto;
	width: 330px;
}
.comBtn a {
	padding: 11px 60px;
	display: block;
	position: relative;
	color: #fff;
	font-weight: 500;
	font-size: 1.6rem;
	letter-spacing: 0.075em;
	border: 1px solid #fff;
	text-align: center;
	background: url(img/common/icon10.png) no-repeat right 20px top calc(50% - 1px) / 32px auto;
}
.comBtn a span {
	position: relative;
	z-index: 3;
}
.comBtn a::after {
	position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    -webkit-transition: opacity .5s cubic-bezier(0,.58,0,.96),-webkit-transform .5s cubic-bezier(0,.58,0,.96);
    -o-transition: transform .5s cubic-bezier(0,.58,0,.96),opacity .5s cubic-bezier(0,.58,0,.96);
    transition: opacity .5s cubic-bezier(0,.58,0,.96),-webkit-transform .5s cubic-bezier(0,.58,0,.96);
    transition: transform .5s cubic-bezier(0,.58,0,.96),opacity .5s cubic-bezier(0,.58,0,.96);
    transition: transform .5s cubic-bezier(0,.58,0,.96),opacity .5s cubic-bezier(0,.58,0,.96),-webkit-transform .5s cubic-bezier(0,.58,0,.96);
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    opacity: 0;
    background: #fff;
}
.comBtn.btn01 {
	width: 300px;
}
.comBtn.btn02 a {
	border-color: #000;
	color: #000;
	letter-spacing: 0.38em;
	background-image: url(img/common/icon15.png);
	background-position: right 40px top calc(50% - 1px);
}
.comBtn.btn01 a::after {
	background-color: #fff;
}
.comBtn.btn02 a::after {
	background-color: #000;
}
.comBtn.btn01 a {
	padding: 18px 60px;
	color: #fff;
	font-size: 1.5rem;
	letter-spacing: 0.04em;
	border-color: #000;
	background-image: url(img/common/icon05.png);
	background-color: #000;
}
@media all and (min-width: 897px) {
	.comBtn a:hover {
		color: #000;
	}
	.comBtn a:hover::after {
		-webkit-transform: scaleX(1);
		-ms-transform: scaleX(1);
		transform: scaleX(1);
		-webkit-transform-origin: left top;
		-ms-transform-origin: left top;
		transform-origin: left top;
		opacity: 1;
	}
	.comBtn.btn01 a:hover {
		color: #000;
	}
	.comBtn.btn02 a:hover {
		color: #fff;
	}
}
@media all and (max-width: 896px) {
	.comBtn {
		width: auto;
		max-width: 325px;
	}
	.comBtn a {
		padding: 11px 60px;
		font-size: 1.5rem;
	}
	.comBtn.btn01 {
		width: auto;
	}
	.comBtn.btn02 a {
		padding: 8px 60px;
		background-position: right 50px top calc(50% - 1px);
	}
	.comBtn.btn01 a {
		padding: 8px 60px;
	}
}

/*------------------------------------------------------------
	comPhotoList
------------------------------------------------------------*/
.comPhotoList {
	margin-top: -100px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.comPhotoList li {
	margin-top: 100px;
	width: 280px;
}
.comPhotoList li .pho {
	margin-bottom: 19px;
}
.comPhotoList li .pho span {
	width: 100%;
}
.comPhotoList li p {
	margin-bottom: 23px;
	text-align: center;
	line-height: 1.8;
	letter-spacing: 0.2em;
}
.comPhotoList li .comBtn {
	width: 280px;
}
.comPhotoList li .comBtn a {
	padding: 8px 60px 7px;
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: 0.38em;
}
@media all and (max-width: 896px) {
	.comPhotoList {
		margin-top: 0;
		display: block;
	}
	.comPhotoList li {
		margin: 0 0 51px;
		width: auto;
	}
	.comPhotoList li:last-child {
		margin-bottom: 0;
	}

	.comPhotoList li .pho img {
		width: 100%;
	}
	.comPhotoList li .pho {
		margin-bottom: 31px;
	}
	.comPhotoList li p {
		margin-bottom: 34px;
		font-size: 1.5rem;
	}
	.comPhotoList li .comBtn {
		width: auto;
	}
	.comPhotoList li .comBtn a {
		font-size: 1.6rem;
	}
}

/*------------------------------------------------------------
	comTable
------------------------------------------------------------*/
.comTable {
	width: 100%;
	border-collapse: collapse;
}
.comTable th,
.comTable td {
	padding: 17px 5px;
	width: 20%;
	font-size: 1.5rem; 
	font-weight: 400;
	line-height: 28px;
	word-break: break-all;
	text-align: left;
	vertical-align: middle;
	border-top: 1px solid #8A8A8A;
	box-sizing: border-box;
}
.comTable th small {
	margin-bottom: 15px;
	display: block;
	font-size: 1.2rem;
	line-height: 1;
}
.comTable td {
	padding: 17px 10px;
	width: 80%;
}
.comTable td ul {
	display: flex;
	justify-content: space-between;
}
.comTable td li {
	width: 316px;
}
@media all and (max-width: 896px) {
	.comTable th,
	.comTable td {
		padding: 18px 0 9px;
		width: 100% !important;
		float: left !important;
		font-size: 1.4rem;
		line-height: 2;
	}
	.comTable th small {
		margin: 0 0 0 15px;
		display: inline-block;
	}
	.comTable td {
		padding: 0 0 19px;
		border: none;
	}
	.comTable td ul {
		margin-top: -5px;
		display: block;
	}
	.comTable td li {
		margin-top: 13px;
		width: auto;
		line-height: 25px;
	}
}
/*------------------------------------------------------------
	comTable04
------------------------------------------------------------*/
.comTable04 {
	margin: 0 auto;
	width: 887px;
}
.comTable04 table{
	width: 100%;
	border-collapse: collapse;
}
.comTable04 th,
.comTable04 td {
	padding: 10px 5px 10px;
	color: #1A1311;
	text-align: center;
	font-size: 2.5rem;
	font-weight: 500;
	font-feature-settings: "palt";
	box-sizing: border-box;
	vertical-align: middle;
}
.comTable04 .sm,.comTable04 .num {
	font-size: 1.3rem;
	font-weight: 500;
	vertical-align: top;
}
.comTable04 .mid {
	display: block;
	font-size: 2.2rem;
	font-weight: 300;
	line-height: 1.3;
}
.comTable04 tr.grey th {
	color: #fff;
	border-right: 1px solid #fff;
	border-bottom: none;
	background-color: #4D4D4D;
}
.comTable04 tr.grey th:last-child,
.comTable04 tr.grey th:last-child {
	border-right: none;
	border-bottom: none;
}
.comTable04 tr.grey th.borer {
	border-right: 1px solid #fff;
}
.comTable04 th {
	width: 183px;
	border-right: 1px solid #2F2F2F;
	border-bottom: 1px solid #2F2F2F;
	background-color: #CFCFCF;
}
.comTable04 th .txt {
	position: relative;
	display: inline-block;
}
.comTable04 th .txt .sm {
	position: absolute;
	right: 2px;
	top: -12px;
}
.comTable04 .sty01 {
	width: 140px;
}
.comTable04 .sty02 {
	width: 245px;
}
.comTable04 .sty03 th {
	width: 100px;
	border-top: 1px solid #fff;
}
.comTable04 .sty04 {
	padding: 5px 4px 8px;
}
.comTable04 td {
	padding: 21px 4px;
	border-right: 1px solid #2F2F2F;
	border-bottom: 1px solid #2F2F2F;
	background-color: #fff;
}
.comTable04 td:last-child {
	border-right: none;
}
.comTable04 .text {
	margin-top: 10px;
	text-align: right;
	font-size: 1.4rem;
}
.comTable04 .noteList {
	margin-top: -14px;
	padding-left: 2em;
    text-indent: -2.2em;
    font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.64;
}
@media all and (max-width: 896px) {
	.comTable04 {
		width: auto;
	}
	.comTable04 th,
	.comTable04 td {
		padding: 5px 0 3px;
		font-size: 1.3rem;
		position: relative;
	}
	.comTable04 .sm,.comTable04 .num {
		font-size: 1rem;
		position: absolute;
	}
	.comTable04 .mid {
		font-size: 1.1rem;
	}
	.comTable04 .mid .sm {
		font-size: 1rem;
		top: 3px;
		right: 8px;
	}
	.comTable04 .mid .num {
		font-size: 0.6rem;
		transform: scale(0.65);
	}
	.comTable04 th {
		width: 59px;
	}
	.comTable04 th .txt .sm {
		top: -9px;
	}
	.comTable04 .sty01 {
		width: 64px;
	}
	.comTable04 .sty02 {
		width: 65px;
	}
	.comTable04 .sty03 th {
		width: 45px;
	}
	.comTable04 .sty04 {
		padding: 0 4px 2px;
	}
	.comTable04 .sty02 .mid {
		font-size: 1rem;
		line-height: 1;
	}
	.comTable04 .sty01 .mid {
		font-size: 1rem;
		line-height: 1;
	}
	.comTable04 td {
		padding: 8px 0;
		font-size: 1.2rem;
		letter-spacing: -0.02em;
	}
	.comTable04 .text {
		margin-top: 7px;
		font-size: 1.2rem;
	}
	.comTable04 .noteList {
		margin: -17px -4px 0 0;
		text-indent: -2em;
		font-size: 1.2rem;
		line-height: 1.5;
		letter-spacing: -0.024em;
	}
}
@media all and (max-width: 374px) {
	.comTable04 th, .comTable04 td {
		font-size: 1rem;
	}
	.comTable04 .mid .sm {
		font-size: 0.8rem;
	}
}
/*------------------------------------------------------------
	comImgList
------------------------------------------------------------*/
.comImgList li {
	margin: 0 25px;
	width: 269px;
}
.comImgList .ttl {
	margin-bottom: -2px;
	padding: 13px 4px 14px;
	font-weight: 500;
	font-size: 2.3rem;
	text-align: center;
	letter-spacing: 0.199em;
	background-color: #AE3E3B;
}
.comImgList li.sty02 .ttl {
	background-color: #4D4D4D;
}
.comImgList li.sty03 .ttl {
	background-color: #AE3E3B;
}
.comImgList li.sty04 .ttl {
	background-color: #575757;
}
.comImgList .ttl .mid {
	display: block;
	font-size: 1.5rem;
	letter-spacing: 0;
}
.comImgList .txt {
	margin-top: 19px;
	display: block;
	text-align: right;
	letter-spacing: 0.119em;
	font-size: 1.6rem;
}
.comImgList .txt .special {
	letter-spacing: 0;
}
.comImgList .txt img {
	margin: 0 5px;
	vertical-align: middle;
}
@media all and (max-width: 896px) {
	.comImgList {
		justify-content: space-between;
	}
	.comImgList li {
		margin: 0;
		width: 47%;
	}
	.comImgList li img {
		width: 100%;
	}
	.comImgList li .jsImg {
		width: 100%;
	}
	.comImgList .ttl {
		margin-bottom: 0;
		padding: 6px 4px;
		font-size: 1.4rem;
	}
	.comImgList .txt {
		margin-top: 10px;
		font-size: 1.4rem;
	}
	.comImgList .txt .special {
		font-size: 1.3rem;
	}
	.comImgList .txt img {
		margin: 0 2px;
        width: 32px;
	}
}
/*------------------------------------------------------------
	comPointBox
------------------------------------------------------------*/
.comPointBox {
	margin-bottom: 60px;
	padding: 0 22px 38px;
	display: flex;
	justify-content: space-between;
	box-sizing: border-box;
	border-bottom: 1px solid #707070;
}
.comPointBox:last-child {
	border-bottom: none;
}
.comPointBox .lBox {
	margin-top: 5px;
	width: 46.82%;
}
.comPointBox .rBox {
	width: 49.1%;
}
.comPointBox .lBox .num {
	margin-bottom: 17px;
	color: #6F6F6F;
	font-size: 2.7rem;
	font-weight: 400;
	letter-spacing: 0.075em;
}
.comPointBox .lBox .num .nm {
	padding-left: 7px;
	font-size: 4.18rem;
	font-weight: 500;
}
.comPointBox .lBox .ttl {
	margin-bottom: 21px;
	font-size: 2.4rem;
	letter-spacing: 0.199em;
	line-height: 1.875;
}
.comPointBox .lBox .text {
	line-height: 1.87;
}
.comPointBox .lBox .tag {
	margin: 24px 0 0 -3px;
}
.comPointBox .lBox .tag li {
	margin-right: 15px;
	padding: 13px 10px;
	display: inline-block;
	width: 41%;
	font-size: 2rem;
	letter-spacing: 0.2em;
	text-align: center;
	border-radius: 23px;
	box-sizing: border-box;
	background-color: #4d4d4d;
}
.comPointBox .lBox .tag li:last-child {
	margin-right: 0;
}
@media all and (max-width: 896px) {
	.comPointBox {
		margin-bottom: 48px;
		padding: 0 0 47px;
		display: block;
	}
	.comPointBox .lBox {
		margin: 0 0 53px;
		width: auto;
	}
	.comPointBox .rBox {
		width: auto;
	}
	.comPointBox .rBox .pho span {
		display: block;
	}
	.comPointBox .rBox .pho img {
		width: 100%;
	}
	.comPointBox .lBox .num {
		margin-bottom: 18px;
	}
	.comPointBox .lBox .num .nm {
		vertical-align: middle;
		margin-top: -14px;
		display: inline-block;
	}
	.comPointBox .lBox .ttl {
		margin-bottom: 11px;
		letter-spacing: 0.05em;
		line-height: 1.58;
	}
	.comPointBox .lBox .text {
		font-size: 1.4rem;
		letter-spacing: 0;
		line-height: 2;
		font-feature-settings: "palt";
	}
	.comPointBox .lBox .tag {
		margin: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.comPointBox .lBox .tag li {
		margin-right: 14px;
		padding: 20px;
		width: 42.6%;
		display: flex;
		align-items: center;
		justify-content: center;
		letter-spacing: 0.03em;
	}
}
/*------------------------------------------------------------
	comStyle
------------------------------------------------------------*/
.comStyle .pageTitle {
	margin-bottom: 84px;
}
.comStyle .pageTitle .inner {
	padding: 35px 0 0;
	height: 417px;
}
.comStyle .pageTitle h2 span {
	margin-top: 6px;
	font-size: 2rem;
	font-family: 'gothic';
	font-weight: 500;
	font-style: normal;
	letter-spacing: 0.358em;
}
.comStyle .sec01 .headLine02 {
	margin-bottom: 134px;
	letter-spacing: 0.17em;
}
.comStyle .sec02 {
	padding: 38px 0;
}
.comStyle .sec03 {
	padding: 48px 0 160px;
	position: relative;
}
.comStyle .sec03 .headLine06 {
	margin-bottom: 107px;
}
.comStyle .sec03 .headLine06 .jp {
	margin-top: -40px;
}
.comStyle .sec03::after {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: url(img/common/f_bg01.jpg) no-repeat center center / 100% 100%;
	content: '';
}
.comStyle .sec03 .pho {
	margin-left: 120px;
	text-align: center;
}
@media all and (max-width: 896px) {
	.comStyle .pageTitle {
		margin-bottom: 55px;
	}
	.comStyle .pageTitle .inner {
		padding: 0;
		height: 240px;
	}
	.comStyle .sec01 .headLine02 {
		margin: 0 15px 61px 23px;
		letter-spacing: 0.08em;
		line-height: 1.9;
		font-size: 2.1rem;
		text-align: left;
	}
	.comStyle .sec02 {
		padding: 23px 0;
	}
	.comStyle .sec03 {
		padding: 44px 0 93px;
	}
	.comStyle .sec03 .headLine06 {
		margin-bottom: 19px;
	}
	.comStyle .sec03 .headLine06 .jp {
		margin-top: -43px;
	}
	.comStyle .sec03::after {
		height: 5px;
	}
	.comStyle .sec03 .pho {
		margin-left: 1px;
	}
	.comStyle .sec03 .pho span {
		display: block;
	}
	.comStyle .sec03 .pho img {
		width: 100%;
	}
}
@media all and (max-width: 374px) {
    .comStyle .sec01 .headLine02 {
        font-size: 2rem;
    }
}
/*------------------------------------------------------------
	comLinkBox
------------------------------------------------------------*/
.comLinkBox .ttl {
	margin-bottom: 43px;
	text-align: center;
	font-size: 2.3rem;
	font-weight: 500;
	font-feature-settings: "palt";
	letter-spacing: 0.2em;
}
.comLinkBox {
	margin-bottom: 110px;
}
@media all and (max-width: 896px) {
	.comLinkBox {
		margin-bottom: 56px;
	}
	.comLinkBox .ttl {
		margin-bottom: 28px;
		font-size: 1.8rem;
	}
	.comLinkBox .comBtn a {
		padding: 11px 54px;
		font-size: 1.6rem;
		letter-spacing: 0.074em;
	}
}
@media all and (max-width: 374px) {
	.comLinkBox .comBtn a {
		font-size: 1.2rem;
	}
}
/*------------------------------------------------------------
	news
------------------------------------------------------------*/
#news .newsList {
	margin-bottom: 123px;
}
#news .newsList li {
	margin-bottom: 65px;
	padding-bottom: 65px;
	border-bottom: 1px solid #8A8A8A;
}
#news .newsList li:last-of-type {
	margin-bottom: 0;
}
#news .newsList .txtBox {
	margin: 0 auto;
	width: 475px;
}
#news .newsList .time {
	margin-bottom: 7px;
	color : #828282;
	font-size: 1.8rem;
	line-height: 1.5;
	font-family: 'Source Sans Pro', sans-serif;
}
#news .newsList p {
	font-size: 1.6rem;
	line-height: 2.19;
	letter-spacing: 0.1em;
}
#news .newsList p a {
	display: block;
}
@media all and (min-width: 897px) {
	#news .newsList p a:hover {
		text-decoration: underline;
	}
}
@media all and (max-width: 896px) {
	#news .newsList {
		margin-bottom: 60px;
	}
	#news .newsList li {
		margin-bottom: 30px;
		padding: 0 20px 32px;
	}
	#news .newsList li:last-of-type {
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: none;
	}
	#news .newsList .txtBox {
		margin: 0 auto;
		width: auto;
	}
	#news .newsList .time {
		margin-bottom: 7px;
		font-size: 1.7rem;
		line-height: 1.87;
	}
	#news .newsList p {
		font-size: 1.5rem;
		line-height: 1.87;
	}
	#news .newsList p a {
		display: block;
	}
}
/*------------------------------------------------------------
	news_detail
------------------------------------------------------------*/
#news_detail .pageTitle {
	margin-bottom: 86px;
}
#news_detail .comBox {
	width: 640px;
}
#news_detail .comBox .time {
	margin-bottom: 18px;
	color : #828282;
	font-size: 1.8rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	font-family: 'Source Sans Pro', sans-serif;
}
#news_detail .textBox {
	margin-bottom: 104px;
}
#news_detail .textBox h2 {
	margin-bottom: 39px;
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.1em;
}
#news_detail .textBox p {
	line-height: 2.33;
}
@media all and (max-width: 896px) {
	#news_detail .pageTitle {
		margin-bottom: 108px;
	}
	#news_detail .comBox {
		width: auto;
	}
	#news_detail .comBox .time {
		margin-bottom: 8px;
		font-size: 1.7rem;
	}
	#news_detail .textBox {
		margin-bottom: 57px;
	}
	#news_detail .textBox h2 {
		margin-bottom: 28px;
		font-size: 1.5rem;
		line-height: 1.87;
	}
	#news_detail .textBox p {
		font-size: 1.5rem;
		letter-spacing: 0.1em;
	}
}
/*------------------------------------------------------------
	contact
------------------------------------------------------------*/
#contact .pageTitle {
	margin-bottom: -7px;
	background: #000;
}
#contact .formBox {
	margin-bottom: 132px;
}
#contact .formBox .text {
	margin-bottom: 112px;
	line-height: 1.87;
	letter-spacing: 0.1em;
	text-align: center;
}
#contact .sec01 {
	margin-bottom: 190px;
	padding-top: 129px;
	position: relative;
}
#contact .sec01::before {
	width: 100%;
	height: 8px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#contact .sec01 .headLine01 {
	margin-bottom: 99px;
}
#contact .sec01 p {
	margin-bottom: 33px;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	text-align: center;
}
#contact .sec01 p:last-of-type {
	margin-bottom: 0;
}
#contact .sec01 p small {
	margin-top: 10px;
	display: block;
	font-size: 2rem;
	line-height: 1.95;
	font-family: 'Source Sans Pro', sans-serif;
}
@media all and (max-width: 896px) {
	#contact .pageTitle {
		margin-bottom: -34px;
	}
	#contact .pageTitle .inner {
		padding: 0 25px 32px;
	}
	#contact .formBox {
		margin-bottom: 58px;
	}
	#contact .formBox .text {
		margin-bottom: 63px;
		font-size: 1.4rem;
		line-height: 1.79;
	}
	#contact .sec01 {
		margin-bottom: 92px;
		padding-top: 52px;
	}
	#contact .sec01::before {
		height: 5px;
	}
	#contact .sec01 .headLine01 {
		margin-bottom: 57px;
	}
	#contact .sec01 p {
		margin-bottom: 36px;
		font-size: 1.7rem;
	}
	#contact .sec01 p small {
		margin-top: 10px;
		font-size: 1.9rem;
		line-height: 2.05;
	}
}
@media all and (max-width: 374px) {
	#contact .sec01 p {
		font-size: 1.4rem;
	}
	#contact .sec01 p small {
		font-size: 1.5rem;
	}
}
#contact .stepTxt2 {
	display: none;
}
/*------------------------------------------------------------
	confirm
------------------------------------------------------------*/
#contact.confirm .stepTxt2 {
	display: block;
}
#contact.confirm .stepTxt1 {
	display: none;
}
#contact.confirm .pageTitle {
	display: none;
}
#contact.confirm .formBox {
	margin-bottom: 202px;
	padding-top: 179px;
}
#contact.confirm .formBox .text {
	margin-bottom: 198px;
}
#contact.confirm .mailForm {
	padding-top: 55px;
}
#contact.confirm .formBox table {
	margin-bottom: 45px;
}
#contact.confirm .formBox table th,
#contact.confirm .formBox table td {
	padding: 36px 0 35px;
	line-height: 1.86;
	font-size: 1.5rem;
	font-feature-settings: 'palt';
	border-bottom: 1px solid #464646;
}
#contact.confirm .formBox table tr:last-of-type th,
#contact.confirm .formBox table tr:last-of-type td {
	border-bottom: none;
}
#contact.confirm .fileTxt {
	text-decoration: underline;
}
@media all and (max-width: 896px) {
	#contact.confirm .formBox {
		margin-bottom: 100px;
		padding-top: 104px;
	}
	#contact.confirm .formBox .text {
		margin-bottom: 101px;
	}
	#contact.confirm .mailForm {
		padding-top: 50px;
	}
	#contact.confirm .formBox table {
		margin-bottom: 48px;
	}
	#contact.confirm .formBox table th {
		margin-bottom: 22px;
		border-bottom: none;
	}
	#contact.confirm .formBox table th,
	#contact.confirm .formBox table td {
		padding: 0;
		line-height: 1.79;
		font-size: 1.4rem;
	}
	#contact.confirm .formBox table td {
		margin-bottom: 34px;
		padding-bottom: 8px;
	}
	#contact.confirm .formBox table tr:last-of-type td {
		margin-bottom: 0;
	}
	#contact.confirm .formBox table tr:last-of-type th,
	#contact.confirm .formBox table tr:last-of-type td {
		border-bottom: none;
	}
}
/*------------------------------------------------------------
	thanks
------------------------------------------------------------*/
#thanks .textBox {
	margin-bottom: 200px;
	padding-top: 164px;
}
#thanks .textBox .headLine01 {
	margin-bottom: 63px;
}
#thanks .textBox p {
	margin-bottom: 171px;
	text-align: center;
	line-height: 1.87;
	letter-spacing: 0.1em;
}
@media all and (max-width: 896px) {
	#thanks .textBox {
		margin-bottom: 100px;
		padding-top: 87px;
	}
	#thanks .textBox .headLine01 {
		margin-bottom: 88px;
	}
	#thanks .textBox p {
		margin-bottom: 39px;
		font-size: 1.4rem;
		line-height: 1.79;
	}
}
/*------------------------------------------------------------
	company
------------------------------------------------------------*/
#company .pageTitle {
	margin-bottom: 80px;
	background-image: url(img/company/page_title_bg.jpg);
}
#company .summary {
	margin-bottom: 108px;
}
#company .summary .comBox {
	width: 862px;
}
#company .group,
#company .history {
	padding-top: 109px;
	position: relative;
}
#company .group::before,
#company .history::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#company .group {
	margin-bottom: 134px;
}
#company .group .comBox {
	width: 862px;
}
#company .group h4 {
	margin-bottom: 38px;
	font-size: 2.3rem;
	font-weight: 400;
	letter-spacing: 0.2em;
	line-height: 3.26;
	text-align: center;
	font-feature-settings: "palt";
}
#company .group h4 b {
	font-weight: 400;
}
#company .group h5 {
	margin: -25px 0 16px;
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 32px;
	text-align: center;
	font-feature-settings: "palt";
}
#company .group .comTable {
	margin-bottom: 67px;
}
#company .group .comTable01 {
	margin-bottom: 89px;
}
#company .group .comTable03,
#company .group .comTable02 {
	margin-bottom: 106px;
}
#company .group .comTable th,
#company .group .comTable td {
	border-bottom: 1px solid #8A8A8A;
}
#company .group .textInner {
	margin-bottom: 40px;
	padding-top: 38px;
	display: flex;
	justify-content: space-between;
	border-top: 1px solid #8A8A8A;
}
#company .group .textInner dl {
	width: 402px;
}
#company .group .textInner dt {
	margin-bottom: 14px;
	font-feature-settings: "palt";
}
#company .group .textInner dd .comTable th,
#company .group .textInner dd .comTable td {
	padding: 16px 5px;
	width: 27%;
}
#company .group .textInner dd .comTable td {
	padding: 16px 5px;
	width: 73%;
}
#company .history {
	margin-bottom: 148px;
}
#company .history .headLine02 {
	margin-bottom: 98px;
}
#company .history .tabList {
	margin-bottom: 23px;
	padding-right: 67px;
	display: flex;
	justify-content: flex-end;
}
#company .history .tabList li {
	width: 345px;
	font-size: 2rem;
	letter-spacing: 0.2em;
	line-height: 37px;
	text-align: center;
}
#company .history .tabPlane {
	display: flex;
	justify-content: space-between;
	border-top: 1px solid #8A8A8A;
}
#company .history .tabBox {
	width: 588px;
}
#company .history .tabBox dl {
	display: flex;
	flex-wrap: wrap;
}
#company .history .tabBox dt {
	padding: 35px 0 0 45px;
	width: 244px;
	position: relative;
	font-size: 1.8rem;
	line-height: 27px;
	text-align: center;
	border-right: 1px solid #8A8A8A;
	box-sizing: border-box;
	z-index: 2;
}
#company .history .tabBox dt span {
	display: block;
	position: absolute;
	left: -5px;
	top: 12px;
	color: #323232;
	font-size: 5.5rem;
	line-height: 1;
	z-index: -1;
}
#company .history .tabBox dt::after {
	width: 10px;
	height: 10px;
	position: absolute;
	right: -5px;
	top: 42px;
	border-radius: 50%;
	background: #fff;
	content: "";
	z-index: 1;
}
#company .history .tabBox dd {
	padding: 35px 25px 0 30px;
	width: 344px;
	position: relative;
	line-height: 28px;
	text-align: justify;
	text-justify: inter-ideograph;
	border-right: 1px solid #8A8A8A;
	box-sizing: border-box;
}
#company .history .tabBox dd span {
	width: 686px;
	display: block;
	position: absolute;
	top: 55px;
	right: -342px;
	text-align: center;
}
#company .history .tabBox .pt01 {
	padding-top: 71px;
}
#company .history .tabBox .pt01::after {
	top: 77px;
}
#company .history .tabBox .ddStyle01 {
	border: none;
	z-index: 3;
}
#company .history .tabBox .ddStyle01::before {
	width: 1px;
	height: 40px;
	position: absolute;
	right: 0;
	top: -35px;
	background: #000;
	content: "";
}
#company .history .tabBox .ddStyle01::after {
	width: 1px;
	height: 66px;
	position: absolute;
	right: 0;
	top: -35px;
	border-right: 1px dashed #8A8A8A;
	content: "";
}
#company .history .tabBox02 {
	width: 410px;
}
#company .history .tabBox02 dt {
	display: none;
}
#company .history .tabBox02 dd {
	padding-right: 30px;
	width: 342px;
}
@media all and (max-width: 896px) {
	#company .pageTitle {
		margin-bottom: 80px;
		background-image: url(img/company/sp_page_title_bg.jpg);
	}
	#company .pageTitle .inner {
		padding: 0 20px 14px 50px;
		height: 203px;
	}
	#company .pageTitle h2 {
		letter-spacing: 0.4em;
	}
	#company .comScroll a {
		bottom: -10px;
	}
	#company .summary {
		margin-bottom: 30px;
	}
	#company .summary .comBox {
		width: auto;
	}
	#company .group,
	#company .history {
		padding-top: 37px;
	}
	#company .group::before,
	#company .history::before {
		height: 5px;
	}
	#company .group {
		margin-bottom: 56px;
	}
	#company .group .comBox {
		width: auto;
	}
	#company .group .headLine02 {
		margin-bottom: 21px;
	}
	#company .group h4 {
		margin-bottom: 40px;
		font-size: 2.5rem;
	}
	#company .group h4.ttlBtn {
		margin-bottom: -1px;
		padding: 15px;
		display: flex;
		justify-content: space-between;
		font-size: 1.5rem;
		letter-spacing: 0.12em;
		text-align: left;
		border-top: 1px solid #8A8A8A;
		border-bottom: 1px solid #8A8A8A;
	}
	#company .group h4.ttlBtn span {
		padding-right: 24px;
		font-size: 1.4rem;
		background: url(img/common/icon12.png) no-repeat right center / 15px auto;
	}
	#company .group h4.ttlBtn.on span {
		background-image: url(img/common/icon13.png);
	}
	#company .group h5 {
		margin-bottom: 30px;
	}
	#company .group .area {
		display: none;
	}
	#company .group .comTable {
		margin-bottom: 15px;
	}
	#company .group .comTable01 {
		margin-bottom: -1px;
	}
	#company .group .comTable02 {
		margin-bottom: -1px;
	}
	#company .group .comTable03 {
		margin-bottom: 70px;
	}
	#company .group .comTable th,
	#company .group .comTable td {
		padding: 18px 0 0 !important;
		border-bottom: none;
	}
	#company .group .comTable td {
		padding: 0 0 18px !important;
	}
	#company .group .textInner {
		margin-bottom: 70px;
		padding-top: 0;
		display: block;
		border-top: none;
	}
	#company .group .textInner dl {
		margin-bottom: 35px;
		width: auto;
	}
	#company .group .textInner dt {
		margin-bottom: 12px;
		font-size: 1.6rem;
		text-align: center;
	}
	#company .group .textInner dd .comTable,
	#company .group .comTable01,
	#company .group .comTable02,
	#company .group .comTable03 {
		border-bottom: 1px solid #8A8A8A;
	}
	#company .group .textInner dd .comTable th,
	#company .group .comTable01 th {
		font-size: 1.5rem;
	}
	#company .group .textInner dd .comTable td,
	#company .group .comTable01 td {
		line-height: 25px;
	}
	#company .history {
		margin-bottom: 98px;
	}
	#company .history .headLine02 {
		margin-bottom: 36px;
	}
	#company .history .tabList {
		margin-bottom: 57px;
		padding-right: 0;
		justify-content: space-between;
	}
	#company .history .tabList li {
		padding-bottom: 11px;
		width: 46%;
		position: relative;
		color: #323232;
		font-size: 1.5rem;
		line-height: 25px;
		border-bottom: 1px solid #323232;
	}
	#company .history .tabList li.on {
		color: #fff;
	}
	#company .history .tabList li.on::before {
		width: 100%;
		height: 3px;
		position: absolute;
		left: 0;
		bottom: -1px;
		background: #fff;
		content: "";
	}
	#company .history .tabPlane {
		display: block;
		border-top: none;
	}
	#company .history .tabPlane .title {
		margin-bottom: 29px;
		font-size: 1.8rem;
		line-height: 24px;
		text-align: center;
		letter-spacing: 0.2em;
	}
	#company .history .tabBox {
		width: auto;
		display: none;
	}
	#company .history .tabBox dl {
		justify-content: space-between;
		border-top: 1px solid #8A8A8A;
	}
	#company .history .tabBox dt {
		margin-left: -25px;
		padding: 32px 0 0 0;
		width: 116px !important;
		font-size: 1.4rem;
		line-height: 21px;
	}
	#company .history .tabBox dt span {
		left: auto;
		right: 3px;
		top: 12px;
		font-size: 2.88rem;
		letter-spacing: 0.1em;
	}
	#company .history .tabBox dt b {
		font-weight: 400;
	}
	#company .history .tabBox dt::after {
		top: 37px;
	}
	#company .history .tabBox dd {
		padding: 32px 0 0 22px;
		width: calc(100% - 91px) !important;
		font-size: 1.5rem;
		line-height: 25px;
		border-right: none;
	}
	#company .history .tabBox dd span {
		width: auto;
		display: inline;
		position: static;
		top: auto;
		right: auto;
		text-align: left;
	}
	#company .history .tabBox .pt01 {
		padding-top: 32px;
	}
	#company .history .tabBox .pt01::after {
		top: 37px;
	}
	#company .history .tabBox .dtStyle01,
	#company .history .tabBox .ddStyle01,
	#company .history .tabBox .ddStyle02 {
		padding-top: 80px;
	}
	#company .history .tabBox .dtStyle01::after {
		top: 84px;
	}
	#company .history .tabBox .ddStyle01::before {
		display: none;
	}
	#company .history .tabBox .ddStyle01::after {
		height: 40px;
		right: auto;
		left: 70px;
		top: 20px;
	}
	#company .history .tabBox .ddStyle02::after {
		width: 1px;
		height: 40px;
		position: absolute;
		left: 70px;
		top: 20px;
		border-right: 1px dashed #8A8A8A;
		content: "";
	}
	#company .history .tabBox02 {
		width: auto;
	}
	#company .history .tabBox02 dt {
		display: block;
	}
	#company .history .tabBox02 dd {
		padding-right: 0;
	}
}
@media all and (max-width: 374px) {
	#company .history .tabList li {
		font-size: 1.2rem;
	}
}
/*------------------------------------------------------------
	contribution
------------------------------------------------------------*/
#contribution .pageTitle {
	margin-bottom: 74px;
	background-image: url(img/contribution/page_title_bg.jpg);
}
#contribution .topText {
	margin-bottom: 132px;
	font-size: 3rem;
	letter-spacing: 0.17em;
	line-height: 71px;
	text-align: center;
	font-feature-settings: "palt";
}
#contribution .intro {
	margin-bottom: 130px;
}
#contribution .intro .imgBox {
	margin-bottom: 66px;
	display: flex;
	justify-content: space-between;
}
#contribution .intro .imgBox .photoBox {
	width: 49%;
}
#contribution .intro .imgBox .photoBox span {
	width: 100%;
}
#contribution .intro .imgBox .textBox {
	padding-bottom: 7px;
	width: 47.3%;
	display: flex;
	align-items: center;
	font-feature-settings: "palt";
}
#contribution .intro .imgBox .textBox h3 {
	margin-bottom: 8px;
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.17em;
}
#contribution .intro .imgBox .textBox h3 span {
	margin-bottom: 25px;
	padding-bottom: 5px;
	display: block;
	position: relative;
	color: #737373;
	font-size: 2.7rem;
	font-weight: 600;
	letter-spacing: 0.2em;
	line-height: 1.75;
	font-family: 'Source Sans Pro', sans-serif;
}
#contribution .intro .imgBox .textBox h3 span::before {
	width: 42px;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: #808080;
	content: "";
}
#contribution .intro .imgBox .textBox p {
	font-size: 1.8rem;
	letter-spacing: 0.17em;
	line-height: 2;
}
#contribution .intro .imgBoxR {
	margin-bottom: 68px;
	flex-direction: row-reverse;
}
#contribution .intro .imgBoxR .textBox {
	justify-content: flex-end;
}
#contribution .intro .textList {
	display: flex;
	justify-content: space-between;
	font-feature-settings: "palt";
}
#contribution .intro .textList:not(:last-child) {
	margin-bottom: 104px;
}
#contribution .intro .textList > li {
	padding-bottom: 27px;
	width: 472px;
	border: 1px solid #fff;
	box-sizing: border-box;
}
#contribution .intro .textList li .ttl {
	margin-bottom: 26px;
	padding: 13px 10px 14px;
	display: flex;
	justify-content: center;
	align-items: center;
	letter-spacing: 0.17em;
	line-height: 2;
	text-align: center;
	border-bottom: 1px solid #fff;
}
#contribution .intro .textList .subList {
	margin: 0 0 0 30px;
}
#contribution .intro .textList .subList li {
	letter-spacing: 0.17em;
	line-height: 1.4;
}
#contribution .intro .textList .subList li:not(:last-child) {
	margin-bottom: 20px;
}
#contribution .intro .textList.textUl {
	margin-bottom: 138px;
	justify-content: center;
}
#contribution .intro .textList.textUl li {
	width: 527px;
	padding: 0;
	border-color: #8A8A8A;
}
#contribution .intro .textList.textUl .subList {
	margin: 0;
}
#contribution .intro .textList.textUl .subList li {
	margin: 0;
	padding: 5px 20px 5px 50px;
	width: auto;
}
#contribution .intro .textList.textUl .subList li a {
	color: #4ec5fc;
    opacity: 1;
    text-decoration: underline;
}
#contribution .intro .textList.textUl .subList li a:hover {
	opacity: 0.7;
}
#contribution .intro .textList.textUl .subList li span {
	display: inline-block;
	vertical-align: top;
	padding-left: 0.65em;
	text-indent: -0.65em;
}
#contribution .intro .textList.textUl .subList li:not(:last-of-type) {
	border-bottom: 1px solid #8A8A8A;
}
#contribution .future {
	margin-bottom: 200px;
	padding-top: 109px;
	position: relative;
	font-feature-settings: "palt";
}
#contribution .future::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#contribution .future .headLine02 {
	margin-bottom: 68px;
	letter-spacing: 0.12em;
}
#contribution .future p {
	margin-bottom: 74px;
	letter-spacing: 0.17em;
	line-height: 29px;
	text-align: center;
}
#contribution .future .img a {
	display: inline-block;
	vertical-align: top;
	background-color: #fff;
}
#contribution .future .img img {
	width: 100%;
	transition: .3s;
}
@media all and (min-width: 897px) {
	#contribution .intro .textList01 > li {
		width: 50%;
	}
	#contribution .intro .textList01 > li:first-of-type,
	#contribution .intro .textList01 li:first-of-type .ttl {
		border-right: none;
	}
	#contribution .intro .textList01 > li:last-of-type,
	#contribution .intro .textList01 li:last-of-type .ttl {
		border-left: none;
	}
	#contribution .intro .textList01 li:first-of-type .ttl {
		padding-left: 60px;
	}
	#contribution .intro .textList01 li:first-of-type .subList {
		margin-left: 70px;
	}
	#contribution .future .img a:hover img {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#contribution .pageTitle {
		margin-bottom: 55px;
		background-image: url(img/contribution/sp_page_title_bg.jpg);
	}
	#contribution .pageTitle .inner {
		padding: 0 25px 10px 45px;
	}
	#contribution .topText {
		margin-bottom: 59px;
		font-size: 2.1rem;
		font-weight: 500;
		letter-spacing: 0.2em;
		line-height: 40px;
	}
	#contribution .intro {
		margin-bottom: 55px;
	}
	#contribution .intro .imgBox {
		margin: 0 25px 46px 26px;
		display: block;
	}
	#contribution .intro .imgBox .photoBox {
		margin-bottom: 24px;
		width: auto;
	}
	#contribution .intro .imgBox .photoBox img {
		width: 100%;
	}
	#contribution .intro .imgBox .textBox {
		padding-bottom: 0;
		width: auto;
		display: block;
	}
	#contribution .intro .imgBox .textBox h3 {
		margin-bottom: 15px;
		font-size: 2rem;
		letter-spacing: 0.11em;
	}
	#contribution .intro .imgBox .textBox h3 span {
		margin-bottom: 8px;
		font-size: 2.2rem;
	}
	#contribution .intro .imgBox .textBox p {
		font-size: 1.5rem;
		line-height: 2.4;
	}
	#contribution .intro .imgBoxR {
		margin-bottom: 46px;
	}
	#contribution .intro .textList {
		display: block;
	}
	#contribution .intro .textList:not(:last-child) {
		margin-bottom: 65px;
	}
	#contribution .intro .textList > li {
		padding-bottom: 37px;
		width: auto;
	}
	#contribution .intro .textList > li:not(:last-child) {
		margin-bottom: 40px;
	}
	#contribution .intro .textList li .ttl {
		margin-bottom: 35px;
		padding: 13px 10px 14px;
		min-height: 88px;
		font-size: 1.5rem;
		box-sizing: border-box;
	}
	#contribution .intro .textList .subList {
		margin: 0 10px 0 30px;
	}
	#contribution .intro .textList .subList li {
		font-size: 1.4rem;
		letter-spacing: 0.1em;
		line-height: 19px;
	}
	#contribution .intro .textList .subList li:not(:last-child) {
		margin-bottom: 22px;
	}
	#contribution .intro .textList01 > li:not(:last-child) {
		margin-bottom: -1px;
	}
	#contribution .intro .textList.textUl {
		margin-bottom: 58px;
	}
	#contribution .intro .textList.textUl li {
		width: auto;
	}
	#contribution .intro .textList.textUl .subList {
		margin: 0;
	}
	#contribution .intro .textList.textUl .subList li {
		margin: 0;
		padding: 6px 8px;
		width: auto;
	}
	#contribution .intro .textList.textUl.list01 .subList li span {
		padding-left: 0;
		text-indent: 0;
	}
	#contribution .intro .textList.textUl .subList li:not(:last-of-type) {
		border-bottom: 1px solid #8A8A8A;
	}
	#contribution .future {
		margin-bottom: 100px;
		padding-top: 56px;
	}
	#contribution .future::before {
		height: 5px;
	}
	#contribution .future .headLine02 {
		margin-bottom: 40px;
		font-size: 2.1rem;
		letter-spacing: 0.2em;
		line-height: 40px;
	}
	#contribution .future p {
		margin-bottom: 38px;
		font-size: 1.4rem;
		line-height: 28px;
	}
	#contribution .future .img {
		text-align: center;
		background: #F1F1F1;
	}
}
@media all and (max-width: 374px) {
	#contribution .intro .textList .subList {
		margin: 0 10px;
	}
	#contribution .future p {
		font-size: 1.3rem;
	}
	#contribution .intro .textList.textUl .subList li {
		font-size: 1.2rem;
	}
}
/*------------------------------------------------------------
	cae
------------------------------------------------------------*/
#cae .pageTitle {
	margin-bottom: 72px;
	background-image: url(img/cae_analysis/page_title_bg.jpg);
}
#cae .topText {
	margin-bottom: 89px;
	font-size: 3rem;
	letter-spacing: 0.2em;
	line-height: 75px;
	text-align: center;
	font-feature-settings: "palt";
}
#cae .reason {
	margin-bottom: 132px;
	width: 885px;
}
#cae .reason .textInner {
	margin-bottom: 118px;
	padding: 42px 35px 36px 101px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	line-height: 28px;
	background: #323232;
}
#cae .reason .textInner .title {
	margin-bottom: 16px;
	width: 200px;
	font-size: 2.2rem;
	font-weight: 500;
	letter-spacing: 0.11em;
	font-feature-settings: "palt";
}
#cae .reason .textInner .rBox {
	width: 530px;
}
#cae .reason .textInner .rBox .sml {
	margin-top: 13px;
	font-size: 1.4rem;
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}
#cae .reason .imgBox {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#cae .reason .imgBox:not(:last-child) {
	margin-bottom: 77px;
}
#cae .reason .imgBox .photoBox {
	width: 430px;
}
#cae .reason .imgBox .photoBox span {
	width: 100%;
}
#cae .reason .imgBox .textBox {
	width: 392px;
}
#cae .reason .imgBox .textBox h3 {
	margin-bottom: 32px;
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0.11em;
	line-height: 43px;
	font-feature-settings: "palt";
}
#cae .reason .imgBox .textBox p {
	line-height: 28px;
	text-align: justify;
	text-justify: inter-ideograph;
}
#cae .use {
	margin-bottom: 138px;
	padding-top: 122px;
	position: relative;
}
#cae .use::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#cae .use h3 {
	margin-bottom: 84px;
	font-size: 3.6rem;
	letter-spacing: 0.12em;
	font-weight: 500;
	text-align: center;
	font-feature-settings: "palt";
}
#cae .use .headLine01 {
	margin-bottom: 100px;
	letter-spacing: 0.12em;
	font-feature-settings: "palt";
}
#cae .use .imgBox {
	margin-left: calc((100% - 1000px) / 2);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
}
#cae .use .imgBox:not(:last-child) {
	margin-bottom: 92px;
}
#cae .use .imgBox .photoBox {
	width: calc(100% - 512px);
}
#cae .use .imgBox .photoBox span {
	width: 100%;
}
#cae .use .imgBox .photoBox img {
	width: 100%;
}
#cae .use .imgBox .textBox {
	margin-left: 57px;
	padding-top: 10px;
	width: 400px;
	line-height: 28px;
}
#cae .use .imgBox .textBox .title,
#cae .use .textArea .lBox .title {
	margin-bottom: 30px;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.11em;
	font-feature-settings: "palt";
}
#cae .use .imgBox .textBox .title span,
#cae .use .textArea .lBox .title span {
	margin-right: 20px;
	font-size: 4.5rem;
	font-weight: 600;
	letter-spacing: 0;
	font-family: 'Source Sans Pro', sans-serif;
}
#cae .use .imgBox .textBox .emText,
#cae .use .textArea .lBox .emText {
	margin-bottom: 46px;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 43px;
	letter-spacing: 0.11em;
	font-feature-settings: "palt";
}
#cae .use .imgBoxR {
	margin-right: calc((100% - 1000px) / 2);
	margin-left: 0;
	flex-direction: row;
}
#cae .use .imgBoxR .textBox {
	margin: 0 57px 0 0;
}
#cae .use .imgList {
	padding: 47px 100px 42px;
	background: #2F2F2F;
}
#cae .use .imgList:not(:last-child) {
	margin-bottom: 86px;
}
#cae .use .imgList li {
	padding-right: 24px;
}
#cae .use .imgList li:not(:last-child) {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #898989;
}
#cae .use .imgList li .imgInn {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#cae .use .imgList li .imgInn .phoInn {
	width: 388px;
}
#cae .use .imgList li .imgInn .phoInn span {
	width: 100%;
}
#cae .use .imgList li .imgInn .txtInn {
	width: 324px;
	line-height: 28px;
	text-align: justify;
	text-justify: inter-ideograph;
}
#cae .use .imgList li .imgInn .txtInn .ttl {
	margin-bottom: 12px;
	font-size: 2.5rem;
	letter-spacing: 0.11em;
}
#cae .use .textArea {
	margin-bottom: 58px;
	padding: 0 114px 66px 56px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	line-height: 28px;
	border-bottom: 1px solid #898989;
}
#cae .use .textArea .lBox {
	width: 425px;
}
#cae .use .textArea .lBox .title {
	margin-bottom: 25px;
}
#cae .use .textArea .lBox .emText {
	margin: 0;
}
#cae .use .textArea .rBox {
	width: 394px;
	text-align: justify;
	text-justify: inter-ideograph;
}
@media all and (max-width: 896px) {
	#cae .pageTitle {
		margin-bottom: 55px;
		background-image: url(img/cae_analysis/sp_page_title_bg.jpg);
	}
	#cae .pageTitle .inner {
		padding: 0 25px 15px 43px;
	}
	#cae .topText {
		margin-bottom: 44px;
		font-size: 2.1rem;
		font-weight: 500;
		letter-spacing: 0.2em;
		line-height: 40px;
	}
	#cae .reason {
		margin-bottom: 49px;
		width: auto;
	}
	#cae .reason .textInner {
		margin-bottom: 80px;
		padding: 49px 23px 51px;
		display: block;
	}
	#cae .reason .textInner .title {
		margin-bottom: 36px;
		width: auto;
		font-size: 2rem;
		text-align: center;
	}
	#cae .reason .textInner .rBox {
		width: auto;
		font-size: 1.4rem;
	}
	#cae .reason .textInner .rBox .sml {
		margin-top: 1px;
		font-size: 1.3rem;
	}
	#cae .reason .imgBox {
		display: block;
	}
	#cae .reason .imgBox:not(:last-child) {
		margin-bottom: 95px;
	}
	#cae .reason .imgBox .photoBox {
		margin-bottom: 21px;
		width: auto;
	}
	#cae .reason .imgBox .photoBox img {
		width: 100%;
	}
	#cae .reason .imgBox .textBox {
		width: auto;
	}
	#cae .reason .imgBox .textBox h3 {
		margin-bottom: 16px;
		font-size: 2rem;
	}
	#cae .reason .imgBox .textBox p {
		font-size: 1.4rem;
	}
	#cae .use {
		margin-bottom: 100px;
		padding-top: 50px;
	}
	#cae .use::before {
		height: 5px;
	}
	#cae .use h3 {
		margin-bottom: 50px;
		font-size: 2.1rem;
		letter-spacing: 0.2em;
		line-height: 40px;
	}
	#cae .use .headLine01 {
		margin-bottom: 49px;
		font-size: 2rem;
	}
	#cae .use .imgBox {
		margin-left: 0;
		display: block;
	}
	#cae .use .imgBox:not(:last-child) {
		margin-bottom: 53px;
	}
	#cae .use .imgBox .photoBox {
		margin: 0 0 50px 52px;
		width: auto;
	}
	#cae .use .imgBox .textBox {
		margin: 0 25px;
		padding-top: 0;
		width: auto;
		font-size: 1.4rem;
	}
	#cae .use .imgBox .textBox .title,
	#cae .use .textArea .lBox .title {
		margin-bottom: 32px;
		font-size: 2.6rem;
	}
	#cae .use .imgBox .textBox .title span,
	#cae .use .textArea .lBox .title span {
		margin-right: 17px;
		font-size: 3.9rem;
	}
	#cae .use .imgBox .textBox .emText,
	#cae .use .textArea .lBox .emText {
		margin-bottom: 16px;
		margin-right: -10px;
		font-size: 2rem;
	}
	#cae .use .imgBoxR {
		margin: 0 0 26px !important;
		margin-left: 0;
		flex-direction: row;
	}
	#cae .use .imgBoxR .photoBox {
		margin: 0 52px 50px 0;
	}
	#cae .use .imgBoxR .textBox {
		margin: 0 25px;
	}
	#cae .use .imgList {
		padding: 44px 23px 38px;
	}
	#cae .use .imgList:not(:last-child) {
		margin-bottom: 44px;
	}
	#cae .use .imgList li {
		padding-right: 0;
	}
	#cae .use .imgList li:not(:last-child) {
		margin-bottom: 30px;
		padding-bottom: 23px;
	}
	#cae .use .imgList li .imgInn {
		display: block;
	}
	#cae .use .imgList li .imgInn .phoInn {
		margin-bottom: 20px;
		width: auto;
	}
	#cae .use .imgList li .imgInn .phoInn img {
		width: 100%;
	}
	#cae .use .imgList li .imgInn .txtInn {
		width: auto;
		font-size: 1.4rem;
		letter-spacing: 0.025em;
	}
	#cae .use .imgList li .imgInn .txtInn .ttl {
		margin-bottom: 9px;
		font-size: 1.8rem;
	}
	#cae .use .textArea {
		margin-bottom: 30px;
		padding: 0 0 30px;
		display: block;
		font-size: 1.4rem;
	}
	#cae .use .textArea .lBox {
		width: auto;
	}
	#cae .use .textArea .lBox .title {
		margin-bottom: 33px;
	}
	#cae .use .textArea .lBox .emText {
		margin: 0 0 17px;
	}
	#cae .use .textArea .rBox {
		width: auto;
	}
}
/*------------------------------------------------------------
	topics
------------------------------------------------------------*/
#news.topics .pageTitle {
	background-image: url(img/topics/page_title_bg.jpg);
}
@media all and (max-width: 896px) {
	#news.topics .pageTitle {
		background-image: url(img/topics/sp_page_title_bg.jpg);
	}
	#news.topics .pageTitle .inner {
		padding: 0 15px 20px 40px;
		height: 200px;
	}
	#news.topics .pageTitle .comScroll a {
		bottom: -11px;
	}
}
/*------------------------------------------------------------
	topics_detail
------------------------------------------------------------*/
#topics_detail .pageTitle {
	margin-bottom: 93px;
	background-image: url(img/topics/page_title_bg.jpg);
}
#topics_detail .interview {
	margin-bottom: 151px;
	padding-bottom: 49px;
	position: relative;
	background: url(img/topics/detail/imgtext01.png) no-repeat center bottom / 1377px auto;
}
#topics_detail .interview::before {
	width: 100%;
	height: 1370px;
	position: absolute;
	top: 760px;
	right: 0;
	background: url(img/topics/detail/bg01.png) no-repeat center center / 100% 100%;
	content: "";
	z-index: -1;
}
#topics_detail .interview .topText {
	margin-bottom: 81px;
	font-size: 3rem;
	letter-spacing: 0.2em;
	line-height: 71px;
	text-align: center;
	font-feature-settings: "palt";
}
#topics_detail .interview h3 {
	margin-bottom: 27px;
	padding-bottom: 31px;
	position: relative;
	font-size: 2.7rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-align: center;
	font-feature-settings: "palt";
}
#topics_detail .interview h3::before {
	margin-left: -30px;
	width: 60px;
	height: 1px;
	position: absolute;
	left: 50%;
	bottom: 0;
	background: #fff;
	content: "";
}
#topics_detail .interview .ctrText {
	margin-bottom: 64px;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	line-height: 56px;
	text-align: center;
	font-feature-settings: "palt";
}
#topics_detail .interview ul {
	display: flex;
	justify-content: center;
}
#topics_detail .interview li {
	margin: 0 24px;
	width: 344px;
	line-height: 1.75;
}
#topics_detail .interview li .txtBox {
	margin: -73px 0 0 36px;
}
#topics_detail .interview li .txtBox .name {
	margin-bottom: 17px;
	font-weight: 500;
}
#topics_detail .interview li .txtBox .name span {
	margin-top: 2px;
	display: block;
	font-size: 4.1rem;
	letter-spacing: 0.24em;
	line-height: 1;
}
#topics_detail .message {
	margin-bottom: 202px;
}
#topics_detail .message .bgBox {
	background: url(img/topics/detail/bg02.png) no-repeat right top 32px / 91px auto;
}
#topics_detail .message .bgBox:last-child {
	position: relative;
	background: url(img/topics/detail/bg03.png) no-repeat left top 29px / 91px auto;
}
#topics_detail .message .bgBox:last-child::before {
	width: 100%;
	height: 1370px;
	position: absolute;
	top: -113px;
	right: 0;
	background: url(img/topics/detail/bg01.png) no-repeat center center / 100% 100%;
	content: "";
}
#topics_detail .message .comBox {
	width: 750px;
}
#topics_detail .message h3 {
	margin: 0 auto 149px;
	width: 762px;
	position: relative;
	font-size: 2.9rem;
	font-weight: 500;
	letter-spacing: 0.11em;
	font-feature-settings: "palt";
	z-index: 1;
}
#topics_detail .message h3 span {
	margin-right: -12px;
	color: #212121;
	font-size: 8.087rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.2;
	font-family: 'Source Sans Pro', sans-serif;
}
#topics_detail .message h4 {
	margin: 0 auto 63px;
	width: 762px;
	position: relative;
	display: flex;
	font-size: 2.232rem;
	font-weight: 500;
	font-feature-settings: "palt";
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	z-index: 1;
}
#topics_detail .message h4::before {
	width: 124px;
	height: 1px;
	position: absolute;
	left: -136px;
	top: 17px;
	background: #8B8B8B;
	content: "";
}
#topics_detail .message h4 span {
	margin: -10px 20px 0 0;
	color: #8C8C8C;
	font-size: 4.871rem;
	font-weight: 400;
	line-height: 1;
	font-family: 'Source Sans Pro', sans-serif;
}
#topics_detail .message .area {
	margin-bottom: 110px;
	position: relative;
	z-index: 1;
}
#topics_detail .message .area01 {
	margin-bottom: 137px;
}
#topics_detail .message .area02 {
	margin-bottom: 100px;
}
#topics_detail .message .area03 {
	margin-bottom: 54px;
}
#topics_detail .message .area04 {
	margin-bottom: 0;
}
#topics_detail .message p {
	line-height: 29px;
}
#topics_detail .message p:not(:last-child) {
	margin-bottom: 28px;
}
#topics_detail .message .title {
	margin: 0 auto 35px !important;
	width: 750px;
	font-size: 3rem;
	letter-spacing: 0.11em;
	font-weight: 500;
	line-height: 1.9;
	font-feature-settings: "palt";
}
#topics_detail .message .imgBox {
	margin-left: calc((100% - 750px) / 2);
	max-width: 1059px;
	display: flex;
	justify-content: space-between;
}
#topics_detail .message .imgBox .textBox {
	width: 57.9%;
	text-align: justify;
	text-justify: inter-ideograph;
}
#topics_detail .message .imgBox .photoBox {
	margin-top: 6px;
	width: 37.74%;
}
@media all and (max-width: 896px) {
	#topics_detail .pageTitle {
		margin-bottom: 95px;
		background-image: url(img/topics/sp_page_title_bg.jpg);
	}
	#topics_detail .pageTitle .inner {
		padding: 0 15px 20px 40px;
		height: 200px;
	}
	#topics_detail .pageTitle .comScroll a {
		bottom: -11px;
	}
	#topics_detail .interview {
		margin-bottom: 50px;
		padding-bottom: 34px;
		background: url(img/topics/detail/sp_imgtext01.png) no-repeat center bottom / 375px auto;
	}
	#topics_detail .interview::before {
		height: 451px;
		top: auto;
		bottom: -362px;
		background-image: url(img/topics/detail/sp_bg01.png);
	}
	#topics_detail .interview .topText {
		margin-bottom: 40px;
		font-size: 2.1rem;
		line-height: 40px;
	}
	#topics_detail .interview h3 {
		margin-bottom: 30px;
		padding-bottom: 26px;
		font-size: 2rem;
		line-height: 1.6;
	}
	#topics_detail .interview .ctrText {
		margin-bottom: 50px;
		font-size: 1.4rem;
		line-height: 25px;
	}
	#topics_detail .interview ul {
		margin: 0 25px;
		display: block;
	}
	#topics_detail .interview li {
		margin: 0;
		width: auto;
		font-size: 1.5rem;
		line-height: 25px;
	}
	#topics_detail .interview li img {
		width: 100%;
	}
	#topics_detail .interview li:not(:last-child) {
		margin-bottom: 45px;
	}
	#topics_detail .interview li .txtBox {
		margin: -65px 0 0 15px;
	}
	#topics_detail .interview li .txtBox .name {
		margin-bottom: 9px;
		font-size: 1.4rem;
		line-height: 21px;
	}
	#topics_detail .interview li .txtBox .name span {
		margin-top: 4px;
		font-size: 3.5rem;
	}
	#topics_detail .message {
		margin-bottom: 90px;
	}
	#topics_detail .message .bgBox {
		background-position: right top 224px;
	}
	#topics_detail .message .bgBox:last-child {
		background-position: left top 200px;
	}
	#topics_detail .message .bgBox:last-child::before {
		height: 451px;
		top: 50px;
		background-image: url(img/topics/detail/sp_bg01.png);
	}
	#topics_detail .message .comBox {
		width: auto;
	}
	#topics_detail .message h3 {
		margin: 0 23px 42px;
		width: auto;
		font-size: 1.8rem;
		letter-spacing: 0.11em;
		z-index: -2;
	}
	#topics_detail .message h3 span {
		margin-right: -102px;
		font-size: 5.679rem;
		line-height: 1;
	}
	#topics_detail .message h4 {
		margin: 0 auto 40px;
		width: auto;
		display: block;
		font-weight: 500;
		font-family: 'Noto Sans JP', sans-serif;
	}
	#topics_detail .message h4::before {
		left: -130px;
	}
	#topics_detail .message h4 span {
		margin: 0 0 6px;
		display: block;
		position: relative;
		font-size: 3.256rem;
		z-index: -3;
	}
	#topics_detail .message .area {
		margin: 0 25px 60px;
	}
	#topics_detail .message .area01 {
		margin-bottom: 68px;
	}
	#topics_detail .message .area02 {
		margin-bottom: 46px;
	}
	#topics_detail .message .area03 {
		margin-bottom: 54px;
	}
	#topics_detail .message .area04 {
		margin-bottom: 0;
	}
	#topics_detail .message p {
		font-size: 1.4rem;
		line-height: 25px;
	}
	#topics_detail .message p:not(:last-child) {
		margin-bottom: 26px;
	}
	#topics_detail .message .title {
		margin: 0 -20px 39px 0 !important;
		width: auto;
		font-size: 2.2rem;
		line-height: 32px;
	}
	#topics_detail .message .imgBox {
		margin: 0;
		max-width: inherit;
		display: block;
	}
	#topics_detail .message .imgBox .textBox {
		margin-bottom: 38px;
		width: auto;
	}
	#topics_detail .message .imgBox .photoBox {
		margin-top: 6px;
		width: auto;
	}
	#topics_detail .message .imgBox .photoBox img {
		width: 100%;
	}
}
@media all and (max-width: 374px) {
	#topics_detail .message h3 span {
		font-size: 5rem;
	}
}
/*------------------------------------------------------------
	business
------------------------------------------------------------*/
#business {
	margin-bottom: 200px;
}
#business .pageTitle .inner {
	padding: 0 25px 25px;
}
#business .pageTitle {
	margin-bottom: 3px;
	background: #000;
}
#business .comPhotoList li .pho {
	margin-bottom: 55px;
}
@media all and (max-width: 896px) {
	#business {
		margin-bottom: 100px;
	}
	#business .pageTitle .inner {
		margin-bottom: 80px;
		padding-top: 100px;
	}
	#business .comPhotoList li .pho {
		margin-bottom: 50px;
	}
}
/*------------------------------------------------------------
	#product
------------------------------------------------------------*/
#product {
	margin-bottom: 202px;
}
#product .pageTitle {
	margin-bottom: -103px;
	background: #000;
}
#product .pageTitle .inner {
	padding-top: 16px;
}
#product .comPhotoList li .comBtn a {
	padding-bottom: 9px;
	font-size: 1.4rem;
}
#product  .comPhotoList li .comBtn.style01 a {
	letter-spacing: 0;
}
#product  .comPhotoList li .comBtn.style02 a {
	padding-left: 20px;
}
@media all and (max-width: 896px) {
	#product {
		margin-bottom: 97px;
	}
	#product .pageTitle {
		margin-bottom: 81px;
	}
	#product .pageTitle .inner {
		padding: 108px 25px 47px;
	}
	#product .comPhotoList li .comBtn a {
		font-size: 1.6rem;
	}
}
@media all and (max-width: 374px) {
	#product .comPhotoList li .comBtn a {
		font-size: 1.3rem;
	}
}
/*------------------------------------------------------------
	advantage
------------------------------------------------------------*/
#advantage {
	margin-bottom: 195px;
}
#advantage .pageTitle {
	margin-bottom: -100px;
	background: #000;
}
#advantage  .pageTitle .inner {
	padding: 14px 25px 25px;
}
#advantage .content {
	width: 942px;
}
#advantage .comPhotoList {
	justify-content: center;
}
#advantage .comPhotoList li {
	margin-right: 50px;
}
#advantage .comPhotoList li:nth-child(3n) {
	margin-right: 0;
}
#advantage .comPhotoList li .pho {
	margin-bottom: 23px;
}
#advantage .comPhotoList li p {
	margin-bottom: 25px;
}
#advantage .comPhotoList .liStyle {
	margin-right: 0;
}
@media all and (max-width: 896px) {
	#advantage {
		margin-bottom: 101px;
	}
	#advantage .pageTitle {
		margin: 43px 0 35px;
	}
	#advantage .pageTitle .inner {
		margin-bottom: 37px;
	}
	#advantage .pageTitle h2 span {
		margin-top: 9px;
	}
	#advantage .comPhotoList li .pho {
		margin-bottom: 29px;
	}
	#advantage .content {
		width: auto;
	}
	#advantage .comPhotoList li {
		margin-right: 0;
	}
}
/*------------------------------------------------------------
	carbide
------------------------------------------------------------*/
#carbide {
	margin-bottom: 191px;
}
#carbide .pageTitle {
	margin-bottom: 78px;
	background-image: url(img/carbide/page_title_bg.jpg);
}
#carbide .carbide {
	margin-bottom: 131px;
}
#carbide .carbide.content {
	width: 996px;
}
#carbide .carbide .headLine02 {
	margin-bottom: 131px;
}
#carbide .carbide .photoUl {
	margin: -69px auto 79px;
	width: 661px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#carbide .carbide .photoUl li {
	margin-top: 69px;
	width: 290px;
}
#carbide .carbide .photoUl li .pho {
	margin-bottom: 19px;
}
#carbide .carbide .photoUl li p {
	font-size: 1.9rem;
	text-align: center;
}
#carbide .carbide .procesBox {
	padding: 50px 64px 71px;
	background-color: #2F2F2F;
}
#carbide .carbide .procesBox h4 {
	margin-bottom: 31px;
	font-size: 1.9rem;
	font-weight: 400;
	text-align: center;
}
#carbide .carbide .procesBox ul {
	display: flex;
	justify-content: space-between;
}
#carbide .carbide .procesBox li {
	width: 287px;
}
#carbide .flow {
	padding-top: 103px;
	position: relative;
}
#carbide .flow::after {
	width: 100%;
	height: 8px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#carbide .flow .headLine02 {
	margin-bottom: 51px;
	font-size: 3.6rem;
}
#carbide .flow .bgBox {
	margin-bottom: 96px;
	padding: 193px 0 192px;
	background-color: #2F2F2F;
}
#carbide .flow .photo {
	margin: 0 auto;
	width: 860px;
}
#carbide .flow .content {
	width: 1000px;
}
#carbide .flow ul {
	margin-top: -88px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#carbide .flow li {
	margin-top: 88px;
	width: 432px;
}
#carbide .flow li .ttlBox {
	margin-bottom: 29px;
	display: flex;
	align-items: center;
}
#carbide .flow li .ttlBox .num {
	margin: 0 32px 0 -4px;
	font-size: 5.7rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.06em;
	font-family: 'Roboto', sans-serif;
}
#carbide .flow li .ttlBox .num span {
	margin: 0 0 6px 8px;
	display: block;
	font-size: 1.8rem;
	font-weight: 300;
	letter-spacing: 0.2em;
	font-family: 'Noto Sans JP', sans-serif;
}
#carbide .flow li .ttlBox h5 {
	margin: 8px -30px 0 0;
	font-size: 2.5rem;
	font-weight: 300;
}
#carbide .flow li .ttlBox h5.style {
	letter-spacing: -0.1em;
}
#carbide .flow li .pho {
	margin-bottom: 35px;
}
#carbide .flow li p {
	line-height: 1.86;
}
@media all and (max-width: 896px) {
	#carbide {
		margin-bottom: 93px;
	}
	#carbide .pageTitle {
		margin-bottom: 57px;
		background-image: url(img/carbide/sp_page_title_bg.jpg);
	}
	#carbide .pageTitle .inner {
		margin-bottom: 0;
		padding-top: 11px;
	}
	#carbide .pageTitle h2 {
		font-size: 2.3rem;
		
	}
	#carbide .carbide {
		margin-bottom: 56px;
	}
	#carbide .carbide.content {
		width: auto
	}
	#carbide .carbide .headLine02 {
		margin-bottom: 43px;
		font-size: 2.1rem;
		line-height: 1.9;
	}
	#carbide .carbide .photoUl {
		margin: -51px 0 22px;
		width: auto;
	}
	#carbide .carbide .photoUl li {
		margin-top: 51px;
		width: calc((100% - 32px) / 2);
	}
	#carbide .carbide .photoUl li .pho {
		margin-bottom: 7px;
	}
	#carbide .carbide .photoUl li p {
		font-size: 1.2rem;
		line-height: 1.25;
	}
	#carbide .carbide .procesBox ul li {
		width: calc((100% - 4px) / 3);
	}
	#carbide .carbide .procesBox {
		margin: 0 -25px;
		padding: 34px 26px 52px;
	}
	#carbide .carbide .procesBox h4 {
		margin-bottom: 14px;
		font-size: 1.2rem;
	}
	#carbide .flow {
		padding-top: 44px;
	}
	#carbide .flow::after {
		height: 6px;
	}
	#carbide .flow .headLine02 {
		margin-bottom: 32px;
		font-size: 2.1rem;
	}
	#carbide .flow .bgBox {
		margin-bottom: 56px;
		padding: 43px 48px 59px;
	}
	#carbide .flow .photo {
		width: auto;
		text-align: center;
	}
	#carbide .flow .content {
		width: auto;
	}
	#carbide .flow ul {
		margin-top: 0;
		display: block;
	}
	#carbide .flow ul li {
		margin: 0 0 53px;
		width: auto;
	}
	#carbide .flow li .ttlBox {
		margin-bottom: 21px;
	}
	#carbide .flow li .ttlBox .num {
		margin-right: 23px;
		font-size: 4.3rem;
	}
	#carbide .flow li .ttlBox .num span {
		font-size: 1.2rem;
	}
	#carbide .flow li .ttlBox h5 {
		font-size: 1.8rem;
	}
	#carbide .flow li .pho {
		margin-bottom: 22px;
	}
	#carbide .flow li p {
		font-size: 1.4rem;
		line-height: 2;
	}
}
@media all and (max-width: 374px) {
	#carbide .carbide .headLine02 {
		font-size: 1.8rem;
	}
	#carbide .flow li .ttlBox h5 {
		font-size: 1.6rem;
	}
	#carbide .pageTitle h2 {
		font-size: 2rem;
	}
}
/*------------------------------------------------------------
	spray
------------------------------------------------------------*/
#spray {
	margin-bottom: 199px;
}
#spray .pageTitle {
	margin-bottom: 72px;
	background-image: url(img/spray/page_title_bg.jpg);
}
#spray .spray {
	margin-bottom: 125px;
}
#spray .spray.content {
	width: 1000px;
}
#spray .spray .text {
	margin-bottom: 86px;
	text-align: center;
	line-height: 1.86;
}
#spray .spray .headLine02 {
	margin-bottom: 72px;
}
#spray .spray h4.headLine02 {
	margin-bottom: 55px;
	font-size: 3.6rem;
	letter-spacing: 0.075em;
}
#spray .spray ul {
	margin: -110px 0 149px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#spray .spray li {
	margin-top: 110px;
	width: 432px;
}
#spray .spray li .pho {
	margin-bottom: 22px;
}
#spray .spray li .pho img {
	width: 100%;
}
#spray .spray li .ttl {
	margin-bottom: 8px;
	font-size: 2.5rem;
}
#spray .spray li p {
	line-height: 1.9;
}
#spray .spray .airBox h4.headLine02 {
	margin-bottom: 26px;
}
#spray .spray .airBox .text {
	margin-bottom: 61px;
}
#spray .spray .airBox .photo {
	margin-bottom: 65px;
}
#spray .spray .airBox .photo img {
	width: 100%;
}
#spray .spray .airBox .title {
	margin-bottom: 29px;
	font-size: 2.2rem;
}
#spray .spray .airBox .text01 {
	line-height: 1.86;
}
#spray .analysis {
	padding-top: 103px;
	position: relative;
}
#spray .analysis::before {
	width: 100%;
	height: 8px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}

#spray .analysis .content {
	width: 1000px;
}
#spray .analysis .headLine02 {
	margin-bottom: 102px;
	font-size: 3.6rem;
}
#spray .analysis .textBox {
	margin: 0 auto 56px;
	width: 745px;
	display: flex;
	justify-content: space-between;
}
#spray .analysis .textBox ul {
	width: 261px;
	display: flex;
	justify-content: space-between;
}
#spray .analysis .textBox li {
	width: 119px;
	height: 57px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #FFF;
}
#spray .analysis .textBox p {
	width: 450px;
	line-height: 1.86;
}
#spray .analysis .photo {
	margin-bottom: 98px;
}
#spray .analysis .photo span {
	width: 100%;
}
#spray .analysis .bgBox {
	padding: 77px 0 117px;
	background-color: #2F2F2F;
}
#spray .analysis  .moveBox h3 {
	margin-bottom: 2px;
	position: relative;
	color: #636363;
	font-size: 2.5rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	font-family: 'Source Sans Pro', sans-serif;
}
#spray .analysis  .moveBox h3::before {
	content: "";
	width: 108px;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 280px;
	transform: translateY(-50%);
	background-color: #636363;
}
#spray .analysis  .moveBox .headLine02 {
	margin-bottom: 48px;
	font-size: 2.9rem;
	text-align: left;
}
#spray .analysis  .moveBox .move {
	width: 1000px;
}
#spray .analysis  .moveBox .move iframe {
	width: 100%;
	height: 566px;
	vertical-align:top;
}
#spray .analysis .subBox {
	margin-top: 51px;
}
#spray .analysis .subBox p {
	margin-bottom: 37px;
	text-align: center;
}
#spray .analysis .subBox ul {
	margin: 0 auto;
	width: 695px;
	display: flex;
	justify-content: space-between;
}
#spray .analysis .subBox li {
	width: 330px;
}
#spray .analysis .subBox li .comBtn a {
	letter-spacing: 0.38em;
}
@media all and (max-width: 896px) {
	#spray {
		margin-bottom: 88px;
	}
	#spray .pageTitle {
		margin-bottom: 57px;
		background-image: url(img/spray/sp_page_title_bg.jpg);
	}
	#spray .pageTitle .inner {
		margin-bottom: 0;
		padding: 8px 25px 47px 38px;
	}
	#spray .spray {
		margin-bottom: 69px;
	}
	#spray .spray.content {
		width: auto;
	}
	#spray .spray .headLine02 {
		margin-bottom: 36px;
		font-size: 2rem;
		line-height: 2;
	}
	#spray .spray .text {
		margin: 0 22px 72px;
		font-size: 1.4rem;
		line-height: 2;
		text-align: left;
	}
	#spray .spray h4.headLine02 {
		margin-bottom: 62px;
		font-size: 2.6rem;
	}
	#spray .spray ul {
		margin: 0 0 83px;
		display: block;
	}
	#spray .spray li {
		margin: 0 0 57px;
		width: auto;
	}
	#spray .spray li:last-child {
		margin-bottom: 0;
	}
	#spray .spray li .pho {
		margin-bottom: 26px;
	}
	#spray .spray li .pho img {
		width: 100%;
	}
	#spray .spray li .ttl {
		margin-bottom: 5px;
		font-size: 2rem;
	}
	#spray .spray li p {
		font-size: 1.4rem;
		line-height: 1.78;
	}
	#spray .spray .airBox h4.headLine02 {
		margin-bottom: 42px;
	}
	#spray .spray .airBox .text {
		margin: 0 -22px 34px;
		text-align: center;
		line-height: 1.78;
	}
	#spray .spray .airBox .photo {
		margin: 0 -25px 23px;
	}
	#spray .spray .airBox .photo span {
		width: 100%;
	}
	#spray .spray .airBox .photo img {
		width: 100%;
	}
	#spray .spray .airBox .title {
		margin-bottom: 19px;
		font-size: 2rem;
		line-height: 2.15;
	}
	#spray .spray .airBox .text01 {
		font-size: 1.4rem;
		line-height: 1.78;
	}
	#spray .analysis::before {
		height: 5px;
	}
	#spray .analysis .content {
		width: auto;
	}
	#spray .analysis .headLine02 {
		margin-bottom: 60px;
		font-size: 2rem;
	}
	#spray .analysis .textBox {
		margin-bottom: 50px;
		width: auto;
		display: block;
	}
	#spray .analysis .textBox ul {
		margin: 0 auto 28px;
	}
	#spray .analysis {
		padding-top: 53px;
	}
	#spray .analysis .textBox li {
		font-size: 1.4rem;
	}
	#spray .analysis .textBox p {
		margin: 0 22px;
		width: auto;
		font-size: 1.4rem;
		text-align: center;
		line-height: 1.78;
	}
	#spray .analysis .photo {
		margin: 0 -25px 62px;
	}
	#spray .analysis .photo img {
		width: 100%;
	}
	#spray .analysis .bgBox {
		padding: 31px 0 51px;
	}
	#spray .analysis .moveBox h3 {
		margin-bottom: 5px;
		font-size: 2rem;
	}
	
	#spray .analysis .moveBox h3::before {
		width: 30px;
		left: 219px;
	}
	#spray .analysis .moveBox .headLine02 {
		margin-bottom: 29px;
		font-size: 1.8rem;
		line-height: 1.6;
	}
	#spray .analysis .moveBox .move {
		width: auto;
	}
	#spray .analysis .moveBox .move iframe {
		height: 22.5vh;
	}
	#spray .analysis .subBox {
		margin-top: 27px;
	}
	#spray .analysis .subBox p {
		margin-bottom: 23px;
		font-size: 1.4rem;
	}
	#spray .analysis .subBox ul {
		width: auto;
		display: block;
	}
	#spray .analysis .subBox li {
		margin-bottom: 22px;
		width: auto;
	}
	#spray .analysis .subBox li:last-child {
		margin-bottom: 0;
	}
}
@media (max-width: 374px) {
	#spray .spray .headLine02 {
		font-size: 1.8rem;
	}
	#spray .spray .airBox .title {
		font-size: 1.8rem;
	}
	#spray .spray .airBox h4.headLine02 {
		font-size: 2.4rem;
	}
}
/*------------------------------------------------------------
	policy
------------------------------------------------------------*/
#policy {
	margin-bottom: 115px;
}
#policy .pageTitle {
	margin-bottom: -5px;
	background: #000;
}
#policy .content {
	width: 862px;
}
#policy dl {
	margin-bottom: 44px;
	padding: 0 70px;
	border-bottom: 1px solid #8A8A8A;
}
#policy dt {
	margin-bottom: 13px;
	font-size: 1.8rem;
}
#policy dd {
	margin-bottom: 42px;
	line-height: 1.86;
	letter-spacing: 0.1em;
}
#policy .dlStyle {
	margin-bottom: 50px;
	border-bottom: none;
}
#policy .dlStyle dd {
	margin-bottom: 0;
}
#policy p {
	text-align: right;
}
#policy p span {
	display: inline-block;
	text-align: left;
	line-height: 1.86;
	letter-spacing: 0.1em;
}
@media (max-width: 896px) {
	#policy {
		margin-bottom: 95px;
	}
	#policy .pageTitle {
		margin-bottom: -22px;
	}
	#policy .pageTitle .inner {
		margin-bottom: 0;
		padding: 26px 25px 47px;
	}
	#policy .content {
		width: auto;
	}
	#policy dl {
		padding: 0 22px;
	}
	#policy dt {
		letter-spacing: 0.1em;
	}
	#policy dd {
		margin-bottom: 47px;
		font-size: 1.4rem;
		line-height: 1.78;
	}
	#policy .dtStyle {
		letter-spacing: 0;
	}
	#policy .ddStyle {
		margin-bottom: 22px;
	}
	#policy p {
		margin-left: 22px;
		text-align: left;
	}
	#policy p span {
		font-size: 1.4rem;
		line-height: 2;
	}
	#policy .dlStyle {
		margin-bottom: 88px;
	}
}
@media (max-width: 374px) {
	#policy p span {
		font-size: 1.3rem;
	}
}
/*------------------------------------------------------------
	site
------------------------------------------------------------*/
#site{
	margin-bottom: 196px;
}
#site .pageTitle {
	margin-bottom: -19px;
	background: #000;
}
#site .content {
	width: 680px;
}
#site dl {
	margin-bottom: 50px;
	border-bottom: 1px solid #8A8A8A;
}
#site .dlStyle01 {
	margin-bottom: 36px;
}
#site .dlStyle02 {
	margin-bottom: 0;
	border-bottom: none;
}
#site .dlStyle02 dt {
	margin-bottom: 0;
}
#site dt {
	margin-bottom: 36px;
	font-size: 2.5rem;
	letter-spacing: 0.09em;
}
#site .dtStyle {
	margin-bottom: 43px;
}
#site dd a {
	font-size: 1.7rem;
	letter-spacing: 0.1em;
}
#site dl a {
	padding-left: 45px;
	position: relative;
	display: block;
}
#site dl a:hover {
	opacity: 0.7;
}
#site dl a::after {
    width: 8px;
    height: 8px;
    position: absolute;
    left: 4px;
    top: 50%;
    border-right: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    transform: rotate(-45deg) translateY(-50%);
    content: "";
}
#site dl li {
	margin-bottom: 31px;
}
#site dl li:last-child {
	margin-bottom: 0;
}
#site dd {
	margin-bottom: 59px;
}
@media (max-width: 896px) {
	#site {
		margin-bottom: 98px;
	}
	#site .pageTitle {
		margin-bottom: 18px;
	}
	#site .pageTitle .inner {
		margin-bottom: 0;
		padding: 55px 25px 38px;
		height: 174px;
	}
	#site .content {
		width: auto;
	}
	#site dl {
		margin-bottom: 26px;
		padding: 0 35px 0 65px;
	}
	#site dl li {
		margin-bottom: 17px;
	}
	#site dt {
		margin-bottom: 25px;
		font-size: 1.6rem;
	}
	#site dd {
		margin-bottom: 27px;
	}
	#site dd a {
		padding-left: 26px;
		font-size: 1.2rem;
	}
	#site dl a::after {
		width: 7px;
		height: 7px;
		left: 0;
	}
	#site .dlStyle01 {
		margin-bottom: 16px;
	}
	#site .dtStyle {
		margin-bottom: 18px;
	}
	#site .dtStyle a {
		padding-left: 26px;
	}
}
@media (max-width: 374px) {
	#site dl {
		padding-right: 19px;
	}
	#site dt {
		font-size: 1.5rem;
	}
}
/*------------------------------------------------------------
	faq
------------------------------------------------------------*/
#faq {
	margin-bottom: 119px;
}
#faq .pageTitle {
	margin-bottom: 72px;
	background-image: url(img/faq/page_title_bg.jpg);
}
#faq .content {
	width: 900px;
}
#faq .headLine02 {
	margin-bottom: 69px;
}
#faq p {
	margin-bottom: 74px;
	text-align: center;
	line-height: 1.86;
}
#faq h4.headLine02 {
	margin-bottom: 36px;
	color: #FFF;
	font-size: 4.8rem;
}
#faq dl {
	margin-bottom: 25px;
	padding: 18px 25px 17px;
	border-radius: 3px;
	background-color: #FFF;
}
#faq dl:last-child {
	margin-bottom: 0;
}
#faq dt,
#faq dd {
	color: #000;
	font-size: 1.6rem;
	font-weight: 500;
}
#faq dt {
	display: flex;
	align-items: center;
	position: relative;
	cursor:pointer;
}
#faq dt:hover {
	opacity: 0.7;
}
#faq dt::before {
	margin-top: -3px;
    width: 10px;
    height: 10px;
    position: absolute;
    right: 12px;
    top: 50%;
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
    transform: rotate(-45deg) translateY(-50%);
    content: "";
}
#faq dt.on::before {
	display: none;
}
#faq dt.on::after {
	margin-top: 5px;
    width: 10px;
    height: 10px;
    position: absolute;
    right: 12px;
    top: 50%;
    border-right: 1px solid #000;
    border-top: 1px solid #000;
    transform: rotate(-45deg) translateY(-50%);
    content: "";
}
#faq dt .en {
	margin-right: 54px;
	padding: 0 23px 7px 0;
	color: #969696;
	font-size: 2.6rem;
	font-weight: 600;
	line-height: 0.9;
	border-right: 1px solid #ABABAB;
	font-family: 'Source Sans Pro', sans-serif;
}
#faq dt .txt {
	margin-top: -4px;
}
#faq dd {
	padding: 32px 94px 0;
	display: none;
}
@media (max-width: 896px) {
	#faq {
		margin-bottom: 89px;
	}
	#faq .pageTitle {
		margin-bottom: 49px;
		background-image: url(img/faq/sp_page_title_bg.jpg);
	}
	#faq .pageTitle h2 {
		font-size: 2.5rem;
	}
	#faq .pageTitle .inner {
		margin-bottom: 0;
		padding-top: 31px;
	}
	#faq .content {
		width: auto;
	}
	#faq .headLine02 {
		margin-bottom: 0;
		font-size: 2.1rem;
	}
	#faq p {
		margin: 0 23px 17px;
		font-size: 1.4rem;
		line-height: 2;
		text-align: left;
		text-align: justify;
	}
	#faq h4.headLine02 {
		margin-bottom: 15px;
		font-size: 4rem;
	}
	#faq dl {
		padding: 19px 40px 17px 18px;
	}
	#faq dt, 
	#faq dd {
		font-size: 1.5rem;
		line-height: 1.73;
	}
	#faq dt:hover {
		opacity: 1;
	}
	#faq dt .en {
		margin-right: 18px;
		padding: 0 17px 7px 0;
		line-height: 1.2;
	}
	#faq dt.on::after {
		right: -23px;
	}
	#faq dt::before {
		right: -23px;
	}
	#faq dd {
		padding: 20px 0 0 54px;
	}
}
@media (max-width: 374px) {
	#faq .headLine02 {
		font-size: 2rem;
	}
}
/*------------------------------------------------------------
	new_possibility
------------------------------------------------------------*/
#new_possibility .pageTitle {
	margin-bottom: 86px;
	background-image: url(img/new_possibility/page_title_bg.jpg);
}
#new_possibility .intro {
	padding-top: 8px;
	background: url(img/new_possibility/bg01.jpg) no-repeat left top / 550px auto;
}
#new_possibility .intro .topText {
	margin-bottom: 130px;
	font-size: 3rem;
	letter-spacing: 0.2em;
	line-height: 71px;
	text-align: center;
	font-feature-settings: "palt";
}
#new_possibility .intro .imgBox {
	margin-bottom: 130px;
	margin-left: calc((100% - 1000px) / 2);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
}
#new_possibility .intro .imgBox .photoBox {
	width: calc(100% - 617px);
}
#new_possibility .intro .imgBox .photoBox span {
	width: 100%;
}
#new_possibility .intro .imgBox .textBox {
	width: 527px;
	line-height: 28px;
}
#new_possibility .intro .imgBox .textBox h3 {
	margin: -15px 0 74px;
	color: #8B8B8B;
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.837;
	font-feature-settings: "palt";
}
#new_possibility .intro .imgBox .textBox h3::after {
	margin: -5px 0 0 12px;
	width: 60px;
	height: 1px;
	display: inline-block;
	vertical-align: middle;
	background: #8B8B8B;
	content: "";
}
#new_possibility .intro .imgBox .textBox p {
	margin-bottom: 40px;
}
#new_possibility .intro .imgBox .textBox .title {
	margin-bottom: 54px;
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.9;
	font-feature-settings: "palt";
}
#new_possibility .intro .imgBox .textBox .comBtn {
	margin: 0;
}
#new_possibility .intro .imgBox .textBox .comBtn:not(:last-child) {
	margin-bottom: 35px;
}
#new_possibility .intro .imgBox .textBox .comBtn a {
	padding: 8px 30px 9px;
	font-weight: 500;
}
#new_possibility .intro .imgBoxR {
	margin-left: 0;
	margin-right: calc((100% - 1000px) / 2);
	flex-direction: row;
}
#new_possibility .intro .imgBox01 {
	margin-bottom: 145px;
}
#new_possibility .comSolutionSec::after {
	width: 578px;
	height: 717px;
	position: absolute;
	right: 0;
	top: -147px;
	background: url(img/new_possibility/bg02.jpg) no-repeat center center / 100% auto;
	content: "";
	z-index: -1;
}
@media all and (max-width: 896px) {
	#new_possibility .pageTitle {
		margin-bottom: 0;
		background-image: url(img/new_possibility/sp_page_title_bg.jpg);
	}
	#new_possibility .pageTitle .inner {
		margin-bottom: 0;
		padding: 0 0 10px;
	}
	#new_possibility .pageTitle h2 {
		font-size: 2.3rem;
		letter-spacing: 0.16em;
		line-height: 40px;
	}
	#new_possibility .intro {
		padding-top: 55px;
		background-size: 304px auto;
	}
	#new_possibility .intro .topText {
		margin-bottom: 44px;
		font-size: 2.1rem;
		font-weight: 500;
		letter-spacing: 0.2em;
		line-height: 40px;
	}
	#new_possibility .intro .imgBox {
		margin: 0 0 80px;
		display: block;
	}
	#new_possibility .intro .imgBox:last-child {
		margin-bottom: 56px;
	}
	#new_possibility .intro .imgBox .photoBox {
		margin: 0 0 50px 52px;
		width: auto;
	}
	#new_possibility .intro .imgBox .photoBox img {
		width: 100%;
	}
	#new_possibility .intro .imgBox .textBox {
		margin: 0 25px;
		width: auto;
		font-size: 1.4rem;
	}
	#new_possibility .intro .imgBox .textBox h3 {
		margin: 0 0 30px;
		font-size: 1.8rem;
		line-height: 1.79;
	}
	#new_possibility .intro .imgBox .textBox h3::after {
		margin: -5px 0 0 3px;
		width: 35px;
	}
	#new_possibility .intro .imgBox .textBox p {
		margin-bottom: 38px;
	}
	#new_possibility .intro .imgBox .textBox .title {
		margin-bottom: 16px;
		font-size: 2rem;
		letter-spacing: 0.11em;
		line-height: 43px;
	}
	#new_possibility .intro .imgBox .textBox .comBtn:not(:last-child) {
		margin-bottom: 24px;
	}
	#new_possibility .intro .imgBox .textBox .comBtn a {
		padding: 8px 30px 9px;
	}
	#new_possibility .intro .imgBoxR {
		margin-right: 0;
	}
	#new_possibility .intro .imgBoxR .photoBox {
		margin: 0 52px 50px 0;
	}
	#new_possibility .intro .imgBox01 {
		margin-bottom: 80px;
	}
	#new_possibility .comSolutionSec::after {
		width: 220px;
		height: 260px;
		top: -45px;
	}
}
@media all and (max-width: 374px) {
	#new_possibility .pageTitle h2 {
		font-size: 2.1rem;
	}
	#new_possibility .intro .imgBox .textBox .comBtn a {
		padding: 8px 45px 9px 10px;
	}
}
/*------------------------------------------------------------
	comSolutionSec
------------------------------------------------------------*/
.comSolutionSec {
	padding: 124px 0 160px;
	position: relative;
}
.comSolutionSec::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
.comSolutionSec .comBox {
	width: 957px;
}
.comSolutionSec h3 {
	margin-bottom: 108px;
	font-size: 3.6rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	line-height: 1.25;
	text-align: center;
	font-feature-settings: "palt";
}
.comSolutionSec .ctrText {
	margin-bottom: 135px;
	letter-spacing: 0.2em;
	text-align: center;
	font-feature-settings: "palt";
}
.comSolutionSec .picture {
	margin: 0 auto 86px;
	padding-right: 30px;
	width: 840px;
}
.comSolutionSec .picture img {
	width: 100%;
}
.comSolutionSec .stepList li {
	padding: 26px 46px 30px 46px;
}
.comSolutionSec .stepList li .ttlBox {
	margin-left: -4px;
	display: flex;
	justify-content: space-between;
}
.comSolutionSec .stepList li .ttlBox .ttl {
	width: 320px;
	display: flex;
	align-items: center;
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 39px;
	font-feature-settings: "palt";
}
.comSolutionSec .stepList li .ttlBox .ttl.cor01 {
	color: #D13E37;
}
.comSolutionSec .stepList li .ttlBox .ttl span {
	margin-right: 30px;
	font-size: 5.8rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	line-height: 1;
	text-align: center;
	font-family: 'Source Sans Pro', sans-serif;
}
.comSolutionSec .stepList li .ttlBox .ttl span small {
	margin-bottom: 4px;
	display: block;
	font-size: 1.8rem;
	letter-spacing: 0.2em;
}
.comSolutionSec .stepList li .ttlBox .rBox {
	padding-left: 40px;
	width: 540px;
	position: relative;
	line-height: 28px;
	box-sizing: border-box;
	font-feature-settings: "palt";
}
.comSolutionSec .stepList li .ttlBox .rBox::before {
	width: 1px;
	height: 80%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: #fff;
	content: "";
}
.comSolutionSec .stepList li .ttlBox .rBox .imgBox {
	padding: 10px 6px 10px 0;
	display: flex;
	justify-content: space-between;
}
.comSolutionSec .stepList li .ttlBox .rBox .imgBox .txtBox {
	width: 246px;
}
.comSolutionSec .stepList li .ttlBox .rBox .imgBox .phoBox {
	width: 234px;
}
.comSolutionSec .stepList li .ttlBox .rBox .imgBox .phoBox span {
	width: 100%;
}
.comSolutionSec .stepList li .textImg {
	margin-top: 29px;
}
.comSolutionSec .stepList li .textImg img {
	width: 100%;
}
.comSolutionSec .stepList li .detailBox {
	margin: 55px auto 50px;
	padding: 51px 70px 67px;
	width: 718px;
	border: 1px solid #8B8B8B;
	box-sizing: border-box;
}
.comSolutionSec .stepList li .detailBox h4 {
	margin-bottom: 53px;
	font-size: 2.2rem;
	font-weight: 500;
	letter-spacing: 0.12em;
	line-height: 39px;
	text-align: center;
	font-feature-settings: "palt";
}
.comSolutionSec .stepList li .detailBox li {
	padding: 0;
}
.comSolutionSec .stepList li .detailBox li.list01 {
	margin-bottom: 59px !important;
	border: none;
}
.comSolutionSec .stepList li .detailBox li:not(:last-child) {
	margin-bottom: 47px;
}
.comSolutionSec .stepList li .detailBox li .imgBox {
	margin-right: -23px;
	display: flex;
	justify-content: space-between;
}
.comSolutionSec .stepList li .detailBox li .imgBox .phoBox {
	width: 300px;
}
.comSolutionSec .stepList li .detailBox li .imgBox .phoBox span {
	width: 100%;
}
.comSolutionSec .stepList li .detailBox li .imgBox .txtBox {
	width: 262px;
	line-height: 28px;
	text-align: justify;
	text-justify: inter-ideograph;
}
.comSolutionSec .stepList li .detailBox li .imgBox .txtBox .ttl {
	margin: -10px -15px 14px 0;
	font-size: 1.8rem;
	letter-spacing: 0.12em;
	line-height: 34px;
	font-feature-settings: "palt";
}
.comSolutionSec .stepList li.list01 {
	margin-bottom: 37px;
	border: 1px solid #8B8B8B;
}
.comSolutionSec .stepList li.list02 {
	margin-bottom: 37px;
	padding: 43px 46px 42px 46px;
	background: #2F2F2F;
}
.comSolutionSec .stepList li.list02 .ttlBox .rBox::before {
	height: 100%;
}
.comSolutionSec .stepList li.list03 {
	margin-bottom: 37px;
	background: #2F2F2F;
}
@media all and (max-width: 896px) {
	.comSolutionSec {
		padding: 55px 0 64px;
	}
	.comSolutionSec::before {
		height: 5px;
	}
	.comSolutionSec .comBox {
		width: auto;
	}
	.comSolutionSec h3 {
		margin-bottom: 36px;
		font-size: 2.1rem;
		font-weight: 500;
		letter-spacing: 0.15em;
		line-height: 33px;
	}
	.comSolutionSec .ctrText {
		margin-bottom: 37px;
		font-size: 1.4rem;
		line-height: 28px;
		letter-spacing: 0;
		font-feature-settings: normal;
	}
	.comSolutionSec .picture {
		margin: 0 auto 7px;
		padding-right: 0;
		width: 86.5%;
		max-width: 500px;
	}
	.comSolutionSec .stepList li {
		padding: 29px 20px 26px;
	}
	.comSolutionSec .stepList li .ttlBox {
		margin-left: 0;
		display: block;
	}
	.comSolutionSec .stepList li .ttlBox .ttl {
		margin-bottom: 17px;
		width: auto;
		font-size: 1.8rem;
		line-height: 29px;
	}
	.comSolutionSec .stepList li .ttlBox .ttl span {
		margin-right: 16px;
		font-size: 3.5rem;
		letter-spacing: 0.1em;
	}
	.comSolutionSec .stepList li .ttlBox .ttl span small {
		margin-bottom: 2px;
		display: block;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
	}
	.comSolutionSec .stepList li .ttlBox .rBox {
		padding-left: 0;
		width: auto;
		font-size: 1.4rem;
		font-weight: 300;
	}
	.comSolutionSec .stepList li .ttlBox .rBox::before {
		display: none;
	}
	.comSolutionSec .stepList li .ttlBox .rBox .imgBox {
		padding: 0;
		display: block;
	}
	.comSolutionSec .stepList li .ttlBox .rBox .imgBox .txtBox {
		margin-bottom: 26px;
		width: auto;
	}
	.comSolutionSec .stepList li .ttlBox .rBox .imgBox .phoBox {
		margin: 0 3px;
		width: auto;
	}
	.comSolutionSec .stepList li .ttlBox .rBox .imgBox .phoBox img {
		width: 100%;
	}
	.comSolutionSec .stepList li .textImg {
		margin: 33px 2px 0;
		text-align: center;
	}
	.comSolutionSec .stepList li .detailBox {
		margin: 30px 2px 10px;
		padding: 33px 20px 30px;
		width: auto;
	}
	.comSolutionSec .stepList li .detailBox h4 {
		margin-bottom: 33px;
		font-size: 1.4rem;
		letter-spacing: 0;
		line-height: 2;
		font-feature-settings: normal;
	}
	.comSolutionSec .stepList li .detailBox li {
		padding: 0;
	}
	.comSolutionSec .stepList li .detailBox li.list01 {
		margin-bottom: 47px !important;
		border: none;
	}
	.comSolutionSec .stepList li .detailBox li:not(:last-child) {
		margin-bottom: 47px;
	}
	.comSolutionSec .stepList li .detailBox li .imgBox {
		margin-right: 0;
		display: block;
	}
	.comSolutionSec .stepList li .detailBox li .imgBox .phoBox {
		margin-bottom: 10px;
		width: auto;
	}
	.comSolutionSec .stepList li .detailBox li .imgBox .phoBox img {
		width: 100%;
	}
	.comSolutionSec .stepList li .detailBox li .imgBox .txtBox {
		width: auto;
		font-size: 1.4rem;
	}
	.comSolutionSec .stepList li .detailBox li .imgBox .txtBox .ttl {
		margin: 0 -10px 12px 0;
		font-size: 1.5rem;
		letter-spacing: 0;
		line-height: 28px;
	}
	.comSolutionSec .stepList li.list01 {
		margin-bottom: 26px;
	}
	.comSolutionSec .stepList li.list02 {
		margin-bottom: 26px;
		padding: 50px 20px 26px;
	}
	.comSolutionSec .stepList li.list02 .ttlBox .rBox::before {
		display: none;
	}
	.comSolutionSec .stepList li.list03 {
		margin-bottom: 7px;
		padding: 47px 20px 26px;
	}
}
@media all and (max-width: 896px) {
	.comSolutionSec h3 {
		font-size: 1.8rem;
	}
}
/*------------------------------------------------------------
	first_time
------------------------------------------------------------*/
#first_time .pageTitle {
	margin-bottom: 75px;
	background-image: url(img/first_time/page_title_bg.jpg);
}
#first_time .step {
	margin-bottom: 130px;
}
#first_time .step .topText {
	margin-bottom: 50px;
	font-size: 3rem;
	letter-spacing: 0.2em;
	line-height: 71px;
	text-align: center;
	font-feature-settings: "palt";
}
#first_time .step .ctrText {
	margin-bottom: 85px;
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	line-height: 28px;
	text-align: center;
	font-feature-settings: "palt";
}
#first_time .step .titleBox {
	margin: 0 auto 47px;
	padding-left: 33px;
	width: 910px;
	display: flex;
	justify-content: space-between;
	box-sizing: border-box;
}
#first_time .step .titleBox .num img {
	max-width: inherit;
	height: 174px;
}
#first_time .step .titleBox .rBox {
	margin-top: 5px;
	width: 550px;
	line-height: 28px;
}
#first_time .step .titleBox .rBox h3 {
	margin-bottom: 16px;
	font-size: 2.744rem;
	font-weight: 400;
	letter-spacing: 0.2em;
	line-height: 1.87;
	font-feature-settings: "palt";
}
#first_time .step .titleBoxR {
	margin-bottom: 44px;
	padding: 0 33px 0 0;
	flex-direction: row-reverse;
}
#first_time .step .imgBox {
	margin-bottom: 35px;
	margin-right: calc((100% - 1000px) / 2);
	display: flex;
	justify-content: space-between;
}
#first_time .step .imgBox .photoBox {
	width: calc(100% - 488px);
}
#first_time .step .imgBox .photoBox span {
	width: 100%;
}
#first_time .step .imgBox .textBox {
	padding: 44px 68px;
	width: 488px;
	background: #2F2F2F;
	box-sizing: border-box;
}
#first_time .step .imgBox .textBox h3 {
	margin-bottom: 44px;
	position: relative;
	color: #8A8A8A;
	font-size: 2.7rem;
	font-weight: 400;
	letter-spacing: 0.075em;
}
#first_time .step .imgBox .textBox h3::after {
	margin: -3px 0 0 7px;
	width: 23px;
	height: 1px;
	display: inline-block;
	vertical-align: middle;
	background: #8A8A8A;
	content: "";
}
#first_time .step .imgBox .textBox ul {
	margin-left: 63px;
}
#first_time .step .imgBox .textBox li {
	padding-left: 34px;
	position: relative;
	line-height: 29px;
	letter-spacing: 0.2em;
	font-feature-settings: "palt";
}
#first_time .step .imgBox .textBox li:not(:last-child) {
	margin-bottom: 12px;
}
#first_time .step .imgBox01 .textBox li:not(:last-child) {
	margin-bottom: 25px;
}
#first_time .step .imgBox .textBox li::before {
	width: 14px;
	height: 14px;
	position: absolute;
	left: 0;
	top: 8px;
	border: 1px solid #737373;
	content: "";
}
#first_time .step .imgBox .textBox01 h3 {
	margin-bottom: 20px;
}
#first_time .step .imgBoxR {
	margin-bottom: 35px;
	margin-right: 0;
	margin-left: calc((100% - 1000px) / 2);
	flex-direction: row-reverse;
}
#first_time .step .comBtn:not(:last-child) {
	margin-bottom: 100px;
}
#first_time .step .comBtn a {
	letter-spacing: 0.38em;
	font-family: 'Source Sans Pro', sans-serif;
}
#first_time .comSolutionSec {
	padding-bottom: 97px;
}
#first_time .message {
	padding: 120px 0 200px;
	position: relative;
}
#first_time .message::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#first_time .message h3 {
	margin-bottom: 99px;
	font-size: 3.6rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-align: center;
	font-feature-settings: "palt";
}
#first_time .message .grayBox {
	padding: 79px 59px 90px;
	background: #2F2F2F;
}
#first_time .message .grayBox h4 {
	margin-bottom: 38px;
	color: #A0A0A0;
	font-size: 3rem;
	font-weight: 600;
	letter-spacing: 0.2em;
	font-family: 'Source Sans Pro', sans-serif;
}
#first_time .message .grayBox h4::after {
	margin-left: 10px;
	width: 62px;
	height: 1px;
	display: inline-block;
	vertical-align: middle;
	background: #A0A0A0;
	content: "";
}
#first_time .message .grayBox p {
	line-height: 46px;
}
#first_time .message .grayBox .title {
	margin-bottom: 45px;
	font-size: 3rem;
	letter-spacing: 0.2em;
	line-height: 2.1;
	font-feature-settings: "palt";
}
#first_time .message .grayBox .imgBox {
	display: flex;
	justify-content: space-between;
}
#first_time .message .grayBox .imgBox .textBox {
	width: 560px;
}
#first_time .message .grayBox .imgBox .photoBox {
	margin-top: 15px;
	width: 296px;
	letter-spacing: 0.1em;
	font-feature-settings: "palt";
}
#first_time .message .grayBox .imgBox .photoBox p {
	margin-top: 18px;
	margin-right: -20px;
	line-height: 1.5;
}
#first_time .message .grayBox .imgBox .photoBox p span {
	display: block;
	font-size: 2.2rem;
}
@media all and (min-width: 897px) {
	#first_time .step .imgBox .textBox {
		display: flex;
		justify-content: center;
		flex-direction: column;
	}
	#first_time .step .imgBox .textBox h3 {
		width: 100%;
	}
	#first_time .step .imgBox .textBox ul {
		width: calc(100% - 63px);
	}
}
@media all and (max-width: 896px) {
	#first_time .pageTitle {
		margin-bottom: 55px;
		background-image: url(img/first_time/sp_page_title_bg.jpg);
	}
	#first_time .pageTitle .inner {
		padding: 0 25px 10px 30px;
	}
	#first_time .step {
		margin-bottom: 55px;
		overflow: hidden;
	}
	#first_time .step .topText {
		margin-bottom: 36px;
		font-size: 2.1rem;
		line-height: 40px;
	}
	#first_time .step .ctrText {
		margin-bottom: 50px;
		font-size: 1.4rem;
		line-height: 25px;
	}
	#first_time .step .titleBox {
		margin: 0 auto 15px;
		padding: 110px 25px 0;
		width: auto;
		display: block;
		position: relative;
		font-size: 1.4rem;
	}
	#first_time .step .titleBox .num {
		margin-left: -70px;
		position: absolute;
		left: 50%;
		top: 0;
		transform: translateX(-50%);
	}
	#first_time .step .titleBox .num img {
		height: 125px;
	}
	#first_time .step .titleBox .rBox {
		margin-top: 0;
		width: auto;
		line-height: 25px;
	}
	#first_time .step .titleBox .rBox h3 {
		margin-bottom: 18px;
		font-size: 2.2rem;
		letter-spacing: 0.11em;
		line-height: 41px;
		text-align: center;
	}
	#first_time .step .titleBoxR {
		margin-bottom: 20px;
		padding: 110px 25px 0;
	}
	#first_time .step .titleBoxR .num {
		margin-left: 70px;
	}
	#first_time .step .titleBox01 .num {
		margin-left: -50px;
	}
	#first_time .step .titleBox02 .num {
		margin-left: 60px;
	}
	#first_time .step .titleBox03 .num {
		margin-left: -75px;
	}
	#first_time .step .imgBox {
		margin: 0 25px 30px !important;
		display: block;
	}
	#first_time .step .imgBox .photoBox {
		width: auto;
	}
	#first_time .step .imgBox .photoBox img {
		width: 100%;
	}
	#first_time .step .imgBox .textBox {
		padding: 32px 10px 40px 50px;
		width: auto;
	}
	#first_time .step .imgBox .textBox h3 {
		margin-bottom: 16px;
		font-size: 2.1rem;
	}
	#first_time .step .imgBox .textBox h3::after {
		margin: -3px 0 0 5px;
		width: 19px;
	}
	#first_time .step .imgBox .textBox ul {
		margin-left: 0;
	}
	#first_time .step .imgBox .textBox li {
		padding-left: 34px;
		font-size: 1.5rem;
		letter-spacing: 0.2em;
		line-height: 25px;
	}
	#first_time .step .imgBox .textBox li:not(:last-child) {
		margin-bottom: 17px;
	}
	#first_time .step .imgBox01 .textBox li:not(:last-child) {
		margin-bottom: 17px;
	}
	#first_time .step .imgBox .textBox li::before {
		width: 13px;
		height: 13px;
		top: 6px;
	}
	#first_time .step .imgBox .textBox01 h3 {
		margin-bottom: 20px;
	}
	#first_time .step .comBtn:not(:last-child) {
		margin-bottom: 50px;
	}
	#first_time .step .comBtn {
		max-width: 325px;
	}
	#first_time .step .comBtn a {
		font-size: 1.6rem;
	}
	#first_time .comSolutionSec {
		padding-bottom: 23px;
	}
	#first_time .message {
		padding: 63px 0 100px;
	}
	#first_time .message::before {
		height: 5px;
	}
	#first_time .message h3 {
		margin-bottom: 35px;
		font-size: 2.1rem;
	}
	#first_time .message .grayBox {
		margin: 0 -25px;
		padding: 35px 24px 100px;
	}
	#first_time .message .grayBox h4 {
		margin-bottom: 23px;
		font-size: 1.876rem;
	}
	#first_time .message .grayBox h4::after {
		margin-left: 3px;
		width: 20px;
	}
	#first_time .message .grayBox p {
		line-height: 2;
	}
	#first_time .message .grayBox .title {
		margin-bottom: 20px;
		font-size: 2rem;
		line-height: 43px;
		text-align: center;
	}
	#first_time .message .grayBox .imgBox {
		display: block;
	}
	#first_time .message .grayBox .imgBox .textBox {
		width: auto;
		font-size: 1.4rem;
	}
	#first_time .message .grayBox .imgBox .photoBox {
		margin-top: 28px;
		width: auto;
		display: flex;
		flex-direction: column-reverse;
		letter-spacing: 0.1em;
		font-feature-settings: "palt";
	}
	#first_time .message .grayBox .imgBox .photoBox p {
		margin: 0 0 32px;
		margin-right: -20px;
		font-size: 1.4rem;
		line-height: 1.5;
	}
	#first_time .message .grayBox .imgBox .photoBox p span {
		font-size: 2rem;
	}
}
@media all and (max-width: 374px) {
	#first_time .step .imgBox .textBox {
		padding-left: 30px;
	}
	#first_time .step .comBtn {
		margin: 0 25px;
		max-width: 325px;
	}
	#first_time .step .titleBox .rBox h3 {
		font-size: 2rem;
	}
	#first_time .comSolutionSec h3 {
		font-size: 1.7rem;
	}
}
/*------------------------------------------------------------
	materials
------------------------------------------------------------*/
#contact.materials .topBox {
	margin-bottom: 58px;
}
#contact.materials .topBox .text {
	margin-bottom: 164px;
	text-align: center;
	letter-spacing: 0.1em;
}
#contact.materials .topBox .area {
	margin-bottom: 40px;
	padding-bottom: 63px;
	border-bottom: 1px solid #808080;
}
#contact.materials .topBox .area:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
#contact.materials .topBox .headLine02 {
	margin-bottom: 36px;
	letter-spacing: 0;
}
#contact.materials .topBox .textList {
	margin: -20px -7px 0;
	padding-right: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#contact.materials .topBox .textList li {
	margin: 20px 7px;
	min-width: 300px;
}
#contact.materials .topBox .textList .pho {
	display: block;
	margin-bottom: 21px;
	text-align: center;
}
#contact.materials .topBox .textList .pho img {
	height: 236px;
}
#contact.materials .topBox .textList p,
#contact.materials .topBox .textList .textP {
	display: block;
	font-size: 2.3rem;
	font-weight: 300;
	text-align: center;
}
#contact.materials .topBox .area01 {
	margin-bottom: 32px;
	padding-bottom: 78px;
}
#contact.materials .topBox .area01 .textList {
	margin: -20px -10px 0;
	padding-right: 0;
}
#contact.materials .topBox .area01 .textList li {
	margin: 20px 20px 0;
}
#contact.materials .topBox .area02 .textList {
	padding-right: 0;
}
#contact.materials .formBox {
	margin-bottom: 200px;
}
#contact.materials .formBox .text {
	margin-bottom: 70px;
	letter-spacing: 0;
}
#contact.materials .formBox table .radioList {
	margin: 0;
	display: block;
}
#contact.materials .formBox table {
	margin-bottom: 41px;
}
#contact.materials .formBox table .radioList li {
	margin: 0 0 10px;
	width: auto;
}
#contact.materials .mailForm table td .radioList span {
	font-size: 1.5rem;
}
#contact.materials .formBox table .radioList li:last-of-type {
	margin-bottom: 0;
}
#contact.materials .formBox table .radioList .wpcf7-list-item {
	margin: 0 0 10px 0;
	display: block;
	width: auto;
}
#contact.materials .formBox table .radioList .wpcf7-list-item:last-child {
	margin-bottom: 0;
}
#contact.materials .formBox table tr:first-of-type th {
	vertical-align: middle;
}
#contact.materials .formBox table th small {
	display: block;
	font-size: 1.3rem;
}
#contact.materials .mailForm {
	padding: 48px 70px 91px;
}
@media all and (max-width: 896px) {
	#contact.materials .pageTitle {
		margin-bottom: -50px;
	}
	#contact.materials .pageTitle .inner {
		padding-bottom: 45px;
	}
	#contact.materials .topBox {
		margin-bottom: 58px;
	}
	#contact.materials .topBox .text {
		margin-bottom: 100px;
		font-size: 1.4rem;
		line-height: 2;
	}
	#contact.materials .topBox .area {
		padding-bottom: 50px;
	}
	#contact.materials .topBox .area:last-of-type {
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: none;
	}
	#contact.materials .topBox .headLine02 {
		margin-bottom: 33px;
		font-size: 2.1rem;
		letter-spacing: 0;
	}
	#contact.materials .topBox .textList {
		margin: 0;
		padding-right: 0;
		display: block;
	}
	#contact.materials .topBox .textList li {
		margin: 0 0 41px;
		min-width: inherit;
	}
	#contact.materials .topBox .textList li:last-of-type {
		margin-bottom: 0;
	}
	#contact.materials .topBox .textList .pho {
		margin-bottom: 15px;
	}
	#contact.materials .topBox .textList .pho img {
		height: 165px;
	}
	#contact.materials .topBox .textList p,
	#contact.materials .topBox .textList .textP {
		font-size: 1.6rem;
	}
	#contact.materials .topBox .area01 {
		margin-bottom: 23px;
		padding-bottom: 27px;
	}
	#contact.materials .topBox .area01 .textList {
		margin: 0;
		padding-right: 0;
	}
	#contact.materials .topBox .area01 .textList li {
		margin: 0 0 38px;
	}
	#contact.materials .topBox .area01 .textList li:last-of-type {
		margin-bottom: 0;
	}
	#contact.materials .topBox .area02 .textList {
		padding-right: 0;
	}
	#contact.materials .formBox {
		margin-bottom: 100px;
	}
	#contact.materials .formBox .text {
		margin-bottom: 35px;
	}
	#contact.materials .formBox table .radioList {
		margin: 0;
		display: block;
	}
	#contact.materials .formBox table {
		margin-bottom: 30px;
	}
	#contact.materials .formBox table .radioList li {
		margin: 0 0 12px;
		width: auto;
	}
	#contact.materials .formBox table .radioList li span {
		margin-top: 0;
	}
	#contact.materials .formBox table .radioList li:last-of-type {
		margin-bottom: 0;
	}
	#contact.materials .formBox table tr:first-of-type th {
		margin-bottom: 30px;
	}
	#contact.materials .formBox table tr:first-of-type td {
		margin-bottom: 55px;
	}
	#contact.materials .formBox table th small {
		display: block;
		font-size: 1.3rem;
	}
	#contact.materials .mailForm table td .radioList span {
		font-size: 1.4rem;
	}
	#contact.materials .mailForm {
		padding: 50px 22px 55px;
	}
}
@media all and (max-width: 374px) {
	#contact.materials .formBox .text {
		font-size: 1.3rem;
	}
}
/*------------------------------------------------------------
	materials_thanks
------------------------------------------------------------*/
#thanks.materials_thanks .textBox .text {
	margin-bottom: 198px;
}
@media all and (max-width: 896px) {
	#thanks.materials_thanks .textBox {
		padding-top: 70px;
	}
	#thanks.materials_thanks .textBox .headLine01 {
		margin-bottom: 63px;
		font-size: 2.3rem;
		line-height: 1.52;
	}
	#thanks.materials_thanks .textBox .text {
		margin-bottom: 66px;
		line-height: 2;
		font-feature-settings: 'palt';
	}
	#thanks.materials_thanks .textBox .comBtn a {
		padding: 9px 60px;
	}
}
/*------------------------------------------------------------
	top
------------------------------------------------------------*/

#top .mainVisual {
	margin-top: -113px;
	position: relative;
min-height: 500px;
}
#top .mainVisual .bgList li {
	background-repeat: no-repeat;
	background-size: cover;
	background-repeat: no-repeat;
}
#top .mainVisual .inner {
	padding: 27vh 0 2vh;
	width: 1156px;
	height: 100%;
	position: absolute;
	left: 50%;
	top: -3px;
	box-sizing: border-box;
	transform: translateX(-50%);
}
#top .mainVisual .inner .textImg {
	width: 11vh;
	position: absolute;
	left: 0;
	top: 13vh;
}
#top .mainVisual .inner .btn {
	width: 254px;
	position: absolute;
	right: -36px;
	top: 185px;
}
#top .mainVisual .inner .btn a {
	display: block;
}
#top .mainVisual .inner .btn a:hover {
	opacity: 0.7;
}
#top .mainVisual .slick-dots {
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 4.5vh;
	display: flex;
	justify-content: center;
	z-index: 9;
}
#top .mainVisual .slick-dots button {
	display: none;
}
#top .mainVisual .slick-dots li {
	width: 20px;
	height: 20px !important;
	position: relative;
	cursor: pointer;
}
#top .mainVisual .slick-dots li::before {
	width: 6px;
	height: 6px;
	position: absolute;
	left: 50%;
	top: 50%;
	border-radius: 50%;
	background-color: #808080;
	content: '';
}
#top .mainVisual .slick-dots .slick-active::before {
	background-color: #fff;
}
#top .mainVisual h2 {
	margin-bottom: 19.6vh;
	font-size: 5.3vh;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.3em;
	text-align: center;
}
#top .mainVisual .linkList {
	margin: -20px -15px 0;
	width: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#top .mainVisual .linkList li {
	margin: 20px 14px;
	width: 328px;
}
#top .mainVisual .linkList li a {
	padding: 10px 30px;
	font-size: 1.8rem;
	background-image: url(img/common/icon03.png);
	background-size: 7px auto;
}
#top .mainVisual .linkList li:nth-of-type(2) {
	width: 431px;
}
#top .mainVisual .linkUl {
	margin: -20px 0 0;
	width: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#top .mainVisual .linkUl li {
	margin: 20px 10px 0;
	width: 290px;
}
#top .mainVisual .linkUl li:nth-of-type(2) {
	width: 234px;
}
#top .mainVisual .linkUl li:nth-of-type(3) {
	width: 327px;
}
#top .mainVisual .linkUl a {
	padding: 10px 30px 10px 10px;
	font-size: 1.8rem;
	letter-spacing: 0;
	font-weight: 500;
	background-image: url(img/common/icon03.png);
	background-size: 9px auto;
	background-position: right 20px top calc(50% + 1px);
}
#top .mainVisual .btnList {
	margin: -20px 0 2.6vh;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#top .mainVisual .btnList li {
	margin: 20px 22px 0;
	width: 415px;
}
#top .mainVisual .btnList li a {
	display: block;
}
#top .mainVisual .comBtn li.materialsBtn {
	margin: 38px 30px 0;
	width: 225px;
}
#top .mainVisual .comBtn li.materialsBtn a {
	font-size: 1.6rem;
	border: none;
	border-bottom: 1px solid #fff;
	padding: 0 18px 5px 0;
	background-position: right 0 top calc(50% + 1px);
	letter-spacing: 0.5px;
}
#top .mainVisual .comBtn li.materialsBtn a::after {
	display: none;
}
#top .mainVisual .comScroll a {
	left: 40px;
}
#top .topBox {
	padding-top: 112px;
	background: url(img/index/sec01_bg01.png) no-repeat left top / 893px auto;
}
#top .topBox .text {
	margin-bottom: 76px;
	line-height: 3.73;
	letter-spacing: 0.1em;
	text-align: center;
}
#top .topBox .borderBox {
	padding-right: 55px;
	display: flex;
	justify-content: space-between;
	border: 1px solid #898989;
}
#top .topBox .borderBox .lBox {
	padding: 20px 10px;
	width: 252px;
	min-height: 260px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	background: url(img/index/sec01_photo01.jpg) no-repeat center center / cover;
}
#top .topBox .borderBox .lBox h2 {
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
}
#top .topBox .borderBox .lBox h2 span {
	display: block;
	font-size: 3.5rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	font-family: 'Source Sans Pro', sans-serif;
}
#top .topBox .borderBox .imgBox {
	width: 640px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#top .topBox .borderBox .textBox {
	width: 325px;
}
#top .topBox .borderBox .textBox .ttl {
	margin-bottom: 15px;
	font-size: 1.9rem;
	font-weight: 500;
	line-height: 1.68;
	font-feature-settings: 'palt';
}
#top .topBox .borderBox .textBox .txt {
	margin-bottom: 18px;
	line-height: 1.87;
}
#top .topBox .borderBox .textBox .link a {
	padding-right: 45px;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.38em;
	background: url(img/common/icon05.png) no-repeat right center / 32px auto;
}
#top .topBox .borderBox .photoBox {
	width: 273px;
}
#top .product {
	padding: 235px 0 50px;
	position: relative;
	background: url(img/index/product_bg03.png) no-repeat right top / 585px auto;
}
#top .product::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 128px;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#top .product .text {
	margin-bottom: 54px;
	text-align: center;
	letter-spacing: 0.1em;
}
#top .product .subBox {
	margin: 0 auto;
	padding-bottom: 73px;
	width: 846px;
	background-color: #fff;
}
#top .product .tabList {
	margin-bottom: 90px;
	display: flex;
}
#top .product .tabList li {
	width: 50%;
	display: flex;
}
#top .product .tabList a {
	width: 100%;
	min-height: 151px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	color : #808080;
	font-size: 1.7rem;
	font-weight: 400;
	letter-spacing: 0.08em;
	box-sizing: border-box;
	border: 1px solid #808080;
}
#top .product .tabList a::after {
	width: 26px;
	height: 24px;
	position: absolute;
	left: 50%;
	bottom: -19px;
	transform: translateX(-50%);
	background: url(img/index/product_bg02.jpg) no-repeat center center / cover;
	content: '';
	transition: .3s;
}
#top .product .tabList li.on a {
	color: #fff;
	border-color: #fff;
	background-color: #000;
}
#top .product .tabList li:nth-of-type(2) a {
	border-left: #fff;
}
#top .product .tabList li:nth-of-type(2).on a {
	border-left: #000;
}
#top .product .tabList li.on a::after {
	background-image: url(img/index/product_bg01.png);
}
#top .product .tabBox {
	margin: 0 auto 66px;
	width: 595px;
}
#top .product .tabBox .linkList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#top .product .tabBox .linkList li {
	width: 50%;
	display: flex;
}
#top .product .tabBox .linkList a {
	padding: 40px 25px 25px;
	width: 100%;
	box-sizing: border-box;
	border-bottom: 1px solid #808080;
	border-left: 1px solid #808080;
}
#top .product .tabBox .linkList li:first-of-type a {
	border-top: 1px solid #808080;
}
#top .product .tabBox .linkList li:nth-of-type(2) a {
	border-top: 1px solid #808080;
}
#top .product .tabBox .linkList li:nth-of-type(2n) a {
	border-right: 1px solid #808080;
}
#top .product .tabBox .linkList li:last-of-type a {
	border-right: 1px solid #808080;
}
#top .product .tabBox .linkList .pho {
	margin-bottom: 33px;
	min-height: 102px;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
#top .product .tabBox .linkList p {
	padding: 0 15px;
	color: #000;
	font-size: 1.8rem;
	text-align: center;
	background: url(img/common/icon14.png) no-repeat right center / 10px auto;
}
#top .product .tabBox01 {
	margin-bottom: 98px;
}
#top .product .tabBox01 {
	padding: 27px 40px 0;
}
#top .product .tabBox .linkUl {
	margin: 0 auto;
	width: 432px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#top .product .tabBox .linkUl > li {
	width: 39.5%;
}
#top .product .tabBox .linkUl a {
	padding-left: 26px;
	display: block;
	color : #000000;
	font-size: 1.8rem;
	font-weight: 500;
	background: url(img/common/icon14.png) no-repeat left center / 10px auto;
}
#top .product .tabBox .linkUl ul li:not(:last-of-type) {
	margin-bottom: 14px;
}
#top .advantage {
	margin-bottom: 200px;
	padding-top: 190px;
	position: relative;
	background: url(img/index/advantage_bg01.png) no-repeat left top 88px / 738px auto;
}
#top .advantage::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 82px;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#top .advantage .headLine03 {
	margin-bottom: 127px;
	text-align: right;
}
#top .advantage .headLine03 strong {
	text-align: left;
}
#top .advantage .imgBox {
	margin-bottom: 136px;
	display: flex;
	flex-direction: row-reverse;
}
#top .advantage .imgBox:nth-of-type(2n) {
	flex-direction: row;
}
#top .advantage .imgBox:last-of-type {
	margin-bottom: 0;
}
#top .advantage .imgBox .textBox {
	margin: -23px 40px 0 0;
	width: 330px;
}
#top .advantage .imgBox .textBox h3 {
	margin-bottom: 43px;
	font-size: 4.8rem;
	position: relative;
	line-height: 1.8;
	text-align: left;
	letter-spacing: 0.51em;
	z-index: 3;
}
#top .advantage .imgBox .textBox h3 .num {
	display: inline-block;
	vertical-align: top;
	position: absolute;
	right: calc(100% - 43px);
	top: -3px;
	width: 230px;
	z-index: -1;
}
#top .advantage .imgBox .textBox .title {
	margin-bottom: 25px;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.9;
	letter-spacing: 0.11em;
	position: relative;
	z-index: 6;
}
#top .advantage .imgBox .textBox p {
	margin-bottom: 41px;
	font-weight: 300;
	line-height: 1.87;
}
#top .advantage .imgBox .textBox .comBtn a {
	font-size: 1.6rem;
	letter-spacing: 0.38em;
}
#top .advantage .imgBox .photoBox {
	width: calc(50% + 65px);
}
#top .advantage .imgBox .photoBox span {
	width: 100%;
}
#top .advantage .imgBox:nth-of-type(2n) .textBox {
	margin: -23px 0 0 40px;
}
#top .advantage .imgBox:nth-of-type(2n) .textBox h3 .num {
	right: auto;
	left: calc(100% - 149px);
}
#top .advantage .imgBox:nth-of-type(2n) .textBox .title {
	margin-right: -105px;
}
#top .advantage .imgBox01 .textBox h3 .num {
	width: 269px;
	top: -45px;
}
#top .advantage .imgBox01 .textBox p {
	margin-bottom: 13px;
}
#top .advantage .imgBox02 .textBox h3 {
	letter-spacing: 0.27em;
}
#top .advantage .imgBox02 .textBox h3 .num {
	width: 264px;
	top: -45px;
	right: calc(100% - 95px);
}
#top .advantage .imgBox02 .textBox .title {
	letter-spacing: 0;
}
#top .advantage .imgBox03 .textBox h3 .num {
	width: 272px;
	top: -45px;
}
#top .advantage .imgBox04 .textBox .title {
	margin-right: -20px;
	letter-spacing: 0.05em;
}
#top .advantage .imgBox04 .textBox h3 .num {
	right: calc(100% - 100px);
	top: -45px;
	width: 268px;
}
#top .whiteBox {
	padding: 107px 0 125px;
	background-color: #fff;
}
#top .about {
	margin-bottom: 107px;
}
#top .about .linkList {
	margin: 0 auto;
	width: 911px;
	display: flex;
	flex-wrap: wrap;
}
#top .about .linkList li {
	width: 50%;
}
#top .about .linkList li a {
	display: block;
	position: relative;
}
#top .about .linkList li span {
	width: 100%;
	display: block;
	position: absolute;
	left: 0;
	top: calc(50% - 8px);
	font-size: 2.6rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: center;
	transform: translateY(-50%);
}
#top .news .headLine04 {
	margin-bottom: 67px;
}
#top .news .newsList {
	margin-bottom: 59px;
}
#top .news .newsList li {
	padding: 23px 75px 20px;
	border-top: 1px solid #959595;
}
#top .news .newsList li:last-of-type {
	border-bottom: 1px solid #959595;
}
#top .news .newsList .newsDl {
	display: flex;
	justify-content: space-between;
	color: #000;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 2;
}
#top .news .newsList a {
	color: #000;
}
#top .news .newsList .newsDl > dt {
	width: 110px;
	color: #787878;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-align: center;
}
#top .news .newsList .newsDl > dd {
	width: calc(100% - 140px);
}
#top .news .newsList .newsDl dl {
	display: flex;
	justify-content: space-between;
}
#top .news .newsList .newsDl dl dt {
	padding-top: 3px;
	width: 200px;
	line-height: 1.71;
}
#top .news .newsList .newsDl dl dd {
	width: calc(100% - 243px);
}
@media all and (min-width: 897px) {
	#top .topBox .borderBox .textBox .link a:hover {
		opacity: 0.7;
	}
	#top .news .newsList .newsDl dl dd a:hover {
		text-decoration: underline;
	}
	#top .product .tabList a:hover {
		color: #fff;
		background-color: #000;
		border-color: #fff;
	}
	#top .product .tabList a:hover::after {
		background-image: url(img/index/product_bg01.png);
	}
	#top .product .tabBox .linkList a:hover {
		opacity: 0.7;
	}
	#top .product .tabBox .linkUl a:hover {
		opacity: 0.7;
	}
	#top .about .linkList li a:hover {
		opacity: 0.7;
	}
	#top .product .tabBox .linkList li:first-of-type .pho {
		padding-bottom: 10px;
		box-sizing: border-box;
	}
	#top .mainVisual .btnList li a:hover {
		opacity: 0.7;
	}
	#top .mainVisual .comBtn li.materialsBtn a:hover {
		color: #fff;
		opacity: 0.7;
	}
}
@media (min-width: 897px) and (max-height: 730px) {
	#top .mainVisual h2 {
		margin-bottom: 15vh;
	}
}
@media (min-width: 897px) and (max-height: 590px) {
	#top .mainVisual h2 {
		margin-bottom: 10vh;
	}
}
@media (min-width: 897px) and (max-height: 500px) {
	#top .mainVisual .inner {
		padding: 156px 0 10px;
	}
	#top .mainVisual h2 {
		margin-bottom: 50px;
		font-size: 2.65rem;
	}
	#top .mainVisual .btnList {
		margin-bottom: 30px;
	}
	#top .mainVisual .bgList li {
		min-height: 500px;
	}
	#top .mainVisual .slick-dots li {
		min-height: inherit;
	}
	#top .mainVisual .slick-dots {
		bottom: 22.5px;
	}
}
@media all and (max-width: 896px) {
	#top {
		overflow: hidden;
	}
	#top .mainVisual {
		margin-top: -77px;
	}
	#top .mainVisual .bgList li {
		min-height: 500px;
	}
	#top .mainVisual .inner {
		padding: 22.26vh 20px 2vh;
		width: 100%;
		left: 50%;
		top: 0;
	}
	#top .mainVisual .inner .btn {
		width: 21vh;
		right: 20px;
		top: 12.5vh;
	}
	#top .mainVisual .inner .btn a {
		display: block;
	}
	#top .mainVisual .inner .btn a:hover {
		opacity: 0.7;
	}
	#top .mainVisual .slick-dots {
		display: none !important;
	}
	#top .mainVisual .inner .textImg {
		width: 7.5vh;
		left: 3.6vh;
		top: 10.39vh;
	}
	#top .mainVisual h2 {
		margin-bottom: 15.64vh;
		font-size: 2.2rem;
		line-height: 2;
	}
	#top .mainVisual .linkList {
		margin: 0 auto;
		width: auto;
		display: block;
	}
	#top .mainVisual .linkList li {
		margin: 0 auto 3.6vh;
		width: auto;
		max-width: 325px;
	}
	#top .mainVisual .linkList li:last-of-type {
		margin-bottom: 0;
	}
	#top .mainVisual .linkList li a {
		padding: 1vh 30px;
		font-size: 1.5rem;
		letter-spacing: 0;
		background-size: 9px auto;
	}
	#top .mainVisual .linkList li:nth-of-type(2) {
		width: auto;
	}
	#top .mainVisual .linkList li:nth-of-type(2) a {
		padding: 1.4vh 30px;
		font-size: 1.3rem;
	}
	#top .mainVisual .linkUl {
		margin: 0;
		display: block;
		max-width: inherit;
	}
	#top .mainVisual .linkUl li {
		margin: 0 auto 1.1vh;
		width: auto;
		max-width: 325px;
	}
	#top .mainVisual .linkUl li:nth-of-type(2) {
		width: auto;
	}
	#top .mainVisual .linkUl li:nth-of-type(3) {
		width: auto;
	}
	#top .mainVisual .linkUl a {
		padding: 1.15vh 30px;
		font-size: 1.5rem;
		letter-spacing: 0;
		background-image: url(img/common/icon03.png);
		background-size: 9px auto;
	}
	#top .mainVisual .comBtn li.materialsBtn {
		margin: 21px auto 0;
		width: 200px;
	}
	#top .mainVisual .comBtn li.materialsBtn a {
		font-size: 1.5rem;
		letter-spacing: -0.5px;
	}
	#top .mainVisual .btnList {
		margin: 0 0 2.1vh;
		display: block;
		position: relative;
		z-index: 2;
	}
	#top .mainVisual .btnList li {
		margin: 0 auto 1vh;
		width: auto;
		max-width: 325px;
	}
	#top .mainVisual .comScroll a {
		left: 22px;
		bottom: 2px;
	}
	#top .topBox {
		padding-top: 73px;
		background-size: 313px auto;
		background-image: url(img/index/sp_sec01_bg01.png);
	}
	#top .topBox .text {
		margin-bottom: 150px;
		font-size: 1.4rem;
		line-height: 2.5;
	}
	#top .topBox .borderBox {
		padding: 0 0 20px;
		display: block;
	}
	#top .topBox .borderBox .lBox {
		margin-bottom: 23px;
		padding: 1px 0 0;
		width: auto;
		min-height: 46.67vw;
		display: block;
		background-image: url(img/index/sp_sec01_photo01.jpg);
	}
	#top .topBox .borderBox .lBox h2 {
		margin-top: -90px;
		font-size: 1.3rem;
	}
	#top .topBox .borderBox .lBox h2 span {
		font-size: 2.8rem;
		letter-spacing: 0.1em;
	}
	#top .topBox .borderBox .imgBox {
		width: auto;
		display: block;
	}
	#top .topBox .borderBox .textBox {
		margin: 0 30px;
		width: auto;
	}
	#top .topBox .borderBox .textBox .ttl {
		margin-bottom: 8px;
		font-size: 1.7rem;
		line-height: 1.65;
	}
	#top .topBox .borderBox .textBox .txt {
		margin-bottom: 13px;
		font-size: 1.4rem;
		line-height: 1.87;
	}
	#top .topBox .borderBox .textBox .link a {
		margin: 0 auto;
		padding: 8px 40px;
		max-width: 330px;
		display: block;
		border: 1px solid #fff;
		text-align: center;
		background-position: right 17px center;
	}
	#top .topBox .borderBox .photoBox {
		display: none;
	}
	#top .product {
		padding: 104px 0 50px;
		position: relative;
		background-size: 195px auto;
		background-position: right top 39px;
	}
	#top .product::before {
		height: 5px;
		top: 58px;
	}
	#top .product .text {
		margin-bottom: 27px;
		font-size: 1.4rem;
		line-height: 1.79;
	}
	#top .product .subBox {
		margin: 0 -25px;
		padding-bottom: 35px;
		width: auto;
	}
	#top .product .tabList {
		margin-bottom: 34px;
	}
	#top .product .tabList a {
		min-height: 67px;
		font-size: 1.2rem;
	}
	#top .product .tabList a::after {
		width: 13px;
		height: 12px;
		bottom: -10px;
	}
	#top .product .tabBox {
		margin: 0 25px 28px;
		width: auto;
	}
	#top .product .tabBox .linkList a {
		padding: 25px 5px 12px;
	}
	#top .product .tabBox .linkList .pho {
		margin-bottom: 14px;
		min-height: 53px;
	}
	#top .product .tabBox .linkList p {
		padding: 0 10px;
		font-size: 1.3rem;
		background-size: 6px auto;
	}
	#top .product .tabBox01 {
		margin-bottom: 20px;
	}
	#top .product .tabBox01 {
		padding: 0 35px;
	}
	#top .product .tabBox .linkUl {
		margin: -3px auto 0;
		width: auto;
	}
	#top .product .tabBox .linkUl > li {
		width: 43%;
	}
	#top .product .tabBox .linkUl a {
		margin-right: -5px;
		padding-left: 15px;
		font-size: 1.2rem;
		background-size: 7px auto;
	}
	#top .product .tabBox .linkUl ul li:not(:last-of-type) {
		margin-bottom: 9px;
	}
	#top .advantage {
		margin-bottom: 100px;
		padding-top: 57px;
		background-size: 232px auto;
		background-position: left top 23px;
	}
	#top .advantage::before {
		height: 5px;
		top: 8px;
	}
	#top .advantage .headLine03 {
		margin-bottom: 62px;
		text-align: center;
	}
	#top .advantage .headLine03 strong {
		text-align: center;
	}
	#top .advantage .imgBox {
		margin-bottom: 64px;
		display: block;
	}
	#top .advantage .imgBox .textBox {
		margin: 60px 25px 0;
		width: auto;
	}
	#top .advantage .imgBox .textBox h3 {
		margin-bottom: 24px;
		font-size: 3.2rem;
		font-weight: 500;
		text-align: center;
	}
	#top .advantage .imgBox .textBox h3 .num {
		right: calc(100% - 115px);
		top: -27px;
		width: 151px;
	}
	#top .advantage .imgBox .textBox .title {
		margin-bottom: 19px;
		font-size: 2.2rem;
		line-height: 1.86;
		text-align: center;
	}
	#top .advantage .imgBox .textBox p {
		margin-bottom: 53px;
		font-size: 1.4rem;
		line-height: 1.79;
	}
	#top .advantage .imgBox .textBox .comBtn a {
		padding: 8px 60px;
		background-position: right 47px top calc(50% - 1px);
	}
	#top .advantage .imgBox .photoBox {
		margin-left: auto;
		width: calc(100% - 25px);
	}
	#top .advantage .imgBox .photoBox img {
		width: 100%;
	}
	#top .advantage .imgBox:nth-of-type(2n) .textBox {
		margin: 60px 25px 0;
	}
		#top .advantage .imgBox:nth-of-type(2n) .photoBox {
			margin: 0 auto 0 0;
		}
	#top .advantage .imgBox:nth-of-type(2n) .textBox h3 .num {
		right: auto;
		left: calc(100% - 139px);
	}
	#top .advantage .imgBox:nth-of-type(2n) .textBox .title {
		margin-right: 0;
	}
	#top .advantage .imgBox01 .textBox h3 .num {
		width: 177px;
		top: -30px;
	}
	#top .advantage .imgBox01 .textBox p {
		margin-bottom: 13px;
	}
	#top .advantage .imgBox02 .textBox h3 {
		letter-spacing: 0.27em;
	}
	#top .advantage .imgBox02 .textBox h3 .num {
		width: 174px;
		top: -33px;
		right: calc(100% - 139px);
	}
	#top .advantage .imgBox02 .textBox .title {
		letter-spacing: 0;
	}
	#top .advantage .imgBox03 .textBox h3 .num {
		width: 179px;
		top: -25px;
		left: calc(100% - 152px) !important;
	}
	#top .advantage .imgBox04 .textBox .title {
		margin-right: -20px;
		letter-spacing: 0.05em;
	}
	#top .advantage .imgBox04 .textBox h3 .num {
		right: calc(100% - 130px);
		top: -25px;
		width: 177px;
	}
	#top .whiteBox {
		padding: 42px 0 20px;
	}
	#top .about {
		margin-bottom: 52px;
	}
	#top .about .linkList {
		width: auto;
		display: block;
	}
	#top .about .linkList li {
		width: auto;
	}
	#top .about .linkList li a {
		display: block;
		position: relative;
	}
	#top .about .linkList li a img {
		width: 100%;
	}
	#top .about .linkList li span {
		top: 50%;
		font-size: 1.8rem;
	}
	#top .news .headLine04 {
		margin-bottom: 20px;
	}
	#top .news .newsList {
		margin-bottom: 36px;
	}
	#top .news .newsList li {
		padding: 23px 0 25px;
	}
	#top .news .newsList .newsDl {
		display: block;
	}
	#top .news .newsList .newsDl > dt {
		margin-bottom: 3px;
		width: auto;
		font-size: 1.2rem;
		text-align: left;
	}
	#top .news .newsList .newsDl > dd {
		width: auto;
	}
	#top .news .newsList .newsDl dl {
		display: block;
	}
	#top .news .newsList .newsDl dl dt {
		margin-bottom: 11px;
		padding-top: 3px;
		width: auto;
		font-size: 1.5rem;
		line-height: 1.47;
	}
	#top .news .newsList .newsDl dl dd {
		width: auto;
	}
}
@media (max-width: 896px) and (max-height: 680px) {
	#top .mainVisual h2 {
		margin-bottom: 10vh;
	}
}
@media (max-width: 896px) and (max-height: 600px) {
	#top .mainVisual .inner {
		padding-top: 18vh;
		}
	#top .mainVisual h2 {
		margin-bottom: 5vh;
	}
}
@media (max-width: 896px) and (max-height: 600px) {
	#top .mainVisual .inner {
		padding: 90px 20px 10px;
	}
	#top .mainVisual h2 {
		margin-bottom: 25px;
	}
	#top .mainVisual .btnList {
		margin-bottom: 16.5px;
	}
	#top .mainVisual .btnList li {
		margin-bottom: 7.5px;
	}
	#top .mainVisual .btnList li:last-of-type {
		margin-bottom: 0;
	}
	#top .mainVisual .linkUl li {
		margin-bottom: 15px;
	}
	#top .mainVisual .linkUl li:last-of-type {
		margin-bottom: 0;
	}
	#top .mainVisual .linkUl a {
		padding: 5.5px 30px;
	}
}
@media all and (max-width: 374px) {
	#top .mainVisual h2 {
		font-size: 1.8rem;
	}
	#top .topBox .text {
		font-size: 1.2rem;
	}
	#top .advantage .imgBox .textBox .title {
		font-size: 1.8rem;
	}
	#top .mainVisual .linkList li:nth-of-type(2) a {
		font-size: 1.1rem;
	}
	#top .mainVisual .linkUl a {
		font-size: 1.4rem;
	}
}
/*------------------------------------------------------------
	proposal
------------------------------------------------------------*/
#first_time.proposal .pageTitle {
	margin-bottom: 0;
	background-image: url(img/proposal/page_title_bg.jpg);
}
#first_time.proposal .step {
	margin-bottom: 120px;
	padding-top: 75px;
	position: relative;
	background: url(img/proposal/step_bg01.png) no-repeat left top 40px / 408px auto;
}
#first_time.proposal .step::after {
	width: 389px;
	height: 584px;
	position: absolute;
	right: 0;
	bottom: -422px;
	background: url(img/proposal/step_bg02.png) no-repeat center center / cover;
	content: '';
	z-index: -1;
}
#first_time.proposal .step .topText {
	margin-bottom: 59px;
	line-height: 2.5;
}
#first_time.proposal .pointList {
	margin: -77px auto 0;
	width: 835px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#first_time.proposal .pointList li {
	margin-top: 77px;
	width: 360px;
}
#first_time.proposal .pointList .ttl {
	margin: 0 -10px 26px 0;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.2em;
	font-feature-settings: 'palt';
}
#first_time.proposal .pointList .ttl span {
	margin-bottom: 13px;
	display: block;
	color : #8B8B8B;
	font-size: 2.7rem;
	font-weight: 400;
	letter-spacing: 0.075em;
}
#first_time.proposal .pointList .ttl span em {
	margin-left: 7px;
	font-style: normal;
	font-size: 4.2rem;
}
#first_time.proposal .pointList p {
	line-height: 1.87;
}
#first_time.proposal .pointList .note {
	margin-top: 7px;
	padding-left: 1em;
	text-indent: -1em;
}
#first_time.proposal .message h3 {
	margin-bottom: 50px;
	letter-spacing: 0.12em;
}
#first_time.proposal .message .area {
	margin-bottom: 48px;
	padding: 40px 55px;
	background-color: #2D2D2D;
}
#first_time.proposal .message .area:last-of-type {
	margin-bottom: 0;
}
#first_time.proposal .message .area h4 {
	margin-bottom: 16px;
	font-size: 1.9rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	font-family: 'Source Sans Pro', sans-serif;
}
#first_time.proposal .message .area h4 span {
	padding-right: 34px;
	position: relative;
	display: inline-block;
	vertical-align: top;
}
#first_time.proposal .message .area h4 span::after {
	width: 25px;
	height: 1px;
	position: absolute;
	right: 0;
	top: 50%;
	background-color: #fff;
	content: '';
}
#first_time.proposal .message .area .imgBox {
	display: flex;
	justify-content: space-between;
}
#first_time.proposal .message .area .imgBox .textBox {
	width: 600px;
}
#first_time.proposal .message .area .imgBox .textBox .title {
	margin-bottom: 18px;
	font-size: 2.2rem;
	font-weight: 500;
	letter-spacing: 0.05em;
}
#first_time.proposal .message .area .imgBox .textBox p {
	font-weight: 500;
	line-height: 1.87;
	letter-spacing: 0.1em;
}
#first_time.proposal .message .area .imgBox .photoBox {
	margin-top: 8px;
	width: 270px;
}
#first_time.proposal .message .area .imgBox .photoBox span {
	width: 100%;
}
@media all and (min-width: 897px) {
	#first_time.proposal .message {
		padding-bottom: 155px;
	}
}
@media all and (max-width: 896px) {
	#first_time.proposal .pageTitle {
		margin-bottom: 0;
		background-image: url(img/proposal/sp_page_title_bg.jpg);
	}
	#first_time.proposal .step {
		margin-bottom: 48px;
		padding-top: 56px;
		background-size: 216px auto;
		background-position: left top;
		overflow: inherit;
	}
	#first_time.proposal .step::after {
		width: 197px;
		height: 296px;
		bottom: -238px;
	}
	#first_time.proposal .step .topText {
		margin-bottom: 0;
		line-height: 1.9;
	}
	#first_time.proposal .pointList {
		margin: 0;
		width: auto;
		display: block;
	}
	#first_time.proposal .pointList li {
		margin: 0 0 14px;
		width: auto;
	}
	#first_time.proposal .pointList li:last-of-type {
		margin-bottom: 0;
	}
	#first_time.proposal .pointList .ttl {
		margin: 0 0 18px;
		font-size: 2rem;
		font-weight: 500;
		line-height: 2.15;
		text-align: center;
	}
	#first_time.proposal .pointList .ttl span {
		padding-right: 28px;
		margin-bottom: -18px;
		font-size: 2.3rem;
	}
	#first_time.proposal .pointList .ttl span em {
		margin-left: 7px;
		font-size: 3.5rem;
	}
	#first_time.proposal .pointList p {
		line-height: 2;
		font-size: 1.4rem;
	}
	#first_time.proposal .pointList .note {
		margin-top: 0;
	}
	#first_time.proposal .message {
		padding-top: 55px;
	}
	#first_time.proposal .message h3 {
		margin-bottom: 47px;
	}
	#first_time.proposal .message .area {
		margin-bottom: 33px;
		padding: 33px 20px 33px;
	}
	#first_time.proposal .message .area h4 {
		margin-bottom: 9px;
		font-size: 1.9rem;
	}
	#first_time.proposal .message .area h4 span {
		padding-right: 30px;
		position: relative;
		display: inline-block;
		vertical-align: top;
	}
	#first_time.proposal .message .area h4 span::after {
		width: 25px;
		height: 1px;
		position: absolute;
		right: 0;
		top: 50%;
		background-color: #fff;
		content: '';
	}
	#first_time.proposal .message .area .imgBox {
		display: block;
	}
	#first_time.proposal .message .area .imgBox .textBox {
		width: auto;
	}
	#first_time.proposal .message .area .imgBox .textBox .title {
		margin-bottom: 15px;
		font-size: 1.7rem;
		line-height: 1.87;
		letter-spacing: 0.12em;
	}
	#first_time.proposal .message .area .imgBox .textBox p {
		line-height: 2;
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	#first_time.proposal .message .area .imgBox .photoBox {
		margin: 15px 4px 0;
		width: auto;
	}
	#first_time.proposal .message .area .imgBox .photoBox img {
		width: 100%;
	}
}
@media all and (max-width: 374px) {
	#first_time.proposal .step .topText {
		font-size: 1.9rem;
	}
	#first_time.proposal .pointList .ttl {
		font-size: 1.8rem;
	}
}
/*------------------------------------------------------------
	quality
------------------------------------------------------------*/
#cae.quality .pageTitle {
	background-image: url(img/quality/page_title_bg.jpg);
}
#cae.quality .topText {
	margin-bottom: 61px;
}
#cae.quality .point {
	margin-bottom: 132px;
}
#cae.quality .point .textList {
	margin-bottom: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cae.quality .point .textList::after {
	width: 300px;
	content: '';
}
#cae.quality .point .textList li {
	width: 300px;
}
#cae.quality .point .textList .ttl {
	margin: 0 -10px 27px 0;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.88;
	letter-spacing: 0.2em;
	font-feature-settings: 'palt';
}
#cae.quality .point .textList .ttl span {
	margin-bottom: 3px;
	display: block;
	color : #8A8A8A;
	font-size: 2.7rem;
	font-weight: 400;
	letter-spacing: 0.075em;
}
#cae.quality .point .textList .ttl span em {
	margin-left: 7px;
	font-style: normal;
	font-size: 4.2rem;
	font-weight: 500;
}
#cae.quality .point .textList p {
	line-height: 1.87;
}
#cae.quality .point .linkList {
	margin: -30px -15px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	display: none;
}
#cae.quality .point .linkList li {
	margin: 30px 18px 0;
	width: 237px;
	display: flex;
}
#cae.quality .point .linkList li a {
	padding: 17px 10px 44px;
	width: 100%;
	text-align: center;
	line-height: 1.87;
	letter-spacing: 0.1em;
	border: 1px solid #fff;
	box-sizing: border-box;
	background: url(img/common/icon12.png) no-repeat center bottom 19px / 13px auto;
}
#cae.quality .reason {
	padding-top: 103px;
	position: relative;
	width: auto;
}
#cae.quality .reason::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#cae.quality .reason h2 {
	margin-bottom: 67px;
	font-size: 3.6rem;
	letter-spacing: 0.12em;
}
#cae.quality .reason .text {
	margin-bottom: 66px;
	line-height: 1.87;
	letter-spacing: 0.025em;
	text-align: center;
}
#cae.quality .reason .imgBox {
	justify-content: flex-start;
}
#cae.quality .reason .imgBox:nth-of-type(2n) {
	flex-direction: row-reverse;
}
#cae.quality .reason .imgBox .photoBox {
	width: calc(50% - 63px);
}
#cae.quality .reason .imgBox .textBox {
	margin-left: 80px;
	width: 485px;
}
#cae.quality .reason .imgBox:nth-of-type(2n) .textBox {
	margin: 0 80px 0 0;
}
#cae.quality .reason .imgBox .textBox h3 {
	margin-bottom: 35px;
}
#cae.quality .reason .imgBox .textBox h3 span {
	margin-bottom: 48px;
	padding: 2px 0 2px 40px;
	display: block;
	color : #737373;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.75;
	letter-spacing: 0.2em;
	font-family: 'Source Sans Pro', sans-serif;
	background: url(img/common/icon16.png) no-repeat left top 4px / 32px auto;
}
#cae.quality .reason .imgBox .textBox .subBox {
	display: flex;
	justify-content: space-between;
}
#cae.quality .reason .imgBox .textBox .txtBox {
	width: 275px;
}
#cae.quality .reason .imgBox .textBox .phoBox {
	width: 165px;
}
#cae.quality .reason .imgBox .textBox .phoBox p {
	margin: 0 -15px 10px 0;
	line-height: 1.6;
	font-feature-settings: 'palt';
}
#cae.quality .reason .imgBox01 .textBox {
	margin-left: 50px;
}
#cae.quality .reason .imgBox02 {
	margin-bottom: 75px;
}
#cae.quality .next {
	margin-bottom: 41px;
	text-align: center;
}
#cae.quality .next img {
	width: 14px;
}
#cae.quality .reason .area .title {
	margin-bottom: 39px;
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	text-align: center;
}
#cae.quality .reason .area .picture {
	margin-bottom: 60px;
	text-align: center;
}
#cae.quality .reason .area .picture img {
	width: 177px;
}
#cae.quality .reason .area .borderBox {
	padding-bottom: 40px;
	margin: 0 auto;
	width: 888px;
	border: 1px solid #808080;
	box-sizing: border-box;
}
#cae.quality .reason .area .borderBox .ttl {
	margin-bottom: 49px;
	padding: 15px 20px;
	font-size: 2rem;
	letter-spacing: 0.1em;
	text-align: center;
	border-bottom: 1px solid #808080;
}
#cae.quality .reason .area .borderBox .photoList {
	margin-top: -20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#cae.quality .reason .area .borderBox .photoList li {
	margin: 20px 30px 0;
	width: 280px;
}
#cae.quality .reason .area .borderBox .photoList .pho {
	margin-bottom: 17px;
}
.quality#cae .reason .area .borderBox .photoList .pho img {
	width: 100%;
}
#cae.quality .reason .area .borderBox .photoList p {
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	text-align: center;
}
#cae.quality .control {
	padding-top: 99px;
}
#cae.quality .control .headLine02 {
	margin-bottom: 56px;
}
#cae.quality .control .tBox {
	width: 752px;
}
#cae.quality .control .text {
	margin-bottom: 125px;
}
#cae.quality .control .photo {
	margin-bottom: 82px;
}
.quality#cae .control .photo img {
	width: 100%;
}
#cae.quality .control .textList {
	margin: -80px 0 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cae.quality .control .textList li {
	margin-top: 80px;
	width: 355px;
}
#cae.quality .control .textList .ttl {
	margin-bottom: 40px;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.79;
	letter-spacing: 0.05em;
	font-feature-settings: 'palt';
}
#cae.quality .control .textList p {
	line-height: 1.87;
	letter-spacing: 0.025em;
}
#cae.quality .control .area .borderBox .photoList p {
	font-size: 1.5rem;
	line-height: 1.67;
}
#cae.quality .use h3 {
	margin-bottom: 120px;
}
#cae.quality .use .text {
	margin-bottom: 70px;
	line-height: 1.87;
	text-align: center;
}
#cae.quality .use .headLine01 {
	margin-bottom: 83px;
	font-size: 3.6rem;
}
#cae.quality .use .imgBox {
	margin: 0 0 92px;
	justify-content: flex-start;
}
#cae.quality .use .imgBox .photoBox {
	margin-right: 84px;
	width: calc(50% - 63px);
}
#cae.quality .use .imgBox .textBox {
	width: 482px;
}
#cae.quality .use .imgBox .textBox .title {
	margin-bottom: 40px;
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0.05em;
}
#cae.quality .use .imgBox .textBox .text {
	margin-bottom: 30px;
	padding-bottom: 40px;
	border-bottom: 1px solid #fff;
}
#cae.quality .use .imgBox .textBox p {
	margin-bottom: 9px;
	text-align: left;
}
#cae.quality .use .imgList {
	padding-bottom: 50px;
}
#cae.quality .use {
	margin-bottom: 98px;
}
#cae.quality .equipment {
	margin-bottom: 112px;
}
#cae.quality .equipment .headLine02 {
	margin-bottom: 75px;
	font-size: 3.6rem;
	letter-spacing: 0.12em;
}
#cae.quality .equipment .imgBox {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
#cae.quality .equipment .imgBox .textBox {
	margin-right: 80px;
	width: 485px;
}
#cae.quality .equipment .imgBox .textBox .title {
	margin-bottom: 31px;
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0.05em;
}
#cae.quality .equipment .imgBox .textBox p {
	line-height: 1.87;
}
#cae.quality .equipment .imgBox .photoBox {
	width: calc(50% - 63px);
}
#cae.quality .equipment .imgBox .photoBox span {
	width: 100%;
}
#cae.quality .analysis {
	margin-bottom: 234px;
}
#cae.quality .analysis .content {
	width: 1000px;
}
#cae.quality .analysis .bgBox {
	padding: 77px 0 117px;
	background-color: #2F2F2F;
}
#cae.quality .analysis  .moveBox h3 {
	margin-bottom: 2px;
	position: relative;
	color: #636363;
	font-size: 2.5rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	font-family: 'Source Sans Pro', sans-serif;
}
#cae.quality .analysis  .moveBox h3::before {
	content: "";
	width: 108px;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 280px;
	transform: translateY(-50%);
	background-color: #636363;
}
#cae.quality .analysis  .moveBox .headLine02 {
	margin-bottom: 48px;
	font-size: 2.9rem;
	text-align: left;
}
#cae.quality .analysis  .moveBox .move {
	width: 1000px;
}
#cae.quality .analysis  .moveBox .move iframe {
	width: 100%;
	height: 566px;
	vertical-align:top;
}
@media all and (min-width: 897px) {
	#cae.quality .point .linkList li a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#cae.quality .pageTitle {
		background-image: url(img/quality/sp_page_title_bg.jpg);
	}
	#cae.quality .topText {
		margin-bottom: 0;
	}
	#cae.quality .point {
		margin-bottom: 55px;
	}
	#cae.quality .point .textList {
		margin-bottom: 0;
		display: block;
	}
	#cae.quality .point .textList::after {
		display: none;
	}
	#cae.quality .point .textList li {
		margin-bottom: 17px;
		width: auto;
	}
	#cae.quality .point .textList li:last-of-type {
		margin-bottom: 0;
	}
	#cae.quality .point .textList .ttl {
		margin: 0 0 20px;
		font-size: 2rem;
		line-height: 2.15;
		text-align: center;
	}
	#cae.quality .point .textList .ttl span {
		margin-bottom: -16px;
		padding-right: 20px;
		font-size: 2.3rem;
	}
	#cae.quality .point .textList .ttl span em {
		margin-left: 7px;
		font-size: 3.5rem;
	}
	#cae.quality .point .textList p {
		font-size: 1.4rem;
		line-height: 2;
	}
	#cae.quality .point .linkList {
		margin: 0;
		display: block;
	}
	#cae.quality .point .linkList li {
		margin: 0 0 26px;
		width: auto;
		display: block;
	}
	#cae.quality .point .linkList li:last-of-type {
		margin-bottom: 0;
	}
	#cae.quality .point .linkList li a {
		padding: 20px 10px;
		display: block;
		font-size: 1.5rem;
		background-position: right 25px center;
	}
	#cae.quality .reason {
		margin-bottom: 54px;
		padding-top: 38px;
		position: relative;
		width: auto;
	}
	#cae.quality .reason::before {
		height: 5px;
	}
	#cae.quality .reason h2 {
		margin-bottom: 38px;
		font-size: 2.1rem;
		letter-spacing: 0.2em;
	}
	#cae.quality .reason .text {
		margin: 0 25px 55px;
		font-size: 1.4rem;
		line-height: 2;
		text-align: center;
	}
	#cae.quality .reason .imgBox:not(:last-of-type) {
		margin-bottom: 75px;
	}
	#cae.quality .reason .imgBox.imgBox03 {
		margin-bottom: 11px !important;
	}
	#cae.quality .reason .imgBox .photoBox {
		margin: 0 auto 26px 0;
		width: calc(100% - 50px);
	}
	#cae.quality .reason .imgBox .textBox {
		margin: 0 23px;
		width: auto;
	}
	#cae.quality .reason .imgBox:nth-of-type(2n) .textBox {
		margin: 4px 23px 0;
	}
	#cae.quality .reason .imgBox:nth-of-type(2n) .photoBox {
		margin: 0 0 26px auto;
	}
	#cae.quality .reason .imgBox .textBox h3 {
		margin-bottom: 17px;
	}
	#cae.quality .reason .imgBox .textBox h3 span {
		margin-bottom: 24px;
		padding: 2px 0 2px 50px;
		background-position: left 5px top 6px;
	}
	#cae.quality .reason .imgBox .textBox .subBox {
		display: block;
	}
	#cae.quality .reason .imgBox .textBox .txtBox {
		margin-bottom: 30px;
		width: auto;
	}
	#cae.quality .reason .imgBox .textBox .phoBox {
		width: auto;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	#cae.quality .reason .imgBox .textBox .phoBox p {
		margin-bottom: 0;
		width: 51.6%;
		line-height: 1.6;
		font-feature-settings: 'palt';
	}
	#cae.quality .reason .imgBox .textBox .phoBox .pho {
		width: 43.37%;
	}
	#cae.quality .reason .imgBox01 .textBox {
		margin-left: 23px;
	}
	#cae.quality .reason .imgBox02 {
		margin-bottom: 75px !important;
	}
	#cae.quality .next {
		margin-bottom: 10px;
	}
	#cae.quality .next img {
		width: 8px;
	}
	#cae.quality .reason .area .title {
		margin-bottom: 12px;
		font-size: 2rem;
		line-height: 2.15;
	}
	#cae.quality .reason .area .picture {
		margin-bottom: 22px;
	}
	#cae.quality .reason .area .picture img {
		width: 88px;
	}
	#cae.quality .reason .area .borderBox {
		padding-bottom: 40px;
		width: auto;
	}
	#cae.quality .reason .area .borderBox .ttl {
		margin-bottom: 58px;
		padding: 14px 20px;
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	#cae.quality .reason .area .borderBox .photoList {
		margin-top: 0;
		display: block;
	}
	#cae.quality .reason .area .borderBox .photoList li {
		margin: 0 22px 34px;
		width: auto;
	}
	#cae.quality .reason .area .borderBox .photoList li:last-of-type {
		margin-bottom: 0;
	}
	#cae.quality .reason .area .borderBox .photoList .pho {
		margin-bottom: 20px;
	}
	#cae.quality .reason .area .borderBox .photoList .pho span {
		width: 100%;
	}
	#cae.quality .reason .area .borderBox .photoList .pho img {
		width: 100%;
	}
	#cae.quality .reason .area .borderBox .photoList p {
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	#cae.quality .control {
		padding-top: 43px;
	}
	#cae.quality .control .headLine02 {
		margin-bottom: 37px;
	}
	#cae.quality .control .tBox {
		width: auto;
	}
	#cae.quality .control .text {
		margin-bottom: 36px;
	}
	#cae.quality .control .photo {
		margin-bottom: 57px;
	}
	#cae.quality .control .textList {
		margin: 0 0 16px;
		display: block;
	}
	#cae.quality .control .textList li {
		margin: 0 0 40px;
		width: auto;
	}
	#cae.quality .control .textList li:last-of-type {
		margin-bottom: 0;
	}
	#cae.quality .control .textList .ttl {
		margin-bottom: 18px;
		font-size: 2rem;
		line-height: 2.15;
		letter-spacing: 0.11em;
	}
	#cae.quality .control .textList p {
		font-size: 1.4rem;
		line-height: 2;
	}
	#cae.quality .control .area .borderBox .photoList p {
		font-size: 1.5rem;
		line-height: 1.67;
	}
	#cae.quality .use {
		margin-bottom: 32px;
	}
	#cae.quality .use h3 {
		margin-bottom: 45px;
	}
	#cae.quality .use .text {
		margin-bottom: 58px;
		font-size: 1.4rem;
		line-height: 2;
	}
	#cae.quality .use .headLine01 {
		margin-bottom: 33px;
		font-size: 2rem;
	}
	#cae.quality .use .imgBox {
		margin: 0 25px 20px !important;
	}
	#cae.quality .use .imgBox .photoBox {
		margin: 0 0 25px;
		width: auto;
	}
	#cae.quality .use .imgBox .textBox {
		margin: 0;
		width: auto;
	}
	#cae.quality .use .imgBox .textBox .title {
		margin-bottom: 20px;
		font-size: 2rem;
	}
	#cae.quality .use .imgBox .textBox .text {
		margin-bottom: 15px;
		padding-bottom: 25px;
	}
	#cae.quality .use .imgBox .textBox p {
		margin-bottom: 8px;
		font-size: 1.5rem;
		line-height: 1.87;
		letter-spacing: 0;
		font-feature-settings: 'palt';
	}
	#cae.quality .use .imgBox .textBox .noteList {
		font-size: 1.5rem;
		line-height: 1.87;
		letter-spacing: 0.08em;
	}
	#cae.quality .use .imgList {
		padding-bottom: 38px;
	}
	#cae.quality .equipment {
		margin-bottom: 40px;
	}
	#cae.quality .equipment .headLine02 {
		margin-bottom: 20px;
		font-size: 2rem;
		letter-spacing: 0.11em;
	}
	#cae.quality .equipment .imgBox {
		margin: 0 26px;
		display: block;
	}
	#cae.quality .equipment .imgBox .textBox {
		margin-right: 0;
		width: auto;
	}
	#cae.quality .equipment .imgBox .textBox .title {
		margin-bottom: 10px;
		font-size: 2rem;
		line-height: 2.15;
	}
	#cae.quality .equipment .imgBox .textBox p {
		font-size: 1.4rem;
		line-height: 2;
	}
	#cae.quality .equipment .imgBox .photoBox {
		margin-bottom: 22px;
		width: auto;
	}
	#cae.quality .equipment .imgBox .photoBox img {
		width: 100%;
	}
	#cae.quality .analysis {
		margin-bottom: 100px;
	}
	#cae.quality .analysis .content {
		width: auto;
	}
	#cae.quality .analysis .bgBox {
		padding: 31px 0 51px;
	}
	#cae.quality .analysis .moveBox h3 {
		margin-bottom: 5px;
		font-size: 2rem;
	}
	#cae.quality .analysis .moveBox h3::before {
		width: 30px;
		left: 219px;
	}
	#cae.quality .analysis .moveBox .headLine02 {
		margin-bottom: 32px;
		font-size: 1.6rem;
		line-height: 1.69;
	}
	#cae.quality .analysis .moveBox .move {
		width: auto;
	}
	#cae.quality .analysis .moveBox .move iframe {
		height: 22.5vh;
	}
}
@media all and (max-width: 374px) {
	#cae.quality .use .text {
		font-size: 1.3rem;
	}
	#cae.quality .reason .area .title {
		font-size: 1.8rem;
	}
	#cae.quality .control .textList .ttl {
		font-size: 1.8rem;
	}
	#cae.quality .control .text {
		font-size: 1.2rem;
	}
	#cae.quality .reason .text {
		font-size: 1.2rem;
	}
}
/*------------------------------------------------------------
	recruit
------------------------------------------------------------*/
#recruit .pageTitle {
	margin-bottom: 90px;
	background-image: url(img/recruit/page_title_bg.jpg);
}
#recruit .topBox {
	margin-bottom: 198px;
}
#recruit .topBox p {
	letter-spacing: 0.2em;
	text-align: center;
}
#recruit .topBox .title {
	margin-bottom: 16px;
	font-size: 2.1rem;
	font-weight: 500;
}
#recruit .whiteBox {
	padding-top: 157px;
	background-color: #fff;
}
#recruit .tokaloy {
	margin-bottom: 25px;
	position: relative;
}
#recruit .tokaloy .comBox {
	width: 980px;
}
#recruit .tokaloy h2 {
	margin-bottom: 104px;
	color: #fff;
	font-size: 10.1rem;
	font-style: italic;
	line-height: 1;
	letter-spacing: 0.18em;
	font-family: 'Source Sans Pro', sans-serif;
}
#recruit .tokaloy h2 .txt {
	padding: 5px 30px 3px 25px;
	display: inline-block;
	background: transparent;
}
#recruit .tokaloy h2 .txt.on {
	background: #000;
}
#recruit .tokaloy h2 .txt::before {
	background: url(img/recruit/bg01.jpg) repeat-y center top / 100% auto;
}
#recruit .tokaloy h2 .txt.txt01 {
	padding-bottom: 13px;
	font-size: 8.2rem;
	letter-spacing: 0.2em;
}
#recruit .tokaloy .textBox {
	margin-left: 152px;
}
#recruit .tokaloy h3 {
	margin-bottom: 42px;
	color: #000;
	font-size: 5.3rem;
	line-height: 1.70;
}
#recruit .tokaloy .textBox p {
	margin-left: 9px;
	color: #000;
	font-size: 1.93rem;
	font-weight: 700;
	line-height: 3.02;
	letter-spacing: 0.1em;
}
#recruit .tokaloy .textImg {
	width: 35px;
	position: absolute;
	left: 98px;
	bottom: -390px;
	z-index: 4;
}
#recruit .people {
	margin-bottom: 3px;
	padding: 275px 0 0;
	position: relative;
	background: url(img/recruit/people_bg01.jpg) repeat left top / 10px auto;
}
#recruit .people::before {
	width: 100%;
	height: 250px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/recruit/people_bg02.png) no-repeat center center / 100% 100%;
	content: '';
}
#recruit .people .textList {
	margin: -74px auto -4px;
	width: 770px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#recruit .people .textList::after {
	width: 215px;
	content: '';
}
#recruit .people .textList li {
	margin-top: 74px;
	width: 215px;
}
#recruit .people .textList li a {
	display: block;
}
#recruit .people .textList .txtBox {
	margin-bottom: 25px;
	padding: 19px 10px 25px;
	display: flex;
	align-items: center;
	position: relative;
	background-color: #000;
}
#recruit .people .textList .txtBox::after {
	width: 19px;
	height: 18px;
	position: absolute;
	left: 50%;
	bottom: -10px;
	transform: translateX(-50%);
	background: url(img/recruit/people_bg03.png) no-repeat center center / 100% 100%;
	content: '';
}
#recruit .people .textList .txtBox p {
	width: 100%;
	font-size: 1.56rem;
	font-weight: 700;
	line-height: 1.76;
	letter-spacing: 0.2em;
	text-align: center;
}
#recruit .people .textList .pho {
	margin-bottom: 12px;
	padding-left: 4px;
	display: block;
	text-align: center;
}
#recruit .people .textList .pho img {
	width: 99px;
}
#recruit .people .textList .text {
	margin-bottom: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #000;
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.54;
	letter-spacing: 0.1em;
	text-align: center;
}
#recruit .people .textList .note {
	display: block;
	color: #000;
	font-size: 2.1rem;
	font-weight: 500;
	letter-spacing: 0.075em;
	text-align: center;
}
#recruit .people .textList .note small {
	font-size: 1.3rem;
}
#recruit .people .photo {
	position: relative;
}
#recruit .people .photo span {
	display: block;
}
#recruit .people .photo img {
	width: 100%;
}
#recruit .people .photo::after {
	width: 100%;
	height: 35.76%;
	position: absolute;
	left: 0;
	bottom: 0;
	background: url(img/recruit/people_bg04.png) no-repeat center center / 100% 100%;
	content: '';
}
#recruit .works {
	margin-bottom: 40px;
}
#recruit .works .comBox {
	width: 955px;
}
#recruit .works .textList {
	margin-top: -62px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#recruit .works .textList::after {
	width: 260px;
	content: '';
}
#recruit .works .textList li {
	margin-top: 62px;
	width: 260px;
}
#recruit .works .textList .ttl {
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.9rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-align: center;
}
#recruit .works .textList .pho {
	margin-bottom: 30px;
	text-align: center;
}
#recruit .works .textList .pho img {
	height: 60px;
}
#recruit .works .textList .txt {
	margin: 0 25px;
	font-size: 1.4rem;
	line-height: 1.71;
	letter-spacing: 0.1em;
}
#recruit .works .textList .list01 .pho {
	margin-bottom: 26px;
}
#recruit .works .textList .list01 .pho img {
	height: 64px;
}
#recruit .whiteBox.white01 {
	padding-top: 0;
}
#recruit .data {
	padding: 205px 0 111px;
	position: relative;
}
#recruit .data::before {
	width: 100%;
	height: 251px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/recruit/data_bg01.png) no-repeat center center / 100% 100%;
	content: '';
}
#recruit .data h2 {
	margin-bottom: 98px;
}
#recruit .data .comBox {
	width: 1070px;
}
#recruit .data .photo {
	position: relative;
}
#recruit .data .dataList li {
	position: absolute;
	font-size: 7rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	font-family: 'Chakra Petch', sans-serif;
}
#recruit .data .dataList .list01 {
	left: 31%;
	top: 12.7%;
}
#recruit .data .dataList .list02 {
	left: 59%;
	top: 18.1%;
}
#recruit .data .dataList .list03 {
	left: 67.9%;
	top: 18.1%;
}
#recruit .data .dataList .list17 {
	left: 83.5%;
	top: 18.1%;
}
#recruit .data .dataList .list04 {
	right: 80.1%;
	top: 33.05%;
	font-size: 7.5rem;
	letter-spacing: 0.02em;
}
#recruit .data .dataList .list05 {
	left: 17.4%;
	top: 33.65%;
	font-size: 6.3rem;
	letter-spacing: 0.02em;
}
#recruit .data .dataList .list06 {
	left: 65.6%;
	top: 38%;
	letter-spacing: 0.01em;
}
#recruit .data .dataList .list07 {
	left: 75.4%;
	top: 38%;
	letter-spacing: 0.01em;
}
#recruit .data .dataList .list08 {
	right: 86.1%;
	top: 56%;
	letter-spacing: 0.05em;
}
#recruit .data .dataList .list09 {
	left: 15.6%;
	top: 56%;
	letter-spacing: 0.05em;
}
#recruit .data .dataList .list10 {
	left: 39%;
	top: 63.1%;
	letter-spacing: 0.01em;
}
#recruit .data .dataList .list11 {
	left: 47.1%;
	top: 63.1%;
	letter-spacing: 0.01em;
}
#recruit .data .dataList .list12 {
	left: 78.1%;
	top: 63.1%;
	letter-spacing: 0.04em;
}
#recruit .data .dataList .list13 {
	left: 24.6%;
	bottom: 9.69%;
	letter-spacing: 0.05em;
}
#recruit .data .dataList .list14 {
	left: 49.5%;
	bottom: 9.45%;
	letter-spacing: 0.04em;
}
#recruit .data .dataList .list15 {
	left: 49.5%;
	bottom: 2.3%;
	letter-spacing: 0.04em;
}
#recruit .data .dataList .list16 {
	left: 70.2%;
	bottom: 9.7%;
	letter-spacing: 0.1em;
}
#recruit .data .dataList .list18 {
	left: 82.4%;
	bottom: 9.7%;
	letter-spacing: 0.1em;
}
#recruit .check {
	padding: 102px 0 103px;
	background: url(img/recruit/people_bg01.jpg) repeat left top / 10px auto;
}
#recruit .check h2 {
	margin-bottom: 98px;
}
#recruit .check h2 em {
	margin-bottom: 3px;
	font-size: 7.5rem;
}
#recruit .check .textList {
	margin: 0 auto;
	width: 620px;
}
#recruit .check .textList li {
	margin-bottom: 78px;
	display: flex;
	justify-content: space-between;
}
#recruit .check .textList li:last-of-type {
	margin-bottom: 0;
}
#recruit .check .textList li .txtBox {
	margin-top: -8px;
	width: 320px;
}
#recruit .check .textList li .txtBox h3 {
	margin-bottom: 18px;
	color: #000;
	font-size: 3rem;
	letter-spacing: 0.2em;
}
#recruit .check .textList li .txtBox p {
	color: #000;
	font-size: 1.6rem;
	line-height: 1.88;
	letter-spacing: 0.2em;
}
#recruit .check .textList li .btn {
	width: 288px;
}
#recruit .check .textList li .btn a {
	padding: 28px 10px;
	display: block;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	border-radius: 5px;
	background-color: #000;
}
#recruit .check .textList li .btn span {
	padding: 15px 40px 15px 0;
	display: inline-block;
	vertical-align: top;
	background: url(img/common/icon18.png) no-repeat right center / 34px auto;
}
#recruit .check .textBox {
	margin: 145px auto 50px;
	width: 715px;
}
#recruit .check .textBox p {
	color: #000;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 3.07;
	letter-spacing: 0.2em;
	text-align: center;
}
#recruit .check .textBox .title {
	margin-bottom: 30px;
	padding: 20px 10px 22px;
	font-size: 2.3rem;
	line-height: 2;
	border-top: 1px solid #707070;
	border-bottom: 1px solid #707070;
}
.fancybox-slide--html {
	padding: 108px 20px;
}
.popBox {
	padding-bottom: 160px;
	width: calc(100% - 40px);
	max-width: 950px;
	height: calc(100vh - 216px);
	z-index: 99;
	display: none;
}
.popBox .close {
	margin: 0 0 22px auto;
	width: 61px;
	cursor: pointer;
}
.popBox .whiteBox {
	max-height: 600px;
	padding: 57px 20px 76px;
	position: relative;
	box-sizing: border-box;
	background: url(img/recruit/pop_bg01.jpg) repeat-x left center / auto 100%;
}
.popBox .whiteBox::before {
	width: calc(100% - 12px);
	height: calc(100% - 12px);
	position: absolute;
	left: 6px;
	top: 6px;
	background-color: #fff;
	content: '';
}
.popBox .whiteBox .inner {
	margin: 0 auto;
	max-width: 600px;
}
.popBox .whiteBox h2 {
	margin-bottom: 37px;
	color: #000;
	font-size: 8.6rem;
	font-style: italic;
	letter-spacing: 0.2em;
	text-align: center;
	font-family: 'Source Sans Pro', sans-serif;
}
.popBox .whiteBox .tBox {
	margin-bottom: 42px;
	position: relative;
	z-index: 3;
	display: flex;
	justify-content: space-between;
}
.popBox .whiteBox .tBox .pho {
	margin: 7px 0 0 -5px;
	width: 99px;
}
.popBox .whiteBox .tBox .txtBox {
	width: calc(100% - 145px);
	color: #000;
}
.popBox .whiteBox .tBox .txtBox .ttl {
	margin-bottom: 11px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.75;
}
.popBox .whiteBox .tBox .txtBox .ttl strong {
	margin-left: 20px;
	font-size: 1.5rem;
	letter-spacing: 0.1em;
}
.popBox .whiteBox .tBox .txtBox .ttl span {
	margin-top: -8px;
	display: block;
	font-size: 2.5rem;
	font-weight: 700;
	letter-spacing: 0.075em;
}
.popBox .whiteBox .tBox .txtBox .ttl span small {
	font-size: 1.3rem;
}
.popBox .whiteBox .tBox .txtBox p {
	font-weight: 700;
	line-height: 2.07;
	letter-spacing: 0.1em;
}
.popBox .whiteBox .textDl {
	margin-bottom: 46px;
	color: #000;
	position: relative;
	z-index: 2;
}
.popBox .whiteBox .textDl dt {
	margin: 0 -15px 27px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.popBox .whiteBox .textDl dt .num {
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.3rem;
	font-weight: 700;
	font-style: italic;
	letter-spacing: 0.14em;
	border: 1px solid #000;
	box-sizing: border-box;
	font-family: 'Source Sans Pro', sans-serif;
}
.popBox .whiteBox .textDl dt .txt {
	margin-top: -2px;
	width: calc(100% - 57px);
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.2em;
}
.popBox .whiteBox .textDl dd {
	margin-bottom: 28px;
	font-size: 1.4rem;
	line-height: 1.79;
	letter-spacing: 0.1em;
}
.popBox .whiteBox .textDl dd:last-of-type {
	margin-bottom: 0;
}
.popBox .whiteBox h3 {
	margin-bottom: 35px;
	color: #000;
	letter-spacing: 0.2em;
}
.popBox .whiteBox h3 em {
	margin-right: 12px;
	padding: 3px 8px;
	display: inline-block;
	vertical-align: top;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 600;
	background-color: #000;
	font-family: 'Source Sans Pro', sans-serif;
}
.popBox .whiteBox .textBox {
	margin: 0 3px;
	padding: 22px 35px 25px 45px;
	position: relative;
	background: url(img/recruit/pop_bg02.jpg) repeat left top / 7px auto;
	z-index: 2;
}
.popBox .whiteBox .textBox p {
	color: #000;
	font-size: 1.4rem;
	line-height: 1.71;
	letter-spacing: 0.1em;
}
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
	background-color: #000 !important;
	border-radius: 4px;
	width: 8px;
}
.fancybox-is-open .fancybox-bg {
	background-color: rgba(0,0,0,0.35);
}
.mCSB_scrollTools .mCSB_draggerRail {
	background-color: transparent !important;
}
.fancybox-slide--html .fancybox-close-small {
	display: none;
}
.mCSB_inside > .mCSB_container {
	margin-left: 30px;
}
#recruit .fixBtn {
	width: 279px;
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 99;
	text-align: center;
}
#recruit .fixBtn a {
	margin-bottom: 28px;
	display: block;
}
#recruit .fixBtn a:last-of-type {
	margin-bottom: 0;
	display: inline-block;
	text-align: center;
	vertical-align: top;
}
@media all and (min-width: 897px) {
	#recruit .people .textList a:hover {
		opacity: 0.7;
	}
	#recruit .check .textList li .btn a:hover {
		opacity: 0.7;
	}
	.popBox .close:hover {
		opacity: 0.7;
	}
	#recruit .fixBtn a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#recruit .fixBtn {
		width: calc(100% - 40px);
		max-width: 325px;
		right: 50%;
		transform: translateX(50%);
	}
	#recruit .fixBtn a {
		margin-bottom: 11px;
	}
	#recruit .pageTitle {
		margin-bottom: 63px;
		background-image: url(img/recruit/sp_page_title_bg.jpg);
	}
	#recruit .pageTitle .inner {
		padding: 0 20px 10px;
	}
	#recruit .topBox {
		margin-bottom: 96px;
	}
	#recruit .topBox p {
		font-size: 1.4rem;
	}
	#recruit .topBox .title {
		margin-bottom: 12px;
		font-size: 1.8rem;
	}
	#recruit .whiteBox {
		padding-top: 50px;
	}
	#recruit .tokaloy {
		margin-bottom: 15px;
	}
	#recruit .tokaloy .comBox {
		width: auto;
	}
	#recruit .tokaloy h2 {
		margin-bottom: 35px;
		font-size: 5.3rem;
	}
	#recruit .tokaloy h2 .txt {
		padding: 3px 15px 0 12px;
	}
	#recruit .tokaloy h2 .txt.txt01 {
		padding-bottom: 13px;
		font-size: 4.3rem;
	}
	#recruit .tokaloy .textBox {
		margin-left: 0;
	}
	#recruit .tokaloy h3 {
		margin-bottom: 9px;
		font-size: 3.3rem;
		line-height: 1.67;
	}
	#recruit .tokaloy .textBox p {
		margin-left: 0;
		font-size: 1.4rem;
		line-height: 2.6;
	}
	#recruit .tokaloy .textImg {
		display: none;
	}
	#recruit .people {
		margin-bottom: 7px;
		padding: 96px 0 0;
		background-size: 8px auto;
	}
	#recruit .people::before {
		height: 74px;
		background-image: url(img/recruit/sp_people_bg02.png);
	}
	#recruit .people .textList {
		margin: -37px auto 28px;
		width: auto;
	}
	#recruit .people .textList::after {
		display: none;
	}
	#recruit .people .textList li {
		margin-top: 37px;
		width: calc((100% - 24px) / 2);
	}
	#recruit .people .textList .txtBox {
		margin-bottom: 25px;
		padding: 21px 5px 23px;
	}
	#recruit .people .textList .txtBox::after {
		width: 19px;
		height: 18px;
		position: absolute;
		left: 50%;
		bottom: -10px;
		transform: translateX(-50%);
		background: url(img/recruit/people_bg03.png) no-repeat center center / 100% 100%;
		content: '';
	}
	#recruit .people .textList .txtBox p {
		font-size: 1.4rem;
		line-height: 1.97;
		letter-spacing: 0.1em;
	}
	#recruit .people .photo {
		position: relative;
	}
	#recruit .people .photo::after {
		height: 25.5%;
		bottom: -0.66%;
		background-image: url(img/recruit/sp_people_bg04.png);
	}
	#recruit .people .photo img {
		width: 100%;
	}
	#recruit .works .comBox {
		width: auto;
	}
	#recruit .works .textList {
		margin-top: 0;
		display: block;
	}
	#recruit .works .textList::after {
		display: none;
	}
	#recruit .works .textList li {
		margin: 0 0 31px;
		width: auto;
	}
	#recruit .works .textList li.list02 {
		margin-bottom: 15px;
	}
	#recruit .works .textList li:last-of-type {
		margin-bottom: 0;
	}
	#recruit .works .textList .ttl {
		margin-bottom: 14px;
	}
	#recruit .works .textList .pho {
		margin-bottom: 14px;
	}
	#recruit .works .textList .pho img {
		height: 60px;
	}
	#recruit .works .textList .txt {
		margin: 0;
		font-size: 1.4rem;
		line-height: 1.71;
		letter-spacing: 0.1em;
	}
	#recruit .works .textList .list01 .ttl {
		margin-bottom: 8px;
	}
	#recruit .works .textList .list01 .pho {
		margin-bottom: 17px;
	}
	#recruit .works .textList .list01 .pho img {
		height: 64px;
	}
	#recruit .whiteBox.white01 {
		padding-top: 0;
	}
	#recruit .data {
		padding: 75px 0 19px;
	}
	#recruit .data::before {
		height: 75px;
		background-image: url(img/recruit/sp_data_bg01.png);
	}
	#recruit .data h2 {
		margin-bottom: 53px;
	}
	#recruit .data .comBox {
		width: auto;
	}
	#recruit .data .photo {
		margin: 0 -25px;
	}
	#recruit .data .photo img {
		width: 100%;
	}
	#recruit .data .dataList li {
		font-size: 10.13vw;
	}
	#recruit .data .dataList .list01 {
		left: 5.1%;
		top: 14.2%;
	}
	#recruit .data .dataList .list02 {
		left: 41%;
		top: 14.2%;
	}
	#recruit .data .dataList .list03 {
		left: 55.2%;
		top: 14.2%;
	}
	#recruit .data .dataList .list04 {
		right: 77%;
		top: 29%;
		font-size: 9.03vw;
	}
	#recruit .data .dataList .list17 {
		left: 77.1%;
		top: 14.2%;
	}
	#recruit .data .dataList .list05 {
		left: 19.8%;
		top: 29.6%;
		font-size: 7.73vw;
	}
	#recruit .data .dataList .list06 {
		left: 57.5%;
		top: 30.7%;
	}
	#recruit .data .dataList .list07 {
		left: 72.5%;
		top: 30.7%;
	}
	#recruit .data .dataList .list08 {
		right: 82.7%;
		top: 47.7%;
	}
	#recruit .data .dataList .list09 {
		left: 20.1%;
		top: 47.7%;
	}
	#recruit .data .dataList .list10 {
		left: 54.1%;
		top: 51.8%;
		letter-spacing: 0.01em;
	}
	#recruit .data .dataList .list11 {
		left: 66.8%;
		top: 51.8%;
	}
	#recruit .data .dataList .list12 {
		left: 13.6%;
		top: 69.4%;
	}
	#recruit .data .dataList .list13 {
		left: 40.2%;
		bottom: 8.6%;
		font-size: 10.3vw;
		letter-spacing: 0.01em;
	}
	#recruit .data .dataList .list14 {
		left: 75.9%;
		bottom: 8.2%;
		font-size: 10.3vw;
		letter-spacing: 0.01em;
	}
	#recruit .data .dataList .list15 {
		left: 75.9%;
		bottom: 0.55%;
		font-size: 10.3vw;
		letter-spacing: 0.01em;
	}
	#recruit .data .dataList .list16 {
		left: 54.8%;
		bottom: 28.3%;
	}
	#recruit .data .dataList .list18 {
		left: 74%;
		bottom: 28.4%;
	}
	#recruit .check {
		padding: 40px 0 55px;
		background-size: 8px auto;
	}
	#recruit .check h2 {
		margin: 0 -15px 63px;
		letter-spacing: 0.1em;
	}
	#recruit .check h2 em {
		margin-bottom: -9px;
		font-size: 4.5rem;
	}
	#recruit .check .textList {
		margin: 0 auto;
		width: auto;
	}
	#recruit .check .textList li {
		margin-bottom: 27px;
		display: block;
	}
	#recruit .check .textList li:last-of-type {
		margin-bottom: 0;
	}
	#recruit .check .textList li .txtBox {
		margin: 0 0 11px;
		width: auto;
	}
	#recruit .check .textList li .txtBox h3 {
		margin-bottom: 12px;
		font-size: 2.1rem;
		text-align: center;
	}
	#recruit .check .textList li .txtBox p {
		font-size: 1.4rem;
		line-height: 1.71;
		letter-spacing: 0.1em;
	}
	#recruit .check .textList li .btn {
		width: auto;
	}
	#recruit .check .textList li .btn a {
		padding: 9px 10px;
		font-size: 1.5rem;
	}
	#recruit .check .textList li .btn span {
		padding: 15px 40px 15px 0;
	}
	#recruit .check .textBox {
		margin: 113px auto 65px;
		width: auto;
	}
	#recruit .check .textBox p {
		font-size: 1.3rem;
		line-height: 2.23;
	}
	#recruit .check .textBox .title {
		margin-bottom: 29px;
		padding: 20px 10px 20px;
		font-size: 2rem;
		line-height: 1.7;
		letter-spacing: 0.15em;
		border-top: 1px solid #707070;
		border-bottom: 1px solid #707070;
	}
	.popBox {
		padding-bottom: 0;
		width: calc(100% - 10px);
		max-width: inherit;
		height: auto;
	}
	.popBox .close {
		margin-bottom: 20px;
		width: 45px;
	}
	.popBox .whiteBox {
		margin-bottom: 100px;
		padding: 42px 26px 61px;
		max-height: inherit;
	}
	.popBox .whiteBox .inner {
		max-width: inherit;
	}
	.popBox .whiteBox h2 {
		margin-bottom: 42px;
		font-size: 5.5rem;
	}
	.popBox .whiteBox .tBox {
		margin: 0 -10px 57px 0;
	}
	.popBox .whiteBox .tBox .pho {
		margin: -15px 0 0;
	}
	.popBox .whiteBox .tBox .txtBox {
		width: calc(100% - 115px);
	}
	.popBox .whiteBox .tBox .txtBox .ttl {
		margin: 0 0 28px;
		font-size: 1.3rem;
	}
	.popBox .whiteBox .tBox .txtBox .ttl strong {
		margin: 3px 0 0;
		font-size: 1.4rem;
		display: block;
	}
	.popBox .whiteBox .tBox .txtBox .ttl span {
		margin-top: 0;
	}
	.popBox .whiteBox .tBox .txtBox p {
		margin-left: -115px;
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 1.71;
		letter-spacing: 0.2em;
	}
	.popBox .whiteBox .textDl {
		margin-bottom: 43px;
	}
	.popBox .whiteBox .textDl dt {
		margin: 0 0 21px;
		align-items: flex-start;
	}
	.popBox .whiteBox .textDl dt .txt {
		margin-top: -2px;
		width: calc(100% - 57px);
	}
	.popBox .whiteBox .textDl dd {
		margin: 0 -3px 44px 0;
		line-height: 1.71;
	}
	.popBox .whiteBox .textDl dd:last-of-type {
		margin-bottom: 0;
	}
	.popBox .whiteBox h3 {
		margin-bottom: 15px;
		font-size: 1.5rem;
		line-height: 1.6;
	}
	.popBox .whiteBox h3 em {
		margin: 0 0 10px;
		font-style: normal;
	}
	.popBox .whiteBox .textBox {
		margin: 0;
		padding: 24px 20px 25px;
	}
}
@media all and (max-width: 374px) {
	#recruit .tokaloy h2 {
		font-size: 4.8rem;
	}
	#recruit .tokaloy h2 .txt.txt01 {
		font-size: 4rem;
	}
	#recruit .tokaloy .textBox p {
		font-size: 1.2rem;
	}
	#recruit .tokaloy h3 {
		font-size: 3rem;
	}
}
/*------------------------------------------------------------
	cemented
------------------------------------------------------------*/
#cemented .pageTitle {
	margin-bottom: 72px;
	background-image: url(img/cemented/page_title_bg.jpg);
}
#cemented .topBox {
	margin-bottom: 132px;
}
#cemented .topBox .headLine02 {
	margin-bottom: 118px;
}
#cemented .topBox .whiteBox {
	padding: 66px 69px 79px;
	background-color: #fff;
}
#cemented .topBox h4  {
	margin-bottom: 51px;
}
#cemented .topBox h4 span {
	padding-right: 40px;
	display: inline-block;
	position: relative;
	color: #000;
	font-size: 2.5rem;
	letter-spacing: 0.22em;
	vertical-align: top;
}
#cemented .topBox h4 span::before {
	width: 35px;
	height: 1px;
	position: absolute;
	right: 0;
	top: calc(50% + 2px);
	transform: translateY(-50%);
	background-color: #000;
	content: '';
}
#cemented .topBox .linkList {
	margin-top: -85px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cemented .topBox .linkList::after {
	width: 255px;
	content: '';
}
#cemented .topBox .linkList li {
	margin-top: 85px;
	width: 255px;
}
#cemented .topBox .linkList .pho {
	margin-bottom: 22px;
	text-align: center;
}
#cemented .topBox .linkList .pho img {
	height: 156px;
}
#cemented .topBox .linkList .txtBox p {
	margin-bottom: 30px;
	color: #000;
	font-size: 1.8rem;
	line-height: 1.61;
	text-align: center;
}
#cemented .topBox .linkList .comBtn {
	width: auto;
}
#cemented .topBox .linkList .comBtn a {
	padding: 12px 10px 11px;
	background-image: none;
}
#cemented .sec01 {
	margin-bottom: 200px;
	padding-top: 102px;
	position: relative;
}
#cemented .sec01::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#cemented .sec01 .headLine02 {
	margin-bottom: 60px;
	font-size: 3.6rem;
	letter-spacing: 0.17em;
}
#cemented .sec01 .imgArea {
	margin-bottom: 123px;
	padding: 79px 92px 88px;
	display: flex;
	justify-content: space-between;
	background-color: #2F2F2F;
}
#cemented .sec01 .imgArea .pho {
	margin-top: 7px;
	width: 110px;
}
#cemented .sec01 .imgArea .pho span {
	width: 100%;
}
#cemented .sec01 .imgArea .pho img {
	width: 100%;
}
#cemented .sec01 .imgArea .txtBox {
	width: 630px;
}
#cemented .sec01 .imgArea .txtBox .ttl {
	margin-bottom: 26px;
	font-size: 2.6rem;
	font-weight: 500;
	letter-spacing: 0.14em;
	font-feature-settings: 'palt';
}
#cemented .sec01 .imgArea .txtBox  p {
	line-height: 1.87;
}
#cemented .sec01 .imgBox {
	margin-bottom: 122px;
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
}
#cemented .sec01 .imgBoxL {
	margin-bottom: 78px;
	flex-direction: row;
}
#cemented .sec01 .imgBox .photoBox {
	width: calc(50% - 118px);
}
#cemented .sec01 .imgBox .photoBox span {
	width: 100%;
}
#cemented .sec01 .imgBox .photoBox im g{
	width: 100%;
}
#cemented .sec01 .imgBox .textBox {
	margin: -55px 90px 0 0;
	width: 530px;
}
#cemented .sec01 .imgBoxL .textBox {
	margin: 0 0 0 80px;
}
#cemented .sec01 .imgBox .textBox h4 {
	margin-bottom: 90px;
}
#cemented .sec01 .imgBoxL .textBox h4 {
	margin-bottom: 70px;
}
#cemented .sec01 .imgBox .textBox h4 span {
	padding-right: 70px;
	display: inline-block;
	position: relative;
	color : #8A8A8A;
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	vertical-align: top;
}
#cemented .sec01 .imgBox .textBox h4 span::after {
	width: 60px;
	height: 1px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background-color: #8A8A8A;
	content: '';
}
#cemented .sec01 .imgBox .textBox .title {
	margin-bottom: 30px;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 1.72;
	letter-spacing: 0.1em;
}
#cemented .sec01 .imgBox .textBox p {
	line-height: 1.87;
}
#cemented .sec01 .imgBox01 {
	margin-bottom: 79px;
}
#cemented .sec01 .linkList {
	margin: -20px 0 140px;
	width: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#cemented .sec01 .linkList:last-of-type {
	margin-bottom: 0;
}
#cemented .sec01 .linkList li {
	margin: 20px 16px 0;
	width: 330px;
}
@media all and (-ms-high-contrast:none) {
	#cemented .sec01 .linkList li a {
		background-size: 30px auto;
	}
}
@media all and (max-width: 896px) {
	#cemented .pageTitle {
		margin-bottom: 93px;
		background-image: url(img/cemented/sp_page_title_bg.jpg);
	}
	#cemented .pageTitle .inner {
		padding: 0 25px 30px;
		height: 203px;
	}
	#cemented .topBox {
		margin-bottom: 55px;
	}
	#cemented .topBox .headLine02 {
		margin-bottom: 46px;
		font-size: 2.1rem;
		line-height: 1.9;
		letter-spacing: 0.1em;
	}
	#cemented .topBox .whiteBox {
		padding: 45px 22px 119px;
	}
	#cemented .topBox h4  {
		margin-bottom: 46px;
	}
	#cemented .topBox .linkList {
		margin-top: 0;
		display: block;
	}
	#cemented .topBox .linkList::after {
		display: none;
	}
	#cemented .topBox .linkList li {
		margin: 0 0 57px;
		width: auto;
	}
	#cemented .topBox .linkList li:last-of-type {
		margin-bottom: 0;
	}
	#cemented .topBox .linkList .pho {
		margin-bottom: 13px;
	}
	#cemented .topBox .linkList .pho span {
		width: 100%;
	}
	#cemented .topBox .linkList .pho img {
		height: auto;
		width: 100%;
	}
	#cemented .topBox .linkList .txtBox p {
		margin-bottom: 24px;
		font-size: 1.4rem;
		line-height: 1.79;
	}
	#cemented .topBox .linkList .comBtn a {
		padding: 12px 10px 13px;
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	#cemented .topBox .linkList .list01 .pho span {
		width: 100%;
	}
	#cemented .topBox .linkList .list01 .pho img {
		width: 41.28%;
	}
	#cemented .sec01 {
		margin-bottom: 100px;
		padding-top: 55px;
	}
	#cemented .sec01::before {
		height: 5px;
	}
	#cemented .sec01 .headLine02 {
		margin-bottom: 50px;
		font-size: 2.1rem;
		line-height: 1.6;
		letter-spacing: 0.2em;
	}
	#cemented .sec01 .imgArea {
		margin-bottom: 67px;
		padding: 61px 22px 69px;
		display: block;
	}
	#cemented .sec01 .imgArea .pho {
		margin: 0 0 35px;
		width: auto;
		text-align: center;
	}
	#cemented .sec01 .imgArea .pho img {
		width: 85px;
	}
	#cemented .sec01 .imgArea .txtBox {
		width: auto;
	}
	#cemented .sec01 .imgArea .txtBox .ttl {
		margin-bottom: 26px;
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1.67;
		letter-spacing: 0.1em;
		text-align: center;
	}
	#cemented .sec01 .imgArea .txtBox  p {
		font-size: 1.4rem;
		line-height: 2;
		text-align: center;
	}
	#cemented .sec01 .imgBox {
		margin-bottom: 72px;
		display: block;
	}
	#cemented .sec01 .imgBoxL {
		margin-bottom: 37px;
	}
	#cemented .sec01 .imgBox .photoBox {
		margin: 0 0 54px auto;
		width: calc(100% - 50px);
	}
	#cemented .sec01 .imgBox .photoBox span {
		width: 100%;
	}
	#cemented .sec01 .imgBox .photoBox img {
		width: 100%;
	}
	#cemented .sec01 .imgBoxL .photoBox {
		margin: 0 auto 54px 0;
	}
	#cemented .sec01 .imgBox .textBox {
		margin: 0 20px;
		width: auto;
	}
	#cemented .sec01 .imgBoxL .textBox {
		margin: 0 20px;
	}
	#cemented .sec01 .imgBox .textBox h4 {
		margin-bottom: 31px;
	}
	#cemented .sec01 .imgBoxL .textBox h4 {
		margin-bottom: 31px;
	}
	#cemented .sec01 .imgBox .textBox h4 span {
		padding-right: 40px;
		font-size: 1.8rem;
	}
	#cemented .sec01 .imgBox .textBox h4 span::after {
		width: 35px;
	}
	#cemented .sec01 .imgBox .textBox .title {
		margin-bottom: 18px;
		font-size: 2rem;
		line-height: 2.15;
		letter-spacing: 0.05em;
		font-feature-settings: 'palt';
	}
	#cemented .sec01 .imgBox .textBox p {
		font-size: 1.4rem;
		line-height: 2;
	}
	#cemented .sec01 .imgBox01 {
		margin-bottom: 39px;
	}
	#cemented .sec01 .linkList {
		margin: 0 auto 70px;
		width: auto;
		display: block;
	}
	#cemented .sec01 .linkList.link01 {
		margin-bottom: 80px;
	}
	#cemented .sec01 .linkList li {
		margin: 0 auto 24px;
		width: auto;
		max-width: 325px;
	}
	#cemented .sec01 .linkList a {
		padding: 11px 50px;
	}
	#cemented .sec01 .linkList li:last-of-type {
		margin-bottom: 0;
	}
}
@media all and (max-width: 374px) {
	#cemented .sec01 .imgBox .textBox .title {
		font-size: 1.6rem;
	}
	#cemented .sec01 .linkList a {
		padding: 11px 40px;
		background-size: 25px auto;
		background-position: right 10px center;
	}
	#cemented .sec01 .linkList li {
		width: calc(100% - 40px);
	}
	#cemented .sec01 .imgArea .txtBox p {
		font-size: 1.1rem;
	}
	#cemented .topBox .headLine02 {
		font-size: 1.9rem;
		letter-spacing: 0.05em;
	}
}
/*------------------------------------------------------------
	maching
------------------------------------------------------------*/
#cemented.maching .pageTitle {
	background-image: url(img/maching/page_title_bg.jpg);
}
#cemented.maching .topBox .linkList::after {
	display: none;
}
#cemented.maching .topBox .linkList {
	margin: -85px -24px 0;
	justify-content: center;
}
#cemented.maching .topBox .linkList li {
	margin: 85px 24px 0;
}
#cemented.maching .sec01 {
	margin-bottom: 133px;
	padding-top: 95px;
}
#cemented.maching .sec01 .imgBoxL {
	margin-bottom: 54px;
}
#cemented.maching .sec01 .imgBox:last-of-type {
	margin-bottom: 0;
}
#cemented.maching .sec01 .imgBox02 .photoBox {
	width: calc(50% + 37px);
}
#cemented.maching .sec01 .imgBox02 .textBox {
	width: 395px;
}
#cemented.maching .sec01 .imgBox .textBox .img {
	margin: 20px 0 5px;
	text-align: center;
}
#cemented.maching .sec01 .imgBox .textBox .img img {
	width: 29px;
}
#cemented.maching .sec01 .text {
	margin-bottom: 15px;
	text-align: center;
	letter-spacing: 0.1em;
}
#cemented.maching .sec01 .linkList {
	margin-bottom: 143px;
}
#cemented.maching .sec01 .head01 {
	margin-bottom: 118px;
}
#cemented.maching .sec01 .area .imgBox .photoBox {
	width: calc(50% - 63px);
}
#cemented.maching .sec01 .area .imgBox .textBox {
	margin-top: -20px;
	width: 410px;
}
#cemented.maching .sec01 .area .imgBox .textBox h5 {
	margin-bottom: 12px;
	font-size: 3.2rem;
	font-weight: 500;
	letter-spacing: 0.11em;
}
#cemented.maching .sec01 .area .imgBox .textBox h5 strong {
	margin-right: 20px;
	font-size: 4.5rem;
	font-weight: 600;
	letter-spacing: 0;
	font-family: 'Source Sans Pro', sans-serif;
}
#cemented.maching .sec01 .area .imgBox .textBox .ttl {
	margin: 35px 0 10px;
	text-align: center;
	max-width: 330px;
}
#cemented.maching .sec01 .area .imgBox .textBox .comBtn {
	margin: 0;
}
#cemented.maching .sec02 .head01 {
	margin-bottom: 160px;
}
#cemented.maching .sec02 .imgBox .photoBox {
	width: calc(50% + 37px);
}
#cemented.maching .sec02 .imgBox .textBox {
	margin: -10px 50px 0 0;
	width: 410px;
}
#cemented.maching .sec02 .imgBox .textBox .title {
	margin-bottom: 45px;
}
#cemented.maching .sec02 .imgBox .textBox .comBtn {
	margin: 60px 0 0;
}
#cemented.maching .sec03 {
	margin-bottom: 190px;
	padding-top: 110px;
}
#cemented.maching .sec03 .headLine02 {
	margin-bottom: 100px;
	font-size: 3rem;
}
#cemented.maching .sec03 .bgBox {
	padding: 107px 0 102px;
	background-color: #222;
}
#cemented.maching .sec03 .comBox {
	width: 662px;
}
#cemented.maching .sec03 .photoList {
	margin: -70px 0 70px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cemented.maching .sec03 .photoList:last-of-type {
	margin-bottom: 0;
}
#cemented.maching .sec03 .photoList li {
	margin-top: 70px;
	width: 290px;
}
#cemented.maching .sec03 .photoList .list01 {
	margin-top: 42px;
}
#cemented.maching .sec03 .photoList .pho {
	margin-bottom: 26px;
}
.maching#cemented .sec03 .photoList .pho span {
	width: 100%;
}
.maching#cemented .sec03 .photoList .pho img {
	width: 100%;
}
#cemented.maching .sec03 .photoList p {
	text-align: center;
	font-size: 1.9rem;
}
#cemented.maching .sec03 .subBox .title {
	margin-bottom: 17px;
}
#cemented.maching .sec03 .subBox .title span {
	padding: 3px 15px;
	display: inline-block;
	vertical-align: top;
	font-size: 1.6rem;
	border: 1px solid #fff;
}
#cemented.maching .sec03 .subBox .imgArea {
	margin-bottom: 9px;
	padding: 0;
	align-items: center;
	background-color: #373737;
}
#cemented.maching .sec03 .subBox .phoBox {
	width: 290px;
}
.maching#cemented .sec03 .subBox .phoBox span {
	width: 100%;
}
.maching#cemented .sec03 .subBox .phoBox img {
	width: 100%;
}
#cemented.maching .sec03 .subBox .txtBox {
	width: calc(100% - 290px);
	display: flex;
	justify-content: center;
}
#cemented.maching .sec03 .subBox .txtBox dl {
	width: 100%;
	display: flex;
	justify-content: center;
}
#cemented.maching .sec03 .subBox .txtBox dt {
	margin: 5px 17px 0 0;
	width: 70px;
}
#cemented.maching .sec03 .subBox .txtBox dd {
	width: 180px;
	max-width: calc(100% - 90px);
}
#cemented.maching .sec03 .subBox .txtBox ul li {
	padding-left: 20px;
	line-height: 2.27;
	background: url(img/maching/sec03_bg01.png) no-repeat left top 11px / 13px auto;
}
#cemented.maching .sec03 .note {
	margin-bottom: 22px;
}
#cemented.maching .sec03 .text {
	margin-bottom: 69px;
	font-size: 1.9rem;
}
@media all and (max-width: 896px) {
	#cemented.maching .pageTitle {
		margin-bottom: 56px;
		background-image: url(img/maching/sp_page_title_bg.jpg);
	}
	#cemented.maching .pageTitle .inner {
		height: 240px;
	}
	#cemented.maching .topBox .linkList::after {
		display: none;
	}
	#cemented.maching .topBox .linkList {
		margin: 0;
	}
	#cemented.maching .topBox .linkList li {
		margin: 0 0 57px;
	}
	#cemented.maching .topBox .linkList li:last-of-type {
		margin-bottom: 0;
	}
	#cemented.maching .topBox .whiteBox {
		padding-bottom: 72px;
	}
	#cemented.maching .sec01 {
		margin-bottom: 75px;
		padding-top: 52px;
	}
	#cemented.maching .sec01 .headLine02 {
		letter-spacing: 0.15em;
	}
	#cemented.maching .sec01 .imgBoxL {
		margin: 0 0 40px;
	}
	#cemented.maching .sec01 .imgBox02 {
		margin: 0 26px 23px;
	}
	#cemented.maching .sec01 .imgBox02 .photoBox {
		margin-bottom: 18px;
		width: auto;
	}
	#cemented.maching .sec01 .imgBox02 .textBox {
		margin: 0;
		width: auto;
	}
	#cemented.maching .sec01 .imgBox02 .textBox .title {
		margin-bottom: 25px;
		font-size: 2.5rem;
		line-height: 1.72;
		letter-spacing: 0.05em;
		text-align: center;
		font-feature-settings: 'palt';
	}
	#cemented.maching .sec01 .imgBox .textBox .img {
		margin: -2px 0 22px;
	}
	#cemented.maching .sec01 .text {
		margin-bottom: 15px;
		font-size: 1.4rem;
	}
	#cemented.maching .sec01 .linkList {
		margin-bottom: 73px;
	}
	#cemented.maching .sec01 .linkList li {
		width: auto;
	}
	#cemented.maching .sec01 .head01 {
		margin-bottom: 45px;
	}
	#cemented.maching .sec01 .area .imgBox {
		margin-bottom: 80px;
	}
	#cemented.maching .sec01 .area .imgBox:last-of-type {
		margin-bottom: 0;
	}
	#cemented.maching .sec01 .area .imgBox .photoBox {
		margin-bottom: 34px;
		width: calc(100% - 50px);
	}
	#cemented.maching .sec01 .area .imgBox .textBox {
		margin-top: 0;
		width: auto;
	}
	#cemented.maching .sec01 .area .imgBox .textBox h5 {
		margin-bottom: 20px;
		font-size: 2.6rem;
	}
	#cemented.maching .sec01 .area .imgBox .textBox h5 strong {
		font-size: 3.9rem;
	}
	#cemented.maching .sec01 .area .imgBox .textBox .ttl {
		margin: 48px 0 10px;
		max-width: inherit;
	}
	#cemented.maching .sec01 .area .imgBox .textBox .comBtn {
		margin: 0 auto;
	}
	#cemented.maching .sec02 {
		margin-bottom: 55px;
	}
	#cemented.maching .sec02 .head01 {
		margin-bottom: 50px;
	}
	#cemented.maching .sec02 .imgBox {
		margin: 0 26px;
	}
	#cemented.maching .sec02 .imgBox .photoBox {
		margin-bottom: 22px;
		width: auto;
	}
	#cemented.maching .sec02 .imgBox .textBox {
		margin: 0;
		width: auto;
	}
	#cemented.maching .sec02 .imgBox .textBox .title {
		margin-bottom: 15px;
	}
	#cemented.maching .sec02 .imgBox .textBox .comBtn {
		margin: 39px auto 0;
	}
	#cemented.maching .sec03 {
		margin-bottom: 80px;
		padding-top: 53px;
	}
	#cemented.maching .sec03 .headLine02 {
		margin-bottom: 42px;
		font-size: 2.1rem;
	}
	#cemented.maching .sec03 .bgBox {
		padding: 32px 0 55px;
	}
	#cemented.maching .sec03 .comBox {
		width: auto;
	}
	#cemented.maching .sec03 .photoList {
		margin: 0 0 63px;
		display: block;
	}
	#cemented.maching .sec03 .photoList li {
		margin: 0 0 58px;
		width: auto;
	}
	#cemented.maching .sec03 .photoList li:last-of-type {
		margin-bottom: 0;
	}
	#cemented.maching .sec03 .photoList .list01 {
		margin-top: 0;
	}
	#cemented.maching .sec03 .photoList .pho {
		margin-bottom: 16px;
	}
	#cemented.maching .sec03 .photoList .pho span {
		width: 100%;
	}
	#cemented.maching .sec03 .photoList .pho img {
		width: 100%;
	}
	#cemented.maching .sec03 .photoList p {
		font-size: 1.8rem;
	}
	#cemented.maching .sec03 .subBox .title {
		margin-bottom: 25px;
	}
	#cemented.maching .sec03 .subBox .title span {
		padding: 4px 15px;
		font-size: 1.5rem;
	}
	#cemented.maching .sec03 .subBox .imgArea {
		margin-bottom: 15px;
		padding: 0 0 10px;
	}
	#cemented.maching .sec03 .subBox .phoBox {
		margin-bottom: 20px;
		width: auto;
	}
	#cemented.maching .sec03 .subBox .phoBox span {
		width: 100%;
	}
	#cemented.maching .sec03 .subBox .phoBox img {
		width: 100%;
	}
	#cemented.maching .sec03 .subBox .txtBox {
		width: auto;
	}
	#cemented.maching .sec03 .subBox .txtBox dl {
		width: auto;
		display: block;
	}
	#cemented.maching .sec03 .subBox .txtBox dt {
		margin: 0 0 3px;
		width: auto;
		font-size: 1.5rem;
	}
	#cemented.maching .sec03 .subBox .txtBox dd {
		width: 180px;
		max-width: inherit;
	}
	#cemented.maching .sec03 .subBox .txtBox ul li {
		line-height: 2.14;
		font-size: 1.4rem;
		background-position: left top 8px;
	}
	#cemented.maching .sec03 .note {
		margin-bottom: 12px;
		font-size: 1.3rem;
		line-height: 1.92;
	}
	#cemented.maching .sec03 .text {
		margin-bottom: 60px;
		font-size: 1.8rem;
	}
}
@media all and (max-width: 374px) {
	#cemented.maching .sec01 .imgBox02 .textBox .title {
		font-size: 2rem;
	}
	#cemented.maching .sec01 .linkList li {
		width: calc(100% - 40px);
	}
	#cemented.maching .sec02 .imgBox .textBox .comBtn a,
	#cemented.maching .sec01 .area .imgBox .textBox .comBtn a {
		padding: 11px 40px;
	}
}
/*------------------------------------------------------------
	power
------------------------------------------------------------*/
#power {
	overflow: hidden;
}
#power .pageTitle {
	margin-bottom: 72px;
	background-image: url(img/power/page_title_bg.jpg);
}
#power .point {
	margin-bottom: 115px;
}
#power .point .headLine02 {
	margin-bottom: 61px;
}
#power .point .textList {
	margin: -25px 0 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#power .point .textList::after {
	width: 325px;
	content: '';
}
#power .point .textList li {
	margin: 25px 0 0;
	width: 325px;
}
#power .point .textList li:first-of-type {
	width: 335px;
}
#power .point .textList li:nth-of-type(3) {
	width: 290px;
}
#power .point .textList .ttl {
	margin-bottom: 28px;
	font-size: 2.5rem;
	font-weight: 500;
	font-feature-settings: 'palt';
	line-height: 1.8;
	letter-spacing: 0.2em;
}
#power .point .textList .ttl span {
	margin-bottom: 11px;
	display: block;
	color : #8A8A8A;
	font-size: 2.7rem;
	font-weight: 400;
	letter-spacing: 0.25rem;
}
#power .point .textList .ttl em {
	margin-left: 5px;
	font-style: normal;
	font-size: 4.2rem;
	font-weight: 600;
}
#power .point .textList p {
	line-height: 1.87;
}
#power .sec01 {
	padding: 100px 0 230px;
	position: relative;
	/* background: url(img/power/sec01_bg01.png) no-repeat left calc(50% + 185px) bottom -129px / 2846px auto; */
	/* overflow: hidden; */
	z-index: 2;
}
#power .sec01::after {
	width: 2846px;
	height: 2177px;
	position: absolute;
	left: calc(50% + 185px);
	bottom: -129px;
	background: url(img/power/sec01_bg01.png) no-repeat center center / cover;
	content: '';
	z-index: -1;
	transform: translateX(-50%);
}
#power .sec01::before {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(img/common/line02.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#power .sec01 .headLine02 {
	margin-bottom: 53px;
	font-size: 3.6rem;
	letter-spacing: 0.075em;
}
#power .sec01 .text {
	margin-bottom: 45px;
	line-height: 3.33;
	letter-spacing: 0.075em;
	text-align: center;
}
#power .sec01 .textImg {
	width: 839px;
}
#power .roots {
	margin-bottom: 128px;
	position: relative;
	z-index: 6;
}
#power .roots .bgBox {
	padding: 47px 20px 92px;
	background-color: #2F2F2F;
}
#power .roots .title {
	margin-bottom: 61px;
	color : #616161;
	font-size: 2.3rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-align: center;
}
#power .roots .text {
	margin-bottom: 41px;
	font-size: 2rem;
	line-height: 1.75;
	letter-spacing: 0.1em;
	text-align: center;
}
#power .roots .textList {
	margin: 0 auto;
	width: 561px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}
#power .roots .textList li {
	padding: 14px 22px 36px;
	width: 234px;
	position: relative;
	box-sizing: border-box;
	border: 1px solid #fff;
}
#power .roots .textList li::after {
	width: 53px;
	height: 53px;
	position: absolute;
	right: -73px;
	top: 50%;
	transform: translateY(-50%);
	background: url(img/power/roots_bg01.png) no-repeat center center / cover;
	content: '';
}
#power .roots .textList li:nth-of-type(2n)::after {
	display: none;
}
#power .roots .textList li .ttl {
	margin-bottom: 10px;
	padding: 0;
	font-size: 1.7rem;
	line-height: 1.75;
	display: flex;
	align-items: center;
	justify-content: center;
	font-feature-settings: 'palt';
	border: none;
}
#power .roots .textList li p {
	padding-top: 25px;
	text-align: center;
	line-height: 1.87;
	border-top: 1px solid #fff;
}
#power .sec02 {
	margin-bottom: 200px;
}
#power .sec02 .headLine02 {
	margin-bottom: -3px;
	font-size: 3.6rem;
}
#power .sec02 .text {
	margin-bottom: 95px;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 3.67;
	letter-spacing: 0.075em;
}
#power .sec02 .bgBox {
	padding: 115px 0 114px;
}
#power .sec02 .photo {
	margin-bottom: 33px;
	text-align: center;
}
#power .sec02 .photo img {
	width: 725px;
}
#power .sec02  .ttl {
	margin-bottom: 35px;
	font-size: 2.3rem;
	font-weight: 500;
	letter-spacing: 0.075em;
}
@media all and (max-width: 896px) {
	#power .pageTitle {
		margin-bottom: 56px;
		background-image: url(img/power/sp_page_title_bg.jpg);
	}
	#power .pageTitle .inner {
		padding-bottom: 0;
	}
	#power .point {
		margin-bottom: 20px;
	}
	#power .point .headLine02 {
		margin-bottom: -1px;
		font-size: 2.1rem;
		line-height: 1.9;
	}
	#power .point .textList {
		margin: 0;
		display: block;
	}
	#power .point .textList::after {
		display: none;
	}
	#power .point .textList li {
		margin: 0;
		width: auto;
	}
	#power .point .textList li:first-of-type {
		width: auto;
	}
	#power .point .textList li:nth-of-type(3) {
		width: auto;
	}
	#power .point .textList .ttl {
		margin-bottom: 18px;
		font-size: 2rem;
		line-height: 2.15;
		text-align: center;
	}
	#power .point .textList .ttl span {
		margin-bottom: -17px;
		font-size: 2.3rem;
	}
	#power .point .textList .ttl em {
		margin-left: 5px;
		font-size: 3.5rem;
	}
	#power .point .textList p {
		font-size: 1.4rem;
		line-height: 2;
	}
	#power .sec01 {
		padding: 50px 0 105px;
		background: url(img/power/sp_sec01_bg01.png) no-repeat center bottom 57px / 100% auto;
	}
	#power .sec01::after {
		display: none;
	}
	#power .sec01::before {
		height: 5px;
	}
	#power .sec01 .headLine02 {
		margin-bottom: 30px;
		font-size: 2.1rem;
		line-height: 1.9;
	}
	#power .sec01 .text {
		margin: 0 -15px 48px;
		font-size: 1.4rem;
		line-height: 2.14;
		letter-spacing: 0;
	}
	#power .sec01 .textImg {
		margin: 0 -13px;
		width: auto;
	}
	#power .sec01 .textImg img {
		width: 100%;
	}
	#power .roots {
		margin-bottom: 27px;
	}
	#power .roots .bgBox {
		padding: 28px 20px 45px;
	}
	#power .roots .title {
		margin-bottom: 18px;
	}
	#power .roots .text {
		margin-bottom: 25px;
	}
	#power .roots .textList {
		width: auto;
		display: block;
	}
	#power .roots .textList li {
		margin-bottom: 85px;
		padding: 14px 22px 45px;
		width: auto;
	}
	#power .roots .textList li:nth-of-type(2) {
		padding-bottom: 30px;
	}
	#power .roots .textList li:last-of-type {
		margin-bottom: 0;
	}
	#power .roots .textList li::after {
		right: 50%;
		top: auto;
		bottom: -70px;
		transform: translate(50%,0);
	}
	#power .roots .textList li .ttl {
		margin-bottom: 16px;
		font-size: 1.6rem;
		line-height: 1.75;
		letter-spacing: 0.2em;
	}
	#power .roots .textList li p {
		padding-top: 31px;
		font-size: 1.4rem;
		line-height: 2;
	}
	#power .sec02 {
		margin-bottom: 100px;
	}
	#power .sec02 .headLine02 {
		margin-bottom: 18px;
		font-size: 2.1rem;
	}
	#power .sec02 .text {
		margin-bottom: 35px;
		font-size: 1.4rem;
		line-height: 2.14;
	}
	#power .sec02 .bgBox {
		padding: 43px 23px 44px;
	}
	#power .sec02 .photo {
		margin-bottom: 33px;
	}
	#power .sec02 .photo img {
		width: 100%;
	}
	#power .sec02  .ttl {
		margin-bottom: 25px;
		font-size: 2.1rem;
		text-align: center;
	}
	#power .sec02 .textImg {
		text-align: center;
	}
}
@media all and (max-width: 374px) {
	#power .point .headLine02 {
		font-size: 1.9rem;
	}
	#power .sec01 .text {
		font-size: 1.3rem;
	}
	#power .roots .text {
		font-size: 1.7rem;
	}
	#power .roots .textList li .ttl {
		font-size: 1.4rem;
	}
	#power .sec02 .text {
		font-size: 1.3rem;
	}
}
/*------------------------------------------------------------
	skill
------------------------------------------------------------*/
#power.skill .pageTitle {
	background-image: url(img/skill/page_title_bg.jpg);
}
#power.skill .point {
	margin-bottom: 122px;
}
#power.skill .point .textList li:nth-of-type(3) .ttl {
	margin-right: -43px;
	font-feature-settings: 'palt';
}
#power.skill .sec01 {
	padding-bottom: 130px;
	background-image: none;
}
#power.skill .sec01::after {
	display: none;
}
#power.skill .sec01 .headLine02 {
	margin-bottom: 91px;
}
#power.skill .sec01 .imgBox {
	margin-bottom: 67px;
	display: flex;
	align-items: center;
}
#power.skill .sec01 .imgBox .photoBox {
	width: 546px;
}
#power.skill .sec01 .imgBox .photoBox span {
	width: 100%;
}
#power.skill .sec01 .imgBox .photoBox img {
	width: 100%;
}
#power.skill .sec01 .imgBox .textBox {
	margin-left: 35px;
	width: 350px;
}
#power.skill .sec01 .imgBox .textBox .title {
	margin-bottom: 33px;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 1.72;
}
#power.skill .sec01 .imgBox .textBox  p {
	line-height: 1.87;
	letter-spacing: 0.1em;
}
#power.skill .sec01 .txtBox {
	padding: 35px 30px 43px 60px;
	margin: 0 auto 137px;
	width: 530px;
	position: relative;
	box-sizing: border-box;
	background-color: #2F2F2F;
}
#power.skill .sec01 .txtBox::after {
	width: 13px;
	height: 77px;
	position: absolute;
	left: 50%;
	bottom: -113px;
	transform: translateX(-50%);
	background: url(img/skill/sec01_bg01.png) no-repeat center center / cover;
	content: '';
}
#power.skill .sec01 .txtBox .title {
	margin-bottom: 19px;
	color : #636363;
	font-size: 2.9rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	font-family: 'Source Sans Pro', sans-serif;
}
#power.skill .sec01 .txtBox .title span {
	padding-right: 32px;
	position: relative;
}
#power.skill .sec01 .txtBox .title span::after {
	width: 27px;
	height: 1px;
	position: absolute;
	right: 0;
	top: 50%;
	background-color: #636363;
	content: '';
}
#power.skill .sec01 .txtBox ul li {
	margin-bottom: 13px;
	padding-left: 1em;
	font-size: 2rem;
	line-height: 1.75;
	text-indent: -1em;
}
#power.skill .sec01 .txtBox ul li:last-of-type {
	margin-bottom: 0;
}
#power.skill .sec01 .subBox .title {
	margin-bottom: 70px;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0.06em;
	text-align: center;
}
#power.skill .sec01 .subBox .borderBox {
	padding: 40px 30px 35px 130px;
	border: 1px solid #fff;
}
#power.skill .sec01 .subBox dl {
	margin-bottom: 45px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#power.skill .sec01 .subBox dt {
	width: 180px;
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0.17em;
}
#power.skill .sec01 .subBox dd {
	padding-left: 20px;
	width: calc(100% - 205px);
	letter-spacing: 0.1em;
	box-sizing: border-box;
	border-left: 1px solid #fff;
}
#power.skill .sec01 .subBox .photo img {
	width: 734px;
}
#power.skill .sec02 {
	padding-bottom: 0;
}
#power.skill .sec02 .headLine02 {
	margin-bottom: 50px;
}
#power.skill .sec02 .text {
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0;
}
#power.skill .sec02 .imgBox01 .photoBox {
	width: calc(50% - 63px);
}
#power.skill .sec02 .imgBox01 .textBox {
	margin-left: 80px;
	width: 420px;
}
#power.skill .sec02 .txtBox {
	margin-bottom: 107px;
	padding-bottom: 50px;
}
#power.skill .sec02 .txtBox::after {
	display: none;
}
#power.skill .sec02 .txtBox .txt {
	margin-bottom: 25px;
	font-size: 2.6rem;
	font-feature-settings: 'palt';
}
#power.skill .sec02 .txtBox ul li {
	margin-bottom: 9px;
	font-size: 2.3rem;
	line-height: 1.75;
}
#power.skill .sec02 .txtBox ul li:last-of-type {
	margin-bottom: 0;
}
#power.skill .sec02 .subBox .title {
	margin-bottom: 60px;
	font-size: 3.6rem;
}
#power.skill .sec02 .subBox .txt01 {
	margin-bottom: 61px;
	text-align: center;
	font-size: 2.5rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}
#power.skill .sec02 .subBox .txt01 span {
	padding: 13px 47px;
	display: inline-block;
	border: 1px solid #fff;
	vertical-align: top;
}
#power.skill .sec02 .subBox .txt02 {
	margin-bottom: 144px;
	font-size: 2.5rem;
	font-weight: 500;
	text-align: center;
	position: relative;
}
#power.skill .sec02 .subBox .txt02::after {
	width: 13px;
	height: 77px;
	position: absolute;
	left: 50%;
	bottom: -108px;
	transform: translateX(-50%);
	background: url(img/skill/sec01_bg01.png) no-repeat center center / cover;
	content: '';
}
#power.skill .sec02 .subBox .txt02 span {
	margin-bottom: 15px;
	display: block;
	font-size: 1.5rem;
}
#power.skill .sec02 .subBox .txt03 {
	margin-bottom: 60px;
	font-size: 2.5rem;
	letter-spacing: 0.05em;
	text-align: center;
}
#power.skill .sec02 .bgBox {
	margin-bottom: 100px;
	padding: 75px 0 55px;
	background-color: #2F2F2F;
}
#power.skill .sec02 .bgBox .ttl {
	margin-bottom: 24px;
	font-size: 1.7rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: center;
}
#power.skill .sec02 .bgBox .ttl small {
	font-size: 1.5rem;
}
#power.skill .sec02 .photo {
	margin: 0;
}
#power.skill .sec02 .photo img {
	width: 1002px;
}
#power.skill .sec02 .imgBox02 {
	margin-bottom: 0;
	flex-direction: row-reverse;
	justify-content: space-between;
}
#power.skill .sec02 .imgBox02 .textBox {
	margin: 0 0 0 -10px;
	width: 480px;
}
#power.skill .sec02 .imgBox02 .photoBox {
	width: 465px;
}
@media all and (max-width: 896px) {
	#power.skill .pageTitle {
		background-image: url(img/skill/sp_page_title_bg.jpg);
	}
	#power.skill .point {
		margin-bottom: 48px;
	}
	#power.skill .point .textList li:not(:last-of-type) {
		margin-bottom: 13px;
	}
	#power.skill .point .textList li:nth-of-type(3) .ttl {
		margin-right: 0;
	}
	#power.skill .sec01 {
		padding-bottom: 60px;
		background-image: none;
	}
	#power.skill .sec01 .headLine02 {
		margin-bottom: 55px;
	}
	#power.skill .sec01 .imgBox {
		margin-bottom: 40px;
		display: block;
	}
	#power.skill .sec01 .imgBox .photoBox {
		margin-bottom: 28px;
		width: auto;
	}
	#power.skill .sec01 .imgBox .photoBox span {
		width: 100%;
	}
	#power.skill .sec01 .imgBox .photoBox img {
		width: 100%;
	}
	#power.skill .sec01 .imgBox .textBox {
		margin-left: 0;
		width: auto;
	}
	#power.skill .sec01 .imgBox .textBox .title {
		margin: 0 -15px 18px 0;
		font-size: 2rem;
	}
	#power.skill .sec01 .imgBox .textBox  p {
		font-size: 1.4rem;
		line-height: 2;
		letter-spacing: 0;
	}
	#power.skill .sec01 .txtBox {
		padding: 27px 18px 40px;
		margin: 0 auto 107px;
		width: auto;
	}
	#power.skill .sec01 .txtBox::after {
		width: 11px;
		height: 56px;
		bottom: -90px;
		background-size: 100% auto;
		background-position: center bottom;
	}
	#power.skill .sec01 .txtBox .title {
		margin-bottom: 24px;
		font-size: 2.9rem;
	}
	#power.skill .sec01 .txtBox .title span::after {
		width: 27px;
	}
	#power.skill .sec01 .txtBox ul li {
		padding-left: 0;
		margin-bottom: 17px;
		font-size: 1.8rem;
		line-height: 1.67;
		letter-spacing: 0;
		text-indent: 0;
	}
	#power.skill .sec01 .subBox .title {
		margin: 0 -10px 40px;
		font-size: 2rem;
		line-height: 1.5;
		font-feature-settings: 'palt';
	}
	#power.skill .sec01 .subBox .borderBox {
		padding: 27px 15px 35px;
	}
	#power.skill .sec01 .subBox dl {
		margin-bottom: 41px;
		display: block;
	}
	#power.skill .sec01 .subBox dt {
		margin-bottom: 15px;
		width: auto;
		font-size: 2.1rem;
		text-align: center;
	}
	#power.skill .sec01 .subBox dd {
		padding-left: 0;
		width: auto;
		font-size: 1.5rem;
		line-height: 1.87;
		text-align: center;
		font-feature-settings: 'palt';
		border: none;
	}
	#power.skill .sec01 .subBox .photo {
		margin: 0 5px;
	}
	#power.skill .sec01 .subBox .photo img {
		width: 100%;
	}
	#power.skill .sec02 {
		padding-bottom: 0;
	}
	#power.skill .sec02 .headLine02 {
		margin-bottom: 42px;
	}
	#power.skill .sec02 .text {
		font-size: 2rem;
		font-weight: 500;
		line-height: 2.15;
		letter-spacing: 0.1em;
	}
	#power.skill .sec02 .imgBox01 {
		margin: 0 25px 39px;
	}
	#power.skill .sec02 .imgBox01 .photoBox {
		margin-bottom: 20px;
		width: auto;
	}
	#power.skill .sec02 .imgBox01 .textBox {
		margin-left: 0;
		width: auto;
	}
	#power.skill .sec02 .imgBox01 .textBox .title {
		line-height: 2.15;
	}
	#power.skill .sec02 .txtBox {
		margin-bottom: 70px;
		padding-bottom: 44px;
	}
	#power.skill .sec02 .txtBox::after {
		display: none;
	}
	#power.skill .sec02 .txtBox .title {
		margin-bottom: 15px;
	}
	#power.skill .sec02 .txtBox .txt {
		margin-bottom: 15px;
		font-size: 1.8rem;
	}
	#power.skill .sec02 .txtBox ul li {
		margin-bottom: 24px;
		font-size: 1.8rem;
		line-height: 1.31;
	}
	#power.skill .sec02 .txtBox ul li:last-of-type {
		margin-bottom: 0;
	}
	#power.skill .sec02 .subBox .title {
		margin-bottom: 43px;
		font-size: 2.1rem;
	}
	#power.skill .sec02 .subBox .txt01 {
		margin-bottom: 30px;
		font-size: 1.6rem;
	}
	#power.skill .sec02 .subBox .txt01 span {
		padding: 8px 30px;
	}
	#power.skill .sec02 .subBox .txt02 {
		margin-bottom: 80px;
		font-size: 1.6rem;
		line-height: 1.92;
	}
	#power.skill .sec02 .subBox .txt02::after {
		width: 11px;
		height: 56px;
		bottom: -70px;
		background-position: center bottom;
		background-size: 100% auto;
	}
	#power.skill .sec02 .subBox .txt02 span {
		margin-bottom: 2px;
		font-size: 1.4rem;
		line-height: 2;
	}
	#power.skill .sec02 .subBox .txt03 {
		margin-bottom: 32px;
		font-size: 1.6rem;
	}
	#power.skill .sec02 .bgBox {
		margin-bottom: 65px;
		padding: 16px 0 16px;
	}
	#power.skill .sec02 .bgBox .ttl {
		margin-bottom: 15px;
		font-size: 1.4rem;
		line-height: 1.45;
	}
	#power.skill .sec02 .bgBox .ttl small {
		font-size: 1.2rem;
	}
	#power.skill .sec02 .photo {
		margin: 0 -15px;
	}
	#power.skill .sec02 .photo img {
		width: 100%;
	}
	#power.skill .sec02 .imgBox02 {
		margin-bottom: 0;
	}
	#power.skill .sec02 .imgBox02 .textBox {
		margin: 0;
		width: auto;
	}
	#power.skill .sec02 .imgBox02 .textBox .title {
		line-height: 2.15;
	}
	#power.skill .sec02 .imgBox02 .photoBox {
		margin-bottom: 20px;
		width: auto;
	}
}
@media all and (max-width: 374px) {
	#power.skill .sec01 .subBox .title {
		font-size: 1.7rem;
	}
	#power.skill .sec01 .subBox dd {
		font-size: 1.4rem;
	}
	#power.skill .sec01 .imgBox .textBox .title {
		font-size: 1.7rem;
	}
	#power.skill .sec01 .txtBox ul li {
		font-size: 1.6rem;
	}
}
/*------------------------------------------------------------
	force
------------------------------------------------------------*/
#power.force .pageTitle {
	background-image: url(img/force/page_title_bg.jpg);
}
#power.force .point {
	margin-bottom: 123px;
}
#power.force .point .textList {
	justify-content: center;
}
#power.force .point .textList::after {
	display: none;
}
#power.force .point .textList li {
	margin: 25px 20px 0;
}
#power.force .point .textList .ttl {
	margin-right: -20px;
}
#power.force .point .textList li:first-of-type {
	width: 320px;
}
#power.force .point .textList li:nth-of-type(2) {
	width: 300px;
}
#power.force .sec01 {
	padding-bottom: 162px;
}
#power.force .sec01::after {
	display: none;
}
#power.force .sec01 .headLine02 {
	margin-bottom: 66px;
}
#power.force .sec01 .imgBox {
	margin: 0 auto 100px;
	width: 810px;
	justify-content: space-between;
}
#power.force .sec01 .imgBox .textBox {
	margin: 0;
	width: 265px;
}
#power.force .sec01 .imgBox .textBox .title {
	margin-bottom: 0;
	font-size: 2.2rem;
	line-height: 1.45;
}
#power.force .sec01 .imgBox .textBox .title span {
	margin-top: -3px;
	display: block;
	font-size: 3rem;
}
#power.force .sec01 .imgBox .textBox .title em {
	font-style: normal;
	font-size: 4.5rem;
}
#power.force .sec01 .imgBox .textBox .area {
	margin-top: 46px;
}
#power.force .sec01 .imgBox .textBox .area .ttl {
	margin-bottom: 5px;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.063em;
}
#power.force .sec01 .imgBox .textBox ul {
	margin: 0 15px;
}
#power.force .sec01 .imgBox .textBox li {
	position: relative;
	line-height: 2.4;
	letter-spacing: 0.063em;
}
#power.force .sec01 .imgBox .textBox li small {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
#power.force .sec01 .imgBox .textBox li::before {
	width: 100%;
	height: 0px;
	position: absolute;
	left: 0;
	top: 50%;
	border-top: 1px dashed #fff;
	content: '';
}
#power.force .sec01 .imgBox .textBox li span {
	background-color: #000;
	position: relative;
	box-sizing: border-box;
}
#power.force .sec01 .imgBox .textBox li .txt01 {
	padding-right: 5px;
	max-width: calc(100% - 60px);
}
#power.force .sec01 .imgBox .textBox li .txt02 {
	padding: 0 14px 0 5px;
	max-width: 55px;
}
#power.force .sec01 .imgBox .photoBox {
	width: 517px;
}
#power.force .sec01 .imgBoxR {
	margin-bottom: 110px;
	flex-direction: row-reverse;
}
#power.force .sec01 .flowBox h3 {
	margin-bottom: 48px;
	font-size: 2.5rem;
}
#power.force .sec01 .flowBox .textList {
	margin-bottom: 65px;
	border-bottom: 1px solid #7A7A7A;
}
#power.force .sec01 .flowBox .textList:last-of-type {
	margin-bottom: 0;
}
#power.force .sec01 .flowBox .textList dt {
	padding: 18px 250px;
	display: flex;
	justify-content: space-between;
	border-top: 1px solid #7A7A7A;
	cursor: pointer;
}
#power.force .sec01 .flowBox .textList dt.on .txt02 {
	background-image: url(img/common/icon13.png);
}
#power.force .sec01 .flowBox .textList dt .txt02 {
	padding-right: 35px;
	letter-spacing: 0.1em;
	background: url(img/common/icon12.png) no-repeat right center / 14px auto;
}
#power.force .sec01 .flowBox .textList dd {
	display: none;
}
#power.force .sec01 .flowBox .textList dd table {
	width: 100%;
	border-collapse: collapse;
}
#power.force .sec01 .flowBox .textList dd table th,
#power.force .sec01 .flowBox .textList dd table td {
	padding: 3px 10px;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 400;
	text-align: left;
	letter-spacing: 0;
	font-feature-settings: 'palt';
	border-bottom: 1px solid #7A7A7A;
	border-right: 1px solid #7A7A7A;
}
#power.force .sec01 .flowBox .textList dd table th {
	padding: 4px 10px;
	background-color: #232323;
	text-align: center;
}
#power.force .sec01 .flowBox .textList dd table td:nth-last-of-type(1) {
	text-align: center;
}
#power.force .sec01 .flowBox .textList dd table .tdStyle01 {
	text-align: left !important;
}
#power.force .sec01 .flowBox .textList dd table th {
	border-top: 1px solid #7A7A7A;
}
#power.force .sec01 .flowBox .textList dd table th:last-of-type,
#power.force .sec01 .flowBox .textList dd table td:last-of-type {
	border-right: none;
}
#power.force .sec01 .flowBox .textList dd  {
	margin-bottom: -1px;
}
#power.force .sec02 {
	padding-bottom: 0;
}
#power.force .sec02 .imgBoxR {
	margin-bottom: 65px;
}
#power.force .sec02 .imgBoxR .textBox .title {
	text-align: right;
}
#power.force .sec02 .flowBox .textList dd table th,
#power.force .sec02 .flowBox .textList dd table td {
	text-align: center;
}
#power.force .sec02 .flowBox .textList dd table td span {
	display: inline-block;
	text-align: left;
}
@media all and (min-width: 897px) {
	#power.force .sec01 .flowBox .textList dt:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#power.force .pageTitle {
		margin-bottom: 46px;
		background-image: url(img/force/sp_page_title_bg.jpg);
	}
	#power.force .pageTitle .inner {
		height: 250px;
	}
	#power.force .point {
		margin-bottom: 49px;
	}
	#power.force .point .textList li {
		margin: 0;
	}
	#power.force .point .textList li:not(:last-of-type) {
		margin-bottom: 24px;
	}
	#power.force .point .textList .ttl {
		margin-right: 0;
	}
	#power.force .point .textList li:first-of-type {
		width: auto;
	}
	#power.force .point .textList li:nth-of-type(2) {
		width: auto;
	}
	#power.force .sec01 {
		padding-bottom: 58px;
	}
	#power.force .sec01 .headLine02 {
		margin-bottom: 54px;
	}
	#power.force .sec01 .imgBox {
		margin: 0 auto 52px;
		width: auto;
	}
	#power.force .sec01 .imgBox .textBox {
		margin: 0 40px;
		width: auto;
	}
	#power.force .sec01 .imgBox .textBox .title {
		margin-bottom: 0;
		padding-right: 10px;
		font-size: 2rem;
		line-height: 1.45;
		text-align: center;
	}
	#power.force .sec01 .imgBox .textBox .title span {
		margin-top: -3px;
		display: block;
		font-size: 3rem;
	}
	#power.force .sec01 .imgBox .textBox .title em {
		font-style: normal;
		font-size: 4.5rem;
	}
	#power.force .sec01 .imgBox .textBox .area {
		margin-top: 10px;
	}
	#power.force .sec01 .imgBox .textBox .area .ttl {
		margin-bottom: 0;
		font-size: 1.4rem;
	}
	#power.force .sec01 .imgBox .textBox ul {
		margin: 0;
	}
	#power.force .sec01 .imgBox .textBox li {
		font-size: 1.5rem;
		line-height: 2;
	}
	#power.force .sec01 .imgBox .textBox li .txt02 {
		padding-right: 14px;
	}
	#power.force .sec01 .imgBox .photoBox {
		margin-bottom: 13px;
		width: auto;
	}
	#power.force .sec01 .imgBoxR {
		margin-bottom: 42px;
	}
	#power.force .sec01 .imgBox.btm01 {
		margin-bottom: 80px;
	}
	#power.force .sec01 .flowBox h3 {
		margin-bottom: 20px;
		font-size: 1.7rem;
	}
	#power.force .sec01 .flowBox .textList {
		margin-bottom: 82px;
	}
	#power.force .sec01 .flowBox .textList:last-of-type {
		margin-bottom: 0;
	}
	#power.force .sec01 .flowBox .textList dt {
		padding: 15px 15px;
		font-size: 1.5rem;
		line-height: 1.27;
		align-items: center;
		box-sizing: border-box;
		min-height: 70px;
	}
	#power.force .sec01 .flowBox .textList dt .txt01 {
		width: calc(100% - 100px);
	}
	#power.force .sec01 .flowBox .textList dt .txt02 {
		padding-right: 25px;
		font-size: 1.4rem;
		background: url(img/common/icon12.png) no-repeat right center / 14px auto;
	}
	#power.force .sec01 .flowBox .textList dd {
		padding-bottom: 0;
	}
	#power.force .sec01 .flowBox .tableBox {
		overflow-x: auto;
	}
	#power.force .sec01 .flowBox .textList dd table {
		width: 100%;
		min-width: 800px;
		border-collapse: collapse;
	}
	#power.force .sec01 .flowBox .textList dd table th,
	#power.force .sec01 .flowBox .textList dd table td {
		padding: 3px 10px;
		color: #fff;
		font-size: 1.5rem;
		font-weight: 400;
		text-align: left;
		letter-spacing: 0;
		border-bottom: 1px solid #7A7A7A;
		border-right: 1px solid #7A7A7A;
	}
	#power.force .sec01 .flowBox .textList dd table th {
		padding: 4px 10px;
		background-color: #232323;
		text-align: center;
	}
	#power.force .sec01 .flowBox .textList dd table th {
		border-top: 1px solid #7A7A7A;
	}
	#power.force .sec01 .flowBox .textList dd table th:last-of-type,
	#power.force .sec01 .flowBox .textList dd table td:last-of-type {
		border-right: none;
	}
	#power.force .sec02 {
		padding-bottom: 0;
	}
	#power.force .sec02 .imgBoxR {
		margin-bottom: 55px;
	}
	#power.force .sec02 .imgBox.btm01 {
		margin-bottom: 88px;
	}
	#power.force .sec02 .imgBoxR .textBox .title {
		text-align: center;
	}
	#power.force .sec02 .flowBox .textList dd table th,
	#power.force .sec02 .flowBox .textList dd table td {
		text-align: center;
	}
	#power.force .sec02 .flowBox .textList dd table td span {
		display: inline-block;
		text-align: left;
	}
}
/*------------------------------------------------------------
	loadBox
------------------------------------------------------------*/
.loadBox {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 10000;
}
.loadBox .loading1 {
	position: absolute;
	left: -30%;
	top: 0;
	width: 170%;
	height: 100%;
	z-index: 3;
	background-color: #000;
	transform: skew(15deg,0);
}
body.active .loadBox .loading1 {
	transition: all 0.5s cubic-bezier(.55, .085, .68, .53) 0.1s;
	transform: skewX(5deg) translateX(100%);
}
.loadBox .loading2 {
	position: absolute;
	left: -30%;
	bottom: 0;
	width: 170%;
	height: 100%;
	z-index: 2;
	background-color: #111;
	-webkit-transform: skew(15deg,0);
	transform: skew(15deg,0);
}

.loadBox .loading3 {
	position: absolute;
	left: -30%;
	top: 0;
	width: 170%;
	height: 100%;
	z-index: 3;
	background-color: #000;
	transform: skew(5deg,0) translateX(-100%);
	transition: all 0.4s cubic-bezier(.55, .085, .68, .53);
}
body.end .loadBox .loading3 {
	transform: skew(15deg,0) translateX(0);
	
}
body.active .loadBox .loading2 {
	transition: all 0.5s cubic-bezier(.895, .03, .685, .22) 0.2s;
	transform: skewX(-5deg) translateX(100%);
}
.loadBox .progress {
	position: absolute;
	left: 0;
	top: 0;
	height: 7px;
	background: linear-gradient(60deg, #F90000, #FF8200, #29910C, #0058B2);
	z-index: 5;
}
/*------------------------------------------------------------
	fadeIn
------------------------------------------------------------*/
.fadeInUp {
	opacity: 0;
	transform: translate3d(0, 100px, 0);
	transition: all 1s cubic-bezier(0.4, 0, 0.2, 1);
}
.fadeInUp.on {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}
/*------------------------------------------------------------
	jsTxt
------------------------------------------------------------*/
.jsTxt {
	display: inline-block;
	vertical-align: top;
	position: relative;
	overflow: hidden;
}
.jsTxt .fadeTxt {
	opacity: 0;
	transition: all 0.4s 0.2s;
}
.jsTxt.on .fadeTxt {
	opacity: 1;
}
.jsTxt::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	content: '';
	transform: translateX(-100%);
}
.jsTxt.on::before {
	animation: whiteBg 0.4s cubic-bezier(0.075, 0.82, 0.165, 1) forwards alternate;
}
@keyframes whiteBg {
	0% {
		transform: translateX(-100%);
	}
	50% {
		transform: translateX(0%);
	}
	100% {
		transform: translateX(101%);
	}
}
/*------------------------------------------------------------
	jsImg
------------------------------------------------------------*/
.jsImg {
	display: inline-block;
	vertical-align: top;
	position: relative;
	overflow: hidden;
}
.jsImg::before {
	content: "";
	position: absolute;
	width: 150%;
	height: 100%;
	right: 0;
	top: 0;
	z-index: 1;
	background-color: #111;
	-webkit-transform: skew(-15deg) translateX(10%);
	transform: skew(-15deg) translateX(10%);
	-webkit-transition: all .8s cubic-bezier(.215,.61,.355,1);
	transition: all .8s cubic-bezier(.215,.61,.355,1);
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	transition-delay: 0s;
	-webkit-transition-timing-function: cubic-bezier(.215,.61,.355,1);
	transition-timing-function: cubic-bezier(.215,.61,.355,1);
	-webkit-transition-delay: .2s;
	transition-delay: .2s;
}
.jsImg.on::before {
	-webkit-transform: skew(-15deg) translateX(120%);
	transform: skew(-15deg) translateX(120%);
}
.jsImg::after {
	content: "";
	position: absolute;
	width: 150%;
	height: 100%;
	right: 0;
	top: 0;
	background-color: #f5f4f3;
	-webkit-transform: skew(-15deg) translateX(10%);
	transform: skew(-15deg) translateX(10%);
	z-index: 2;
	-webkit-transition: all .8s cubic-bezier(.215,.61,.355,1);
	transition: all .8s cubic-bezier(.215,.61,.355,1);
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	-webkit-transition-timing-function: cubic-bezier(.215,.61,.355,1);
	transition-timing-function: cubic-bezier(.215,.61,.355,1);
}
.jsImg.on::after {
	-webkit-transform: skew(-15deg) translateX(120%);
	transform: skew(-15deg) translateX(120%);
}
/*------------------------------------------------------------
	ags
------------------------------------------------------------*/
#ags .pageTitle {
	background-image: url(img/ags_series/page_title_bg.jpg);
}
#ags .sec04 {
	margin-bottom: 110px;
	padding-top: 87px;
	width: 957px;
}
#ags .sec04 .headLine06 {
	margin-bottom: 129px;
}
#ags .sec04 .flexBox {
	margin-bottom: 54px;
	padding: 0 22px 63px;
	border-bottom: 1px solid #707070;
}
#ags .sec04 .flexBox .comPointBox {
	margin-bottom: 0;
	padding: 0 0 35px;
	width: 52.2%;
	border-right: 1px solid #707070;
	border-bottom: none;
}
#ags .sec04 .flexBox .comPointBox:nth-of-type(2n - 1) {
	padding-right: 70px;
}
#ags .sec04 .flexBox .comPointBox:last-child {
	border-right: none;
}
#ags .sec04 .flexBox .comPointBox .lBox {
	margin-top: 0;
	width: 100%;
}
#ags .sec04 .flexBox .comPointBox.box01 {
	padding-left: 43px;
	width: 45%;
}
#ags .sec04 .comPointBox .comImgList {
	justify-content: space-between;
}
#ags .sec04 .comPointBox .comImgList li {
	margin: 0;
	width: 205px;
}
#ags .sec04 .comPointBox.box02 .ttl {
	margin-bottom: 36px;
}
#ags .sec04 .comPointBox .comImgList .ttl {
	margin-bottom: 0;
	padding: 9px 4px;
	margin-bottom: 0;
	font-size: 1.9rem;
	font-weight: 400;
}
#ags .sec04 .comPointBox.box02 {
	margin-bottom: 127px;
	padding-bottom: 0;
	align-items: flex-end;
	border-bottom: none;
}
#ags .sec04 .comPointBox.box02 .rBox {
	margin-bottom: 7px;
	width: 46.7%;
}
#ags .sec04 h4 {
	margin-bottom: 43px;
	text-align: center;
	font-size: 2.3rem;
	font-weight: 500;
	font-feature-settings: "palt";
	letter-spacing: 0.2em;
}
@media all and (max-width: 896px) {
	#ags .pageTitle {
		background-image: url(img/ags_series/page_title_bg_sp.jpg);
	}
	#ags .sec04 {
		margin-bottom: 88px;
		padding-top: 41px;
		width: auto;
	}
	#ags .sec04 .headLine06 {
		margin: 0 -3px 51px;
	}
	#ags .sec04 .headLine06 .en {
		font-size: 5rem;
	}
	#ags .sec04 .headLine06 .jp {
		margin-top: -32px;
	}
	#ags .sec04 .flexBox {
		margin-bottom: 45px;
		padding: 0;
		display: block;
		border: none;
	}
	#ags .sec04 .flexBox .comPointBox {
		margin-bottom: 47px;
		padding: 0 0 61px;
		width: auto;
		border-right: none;
		border-bottom: 1px solid #707070;
	}
	#ags .sec04 .flexBox .comPointBox:nth-of-type(2n - 1) {
		padding-right: 0;
	}
	#ags .sec04 .comPointBox.box03 .ttl {
		margin-bottom: 11px;
		letter-spacing: 0.2em;
	}
	#ags .sec04 .flexBox .comPointBox .lBox {
		margin: 0;
		width: 100%;
	}
	#ags .sec04 .flexBox .comPointBox.box01 {
		padding: 0 0 58px;
		margin-bottom: 0;
		width: auto;
	}
	#ags .sec04 .flexBox .comPointBox.box01 .ttl {
		letter-spacing: 0.2em;
	}
	#ags .sec04 .comPointBox.box02 .ttl {
		margin-bottom: 16px;
	}
	#ags .sec04 .comPointBox .comImgList .ttl {
		margin-bottom: 0;
		padding: 8px 4px 6px;
		font-size: 1.4rem;
	}
	#ags .sec04 .comPointBox .comImgList li {
		width: 48%;
	}
	#ags .sec04 .comPointBox.box02 {
		margin-bottom: 56px;
	}
	#ags .sec04 .comPointBox.box02 .lBox {
		margin-bottom: 39px;
	}
	#ags .sec04 .comPointBox.box02 .text {
		font-size: 1.5rem;
		text-align: justify;
		font-feature-settings: normal;
		line-height: 1.86;
	}
	#ags .sec04 .comPointBox.box02 .rBox {
		margin-bottom: 0;
		width: auto;
	}
	#ags .sec04 h4 {
		margin-bottom: 24px;
		font-size: 1.8rem;
	}
	#ags .sec04 .comBtn a {
		padding: 10px 60px;
		font-size: 1.6rem;
	}
	#ags .comTable04 .mid .sm {
		right: auto;
		left: calc(50% + 8px);
	}
}
@media all and (max-width: 374px) {
	#ags .sec04 .headLine06 .en {
		font-size: 4rem;
	}
	#ags .comTable04 .mid .sm {
		left: auto;
		right: 8px;
	}
}
/*------------------------------------------------------------
	ra_series
------------------------------------------------------------*/
#ra_series .pageTitle {
	background-image: url(img/ags_series/page_title_bg.jpg);
}
#ra_series .comStyle .pageTitle h2 span {
	margin-top: 6px;
}
#ra_series .comStyle .sec02 .comTable04 th {
	width: 171px;
}
#ra_series .comStyle .sec02 .comTable04 th.sty01 {
	width: 198px;
}
#ra_series .comStyle .sec01 .headLine02 {
	margin-bottom: 132px;
}
#ra_series .comImgList .txt {
	font-size: 1.7rem;
}
#ra_series .comStyle .sec02 .comTable04 th, 
#ra_series .comStyle .sec02 .comTable04 td {
	padding: 17px 5px 16px;
}
#ra_series .comStyle .sec02 .comTable04 td {
 	padding: 21px 4px;
}
#ra_series .comStyle .sec03 {
	padding: 18px 0 157px;
}
#ra_series .comStyle .sec03 .headLine06 .jp {
	margin-top: -51px;
}
#ra_series .comStyle .sec03 .pho {
	margin-left: 57px;
}
#ra_series .sec04 {
	padding: 88px 0 136px;
	position: relative;
}
#ra_series .sec04::after {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: url(img/common/f_bg01.jpg) no-repeat center center / 100% 100%;
	content: '';
}
#ra_series .sec04 .headLine06 {
	margin-bottom: 130px;
}
#ra_series .sec04 .comPointBox {
	margin-bottom: 90px;
	padding: 0 0 0 45px;
	border: none;
}
#ra_series .sec04 .pointTable {
	margin: 33px 0 0 -2px;
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #808080;
}
#ra_series .sec04 .pointTable th,
#ra_series .sec04 .pointTable td {
	padding: 15px 7px 15px 23px;
	box-sizing: border-box;
	font-size: 1.8rem;
	vertical-align: middle;
}
#ra_series .sec04 .pointTable th {
	width: 76px;
	padding: 15px 4px 15px 15px;
	font-weight: 400;
	border-right: 1px solid #808080;
}
#ra_series .sec04 .comPointBox .rBox .rTtl {
	margin-bottom: 30px;
	font-size: 1.9rem;
	letter-spacing: 0.2em;
}
#ra_series .sec04 .comPointBox .rBox .typeUl {
	margin: -5px 0 81px 5px;
}
#ra_series .sec04 .comPointBox .rBox .typeUl li {
	margin: 5px 29px 0 0;
	position: relative;
	padding-left: 50px;
	font-size: 1.5rem;
}
#ra_series .sec04 .comPointBox .rBox .typeUl li:last-child {
	margin-right: 0;
}
#ra_series .sec04 .comPointBox .rBox .typeUl li:nth-child(3n) {
	margin-right: -7px;
}
#ra_series .sec04 .comPointBox .rBox .typeUl li::before {
	position: absolute;
	content: '';
	left: 0;
	top: -10px;
	width: 40px;
	height: 40px;
	background-color: #E36B30;
}
#ra_series .sec04 .comPointBox .rBox .typeUl li.type02::before {
	background-color: #0D6978;
}
#ra_series .sec04 .comPointBox .rBox .typeUl li.type03::before {
	background-color: #BDBEBF;
}
#ra_series .sec04 .comPointBox .rBox .comImgList {
	margin-left: 5px;
}
#ra_series .sec04 .comPointBox .rBox .comImgList li {
	margin: 0 16px 0 0;
	width: 205px;
}
#ra_series .sec04 .comPointBox .rBox .comImgList li:last-child {
	margin-right: 0;
}
#ra_series .sec04 .comPointBox .rBox .comImgList li .ttl {
	margin-bottom: 0;
	padding: 8px 4px 9px;
	font-size: 1.9rem;
	font-weight: 400;
}
#ra_series .sec04 .comPointBox .lBox {
	margin-top: -14px;
	width: 44.4%;
}
#ra_series .sec04 .comPointBox .rBox {
	width: 45.2%;
}
#ra_series .sec04 .aboutBox {
	padding: 85px 100px 111px;
	background-color: #2f2f2f;
}
#ra_series .sec04 .aboutBox h4 {
	margin-bottom: 94px;
	font-size: 2.9rem;
	letter-spacing: 0.12em;
	text-align: center;
	font-weight: 500;
}
#ra_series .sec04 .aboutBox .pho {
	margin: 0 0 71px 14px;
	text-align: center;
}
#ra_series .sec04 .aboutBox .pho01 {
	text-align: center;
}
#ra_series .sec05 {
	margin-bottom: 95px;
	padding-top: 88px;
}
#ra_series .sec05 .headLine06 {
	margin-bottom: 84px;
}
#ra_series .sec05 h4 {
	margin-bottom: 100px;
	text-align: center;
	font-size: 3.3rem;
	font-weight: 500;
	letter-spacing: 0.03em;
}
#ra_series .sec05 .textDl {
	margin: 0 0 43px -7px;
	line-height: 1.87;
}
#ra_series .sec05 .textDl dt {
	float: left;
	width: 160px;
}
#ra_series .sec05 .textDl dt .txt {
	display: inline-block;
    min-width: 131px;
}
#ra_series .sec05 .textDl dd {
	padding-left: 11.3em;
}
#ra_series .sec05 .bgBox {
	margin-bottom: 103px;
	padding: 104px 35px 85px;
	background-color: #2F2F2F;
}
#ra_series .sec05 .bgBox .imgList li {
	margin: 0 13px;
	width: 45%;
}
#ra_series .sec05 .bgBox .imgList li img {
	width: 100%;
}
#ra_series .sec05 .innerBox {
	margin-bottom: 130px;
}
#ra_series .sec05 .innerBox:last-child {
	margin-bottom: 0;
}
#ra_series .sec05 .innerBox .textBox h5 {
	width: 230px;
	font-size: 2.8rem;
	letter-spacing: 0.1em;
	font-weight: 500;
}
#ra_series .sec05 .innerBox .textBox {
	margin-bottom: 22px;
}
#ra_series .sec05 .innerBox .textBox .textDl  {
    margin: 2px 0 -3px -7px;
	width: calc(100% - 247px);
}
#ra_series .sec05 .innerBox.box01 .textDl {
    margin: 10px 0 1px -7px;
}
#ra_series .sec05 .innerBox .photo {
	margin-bottom: 57px;
	text-align: center;
}
#ra_series .sec05 .comTable04 {
	margin: 0 auto;
	width: 814px;
	padding-left: 90px;
	box-sizing: border-box;
}
#ra_series .sec05 .comTable04 .ttl {
	margin-bottom: 28px;
	font-size: 2rem;
}
#ra_series .sec05 .comTable04 th, #ra_series .sec05 .comTable04 td {
	font-size: 2.2rem;
	width: 155px;
	padding: 8px 5px;
}
#ra_series .sec05 .comTable04 th {
	background-color: #fff;
}
#ra_series .sec05 .comTable04 th.sty01 {
	width: 178px;
}
#ra_series .sec05 .comTable04 th.sty02 {
	width: 161px;
}
#ra_series .sec05 .comTable04 tr.grey th {
	padding: 17px 5px;
	background-color: #4D4D4D;
}
#ra_series .sec05 .comTable04 tr:nth-child(2) th,
#ra_series .sec05 .comTable04 tr:nth-child(2) td {
	background-color: #CFCFCF;
}
#ra_series .sec05 .innerBox.box01 .textBox {
	margin-bottom: 73px;
}
@media all and (max-width: 896px) {
	#ra_series .pageTitle {
		margin-bottom: 56px;
		background-image: url(img/ags_series/page_title_bg_sp.jpg);
	}
    #ra_series .comStyle .pageTitle h2 {
        width: 48.8%;
    }
    #ra_series .comStyle .pageTitle h2 span {
        margin-top: 6px;
    }
	#ra_series .comStyle .sec02 .comTable04 th {
		width: 171px;
	}
	#ra_series .comStyle .sec02 .comTable04 th.sty01 {
		width: 120px;
	}
	#ra_series .comStyle .sec01 .headLine02 {
		margin: 0 10px 61px;
		text-align: center;
	}
	#ra_series .comImgList .txt {
		font-size: 1.4rem;
	}
	#ra_series .comImgList .txt img {
		margin: 0 4px;
		width: 30px;
	}
	#ra_series .comStyle .sec02 .comTable04 th, 
	#ra_series .comStyle .sec02 .comTable04 td {
		padding: 7px 5px 8px;
	}
	#ra_series .comStyle .sec02 .comTable04 .mid {
		line-height: 1.1;
	}
	#ra_series .comTable04 .mid .sm {
		top: 5px;
		right: auto;
		left: calc(50% + 12px);
	}
	#ra_series .comStyle .sec02 .comTable04 td {
			padding: 8px 4px 5px;
			font-size: 1.3rem;
	}
	#ra_series .comStyle .sec02 .comTable04 .text {
		margin-top: 6px;
	}
	#ra_series .comTable04 .noteList {
		margin-top: -13px;
		letter-spacing: 0;
	}
	#ra_series .comStyle .sec02 {
		padding: 23px 0 49px;
	}
	#ra_series .comStyle .sec03 {
		padding: 18px 0 94px;
	}
	#ra_series .comStyle .sec03 .headLine06 .jp {
		margin-top: -40px;
	}
	#ra_series .comStyle .sec03 .pho {
		margin-left: 0;
	}
	#ra_series .sec04 {
		padding: 46px 0 61px;
	}
	#ra_series .sec04 .headLine06 .en {
		font-size: 5rem;
	}
	#ra_series .sec04 .headLine06 .jp {
		margin-top: -39px;
	}
	#ra_series .sec04::after {
		height: 5px;
	}
	#ra_series .sec04 .headLine06 {
		margin-bottom: 54px;
	}
	#ra_series .sec04 .comPointBox {
		margin-bottom: 66px;
		padding: 0;
	}
	#ra_series .sec04 .pointTable {
		margin: 36px 0 0 1px;
	}
	#ra_series .sec04 .pointTable th,
	#ra_series .sec04 .pointTable td {
		padding: 12px 4px 12px 18px;
		font-size: 1.5rem;
	}
	#ra_series .sec04 .pointTable th {
		width: 65px;
		padding: 12px 4px 12px 17px;
	}
	#ra_series .sec04 .comPointBox .rBox .rTtl {
		margin-bottom: 37px;
		font-size: 1.4rem;
		text-align: center;
	}
	#ra_series .sec04 .comPointBox .rBox .typeUl {
		margin: -5px 0 31px;
	}
	#ra_series .sec04 .comPointBox .rBox .typeUl li {
		margin: 5px 23px 0 0;
		padding-left: 34px;
		font-size: 1.2rem;
	}
	#ra_series .sec04 .comPointBox .rBox .typeUl li::before {
		top: -3px;
		width: 30px;
		height: 30px;
	}
	#ra_series .sec04 .comPointBox .rBox .comImgList {
		margin-left: 0;
	}
	#ra_series .sec04 .comPointBox .rBox .comImgList li {
		margin: 0;
		width: 48%;
	}
	#ra_series .sec04 .comPointBox .rBox .comImgList li:last-child {
		margin-right: 0;
	}
	#ra_series .sec04 .comPointBox .rBox .comImgList li .ttl {
		padding: 7px 4px;
		font-size: 1.4rem;
		font-weight: 400;
	}
	#ra_series .sec04 .comPointBox .lBox {
		margin: 0 0 51px;
		width: auto;
	}
	#ra_series .sec04 .comPointBox .rBox {
		width: auto;
	}
	#ra_series .sec04 .aboutBox {
		padding: 45px 10px 66px;
	}
	#ra_series .sec04 .aboutBox h4 {
		margin-bottom: 24px;
		font-size: 2.8rem;
	}
	#ra_series .sec04 .aboutBox .pho {
		margin: 0 0 36px;
	}
	#ra_series .sec04 .aboutBox .pho.pho02 .jsImg::before,
	#ra_series .sec04 .aboutBox .pho.pho02 .jsImg::after {
		width: 380%;
	}
	#ra_series .sec05 {
		margin-bottom: 73px;
		padding-top: 45px;
	}
	#ra_series .sec05 .headLine06 {
		margin-bottom: 28px;
	}
	#ra_series .sec05 .headLine06 .en {
		font-size: 4.4rem;
		letter-spacing: 0.05em;
	}
	#ra_series .sec05 .headLine06 .jp {
		margin-top: -40px;
	}
	#ra_series .sec05 h4 {
		margin-bottom: 28px;
		font-size: 1.9rem;
		letter-spacing: 0;
	}
	#ra_series .sec05 .textDl {
		margin: 0 0 34px -5px;
		line-height: 1.6;
		font-size: 1.5rem;
	}
	#ra_series .sec05 .textDl dt {
		width: 131px;
	}
	#ra_series .sec05 .textDl dt .txt {
		min-width: 112px;
	}
	#ra_series .sec05 .textDl dd {
		padding-left: 8.3em;
	}
	#ra_series .sec05 .bgBox {
		margin-bottom: 42px;
		padding: 52px 19px 53px;
	}
	#ra_series .sec05 .bgBox .imgList {
		display: block;
	}
	#ra_series .sec05 .bgBox .imgList span {
		display: block;
	}
	#ra_series .sec05 .bgBox .imgList li {
		margin: 0 0 18px;
		width: auto;
	}
	#ra_series .sec05 .bgBox .imgList li:last-child {
		margin-bottom: 0;
	}
	#ra_series .sec05 .innerBox {
		margin-bottom: 84px;
	}
	#ra_series .sec05 .innerBox .textBox {
		display: block;
	}
	#ra_series .sec05 .innerBox .textBox h5 {
		margin-bottom: 26px;
		width: auto;
		font-size: 2rem;
		text-align: center;
	}
	#ra_series .sec05 .innerBox .textBox {
		margin-bottom: 51px;
	}
	#ra_series .sec05 .innerBox .textBox .textDl  {
		margin: 0 -13px 0 0;
		width: auto;
		font-feature-settings: "palt";
	}
	#ra_series .sec05 .innerBox .photo {
		margin-bottom: 61px;
	}
	#ra_series .sec05 .innerBox .photo span {
		display: block;
	}
	#ra_series .sec05 .innerBox .photo img {
		width: 100%;
	}
	#ra_series .sec05 .comTable04 {
		width: auto;
		padding-left: 0;
	}
	#ra_series .sec05 .comTable04 .ttl {
		margin-bottom: 18px;
		font-size: 1.8rem;
		text-align: center;
	}
	#ra_series .sec05 .comTable04 th, #ra_series .sec05 .comTable04 td {
		font-size: 1.3rem;
		width: 25% !important;
		padding: 7px 5px;
	}
	#ra_series .sec05 .comTable04 tr.grey th {
		padding: 12px 5px;
	}
	#ra_series .sec05 .innerBox.box01 .textBox {
		margin-bottom: 94px;
	}
	#ra_series .sec05 .innerBox.box01 .textDl {
		margin-right: -20px;
	}
}
@media all and (max-width: 374px) {
	#ra_series .comStyle .sec02 .comTable04 td {
		font-size: 1rem;
	}
	#ra_series .sec04 .headLine06 .en {
		font-size: 4.5rem;
	}
	#ra_series .sec04 .comPointBox .rBox .typeUl li {
		margin-right: 5px;
		padding-left: 25px;
	}
	#ra_series .sec04 .comPointBox .rBox .typeUl li::before {
		width: 20px;
		height: 20px;
		top: 1px;
	}
	#ra_series .sec04 .pointTable th, #ra_series .sec04 .pointTable td {
		font-size: 1.3rem;
	}
	#ra_series .sec05 .headLine06 .en {
		font-size: 3.6rem;
	}
	#ra_series .sec05 .textDl {
		margin-right: 0;
		font-size: 1.3rem;
	}
	#ra_series .sec05 .textDl dt {
		width: 120px;
	}
	#ra_series .sec05 .textDl dt .txt {
		min-width: 100px;
	}
	#ra_series .comTable04 .mid .sm {
		left: auto;
		right: 2px;
	}
	#ra_series .comStyle .sec02 .comTable04 .mid {
		font-size: 1rem;
	}
	#ra_series .sec05 .textDl dd {
		padding-left: 9.3em;
	}
}
/*------------------------------------------------------------
	high_precision_plate
------------------------------------------------------------*/
#high_precision_plate .pageTitle {
	margin-bottom: 117px;
	background-image: url(img/high_precision_plate/page_title_bg.jpg);
}
#high_precision_plate .comStyle .pageTitle .inner {
	height: 430px;
}
#high_precision_plate .sec01 {
	margin-bottom: 63px;
	padding-bottom: 130px;
	position: relative;
}
#high_precision_plate .sec01::after {
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(to right, #ea0000 0%, #ff8c00 39.77%, #008032 67.05%, #0058a3 94.87%);
	content: '';
}
#high_precision_plate .sec01 .comBox {
	width: 852px;
}
#high_precision_plate .sec01 .headLine02 {
	margin-bottom: 89px;
	font-weight: 500;
	letter-spacing: 0.173em;
}
#high_precision_plate .sec01 .textList {
	margin: -40px 0 86px;
	width: 852px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#high_precision_plate .sec01 .textList::after {
	width: 270px;
	content: '';
}
#high_precision_plate .sec01 .textList li {
	margin-top: 40px;
	padding: 10px 26px 5px 10px;
	width: 270px;
	min-height: 220px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	z-index: 3;
	box-sizing: border-box;
}
#high_precision_plate .sec01 .textList li::before {
	width: calc(100% - 50px);
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: #2F2F2F;
	content: '';
}
#high_precision_plate .sec01 .textList li:nth-of-type(3n - 1)::before {
	background-color: #424242;
}
#high_precision_plate .sec01 .textList li:nth-of-type(3n)::before {
	background-color: #555;
}
#high_precision_plate .sec01 .textList li::after {
	width: 50px;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	background: url(img/high_precision_plate/sec01_bg01.png) no-repeat center center / 100% 100%;
	content: '';
}
#high_precision_plate .sec01 .textList li:nth-of-type(3n - 1)::after {
	background-image: url(img/high_precision_plate/sec01_bg02.png);
}
#high_precision_plate .sec01 .textList li:nth-of-type(3n)::after {
	background-image: url(img/high_precision_plate/sec01_bg03.png);
}
#high_precision_plate .sec01 .textList p {
	width: 100%;
	position: relative;
	color: #fff;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 1.56;
	letter-spacing: 0.02em;
	z-index: 2;
}
#high_precision_plate .sec01 .textList li:nth-of-type(3n - 1) p {
	letter-spacing: 0;
}
#high_precision_plate .sec01 .textList li:nth-of-type(3n) p {
	letter-spacing: 0.03em;
}
#high_precision_plate .sec01 .head01 {
	margin-bottom: 23px;
	font-size: 2.6rem;
	font-weight: 500;
	line-height: 1.73;
	font-feature-settings: 'palt';
	letter-spacing: 0.08em;
	text-align: left;
}
#high_precision_plate .sec01 .text {
	line-height: 1.87;
	letter-spacing: 0.054em;
}
#high_precision_plate .point {
	margin-bottom: 78px;
}
#high_precision_plate .point .headLine06 {
	margin-bottom: 69px;
}
#high_precision_plate .point .headLine06 .jp {
	margin-top: -49px;
	letter-spacing: 0.07em;
}
#high_precision_plate .point .headLine06 strong {
	font-size: 4.2rem;
	font-weight: 500;
	line-height: 1.2;
	vertical-align: -1px;
}
#high_precision_plate .point .headLine06 em {
	font-size: 7.1rem;
	font-weight: 500;
	line-height: 1;
	font-style: normal;
	vertical-align: -10px;
}
#high_precision_plate .point .textList {
	margin-top: -40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#high_precision_plate .point .textList::after {
	width: 314px;
	content: '';
}
#high_precision_plate .point .textList li {
	margin-top: 40px;
	padding: 52px 20px 46px;
	width: 314px;
	box-sizing: border-box;
	background-color: #2F2F2F;
}
#high_precision_plate .point .textList .point {
	margin-bottom: 49px;
	color: #6F6F6F;
	font-size: 2.7rem;
	line-height: 1.2;
	letter-spacing: 0.075em;
	text-align: center;
}
#high_precision_plate .point .textList .point .num {
	margin-left: 6px;
	font-size: 4.18rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
	vertical-align: -2px;
}
#high_precision_plate .point .textList p {
	width: 100%;
	text-align: center;
}
#high_precision_plate .point .textList .txtBox {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
#high_precision_plate .point .textList .txt01 {
	margin-bottom: 8px;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.71;
}
#high_precision_plate .point .textList .txt02 {
	margin-bottom: 2px;
	font-size: 2.3rem;
	font-weight: 500;
	line-height: 1.65;
}
#high_precision_plate .point .textList .txt02 .sml01 {
	margin-right: 1px;
	display: inline-block;
	font-size: 1.75rem;
	line-height: 1;
	letter-spacing: 0.08em;
	writing-mode: tb-rl;
	vertical-align: -9px;
}
#high_precision_plate .point .textList .txt02 .sml02 {
	font-size: 2.2rem;
	font-weight: 500;
}
#high_precision_plate .point .textList .txt02 .sml02.mt02 {
	display: inline-block;
	vertical-align: 0;
	transform: translateY(-2px);
}
#high_precision_plate .point .textList .txt02 .large01 {
	font-size: 3.7rem;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0.08em;
	vertical-align: -6px;
}
#high_precision_plate .point .textList .txt02 .large02 {
	font-size: 3.6rem;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0.08em;
	vertical-align: -3px;
}
#high_precision_plate .point .textList .txt02 .large03 {
	display: inline-block;
	font-size: 3rem;
	font-weight: 500;
	line-height: 1.27;
	vertical-align: 0;
}
#high_precision_plate .point .textList .txt02 .large03.mt01 {
	margin-top: 4px;
}
#high_precision_plate .point .textList .txt02 .large04 {
	font-size: 2.6rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	vertical-align: 2px;
}
#high_precision_plate .point .textList .txt02 .large05 {
	font-size: 5rem;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0.024em;
	vertical-align: -3px;
}
#high_precision_plate .point .textList .txt02 .large06 {
	font-size: 3.1rem;
	font-weight: 500;
	letter-spacing: 0.05em;
}
#high_precision_plate .point .textList .txt03 {
	font-size: 3.4rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.88;
}
#high_precision_plate .point .textList .list01 .txtBox {
	padding-bottom: 32px;
	box-sizing: border-box;
}
#high_precision_plate .point .textList .list01 .txt01 {
	margin-bottom: 18px;
}
#high_precision_plate .point .textList .list02 .txtBox {
	padding-bottom: 20px;
}
#high_precision_plate .sec02 {
	margin-bottom: 110px;
}
#high_precision_plate .sec02 .bgBox {
	margin-bottom: 86px;
	padding: 95px 0 67px;
	background-color: #2F2F2F;
}
#high_precision_plate .sec02 .headLine02 {
	margin-bottom: 23px;
	font-size: 3.5rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.05em;
}
#high_precision_plate .sec02 .headLine02 .txt {
	margin-bottom: 6px;
	display: block;
	font-size: 2.7rem;
	letter-spacing: 0.05em;
}
#high_precision_plate .sec02 .text{
	margin-bottom: 50px;
	font-size: 1.5rem;
	font-weight: 500;
	text-align: center;
}
#high_precision_plate .sec02 .text .txt {
	display: inline-block;
	font-size: 1.3rem;
	vertical-align: 0;
}
#high_precision_plate .sec02 .textImg {
	margin-bottom: 41px;
	text-align: center;
}
#high_precision_plate .sec02 .textImg img {
	width: 770px;
}
#high_precision_plate .sec02 .photo {
	margin-right: -4px;
}
#high_precision_plate .sec02 .title {
	margin-bottom: 43px;
	color: #fff;
	font-size: 2.3rem;
	font-weight: 500;
	letter-spacing: 0.119em;
	text-align: center;
}
@media all and (max-width: 896px) {
	#high_precision_plate .pageTitle {
		margin-bottom: 68px;
		background-image: url(img/high_precision_plate/page_title_bg_sp.jpg);
	}
	#high_precision_plate .comStyle .pageTitle .inner {
		height: 228px;
	}
	#high_precision_plate .sec01 {
		margin-bottom: 48px;
		padding-bottom: 70px;
	}
	#high_precision_plate .sec01::after {
		height: 5px;
	}
	#high_precision_plate .sec01 .comBox {
		width: auto;
	}
	#high_precision_plate .sec01 .headLine02 {
		margin-bottom: 44px;
		font-size: 2.1rem;
		line-height: 1.9;
		letter-spacing: 0.08em;
	}
	#high_precision_plate .sec01 .textList {
		margin: 0 52px 85px;
		width: auto;
		display: block;
	}
	#high_precision_plate .sec01 .textList::after {
		display: none;
	}
	#high_precision_plate .sec01 .textList li {
		margin: 0 0 48px;
		padding: 21px 15px 10px;
		width: auto;
		min-height: inherit;
		position: relative;
		display: block;
	}
	#high_precision_plate .sec01 .textList li::before {
		width: 100%;
	}
	#high_precision_plate .sec01 .textList li::after {
		width: 100%;
		height: 34px;
		top: 100%;
		background-image: url(img/high_precision_plate/sec01_bg01_sp.png);
	}
	#high_precision_plate .sec01 .textList li:nth-of-type(3n - 1)::after {
		background-image: url(img/high_precision_plate/sec01_bg02_sp.png);
	}
	#high_precision_plate .sec01 .textList li:nth-of-type(3n)::after {
		background-image: url(img/high_precision_plate/sec01_bg03_sp.png);
	}
	#high_precision_plate .sec01 .textList p {
		font-size: 2rem;
		line-height: 1.5;
	}
	#high_precision_plate .sec01 .textList li:nth-of-type(3n - 1) p {
		letter-spacing: 0.02em;
	}
	#high_precision_plate .sec01 .textList li:nth-of-type(3n) p {
		letter-spacing: 0.02em;
	}
	#high_precision_plate .sec01 .head01 {
		margin-bottom: 24px;
		font-size: 1.9rem;
		line-height: 1.79;
		letter-spacing: 0.05em;
		text-align: center;
	}
	#high_precision_plate .sec01 .text {
		font-size: 1.4rem;
		font-weight: 300;
		line-height: 2;
		letter-spacing: 0;
	}
	#high_precision_plate .point {
		margin-bottom: 63px;
	}
	#high_precision_plate .point .headLine06 {
		margin: 0 -10px 50px;
		font-size: 2.1rem;
		font-feature-settings: 'palt';
		letter-spacing: 0;
	}
	#high_precision_plate .point .headLine06 .en {
		font-size: 5rem;
	}
	#high_precision_plate .point .headLine06 .jp {
		margin-top: -33px;
		letter-spacing: 0.07em;
	}
	#high_precision_plate .point .headLine06 strong {
		font-size: 2.5rem;
		vertical-align: -3px;
	}
	#high_precision_plate .point .headLine06 em {
		font-size: 4rem;
		vertical-align: -3px;
	}
	#high_precision_plate .point .textList {
		margin: 0 22px;
		display: block;
	}
	#high_precision_plate .point .textList::after {
		display: none;
	}
	#high_precision_plate .point .textList li {
		margin: 0 0 13px;
		padding: 25px 20px 28px;
		width: auto;
	}
	#high_precision_plate .point .textList li:last-of-type {
		margin-bottom: 0;
	}
	#high_precision_plate .point .textList .point {
		margin-bottom: 31px;
		font-size: 2.3rem;
		line-height: 1.22;
	}
	#high_precision_plate .point .textList .point .num {
		margin-left: 0;
		font-size: 3.6rem;
		vertical-align: -1px;
	}
	#high_precision_plate .point .textList .txtBox {
		display: block;
	}
	#high_precision_plate .point .textList .txtBox p:last-of-type {
		margin-bottom: 0;
	}
	#high_precision_plate .point .textList .txt01 {
		margin-bottom: 8px;
		font-size: 1.6rem;
		line-height: 1.63;
	}
	#high_precision_plate .point .textList .txt02 {
		margin-bottom: 4px;
		font-size: 1.9rem;
		line-height: 1.74;
	}
	#high_precision_plate .point .textList .txt02 .sml01 {
		margin-right: 1px;
		font-size: 1.5rem;
		vertical-align: -8px;
	}
	#high_precision_plate .point .textList .txt02 .sml02 {
		font-size: 1.9rem;
	}
	#high_precision_plate .point .textList .txt02 .sml02.mt02 {
		display: inline-block;
		vertical-align: 0;
		transform: translateY(-2px);
	}
	#high_precision_plate .point .textList .txt02 .large01 {
		font-size: 3.2rem;
		vertical-align: -5px;
	}
	#high_precision_plate .point .textList .txt02 .large02 {
		font-size: 3.2rem;
		vertical-align: -3px;
	}
	#high_precision_plate .point .textList .txt02 .large03 {
		font-size: 2.6rem;
	}
	#high_precision_plate .point .textList .txt02 .large03.mt01 {
		margin-top: 4px;
	}
	#high_precision_plate .point .textList .txt02 .large04 {
		font-size: 2.2rem;
		vertical-align: 4px;
	}
	#high_precision_plate .point .textList .txt02 .large05 {
		font-size: 4.3rem;
		vertical-align: -1px;
	}
	#high_precision_plate .point .textList .txt02 .large06 {
		font-size: 2.7rem;
	}
	#high_precision_plate .point .textList .txt03 {
		font-size: 2.9rem;
		line-height: 1.9;
	}
	#high_precision_plate .point .textList .list01 .txtBox {
		padding-bottom: 0;
	}
	#high_precision_plate .point .textList .list01 .txt01 {
		margin-bottom: 7px;
		font-size: 1.5rem;
		line-height: 1.73;
	}
	#high_precision_plate .point .textList .list02 .txtBox {
		padding-bottom: 0;
	}
	#high_precision_plate .point .textList .list02 .txt01 {
		margin-bottom: 4px;
	}
	#high_precision_plate .sec02 {
		margin-bottom: 88px;
	}
	#high_precision_plate .sec02 .bgBox {
		margin-bottom: 46px;
		padding: 67px 0 56px;
	}
	#high_precision_plate .sec02 .headLine02 {
		margin-bottom: 11px;
		font-size: 2.3rem;
		line-height: 1.35;
		letter-spacing: 0;
	}
	#high_precision_plate .sec02 .headLine02 .txt {
		margin-bottom: 7px;
		font-size: 1.5rem;
	}
	#high_precision_plate .sec02 .text {
		margin-bottom: 53px;
		font-size: 1.3rem;
	}
	#high_precision_plate .sec02 .text .txt {
		font-size: 1.2rem;
		vertical-align: 0;
	}
	#high_precision_plate .sec02 .textImg {
		margin: 0 12px 57px;
	}
	#high_precision_plate .sec02 .textImg img {
		width: auto;
	}
	#high_precision_plate .sec02 .photo {
		margin: 0 -14px 0 -16px;
	}
	#high_precision_plate .sec02 .photo span {
		display: block;
	}
	#high_precision_plate .sec02 .photo img {
		width: 100%;
	}
	#high_precision_plate .sec02 .title {
		margin-bottom: 25px;
		font-size: 1.8rem;
	}
	#high_precision_plate .sec02 .comBtn a {
		font-size: 1.6rem;
		border-color: #707070;
	}
}
@media all and (max-width: 374px) {
	#high_precision_plate .sec01 .textList {
		margin: 0 30px 85px;
	}
	#high_precision_plate .point .headLine06 {
		font-size: 1.8rem;
	}
	#high_precision_plate .point .headLine06 strong {
		font-size: 2.3rem;
	}
	#high_precision_plate .point .headLine06 em {
		font-size: 3.8rem;
	}
	#high_precision_plate .sec02 .headLine02 {
		font-size: 2rem;
	}
	#high_precision_plate .point .textList .txt02 .large03 {
		font-size: 2.4rem;
	}
}

.googleTxt {
	margin-top: 30px;
	text-align: center;
}
.googleTxt,
.googleTxt a {
	color: #000;
}
.googleTxt a {
	text-decoration: underline;
}
@media all and (min-width: 897px) {
	.googleTxt a:hover {
		text-decoration: none;
	}
}
.grecaptcha-badge {
	visibility: hidden;
}

.mailForm .submitList .wpcf7-spinner {
	position: absolute;
	left: 0;
	bottom: -30px;
}


#contact.materials .topBox .area.pdNone .textList {
	padding-right: 0;
}
#contact.materials .topBox .textList li a {
	display: block;
}
#contact.materials .topBox .textList li a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	#contact.materials .formBox table .radioList .wpcf7-list-item {
		line-height: 1.7;
		margin-bottom: 10px;
	}
	#contact.materials .formBox table td .radioList span {
		margin-top: 10px;
	}
	#contact.materials table td .radioList input + span {
		padding-top: 1px;
		background-position: top 5px left;
	}
}


#contact.materials .topBox {
	margin-top: -118px;
}
#contact.materials .topBox .text {
	margin-bottom: 82px;
}
#contact.materials .topBox01 {
	margin-bottom: -4px;
}
#contact.materials .topBox01 .textList li a {
	display: inline-block;
}
@media all and (max-width: 896px) {
	#contact.materials .topBox {
		margin-top: -85px;
	}
	#contact.materials .pageTitle .inner {
		height: 260px;
	}
	#contact.materials .topBox .text {
		margin-bottom: 65px;
	}
	#contact.materials .topBox01 {
		margin-bottom: 55px;
	}
}


#first_time.proposal .message .area h4 .smlTxt {
	padding: 3px 0 0 12px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	letter-spacing: 0.1em;
	font-size: 1.5rem;
}
#first_time.proposal .message .area h4 .smlTxt:after {
	display: none;
}
@media all and (max-width: 896px) {
	#first_time.proposal .message .area h4 {
		margin-right: -5px;
	}
	#first_time.proposal .message .area h4 span {
		padding-right: 33px;
	}
	#first_time.proposal .message .area h4 .smlTxt {
		font-size: 1.3rem;
		padding: 5px 0 0 7px;
	}
}
@media all and (max-width: 367px) {
	#first_time.proposal .message .area h4 {
		padding-right: 0;
		font-size: 1.8rem;
		letter-spacing: 0.06em;
	}
	#first_time.proposal .message .area h4 span {
		padding-right: 30px;
	}
	#first_time.proposal .message .area h4 span::after {
		width: 20px;
	}
	#first_time.proposal .message .area h4 .smlTxt {
		font-size: 1.2rem;
		padding: 4px 0 0 6px;
	}
}
@media all and (max-width: 340px) {
	#first_time.proposal .message .area h4 {
		padding-right: 0;
		margin-right: -15px;
	}
	#first_time.proposal .message .area h4 span {
		padding-right: 23px;
		letter-spacing: 0;
	}
	#first_time.proposal .message .area h4 span::after {
		width: 17px;
	}
}