@charset "utf-8";
/*
Theme Name: Minamikensetsu
Theme URI: null
Description: Description
Author: 81bridge - LXT
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, figcaption, figure, section, footer, header, main, hgroup, menu, nav, summary {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
}
@media all and (max-width: 374px) {
	html {
		font-size: calc(1000vw / 375);
	}
}
body, table, input, textarea, select, option {
	font-family: "Noto Sans JP", sans-serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, main, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
chrome_annotation {
	border: none !important;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
address {
	font-style: normal;
}
a,
a:link {
	color: #585858;
	text-decoration: none;
	transition: 0.3s;
}
a:visited {
	color: #585858;
}
a:hover {
	color: #585858;
}
a:active {
	color: #585858;
}
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* 81-LMX */
/* 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;}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 1280px;
	color: #585858;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #F7F5F2;
}
.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
}
#container {
	text-align: left;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: inherit;
		font-size: 1.5rem;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	padding-top: 4.3rem;
	height: 10.1rem;
	position: relative;
	background-color: #fff;
	box-sizing: border-box;
}
#gHeader .logo {
	width: 21.7rem;
	position: absolute;
	left: 4rem;
	top: 3rem;
}
#gHeader .hSns {
	width: 3.8rem;
	position: absolute;
	right: 10.1rem;
	top: 3.7rem;
}
#gHeader .hSns a:hover {
	opacity: 0.7;
}
#gHeader .hLink {
	width: 17rem;
	position: absolute;
	right: 11rem;
	top: 3rem;
}
#gHeader .hLink a {
	padding: 1.1rem 0 1.2rem;
	display: block;
	text-align: center;
	font-size: 1.7rem;
	font-weight: 600;
	color: #fff;
	background-color: #FE7201;
	border-radius: 1.1rem;
	border: 1px solid #FE7201;
}
@media all and (min-width: 897px) {
	#gHeader .hLink a:hover {
		color: #FE7201;
		background-color: #fff;
	}
}
#gNavi {
	padding-right: 1rem;
	font-weight: 500;
}
#gNavi ul {
	align-items: center;
}
#gNavi li {
	margin: 0 1.2rem;
}
#gNavi li.sml {
	font-size: 1.4rem;
}
#gNavi a:hover {
	opacity: 0.7;
}
.menu {
	width: 9rem;
	height: 10rem;
	position: absolute;
	right: 1.2rem;
	top: 0;
	cursor: pointer;
	transition: .3s;
}
.menu span {
	width: 3.4rem;
	height: 0.2rem;
	position: absolute;
	top: 4.2rem;
	left: 2.8rem;
	background: #000;
	transition: all .35s ease;
}
.menu span:nth-of-type(2) {
	top: 5.4rem;
}
.menu span:nth-of-type(3) {
	top: 6.6rem;
}
.menu.on span:nth-of-type(1) {
	transform: translateY(1.2rem) translateX(0) rotate(45deg);
}
.menu.on span:nth-of-type(2) {
	opacity: 0;
}
.menu.on span:nth-of-type(3) {
	transform: translateY(-1.2rem) translateX(0) rotate(-45deg);
}
.menuBox {
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	z-index: 98;
	background-image:linear-gradient( to bottom, #FFAF48 0%, #FF8A2C 100%);
	display: none;
}
.menuBox .menuInfo {
	padding: 3.4rem 2.8rem 8rem;
}
.menuBox ul {
	margin-bottom: 2.1rem;
}
.menuBox li a {
	padding: 2.1rem 0 2rem;
	display: block;
	font-weight: 500;
	font-size: 1.7rem;
	color: #fff;
	border-bottom: 1px solid #fff;
}
.menuBox .menuLink a {
	padding: 1.2rem 0;
	display: block;
	color: #FF7200;
	text-align: center;
	font-size: 1.7rem;
	font-weight: 600;
	background-color: #fff;
	border-radius: 5rem;
}
@media all and (min-width: 897px) {
	.menu:hover {
		opacity: 0.7;
	}
	.menuBox .menuInfo {
		max-width: 80rem;
		margin: 0 auto;
	}
	.menuBox li a:hover {
		opacity: 0.7;
	}
	.menuBox .menuLink a:hover {
		color: #fff;
		background-color: #FF7200;
	}
}
@media all and (max-width: 896px) {
	#gHeader {
		padding: 1.4rem 1.8rem 0;
		height: 6rem;
	}
	#gHeader .logo {
		width: 14rem;
		position: static;
		left: 4rem;
		top: 3rem;
	}
	#gHeader .hSns {
		width: 3rem;
		right: 7.7rem;
		top: 1.6rem;
	}
	#gHeader .hLink {
		display: none;
	}
	#gNavi {
		display: none;
	}
	.menu {
		width: 6rem;
		height: 6rem;
		right: 1.5rem;
	}
	.menu span {
		width: 3.5rem;
		top: 1.7rem;
		left: 1.2rem;
	}
	.menu span:nth-of-type(2) {
		top: 2.9rem;
	}
	.menu span:nth-of-type(3) {
		top: 4.1rem;
	}
	.menu.on span {
		width: 4.2rem;
		left: 0.9rem;
	}
	.menu.on span:nth-of-type(1) {
		transform: translateY(1.2rem) translateX(0) rotate(35deg);
	}
	.menu.on span:nth-of-type(3) {
		transform: translateY(-1.2rem) translateX(0) rotate(-35deg);
	}
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
	padding: 8.8rem 0 9.8rem;
	color: #fff;
	font-weight: 500;
	background-image:linear-gradient( to bottom, #FFAF48 0%, #FF8A2C 100%);
}
#gFooter a {
	color: #fff;
}
#gFooter .fInfo {
	width: 38rem;
}
#gFooter .fTtl {
	margin-bottom: 1.5rem;
	font-size: 2rem;
}
#gFooter .fTel {
	margin-top: 1.9rem;
	font-weight: 600;
	font-size: 1.8rem;
}
#gFooter .fSub {
	width: 60rem;
	margin-top: 2.6rem;
}
#gFooter .fSub a:hover {
	opacity: 0.7;
}
#gFooter .fLink {
	margin-bottom: 1.8rem;
	justify-content: flex-end;
	align-items: center;
}
#gFooter .fLink li:not(:first-child) {
	margin-left: 2.5rem;
}
#gFooter .fLink .sml {
	font-size: 1.4rem;
}
#gFooter .fList {
	margin-bottom: 3.7rem;
	justify-content: flex-end;
	font-size: 1.4rem;
}
#gFooter address {
	text-align: right;
	font-size: 1.2rem;
}
@media all and (max-width: 896px) {
	#gFooter {
		padding: 6.4rem 0 5.4rem;
	}
	#gFooter .content {
		display: block;
	}
	#gFooter .fInfo {
		width: auto;
		text-align: center;
	}
	#gFooter .fTtl {
		margin-bottom: 1.6rem;
		font-weight: 700;
		letter-spacing: 0.1em;
	}
	#gFooter .fTxt {
		font-size: 1.3rem;
		letter-spacing: 0.1em;
	}
	#gFooter .fTel {
		margin-top: 0.1rem;
		font-weight: 500;
		font-size: 1.3rem;
	}
	#gFooter .fSub {
		width: auto;
		margin-top: 5.1rem;
	}
	#gFooter .fNavi {
		width: 26.5rem;
		margin: 0 auto 4.8rem;
		display: flex;
		justify-content: space-between;
		font-weight: 600;
		font-size: 1.4rem;
	}
	#gFooter .fLink {
		margin-bottom: 0;
		display: block;
		letter-spacing: 0.05em;
	}
	#gFooter .fLink li:not(:first-child) {
		margin: 1.1rem 0 0;
	}
	#gFooter .fLink .sml {
		font-size: 1.4rem;
	}
	#gFooter .fList {
		margin-bottom: 0;
		display: block;
		letter-spacing: 0.05em;
	}
	#gFooter .fList li {
		margin-bottom: 1.1rem;
	}
	#gFooter address {
		text-align: center;
		font-size: 1.1rem;
	}
}
/*------------------------------------------------------------
	font
------------------------------------------------------------*/
.oswald {
	font-family: "Oswald", sans-serif;
}
/*------------------------------------------------------------
	fadeInUp
------------------------------------------------------------*/
.fadeInUp {
	opacity: 0;
	transform: translateY(50px);
	-webkit-transition: all 1s;
	transition: all 1s ease;
}
.fadeInUp.on {
	opacity: 1;
	transform: translateY(0); 
}
/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
	max-width: 124rem;
	margin: 0 auto;
	padding: 0 2rem;
	box-sizing: border-box;
}
.content.wid01 {
	max-width: 95.4rem;
}
.content.wid02 {
	max-width: 116rem;
}
@media all and (max-width: 896px) {
	.content {
		max-width: inherit !important;
		padding: 0 2.8rem;
	}
}
/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
	margin-bottom: 4.6rem;
	text-align: center;
	font-weight: 700;
	font-size: 3.2rem;
}
@media all and (max-width: 896px) {
	.headLine01 {
		margin-bottom: 5.5rem;
		font-size: 2.6rem;
		letter-spacing: 0.1em;
	}
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
	margin-bottom: 4.7rem;
	font-size: 3.2rem;
	font-weight: 700;
}
.headLine02 .en {
	margin-bottom: 0.5rem;
	display: block;
	color: #FF7200;
	font-size: 1.6rem;
	font-weight: 400;
}
@media all and (max-width: 896px) {
	.headLine02 {
		margin-bottom: 3.2rem;
		font-size: 2.6rem;
		letter-spacing: 0.1em;
		line-height: 1.34;
	}
	.headLine02 .en {
		margin-bottom: 0.7rem;
		font-size: 1.3rem;
		letter-spacing: 0;
	}
}
/*------------------------------------------------------------
	headLine03
------------------------------------------------------------*/
.headLine03 {
	width: 62.1rem;
	height: 10rem;
	padding-bottom: 0.3rem;
	position: relative;
	align-items: center;
	color: #fff;
	display: flex;
	background-color: #FF9A18;
	border-radius: 2rem 2rem 0 2rem;
	box-sizing: border-box;
}
.headLine03::before {
	position: absolute;
	left: 19.8rem;
	top: 50%;
	width: 1px;
	height: 6rem;
	transform: translateY(-50%);
	background-color: #fff;
	content: "";
}
.headLine03 .en {
	margin-right: 3.6rem;
	flex-shrink: 0;
	width: 20.3rem;
	font-size: 1.4rem;
	font-weight: 400;
	text-align: center;
}
.headLine03 .en .num {
	margin-top: -0.2rem;
	display: block;
	font-size: 4rem;
	line-height: 1;
	font-weight: 700;
	letter-spacing: 0.05em;
}
.headLine03 .jp {
	font-size: 2.4rem;
	font-weight: 700;
}
@media all and (max-width: 896px) {
	.headLine03 {
		width: 22.5rem;
		height: auto;
		padding: 3rem 3rem 1.6rem;
		display: block;
		border-radius: 1rem 1rem 0 1rem;
	}
	.headLine03::before {
		display: none;
	}
	.headLine03 .en {
		margin: 0 0 0.5rem;
		padding-bottom: 1.4rem;
		width: auto;
		position: relative;
		display: block;
		font-size: 1.3rem;
		text-align: left;
		border-bottom: 1px solid #fff;
	}
	.headLine03 .en .num {
		margin-top: 0;
		position: absolute;
		right: 0;
		bottom: 0.9rem;
		font-size: 3rem;
		letter-spacing: 0;
	}
	.headLine03 .jp {
		font-size: 2rem;
		display: block;
	}
}
/*------------------------------------------------------------
	headLine04
------------------------------------------------------------*/
.headLine04 {
	margin-bottom: 1.4rem;
	padding: 0 0 0.3rem 1rem;
	color: #000;
	font-size: 1.8rem;
	font-weight: 500;
	border-left: 1rem solid #FF7201;
}
@media all and (max-width: 896px) {
	.headLine04 {
		margin-bottom: 2.2rem;
		padding: 0 0 0 0.9rem;
		color: #585858;
		line-height: 1.2;
		font-size: 1.7rem;
		font-weight: 600;
		letter-spacing: 0.06em;
		border-left-width: 0.5rem;
	}
}
/*------------------------------------------------------------
	headLine05
------------------------------------------------------------*/
.headLine05 {
	margin-bottom: 6.2rem;
	padding-top: 1.1rem;
	font-size: 1.8rem;
	font-weight: 700;
	border-top: 0.2rem solid #FF7201;
}
@media all and (max-width: 896px) {
	.headLine05 {
		margin-bottom: 3.9rem;
		padding-top: 3.6rem;
		letter-spacing: 0.1em;
	}
}
/*------------------------------------------------------------
	comContact
------------------------------------------------------------*/
.comContact {
	padding: 10.6rem 0 9.7rem;
	color: #fff;
	position: relative;
	background: url(img/common/contact_bg.jpg) no-repeat top center;
	background-size: cover;
}
.comContact::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #585858;
	content: "";
	mix-blend-mode: multiply;
}
.comContact .content {
	position: relative;
	z-index: 2;
}
.comContact .ttl {
	margin-bottom: 4rem;
	padding-bottom: 3.5rem;
	text-align: center;
	font-size: 2.4rem;
	font-weight: 700;
	border-bottom: 1px solid #fff;
}
.comContact ul {
	width: 90rem;
	margin: 0 auto;
}
.comContact li {
	width: 34rem;
	text-align: center;
}
.comContact .ico {
	width: 6rem;
	margin: 0 auto 4.1rem;
}
.comContact .tel {
	margin-top: -1.6rem;
}
.comContact .tel a {
	display: block;
	width: fit-content;
	margin: 0 auto 1rem;
	color: #fff;
	font-size: 3.2rem;
	font-weight: 700;
}
.comContact .link a {
	height: 6.8rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #FF7200;
	font-size: 2rem;
	font-weight: 700;
	background-color: #fff;
	border-radius: 5rem;
}
@media all and (min-width: 897px) {
	.comContact .link a:hover {
		color: #fff;
		background-color: #FF7200;
	}
}
@media all and (max-width: 896px) {
	.comContact {
		padding: 7.3rem 0 7.6rem;
	}
	.comContact .ttl {
		margin-bottom: 3.6rem;
		padding-bottom: 1.5rem;
		font-size: 1.5rem;
		line-height: 1.53;
		letter-spacing: 0.1em;
	}
	.comContact ul {
		width: auto;
		display: block;
	}
	.comContact li {
		width: auto;
	}
	.comContact li:first-child {
		margin-bottom: 4.1rem;
	}
	.comContact .ico {
		width: 6rem;
		margin: 0 auto 2.7rem;
	}
	.comContact .tel {
		margin-top: -1rem;
		font-size: 1.4rem;
	}
	.comContact .tel a {
		margin: 0 auto 0.6rem;
		font-size: 3rem;
		letter-spacing: 0.05em;
	}
	.comContact .link {
		width: 22rem;
		margin: 0 auto;
	}
	.comContact .link a {
		height: 3.8rem;
		font-size: 1.4rem;
		letter-spacing: 0.1em;
	}
}
/*------------------------------------------------------------
	pageTilte
------------------------------------------------------------*/
.pageTilte {
	padding: 7.1rem 7rem 11.6rem;
}
.pageTilte .bg {
	height: 44rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url(img/news/page_title_bg.jpg) no-repeat center center;
	background-size: cover;
	border-radius: 4rem;
}
.pageTilte h2 {
	color: #F1F1F1;
	font-size: 6rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	font-family: "Oswald", sans-serif;
}
@media all and (max-width: 896px) {
	.pageTilte {
		padding: 5.5rem 2.8rem 7rem;
	}
	.pageTilte .bg {
		height: 16rem;
		background-image: url(img/news/page_title_bg_sp.jpg);
		border-radius: 2.5rem;
	}
	.pageTilte h2 {
		font-size: 3rem;
	}
}
/*------------------------------------------------------------
	.wp-pagenavi
------------------------------------------------------------*/
.wp-pagenavi {
	font-size: 0;
	clear: both;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.wp-pagenavi a,
.wp-pagenavi span {
	margin: 0 1rem;
	font-size: 2rem;
	font-weight: 700;
}
.wp-pagenavi img {
	width: 2.2rem;
}
.wp-pagenavi a:hover,
.wp-pagenavi span.current {
	opacity: 0.7;
}
.wp-pagenavi .first,
.wp-pagenavi .last,
.wp-pagenavi .pages {
	display: none;
}
@media all and (max-width: 896px) {
	.wp-pagenavi {
		margin: 0 -2rem;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		margin: 0 0.9rem;
		font-size: 1.8rem;
	}
	.wp-pagenavi img {
		width: 1.7rem;
	}
}
/*------------------------------------------------------------
	comTab
------------------------------------------------------------*/
.comTab table {
	width: 100%;
	border-collapse: collapse;
	border-bottom: 1px solid #707070;
}
.comTab th,
.comTab td {
	padding: 1.9rem 0 2.3rem;
	vertical-align: top;
	text-align: left;
	font-size: 1.4rem;
	line-height: 1.43;
	font-weight: 400;
	box-sizing: border-box;
	border-top: 1px solid #707070;
}
.comTab th {
	width: 32.5%;
}
@media all and (max-width: 896px) {
	.comTab table {
		border-bottom: none;
	}
	.comTab th,
	.comTab td {
		display: block;
		width: 100% !important;
		padding: 0.2rem 0 1.8rem;
		font-size: 1.5rem;
		line-height: 1.66;
		letter-spacing: 0.06em;
	}
	.comTab th {
		padding: 1.8rem 0 0;
		font-size: 1.3rem;
		font-weight: 700;
	}
	.comTab td {
		border: none;
	}
}
/*------------------------------------------------------------
	comLink
------------------------------------------------------------*/
.comLink {
	width: 20.8rem;
}
.comLink a {
	padding: 1.1rem 3rem;
	display: block;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 700;
	background: #FF7201 url(img/common/icon08.png) no-repeat right 1.8rem center;
	background-size: 1.7rem auto;
	border-radius: 4rem;
	border: 1px solid #FF7201;
}
@media all and (min-width: 897px) {
	.comLink a:hover {
		color: #FF7201;
		background-color: #fff;
		background-image: url(img/common/icon08_on.png);
	}
}
@media all and (max-width: 896px) {
	.comLink {
		width: 20rem;
	}
	.comLink a {
		padding: 0.9rem 2.6rem;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
	}
}
/*------------------------------------------------------------
	comBtn
------------------------------------------------------------*/
.comBtn {
	width: 40rem;
	margin: 0 auto;
	background: linear-gradient( to bottom, #FFAC45 0%, #FF8C2E 100%);
	overflow: hidden;
	border: 1px solid #707070;
	box-sizing: border-box;
	border-radius: 5rem;
	transition: .3s;
}
.comBtn a {
	padding: 3.3rem 9rem 1.8rem 4.2rem;
	display: block;
	position: relative;
	font-size: 1.8rem;
	font-weight: 700;
	background: #fff url(img/common/icon11.png) no-repeat right 0.9rem center;
	background-size: 6rem auto;
	box-sizing: border-box;
}
.comBtn .en {
	position: absolute;
	left: 4.2rem;
	top: 1.2rem;
	color: #FF7200;
	font-size: 1.2rem;
	font-weight: 100;
	letter-spacing: 0.05em;
	transition: .3s;
}
@media all and (min-width: 897px) {
	.comBtn a:hover {
		color: #fff;
		background-image: url(img/common/icon11_on.png);
		background-color: transparent;
	}
	.comBtn a:hover .en {
		color: #fff;
	}
}
@media all and (max-width: 896px) {
	.comBtn {
		width: 26.2rem;
		margin: 0 auto;
		background: none;
	}
	.comBtn a {
		padding: 0.8rem 4rem 0.9rem 3.3rem;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
		background-position: right 1.2rem center;
		background-size: 2.9rem auto;
	}
	.comBtn .en {
		margin: -0.5rem 0 0 1.3rem;
		position: static;
		display: inline-block;
		vertical-align: middle;
		font-size: 1.3rem;
	}
}
/*------------------------------------------------------------
	mainImg
------------------------------------------------------------*/
.mainImg {
	margin-top: 0.9rem;
	padding: 8.9rem 0 21rem;
	background-color: #fff;
}
.mainImg h2 {
	padding: 0 20rem 7.1rem;
	position: relative;
	font-size: 4.8rem;
	font-weight: 700;
}
.mainImg h2::before {
	position: absolute;
	left: 0;
	top: 1.9rem;
	width: 12.8rem;
	height: 0.2rem;
	background-color: #FF7201;
	content: "";
}
.mainImg h2 .en {
	margin-bottom: 0.5rem;
	display: block;
	color: #FF7201;
	font-size: 2.1rem;
	font-weight: 500;
	font-family: "Oswald", sans-serif;
}
.mainImg .pho {
	margin: 0 0 8.3rem 7.1rem;
	overflow: hidden;
	border-radius: 4rem 0 0 4rem;
}
.mainImg .pho img {
	width: 100%;
	height: 47.3rem;
	object-fit: cover;
}
.mainImg .textBox {
	padding-left: 25.3rem;
	position: relative;
}
.mainImg .ttl {
	position: absolute;
	left: 0;
	top: 0;
	font-weight: 400;
	color: #FF7200;
}
.mainImg .title {
	margin-bottom: 4rem;
	font-weight: 700;
	font-size: 3.2rem;
}
.mainImg p {
	font-size: 1.8rem;
	line-height: 2;
}
@media all and (max-width: 896px) {
	.mainImg {
		margin-top: 0.5rem;
		padding: 4.5rem 0 12.7rem;
	}
	.mainImg h2 {
		padding: 0 0 3.9rem 5.6rem;
		font-size: 3rem;
		letter-spacing: 0.1em;
	}
	.mainImg h2::before {
		top: 0.9rem;
		width: 2.8rem;
	}
	.mainImg h2 .en {
		margin-bottom: -0.1rem;
		font-size: 1.3rem;
		font-weight: 700;
		letter-spacing: 0;
		font-family: "Noto Sans JP", sans-serif;
	}
	.mainImg .pho {
		margin: 0 0 3.5rem 2.8rem;
		border-radius: 2.5rem 0 0 2.5rem;
	}
	.mainImg .pho img {
		height: 17rem;
	}
	.mainImg .textBox {
		padding-left: 0;
	}
	.mainImg .ttl {
		margin-bottom: 2.4rem;
		position: static;
		font-size: 1.3rem;
	}
	.mainImg .title {
		margin-bottom: 2.2rem;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	.mainImg p {
		font-size: 1.5rem;
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
}
/*------------------------------------------------------------
	comTxt
------------------------------------------------------------*/
.comTxt {
	font-size: 6rem;
	font-weight: 800;
	line-height: 1;
	color: #fff;
	font-family: "Shippori Mincho B1", serif;
}
.comTxt span {
	margin-right: 0.4rem;
	padding: 1.4rem 1.4rem 0.5rem;
	display: block;
	background-color: #707070;
}
@media all and (min-width: 897px) {
	.comTxt {
		position: absolute;
		left: 15rem;
		top: 47.7rem;
		-ms-writing-mode: tb-rl;
		-webkit-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
	}
}
@media all and (max-width: 896px) {
	.comTxt {
		width: fit-content;
		font-size: 3rem;
	}
	.comTxt span {
		margin: 0 0 0.4rem;
		padding: 0.4rem 0 0.6rem 0.6rem;
	}
}
/*------------------------------------------------------------
	privacy
------------------------------------------------------------*/
#privacy {
	padding: 12.6rem 0 17.8rem;
}
#privacy .topText,
#privacy .textList {
	color: #000;
	font-size: 1.4rem;
	line-height: 2.14;
	font-weight: 300;
}
#privacy .topText {
	margin-bottom: 3rem;
}
#privacy .textList > li {
	padding-bottom: 3rem;
}
#privacy .textList h3 {
	font-weight: 500;
}
#privacy .textList p {
	margin-left: 1.7rem;
}
#privacy .txtUl {
	margin: 3rem 0 0 1.7rem;
}
#privacy .txtUl li {
	text-indent: -1em;
	padding-left: 1em;
}
@media all and (max-width: 896px) {
	#privacy {
		padding: 5.4rem 0 9.3rem;
	}
	#privacy .topText,
	#privacy .textList {
		color: #585858;
		font-size: 1.5rem;
		line-height: 1.86;
		font-weight: 400;
		letter-spacing: 0.06em;
	}
	#privacy .topText {
		margin-bottom: 2.8rem;
	}
	#privacy .textList > li {
		padding-bottom: 2.9rem;
	}
	#privacy .textList h3 {
		font-weight: 700;
	}
	#privacy .textList p {
		margin-left: 0;
		text-indent: 1em;
	}
	#privacy .txtUl {
		margin: 2.7rem 0 0 1.9rem;
	}
	#privacy .txtUl li {
		text-indent: -1.3em;
		padding-left: 1.3em;
	}
}
/*------------------------------------------------------------
	contact
------------------------------------------------------------*/
#contact {
	padding: 12.6rem 0 14.9rem;
}
#contact .topBox {
	margin-bottom: 5rem;
	padding-bottom: 4.7rem;
	border-bottom: 1px solid rgba(0,0,0,0.1);
}
#contact .textBox {
	margin-top: -0.2rem;
}
#contact .textBox .tel {
	font-size: 1.4rem;
}
#contact .textBox .tel a {
	margin-bottom: 0.6rem;
	display: block;
	font-size: 3.2rem;
	font-weight: 700;
}
#contact .textBox .text {
	width: calc(100% - 33.7rem);
	margin-top: -0.1rem;
	line-height: 1.75;
	box-sizing: border-box;
}
#contact .textBox .text span {
	display: block;
	text-indent: -1em;
	padding-left: 1em;
}
#contact .mailForm table {
	margin-bottom: 2.4rem;
	width: 100%;
	border-collapse: collapse;
}
#contact .mailForm th,
#contact .mailForm td {
	padding-bottom: 3rem;
	width: 100%;
	display: block;
	font-weight: 400;
	word-break: break-all;
}
#contact .mailForm th {
	padding-bottom: 1.6rem;
	font-weight: 500;
}
#contact .mailForm .must {
	margin: -0.2rem 0 0 1.8rem;
	display: inline-block;
	vertical-align: middle;
	color: #FF7200;
	font-size: 1.2rem;
}
#contact .mailForm .radioUl {
	padding: 1.9rem 0 3rem;
	display: block;
}
#contact .mailForm .radioUl .wpcf7-list-item {
	margin-left: 0;
	display: block;
}
#contact .mailForm .radioUl .wpcf7-list-item:not(:last-child) {
	margin-bottom: 2rem;
}
#contact .mailForm input[type="radio"] {
	display: none;
}
#contact .mailForm input[type="radio"] ~ span {
	min-height: 2.8rem;
	padding-left: 3.8rem;
	display: inline-block;
	color: #707070;
	background: url(img/common/radio_img01.png) no-repeat left center;
	background-size: 2.8rem auto;
	cursor: pointer;
}
#contact .mailForm input[type="radio"]:checked ~ span {
	background-image: url(img/common/radio_img02.png);
}
#contact .mailForm table input[type="text"],
#contact .mailForm table input[type="email"],
#contact .mailForm table input[type="tel"],
#contact .mailForm table textarea {
	width: 100%;
	padding: 0 1.6rem;
	height: 5.8rem;
	font-size: 1.6rem;
	color: #585858;
	border: 1px solid #696969;
	box-sizing: border-box;
	appearance: none;
	box-shadow: none;
	border-radius: 0.6rem;
	background: #fff;
}
#contact .mailForm table textarea {
	height: 23.1rem;
	padding: 1.6rem;
	resize: vertical;
	border-radius: 1rem;
}
#contact .mailForm input::-webkit-input-placeholder,
#contact .mailForm textarea::-webkit-input-placeholder { 
	color: #9F9F9F;
	opacity: 1;
}
#contact .mailForm input:-moz-placeholder,
#contact .mailForm textarea:-moz-placeholder {
	color: #9F9F9F;
	opacity: 1;
}
#contact .mailForm input::-moz-placeholder,
#contact .mailForm textarea::-moz-placeholder {
	color: #9F9F9F;
	opacity: 1;
}
#contact .mailForm input:-ms-input-placeholder,
#contact .mailForm textarea:-ms-input-placeholder {
	color: #9F9F9F;
	opacity: 1;
}
#contact .download {
	margin-bottom: 7.7rem;
}
#contact .download dt {
	float: left;
	margin-top: 0.2rem;
	font-size: 1.4rem;
} 
#contact .download dd {
	padding-left: 19rem;
}
#contact .downloadInfo {
	margin-top: -0.2rem;
	width: fit-content;
	position: relative;
	display: flex;
	font-size: 1.4rem;
	word-break: break-all;
    align-items: flex-start;
}
#contact .downloadInfo > .wpcf7-form-control-wrap {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
}
#contact .downloadInfo > .wpcf7-form-control-wrap input {
	width: 100%;
	height: 100%;
	font-size: 0;
	vertical-align: top;
	cursor: pointer;
}
#contact .downloadInfo .borderTtl {
	width: 18.3rem;
	margin-right: 1.9rem;
	padding-bottom: 1px;
	text-align: center;
	font-weight: 500;
	background-color: #fff;
	border: 1px solid #CBCBCB;
	border-radius: 5rem;
}
#contact .mailForm .submit li {
	width: 29.8rem;
	margin: 0 2rem;
}
#contact .mailForm .submit input {
	width: 100%;
	height: 6.6rem;
	padding: 0 3.8rem 0.3rem;
	text-align: left;
	font-size: 2rem;
	color: #fff;
	font-weight: 500;
	border: none;
	box-sizing: border-box;
	appearance: none;
	box-shadow: none;
	border-radius: 5rem;
	background: #FF7200 url(img/common/icon03.png) no-repeat right 3.2rem center;
	background-size: 2.4rem auto;
	cursor: pointer;
	transition: .3s;
}
#contact .thanks {
	margin-bottom: 3rem;
	text-align: center;
	line-height: 2;
}
#contact .comLink {
	width: 25rem;
	margin: 0 auto;
}
#contact .confirm input[type="text"],
#contact .confirm input[type="email"],
#contact .confirm input[type="tel"],
#contact .confirm textarea {
	color: #000 !important;
	background: #ccc !important;
}
#contact .confirm input[type="text"]:-internal-autofill-selected,
#contact .confirm input[type="email"]:-internal-autofill-selected,
#contact .confirm input[type="tel"]:-internal-autofill-selected,
#contact .confirm textarea:-internal-autofill-selected {
    box-shadow: inset 0 0 0 1000px #ccc !important;
}
#contact .confirm input[type="radio"] ~ span {
	opacity: 0.7;
	cursor: default;
}
#contact .confirm .downloadInfo {
	opacity: 0.7;
}
#contact .confirm .downloadInfo > .wpcf7-form-control-wrap input {
	cursor: default;
}
#contact .wpcf7-spinner {
	margin: 1rem auto 0 !important;
    display: block !important;
}
@media all and (min-width: 897px) {
	#contact .mailForm .submit input:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#contact {
		padding: 5.4rem 0 11.9rem;
	}
	#contact .topBox {
		margin-bottom: 6rem;
		padding-bottom: 5.5rem;
	}
	#contact .textBox {
		margin-top: 0;
		padding-top: 0.2rem;
		display: block;
		text-align: center;
	}
	#contact .textBox .tel a {
		margin-bottom: 0.1rem;
		font-size: 3rem;
		letter-spacing: 0.01em;
	}
	#contact .textBox .text {
		width: auto;
		margin-top: 3.5rem;
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
	#contact .textBox .text span {
		text-indent: 0;
		padding-left: 0;
	}
	#contact .mailForm table {
		margin-bottom: -0.2rem;
	}
	#contact .mailForm th,
	#contact .mailForm td {
		padding-bottom: 3.5rem;
	}
	#contact .mailForm th {
		padding-bottom: 1.4rem;
		font-size: 1.8rem;
		letter-spacing: 0.1em;
	}
	#contact .mailForm th.letter {
		letter-spacing: 0;
	}
	#contact .mailForm .must {
		margin: -0.5rem -2rem 0 1.5rem;
		font-size: 1.3rem;
		letter-spacing: 0.1em;
	}
	#contact .mailForm .must01 {
		margin-left: 0.4rem;
	}
	#contact .mailForm .radioUl {
		padding: 1rem 0 0;
	}
	#contact .mailForm .radioUl .wpcf7-list-item:not(:last-child) {
		margin-bottom: 1.9rem;
	}
	#contact .mailForm input[type="radio"] ~ span {
		min-height: 2.5rem;
		padding: 0.2rem 0 0 3.9rem;
		background-size: 2.5rem auto;
	}
	#contact .mailForm table input[type="text"],
	#contact .mailForm table input[type="email"],
	#contact .mailForm table input[type="tel"],
	#contact .mailForm table textarea {
		padding: 0 1.2rem;
		height: 4.5rem;
		font-size: 1.5rem;
	}
	#contact .mailForm table textarea {
		height: 25rem;
		padding: 1.2rem;
		border-radius: 0.6rem;
	}
	#contact .download {
		margin-bottom: 7rem;
	}
	#contact .download dt {
		float: none;
		margin-top: 0;
		font-size: 1.3rem;
		letter-spacing: 0.06em;
	} 
	#contact .download dd {
		padding-left: 0;
	}
	#contact .downloadInfo {
		margin-top: 1rem;
		font-size: 1.3rem;
	}
	#contact .downloadInfo .borderTtl {
		width: 18.3rem;
		margin-right: 1rem;
		padding: 1px 0 0.2rem;
	}
	#contact .downloadInfo .text {
		margin: 0.3rem -1rem 0 0;
		letter-spacing: 0.06em;
	}
	#contact .mailForm .submit {
		display: block;
	}
	#contact .mailForm .submit li {
		width: 20rem;
		margin: 0 auto 1rem;
	}
	#contact .mailForm .submit li:last-child {
		margin-bottom: 0;
	}
	#contact .mailForm .submit input {
		height: 4.2rem;
		padding: 0 2.6rem;
		font-size: 1.5rem;
		font-weight: 700;
		letter-spacing: 0.1em;
		background-image: url(img/common/icon03_sp.png);
		background-position: right 1.7rem center;
		background-size: 1.6rem auto;
	}
}
/*------------------------------------------------------------
	news
------------------------------------------------------------*/
#news {
	padding-bottom: 15rem;
}
#news .topList {
	margin: -2rem 0 4.9rem;
}
#news .topList li {
	margin: 2rem 1.75rem 0 0;
	width: 28.7rem;
}
#news .topList a {
	height: 6rem;
	padding: 0 2.2rem 0.3rem;
	display: flex;
	align-items: center;
	font-weight: 500;
	font-size: 2rem;
	color: #fff;
	background-color: #707070;
	border-radius: 1rem 3rem 3rem 1rem;
}
#news .topList .current-cat a {
	background-color: #FF9A18;
}
#news .newsList {
	margin-bottom: 5.6rem;
}
#news .newsList li {
	overflow: hidden;
}
#news .newsList .time {
	width: fit-content;
	margin-left: auto;
	padding-left: 1.8rem;
	position: relative;
	font-weight: 700;
	font-size: 1.8rem;
}
#news .newsList .time::before {
	position: absolute;
	right: 100%;
	top: 50%;
	height: 1px;
	background-color: #585858;
	width: 1000rem;
	content: "";
}
#news .newsList .imgBox {
	padding: 2.7rem 0 1.8rem;
	flex-direction: row-reverse;
}
#news .newsList .pho {
	width: 31.2rem;
	height: 20rem;
	position: relative;
	overflow: hidden;
	border-radius: 2rem;
}
#news .newsList .pho img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#news .newsList .textBox {
	width: calc(100% - 40rem);
	margin-top: 1px;
}
#news .newsList .sort {
	gap: 1rem;
}
#news .newsList .sort span {
	min-width: 16.6rem;
	width: fit-content;
	margin-bottom: 1.9rem;
	padding: 0.8rem 2rem;
	text-align: center;
	display: block;
	color: #fff;
	font-weight: 500;
	font-size: 1.8rem;
	background-color: #FF9A18;
	border-radius: 5rem;
}
#news .newsList .ttl {
	margin-bottom: 1.8rem;
	font-weight: 700;
	font-size: 2.4rem;
}
#news .newsList .text {
	line-height: 1.75;
}
@media all and (min-width: 897px) {
	#news .topList a:hover {
		background-color: #FF9A18;
	}
}
@media all and (max-width: 896px) {
	#news {
		padding-bottom: 13.4rem;
	}
	#news .topList {
		margin: 0 0 3.1rem;
		display: block;
	}
	#news .topList li {
		margin: 0 0 0.7rem;
		width: 20rem;
	}
	#news .topList a {
		height: 4.2rem;
		padding: 0 2.6rem;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
		border-radius: 1.5rem 3rem 3rem 1.5rem;
	}
	#news .newsList {
		margin-bottom: 1.9rem;
	}
	#news .newsList .time {
		padding-left: 0.9rem;
		font-size: 1.3rem;
	}
	#news .newsList .time::before {
		position: absolute;
		right: 100%;
		top: 50%;
		height: 1px;
		background-color: #585858;
		width: 1000rem;
		content: "";
	}
	#news .newsList .imgBox {
		padding: 2.9rem 0 3.7rem;
		position: relative;
		display: block;
	}
	#news .newsList .pho {
		width: auto;
		height: 0;
		padding-bottom: 72.2%;
		border-radius: 2.5rem;
	}
	#news .newsList .textBox {
		width: auto;
		margin-top: 3.5rem;
	}
	#news .newsList .sort {
		margin-bottom: 2.5rem;
	}
	#news .newsList .sort span {
		min-width: 16rem;
		margin-bottom: 0;
		padding: 1rem 2rem;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
	}
	#news .newsList .ttl {
		margin-bottom: 2.1rem;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	#news .newsList .text {
		letter-spacing: 0.06em;
		line-height: 1.86;
	}
}
/*------------------------------------------------------------
	sdgs
------------------------------------------------------------*/
#sdgs .pageTilte {
	background-color: #fff;
}
#sdgs .pageTilte .bg {
	background-image: url(img/sdgs/page_title_bg.jpg);
}
#sdgs .sec01 {
	padding-bottom: 1px;
	background-color: #fff;
}
#sdgs .sec01 .imgBox {
	margin: 0 5.5rem 0 -0.2rem;
	flex-direction: row-reverse;
}
#sdgs .sec01 .img {
	width: 38.8rem;
}
#sdgs .sec01 .textBox {
	width: calc(100% - 42rem);
}
#sdgs .sec01 p {
	line-height: 1.75;
}
#sdgs .sec01 .btmImg {
	width: 101.6rem;
	margin: -4.3rem auto -11.6rem;
}
#sdgs .sec02 {
	padding: 17.6rem 0 16.5rem;
}
#sdgs .sec02 .headLine02 {
	margin-bottom: 7rem;
}
#sdgs .sec02 .info:not(:last-child) {
	margin-bottom: 6rem;
}
#sdgs .sec02 .whiteBg {
	margin: -1.8rem 5.5rem 0 8.8rem;
	padding: 7.6rem 6rem 6rem;
	background-color: #fff;
	border-radius: 2rem;
}
#sdgs .sec02 .topBox {
	margin-bottom: 9.8rem;
	position: relative;
}
#sdgs .sec02 .topBox p {
	color: #707070;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.6;
}
#sdgs .sec02 .topBox .img {
	position: absolute;
	right: 0;
	top: 0.2rem;
}
#sdgs .sec02 .topBox img {
	width: auto;
	height: 10rem;
}
#sdgs .sec02 .dotList li {
	line-height: 1.75;
	text-indent: -1.2em;
	padding-left: 1.2em;
}
#sdgs .sec02 .imgBox {
	margin-bottom: 4rem;
	align-items: flex-start;
}
#sdgs .sec02 .imgBox:last-child {
	margin-bottom: 0 !important;
}
#sdgs .sec02 .pho {
	width: 39rem;
	overflow: hidden;
	border-radius: 3rem;
}
#sdgs .sec02 .pho img {
	width: 100%;
}
#sdgs .sec02 .textBox {
	width: 44.5rem;
	margin-top: 4.6rem;
}
#sdgs .sec02 .textBox p {
	line-height: 1.75;
}
#sdgs .sec03 {
	padding: 9.9rem 0 15.9rem;
	background-color: #fff;
}
#sdgs .sec03 .img {
	width: 49.7rem;
	margin-right: -0.4rem;
}
#sdgs .sec03 .textBox {
	width: 56rem;
}
#sdgs .sec03 p {
	line-height: 1.75;
}
@media all and (max-width: 896px) {
	#sdgs .sec01 {
		margin-top: -2.5rem;
		padding-bottom: 1px;
	}
	#sdgs .sec01 img {
		width: 100%;
	}
	#sdgs .sec01 .imgBox {
		margin: 0;
		display: block;
	}
	#sdgs .sec01 .img {
		width: auto;
	}
	#sdgs .sec01 .textBox {
		margin-top: 3.6rem;
		width: auto;
	}
	#sdgs .sec01 p {
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
	#sdgs .sec01 .btmImg {
		width: auto;
		margin: 4.9rem auto -4.7rem;
	}
	#sdgs .sec02 {
		padding: 12.5rem 0 13rem;
	}
	#sdgs .sec02 .headLine02 {
		margin-bottom: 3.6rem;
	}
	#sdgs .sec02 .whiteBg {
		margin: -2rem 0 0;
		padding: 5.9rem 2.8rem 3.7rem;
		border-radius: 1rem;
	}
	#sdgs .sec02 .topBox {
		margin-bottom: 3.8rem;
	}
	#sdgs .sec02 .topBox p {
		margin-bottom: 3.4rem;
		font-size: 1.8rem;
		letter-spacing: 0.04em;
		line-height: 1.55;
	}
	#sdgs .sec02 .topBox .img {
		position: static;
	}
	#sdgs .sec02 .topBox img {
		height: 8.5rem;
	}
	#sdgs .sec02 .dotList li {
		line-height: 1.92;
		font-size: 1.3rem;
		letter-spacing: 0.02em;
	}
	#sdgs .sec02 .imgBox {
		margin-bottom: 3.7rem;
		display: block;
	}
	#sdgs .sec02 .pho {
		width: auto;
		border-radius: 1rem;
	}
	#sdgs .sec02 .textBox {
		width: auto;
		margin-top: 3.2rem;
	}
	#sdgs .sec02 .textBox p {
		line-height: 1.92;
		font-size: 1.3rem;
		letter-spacing: 0.02em;
	}
	#sdgs .sec03 {
		padding: 6.1rem 0 12.6rem;
	}
	#sdgs .sec03 .img {
		width: auto;
		margin: 3.8rem 0 0;
	}
	#sdgs .sec03 img {
		width: 100%;
	}
	#sdgs .sec03 .textBox {
		width: auto;
	}
	#sdgs .sec03 p {
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
}

