@charset "utf-8";

/* リセットCSS */
* {
	margin: 0;
	padding: 0;
	min-height: 0;
	min-width: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html {
	height: 100%;
}

ul li,
ol li {
	list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: normal;
	font-size: 100%;
	margin: 0;
}

p {
	margin: 0;
}

a:focus,
*:focus {
	outline: none;
}

article,
header,
footer,
aside,
figure,
figcaption,
nav,
section,
main {
	display: block;
}

body {
	font-family: '小塚ゴシック Pro', 'Kozuka Gothic Pro', "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-weight: 500;
	height: 100%;
	width: 100%;
	color: var(--MAIN_BLACK);
	position: relative;
	z-index: 0;
}

a {
	text-decoration: none;
	outline: none;
	color: inherit;
}

a img,
a {
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s;
}

img {
	height: auto;
	max-width: 100%;
	box-sizing: unset;
	vertical-align: bottom;
}

/* notosans読み込み */
@font-face {
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 400;
	src: url('../font/notosans-r.woff') format('woff'),
		url('../font/notosans-r.eot') format('eot');
	font-display: swap;
}

@font-face {
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 500;
	src: url('../font/notosans-m.woff') format('woff'),
		url('../font/notosans-m.eot') format('eot');
	font-display: swap;
}

@font-face {
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 700;
	src: url('../font/notosans-b.woff') format('woff'),
		url('../font/notosans-b.eot') format('eot');
	font-display: swap;
}

/* フォントCSS */
.mincho {
	font-family: 'Yu Mincho Light', 'YuMincho', 'Yu Mincho', '游明朝体', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', sans-serif;
}

.sans {
	font-family: 'Noto Sans JP', sans-serif;
}

.yugo {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

/* img用クラス */
.imgauto {
	height: auto;
	width: 100%;
	box-sizing: unset;
	line-height: 1rem;
	display: block;
}

.imgauto-h,
.imgauto-obj {
	width: 100%;
	height: 100%;
	box-sizing: unset;
	line-height: 1rem;
	display: block;
}

@media screen and (max-width: 767px) {
	.imgauto-h {
		object-fit: cover;
	}
}

/* インナー設定 */
.inner,
.pc-inner,
.sp-inner {
	margin-left: auto;
	margin-right: auto;
}

/* フレックス */
.flex {
	display: flex;
}

.fxw {
	display: flex;
	flex-wrap: wrap;
}

.jcsb {
	display: flex;
	justify-content: space-between;
}

/* スライダー読み込みまで非表示 */
.slide {
	opacity: 0;
	transition: opacity .3s linear;
}

.slide.slick-initialized {
	opacity: 1;
}

/* スクロールバー消す */
.y-scroll,
.x-scroll {
	-ms-overflow-style: none;
	/* IE, Edge 対応 */
	scrollbar-width: none;
	/* Firefox 対応 */
}

.y-scroll {
	overflow-y: scroll;
	overflow-x: auto;
}

.x-scroll {
	overflow-x: scroll;
	overflow-y: auto;
}

.y-scroll::-webkit-scrollbar,
.x-scroll::-webkit-scrollbar {
	/* Chrome, Safari 対応 */
	display: none;
}

/* 縦書き */
.tategaki {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
}

/* CSS関数設定 */
:root {
	--MAIN_GRADATION: linear-gradient(110deg, rgba(255, 220, 0, 1) 50%, rgba(255, 180, 0, 1) 100%);
	--MAIN_GRADATION_REVERSE: linear-gradient(110deg, rgba(255, 180, 0, 1) 20%, rgba(255, 220, 0, 1) 60%);
	--MAIN_YELLOW: #FFDC00;
	--MAIN_YELLOW_HOVER: #eaca00;
	--MAIN_YELLOW_THIN: #fff7c4;
	--MAIN_ORANGE: #F07D00;
	--MAIN_ORANGE_HOVER: #ca6900;
	--MAIN_BLACK: #3C3C3C;
	--MAIN_WHITE: #fff;
	--MAIN_GREEN: #28BE6E;
	--MAIN_BLUE: #008CD2;
	--MAIN_BLUE_HOVER: #065e8a;
	--MAIN_RED: #f54337;
	--MAIN_TOPBTN_RED: #ff3100;

	--GRADATION_ORANGE: #ffb400;

	--SUB_BLACK: #000;
	--SERVICE_BLACK: #2B2B2B;
	--BG_WHITE: #F7F7F7;
	--ICON_GRAY: #D2D2D2;

	--icon_circle_size: 18px;
	--hover_shadow: 0 3px 5px 0 rgb(129 109 109 / 35%);

}

body.__wave {
	background-color: var(--BG_WHITE);
	z-index: -1;
}

body.__wave::after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	z-index: -1;
	background-repeat: no-repeat;
}

@media screen and (min-width: 951px) {
	.hamburger {
		display: none !important;
	}

	/* --- footer.html バナー部分 --- */
	.no-pc {
		display: none !important;
	}
}

@media screen and (min-width: 768px) {
	body {
		font-size: 15px;
		line-height: 1.7;
		-ms-text-size-adjust: 100%;
		-webkit-text-size-adjust: 100%;
	}

	body.__wave::after {
		aspect-ratio: 1400/780;
		background-image: url(../images/top/head_wave.jpg);
		background-size: contain;
	}

	a[href^="tel:"] {
		pointer-events: none;
	}

	.sp {
		display: none !important;
	}

	.inner {
		width: 80%;
		max-width: 1280px;
	}

	.pc-inner {
		width: 80%;
		max-width: 1280px;
	}

	.generalsec,
	.tp-sec {
		margin-bottom: 80px;
	}

	.generalsec:first-child {
		margin-top: 60px;
	}
}

@media screen and (max-width: 767px) {
	body {
		font-size: 14px;
		line-height: 1.6;
	}

	body.__wave::after {
		aspect-ratio: 740/515;
		background-image: url(../images/top/sp/head_wave.jpg);
		background-size: 100% calc(100% + 5px);
	}

	.pc {
		display: none !important;
	}

	.inner {
		width: 90%;
	}

	.sp-inner {
		width: 90%;
	}

	.generalsec,
	.tp-sec {
		margin-bottom: 40px;
	}

	.generalsec:first-child {
		margin-top: 80px;
	}
}

/* --------------------header------------------- */
.sp-header {
	--icon_size: 40px;
	position: fixed;
	width: 100%;
	z-index: 990;
	background: var(--MAIN_GRADATION);
	align-items: center;
	padding: 8px 5%;
	justify-content: space-between;
}

.sp-header .Thumb {
	width: 85px;
}

.sp-header__iconlist {
	margin-right: 40px;
	gap: 5px;
}

.sp-header__iconlist>li {
	width: var(--icon_size);
	height: var(--icon_size);
}

.sp-header__iconlist>li.__blue {
	padding: 10px;
	background-color: var(--MAIN_BLUE);
	border-radius: 50%;
}

.sp-header__iconlist>li.__white img {
	border-radius: 50%;
	background-color: var(--MAIN_WHITE);
}

@media screen and (min-width: 951px) {
	.sp-header {
		display: none;
	}
}

/* --------------------aside------------------- */
.asidearea {
	--fnts_phone: 24px;
	--fnts_ttl: 18px;
	--fnts_caption: 16px;
	--fnts_under: 14px;
	--icon_square_size: 30px;
	--border: 1px solid var(--MAIN_WHITE);

	width: 260px;
	margin: 60px 0;
	flex-shrink: 0;
}

.aside-container {
	background: var(--MAIN_GRADATION);
	border: 2px solid var(--MAIN_WHITE);
	border-radius: 20px;
	padding: 25px 10px 0;
}

.aside-contact__container .Thumb {
	width: 80%;
	margin-right: auto;
	margin-left: auto;
}

.aside-contact__container .txt {
	text-align: center;
	font-size: 14px;
}

.aside-contact__container .Phonearea {
	text-align: center;
}

.aside-contact__container .Phonearea .Min {
	font-size: var(--fnts_phone);
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 6px;
}

.aside-contact__container .Phonearea .Min::before {
	content: '';
	display: inline-block;
	width: .8em;
	aspect-ratio: 1/1;
	background: url(../images/top/icon_phone_2409.png) no-repeat center center / contain;
}

.aside-contact__container .Phonearea .Sub {
	font-size: 17px;
	font-weight: 500;
}

.aside-navList {
	padding: 25px 5px 0;
	z-index: 1;
	position: relative;
}

.aside-restaurant__Ttl {
	font-size: var(--fnts_ttl);
	font-weight: bold;
}

.aside-restaurant__Ttl:not(.__haschild) a {
	display: block;
	padding: 30px 0;
}

.aside-restaurant__Ttl.__haschild {
	padding: 30px 0 0;
}

.aside-restaurant__Ttl.__haschild a {
	display: block;
	position: relative;
}

.aside-restaurant__Ttl.Icon.__hamburger a>span {
	position: absolute;
	content: '';
	top: calc(50% + 14px);
	transform: translateY(-50%);
	right: 0;
	display: block;
	width: 1em;
	height: 2px;
	background-color: var(--MAIN_WHITE);
}

.aside-restaurant__Ttl.Icon.__hamburger a>span:after,
.aside-restaurant__Ttl.Icon.__hamburger a>span:before {
	position: absolute;
	content: '';
	right: 0;
	display: block;
	width: 1em;
	height: 2px;
	background-color: var(--MAIN_WHITE);
}

.aside-restaurant__Ttl.Icon.__hamburger a>span:after {
	top: -6px;
}

.aside-restaurant__Ttl.Icon.__hamburger a>span:before {
	top: 6px;
}

.aside-restaurant__Ttl.Icon a {
	position: relative;
}

.aside-restaurant__Ttl.Icon a:after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	display: block;
	width: var(--icon_square_size);
	aspect-ratio: 1/1;
	transition: .4s;

}

