@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* 81-JYJ */
/* 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;}
.en,
.enText {
	font-family: "Inter", sans-serif;
}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.content {
	margin: 0 auto;
	width: 160rem;
	max-width: calc(100% - 7rem);
}
.content02 {
	margin: 0 auto;
	width: 177rem;
	max-width: calc(100% - 7rem);
}
@media all and (max-width: 896px) {
	.content {
		margin: 0 3rem;
		width: auto !important;
		max-width: inherit;
	}
	.content02 {
		margin: 0 3rem;
		width: auto !important;
		max-width: inherit;
	}
}
/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
	margin: 0 8.2rem 5.6rem;
}
.headLine01 .jp {
	margin-bottom: 1.7rem;
	display: block;
	font-size: 5rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.02em;
}
.headLine01 .en {
	color: #00A196;
	font-size: 1.8rem;
	font-style: normal;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.0555em;
	backdrop-filter: blur(.8546rem);
}
.headLine01.head {
	margin: 0 0 8.6rem;
}
.headLine01.head .jp {
	margin: 0.9rem 0 0;
	font-size: 6rem;
}
.headLine01.head .jp02 {
	margin: 0.8rem 0 1.3rem;
	font-size: 5.5rem;
	font-weight: 500;
}
.headLine01.head .en {
	font-size: 1.8rem;
	letter-spacing: 0.111em;
}
.headLine01.head small {
	display: block;
	font-size: 1.8rem;
	line-height: 1.3;
	letter-spacing: 0.056em;
	font-weight: 500;
}
.headLine01.mid {
	text-align: center;
}
.headLine01.mid .jp {
	font-size: 4.4rem;
	letter-spacing: 0.095em;
	font-weight: 700;
}
.headLine01.mid .en {
	margin-bottom: 1.2rem;
	letter-spacing: 0.111em;
	display: block;
}
@media all and (max-width: 896px) {
	.headLine01 {
		margin: 0 0 1.9rem;
	}
	.headLine01 .jp {
		margin-bottom: 0.1rem;
		font-size: 2.6rem;
		line-height: 1.34;
		letter-spacing: 0.0384em;
	}
	.headLine01 .en {
		font-size: 1.2rem;
		letter-spacing: 0.0833em;
		backdrop-filter: blur(0.3705rem);
	}
	.headLine01.head {
		margin: 0 0 3.3rem;
	}
	.headLine01.head .jp,
	.headLine01.head .jp02 {
		margin: 0.7rem 0 0;
		font-size: 3.4rem;
		font-weight: 600;
		letter-spacing: 0.058em;
	}
	.headLine01.head .en {
		font-size: 1.6rem;
		letter-spacing: 0.125em;
	}
	.headLine01.head .en02 {
		font-size: 1.4rem;
	}
	.headLine01.head small {
		margin-top: 1rem;
		font-size: 1.6rem;
		line-height: 1.34;
		letter-spacing: 0.062em;
	}
	.headLine01.mid .en {
		font-size: 1.8rem;
	}
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
	margin-bottom: 3.6rem;
}
.headLine02 .en {
	width: fit-content;
	display: block;
	font-size: 8rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.0625em;
	background: linear-gradient(180deg, #03D8B8 17.7%, #00A196 73.73%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.headLine02 .jp {
	margin-bottom: 0.8rem;
	display: block;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.125em;
}
@media all and (max-width: 896px) {
	.headLine02 {
		margin-bottom: 1.9rem;
	}
	.headLine02 .en {
		font-size: 4.4rem;
		letter-spacing: 0.068em;
	}
	.headLine02 .jp {
		margin-bottom: 0.8rem;
		font-size: 2rem;
		font-weight: 600;
		letter-spacing: 0.15em;
	}
}
/*------------------------------------------------------------
	headLine03
------------------------------------------------------------*/
.headLine03 {
	margin-bottom: 1rem;
}
.headLine03 .jp {
	margin-right: 1.7rem;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.15em;
}
.headLine03 .en {
	color: #00A196;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.01;
	letter-spacing: 0.111em;
	text-transform: uppercase;
}
@media all and (max-width: 896px) {
	.headLine03 {
		margin-bottom: 0.6rem;
	}
	.headLine03 .jp {
		margin: 0 0 0.6rem;
		font-size: 1.6rem;
		letter-spacing: 0.187em;
		display: block;
	}
	.headLine03 .en {
		font-size: 1.6rem;
	}
}
/*------------------------------------------------------------
	headLine04
------------------------------------------------------------*/
.headLine04 {
	margin: 0 auto;
	padding: 4rem 0 0 5rem;
	width: fit-content;
	position: relative;
	z-index: 1;
	background: url(../img/common/icon03.png) no-repeat left top / 20rem;
}
.headLine04 .jp {
	margin-bottom: 1.4rem;
	display: block;
	color:#333;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.063em;
}
.headLine04 .en {
	display: block;
	color: #009C91;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.055em;
}
@media all and (max-width: 896px) {
	.headLine04 {
		padding: 2rem 0 0 2rem;
		background-size: 13rem;
	}
	.headLine04 .jp {
		margin-bottom: 1.4rem;
		font-size: 2.2rem;
		letter-spacing: 0.02em;
	}
	.headLine04 .en {
		font-size: 1.4rem;
		letter-spacing: 0.02em;
	}
}
/*------------------------------------------------------------
	headLine05
------------------------------------------------------------*/
.headLine05 {
	margin-bottom: 4rem;
	padding: 1.1rem;
	color: #00A196;
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.5;
	letter-spacing: 0.083em;
	border-radius: 0.4rem;
	border: 1px solid #00A196;
}
@media all and (max-width: 896px) {
	.headLine05 {
		margin-bottom: 3rem;
		font-size: 1.8rem;
	}
}
/*------------------------------------------------------------
	headLine06
------------------------------------------------------------*/
.headLine06 {
	margin: 0 auto 6rem;
	width: fit-content;
	min-width: 96rem;
	text-align: center;
}
.headLine06 small {
	margin-bottom: 1rem;
	display: block;
	color: #00A196;
	font-size: 2rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
}
.headLine06 .text {
	padding: 1.3rem 0 1.4rem;
	display: block;
	color: #333;
	font-size: 2.8rem;
	line-height: 1.2;
	letter-spacing: 0.035em;
	border-radius: 4rem;
	background: #CDF9EC;
	position: relative;
}
.headLine06 .text::after {
	width: 4rem;
	aspect-ratio: 1/1;
	content: "";
	position: absolute;
	left: 50%;
	bottom: -2rem;
	transform: translateX(-50%);
	background-color: inherit;
	clip-path: polygon(50% 100%, 0 50%, 100% 50%);
}
@media all and (max-width: 896px) {
	.headLine06 {
		margin: 0 auto 2rem;
		width: 100%;
		min-width: inherit;
	}
	.headLine06 small {
		margin-bottom: 0.5rem;
		font-size: 1.8rem;
	}
	.headLine06 .text {
		padding: 1rem;
		width: 100%;
		min-width: inherit;
		font-size: 1.8rem;
		border-radius: 4rem;
		font-feature-settings: "palt";
	}
	.headLine06 .text::after {
		width: 2.4rem;
		bottom: -1.2rem;
	}
}
/*------------------------------------------------------------
	headLine07
------------------------------------------------------------*/
.headLine07 {
	margin: 0 auto 5.5rem;
	max-width: 80rem;
	color: #00A196;
	font-size: 4.4rem;
	line-height: 1.4;
	letter-spacing: 0.068em;
	text-align: center;
}
.headLine07 .smlTxt01 {
	margin-bottom: 3rem;
	padding-bottom: 0.8rem;
	color: #333;
	display: block;
	font-size: 2rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	border-bottom: 1px solid #00A196;
}
.headLine07 .smlTxt02 {
	font-size: 3.2rem;
	display: block;
	line-height: 1.5;
	letter-spacing: 0.093em;
}
@media all and (max-width: 896px) {
	.headLine07 {
		margin: 0 auto 3rem;
		max-width: inherit;
		font-size: 2.5rem;
	}
	.headLine07 .smlTxt01 {
		margin-bottom: 1.5rem;
		padding-bottom: 0.5rem;
		font-size: 1.7rem;
	}
	.headLine07 .smlTxt02 {
		font-size: 2rem;
	}
}
/*------------------------------------------------------------
	comLineBg
------------------------------------------------------------*/
.comLineBg {
	padding: 18rem 0;
	position: relative;
	z-index: 1;
}
.comLineBg::before {
	width: 100%;
	aspect-ratio: 2880/1352;
	content: "";
	position: absolute;
	left: 0;
	top: -5.6rem;
	opacity: 0.5;
	z-index: -1;
	background: url(../img/common/line01.png) no-repeat left top / 100%;
	pointer-events: none;
}
@media all and (max-width: 896px) {
	.comLineBg {
		padding: 0;
	}
	.comLineBg::before {
		width: 999rem;
		height: 1px;
		top: -3.5rem;
		left: 50%;
		transform: translateX(-50%) rotate(165.459deg);
		aspect-ratio: 435.44/31.97;
		background: #80EBDB;
	}
}
/*------------------------------------------------------------
	comBtn01
------------------------------------------------------------*/
.comBtn01 a {
	width: 20rem;
	height: 5rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-align: center;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.055em;
	border-radius: 0.3rem;
	color: #fff;
	background-color: #00A196;
}
.comBtn01 a .text {
	padding: 1.2rem 0;
	width: calc(100% - 4.8rem);
	border-right: 1px solid #fff;
	font-size: inherit !important;
	letter-spacing: inherit !important;
	line-height: inherit !important;
}
/*------------------------------------------------------------
	comBtn02
------------------------------------------------------------*/
.comBtn02 a {
	color: #000;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.5;
	display: flex;
	align-items: center;
	gap: 1rem;
	border-bottom: 1px solid transparent;
}
.comBtn02 a .comArrow {
	width: 4rem;
	position: relative;
	z-index: 1;
}
.comBtn02 a .comArrow::after {
	content: "";
	width: 3.2rem;
	height: 3.2rem;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%) skew(-14deg);
	background-color: #00A196;
	z-index: -1;
	border-radius: 100%;
}
.comBtn02 a .comArrow .ico {
	width: 2rem;
}
.comBtn02 a .text {
	padding: 1rem 0;
	transition: color 0.3s,border-color 0.3s;
	font-size: inherit !important;
	letter-spacing: inherit !important;
	line-height: inherit !important;
}
.comBtn02.line a {
	width: fit-content;
	font-size: 1.8rem;
	color: #333;
	letter-spacing: 0.0556em;
	border-bottom: 1px solid #00A196;
	gap: 2.8rem;
}
.comBtn02.line a .text {
	border-bottom: none;
}
@media all and (min-width: 897px) {
	.comBtn02 a:hover {
		color: #00A196;
		border-color: currentColor;
	}
}
@media all and (max-width: 896px) {
	.comBtn02.line a {
		width: 100%;
		justify-content: space-between;
	}
}
/*------------------------------------------------------------
	comArrow
------------------------------------------------------------*/
 .comArrow {
	width: 5rem;
	height: 5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.comArrow .ico {
	width: 3rem;
	aspect-ratio: 45/18;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	overflow: hidden;
	gap: 1rem;
	position: relative;
}
.comArrow .ico::before,
.comArrow .ico::after {
	width: 100%;
	aspect-ratio: 45/18;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/common/arrow01.png) no-repeat center center / 100%;
	transition: transform 0.4s ease-in-out;
	will-change: transform;
	z-index: 1;
}
.comArrow .ico::before {
	transform: translateX(0);
}
.comArrow .ico::after {
	transform: translateX(-100%);
}
.comArrow.arrow02 {
	position: relative;
	z-index: 1;
}
.comArrow.arrow02 .ico {
	width: 2rem;
}
.comArrow.arrow02::after {
	content: "";
	width: 3.2rem;
	height: 3.2rem;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%) skew(-14deg);
	background-color: #00A196;
	z-index: -1;
	border-radius: 100%;
}
@media all and (min-width: 897px) {
	a:has(.comArrow):hover .comArrow .ico::before {
		transform: translateX(calc(100% + 1rem));
	}
	a:has(.comArrow):hover .comArrow .ico::after {
		transform: translateX(0);
	}
}
/*------------------------------------------------------------
	comNavBox
------------------------------------------------------------*/
.comNavBox {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem 12.8rem;
}
.comNavBox .list {
	max-width: 30rem;
}
.comNavBox a {
	display: block;
	width: fit-content;
	font-weight: 600;
	line-height: 1.5;
}
.comNavBox li {
	margin-bottom: 2rem;
}
.comNavBox li:last-child {
	margin-bottom: 0;
}
.comNavBox .subList a {
	padding-left: 1.9rem;
	font-size: 1.6rem;
	font-weight: 400;
	position: relative;
}
.comNavBox .subList a::before {
	width: 0.4rem;
	height: 1px;
	content: "";
	position: absolute;
	left: 0.7rem;
	top: 1.3rem;
	background: currentColor;
}
.comNavBox .subList li {
	margin: 0.8rem 0 0;
}
.comNavBox .list02 a {
	font-weight: 500;
	font-size: 1.6rem;
	letter-spacing: 0.125em;
}
@media all and (min-width: 897px) {
	.comNavBox .list > li > a:hover {
		color: #00A196;
	}
	.comNavBox .subList li a:hover {
		opacity: 0.6;
	}
}
@media all and (max-width: 896px) {	
	.comNavBox {
		display: block;
	}
	.comNavBox .col {
		color: #009C91;
	}
	.comNavBox .list {
		max-width: inherit;
	}
	.comNavBox a {
		padding: 0.8rem 0;
		width: 100%;
		font-size: 1.6rem;
		letter-spacing: 0.125em;
		border-bottom: 1px solid #009C91;
	}
	.comNavBox li {
		margin-bottom: 0;
	}
	.comNavBox .subList a {
		padding: 0.8rem 0 0.8rem 3.5rem;
		letter-spacing: 0.062em;
	}
	.comNavBox .subList a::before {
		left: 2.3rem;
		top: 2rem;
	}
	.comNavBox .subList li {
		margin: 0;
	}
	.comNavBox .list02 a {
		font-weight: 600;
	}
}
/*------------------------------------------------------------
	comLinkList
------------------------------------------------------------*/
.comLinkList {
	width: 61rem;
}
.comLinkList li {
	margin-bottom: 5.1rem;
}
.comLinkList li:last-child {
	margin-bottom: 0;
}
.comLinkList a {
	padding: 0.3rem 1.4rem 1.6rem 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid #00A196;
	gap: 1rem;
}
.comLinkList .text {
	padding: 1rem 0 1rem 6.2rem;
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.0714em;
	flex: 1;
	background: url(../img/common/mail_icon.png) no-repeat left center / 5rem;
}
.comLinkList .tel .text {
	background-image: url(../img/common/tel_icon.png);
}
@media all and (max-width: 896px) {
	.comLinkList {
		width: auto;
	}
	.comLinkList li {
		margin-bottom: 1.5rem;
	}
	.comLinkList a {
		padding: 0rem 1rem 0 0;
	}
	.comLinkList .text {
		padding: 1rem 0 0.9rem 5rem;
		font-size: 2rem;
		letter-spacing: 0.1em;
		background-size: 4rem;
	}
	.comLinkList .tel a {
		padding-bottom: 0.6rem;
	}
	.comLinkList02 {
		margin-top: 1.8rem;
	}
	.comLinkList02 a {
		padding-right: 0;
		gap: 1rem;
	}
	.comLinkList02 li {
		margin-bottom: 0;
	}
	.comLinkList02 .comArrow {
		width: 4rem;
		height: 4rem;
	}
	 .comLinkList02 a .text {
		padding: 2rem 0 1.9rem 3.2rem;
		font-size: 1.8rem;
		background-size: 2.6rem;
		letter-spacing: 0.055em;
	}
	.comLinkList02 .tel a {
		padding-bottom: 0;
	}
}
/*------------------------------------------------------------
	comVisual
------------------------------------------------------------*/
.comVisual {
	margin-bottom: 7.2rem;
	padding: 17rem 0 0;
	position: relative;
	z-index: 1;
	background-color: #fff;
}
.comVisual::before {
	width: 100%;
	aspect-ratio: 1920/344;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	background: url(../img/common/line04.png) no-repeat center center / 100%;
	z-index: -1;
}
.comVisual .pageTtl {
	margin: 0 0 3.8rem 8.5rem;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.3rem 8.4rem;
}
.comVisual .pageTtl .en {
	width: 100%;
	display: block;
	color: #00A196;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.1rem;
}
.comVisual .pageTtl .jp {
	font-size: 5.5rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.036em;
	width: fit-content;
}
.comVisual .pageTtl .subName {
	padding-left: 5.8rem;
	font-size: 4.2rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.047em;
	position: relative;
}
.comVisual .pageTtl .subName::before {
	width: 1.4rem;
	height: 2px;
	content: "";
	position: absolute;
	left: 2.1rem;
	top: 2.7rem;
	background: currentColor;
}
.comVisual .pageTtl small {
	flex: 1;
	font-size: 1.8rem;
	font-weight: 500;
}
.comVisual .mainBg {
	padding-top: 6rem;
	background-color: #fafafa;
}
.comVisual .mainImg {
	overflow: hidden;
}
.comVisual .mainImg img {
	width: 100%;
	border-radius: 0.4rem;
}
.comVisual:not(:has(.mainImg)) #pagePath:last-child {
	margin-bottom: 0;
}
.comVisual:not(:has(.mainImg)) {
	padding-bottom: 1rem;
}
@media all and (max-width: 896px) {
	.comVisual {
		margin-bottom: 5rem;
		padding: 9.6rem 0 0;
		overflow: hidden;
	}
	.comVisual::before {
		aspect-ratio: inherit;
		width: 100%;
		height: 26rem;
		background-size: 100% 100%;
		background-image: url(../img/common/line04_sp.png);
	}
	.comVisual .pageTtl {
		margin: 0;
		padding-bottom: 1rem;
		display: block;
		position: relative;
	}
	.comVisual .pageTtl::after {
		content: "";
		position: absolute;
		left: -3.1rem;
		right: -3.1rem;
		top: -10rem;
		bottom: 0;
		background-color: #fff;
		z-index: -2;
	}
	.comVisual .pageTtl .en {
		margin-bottom: 0rem;
		font-size: 1.6rem;
	}
	.comVisual .pageTtl .jp {
		font-size: 3.1rem;
		display: block;
		letter-spacing: 0.064em;
		width: auto;
	}
	.comVisual .pageTtl .subName {
		padding-left: 3rem;
		font-size: 2rem;
		display: block;
	}
	.comVisual .pageTtl .subName::before {
		width: 1rem;
		height: 2px;
		content: "";
		position: absolute;
		left: 1rem;
		top: 1.5rem;
		background: currentColor;
	}
	.comVisual .pageTtl small {
		margin-top: 1rem;
		font-size: 1.6rem;
		display: block;
		letter-spacing: 0.125em;
	}
	.comVisual .mainBg {
		padding-top: 3.6rem;
	}

}
/*------------------------------------------------------------
	pagePath
------------------------------------------------------------*/
#pagePath {
	margin-bottom: 2rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 1rem 2rem;
}
#pagePath li {
	color: #00A196;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 2px;
	position: relative;
}
#pagePath li::before {
	width: 1px;
	content: "";
	position: absolute;
	left: -1rem;
	top: 0.3rem;
	bottom: 0.3rem;
	background: #ACACAC;
}
#pagePath li:first-child::before {
	display: none;
}
#pagePath a {
	color: #ACACAC;
}
#pagePath .col a {
	color: #C4C4C4;
}
@media all and (min-width: 897px) {
	#pagePath a:hover {
		color: #00A196;
	}
}
@media all and (max-width: 896px) {
	#pagePath {
		margin: 0 0 1rem -1.5rem;
	}
	#pagePath li {
		font-size: 1.4rem;
	}
}
/*------------------------------------------------------------
	comText01
------------------------------------------------------------*/
.comText01 {
	color: #00A196;
	font-size: 4.4rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.09em;
}
@media all and (max-width: 896px) {
	.comText01 {
		font-size: 2.3rem;
		letter-spacing: 0.086em;
	}
}
/*------------------------------------------------------------
	comList01
------------------------------------------------------------*/
.comList01 {
	display: flex;
	flex-wrap: wrap;
	gap: 4.999rem;
}
.comList01 li {
	width: calc((100% - 10rem) / 3);
}
.comList01 a {
	padding: 2.2rem 3.5rem 2.2rem 4rem;
	height: 100%;
	display: flex;
	justify-content: space-between;
	border: 1px solid #00A196;
	background: #FFF;
	gap: 1rem;
	align-items: center;
}
.comList01 a .en {
	margin-bottom: 0.6rem;
	color: #00A196;
	display: block;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.055em;
}
.comList01 .text {
	flex: 1;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
.comList01 .comArrow {
	padding-bottom: 0.6rem;
	width: 5.4rem;
	height: 5.4rem;
	transform: rotate(90deg);
	background-color: #00A196;
}
.comList01 .comArrow .ico {
	width: 4rem;
}
@media all and (max-width: 896px) {
	.comList01 {
		flex-direction: column;
		gap: 2rem;
	}
	.comList01 li {
		width: 100%;
	}
	.comList01 a {
		padding: 1rem 1rem;
		min-height: 4rem;
		gap: 1rem;
	}
	.comList01 a .en {
		margin-bottom: 0.6rem;
		font-size: 1.4rem;
	}
	.comList01 .text {
		font-size: 1.6rem;
	}
	.comList01 .comArrow {
		padding-bottom: 0.3rem;
		width: 3rem;
		height: 3rem;
	}
	.comList01 .comArrow .ico {
		width: 2.2rem;
	}
}
/*------------------------------------------------------------
	comList03
------------------------------------------------------------*/
.comList03 {
	margin-bottom: 7.5rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 8rem 6.5rem;
}
.comList03 li {
	padding: 4rem 4rem 5rem;
	width: calc((100% - 6.5rem) / 2);
	font-weight: 500;
	line-height: 1.5;
	background: #FFF;
}
.comList03 .image {
	margin-bottom: 3rem;
}
.comList03 .image img {
	width: 100%;
}
.comList03 .title {
	margin-bottom: 3.2rem;
	padding-left: 3rem;
	color: #00A196;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.031em;
	position: relative;
}
.comList03 .title::before {
	width: 1rem;
	aspect-ratio: 1/1;
	content: "";
	position: absolute;
	left: 1rem;
	top: 1rem;
	border-radius: 100%;
	background-color: #80EBDB;
}
.comList03 .title small {
	margin-bottom: 0.3rem;
	color: #333;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.055em;
	display: block;
}
.comList03 p {
	margin-right: 4rem;
}
@media all and (max-width: 896px) {
	.comList03 {
		margin-bottom: 2rem;
		flex-direction: column;
		gap: 2rem;
	}
	.comList03 li {
		padding: 2rem 2rem 4rem;
		width: 100%;
	}
	.comList03 .image {
		margin-bottom: 1.5rem;
	}
	.comList03 .title {
		margin-bottom: 1.5rem;
		padding-left: 2rem;
		font-size: 2rem;
	}
	.comList03 .title::before {
		width: 0.8rem;
		left: 0.8rem;
		top: 1rem;
	}
	.comList03 .title small {
		font-size: 1.6rem;
	}
	.comList03 p {
		margin-right: 0;
		text-align: justify;
	}
}
/*------------------------------------------------------------
	comList04
------------------------------------------------------------*/
.comList04 {
	margin-bottom: 1.4rem;
	gap: 4rem;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.comList04 li {
	padding: 1.6rem 5rem 2.2rem;
	width: calc(50% - 2rem);
	background-color: #fff;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0;
}
.comList04 .title {
	margin-bottom: 0.1rem;
	color: #00A196;
	font-size: 2.8rem;
	line-height: 1.2;
	letter-spacing: 0;
	position: relative;
}
.comList04 .title::before {
	width: 0.9rem;
	height: 0.9rem;
	content: "";
	position: absolute;
	left: -1.9rem;
	top: 1.3rem;
	border-radius: 100%;
	background-color: #00A196;
}
@media all and (max-width: 896px) {
	.comList04 {
		gap: 2rem;
		flex-direction: column;
	}
	.comList04 li {
		padding: 1.5rem 2rem 1.5rem 4rem;
		width: 100%;
	}
	.comList04 .title {
		margin-bottom: 1rem;
		font-size: 2rem;
	}
	.comList04 .title::before {
		width: 0.8rem;
		height: 0.8rem;
		left: -1.5rem;
		top: 0.8rem;
	}
}
/*------------------------------------------------------------
	comList05
------------------------------------------------------------*/
.comList05 {
	gap: 3.35rem;
}
.comList05 li {
	padding: 4rem 3rem 4.8rem;
	width: calc((100% - 6.7rem) / 3);
	border-radius: 0.4rem;
	background: #FAFAFA;
	font-weight: 500;
	line-height: 1.7;
}
.comList05 .subTtl {
	padding: 0 0 2.5rem 8.1rem;
	background: url(../img/business/solutions/energy-solutions/icon01.png) no-repeat left top / 6rem;
}
.comList05 .subTtl02 {
	background-image: url(../img/business/solutions/energy-solutions/icon02.png);
}
.comList05 .subTtl03 {
	background-image: url(../img/business/solutions/energy-solutions/icon03.png);
}
.comList05 .en {
	color: #00A196;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.055em;
	display: block;
}
.comList05 .jp {
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.076em;
}
@media all and (max-width: 896px) {
	.comList05 {
		display: block;
	}
	.comList05 li {
		margin-bottom: 3rem;
		padding: 2rem 2rem;
		width: 100%;
	}
	.comList05 li:last-child {
		margin-bottom: 0;
	}
	.comList05 .subTtl {
		padding: 0 0 1.5rem 5rem;
		background-size: 4rem;
		background-position: left top;
	}
	.comList05 .jp {
		font-size: 1.8rem;
	}
}
/*------------------------------------------------------------
	comList06
------------------------------------------------------------*/
.comList06 {
	margin: 0 auto;
	max-width: 124rem;
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
}
.comList06 li {
	padding: 1.75rem 2rem 1.75rem 11.5rem;
	width: calc((100% - 4rem) / 3);
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0;
	background: #fff url(../img/common/icon07.png) no-repeat left 5rem center / 4.3rem;
	border-radius: 5rem;
	border: 1px solid #00A196;
}
.comList06 .col {
	color: #00A196;
}
@media all and (min-width: 897px) {
	.comList06 .item {
		padding-left: 9.2rem;
		background-position: left 3.8rem center;
		background-size: 3.8rem;
	}
}
@media all and (max-width: 896px) {
	.comList06 {
		margin: 0 auto;
		max-width: inherit;
		display: block;
	}
	.comList06 li {
		margin-bottom: 2rem;
		padding: 1rem 2rem 1rem 6rem;
		width: 100%;
		font-size: 1.8rem;
		background-size: 3rem;
		background-position: left 2rem center;
		border-radius: 5rem;
	}
	.comList06 li:last-child {
		margin-bottom: 0;
	}
}
/*------------------------------------------------------------
	comText02
------------------------------------------------------------*/
.comText02 {
	margin-bottom: 5rem;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
}
/*------------------------------------------------------------
	comList02
------------------------------------------------------------*/
.comList02 {
	gap: 3.2rem;
}
.comList02 > li {
	width: calc(50% - 1.6rem);
	border: 2px solid #00A196;
	background: #fff;
	display: flex;
	flex-direction: column;
	position: relative;
}
.comList02 > li > a {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	z-index: 1;
}
.comList02 .comArrow {
	width: 9.8rem;
	position: absolute;
	right: 2rem;
	top: 4rem;
}
.comList02 .comArrow::after {
	width: 8rem;
	height: 8rem;
	transform: translate(-48%,-48%) rotate(4deg) skew(-14deg) ;
}
.comList02 .comArrow .ico {
	width: 3.8rem;
}
.comList02 .comArrow .ico::before,
.comList02 .comArrow .ico::after {
	background-image: url(../img/common/arrow05.png);
}
.comList02 .titleUl {
	padding: 2.7rem 11.7rem 2.8rem 4.7rem;
	min-height: 24.7rem;
}
.comList02 .heading {
	padding-left: 2.6rem;
	color: #00A196;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 2;
	letter-spacing: 0.065em;
	position: relative;
}
.comList02 .heading::before {
	width: 1rem;
	aspect-ratio: 1/1;
	content: "";
	position: absolute;
	left: 0;
	top: 3rem;
	border-radius: 100%;
	background-color: #80EBDB;
}
.comList02 .list {
	padding: 3.9rem 5.7rem;
	flex: 1;
	border-top: 1px solid #00A196;
	background-color: #F2F6F5;
}
.comList02 .list01 {
	padding: 2.5rem 4.7rem;
}
.comList02 .list li {
	display: flex;
	flex-wrap: wrap;
	gap: 1.4rem;
}
.comList02 .list .title {
	font-size: 2rem;
	color: #00A196;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.1em;
}
.comList02 .list .text {
	padding: 0.2rem 0 0 1.6rem;
	color: #333;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.111em;
	position: relative;
	flex: 1;
}
.comList02 .list .text::before {
	width: 1px;
	height: 2rem;
	content: "";
	position: absolute;
	left: 0;
	top: 0.5rem;
	background: #C4C4C4;
}
.comList02 .list .text01 {
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: 0.125em;
}
.comList02 .list .text01 span {
	margin-bottom: 0.5rem;
	display: block;
}
.comList02 .list .text01 span:last-child {
	margin-bottom: 0;
}
.comList02 .list li + li {
	margin-top: 2rem;
}
@media all and (max-width: 896px) {
	.comList02 {
		flex-direction: column;
	}
	.comList02 > li {
		width: 100%;
		border-width: 1px;
	}
	.comList02 .comArrow {
		width: 5rem;
		right: 1rem;
		top: 1rem;
	}
	.comList02 .comArrow::after {
		width: 4.5rem;
		height: 4.5rem;
	}
	.comList02 .comArrow .ico {
		width: 2.3rem;
	}
	.comList02 .titleUl {
		padding: 1rem 6rem 1rem 1rem;
		min-height: inherit;
	}
	.comList02 .heading {
		padding-left: 1.5rem;
		font-size: 1.8rem;
	}
	.comList02 .heading::before {
		width: 0.8rem;
		top: 1.5rem;
	}
	.comList02 .list {
		padding: 2rem 1rem;
	}
	.comList02 .list01 {
		padding: 2rem 1rem;
	}
	.comList02 .list li {
		display: block;
		text-align: justify;
		font-feature-settings: "palt";
	}
	.comList02 .list .title {
		margin-bottom: 0.5rem;
		font-size: 1.6rem;
	}
	.comList02 .list .text {
		padding: 0.2rem 0 0 1rem;
		font-size: 1.5rem;
	}
	.comList02 .list .text::before {
		height: 1.6rem;
	}
	.comList02 .list .text01 {
		font-size: 1.4rem;
	}
	.comList02 .list li + li {
		margin-top: 1.5rem;
	}
}
/*------------------------------------------------------------
	comBox
------------------------------------------------------------*/
.comBox {
	margin: 0 auto 7.7rem;
	width: 79.7rem;
}
.comBox .heading {
	margin-bottom: 3rem;
	text-align: center;
	font-weight: 700;
	line-height: 1.6;
}
.comBox .heading .sml01 {
	margin-bottom: 2.9rem;
	padding-bottom: 0.9rem;
	font-size: 2rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	display: block;
	border-bottom: 1px solid #00A196;
}
.comBox .heading .jp {
	color: #00A196;
	font-size: 4.4rem;
	line-height: 1.4;
	letter-spacing: 0.068em;
	display: block;
}
.comBox .heading .sml02 {
	margin-bottom: 0.35rem;
	display: block;
	font-size: 3.2rem;
	line-height: 1.5;
	letter-spacing: 0.093em;
}
.comBox p {
	margin: 0 auto;
	width: 66.8rem;
	line-height: 1.7;
	font-weight: 500;
}
@media all and (max-width: 896px) {
	.comBox {
		margin: 0 auto 4rem;
		width: auto;
	}
	.comBox .heading {
		margin-bottom: 2rem;
	}
	.comBox .heading .sml01 {
		margin-bottom: 1.5rem;
		padding-bottom: 0.5rem;
		font-size: 1.4rem;
	}
	.comBox .heading .jp {
		font-size: 2.5rem;
		font-feature-settings: "palt";
	}
	.comBox .heading .sml02 {
		font-size: 1.6rem;
	}
	.comBox p {
		width: auto;
	}
}
/*------------------------------------------------------------
	comOverview
------------------------------------------------------------*/
.comOverview {
	margin-bottom: 12.3rem;
}
.comOverview .content {
	width: 159.4rem;
	max-width: calc(100% - 7rem);
}
.comOverview .headLine01 {
	margin-bottom: 8.2rem;
	text-align: center;
}
.comOverview .headLine01 .jp {
	margin: 1.6rem 0 0;
}
.comOverview .comList02 {
	gap: 4.8rem;
}
.comOverview .comList02 > li {
	width: calc((100% - 9.6rem) / 3);
}
.comOverview .comList02 .heading {
	padding: 2.5rem 11rem 3.6rem 4rem;
	position: relative;
	font-size: min(calc(32 / 1700 * 100vw), 3.2rem);
}
.comOverview .comList02 .heading a {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.comOverview .comList02 .heading::before {
	left: 1.8rem;
	top: 50%;
	transform: translateY(-75%);
}
.comOverview .comList02 .comArrow {
	top: 3.1rem;
}
.comOverview .comList02 .list {
	padding: 2.8rem 1.8rem;
	border: none;
}
.comOverview .comList02 .list a {
	font-size: 2rem;
	color: #00A196;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.1em;
}
@media all and (min-width: 897px) {
	.comOverview .comList02 .list a:hover {
		opacity: 0.6;
	}
}
@media all and (max-width: 896px) {
	.comOverview {
		margin-bottom: 8rem;
	}
	.comOverview .content {
		max-width: inherit;
	}
	.comOverview .headLine01 {
		margin-bottom: 4rem;
	}
	.comOverview .headLine01 .jp {
		margin: 1rem 0 0;
	}
	.comOverview .comList02 {
		gap: 3rem;
	}
	.comOverview .comList02 > li {
		width: 100%;
	}
	.comOverview .comList02 .heading {
		padding: 2rem 7rem 2rem 2.5rem;
		position: relative;
		font-size: 1.8rem;
	}
	.comOverview .comList02 .heading::before {
		left: 1rem;
		transform: translateY(-50%);
	}
	.comOverview .comList02 .comArrow {
		top: 1rem;
	}
	.comOverview .comList02 .list {
		padding: 1.5rem 2.5rem;
	}
	.comOverview .comList02 .list a {
		margin-bottom: 0.5rem;
		font-size: 1.6rem;
	}
		
}
/*------------------------------------------------------------
	comHeadBox
------------------------------------------------------------*/
.comHeadBox {
	padding-bottom: 12rem;
	background-color: #fff;
}
.comHeadBox .bigPhoto img {
	width: 100%;
}
.comHeadBox .topicTtl {
	margin: -7rem auto 2.7rem;
	padding: 1.9rem 0 2rem;
	max-width: 95.5rem;
	color: #FFF;
	text-align: center;
	font-size: 4.4rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.09em;
	border-radius: 0.4rem;
	background:#00A196;
	position: relative;
	z-index: 1;
}
.comHeadBox .topicTtl span {
	margin-bottom: 0.5rem;
	display: block;
	font-weight: 500;
	font-size: 2rem;
	letter-spacing: 0.04em;
}
.comHeadBox .subTopic {
	margin-bottom: 3.2rem;
	color: #00A196;
	font-size: 4.4rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.068em;
	text-align: center;
}
.comHeadBox .subTopic span {
	margin-bottom: 0.5rem;
	font-size: 3.2rem;
	letter-spacing: 0.093em;
}
.comHeadBox .intro {
	margin: 0 auto 5.8rem;
	max-width: 96rem;
	line-height: 1.7;
	font-weight: 500;
}
@media all and (min-width: 897px) {
	.comHeadBox .banner a:hover {
		opacity: 0.6;
	}
}
@media all and (max-width: 896px) {
	.comHeadBox {
		padding-bottom: 6rem;
	}
	.comHeadBox .topicTtl {
		margin: -4.4rem auto 2rem;
		padding: 1rem 1rem  1.5rem;
		max-width: inherit;
		font-size: 2.5rem;
	}
	.comHeadBox .topicTtl span {
		margin-bottom: 0;
		font-size: 1.7rem;
	}
	.comHeadBox .subTopic {
		margin-bottom: 2rem;
		font-size: 2.5rem;
	}
	.comHeadBox .subTopic span {
		margin-bottom: 0;
		font-size: 1.6rem;
	}
	.comHeadBox .intro {
		margin: 0 auto 3rem;
		max-width: inherit;
		text-align: justify;
	}
}
/*------------------------------------------------------------
	comPolicyBox
------------------------------------------------------------*/
.comPolicyBox {
	margin-bottom: 16.5rem;
	font-weight: 500;
}
.comPolicyBox .heading {
	margin-bottom: 3.7rem;
	padding: 0 0.3rem 1rem;
	color: #00A196;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.062em;
	position: relative;
}
.comPolicyBox .heading::after {
	width: 100%;
	height: 1px;
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(180deg, #03D8B8 17.7%, #00A196 73.73%), #00A196;
}
.comPolicyBox .content {
	width: 128.4rem;
}
.comPolicyBox .textList01 {
	margin-bottom: 12.2rem;
	counter-reset: num 0;
}
.comPolicyBox .textList01 li {
	margin-bottom: 3rem;
	counter-increment: num 1;
	font-weight: 500;
	line-height: 1.7;
	display: flex;
	align-items: flex-start;
}
.comPolicyBox .textList01 li:last-child {
	margin-bottom: 0;
}
.comPolicyBox .textList01 li::before {
	width: 6rem;
	content: "（" counter(num, decimal) "）";
	color: #00A196;
	display: block;
	flex-shrink: 0;
	text-align: center;
}
.comPolicyBox .textList02 {
	font-weight: 500;
	line-height: 1.7;
}
.comPolicyBox .textList02 > li {
	margin-bottom: 6.7rem;
}
.comPolicyBox .textList02 > li:last-child {
	margin-bottom: 0;
}
.comPolicyBox .textList02 p {
	margin-bottom: 3.1rem;
}
.comPolicyBox .textList02 p:last-child {
	margin-bottom: 0;
}
.comPolicyBox .textList02 .title {
	margin-bottom: 1.3rem;
	color: #00A196;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.7;
	letter-spacing: 0.09em;
}
.comPolicyBox .textList02 .inner {
	margin: 0 0 0 6.2rem;
}
.comPolicyBox .textList02 .inner p {
	margin-bottom: 2.8rem;
}
.comPolicyBox .textList02 .inner p:last-child {
	margin-bottom: 0;
}
.comPolicyBox .textList02 .subTtl {
	margin-bottom: 0.5rem;
	color: #00A196;
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: 0.09em;
}
.comPolicyBox .textList02 .subUl li {
	padding-left: 1.9rem;
	text-indent: -1.9rem;
}
@media all and (max-width: 896px) {
	.comPolicyBox {
		margin-bottom: 8rem;
		text-align: justify;
		font-feature-settings: "palt";
	}
	.comPolicyBox .heading {
		margin-bottom: 2rem;
		padding: 0 0.3rem 1rem;
		font-size: 2.2rem;
	}
	.comPolicyBox .textList01 {
		margin-bottom: 6rem;
	}
	.comPolicyBox .textList01 li {
		margin-bottom: 3rem;
	}
	.comPolicyBox .textList01 li::before {
		width: 5rem;
	}
	.comPolicyBox .textList02 > li {
		margin-bottom: 3.5rem;
	}
	.comPolicyBox .textList02 p {
		margin-bottom: 1.5rem;
	}
	.comPolicyBox .textList02 .title {
		margin-bottom: 1rem;
		font-size: 1.8rem;
	}
	.comPolicyBox .textList02 .inner {
		margin: 0 0 0 5rem;
	}
	.comPolicyBox .textList02 .inner p {
		margin-bottom: 1.4rem;
	}
	.comPolicyBox .textList02 .subTtl {
		margin-bottom: 0.5rem;
		font-size: 1.6rem;
	}
	.comPolicyBox .textList02 .subUl li {
		padding-left: 0.9rem;
		text-indent: -0.9rem;
	}
}

/*------------------------------------------------------------
	フッター 追加調整（専用クラスのみ / 既存共通クラスは変更なし）
------------------------------------------------------------*/
@media all and (min-width: 897px) {
	/* CONTACT：1920px時点の比率を保ったまま縮小するリキッド指定 */
	#gFooter .contactBox .content.aqsLiquid {
		padding: min(calc(92 / 1920 * 100vw), 9.2rem) min(calc(236 / 1920 * 100vw), 23.6rem);
		width: min(calc(1653 / 1920 * 100vw), 165.3rem);
	}
	#gFooter .contactBox .content.aqsLiquid .flexBox {
		gap: min(calc(60 / 1920 * 100vw), 6rem);
	}
	#gFooter .contactBox .content.aqsLiquid .titleBox {
		width: min(calc(450 / 1920 * 100vw), 45rem);
	}
	#gFooter .contactBox .content.aqsLiquid .comLinkList {
		width: min(calc(610 / 1920 * 100vw), 61rem);
	}
	/* ロゴ・ナビ・住所エリア：同じく1920px時点の比率を保ったまま縮小 */
	#gFooter .content.innerBox.aqsLiquid {
		width: min(calc(1600 / 1920 * 100vw), 160rem);
	}
	#gFooter .content.innerBox.aqsLiquid .flexBox {
		gap: min(calc(50 / 1920 * 100vw), 5rem);
	}
	#gFooter .content.innerBox.aqsLiquid .inner02 {
		min-width: min(calc(952 / 1920 * 100vw), 95.2rem);
	}
	#gFooter .content.innerBox.aqsLiquid .comNavBox {
		gap: 2rem min(calc(128 / 1920 * 100vw), 12.8rem);
	}
	/* 親階層直下のサブリンク：ホバーでヘッダーと同じ緑 */
	#gFooter .comNavBox .subList.aqsSubGreen li a:hover {
		color: #00A196;
		opacity: 1;
	}
	/* 採用情報〜プライバシーポリシーの列はホバー色の対象外 */
	#gFooter .comNavBox .list02 > li > a:hover {
		color: #333;
	}
}
/* 営業カレンダー（PDF）リンク */
#gFooter .infoList .aqsCalendarLink a {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}
#gFooter .infoList .aqsCalendarLink .icon {
	width: 1.4rem;
	height: 1.4rem;
	fill: currentColor;
	flex-shrink: 0;
}
@media all and (max-width: 896px) {
	#gFooter .infoList .aqsCalendarLink .icon {
		width: 1.1rem;
		height: 1.1rem;
	}
}
/*------------------------------------------------------------
	snsBox
------------------------------------------------------------*/
.snsBox {
	padding: 12rem 0;
	background-color: #FAFAFA;
}
.snsBox .flexBox {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 5rem;
}
.snsBox .titleBox {
	width: 36rem;
}
.snsBox .headLine01 {
	margin: 0;
}
.snsBox .headLine01 .jp {
	margin: 1rem 0 0;
	font-size: 4rem;
	line-height: 1.35;
	letter-spacing: 0.05em;
}
.snsBox .snsList {
	width: 105.6rem;
	display: flex;
	gap: 3.6rem;
}
.snsBox .snsList > li {
	width: 51rem;
}
.snsBox .snsList > li:last-child a {
	padding: 3.6rem 5.0rem;
}
.snsBox .snsList a {
	padding: 3.6rem 3.0rem;
	height: 100%;
	display: block;
	border: 1px solid transparent;
	border-radius: 1rem;
	background: linear-gradient(#FFF, #FFF) padding-box,
				linear-gradient(180deg, #03D8B8 0%, #00A196 100%) border-box;
}
.snsBox .snsList .lead {
	font-size: 2.0rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0;
}
.snsBox .snsList .nameBox {
	margin: 1.8rem 0 0;
	display: flex;
	align-items: center;
	gap: 1.2rem;
}
.snsBox .snsList .ico {
	width: 5.2rem;
	flex-shrink: 0;
}
.snsBox .snsList .ico img {
	width: 100%;
	display: block;
}
.snsBox .snsList .textarea {
	flex: 1;
	min-width: 0;
}
.snsBox .snsList .name {
	font-size: 3.4rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.02em;
}
.snsBox .snsList .text {
	margin-top: 0.4rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.0;
	letter-spacing: 0;
}
@media all and (min-width: 897px) {
	/* フッターと左右の基準を揃える：1920px時点の比率を保ったまま縮小するリキッド指定 */
	.snsBox .content.aqsLiquid {
		width: min(calc(1280 / 1920 * 100vw), 160rem);
	}
	.snsBox .content.aqsLiquid .flexBox {
		gap: min(calc(50 / 1920 * 100vw), 5rem);
	}
	.snsBox .content.aqsLiquid .titleBox {
		width: min(calc(360 / 1920 * 100vw), 36rem);
	}
	.snsBox .content.aqsLiquid .snsList {
		width: min(calc(840 / 1920 * 100vw), 84rem);
		gap: min(calc(36 / 1920 * 100vw), 3.6rem);
	}
	.snsBox .content.aqsLiquid .snsList > li {
		width: min(calc(400 / 1920 * 100vw), 40rem);
	}
	.snsBox .snsList a:hover {
		color: #00A196;
		background: linear-gradient(#F2FCFA, #F2FCFA) padding-box,
					linear-gradient(180deg, #03D8B8 0%, #00A196 100%) border-box;
	}
}
@media all and (max-width: 896px) {
	.snsBox {
		padding: 6rem 0;
	}
	.snsBox .flexBox {
		display: block;
	}
	.snsBox .titleBox {
		margin-bottom: 2.5rem;
		width: auto;
	}
	.snsBox .headLine01 .jp {
		margin: 0.8rem 0 0;
		font-size: 2.6rem;
		line-height: 1.35;
		letter-spacing: 0.038em;
	}
	.snsBox .snsList {
		width: auto;
		display: block;
	}
	.snsBox .snsList > li {
		margin-bottom: 1.5rem;
		width: auto;
	}
	.snsBox .snsList > li:last-child {
		margin-bottom: 0;
	}
	.snsBox .snsList a {
		padding: 2rem 2.5rem 2.2rem;
		border-radius: 0.8rem;
	}
	.snsBox .snsList .lead {
		font-size: 1.2rem;
		letter-spacing: 0.05em;
	}
	.snsBox .snsList .nameBox {
		margin: 1rem 0 0.6rem;
		gap: 1rem;
	}
	.snsBox .snsList .ico {
		width: 6.5rem;
	}
	.snsBox .snsList .name {
		font-size: 2.4rem;
	}
	.snsBox .snsList .text {
		font-size: 1.2rem;
		letter-spacing: 0.08em;
	}
}