/*------------------------------------------------------------
	recruit
------------------------------------------------------------*/
#recruit .pageTilte .bg {
	background-image: url(img/recruit/page_title_bg.jpg);
}
#recruit .mainBox {
	position: relative;
}
#recruit .fixLink {
	position: absolute;
	left: 0;
	top: 0;
	width: 40rem;
	padding: 8.9rem 0 9.5rem;
	background-color: #fff;
	border-radius: 0 4rem 4rem 0;
	box-shadow: 0 0 2.6rem rgba(0,0,0,0.16);
}
#recruit .fixLink p {
	width: 26.6rem;
	margin: 0 auto 2.9rem;
	color: #C1C1C1;
	font-size: 2.4rem;
}
#recruit .fixLink ul {
	width: 26.6rem;
	margin: 0 auto;
	font-size: 1.8rem;
}
#recruit .fixLink li:not(:last-child) {
	margin-bottom: 1.8rem;
}
#recruit .fixLink a {
	padding-left: 5.3rem;
	display: block;
	position: relative;
}
#recruit .fixLink a::before {
	position: absolute;
	left: 0.7rem;
	top: 0.8rem;
	width: 3.6rem;
	height: 1.2rem;
	background-color: #C7C7C7;
	border-radius: 5rem;
	content: "";
	transition: .3s;
}
#recruit .fixLink .on a {
	font-weight: 700;
	color: #FF7200;
}
#recruit .fixLink .on a::before {
	background-color: #FF7200;
}
#recruit .sec01 {
	margin-bottom: 13.2rem;
	margin-top: -36.6rem;
}
#recruit .sec01 .topLink {
	margin-bottom: 4rem;
}
#recruit .sec01 .topLink a:hover {
	opacity: 0.7;
}
#recruit .sec01 .textBox {
	margin-bottom: 4.1rem;
}
#recruit .sec01 .textBox .ttl {
	margin: -1.5rem 0 4.2rem;
	font-weight: 700;
	font-size: 2.4rem;
}
#recruit .sec01 .textBox p {
	line-height: 1.75;
}
#recruit .sec01 .info:not(:last-child) {
	margin-bottom: 6rem;
}
#recruit .sec01 .whiteBg {
	margin: -2rem 0 0 12rem;
	padding: 5.8rem 0 4.8rem 4.4rem;
	line-height: 1.75;
	background-color: #fff;
	border-radius: 0 4rem 4rem 4rem;
}
#recruit .sec01 .whiteBg .btm {
	margin: 0.5rem 0 -0.9rem;
}
#recruit .sec01 .whiteBg .btm span {
	padding-left: 3.4rem;
	display: block;
	width: fit-content;
	font-size: 1.8rem;
	font-weight: 700;
	color: #FF7200;
	background: url(img/common/icon06.png) no-repeat left top 0.4rem;
	background-size: 1.2rem auto;
}
#recruit .sec02 {
	padding: 3rem 0 15.9rem;
	background-color: #F7F5F2;
	position: relative;
    z-index: 10;
}
#recruit .sec02 h3 {
	margin-bottom: 11.6rem;
	color: #707070;
	font-weight: 400;
	font-size: 12.8rem;
	line-height: 1;
}
#recruit .sec02 .topBox {
	margin-bottom: 17.7rem;
}
#recruit .sec02 .topBox .ttl {
	margin-bottom: 4.4rem;
	text-align: center;
	font-weight: 700;
	font-size: 3.2rem;
	letter-spacing: 0.05em;
}
#recruit .sec02 .topBox .midTxt {
	width: fit-content;
	margin: 0 auto 11.9rem;
	text-align: center;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.83;
	letter-spacing: 0.05em;
}
#recruit .sec02 .topBox .midTxt .sml {
	margin-top: 2.1rem;
	display: block;
	text-align: right;
	color: #707070;
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0;
}
#recruit .sec02 .info .title {
	padding: 0.9rem 1.9rem;
	margin-bottom: 1.9rem;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	background-color: #FF9A18;
}
#recruit .sec02 .info .pho {
	margin-bottom: 1rem;
	overflow: hidden;
	border-radius: 4rem;
}
#recruit .sec02 .info p {
	line-height: 1.375;
}
#recruit .sec02 .inner:not(:last-child) {
	margin-bottom: 9.7rem;
}
#recruit .sec02 .listUl li {
	margin-bottom: 5.9rem;
	position: relative;
}
#recruit .sec02 .listUl li:last-child {
	margin-bottom: 0 !important;
}
#recruit .sec02 .listUl .img {
	position: absolute;
	left: 0;
	top: 50%;
	width: 13rem;
	transform: translateY(-50%);
}
#recruit .sec02 .listUl li.right .img {
	left: auto;
	right: 0;
}
#recruit .sec02 .listUl img {
	border-radius: 100%;
}
#recruit .sec02 .listUl .img span {
	position: absolute;
	right: -1.6rem;
	bottom: -0.1rem;
}
#recruit .sec02 .listUl li.right .img span {
	right: auto;
	left: -1.7rem;
}
#recruit .sec02 .listUl .whiteBg {
	position: relative;
	width: 102.1rem;
	margin-left: auto;
	min-height: 10rem;
	padding: 2.3rem 4.1rem;
	display: flex;
	align-items: center;
	line-height: 1.75;
	background-color: #fff;
	box-sizing: border-box;
	border-radius: 2rem;
}
#recruit .sec02 .listUl .whiteBg::before {
	position: absolute;
	top: 50%;
	left: -2.2rem;
	width: 2.5rem;
	height: 2.5rem;
	background-color: #fff;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
	content: "";
	transform: translateY(-50%);
}
#recruit .sec02 .listUl li.right .whiteBg {
	margin: 0;
}
#recruit .sec02 .listUl li.right .whiteBg::before {
	left: auto;
	right: -2.2rem;
	clip-path: polygon(100% 50%, 0 0, 0 100%);
}
#recruit .sec03 {
	padding: 10.8rem 0 15.7rem;
	background-color: #fff;
}
#recruit .sec03 li {
	text-indent: -1em;
	padding-left: 1em;
}
#recruit .sec03 dt {
	float: left;
}
#recruit .sec03 dd {
	padding-left: 9.8rem;
}
#recruit .sec03 td p {
	display: flex;
}
#recruit .sec03 td p span {
	flex-shrink: 0;
}
@media all and (min-width: 897px)and (max-width: 1360px) {
	#recruit .fixLink {
		width: 34rem;
	}
}
@media all and (min-width: 897px) {
	#recruit .fixLink {
		position: sticky;
		z-index: 9;
	}
	#recruit .fixLink a:hover {
		font-weight: 700;
		color: #FF7200;
	}
	#recruit .fixLink a:hover::before {
		background-color: #FF7200;
	}
	#recruit .sec01 .content {
		padding-left: 36rem;
	}
	#recruit .sec01 .headLine03 {
		width: 70rem;
	}
	#recruit .sec01 .headLine03::before {
		left: 21.3rem;
	}
	#recruit .sec01 .headLine03 .en {
		margin-right: 4.2rem;
		padding-left: 6.8rem;
		text-align: left;
	}
	#recruit .sec01 .headLine03 .en .num {
		margin-top: 0.5rem;
		font-size: 2.4rem;
		letter-spacing: 0;
	}
	#recruit .sec01 .whiteBg a:hover {
		opacity: 0.7;
	}
	#recruit .sec02 .content {
		padding-left: 1.8rem;
	}
	#recruit .sec02 .infoLeft {
		width: 25.2rem;
	}
	#recruit .sec02 .infoRight {
		width: 86rem;
	}
	#recruit .sec02 .infoRight li {
		width: 25.2rem;
	}
	#recruit .sec02 .headLine02 {
		margin-bottom: 5.9rem;
		font-size: 2.4rem;
		letter-spacing: 0.05em;
	}
	#recruit .sec02 .headLine02 .en {
		margin-bottom: 0.6rem;
		letter-spacing: 0;
	}
	#recruit .sec03 .content {
		padding: 0 0.5rem 0 37.5rem;
	}
}
@media all and (max-width: 896px) {
	#recruit .sec01 .topLink {
		text-align: center;
	}
	#recruit .fixLink {
		margin-bottom: 7.2rem;
		position: static;
		width: 31.9rem;
		padding: 5.1rem 0 6rem;
		border-radius: 0 2.5rem 2.5rem 0;
	}
	#recruit .fixLink p {
		width: 26.4rem;
		margin: 0 auto 3.3rem;
	}
	#recruit .fixLink ul {
		width: 26.6rem;
		font-size: 1.5rem;
	}
	#recruit .fixLink li:not(:last-child) {
		margin-bottom: 1.9rem;
	}
	#recruit .fixLink a {
		padding-left: 4.8rem;
	}
	#recruit .fixLink a::before {
		left: 0.2rem;
		top: 0.6rem;
	}
	#recruit .sec01 {
		margin-bottom: 11.2rem;
		margin-top: 0 !important;
	}
	#recruit .sec01 .textBox {
		margin-bottom: 3.2rem;
	}
	#recruit .sec01 .textBox .ttl {
		margin: -0.5rem 0 2.2rem;
		font-weight: 700;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	#recruit .sec01 .textBox p {
		line-height: 1.86;
	}
	#recruit .sec01 .headLine03 {
		width: 23rem;
		padding: 2.9rem 2.2rem 2.1rem 2.8rem;
	}
	#recruit .sec01 .headLine03.wid {
		width: 27.3rem;
	}
	#recruit .sec01 .headLine03 .en {
		margin: 0 0 0.7rem;
	}
	#recruit .sec01 .headLine03 .en .num {
		right: auto;
		left: 7.1rem;
		bottom: 1rem;
		font-size: 2.6rem;
	}
	#recruit .sec01 .headLine03 .jp {
		line-height: 1.4;
		letter-spacing: 0.1em;
	}
	#recruit .sec01 .whiteBg {
		margin: -3.4rem 0 0;
		padding: 7.1rem 2.8rem 3.9rem 2.8rem;
		line-height: 1.92;
		font-size: 1.3rem;
		border-radius: 1rem;
		letter-spacing: 0.06em;
	}
	#recruit .sec01 .whiteBg li {
		text-indent: -1em;
		padding-left: 1em;
	}
	#recruit .sec01 .whiteBg .btm {
		margin: 1.2rem 0 0.6rem;
	}
	#recruit .sec01 .whiteBg .btm span {
		padding-left: 2rem;
		font-size: 1.5rem;
		line-height: 1.53;
		letter-spacing: 0.1em;
		background-position: left top 0.5rem;
		background-size: 1.1rem auto;
	}
	#recruit .sec02 {
		padding: 3rem 0 13.2rem;
	}
	#recruit .sec02 h3 {
		margin-bottom: 5.8rem;
		font-size: 5rem;
	}
	#recruit .sec02 .topBox {
		margin-bottom: 12.7rem;
	}
	#recruit .sec02 .topBox .ttl {
		margin-bottom: 3.6rem;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	#recruit .sec02 .topBox .midTxt {
		margin: 0 auto 6.8rem;
		font-size: 1.5rem;
		line-height: 1.86;
	}
	#recruit .sec02 .topBox .midTxt .sml {
		margin: 2.3rem -1.4rem 0;
		color: #585858;
		font-size: 1.3rem;
		letter-spacing: 0.06em;
	}
	#recruit .sec02 .info {
		display: block;
	}
	#recruit .sec02 .info .title {
		margin-bottom: 2.5rem;
	}
	#recruit .sec02 .infoLeft {
		margin-bottom: 3.8rem;
	}
	#recruit .sec02 .infoLeft ul {
		width: 16rem;
		margin: 0 auto;
	}
	#recruit .sec02 .info .pho {
		margin-bottom: 0.9rem;
		border-radius: 2.5rem;
	}
	#recruit .sec02 .info p {
		margin: 0 -1.9rem;
		line-height: 1.53;
		font-size: 1.3rem;
	}
	#recruit .sec02 .infoRight ul {
		display: block;
	}
	#recruit .sec02 .infoRight li {
		margin-bottom: -0.8rem;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#recruit .sec02 .infoRight li:nth-child(2n + 1) {
		flex-direction: row-reverse;
	}
	#recruit .sec02 .infoRight .pho {
		width: 16rem;
	}
	#recruit .sec02 .infoRight p {
		margin: 0 0 1rem;
		width: 16rem;
		box-sizing: border-box;
	}
	#recruit .sec02 .infoRight li:nth-child(2n) p {
		padding-left: 1.5rem;
	}
	#recruit .sec02 .inner:not(:last-child) {
		margin-bottom: 6rem;
	}
	#recruit .sec02 .headLine02 {
		margin-bottom: 3.4rem;
		font-size: 2rem;
		line-height: 1.5;
	}
	#recruit .sec02 .headLine02 .en {
		margin-bottom: 0.5rem;
	}
	#recruit .sec02 .listUl li {
		margin-bottom: 2rem;
	}
	#recruit .sec02 .listUl .img {
		top: 0;
		width: 6rem;
		transform: none;
	}
	#recruit .sec02 .listUl .img span {
		margin-top: 0.6rem;
		position: static;
		display: block;
		text-align: center;
		font-size: 1.3rem;
	}
	#recruit .sec02 .listUl .whiteBg {
		width: calc(100% - 7.1rem);
		min-height: inherit;
		padding: 2.4rem 2rem 2.3rem;
		line-height: 1.54;
		font-size: 1.3rem;
		letter-spacing: 0.05em;
		border-radius: 1rem;
	}
	#recruit .sec02 .listUl .whiteBg::before {
		top: 2.5rem;
		left: -0.8rem;
		width: 0.8rem;
		height: 0.7rem;
		transform: none;
	}
	#recruit .sec02 .listUl li.right .whiteBg::before {
		right: -0.8rem;
	}
	#recruit .sec03 {
		padding: 5.9rem 0 10.7rem;
	}
	#recruit .sec03 ul {
		display: block;
	}
	#recruit .sec03 dd {
		padding-left: 9.5rem;
	}
	#recruit .sec03 .dd01 {
		padding-left: 13.2rem;
	}
	#recruit .sec03 dd span {
		display: block;
		margin-left: -1.5rem;
	}
	#recruit .sec03 .dd01 span {
		margin-left: -8.5rem;
	}
}
/*------------------------------------------------------------
	business
------------------------------------------------------------*/
#business .pageTilte .bg {
	background-image: url(img/business/index/page_title_bg.jpg);
}
#business .sec01 {
	padding-bottom: 8.7rem;
}
#business .sec01 .headLine02 {
	margin-bottom: 6rem;
}
#business .sec01 .listUl > li {
	position: relative;
	display: flex;
	align-items: center;
}
#business .sec01 .listUl > li:not(:last-child)::before {
	position: absolute;
	right: -10.5rem;
	top: 50%;
	background: url(img/common/icon07.png) no-repeat;
	background-size: 4.8rem auto;
	width: 4.8rem;
	height: 4.6rem;
	content: "";
	transform: translateY(-61%);
}
#business .sec01 .listUl .ico {
	margin-right: 1.8rem;
	width: 16.2rem;
	flex-shrink: 0;
}
#business .sec01 .dotList li {
	padding-left: 1.9rem;
	position: relative;
	line-height: 1.56;
}
#business .sec01 .dotList li::before {
	position: absolute;
	left: 0;
	top: 0;
	color: #FF9A18;
	content: "●";
}
#business .sec02 {
	background-color: #fff;
}
#business .sec02 .info {
	padding: 8.1rem 0 21.3rem;
	border-bottom: 1px solid #C7C7C7;
}
#business .sec02 .info:last-child {
	border: none;
}
#business .sec02 .imgBox {
	display: flex;
	align-items: flex-start;
}
#business .sec02 .ttl {
	padding-top: 0.1rem;
	margin-bottom: 1.8rem;
	font-weight: 700;
	font-size: 2.4rem;
}
#business .sec02 p {
	line-height: 1.75;
}
#business .sec02 .pho {
	margin-left: 6rem;
	flex-shrink: 0;
	width: 60rem;
	overflow: hidden;
	border-radius: 4rem;
}
#business .sec02 .comLink {
	margin-top: 3.8rem;
}
@media all and (min-width: 897px) {
	#business .sec02 .info02 {
		padding-bottom: 12.6rem;
	}
	#business .sec02 .info03 {
		padding: 8.7rem 0 11.2rem;
	}
	#business .sec01 .listUl > li {
		display: block;
		width: 16rem;
	}
	#business .sec01 .listUl .ico {
		margin-right: 0;
		width: 16rem;
	}
	#business .sec01 .listUl ul {
		margin: 1.9rem auto 0;
		width: fit-content;
	}
	#business .sec01 .listUl > li:nth-child(2) ul {
        margin: 1.9rem -4.5rem 0 -2.5rem;
        width: auto;
    }
	#business .sec01 .listUl > li:not(:last-child)::before {
		right: -3.3rem;
		top: 7.2rem;
		background-size: 1.8rem auto;
		width: 1.8rem;
		height: 1.8rem;
		transform: none;
	}
}
@media all and (max-width: 896px) {
	#business .sec01 {
		margin-top: -1.5rem;
		padding-bottom: 12.8rem;
	}
	#business .sec01 .headLine02 {
		margin-bottom: 4rem;
	}
	#business .sec01 .listUl {
		display: block;
	}
	#business .sec01 .listUl > li:not(:last-child) {
		margin-bottom: 12rem;
	}
	#business .sec01 .listUl > li:not(:last-child)::before {
		margin-right: -1.8rem;
		right: 50%;
		top: auto;
		bottom: -8.4rem;
		background-size: 4.2rem auto;
		width: 4.2rem;
		transform: rotate(90deg);
	}
	#business .sec01 .listUl .ico {
		margin-right: 2.1rem;
	}
	#business .sec01 .dotList li {
		padding-left: 1.8rem;
		line-height: 1.66;
	}
	#business .sec02 .info {
		padding: 7.1rem 0 7rem;
	}
	#business .sec02 .imgBox {
		display: block;
	}
	#business .sec02 .ttl {
		padding-top: 0;
		margin-bottom: 2.2rem;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	#business .sec02 p {
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
	#business .sec02 .pho {
		margin: 4.1rem 0 3.4rem;
		width: auto;
		border-radius: 2.5rem;
	}
	#business .sec02 .pho img {
		width: 100%;
	}
	#business .sec02 .comLink {
		margin-top: 2.1rem;
	}
	#business .sec02 .info03 {
		padding-bottom: 12.4rem;
	}
	#business .sec02 .info03 .headLine02 {
		margin-bottom: 3.5rem;
		letter-spacing: -0.08em;
	}
}
/*------------------------------------------------------------
	residential
------------------------------------------------------------*/
#residential .mainBox {
	padding: 8.7rem 0 12.4rem;
}
#residential .mainBox img {
	width: 100%;
}
#residential .headLine02 .en {
	margin-bottom: 2.4rem;
}
#residential .listUl {
	padding-top: 0.8rem;
	margin-bottom: 14.2rem;
}
#residential .listUl > li {
	padding: 6rem 0 5.7rem;
	position: relative;
	border-bottom: 1px solid rgba(112,112,112,0.32);
}
#residential .listUl > li:not(:last-child)::before {
	position: absolute;
	left: 12.2rem;
	bottom: -1rem;
	background: url(img/common/icon09.png) no-repeat;
	background-size: 3.4rem auto;
	width: 3.4rem;
	height: 2.1rem;
	content: "";
}
#residential .listUl > li:last-child {
	border: none;
}
#residential .listUl .ttl {
	margin-bottom: 2.2rem;
	display: flex;
	align-items: flex-end;
	font-weight: 700;
	font-size: 2.4rem;
	color: #FF7200;
}
#residential .listUl .ttl .num {
	margin: 0 1.6rem 0 0;
	color: #FF7201;
	font-size: 6rem;
	font-weight: 500;
	line-height: 1;
}
#residential .listUl .textBox p {
	font-size: 1.8rem;
	line-height: 1.77;
}
#residential .listUl .phoList {
	width: 88rem;
}
#residential .listUl .phoList li {
	position: relative;
	border-radius: 3rem;
	overflow: hidden;
}
#residential .listUl .phoList li > span {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 1;
}
#residential .listUl .phoList span span {
	min-width: 20rem;
	width: fit-content;
	display: block;
	margin: 0 auto;
	padding: 1.2rem 2.1rem 1.1rem;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 700;
	background-color: #F7F5F2;
	border-radius: 2rem 2rem 0 0;
}
#residential .listUl .title {
	margin: -1.1rem 1.7rem 3.8rem;
	font-weight: 700;
	font-size: 4rem;
	color: #FF7200;
}
#residential .btmLink {
	margin: 0 5.5rem;
	overflow: hidden;
	border-radius: 4rem;
}
#residential .btmLink img {
	height: 47rem;
  object-fit: cover;
}
#residential .btmLink a {
	display: block;
	position: relative;
}
#residential .btmLink a:hover {
	opacity: 0.7;
}
#residential .btmLink span {
	position: absolute;
	left: 0;
	width: 100%;
	text-align: center;
	top: 50%;
	color: #fff;
	font-size: 3.2rem;
	font-weight: 700;
	transform: translateY(-35%);
}
@media all and (min-width: 897px) {
	#residential .listUl .imgBox {
		align-items: center;
	}
	#residential .listUl .textBox {
		width: 28rem;
		margin-top: -3rem;
	}
	#residential .listUl .phoList {
		width: 88rem;
	}
	#residential .listUl .phoList li {
		width: 42rem;
	}
	#residential .listUl .phoList01 li {
		width: 60rem;
		margin: 0 auto;
	}
	#residential .listUl .phoList02 {
		width: 100%;
		position: relative;
	}
	#residential .listUl .phoList02::after {
		content: "";
		width: 37rem;
	}
	#residential .listUl .phoList02 li {
		width: 37rem;
	}
	#residential .listUl .phoList li img {
		height: 24rem;
		object-fit: cover;
	}
}
@media all and (max-width: 896px) {
	#residential .mainBox {
		padding: 7.1rem 0 13.4rem;
	}
	#residential .headLine02 .en {
		margin-bottom: 0.7rem;
	}
	#residential .listUl {
		padding-top: 0;
		margin: -4.6rem -2.8rem 0;
	}
	#residential .listUl > li {
		padding: 4.6rem 2.8rem 7rem;
	}
	#residential .listUl > li:not(:last-child)::before {
		left: 50%;
		bottom: -1.4rem;
		background-size: 2.4rem auto;
		width: 2.4rem;
		transform: translateX(-50%);
	}
	#residential .listUl .imgBox {
		display: block;
	}
	#residential .listUl .textBox {
		margin-bottom: 3.2rem;
	}
	#residential .listUl .ttl {
		margin-bottom: 3.2rem;
		font-size: 2rem;
	}
	#residential .listUl .ttl .num {
		margin: 0 1.1rem 0 0;
		font-size: 4.5rem;
	}
	#residential .listUl .textBox p {
		font-size: 1.5rem;
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
	#residential .listUl .phoList {
		width: auto;
		display: block;
	}
	#residential .listUl .phoList li {
		margin-bottom: 2.5rem;
		height: 0;
		padding-bottom: 53.3%;
		border-radius: 2.5rem;
	}
	#residential .listUl .phoList li img {
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		object-fit: cover;
	}
	#residential .listUl .phoList li:last-child {
		margin-bottom: 0 !important;
	}
	#residential .listUl .phoList span span {
		min-width: 15.8rem;
		padding: 0.5rem 1rem 0.3rem;
		font-size: 1.5rem;
	}
	#residential .listUl .phoList span .wid {
		padding: 0.5rem 3.8rem 0.3rem;
	}
	#residential .listUl .title {
		margin: 2.2rem 0 3.4rem;
		font-size: 2.6rem;
		letter-spacing: 0.1em;
	}
	#residential .btmLink {
		margin: 0 2.8rem;
		border-radius: 2.5rem;
	}
	#residential .btmLink img {
		height: 17rem;
	}
	#residential .btmLink a {
		padding-bottom: 53.3%;
	}
	#residential .btmLink img {
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		object-fit: cover;
	}
	#residential .btmLink span {
		font-size: 2.6rem;
		letter-spacing: 0.1em;
		transform: translateY(-50%);
	}
}
/*------------------------------------------------------------
	estate
------------------------------------------------------------*/
#estate .mainBox {
	padding: 0.1rem 0 10rem;
}
#estate .mainBox img {
	width: 100%;
}
#estate .sec01 {
	padding-bottom: 12.3rem;
	border-bottom: 1px solid #C7C7C7;
}
#estate .sec01 .textBox {
	width: 46.5rem;
	margin-top: 8rem;
}
#estate .sec01 p {
	margin-top: -0.4rem;
	line-height: 1.75;
}
#estate .sec01 .photo {
	width: 60rem;
	margin-top: -5.7rem;
}
#estate .sec01 .photo img {
	border-radius: 4rem;
}
#estate .sec02 {
	padding: 8.9rem 0 10rem;
	border-bottom: 1px solid #C7C7C7;
}
#estate .sec02 h3 {
	margin-bottom: 11.4rem;
	text-align: center;
	color: #FF7201;
	font-size: 3.2rem;
	font-weight: 500;
}
#estate .sec02 li {
	width: 58.2rem;
}
#estate .sec03 {
	padding: 8.9rem 0 11rem;
	border-bottom: 1px solid #C7C7C7;
}
#estate .sec03 h3 {
	margin-bottom: 4.8rem;
	text-align: center;
	color: #FF7201;
	font-size: 2.1rem;
	font-weight: 700;
}
#estate .sec03 .img {
	width: 102.8rem;
	margin: 0 auto;
}
#estate .sec04 {
	padding: 8.4rem 0 9.1rem;
}
#estate .sec04 h3 {
	margin-bottom: 7.5rem;
	text-align: center;
	color: #FF7201;
	font-size: 2.1rem;
	font-weight: 700;
}
#estate .sec04 .info {
	margin-bottom: 9.7rem;
}
#estate .sec04 .ttl {
	padding: 1.4rem 2rem 1.3rem;
	font-size: 2.2rem;
	font-weight: 500;
	color: #fff;
	background: #707070 url(img/common/icon10.png) no-repeat right 2.2rem center;
	background-size: 2.2rem auto;
	cursor: pointer;
	transition: .3s;
}
#estate .sec04 .ttl.on {
	background-image: url(img/common/icon10_on.png);
}
#estate .sec04 .linkBox {
	padding-top: 5rem;
	display: none;
}
#estate .sec04 .title {
	margin-bottom: 1.6rem;
	padding: 0.9rem 1.4rem;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	background-color: #A8A8A8;
}
#estate .sec04 .textList li {
	position: relative;
	color: #272727;
	font-weight: 500;
	line-height: 2;
}
#estate .sec04 .textList li .num {
	position: absolute;
	right: 0;
	top: 0;
	width: 5.2rem;
}
#estate .sec04 .textList + .title {
	margin-top: 4.6rem;
}
#estate .sec05 {
	margin-bottom: 21.5rem;
}
#estate .sec05 .photo:not(:last-child) {
	margin-bottom: 3rem;
}
#estate .sec05 .pho img {
	width: 100%;
	border-radius: 3rem;
}
#estate .btmLink {
	margin: 0 5.5rem;
	overflow: hidden;
	position: relative;
	border-radius: 4rem;
}
#estate .btmLink img {
	height: 47rem;
  object-fit: cover;
}
#estate .btmLink a {
	display: block;
	position: relative;
}
#estate .btmLink a::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-color: #000;
	opacity: 0.35;
}
#estate .btmLink a:hover {
	opacity: 0.7;
}
#estate .btmLink span {
	position: absolute;
	left: 0;
	width: 100%;
	text-align: center;
	top: 50%;
	color: #fff;
	font-size: 3.2rem;
	font-weight: 700;
	transform: translateY(-35%);
	z-index: 2;
}
@media all and (min-width: 897px) {
	#estate .mainImg {
		padding-bottom: 17.3rem;
	}
	#estate .sec01 .headLine02 .en {
		margin-bottom: 3.3rem;
	}
	#estate .sec01 ul {
		position: relative;
	}
	#estate .sec01 li:last-child {
		position: absolute;
		right: 0;
		bottom: 0;
	}
	#estate .sec01 li {
		width: 28.5rem;
	}
	#estate .sec01 .photo img {
		height: 28.5rem;
		object-fit: cover;
	}
	#estate .sec01 li:first-child img {
		height: 59.5rem;
	}
	#estate .sec04 .content {
		max-width: 104rem;
	}
	#estate .sec04 .linkList {
		position: relative;
	}
	#estate .sec04 .linkList::after {
		width: 31rem;
		content: "";
	}
	#estate .sec04 .linkList > li {
		width: 31rem;
	}
	#estate .sec04 .ttl:hover {
		opacity: 0.7;
	}
	#estate .sec05 .photo {
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#estate .sec05 .photo::after {
		content: "";
		width: 38rem;
	}
	#estate .sec05 .pho {
		width: 38rem;
	}
	#estate .sec05 .arrow {
		display: none;
	}
}
@media all and (max-width: 896px) {
	#estate .mainBox {
		padding: 7rem 0 12.7rem;
	}
	#estate .mainBox img {
		width: 100%;
	}
	#estate .sec01 {
		padding-bottom: 12.4rem;
	}
	#estate .sec01 .imgBox {
		display: block;
	}
	#estate .sec01 .textBox {
		width: auto;
		margin-top: 0;
	}
	#estate .sec01 .headLine02 {
		font-size: 2rem;
		line-height: 1.5;
	}
	#estate .sec01 .headLine02 .en {
		margin-bottom: 2.4rem;
	}
	#estate .sec01 p {
		margin-top: -1.1rem;
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
	#estate .sec01 .photo {
		width: auto;
		margin-top: 3.4rem;
	}
	#estate .sec01 .photo img {
		height: 23rem;
		object-fit: cover;
		border-radius: 2.5rem;
	}
	#estate .sec01 .slick-dots {
		position: absolute;
		right: 0;
		bottom: -1.8rem;
	}
	#estate .sec01 .slick-dots li {
		position: relative;
		display: inline-block;
		width: 0.8rem;
		height: 0.8rem;
		margin-left: 0.9rem;
		padding: 0;
		cursor: pointer;
		background: #A8A8A8;
		border-radius: 100%;
	}
	#estate .sec01 .slick-dots li button {
		display: none;
	}
	#estate .sec01 .slick-dots li.slick-active {
		background: #FF7200;
	}
	#estate .sec02 {
		padding: 7rem 0 5.5rem;
	}
	#estate .sec02 h3 {
		margin-bottom: 4.4rem;
		font-size: 2rem;
	}
	#estate .sec02 ul {
		display: block;
	}
	#estate .sec02 li {
		margin-bottom: 1.5rem;
		width: auto;
	}
	#estate .sec03 {
		padding: 6.9rem 0 7rem;
	}
	#estate .sec03 h3 {
		margin-bottom: 3.9rem;
		font-size: 1.8rem;
		letter-spacing: 0.1em;
	}
	#estate .sec03 .img {
		width: auto;
		margin: 0 auto;
	}
	#estate .sec04 {
		padding: 6.9rem 0 0rem;
	}
	#estate .sec04 h3 {
		margin-bottom: 4rem;
		font-size: 1.8rem;
		letter-spacing: 0.1em;
	}
	#estate .sec04 .info {
		margin-bottom: 6.6rem;
	}
	#estate .sec04 .ttl {
		padding: 1.5rem 2.8rem;
		font-size: 2rem;
		background-position: right 2.8rem center;
	}
	#estate .sec04 .linkBox {
		padding-top: 3.5rem;
	}
	#estate .sec04 .linkList {
		display: block;
	}
	#estate .sec04 .linkList > li:not(:last-child) {
		margin-bottom: 3rem;
	}
	#estate .sec04 .title {
		margin-bottom: 2rem;
		padding: 0.9rem 2.8rem;
	}
	#estate .sec04 .textList li {
		letter-spacing: 0.05em;
	}
	#estate .sec04 .textList li .num {
		width: 4.5rem;
	}
	#estate .sec04 .textList + .title {
		margin-top: 3.1rem;
	}
	#estate .sec05 {
		margin-bottom: 6.5rem;
	}
	#estate .sec05 .content {
		position: relative;
	}
	#estate .sec05 .arrow {
		position: absolute;
		left: 2.8rem;
		right: 2.8rem;
		top: 50%;
		transform: translateY(-50%);
	}
	#estate .sec05 .arrow li {
		width: 1.5rem;
		cursor: pointer;
	}
	#estate .sec05 .photoBox {
		margin: 0 2.8rem;
	}
	#estate .sec05 .pho:not(:last-child) {
		margin-bottom: 1.5rem;
	}
	#estate .sec05 .pho {
		width: auto;
		position: relative;
		padding-bottom: 64.6%;
	}
	#estate .sec05 .pho img {
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		object-fit: cover;
		border-radius: 1rem;
	}
	#estate .btmLink {
		margin: 0 2.8rem;
		border-radius: 2.5rem;
	}
	#estate .btmLink img {
		height: 17rem;
	}
	#estate .btmLink a {
		padding-bottom: 53.3%;
	}
	#estate .btmLink img {
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		object-fit: cover;
	}
	#estate .btmLink span {
		font-size: 2.6rem;
		letter-spacing: 0.1em;
		transform: translateY(-50%);
	}
}
/*------------------------------------------------------------
	company
------------------------------------------------------------*/
#company .pageTilte .bg {
	background-image: url(img/company/page_title_bg.jpg);
}
#company .pageTilte h2 {
	text-shadow: 0 0 1rem rgba(0,0,0,0.2);
}
#company .sec01 {
	padding: 4.4rem 0 20.9rem;
	position: relative;
}
#company .sec01::before {
	position: absolute;
	left: 0;
	top: -2.7rem;
	width: 39.2rem;
	height: 126rem;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	background-color: #fff;
	content: "";
}
#company .sec01 h3 {
	position: absolute;
	left: -0.5rem;
	top: 12rem;
	font-weight: 400;
	color: #707070;
	font-size: 10rem;
	line-height: 1;
}
#company .sec01 h3 .sml {
	margin-top: 1.3rem;
	display: block;
	font-size: 4rem;
}
#company .sec01 h3 .jp {
	margin-top: 3.7rem;
	display: block;
	color: #585858;
	font-size: 2rem;
	font-weight: 100;
	letter-spacing: 0.2em;
	font-family: "Noto Sans JP", sans-serif;
}
#company .sec01 .topPho {
	margin-bottom: 8.1rem;
	overflow: hidden;
	border-radius: 4rem;
}
#company .sec01 .nameText {
	margin-bottom: 5.3rem;
	display: flex;
	font-size: 1.4rem;
	line-height: 1.42;
}
#company .sec01 .name {
	width: 19.8rem;
	padding-left: 1.4rem;
	flex-shrink: 0;
	font-size: 1.6rem;
	font-weight: 100;
	color: #707070;
	box-sizing: border-box;
} 
#company .sec01 .name span {
	margin-top: -0.3rem;
	display: block;
	font-size: 3.2rem;
}
#company .sec01 .ttl {
	margin: 0 1.2rem 6.7rem;
	color: #707070;
	font-weight: 700;
	font-size: 3.2rem;
}
#company .sec01 .text {
	margin: 0 0 0 1.2rem;
	line-height: 1.75;
}
#company .sec01 .text span {
	display: block;
}
#company .sec01 .photo {
	display: flex;
	align-items: center;
}
#company .sec01 .pho {
	width: 36.7rem;
	flex-shrink: 0;
	border-radius: 4rem;
	overflow: hidden;
}
#company .sec01 .photo p {
	margin: 0 0 0 4.5rem;
	color: #707070;
	font-weight: 100;
}
#company .sec01 .photo p span {
	display: block;
	margin-top: -0.5rem;
	font-size: 3.2rem;
}
#company .sec02 {
	padding: 10rem 0 13.6rem;
	background-color: #fff;
}
#company .info01 {
	margin-bottom: 8rem;
}
#company .info01 .mapList {
	padding-bottom: 0.9rem;
}
#company .info01 .mapList li:not(:last-child) {
	padding-bottom: 2.4rem;
	margin-bottom: 2.6rem;
	border-bottom: 1px solid #707070;
}
#company .info01 .mapList p {
	width: 18rem;
}
#company .info01 .mapList .pho {
	width: 22rem;
	overflow: hidden;
	border-radius: 2rem;
}
#company .info01 .mapList .map {
	width: 31.6rem;
    position: relative;
    height: 17rem;
    overflow: hidden;
	border-radius: 2rem;
}
#company .info01 .mapList iframe {
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
}
#company .info01 .txtList {
	max-width: 50rem;
	display: flex;
	flex-wrap: wrap;
}
#company .info01 .txtList li {
	margin-right: 1.7rem;
}
#company .info01 .txtList li::before,
#company .info01 .textList li::before {
	content: "■ ";
}
#company .info01 .dlList01 dt {
	float: left;
}
#company .info01 .dlList01 dd {
	padding-left: 19.6rem;
}
#company .info01 .dlList02 {
	width: fit-content;
}
#company .info01 .dlList02 dt {
	float: left;
}
#company .info01 .dlList02 dd {
	padding-left: 17.8rem;
	text-align: right;
}
@media all and (min-width: 897px) {
	#company .sec01 .imgBox {
		padding: 0 0.6rem 0 46.4rem;
		position: relative;
	}
	#company .sec02 .content {
		padding: 0 2.6rem 0 1.4rem;
	}
	#company .sec02 .headLine05 {
		margin-bottom: 4.9rem;
		padding-top: 2.1rem;
	}
	#company .sec02 .comTab {
		margin-left: 31.6rem;
	}
	#company .info01 .comTab th,
	#company .info01 .comTab td {
		padding: 2rem 0 1.9rem;
	}
	#company .info01 .comTab th {
		width: 13.5%;
	}
	#company .info01 .mapList li {
		display: flex;
		justify-content: space-between;
	}
	#company .info01 .textList {
		display: flex;
	}
	#company .info01 .textList ul {
		width: 33.2rem;
	}
	#company .info02 .comTab th {
		width: 31.7%;
	}
}
@media all and (max-width: 896px) {
	#company .pageTilte .bg {
		background-image: url(img/company/page_title_bg_sp.jpg);
	}
	#company .pageTilte h2 {
		text-shadow: 0 0.3rem 0.6rem rgba(0,0,0,0.4);
	}
	#company .sec01 {
		padding: 0.1rem 0 5.5rem;
		margin-top: -0.2rem;
	}
	#company .sec01::before {
		top: -3.2rem;
		width: 12.1rem;
		height: 43.7rem;
	}
	#company .sec01 .content {
		position: relative;
	}
	#company .sec01 h3 {
		margin-bottom: 4.2rem;
		position: static;
		font-size: 3.5rem;
	}
	#company .sec01 h3 .sml {
		margin: 0 0 0 1.9rem;
		display: inline-block;
		font-size: 1.5rem;
	}
	#company .sec01 h3 .jp {
		margin-top: 1.2rem;
		font-size: 1.3rem;
	}
	#company .sec01 .topPho {
		margin: 3.7rem 0 2.7rem;
		border-radius: 1rem;
	}
	#company .sec01 .topPho img {
		width: 100%;
	}
	#company .sec01 .nameText {
		margin-bottom: 3.1rem;
		display: block;
		font-size: 1.3rem;
		line-height: 1.61;
		letter-spacing: 0.06em;
	}
	#company .sec01 .name {
		margin-bottom: 1.7rem;
		width: auto;
		padding-left: 0;
		font-size: 1.3rem;
		letter-spacing: 0.05em;
		display: block;
	} 
	#company .sec01 .name span {
		margin: -0.5rem 0 0 2rem;
		font-size: 2rem;
		display: inline-block;
		vertical-align: middle;
	}
	#company .sec01 .ttl {
		margin: 0 -2rem 2rem 0;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	#company .sec01 .text {
		margin: 0;
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
	#company .sec01 .text span {
		margin: 2.9rem 0;
	}
	#company .sec01 .photo {
		display: block;
	}
	#company .sec01 .pho {
		width: auto;
		border-radius: 1rem;
	}
	#company .sec01 .pho img {
		width: 100%;
	}
	#company .sec01 .photo p {
		margin: 2.8rem 0 0;
		font-size: 1.3rem;
		letter-spacing: 0.05em;
	}
	#company .sec01 .photo p span {
		display: inline-block;
		vertical-align: middle;
		margin: -0.5rem 0 0 1.7rem;
		font-size: 2rem;
	}
	#company .sec02 {
		padding: 6.9rem 0 13.5rem;
	}
	#company .info01 {
		margin-bottom: 6.9rem;
	}
	#company .comTab table {
		border-bottom: 1px solid #707070;
	}
	#company .info01 .comTab td {
		padding: 0.1rem 0 1.6rem;
		line-height: 1.86;
	}
	#company .info01 .mapList {
		padding: 1.8rem 0 0.5rem;
	}
	#company .info01 .mapList li {
		display: flex;
		flex-wrap: wrap;
	}
	#company .info01 .mapList li:not(:last-child) {
		padding-bottom: 1.9rem;
		margin-bottom: 2.2rem;
		border-color: #F1F1F1;
	}
	#company .info01 .mapList p {
		margin-top: 1.7rem;
		width: 100%;
		order: 1;
		line-height: 1.66;
		letter-spacing: 0.06em;
	}
	#company .info01 .mapList .pho {
		margin-bottom: 1.5rem;
		width: 100%;
		padding-bottom: 53.3%;
		position: relative;
		border-radius: 1rem;
	}
	#company .info01 .mapList .pho img {
		width: 100%;
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		object-fit: cover;
	}
	#company .info01 .mapList .map {
		width: 100%;
		height: 0;
		padding-bottom: 53.3%;
		border-radius: 1rem;
	}
	#company .info01 .txtList {
		max-width: inherit;
		display: block;
	}
	#company .info01 .txtList li {
		margin-right: 0;
	}
	#company .info01 .dlList01 dd {
		padding-left: 22.2rem;
	}
	#company .info01 .dlList02 dd {
		padding-left: 19rem;
	}
	#company .info02 .comTab th,
	#company .info02 .comTab td {
		padding: 0 0 1.9rem;
		font-size: 1.5rem;
		line-height: 1.46;
	}
	#company .info02 .comTab th {
		padding: 2rem 0 0;
		color: #FF7200;
		font-size: 1.3rem;
		font-weight: 400;
	}
}
/*------------------------------------------------------------
	loading
------------------------------------------------------------*/
.loading {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: none;
	z-index: 101;
	background: url(img/index/load_bg.png) no-repeat center center #FF9A18;
	background-size: 54.2rem auto;
}
.loading .loadInfo {
	width: 100%;
	height: 100%;
	padding: 2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
.loading .textImg {
	max-width: 69.5rem;
	margin: 0 auto;
}
@media all and (max-width: 896px) {
	.loading {
		background-size: 30rem auto;
	}
}
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#index .fixLink {
	position: fixed;
	right: 2rem;
	bottom: 2rem;
	width: 10.5rem;
	z-index: 90;
}
#index .fixLink a:hover {
	opacity: 0.7;
}
#index .mainVisual {
	padding: 6.6rem 3.4rem 0 4rem;
	position: relative;
	background-color: #FF9A18;
}
#index .mainVisual p {
	position: absolute;
	left: 50%;
	top: 0;
	padding: 3.1rem 0 1.8rem 3.3rem;
	width: 88.8rem;
	text-align: center;
	color: #fff;
	font-size: 4.2rem;
	font-weight: 700;
	transform: translateX(-50%);
	background-color: #FF9A18;
	z-index: 1;
	border-radius: 0 0 2rem 2rem;
	box-sizing: border-box;
}
#index .mainVisual .pho {
	position: relative;
	vertical-align: top;
	overflow: hidden;
	border-radius: 4rem;
}
#index .mainVisual .pho img {
	width: 100%;
}
#index .mainVisual .pho .ico {
	width: 28rem;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}