.aside-restaurant__Ttl.Icon.__beginner a:after {
	background: url(../images/top/icon_beginner.svg) no-repeat center center / contain;
}

.aside-restaurant__Ttl.Icon.__veteran a:after {
	background: url(../images/top/icon_veteran.svg) no-repeat center center / contain;
}

.aside-restaurant__Ttl.Icon.__mail a:after {
	background: url(../images/top/icon_mail.svg) no-repeat center center / contain;
}


.aside-restaurant__accordion .Ttl {
	font-size: var(--fnts_caption);
}

.aside-navList>li:last-child {
	padding: 0px 10px 30px;
}

.aside-navList>li:not(:last-child) {
	border-bottom: var(--border);
	padding: 0px 10px;
}

.aside-navList>li:first-child {
	border-top: var(--border);
	border-bottom: var(--border);
}

.aside-restaurant__accordion .Ttl a,
.aside-accordion__list>li {
	display: flex;
	align-items: center;
}

.aside-restaurant__accordion .Ttl a::before,
.aside-accordion__list>li a::before {
	content: '■';
	display: block;
	color: var(--MAIN_WHITE);
	font-size: 10px;
	margin-right: 5px;
}

.aside-restaurant__accordion .aside-accordion__list>li:not(.__small) {
	font-size: var(--fnts_under);
}

