@charset "utf-8";

/*-------------------------------
	基本設定
-------------------------------*/

*,
*::before,
*::after{
	box-sizing: border-box;
	line-height: var(--line-height);
	word-wrap: break-word;
	font-feature-settings: "palt" !important;
	text-align: justify;
	font-weight: 500;
}
html{
	font-size: var(--root-font-size);
}
body{
	opacity: 0;
	width: 100%;
	font-size: var(--font-size);
	letter-spacing: .01em;
	font-weight: 500;
	-webkit-text-size-adjust: 100%;
	color: var(--blackcolor);
	/* font-family: '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; */
	font-family: var(--jp);
	position: relative;
	overflow-x: hidden;
}

/*----- 画像関連 */
img.imgAll2025{
	height: auto;
	vertical-align: bottom;
}

/* SVG表示されないとき */
.svg2025{
	line-height: 1;
	display: block;
}
.svg2025 img{
	display: block;
	width: 100%;
	height: auto;
	line-height: 1;
}

/*----- ホバー系 */
a,
a.aAll2025,
.a2025{
	transition: var(--transition);
	color: var(--blackcolor);
}
*:not(.not-a2025) > a:hover,
*:not(.not-a2025) > .a2025:hover{
	opacity: var(--opacity);
}

/*----- コンテンツ */
.sec2025{
	padding-top: var(--padding-topbottom);
	padding-bottom: var(--padding-topbottom);
}
.main2025{
	/* padding-top: 14.5rem; */
	display: block;
}

@media screen and (min-width:769px) , print{

	a.aAll2025[href^="tel:"]{
		pointer-events: none;
	}

	/*----- コンテンツ */
	.fullwidth2025{
		width: 100%;
		padding-left: var(--padding-leftright);
		padding-right: var(--padding-leftright);
		margin-left: auto;
		margin-right: auto;
	}
	.maxwidth2025{
		width: 100%;
		max-width: var(--maxwidth);
		padding-left: var(--padding-leftright);
		padding-right: var(--padding-leftright);
		margin-left: auto;
		margin-right: auto;
	}

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:1100px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

	html{
		font-size: var(--root-font-size);
	}
	body{
		min-width: 100%;
		font-size: var(--font-size);
	}

	/*----- コンテンツ */
	.fullwidth2025{
		width: 100%;
		padding-left: var(--padding-leftright);
		padding-right: var(--padding-leftright);
	}
	.sp_maxwidth2025{
		max-width: var(--maxwidth);
		padding-left: var(--padding-leftright);
		padding-right: var(--padding-leftright);
	}

	.sec2025{
		padding-top: var(--padding-topbottom);
		padding-bottom: var(--padding-topbottom);
	}

}

/*-------------------------------
	旧サイト用
-------------------------------*/
.ol_main2025{
	margin-top: 13.5rem;
	padding-top: 3rem;
    line-height: 2em;
    letter-spacing: 0.1em;
	font-family: 'Noto Sans JP','Meiryo', "HG創英角ｺﾞｼｯｸUB", 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.ol_main2025 input.checked_btn{
	text-align: center;
}
@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:1100px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

}

/*-------------------------------
	パーツ
-------------------------------*/

/*----- テキスト */
.C-Text2025{
	font-size: var(--font-size);
	line-height: calc(3.6 / 1.6);
	font-weight: 500;
	text-align: justify;
}
.C-Text_flex2026 {
	display: flex;
}
.C-Text2025 + .C-Text2025{
	margin-top: 1.5em;
}

/*----- 見出し */
/* 大見出し */
.C-Title2025{
	width: 100%;
	margin-bottom: 5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}
.C-Title2025__en{
	color: var(--maincolor);
	font-family: var(--en);
	margin-bottom: 1.5rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: .06em;
	text-align: center;
	display: block;
	position: relative;
}
/*
.C-Title2025__en span{
	padding-left: 1em;
}
.C-Title2025__en span::before{
    content: "";
    display: inline-block;
    width: 1.2rem;
    height: 1.2rem;
    background: var(--maincolor);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: .05em;
}
*/
.C-Title2025__jp{
	font-family: var(--mincho);
	font-size: 3.2rem;
	line-height: calc(6 / 3.2);
	font-weight: 700;
	text-align: center;
}
.pc_none_202603 {
	display: none;
}
.sp_none_202603 {
	padding: none !important;
}


/* 大サイズ */
.C-Title2025.-large .C-Title2025__jp{
	font-size: 4rem;
	line-height: calc(6 / 4);
}

/* 中見出し */
.C-Subtitle2025{
	width: 100%;
	margin-bottom: 6.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: relative;
	z-index: 5000;
}
.C-Subtitle2025__title{
	color: var(--maincolor);
	font-size: 2.8rem;
	padding-left: 3.5rem;
	padding-right: 3.5rem;
	font-weight: 700;
	line-height: calc(4 / 2.8);
	position: relative;
}
.C-Subtitle2025__title::before,
.C-Subtitle2025__title::after{
	background: var(--maincolor);
	content: "";
	display: block;
	width: .8rem;
	height: .8rem;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	z-index: -1;
}
.C-Subtitle2025__title::before{
	left: 0;
	transform: translate(calc(-100% - 9.5rem),-50%);
}
.C-Subtitle2025__title::after{
	right: 0;
	transform: translate(calc(100% + 9.5rem),-50%);
}
.C-Subtitle2025__title > span::before,
.C-Subtitle2025__title > span::after{
	background: var(--maincolor);
	content: "";
	display: block;
	width: 9.5rem;
	height: 1px;
	position: absolute;
	top: 50%;
	z-index: -1;
}
.C-Subtitle2025__title > span::before{
	left: 0;
	transform: translate(-100%,-50%);
}
.C-Subtitle2025__title > span::after{
	right: 0;
	transform: translate(100%,-50%);
}
.C-Subtitle2025__subtitle{
	color: var(--maincolor);
	font-size: 2rem;
	line-height: calc(3.5 / 2);
	font-weight: 700;
	letter-spacing: .01em;
}

/*----- ●付きタイトル */
.C-Maru_title2025{
	font-size:3rem;
	font-weight:600;
	font-family: var(--mincho);
	line-height:1.6;
	position:relative;
	letter-spacing: .05em;
}
.C-Maru_title2025_center{
	text-align: center;
}
.C-Maru_title2025 span{
	display: block;
	font-size:1.6rem;
	font-weight:500;
	font-family: var(--en);
	color:var(--maincolor);
	position:relative;
	padding-bottom:1em;
	letter-spacing: .06em;
	position:relative;
	padding-left:1.6rem;
	line-height:1.25;
}
.C-Maru_title2025 span::before{
	content:"";
	display: inline-block;
	width:1.2rem;
	height:1.2rem;
	background:var(--maincolor);
	border-radius: 50%;
	position:absolute;
	left:0;
	top:0.2em;
}
.C-Maru_title2025_center > span::before{
	display: none;
}
.C-Maru_title2025_center > span{
	padding-left:0;
}
.C-Maru_title2025_center span span{
	display: inline-block;
	padding-bottom:0;
}

