@charset "UTF-8";
/*
Theme Name: first-delivery2026
Author: Catwork Co., Ltd.
Version: 1.0.0
*/

/* サイトの基本カラーに合わせて変更 */
:root {
	--main-color: #ce1c1f;
	--main-light-color: #feeae1;
	--main-dark-color: #b81c22;
	--gold-color: #d2a600;
	--beige-color: #f8f4ec;
	--text-color: #333333;
}

/* Reset
----------------------------------------------------------- */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video, button {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font: inherit;
	vertical-align: baseline;
	background: transparent;
}
article, aside, dialog, figure, footer, header, hgroup, nav, section, main {
	display: block;
}
strong {
	font-weight: normal;
}
ul, ol {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
input[type="text"],
input[type="email"],
textarea {
	border-radius: 0;
	-webkit-appearance: none;
	line-height: normal;
	color: var(--main-font-color, #333);
	overflow: auto;
}
.clearfix::after {
	content: "";
	display: table;
	clear: both;
}
h2, h3, h4, h5, h6 {
	font-weight: bold;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}
a {
	color: inherit;
	text-decoration: none;
	transition: .3s;
}
button {
	cursor: pointer;
	color: inherit;
}
body {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-size: 16px;
	line-height: 2;
	color: var(--text-color);
	background: var(--beige-color);
	-webkit-text-size-adjust: 100%;
}
.indent {
	text-indent: -0.5em;
}
span.indent {
	display: block;
}



/* フェードアニメーション css
----------------------------------------------------------*/

/*ふわっと出る*/
.mv01_on {
	opacity: 0;
	transition: opacity 1s;
}
.mv01_off {
	opacity: 1;
}
.mv02_on {
	opacity: 0;
	transform: translate3d(0, 45px, 0);
	transition: opacity 1s, transform 1s;
}
.mv02_off {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}





/*===============================================
横幅1200px以下
===============================================*/
@media screen and (max-width: 1240px) and (min-width: 441px){
	html,
	body,
	.wrap{
		width:1240px;
	}
}

/*===============================================
横幅441px以上
===============================================*/
@media screen and (min-width: 441px) {
	a {
		transition: all .5s;
	}
	a:hover {
		opacity:0.8;
		filter:alpha(opacity=80);
		-moz-opacity:0.8;
		transition: all .5s;
	}
	.sp {
		display: none !important;
	}
	.wrap {
		position: relative;
		z-index: 0;
		min-width: 1240px;
		overflow: hidden;
		background: var(--main-light-color);
	}
	.inner {
		width: 1200px;
		margin: 0 auto;
	}
	a:hover {
		opacity: .7;
	}



/* header
------------------------------------------------------------------------*/
	header {
		position: relative;
		z-index: 100;
	}
	header h1 {
		position: absolute;
		top: 80px;
		right: 0;
		z-index: 2;
		height: 25px;
		padding: 0 10px 0 17px;
		box-sizing: border-box;
		background: #fff;
		font-size: 12px;
		line-height: 25px;
		white-space: nowrap;
	}
	header .header_fix {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 3;
		width: 100%;
	}
	header .header_fix.active {
		position: fixed;
	}
	header .header_box {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 3;
		width: 100%;
		height: 70px;
	}
	header .header_box.active {
		position: absolute;
		height: 50px;
		background: #fff;
	}
	header .header_box .logo {
		position: absolute;
		top: 20px;
		left: 30px;
		line-height: 1;
	}
	header .header_box.active .logo {
		top: 10px;
		left: calc(50% - 600px);
	}
	header .header_box.active .logo .logo01 {
		display: none;
	}
	header .header_box .logo .logo02 {
		display: none;
	}
	header .header_box.active .logo .logo02 {
		display: block;
		width: 176px;
	}
	header .header_box .catch {
		position: absolute;
		top: 28px;
		left: 291px;
		color: #fff;
		font-size: 14px;
		font-weight: bold;
		line-height: 24px;
		white-space: nowrap;
	}
	header .header_box.active .catch {
		top: 13px;
		left: calc(50% - 409px);
		color: var(--text-color);
	}
	header .header_box .catch span::before {
		content: "［ ";
	}
	header .header_box .catch span::after {
		content: " ］";
	}
	header .header_box .h_link {
		position: absolute;
		top: 20px;
		right: 20px;
		display: flex;
		justify-content: space-between;
		width: 510px;
		height: 50px;
		border-radius: 25px;
		background: #fdfdfd;
	}
	header .header_box.active .h_link {
		top: 7px;
		right: calc(50% - 600px);
		width: auto;
		height: 36px;
		background: none;
	}
	header .header_box .h_link ul {
		display: flex;
		padding-left: 32px;
	}
	header .header_box.active .h_link ul {
		padding: 0 17px 0 0;
	}
	header .header_box .h_link ul li {
		position: relative;
	}
	header .header_box .h_link ul li + li {
		margin-left: 48px;
	}
	header .header_box .h_link ul li + li::before {
		content: "";
		position: absolute;
		top: 18px;
		left: -24px;
		width: 1px;
		height: 14px;
		background: #ccc;
	}
	header .header_box.active .h_link ul li + li::before {
		top: 11px;
	}
	header .header_box .h_link ul li a {
		position: relative;
		display: block;
		padding-left: 24px;
		font-size: 16px;
		font-weight: bold;
		line-height: 50px;
		white-space: nowrap;
		transition: opacity .5s;
	}
	header .header_box .h_link ul li.contact a {
		padding-left: 26px;
	}
	header .header_box.active .h_link ul li a {
		line-height: 36px;
	}
	header .header_box .h_link ul li a::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 19px;
		height: 19px;
		transform: translateY(-50%);
		background: url(img/common_icon01.svg) no-repeat center / contain;
	}
	header .header_box .h_link ul li.contact a::before {
		width: 18px;
		height: 14px;
		background-image: url(img/common_icon02.svg);
	}
	header .header_box .h_link .cart a {
		position: relative;
		display: block;
		width: 180px;
		height: 50px;
		padding-left: 58px;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		border-radius: 0 25px 25px 0;
		background: var(--main-color);
		color: #fff;
		font-size: 16px;
		font-weight: bold;
		line-height: 48px;
		transition: border-color .5s, background-color .5s, color .5s;
	}
	header .header_box .h_link .cart a:hover {
		opacity: 1;
		border-color: #fdfdfd;
		background: #fdfdfd;
		color: var(--main-color);
	}
	header .header_box.active .h_link .cart a:hover {
		border-color: var(--main-color);
		background: #fff;
	}
	header .header_box.active .h_link .cart a {
		width: 182px;
		height: 36px;
		padding-left: 65px;
		border-radius: 18px;
		font-size: 14px;
		line-height: 34px;
	}
	header .header_box .h_link .cart a::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 28px;
		width: 20px;
		height: 20px;
		transform: translateY(-50%);
		background: url(img/common_icon09.svg) no-repeat center / contain;
		filter: brightness(0) invert(1);
	}
	header .header_box.active .h_link .cart a::before {
		left: 38px;
		width: 18px;
		height: 18px;
	}
	header .header_box .h_link .cart a:hover::before {
		filter: none;
	}
	@media screen and (max-width: 1240px) {
		header .header_fix {
			width: 1240px;
		}
		header .header_box {
			width: 1240px;
		}
	}
	@media screen and (max-width: 1300px) {
		header .header_box.active .logo {
			left: calc(50% - 550px);
		}
		header .header_box.active .catch {
			left: calc(50% - 359px);
		}
		header .header_box.active .h_link {
			right: calc(50% - 550px);
		}
	}



/* nav
------------------------------------------------------------------------*/
	#nav {
		position: absolute;
		top: max(600px, calc(100vh - 40px));
		left: 0;
		z-index: 2;
		width: 100%;
		height: 40px;
		background: #ffe692;
	}
	#nav.active {
		top: 50px;
	}
	#nav .gnav {
		position: relative;
		display: flex;
		width: max-content;
		margin: 0 auto;
	}
	#nav .gnav > li > a {
		position: relative;
		display: block;
		padding: 0 21px;
		font-size: 14px;
		font-weight: bold;
		line-height: 40px;
		white-space: nowrap;
	}
	#nav .gnav > li.has_sub > a {
		padding-right: 35px;
	}
	#nav .gnav > li.has_sub {
		position: relative;
	}
	#nav .gnav > li.has_sub.r_sub {
		position: static;
	}
	#nav .gnav > li.has_sub > a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 21px;
		width: 4px;
		height: 6px;
		transform: translateY(-50%) rotate(-90deg);
		background: url(img/common_icon04.svg) no-repeat center / contain;
		transition: transform .3s;
	}
	#nav .gnav > li.has_sub:hover > a::after {
		transform: translateY(-50%) rotate(90deg);
	}
	#nav.active .gnav > li.has_sub > a::after {
		transform: translateY(-50%) rotate(90deg);
	}
	#nav.active .gnav > li.has_sub:hover > a::after {
		transform: translateY(-50%) rotate(-90deg);
	}
	#nav .sub_nav {
		position: absolute;
		bottom: 48px;
		left: 0;
		visibility: hidden;
		opacity: 0;
		padding: 27px 30px 18px;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		background: #fff;
		transition: .3s;
	}
	#nav.active .sub_nav {
		top: 48px;
		bottom: auto;
	}
	#nav .sub_nav.num {
		width: 172px;
	}
	#nav .sub_nav.price {
		width: 227px;
	}
	#nav .sub_nav.guide {
		width: 213px;
	}
	#nav .sub_nav.set,
	#nav .sub_nav.drink {
		width: 653px;
	}
	#nav .sub_nav.all {
		width: 783px;
	}
	#nav .sub_nav.drink {
		padding-bottom: 22px;
	}
	#nav .gnav > li.has_sub:hover .sub_nav {
		visibility: visible;
		opacity: 1;
	}
	#nav .sub_nav::before {
		content: "";
		position: absolute;
		bottom: -9px;
		left: 0;
		width: 100%;
		height: 8px;
	}
	#nav.active .sub_nav::before {
		top: -9px;
		bottom: auto;
	}
	#nav .sub_nav .ttl {
		position: relative;
		padding-left: 14px;
		color: var(--main-color);
		font-size: 16px;
		font-weight: bold;
		line-height: 24px;
		white-space: nowrap;
	}
	#nav .sub_nav .ttl::before {
		content: "";
		position: absolute;
		top: 3px;
		left: 0;
		width: 4px;
		height: 19px;
		background: var(--main-color);
	}
	#nav .sub_nav ul {
		margin-top: 12px;
	}
	#nav .sub_nav .text + ul {
		margin-top: 13px;
	}
	#nav .sub_nav.set ul {
		display: flex;
		gap: 0 55px;
	}
	#nav .sub_nav.all ul {
		display: grid;
		grid-template-columns: 217px 172px 187px auto;
	}
	#nav .sub_nav.drink ul {
		margin-top: 15px;
	}
	#nav .sub_nav ul li a {
		display: block;
		font-size: 14px;
		font-weight: bold;
		line-height: 40px;
		white-space: nowrap;
	}
	#nav .sub_nav.drink ul li a {
		line-height: 32px;
	}
	#nav .sub_nav ul li a:hover {
		opacity: 1;
		color: var(--main-color);
	}
	#nav .sub_nav ul li a::before {
		content: "・";
	}
	#nav .sub_nav .text {
		margin-top: 18px;
		padding-bottom: 20px;
		border-bottom: 1px solid var(--main-color);
		font-size: 14px;
		line-height: 26px;
	}
	#nav .gnav > li.r_sub .sub_nav {
		right: 0;
		left: auto;
	}
	#nav .sub_nav.drink ul li a span {
		color: var(--main-color);
	}
	header .under_damy_box {
		display: none;
	}
	@media screen and (max-width: 1260px) {
		#nav .gnav > li > a {
			padding: 0 20px;
		}
		#nav .gnav > li.has_sub > a {
			padding-right: 34px;
		}
		#nav .gnav > li.has_sub > a::after {
			right: 20px;
		}
	}