.aside-restaurant__accordion .aside-accordion__list>li.__small {
	font-size: 13px;
}

.aside-restaurant__accordion .Body {
	position: relative;
	background-color: var(--MAIN_WHITE);
	width: calc(100% + 50px);
	margin-left: -25px;
}

.aside-accordion__list.__under {
	padding-left: 25px;
}

.aside-restaurant__accordion .Ttl {
	position: relative;
}

.aside-restaurant__accordion .Ttl:not(.__noborder):not(.active)::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 1.5px;
	bottom: 0;
	left: 0;
	background-image: linear-gradient(to right, #fff 0px, #fff 1px, transparent 2px, transparent 3px);
	background-size: 3px 1.5px;
	background-repeat: repeat-x;
}

.aside-restaurant__accordion .Ttl a {
	padding: 10px 0;
	font-weight: bold;
}

.aside-accordion__list>li {
	position: relative;
}

.aside-accordion__list.__under>li:first-child a {
	padding: 12px 0;
}

.aside-accordion__list.__under>li:not(:first-child) a {
	padding: 10px 0;
}

.aside-accordion__list.__under>li a {
	position: relative;
	display: flex;
	width: calc(100% - 30px);
}

.aside-accordion__list:not(.__under)>li a {
	position: relative;
	display: flex;
	width: 100%;
	padding: 10px 0;
	align-items: center;
}