#index .mainVisual .slick-dots {
	position: absolute;
	right: 2.1rem;
	width: 0.5rem;
	height: 27rem;
	top: 50%;
	transform: translateY(-48%);
	border-left: 1px solid #fff
}
#index .mainVisual .slick-dots li {
	position: relative;
	display: block;
	width: 0.3rem;
	height: 9rem;
	padding: 0;
	cursor: pointer;
	border-radius: 0;
}
#index .mainVisual .slick-dots li button {
	display: none;
}
#index .mainVisual .slick-dots li.slick-active {
	background: #fff;
}
#index .sec01 {
	padding: 3.7rem 2rem 0.1rem;
	background-color: #FF9A18;
}
#index .sec01 .whiteBg {
	width: 122.5rem;
	margin: 0 auto -13rem;
	position: relative;
	padding: 4.9rem 15rem 4.9rem 30.3rem;
	box-sizing: border-box;
	border-radius: 1.7rem;
	background-color: #fff;
	box-shadow: 0 0.3rem 1rem rgba(0,0,0,0.16);
}
#index .sec01 h2 {
	position: absolute;
	left: 10.7rem;
	top: 3.8rem;
	font-size: 1.4rem;
	color: #000;
	font-weight: 100;
}
#index .sec01 h2::before {
	position: absolute;
	left: -10.7rem;
	top: 2.3rem;
	width: 8.5rem;
	height: 0.2rem;
	background-color: #FF7201;
	content: "";
}
#index .sec01 h2 .en {
	margin-bottom: 0.5rem;
	display: block;
	color: #FF7201;
	font-weight: 700;
	font-size: 3.2rem;
}
#index .sec01 .slide {
	position: relative;
}
#index .sec01 .next {
	position: absolute;
	right: -10.3rem;
	top: 50%;
	width: 2.4rem;
	transform: translateY(-37%);
	cursor: pointer;
	transition: .3s;
}
#index .sec01 .newsList li {
	width: 22.7rem;
	margin-right: 4.3rem;
	float: left;
}
#index .sec01 .newsList li:last-child {
	margin-right: 0 !important;
}
#index .sec01 .newsList .pho {
	margin-bottom: 1rem;
}
#index .sec01 .newsList .pho a {
	display: block;
	height: 14.6rem;
	position: relative;
	overflow: hidden;
	border-radius: 2rem;
}
#index .sec01 .newsList .pho a:hover {
	opacity: 0.7;
}
#index .sec01 .newsList .pho img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#index .sec01 .newsList .time {
	margin-bottom: 0.3rem;
	color: #FF7200;
	font-size: 1.2rem;
	font-weight: 500;
}
#index .sec01 .newsList .text {
	font-size: 1.4rem;
}
#index .sec02 {
	min-height: 92.4rem;
	padding: 29.9rem 0;
	background: url(img/index/sec02_bg.jpg) no-repeat center center;
	background-size: cover;
	box-sizing: border-box;
}
#index .sec02 h2 {
	width: 88rem;
	margin: 0 auto 2.2rem;
}
#index .sec02 p {
	text-align: center;
	color: #272727;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.66;
}
#index .sec03 {
	position: relative;
}
#index .sec03 h2 {
	position: absolute;
	left: 0;
	top: -7.9rem;
	width: 100%;
	text-align: center;
	color: #000;
	font-size: 3.7rem;
	font-weight: 700;
	line-height: 1.51;
	z-index: 1;
}
#index .sec03 h2 span {
	padding: 0.2rem 1rem 0.6rem;
	background: -webkit-linear-gradient(#fff,#fff) repeat-x center center / 100% 80%;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
}
#index .sec03 ul {
	margin-bottom: -4rem;
	background: url(img/index/sec03_bg.jpg) no-repeat center center;
	background-size: cover;
}
#index .sec03 li {
	width: 50%;
	height: 53.9rem;
	padding-top: 1.3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	box-sizing: border-box;
}
#index .sec03 li::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #707070;
	opacity: 0.64;
	content: "";
	mix-blend-mode: multiply;
}
#index .sec03 li:first-child::before {
	background-color: #FF9A18;
	opacity: 0.46;
}
#index .sec03 li > div {
	position: relative;
	z-index: 1;
	color: #fff;
	text-align: center;
}
#index .sec03 h3 {
	margin-bottom: 2.1rem;
	font-weight: 700;
	font-size: 3.2rem;
}
#index .sec03 h3 span {
	margin-bottom: 1.8rem;
	display: block;
	font-weight: 400;
}
#index .sec03 p {
	line-height: 1.75;
}
#index .sec03 .comBtn {
	position: relative;
}
#index .sec04 {
	padding: 22.9rem 2rem 11.6rem;
}
#index .sec04 .info {
	max-width: 130rem;
	margin: 0 auto;
}
#index .sec04 img {
	width: 100%;
}
#index .sec04 .topPho {
	margin-bottom: 3.7rem;
	position: relative;
	overflow: hidden;
	border-radius: 4rem;
}
#index .sec04 .topPho span {
	position: absolute;
	right: 2.8rem;
	top: -1.8rem;
	color: #F5F4EC;
	font-size: 12.8rem;
	line-height: 1;
	text-shadow: 0 0.3rem 0.6rem rgba(0,0,0,0.16);
}
#index .sec04 .imgBox {
	margin: 0 5rem 8.3rem;
	min-height: 25.1rem;
	position: relative;
}
#index .sec04 .textBox {
	width: 60rem;
}
#index .sec04 .pho {
	position: absolute;
	right: 6.1rem;
	top: -10.6rem;
	width: 44.6rem;
	overflow: hidden;
	border-radius: 2rem;
	box-shadow: 0.6rem 0.6rem 0.6rem rgba(0,0,0,0.16);
}
#index .sec04 h2 {
	margin-bottom: 2.9rem;
	font-weight: 700;
	font-size: 3.2rem;
}
#index .sec04 h2 span {
	margin-bottom: 2.1rem;
	display: block;
	font-size: 1.4rem;
	font-weight: 400;
}
#index .sec04 p {
	line-height: 1.75;
}
@media all and (min-width: 897px) {
	#index .sec01 .next:hover {
		opacity: 0.7;
	}
	#index .sec04 .comBtn {
		position: absolute;
		right: -0.3rem;
		bottom: 0.2rem;
		margin: 0;
	}
	#index .sec04 .info:nth-child(2n) .topPho span {
		left: 4.8rem;
		bottom: -1rem;
		right: auto;
		top: auto;
	}
	#index .sec04 .info:nth-child(3) .pho,
	#index .sec04 .info:nth-child(4) .pho {
		right: 15.1rem;
	}
}
@media all and (max-width: 896px) {
	#index .fixLink {
		right: 1rem;
		bottom: 7rem;
		width: 7.5rem;
	}
	#index .mainVisual {
		padding: 9rem 2.8rem 0;
	}
	#index .mainVisual p {
		padding: 2.7rem 0 1.3rem 0.2rem;
		width: 27rem;
		font-size: 2.6rem;
		line-height: 1.34;
		letter-spacing: 0.03em;
		border-radius: 0 0 1.5rem 1.5rem;
	}
	#index .mainVisual .pho {
		border-radius: 2.5rem;
	}
	#index .mainVisual .pho > img {
		height: 50rem;
		object-fit: cover;
	}
	#index .mainVisual .pho .ico {
		width: 12.5rem;
	}
	#index .mainVisual .slick-dots {
		display: none !important;
	}
	#index .sec01 {
		padding: 7rem 2.8rem 0.1rem;
	}
	#index .sec01 .whiteBg {
		width: auto;
		margin: 0 auto -17.4rem;
		padding: 4.2rem 4.2rem 3.8rem;
		border-radius: 1rem;
	}
	#index .sec01 h2 {
		margin-bottom: 1.9rem;
		position: relative;
		left: auto;
		top: auto;
		font-size: 1.3rem;
	}
	#index .sec01 h2::before {
		left: -4.2rem;
		top: 1.9rem;
		width: 3rem;
	}
	#index .sec01 h2 .en {
		margin: -0.5rem 1.2rem 0 0;
		display: inline-block;
		vertical-align: middle;
	}
	#index .sec01 .slide {
		margin: 0 -0.5rem;
	}
	#index .sec01 .next {
		right: -2.4rem;
		width: 1.5rem;
		transform: translateY(-150%);
	}
	#index .sec01 .newsList li {
		width: auto !important;
		margin-right: 0;
		float: none;
	}
	#index .sec01 .newsList li:nth-child(n + 2) {
		display: none;
	}
	#index .sec01 .newsList .pho {
		margin-bottom: 0.7rem;
	}
	#index .sec01 .newsList .pho a {
		height: 0;
		padding-bottom: 64.2%;
		border-radius: 1rem;
	}
	#index .sec01 .newsList .time {
		margin-bottom: -0.1rem;
		font-size: 1.3rem;
	}
	#index .sec01 .newsList .text {
		font-size: 1.5rem;
	}
	#index .sec02 {
		min-height: 90.2rem;
		padding: 25.4rem 0;
	}
	#index .sec02 h2 {
		width: 31.9rem;
		margin: 0 auto 3.2rem;
	}
	#index .sec02 p {
		font-size: 1.5rem;
		line-height: 1.86;
		letter-spacing: 0.1em;
	}
	#index .sec03 h2 {
		top: -5.6rem;
		font-size: 2.3rem;
		line-height: 1.6;
	}
	#index .sec03 h2 span {
		padding: 0.2rem 0.5rem 0.6rem;
	}
	#index .sec03 ul {
		display: block;
		margin-bottom: -2.1rem;
		background-image: url(img/index/sec03_bg_sp.jpg);
	}
	#index .sec03 li {
		width: auto;
		height: 37.6rem;
		display: block;
		padding-top: 10rem;
	}
	#index .sec03 h3 {
		margin-bottom: 1.1rem;
		font-size: 2rem;
		letter-spacing: 0.05em;
	}
	#index .sec03 h3 span {
		margin-bottom: 1.1rem;
		font-size: 2.5rem;
		letter-spacing: 0;
	}
	#index .sec03 p {
		line-height: 1.86;
		letter-spacing: 0.1em;
	}
	#index .sec04 {
		padding: 12.9rem 2.8rem 5.4rem;
	}
	#index .sec04 .info {
		max-width: inherit;
	}
	#index .sec04 .topPho {
		margin-bottom: 5.5rem;
		border-radius: 2.5rem;
		padding-bottom: 50.2%;
	}
	#index .sec04 .topPho img {
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		object-fit: cover;
	}
	#index .sec04 .topPho span {
		z-index: 2;
		top: -0.6rem;
		font-size: 3.5rem;
		text-shadow: 0 0.3rem 0.6rem rgba(0,0,0,0.2);
	}
	#index .sec04 .imgBox {
		margin: 0 0 7.4rem;
		min-height: inherit;
	}
	#index .sec04 .textBox {
		width: auto;
	}
	#index .sec04 .pho {
		right: 2.8rem;
		top: -7.6rem;
		width: 13.1rem;
		border-radius: 1rem;
		box-shadow: 0.4rem 0.4rem 0.4rem rgba(0,0,0,0.16);
		padding-bottom: 28.2%;
	}
	#index .sec04 .pho img {
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		object-fit: cover;
	}
	#index .sec04 h2 {
		margin: 0 -2rem 1.5rem 0;
		font-size: 2rem;
		line-height: 1.4;
		letter-spacing: 0.1em;
	}
	#index .sec04 h2 span {
		margin-bottom: 1.8rem;
		font-size: 1.3rem;
		letter-spacing: 0;
	}
	#index .sec04 p {
		margin-bottom: 2.3rem;
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
	#index .sec04 .comBtn {
		margin-right: 0;
	}
	#index .sec04 .comBtn a {
		background-position: right 0.6rem center;
	}
	#index .sec04 .comBtn01 a {
		padding-left: 2.2rem;
	}
	#index .sec04 .comBtn02 {
		width: 29.1rem;
	}
	#index .sec04 .comBtn02 .en {
		position: absolute;
		display: block;
		margin: 0;
		font-size: 1.1rem;
		left: 2.5rem;
		top: 0.8rem;
	}
	#index .sec04 .comBtn02 a {
		padding: 2.1rem 3rem 0.8rem 2.5rem;
		letter-spacing: 0.02em;
	}
}
/*------------------------------------------------------------
	philisophy
------------------------------------------------------------*/
#philisophy .pageTilte .bg {
	background-image: url(img/philisophy/page_title_bg.jpg);
}
#philisophy .sec01 {
	padding: 1.3rem 0 26.1rem;
	position: relative;
}
#philisophy .sec01::before {
	position: absolute;
	right: 0;
	top: -2.7rem;
	width: 39.2rem;
	height: 126rem;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
	background-color: #fff;
	content: "";
}
#philisophy .sec01 .content {
	position: relative;
	z-index: 1;
}
#philisophy .sec01 .ttl {
	margin-bottom: 9.5rem;
	font-size: 2rem;
	font-weight: 100;
	letter-spacing: 0.2em;
}
#philisophy .sec01 .imgBox {
	margin-bottom: 12rem;
	position: relative;
}
#philisophy .sec01 .imgBox:last-child {
	margin-bottom: 0 !important;
}
#philisophy .sec01 .num {
	margin-bottom: 1.7rem;
	width: fit-content;
	padding-right: 4.6rem;
	position: relative;
	color: #707070;
	font-size: 3.2rem;
	font-weight: 700;
}
#philisophy .sec01 .num::before {
	position: absolute;
	left: 100%;
	top: 56%;
	width: 98rem;
	height: 1px;
	background-color: #585858;
	content: "";
}
#philisophy .sec01 .title {
	margin-bottom: 3.6rem;
	color: #707070;
	font-size: 3.2rem;
	font-weight: 700;
}
#philisophy .sec01 .textBox p {
	color: #707070;
	line-height: 1.75;
}
#philisophy .sec01 .pho {
	overflow: hidden;
	border-radius: 4rem;
}
#philisophy .sec01 .pho img {
	width: 100%;
}
#philisophy .sec01 .img {
	width: 37.8rem;
	margin: -4.8rem auto 0;
}
#philisophy .sec02 {
	padding-bottom: 18.8rem;
	position: relative;
}
#philisophy .sec02 .bgBox {
	height: 45.9rem;
	padding-top: 15.1rem;
	position: relative;
	box-sizing: border-box;
	background: url(img/philisophy/sec02_bg.jpg) no-repeat center center;
	background-size: cover;
}
#philisophy .sec02 .bgBox::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #707070;
	opacity: 0.72;
	content: "";
	mix-blend-mode: multiply; 
}
#philisophy .sec02 .bgBox h3 {
	max-width: 121.4rem;
	margin: 0 auto;
	color: #fff;
	font-size: 3.2rem;
	font-weight: 700;
	position: relative;
	z-index: 2;
}
#philisophy .sec02 .enImg {
	position: absolute;
	left: 0;
	top: 55.6rem;
	width: 20rem;
}
#philisophy .sec02 .content {
	position: relative;
}
#philisophy .sec02 .orageBg {
	width: 108.6rem;
	margin: -14.7rem auto 0;
	padding: 5.3rem 5rem 7.7rem;
	color: #fff;
	background-color: rgba(255,154,24,0.95);
	border-radius: 2rem 2rem 0 0;
	box-sizing: border-box;
}
#philisophy .sec02 .orageBg .ttl {
	margin-bottom: 4.1rem;
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
}
#philisophy .sec02 .orageBg ul {
	width: 46.8rem;
	font-size: 1.4rem;
	line-height: 1.43;
}
#philisophy .sec02 .orageBg li {
	margin-right: -1rem;
	text-indent: -1em;
	padding-left: 1em;
}
#philisophy .sec02 .orageBg dl {
	text-indent: 0;
	padding-left: 0;
}
#philisophy .sec02 .orageBg dt {
	float: left;
}
#philisophy .sec02 .orageBg dd {
	padding-left: 5.6rem;
}
#philisophy .sec02 .orageBg dd.margin {
	padding-left: 8.4rem;
}
#philisophy .sec02 .whiteBg {
	width: 108.6rem;
	margin: 0 auto 6.9rem;
	padding: 5.1rem 5rem 2.9rem;
	background-color: rgba(255,255,255,0.95);
	border-radius: 0 0 2rem 2rem;
	box-sizing: border-box;
}
#philisophy .sec02 .whiteBg .textBox p {
	margin-bottom: 2.8rem;
	line-height: 1.75;
}
#philisophy .sec02 .whiteBg .imgInfo {
	width: 41.3rem;
	margin-top: 5rem;
	font-size: 1.4rem;
	line-height: 1.43
}
#philisophy .sec02 .whiteBg .red {
	margin-top: 2.1rem;
	color: #FF0000;
}
#philisophy .sec02 .imgBox .pho {
	width: 48.2rem;
}
#philisophy .sec02 .imgBox .pho img {
	width: 100%;
	border-radius: 3rem;
}
#philisophy .sec02 .imgBox .textBox {
	width: 63.2rem;
}
#philisophy .sec02 .imgBox .title {
	margin-bottom: 1.8rem;
	color: #FF7200;
	font-size: 2.4rem;
}
#philisophy .sec02 .imgBox p {
	line-height: 1.75;
}
#philisophy .sec02 .photo {
	width: 64.3rem;
	margin: 5.6rem auto 4.4rem;
}
#philisophy .sec02 .photo img {
	width: 100%;
	border-radius: 1.8rem;
}
#philisophy .sec02 .photo span {
	margin-top: 0.8rem;
	display: block;
	font-size: 1.4rem;
}
#philisophy .sec02 .imgBox .pho span {
	margin-top: 0.4rem;
	display: block;
	font-size: 1.4rem;
}
@media all and (min-width: 897px) {
	#philisophy .sec01 .content {
		padding-left: 1.4rem;
	}
	#philisophy .sec01 .comTxt {
		left: auto;
		right: 1.6rem;
		top: 4.5rem;
		z-index: 3;
	}
	#philisophy .sec01 .comTxt span {
		margin-right: 0.9rem;
		height: fit-content;
	}
	#philisophy .sec01 .textBox {
		width: 55rem;
	}
	#philisophy .sec01 .phoBox {
		width: 60.9rem;
		position: absolute;
		right: -5rem;
		top: 37.9rem;
		z-index: 1;
	}
	#philisophy .sec01 .imgBox {
		z-index: 2;
	}
	#philisophy .sec01 .imgBox02 {
		margin-bottom: 17.9rem;
		z-index: 1;
	}
	#philisophy .sec01 .imgBox03 .title {
		margin-bottom: 2.9rem;
	}
	#philisophy .sec01 .imgBox03 .phoBox {
		top: -14.1rem;
	}
	#philisophy .sec01 .imgBox03 .img {
		width: 29.9rem;
		margin: 5.6rem auto 0;
	}
	#philisophy .sec02 .whiteBg .imgSub {
		margin-bottom: 11.8rem;
		position: relative;
		padding-left: 21.4rem;
	}
	#philisophy .sec02 .whiteBg .img {
		position: absolute;
		left: 0;
		top: 50%;
		width: 18.6rem;
		transform: translateY(-42%);
	}
	#philisophy .sec02 .whiteBg .imgSub01 {
		padding: 0 21.4rem 0 0;
		margin-bottom: 0;
	}
	#philisophy .sec02 .whiteBg .imgSub01 .img {
		right: 0;
		left: auto;
	}
	#philisophy .sec02 .imgBoxR {
		margin-right: 0.6rem;
		flex-direction: row-reverse;
	}
	#philisophy .sec02 .imgBoxR .pho {
		width: 37.6rem;
	}
	#philisophy .sec02 .imgBoxR .pho img {
		border-radius: 2.5rem;
	}
}
@media all and (min-width: 897px)and (max-width: 1320px) {
	#philisophy .sec01 .phoBox {
		right: -3rem;
	}
}
@media all and (max-width: 896px) {
	#philisophy .sec01 {
		padding: 0.1rem 0 12.4rem;
	}
	#philisophy .sec01::before {
		top: -3.4rem;
		width: 12.1rem;
		height: 43.7rem;
	}
	#philisophy .sec01 .ttl {
		margin: -1rem 0 3.7rem;
		font-size: 1.3rem;
	}
	#philisophy .sec01 .comTxt {
		margin-bottom: 3.6rem;
	}
	#philisophy .sec01 .comTxt span {
		width: fit-content;
	}
	#philisophy .sec01 .imgBox {
		margin-bottom: 7rem;
		overflow: hidden;
	}
	#philisophy .sec01 .num {
		margin-bottom: 2rem;
		padding-right: 1.5rem;
		font-size: 2.5rem;
	}
	#philisophy .sec01 .num::before {
		top: 50%;
		width: 100rem;
	}
	#philisophy .sec01 .title {
		margin-bottom: 2.7rem;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	#philisophy .sec01 .textBox p {
		color: #585858;
		line-height: 1.86;
		letter-spacing: 0.06em;
	}
	#philisophy .sec01 .pho {
		margin-top: 4.3rem;
		border-radius: 1rem;
	}
	#philisophy .sec01 .img {
		width: 29.7rem;
		margin: -5.5rem auto 0;
	}
	#philisophy .sec01 .imgBox03 .img {
		margin: 4rem 0 0;
	}
	#philisophy .sec02 {
		padding-bottom: 12.3rem;
	}
	#philisophy .sec02 .bgBox {
		height: 25rem;
		padding: 5.9rem 1.5rem 0 3.5rem;
		background-image: url(img/philisophy/sec02_bg_sp.jpg);
	}
	#philisophy .sec02 .bgBox h3 {
		max-width: inherit;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	#philisophy .sec02 .enImg {
		display: none;
	}
	#philisophy .sec02 .orageBg {
		width: auto;
		margin: -6rem auto 0;
		padding: 3.3rem 2.8rem 4.1rem;
		border-radius: 1rem 1rem 0 0;
	}
	#philisophy .sec02 .orageBg .ttl {
		margin-bottom: 3rem;
		font-size: 1.8rem;
		letter-spacing: 0.05em;
	}
	#philisophy .sec02 .orageBg .info {
		display: block;
	}
	#philisophy .sec02 .orageBg ul {
		width: auto;
		font-size: 1.3rem;
		line-height: 1.61;
	}
	#philisophy .sec02 .orageBg li {
		margin-right: 0;
	}
	#philisophy .sec02 .orageBg dd {
		padding-left: 5.2rem;
	}
	#philisophy .sec02 .orageBg dd.margin {
		padding-left: 7.8rem;
		margin-right: -1rem;
	}
	#philisophy .sec02 .whiteBg {
		width: auto;
		margin: 0 auto 4rem;
		padding: 3.7rem 2.8rem 3.9rem;
		border-radius: 0 0 1rem 1rem;
	}
	#philisophy .sec02 .whiteBg .textBox p {
		margin-bottom: 2.6rem;
		line-height: 1.92;
		font-size: 1.3rem;
	}
	#philisophy .sec02 .whiteBg .imgInfo {
		width: auto;
		margin-top: 3.8rem;
	}
	#philisophy .sec02 .whiteBg .imgSub:not(:last-child) {
		margin-bottom: 4.5rem;
	}
	#philisophy .sec02 .whiteBg .red {
		margin-top: 1.9rem;
	}
	#philisophy .sec02 .whiteBg .img {
		width: 18.6rem;
		margin: 1.9rem auto 0;
	}
	#philisophy .sec02 .imgBox {
		display: block;
	}
	#philisophy .sec02 .imgBox .pho {
		margin-bottom: 3.5rem;
		width: auto;
	}
	#philisophy .sec02 .imgBox .pho img {
		border-radius: 1rem;
	}
	#philisophy .sec02 .imgBox .textBox {
		width: auto;
	}
	#philisophy .sec02 .imgBox .title {
		margin: 0 -2rem 3.1rem 0;
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	#philisophy .sec02 .imgBox p {
		line-height: 1.86;
		letter-spacing: 0.11em;
	}
	#philisophy .sec02 .photo {
		width: auto;
		margin: 3.8rem auto 4rem;
	}
	#philisophy .sec02 .photo img {
		border-radius: 1rem;
	}
	#philisophy .sec02 .photo span {
		margin-top: 0.9rem;
		font-size: 1.3rem;
		letter-spacing: 0.11em;
	}
	#philisophy .sec02 .imgBox .pho span {
		margin-top: 0.9rem;
		font-size: 1.3rem;
		letter-spacing: 0.11em;
	}
}