/* home
------------------------------------------------------------------------*/
	/* key */
	.home .key {
		position: relative;
		height: 100vh;
		min-height: 640px;
		overflow: hidden;
		background: url(img/common_bg01.png) var(--main-color);
	}
	.home .key::before {
		content: "";
		position: absolute;
		top: -479px;
		left: calc(50% - 956px);
		width: 1212px;
		height: 1227px;
		background: url(img/top_illust01.svg) no-repeat left top / 100% 100%;
	}
	.home .key .key_text {
		position: absolute;
		top: 0;
		left: calc(50% - 750px);
		z-index: 2;
		width: 480px;
		transform: translateY(clamp(-90px, calc((100vh - 850px) / 2), 0px));
	}
	.home .key .key_ttl {
		padding-top: 160px;
	}
	.home .key .key_ttl img {
		display: block;
	}
	.home .key .key_ttl img:first-child {
		margin-left: 26px;
	}
	.home .key .key_ttl img:last-child {
		margin: 9px 0 0 -3px;
		filter: drop-shadow(11px 11px 3px rgba(0, 0, 0, .2));
	}
	.home .key .key_icon {
		display: flex;
		margin-top: 29px;
	}
	.home .key .key_icon li {
		width: 96px;
		height: 70px;
		box-sizing: border-box;
		border-left: 1px solid #f5ce1f;
		color: #f5ce1f;
		font-size: 18px;
		font-weight: bold;
		line-height: 24px;
		text-align: center;
		white-space: nowrap;
	}
	.home .key .key_icon li.icon02 {
		width: 115px;
	}
	.home .key .key_icon li.icon04 {
		width: 171px;
		border-right: 1px solid #f5ce1f;
	}
	.home .key .key_icon li::before {
		content: "";
		display: block;
		height: 44px;
		margin-bottom: 3px;
		background: url(img/top_icon01.svg) no-repeat center bottom;
	}
	.home .key .key_icon li.icon02::before {
		background-image: url(img/top_icon02.svg);
	}
	.home .key .key_icon li.icon03::before {
		background-image: url(img/top_icon03.svg);
	}
	.home .key .key_icon li.icon04::before {
		background-image: url(img/top_icon04.svg);
	}
	.home .key .key_lead {
		margin: 33px 0 0 -2px;
		color: #fff;
		font-size: 21px;
		font-weight: bold;
		line-height: 24px;
		white-space: nowrap;
	}
	.home .key .key_point {
		width: 478px;
		margin-top: 31px;
	}
	.home .key .key_point li {
		height: 45px;
		border-radius: 3px;
		background: #fdfdfd;
		font-size: 16px;
		font-weight: bold;
		line-height: 45px;
		text-align: center;
		white-space: nowrap;
	}
	.home .key .key_point li + li {
		margin-top: 10px;
	}
	.home .key .key_point li span {
		position: relative;
		margin-right: 30px;
		color: var(--main-color);
		font-size: 22px;
		font-weight: bold;
	}
	.home .key .key_point li span::after {
		content: "";
		position: absolute;
		top: 50%;
		right: -16px;
		width: 1px;
		height: 18px;
		transform: translateY(-50%);
		background: var(--main-color);
	}
	.home .key .key_slide {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: calc(100% - 40px);
		overflow: hidden;
	}
	.home .key .key_slide_wrap {
		position: absolute;
		top: -910px;
		left: calc(50% - 467.5px);
		display: flex;
		align-items: flex-start;
		gap: 5px;
		width: 1005px;
		height: 4260px;
		transform: rotate(20deg);
	}
	.home .key .key_slide_col {
		width: 500px;
		animation: col_up 60s linear infinite;
		animation-play-state: paused;
	}
	@keyframes col_up {
		0% { transform: translate3d(0, 0, 0); }
		100% { transform: translate3d(0, -25%, 0); }
	}
	.home .key .key_slide_col.is-loop {
		animation-play-state: running;
	}
	.home .key .key_slide_col.col02 {
		margin-top: -177px;
		animation-name: col_down;
	}
	@keyframes col_down {
		0% { transform: translate3d(0, -25%, 0); }
		100% { transform: translate3d(0, 0, 0); }
	}
	.home .key .key_slide_col li {
		margin-bottom: 5px;
	}


	/* AIに相談するボタン */
	.ai_btn {
		position: fixed;
		right: 30px;
		bottom: 70px;
		z-index: 101;
		transition: opacity .3s, visibility .3s;
	}
	body:has(#nav .gnav > li.has_sub:hover) .ai_btn {
		visibility: hidden;
		opacity: 0;
	}
	.ai_btn a {
		display: block;
		width: 130px;
		height: 130px;
		padding-top: 80px;
		box-sizing: border-box;
		border-radius: 50%;
		background: #222 url(img/common_icon05.svg) no-repeat center 31px;
		color: #fff;
		font-size: 14px;
		font-weight: bold;
		line-height: 20px;
		text-align: center;
	}
	.ai_btn a:hover {
		opacity: 1;
		background-color: var(--main-color);
	}
	@media screen and (max-width: 1560px) {
		.home .key::before {
			left: -176px;
		}
		.home .key .key_text {
			left: 30px;
		}
		.home .key .key_slide_wrap {
			left: 312.5px;
		}
	}


	/* bnr_box */
	.home .bnr_box {
		padding: 90px 0 111px;
		background: linear-gradient(transparent 185px, var(--beige-color) 185px), url(img/common_bg01.png) var(--main-color);
	}
	.home .bnr_box .bnr_slide .swiper-slide {
		width: 480px;
	}
	.home .bnr_box .bnr_slide .swiper-slide img {
		border-radius: 5px;
	}


	/* cont01 */
	.home .cont01 {
		background: var(--beige-color);
	}
	.home .cont01 .inner {
		display: flex;
		justify-content: space-between;
	}
	.home .cont01 .search_box {
		width: 590px;
		height: 180px;
		border-radius: 10px;
		background: rgba(206, 28, 31, .15);
	}
	.home .cont01 .search_box.price {
		background: rgba(210, 166, 0, .15);
	}
	.home .cont01 .search_box h2 {
		margin-top: -14px;
		font-size: 22px;
		font-weight: bold;
		line-height: 24px;
		text-align: center;
	}
	.home .cont01 .search_box h2 span {
		color: var(--main-color);
		font-weight: bold;
	}
	.home .cont01 .search_box.price h2 span {
		color: var(--gold-color);
	}
	.home .cont01 .search_box ul {
		display: grid;
		grid-template-columns: repeat(2, 260px);
		gap: 10px;
		width: 530px;
		margin: 30px auto 0;
	}
	.home .cont01 .search_box ul li a {
		position: relative;
		display: block;
		height: 50px;
		padding-left: 19px;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		border-radius: 3px;
		background: #fff;
		color: var(--main-color);
		font-size: 16px;
		font-weight: bold;
		line-height: 48px;
	}
	.home .cont01 .search_box ul li a:hover {
		opacity: 1;
		background: var(--main-color);
		color: #fff;
	}
	.home .cont01 .search_box.price ul li a {
		border-color: #d1a500;
		color: var(--gold-color);
	}
	.home .cont01 .search_box.price ul li a:hover {
		background: var(--gold-color);
		color: #fff;
	}
	.home .cont01 .search_box ul li a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 19px;
		width: 16px;
		height: 16px;
		transform: translateY(-50%);
		background: url(img/common_arrow02.svg) no-repeat center / contain;
	}
	.home .cont01 .search_box ul li a:hover::after {
		background-image: url(img/common_arrow01.svg);
	}
	.home .cont01 .search_box.price ul li a::after {
		background-image: url(img/common_arrow03.svg);
	}
	.home .cont01 .search_box.price ul li a:hover::after {
		background-image: url(img/common_arrow08.svg);
	}
	@media screen and (max-width: 1300px) {
		.home .cont01 .inner {
			width: 1100px;
		}
		.home .cont01 .search_box {
			width: 540px;
		}
		.home .cont01 .search_box ul {
			width: 500px;
			grid-template-columns: repeat(2, 245px);
		}
	}


	/* cont02 */
	.home .cont02 {
		padding-top: 108px;
		background: var(--beige-color);
	}
	.home .cont02 .h_box {
		position: relative;
		padding-top: 19px;
	}
	.home .cont02 .h_box::before {
		content: "";
		position: absolute;
		top: 0;
		left: -1px;
		width: 121px;
		height: 14px;
		background: url(img/top_text01.svg) no-repeat left top;
	}
	.home .cont02 .h_box h2 {
		font-size: 28px;
		font-weight: bold;
		line-height: 40px;
	}
	.home .cont02 .h_box .text01 {
		position: absolute;
		top: 32px;
		right: 0;
		font-size: 16px;
		line-height: 28px;
		white-space: nowrap;
	}
	.home .cont02 .h_box .text01::before {
		content: "";
		position: absolute;
		top: -40px;
		right: 0;
		width: 120px;
		height: 25px;
		background: url(img/top_icon05.svg) no-repeat right top / contain;
	}
	.home .cont02 .voice_list {
		margin-top: 47px;
		padding: 30px 20px 30px 0;
		box-sizing: border-box;
		border: 1px solid var(--gold-color);
		border-radius: 5px;
		background: #fff;
		height: 450px;
	}
	.home .cont02 .scroll_box {
		height: 100%;
		padding: 14px 0 0 49px;
		box-sizing: border-box;
		overflow-y: auto;
		scrollbar-width: thin;
		scrollbar-color: #ccc transparent;
	}
	.home .cont02 .scroll_box::-webkit-scrollbar {
		width: 5px;
	}
	.home .cont02 .scroll_box::-webkit-scrollbar-thumb {
		border-radius: 3px;
		background: #ccc;
	}
	.home .cont02 .voice {
		width: 1055px;
	}
	.home .cont02 .voice + .voice {
		margin-top: 30px;
	}
	.home .cont02 .voice .info {
		font-size: 16px;
		font-weight: bold;
		line-height: 26px;
	}
	.home .cont02 .voice .info .date {
		position: relative;
		display: inline-block;
		margin-right: 34px;
		color: var(--gold-color);
		font-weight: bold;
	}
	.home .cont02 .voice .info .date::after {
		content: "";
		position: absolute;
		top: 6px;
		right: -18px;
		width: 1px;
		height: 14px;
		background: #ccc;
	}
	.home .cont02 .voice .text02 {
		margin-top: 15px;
		font-size: 16px;
		line-height: 30px;
	}
	.home .cont02 .rate_list {
		display: flex;
		gap: 51px;
		margin-top: 56px;
	}
	.home .cont02 .rate {
		position: relative;
		width: 378px;
		height: 150px;
		padding-left: 22px;
		box-sizing: border-box;
		border-left: 2px solid var(--gold-color);
	}
	.home .cont02 .rate h3 {
		position: relative;
		margin-top: -4px;
		padding-left: 40px;
		color: var(--gold-color);
		font-size: 22px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont02 .rate h3::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 34px;
		height: 30px;
		background: url(img/top_icon06.svg) no-repeat left center;
	}
	.home .cont02 .rate ul {
		margin-top: 12px;
	}
	.home .cont02 .rate ul li {
		font-size: 16px;
		line-height: 32px;
		white-space: nowrap;
	}
	.home .cont02 .rate ul li::before {
		content: "■";
		margin-right: .3em;
		color: var(--main-color);
	}
	.home .cont02 .rate ul li.c02::before {
		color: #f6921e;
	}
	.home .cont02 .rate ul li.c03::before {
		color: #42ce42;
	}
	.home .cont02 .rate ul li span::before {
		content: "｜";
		padding: 0 .1em;
		color: #999;
	}
	.home .cont02 .rate .pie {
		position: absolute;
		top: -2px;
		right: 0;
		width: 150px;
		height: 150px;
		overflow: hidden;
		border-radius: 50%;
		background: conic-gradient(var(--main-color) 0 var(--p1), #f6921e var(--p1) var(--p2), #42ce42 var(--p2) 100%);
		text-indent: 200%;
		white-space: nowrap;
	}
	.home .cont02 .rate02 {
		width: 361px;
	}
	.home .cont02 .rate02 h3::before {
		top: -2px;
		height: 34px;
		background-image: url(img/top_icon07.svg);
	}
	.home .cont02 .rate03 {
		width: 359px;
	}
	.home .cont02 .rate03 h3::before {
		background-image: url(img/top_icon08.svg);
	}
	@media screen and (max-width: 1300px) {
		.home .cont02 .inner {
			width: 1100px;
		}
		.home .cont02 .scroll_box {
			padding-left: 40px;
		}
		.home .cont02 .voice {
			width: 1000px;
		}
		.home .cont02 .rate_list {
			gap: 30px;
		}
		.home .cont02 .rate {
			width: 360px;
			padding-left: 15px;
		}
		.home .cont02 .rate .pie {
			top: 10px;
			width: 130px;
			height: 130px;
		}
		.home .cont02 .rate02 {
			width: 345px;
		}
		.home .cont02 .rate03 {
			width: 335px;
		}
	}


	/* cont03 */
	.home .cont03 {
		padding: 100px 0 350px;
		background: url(img/top_bg01.png) repeat-x left bottom var(--beige-color);
		animation: strip_loop 60s linear infinite;
	}
	@keyframes strip_loop {
		0% { background-position: 0 100%; }
		100% { background-position: -1920px 100%; }
	}
	.home .cont03 .h_box {
		position: relative;
		padding-top: 19px;
	}
	.home .cont03 .h_box::before {
		content: "";
		position: absolute;
		top: 0;
		left: -1px;
		width: 99px;
		height: 13px;
		background: url(img/top_text02.svg) no-repeat left top;
	}
	.home .cont03 .h_box h2 {
		font-size: 28px;
		font-weight: bold;
		line-height: 40px;
	}
	.home .cont03 .h_box .text01 {
		position: absolute;
		top: 31px;
		right: 0;
		font-size: 16px;
		line-height: 28px;
		white-space: nowrap;
	}
	.home .cont03 .h_box .text01::before {
		content: "";
		position: absolute;
		top: -47px;
		right: 1px;
		width: 217px;
		height: 36px;
		background: url(img/top_text03.svg) no-repeat right top;
	}
	.home .cont03 .status_list {
		margin-top: 46px;
		padding: 30px 20px 30px 0;
		box-sizing: border-box;
		border: 1px solid var(--gold-color);
		border-radius: 5px;
		background: #fff;
		position: relative;
		height: 273px;
		border-color: var(--main-color);
	}
	.home .cont03 .scroll_box {
		height: 100%;
		padding: 14px 0 0 49px;
		box-sizing: border-box;
		overflow-y: auto;
		scrollbar-width: thin;
		scrollbar-color: #ccc transparent;
		padding-top: 8px;
	}
	.home .cont03 .scroll_box::-webkit-scrollbar {
		width: 5px;
	}
	.home .cont03 .scroll_box::-webkit-scrollbar-thumb {
		border-radius: 3px;
		background: #ccc;
	}
	.home .cont03 .status_list li {
		font-size: 16px;
		line-height: 40px;
		white-space: nowrap;
	}
	.home .cont03 .status_list li .date {
		display: inline-block;
		width: 130px;
		color: var(--main-color);
		font-weight: bold;
	}
	@media screen and (max-width: 1300px) {
		.home .cont03 .inner {
			width: 1100px;
		}
		.home .cont03 .scroll_box {
			padding-left: 40px;
		}
	}


	/* cont04 */
	.home .cont04 {
		padding-top: 130px;
		background: var(--beige-color);
	}
	.home .cont04 .inner {
		position: relative;
		z-index: 0;
		padding: 100px 0 101px;
	}
	.home .cont04 .inner::before {
		content: "";
		position: absolute;
		top: 0;
		right: -150px;
		bottom: 0;
		left: -150px;
		z-index: -1;
		border-radius: 10px;
		background: #fff;
	}
	.home .cont04 .h_box {
		text-align: center;
	}
	.home .cont04 .h_box::before {
		content: "";
		display: block;
		width: 105px;
		height: 19px;
		margin: 0 auto 14px;
		background: url(img/top_text04.svg) no-repeat center top;
	}
	.home .cont04 .h_box h2 {
		font-size: 34px;
		font-weight: bold;
		line-height: 48px;
	}
	.home .cont04 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 12px;
		line-height: 20px;
	}
	.home .cont04 .h_box .text02 {
		margin-top: 36px;
		font-size: 16px;
		line-height: 32px;
	}
	.home .cont04 .set_list {
		display: flex;
		justify-content: space-between;
		margin-top: 89px;
	}
	.home .cont04 .set_box {
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center;
		width: 580px;
		text-align: center;
	}
	.home .cont04 .set_box h3 {
		font-size: 24px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont04 .set_box h3::before {
		content: "";
		display: block;
		width: 150px;
		height: 13px;
		margin: 0 auto 12px;
		background: url(img/top_text07.svg) no-repeat center top;
	}
	.home .cont04 .set_box.course h3::before {
		width: 130px;
		background-image: url(img/top_text08.svg);
	}
	.home .cont04 .set_box .text03 {
		width: 450px;
		margin-top: 19px;
		font-size: 16px;
		line-height: 30px;
		text-align: left;
	}
	.home .cont04 .set_box figure {
		order: -1;
		margin-bottom: 30px;
	}
	.home .cont04 .set_box figure img {
		border-radius: 5px;
	}
	.home .cont04 .set_box .catch {
		position: absolute;
		top: -51px;
		left: 1px;
		z-index: 1;
	}
	.home .cont04 .set_box.course .catch {
		top: -48px;
		left: -19px;
	}
	.home .cont04 .set_box .button {
		margin-top: 25px;
	}
	.home .cont04 .set_box .button a {
		display: block;
		width: 460px;
		height: 40px;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		border-radius: 20px;
		background: var(--main-color);
		color: #fff;
		font-size: 16px;
		font-weight: bold;
		line-height: 38px;
	}
	.home .cont04 .set_box.course .button a {
		border-color: var(--gold-color);
		background: var(--gold-color);
	}
	.home .cont04 .set_box .button a:hover {
		opacity: 1;
		background: #fff;
		color: var(--main-color);
	}
	.home .cont04 .set_box.course .button a:hover {
		background: #fff;
		color: var(--gold-color);
	}
	.home .cont04 .button a {
		display: block;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
	}
	.home .cont04 .button a:hover {
		opacity: 1;
		background: #fff;
		color: var(--main-color);
	}
	@media screen and (max-width: 1600px) {
		.home .cont04 .inner::before {
			right: calc((1200px - 100vw) / 2 + 50px);
			left: calc((1200px - 100vw) / 2 + 50px);
		}
	}
	@media screen and (max-width: 1300px) {
		.home .cont04 .inner {
			width: 1100px;
		}
		.home .cont04 .inner::before {
			right: calc((1100px - 100vw) / 2 + 50px);
			left: calc((1100px - 100vw) / 2 + 50px);
		}
		.home .cont04 .set_box {
			width: 540px;
		}
		.home .cont04 .set_box figure img {
			width: 540px;
		}
		.home .cont04 .set_box.plate .catch {
			left: -9px;
		}
	}
	@media screen and (max-width: 1240px) {
		.home .cont04 .inner::before {
			right: -20px;
			left: -20px;
		}
	}


	/* cont05 */
	.home .cont05 {
		padding: 80px 0 130px;
		background: var(--beige-color);
	}
	.home .cont05 .inner {
		position: relative;
		z-index: 0;
		padding: 100px 0 92px;
	}
	.home .cont05 .inner::before {
		content: "";
		position: absolute;
		top: 0;
		right: -150px;
		bottom: 0;
		left: -150px;
		z-index: -1;
		border-radius: 10px;
		background: #fff;
	}
	.home .cont05 .h_box {
		text-align: center;
	}
	.home .cont05 .h_box::before {
		content: "";
		display: block;
		width: 61px;
		height: 19px;
		margin: 0 auto 14px;
		background: url(img/top_text22.svg) no-repeat center top;
	}
	.home .cont05 .h_box h2 {
		font-size: 34px;
		font-weight: bold;
		line-height: 48px;
	}
	.home .cont05 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 12px;
		line-height: 20px;
	}
	.home .cont05 .h_box .text02 {
		margin-top: 36px;
		font-size: 16px;
		line-height: 32px;
	}
	.home .cont05 .menu_list {
		display: grid;
		grid-template-columns: repeat(3, 370px);
		gap: 62px 45px;
		margin-top: 51px;
	}
	.home .cont05 .menu_card > a {
		display: flex;
		flex-direction: column;
		height: 100%;
	}
	.home .cont05 .menu_card > a:hover {
		opacity: 1;
	}
	.home .cont05 .menu_card h3 {
		font-size: 20px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont05 .menu_card .text03 {
		margin-top: 11px;
		font-size: 14px;
		line-height: 26px;
	}
	.home .cont05 .menu_card figure {
		order: -1;
		overflow: hidden;
		margin-bottom: 19px;
		border-radius: 5px;
	}
	.home .cont05 .menu_card figure img {
		transition: transform .4s;
	}
	.home .cont05 .menu_card > a:hover figure img {
		transform: scale(1.1);
	}
	.home .cont05 .menu_card .link {
		margin-top: auto;
		padding-top: 15px;
	}
	.home .cont05 .menu_card .link span {
		position: relative;
		display: block;
		padding-top: 11px;
		border-top: 1px solid var(--main-color);
		color: var(--main-color);
		font-size: 14px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont05 .menu_card .link span::after {
		content: "";
		position: absolute;
		top: 16px;
		right: 5px;
		width: 20px;
		height: 20px;
		background: url(img/common_arrow02.svg) no-repeat center / contain;
		transition: right .3s;
	}
	.home .cont05 .menu_card > a:hover .link span::after {
		right: 0;
	}
	@media screen and (max-width: 1600px) {
		.home .cont05 .inner::before {
			right: calc((1200px - 100vw) / 2 + 50px);
			left: calc((1200px - 100vw) / 2 + 50px);
		}
	}
	@media screen and (max-width: 1300px) {
		.home .cont05 .inner {
			width: 1100px;
		}
		.home .cont05 .inner::before {
			right: calc((1100px - 100vw) / 2 + 50px);
			left: calc((1100px - 100vw) / 2 + 50px);
		}
		.home .cont05 .menu_list {
			grid-template-columns: repeat(3, 350px);
			gap: 62px 25px;
		}
		.home .cont05 .menu_card figure img {
			width: 350px;
		}
	}
	@media screen and (max-width: 1240px) {
		.home .cont05 .inner::before {
			right: -20px;
			left: -20px;
		}
	}


	/* cont06 */
	.home .cont06 {
		padding: 110px 0 111px;
		background: url(img/common_bg01.png) var(--main-color);
	}
	.home .cont06 .h_box {
		position: relative;
		padding-top: 32px;
	}
	.home .cont06 .h_box::before {
		content: "";
		position: absolute;
		top: 1px;
		left: -1px;
		width: 88px;
		height: 19px;
		background: url(img/top_text10.svg) no-repeat left top;
	}
	.home .cont06 .h_box h2 {
		font-size: 28px;
		font-weight: bold;
		line-height: 40px;
		color: #fff;
	}
	.home .cont06 .h_box .text01 {
		position: absolute;
		top: 41px;
		right: 0;
		font-size: 16px;
		line-height: 32px;
		white-space: nowrap;
		color: #fff;
	}
	.home .cont06 .reason_slide {
		margin-top: 46px;
	}
	.home .cont06 .reason {
		width: 350px;
		height: 455px;
		display: flex;
		flex-direction: column;
		overflow: hidden;
		border-radius: 5px;
		background: #fff;
	}
	.home .cont06 .reason h3 {
		margin-top: 23px;
		padding: 0 20px 0 19px;
		font-size: 20px;
		font-weight: bold;
		line-height: 32px;
		white-space: nowrap;
	}
	.home .cont06 .reason h3::after {
		content: "";
		display: inline-block;
		width: 89px;
		height: 17px;
		margin: 0 0 3px 16px;
		vertical-align: middle;
		background: url(img/top_text11.svg) no-repeat left center;
	}
	.home .cont06 .reason.r02 h3::after {
		width: 91px;
		background-image: url(img/top_text12.svg);
	}
	.home .cont06 .reason.r03 h3::after {
		width: 91px;
		background-image: url(img/top_text13.svg);
	}
	.home .cont06 .reason.r04 h3::after {
		width: 92px;
		background-image: url(img/top_text14.svg);
	}
	.home .cont06 .reason.r05 h3::after {
		width: 91px;
		background-image: url(img/top_text15.svg);
	}
	.home .cont06 .reason.r06 h3::after {
		width: 92px;
		background-image: url(img/top_text16.svg);
	}
	.home .cont06 .reason .text02 {
		margin-top: 17px;
		padding: 0 20px;
		font-size: 14px;
		line-height: 26px;
	}
	.home .cont06 .reason figure {
		order: -1;
	}
	@media screen and (max-width: 1300px) {
		.home .cont06 .inner {
			width: 1100px;
		}
	}


	/* cont07 */
	.home .cont07 {
		padding: 120px 0 100px;
	}
	.home .cont07 .inner {
		padding-top: 47px;
		border-top: 1px solid var(--main-color);
	}
	.home .cont07 .h_box {
		position: relative;
		padding-left: 195px;
	}
	.home .cont07 .h_box::before {
		content: "";
		position: absolute;
		top: 7px;
		left: 0;
		width: 158px;
		height: 43px;
		background: url(img/top_text17.svg) no-repeat left top;
	}
	.home .cont07 .h_box h2 {
		font-size: 24px;
		font-weight: bold;
		line-height: 36px;
	}
	.home .cont07 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 12px;
		line-height: 20px;
	}
	.home .cont07 .h_box + * {
		margin-top: 36px;
	}
	.home .cont07 .guide_box {
		padding: 24px 30px 26px;
		box-sizing: border-box;
		border-radius: 5px;
		background: #fff;
	}
	.home .cont07 .guide_box + .guide_box {
		margin-top: 30px;
	}
	.home .cont07 .guide_box h3 {
		position: relative;
		margin-left: -30px;
		padding-left: 29px;
		font-size: 20px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont07 .guide_box h3::before {
		content: "";
		position: absolute;
		top: 6px;
		left: 0;
		width: 5px;
		height: 19px;
		background: var(--main-color);
	}
	.home .cont07 .guide_box .text02 {
		margin-top: 7px;
		font-size: 16px;
		line-height: 32px;
	}
	.home .cont07 .guide_box figure {
		margin-top: 13px;
	}
	.home .cont07 .guide_box .text02 a {
		color: var(--main-color);
		font-weight: bold;
		text-decoration: underline;
	}
	.home .cont07 .guide_box.cancel .col_box {
		display: flex;
		margin-top: 7px;
	}
	.home .cont07 .guide_box.cancel .col {
		width: 572px;
		font-size: 16px;
		line-height: 30px;
	}
	.home .cont07 .guide_box.cancel .col .text02 {
		margin-top: 0;
		line-height: 30px;
	}
	.home .cont07 .guide_box.cancel .col .text02::before {
		content: "■";
	}
	.home .cont07 .guide_box.cancel .col + .col li::before {
		content: "・";
	}
	.home .cont07 .button {
		margin-top: 60px;
	}
	.home .cont07 .button a {
		display: block;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
		width: 480px;
		height: 51px;
		border-radius: 26px;
		font-size: 16px;
		line-height: 49px;
	}
	.home .cont07 .button a:hover {
		opacity: 1;
		background: #fff;
		color: var(--main-color);
	}
	@media screen and (max-width: 1300px) {
		.home .cont07 .inner {
			width: 1100px;
		}
		.home .cont07 .guide_box.cancel .col {
			width: 540px;
		}
	}


	/* cont08 */
	.home .cont08 {
		overflow: hidden;
		padding-bottom: 100px;
	}
	.home .cont08 .inner {
		padding-top: 47px;
		border-top: 1px solid var(--main-color);
	}
	.home .cont08 .h_box {
		position: relative;
		padding-left: 166px;
	}
	.home .cont08 .h_box::before {
		content: "";
		position: absolute;
		top: 5px;
		left: 0;
		width: 131px;
		height: 44px;
		background: url(img/top_text18.svg) no-repeat left top;
	}
	.home .cont08 .h_box h2 {
		font-size: 24px;
		font-weight: bold;
		line-height: 36px;
	}
	.home .cont08 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 12px;
		line-height: 20px;
	}
	.home .cont08 .h_box + * {
		margin-top: 36px;
	}
	.home .cont08 .area_box {
		position: relative;
		margin-top: 6px;
	}
	.home .cont08 .area_box .map {
		position: absolute;
		top: 32px;
		left: 88px;
		width: 542px;
		height: 542px;
	}
	.home .cont08 .area_box .map::before {
		content: "";
		position: absolute;
		top: -668px;
		left: -1061px;
		z-index: -1;
		width: 2394px;
		height: 1943px;
		background: url(img/top_illust02.svg) no-repeat left top / 100% 100%;
		-webkit-mask-image: linear-gradient(to bottom, transparent 24%, rgba(0, 0, 0, .53) 37%, rgba(0, 0, 0, .82) 47%, #000 62%);
		mask-image: linear-gradient(to bottom, transparent 24%, rgba(0, 0, 0, .53) 37%, rgba(0, 0, 0, .82) 47%, #000 62%);
	}
	.home .cont08 .area_box .map::after {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 16px;
		height: 16px;
		transform: translate(-50%, -50%);
		border-radius: 50%;
		background: var(--main-color);
	}
	.home .cont08 .area_box .map .ripple {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border-radius: 50%;
		background: #d1944b;
		animation: ripple 5s ease-out infinite both;
	}
	@keyframes ripple {
		0% { transform: scale(.01); opacity: .5; }
		100% { transform: scale(1); opacity: 0; }
	}
	.home .cont08 .area_box .map .ripple:nth-child(2) {
		animation-delay: 1s;
	}
	.home .cont08 .area_box .map .ripple:nth-child(3) {
		animation-delay: 2s;
	}
	.home .cont08 .area_text {
		margin-left: 690px;
	}
	.home .cont08 .area_text h3 {
		font-size: 32px;
		font-weight: bold;
		line-height: 50px;
	}
	.home .cont08 .area_text .text02 {
		margin-top: 34px;
		font-size: 18px;
		font-weight: bold;
		line-height: 32px;
	}
	.home .cont08 .area_text .text03 {
		margin-top: 27px;
		font-size: 18px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont08 .area_text .text04 {
		margin-top: 28px;
		font-size: 16px;
		line-height: 30px;
	}
	.home .cont08 .area_text .text04 .note::before {
		content: "※";
	}
	.home .cont08 .area_text .button {
		margin-top: 32px;
	}
	.home .cont08 .button a {
		display: block;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
	}
	.home .cont08 .area_text .button a {
		width: 270px;
		height: 40px;
		border-radius: 20px;
		font-size: 16px;
		line-height: 38px;
	}
	.home .cont08 .button a:hover {
		opacity: 1;
		background: #fff;
		color: var(--main-color);
	}
	.home .cont08 .shop_box {
		margin-top: 80px;
		padding: 0 39px 33px;
		box-sizing: border-box;
		border-radius: 5px;
		background: #fff;
	}
	.home .cont08 .shop_box h3 {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 31px;
		position: relative;
		top: -17px;
		margin-bottom: -17px;
		color: var(--main-color);
		font-size: 20px;
		font-weight: bold;
		line-height: 32px;
		white-space: nowrap;
	}
	.home .cont08 .shop_box h3::before,
	.home .cont08 .shop_box h3::after {
		content: "";
		flex: 1;
		height: 2px;
		margin-top: 2px;
		background: var(--main-color);
	}
	.home .cont08 .shop_box .col_box {
		display: flex;
		margin-top: 26px;
	}
	.home .cont08 .shop_box .col {
		width: 560px;
	}
	.home .cont08 .shop_box .col .text02 {
		font-size: 16px;
		line-height: 32px;
	}
	.home .cont08 .shop_box .col .text03 {
		margin-top: 3px;
		font-size: 16px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont08 .shop_box .col .text03 .name {
		font-weight: bold;
	}
	.home .cont08 .shop_box .col .text03 .name::before {
		content: "■";
	}
	.home .cont08 .shop_box .col .text03 .map_link {
		position: relative;
		margin-left: 21px;
		padding-left: 15px;
		color: var(--main-color);
		font-size: 14px;
		font-weight: bold;
	}
	.home .cont08 .shop_box .col .text03 .map_link::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 11px;
		height: 15px;
		transform: translateY(-50%);
		background: url(img/top_icon11.svg) no-repeat center / contain;
	}
	.home .cont08 .shop_box ul.col {
		font-size: 16px;
		line-height: 32px;
	}
	.home .cont08 .shop_box ul.col li {
		padding-left: 1em;
		text-indent: -1em;
	}
	.home .cont08 .shop_box ul.col li::before {
		content: "・";
	}
	@media screen and (max-width: 1300px) {
		.home .cont08 .inner {
			width: 1100px;
		}
		.home .cont08 .area_text {
			margin-left: 640px;
		}
		.home .cont08 .shop_box {
			padding-right: 30px;
			padding-left: 30px;
		}
		.home .cont08 .shop_box h3::before,
		.home .cont08 .shop_box h3::after {
			width: 360px;
		}
		.home .cont08 .shop_box .col {
			width: 520px;
		}
	}


	/* cont09 */
	.home .cont09 {
		padding-bottom: 131px;
	}
	.home .cont09 .inner {
		padding-top: 47px;
		border-top: 1px solid var(--main-color);
	}
	.home .cont09 .h_box {
		position: relative;
		padding-left: 142px;
	}
	.home .cont09 .h_box::before {
		content: "";
		position: absolute;
		top: 6px;
		left: 0;
		width: 103px;
		height: 44px;
		background: url(img/top_text19.svg) no-repeat left top;
	}
	.home .cont09 .h_box h2 {
		font-size: 24px;
		font-weight: bold;
		line-height: 36px;
	}
	.home .cont09 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 12px;
		line-height: 20px;
	}
	.home .cont09 .h_box .button {
		position: absolute;
		top: 11px;
		right: 0;
	}
	.home .cont09 .button a {
		display: block;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
	}
	.home .cont09 .h_box .button a {
		width: 270px;
		height: 40px;
		border-radius: 20px;
		font-size: 16px;
		line-height: 38px;
	}
	.home .cont09 .button a:hover {
		opacity: 1;
		background: #fff;
		color: var(--main-color);
	}
	.home .cont09 .h_box + * {
		margin-top: 40px;
	}
	.home .cont09 .faq_list {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.home .cont09 .faq_list .col {
		width: 590px;
	}
	.home .cont09 .faq_wrap {
		padding: 25px 30px 26px;
		border-radius: 5px;
		background: #fff;
	}
	.home .cont09 .faq_wrap + .faq_wrap {
		margin-top: 20px;
	}
	.home .cont09 .faq_wrap .qes {
		position: relative;
		padding: 0 40px 0 37px;
		cursor: pointer;
		font-size: 18px;
		font-weight: bold;
		line-height: 24px;
	}
	.home .cont09 .faq_wrap .qes::before {
		content: "Q.";
		position: absolute;
		top: 0;
		left: 0;
		font-weight: bold;
	}
	.home .cont09 .faq_wrap .qes::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		width: 20px;
		height: 20px;
		transform: translateY(-50%) rotate(90deg);
		background: url(img/common_arrow02.svg) no-repeat center / contain;
		transition: transform .3s;
	}
	.home .cont09 .faq_wrap.is-open .qes::after {
		transform: translateY(-50%) rotate(-90deg);
	}
	.home .cont09 .faq_wrap .ans {
		height: 0;
		overflow: hidden;
		transition: height .3s ease;
	}
	.home .cont09 .faq_wrap.is-open .ans {
		height: auto;
	}
	.home .cont09 .faq_wrap .ans p {
		padding: 10px 5px 0 0;
		font-size: 16px;
		line-height: 30px;
	}
	@media screen and (max-width: 1300px) {
		.home .cont09 .inner {
			width: 1100px;
		}
		.home .cont09 .faq_list .col {
			width: 540px;
		}
		.home .cont09 .faq_wrap {
			padding: 25px 25px 26px;
		}
		.home .cont09 .faq_wrap .qes {
			padding-right: 35px;
		}
		.home .cont09 .faq_wrap .ans p {
			padding-right: 0;
		}
	}


	/* cont10 */
	.home .cont10 .inner {
		position: relative;
		width: 1700px;
		height: 1000px;
		padding: 120px 0 0 150px;
		box-sizing: border-box;
		overflow: hidden;
		border-radius: 10px;
		background: url(img/common_bg01.png) var(--main-color);
		color: #fff;
	}
	.home .cont10 .text_box {
		position: relative;
		z-index: 1;
		width: 640px;
	}
	.home .cont10 .h_box::before {
		content: "";
		display: block;
		width: 107px;
		height: 19px;
		margin-bottom: 14px;
		background: url(img/top_text20.svg) no-repeat left top;
	}
	.home .cont10 .h_box h2 {
		font-size: 34px;
		font-weight: bold;
		line-height: 48px;
	}
	.home .cont10 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 12px;
		line-height: 20px;
	}
	.home .cont10 .text_box .text02 {
		margin-top: 42px;
		font-size: 18px;
		font-weight: bold;
		line-height: 36px;
		white-space: nowrap;
	}
	.home .cont10 .text_box .text03 {
		margin-top: 27px;
		font-size: 16px;
		line-height: 32px;
		white-space: nowrap;
	}
	.home .cont10 .text_box .name {
		margin-top: 23px;
		font-size: 16px;
		font-weight: bold;
		line-height: 32px;
	}
	.home .cont10 .photo_slide {
		position: absolute;
		top: 0;
		right: 0;
		display: flex;
		align-items: flex-start;
		gap: 10px;
		width: 850px;
		height: 100%;
		overflow: hidden;
	}
	.home .cont10 .photo_slide ul {
		width: 420px;
		animation: col_down 50s linear infinite;
		animation-play-state: paused;
	}
	@keyframes col_down {
		0% { transform: translate3d(0, -25%, 0); }
		100% { transform: translate3d(0, 0, 0); }
	}
	.home .cont10 .photo_slide ul.is-loop {
		animation-play-state: running;
	}
	.home .cont10 .photo_slide ul.col01 {
		margin-top: -95px;
	}
	.home .cont10 .photo_slide ul.col02 {
		margin-top: -15px;
		animation-name: col_up;
	}
	@keyframes col_up {
		0% { transform: translate3d(0, 0, 0); }
		100% { transform: translate3d(0, -25%, 0); }
	}
	.home .cont10 .photo_slide ul.col03 {
		display: none;
	}
	.home .cont10 .photo_slide li {
		margin-bottom: 10px;
	}
	.home .cont10 .photo_slide li img {
		width: 100%;
	}
	@media screen and (max-width: 1800px) {
		.home .cont10 .inner {
			width: auto;
			margin: 0 50px;
		}
		.home .cont10 .photo_slide {
			width: calc(100% - 840px);
		}
		.home .cont10 .photo_slide ul {
			width: calc(50% - 5px);
		}
	}
	@media screen and (max-width: 1600px) {
		.home .cont10 .inner {
			margin: 0 20px;
			padding-left: 70px;
		}
		.home .cont10 .photo_slide {
			width: calc(100% - 770px);
		}
	}
	@media screen and (max-width: 1500px) {
		.home .cont10 .photo_slide {
			width: calc(100% - 750px);
		}
	}
	@media screen and (max-width: 1300px) {
		.home .cont10 .photo_slide ul.col01,
		.home .cont10 .photo_slide ul.col02 {
			display: none;
		}
		.home .cont10 .photo_slide ul.col03 {
			display: block;
			width: 100%;
			margin-top: -15px;
			animation-name: col_up;
			animation-duration: 70s;
		}
	}


	/* cont11 */
	.home .cont11 {
		padding: 130px 0;
		overflow: hidden;
	}
	.home .cont11 .h_box {
		position: relative;
		padding-left: 174px;
	}
	.home .cont11 .h_box::before {
		content: "";
		position: absolute;
		top: 6px;
		left: 0;
		width: 137px;
		height: 43px;
		background: url(img/top_text21.svg) no-repeat left top;
	}
	.home .cont11 .h_box h2 {
		font-size: 24px;
		font-weight: bold;
		line-height: 36px;
	}
	.home .cont11 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 12px;
		line-height: 20px;
	}
	.home .cont11 .h_box .button {
		position: absolute;
		top: 4px;
		right: 0;
	}
	.home .cont11 .button a {
		display: block;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
	}
	.home .cont11 .h_box .button a {
		width: 350px;
		height: 50px;
		border-radius: 25px;
		font-size: 16px;
		line-height: 48px;
	}
	.home .cont11 .button a:hover {
		opacity: 1;
		background: #fff;
		color: var(--main-color);
	}
	.home .cont11 .blog_slide {
		width: 1200px;
		margin: 60px auto 0;
		overflow: visible;
	}
	.home .cont11 .blog_card {
		width: 330px;
		height: 360px;
		border-radius: 5px;
		background: #fff;
		box-shadow: 14px 14px 20px rgba(0, 0, 0, .15);
	}
	.home .cont11 .blog_card a {
		display: flex;
		flex-direction: column;
		height: 100%;
		padding: 20px;
		box-sizing: border-box;
	}
	.home .cont11 .blog_card h3 {
		margin-top: 16px;
		overflow: hidden;
		font-size: 16px;
		font-weight: bold;
		line-height: 24px;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	.home .cont11 .blog_card .date {
		margin-top: 9px;
		color: var(--main-color);
		font-size: 14px;
		font-weight: bold;
		line-height: 20px;
	}
	.home .cont11 .blog_card .date time {
		font-weight: bold;
	}
	.home .cont11 .blog_card .text02 {
		display: -webkit-box;
		margin-top: 7px;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		font-size: 14px;
		line-height: 26px;
	}
	.home .cont11 .blog_card figure {
		order: -1;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 194px;
		overflow: hidden;
		border-radius: 3px;
		background: #eee;
	}
	.home .cont11 .blog_card figure.no_img {
		background: #feeae1;
	}
	.home .cont11 .blog_card figure img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.home .cont11 .blog_card figure.no_img img {
		width: 241px;
		height: auto;
	}
	@media screen and (max-width: 1300px) {
		.home .cont11 .inner,
		.home .cont11 .blog_slide {
			width: 1100px;
		}
	}



/* common
------------------------------------------------------------------------*/

/* key */
.common .key{
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 260px;
	background: var(--main-light-color);
	margin-top: 100px;
	box-sizing: border-box;
	position: relative;
}
.common .key::before{
	content: "";
	background: url(img/common_key_img.png)no-repeat;
	width: 1322px;
	height: 260px;
	position: absolute;
	top: 0;
	right: calc(50% - 900px);
}
@media screen and (min-width: 1800px) {
	.common .key::before{
		right: 0;
	}
}
.common .key .inner .ttl_en{
	color: var(--main-color);
	font-size: 16px;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.common .key .inner .ttl_jp{
	padding-top: 20px;
	font-size: 24px;
	line-height: 1;
	font-weight: 500;
}


/* pankuzu */
.pankuzu {
	margin-top: 36px;
	line-height: 1.3;
}
.pankuzu ul li {
	display: inline-block;
	margin-right: 10px;
	color: var(--main-color);
	font-size: 14px;
	font-weight: bold;
}
.pankuzu ul li a {
	color: #333;
	font-weight: bold;
}
.pankuzu ul li:not(:last-of-type)::after {
	content: "-";
	margin-left: 10px;
	flex-shrink: 0;
}
.pankuzu ul li:last-of-type {
	margin-right: 0;
}


/* 一覧ページのページャー */
.archive-pager{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	margin:120px auto;
}
.archive-pager .page-numbers{
	background: var(--main-color);
	color: #fff;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	box-sizing: border-box;
}
.archive-pager .page-numbers.current {
	border: 1px solid var(--main-color);
	color:var(--main-color);
	background: #fff;
}
.archive-pager .page-numbers.prev,
.archive-pager .page-numbers.next{
	background: var(--main-dark-color);
	color: #fff;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	box-sizing: border-box;
	padding-top: 3px;
}
.archive-pager .page-numbers.next {
	padding-left: 3px;
}



.single-pager{
	display: flex;
	justify-content: space-between;
	margin: 120px auto;
}
.single-pager .prev-pager-box,
.single-pager .next-pager-box{
	width: calc(50% - 30px);
}
.single-pager .prev-pager-box {
	margin-left: 20px;
}
.single-pager .next-pager-box {
	margin-right: 20px;
}
.single-pager a {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	font-size: 14px;
	position: relative;
}
.single-pager .prev-pager-box a {
	flex-direction: row-reverse;
}
.single-pager .prev-pager-box a::before,
.single-pager .next-pager-box a::before {
	content: "";
	width: 35px;
	height: 35px;
	background: var(--main-color);
	border-radius: 50%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.single-pager .prev-pager-box a::before{
	left: -20px;
}
.single-pager .next-pager-box a::before {
	right: -20px;
}
.single-pager .prev-pager-box a::after,
.single-pager .next-pager-box a::after {
	content: "";
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.single-pager .prev-pager-box a::after{
	border-right: 8px solid #fff;
	left: -7px;
}
.single-pager .next-pager-box a::after {
	border-left: 8px solid #fff;
	right: -7px;
}
.single-pager .prev-pager-box a .text-box {
	padding-left: 20px;
}
.single-pager .next-pager-box a .text-box {
	padding-right: 20px;
}
.single-pager a h2 {
	line-height: 1.3;
	padding-bottom: 10px;
	font-weight: bold;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.single-pager a .img {
	flex-shrink: 0;
	box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
}
.single-pager a .img img {
	width: 150px !important;
	border-radius: 5px !important;
}



/*blog共通項目
--------------------------------------------------------------------------*/
.blog .flex {
	display: flex;
	justify-content: flex-start;
	margin: 120px auto;
}
.blog .flex .left_box{
	flex-shrink: 1;
	width: 800px;
	margin-right: 30px;
}
.blog .flex .side {
	width: 370px;
	flex-shrink: 0;
	margin-top: -5px;
}
.blog .flex .side .side_box02,
.blog .flex .side .side_box03 {
	margin: 60px 0;
}
.blog .flex .side .cont a {
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
	align-items: center;
	box-sizing: border-box;
	margin-top: 20px;
}
.blog .flex .side h2 {
	font-size: 20px;
	font-weight: bold;
	padding-bottom: 5px;
	border-bottom: 1px solid var(--main-color);
	position: relative;
}
.blog .flex .side h2::before {
	content: "";
	color: var(--main-color);
	font-size: 14px;
	position: absolute;
	top: 7px;
	left: 100px;
}
.blog .flex .side .side_box01 h2::before {
	content: "Popular Articles";
}
.blog .flex .side .side_box02 h2::before {
	content: "New Articles";
}
.blog .flex .side .side_box03 h2::before {
	content: "Category";
	left: 110px;
}
.blog .flex .side .cont .text_box {
	margin-left: 15px;
	font-size: 14px;
	width: 205px;
}
.blog .flex .side .cont .text_box h3 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	margin-bottom: 10px;
}
.blog .flex .side .cont .img {
	width: 150px;
	flex-shrink: 0;
	position: relative;
	box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
	border-radius: 5px;
}
.blog .flex .side .cont .img img {
	border-radius: 5px;
}
.blog .flex .side .side_box01 .cont .img::before {
	content: "";
	width: 25px;
	height: 25px;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	background: var(--main-color);
	line-height: 1;
	box-sizing: border-box;
	padding-top: 6px;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
}
.blog .flex .side .side_box01 .cont:nth-of-type(1) .img::before {
	content: "1";
	background: #f2cd44;
}
.blog .flex .side .side_box01 .cont:nth-of-type(2) .img::before {
	content: "2";
	background: #ababab;
}
.blog .flex .side .side_box01 .cont:nth-of-type(3) .img::before {
	content: "3";
	background: #bc6c25;
}
.blog .flex .side .side_box01 .cont:nth-of-type(4) .img::before {
	content: "4";
}
.blog .flex .side .side_box01 .cont:nth-of-type(5) .img::before {
	content: "5";
}
.blog .flex .side .side_box02 .cont .img {
	position: relative;
}
.blog .flex .side .side_box02 .cont .img::before {
	content: "new";
	width: 50px;
	height: 25px;
	line-height: 1;
	font-size: 14px;
	box-sizing: border-box;
	padding-top: 5px;
	color: #fff;
	background: var(--main-color);
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
}
.blog .flex .side .side_box03 ul {
	margin-top: 15px;
}
.blog .flex .side .side_box03 ul li {
	position: relative;
	padding-left: 32px;
}
.blog .flex .side .side_box03 ul li:nth-of-type(n+2) {
	margin-top: 15px;
}
.blog .flex .side .side_box03 ul li::before {
	content: '';
	width: 25px;
	height: 25px;
	border-radius: 50%;
	background: url(img/category_icon.png) no-repeat top 7px left 7px var(--main-color);
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}


/*blog_archive
------------------------------------------------------------------------*/
.blog_archive .cont01 .cont:nth-of-type(1) {
	margin-top: 0;
}
.blog_archive .cont01 .cont {
	border-bottom: 1px solid var(--main-color);
	margin-top: 30px;
}
.blog_archive .cont01 .cont a{
	display: block;
	box-sizing: border-box;
	padding: 0 0 30px;
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
	justify-content: flex-end;
}
.blog_archive .cont01 .cont .img {
	flex-shrink: 0;
	box-shadow: 0 0 20px 10px rgba(0, 0, 0, 0.03);
	border-radius: 10px;
}
.blog_archive .cont01 .cont .img img {
	border-radius: 10px;
}
.blog_archive .cont01 .cont .text_box {
	width: 440px;
	padding-left: 30px;
}
.blog_archive .cont01 .cont h2 {
	font-size: 18px;
}
.blog_archive .cont01 .cont .text_box .cate_box {
	margin: 15px 0;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
}
.blog_archive .cont01 .cont .text_box .cate_box .cate {
	font-size: 12px;
	line-height: 1;
	color: #fff;
	background: var(--main-color);
	border-radius: 5px;
	min-width: 100px;
	padding: 7px 15px;
	text-align: center;
}
.blog_archive .cont01 .cont .text_box .cate_box .date {
	font-size: 14px;
	line-height: 1;
}
.blog_archive .cont01 .cont .text_box .text {
	line-height: 1.8;
}


/* ブログ詳細 css */
.blog_single .cont01 h1{
	padding-bottom: 10px;
	border-bottom: 1px solid var(--main-color);
	font-size: 20px;
	line-height: 1.5;
	margin: 0 0 25px;
	font-weight: bold;
	position: relative;
}
.blog_single .cont01 .cate_box {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 20px;
}
/*
.blog_single .cont01 .cate_box .cate {
	line-height: 1;
	font-size: 12px;
	color: #fff;
	text-align: center;
	min-width: 100px;
	padding: 7px 15px;
	border-radius: 5px;
	background: var(--main-color);
}*/
.blog_single .cont01 .cate_box .cate {
	text-align: center;
}
.blog_single .cont01 .cate_box .cate a{
	color: #fff;
	text-decoration: none;
	display: block;
	line-height: 1;
	font-size: 12px;
	min-width: 100px;
	padding: 7px 15px;
	border-radius: 5px;
	background: var(--main-color);
}



.blog_single .cont01 .cate_box .date{
	font-size: 14px;
	line-height: 1;
	margin: 0;
	font-weight: bold;
}



/* yonmaruyon yonichimaru
------------------------------------------------------------------------*/
.yonmaruyon .cont01,
.yonichimaru .cont01 {
	/* padding: 70px 0 100px; */
	padding: 70px 0 0;
	text-align: center;
}
.yonmaruyon .cont01 h2,
.yonichimaru .cont01 h2 {
	text-align: center;
	font-size: 24px;
}
.yonmaruyon .cont01 .text,
.yonichimaru .cont01 .text {
	margin: 30px 0 0;
	font-weight: bold;
}
.yonmaruyon .cont01 .button,
.yonichimaru .cont01 .button {
	margin-top: 40px;
}
.yonmaruyon .cont01 .button a,
.yonichimaru .cont01 .button a {
	width: 360px;
	border-radius: 60px;
	line-height: 1;
	padding: 20px 0;
	font-size: 16px;
	box-sizing: border-box;
	cursor: pointer;
	margin: auto;
	border: none;
	display: block;
	color: #fff;
	background: var(--main-color);
	border: 1px solid var(--main-color);
	transition: all .5s;
}
.yonmaruyon .cont01 .button a:hover,
.yonichimaru .cont01 .button a:hover {
	background: #fff;
	color: var(--main-color);
	transition: all .5s;
}



/* item_box（common_menu.php）
------------------------------------------------------------------------*/
	.item_box {
		padding: 120px 0;
		background: var(--beige-color);
	}
	.item_box h2 {
		font-size: 22px;
		font-weight: bold;
		line-height: 33px;
		text-align: center;
	}
	.item_box .text01 {
		margin-top: 10px;
		font-size: 16px;
		line-height: 24px;
		text-align: center;
	}
	.item_box .item_list {
		display: grid;
		grid-template-columns: repeat(4, 285px);
		gap: 20px;
		margin-top: 37px;
	}
	.item_box .item_list li a {
		position: relative;
		display: block;
		height: 60px;
		padding-left: 60px;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		border-radius: 3px;
		background: #fff;
		font-size: 16px;
		font-weight: bold;
		line-height: 58px;
		white-space: nowrap;
	}
	.item_box .item_list li a:hover {
		opacity: 1;
		background: var(--main-color);
		color: #fff;
	}
	.item_box .item_list li a::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 17px;
		width: 36px;
		height: 36px;
		transform: translateY(-50%);
		background: url(img/top_icon12.svg) no-repeat center;
	}
	.item_box .item_list li.i02 a::before {
		background-image: url(img/top_icon13.svg);
	}
	.item_box .item_list li.i03 a::before {
		background-image: url(img/top_icon14.svg);
	}
	.item_box .item_list li.i04 a::before {
		background-image: url(img/top_icon15.svg);
	}
	.item_box .item_list li.i06 a::before {
		background-image: url(img/top_icon17.svg);
	}
	.item_box .item_list li.i07 a::before {
		background-image: url(img/top_icon18.svg);
	}
	.item_box .item_list li.i08 a::before {
		background-image: url(img/top_icon19.svg);
	}
	.item_box .item_list li.i09 a::before {
		background-image: url(img/top_icon20.svg);
	}
	.item_box .item_list li.i10 a::before {
		background-image: url(img/top_icon21.svg);
	}
	.item_box .item_list li.i11 a::before {
		background-image: url(img/top_icon22.svg);
	}
	.item_box .item_list li.i12 a::before {
		background-image: url(img/top_icon23.svg);
	}
	.item_box .item_list li.i13 a::before {
		background-image: url(img/top_icon24.svg);
	}
	.item_box .item_list li.i14 a::before {
		background-image: url(img/top_icon25.svg);
	}
	.item_box .item_list li.i15 a::before {
		background-image: url(img/top_icon26.svg);
	}
	.item_box .item_list li.i16 a::before {
		background-image: url(img/top_icon27.svg);
	}
	.item_box .item_list li.i17 a::before {
		background-image: url(img/top_icon28.svg);
	}
	.item_box .item_list li.i18 a::before {
		background-image: url(img/top_icon29.svg);
	}
	.item_box .item_list li.i19 a::before {
		background-image: url(img/top_icon30.svg);
	}
	.item_box .item_list li.i20 a::before {
		background-image: url(img/top_icon31.svg);
	}
	.item_box .item_list li a:hover::before {
		filter: brightness(0) invert(1);
	}
	.item_box .item_list li a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 14px;
		width: 16px;
		height: 16px;
		transform: translateY(-50%);
		background: url(img/common_arrow02.svg) no-repeat center / contain;
	}
	.item_box .item_list li a:hover::after {
		background-image: url(img/common_arrow01.svg);
	}
	@media screen and (max-width: 1300px) {
		.item_box .inner {
			width: 1100px;
		}
		.item_box .item_list {
			grid-template-columns: repeat(4, 260px);
			gap: 20px 20px;
		}
		.item_box .item_list li a {
			padding-left: 55px;
			font-size: 15px;
		}
		.item_box .item_list li a::before {
			left: 12px;
		}
		.item_box .item_list li a::after {
			right: 10px;
		}
	}



/* contact_box
------------------------------------------------------------------------*/
	.contact_box {
		padding-bottom: 360px;
		background: url(img/common_bg02.png) repeat-x left bottom var(--beige-color);
		animation: strip_loop 60s linear infinite;
	}
	@keyframes strip_loop {
		0% { background-position: 0 100%; }
		100% { background-position: -1920px 100%; }
	}
	.contact_box .inner {
		position: relative;
		height: 400px;
		padding: 79px 0 0 79px;
		box-sizing: border-box;
		border-radius: 5px;
		background: url(img/common_bg01.png) var(--main-color);
		color: #fff;
	}
	.contact_box .text_box h2 {
		position: relative;
		padding-left: 190px;
		font-size: 16px;
		font-weight: bold;
		line-height: 30px;
	}
	.contact_box .text_box h2::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 156px;
		height: 30px;
		background: url(img/common_text01.svg) no-repeat left top;
	}
	.contact_box .text_box .text01 {
		margin-top: 28px;
		font-size: 14px;
		line-height: 28px;
		white-space: nowrap;
	}
	.contact_box .btn_box {
		position: absolute;
		top: 121px;
		right: 120px;
		width: 320px;
		text-align: center;
	}
	.contact_box .btn_box .tel a {
		position: relative;
		display: inline-block;
		padding-left: 25px;
	}
	.contact_box .btn_box .tel a::before {
		content: "";
		position: absolute;
		top: 1px;
		left: 0;
		width: 20px;
		height: 25px;
		background: url(img/common_icon06.svg) no-repeat center / contain;
	}
	.contact_box .btn_box .time {
		margin-top: 8px;
		font-size: 16px;
		line-height: 24px;
	}
	.contact_box .btn_box .button {
		margin-top: 23px;
	}
	.contact_box .btn_box .button + .button {
		margin-top: 21px;
	}
	.contact_box .btn_box .button a {
		position: relative;
		display: block;
		box-sizing: border-box;
		height: 50px;
		border: 1px solid #fff;
		font-weight: bold;
		text-align: center;
		border-radius: 25px;
		background: #fff;
		color: var(--text-color);
		font-size: 16px;
		line-height: 48px;
	}
	.contact_box .btn_box .button a:hover {
		opacity: 1;
		background: var(--main-color);
		border-color: #fff;
		color: #fff;
	}
	.contact_box .btn_box .button a::before {
		content: "";
		display: inline-block;
		width: 20px;
		height: 15px;
		margin: 0 10px 3px 0;
		vertical-align: middle;
		background: url(img/common_icon02.svg) no-repeat center / contain;
	}
	.contact_box .btn_box .button.chat a::before {
		width: 25px;
		height: 25px;
		margin-right: 7px;
		background-image: url(img/common_icon08.svg);
	}
	.contact_box .btn_box .button a:hover::before {
		filter: brightness(0) invert(1);
	}
	@media screen and (max-width: 1300px) {
		.contact_box .inner {
			width: 1100px;
			padding-left: 50px;
		}
		.contact_box .btn_box {
			right: 50px;
		}
	}



/* brand_box
------------------------------------------------------------------------*/
	.brand_box {
		padding: 125px 0 100px;
		background: var(--beige-color);
	}
	.brand_box h2 {
		color: var(--main-dark-color);
		font-size: 24px;
		font-weight: bold;
		line-height: 32px;
		text-align: center;
	}
	.brand_box h2 span {
		font-weight: bold;
	}
	.brand_box h2 span::before {
		content: "［ ";
	}
	.brand_box h2 span::after {
		content: " ］";
	}
	.brand_box .brand_list {
		display: flex;
		justify-content: space-between;
		margin-top: 52px;
	}
	.brand_box .brand_list li {
		width: 380px;
		text-align: center;
	}
	.brand_box .brand_list li .text01 {
		margin-bottom: 5px;
		font-size: 20px;
		font-weight: bold;
		line-height: 30px;
	}
	.brand_box .brand_list li a {
		display: flex;
		align-items: center;
		justify-content: center;
		height: 100px;
		border-radius: 5px;
		background: #144b6b;
	}
	.brand_box .brand_list li.b02 a {
		background: #f9e6e9;
	}
	.brand_box .brand_list li.b03 a {
		background: #f5e6b3;
	}
	@media screen and (max-width: 1300px) {
		.brand_box .inner {
			width: 1100px;
		}
		.brand_box .brand_list li {
			width: 350px;
		}
	}



/*post_cont
------------------------------------------------------------------------*/
.post_cont .index_nav {
	box-sizing: border-box;
	padding: 40px;
	border: none;
	border-radius: 0px;
	margin: 20px 0 45px;
	background: var(--main-light-color);
	border-radius: 10px;
}
.post_cont .index_nav .title {
	font-weight: bold;
	position: relative;
	padding: 0 !important;
	padding-left: 35px !important;
	font-size: 18px;
	line-height: 1.5;
	font-weight: normal;
}
.post_cont .index_nav .title::before {
	content: '';
	width: 20px;
	height: 18px;
	background: url(img/index_icon.png) no-repeat center / 100%;
	position: absolute;
	top: 4px;
	left: 5px;
}
.post_cont .index_nav {
	position: static;
}
.post_cont .index_nav ul {
	margin: 20px 0 0 0;
	padding-bottom: 0;
}
.post_cont .index_nav ul li.index_level03 {
	margin-left: 15px;
}
.post_cont .index_nav ul li.index_level04 {
	margin-left: 30px;
}
.post_cont .index_nav ul li.index_level05 {
	margin-left: 45px;
}
.post_cont .index_nav ul li {
	display: block;
	text-align: left;
	margin-top: 25px;
}
.post_cont .index_nav ul li.index_level03,
.post_cont .index_nav ul li.index_level04,
.post_cont .index_nav ul li.index_level05 {
	margin-top: 15px;
}
.post_cont .index_nav ul li a {
	font-size: 18px;
	font-weight: normal;
	text-decoration: none;
}
.post_cont .index_nav ul li.index_level03 a,
.post_cont .index_nav ul li.index_level04 a,
.post_cont .index_nav ul li.index_level05 a {
	font-size: 16px;
}
.post_cont .index_nav ul li a:hover {
	text-decoration: none;
}
.post_cont .index_nav ul li::before {
	display: none;
}

.post_cont .has-text-align-left{
	text-align: left;
}
.post_cont .has-text-align-center{
	text-align: center;
}
.post_cont .has-text-align-right{
	text-align: right;
}

.post_cont h2{
	margin: 50px 0 30px;
	padding: 0 0 0 35px;
	font-size: 24px;
	position: relative;
	line-height: 1.2;
}
.post_cont h2:before{
	content: "";
	display: block;
	width:14px;
	height: 14px;
	border:1px solid var(--main-color);
	background: #fff;
	position: absolute;
	top:0px;
	left:0;
}
.post_cont h2:after{
	content: "";
	display: block;
	width:14px;
	height: 14px;
	border:1px solid var(--main-color);
	background: var(--main-color);
	position: absolute;
	top:10px;
	left:10px;
}
.post_cont h3{
	margin: 45px 0 30px;
	padding: 0 0 0 30px;
	font-size: 22px;
	position: relative;
	line-height: 1.2;
}
.post_cont h3:before{
	content: "";
	display: block;
	width:20px;
	height: 20px;
	background: var(--main-color);
	position: absolute;
	top:2px;
	left:0;
}

.post_cont h4{
	font-size:20px;
	border-left:5px solid var(--main-color);
	margin: 40px 0 30px;
	padding: 2px 0 0 15px;
	line-height: 1.2;
}

.post_cont h5{
	font-size:18px;
	margin: 35px 0 30px;
	padding: 0 0 0 25px;
	position: relative;
	line-height: 1.2;
}
.post_cont h5:before{
	content: "";
	display: block;
	width:15px;
	height: 5px;
	background: var(--main-color);
	position: absolute;
	top:10px;
	left:0;
}
.post_cont strong{
	font-weight: bold;
	color: var(--main-dark-color);
}
.post_cont em{
	font-style: italic;
	color: var(--main-color);
}
.post_cont a{
	text-decoration: underline;
	color:var(--main-color);
}

.post_cont > p{
	margin: 0 0 30px;
}
.post_cont ul{
	margin: 0 0 30px 23px;
	list-style-type: disc;
}
.post_cont ol{
	margin: 0 0 30px 23px;
	list-style-type: decimal;
}
.post_cont table{
	border-collapse: separate;
	border-spacing: 5px;
	width: 100%;
	margin: 0 0 30px;
}
.post_cont table th{
	background: var(--main-color);
	color:#fff;
	font-weight: bold;
	padding: 10px 15px;
}
.post_cont table tr:nth-of-type(1) th{
	background: var(--main-dark-color);
}
.post_cont table td{
	background: var(--main-light-color);
	padding: 10px 15px;
}
.post_cont .wp-block-quote{
	background: var(--main-light-color);
	padding: 50px;
	border-left: 3px solid var(--main-color);
	margin: 0 0 30px;
	position: relative;
}
.post_cont .wp-block-quote:before,
.post_cont .wp-block-quote:after{
	content: "”";
	display: block;
	font-size: 100px;
	color:var(--main-color);
	line-height: 1;
	position: absolute;
}
.post_cont .wp-block-quote:before{
	top: 10px;
	left: 10px;
}
.post_cont .wp-block-quote:after{
	bottom: 10px;
	right: 10px;
	transform: rotate(180deg);
}

.post_cont .wp-block-buttons{
	margin: 0 0 30px;
	display: flex;
}
.post_cont .wp-block-buttons a{
	display: block;
	text-align: center;
	background: var(--main-color);
	border: 1px solid var(--main-color);
	box-sizing: border-box;
	line-height: 48px;
	min-width: 350px;
	height: 50px;
	border-radius: 50px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	transition: all 0.5s;
	position: relative;
	text-decoration: none;
}
.post_cont .wp-block-buttons a::after{
	content: "";
	background: url(img/btn_arrow01.png)center left / cover no-repeat;
	width: 16px;
	height: 12px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 20px;
}
.post_cont .wp-block-buttons a:hover {
	color: var(--main-color);
	background: #fff;
	opacity: 1;
}
.post_cont .wp-block-buttons a:hover::after {
	filter: brightness(0) saturate(100%) invert(15%) sepia(53%) saturate(5355%) hue-rotate(201deg) brightness(95%) contrast(101%);
}
.post_cont .wp-block-code{
	display: block;
	white-space: pre-wrap;
	margin: 0 0 30px;
}
.post_cont .wp-block-code code{
	display: inline-block;
	padding: 20px;
	color: #fff;
	background: #333;
}
.post_cont .wp-block-image{
	margin: 0 0 30px;
}
.post_cont .wp-block-image img{
	max-width: 100%;
	border-radius: 10px;
}




/* footer
------------------------------------------------------------------------*/
	footer {
		padding-bottom: 104px;
		background: var(--beige-color);
	}
	footer .inner {
		display: flex;
		padding-top: 101px;
		border-top: 1px solid var(--main-color);
	}
	footer .f_info {
		position: relative;
		width: 474px;
	}
	footer .f_info .logo {
		line-height: 1;
	}
	footer .f_info .name {
		margin-top: 24px;
		font-size: 16px;
		font-weight: bold;
		line-height: 30px;
	}
	footer .f_info .address {
		margin-top: 16px;
		font-size: 14px;
		line-height: 28px;
	}
	footer .f_info .address .ttl::before {
		content: "■";
	}
	footer .f_info .address .note::before {
		content: "※";
	}
	footer .f_info .copy {
		position: absolute;
		bottom: -4px;
		left: 0;
		font-size: 12px;
		line-height: 32px;
	}
	footer .f_nav {
		width: 195px;
		margin-right: 60px;
	}
	footer .f_nav.area {
		width: 160px;
	}
	footer .f_nav.blog {
		width: 251px;
		margin-right: 0;
	}
	footer .f_nav .ttl {
		margin-top: -9px;
		padding-bottom: 8px;
		border-bottom: 1px solid var(--main-color);
		color: var(--main-color);
		font-size: 14px;
		font-weight: bold;
		line-height: 32px;
	}
	footer .f_nav ul,
	footer .f_nav .scroll_box {
		margin-top: 9px;
		font-size: 14px;
		line-height: 36px;
	}
	footer .f_nav li a,
	footer .f_nav li span {
		display: block;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	footer .f_nav li a:hover {
		text-decoration: underline;
	}
	footer .f_nav li a::before,
	footer .f_nav li > span::before {
		content: "・";
		display: inline-block;
	}
	footer .f_nav li.has_sub > span {
		cursor: pointer;
	}
	footer .f_nav li.has_sub > span::after {
		content: "＋";
		margin-left: 1em;
	}
	footer .f_nav li.has_sub.is-open > span::after {
		content: "－";
	}
	footer .f_nav li.has_sub ul {
		display: none;
		margin: 0 0 0 1em;
	}
	footer .f_nav li.has_sub ul li a::before {
		content: "- ";
		white-space: pre;
	}
	footer .f_nav .scroll_box {
		height: 432px;
		overflow-y: auto;
		scrollbar-width: thin;
		scrollbar-color: #aaa transparent;
	}
	footer .f_nav .scroll_box::-webkit-scrollbar {
		width: 3px;
	}
	footer .f_nav .scroll_box::-webkit-scrollbar-thumb {
		background: #aaa;
	}
	footer .f_nav .pref::before {
		content: "■";
	}
	footer .f_nav ul + .pref {
		margin-top: 15px; /* AREA：府県ごとの間 */
	}
	footer .f_nav .scroll_box ul {
		margin-top: 0;
	}
	footer .f_nav.blog .scroll_box ul {
		padding-right: 15px;
	}
	@media screen and (max-width: 1300px) {
		footer .inner {
			width: 1100px;
		}
		footer .f_info {
			width: 434px;
		}
		footer .f_nav {
			margin-right: 40px;
		}
	}



}/*PCの記述ここまで*/



/*===============================================
横幅441px以下 sp
===============================================*/

@media screen and (max-width: 441px) {
	.pc {
		display: none !important;
	}
	body {
		font-size: 14px;
	}
	.wrap {
		position: relative;
		z-index: 0;
		overflow: hidden;
		background: var(--main-light-color);
	}
	.inner {
		padding: 0 20px;
		box-sizing: border-box;
	}



/* header
------------------------------------------------------------------------*/
	header {
		position: relative;
		z-index: 100;
	}
	header h1 {
		position: absolute;
		top: 46px;
		left: 11px;
		z-index: 2;
		color: #fff;
		font-size: 10px;
		line-height: 16px;
		white-space: nowrap;
	}
	header .header_box {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 3;
		width: 100%;
		height: 50px;
	}
	header .header_box.active,
	header .header_box.open {
		position: fixed;
		background: #fff;
	}
	header .header_box .logo {
		position: absolute;
		top: 12px;
		left: 11px;
		line-height: 1;
	}
	header .header_box .logo img {
		width: 160px;
	}
	header .header_box.active .logo .logo01,
	header .header_box.open .logo .logo01 {
		display: none;
	}
	header .header_box .logo .logo02 {
		display: none;
	}
	header .header_box.active .logo .logo02,
	header .header_box.open .logo .logo02 {
		display: block;
	}
	header .header_box .catch {
		position: absolute;
		top: 9px;
		left: 182px;
		color: #fff;
		font-size: 11px;
		font-weight: bold;
		line-height: 16px;
		white-space: nowrap;
	}
	header .header_box.active .catch,
	header .header_box.open .catch {
		color: var(--text-color);
	}
	header .header_box .catch span {
		display: block;
		margin-left: -.5em;
		font-weight: bold;
	}
	header .header_box .catch span::before {
		content: "［ ";
	}
	header .header_box .catch span::after {
		content: " ］";
	}
	header .header_box .h_link {
		display: none;
	}
	header #nav-btn {
		position: absolute;
		top: 5px;
		right: 5px;
		width: 40px;
		height: 40px;
		border-radius: 3px;
		background: var(--gold-color);
	}
	header #nav-btn span {
		position: absolute;
		left: 12px;
		width: 16px;
		height: 2px;
		background: #fff;
		transition: .3s;
	}
	header #nav-btn span:nth-child(1) {
		top: 14px;
	}
	header #nav-btn.active span:nth-child(1) {
		top: 19px;
		transform: rotate(45deg);
	}
	header #nav-btn span:nth-child(2) {
		top: 19px;
	}
	header #nav-btn.active span:nth-child(2) {
		opacity: 0;
	}
	header #nav-btn span:nth-child(3) {
		top: 24px;
	}
	header #nav-btn.active span:nth-child(3) {
		top: 19px;
		transform: rotate(-45deg);
	}