.aside-accordion__list:not(.__under)>li a:after,
.aside-accordion__list.__under>li a::after {
	aspect-ratio: 1/1;
	transition: .4s;
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}

.aside-accordion__list:not(.__under)>li a:after {
	width: var(--icon_circle_size);
	background: url(../images/top/icon_next.svg) no-repeat center center / contain;
}

.aside-accordion__list.__under>li a::after {
	width: 1em;
	background: url(../images/top/icon_next_gray.svg) no-repeat center center / contain;
}

.aside-accordion__list.__under>li:not(:last-child)::after {
	content: '';
	position: absolute;
	width: calc(100% - 30px);
	height: 1.5px;
	bottom: 0;
	left: 0;
	background-image: linear-gradient(to right, var(--MAIN_BLACK) 0px, var(--MAIN_BLACK) 1px, transparent 2px, transparent 3px);
	background-size: 3px 1.5px;
	background-repeat: repeat-x;
}

.aside-accordion__list.__upper>li:not(:last-child)::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 1.5px;
	bottom: 0;
	left: 0;
	background-image: linear-gradient(to right, var(--MAIN_WHITE) 0px, var(--MAIN_WHITE) 1px, transparent 2px, transparent 3px);
	background-size: 3px 1.5px;
	background-repeat: repeat-x;
}

.aside-restaurant__accordion .Icon.__circle {
	position: absolute;
	font-size: inherit;
	top: 50%;
	transform: translateY(-50%);
	right: -5px;
	cursor: pointer;
	transition: .4s;
	padding: 5px;
}

.aside-restaurant__accordion .Icon.__circle>span {
	display: block;
	width: var(--icon_circle_size);
	aspect-ratio: 1/1;
	background-color: var(--MAIN_WHITE);
	border-radius: 50%;
	transition: .4s;
}

.aside-restaurant__accordion .Icon.__circle::after,
.aside-restaurant__accordion .Icon.__circle::before {
	position: absolute;
	content: '';
	background-color: var(--MAIN_ORANGE);
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.aside-restaurant__accordion .Icon.__circle::after {
	width: calc(var(--icon_circle_size) - 10px);
	height: 1px;
}

.aside-restaurant__accordion .Ttl:not(.active) .Icon.__circle:before {
	height: calc(var(--icon_circle_size) - 10px);
	width: 1px;
}

.aside-bannerarea img {
	/* aspect-ratio: 260/110; */
	/* object-fit: cover; */
}

.aside-bannerarea>p:not(:last-child) {
	margin-bottom: 10px;
}

.aside-bannerarea a {
	display: block;
	border-radius: 20px;
	transition: .4s;
}

.aside-bannerarea a:hover {
	box-shadow: var(--hover_shadow);
}

.aside-contact__container .Btn {
	padding: 0 10px;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.aside-contact__container .Btn>a {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ff5500;
	color: var(--MAIN_WHITE);
	font-size: 16px;
	font-weight: bold;
	padding: .5em 0;
	margin-bottom: 10px;
	border-radius: 6px;
	position: relative;
}

.aside-contact__container .Btn>a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	display: block;
	width: 20px;
	aspect-ratio: 1 / 1;
	margin-right: 10px;
	background: url(../images/top/icon_mail_blue.svg) no-repeat center center / contain;
}

.aside-contact__container .Btn>a:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	z-index: 9;
	background: url(../images/top/icon_arrow_sp-contactbtn.png) no-repeat center center / contain;
}