/*----- ボタン */
.C-Button2025{
	width: 100%;
	max-width: 28.5rem;
	margin-left: auto;
	margin-right: auto;
}
.C-Button2025:not(:last-child){
	margin-bottom: 2.5rem;
}
.C-Button2025 > *{
	border: 1px solid var(--blackcolor);
	transition: var(--transition);
	background: var(--blackcolor);
	width: 100%;
	height: 4.8rem;
	border-radius: 2.4rem;
	font-size: 1.8rem;
	letter-spacing: 0;
	font-weight: 700;
	line-height: calc(3 / 2);
    text-align: center;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	box-shadow: 0 0 .6rem rgba(0, 0, .6, .18);
	opacity: 1 !important;
}
.C-Button2025 > *::after{
	transition: var(--transition);
    content: "";
    display: block;
    width: 1.8rem;
    height: 1.9rem;
    background-image: url(../images/common/icon_arrow-white-naked.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    right: 3rem;
    top: 50%;
    transform: translateY(-50%);
}
.C-Button2025 > *:hover{
	color: var(--blackcolor);
	background: #fff;
}
.C-Button2025 > *:hover::after{
	background-image: url(../images/common/icon_arrow-black-naked.svg);
	transform: translate(.5rem, -50%);
}
.C-Button2025-wrap{
	width: 100%;
	gap: 2.5rem 4.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.C-Button2025-wrap .C-Button2025{
	margin-bottom: 0;
	margin-left: 0;
	margin-right: 0;
}
/* 白色 */
.C-Button2025.-white > *{
	color: var(--blackcolor);
	background: #fff;
	box-shadow: none;
}
.C-Button2025.-white > *::after{
	background-image: url(../images/common/icon_arrow-black-naked.svg);
}
.C-Button2025.-white > *:hover{
	background: var(--blackcolor);
	color: #fff;
}
.C-Button2025.-white > *:hover::after{
    background-image: url(../images/common/icon_arrow-white-naked.svg);
}
/* 反転 */
.C-Button2025.-reverse2025 > *::after{
	right: unset;
	left: 3rem;
	transform: translateY(-50%) scale(-1,1);
}
.C-Button2025.-reverse2025 > *:hover::after{
	transform: translate(-.5rem,-50%) scale(-1,1);
}
/* 閉じるボタン */
.C-Button2025.-close2025{
	max-width: 23rem;
}
.C-Button2025.-close2025 > *{
	cursor: pointer;
}
.C-Button2025.-close2025 > *::after{
	content: "×";
	display: block;
	font-size: 2rem;
	line-height: 1;
	font-weight: 700;
	background: none;
	width: auto;
	height: auto;
}
.C-Button2025.-close2025 > *:hover::after{
	transform: translate(0, -50%);
}
/* 外部リンク */
.C-Button2025.-blank a::after{
	width: 2.1rem;
	height: 2.3rem;
	background-image: url(../images/common/icon_blank-white.svg);
}
.C-Button2025.-blank a:hover::after{
	background-image: url(../images/common/icon_blank-black.svg);
}


/*----- ページ内リンク */
.C-Pagelink2025{
	padding-top: var(--padding-topbottom);
}
.C-Pagelink2025__inner{
	display: flex;
	align-items: center;
	justify-content: center;
}
.C-Pagelink2025__item{
	width: 100%;
	position: relative;
}
.C-Pagelink2025__item:not(:last-child)::after{
	background: var(--blackcolor);
	content: "";
	display: block;
	width: 1px;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
}
.C-Pagelink2025__item a{
	width: 100%;
	height: 10rem;
	padding-bottom: 1.5rem;
	padding-top: 1.5rem;
	line-height: calc(2 / 1.6);
	font-weight: 700;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	flex-direction: column;
}
.C-Pagelink2025__item a::after{
	border-top: .7rem solid var(--blackcolor);
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: .5rem solid transparent;
	border-left: .5rem solid transparent;
	border-bottom: 0;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}
.C-Pagelink2025.-cut2 .C-Pagelink2025__item{
	width: calc(100% / 2);
}
.C-Pagelink2025.-cut3 .C-Pagelink2025__item{
	width: calc(100% / 3);
}
.C-Pagelink2025.-cut4 .C-Pagelink2025__item{
	width: calc(100% / 4);
}
.C-Pagelink2025.-cut5 .C-Pagelink2025__item{
	width: calc(100% / 5);
}

/*----- dl wrap dl list */
.dl_list{
	display: flex;
	flex-wrap:wrap;
}

.dl_list dt,
.dl_list dd{
	border-top:.1rem solid #DDDDDD;
}

.dl_list dt:last-of-type,
.dl_list dd:last-of-type{
	border-bottom:.1rem solid #DDDDDD;
}

.dl_list dt{
	background:#F5F6F7;
	padding:2rem 1rem 2rem 2rem;
	width:19rem;
	font-weight:700;
}

.dl_list dd{
	width:calc(100% - 19rem);
	padding:2rem 2rem 2rem 5.5rem;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:1100px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

	.C-Subtitle2025__title{
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

}
@media screen and (max-width:768px){

	/*----- テキスト */
	.C-Text2025{
		line-height: calc(6 / 2.8);
		font-weight: 400;
	}
	.C-Text_lm2026 {
		margin-left: 1.4rem;
	}

	/*----- 見出し */
	/* 大見出し */
	.C-Title2025{
		margin-bottom: 7rem;
	}
	.C-Title2025__en{
		font-size: 2.2rem;
		line-height: calc(3 / 2.2);
		position: relative;
	}
	.C-Title2025__en span{
		padding-left: 2.5rem;
	}
	.C-Title2025__en span::before{
		background: var(--maincolor);
		content: "";
		display: block;
		width: 1.7rem;
		height: 1.7rem;
		border-radius: 50%;
		position: absolute;
		left: 0;
		top: .25em;
	}
	.C-Title2025__jp{
		font-size: 4rem;
		line-height: calc(8 / 4);
	}
	.sp_none_202603 {
		display: none;
	}
	.pc_none_202603 {
		display: inline;
	}

	/* 中見出し */
	.C-Subtitle2025{
		margin-bottom: 4.5rem;
	}
	.C-Subtitle2025__title{
		width: 100%;
		font-size: 3.6rem;
		padding-left: 0;
		padding-right: 0;
		line-height: calc(5 / 3.6);
		letter-spacing: 0;
		text-align: center;
	}
	.bg_white_202603 {
		background: #fff !important;
	}
	.C-Subtitle2025__title::before{
		left: 0;
		transform: translate(0,-50%);
	}
	.C-Subtitle2025__title::after{
		right: 0;
		transform: translate(0,-50%);
	}
	.C-Subtitle2025__title > span{
		padding-left: 2.5rem;
		padding-right: 2.5rem;
		display: inline-block;
		text-align: center;
		background: #ECF2F7;
	}
	.C-Subtitle2025__title > span::before{
		width: 100%;
	}
	.C-Subtitle2025__title > span::before{
		transform: translate(0,-50%);
	}
	.C-Subtitle2025__title > span::after{
		display: none;
	}
	.C-Subtitle2025__subtitle{
		font-size: 2.8rem;
		line-height: calc(5 / 2.8);
	}

	/*----- ●付きタイトル */
	.C-Maru_title2025{
        font-size: 4rem;
        line-height: calc(5 / 4);
	}
	.C-Maru_title2025 span{
		font-size: 2.2rem;
		padding-left: 2.2rem;
	}
	.C-Maru_title2025 span::before{
		width: 1.7rem;
		height: 1.7rem;
		top: .2em;
	}

	/*----- ボタン */
	.C-Button2025{
		max-width: 45rem;
	}
	.C-Button2025:not(:last-child){
		margin-bottom: 2.5rem;
	}
	.C-Button2025 > *{
		height: 8.8rem;
		border-radius: 4.4rem;
		font-size: 3rem;
	}
	.C-Button2025 > *::after{
        width: 2.4rem;
        height: 2.5rem;
        right: 8rem;
	}
	.C-Button2025-wrap{
		width: 100%;
		gap: 2.5rem 4.5rem;
	}
	/* 反転 */
	/* .C-Button2025.-reverse2025 > *::after{
		left: 8rem;
	} */
	/* 閉じるボタン */
	.C-Button2025.-close2025{
		max-width: 45rem;
	}
	.C-Button2025.-close2025 > *::after{
		font-size: 3.9rem;
	}
	/* 外部リンク */
	.C-Button2025.-blank a::after{
		width: 3rem;
		height: 3.2rem;
	}


	/*----- ページ内リンク */
	.C-Pagelink2025{
		margin-bottom: 1rem;
	}
	.C-Pagelink2025__inner{
		gap: 6.8rem 0;
		flex-wrap: wrap;
	}
	.C-Pagelink2025__item:nth-of-type(2n){
		margin-left: -1px;
	}
	.C-Pagelink2025__item::before{
		background: var(--blackcolor);
		content: "";
		display: block;
		width: 1px;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
	}
	.C-Pagelink2025__item::after{
		background: var(--blackcolor);
		content: "";
		display: block;
		width: 1px;
		height: 100%;
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
	}
	.C-Pagelink2025__item a{
		height: 11.4rem;
		padding-bottom: 3rem;
		padding-top: 1rem;
		padding-right: 1rem;
		padding-left: 1rem;
		line-height: calc(3.2 / 2.8);
		font-size: 90%;
	}
	.C-Pagelink2025__item a::after{
		border-top-width: 1.4rem;
		border-right-width: 1.1rem;
		border-left-width: 1.1rem;
		bottom: 1.4rem;
	}
	.C-Pagelink2025.-cut2 .C-Pagelink2025__item{
		width: calc(100% / 2);
	}
	.C-Pagelink2025.-cut3 .C-Pagelink2025__item{
		width: calc(100% / 2);
	}
	.C-Pagelink2025.-cut4 .C-Pagelink2025__item{
		width: calc(100% / 2);
	}
	.C-Pagelink2025.-cut5 .C-Pagelink2025__item{
		width: calc(100% / 2);
	}

	.dl_list dt{
		padding: 4rem 2rem 4rem 3rem;
		width: 100%;
	}

	.dl_list dd{
		width: 100%;
		padding: 4rem 0rem;
	}

	.dl_list dd:last-of-type{
		border-top: none;
	}

}



/*-------------------------------
	ヘッダー
-------------------------------*/

.header2025{
	transition: none;
	width: 100%;
	height: 13.5rem;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	z-index: 9900;
	transform: translateY(0);
	opacity: 1;
	background: #fff;
}
.header2025::before{
	transition: var(--transition);
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	background: rgba(0,0,0,.5);
	visibility: hidden;
	opacity: 0;
}

.header__inner2025{
	transition: var(--transition);
	padding-top: .8rem;
	background: #fff;
}
.header-top2025{
	padding-left: calc(var(--padding-leftright) + 1.5rem);
	padding-right: calc(var(--padding-leftright) + 1.5rem);
	border-bottom: 1px solid var(--blackcolor);
	transition: var(--transition);
	width: 100%;
	padding-bottom: .6rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.header-logo2025{
	width: 23.5rem;
	height: 5rem;
	display: inline-block;
	object-fit: contain;
}
.header-logo2025 a{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	background-image: url(../images/common/logo.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	opacity: 1 !important;
}
.header-logo2025 img{
	width: 100%;
	opacity: 0;
}
.header-top__nav2025{
	width: calc(100% - 25rem);
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.header-top__nav-item2025 a{
	color: var(--blackcolor);
	line-height: 1;
	padding-left: 2.2rem;
	padding-top: .2rem;
	padding-bottom: .2rem;
	font-size: 1.4rem;
	font-weight: 700;
	position: relative;
	display: block;
	overflow: hidden;
	opacity: 1 !important;
}
.header-top__nav-item2025 a::before{
	content: "";
	display: block;
	width: 1.6rem;
	height: 1.6rem;
	background-image: url(../images/common/icon_arrow-black-border.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(calc(-50%));
}
.header-top__nav-item2025 a::after{
	transition: var(--transition);
	background: var(--maincolor);
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
	transform: translateX(calc(-100% - 1px));
}
.header-top__nav-item2025 a:hover{
	color: var(--maincolor);
}
.header-top__nav-item2025 a:hover::before{
	background-image: url(../images/common/icon_arrow-circle1.svg);
}
.header-top__nav-item2025 a:hover::after{
	transform: translateX(0%);
}
.header-top__nav-item2025:not(:first-child){
	margin-left: 2.6rem;
}
.header-top__nav-youtube2025{
	border: 1px solid var(--blackcolor);
	width: 2.8rem;
	margin-left: 4rem;
	border-radius: 50%;
}
.header-top__nav-youtube2025 a{
	line-height: 1;
	display: block;
}
.header-top__nav-youtube2025 img{
	width: 100%;
}

.header-bottom2025{
	padding-left: calc(var(--padding-leftright) + 1.5rem);
	padding-right: calc(var(--padding-leftright) + 1.5rem);
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.header-bottom__nav2025{
	width: calc(100% - 35.2rem);
	padding-right: 5.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.header-bottom__nav-item2025{
	width: 25%;
	height: 7rem;
	overflow: hidden;
}
.header-bottom__nav-item2025 > a,
.header-bottom__nav-item2025 > .a2025{
	transition: var(--transition);
	color: var(--blackcolor);
	width: 100%;
	height: 100%;
	padding-top: 1.6rem;
	padding-bottom: 1.6rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	cursor: pointer;
	position: relative;
	opacity: 1 !important;
}
.header-bottom__nav-item2025:hover > a,
.header-bottom__nav-item2025:hover > .a2025{
	color: #B0BAC4 !important;
}
.header-bottom__nav-item2025 > a::before,
.header-bottom__nav-item2025 > .a2025::before{
	transition: var(--transition);
	background: var(--maincolor);
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	position: absolute;
	left: -100%;
	bottom: 0;
	right: 0;
}
.header-bottom__nav-item2025:has(.nav__child:hover) > a::before,
.header-bottom__nav-item2025:has(.nav__child:hover) > .a2025::before,
.header-bottom__nav-item2025 > a:hover::before,
.header-bottom__nav-item2025 > .a2025:hover::before{
	left: 0;
}
.header-bottom__nav-item2025 > a > span,
.header-bottom__nav-item2025 > .a2025 > span{
	width: 100%;
    height: 100%;
	line-height: 1.25;
	letter-spacing: .06em;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
}
.header-bottom__nav-item2025 > a > span::before,
.header-bottom__nav-item2025 > .a2025 > span::before,
.header-bottom__nav-item2025:last-child > a > span::after,
.header-bottom__nav-item2025:last-child > .a2025 > span::after{
	background: var(--blackcolor);
	content: "";
	display: block;
	width: 1px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
}
.header-bottom__nav-item2025:last-child > a > span::after,
.header-bottom__nav-item2025:last-child > .a2025 > span::after{
	left: unset;
	right: 0;
}
.header-bottom__nav-button-wrap2025{
	width: 30rem;
	height: 4.5rem;
	border-radius: 4.3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	box-shadow: 0 0 .6rem rgba(0,0,0,.09);
}
.header-bottom__nav-button2025{
	width: 50%;
	height: 100%;
	position: relative;
}
.header-bottom__nav-button2025:not(:last-child)::after{
	content: "";
	display: block;
	width: 1px;
	height:  calc(100% - 2.8rem);
	background: #fff;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
.header-bottom__nav-button2025 a{
	border: 1px solid var(--maincolor);
	background: var(--maincolor);
	width: 100%;
	height: 100%;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	opacity: 1 !important;
}
.header-bottom__nav-button2025 a::before{
	content: "";
	display: block;
	margin-right: 1rem;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}
.header-bottom__nav-button.-mail a{
	border-top-left-radius: 4.3rem;
	border-bottom-left-radius: 4.3rem;
	border-right: none;
}
.header-bottom__nav-button2025.-mail2025 a::before{
	width: 1.7rem;
	height: 1.3rem;
	background-image: url(../images/common/icon_mail-white.svg);
}
.header-bottom__nav-button2025.-req2025 a{
	border-top-right-radius: 4.3rem;
	border-bottom-right-radius: 4.3rem;
	border-left: none;
}
.header-bottom__nav-button2025.-req2025 a::before{
	width: 1.8rem;
	height: 2.1rem;
	background-image: url(../images/common/icon_req-white.svg);
}
.header-bottom__nav-button2025 a:hover{
	color: var(--maincolor);
	background: #fff;
}
.header-bottom__nav-button2025.-mail2025 a:hover::before{
	background-image: url(../images/common/icon_mail.svg);
}
.header-bottom__nav-button2025.-req2025 a:hover::before{
	background-image: url(../images/common/icon_req.svg);
}

.nav__child2025{
	transition: var(--transition);
	width: 100%;
	height: 0;
	position: absolute;
	top: 100%;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	text-align: center;
	overflow: hidden;	
	background: #ECF2F7;
}
.nav__child__inner2025{
	width: 100%;
	padding-top: 2rem;
	padding-bottom: 2rem;
	min-height: 8rem;
	display: flex;
	align-items: flex-start;
	justify-content: center;
}
.nav__child-title2025{
	width: 19rem;
	padding-top: 3.8rem;
}
.nav__child-title2025 a{
	color: var(--maincolor);
	font-size: 2rem;
	font-weight: 700;
	line-height: calc(3 / 2);
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-align: left;
	position: relative;
	overflow: hidden;
	opacity: 1 !important;
}
.nav__child-title2025 a::before{
	transition: var(--transition);
	background: var(--maincolor);
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	position: absolute;
	left: -100%;
	bottom: 0;
}
.nav__child-title2025 a:hover::before{
	left: 0%;
}
.nav__child-title2025 a::after{
	transition: var(--transition);
	content: "";
	display: block;
	width: 2.8rem;
	height: 2.8rem;
	background-image: url(../images/common/icon_arrow-circle2.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}
.nav__child-title2025 span{
	width: calc(100% - 2.8rem);
	line-height: calc(3 / 2);
	letter-spacing: 0;
	display: block;
}
.nav__child-title-text2025{
	font-family: var(--mincho);
	color: var(--maincolor);
	font-size: 1.7rem;
	font-weight: 700;
	line-height: calc(3 / 1.7);
	white-space: nowrap;
	margin-top: 4rem;
}
.nav__child-item-wrap2025{
	width: calc(100% - 19rem);
	padding-left: 9.5rem;
	column-gap: 4rem;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.nav__child-item2025{
	width: calc((100% - (4rem * 2)) / 3);
}
.nav__child-item2025 > a{
	border-bottom: 1px solid var(--blackcolor);
	color: var(--blackcolor);
	padding-bottom: .4rem;
	margin-bottom: 2.4rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	opacity: 1 !important;
}
.nav__child-item2025 > a::after{
	content: "";
	display: block;
	width: 1.6rem;
	height: 1.6rem;
	background-image: url(../images/common/icon_arrow-black-border.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}
.nav__child-item2025 > a:hover{
	border-color: var(--maincolor);
}
.nav__child-item2025 > a:hover{
	color: var(--maincolor);
}
.nav__child-item2025 > a:hover::after{
	background-image: url(../images/common/icon_arrow-border.svg);
}
.nav__child-item-text2025{
	width: calc(100% - 1.6rem);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
	display: block;
}
.nav__grandchild-item2025:not(:last-child){
	margin-bottom: 2rem;
}
.nav__child-item-text-sub2025{
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0;
	line-height: calc(2.6 / 1.4);
	display: block;
}
.nav__grandchild-item2025 > a{
	color: var(--blackcolor);
	width: 100%;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	opacity: 1 !important;
}
.nav__grandchild-item2025 > a::after{
	content: "";
	display: block;
	width: 1.6rem;
	height: 1.6rem;
	background-image: url(../images/common/icon_arrow-black-border.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}
.nav__grandchild-item2025 > a:hover{
	color: var(--maincolor);
}
.nav__grandchild-item2025 > a:hover::after{
	background-image: url(../images/common/icon_arrow-border.svg);
}
.nav__grandchild-item-text2025{
	width: calc(100% - 1.6rem);
	line-height: calc(2 / 1.6);
	font-weight: 700;
	display: inline-block;
}
.nav__grandchild-item2025.-button2025 > a{
	border: 1px solid var(--blackcolor);
	border-radius: 10rem;
	width: 100%;
	height: 4rem;
	font-size: 1.5rem;
	padding: .5rem 1.5rem;
	letter-spacing: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.nav__grandchild-item2025.-button2025 > a:hover{
	border-color: var(--maincolor);
	background: var(--maincolor);
	color: #fff;
}
.nav__grandchild-item2025.-button2025 > a:hover::after{
	background-image: url(../images/common/icon_arrow-white-border.svg);
}
.nav__grandchild-item2025.-bluebutton2025{
	margin-top: 4.6rem;
}
.nav__grandchild-item2025.-bluebutton2025 > a{
	border: 1px solid var(--maincolor);
	background: var(--maincolor);
	border-radius: 10rem;
	width: 100%;
	height: 4rem;
	font-size: 1.5rem;
	padding: .5rem 1.5rem;
	letter-spacing: 0;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.nav__grandchild-item2025.-bluebutton2025 > a::after{
	background-image: url(../images/common/icon_arrow-white-border.svg);
}
.nav__grandchild-item2025.-bluebutton2025 > a:hover{
	color: var(--maincolor);
	background: transparent;
}
.nav__grandchild-item2025.-bluebutton2025 > a:hover::after{
	background-image: url(../images/common/icon_arrow-border.svg);
}

/* メニューをhoverした時のスタイル（子ナビ） */
.header2025:has(.nav__child2025:hover)::before,
.header2025:has(.header-bottom__nav-item2025 .a2025:hover)::before{
	visibility: visible;
	opacity: 1;
}
/* 入居者様 */
.header-bottom__nav-item2025:nth-of-type(1):hover .nav__child2025{
	height: 36.7rem;
}
/* テナント様 */
.header-bottom__nav-item2025:nth-of-type(2):hover .nav__child2025{
	height: 24rem;
}
/* オーナー様 */
.header-bottom__nav-item2025:nth-of-type(3):hover .nav__child2025{
	height: 36rem;
}
/* ミユキのリノベ様 */
.header-bottom__nav-item2025:nth-of-type(4):hover .nav__child2025{
	height: 13rem;
}

@media screen and (min-width:769px) , print{
	.sp-nav2025{
		display: none;
	}
}
@media screen and (max-width:1240px) and (min-width: 769px){

	.header-top2025{
		padding-left: var(--padding-leftright);
		padding-right: var(--padding-leftright);
	}
	.header-top__nav-item2025:not(:first-child){
		margin-left: 1.5rem;
	}
	.header-top__nav-youtube2025{
		margin-left: 2rem;
	}
	.header-bottom2025{
		padding-left: var(--padding-leftright);
		padding-right: var(--padding-leftright);
	}
	.header-bottom__nav2025{
		width: calc(100% - 30rem);
		padding-right: 2.5rem;
	}
	.header-bottom__nav-item2025 a{
		letter-spacing: 0;
	}
	.header-bottom__nav-button-wrap2025{
		width: 30rem;
	}

}
@media screen and (max-width:1100px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

	.header2025{
		height: auto;
	}
	.header__inner2025{
		padding-top: 2.4rem;
		padding-bottom: 2.8rem;
	}
	.header-top2025{
		height: 8.8rem;
		padding-left: 3rem;
		padding-bottom: 0;
		margin-bottom: 0;
		border-bottom: none;
	}
	.header-logo2025{
		width: 35.6rem;
	}
	.header-logo2025 a{
		width: 100%;
	}
	/* ナビオープン時 */
	.menu-button2025.is_open2025 + .header2025 .header-logo2025 a::before{
		background-image: url(../images/common/logo.png);
		background-image: image-set(url(../images/common/logo.png) 1x, url(../images/common/logo@2x.png) 2x);
	}

	/* 子ナビが出てきたときに一番下の線を消す */
	.sp-nav__item2025:has(.-current2025) {
		border-bottom: none !important;
	}

	/*----- ナビ */
	.header-nav2025{
		display: none;
	}
	.header-top__nav2025{
		display: none;
	}
	.header-bottom2025{
		display: none;
	}

	.sp-nav2025{
		display: none;
		position: fixed;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: 9000;
		background: #fff;
		overflow: scroll;
	}
	.sp-nav__inner2025{
		padding-top: 16.5rem;
		padding-bottom: 10rem;
	}
	.sp-nav__item2025{
		border-bottom: 1px solid var(--graycolor);
		padding-top: 1rem;
		padding-bottom: 1rem;
		position: relative;
	}
	.sp-nav__item2025:first-child{
		border-top: 1px solid var(--graycolor);
	}
	.sp-nav__item2025 > a,
	.sp-nav__item-parent2025{
		color: var(--blackcolor);
		width: 100%;
		font-size: 3rem;
		font-weight: 700;
		letter-spacing: .06em;
		padding-left: 3rem;
		padding-right: 3rem;
		border-radius: 1.8rem;
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}
	.sp-nav__item2025:not(.-small) > a,
	.sp-nav__item-parent2025{
		height: 14rem;
	}
	.sp-nav__item-parent2025{
		color: var(--blackcolor);
		transition: var(--transition);
		width: 100%;
	}
	/*.sp-nav__item-parent2025 > a{
		color: var(--blackcolor);
		width: 100%;
		display: block;
	}*/
	.sp-nav__item-parent2025__inner{
		color: var(--blackcolor);
		width: 100%;
		display: block;
	}
	.sp-nav__item2025:not(.-small2025):not(:has(.sp-nav__child2025)) > a::after{
		content: "";
		display: block;
		width: 6.6rem;
		height: 6.6rem;
		background-image: url(../images/common/icon_arrow-circle1.svg);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center center;
	}
	.sp-nav__item-parent2025.-current2025{
		background: rgba(176,186,196,.21);
	}
	.sp-nav__item-text2025{
		width: calc(100% - 6.6rem);
		height: 100%;
		line-height: calc(6 / 4);
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}

	/* 小さいナビ */
	.sp-nav__item2025.-small2025 > a{
		height: 9rem;
		font-weight: 500;
	}
	.sp-nav__item2025.-small2025 > a::after{
		content: "";
		display: block;
		width: 2.8rem;
		height: 3rem;
		background-image: url(../images/common/icon_arrow-black-naked.svg);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center center;
	}
	.sp-nav__item2025.-small2025 .sp-nav__item-text2025{
		width: calc(100% - 2.8rem);
	}
	/* 子ナビ持ち */
	.sp-nav__item-button2025{
		width: 6.6rem;
		height: 6.6rem;
		background-image: url(../images/common/icon_open.svg);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center center;
		display: block;
	}
	.sp-nav__item-button2025.-current2025{
		background-image: url(../images/common/icon_close.svg);
	}
	.sp-nav__child2025{
		display: none;
		/*padding-left: 6rem;*/
		padding-top: 6rem;
		padding-bottom: 6.5rem;
	}
	.sp-nav__child-item2025:not(:last-child){
		margin-bottom: 5rem;
	}
	.sp-nav__child-item2025 > a{
		padding-right: 3.5rem;
		padding-left: 3rem;
		border-bottom: 1px solid var(--graycolor);
		color: var(--blackcolor);
		font-size: 3rem;
		padding-bottom: 2.2rem;
		font-weight: 500;
		line-height: calc(6 / 4);
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.sp-nav__child-item2025 > a::after{
		content: "";
		display: block;
		width: 4.1rem;
		height: 4.1rem;
		background-image: url(../images/common/icon_arrow-black-border.svg);
		/*background-size: contain;*/
		background-size: 90% auto;
		background-repeat: no-repeat;
		background-position: center center;
	}
	.sp-nav__child-item-text2025{
		width: calc(100% - 4.1rem);
		display: block;
		font-weight: 700;
	}
	.fontweight_202603 {
		font-weight: 500 !important;
	}
	.sp-nav__child-item-text-sub2025{
		font-size: 2.4rem;
		display: block;
	}
	.sp-nav__grandchild2025{
		/*padding-left: 6rem;*/
		width: 88%;
		margin: 0 auto;
	}
	.sp-nav__grandchild-item2025/*:not(:last-child)*/{
		border-bottom: 1px solid #ddd;
	}
	.sp-nav__grandchild-item2025 a{
		color: var(--blackcolor);
		width: 100%;
		padding-top: 2rem;
		padding-bottom: 2rem;
		/*padding-right: 3rem;*/
		padding-right: 2rem;
		font-size: 3rem;
		letter-spacing: 0;
		font-weight: 500;
		line-height: calc(6 / 4);
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}
	.sp-nav__grandchild-item2025 a::before{
		background: var(--maincolor);
		content: "";
		display: block;
		width: 2rem;
		height: 2rem;
		margin-left: 2rem;
		border-radius: 50%;
	}
	.sp-nav__grandchild-item-text2025{
		width: calc(100% - 4.5rem);
		padding-left: 1.4rem;
		line-height: calc(6 / 5);
		display: flex;
		align-items: flex-start;
		justify-content: flex-start;
		flex-direction: column;
	}
	.sp-nav__grandchild-item2025.-button2025{
		height: 8.8rem;
		margin-top: 2.6rem;
		border-bottom: none;
	}
	.sp-nav__grandchild-item2025.-button2025 a{
		border: 1px solid var(--blackcolor);
		padding: 1rem 3rem 1rem 4.5rem;
		height: 100%;
		border-radius: 4.4rem;
		font-weight: 700;
	}
	.sp-nav__grandchild-item2025.-button2025 a::before{
		display: none;
	}
	.sp-nav__grandchild-item2025.-button2025 a::after{
        content: "";
        display: block;
        width: 4.1rem;
        height: 4.1rem;
        background-image: url(../images/common/icon_arrow-black-border.svg);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center center;
	}
	.sp-nav__grandchild-item2025.-button2025 a span{
		padding-left: 0;
	}
	.sp-nav-last2025{
		padding-top: 5.6rem;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.sp-nav-last__button2025{
		width: calc(100% - 8.6rem);
		padding-right: 3.4rem;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.sp-nav-last__button-item2025{
		background: var(--maincolor);
		width: 50%;
		position: relative;
	}
	.sp-nav-last__button-item2025:not(:last-child)::after{
		content: "";
		display: block;
		width: 1px;
		height: calc(100% - 4rem);
		background: #fff;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	.sp-nav-last__button-item2025 a{
		width: 100%;
		height: 8.8rem;
		font-weight: 700;
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.sp-nav-last__button-item2025 a::before{
		content: "";
		display: block;
		margin-right: 1rem;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center center;
	}
	.sp-nav-last__button-item2025.-mail2025{
		border-top-left-radius: 4.4rem;
		border-bottom-left-radius: 4.4rem;
	}
	.sp-nav-last__button-item2025.-mail2025 a::before{
		width: 3.4rem;
		height: 2.6rem;
		background-image: url(../images/common/icon_mail-white.svg);
	}
	.sp-nav-last__button-item2025.-req2025{
		border-top-right-radius: 4.4rem;
		border-bottom-right-radius: 4.4rem;
	}
	.sp-nav-last__button-item2025.-req2025 a::before{
		width: 3.6rem;
		height: 4.2rem;
		background-image: url(../images/common/icon_req-white.svg);
	}
	
	.sp-nav-last__youtube2025{
		width: 8.6rem;
		height: 8.6rem;
	}
	.sp-nav-last__youtube2025 a{
		border-radius: 50%;
		border: 1px solid var(--blackcolor);
		display: block;
	}
	.sp-nav-last__youtube2025 img{
		width: 100%;
	}

	/*----- ハンバーガー */
	.menu-button2025 {
		transition: var(--transition);
		background: var(--maincolor);
		width: 8.8rem;
		height: 8.8rem;
		padding: 3rem 2.7rem;
		border-radius: 1.4rem;
		box-sizing: border-box;
		display: block !important;
		z-index: 9990;
		cursor: pointer;
		position: fixed;
		right: 3rem;
		top: 2.4rem;
	}
	.menu-button2025 i{
		transition: var(--transition);
		display: block;
		width: 100%;
		height: 2px;
		position: relative;
		left: 0px;
		top: calc(1.4rem - 1px);
		background: #fff;
	}
	.menu-button2025 i:before,
	.menu-button2025 i:after{
		transition: var(--transition);
		content: "";
		display: block;
		width: 100%;
		height: 2px;
		position: absolute;
		-webkit-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
		background: #fff;
	}
	.menu-button2025 i:before{
		-webkit-transform: translateY(1.4rem);
		-ms-transform: translateY(1.4rem);
		transform: translateY(1.4rem);;
	}
	.menu-button2025 i:after{
		-webkit-transform: translateY(-1.4rem);
		-ms-transform: translateY(-1.4rem);
		transform: translateY(-1.4rem);
	}
	.menu-button2025.is_open2025{
		background: var(--maincolor);
	}
	.menu-button2025.is_open2025 i{
		background: transparent;
	}
	.menu-button2025.is_open2025 i:after{
		transform:translateY(0px) rotate(-45deg);
		background: #fff;
	}
	.menu-button2025.is_open2025 i:before{
		transform:translateY(0px) rotate(45deg);
		background: #fff;
	}

}



/*-------------------------------
	フッター
-------------------------------*/

.footer2025{
	background: var(--blackcolor);
    padding-top: 15rem;
    margin-top: -5rem;
    overflow: hidden;
    color: #fff;
}
.footer-top2025{
	width: 100%;
	margin-bottom: 9.8rem;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}
.footer-top__left2025{
	width: 57rem;
	padding-right: 4rem;
}
.footer-top__logo2025{
	max-width: 37.4rem;
	margin-bottom: 3.8rem;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.footer-top__logo2025 img{
	width: 100%;
}
.footer-top__address2025{
	margin-bottom: 4.8rem;
}
.footer-top__address-text2025{
	font-size: 1.4rem;
	margin-bottom: 1.2rem;
	font-weight: 500;
	letter-spacing: .02em;
}
.footer-top__address-map2025{
	width: 15rem;
	display: inline-block;
}
.footer-top__address-map2025 a{
	width: 100%;
	font-size: 1.4rem;
	padding-bottom: .6rem;
	font-weight: 500;
	letter-spacing: .02em;
	border-bottom: 1px solid #fff;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.footer-top__address-map2025 a::after{
	content: "";
	display: block;
	width: 1.4rem;
	height: 1.5rem;
	background-image: url(../images/common/icon_blank-white.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

.footer-top__nav2025{
	width: 100%;
	padding-top: 4rem;
	border-top: 1px solid #fff;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
.footer-top__nav-item2025{
	min-width: 21.2rem;
	line-height: 1;
	display: block;
}
.footer-top__nav-item2025:not(:nth-last-of-type(-n+2)){
	margin-bottom: 2.6rem;
}
.footer-top__nav-item2025:nth-of-type(1){
	order: 1;
}
.footer-top__nav-item2025:nth-of-type(2){
	order: 3;
}
.footer-top__nav-item2025:nth-of-type(3){
	order: 5;
}
.footer-top__nav-item2025:nth-of-type(4){
	order: 7;
}
.footer-top__nav-item2025:nth-of-type(5){
	order: 9;
}
.footer-top__nav-item2025:nth-of-type(6){
	order: 2;
}
.footer-top__nav-item2025:nth-of-type(7){
	order: 4;
}
.footer-top__nav-item2025:nth-of-type(8){
	order: 6;
}
.footer-top__nav-item2025:nth-of-type(9){
	order: 8;
}
.footer-top__nav-item2025 a{
	padding-left: 2.2rem;
	letter-spacing: 0;
	font-weight: 500;
	line-height: 1;
	color: #fff;
	position: relative;
	display: inline-block;
	opacity: 1 !important;
}
.footer-top__nav-item2025 a::before{
	transition: var(--transition);
	content: "";
	display: block;
	width: 1.6rem;
	height: 1.6rem;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-image: url(../images/common/icon_arrow-white-border.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
.footer-top__nav-item2025 a:hover::before{
	transform: translate(.25rem,-50%);
}

.footer-top__map2025{
	width: calc(100% - 57rem);
}
.footer-top__map-inner2025{
	width: calc(100% + (100vw - var(--maxwidth)) / 2 + var(--padding-leftright)); /* エリアの要素＋コンテンツエリアを除いた右側の余白＋padding-rightの余白 */
	height: 100%;
	border-top-left-radius: 2rem;
	border-bottom-left-radius: 2rem;
	overflow: hidden;
}
.footer-top__map2025 iframe{
	width: calc(100% + 50rem);
	height: calc(100% + 50rem);
	transform: translate(-25rem,-25rem);
}

.footer-bottom2025{
	width: 100%;
	padding-bottom: 10rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.footer-bottom-tel2025{
	width: calc(100% - 55rem);
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.footer-bottom-tel__title2025{
	font-weight: 700;
	letter-spacing: .01em;
	line-height: calc(2.5 / 1.6);
}
.footer-bottom-tel__body2025{
	border-left: 1px solid #fff;
	padding-left: 1.8rem;
}
.footer-bottom-tel__tel2025{
	font-family: var(--en);
	font-size: 4.8rem;
	letter-spacing: 0;
	font-weight: 700;
	line-height: 1;
	display: inline-block;
}
.footer-bottom-tel__tel2025::before{
	content: attr(data-tag);
	font-size: 2.5rem;
	letter-spacing: 0;
	font-weight: 700;
	line-height: 1;
	display: inline-block;
}
.footer-bottom-tel__time2025{
	font-size: 1.8rem;
	font-weight: 500;
}
.footer-bottom-button2025{
	width: 55rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.footer-bottom-button__item2025{
	width: calc((100% - 2rem) / 2);
	border-radius: 4rem;
	overflow: hidden;
}
.footer-bottom-button__item2025 a{
	color: var(--blackcolor);
	width: 100%;
	height: 8rem;
	font-size: 2rem;
	padding-left: 2rem;
	font-weight: 700;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	opacity: 1 !important;
}
.footer-bottom-button__item2025 a::before{
	content: "";
	display: block;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
	left: 2rem;
	top: 50%;
	transform: translateY(-50%);
}
.footer-bottom-button__item2025.-req2025 a::before{
	background-image: url(../images/common/icon_req-black.svg);
	width: 2.5rem;
	height: 2.9rem;
}
.footer-bottom-button__item2025.-mail2025 a::before{
	background-image: url(../images/common/icon_mail-black.svg);
	width: 2.3rem;
	height: 1.8rem;
}
.footer-bottom-button__item2025 a:hover{
	background: #ffd23c;
}

.footer-last2025{
	padding-top: 2.8rem;
	padding-bottom: 2.6rem;
	border-top: 1px solid #fff;
}
.footer-last__inner2025{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.footer-last__policy2025{
	line-height: 1;
}
.footer-last__policy2025 a{
	font-size: 1.4rem;
	line-height: 1;
	font-weight: 700;
	color: #fff;
	display: inline-block;
}
.footer-last__copyright2025{
	font-size: 1.2rem;
	letter-spacing: .02em;
	font-weight: 500;
	line-height: 1;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

	.footer-top__left2025{
		width: 50%;
	}
	.footer-top__nav-item2025{
		width: calc(50% - .5em);
		min-width: unset;
	}
	.footer-top__nav-item2025 a{
		line-height: 1.25;
	}
	.footer-top__map2025{
		width: 50%;
	}

	.footer-top__map-inner2025{
		width: calc(100% + var(--padding-leftright));
	}

	.footer-bottom-tel2025{
		width: 45%;
		flex-direction: column;
	}
	.footer-bottom-tel__title2025{
		padding-bottom: .5rem;
		margin-bottom: 1.5rem;
		border-bottom: 1px solid #fff;
	}
	.footer-bottom-tel__title2025 br{
		display: none;
	}
	.footer-bottom-tel__body2025{
		border-left: none;
		padding-left: 0;
		text-align: center;
	}
	.footer-bottom-button2025{
		width: 55%;
	}
	.footer-bottom-button__item2025 a{
		letter-spacing: 0;
	}

}
@media screen and (max-width:1100px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

	.footer-top__nav2025{
		flex-direction: column;
	}
	.footer-top__nav-item2025{
		width: 100%;
	}
	.footer-top__nav-item2025:not(:last-child){
		margin-bottom: 2.6rem;
	}

	.footer-bottom2025{
		flex-direction: column;
	}
	.footer-bottom-tel2025{
		width: 100%;
		margin-bottom: 2.5rem;
	}
	.footer-bottom-button2025{
		width: calc(100% - (var(--padding-leftright) * 2));
	}

}
@media screen and (max-width:768px){

	.footer2025{
		padding-top: 15.8rem;
	}
	.footer-top2025{
		margin-bottom: 5.5rem;
		padding-bottom: 7.4rem;
		border-bottom: 1px solid #fff;
		flex-direction: column;
	}
	.footer-top__left2025{
		width: 100%;
		padding-right: 0;
	}
	.footer-top__logo2025{
		max-width: 44.2rem;
		margin-bottom: 3.2rem;
		margin-left: auto;
		margin-right: auto;
		justify-content: center;
	}
	.footer-top__address2025{
		margin-bottom: 0;
	}
	.footer-top__address-text2025{
		font-size: 2.4rem;
		margin-bottom: 3rem;
		letter-spacing: .01em;
		text-align: center;
	}
	.footer-top__address-map2025{
		width: 30rem;
		margin-left: auto;
		margin-right: auto;
		display: block;
	}
	.footer-top__address-map2025 a{
		font-size: 3rem;
		padding-bottom: 1.2rem;
		letter-spacing: 0;
	}
	.footer-top__address-map2025 a::after{
		width: 2.7rem;
		height: 3rem;
	}

	.footer-top__nav2025{
		display: none;
	}

	.footer-top__map2025{
		display: none;
	}

	.footer-bottom2025{
		width: 100%;
		padding-bottom: 4rem;
		flex-direction: column;
	}
	.footer-bottom-tel2025{
		width: 100%;
		margin-bottom: 2.3rem;
		flex-direction: column;
	}
	.footer-bottom-tel__title2025{
		font-size: 2.4rem;
		margin-bottom: 1rem;
		line-height: 1;
	}
	.footer-bottom-tel__title2025 br{
		display: none;
	}
	.footer-bottom-tel__body2025{
		border-left: none;
		padding-left: 0;
	}
	.footer-bottom-tel__tel2025{
		font-size: 6.8rem;
		margin-bottom: 1rem;
	}
	.footer-bottom-tel__tel2025::before{
		font-size: 3.1rem;
	}
	.footer-bottom-tel__time2025{
		font-size: 2.4rem;
		text-align: center;
	}
	.footer-bottom-button2025{
		width: 100%;
	}
	.footer-bottom-button__item2025{
		width: calc((100% - 3rem) / 2);
		border-radius: 4.4rem;
	}
	.footer-bottom-button__item2025 a{
		height: 8.8rem;
		font-size: 2.4rem;
		padding-left: 2.5rem;
	}
	.footer-bottom-button__item2025 a::before{
		left: 3.4rem;
	}

	.footer-last2025{
		padding-top: 0;
		padding-bottom: 0;
		border-top: none;
	}
	.footer-last__inner2025{
		flex-direction: column;
	}
	.footer-last__policy2025{
		line-height: 1;
		margin-bottom: 3.2rem;
	}
	.footer-last__policy2025 a{
		font-size: 2.4rem;
		letter-spacing: .02em;
		font-weight: 400;
		text-decoration: underline;
		display: block;
	}
	.footer-last__copyright2025{
		width: 100%;
		padding-top: 1.8rem;
		padding-bottom: 1.5rem;
		border-top: 1px solid #fff;
		font-size: 2rem;
		text-align: center;
	}

}



/*-------------------------------
	キービジュアル
-------------------------------*/

.Keyvisual2025{
	width: 100%;
	margin-bottom: 1.4rem;
	padding-top: 13.5rem;
	border-bottom-left-radius: 3rem;
	overflow: hidden;
}
.Keyvisual__inner-wrap2025::before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 4000;
	background: #1B3C52;
	opacity: .3;
}
.Keyvisual__inner-wrap2025{
	width: 100%;
	border-bottom-right-radius: 21.6rem;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
	overflow: hidden;
}
.Keyvisual__inner2025{
	width: 100%;
	height: 41.6rem;
}
.Keyvisual__title2025{
	width: 100%;
	height: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-direction: column;
	position: relative;
	z-index: 6000;
	color: #fff;
}
.Keyvisual__title-tag2025{
	color: var(--blackcolor);
	height: 5rem;
	border-top-right-radius: 2.5rem;
	border-bottom-right-radius: 2.5rem;
	font-size: 3rem;
	margin-bottom: 2.3rem;
	letter-spacing: .1em;
	padding: 1rem 4rem .5rem 2rem;
	font-weight: 700;
	line-height: 1;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.Keyvisual__title-main2025{
	font-family: var(--mincho);
	font-size: 4rem;
	margin-bottom: 1.6rem;
	font-weight: 700;
	line-height: calc(6 / 4);
	letter-spacing: .05em;
}
.Keyvisual__title-main2025 span{
	font-size: 3rem;
	font-weight: 700;
	padding-top: 1rem;
	line-height: calc(6 / 4);
	letter-spacing: .05em;
	display: block;
}
.Keyvisual__title-en2025{
	font-family: var(--en);
	line-height: 1;
	font-weight: 500;
	letter-spacing: .06em;
	display: block;
}

/*----- 会社案内用 */
.Keyvisual-corp2025__inner{
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.Keyvisual-corp2025__content{
	width: calc(100% - 53rem);
	padding-bottom: 6.8rem;
	padding-right: 9.5rem;
	position: relative;
}
.Keyvisual-corp2025__title{
	position: absolute;
	left: 0;
	top: 0;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
.Keyvisual-corp2025__title-en{
	font-family: var(--en);
	color: var(--maincolor);
	padding-top: 1.5rem;
	margin-right: 2rem;
	font-weight: 500;
	letter-spacing: .06em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: relative;
}
.Keyvisual-corp2025__title-en::before{
	background: var(--maincolor);
	content: "";
	display: block;
	width: 1.2rem;
	height: 1.2rem;
	border-radius: 50%;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
}
.Keyvisual-corp2025__title-jp{
	font-family: var(--mincho);
	font-size: 4rem;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: calc(5 / 4);
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-feature-settings: normal;
}
.Keyvisual-corp2025__message{
	padding-top: 54rem;
}
.Keyvisual-corp2025__message-title{
	font-family: var(--mincho);
	font-size: 2.4rem;
	margin-bottom: 7rem;
	letter-spacing: .05em;
	line-height: calc(4 / 2.4);
	font-weight: 700;
}
.Keyvisual-corp2025__image{
	width: 53rem;
	position: sticky;
	right: 0;
	top: 0;
}
.Keyvisual-corp2025__image img{
	/* width: calc(100% + 13rem); */
	width: 50vw;
	height: 60rem;
	border-bottom-left-radius: 3rem;
	object-fit: cover;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

	.Keyvisual-corp2025__content{
		width: calc(100% - 40rem);
		padding-right: 5rem;
	}
	.Keyvisual-corp2025__image{
		width: 40rem;
	}
	.Keyvisual-corp2025__image img{
		width: calc(100% + var(--padding-leftright));
	}

}
@media screen and (max-width:1100px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

	.Keyvisual-corp2025__content{
		width: calc(100% - 30rem);
		padding-right: 5rem;
	}
	.Keyvisual-corp2025__image{
		width: 30rem;
	}

}
@media screen and (max-width:768px){

	.Keyvisual2025{
		margin-bottom: 0;
		padding-top: 14rem;
	}
	.Keyvisual__inner-wrap2025{
		border-bottom-right-radius: 21.6rem;
	}
	.Keyvisual__inner2025{
		height: 58rem;
	}
	.Keyvisual__title-tag2025{
		width: 30rem;
		height: 7.5rem;
		border-top-right-radius: 3.5rem;
		border-bottom-right-radius: 3.5rem;
		font-size: 4rem;
		margin-bottom: 2rem;
		padding: 1rem 1rem .2rem 3rem;
		letter-spacing: 0;
	}
	.Keyvisual__title-main2025{
		font-size: 4.9rem;
		margin-bottom: 1.8rem;
		line-height: calc(6 / 4.9);
	}
	.Keyvisual__title-main2025 span{
		font-size: 4rem;
	}
	.Keyvisual__title-en2025{
		font-size: 2.4rem;
		letter-spacing: .2em;
	}

	.Keyvisual-corp2025{
		padding-bottom: 17.5rem;
	}
	.Keyvisual-corp2025__inner{
		flex-direction: column-reverse;
	}
	.Keyvisual-corp2025__content{
		width: 100%;
		padding-top: 7.5rem;
		padding-right: 0;
		padding-bottom: 0;
	}
	.Keyvisual-corp2025__title{
		position: static;
	}
	.Keyvisual-corp2025__title-en{
		font-size: 2.2rem;
		margin-right: 1.5rem;
	}
	.Keyvisual-corp2025__message{
		padding-top: 19.6rem;
	}
	.Keyvisual-corp2025__message-title{
		font-size: 3.2rem;
		margin-bottom: 8.4rem;
		line-height: calc(6 / 3.2);
	}
	.Keyvisual-corp2025__image{
		width: 100%;
		margin-top: 14rem;
		position: static;
	}
	.Keyvisual-corp2025__image img{
		width: calc(100% + var(--padding-leftright));
		height: auto;
	}

}



/*-------------------------------
	ぱんくず
-------------------------------*/

.Breadclumb__inner2025{
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.Breadclumb__inner-item2025{
	color: var(--blackcolor);
	font-size: 1.4rem;
	line-height: 1;
	display: inline-block;
}
.Breadclumb__inner-item2025:not(:last-child)::after{
	content: "-";
	margin-left: .5rem;
	margin-right: .5rem;
	line-height: 1;
	display: inline-block;
}
.Breadclumb__inner-item2025 a{
	text-decoration: underline;
	line-height: calc(3.6 / 1.6);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:1100px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

	.Breadclumb2025{
		display: none;
	}

}



/*-------------------------------
	採用情報
-------------------------------*/

.Recruit2025{
	padding-top: 10rem;
	padding-bottom: 10rem;
	margin-top: -5rem;
	border-radius: 5rem;
	background-image: url(../images/common/bg_recruit.jpg);
	background-image: image-set(url(../images/common/bg_recruit.jpg) 1x, url(../images/common/bg_recruit@2x.jpg) 2x);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
	z-index: 6000;
	overflow: hidden;
}
.Recruit2025::before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: #DE789980;
	background: linear-gradient(90deg,rgba(222, 120, 153, 1) 0%, rgba(10, 128, 204, 1) 100%);
	opacity: .74;
	mix-blend-mode: overlay;
}
.Recruit-title2025{
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 6000;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: flex;
    flex-direction: column-reverse;
    align-items: flex-start;
    justify-content: center;
}
.Recruit-title2025::before{
	content: "";
	display: block;
	width: 8.7rem;
	height: 47.3rem;
	background-image: url(../images/common/txt_recruit.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}
.Recruit-title__jp2025{
	font-size: 2.4rem;
	margin-left: 2rem;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 1;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	color: #fff;
}
.Recruit-title__jp2025 span{
	line-height: 1;
	transform: rotate(90deg);
	display: block;
}
.Recruit__inner2025{
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	position: relative;
}
.Recruit__inner2025::before{
	content: "";
	display: block;
	width: 26rem;
	height: 26rem;
	background-image: url(../images/common/txt_recruit-circle.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
	left: 0;
	bottom: -5rem;
	animation: 15s linear infinite rotation;
}
@keyframes rotation{
	0%{ transform:rotate(0);}
	100%{ transform:rotate(360deg); }
}
.Recruit-link2025{
	width: 100%;
	max-width: 43.5rem;
}
.Recruit-link__item2025{
	width: 100%;
}
.Recruit-link__item2025:not(:last-child){
	margin-bottom: 2.8rem;
}
.Recruit-link__item2025 a{
	width: 100%;
	height: 15.8rem;
	border-radius: 1rem;
	padding: 2.2rem 3.5rem;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: .06em;
	line-height: calc(3 / 2);
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	text-align: center;
	position: relative;
	box-shadow: 0 0 2rem rgba(37,126,185,.25);
	opacity: 1 !important;
}
.Recruit-link__item2025 a::after{
	content: "";
	display: block;
	width: 2.1rem;
	height: 2.2rem;
	background-image: url(../images/common/icon_arrow-naked.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
	right: 3.4rem;
	top: 50%;
	transform: translateY(-50%);
}
.Recruit-link__item-image2025{
	transition: var(--transition);
	width: 11.3rem;
	height: 11.3rem;
}
.Recruit-link__item-image2025 img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.Recruit-link__item-text2025{
	color: var(--maincolor);
	transition: var(--transition);
	width: calc(100% - 11.3rem);
	padding-right: 2.1rem;
	line-height: calc(3 / 2);
	text-align: center;
}
.Recruit-link__item2025 a:hover{
	transform: translateY(-.5rem);
	background: #dfedf8;
}
.Recruit-link__item2025 a:hover .Recruit-link__item-image2025{
	transform: scale(1.1);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:1100px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){

	.Recruit2025{
		padding-top: 10rem;
		padding-bottom: 10rem;
		margin-top: -5rem;
		border-radius: 5rem;
	}
	.Recruit-title2025{
		top: 4.5rem;
		transform: translateY(0);
	}
	.Recruit-title__jp2025{
		display: none;
	}
	.Recruit__inner2025::before{
		width: 17.4rem;
		height: 17.4rem;
		left: 5rem;
		bottom: -5.5rem;
	}
	.Recruit-link__item2025 a{
		padding: 2.2rem 3.5rem;
		font-size: 3rem;
		line-height: calc(3.6 / 3);
	}
	.Recruit-link__item-text2025{
		line-height: calc(3.6 / 3);
	}

}



/*-------------------------------
	お問い合わせ（共通）
-------------------------------*/

.C-Contact{
	padding-top: 15.8rem;
	padding-bottom: 10rem;
	border-bottom-left-radius: 5rem;
	border-bottom-right-radius: 5rem;
	background-image: url(../images/common/bg_c-contact.jpg);
	background-image: image-set(url(../images/common/bg_c-contact.jpg) 1x, url(../images/common/bg_c-contact@2x.jpg) 2x);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
	overflow: hidden;
	z-index: 6000;
}
.C-Contact::before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 4000;
	background: #522D1B;
	opacity: .25;
}
.C-Contact::after{
	content: "";
	display: block;
	width: 71.8rem;
    height: 11.8rem;
	position: absolute;
	left: -1.6rem;
    top: 2.5rem;
	z-index: 4000;
	background-image: url(../images/common/ojb_c-contact.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}
.C-Contact__inner{
	position: relative;
	z-index: 6000;
}
.C-Contact__header{
	width: 100%;
	padding-bottom: 3rem;
	border-bottom: 1px solid #fff;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.C-Contact__title{
	width: 39rem;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.C-Contact__title-image{
	width: 15rem;
}
.C-Contact__title-image img{
	width: 100%;
}
.C-Contact__title-text{
	width: calc(100% - 15rem);
	padding-left: 2.2rem;
	font-size: 3.2rem;
	line-height: calc(5 / 3.2);
	font-weight: 700;
	color: #fff;
}
.C-Contact__contact{
	width: 53rem;
	line-height: 1;
}
.C-Contact__button{
	width: 100%;
	margin-bottom: 1.8rem;
	border-radius: 4rem;
    box-shadow: 0 0 1rem rgba(0, 0, 0, .16);
    overflow: hidden;
}
.C-Contact__button a{
	width: 100%;
	height: 8rem;
	padding-left: 9rem;
	padding-right: 3.8rem;
	font-size: 2rem;
	font-weight: 700;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    opacity: 1 !important;
}
.C-Contact__button a:hover{
	background: #ffd23c;
}
.C-Contact__button a::before{
    content: "";
    display: block;
    width: 2.3rem;
    height: 1.8rem;
    background-image: url(../images/common/icon_mail-black.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    left: 6rem;
    top: 50%;
    transform: translateY(-50%);
}
.C-Contact__button a::after{
    transition: var(--transition);
    content: "";
    display: block;
    width: 1.8rem;
    height: 1.9rem;
    background-image: url(../images/common/icon_arrow-black-naked.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
.C-Contact__button span{
	width: calc(100% - 1.8rem);
    padding-left: 1.5rem;
    line-height: 1;
    display: block;
}
.C-Contact-tel{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.C-Contact-tel__title{
    width: 15.5rem;
    height: 6.7rem;
	font-size: 1.8rem;
	letter-spacing: .01em;
	line-height: calc(3 / 1.8);
	font-weight: 700;
	color: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
}
.C-Contact-tel__title::after{
	content: "";
	display: block;
	width: 1px;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	background: #fff;
}
.C-Contact-tel__body{
	width: calc(100% - 14rem);
	padding-left: 1.2rem;
}
.C-Contact-tel__tel{
	font-family: var(--en);
	font-size: 4.8rem;
	font-weight: 700;
	line-height: 1;
	transform: translateY(-.8rem);
	color: #fff;
	display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    white-space: nowrap;
}
.C-Contact-tel__tel::before{
	font-family: var(--en);
	content: "TEL";
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1;
    padding-bottom: .4rem;
    margin-right: .4rem;
	color: #fff;
	display: block;
}
.C-Contact-tel__time{
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .01em;
    color: #fff;
}
.C-Contact__footer{
	padding-top: 2rem;
}
.C-Contact__text{
	font-size: 1.8rem;
	margin-bottom: 2.2rem;
	line-height: calc(2.5 / 1.8);
	font-weight: 700;
	color: #fff;
	text-align: center;
}
.C-Contact-info__title{
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 2.5rem;
	text-align: center;
	color: #fff;
}
.C-Contact-info__title span{
	line-height: 1;
	display: inline-block;
	position: relative;
}
.C-Contact-info__title span::before,
.C-Contact-info__title span::after{
	content: "";
	display: block;
	width: 14.6rem;
	height: .5rem;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	position: absolute;
	top: 50%;
}
.C-Contact-info__title span::before{
	left: -1.5rem;
	transform: translate(-100%,-50%);
}
.C-Contact-info__title span::after{
	right: -1.5rem;
	transform: translate(100%,-50%);
}
.C-Contact-info__list{
	width: 100%;
	gap: 2rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	counter-reset: number 0;
}
.C-Contact-info__list-item{
	height: 8rem;
	border-radius: 4rem;
	padding: .5rem 3.2rem;
	background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.C-Contact-info__list-item::after{
	background: var(--maincolor);
	content: "";
	width: 4.4rem;
	height: 4.4rem;
	border-radius: .5rem;
	font-size: 3.5rem;
	font-weight: 700;
	letter-spacing: .01em;
	line-height: 1;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	counter-increment: number 1;
	content: counter(number) "";
}
.C-Contact-info__list-item-text{
	width: calc(100% - 4.4rem);
	font-size: 2rem;
	padding-right: 1.5rem;
	font-weight: 700;
	letter-spacing: 0;
	line-height: calc(2.8 / 2);
	display: block;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

	.C-Contact__contact{
		width: 43rem;
	}
	.C-Contact-tel{
		flex-direction: column;
	}
	.C-Contact-tel__title{
		width: auto;
		height: auto;
		border-bottom: 1px solid #fff;
		justify-content: center;
		padding-bottom: .5rem;
		margin-bottom: 1.5rem;
	}
	.C-Contact-tel__title::after{
		display: none;
	}
	.C-Contact-tel__title br{
		display: none;
	}
	.C-Contact-tel__body{
		width: 100%;
		padding-left: 0;
	}
	.C-Contact-tel__tel{
		justify-content: center;
	}
	.C-Contact-tel__time{
		text-align: center;
	}

	.C-Contact-info__list{
		flex-wrap: wrap;
		justify-content: center;
	}
	.C-Contact-info__list-item{
		/* width: calc((100% - 2rem) / 2);
		max-width: 40rem; */
		/* padding-left: 2.5rem;
		padding-right: 2.5rem; */
	}
}
@media screen and (max-width:1100px) and (min-width: 769px){

	.C-Contact-info__list-item-text{
		width: calc(100% - 3.6rem);
		font-size: 1.6rem;
	}
	.C-Contact-info__list-item::after{
		width: 3.6rem;
		height: 3.6rem;
		font-size: 3rem;
	}

}
@media screen and (max-width:960px) and (min-width: 769px){

	.C-Contact__header{
		flex-direction: column;
		align-items: center;
	}
	.C-Contact__title{
		margin-bottom: 5rem;
	}

}
@media screen and (max-width:768px){

	.C-Contact{
		padding-top: 18.8rem;
		padding-bottom: 7.8rem;
		border-bottom-left-radius: 3rem;
		border-bottom-right-radius: 3rem;
		background-image: url(../images/common/sp_bg_c-contact.jpg);
		background-image: image-set(url(../images/common/sp_bg_c-contact.jpg) 1x, url(../images/common/sp_bg_c-contact@2x.jpg) 2x);
	}
	.C-Contact::after{ /* ★ */
		width: 71.8rem;
		height: 11.8rem;
		left: -1.6rem;
		top: 2.5rem;
	}
	.C-Contact__header{
		padding-bottom: 3.5rem;
		flex-direction: column;
	}
	.C-Contact__title{
		width: 100%;
		margin-bottom: 5.1rem;
		justify-content: center;
	}
	.C-Contact__title-text{
		width: auto;
		max-width: calc(100% - 15rem);
		padding-left: 1rem;
		font-size: 4.8rem;
		line-height: calc(5.8 / 4.8);
	}
	.C-Contact__contact{
		width: 100%;
	}
	.C-Contact__button{
		margin-bottom: 3.8rem;
		border-radius: 4.4rem;
	}
	.C-Contact__button a{
		height: 8.8rem;
		padding-left: 6.4rem;
		padding-right: 3.2rem;
		font-size: 3rem;
	}
	.C-Contact__button a::before{
		width: 3.5rem;
		height: 2.7rem;
		left: 6.4rem;
	}
	.C-Contact__button a::after{
		width: 2.9rem;
		height: 3rem;
	}
	.C-Contact__button span{
		width: calc(100% - 2.9rem);
		padding-left: 5rem;
	}
	.C-Contact-tel{
		flex-direction: column;
	}
	.C-Contact-tel__title{
		width: 100%;
		height: auto;
		font-size: 2.8rem;
		margin-bottom: 1.5rem;
		line-height: 1;
		justify-content: center;
	}
	.C-Contact-tel__title::after{
		display: none;
	}
	.C-Contact-tel__body{
		width: 100%;
		padding-left: 0;
	}
	.C-Contact-tel__tel{
		font-size: 8rem;
		margin-bottom: 1.5rem;
		transform: translateY(0);
		letter-spacing: 0;
	}
	.C-Contact-tel__tel::before{
		font-size: 4.3rem;
		padding-bottom: .8rem;
		margin-right: 1.8rem;
	}
	.C-Contact-tel__time{
		font-size: 3.1rem;
		text-align: center;
	}
	.C-Contact__footer{
		padding-top: 2.8rem;
	}
	.C-Contact__text{
		font-size: 2.4rem;
		margin-bottom: 7.4rem;
		line-height: calc(5 / 2.4);
		text-align: left;
		font-weight: 400;
	}
	.C-Contact-info__title{
		font-size: 2.8rem;
		margin-bottom: 3rem;
		position: relative;
	}
	.C-Contact-info__title span{
		position: static;
	}
	.C-Contact-info__title span::before,
	.C-Contact-info__title span::after{
		width: 15rem;
	}
	.C-Contact-info__title span::before{
		left: 0;
		transform: translate(0,-50%);
	}
	.C-Contact-info__title span::after{
		right: 0;
		transform: translate(0,-50%);
	}
	.C-Contact-info__list{
		gap: 2.2rem 3rem;
		flex-wrap: wrap;
	}
	.C-Contact-info__list-item{
		width: calc((100% - 3rem) / 2);
		padding: .5rem 2.5rem .5rem 3.2rem;
	}
	.C-Contact-info__list-item-text{
		font-size: 2.4rem;
		line-height: calc(2.8 / 2.4);
		padding-right: 0;
	}
	.C-Contact-info__list-item::after{
		padding-top: .5rem;
	}

}