/* nav
------------------------------------------------------------------------*/
	#nav {
		position: fixed;
		top: 50px;
		left: 0;
		z-index: 2;
		visibility: hidden;
		opacity: 0;
		width: 100%;
		height: calc(100% - 50px);
		overflow-y: auto;
		background: var(--beige-color);
		transition: .3s;
	}
	#nav.open {
		visibility: visible;
		opacity: 1;
	}
	#nav .gnav {
		display: none;
	}
	#nav .sp_nav_wrap {
		padding: 30px 24px 80px;
	}
	#nav .sp_nav_box {
		padding-bottom: 30px;
		border-bottom: 1px solid #ccc;
	}
	#nav .sp_nav_box + .sp_nav_box {
		padding-top: 28px;
	}
	#nav .sp_nav_box h2 {
		font-size: 16px;
		font-weight: bold;
		line-height: 24px;
	}
	#nav .sp_nav_box h2::before {
		content: "・";
	}
	#nav .btn_list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 7px 8px;
		margin-top: 14px;
	}
	#nav .btn_list li a {
		display: block;
		height: 38px;
		padding-left: 15px;
		box-sizing: border-box;
		background: #f6dadb;
		font-size: 14px;
		font-weight: bold;
		line-height: 38px;
		white-space: nowrap;
	}
	#nav .btn_list li.long a {
		padding-left: 10px;
		font-size: 13px;
		letter-spacing: -.03em;
	}
	#nav .btn_list.red li a,
	#nav .btn_list.yellow li a {
		height: 43px;
		border: 1px solid;
		background: #fff;
		line-height: 42px;
	}
	#nav .btn_list.red li a {
		color: var(--main-color);
	}
	#nav .btn_list.yellow li a {
		color: var(--gold-color);
	}
	#nav .btn_list.beige li a {
		background: #f0e0cc;
	}
	#nav .link_list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-flow: column;
		grid-template-rows: repeat(4, auto);
		gap: 0 8px;
		padding: 18px 0 0 15px;
	}
	#nav .link_list li a {
		display: block;
		font-size: 14px;
		font-weight: bold;
		line-height: 44px;
	}