.aside-contact__container .Btn>a:hover {
	background-color: #e52c00;
}

@media screen and (min-width: 951px) {
	.asidearea {
		display: block;
	}
}

@media screen and (max-width: 950px) {
	.asidearea {
		display: none;
	}
}

@media screen and (min-width: 768px) {
	.aside-contact__container .Thumb {
		margin-bottom: 20px;
	}

	.aside-container {
		margin-bottom: 10px;
	}

	.aside-restaurant__Ttl a:hover {
		color: var(--MAIN_ORANGE);
	}

	.aside-restaurant__Ttl.Icon.__beginner a:hover:after {
		background: url(../images/top/icon_beginner_active.svg) no-repeat center center / contain;
	}

	.aside-restaurant__Ttl.Icon.__veteran a:hover:after {
		background: url(../images/top/icon_veteran_active.svg) no-repeat center center / contain;
	}

	.aside-restaurant__Ttl.Icon.__mail a:hover:after {
		background: url(../images/top/icon_mail_active.svg) no-repeat center center / contain;
	}

	.aside-restaurant__accordion .Ttl a:hover {
		color: var(--MAIN_ORANGE);
	}

	.aside-accordion__list:not(.__under)>li a:hover {
		font-weight: bold;
		color: var(--MAIN_ORANGE);
	}

	.aside-accordion__list:not(.__under)>li a:hover:after {
		right: -5px;
		background: url(../images/top/icon_next_active.svg) no-repeat center center / contain;
	}

	.aside-accordion__list.__under>li a:hover::after {
		background: url(../images/top/icon_next_active.svg) no-repeat center center / contain;
	}

	.aside-restaurant__accordion .Icon.__circle:hover>span {
		background-color: var(--MAIN_ORANGE);
	}

	.aside-restaurant__accordion .Icon.__circle:hover::after,
	.aside-restaurant__accordion .Icon.__circle:hover::before {
		background-color: var(--MAIN_WHITE);
	}
}

@media screen and (max-width: 767px) {
	.aside-contact__container .Thumb {
		margin-bottom: 20px;
	}

	.aside-container {
		margin-bottom: 10px;
	}
}

/* --------------------footer------------------- */
.footerarea {
	--fnts_caption: 18px;
	--fnts_local: 16px;
	--fnts_link: 14px;
	--icon_size: 36px;
	--icon_size_sp: 32px;

	background-color: var(--MAIN_WHITE);
}

.ft-container {
	justify-content: center;
	--large_size: 80;
	--small_size: 40;
	--clamp: clamp(calc(var(--small_size) * 1px), calc((var(--small_size) / 768) * 100vw), calc(var(--large_size) * 1px));
	column-gap: var(--clamp);

	/* gap: var(--clamp); */

}

.ft-container .Thumb {
	width: 175px;
}

.ft-contact .Caption {
	font-weight: bold;
	font-size: var(--fnts_caption);
}

.ft-contact .Local {
	font-size: var(--fnts_local);
}

.ft-navList>li a {
	display: block;
	position: relative;
	font-size: var(--fnts_link);
	padding-right: 2em;
}

.ft-navList>li a:after {
	position: absolute;
	content: '';
	width: 1em;
	aspect-ratio: 1/1;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	transition: .4s;
	background: url(../images/top/icon_next_gray.svg) no-repeat center center / contain;
}

.ft-contact {
	position: relative;
}

.ft-snsarea {
	justify-content: center;
	--large_size: 60;
	--small_size: 20;
	--clamp: clamp(calc(var(--small_size) * 1px), calc((var(--small_size) / 375) * 100vw), calc(var(--large_size) * 1px));
	gap: var(--clamp);
}

.ft-sns__icon {
	align-items: center;
}

.ft-sns__icon .Local {
	font-size: var(--fnts_local);
}

.ft-sns__icon .List {
	gap: 10px;
	align-items: center;
}

.ft-sns__icon .List>li {
	aspect-ratio: 1/1;
}

.ft__bannerarea {
	justify-content: space-evenly;
	gap: 10px;
	margin-bottom: 10px;
}

.ft__bannerarea_single {
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 10px;
}

.ft__bannerarea_single p {
	width: 50%;
}

.ft__bannerarea:not(.flex) p:not(:last-child) {
	margin-bottom: 9px;
}

.ft-copyright {
	display: block;
	text-align: center;
	font-size: var(--fnts_link);
	background-color: var(--MAIN_YELLOW);
	padding: .6em 0;
}

@media screen and (min-width: 921px) {
	.footerarea {
		padding-top: 80px;
	}
}

@media screen and (min-width: 768px) and (max-width: 920px) {
	.footerarea {
		padding-top: 20px;
	}

	.ft__bannerarea {
		order: 0;
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
		row-gap: 10px;
	}

	.ft__bannerarea>* {
		width: calc((100% - 10px) / 2);
	}

	.ft-container {
		flex-wrap: wrap;
		row-gap: 20px;
	}

	.ft-container.__bannerarea {
		margin-bottom: 0;
	}

	.ft-contact {
		order: 1;
	}

	.ft-nav {
		order: 1;
	}

	.ft-container::after {
		content: '';
		width: 100%;
		order: 0;
	}

	.ft-navList>li a:hover:after {
		right: -3px;
		background: url(../images/top/icon_next_active.svg) no-repeat center center / contain;
	}

	.ft-sns__icon .List>li a img:hover {
		box-shadow: var(--hover_shadow);
		border-radius: 6px;
	}
}

@media screen and (min-width: 768px) {
	.ft-container {
		margin-bottom: 80px;
	}

	.ft-contact .Caption {
		margin-bottom: 1em;
	}

	.ft-container .Thumb {
		margin-top: 20px;
	}

	.ft-sns__icon {
		margin-bottom: 40px;
	}

	.ft-sns__icon .List>li {
		width: var(--icon_size);
	}

	.ft-sns__icon .Local {
		margin-right: 20px;
	}

	.ft-contact::after {
		position: absolute;
		content: '';
		width: 1.5px;
		height: 100%;
		transform: translateX(-50%);
		top: 0;
		right: calc(-1 * var(--clamp) / 2);
		background-color: var(--MAIN_BLACK);
	}
}

/* 追加ここから */
@media screen and (min-width: 951px) {
	.ft-container-2 {
		margin-bottom: 0px;
	}

	.ft-container.__bannerarea {
		margin-bottom: 0;
	}
}

@media screen and (min-width: 921px) and (max-width: 950px) {
	.ft-container-2 {
		margin-bottom: 0px;
		flex-flow: column;
		row-gap: 40px;
		height: 150px;
	}

	.ft__bannerarea {
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
		row-gap: 10px;
	}

	.ft__bannerarea>* {
		width: calc((100% - 10px) / 2);
	}

	.ft-mTop {
		margin-top: 40px;
	}
}

@media screen and (min-width: 768px) and (max-width: 921px) {
	.footerarea {
		padding-top: 20px;
	}

	.ft-container-2 {
		margin-bottom: 0px;
		flex-flow: column;
		row-gap: 40px;
		height: 150px;
	}
}

/* 追加ｌここまで */