/* home
------------------------------------------------------------------------*/
	/* key */
	.home .key {
		--fv: max(750px, 100svh);
		position: relative;
		height: calc(var(--fv) + 90px);
		overflow: hidden;
		background: url(img/common_bg01.png) var(--main-color);
		background-size: 389px auto;
	}
	.home .key::before {
		content: "";
		position: absolute;
		top: -318px;
		left: -110px;
		width: 828px;
		height: 838px;
		background: url(img/top_illust01.svg) no-repeat left top / 100% 100%;
	}
	.home .key .key_text {
		position: relative;
		z-index: 2;
		display: flex;
		flex-direction: column;
		padding: 82px min(30px, 6.82vw) 0;
		text-align: center;
	}
	.home .key .key_ttl img {
		display: block;
		margin: 0 auto;
	}
	.home .key .key_ttl img:first-child {
		width: 291px;
	}
	.home .key .key_ttl img:last-child {
		width: 331px;
		margin-top: 7px;
		filter: drop-shadow(7px 7px 2px rgba(0, 0, 0, .2));
	}
	.home .key .key_icon {
		display: flex;
		order: 2;
		justify-content: center;
		margin-top: 14px;
	}
	.home .key .key_icon li {
		width: min(76px, 17.27vw);
		height: 60px;
		box-sizing: border-box;
		border-left: 2px solid #f5ce1f;
		color: #f5ce1f;
		font-size: min(14px, 3.18vw);
		font-weight: bold;
		line-height: 18px;
		white-space: nowrap;
	}
	.home .key .key_icon li.icon02 {
		width: min(92px, 20.9vw);
	}
	.home .key .key_icon li.icon04 {
		width: min(136px, 30.9vw);
		border-right: 2px solid #f5ce1f;
	}
	.home .key .key_icon li::before {
		content: "";
		display: block;
		height: 36px;
		margin-bottom: 5px;
		background: url(img/top_icon01.svg) no-repeat center bottom / auto 31px;
	}
	.home .key .key_icon li.icon02::before {
		background-image: url(img/top_icon02.svg);
	}
	.home .key .key_icon li.icon03::before {
		background-image: url(img/top_icon03.svg);
	}
	.home .key .key_icon li.icon04::before {
		background-image: url(img/top_icon04.svg);
	}
	.home .key .key_lead {
		order: 1;
		margin-top: 18px;
		color: #fff;
		font-size: 17px;
		font-weight: bold;
		line-height: 28px;
	}
	.home .key .key_point {
		order: 3;
		margin-top: 18px;
	}
	.home .key .key_point li {
		height: 38px;
		border-radius: 3px;
		background: #fdfdfd;
		font-size: min(14px, 3.18vw);
		font-weight: bold;
		line-height: 38px;
		white-space: nowrap;
	}
	.home .key .key_point li + li {
		margin-top: 10px;
	}
	.home .key .key_point li span {
		position: relative;
		margin-right: 20px;
		color: var(--main-color);
		font-size: min(17px, 3.86vw);
		font-weight: bold;
	}
	.home .key .key_point li span::after {
		content: "";
		position: absolute;
		top: 50%;
		right: -11px;
		width: 1px;
		height: 16px;
		transform: translateY(-50%);
		background: var(--main-color);
	}
	.home .key .key_slide {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	.home .key .key_slide_wrap {
		position: absolute;
		top: calc(var(--fv) - 299px);
		left: calc(50% - 1150px);
		width: 2400px;
		transform: rotate(-15deg);
	}
	.home .key .key_slide_col {
		display: flex;
		gap: 6.5px;
		width: max-content;
		animation: row_left 40s linear infinite;
		animation-play-state: paused;
	}
	@keyframes row_left {
		0% { transform: translate3d(0, 0, 0); }
		100% { transform: translate3d(-25%, 0, 0); }
	}
	.home .key .key_slide_col.is-loop {
		animation-play-state: running;
	}
	.home .key .key_slide_col.col02 {
		margin: 6.5px 0 0 90px;
		animation-name: row_right;
	}
	@keyframes row_right {
		0% { transform: translate3d(-25%, 0, 0); }
		100% { transform: translate3d(0, 0, 0); }
	}
	.home .key .key_slide_col li {
		width: 195px;
		padding-right: 6.5px;
	}
	.home .key .key_slide_col li + li {
		margin-left: -6.5px;
	}


	/* AIに相談するボタン */
	.ai_btn {
		position: fixed;
		right: 18px;
		bottom: 59px;
		z-index: 80;
	}
	.ai_btn a {
		display: block;
		width: 64px;
		height: 62px;
		overflow: hidden;
		border-radius: 50%;
		background: #222 url(img/common_icon05.svg) no-repeat center / 34px auto;
		text-indent: 200%;
		white-space: nowrap;
	}


	/* bnr_box */
	.home .bnr_box {
		position: relative;
		z-index: 1;
		margin-top: -100px;
		padding: 30px 0 50px;
		background: linear-gradient(transparent 100px, var(--beige-color) 100px);
	}
	.home .bnr_box .bnr_slide .swiper-slide {
		width: 320px;
	}
	.home .bnr_box .bnr_slide .swiper-slide img {
		border-radius: 5px;
	}


	/* cont01 */
	.home .cont01 {
		padding-top: 10px;
		background: var(--beige-color);
	}
	.home .cont01 .search_box {
		padding: 0 15px 20px;
		border-radius: 5px;
		background: rgba(206, 28, 31, .15);
	}
	.home .cont01 .search_box + .search_box {
		margin-top: 40px;
	}
	.home .cont01 .search_box.price {
		background: rgba(210, 166, 0, .15);
	}
	.home .cont01 .search_box h2 {
		position: relative;
		top: -12px;
		font-size: min(17px, 3.8vw);
		font-weight: bold;
		line-height: 24px;
		text-align: center;
		white-space: nowrap;
	}
	.home .cont01 .search_box h2 span {
		color: var(--main-color);
		font-weight: bold;
	}
	.home .cont01 .search_box.price h2 span {
		color: var(--gold-color);
	}
	.home .cont01 .search_box ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}
	.home .cont01 .search_box ul li a {
		position: relative;
		display: block;
		height: 44px;
		padding: 0 26px 0 10px;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		border-radius: 3px;
		background: #fff;
		color: var(--main-color);
		font-size: 13px;
		font-weight: bold;
		line-height: 42px;
		letter-spacing: -.02em;
		white-space: nowrap;
	}
	.home .cont01 .search_box.price ul li a {
		border-color: #d1a500;
		color: var(--gold-color);
	}
	.home .cont01 .search_box ul li a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 10px;
		width: 14px;
		height: 14px;
		transform: translateY(-50%);
		background: url(img/common_arrow02.svg) no-repeat center / contain;
	}
	.home .cont01 .search_box.price ul li a::after {
		background-image: url(img/common_arrow03.svg);
	}


	/* cont02 */
	.home .cont02 {
		padding-top: 60px;
		background: var(--beige-color);
	}
	.home .cont02 .h_box {
		position: relative;
		padding-top: 18px;
	}
	.home .cont02 .h_box::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 121px;
		height: 14px;
		background: url(img/top_text01.svg) no-repeat left top;
	}
	.home .cont02 .h_box::after {
		content: "";
		position: absolute;
		top: 22px;
		right: 0;
		width: 100px;
		height: 21px;
		background: url(img/top_icon05.svg) no-repeat right top / contain;
	}
	.home .cont02 .h_box h2 {
		font-size: 22px;
		font-weight: bold;
		line-height: 34px;
	}
	.home .cont02 .h_box .text01 {
		margin-top: 8px;
		font-size: 14px;
		line-height: 24px;
	}
	.home .cont02 .voice_list {
		margin-top: 20px;
		padding: 20px 10px 20px 0;
		box-sizing: border-box;
		border: 1px solid var(--gold-color);
		border-radius: 5px;
		background: #fff;
		height: 380px;
	}
	.home .cont02 .scroll_box {
		height: 100%;
		padding: 0 10px 0 20px;
		box-sizing: border-box;
		overflow-y: auto;
		scrollbar-width: thin;
		scrollbar-color: #ccc transparent;
	}
	.home .cont02 .scroll_box::-webkit-scrollbar {
		width: 4px;
	}
	.home .cont02 .scroll_box::-webkit-scrollbar-thumb {
		border-radius: 2px;
		background: #ccc;
	}
	.home .cont02 .voice + .voice {
		margin-top: 22px;
	}
	.home .cont02 .voice .info {
		font-size: 14px;
		font-weight: bold;
		line-height: 22px;
	}
	.home .cont02 .voice .info .date {
		position: relative;
		display: inline-block;
		margin-right: 24px;
		color: var(--gold-color);
		font-weight: bold;
	}
	.home .cont02 .voice .info .date::after {
		content: "";
		position: absolute;
		top: 5px;
		right: -13px;
		width: 1px;
		height: 12px;
		background: #ccc;
	}
	.home .cont02 .voice .text02 {
		margin-top: 8px;
		font-size: 14px;
		line-height: 24px;
	}
	.home .cont02 .rate_list {
		margin-top: 35px;
	}
	.home .cont02 .rate {
		position: relative;
		min-height: 110px;
		padding-left: 15px;
		border-left: 2px solid var(--gold-color);
	}
	.home .cont02 .rate + .rate {
		margin-top: 25px;
	}
	.home .cont02 .rate h3 {
		position: relative;
		padding-left: 36px;
		color: var(--gold-color);
		font-size: 19px;
		font-weight: bold;
		line-height: 28px;
	}
	.home .cont02 .rate h3::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 30px;
		height: 28px;
		background: url(img/top_icon06.svg) no-repeat left center / contain;
	}
	.home .cont02 .rate ul {
		margin-top: 6px;
	}
	.home .cont02 .rate ul li {
		font-size: 14px;
		line-height: 26px;
		white-space: nowrap;
	}
	.home .cont02 .rate ul li::before {
		content: "■";
		margin-right: .3em;
		color: var(--main-color);
	}
	.home .cont02 .rate ul li.c02::before {
		color: #f6921e;
	}
	.home .cont02 .rate ul li.c03::before {
		color: #42ce42;
	}
	.home .cont02 .rate ul li span::before {
		content: "｜";
		padding: 0 .1em;
		color: #999;
	}
	.home .cont02 .rate .pie {
		position: absolute;
		top: 0;
		right: 0;
		width: 110px;
		height: 110px;
		overflow: hidden;
		border-radius: 50%;
		background: conic-gradient(var(--main-color) 0 var(--p1), #f6921e var(--p1) var(--p2), #42ce42 var(--p2) 100%);
		text-indent: 200%;
		white-space: nowrap;
	}
	.home .cont02 .rate02 h3::before {
		background-image: url(img/top_icon07.svg);
	}
	.home .cont02 .rate03 h3::before {
		background-image: url(img/top_icon08.svg);
	}


	/* cont03 */
	.home .cont03 {
		padding: 60px 0 175px;
		background: url(img/top_bg01.png) repeat-x left bottom var(--beige-color);
		background-size: 960px 240px;
		animation: strip_loop_sp 40s linear infinite;
	}
	@keyframes strip_loop_sp {
		0% { background-position: 0 100%; }
		100% { background-position: -960px 100%; }
	}
	.home .cont03 .inner {
		position: relative;
	}
	.home .cont03 .h_box {
		position: relative;
		padding-top: 18px;
	}
	.home .cont03 .h_box::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 99px;
		height: 13px;
		background: url(img/top_text02.svg) no-repeat left top;
	}
	.home .cont03 .h_box::after {
		content: "";
		position: absolute;
		top: -12px;
		right: 0;
		width: 140px;
		height: 23px;
		background: url(img/top_text03.svg) no-repeat right top / contain;
	}
	.home .cont03 .h_box h2 {
		font-size: 22px;
		font-weight: bold;
		line-height: 34px;
	}
	.home .cont03 .h_box .text01 {
		margin-top: 8px;
		font-size: 14px;
		line-height: 24px;
	}
	.home .cont03 .status_list {
		margin-top: 20px;
		padding: 20px 10px 20px 0;
		box-sizing: border-box;
		border: 1px solid var(--gold-color);
		border-radius: 5px;
		background: #fff;
		position: relative;
		height: 240px;
		border-color: var(--main-color);
		margin-bottom: -70px;
	}
	.home .cont03 .scroll_box {
		height: 100%;
		padding: 0 10px 0 20px;
		box-sizing: border-box;
		overflow-y: auto;
		scrollbar-width: thin;
		scrollbar-color: #ccc transparent;
	}
	.home .cont03 .scroll_box::-webkit-scrollbar {
		width: 4px;
	}
	.home .cont03 .scroll_box::-webkit-scrollbar-thumb {
		border-radius: 2px;
		background: #ccc;
	}
	.home .cont03 .status_list li {
		font-size: 14px;
		line-height: 22px;
	}
	.home .cont03 .status_list li + li {
		margin-top: 12px;
	}
	.home .cont03 .status_list li .date {
		display: block;
		color: var(--main-color);
		font-weight: bold;
	}


	/* cont04 */
	.home .cont04 {
		padding-top: 100px;
		background: var(--beige-color);
	}
	.home .cont04 .inner {
		position: relative;
		z-index: 0;
		padding: 50px 30px;
	}
	.home .cont04 .inner::before {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: -1;
		background: #fff;
	}
	.home .cont04 .h_box {
		text-align: center;
	}
	.home .cont04 .h_box::before {
		content: "";
		display: block;
		width: 105px;
		height: 19px;
		margin: 0 auto 10px;
		background: url(img/top_text04.svg) no-repeat center top;
	}
	.home .cont04 .h_box h2 {
		font-size: 26px;
		font-weight: bold;
		line-height: 38px;
	}
	.home .cont04 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 11px;
		line-height: 18px;
	}
	.home .cont04 .h_box .text02 {
		margin-top: 18px;
		font-size: 14px;
		line-height: 26px;
		text-align: left;
	}
	.home .cont04 .set_list {
		margin-top: 70px;
	}
	.home .cont04 .set_box {
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
	}
	.home .cont04 .set_box + .set_box {
		margin-top: 80px;
	}
	.home .cont04 .set_box h3 {
		font-size: 21px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont04 .set_box h3::before {
		content: "";
		display: block;
		width: 150px;
		height: 13px;
		margin: 0 auto 8px;
		background: url(img/top_text07.svg) no-repeat center top;
	}
	.home .cont04 .set_box.course h3::before {
		width: 130px;
		background-image: url(img/top_text08.svg);
	}
	.home .cont04 .set_box .text03 {
		margin-top: 12px;
		font-size: 14px;
		line-height: 26px;
		text-align: left;
	}
	.home .cont04 .set_box figure {
		order: -1;
		margin-bottom: 22px;
	}
	.home .cont04 .set_box figure img {
		border-radius: 5px;
	}
	.home .cont04 .set_box .catch {
		position: absolute;
		top: -44px;
		left: 4px;
		z-index: 1;
	}
	.home .cont04 .set_box .catch img {
		width: 211px;
	}
	.home .cont04 .set_box .button {
		width: 100%;
		margin-top: 18px;
	}
	.home .cont04 .set_box .button a {
		display: block;
		height: 46px;
		margin: 0 10px;
		border-radius: 23px;
		background: var(--main-color);
		color: #fff;
		font-size: 14px;
		font-weight: bold;
		line-height: 46px;
	}
	.home .cont04 .set_box.course .button a {
		background: var(--gold-color);
	}
	.home .cont04 .button a {
		display: block;
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
	}


	/* cont05 */
	.home .cont05 {
		padding: 30px 0 70px;
		background: var(--beige-color);
	}
	.home .cont05 .inner {
		position: relative;
		z-index: 0;
		padding: 50px 30px;
	}
	.home .cont05 .inner::before {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: -1;
		background: #fff;
	}
	.home .cont05 .h_box {
		text-align: center;
	}
	.home .cont05 .h_box::before {
		content: "";
		display: block;
		width: 61px;
		height: 19px;
		margin: 0 auto 10px;
		background: url(img/top_text22.svg) no-repeat center top;
	}
	.home .cont05 .h_box h2 {
		font-size: 26px;
		font-weight: bold;
		line-height: 38px;
	}
	.home .cont05 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 11px;
		line-height: 18px;
	}
	.home .cont05 .h_box .text02 {
		margin-top: 18px;
		font-size: 14px;
		line-height: 26px;
		text-align: left;
	}
	.home .cont05 .menu_list {
		display: grid;
		grid-template-columns: minmax(0, 370px);
		justify-content: center;
		gap: 40px;
		margin: 30px -15px 0;
	}
	.home .cont05 .menu_card > a {
		display: flex;
		flex-direction: column;
		height: 100%;
	}
	.home .cont05 .menu_card h3 {
		font-size: 20px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont05 .menu_card .text03 {
		margin-top: 11px;
		font-size: 14px;
		line-height: 26px;
	}
	.home .cont05 .menu_card figure {
		order: -1;
		overflow: hidden;
		margin-bottom: 19px;
		border-radius: 5px;
	}
	.home .cont05 .menu_card figure img {
		aspect-ratio: 37 / 20;
		object-fit: cover;
	}
	.home .cont05 .menu_card .link {
		margin-top: auto;
		padding-top: 15px;
	}
	.home .cont05 .menu_card .link span {
		position: relative;
		display: block;
		padding: 11px 30px 0 0;
		border-top: 1px solid var(--main-color);
		color: var(--main-color);
		font-size: 14px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont05 .menu_card .link span::after {
		content: "";
		position: absolute;
		top: 16px;
		right: 5px;
		width: 20px;
		height: 20px;
		background: url(img/common_arrow02.svg) no-repeat center / contain;
	}


	/* cont06 */
	.home .cont06 {
		padding: 60px 0;
		background: url(img/common_bg01.png) var(--main-color);
		background-size: 389px auto;
	}
	.home .cont06 .h_box {
		position: relative;
		padding-top: 24px;
	}
	.home .cont06 .h_box::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 88px;
		height: 19px;
		background: url(img/top_text10.svg) no-repeat left top;
	}
	.home .cont06 .h_box h2 {
		font-size: 22px;
		font-weight: bold;
		line-height: 34px;
	}
	.home .cont06 .h_box h2,
	.home .cont06 .h_box .text01 {
		color: #fff;
	}
	.home .cont06 .h_box .text01 {
		margin-top: 8px;
		font-size: 14px;
		line-height: 24px;
	}
	.home .cont06 .reason_slide {
		margin-top: 26px;
	}
	.home .cont06 .swiper-wrapper {
		align-items: stretch;
	}
	.home .cont06 .reason {
		display: flex;
		flex-direction: column;
		width: 300px;
		height: auto;
		padding-bottom: 20px;
		box-sizing: border-box;
		overflow: hidden;
		border-radius: 5px;
		background: #fff;
	}
	.home .cont06 .reason.swiper-slide {
		height: auto;
	}
	.home .cont06 .reason h3 {
		margin-top: 16px;
		padding: 0 18px;
		font-size: 18px;
		font-weight: bold;
		line-height: 28px;
		white-space: nowrap;
	}
	.home .cont06 .reason h3::after {
		content: "";
		display: inline-block;
		width: 89px;
		height: 17px;
		margin: 0 0 3px 12px;
		vertical-align: middle;
		background: url(img/top_text11.svg) no-repeat left center;
	}
	.home .cont06 .reason.r02 h3::after {
		width: 91px;
		background-image: url(img/top_text12.svg);
	}
	.home .cont06 .reason.r03 h3::after {
		width: 91px;
		background-image: url(img/top_text13.svg);
	}
	.home .cont06 .reason.r04 h3::after {
		width: 92px;
		background-image: url(img/top_text14.svg);
	}
	.home .cont06 .reason.r05 h3::after {
		width: 91px;
		background-image: url(img/top_text15.svg);
	}
	.home .cont06 .reason.r06 h3::after {
		width: 92px;
		background-image: url(img/top_text16.svg);
	}
	.home .cont06 .reason .text02 {
		margin-top: 10px;
		padding: 0 18px;
		font-size: 14px;
		line-height: 24px;
	}
	.home .cont06 .reason figure {
		order: -1;
	}
	.home .cont06 .reason figure img {
		width: 100%;
	}


	/* cont07 */
	.home .cont07 {
		padding: 60px 0;
	}
	.home .cont07 .inner {
		padding-top: 0;
	}
	.home .cont07 .inner::before {
		content: "";
		display: block;
		height: 1px;
		margin-bottom: 32px;
		background: var(--main-color);
	}
	.home .cont07 .h_box {
		position: relative;
		padding-left: 126px;
	}
	.home .cont07 .h_box::before {
		content: "";
		position: absolute;
		top: 6px;
		left: 0;
		width: 118px;
		height: 32px;
		background: url(img/top_text17.svg) no-repeat left top / contain;
	}
	.home .cont07 .h_box h2 {
		font-size: 20px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont07 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 10px;
		line-height: 16px;
		letter-spacing: -.02em;
	}
	.home .cont07 .h_box + * {
		margin-top: 26px;
	}
	.home .cont07 .guide_box {
		padding: 18px 18px 20px;
		border-radius: 5px;
		background: #fff;
	}
	.home .cont07 .guide_box + .guide_box {
		margin-top: 15px;
	}
	.home .cont07 .guide_box h3 {
		position: relative;
		margin-left: -18px;
		padding-left: 18px;
		font-size: 17px;
		font-weight: bold;
		line-height: 26px;
	}
	.home .cont07 .guide_box h3::before {
		content: "";
		position: absolute;
		top: 4px;
		left: 0;
		width: 4px;
		height: 18px;
		background: var(--main-color);
	}
	.home .cont07 .guide_box .text02 {
		margin-top: 6px;
		font-size: 14px;
		line-height: 24px;
	}
	.home .cont07 .guide_box figure {
		margin-top: 10px;
	}
	.home .cont07 .guide_box .text02 a {
		color: var(--main-color);
		font-weight: bold;
		text-decoration: underline;
	}
	.home .cont07 .guide_box.cancel .col {
		margin-top: 6px;
		font-size: 14px;
		line-height: 24px;
	}
	.home .cont07 .guide_box.cancel .col + .col {
		margin-top: 12px;
	}
	.home .cont07 .guide_box.cancel .col .text02 {
		margin-top: 0;
	}
	.home .cont07 .guide_box.cancel .col .text02::before {
		content: "■";
	}
	.home .cont07 .guide_box.cancel .col + .col li {
		padding-left: 1em;
		text-indent: -1em;
	}
	.home .cont07 .guide_box.cancel .col + .col li::before {
		content: "・";
	}
	.home .cont07 .button {
		margin-top: 30px;
	}
	.home .cont07 .button a {
		display: block;
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
		height: 48px;
		margin: 0 20px;
		border-radius: 24px;
		font-size: 15px;
		line-height: 48px;
	}


	/* cont08 */
	.home .cont08 {
		position: relative;
		overflow: hidden;
		padding-bottom: 60px;
	}
	.home .cont08 .inner {
		padding-top: 0;
	}
	.home .cont08 .inner::before {
		content: "";
		display: block;
		height: 1px;
		margin-bottom: 32px;
		background: var(--main-color);
	}
	.home .cont08 .h_box {
		position: relative;
		padding-left: 112px;
	}
	.home .cont08 .h_box::before {
		content: "";
		position: absolute;
		top: 6px;
		left: 0;
		width: 98px;
		height: 33px;
		background: url(img/top_text18.svg) no-repeat left top / contain;
	}
	.home .cont08 .h_box h2 {
		font-size: 20px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont08 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 10px;
		line-height: 16px;
	}
	.home .cont08 .h_box + * {
		margin-top: 26px;
	}
	.home .cont08 .area_box .map {
		position: relative;
		width: 360px;
		height: 360px;
		margin-left: calc(50% - 180px);
	}
	.home .cont08 .area_box .map::before {
		content: "";
		position: absolute;
		top: -467px;
		left: -737px;
		z-index: -1;
		width: 1646px;
		height: 1336px;
		background: url(img/top_illust02.svg) no-repeat left top / 100% 100%;
		-webkit-mask-image: linear-gradient(to bottom, transparent 25%, rgba(0, 0, 0, .6) 29%, #000 33%);
		mask-image: linear-gradient(to bottom, transparent 25%, rgba(0, 0, 0, .6) 29%, #000 33%);
	}
	.home .cont08 .area_box .map::after {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 12px;
		height: 12px;
		transform: translate(-50%, -50%);
		border-radius: 50%;
		background: var(--main-color);
	}
	.home .cont08 .area_box .map .ripple {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border-radius: 50%;
		background: #d1944b;
		animation: ripple 5s ease-out infinite both;
	}
	@keyframes ripple {
		0% { transform: scale(.01); opacity: .5; }
		100% { transform: scale(1); opacity: 0; }
	}
	.home .cont08 .area_box .map .ripple:nth-child(2) {
		animation-delay: 1s;
	}
	.home .cont08 .area_box .map .ripple:nth-child(3) {
		animation-delay: 2s;
	}
	.home .cont08 .area_text {
		margin-top: 20px;
	}
	.home .cont08 .area_text h3 {
		font-size: 22px;
		font-weight: bold;
		line-height: 34px;
	}
	.home .cont08 .area_text .text02,
	.home .cont08 .area_text .text03 {
		margin-top: 16px;
		font-size: 15px;
		font-weight: bold;
		line-height: 26px;
	}
	.home .cont08 .area_text .text04 {
		margin-top: 16px;
		font-size: 14px;
		line-height: 24px;
	}
	.home .cont08 .area_text .text04 .note::before {
		content: "※";
	}
	.home .cont08 .area_text .button {
		margin-top: 20px;
	}
	.home .cont08 .button a {
		display: block;
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
	}
	.home .cont08 .area_text .button a {
		height: 46px;
		margin: 0 20px;
		border-radius: 23px;
		font-size: 15px;
		line-height: 46px;
	}
	.home .cont08 .shop_box {
		margin-top: 50px;
		padding: 0 18px 20px;
		border-radius: 5px;
		background: #fff;
	}
	.home .cont08 .shop_box h3 {
		display: flex;
		align-items: center;
		gap: 12px;
		position: relative;
		top: -14px;
		margin-bottom: -14px;
		color: var(--main-color);
		font-size: 17px;
		font-weight: bold;
		line-height: 28px;
		white-space: nowrap;
	}
	.home .cont08 .shop_box h3::before,
	.home .cont08 .shop_box h3::after {
		content: "";
		flex: 1;
		height: 2px;
		margin-top: 2px;
		background: var(--main-color);
	}
	.home .cont08 .shop_box .col_box {
		margin-top: 12px;
		font-size: 14px;
		line-height: 24px;
	}
	.home .cont08 .shop_box .col .text03 {
		margin-top: 8px;
		font-weight: bold;
	}
	.home .cont08 .shop_box .col .text03 .name {
		font-weight: bold;
	}
	.home .cont08 .shop_box .col .text03 .name::before {
		content: "■";
	}
	.home .cont08 .shop_box .col .text03 .map_link {
		position: relative;
		margin-left: 14px;
		padding-left: 14px;
		color: var(--main-color);
		font-size: 13px;
		font-weight: bold;
	}
	.home .cont08 .shop_box .col .text03 .map_link::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 10px;
		height: 14px;
		transform: translateY(-50%);
		background: url(img/top_icon11.svg) no-repeat center / contain;
	}
	.home .cont08 .shop_box ul.col {
		margin-top: 12px;
	}
	.home .cont08 .shop_box ul.col li {
		padding-left: 1em;
		text-indent: -1em;
	}
	.home .cont08 .shop_box ul.col li::before {
		content: "・";
	}


	/* cont09 */
	.home .cont09 {
		padding-bottom: 60px;
	}
	.home .cont09 .inner {
		padding-top: 0;
	}
	.home .cont09 .inner::before {
		content: "";
		display: block;
		height: 1px;
		margin-bottom: 32px;
		background: var(--main-color);
	}
	.home .cont09 .h_box {
		position: relative;
		padding-left: 92px;
	}
	.home .cont09 .h_box::before {
		content: "";
		position: absolute;
		top: 6px;
		left: 0;
		width: 76px;
		height: 32px;
		background: url(img/top_text19.svg) no-repeat left top / contain;
	}
	.home .cont09 .h_box h2 {
		font-size: 20px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont09 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 10px;
		line-height: 16px;
	}
	.home .cont09 .h_box .button {
		display: none;
	}
	.home .cont09 .button a {
		display: block;
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
	}
	.home .cont09 .h_box + * {
		margin-top: 26px;
	}
	.home .cont09 .faq_list::after {
		content: "";
		display: block;
	}
	.home .cont09 .faq_list .col + .col {
		margin-top: 12px;
	}
	.home .cont09 .faq_wrap {
		padding: 16px 18px;
		border-radius: 5px;
		background: #fff;
	}
	.home .cont09 .faq_wrap + .faq_wrap {
		margin-top: 12px;
	}
	.home .cont09 .faq_wrap .qes {
		position: relative;
		padding: 0 26px;
		cursor: pointer;
		font-size: 15px;
		font-weight: bold;
		line-height: 22px;
	}
	.home .cont09 .faq_wrap .qes::before {
		content: "Q.";
		position: absolute;
		top: 0;
		left: 0;
		font-weight: bold;
	}
	.home .cont09 .faq_wrap .qes::after {
		content: "";
		position: absolute;
		top: 50%;
		right: -2px;
		width: 18px;
		height: 18px;
		transform: translateY(-50%) rotate(90deg);
		background: url(img/common_arrow02.svg) no-repeat center / contain;
		transition: transform .3s;
	}
	.home .cont09 .faq_wrap.is-open .qes::after {
		transform: translateY(-50%) rotate(-90deg);
	}
	.home .cont09 .faq_wrap .ans {
		height: 0;
		overflow: hidden;
		transition: height .3s ease;
	}
	.home .cont09 .faq_wrap.is-open .ans {
		height: auto;
	}
	.home .cont09 .faq_wrap .ans p {
		padding-top: 10px;
		font-size: 14px;
		line-height: 24px;
	}


	/* cont10 */
	.home .cont10 {
		padding: 0 10px;
	}
	.home .cont10 .inner {
		display: flex;
		flex-direction: column;
		overflow: hidden;
		isolation: isolate;
		padding: 0;
		border-radius: 10px;
		color: #fff;
	}
	.home .cont10 .text_box {
		padding: 40px 20px;
		background: url(img/common_bg01.png) var(--main-color);
		background-size: 389px auto;
	}
	.home .cont10 .h_box::before {
		content: "";
		display: block;
		width: 107px;
		height: 19px;
		margin-bottom: 10px;
		background: url(img/top_text20.svg) no-repeat left top;
	}
	.home .cont10 .h_box h2 {
		font-size: 26px;
		font-weight: bold;
		line-height: 38px;
	}
	.home .cont10 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 11px;
		line-height: 18px;
	}
	.home .cont10 .text_box .text02 {
		margin-top: 22px;
		font-size: 15px;
		font-weight: bold;
		line-height: 28px;
	}
	.home .cont10 .text_box .text03 {
		margin-top: 18px;
		font-size: 14px;
		line-height: 26px;
	}
	.home .cont10 .text_box .name {
		margin-top: 18px;
		font-size: 14px;
		font-weight: bold;
		line-height: 26px;
	}
	.home .cont10 .photo_slide {
		display: contents;
	}
	.home .cont10 .photo_slide ul {
		display: flex;
		width: max-content;
		animation: row_left 40s linear infinite;
		animation-play-state: paused;
	}
	@keyframes row_left {
		0% { transform: translate3d(0, 0, 0); }
		100% { transform: translate3d(-25%, 0, 0); }
	}
	.home .cont10 .photo_slide ul.is-loop {
		animation-play-state: running;
	}
	.home .cont10 .photo_slide ul.col01 {
		order: -1;
	}
	.home .cont10 .photo_slide ul.col02 {
		margin-left: -99px;
		animation-name: row_right;
	}
	@keyframes row_right {
		0% { transform: translate3d(-25%, 0, 0); }
		100% { transform: translate3d(0, 0, 0); }
	}
	.home .cont10 .photo_slide ul.col03 {
		display: none;
	}
	.home .cont10 .photo_slide li {
		width: 198px;
		border-right: 6px solid var(--main-color);
	}


	/* cont11 */
	.home .cont11 {
		padding: 60px 0 70px;
		overflow: hidden;
	}
	.home .cont11 .h_box {
		position: relative;
		padding-left: 112px;
	}
	.home .cont11 .h_box::before {
		content: "";
		position: absolute;
		top: 6px;
		left: 0;
		width: 100px;
		height: 32px;
		background: url(img/top_text21.svg) no-repeat left top / contain;
	}
	.home .cont11 .h_box h2 {
		font-size: 20px;
		font-weight: bold;
		line-height: 30px;
	}
	.home .cont11 .h_box .text01 {
		display: block;
		font-weight: normal;
		font-size: 10px;
		line-height: 16px;
	}
	.home .cont11 .button {
		margin-top: 30px;
	}
	.home .cont11 .button a {
		display: block;
		background: var(--main-color);
		color: #fff;
		font-weight: bold;
		text-align: center;
		height: 46px;
		margin: 0 20px;
		border-radius: 23px;
		font-size: 15px;
		line-height: 46px;
	}
	.home .cont11 .blog_slide {
		margin: 26px 0 0;
		overflow: visible;
	}
	.home .cont11 .blog_card {
		width: 300px;
		border-radius: 5px;
		background: #fff;
		box-shadow: 0 5px 20px rgba(0, 0, 0, .08);
	}
	.home .cont11 .blog_card a {
		display: flex;
		flex-direction: column;
		padding: 15px 15px 16px;
	}
	.home .cont11 .blog_card h3 {
		margin-top: 12px;
		overflow: hidden;
		font-size: 15px;
		font-weight: bold;
		line-height: 22px;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	.home .cont11 .blog_card .date {
		margin-top: 6px;
		color: var(--main-color);
		font-size: 13px;
		font-weight: bold;
		line-height: 18px;
	}
	.home .cont11 .blog_card .date time {
		font-weight: bold;
	}
	.home .cont11 .blog_card .text02 {
		display: -webkit-box;
		margin-top: 6px;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		font-size: 13px;
		line-height: 22px;
	}
	.home .cont11 .blog_card figure {
		order: -1;
		display: flex;
		align-items: center;
		justify-content: center;
		aspect-ratio: 290 / 194;
		overflow: hidden;
		border-radius: 3px;
		background: #eee;
	}
	.home .cont11 .blog_card figure.no_img {
		background: #feeae1;
	}
	.home .cont11 .blog_card figure img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.home .cont11 .blog_card figure.no_img img {
		width: 190px;
		height: auto;
	}



/* common
------------------------------------------------------------------------*/

/* key */
.common .key{
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 150px;
	background: var(--main-light-color);
	box-sizing: border-box;
	position: relative;
}
.common .key::before{
	content: "";
	background: url(img/common_key_img_sp.png)no-repeat;
	width: 440px;
	height: 150px;
	position: absolute;
	top: 0;
	right: 0;
}
.common .key .inner{
	width: 440px;
	position: relative;
	z-index: 1;
}
.common .key .inner .ttl_en{
	color: var(--main-color);
	font-size: 12px;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.common .key .inner .ttl_jp{
	padding-top: 10px;
	font-size: 18px;
	line-height: 1;
	font-weight: 500;
}


/* pankuzu */
.pankuzu {
	margin-top: 18px;
	line-height: 1.3;
}
.pankuzu ul li {
	display: inline-block;
	margin-right: 10px;
	color: var(--main-color);
	font-size: 12px;
	font-weight: bold;
	max-width: 380px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.pankuzu ul li a {
	color: #333;
	font-size: 12px;
	font-weight: bold;
}
.pankuzu ul li:not(:last-of-type)::after {
	content: "-";
	margin-left: 10px;
	flex-shrink: 0;
}
.pankuzu ul li:last-of-type {
	margin-right: 0;
}


/* 一覧ページのページャー */
.archive-pager{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	width: 380px;
	margin:70px auto;
}
.archive-pager .page-numbers{
	background: var(--main-color);
	color: #fff;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	box-sizing: border-box;
}
.archive-pager .page-numbers.current {
	border: 1px solid var(--main-color);
	color:var(--main-color);
	background: #fff;
}
.archive-pager .page-numbers.prev,
.archive-pager .page-numbers.next{
	background: var(--main-dark-color);
	color: #fff;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	box-sizing: border-box;
	padding-top: 3px;
}
.archive-pager .page-numbers.next {
	padding-left: 3px;
}



.single-pager{
	width: 100%;
	margin: 60px auto;
}
.single-pager .prev-pager-box {
	margin:0 10px 30px;
}
.single-pager .next-pager-box {
	margin:0 10px;
}
.single-pager a {
	display: flex;
	align-items: center;
	text-decoration: none !important;
	text-align: left;
	font-size: 14px;
	position: relative;
	justify-content: flex-end;
}
.single-pager .prev-pager-box a {
	flex-direction: row-reverse;
	justify-content: flex-end;
}
.single-pager .prev-pager-box a::before,
.single-pager .next-pager-box a::before {
	content: "";
	width: 25px;
	height: 25px;
	background: var(--main-color);
	border-radius: 50%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.single-pager .prev-pager-box a::before{
	left: -10px;
}
.single-pager .next-pager-box a::before {
	right: -10px;
}
.single-pager .prev-pager-box a::after,
.single-pager .next-pager-box a::after {
	content: "";
	width: 0;
	height: 0;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.single-pager .prev-pager-box a::after{
	border-right: 6px solid #fff;
	left: -2px;
}
.single-pager .next-pager-box a::after {
	border-left: 6px solid #fff;
	right: -2px;
}
.single-pager .prev-pager-box a .text-box {
	padding-left: 20px;
}
.single-pager .next-pager-box a .text-box {
	padding-right: 20px;
}
.single-pager a h2 {
	line-height: 1.5;
	margin-bottom: 5px;
	font-weight: bold;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.single-pager a .img {
	flex-shrink: 0;
	box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
}
.single-pager a .img img {
	width: 150px;
	border-radius: 5px;
}



/*blog 共通項目
--------------------------------------------------------------------------*/
.blog .flex{
	margin:70px auto;
}
.blog .flex .side .side_box01,
.blog .flex .side .side_box02,
.blog .flex .side .side_box03 {
	margin: 70px 0;
}
.blog .flex .side .cont a {
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
	align-items: center;
	box-sizing: border-box;
	margin-top: 20px;
}
.blog .flex .side h2 {
	font-size: 20px;
	font-weight: bold;
	padding-bottom: 5px;
	border-bottom: 1px solid var(--main-color);
	position: relative;
}
.blog .flex .side h2::before {
	content: "";
	color: var(--main-color);
	font-size: 14px;
	position: absolute;
	top: 7px;
	left: 100px;
}
.blog .flex .side .side_box01 h2::before {
	content: "Popular Articles";
}
.blog .flex .side .side_box02 h2::before {
	content: "New Articles";
}
.blog .flex .side .side_box03 h2::before {
	content: "Category";
	left: 110px;
}
.blog .flex .side .cont .text_box {
	padding-left: 15px;
	font-size: 14px;
}
.blog .flex .side .cont .text_box h3 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	margin-bottom: 10px;
}
.blog .flex .side .cont .img {
	width: 150px;
	flex-shrink: 0;
	box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
	border-radius: 5px;
}
.blog .flex .side .cont .img img {
	max-width: 100%;
	border-radius: 5px;
}
.blog .flex .side .side_box01 .cont .img {
	position: relative;
}
.blog .flex .side .side_box01 .cont .img::before {
	content: "";
	width: 25px;
	height: 25px;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	background: var(--main-color);
	line-height: 25px;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
}
.blog .flex .side .side_box01 .cont:nth-of-type(1) .img::before {
	content: "1";
	background: #f2cd44;
}
.blog .flex .side .side_box01 .cont:nth-of-type(2) .img::before {
	content: "2";
	background: #ababab;
}
.blog .flex .side .side_box01 .cont:nth-of-type(3) .img::before {
	content: "3";
	background: #bc6c25;
}
.blog .flex .side .side_box01 .cont:nth-of-type(4) .img::before {
	content: "4";
}
.blog .flex .side .side_box01 .cont:nth-of-type(5) .img::before {
	content: "5";
}
.blog .flex .side .side_box02 .cont .img {
	position: relative;
}
.blog .flex .side .side_box02 .cont .img::before {
	content: "new";
	width: 50px;
	height: 25px;
	line-height: 1;
	font-size: 14px;
	box-sizing: border-box;
	padding-top: 5px;
	color: #fff;
	background: var(--main-color);
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
}
.blog .flex .side .side_box03 ul {
	margin-top: 15px;
}
.blog .flex .side .side_box03 ul li {
	position: relative;
	padding-left: 32px;
}
.blog .flex .side .side_box03 ul li:nth-of-type(n+2) {
	margin-top: 15px;
}
.blog .flex .side .side_box03 ul li::before {
	content: '';
	width: 25px;
	height: 25px;
	border-radius: 50%;
	background: url(img/category_icon.png) no-repeat top 7px left 7px var(--main-color);
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}


/* blog_archive
------------------------------------------------------------------------*/

.blog_archive .cont01 .cont{
	width: 330px;
	margin:0 auto 35px;
	padding-bottom: 25px;
	border-bottom: 1px solid var(--main-color);
}
.blog_archive .cont01 .cont a {
	display: flex;
	flex-direction: column-reverse;
}
.blog_archive .cont01 .cont h2 {
	font-size: 16px;
	line-height: 1.8;
	margin-top: 15px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.blog_archive .cont01 .cont .text_box .cate_box .cate {
	font-size: 12px;
	line-height: 1;
	color: #fff;
	background: var(--main-color);
	border-radius: 5px;
	min-width: 95px;
	padding: 7px 15px;
	text-align: center;
	display: inline-block;
	box-sizing: border-box;
	margin: 10px 0;
}
.blog_archive .cont01 .cont .text {
	margin-top: 5px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
.blog_archive .cont01 .cont .img{
	box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
	border-radius: 5px;
}
.blog_archive .cont01 .cont .img img {
	background: var(--main-light-color);
	border-radius: 5px;
}


/* ブログ詳細 css */
.blog_single .cont01 h1{
	padding-bottom: 10px;
	border-bottom: 1px solid var(--main-color);
	font-size: 16px;
	line-height: 1.5;
	margin: 0 0 25px;
	font-weight: bold;
	position: relative;
}
.blog_single .cont01 .cate_box {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 20px;
}
/*
.blog_single .cont01 .cate_box .cate {
	line-height: 1;
	font-size: 12px;
	color: #fff;
	text-align: center;
	min-width: 100px;
	padding: 7px 15px;
	border-radius: 5px;
	background: var(--main-color);
	box-sizing: border-box;
	margin: 0;
}*/

.blog_single .cont01 .cate_box .cate {
	text-align: center;
}
.blog_single .cont01 .cate_box .cate a{
	color: #fff;
	text-decoration: none;
	display: block;
	line-height: 1;
	font-size: 12px;
	min-width: 100px;
	padding: 7px 15px;
	border-radius: 5px;
	background: var(--main-color);
}

.blog_single .cont01 .cate_box .date{
	font-size: 14px;
	line-height: 1;
	margin: 0;
	font-weight: bold;
}



/* yonmaruyon yonichimaru
------------------------------------------------------------------------*/

.yonmaruyon .cont01,
.yonichimaru .cont01{
	/* padding: 50px 0 80px; */
	padding: 70px 0 10px;
	text-align: center;
}
.yonmaruyon .cont01 h2,
.yonichimaru .cont01 h2{
	text-align: center;
	font-size: 20px;
}
.yonmaruyon .cont01 .text,
.yonichimaru .cont01 .text{
	margin: 30px 0 0;
	font-weight: bold;
}
.yonmaruyon .cont01 .button ,
.yonichimaru .cont01 .button {
	margin-top: 40px;
}
.yonmaruyon .cont01 .button a,
.yonichimaru .cont01 .button a{
	width: 280px;
	border-radius: 60px;
	line-height: 1;
	padding: 20px 0;
	font-size: 16px;
	box-sizing: border-box;
	cursor: pointer;
	margin: auto;
	border: none;
	display: block;
	color: #fff;
	background: var(--main-color);
}


/* item_box（common_menu.php）
------------------------------------------------------------------------*/
	.item_box {
		padding: 60px 0 70px;
		background: var(--beige-color);
	}
	.item_box h2 {
		font-size: 16px;
		font-weight: bold;
		line-height: 26px;
		text-align: center;
	}
	.item_box .text01 {
		margin-top: 6px;
		font-size: 14px;
		line-height: 22px;
		text-align: center;
	}
	.item_box .item_list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		margin-top: 22px;
	}
	.item_box .item_list li a {
		position: relative;
		display: flex;
		align-items: center;
		height: 50px;
		padding: 0 6px 0 48px;
		box-sizing: border-box;
		border: 1px solid var(--main-color);
		border-radius: 3px;
		background: #fff;
		font-size: 13px;
		font-weight: bold;
		line-height: 16px;
		letter-spacing: -.02em;
	}
	.item_box .item_list li a::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 10px;
		width: 28px;
		height: 28px;
		transform: translateY(-50%);
		background: url(img/top_icon12.svg) no-repeat center / contain;
	}
	.item_box .item_list li.i02 a::before {
		background-image: url(img/top_icon13.svg);
	}
	.item_box .item_list li.i03 a::before {
		background-image: url(img/top_icon14.svg);
	}
	.item_box .item_list li.i04 a::before {
		background-image: url(img/top_icon15.svg);
	}
	.item_box .item_list li.i06 a::before {
		background-image: url(img/top_icon17.svg);
	}
	.item_box .item_list li.i07 a::before {
		background-image: url(img/top_icon18.svg);
	}
	.item_box .item_list li.i08 a::before {
		background-image: url(img/top_icon19.svg);
	}
	.item_box .item_list li.i09 a::before {
		background-image: url(img/top_icon20.svg);
	}
	.item_box .item_list li.i10 a::before {
		background-image: url(img/top_icon21.svg);
	}
	.item_box .item_list li.i11 a::before {
		background-image: url(img/top_icon22.svg);
	}
	.item_box .item_list li.i12 a::before {
		background-image: url(img/top_icon23.svg);
	}
	.item_box .item_list li.i13 a::before {
		background-image: url(img/top_icon24.svg);
	}
	.item_box .item_list li.i14 a::before {
		background-image: url(img/top_icon25.svg);
	}
	.item_box .item_list li.i15 a::before {
		background-image: url(img/top_icon26.svg);
	}
	.item_box .item_list li.i16 a::before {
		background-image: url(img/top_icon27.svg);
	}
	.item_box .item_list li.i17 a::before {
		background-image: url(img/top_icon28.svg);
	}
	.item_box .item_list li.i18 a::before {
		background-image: url(img/top_icon29.svg);
	}
	.item_box .item_list li.i19 a::before {
		background-image: url(img/top_icon30.svg);
	}
	.item_box .item_list li.i20 a::before {
		background-image: url(img/top_icon31.svg);
	}



/* contact_box
------------------------------------------------------------------------*/
	.contact_box {
		padding: 0 10px 200px;
		background: url(img/common_bg02.png) repeat-x left bottom var(--beige-color);
		background-size: 960px 240px;
		animation: strip_loop_sp 40s linear infinite;
	}
	@keyframes strip_loop_sp {
		0% { background-position: 0 100%; }
		100% { background-position: -960px 100%; }
	}
	.contact_box .inner {
		position: relative;
		padding: 40px 20px 30px;
		border-radius: 5px;
		background: url(img/common_bg01.png) var(--main-color);
		background-size: 389px auto;
		color: #fff;
	}
	.contact_box .text_box h2 {
		font-size: 16px;
		font-weight: bold;
		line-height: 24px;
		text-align: center;
	}
	.contact_box .text_box h2::before {
		content: "";
		display: block;
		width: 156px;
		height: 30px;
		margin: 0 auto 8px;
		background: url(img/common_text01.svg) no-repeat center top;
	}
	.contact_box .text_box .text01 {
		margin-top: 16px;
		font-size: 14px;
		line-height: 24px;
	}
	.contact_box .btn_box {
		margin-top: 22px;
		text-align: center;
	}
	.contact_box .btn_box .tel a {
		position: relative;
		display: inline-block;
		padding-left: 25px;
	}
	.contact_box .btn_box .tel a::before {
		content: "";
		position: absolute;
		top: 1px;
		left: 0;
		width: 20px;
		height: 25px;
		background: url(img/common_icon06.svg) no-repeat center / contain;
	}
	.contact_box .btn_box .time {
		margin-top: 6px;
		font-size: 14px;
		line-height: 22px;
	}
	.contact_box .btn_box .button {
		margin-top: 16px;
	}
	.contact_box .btn_box .button + .button {
		margin-top: 12px;
	}
	.contact_box .btn_box .button a {
		display: block;
		height: 48px;
		margin: 0 20px;
		font-weight: bold;
		text-align: center;
		border-radius: 24px;
		background: #fff;
		color: var(--text-color);
		font-size: 15px;
		line-height: 48px;
	}
	.contact_box .btn_box .button a::before {
		content: "";
		display: inline-block;
		width: 20px;
		height: 15px;
		margin: 0 10px 3px 0;
		vertical-align: middle;
		background: url(img/common_icon02.svg) no-repeat center / contain;
	}
	.contact_box .btn_box .button.chat a::before {
		width: 25px;
		height: 25px;
		margin-right: 7px;
		background-image: url(img/common_icon08.svg);
	}



/* brand_box
------------------------------------------------------------------------*/
	.brand_box {
		padding: 60px 0;
		background: var(--beige-color);
	}
	.brand_box h2 {
		color: var(--main-dark-color);
		font-size: min(17px, 3.5vw);
		font-weight: bold;
		line-height: 26px;
		text-align: center;
		white-space: nowrap;
	}
	.brand_box h2 span {
		font-weight: bold;
	}
	.brand_box h2 span::before {
		content: "［ ";
	}
	.brand_box h2 span::after {
		content: " ］";
	}
	.brand_box .brand_list {
		margin-top: 24px;
	}
	.brand_box .brand_list li {
		text-align: center;
	}
	.brand_box .brand_list li + li {
		margin-top: 18px;
	}
	.brand_box .brand_list li .text01 {
		margin-bottom: 5px;
		font-size: 16px;
		font-weight: bold;
		line-height: 24px;
	}
	.brand_box .brand_list li a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 350px;
		max-width: 100%;
		aspect-ratio: 380 / 100;
		margin: 0 auto;
		border-radius: 5px;
		background: #144b6b;
	}
	.brand_box .brand_list li.b02 a {
		background: #f9e6e9;
	}
	.brand_box .brand_list li.b03 a {
		background: #f5e6b3;
	}
	.brand_box .brand_list li.b01 a img {
		width: calc(183 / 380 * 100%);
	}
	.brand_box .brand_list li.b02 a img {
		width: calc(295 / 380 * 100%);
	}
	.brand_box .brand_list li.b03 a img {
		width: calc(301 / 380 * 100%);
	}



/*post_cont
------------------------------------------------------------------------*/
.post_cont .index_nav {
	box-sizing: border-box;
	padding: 30px;
	border: none;
	border-radius: 0px;
	margin: 20px 0 45px;
	background: var(--main-light-color);
	border-radius: 10px;
}
.post_cont .index_nav .title {
	font-weight: bold;
	position: relative;
	padding: 0 !important;
	padding-left: 35px !important;
	font-size: 18px;
	line-height: 1.5;
	font-weight: normal;
}
.post_cont .index_nav .title::before {
	content: '';
	width: 20px;
	height: 18px;
	background: url(img/index_icon.png) no-repeat center / 100%;
	position: absolute;
	top: 4px;
	left: 5px;
}
.post_cont .index_nav {
	position: static;
}
.post_cont .index_nav ul {
	margin: 20px 0 0 0;
	padding-bottom: 0;
}
.post_cont .index_nav ul li.index_level03 {
	margin-left: 15px;
}
.post_cont .index_nav ul li.index_level04 {
	margin-left: 30px;
}
.post_cont .index_nav ul li.index_level05 {
	margin-left: 45px;
}
.post_cont .index_nav ul li {
	display: block;
	text-align: left;
	margin-top: 30px;
	line-height: 1.2;
}
.post_cont .index_nav ul li.index_level03,
.post_cont .index_nav ul li.index_level04,
.post_cont .index_nav ul li.index_level05 {
	margin-top: 25px;
}
.post_cont .index_nav ul li a {
	font-size: 16px;
	font-weight: normal;
	text-decoration: none;
}
.post_cont .index_nav ul li.index_level03 a,
.post_cont .index_nav ul li.index_level04 a,
.post_cont .index_nav ul li.index_level05 a {
	font-size: 14px;
}
.post_cont .index_nav ul li::before {
	display: none;
}

.post_cont .has-text-align-left{
	text-align: left;
}
.post_cont .has-text-align-center{
	text-align: center;
}
.post_cont .has-text-align-right{
	text-align: right;
}

.post_cont h2{
	margin: 50px 0 30px;
	padding: 0 0 0 35px;
	font-size: 22px;
	position: relative;
	line-height: 1.2;
}
.post_cont h2:before{
	content: "";
	display: block;
	width:14px;
	height: 14px;
	border:1px solid var(--main-color);
	background: #fff;
	position: absolute;
	top:0px;
	left:0;
}
.post_cont h2:after{
	content: "";
	display: block;
	width:14px;
	height: 14px;
	border:1px solid var(--main-color);
	background: var(--main-color);
	position: absolute;
	top:10px;
	left:10px;
}
.post_cont h3{
	margin: 45px 0 30px;
	padding: 0 0 0 30px;
	font-size: 20px;
	position: relative;
	line-height: 1.2;
}
.post_cont h3:before{
	content: "";
	display: block;
	width:20px;
	height: 20px;
	background: var(--main-color);
	position: absolute;
	top:2px;
	left:0;
}

.post_cont h4{
	font-size:18px;
	border-left:5px solid var(--main-color);
	margin: 40px 0 30px;
	padding: 2px 0 0 15px;
	line-height: 1.2;
}

.post_cont h5{
	font-size:16px;
	margin: 35px 0 30px;
	padding: 0 0 0 25px;
	position: relative;
	line-height: 1.2;
}
.post_cont h5:before{
	content: "";
	display: block;
	width:15px;
	height: 5px;
	background: var(--main-color);
	position: absolute;
	top:10px;
	left:0;
}
.post_cont strong{
	font-weight: bold;
	color: var(--main-dark-color);
}
.post_cont em{
	font-style: italic;
	color: var(--main-color);
}
.post_cont a{
	text-decoration: underline;
	color:var(--main-color);
}

.post_cont > p{
	margin: 0 0 30px;
}
.post_cont ul{
	margin: 0 0 30px 23px;
	list-style-type: disc;
}
.post_cont ol{
	margin: 0 0 30px 23px;
	list-style-type: decimal;
}
.post_cont table{
	border-collapse: separate;
	border-spacing: 5px;
	width: 100%;
	margin: 0 0 30px;
	font-size: 14px;
	line-height: 1.5;
}
.post_cont table th{
	background: var(--main-color);
	color:#fff;
	font-weight: bold;
	padding: 10px 15px;
}
.post_cont table tr:nth-of-type(1) th{
	background: var(--main-dark-color);
}
.post_cont table td{
	background: var(--main-light-color);
	padding: 10px 15px;
}
.post_cont .wp-block-quote{
	background: var(--main-light-color);
	padding: 50px;
	border-left: 3px solid var(--main-color);
	margin: 0 0 30px;
	position: relative;
}
.post_cont .wp-block-quote:before,
.post_cont .wp-block-quote:after{
	content: "”";
	display: block;
	font-size: 100px;
	color:var(--main-color);
	line-height: 1;
	position: absolute;
}
.post_cont .wp-block-quote:before{
	top: 10px;
	left: 10px;
}
.post_cont .wp-block-quote:after{
	bottom: 10px;
	right: 10px;
	transform: rotate(180deg);
}

.post_cont .wp-block-buttons{
	margin: 0 0 30px;
	display: flex;
}
.post_cont .wp-block-buttons a{
	display: block;
	text-align: center;
	background: var(--main-color);
	border: 1px solid var(--main-color);
	box-sizing: border-box;
	line-height: 48px;
	min-width: 380px;
	height: 50px;
	border-radius: 50px;
	color: #fff;
	font-weight: bold;
	transition: all 0.5s;
	position: relative;
	text-decoration: none;
}
.post_cont .wp-block-buttons a::after{
	content: "";
	background: url(img/btn_arrow01.png)center left / cover no-repeat;
	width: 16px;
	height: 12px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 20px;
}
.post_cont .wp-block-code{
	display: block;
	white-space: pre-wrap;
	margin: 0 0 30px;
}
.post_cont .wp-block-code code{
	display: inline-block;
	padding: 20px;
	color: #fff;
	background: #333;
}
.post_cont .wp-block-image{
	margin: 0 0 30px;
}
.post_cont .wp-block-image img{
	max-width: 100%;
	border-radius: 10px;
}




/* footer
------------------------------------------------------------------------*/
	footer {
		padding-bottom: 70px;
		background: var(--beige-color);
	}
	footer .inner {
		display: grid;
		grid-template-columns: minmax(0, 6fr) minmax(0, 4fr);
		column-gap: 20px;
	}
	footer .inner::before {
		content: "";
		display: block;
		height: 1px;
		margin-bottom: 40px;
		background: var(--main-color);
	}
	footer .inner > *,
	footer .inner::before,
	footer .f_info > * {
		grid-column: 1 / -1;
	}
	footer .f_info {
		display: contents;
	}
	footer .f_info .logo img {
		width: 240px;
	}
	footer .f_info .name {
		margin-top: 16px;
		font-size: 15px;
		font-weight: bold;
		line-height: 26px;
	}
	footer .f_info .address {
		margin-top: 10px;
		font-size: 13px;
		line-height: 24px;
	}
	footer .f_info .address .ttl::before {
		content: "■";
	}
	footer .f_info .address .note::before {
		content: "※";
	}
	footer .f_info .copy {
		margin-top: 40px;
		font-size: 11px;
		line-height: 20px;
		text-align: center;
		order: 9;
	}
	footer .f_nav {
		margin-top: 36px;
	}
	footer .inner > .f_nav.sitemap {
		grid-column: 1;
	}
	footer .f_nav .ttl {
		padding-bottom: 6px;
		border-bottom: 1px solid var(--main-color);
		color: var(--main-color);
		font-size: 14px;
		font-weight: bold;
		line-height: 24px;
	}
	footer .f_nav ul,
	footer .f_nav .scroll_box {
		margin-top: 8px;
		font-size: 13px;
		line-height: 32px;
	}
	footer .f_nav li a,
	footer .f_nav li span {
		display: block;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	footer .f_nav li a::before,
	footer .f_nav li > span::before {
		content: "・";
	}
	footer .f_nav li.has_sub > span::after {
		content: "＋";
		margin-left: 1em;
	}
	footer .f_nav li.has_sub.is-open > span::after {
		content: "－";
	}
	footer .f_nav li.has_sub ul {
		display: none;
		margin: 0 0 0 1em;
	}
	footer .f_nav li.has_sub ul li a::before {
		content: "- ";
	}
	footer .inner > .f_nav.area {
		grid-column: 2;
	}
	footer .f_nav .scroll_box {
		height: 384px;
		overflow-y: auto;
	}
	footer .f_nav .pref::before {
		content: "■";
	}
	footer .f_nav ul + .pref {
		margin-top: 15px; /* AREA：府県ごとの間 */
	}
	footer .f_nav .scroll_box ul {
		margin-top: 0;
	}
	footer .sp_fix {
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 90;
		display: flex;
		width: 100%;
	}
	footer .sp_fix p {
		width: 50%;
	}
	footer .sp_fix p a {
		position: relative;
		display: block;
		height: 40px;
		background: var(--main-color);
		color: #fff;
		font-size: 16px;
		font-weight: bold;
		line-height: 40px;
		text-align: center;
	}
	footer .sp_fix p a::before {
		content: "";
		display: inline-block;
		width: 20px;
		height: 20px;
		margin: 0 9px 3px 0;
		vertical-align: middle;
		background: url(img/common_icon09.svg) no-repeat center / contain;
		filter: brightness(0) invert(1);
	}
	footer .sp_fix .contact a {
		background: var(--gold-color);
	}
	footer .sp_fix .contact a::before {
		width: 18px;
		height: 14px;
		background: url(img/common_icon02.svg) no-repeat center / contain;
	}



}/*SPの記述ここまで*/





/* swiper
----------------------------------------------------------*/

/**
 * Swiper 14.3.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: September 28, 2026
 */

:root{--swiper-theme-color:#007aff}:host{display:block;margin-left:auto;margin-right:auto;position:relative;z-index:1}.swiper{display:block;list-style:none;margin-left:auto;margin-right:auto;overflow:hidden;padding:0;position:relative;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{box-sizing:initial;display:flex;height:100%;position:relative;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);width:100%;z-index:1}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{display:block;flex-shrink:0;height:100%;position:relative;transition-property:transform;width:100%}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px;.swiper-cube-shadow,.swiper-slide{transform-style:preserve-3d}}.swiper-css-mode{>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none;&::-webkit-scrollbar{display:none}}>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}&.swiper-horizontal{>.swiper-wrapper{scroll-snap-type:x mandatory}>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}}&.swiper-vertical{>.swiper-wrapper{scroll-snap-type:y mandatory}>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}}&.swiper-free-mode{>.swiper-wrapper{scroll-snap-type:none}>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}}&.swiper-centered{>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}}&.swiper-centered.swiper-horizontal{>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}}&.swiper-centered.swiper-vertical{>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{height:var(--swiper-centered-offset-after);min-width:1px;width:100%}}}.swiper-3d{.swiper-slide-shadow,.swiper-slide-shadow-bottom,.swiper-slide-shadow-left,.swiper-slide-shadow-right,.swiper-slide-shadow-top{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:10}.swiper-slide-shadow{background:#00000026}.swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-slide-shadow-top{background-image:linear-gradient(0deg,#00000080,#0000)}.swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,#00000080,#0000)}}.swiper-lazy-preloader{border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top:4px solid #0000;box-sizing:border-box;height:42px;left:50%;margin-left:-21px;margin-top:-21px;position:absolute;top:50%;transform-origin:50%;width:42px;z-index:10}.swiper-watch-progress .swiper-slide-visible,.swiper:not(.swiper-watch-progress){.swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite}}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode{.swiper-wrapper:after{content:"";left:0;pointer-events:none;position:absolute;top:0}}.swiper-virtual.swiper-css-mode.swiper-horizontal{.swiper-wrapper:after{height:1px;width:var(--swiper-virtual-size)}}.swiper-virtual.swiper-css-mode.swiper-vertical{.swiper-wrapper:after{height:var(--swiper-virtual-size);width:1px}}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{align-items:center;color:var(--swiper-navigation-color,var(--swiper-theme-color));cursor:pointer;display:flex;height:var(--swiper-navigation-size);justify-content:center;position:absolute;width:var(--swiper-navigation-size);z-index:10;&.swiper-button-disabled{cursor:auto;opacity:.35;pointer-events:none}&.swiper-button-hidden{cursor:auto;opacity:0;pointer-events:none}.swiper-navigation-disabled &{display:none!important}::slotted(svg),svg{height:100%;object-fit:contain;transform-origin:center;width:100%;fill:currentColor;pointer-events:none}}.swiper-button-lock{display:none}.swiper-button-next,.swiper-button-prev{margin-top:calc(0px - var(--swiper-navigation-size)/2);top:var(--swiper-navigation-top-offset,50%)}.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto;.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(180deg)}}.swiper-button-next{left:auto;right:var(--swiper-navigation-sides-offset,4px)}.swiper-horizontal{.swiper-button-next,.swiper-button-prev,~.swiper-button-next,~.swiper-button-prev{margin-left:0;margin-top:calc(0px - var(--swiper-navigation-size)/2);top:var(--swiper-navigation-top-offset,50%)}&.swiper-rtl .swiper-button-next,&.swiper-rtl~.swiper-button-next,&~.swiper-button-prev,.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto}&.swiper-rtl .swiper-button-prev,&.swiper-rtl~.swiper-button-prev,&~.swiper-button-next,.swiper-button-next{left:auto;right:var(--swiper-navigation-sides-offset,4px)}&.swiper-rtl .swiper-button-next,&.swiper-rtl~.swiper-button-next,&~.swiper-button-prev,.swiper-button-prev{.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(180deg)}}&.swiper-rtl .swiper-button-prev,&.swiper-rtl~.swiper-button-prev{.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(0deg)}}}.swiper-vertical{.swiper-button-next,.swiper-button-prev,~.swiper-button-next,~.swiper-button-prev{left:var(--swiper-navigation-top-offset,50%);margin-left:calc(0px - var(--swiper-navigation-size)/2);margin-top:0;right:auto}.swiper-button-prev,~.swiper-button-prev{bottom:auto;top:var(--swiper-navigation-sides-offset,4px);.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(-90deg)}}.swiper-button-next,~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset,4px);top:auto;.swiper-navigation-icon,::slotted(.swiper-navigation-icon){transform:rotate(90deg)}}}.swiper-pagination{position:absolute;text-align:center;transform:translateZ(0);transition:opacity .3s;z-index:10;&.swiper-pagination-hidden{opacity:0}&.swiper-pagination-disabled,.swiper-pagination-disabled>&{display:none!important}}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);left:0;top:var(--swiper-pagination-top,auto);width:100%}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden;.swiper-pagination-bullet{position:relative;transform:scale(.33)}.swiper-pagination-bullet-active,.swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullet-active-next-next{transform:scale(.33)}}.swiper-pagination-bullet{background:var(--swiper-pagination-bullet-inactive-color,#000);border-radius:var(--swiper-pagination-bullet-border-radius,50%);display:inline-block;height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));opacity:var(--swiper-pagination-bullet-inactive-opacity,.2);width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));button&{appearance:none;border:none;box-shadow:none;margin:0;padding:0}.swiper-pagination-clickable &{cursor:pointer}&:only-child{display:none!important}}.swiper-pagination-bullet-active{background:var(--swiper-pagination-color,var(--swiper-theme-color));opacity:var(--swiper-pagination-bullet-opacity,1)}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{left:var(--swiper-pagination-left,auto);right:var(--swiper-pagination-right,8px);top:50%;transform:translate3d(0,-50%,0);.swiper-pagination-bullet{display:block;margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0}&.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px;.swiper-pagination-bullet{display:inline-block;transition:transform .2s,top .2s}}}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets{.swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}&.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap;.swiper-pagination-bullet{transition:transform .2s,left .2s}}}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,#00000040);position:absolute;.swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));height:100%;left:0;position:absolute;top:0;transform:scale(0);transform-origin:left top;width:100%}.swiper-rtl & .swiper-pagination-progressbar-fill{transform-origin:right top}&.swiper-pagination-horizontal,&.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-horizontal>&,.swiper-vertical>&.swiper-pagination-progressbar-opposite{height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0;width:100%}&.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,&.swiper-pagination-vertical,.swiper-horizontal>&.swiper-pagination-progressbar-opposite,.swiper-vertical>&{height:100%;left:0;top:0;width:var(--swiper-pagination-progressbar-size,4px)}}.swiper-pagination-lock{display:none}.swiper-scrollbar{background:var(--swiper-scrollbar-bg-color,#0000001a);border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;touch-action:none;&.swiper-scrollbar-disabled,.swiper-scrollbar-disabled>&{display:none!important}&.swiper-scrollbar-horizontal,.swiper-horizontal>&{bottom:var(--swiper-scrollbar-bottom,4px);height:var(--swiper-scrollbar-size,4px);left:var(--swiper-scrollbar-sides-offset,1%);position:absolute;top:var(--swiper-scrollbar-top,auto);width:calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);z-index:50}&.swiper-scrollbar-vertical,.swiper-vertical>&{height:calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);left:var(--swiper-scrollbar-left,auto);position:absolute;right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);width:var(--swiper-scrollbar-size,4px);z-index:50}}.swiper-scrollbar-drag{background:var(--swiper-scrollbar-drag-bg-color,#00000080);border-radius:var(--swiper-scrollbar-border-radius,10px);height:100%;left:0;position:relative;top:0;width:100%}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{align-items:center;display:flex;height:100%;justify-content:center;text-align:center;width:100%;>canvas,>img,>svg{max-height:100%;max-width:100%;object-fit:contain}}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{left:0;opacity:0;pointer-events:none;position:absolute;top:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{margin:0 auto;transition-timing-function:ease-out}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-direction:column;flex-wrap:wrap}.swiper-fade{&.swiper-free-mode{.swiper-slide{transition-timing-function:ease-out}}.swiper-slide{pointer-events:none;transition-property:opacity;.swiper-slide{pointer-events:none}}.swiper-slide-active{pointer-events:auto;& .swiper-slide-active{pointer-events:auto}}}.swiper.swiper-cube{overflow:visible}.swiper-cube{.swiper-slide{backface-visibility:hidden;height:100%;pointer-events:none;transform-origin:0 0;visibility:hidden;width:100%;z-index:1;.swiper-slide{pointer-events:none}}&.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-slide-active{&,& .swiper-slide-active{pointer-events:auto}}.swiper-slide-active,.swiper-slide-next,.swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube-shadow{bottom:0;height:100%;left:0;opacity:.6;position:absolute;width:100%;z-index:0;&:before{background:#000;bottom:0;content:"";filter:blur(50px);left:0;position:absolute;right:0;top:0}}}.swiper-cube{.swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}}.swiper-cube{.swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-slide-shadow-cube.swiper-slide-shadow-top{backface-visibility:hidden;z-index:0}}.swiper.swiper-flip{overflow:visible}.swiper-flip{.swiper-slide{backface-visibility:hidden;pointer-events:none;z-index:1;.swiper-slide{pointer-events:none}}.swiper-slide-active{&,& .swiper-slide-active{pointer-events:auto}}}.swiper-flip{.swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-slide-shadow-flip.swiper-slide-shadow-top{backface-visibility:hidden;z-index:0}}.swiper-creative{.swiper-slide{backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}}.swiper.swiper-cards{overflow:visible}.swiper-cards{.swiper-slide{backface-visibility:hidden;overflow:hidden;transform-origin:center bottom}}





/*mail form pro
----------------------------------------------------------*/
div#mfp_hidden {
	overflow: hidden;
	width: 1px;
	height: 1px;
	padding: 0px;
	margin: 0px;
}
div#mfp_hidden input {
	margin: 10px;
}
div.mfp_thanks {
	padding: 30px;
}
div.mfp_thanks p {
	line-height: 1.7em;
}
div.mfp_thanks ul.mfp_caution {
	margin: 0px;
	padding: 0px;
}
div.mfp_thanks ul.mfp_caution li {
	display: block;
	color: #C00;
	margin: 0px;
	padding: 5px 0px;
}
div#mfp_thanks {
	text-align: center;
	font-size: 18px;
	padding: 20px 0px;
}
div#mfp_thanks strong {
	color: #C00;
	font-size: 24px;
}
form#mailformpro dl dt {
	float: left;
	width: 160px;
	clear: both;
	font-size: 12px;
	padding: 10px 0px;
	text-align: right;
	border-top: solid 1px #CCC;
	margin: 0px;
}
form#mailformpro dl dd {
	border-top: solid 1px #CCC;
	margin: 0px;
	padding: 10px 5px 20px 170px;
	font-size: 12px;
	line-height: 1.5em;
	text-align: left;
}
form#mailformpro dl dd ul,form#mailformpro dl dd ol {
	margin: 0px;
	padding: 0px;
}
form#mailformpro dl dd ul li,form#mailformpro dl dd ol li {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
form#mailformpro .must {
	display: block;
	background-color: #C00;
	border: solid 2px #C00;
	text-shadow: 0px 1px 2px #933;
	padding: 2px 5px;
	font-size: 10px;
	color: #FFF;
	float: left;
	margin: 0px 5px;
	border-radius: 4px;
	box-shadow: 0px 0px 5px #CCC;
	background-image: url(img/mfp_header.png);
	background-size: 100% 100%;
}
form#mailformpro .optionally {
	display: block;
	background-color: #06C;
	border: solid 2px #06C;
	text-shadow: 0px 1px 2px #933;
	padding: 2px 5px;
	font-size: 10px;
	color: #FFF;
	float: left;
	margin: 0px 5px;
	border-radius: 4px;
	box-shadow: 0px 0px 5px #CCC;
	background-image: url(img/mfp_header.png);
	background-size: 100% 100%;
}
form#mailformpro label {
	border-radius: 3px;
	margin: 3px;
	display: inline-block;
	white-space: nowrap;
}
table#mfp_confirm_table {
	border-spacing: 0px;
	border-collapse: collapse;
	width: 100%;
	margin: 20px 0;
}
table#mfp_confirm_table tr.mfp_colored {
	background-color: #F6F7F9;
}
table#mfp_confirm_table tr.mfp_achroma {
	background-color: #FFF;
}
table#mfp_confirm_table tr th,table#mfp_confirm_table tr td {
	text-align: left;
	border-top: solid 1px #CCC;
	padding: 9px;
}
table#mfp_confirm_table tr th {
	white-space: nowrap;
	width: 200px;
}
table#mfp_confirm_table tr td {
	line-height: 1.5em;
	word-break: break-all;
}
div#mfp_phase_confirm {
	clear: both;
}
div#mfp_phase_confirm h4 {
	font-size: 36px;
	padding: 10px 0px 0px 0px;
	text-align: center;
}
div#mfp_overlay {
	position: absolute;
	display: none;
	z-index: 10001;
}
div#mfp_overlay_inner {
	background-color: #FFF;
	padding: 15px;
	margin: 0px auto;
	border-radius: 5px;
	box-shadow: 0px 0px 10px #000;
	width: 640px;
	max-width: 90%;
}
div#mfp_overlay_background {
	background-color: #000;
	position: absolute;
	display: none;
	z-index: 10001;
}
div#mfp_loading_screen {
	z-index: 20000;
	opacity: 0.8;
	display: none;
	background-color: #000;
	position: absolute;
}
div#mfp_loading {
	z-index: 20001;
	position: absolute;
	display: none;
	width: 40px;
	height: 40px;
	background-image: url(img/mfp_loading.gif);
}
.mfp_colored {
	background-color: #F6F7F9;
}
.mfp_achroma {
	background-color: #FFF;
}
div.mfp_err {
	clear: both;
	display: none;
	text-align: left;
	margin: 5px 0px 0px 0px;
	padding: 3px 0px 5px 17px;
	color: #F00;
	font-size: 14px;
	line-height: normal;
	background-image: url(img/mfp_error.gif);
	background-repeat: no-repeat;
	background-position: 0px 7px;
}
.mfp_parent_error {
	border: solid 2px #F00;
}
form#mailformpro .problem {
	background-color: #FCC;
}
div#mfp_error {
	background-color: #FEE;
	border: solid 1px #F00;
	padding: 10px;
	display: none;
}
div#mfp_error p {
	padding: 0px;
	margin: 0px;
	font-size: 14px;
	text-align: center;
}
div#mfp_error p strong {
	font-size: 18px;
	color: #F00;
}
div#mfp_warning {
	background-color: #FEE;
	border: solid 1px #F00;
	padding: 10px;
	display: none;
	border-radius: 5px;
}
div#mfp_warning p {
	padding: 0px;
	margin: 0px;
	font-size: 14px;
	text-align: center;
}
div#mfp_warning p strong {
	font-size: 18px;
	color: #F00;
}
div#mfp_price {
	color: #C00;
	font-size: 36px;
	padding: 10px;
	font-weight: bolder;
}
div#mfp_price span {
	color: #666;
	font-size: 12px;
	font-weight: normal;
}
button.mfp_next,button.mfp_prev {
	font-size: 18px;
	margin: 10px;
	padding: 5px 10px;
}
button.mfp_next {
	float: right;
}
button.mfp_prev {
	float: left;
}
ul#mfp_phase_stat {
	padding: 10px;
	text-align: center;
}
ul#mfp_phase_stat li {
	display: inline-block;
	padding: 8px 15px;
	border-radius: 5px;
	margin: 0px 5px;
	list-style: none;
	font-size: 14px;
}
ul#mfp_phase_stat li.mfp_phase_arrow {
	box-shadow: none;
	color: #999;
	padding: 8px 0px;
}
ul#mfp_phase_stat li.mfp_active_phase {
	box-shadow: 0px 1px 6px #000;
	background-image: url(img/mfp_header.png);
	background-size: 100% 100%;
	background-color: #0068B7;
	border: solid 2px #0068B7;
	font-weight: bolder;
	color: #FFF;
	text-shadow: 0px 1px 3px #000;
}
ul#mfp_phase_stat li.mfp_inactive_phase {
	background-image: url(img/mfp_header.png);
	background-size: 100% 100%;
	background-color: #EEE;
	border: solid 2px #EEE;
	color: #999;
	box-shadow: 0px 1px 6px #CCC;
}
div#mfp_shopping_cart {
	border: solid 1px #CCC;
	margin: 0px;
	padding: 0px;
}
div#mfp_shopping_cart p {
	margin: 0px;
	text-align: center;
	padding: 20px 10px;
	font-size: 12px;
	background-color: #FEE;
}
table.mfp_shoppingcart {
	border-spacing: 0px;
	border-collapse: collapse;
	width: 100%;
}
table.mfp_shoppingcart thead tr td {
	background-color: #EEE;
	border-bottom: solid 1px #CCC;
	text-align: center;
	font-size: 12px;
	padding: 5px;
}
table.mfp_shoppingcart tbody tr th,table.mfp_shoppingcart tbody tr td {
	font-size: 12px;
	padding: 5px;
	border-bottom: solid 1px #CCC;
}
table.mfp_shoppingcart tbody tr td select {
	display: block;
	margin: 0px auto;
	text-align: center;
}
table.mfp_shoppingcart tbody tr td select option {
	text-align: center;
}
table.mfp_shoppingcart tbody tr th span {
	display: block;
	font-weight: normal;
	font-size: 10px;
	color: #666;
	padding: 3px 0px;
}
table.mfp_shoppingcart tfoot tr td {
	padding: 5px;
	font-size: 16px;
	font-weight: bolder;
	color: #900;
}
td.msc_price {
	font-size: 12px;
	text-align: right;
}
div.mfp_buttons {
	clear: both;
	padding: 10px 0px;
	text-align: center;
}
div.mfp_buttons button#mfp_button_send {
	padding: 10px 100px;
	background-color: #3ac5ff;
	border: 1px solid #3ac5ff;
	color: #FFFFFF;
	cursor: pointer;
}
div.mfp_buttons button#mfp_button_cancel {
	padding: 10px 100px;
	border: 1px solid #3ac5ff;
	color: #3ac5ff;
	cursor: pointer;
	background:#fff;
}
.imagebutton {
	margin: 0px;
	padding: 0px;
	border: none;
	outline: none;
	background: none;
}
.mfp_element_checkbox,
.mfp_element_radio {
	vertical-align: middle;
	margin: 0px 2px;
}
.mfp_element_file {
	font-size: 12px;
	display: inline-block;
	padding: 10px 10px;
	vertical-align: middle;
	border: solid 1px #CCC;
	border-radius: 3px;
	box-shadow: 0px 0px 5px #CCC inset;
	background: #EEE;
}
.mfp_element_reset {
	color: #333;
}
button.mfp_next,button.mfp_prev {
	font-size: 14px;
}
input#mfp_reserve_item,input#mfp_reserve_date {
	display: none;
}
div#mfp_reserve_wrapper {
	position: relative;
	overflow: hidden;
	border: solid 1px #CCC;
}
div#mfp_reserve_inner {
	position: relative;
	padding: 0px 0px 0px 100px;
	overflow: auto;
}
div#mfp_reserve_wrapper table {
	border-spacing: 0px;
	border-collapse: collapse;
}
div#mfp_reserve_wrapper table.mfp_reserve_table_label {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100px;
	background-color: #FEE;
	z-index: 100;
}
div#mfp_reserve_wrapper table.mfp_reserve_table_value {
	padding: 0px 0px 0px 0px;
}
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active,
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning {
	cursor: pointer;
}
@media screen and (min-width: 441px){
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active:hover,
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning:hover {
	background-color: #E8EEF9;
}
}
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_current {
	background-color: #0068B7;
	color: #FFF;
}
td.mfp_reserve_disabled {
	background-color: #CCC;
}
td.mfp_reserve_warning {
	background-color: #FFC;
}
div#mfp_reserve_wrapper table tr td,div#mfp_reserve_wrapper table tr th {
	border: solid 1px #CCC;
	padding: 0px 5px;
	font-size: 12px;
	text-align: center;
	font-family: Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	font-weight: normal;
	height: 20px;
	text-align: left;
}
td.mfp_reserve_week_0 {
	color: #F00;
	background-color: #FEE;
}
td.mfp_reserve_week_6 {
	color: #00F;
	background-color: #EEF;
}
div.mfp_ok {
	border: solid 1px #111;
	display: inline-block;
	padding: 1px 10px;
	margin-top: 5px;
	color: #111;
	font-size: 12px;
	display: none;
}
div.prefcodeWrapper {
	position: relative;
}
div.prefcodeResult {
	position: absolute;
	top: 0px;
	left: 0px;
	padding: 5px;
	border: solid 1px #CCC;
	background-color: #FFF;
	box-shadow: 0px 0px 5px #CCC;
	display: none;
}
div.prefcodeResult div {
	cursor: pointer;
}
@media screen and (min-width: 441px){
div.prefcodeResult div:hover {
	background-color: #C9EBFB;
}
}
div.prefcodeResult div.prefcodeNext {
	background-color: #EEE;
	text-align: center;
}
div.prefLoading {
	padding: 60px 100px;
	background: url(img/mfp_zip_loading.gif) no-repeat center center;
}
.hidefield {
	height: 0px;
	overflow: hidden;
}
.showfield {
	height: auto;
	overflow: visible;
}
div.mfp_attached_thumbnails {
	display: none;
	padding: 5px;
	margin: 5px auto;
	border: solid 1px #CCC;
	border-radius: 3px;
	box-shadow: 0px 0px 5px #CCC inset;
	background: #EEE;
}
div.mfp_attached_thumbnails ul {
	margin: 0px;
	padding: 0px;
}
form#mailformpro dl dd div.mfp_attached_thumbnails ul li {
	display: inline-block;
	vertical-align: top;
	padding: 0px;
	border: solid 4px #FFF;
	margin: 5px;
	box-shadow: 0px 2px 5px #999;
}
form#mailformpro dl dd div.mfp_attached_thumbnails ul li a {
	display: block;
	max-height: 100px;
	overflow: hidden;
}
div.mfp_attached_thumbnails ul li a img {
	display: block;
	max-width: 80px;
}
button.mfp_attached_reset {
	font-size: 14px;
}
div#mfp_OperationCheck div#mfp_OperationCheck_inner {
	display: none;
}
div#mfp_OperationCheck strong {
	background: #090;
	display: block;
	color: #222;
	text-align: center;
	border-radius: 3px;
}
div#mfp_OperationCheck * {
	padding: 0px;
	margin: 0px;
	font-size: 12px;
}
div#mfp_OperationCheck p {
	padding: 0px 5px;
	margin: 0px;
	font-size: 12px;
}
div#mfp_OperationCheck p a {
	color: #0C0;
	text-decoration: none;
}
@media screen and (min-width: 441px){
div#mfp_OperationCheck p a:hover,
div#mfp_OperationCheck p button:hover {
	text-decoration: underline;
}
}
div#mfp_OperationCheck p button {
	border: none;
	background: none;
	color: #0C0;
	cursor: pointer;
}
div#mfp_OperationCheck ul li,
div#mfp_OperationCheck ul li label,
div#mfp_OperationCheck ul li label input {
	line-height: 12px;
	font-size: 12px;
	list-style: none;
	vertical-align: middle;
}
div#mfp_OperationCheck ul li {
	padding: 5px 10px;
}
div#mfp_OperationCheck ul li
{
	text-decoration: underline;
}
button#mfp_recorder_record,
button#mfp_recorder_clear,
button#mfp_recorder_restore {
	border-radius: 5px;
	padding: 5px 10px 5px 2em;
	border: solid 1px #CCC;
	background: gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
	background: -webkit-gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
	background: -moz-linear-gradient(top, #EEE, #CCC);
	background: -ms-linear-gradient(top, #EEE 0%, #CCC 100%);
	text-shadow: 0px 2px 0px #FFF;
	font-size: 16px;
	cursor: pointer;
	outline: none;
	display: inline-block;
	margin: 5px auto;
}
button#mfp_recorder_record {
	background: url(img/mfp_record_disabled.png) no-repeat 5px center #EEE;
	background-size: 24px 24px;
}
button#mfp_recorder_clear {
	background: url(img/mfp_record_remove.png) no-repeat 5px center #EEE;
	background-size: 24px 24px;
}
button#mfp_recorder_restore {
	background: url(img/mfp_record_restore.png) no-repeat 5px center #EEE;
	background-size: 24px 24px;
}
button.enabled#mfp_recorder_record,
button.enabled#mfp_recorder_clear,
button.enabled#mfp_recorder_restore {
	background: url(img/mfp_record_enabled.png) no-repeat 5px center #EEE;
	background-size: 24px 24px;
}
div#mfp_recorder_wrap {
	border: solid 1px #CCC;
	padding: 10px;
	text-align: center;
	margin: 5px auto;
}
td.request_image {
	width: 100px;
}
td.request_image img {
	max-width: 100px;
}
span.mfp_tips {
	background-image: url(img/mfp_header.png);
	background-size: 100% 100%;
	background-color: #FCC;
	display: block;
	border-radius: 5px;
	padding: 10px;
	margin: 2px;
	box-shadow: 0px 2px 10px #999;
}
span.mfp_tips strong {
	color: #800040;
}
span.mfp_tips span {
	display: block;
	padding: 10px;
	color: #008080;
}
span.mfp_tips em {
	font-style: normal;
	color: #090;
	font-weight: bold;
}
@media screen and (max-width: 1240px) {
div#mfp_overlay_background{
	width:1240px !important;
	height: 100% !important;
}
div#mfp_overlay{
	width:1240px !important;
}
}
@media screen and (max-width: 800px) {
form#mailformpro dl dt {
	float: none;
	width: auto;
	font-size: 12px;
	padding: 5px;
	text-align: left;
}
form#mailformpro dl dd {
	clear: both;
	border-top: none;
	padding: 5px 15px;
	font-size: 12px;
	line-height: 1.5em;
}
div.mfp_buttons button {
	font-size: 14px;
}
div#mfp_phase_confirm h4 {
	font-size: 18px;
}
ul#mfp_phase_stat {
	padding: 0px;
	text-align: left;
}
ul#mfp_phase_stat li {
	text-align: center;
	padding: 5px 0px;
	border-radius: 3px;
	margin: 5px;
	list-style: none;
	font-size: 14px;
	width: 28%;
}
ul#mfp_phase_stat li.mfp_phase_arrow {
	bos-shadow: none;
	display: none;
}
table#mfp_confirm_table tr th {
	white-space: nowrap;
	width: 150px;
}
div#mfp_thanks {
	text-align: center;
	font-size: 18px;
	padding: 20px 0px;
}
div#mfp_thanks strong {
	color: #C00;
	font-size: 24px;
	display: block;
}
}

@media screen and (max-width: 440px) {
div#mfp_overlay_background{
	width:440px !important;
	height: 100% !important;
}
div#mfp_overlay{
	width:440px !important;
}
div#mfp_overlay_inner{
	width:390px;
	max-width:none;
}
div.mfp_buttons button#mfp_button_send {
	padding: 10px 0;
	width:300px;
	margin-bottom: 10px;
}
div.mfp_buttons button#mfp_button_cancel {
	padding: 9px 0;
	width:300px;
	margin-right: 3px;
}
}