@media screen and (max-width: 767px) {
	.ft-container {
		margin-bottom: 40px;
		flex-flow: column;
		row-gap: 40px;
	}

	.ft-contact .Caption {
		margin-bottom: 1em;
	}

	.footerarea {
		padding-top: 30px;
	}

	.ft-sns__icon {
		margin-bottom: 40px;
	}

	.ft-sns__icon .List>li {
		width: var(--icon_size_sp);
	}

	.ft-sns__icon .Local {
		margin-right: 10px;
	}

	.ft-container .Thumb {
		margin-right: auto;
		margin-left: auto;
	}

	.ft-contact .Caption {
		text-align: center;
	}

	.ft-navList {
		--col_gap: 40px;
		position: relative;
		display: flex;
		flex-wrap: wrap;
		row-gap: 5px;
		column-gap: var(--col_gap);
	}

	.ft-navList:after {
		position: absolute;
		content: '';
		width: 1.5px;
		height: 100%;
		top: 50%;
		left: calc(60%);
		transform: translate(-50%, -50%);
		background-color: var(--MAIN_BLACK);
	}

	.ft-navList>li:nth-child(odd) {
		width: calc(60% - (var(--col_gap) / 2));
	}

	.ft-navList>li:nth-child(even) {
		width: calc(40% - (var(--col_gap) / 2));
	}

}

/* --------------------全ページ共通部分------------------- */
:root {
	--sp_mag: calc(1 - (375 / 1140));
	--sp_mag_small: calc(1 - (375 / 1680));
}

#mainarea {
	width: 100%;
}

.g-wrapper {
	max-width: 1140px;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.g-wrapper.__2col {
	display: flex;
}

.g-ttl {
	position: relative;
	color: var(--MAIN_ORANGE);
	font-weight: bold;
	font-size: 30px;
	padding-left: .8em;
	line-height: 1.4;

}

.g-ttl:before {
	position: absolute;
	left: 0;
	top: 0;
	display: inline-block;
	content: '';
	width: 4px;
	height: 90%;
	top: 50%;
	transform: translateY(-50%);
	background-color: var(--MAIN_ORANGE);
}

.g-fixed__operator {
	position: sticky;
	right: 0;
	bottom: 0;
}

.g-fixed__operator__container {
	width: max-content;
	margin-left: auto;
}

.g-fixed__operator__container>a {
	display: flex;
	background: var(--MAIN_GRADATION);
	border-top: 2px solid var(--MAIN_ORANGE);
	border-left: 2px solid var(--MAIN_ORANGE);
	align-items: center;
	position: relative;
	border-radius: 20px 0 0 0;
}

.g-fixed__operator__txt {
	text-align: center;
	line-height: 1.6;
}

.g-fixed__operator__txt>span {
	color: #404040;
	background: linear-gradient(transparent 70%, var(--MAIN_WHITE) 30%);
	--color: #404040;
	--ss: .5px;
	--ssm: calc(-1 * var(--ss));
	text-shadow:
		var(--color) var(--ss) var(--ss) 0, var(--color) var(--ssm) var(--ssm) 0,
		var(--color) var(--ssm) var(--ss) 0, var(--color) var(--ss) var(--ssm) 0,
		var(--color) 0px var(--ss) 0, var(--color) 0 var(--ssm) 0,
		var(--color) var(--ssm) 0 0, var(--color) var(--ss) 0 0;
	;

}

.g-fixed__operator__thumb {
	position: absolute;
	bottom: 10px;
	right: 20px;
}

@media screen and (min-width: 768px) {
	.g-wrapper.__2col {
		gap: 60px;
	}

	.g-ttl {
		margin-bottom: 20px;
	}

	.g-fixed__operator__container>a:hover {
		opacity: .8;
	}

	.g-fixed__operator__thumb {
		width: 70px;
		right: 20px;
	}

	.g-fixed__operator__txt {
		font-size: 24px;
		padding-right: 70px;
	}

	.g-fixed__operator__container>a {
		padding: 10px 20px;
	}
}

@media screen and (max-width: 767px) {
	.g-wrapper.__2col {
		gap: 60px;
	}

	.g-ttl {
		margin-bottom: 20px;
	}

	.g-fixed__operator__thumb {
		width: 45px;
		right: 10px;
	}


	.g-fixed__operator__txt {
		font-size: 18px;
		padding-right: 40px;
	}

	.g-fixed__operator__container>a {
		padding: 10px 20px 10px 10px;
	}
}

/* ■■■■■■■■■■アコーディオン■■■■■■■■■■ */
.g-accordion .Body {
	display: none;
}