@charset "UTF-8";
@font-face {
	font-family: "Noto Sans JP";
	font-style: normal;
	font-weight: 400;
	src: local("Noto Sans CJK JP"), local("Noto Sans JP"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format("opentype");
}

main {
	display: block;
	margin: 0 auto;
}

.diagnosis.top {
	display: flex;
	justify-content: center;
}
@media only screen and (max-width: 736px) {
	.diagnosis.top {
		display: block;
	}
}
/* ===============================================
# サファリにだけ適用するCSS要のmixin
=============================================== */
@media only screen and (max-width: 736px) {
	.l-container-8vw--sp {
		padding-left: 8vw !important;
		padding-right: 8vw !important;
	}
}

@media only screen and (max-width: 736px) {
	.l-container-6vw--sp {
		padding-left: 6.1333333333vw !important;
		padding-right: 6.1333333333vw !important;
	}
}

.l-main {
	max-width: 1000px;
	width: 100%;
	position: relative;
}
@media only screen and (max-width: 736px) {
	.l-main {
		float: none;
		width: auto;
	}
}
.l-main a:hover {
	opacity: 0.6;
	zoom: 1;
}

/* 一番大枠の箇所初期値はSP時、画面外に要素が言っても隠れるようにoverflow: hidden;のみ
------------------------- */
.l-wrapper {
	text-align: left;
	margin: 0 0 0 50px;
	text-align: justify;
	position: relative;
}
@media only screen and (max-width: 736px) {
	.l-wrapper {
		width: auto;
		overflow: hidden;
		margin: 0;
	}
}

.o-kv {
	position: relative;
	width: 100%;
	height: 500px;
	aspect-ratio: 2/1;
	background: no-repeat center center/cover;
}
@media only screen and (max-width: 736px) {
	.o-kv {
		height: 250px;
		margin-bottom: 110px;
		background-position: right top;
	}
}
.o-kv__box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 180px;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	position: absolute;
	top: 50%;
	left: -25px;
	transform: translateY(-50%);
	background: #fff;
	max-width: 400px;
	width: 100%;
	padding: 30px 25px;
	border-radius: 10px;
	box-shadow: 0px 5px 35px 0px rgba(71, 163, 178, 0.15);
}

.o-kv__box_adjust {
	/* 皮膚科TOP等、タイトル下げる用 */
	min-height: 100px;
	top: 80%;
}
.o-kv__catch {
	letter-spacing: 0;
	line-height: 1.75;
	font-size: 18px;
	font-weight: 500;
}
.o-kv__title {
	font-size: 32px;
	line-height: 1.5;
	font-weight: 500;
	color: #5fbccb;
	letter-spacing: 0.05em;
}
@media only screen and (max-width: 736px) {
	.o-kv__box {
		top: auto;
		bottom: -110px;
		left: 0;
		min-height: 135px;
		margin-right: 8vw;
		width: calc(100% - 8vw);
		padding: 35px 8vw;
		transform: translateY(0);
	}
	.o-kv__box_adjust { /* 施術ページ長いタイトル調整 */
		padding: 0 8vw;
	}
	.o-kv__catch_adjust {
		font-size: 15px;
	}
	.o-kv__title_adjust {
		font-size: 24px;
		letter-spacing: 0.03rem;
	}
}

.o-banner {
	display: block;
	position: relative;
	width: 100%;
	padding: 0 100px;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-banner {
		padding: 0 8vw;
	}
}
.o-banner picture > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

/* ===============================================
# 大見出しT1
=============================================== */
.o-heading__t1 {
	padding: 10px 0;
	text-align: center;
	width: 100%;
	position: relative;
	border: solid 4px #5fbccb;
	background-color: #f6fafa;
}
.o-heading__t1::after,
.o-heading__t1::before {
	position: absolute;
	content: "";
	display: block;
	background-color: #f6fafa;
}
.o-heading__t1::before {
	top: -4px;
	bottom: -4px;
	left: 20px;
	right: 20px;
}
.o-heading__t1::after {
	top: 10px;
	bottom: 10px;
	left: -4px;
	right: -4px;
}
.o-heading__t1-title {
	position: relative;
	z-index: 1;
	color: #5fbccb;
	font-size: 32px;
	line-height: 1.5;
	font-weight: 500;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
}
@media only screen and (max-width: 736px) {
	.o-heading__t1-title {
		font-size: 24px;
	}
}
.o-heading__t1-text {
	text-align: center;
	font-size: 18px;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-heading__t1-text {
		font-size: 16px;
		text-align: left;
	}
}
/* ===============================================
# 中見出しT2
=============================================== */
.o-heading__t2 {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.o-heading__t2-wrap {
	position: relative;
	margin: 0 auto;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 28px;
	line-height: 1.5;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-weight: 500;
	z-index: 1;
	color: #5fbccb;
}
@media only screen and (max-width: 736px) {
	.o-heading__t2-wrap {
		font-size: 20px;
	}
}
.o-heading__t2-wrap::after {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	transform: skewX(333deg);
	border-left: 2px solid #5fbccb;
	border-right: 2px solid #5fbccb;
}
.o-heading__t2-title {
	position: relative;
	z-index: 1;
	padding: 0 42px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t2-title {
		padding: 0 11.2vw;
	}
}
.o-heading__t2-sub {
	position: absolute;
	top: -23px;
	font-size: 16px;
	font-family: "EB Garamond", serif;
	font-weight: 500;
	letter-spacing: 0;
}
@media only screen and (max-width: 736px) {
	.o-heading__t2-sub {
		font-size: 13px;
	}
}
.o-heading__t2-text {
	font-size: 16px;
	line-height: 2;
	text-align: left;
}
@media only screen and (max-width: 736px) {
	.o-heading__t2-text {
		font-size: 13px;
	}
}
/* ===============================================
# 真ん中グラデ線円丸T3
=============================================== */
.o-heading__t3 {
	display: flex;
	font-size: 22px;
	line-height: 1.75;
	font-weight: bold;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
}
@media only screen and (max-width: 736px) {
	.o-heading__t3 {
		font-size: 18px;
	}
}
.o-heading__t3 a {
	border-bottom: 1px solid #668084;
}
/* ===============================================
# 囲み付き見出しT4
=============================================== */
.o-heading__t4 {
	display: flex;
	align-items: center;
	border: 1px solid #cccccc;
	border-radius: 10px;
}
.o-heading__t4-main {
	flex-direction: column;
	justify-content: center;
	padding: 40px 50px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t4-main {
		padding: 30px 6.6666666667vw;
	}
}
.o-heading__t4-title {
	display: inline-block;
	font-size: 22px;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-weight: bold;
	border-bottom: 2px solid #5fbccb;
	padding-bottom: 5px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t4-title {
		font-size: 18px;
	}
}
.o-heading__t4-text {
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-heading__t4-text {
		font-size: 13px;
	}
}
.o-heading__t4-text--diff-fz {
	font-size: 14px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t4-text--diff-fz {
		font-size: 11px;
	}
}
.o-heading__t4-point {
	padding: 15px 50px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t4-point {
		padding: 10px 2.6666666667vw;
	}
}
.o-heading__t4-point-title {
	font-family: "Cormorant Garamond", serif;
	margin-right: 40px;
	font-weight: bold;
	font-size: 22px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t4-point-title {
		font-size: 18px;
		margin-right: 3.2vw;
	}
}
.o-heading__t4-point-box {
	position: relative;
	display: block;
	padding-left: 25px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t4-point-box {
		padding-left: 2.6666666667vw;
	}
}
.o-heading__t4-point-box::before {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	content: "";
	height: 85%;
	width: 2px;
	background: #5fbccb;
}
.o-heading__t4-point-lead {
	font-weight: bold;
}
@media only screen and (max-width: 736px) {
	.o-heading__t4-point-lead {
		font-size: 13px;
	}
}
/* ===============================================
# 囲み付き見出しT5
=============================================== */
.o-heading__t5 {
	display: flex;
	align-items: center;
	background: #f6fafa;
}
.o-heading__t5-main {
	flex-direction: column;
	justify-content: center;
	padding: 40px 50px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t5-main {
		border-radius: 10px;
		padding: 30px 6.6666666667vw;
	}
}
.o-heading__t5-title {
	display: inline-block;
	font-size: 22px;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-weight: bold;
	border-bottom: 2px solid #5fbccb;
	padding-bottom: 5px;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-heading__t5-title {
		font-size: 18px;
	}
}
.o-heading__t5-text {
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-heading__t5-text {
		font-size: 13px;
	}
}
@media only screen and (max-width: 736px) {
	.o-heading__t5--sp-bg {
		border-radius: 0;
		width: 100vw;
		margin-left: calc(50% - 50vw);
		padding-left: calc(50vw - 50%);
		margin-right: calc(50% - 50vw);
		padding-right: calc(50vw - 50%);
	}
}
@media only screen and (max-width: 736px) and (max-width: 736px) {
	.o-heading__t5--sp-bg.o-heading__t5-main {
		padding: 30px 8vw;
	}
}
/* ===============================================
# 数字付き見出しT6
=============================================== */
.o-heading__t6 {
	display: flex;
	font-size: 22px;
	line-height: 1.75;
	font-weight: bold;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
}
@media only screen and (max-width: 736px) {
	.o-heading__t6 {
		font-size: 18px;
	}
}
.o-heading__t6-icon {
	position: relative;
	display: flex;
	color: #5fbccb;
	justify-content: center;
	align-items: center;
	font-family: "Cormorant Garamond", serif;
	padding-left: 5px;
	margin-top: 10px;
	margin-left: 3px;
	margin-right: 8px;
	width: 22px;
	height: 22px;
	border-left: 1px solid #5fbccb;
	border-top: 1px solid #5fbccb;
}
@media only screen and (max-width: 736px) {
	.o-heading__t6-icon {
		margin-top: 6px;
	}
}
.o-heading__t6-icon::after {
	display: block;
	content: "";
	position: absolute;
	top: -3px;
	left: -3px;
	width: 17px;
	height: 17px;
	border-left: 1px solid #5fbccb;
	border-top: 1px solid #5fbccb;
}
.o-heading__t6-text {
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-heading__t6-text {
		font-size: 13px;
	}
}
.o-heading__t6-notice {
	color: #4480cc;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-heading__t6-notice {
		font-size: 13px;
	}
}
.o-heading__t6-notice > .u-fnt-en2 {
	font-weight: bold;
}
/* ===============================================
# 赤グラデ丸T7
=============================================== */
.o-heading__t7 {
	display: flex;
	font-size: 22px;
	line-height: 1.75;
	font-weight: bold;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
}
@media only screen and (max-width: 736px) {
	.o-heading__t7 {
		font-size: 18px;
	}
}
/* ===============================================
# 丸アイコン T3,T7
=============================================== */
.o-heading__circle-icon,
.o-heading__circle-icon--secondary {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	width: 25px;
	height: 25px;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	flex-shrink: 0;
	margin-top: 8px;
	margin-right: 10px;
}
@media only screen and (max-width: 736px) {
	.o-heading__circle-icon,
	.o-heading__circle-icon--secondary {
		margin-top: 4px;
		margin-right: 8px;
	}
}
.o-heading__circle-icon::after,
.o-heading__circle-icon--secondary::after {
	content: "";
	display: block;
	background: #fff;
	width: 13px;
	height: 13px;
	border-radius: 50%;
}
/* ===============================================
# 丸アイコン T7
=============================================== */
.o-heading__circle-icon--secondary {
	background: rgb(246, 204, 217);
	background: linear-gradient(230deg, rgb(246, 204, 217) 0%, rgb(244, 120, 160) 100%);
}
.o-heading__circle-icon--secondary::after {
	display: none;
}
/* ===============================================
# 左右罫線見出しT8
=============================================== */
.o-heading__t8 {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-size: 18px;
	font-weight: bold;
}
@media only screen and (max-width: 736px) {
	.o-heading__t8 {
		font-size: 16px;
	}
}
.o-heading__t8::after,
.o-heading__t8::before {
	display: block;
	content: "";
	background: #000;
	height: 1px;
	width: 50px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t8::after,
	.o-heading__t8::before {
		width: auto;
		min-width: 13.3333333333vw;
		flex-grow: 1;
	}
}
.o-heading__t8::before {
	margin-right: 10px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t8::before {
		margin-right: 1.3333333333vw;
	}
}
.o-heading__t8::after {
	margin-left: 10px;
}
@media only screen and (max-width: 736px) {
	.o-heading__t8::after {
		margin-left: 1.3333333333vw;
	}
}
.o-heading__t8-text {
	line-height: 2;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-heading__t8-text {
		font-size: 13px;
		text-align: left;
	}
}
/* ===============================================
# T3,T7下のテキスト
=============================================== */
.o-heading__t3and7-text {
	font-size: 16px;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-heading__t3and7-text {
		font-size: 13px;
	}
}
/* ===============================================
# youtubeエリア用
=============================================== */
.o-heading__youtube {
	max-width: 630px;
	width: 100%;
	margin: 0 auto;
	aspect-ratio: 630/355;
}
.o-heading__youtube > iframe {
	width: 100%;
	height: 100%;
}
.o-heading__youtube-lead {
	line-height: 2;
	font-weight: bold;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-heading__youtube-lead {
		font-size: 13px;
	}
}

/* ===============================================
# ドクター紹介youtubeエリア用
=============================================== */
.o-heading-doctor__movie{
	flex-wrap: wrap;
}
.o-heading-doctor__youtube{
	max-width: calc(100% / 2 - 30px)
}
@media only screen and (max-width: 736px) {
.o-heading-doctor__youtube{
	max-width: 100%
}}



/* ===============================================
# 汎用的なコンテンツ部分用のスタイル
=============================================== */
.o-heading__contents {
	display: flex;
	gap: 0 50px;
	justify-content: space-between;
}
@media only screen and (max-width: 736px) {
	.o-heading__contents {
		flex-direction: column-reverse;
		gap: 5px 0;
	}
	.o-heading__contents--obverse {
		flex-direction: column;
	}
}
.o-heading__text {
	width: calc(50% - 25px);
	font-size: 16px;
	line-height: 2;
	text-align: left;
}
@media only screen and (max-width: 736px) {
	.o-heading__text {
		width: 100%;
		font-size: 13px;
	}
}
.o-heading__image,
.o-heading__image--col1 {
	width: calc(50% - 25px);
}
@media only screen and (max-width: 736px) {
	.o-heading__image,
	.o-heading__image--col1 {
		width: 100%;
		margin-bottom: 10px;
	}
}
.o-heading__image--col1 {
	width: 100%;
	margin: 0 auto 20px;
}
.o-heading__image > img,
.o-heading__image--col1 > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
@media only screen and (max-width: 736px) {
	.o-heading__container {
		padding: 0 8vw;
	}
}

@media only screen and (max-width: 736px) {
	.test-sp {
		padding: 0 8vw;
	}
}

.o-g1 {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g1 {
		padding: 0 8vw;
	}
}
.o-g1__wrapper {
	display: flex;
	justify-content: space-between;
}
.o-g1__heading {
	margin: 10px 0;
}
@media only screen and (max-width: 736px) {
	.o-g1__heading {
		margin: 10px 0;
	}
}
.o-g1__heading--top {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.o-g1__heading--top {
		margin-top: 0;
	}
}
.o-g1__line,
.o-g1__line--last {
	display: flex;
	justify-content: center;
	flex-shrink: 0;
	width: 25px;
}
.o-g1__line::after,
.o-g1__line--last::after {
	display: block;
	height: 100%;
	width: 1px;
	background: #5fbccb;
	content: "";
}
.o-g1__line--last::after {
	display: none;
	background: none;
}
.o-g1__contents {
	padding: 20px 0 40px;
	width: calc(100% - 25px);
}
@media only screen and (max-width: 736px) {
	.o-g1__contents {
		padding: 10px 0 40px 2.6666666667vw;
	}
}
.o-g1__table {
	border-collapse: collapse;
	width: 100%;
	margin-left: 10px;
}
@media only screen and (max-width: 736px) {
	.o-g1__table {
		margin-left: 0;
	}
}
.o-g1__th,
.o-g1__td {
	padding: 8px;
	text-align: left;
	border-bottom: 1px solid #cccccc;
}
@media only screen and (max-width: 736px) {
	.o-g1__th,
	.o-g1__td {
		font-size: 13px;
	}
}
.o-g1__tr:first-child {
	border-top: 2px solid #5fbccb;
}
.o-g1__th {
	width: 20.7253886%;
	padding: 18px 25px;
	color: #415457;
	font-weight: bold;
	line-height: 2;
	background: #cce9ee;
	vertical-align: top;
}
@media only screen and (max-width: 736px) {
	.o-g1__th {
		width: 35.7142857143%;
		padding: 15px 2.9333333333vw;
	}
}
.o-g1__td {
	line-height: 2;
	width: 79.2746114%;
	padding: 18px 25px;
	border-bottom: 1px solid #cccccc;
}
@media only screen and (max-width: 736px) {
	.o-g1__td {
		padding: 15px 2.9333333333vw;
		width: 64.2857142857%;
	}
}
.o-g1__lists {
	flex-direction: column;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 530px;
	width: 54.9222797927%;
	margin: 35px auto 0;
	gap: 15px;
}
@media only screen and (max-width: 736px) {
	.o-g1__lists {
		width: 100%;
	}
}
.o-g1__item {
	position: relative;
	padding: 10px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	border-radius: 10px;
	background: #f2f0e4;
	font-weight: bold;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g1__item {
		font-size: 16px;
	}
}
.o-g1__item::after {
	display: block;
	z-index: 1;
	height: 25px;
	width: 12px;
	content: "";
	position: absolute;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
	background: url(../img/common_temp/icn_arrow.webp) no-repeat center center/cover;
}
@media only screen and (max-width: 736px) {
	.o-g1__item::after {
		bottom: -25px;
		height: 30px;
		width: 6px;
		background: url(../img/common_temp/icn_arrow_sp.webp) no-repeat center center/cover;
	}
}
.o-g1__item:last-child::after {
	display: none;
}

.o-g2 {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g2 {
		padding: 0 8vw;
	}
}
.o-g2__top {
	display: flex;
	align-items: center;
	gap: 0 27px;
	margin: 10px 0;
}
@media only screen and (max-width: 736px) {
	.o-g2__top {
		gap: 0 15px;
	}
}
.o-g2__top--first {
	margin: 0 0 10px;
}
.o-g2__heading {
	margin-bottom: 30px;
}
@media only screen and (max-width: 736px) {
	.o-g2__heading {
		margin-bottom: 20px;
	}
}
.o-g2__title {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-weight: bold;
	font-size: 22px;
	width: calc(100% - 77px);
	flex-grow: 1;
}
@media only screen and (max-width: 736px) {
	.o-g2__title {
		font-size: 18px;
	}
}
.o-g2__icon {
	width: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g2__icon {
		width: 35px;
	}
}
.o-g2__number {
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #cdcdcd;
	border-radius: 50%;
	height: 50px;
	width: 50px;
	font-family: "Cormorant Garamond", serif;
	font-weight: bold;
	font-size: 22px;
}
@media only screen and (max-width: 736px) {
	.o-g2__number {
		font-size: 18px;
		height: 35px;
		width: 35px;
	}
}
.o-g2__wrapper {
	display: flex;
}
.o-g2__line {
	display: flex;
	justify-content: center;
	flex-shrink: 0;
	width: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g2__line {
		width: 35px;
	}
}
.o-g2__line::after {
	display: block;
	height: 100%;
	width: 1px;
	background: #cccccc;
	content: "";
}
.o-g2__line--last::after {
	display: none;
}
.o-g2__contents {
	display: flex;
	gap: 0 50px;
	justify-content: space-between;
	padding: 10px 0 10px 25px;
	width: calc(100% - 25px);
}
@media only screen and (max-width: 736px) {
	.o-g2__contents {
		gap: 5px 0;
		padding: 0 0 10px;
		flex-direction: column-reverse;
	}
}
.o-g2__text {
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-g2__text {
		font-size: 13px;
		margin-bottom: 15px;
	}
}
.o-g2__image {
	flex-shrink: 0;
	margin-bottom: 25px;
	width: 100%;
	max-width: 425px;
}
@media only screen and (max-width: 736px) {
	.o-g2__image {
		max-width: auto;
		margin-bottom: 0;
	}
}
.o-g2__image > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.o-g2__contents_adjust { /* カウンセリング施術の流れの画像だけの部分 */
	justify-content: end;
}
.o-g2__contents_mouth {
	align-items: center;
	justify-content: center;
}
@media only screen and (max-width: 736px) {
	.o-g2__image_petit {
		padding-left: 4rem;
	}
	.o-g2__contents_mouth {
		padding: 0 0 10px;
	}
}

.o-g3 {
	/* ===============================================
	# 背景色と一番左の列の固定（firstが一番左の列用）
	=============================================== */
}
@media only screen and (max-width: 736px) {
	.o-g3 {
		padding: 0 0 0 8vw;
	}
}
.o-g3__wrap {
	width: 100%;
	overflow-x: auto;
}
.o-g3__table {
	border-collapse: collapse;
	width: 1000px;
	table-layout: fixed;
	/* ===============================================
	# widthが1000px以下の時にスクロールになる
	=============================================== */
}
@media only screen and (max-width: 736px) {
	.o-g3__table {
		width: 745px;
	}
}
.o-g3__table thead th {
	position: sticky;
	top: 0;
	z-index: 1;
}
.o-g3__table thead th:first-child {
	top: 0;
	left: 0;
	z-index: 2;
	width: 200px;
}
@media only screen and (max-width: 736px) {
	.o-g3__table thead th:first-child {
		width: 26.6666666667vw;
	}
}
.o-g3__table tbody th {
	position: sticky;
	left: 0;
	width: 200px;
}
@media only screen and (max-width: 736px) {
	.o-g3__table tbody th {
		width: 26.6666666667vw;
	}
}
.o-g3__tr {
	border-bottom: 1px solid #cccccc;
}
.o-g3__tr--heading {
	border-bottom: 2px solid #5fbccb;
}
.o-g3__tr--heading th {
	font-weight: bold;
	text-align: center;
	padding: 15px 0;
}
@media only screen and (max-width: 736px) {
	.o-g3__col,
	.o-g3__col--tertiary,
	.o-g3__col--secondary,
	.o-g3__col--primary,
	.o-g3__col--first {
		font-size: 13px;
	}
}
.o-g3__col--first {
	background: #cce9ee;
}
.o-g3__col--primary {
	background: #f6fafa;
}
.o-g3__col--secondary {
	background: #fff;
}
.o-g3__col--tertiary {
	background: #f9f7ee;
}
.o-g3__th,
.o-g3__td {
	text-align: left;
	vertical-align: top;
}
@media only screen and (max-width: 736px) {
	.o-g3__th,
	.o-g3__td {
		font-size: 13px;
	}
}
.o-g3__th {
	padding: 18px 25px;
	color: #415457;
	font-weight: bold;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-g3__th {
		padding: 15px 2.9333333333vw;
	}
}
.o-g3__th--empty {
	background: #fff;
}
@media only screen and (max-width: 736px) {
	_::-webkit-full-page-media,
	_:future,
	:root .o-g3__th--empty {
		border-bottom: 2px solid #5fbccb;
	}
}

.o-g3__td {
	line-height: 2;
	padding: 18px 25px;
}
@media only screen and (max-width: 736px) {
	.o-g3__td {
		padding: 15px 2.9333333333vw;
	}
}

.o-g4 {
	width: 100%;
}
.o-g4__wrapper {
	background: #f9f7ee;
	padding: 40px 50px 50px;
}
@media only screen and (max-width: 736px) {
	.o-g4__wrapper {
		padding: 25px 0;
	}
}
.o-g4__heading {
	position: relative;
	color: #5fbccb;
	font-weight: bold;
	line-height: 2;
	padding-left: 16px;
}
@media only screen and (max-width: 736px) {
	.o-g4__heading {
		font-size: 16px;
		margin-bottom: 5px;
	}
}
.o-g4__heading::before {
	position: absolute;
	display: inline-block;
	left: 0;
	top: 13px;
	content: "";
	width: 8px;
	height: 8px;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	border-radius: 50%;
	margin-right: 8px;
}
.o-g4__text {
	width: 100%;
	line-height: 2;
	margin-bottom: 20px;
}
@media only screen and (max-width: 736px) {
	.o-g4__text {
		font-size: 13px;
		margin-bottom: 15px;
	}
}
.o-g4__image,
.o-g4__image--col1 {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
}
.o-g4__image > img,
.o-g4__image--col1 > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
@media only screen and (max-width: 736px) {
	.o-g4__image,
	.o-g4__image--col1 {
		margin-bottom: 5px;
	}
}
.o-g4__image--col1 {
	margin: 0 auto 20px;
}
@media only screen and (max-width: 736px) {
	.o-g4__image--col1 {
		margin-bottom: 20px;
	}
}
.o-g4__image--col1 > img {
	width: auto;
}
.o-g4__content {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	align-items: start;
	gap: 50px;
	margin-bottom: 25px;
}
@media only screen and (max-width: 736px) {
	.o-g4__content {
		margin-bottom: 20px;
		gap: 25px;
	}
}
@media only screen and (max-width: 736px) {
	.o-g4__content--sp-column {
		display: flex;
		flex-direction: column-reverse;
		gap: 15px;
	}
}
.o-g4__content .o-g4__text,
.o-g4__content .o-g4__image,
.o-g4__content .o-g4__image--col1 {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.o-g4__text_adjust { /* 施術調整 */
		grid-column: 2;
	}
}
.o-g4__content_grid { /* 水の森式ヒアルロン酸注入パターンと料金シミレーション画像と文字grid調整 */
	grid-template-columns: 1fr 425px;
	grid-template-rows: 18px 1fr;
	margin-bottom: 15rem;
}
.o-g4__content_grid_adjust {
	grid-template-rows: 48px 1fr;
}
@media only screen and (max-width: 736px) {
	.o-g4__content_grid {
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: 290px 1fr;
		margin-bottom: 4rem;
	}
	.item01 {
		grid-row: 2;
	}
	.item02 {
		grid-row: 1;
	}
	.item03 {
		grid-row: 3;
	}
}

.o-g5 {
	width: 100%;
}
.o-g5__wrapper {
	background: #f6fafa;
	padding: 40px 50px;
}
@media only screen and (max-width: 736px) {
	.o-g5__wrapper {
		padding: 35px 8vw;
	}
}
.o-g5__heading {
	color: #5fbccb;
	font-weight: bold;
	line-height: 2;
	margin-bottom: 10px;
}
@media only screen and (max-width: 736px) {
	.o-g5__heading {
		font-size: 16px;
		margin-bottom: 5px;
	}
}
.o-g5__heading::before {
	display: inline-block;
	content: "";
	width: 8px;
	height: 8px;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	border-radius: 50%;
	margin-right: 8px;
}
.o-g5__image,
.o-g5__image--case {
	position: relative;
	width: 100%;
	margin-bottom: 10px;
}
@media only screen and (max-width: 736px) {
	.o-g5__image,
	.o-g5__image--case {
		display: flex;
	}
}
.o-g5__image::after,
.o-g5__image--case::after {
	position: absolute;
	top: 50%;
	right: -40px;
	transform: translateY(-50%);
	display: block;
	content: "";
	background: url(../img/common_temp/icn_slide_arrow.webp) no-repeat center center/cover;
	width: 30px;
	height: 12px;
}
@media only screen and (max-width: 736px) {
	.o-g5__image::after,
	.o-g5__image--case::after {
		width: 15px;
		height: 6px;
		right: -20px;
		background: url(../img/common_temp/icn_slide_arrow_sp.webp) no-repeat center center/cover;
	}
}
.o-g5__image--case {
	margin: 0 auto 10px;
}
.o-g5__image--case::after {
	display: none;
}
.o-g5__image > img,
.o-g5__image--case > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.o-g5__head {
	font-size: 18px;
	font-weight: bold;
	line-height: 2;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g5__head {
		font-size: 12px;
	}
}
.o-g5__text {
	font-size: 14px;
	line-height: 2;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g5__text {
		font-size: 11px;
	}
}
.o-g5__swiper {
	margin-bottom: 20px;
}
.o-g5__swiper--single {
	overflow: hidden;
	position: relative;
	padding-bottom: 10px;
}
.o-g5__swiper--single .swiper-button-next,
.o-g5__swiper--single .swiper-button-prev {
	top: calc(50% - 10px);
}
.o-g5__swiper--single .swiper-pagination-bullets.swiper-pagination-horizontal {
	bottom: -6px;
}
.o-g5__swiper--single .swiper-pagination-bullet{
	background:#262626;
	opacity: .6;
}
.o-g5__swiper--single .swiper-pagination-bullet-active{
	background:#60bccb;
}
@media only screen and (max-width: 736px) {
	.o-g5__swiper {
		overflow: visible !important;
	}
}
.o-g5__swiper .swiper-wrapper {
	display: flex;
	justify-content: space-between;
}
.o-g5__swiper .swiper-wrapper .swiper-slide {
	flex-direction: column;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 266px;
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g5__swiper .swiper-wrapper .swiper-slide {
		max-width: calc(50% - 12.5px);
	}
}
.o-g5__swiper .swiper-wrapper .swiper-slide:last-child .o-g5__image::after,
.o-g5__swiper .swiper-wrapper .swiper-slide:last-child .o-g5__image--case::after {
	display: none;
}
.o-g5__swiper .swiper-wrapper > p:last-child {
	display: none;
}
.o-g5__swiper .swiper-button-next,
.o-g5__swiper .swiper-button-prev {
	display: flex;
	gap: 10px;
	top: auto;
	bottom: 0;
	width: auto;
	height: auto;
	color: #415457;
}
.o-g5__swiper .swiper-button-next > span,
.o-g5__swiper .swiper-button-prev > span {
	font-size: 16px;
	font-family: "Cormorant Garamond", serif;
}
.o-g5__swiper .swiper-button-next::after,
.o-g5__swiper .swiper-button-prev::after {
	font-size: 16px;
}
.o-g5__swiper .swiper-button-next {
	right: 0;
}
.o-g5__swiper .swiper-button-prev {
	flex-direction: row-reverse;
	right: 11%;
	left: auto;
}
@media only screen and (max-width: 736px) {
	.o-g5__swiper .swiper-button-prev {
		right: auto;
		left: 0;
	}
}
.o-g5__table {
	border-collapse: collapse;
	width: 100%;
}
.o-g5__th,
.o-g5__td {
	text-align: left;
	border-bottom: 1px solid #cccccc;
}
.o-g5__tax {
	font-size: 14px;
}
@media only screen and (max-width: 736px) {
	.o-g5__tax {
		font-size: 11px;
	}
}
.o-g5__tr:first-child {
	border-top: 2px solid #5fbccb;
}
.o-g5__th {
	width: 22.125389%;
	padding: 18px 25px;
	color: #415457;
	font-weight: bold;
	line-height: 2;
	background: #cce9ee;
	vertical-align: top;
}
@media only screen and (max-width: 736px) {
	.o-g5__th {
		padding: 15px 2.9333333333vw;
		width: 31%;
		font-size: 13px;
	}
}
.o-g5__td {
	line-height: 2;
	width: 77.874611%;
	padding: 18px 25px;
	border-bottom: 1px solid #cccccc;
}
@media only screen and (max-width: 736px) {
	.o-g5__td {
		width: 69%;
		padding: 15px 2.9333333333vw;
		font-size: 13px;
	}
}
.o-g5__button {
	max-width: 310px;
	width: 100%;
}
.o-g5__case,
.o-g5__case--oneline {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 50px;
}
.o-g5__case--oneline {
	justify-content: center;
}
.o-g5__case--oneline > .o-g5__case-inner {
	width: 100%;
}
.o-g5__case--oneline > .o-g5__case-inner > .o-g5__image--case {
	width: calc(50% - 25px);
}
@media only screen and (max-width: 736px) {
	.o-g5__case--oneline > .o-g5__case-inner > .o-g5__image--case {
		width: 100%;
	}
}
.o-g5__case-inner {
	width: calc(50% - 25px);
}
@media only screen and (max-width: 736px) {
	.o-g5__case-inner {
		width: 100%;
	}
}
@media only screen and (max-width: 736px) {
	.o-g5__case,
	.o-g5__case--oneline {
		gap: 25px;
	}
}
.o-g5__doctor {
	margin-bottom: 2rem;
	display: flex;
	align-items: center;
	gap: 1rem;
}
.o-g5__doctor-image {
	position: relative;
	overflow: hidden;
	max-width: 10rem;
	max-height: 10rem;
	border: solid 1px #e1e1e1;
	border-radius: 50%;
}
.o-g5__doctor-role {
	font-size: 1.2rem;
}
.o-g5__comment {
	padding: 2rem 1rem;
	border: solid 1px #5fbccb;
	border-radius: 3rem;
	background: #f6fafa;
	flex: 1;
}
.o-g5__comment-heading {
	display: flex;
	font-weight: bold;
	font-size: 1.6rem;
	align-items: baseline;
	gap: 0.6rem;
}
.o-g5__comment-heading::before {
	display: block;
	width: 1.4rem;
	height: 1.4rem;
	border-radius: 50%;
	background-image: -moz-linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	background-image: -webkit-linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	content: "";
	aspect-ratio: 1 / 1;
}

.o-g6 {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g6 {
		padding: 0 8vw;
	}
}
.o-g6__heading {
	margin-top: 50px;
	margin-bottom: 40px;
}
@media only screen and (max-width: 736px) {
	.o-g6__heading {
		margin-bottom: 25px;
		margin-top: 20px;
	}
}
.o-g6__text {
	font-size: 14px;
	line-height: 2;
}
.o-g6__tax {
	font-size: 14px;
}
@media only screen and (max-width: 736px) {
	.o-g6__tax {
		font-size: 11px;
	}
}
.o-g6__table {
	border-collapse: collapse;
	width: 100%;
}
.o-g6__table tbody {
	border-bottom: 1px solid #cccccc;
	vertical-align: bottom;
}
.o-g6__table tbody th {
	width: 78.2746114%;
	vertical-align: top;
}
@media only screen and (max-width: 736px) {
	.o-g6__table tbody th {
		width: 55%;
	}
}
.o-g6__table tbody td {
	width: 20.7253886%;
	text-align: right;
}
@media only screen and (max-width: 736px) {
	.o-g6__table tbody td {
		width: 45%;
	}
}
.o-g6__th,
.o-g6__td {
	padding: 18px 25px;
	text-align: left;
}
@media only screen and (max-width: 736px) {
	.o-g6__th,
	.o-g6__td {
		padding: 15px 4vw;
		font-size: 13px;
	}
}
.o-g6__tr--top .o-g6__th {
	padding: 7px 20px;
}
@media only screen and (max-width: 736px) {
	.o-g6__tr--top .o-g6__th {
		padding: 7px 4vw;
	}
}
.o-g6__tr--secondary {
	background: #f6fafa;
}
.o-g6__tr:first-child {
	border-top: 2px solid #5fbccb;
}
.o-g6__th {
	color: #415457;
	font-weight: bold;
	line-height: 2;
	background: #cce9ee;
	vertical-align: top;
}
@media only screen and (max-width: 736px) {
	.o-g6__th {
		font-size: 13px;
	}
}
.o-g6__td {
	line-height: 2;
}
.o-g6__td.u-pt0 {
	color: #668084;
}
.o-g6__td--pl {
	padding-left: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g6__td--pl {
		padding-left: 6.66666667vw;
	}
}

.o-g7 {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g7 {
		padding: 0 8vw;
	}
}
.o-g7__heading {
	margin-bottom: 35px;
}
@media only screen and (max-width: 736px) {
	.o-g7__heading {
		margin-bottom: 25px;
	}
}
.o-g7__sub-heading {
	margin-bottom: 25px;
}
@media only screen and (max-width: 736px) {
	.o-g7__sub-heading {
		margin-bottom: 25px;
	}
}
.o-g7__text {
	font-size: 14px;
	line-height: 2;
}
.o-g7__tax {
	font-size: 14px;
}
@media only screen and (max-width: 736px) {
	.o-g7__tax {
		font-size: 11px;
	}
}
.o-g7__table {
	border-collapse: collapse;
	width: 100%;
	margin-bottom: 35px;
}
.o-g7__table tbody {
	border-bottom: 1px solid #cccccc;
	vertical-align: bottom;
}
.o-g7__table tbody th {
	width: 79.2746114%;
}
@media only screen and (max-width: 736px) {
	.o-g7__table tbody th {
		width: 69%;
	}
}
.o-g7__table tbody td {
	width: 20.7253886%;
	text-align: right;
}
@media only screen and (max-width: 736px) {
	.o-g7__table tbody td {
		width: 31%;
	}
}
.o-g7__th,
.o-g7__td {
	padding: 20px;
	text-align: left;
}
@media only screen and (max-width: 736px) {
	.o-g7__th,
	.o-g7__td {
		padding: 15px 4vw;
		font-size: 13px;
	}
}
.o-g7__tr--top .o-g7__th {
	padding: 7px 20px;
}
@media only screen and (max-width: 736px) {
	.o-g7__tr--top .o-g7__th {
		padding: 7px 4vw;
	}
}
.o-g7__tr--secondary {
	background: #f6fafa;
}
.o-g7__tr:first-child {
	border-top: 2px solid #5fbccb;
}
.o-g7__th {
	color: #415457;
	font-weight: bold;
	line-height: 2;
	background: #cce9ee;
	vertical-align: top;
}
@media only screen and (max-width: 736px) {
	.o-g7__th {
		font-size: 13px;
	}
}
.o-g7__td {
	line-height: 2;
}
.o-g7__td--secondary {
	color: #668084;
}
.o-g7__td--pl {
	padding-left: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g7__td--pl {
		padding-left: 6.66666667vw;
	}
}

.o-g8 {
	width: 100%;
}
.o-g8__wrapper {
	background: #f9f7ee;
	padding: 40px 50px;
}
@media only screen and (max-width: 736px) {
	.o-g8__wrapper {
		padding: 35px 8vw;
	}
}
.o-g8__heading {
	width: 100%;
	text-align: center;
	margin-bottom: 35px;
}
@media only screen and (max-width: 736px) {
	.o-g8__heading {
		margin-bottom: 20px;
	}
}
.o-g8__heading > span {
	font-size: 22px;
	line-height: 1.8;
	font-weight: bold;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	padding-bottom: 8px;
	border-bottom: 2px solid #5fbccb;
	display: inline-block;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g8__heading > span {
		font-size: 18px;
	}
}
.o-g8__op-heading {
	margin-bottom: 15px;
}
@media only screen and (max-width: 736px) {
	.o-g8__op-heading {
		margin-bottom: 10px;
	}
}
.o-g8__sub-heading {
	font-weight: bold;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-g8__sub-heading {
		font-size: 13px;
	}
}
.o-g8__sub-heading::before {
	display: inline-block;
	content: "";
	width: 8px;
	height: 8px;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	border-radius: 50%;
	margin-right: 8px;
}
.o-g8__box {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
@media only screen and (max-width: 736px) {
	.o-g8__box {
		align-items: flex-start;
		flex-direction: column;
	}
}
@media only screen and (max-width: 736px) {
	.o-g8__price {
		margin-left: auto;
		font-size: 13px;
	}
}
.o-g8__price > span {
	color: #668084;
}
.o-g8__lists {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 5px;
	margin-bottom: 30px;
}
@media only screen and (max-width: 736px) {
	.o-g8__lists {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 1px;
	}
	.o-g8__lists::after {
		content: "";
		display: block;
		width: calc((100% - 2px) / 3);
	}
}
.o-g8__item {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
}
@media only screen and (max-width: 736px) {
	.o-g8__item {
		width: calc((100% - 2px) / 3);
	}
}
.o-g8__item > span {
	display: block;
	width: 100%;
	text-align: center;
	padding: 10px;
	font-size: 14px;
}
@media only screen and (max-width: 736px) {
	.o-g8__item > span {
		font-size: 13px;
	}
}
.o-g8__content {
	background: #fff;
	padding: 15px 25px;
	border-radius: 10px;
}
@media only screen and (max-width: 736px) {
	.o-g8__content {
		padding: 15px 8vw;
	}
}
.o-g8__text {
	font-size: 14px;
	color: #668084;
	width: 100%;
	line-height: 2;
	margin-bottom: 10px;
	padding-left: 15px;
}
@media only screen and (max-width: 736px) {
	.o-g8__text {
		padding: 0 4vw;
		font-size: 11px;
		margin-bottom: 15px;
	}
}
.o-g8__content-skinitem {
	width: 100%;
}
.o-g8__text-skinitem {
	padding-left: 0;
}
@media only screen and (max-width: 736px) {
	.o-g8__content-skinitem {
		padding: 15px 0 0;
		width: 80%;
	}
	.o-g8__text-skinitem {
		padding-left: 15px;
	}
}
/* grid4つの時 */
.o-g8__lists_4 {
	grid-template-columns: repeat(4, 1fr);
}
@media only screen and (max-width: 736px) {
	.o-g8__item_2 {
		width: calc((100% - 2px) / 2);
	}
}

.o-g9 {
	width: 100%;
}
.o-g9__wrapper {
	background: rgb(223, 242, 245);
	background: linear-gradient(35deg, rgb(223, 242, 245) 0%, rgb(236, 246, 244) 50%, rgb(249, 251, 243) 100%);
	padding: 40px 50px 50px;
}
@media only screen and (max-width: 736px) {
	.o-g9__wrapper {
		padding: 25px 0;
	}
}
.o-g9__heading {
	font-size: 22px;
	line-height: 1.75;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-weight: bold;
	margin-bottom: 20px;
}
@media only screen and (max-width: 736px) {
	.o-g9__heading {
		font-size: 18px;
		margin-bottom: 10px;
	}
}
.o-g9__icon {
	display: inline-block;
	width: 20px;
	margin-right: 15px;
}
.o-g9__sub-heading {
	color: #5fbccb;
	font-weight: bold;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-g9__sub-heading {
		font-size: 16px;
		margin-bottom: 10px;
	}
}
.o-g9__sub-heading::before {
	display: inline-block;
	content: "";
	width: 8px;
	height: 8px;
	background: rgb(246, 204, 217);
	background: linear-gradient(230deg, rgb(246, 204, 217) 0%, rgb(244, 120, 160) 100%);
	border-radius: 50%;
	margin-right: 8px;
}
.o-g9__image,
.o-g9__image--col1 {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 25px;
}
.o-g9__image > img,
.o-g9__image--col1 > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
@media only screen and (max-width: 736px) {
	.o-g9__image--col1 {
		margin-bottom: 20px;
	}
}
.o-g9__image--col1 > img {
	width: auto;
}
.o-g9__content {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 50px;
	margin-bottom: 25px;
	align-items: flex-start;
}
@media only screen and (max-width: 736px) {
	.o-g9__content {
		margin-bottom: 20px;
		gap: 25px;
	}
}
@media only screen and (max-width: 736px) {
	.o-g9__content--sp-column {
		display: flex;
		flex-direction: column-reverse;
		gap: 15px;
	}
}
.o-g9__content .o-g9__image,
.o-g9__content .o-g9__image--col1 {
	margin-bottom: 0;
}
.o-g9__text {
	width: 100%;
	line-height: 2;
	margin-bottom: 20px;
	text-align: left;
}
@media only screen and (max-width: 736px) {
	.o-g9__text {
		font-size: 13px;
	}
}

.o-g10and13 {
	width: 100%;
}
.o-g10and13__wrapper {
	position: relative;
	padding: 70px 50px 50px;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__wrapper {
		padding: 70px 8vw 50px;
	}
}
.o-g10and13__wrapper::after {
	z-index: 0;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(150, 208, 199) 50%, rgb(226, 236, 193) 100%);
}
.o-g10and13__inner {
	position: relative;
	z-index: 1;
}
.o-g10and13__heading {
	margin-bottom: 40px;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__heading {
		margin-bottom: 30px;
	}
}
.o-g10and13__heading > .o-heading__t2-wrap {
	color: #415457;
}
.o-g10and13__heading > .o-heading__t2-wrap::after {
	border-right: 2px solid #415457;
	border-left: 2px solid #415457;
}
.o-g10and13__icon {
	margin-right: 15px;
}
.o-g10and13__sub {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	color: #5fbccb;
	font-weight: bold;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__sub {
		font-size: 13px;
	}
}
.o-g10and13__sub-heading {
	text-align: center;
	padding-bottom: 5px;
	margin-bottom: 35px;
	font-size: 24px;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__sub-heading {
		font-size: 18px;
		margin-bottom: 25px;
	}
}
.o-g10and13__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: #fff;
	padding: 50px;
	border-radius: 10px;
	box-shadow: 0px 5px 35px 0px rgba(71, 163, 178, 0.15);
	margin-bottom: 25px;
}
.o-g13__content {
	position: relative;
	z-index: 1;
	background: #fff;
	padding: 50px;
	border-radius: 10px;
	box-shadow: 0px 5px 35px 0px rgba(71, 163, 178, 0.15);
	margin-bottom: 25px;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__content {
		padding: 35px 6.1333333333vw;
	}
	.o-g13__content {
		padding: 35px 6.1333333333vw;
	}
}
.o-g10and13__point {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 15px 25px;
	padding: 25px 50px;
	width: calc(100% + 100px);
	background: #f6fafa;
	margin-bottom: 35px;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__point {
		width: calc(100% + 12.2666666666vw);
		gap: 0;
		padding: 25px 9.3333333333vw;
		margin-bottom: 25px;
		justify-content: center;
	}
}
.o-g10and13__point-category {
	color: #fff;
	max-width: 130px;
	width: 100%;
	height: 100%;
	flex-shrink: 0;
	background: #5fbccb;
	border-radius: 50px;
	text-align: center;
	font-size: 14px;
	padding: 3px 15px;
	line-height: 1.5;
	font-weight: bold;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__point-category {
		max-width: -webkit-fit-content;
		max-width: -moz-fit-content;
		max-width: fit-content;
		font-size: 11px;
		margin-bottom: 5px;
	}
}
.o-g10and13__point-text {
	width: calc(100% - 155px);
	flex-grow: 1;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__point-text {
		font-size: 16px;
		margin-bottom: 15px;
		width: 100%;
	}
}
.o-g10and13__box {
	display: grid;
	align-items: start;
	grid-template-columns: repeat(2, 1fr);
	gap: 50px;
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__box {
		display: flex;
		flex-direction: column-reverse;
		gap: 10px;
	}
}
.o-g10and13__title {
	font-weight: bold;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__title {
		font-size: 13px;
	}
}
.o-g10and13__text {
	width: 100%;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-g10and13__text {
		font-size: 13px;
	}
}
.o-g10and13__image {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.o-g10and13__image > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.o-g10and13__map {
	width: 100%;
	height: 100%;
}
.o-g10and13__map > iframe {
	width: 100%;
	height: 100%;
}

.o-g11 {
	width: 100%;
}
.o-g11__wrapper {
	background: #f9f7ee;
	padding: 40px 50px;
}
@media only screen and (max-width: 736px) {
	.o-g11__wrapper {
		padding: 30px 8vw;
	}
}
.o-g11__heading {
	width: 100%;
	text-align: center;
	margin-bottom: 30px;
}
@media only screen and (max-width: 736px) {
	.o-g11__heading {
		margin-bottom: 25px;
	}
}
.o-g11__heading > span {
	font-size: 22px;
	line-height: 1.8;
	font-weight: bold;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	padding-bottom: 5px;
	border-bottom: 2px solid #5fbccb;
	display: inline-block;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g11__heading > span {
		font-size: 18px;
	}
}
.o-g11__op-heading {
	margin-bottom: 15px;
}
@media only screen and (max-width: 736px) {
	.o-g11__op-heading {
		margin-bottom: 10px;
	}
}
.o-g11__thumbnails {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin-bottom: 5px;
}
@media only screen and (max-width: 736px) {
	.o-g11__thumbnails {
		gap: 5px;
	}
}
.o-g11__thumbnails-parallel {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}
.o-g11__thumbnails-parallel .o-g11__image,
.o-g11__thumbnails-parallel .o-g11__image--col1 {
	display: block;
}
@media only screen and (max-width: 736px) {
	.o-g11__thumbnails-parallel {
		gap: 5px;
	}
}
.o-g11__thumbnails-text {
	font-size: 14px;
	line-height: 2;
	text-align: center;
	margin-bottom: 35px;
}
@media only screen and (max-width: 736px) {
	.o-g11__thumbnails-text {
		font-size: 11px;
	}
}
.o-g11__lists {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 5px;
	margin-bottom: 35px;
}
@media only screen and (max-width: 736px) {
	.o-g11__lists {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 1px;
	}
	.o-g11__lists::after {
		content: "";
		display: block;
		width: calc((100% - 2px) / 3);
	}
}
.o-g11__item {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
}
@media only screen and (max-width: 736px) {
	.o-g11__item {
		width: calc((100% - 2px) / 3);
	}
}
.o-g11__item > span {
	display: block;
	width: 100%;
	text-align: center;
	padding: 10px;
	font-size: 14px;
}
@media only screen and (max-width: 736px) {
	.o-g11__item > span {
		font-size: 13px;
	}
}
.o-g11__text {
	font-size: 14px;
	color: #668084;
	width: 100%;
	line-height: 2;
}
.o-g11__point {
	display: flex;
	justify-content: space-between;
	gap: 25px;
	width: 100%;
	margin-bottom: 25px;
}
@media only screen and (max-width: 736px) {
	.o-g11__point {
		margin-bottom: 0;
		flex-direction: column;
		gap: 0;
	}
}
.o-g11__point-category {
	color: #5fbccb;
	min-width: 130px;
	max-width: -webkit-fit-content;
	max-width: -moz-fit-content;
	max-width: fit-content;
	width: 100%;
	height: 100%;
	flex-shrink: 0;
	background: #fff;
	border-radius: 50px;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	padding: 3px 15px;
	line-height: 1.5;
}
@media only screen and (max-width: 736px) {
	.o-g11__point-category {
		max-width: -webkit-fit-content;
		max-width: -moz-fit-content;
		max-width: fit-content;
		min-width: 130px;
		font-size: 16px;
		margin-bottom: 5px;
	}
}
.o-g11__point-text {
	width: calc(100% - 155px);
	flex-grow: 1;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-g11__point-text {
		width: 100%;
		font-size: 13px;
		margin-bottom: 15px;
	}
}
.o-g11__image,
.o-g11__image--col1 {
	width: 100%;
}
.o-g11__image > img,
.o-g11__image--col1 > img {
	-o-object-fit: cover;
	object-fit: cover;
	width: 100%;
}
.o-g11__image--col1 {
	display: flex;
	justify-content: center;
}
.o-g11__image--col1 > img {
	width: auto;
}

.o-g12 {
	width: 100%;
	padding: 50px 0;
}
@media only screen and (max-width: 736px) {
	.o-g12 {
		padding: 65px 8vw 0;
	}
}
.o-g12__wrapper {
	display: flex;
	justify-content: center;
	gap: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g12__wrapper {
		flex-direction: column;
		gap: 20px;
	}
}
.o-g12__heading {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 100%;
	height: 68px;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g12__heading {
		height: 47px;
	}
}
.o-g12__heading::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-family: "Cormorant Garamond", serif;
	font-size: 80px;
	color: #fff;
}
@media only screen and (max-width: 736px) {
	.o-g12__heading::after {
		font-size: 60px;
	}
}
.o-g12__heading--pros {
	background: rgb(253, 228, 236);
	background: linear-gradient(0deg, rgb(253, 228, 236) 0%, rgb(253, 245, 247) 100%);
}
.o-g12__heading--pros::after {
	content: "PROS";
}
.o-g12__heading--cons {
	background: rgb(219, 219, 219);
	background: linear-gradient(0deg, rgb(219, 219, 219) 0%, rgb(243, 243, 243) 100%);
}
.o-g12__heading--cons::after {
	content: "CONS";
}
.o-g12__title {
	position: relative;
	z-index: 1;
	color: #415457;
	font-size: 22px;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-weight: bold;
}
@media only screen and (max-width: 736px) {
	.o-g12__title {
		font-size: 18px;
	}
}
.o-g12__lists {
	padding: 25px;
	height: calc(100% - 66px);
}
@media only screen and (max-width: 736px) {
	.o-g12__lists {
		padding: 25px 6.1333333333vw;
		height: calc(100% - 47px);
	}
}
.o-g12__lists--pros {
	border: 2px solid #fde4ec;
}
.o-g12__lists--cons {
	border: 2px solid #dbdbdb;
}
.o-g12__item {
	position: relative;
	padding-left: 16px;
}
@media only screen and (max-width: 736px) {
	.o-g12__item {
		font-size: 13px;
		margin-bottom: 5px;
	}
}
.o-g12__item::before {
	position: absolute;
	display: inline-block;
	flex-shrink: 0;
	width: 8px;
	height: 8px;
	left: 0;
	top: 0;
	border-radius: 50%;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	content: "";
	margin-top: 11px;
}

.o-g14 {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g14 {
		padding: 0 8vw;
	}
}
.o-g14__box {
	padding: 30px 50px;
	border: 1px solid #cccccc;
	border-radius: 10px;
}
@media only screen and (max-width: 736px) {
	.o-g14__box {
		padding: 20px 6.1333333333vw;
	}
}
.o-g14__point {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 25px;
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g14__point {
		flex-direction: column;
		gap: 15px;
	}
}
.o-g14__point-category {
	height: 100%;
	color: #fff;
	width: 13%;
	flex-shrink: 0;
	background: #5fbccb;
	border-radius: 50px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	padding: 3px 15px;
	line-height: 1.5;
}
@media only screen and (max-width: 736px) {
	.o-g14__point-category {
		min-width: 113px;
	}
}
.o-g14__point-text {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	width: calc(87% - 25px);
	flex-grow: 1;
}
@media only screen and (max-width: 736px) {
	.o-g14__point-text {
		font-size: 13px;
		width: 100%;
		margin-bottom: 0;
	}
}
.o-g14__text {
	display: flex;
	width: 100%;
	line-height: 2;
}
.o-g14__text::before {
	flex-shrink: 0;
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-top: 12px;
	margin-right: 8px;
	border-radius: 50%;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	content: "";
	aspect-ratio: 1 / 1;
}

.o-g15 {
	width: 100%;
}
.o-g15__wrapper {
	position: relative;
	padding: 40px 50px 50px;
}
@media only screen and (max-width: 736px) {
	.o-g15__wrapper {
		padding: 40px 8vw 50px;
	}
}
.o-g15__wrapper::after {
	z-index: 0;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background: rgb(204, 204, 204);
	background: linear-gradient(35deg, rgba(204, 204, 204, 0.5) 0%, rgba(238, 238, 238, 0.5) 100%);
}
.o-g15__inner {
	position: relative;
	z-index: 1;
}
.o-g15__heading {
	margin: 30px 0;
}
.o-g15__heading > .o-heading__t2-wrap {
	color: #415457;
}
.o-g15__heading > .o-heading__t2-wrap::after {
	border-right: 2px solid #415457;
	border-left: 2px solid #415457;
}
.o-g15__icon {
	margin-right: 15px;
}
.o-g15__sub {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	color: #5fbccb;
	font-weight: bold;
}
.o-g15__sub-heading {
	padding-bottom: 5px;
}
.o-g15__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: #fff;
	padding: 40px 50px;
	border-radius: 10px;
	box-shadow: 0px 5px 35px 0px rgba(65, 84, 87, 0.15);
	margin-top: 25px;
}
@media only screen and (max-width: 736px) {
	.o-g15__content {
		padding: 30px 6.1333333333vw;
	}
}
.o-g15__content-heading {
	margin-bottom: 20px;
}
@media only screen and (max-width: 736px) {
	.o-g15__content-heading {
		margin-bottom: 10px;
	}
}
.o-g15__point {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 25px;
	padding: 25px 50px;
	width: calc(100% + 100px);
	background: #f6fafa;
}
.o-g15__point-category {
	color: #fff;
	max-width: 130px;
	width: 100%;
	height: 100%;
	flex-shrink: 0;
	background: #5fbccb;
	border-radius: 50px;
	text-align: center;
	font-size: 14px;
	padding: 3px 15px;
	line-height: 1.5;
}
.o-g15__point-text {
	width: calc(100% - 155px);
	flex-grow: 1;
}
.o-g15__box {
	display: grid;
	align-items: start;
	grid-template-columns: repeat(2, 1fr);
	gap: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g15__box {
		display: flex;
		flex-direction: column;
		gap: 25px;
	}
}
.o-g15__lead {
	padding: 0 50px;
	width: 100%;
	line-height: 2;
	margin-bottom: 45px;
}
@media only screen and (max-width: 736px) {
	.o-g15__lead {
		font-size: 13px;
		padding: 0;
		margin-bottom: 20px;
	}
}
.o-g15__text {
	width: 100%;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-g15__text {
		font-size: 13px;
	}
}
@media only screen and (max-width: 736px) {
	.o-g15__aside {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 25px;
	}
}
.o-g15__aside-supplement {
	font-size: 14px;
	line-height: 2;
	text-align: center;
	margin-bottom: 25px;
}
@media only screen and (max-width: 736px) {
	.o-g15__aside-supplement {
		font-size: 11px;
		margin-bottom: 0;
	}
}
.o-g15__image {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 5px;
}
.o-g15__image > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.o-g16 {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g16 {
		padding: 0 8vw;
	}
}
.o-g16__content {
	padding: 25px 0;
}
@media only screen and (max-width: 736px) {
	.o-g16__content {
		padding: 20px 0;
	}
}
.o-g16__point {
	display: flex;
	justify-content: space-between;
	gap: 25px;
	margin-bottom: 20px;
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g16__point {
		flex-direction: column;
		gap: 10px;
		margin-bottom: 25px;
	}
}
.o-g16__point-category {
	color: #fff;
	min-width: 148px;
	max-width: -webkit-fit-content;
	max-width: -moz-fit-content;
	max-width: fit-content;
	width: 100%;
	height: 100%;
	flex-shrink: 0;
	background: #5fbccb;
	border-radius: 50px;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	padding: 3px 15px;
	line-height: 1.5;
}
.o-g16__point-category--gray {
	background: #a5a5a5;
}
.o-g16__point-text {
	width: auto;
	flex-grow: 1;
}
@media only screen and (max-width: 736px) {
	.o-g16__point-text {
		font-size: 13px;
		width: 100%;
	}
}

.o-g17 {
	width: 100%;
}
.o-g17__wrapper {
	position: relative;
	padding: 40px 50px 50px;
}
@media only screen and (max-width: 736px) {
	.o-g17__wrapper {
		padding: 35px 8vw 50px;
	}
}
.o-g17__wrapper::after {
	z-index: 0;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(150, 208, 199) 50%, rgb(226, 236, 193) 100%);
}
@media only screen and (max-width: 736px) {
	.o-g17__wrapper::after {
		height: 100%;
	}
}
.o-g17__inner {
	position: relative;
	z-index: 1;
}
.o-g17__heading {
	margin-top: 30px;
	margin-bottom: 40px;
}
@media only screen and (max-width: 736px) {
	.o-g17__heading {
		margin-bottom: 25px;
	}
}
.o-g17__heading > .o-heading__t2-wrap {
	color: #415457;
}
.o-g17__heading > .o-heading__t2-wrap::after {
	border-right: 2px solid #415457;
	border-left: 2px solid #415457;
}
.o-g17__icon {
	margin-right: 15px;
}
.o-g17__sub {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	color: #5fbccb;
	font-weight: bold;
}
.o-g17__sub-heading {
	padding-bottom: 5px;
}
.o-g17__lists {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	gap: 35px 15px;
}
@media only screen and (max-width: 736px) {
	.o-g17__lists {
		gap: 25px;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		align-items: center;
	}
}
.o-g17__item {
	display: flex;
	flex-direction: column;
	width: calc((100% - 45px) / 4);
	border-radius: 10px;
	background: #fff;
	box-shadow: 0px 5px 35px 0px rgba(71, 163, 178, 0.15);
}
@media only screen and (max-width: 736px) {
	.o-g17__item {
		width: 100%;
	}
}
.o-g17__thumbnail {
	width: 100%;
	height: 100%;
	aspect-ratio: 1;
	border-radius: 10px 10px 0 0;
	overflow: hidden;
}
.o-g17__thumbnail > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: 10px 10px 0 0;
}
.o-g17__box {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 20px 15px 15px;
	height: 100%;
}
@media only screen and (max-width: 736px) {
	.o-g17__box {
		padding: 15px 2.66666667vw;
	}
}
.o-g17__text {
	margin-bottom: 25px;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g17__text {
		margin-bottom: 15px;
	}
}
.o-g17__clinic {
	font-size: 14px;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g17__clinic {
		font-size: 11px;
	}
}
.o-g17__name {
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g17__name {
		font-size: 13px;
	}
}
.o-g17__buttons {
	display: flex;
	gap: 10px;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: center;
}
.o-g17__link,
.o-g17__link--movie {
	position: relative;
	display: block;
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	padding: 5px 15px;
	border-radius: 50px;
	border: 1px solid #ccc;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
}
@media only screen and (max-width: 736px) {
	.o-g17__link,
	.o-g17__link--movie {
		font-size: 13px;
	}
}
.o-g17__link::after,
.o-g17__link--movie::after {
	position: absolute;
	top: 50%;
	right: 15px;
	width: 6px;
	height: 6px;
	transform: translateY(-50%) rotate(45deg);
	border-top: solid 1px #627274;
	border-right: solid 1px #627274;
	content: "";
}
@media only screen and (max-width: 736px) {
	.o-g17__link::after,
	.o-g17__link--movie::after {
		right: 2.6666666667vw;
	}
}
.o-g17__link--movie {
	border: none;
	color: #fff;
	background: #415457;
}
.o-g17__link--movie:hover,
.o-g17__link--movie:focus {
	color: #fff;
}
.o-g17__link--movie::after {
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
}

.o-g18 {
	width: 100%;
}
.o-g18__wrapper {
	position: relative;
}
@media only screen and (max-width: 736px) {
	.o-g18__wrapper {
		background: #f6fafa;
		padding: 0 8vw;
	}
}
.o-g18__wrapper::after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: "";
	background: #f6fafa;
	width: 90%;
	height: 100%;
	border-radius: 10px;
}
@media only screen and (max-width: 736px) {
	.o-g18__wrapper::after {
		display: none;
	}
}
.o-g18__inner {
	position: relative;
	display: flex;
	justify-content: space-between;
	gap: 50px;
	z-index: 1;
	padding: 40px 0;
}
@media only screen and (max-width: 736px) {
	.o-g18__inner {
		gap: 25px 0;
		flex-direction: column-reverse;
		padding: 0;
		margin-top: -30px;
		position: relative;
		top: -35px;
	}
}
.o-g18__heading {
	margin-bottom: 15px;
}
@media only screen and (max-width: 736px) {
	.o-g18__heading {
		margin-bottom: 10px;
	}
}
.o-g18__content {
	max-width: 460px;
	width: 100%;
	padding-left: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g18__content {
		padding-left: 0;
	}
}
.o-g18__text {
	line-height: 2;
	color: #668084;
}
@media only screen and (max-width: 736px) {
	.o-g18__text {
		font-size: 13px;
	}
}
.o-g18__image {
	position: relative;
	display: flex;
	width: 100%;
	max-width: 475px;
	border-radius: 10px;
	top: -80px;
}
@media only screen and (max-width: 736px) {
	.o-g18__image {
		top: auto;
	}
}
.o-g18__image > img {
	box-shadow: 0px 5px 35px 0px rgba(71, 163, 178, 0.15);
	border-radius: 10px;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.o-g19 {
	width: 100%;
}
.o-g19__wrapper {
	position: relative;
}
@media only screen and (max-width: 736px) {
	.o-g19__wrapper {
		background: rgb(95, 188, 203);
		background: linear-gradient(35deg, rgba(95, 188, 203, 0.2) 0%, rgba(161, 212, 198, 0.2) 60%, rgba(226, 236, 193, 0.2) 100%);
		padding: 0 8vw;
	}
}
.o-g19__wrapper::after {
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	content: "";
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgba(95, 188, 203, 0.2) 0%, rgba(161, 212, 198, 0.2) 60%, rgba(226, 236, 193, 0.2) 100%);
	width: 90%;
	height: 100%;
	border-radius: 10px;
}
@media only screen and (max-width: 736px) {
	.o-g19__wrapper::after {
		display: none;
	}
}
.o-g19__inner {
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	gap: 50px;
	z-index: 1;
	padding: 30px 0;
}
@media only screen and (max-width: 736px) {
	.o-g19__inner {
		gap: 25px 0;
		flex-direction: column-reverse;
		padding: 0;
		margin-top: -30px;
		position: relative;
		top: -35px;
	}
}
.o-g19__heading {
	color: #4480cc;
	margin-bottom: 15px;
}
@media only screen and (max-width: 736px) {
	.o-g19__heading {
		margin-bottom: 10px;
	}
}
.o-g19__content {
	max-width: 475px;
	width: 100%;
	padding-right: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g19__content {
		padding-right: 0;
	}
}
.o-g19__text {
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-g19__text {
		font-size: 13px;
	}
}
.o-g19__image {
	position: relative;
	display: flex;
	width: 100%;
	border-radius: 10px;
	top: -100px;
}
@media only screen and (max-width: 736px) {
	.o-g19__image {
		top: auto;
	}
}
.o-g19__image > img {
	border-radius: 10px;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	box-shadow: 0px 5px 35px 0px rgba(71, 163, 178, 0.15);
}

.o-g20 {
	width: 100%;
}
.o-g20__wrapper {
	position: relative;
	padding: 40px 50px;
}
@media only screen and (max-width: 736px) {
	.o-g20__wrapper {
		padding: 40px 8vw;
	}
}
.o-g20__wrapper::after {
	z-index: 0;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(150, 208, 199) 50%, rgb(226, 236, 193) 100%);
}
.o-g20__inner {
	position: relative;
	z-index: 1;
}
.o-g20__heading {
	margin-top: 30px;
	margin-bottom: 40px;
}
@media only screen and (max-width: 736px) {
	.o-g20__heading {
		margin-bottom: 30px;
	}
}
.o-g20__heading > .o-heading__t2-wrap {
	color: #415457;
}
.o-g20__heading > .o-heading__t2-wrap::after {
	border-right: 2px solid #415457;
	border-left: 2px solid #415457;
}
.o-g20__icon {
	margin-right: 15px;
}
.o-g20__sub {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	color: #5fbccb;
	font-weight: bold;
}
.o-g20__sub-heading {
	padding-bottom: 5px;
}
.o-g20__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: #fff;
	padding: 50px;
	border-radius: 10px;
	box-shadow: 0px 5px 35px 0px rgba(71, 163, 178, 0.15);
}
@media only screen and (max-width: 736px) {
	.o-g20__content {
		padding: 25px 6.66666667vw;
	}
}
.o-g20__box {
	display: grid;
	align-items: start;
	grid-template-columns: repeat(2, 1fr);
	gap: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g20__box {
		display: flex;
		gap: 10px;
		flex-direction: column-reverse;
		justify-content: center;
	}
}
.o-g20__text {
	width: 100%;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-g20__text {
		font-size: 13px;
	}
}
.o-g20__image {
	position: relative;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 10px;
}
.o-g20__image > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.o-g20__icon {
	position: absolute;
	bottom: -15px;
	left: -14px;
	width: 50px;
}
@media only screen and (max-width: 736px) {
	.o-g20__icon {
		left: -4vw;
		bottom: -4.6666666667vw;
		width: 10.6666666667vw;
	}
}
.o-g20__aside-supplement {
	font-size: 14px;
	line-height: 2;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-g20__aside-supplement {
		font-size: 11px;
	}
}

.o-l1 {
	width: 100%;
}
.o-l1__wrapper {
	width: 100%;
	padding: 40px 0;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
}
@media only screen and (max-width: 736px) {
	.o-l1__wrapper {
		padding: 40px 8vw;
	}
}
.o-l1__title {
	display: flex;
	flex-direction: column;
	align-items: center;
	color: #fff;
}
.o-l1__en {
	font-family: "EB Garamond", serif;
}
@media only screen and (max-width: 736px) {
	.o-l1__en {
		font-size: 13px;
		margin-bottom: 5px;
	}
}
.o-l1__ja {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-size: 28px;
	font-weight: 500;
	line-height: 1.5;
	padding-bottom: 10px;
	border-bottom: 2px solid #fff;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-l1__ja {
		font-size: 20px;
		padding-bottom: 10px;
	}
}
.o-l1__text {
	font-weight: bold;
	line-height: 2;
	text-align: center;
	color: #fff;
	margin-top: 25px;
}
@media only screen and (max-width: 736px) {
	.o-l1__text {
		font-size: 13px;
		margin-top: 15px;
	}
}
.o-l1__button-area {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 30px;
}
.o-l1__button,
.o-l1__button--reverse {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	position: relative;
	display: block;
	padding: 10px 0;
	font-weight: bold;
	background: #fff;
	max-width: 348px;
	width: 100%;
	text-align: center;
	border-radius: 50px;
	box-shadow: 0 0 0 1px #5fbccb, 0 0 0 2px #fff;
}
.o-l1__button--reverse, 
.o-l1__button--reverse:hover {
  background: #06c755;
  color: #fff;
}
@media only screen and (max-width: 736px) {
	.o-l1__button,
	.o-l1__button--reverse {
		font-size: 16px;
	}
}
.o-l1__button::after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	content: "";
}
.o-l1__button--reverse::before {
	position: absolute;
	top: 26%;
	width: 26px;
	height: 26px;
	background: url(../img/common_renew/icn_line-inner.svg) no-repeat center center/cover;
	left: 8.2857142858%;
	display: block;
	content: "";
}

.o-l2 {
	width: 100%;
}
.o-l2__wrapper {
	width: 100%;
	padding: 40px 0;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
}
@media only screen and (max-width: 736px) {
	.o-l2__wrapper {
		padding: 40px 8vw;
	}
}
.o-l2__title {
	display: flex;
	flex-direction: column;
	align-items: center;
	color: #fff;
	margin-bottom: 35px;
}
@media only screen and (max-width: 736px) {
	.o-l2__title {
		margin-bottom: 25px;
	}
}
.o-l2__en {
	font-family: "EB Garamond", serif;
}
@media only screen and (max-width: 736px) {
	.o-l2__en {
		font-size: 13px;
		margin-bottom: 5px;
	}
}
.o-l2__ja {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-size: 28px;
	font-weight: 500;
	line-height: 1.5;
	padding-bottom: 10px;
	border-bottom: 2px solid #fff;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	.o-l2__ja {
		font-size: 20px;
		padding-bottom: 10px;
	}
}
.o-l2__text {
	font-size: 13px;
	font-weight: bold;
	line-height: 2;
	text-align: center;
	color: #fff;
	margin-top: 25px;
}
@media only screen and (max-width: 736px) {
	.o-l2__text {
		margin-top: 15px;
	}
}
.o-l2__button-area {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 15px;
}
.o-l2__button,
.o-l2__button--line,
.o-l2__button--reverse {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	position: relative;
	display: block;
	padding: 10px 0;
	font-weight: bold;
	background: #fff;
	max-width: 348px;
	width: 100%;
	text-align: center;
	border-radius: 50px;
	box-shadow: 0 0 0 1px #5fbccb, 0 0 0 2px #fff;
}
@media only screen and (max-width: 736px) {
	.o-l2__button,
	.o-l2__button--line,
	.o-l2__button--reverse {
		font-size: 16px;
	}
}
.o-l2__button::after,
.o-l2__button--line::after,
.o-l2__button--reverse::after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	content: "";
}
.o-l2__button--reverse::after {
	width: 20px;
	height: 20px;
	background: url(../img/common_temp/icn_airplane.webp) no-repeat center center/cover;
	right: 5.1428571429%;
}
.o-l2__button--line {
	background: #06c755;
	color: #fff;
}
.o-l2__button--line::after {
	width: 25px;
	height: 24px;
	background: url(../img/common_temp/icn_line.webp) no-repeat center center/cover;
	right: 5.1428571429%;
}
.o-l2__button--line:hover {
	color: #fff;
}
.o-l2__notice {
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	margin-top: 15px;
}
@media only screen and (max-width: 736px) {
	.o-l2__notice {
		font-size: 11px;
	}
}

.o-l3 {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-l3 {
		padding: 0 8vw;
	}
}
.o-l3__lists {
	display: grid;
	align-items: start;
	grid-template-columns: repeat(3, 1fr);
	gap: 15px 35px;
}
@media only screen and (max-width: 736px) {
	.o-l3__lists {
		grid-template-columns: repeat(1, 1fr);
		gap: 15px;
	}
}
.o-l3__item {
	width: 100%;
	height: auto;
}
.o-l3__button,
.o-l3__button--font-small {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-weight: bold;
	position: relative;
	display: flex;
	padding: 10px 35px 10px 25px;
	align-items: center;
	border-radius: 50px;
	box-shadow: 0px 3px 15px 0px rgba(71, 163, 178, 0.15);
	background: #fff;
	font-size: 16px;
}
.o-l3__button::after,
.o-l3__button--font-small::after {
	content: "";
	width: 7px;
	height: 7px;
	border-top: solid 1px #627274;
	border-right: solid 1px #627274;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%) rotate(45deg);
}
.o-l3__button--border {
	box-shadow: none;
	border: 1px solid #ccc;
}
.o-l3__button--font-small {
	font-size: 14px;
	padding: 5px 35px 5px 25px;
}
@media only screen and (max-width: 736px) {
	.o-l3__button--font-small {
		font-size: 13px;
		padding: 5px 35px 5px 25px;
	}
}
.o-l3__button--top::after{
	transform: translateY(-50%) rotate(-45deg);
}
.o-l3__button--grad {
	color: #fff;
	background: rgb(95, 188, 203);
	background: linear-gradient(90deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	border: none;
}
.o-l3__button--grad:hover,
.o-l3__button--grad:focus {
	color: #fff;
}
.o-l3__button--line {
	color: #fff;
	background: #4fc71c;
}
.o-l3__button--small {
	padding: 5px 45px 5px 25px;
}

.o-l4 {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-l4 {
		padding: 0 8vw;
	}
}
.o-l4__heading {
	margin-bottom: 20px;
}
@media only screen and (max-width: 736px) {
	.o-l4__heading {
		margin-bottom: 10px;
	}
}
.o-l4__lists {
	display: grid;
	align-items: center;
	grid-template-columns: repeat(2, 1fr);
	gap: 0 35px;
}
@media only screen and (max-width: 736px) {
	.o-l4__lists {
		grid-template-columns: repeat(1, 1fr);
	}
}
.o-l4__item {
	width: 100%;
	height: auto;
}
.o-l4__link {
	display: block;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	position: relative;
	width: 100%;
	border-bottom: 2px solid #5fbccb;
}
.o-l4__link::after {
	content: "";
	width: 12px;
	height: 12px;
	border-top: solid 2px #627274;
	border-right: solid 2px #627274;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotate(45deg);
}
p .o-l4__link::after {
	content: none;
}
.o-l4__box {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 20px 20px 20px 0;
}
@media only screen and (max-width: 736px) {
	.o-l4__box {
		padding: 15px 15px 15px 0;
	}
}
.o-l4__text {
	font-size: 18px;
	line-height: 1.5;
	font-weight: bold;
}
.o-l4__yen {
	font-weight: 500;
	color: #5fbccb;
}
@media only screen and (max-width: 736px) {
	.o-l4__text_petit {
		font-size: 12px;
	}
	.o-l4__yen {
		font-size: 16px;
	}
	.o-l4__yen_petit {
		font-size: 11px;
	}
}

.o-l5 {
	display: flex;
	flex-direction: column;
}
@media only screen and (max-width: 736px) {
	.o-l5 {
		padding: 0 8vw;
	}
}
.o-l5__link {
	margin-top: 5px;
	padding-top: 10px;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	font-weight: bold;
	position: relative;
	display: inline-flex;
	align-items: center;
	border-bottom: 1px solid #415457;
	font-size: 16px;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
.o-l5__link--en {
	font-family: "Cormorant Garamond", serif;
}
.o-l5__link--small {
	font-size: 14px;
}
@media only screen and (max-width: 736px) {
	.o-l5__link--small {
		font-size: 13px;
	}
}
.o-l5__link::after {
	margin-left: 12px;
	content: "";
	width: 7px;
	height: 7px;
	border-top: solid 2px #627274;
	border-right: solid 2px #627274;
	position: relative;
	right: 5px;
	transform: rotate(45deg);
}

.o-m1 {
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 15px 35px;
	padding: 70px 0 0;
}
@media only screen and (max-width: 736px) {
	.o-m1 {
		gap: 5px 25px;
		grid-template-columns: repeat(2, 1fr);
		padding: 40px 8vw 0;
	}
}
.o-m1__item {
	position: relative;
	border-top: 1px solid #cccccc;
}
.o-m1__link {
	font-weight: bold;
	display: block;
	padding: 15px 23% 10px 0;
	line-height: 1.5;
	width: 100%;
	height: 100%;
}
@media only screen and (max-width: 736px) {
	.o-m1__link {
		font-size: 13px;
		padding: 20px 10% 10px 0;
	}
}
.o-m1__link::after {
	content: "";
	width: 5px;
	height: 5px;
	border-top: solid 1px #415457;
	border-right: solid 1px #415457;
	position: absolute;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotate(135deg);
}

@media only screen and (max-width: 736px) {
	.o-m2 {
		padding: 0 8vw;
	}
}
.o-m2__lists {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	gap: 15px;
}
.o-m2__item {
	width: 100%;
}
.o-m2__button {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	border-radius: 10px;
	padding: 15px 25px;
	font-size: 18px;
	color: #fff;
	font-weight: bold;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	text-align: left;
}
@media only screen and (max-width: 736px) {
	.o-m2__button {
		font-size: 16px;
		padding: 15px 4vw 15px 6.6666666667vw;
	}
}
.o-m2__button:hover {
	opacity: 0.7;
	color: #fff;
}
.o-m2__button:focus {
	color: #fff;
}
.o-m2__button > p:first-child {
	display: none; /* WPの仕様で勝手に挿入されるpタグを消すため。これを外すとhタグを設定している箇所が中央揃えになってしまう。 */
}
.o-m2__button > br:first-child {
	display: none;
}
.o-m2__button--gray {
	background: linear-gradient(85.1deg, #a5a5a5 0%, #c8c8c8 60%, #e5e5e5 100%)
}
.o-m2__button--white {
	box-shadow: 0px 3px 15px 0px rgba(71, 163, 178, 0.15);
	background: #fff;
	color: #415457;
}
.o-m2__button--white:hover,
.o-m2__button--white:focus {
	color: #415457;
}
.o-m2__icon {
	flex-shrink: 0;
	display: block;
	position: relative;
	background: #fff;
	border-radius: 5px;
	width: 30px;
	height: 30px;
}
.o-m2__text {
	line-height: 2;
	padding: 20px 25px;
}
@media only screen and (max-width: 736px) {
	.o-m2__text {
		font-size: 13px;
		padding: 15px 0;
	}
}
.o-m2__text--parallel {
	padding: 25px 0 15px;
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-m2__text--parallel {
		font-size: 13px;
		padding: 0 0 15px;
	}
}
.o-m2__parallel {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0 50px;
	padding: 0 25px;
}
@media only screen and (max-width: 736px) {
	.o-m2__parallel {
		gap: 10px 0;
		flex-direction: column-reverse;
		padding: 0;
	}
}
.o-m2__parallel .o-m2__image {
	padding-top: 25px;
	padding-bottom: 15px;
}
@media only screen and (max-width: 736px) {
	.o-m2__parallel .o-m2__image {
		padding-top: 15px;
		padding-bottom: 0;
	}
}
.o-m2__parallel-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0 50px;
}
@media only screen and (max-width: 736px) {
	.o-m2__parallel-grid {
		grid-template-columns: repeat(1, 1fr);
	}
}
.o-m2__image {
	width: 100%;
}
.o-m2__image > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.js-accordion-content {
	height: 0;
	overflow: hidden;
	transition: height 0.3s ease;
}
.js-accordion-icon {
	position: absolute;
	left: 0;
	display: inline-block;
	width: 100%;
	height: 100%;
}
.js-accordion-icon::before,
.js-accordion-icon::after {
	position: absolute;
	content: "";
	display: block;
	transition: all 0.4s;
	background: #000;
	left: 50%;
	top: 50%;
	width: 10px;
	height: 1px;
	transform: translate(-50%, -50%);
}
.js-accordion-icon::before {
	transform: translate(-50%, -50%) rotate(90deg);
}
.js-accordion-icon.is-active::before {
	background: #5fbccb;
	transform: translate(-50%, -50%) rotate(0deg);
}
.js-accordion-icon.is-active::after {
	background: #5fbccb;
}

.o-m3__tab {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
}
.o-m3__list {
	position: relative;
	width: 100%;
	padding: 0 25px;
	gap: 0 10px;
	display: flex;
}
.o-m3__list::after {
	position: absolute;
	bottom: 0;
	content: "";
	height: 2px;
	width: 100%;
	background: #5fbccb;
}
.o-m3__list::after {
	right: 0;
}
.o-m3__item {
	/* width: 100%; */
	text-align: center;
	padding: 10px 25px;
	color: #022222;
	cursor: pointer;
	border-radius: 5px 5px 0 0;
	background-color: #eeeeee;
	transition: none;
	font-weight: bold;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
	flex: 1;
}
@media only screen and (max-width: 736px) {
	/* .o-m3__item {
		width: auto;
	} */
}
.o-m3__item[aria-selected="true"] {
	background: #fff;
	color: #5fbccb;
	border-top: 2px solid #5fbccb;
	border-left: 2px solid #5fbccb;
	border-right: 2px solid #5fbccb;
	border-bottom: none;
	position: relative;
}
.o-m3__item[aria-selected="true"]::after {
	box-sizing: border-box;
	display: block;
	height: 2px;
	width: 100%;
	background: #fff;
	content: "";
	position: absolute;
	z-index: 1;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
_::-webkit-full-page-media,
_:future,
:root .o-m3__item[aria-selected="true"]::after {
	bottom: -2px;
	height: 5px;
}

.o-m3__item[aria-selected="false"] {
	position: relative;
}
@media only screen and (max-width: 736px) {
	.o-m3__wrapper {
		padding: 0 8vw;
	}
}
.o-m3__contents {
	padding: 45px 0 0;
}
.o-m3__contents[aria-hidden="true"] {
	display: none;
}
.o-m3__contents[aria-hidden="false"] {
	display: block;
}
.o-m3__heading {
	margin-bottom: 20px;
}
@media only screen and (max-width: 736px) {
	.o-m3__heading {
		margin-bottom: 10px;
	}
}
.o-m3__text {
	line-height: 2;
	font-weight: 500;
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-m3__text {
		font-size: 13px;
	}
}
.o-m3__box {
	display: flex;
	justify-content: space-between;
	gap: 0 50px;
}
@media only screen and (max-width: 736px) {
	.o-m3__box {
		flex-direction: column-reverse;
	}
}
.o-m3__image {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-m3__image {
		margin-bottom: 10px;
	}
}
.o-m3__image > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.o-m4and5__tab {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
}
.o-m4and5__scroll-wrap {
	position: relative;
}
@media only screen and (max-width: 736px) {
	.o-m4and5__scroll-wrap {
		overflow-x: scroll;
		/* IE, Edge 対応 */
		-ms-overflow-style: none;
		/* Firefox 対応 */
		scrollbar-width: none;
	}
	.o-m4and5__scroll-wrap::-webkit-scrollbar {
		display: none;
	}
}
.o-m4and5__under-line {
	position: absolute;
	bottom: 0;
	content: "";
	height: 2px;
	background: #5fbccb;
}
.o-m4and5__list {
	position: relative;
	width: 100%;
	padding: 0 25px;
	gap: 0 10px;
	display: flex;
}
.o-m4and5__list::before,
.o-m4and5__list::after {
	position: absolute;
	bottom: 0;
	display: block;
	content: "";
	width: 25px;
	height: 2px;
	background: #5fbccb;
}
.o-m4and5__list::after {
	right: 0;
}
@media only screen and (max-width: 736px) {
	.o-m4and5__list::after {
		display: none;
	}
}
.o-m4and5__list::before {
	left: 0;
}
@media only screen and (max-width: 736px) {
	_::-webkit-full-page-media,
	_:future,
	:root .o-m4and5__list::before {
		bottom: 2px;
		width: 28px;
	}
}

.o-m4and5__item {
	width: 100%;
	text-align: center;
	padding: 10px 25px;
	color: #022222;
	cursor: pointer;
	border-radius: 5px 5px 0 0;
	background-color: #eeeeee;
	transition: none;
	font-weight: bold;
	font-family: "Zen Maru Gothic", "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, sans-serif;
}
@media only screen and (max-width: 736px) {
	.o-m4and5__item {
		width: auto;
		min-width: -webkit-max-content;
		min-width: -moz-max-content;
		min-width: max-content;
	}
}
.o-m4and5__item[aria-selected="true"] {
	background: #fff;
	color: #5fbccb;
	border-top: 2px solid #5fbccb;
	border-left: 2px solid #5fbccb;
	border-right: 2px solid #5fbccb;
	border-bottom: none;
	position: relative;
}
.o-m4and5__item[aria-selected="true"]::after {
	box-sizing: border-box;
	display: block;
	height: 2px;
	width: 100%;
	background: #fff;
	content: "";
	position: absolute;
	z-index: 1;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
.o-m4and5__item[aria-selected="true"]::before {
	position: absolute;
	display: block;
	bottom: 0;
	left: -12px;
	height: 2px;
	width: 10px;
	background: #5fbccb;
	content: "";
}
@media only screen and (max-width: 736px) {
	.o-m4and5__item[aria-selected="true"]::before {
		left: -16px;
		width: 15px;
	}
}
.o-m4and5__item[aria-selected="false"] {
	position: relative;
	border-bottom: 2px solid #5fbccb;
}
.o-m4and5__item[aria-selected="false"]::after {
	position: absolute;
	display: block;
	bottom: -2px;
	left: -10px;
	height: 2px;
	width: 10px;
	background: #5fbccb;
	content: "";
}
@media only screen and (max-width: 736px) {
	.o-m4and5__item[aria-selected="false"]::after {
		left: -14px;
		width: 16px;
	}
}
.o-m4and5__item:first-child::after,
.o-m4and5__item:first-child::before {
	display: none;
}
@media only screen and (max-width: 736px) {
	.o-m4and5__wrapper {
		padding: 0 8vw;
	}
}
.o-m4and5__contents {
	padding: 45px 0 0;
}
.o-m4and5__contents[aria-hidden="true"] {
	display: none;
}
.o-m4and5__contents[aria-hidden="false"] {
	display: block;
}
.o-m4and5__heading {
	margin-bottom: 20px;
}
@media only screen and (max-width: 736px) {
	.o-m4and5__heading {
		margin-bottom: 10px;
	}
}
.o-m4and5__text {
	line-height: 2;
	font-weight: 500;
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-m4and5__text {
		font-size: 13px;
	}
}
.o-m4and5__box {
	display: flex;
	justify-content: space-between;
	gap: 0 50px;
}
@media only screen and (max-width: 736px) {
	.o-m4and5__box {
		flex-direction: column-reverse;
	}
}
.o-m4and5__image {
	width: 100%;
}
@media only screen and (max-width: 736px) {
	.o-m4and5__image {
		margin-bottom: 10px;
	}
}
.o-m4and5__image > img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.o-m6 {
	width: 100%;
	background: rgb(223, 242, 245);
	background: linear-gradient(35deg, rgb(223, 242, 245) 0%, rgb(234, 246, 244) 51%, rgb(249, 251, 243) 100%);
	padding: 30px 50px;
	margin-top: 85px;
}
@media only screen and (max-width: 736px) {
	.o-m6 {
		margin-top: 45px;
		padding: 35px 8vw;
	}
}
.o-m6__lists {
	display: flex;
	flex-wrap: wrap;
	gap: 0 50px;
	align-content: stretch;
	justify-content: flex-start;
}
@media only screen and (max-width: 736px) {
	.o-m6__lists {
		gap: 0;
	}
}
.o-m6__item {
	width: calc(50% - 25px);
}
@media only screen and (max-width: 736px) {
	.o-m6__item {
		width: 100%;
	}
}
.o-m6__heading {
	margin-bottom: 10px;
}
@media only screen and (max-width: 736px) {
	.o-m6__heading {
		margin-bottom: 5px;
	}
}
.o-m6__text {
	display: flex;
	color: #60bccb;
	font-weight: bold;
	line-height: 2;
}
@media only screen and (max-width: 736px) {
	.o-m6__text {
		font-size: 13px;
	}
}
.o-m6__text::before {
	flex-shrink: 0;
	content: "";
	display: block;
	background: rgb(95, 188, 203);
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 60%, rgb(226, 236, 193) 100%);
	width: 8px;
	height: 8px;
	border-radius: 50%;
	margin: 11px 7px 0 0;
}
.o-m7 {
	width: 100%;
	background: rgb(223, 242, 245);
	background: linear-gradient(35deg, rgb(223, 242, 245) 0%, rgb(234, 246, 244) 51%, rgb(249, 251, 243) 100%);
	padding: 30px 50px;
	display: flex;
	align-items: center;
	gap: 3rem;
}
@media only screen and (max-width: 736px) {
	.o-m7 {
		margin-top: 45px;
		padding: 35px 8vw;
	}
}
.o-m7 p:last-of-type {
	display: none;
}
.o-m7__image {
	width: 30%;
}
@media only screen and (max-width: 736px) {
	.o-m7__image {
		width: 100%;
	}
}
.o-m7__heading {
	color: #5fbccb;
	font-weight: bold;
	line-height: 2;
	margin-bottom: 10px;
}
.o-m7__text {
	background: #fff;
	position: relative;
	padding: 2rem 3rem;
}
.o-m7__text:before {
	content: "";
	position: absolute;
	top: 30%;
	left: -30px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-right: 15px solid #fff;
}

.o-x1__contents {
	position: relative;
}
.o-x1__contents .overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.5);
	width: 100%;
	height: 100%;
	z-index: 601;
}
.o-x1__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
}
@media only screen and (max-width: 736px) {
	.o-x1__list {
		grid-template-columns: repeat(2, 1fr);
	}
}
.o-x1__itemButton img {
	aspect-ratio: 16/9;
	object-fit: cover;
}
.o-x1__modal {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 558px;
	border: 2px solid #b5a679;
	z-index: 602;
}
@media only screen and (max-width: 736px) {
	.o-x1__modal {
		width: 90%;
		max-width: 558px;
	}
}
.o-x1__modal__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 50px;
}
@media only screen and (max-width: 736px) {
	.o-x1__modal__header {
		height: 44px;
	}
}
.o-x1__modal__head {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 14px;
	text-align: left;
	background-color: #e6f1f2;
	font-family: "Kosugi Maru", sans-serif;
}
@media only screen and (max-width: 736px) {
	.o-x1__modal__head {
		font-size: 16px;
	}
}
.o-x1__modal__closeWrap {
	height: 100%;
}
.o-x1__modal__buttonClose {
	width: 70px;
	height: 100%;
	font-size: 24px;
	font-weight: normal;
	background-color: #b5a679;
	color: #151515;
}
.o-x1__modal__list {
	background-color: #e1e1e1;
}
.o-x1__modal__item {
	position: relative;
	display: flex;
	align-items: center;
	height: 70px;
	text-align: left;
}
@media only screen and (max-width: 736px) {
	.o-x1__modal__item {
		min-height: 70px;
		height: 100%;
		font-size: 14px;
	}
}
.o-x1__modal__item:not(:first-child) {
	border-top: 2px solid #b5a679;
}
.o-x1__modal__item a {
	width: 100%;
	height: 100%;
	padding: 12px 20px 12px 16px;
}
.o-x1__modal__item a::after {
	position: absolute;
	top: 40%;
	right: 30px;
	width: 10px;
	height: 10px;
	content: "";
	border: 0;
	border-top: solid 2px #151515;
	border-right: solid 2px #151515;
	transform: rotate(45deg);
}
.o-x1__modal__item span {
	display: block;
	font-size: 14px;
}
@media only screen and (max-width: 736px) {
	.o-x1__modal__item span {
		font-size: 10px;
	}
}

.o-price__tax {
	font-size: 14px;
}
@media only screen and (max-width: 736px) {
	.o-price__tax {
		font-size: 11px;
	}
}
.o-price__table {
	border-collapse: collapse;
	width: 100%;
	border-bottom: 1px solid #cccccc;
}
.o-price__table th {
	width: 70%;
}
@media only screen and (max-width: 736px) {
	.o-price__table th {
		width: 55%;
	}
}
.o-price__table td {
	width: 30%;
	text-align: right;
}
@media only screen and (max-width: 736px) {
	.o-price__table td {
		width: 45%;
	}
}
.o-price__th,
.o-price__td {
	padding: 18px 25px;
	text-align: left;
	vertical-align: top;
}
@media only screen and (max-width: 736px) {
	.o-price__th,
	.o-price__td {
		padding: 15px 4vw;
		font-size: 13px;
	}
}
.o-price__th span,
.o-price__td span {
	font-size: 12px;
}
.o-price__table tbody:first-of-type .o-price__th {
	padding: 7px 20px;
	border-top: 2px solid #5fbccb;
}
@media only screen and (max-width: 736px) {
	.o-price__table tbody:first-of-type .o-price__th {
		padding: 7px 4vw;
	}
}
.o-price__table tbody:nth-of-type(odd) .o-price__tr {
	background: #f6fafa;
}
.o-price__th {
	color: #415457;
	font-weight: bold;
	line-height: 2;
	background: #cce9ee;
	vertical-align: top;
}
@media only screen and (max-width: 736px) {
	.o-price__th {
		font-size: 13px;
	}
}
.o-price__td {
	line-height: 2;
}
.o-price__tr:not(:first-of-type) .o-price__td {
	color: #668084;
	padding-top: 0;
}
.o-price__tr:not(:first-of-type) .o-price__td:first-of-type {
	padding-left: 50px;
}
@media only screen and (max-width: 736px) {
	.o-price__tr:not(:first-of-type) .o-price__td:first-of-type {
		padding-left: 6.66666667vw;
	}
}
.o-price__th a,
.o-price__td a {
	border-bottom: 1px solid #668084;
}

/* PC/SP
------------------------- */
/* # =================================================================
# u-display(for-pc,for-sp用)
# ================================================================= */
.u-display--sp {
	display: none !important;
}
@media only screen and (max-width: 736px) {
	.u-display--sp {
		display: inline-block !important;
	}
}

.u-display--pc {
	display: inline-block !important;
}
@media only screen and (max-width: 736px) {
	.u-display--pc {
		display: none !important;
	}
}

/* ===============================================
# 背景色
=============================================== */
.u-bg-w {
	background: #fff;
}

/* ===============================================
# box-shadow
=============================================== */
.u-shadow-01 {
	box-shadow: 0px 3px 15px 0px rgba(71, 163, 178, 0.15);
}

/* ===============================================
# border-radius
=============================================== */
.u-bdr-10 {
	border-radius: 10px;
}

.u-bdr-10--pc {
	border-radius: 10px;
}
@media only screen and (max-width: 736px) {
	.u-bdr-10--pc {
		border-radius: 0;
	}
}

.u-bdr-10--sp {
	border-radius: 0;
}
@media only screen and (max-width: 736px) {
	.u-bdr-10--sp {
		border-radius: 10px;
	}
}

.u-bdr-20 {
	border-radius: 20px;
}

.u-bdr-20--pc {
	border-radius: 20px;
}
@media only screen and (max-width: 736px) {
	.u-bdr-20--pc {
		border-radius: 0;
	}
}

.u-bdr-20--sp {
	border-radius: 0;
}
@media only screen and (max-width: 736px) {
	.u-bdr-20--sp {
		border-radius: 20px;
	}
}

/* ===============================================
# 主にボタン用のmax-width
=============================================== */
.u-mw300 {
	max-width: 300px;
}

.u-mw310 {
	max-width: 310px;
}

.u-mw320 {
	max-width: 320px;
}

.u-mw330 {
	max-width: 330px;
}

.u-mw340 {
	max-width: 340px;
}

.u-mw350 {
	max-width: 350px;
}

.u-mw360 {
	max-width: 360px;
}

.u-mw370 {
	max-width: 370px;
}

.u-mw380 {
	max-width: 380px;
}

.u-mw390 {
	max-width: 390px;
}

.u-mw400 {
	max-width: 400px;
}

/* ===============================================
# 主にボタン用のmax-width  PC
=============================================== */
@media only screen and (max-width: 737px) {
	.u-wperc10--pc {
		width: 10%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc20--pc {
		width: 20%;
	}
}

@media only screen and (min-width: 737px) {
	.u-wperc30--pc {
		width: 30%;
	}
}

@media only screen and (min-width: 737px) {
	.u-wperc40--pc {
		width: 40%;
	}
}

@media only screen and (min-width: 737px) {
	.u-wperc50--pc {
		width: 50%;
	}
}

@media only screen and (min-width: 737px) {
	.u-wperc60--pc {
		width: 60%;
	}
}

@media only screen and (min-width: 737px) {
	.u-wperc70--pc {
		width: 70%;
	}
}

@media only screen and (min-width: 737px) {
	.u-wperc80--pc {
		width: 80%;
	}
}

@media only screen and (min-width: 737px) {
	.u-wperc90--pc {
		width: 90%;
	}
}

@media only screen and (min-width: 737px) {
	.u-wperc100--pc {
		width: 100%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc10--sp {
		width: 10%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc20--sp {
		width: 20%;
	}
}

/* ===============================================
# 主にボタン用のmax-width  SP
=============================================== */
@media only screen and (max-width: 737px) {
	.u-wperc30--sp {
		width: 30%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc40--sp {
		width: 40%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc50--sp {
		width: 50%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc60--sp {
		width: 60%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc70--sp {
		width: 70%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc80--sp {
		width: 80%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc87--sp {
		width: 87%;
	}
}
@media only screen and (max-width: 737px) {
	.u-wperc90--sp {
		width: 90%;
	}
}

@media only screen and (max-width: 737px) {
	.u-wperc100--sp {
		width: 100%;
	}
}

/* ===============================================
# font-size
=============================================== */
.u-fz10 {
	font-size: 10px;
}
.u-fz12 {
	font-size: 12px;
}
.u-fz14 {
	font-size: 14px;
}
.u-fz18 {
	font-size: 18px;
}
.u-fz20 {
	font-size: 20px;
}
.u-fz22 {
	font-size: 22px;
}
.u-fz24 {
	font-size: 24px;
}
@media only screen and (max-width: 737px) {
	.u-fz18-sp{
		font-size: 18px;
	}
	.u-fz20-sp{
		font-size: 20px;
	}
	.u-fz22-sp {
		font-size: 22px;
	}
	.u-fz30-sp {
		font-size: 30px;
	}
}
/* ===============================================
# font-weight
=============================================== */
.u-fwb {
	font-weight: bold;
}

/* ===============================================
# text-align
=============================================== */
.u-ta-c {
	text-align: center;
}
.u-ta-r {
	text-align: right;
}
.u-ta-l {
	text-align: left;
}

/* ===============================================
# line-height
=============================================== */
.u-lh2 {
	line-height: 2;
}

.u-fnt-en2 {
	font-family: "Cormorant Garamond", serif;
}

/* ===============================================
# color
=============================================== */
.u-fc-deficit {
	color: #f45544 !important;
}
.u-fc-yellow {
	color: #edb918 !important;
}
.u-fc-blue {
	color: #5fbccb !important;
}
.u-fc-white{
	color: #fff !important;
}

/* # =================================================================
# u-margin(ページ、コンポーネント間などのmargin用)
# ================================================================= */
.u-m-center {
	margin-left: auto;
	margin-right: auto;
}

.u-mt0 {
	margin-top: 0 !important;
}
@media only screen and (max-width: 736px) {
	.u-mt0 {
		margin-top: 0 !important;
	}
}

.u-mb0 {
	margin-bottom: 0 !important;
}
@media only screen and (max-width: 736px) {
	.u-mb0 {
		margin-bottom: 0 !important;
	}
}

.u-mt0--pc {
	margin-top: 0 !important;
}
@media only screen and (max-width: 736px) {
	.u-mt0--pc {
		margin-top: 0;
	}
}

.u-mb0--pc {
	margin-bottom: 0 !important;
}
@media only screen and (max-width: 736px) {
	.u-mb0--pc {
		margin-bottom: 0;
	}
}

.u-mt5--pc {
	margin-top: 5px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt5--pc {
		margin-top: 0;
	}
}

.u-mb5--pc {
	margin-bottom: 5px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb5--pc {
		margin-bottom: 0;
	}
}

.u-mt10--pc {
	margin-top: 10px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt10--pc {
		margin-top: 0;
	}
}

.u-mb10--pc {
	margin-bottom: 10px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb10--pc {
		margin-bottom: 0;
	}
}

.u-mt15--pc {
	margin-top: 15px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt15--pc {
		margin-top: 0;
	}
}

.u-mb15--pc {
	margin-bottom: 15px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb15--pc {
		margin-bottom: 0;
	}
}

.u-mt20--pc {
	margin-top: 20px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt20--pc {
		margin-top: 0;
	}
}

.u-mb20--pc {
	margin-bottom: 20px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb20--pc {
		margin-bottom: 0;
	}
}

.u-mt25--pc {
	margin-top: 25px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt25--pc {
		margin-top: 0;
	}
}

.u-mb25--pc {
	margin-bottom: 25px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb25--pc {
		margin-bottom: 0;
	}
}

.u-mt30--pc {
	margin-top: 30px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt30--pc {
		margin-top: 0;
	}
}

.u-mb30--pc {
	margin-bottom: 30px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb30--pc {
		margin-bottom: 0;
	}
}

.u-mt35--pc {
	margin-top: 35px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt35--pc {
		margin-top: 0;
	}
}

.u-mb35--pc {
	margin-bottom: 35px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb35--pc {
		margin-bottom: 0;
	}
}

.u-mt40--pc {
	margin-top: 40px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt40--pc {
		margin-top: 0;
	}
}

.u-mb40--pc {
	margin-bottom: 40px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb40--pc {
		margin-bottom: 0;
	}
}

.u-mt45--pc {
	margin-top: 45px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt45--pc {
		margin-top: 0;
	}
}

.u-mb45--pc {
	margin-bottom: 45px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb45--pc {
		margin-bottom: 0;
	}
}

.u-mt50--pc {
	margin-top: 50px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt50--pc {
		margin-top: 0;
	}
}

.u-mb50--pc {
	margin-bottom: 50px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb50--pc {
		margin-bottom: 0;
	}
}

.u-mt55--pc {
	margin-top: 55px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt55--pc {
		margin-top: 0;
	}
}

.u-mb55--pc {
	margin-bottom: 55px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb55--pc {
		margin-bottom: 0;
	}
}

.u-mt60--pc {
	margin-top: 60px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt60--pc {
		margin-top: 0;
	}
}

.u-mb60--pc {
	margin-bottom: 60px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb60--pc {
		margin-bottom: 0;
	}
}

.u-mt65--pc {
	margin-top: 65px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt65--pc {
		margin-top: 0;
	}
}

.u-mb65--pc {
	margin-bottom: 65px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb65--pc {
		margin-bottom: 0;
	}
}

.u-mt70--pc {
	margin-top: 70px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt70--pc {
		margin-top: 0;
	}
}

.u-mb70--pc {
	margin-bottom: 70px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb70--pc {
		margin-bottom: 0;
	}
}

.u-mt75--pc {
	margin-top: 75px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt75--pc {
		margin-top: 0;
	}
}

.u-mb75--pc {
	margin-bottom: 75px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb75--pc {
		margin-bottom: 0;
	}
}

.u-mt80--pc {
	margin-top: 80px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt80--pc {
		margin-top: 0;
	}
}

.u-mb80--pc {
	margin-bottom: 80px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb80--pc {
		margin-bottom: 0;
	}
}

.u-mt85--pc {
	margin-top: 85px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt85--pc {
		margin-top: 0;
	}
}

.u-mb85--pc {
	margin-bottom: 85px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb85--pc {
		margin-bottom: 0;
	}
}

.u-mt90--pc {
	margin-top: 90px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt90--pc {
		margin-top: 0;
	}
}

.u-mb90--pc {
	margin-bottom: 90px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb90--pc {
		margin-bottom: 0;
	}
}

.u-mt95--pc {
	margin-top: 95px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt95--pc {
		margin-top: 0;
	}
}

.u-mb95--pc {
	margin-bottom: 95px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb95--pc {
		margin-bottom: 0;
	}
}

.u-mt100--pc {
	margin-top: 100px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt100--pc {
		margin-top: 0;
	}
}

.u-mb100--pc {
	margin-bottom: 100px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb100--pc {
		margin-bottom: 0;
	}
}

.u-mt105--pc {
	margin-top: 105px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt105--pc {
		margin-top: 0;
	}
}

.u-mb105--pc {
	margin-bottom: 105px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb105--pc {
		margin-bottom: 0;
	}
}

.u-mt110--pc {
	margin-top: 110px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt110--pc {
		margin-top: 0;
	}
}

.u-mb110--pc {
	margin-bottom: 110px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb110--pc {
		margin-bottom: 0;
	}
}

.u-mt115--pc {
	margin-top: 115px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt115--pc {
		margin-top: 0;
	}
}

.u-mb115--pc {
	margin-bottom: 115px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb115--pc {
		margin-bottom: 0;
	}
}

.u-mt120--pc {
	margin-top: 120px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt120--pc {
		margin-top: 0;
	}
}

.u-mb120--pc {
	margin-bottom: 120px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb120--pc {
		margin-bottom: 0;
	}
}

.u-mt125--pc {
	margin-top: 125px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt125--pc {
		margin-top: 0;
	}
}

.u-mb125--pc {
	margin-bottom: 125px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb125--pc {
		margin-bottom: 0;
	}
}

.u-mt130--pc {
	margin-top: 130px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt130--pc {
		margin-top: 0;
	}
}

.u-mb130--pc {
	margin-bottom: 130px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb130--pc {
		margin-bottom: 0;
	}
}

.u-mt135--pc {
	margin-top: 135px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt135--pc {
		margin-top: 0;
	}
}

.u-mb135--pc {
	margin-bottom: 135px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb135--pc {
		margin-bottom: 0;
	}
}

.u-mt140--pc {
	margin-top: 140px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt140--pc {
		margin-top: 0;
	}
}

.u-mb140--pc {
	margin-bottom: 140px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb140--pc {
		margin-bottom: 0;
	}
}

.u-mt145--pc {
	margin-top: 145px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt145--pc {
		margin-top: 0;
	}
}

.u-mb145--pc {
	margin-bottom: 145px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb145--pc {
		margin-bottom: 0;
	}
}

.u-mt150--pc {
	margin-top: 150px !important;
}
@media only screen and (max-width: 736px) {
	.u-mt150--pc {
		margin-top: 0;
	}
}

.u-mb150--pc {
	margin-bottom: 150px !important;
}
@media only screen and (max-width: 736px) {
	.u-mb150--pc {
		margin-bottom: 0;
	}
}

.u-mt0--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt0--sp {
		margin-top: 0 !important;
	}
}

.u-mb0--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb0--sp {
		margin-bottom: 0 !important;
	}
}

.u-mb5--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb5--sp {
		margin-bottom: 5px !important;
	}
}

.u-mt5--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt5--sp {
		margin-top: 5px !important;
	}
}

.u-mb10--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb10--sp {
		margin-bottom: 10px !important;
	}
}

.u-mt10--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt10--sp {
		margin-top: 10px !important;
	}
}

.u-mb15--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb15--sp {
		margin-bottom: 15px !important;
	}
}

.u-mt15--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt15--sp {
		margin-top: 15px !important;
	}
}

.u-mb20--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb20--sp {
		margin-bottom: 20px !important;
	}
}

.u-mt20--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt20--sp {
		margin-top: 20px !important;
	}
}

.u-mb25--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb25--sp {
		margin-bottom: 25px !important;
	}
}

.u-mt25--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt25--sp {
		margin-top: 25px !important;
	}
}

.u-mb30--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb30--sp {
		margin-bottom: 30px !important;
	}
}

.u-mt30--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt30--sp {
		margin-top: 30px !important;
	}
}

.u-mb35--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb35--sp {
		margin-bottom: 35px !important;
	}
}

.u-mt35--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt35--sp {
		margin-top: 35px !important;
	}
}

.u-mb40--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb40--sp {
		margin-bottom: 40px !important;
	}
}

.u-mt40--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt40--sp {
		margin-top: 40px !important;
	}
}

.u-mb45--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb45--sp {
		margin-bottom: 45px !important;
	}
}

.u-mt45--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt45--sp {
		margin-top: 45px !important;
	}
}

.u-mb50--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb50--sp {
		margin-bottom: 50px !important;
	}
}

.u-mt50--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt50--sp {
		margin-top: 50px !important;
	}
}

.u-mb55--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb55--sp {
		margin-bottom: 55px !important;
	}
}

.u-mt55--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt55--sp {
		margin-top: 55px !important;
	}
}

.u-mb60--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb60--sp {
		margin-bottom: 60px !important;
	}
}

.u-mt60--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt60--sp {
		margin-top: 60px !important;
	}
}

.u-mb65--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb65--sp {
		margin-bottom: 65px !important;
	}
}

.u-mt65--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt65--sp {
		margin-top: 65px !important;
	}
}

.u-mb70--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb70--sp {
		margin-bottom: 70px !important;
	}
}

.u-mt70--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt70--sp {
		margin-top: 70px !important;
	}
}

.u-mb75--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb75--sp {
		margin-bottom: 75px !important;
	}
}

.u-mt75--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt75--sp {
		margin-top: 75px !important;
	}
}

.u-mb80--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb80--sp {
		margin-bottom: 80px !important;
	}
}

.u-mt80--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt80--sp {
		margin-top: 80px !important;
	}
}

.u-mb85--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb85--sp {
		margin-bottom: 85px !important;
	}
}

.u-mt85--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt85--sp {
		margin-top: 85px !important;
	}
}

.u-mb90--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb90--sp {
		margin-bottom: 90px !important;
	}
}

.u-mt90--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt90--sp {
		margin-top: 90px !important;
	}
}

.u-mb95--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb95--sp {
		margin-bottom: 95px !important;
	}
}

.u-mt95--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt95--sp {
		margin-top: 95px !important;
	}
}

.u-mb100--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb100--sp {
		margin-bottom: 100px !important;
	}
}

.u-mt100--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt100--sp {
		margin-top: 100px !important;
	}
}

.u-mb105--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb105--sp {
		margin-bottom: 105px !important;
	}
}

.u-mt105--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt105--sp {
		margin-top: 105px !important;
	}
}

.u-mb110--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb110--sp {
		margin-bottom: 110px !important;
	}
}

.u-mt110--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt110--sp {
		margin-top: 110px !important;
	}
}

.u-mb115--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb115--sp {
		margin-bottom: 115px !important;
	}
}

.u-mt115--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt115--sp {
		margin-top: 115px !important;
	}
}

.u-mb120--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb120--sp {
		margin-bottom: 120px !important;
	}
}

.u-mt120--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt120--sp {
		margin-top: 120px !important;
	}
}

.u-mb125--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb125--sp {
		margin-bottom: 125px !important;
	}
}

.u-mt125--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt125--sp {
		margin-top: 125px !important;
	}
}

.u-mb130--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb130--sp {
		margin-bottom: 130px !important;
	}
}

.u-mt130--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt130--sp {
		margin-top: 130px !important;
	}
}

.u-mb135--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb135--sp {
		margin-bottom: 135px !important;
	}
}

.u-mt135--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt135--sp {
		margin-top: 135px !important;
	}
}

.u-mb140--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb140--sp {
		margin-bottom: 140px !important;
	}
}

.u-mt140--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt140--sp {
		margin-top: 140px !important;
	}
}

.u-mb145--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb145--sp {
		margin-bottom: 145px !important;
	}
}

.u-mt145--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt145--sp {
		margin-top: 145px !important;
	}
}

.u-mb150--sp {
	margin-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-mb150--sp {
		margin-bottom: 150px !important;
	}
}

.u-mt150--sp {
	margin-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-mt150--sp {
		margin-top: 150px !important;
	}
}

/* # =================================================================
# u-padding(ページ、コンポーネント間などのpadding用)
# ================================================================= */
.u-pt0 {
	padding-top: 0 !important;
}
@media only screen and (max-width: 736px) {
	.u-pt0 {
		padding-top: 0 !important;
	}
}

.u-pb0 {
	padding-bottom: 0 !important;
}
@media only screen and (max-width: 736px) {
	.u-pb0 {
		padding-bottom: 0 !important;
	}
}

.u-pt5--pc {
	padding-top: 5px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt5--pc {
		padding-top: 0;
	}
}

.u-pb5--pc {
	padding-bottom: 5px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb5--pc {
		padding-bottom: 0;
	}
}

.u-pt10--pc {
	padding-top: 10px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt10--pc {
		padding-top: 0;
	}
}

.u-pb10--pc {
	padding-bottom: 10px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb10--pc {
		padding-bottom: 0;
	}
}

.u-pt15--pc {
	padding-top: 15px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt15--pc {
		padding-top: 0;
	}
}

.u-pb15--pc {
	padding-bottom: 15px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb15--pc {
		padding-bottom: 0;
	}
}

.u-pt20--pc {
	padding-top: 20px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt20--pc {
		padding-top: 0;
	}
}

.u-pb20--pc {
	padding-bottom: 20px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb20--pc {
		padding-bottom: 0;
	}
}

.u-pt25--pc {
	padding-top: 25px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt25--pc {
		padding-top: 0;
	}
}

.u-pb25--pc {
	padding-bottom: 25px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb25--pc {
		padding-bottom: 0;
	}
}

.u-pt30--pc {
	padding-top: 30px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt30--pc {
		padding-top: 0;
	}
}

.u-pb30--pc {
	padding-bottom: 30px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb30--pc {
		padding-bottom: 0;
	}
}

.u-pt35--pc {
	padding-top: 35px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt35--pc {
		padding-top: 0;
	}
}

.u-pb35--pc {
	padding-bottom: 35px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb35--pc {
		padding-bottom: 0;
	}
}

.u-pt40--pc {
	padding-top: 40px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt40--pc {
		padding-top: 0;
	}
}

.u-pb40--pc {
	padding-bottom: 40px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb40--pc {
		padding-bottom: 0;
	}
}

.u-pt45--pc {
	padding-top: 45px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt45--pc {
		padding-top: 0;
	}
}

.u-pb45--pc {
	padding-bottom: 45px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb45--pc {
		padding-bottom: 0;
	}
}

.u-pt50--pc {
	padding-top: 50px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt50--pc {
		padding-top: 0;
	}
}

.u-pb50--pc {
	padding-bottom: 50px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb50--pc {
		padding-bottom: 0;
	}
}

.u-pt55--pc {
	padding-top: 55px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt55--pc {
		padding-top: 0;
	}
}

.u-pb55--pc {
	padding-bottom: 55px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb55--pc {
		padding-bottom: 0;
	}
}

.u-pt60--pc {
	padding-top: 60px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt60--pc {
		padding-top: 0;
	}
}

.u-pb60--pc {
	padding-bottom: 60px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb60--pc {
		padding-bottom: 0;
	}
}

.u-pt65--pc {
	padding-top: 65px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt65--pc {
		padding-top: 0;
	}
}

.u-pb65--pc {
	padding-bottom: 65px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb65--pc {
		padding-bottom: 0;
	}
}

.u-pt70--pc {
	padding-top: 70px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt70--pc {
		padding-top: 0;
	}
}

.u-pb70--pc {
	padding-bottom: 70px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb70--pc {
		padding-bottom: 0;
	}
}

.u-pt75--pc {
	padding-top: 75px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt75--pc {
		padding-top: 0;
	}
}

.u-pb75--pc {
	padding-bottom: 75px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb75--pc {
		padding-bottom: 0;
	}
}

.u-pt80--pc {
	padding-top: 80px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt80--pc {
		padding-top: 0;
	}
}

.u-pb80--pc {
	padding-bottom: 80px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb80--pc {
		padding-bottom: 0;
	}
}

.u-pt85--pc {
	padding-top: 85px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt85--pc {
		padding-top: 0;
	}
}

.u-pb85--pc {
	padding-bottom: 85px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb85--pc {
		padding-bottom: 0;
	}
}

.u-pt90--pc {
	padding-top: 90px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt90--pc {
		padding-top: 0;
	}
}

.u-pb90--pc {
	padding-bottom: 90px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb90--pc {
		padding-bottom: 0;
	}
}

.u-pt95--pc {
	padding-top: 95px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt95--pc {
		padding-top: 0;
	}
}

.u-pb95--pc {
	padding-bottom: 95px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb95--pc {
		padding-bottom: 0;
	}
}

.u-pt100--pc {
	padding-top: 100px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt100--pc {
		padding-top: 0;
	}
}

.u-pb100--pc {
	padding-bottom: 100px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb100--pc {
		padding-bottom: 0;
	}
}

.u-pt105--pc {
	padding-top: 105px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt105--pc {
		padding-top: 0;
	}
}

.u-pb105--pc {
	padding-bottom: 105px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb105--pc {
		padding-bottom: 0;
	}
}

.u-pt110--pc {
	padding-top: 110px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt110--pc {
		padding-top: 0;
	}
}

.u-pb110--pc {
	padding-bottom: 110px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb110--pc {
		padding-bottom: 0;
	}
}

.u-pt115--pc {
	padding-top: 115px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt115--pc {
		padding-top: 0;
	}
}

.u-pb115--pc {
	padding-bottom: 115px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb115--pc {
		padding-bottom: 0;
	}
}

.u-pt120--pc {
	padding-top: 120px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt120--pc {
		padding-top: 0;
	}
}

.u-pb120--pc {
	padding-bottom: 120px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb120--pc {
		padding-bottom: 0;
	}
}

.u-pt125--pc {
	padding-top: 125px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt125--pc {
		padding-top: 0;
	}
}

.u-pb125--pc {
	padding-bottom: 125px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb125--pc {
		padding-bottom: 0;
	}
}

.u-pt130--pc {
	padding-top: 130px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt130--pc {
		padding-top: 0;
	}
}

.u-pb130--pc {
	padding-bottom: 130px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb130--pc {
		padding-bottom: 0;
	}
}

.u-pt135--pc {
	padding-top: 135px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt135--pc {
		padding-top: 0;
	}
}

.u-pb135--pc {
	padding-bottom: 135px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb135--pc {
		padding-bottom: 0;
	}
}

.u-pt140--pc {
	padding-top: 140px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt140--pc {
		padding-top: 0;
	}
}

.u-pb140--pc {
	padding-bottom: 140px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb140--pc {
		padding-bottom: 0;
	}
}

.u-pt145--pc {
	padding-top: 145px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt145--pc {
		padding-top: 0;
	}
}

.u-pb145--pc {
	padding-bottom: 145px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb145--pc {
		padding-bottom: 0;
	}
}

.u-pt150--pc {
	padding-top: 150px !important;
}
@media only screen and (max-width: 736px) {
	.u-pt150--pc {
		padding-top: 0;
	}
}

.u-pb150--pc {
	padding-bottom: 150px !important;
}
@media only screen and (max-width: 736px) {
	.u-pb150--pc {
		padding-bottom: 0;
	}
}
.u-p15--pc {
	padding: 15px !important;
}
@media only screen and (max-width: 736px) {
	.u-p15--pc {
		padding: 0;
	}
}

.u-pb5--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb5--sp {
		padding-bottom: 5px !important;
	}
}

.u-pb10--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb10--sp {
		padding-bottom: 10px !important;
	}
}

.u-pt10--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt10--sp {
		padding-top: 10px !important;
	}
}

.u-pb15--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb15--sp {
		padding-bottom: 15px !important;
	}
}

.u-pt15--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt15--sp {
		padding-top: 15px !important;
	}
}

.u-pb20--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb20--sp {
		padding-bottom: 20px !important;
	}
}

.u-pt20--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt20--sp {
		padding-top: 20px !important;
	}
}

.u-pb25--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb25--sp {
		padding-bottom: 25px !important;
	}
}

.u-pt25--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt25--sp {
		padding-top: 25px !important;
	}
}

.u-pb30--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb30--sp {
		padding-bottom: 30px !important;
	}
}

.u-pt30--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt30--sp {
		padding-top: 30px !important;
	}
}

.u-pb35--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb35--sp {
		padding-bottom: 35px !important;
	}
}

.u-pt35--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt35--sp {
		padding-top: 35px !important;
	}
}

.u-pb40--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb40--sp {
		padding-bottom: 40px !important;
	}
}

.u-pt40--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt40--sp {
		padding-top: 40px !important;
	}
}

.u-pb45--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb45--sp {
		padding-bottom: 45px !important;
	}
}

.u-pt45--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt45--sp {
		padding-top: 45px !important;
	}
}

.u-pb50--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb50--sp {
		padding-bottom: 50px !important;
	}
}

.u-pt50--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt50--sp {
		padding-top: 50px !important;
	}
}

.u-pb55--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb55--sp {
		padding-bottom: 55px !important;
	}
}

.u-pt55--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt55--sp {
		padding-top: 55px !important;
	}
}

.u-pb60--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb60--sp {
		padding-bottom: 60px !important;
	}
}

.u-pt60--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt60--sp {
		padding-top: 60px !important;
	}
}

.u-pb65--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb65--sp {
		padding-bottom: 65px !important;
	}
}

.u-pt65--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt65--sp {
		padding-top: 65px !important;
	}
}

.u-pb70--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb70--sp {
		padding-bottom: 70px !important;
	}
}

.u-pt70--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt70--sp {
		padding-top: 70px !important;
	}
}

.u-pb75--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb75--sp {
		padding-bottom: 75px !important;
	}
}

.u-pt75--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt75--sp {
		padding-top: 75px !important;
	}
}

.u-pb80--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb80--sp {
		padding-bottom: 80px !important;
	}
}

.u-pt80--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt80--sp {
		padding-top: 80px !important;
	}
}

.u-pb85--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb85--sp {
		padding-bottom: 85px !important;
	}
}

.u-pt85--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt85--sp {
		padding-top: 85px !important;
	}
}

.u-pb90--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb90--sp {
		padding-bottom: 90px !important;
	}
}

.u-pt90--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt90--sp {
		padding-top: 90px !important;
	}
}

.u-pb95--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb95--sp {
		padding-bottom: 95px !important;
	}
}

.u-pt95--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt95--sp {
		padding-top: 95px !important;
	}
}

.u-pb100--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb100--sp {
		padding-bottom: 100px !important;
	}
}

.u-pt100--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt100--sp {
		padding-top: 100px !important;
	}
}

.u-pb105--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb105--sp {
		padding-bottom: 105px !important;
	}
}

.u-pt105--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt105--sp {
		padding-top: 105px !important;
	}
}

.u-pb110--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb110--sp {
		padding-bottom: 110px !important;
	}
}

.u-pt110--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt110--sp {
		padding-top: 110px !important;
	}
}

.u-pb115--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb115--sp {
		padding-bottom: 115px !important;
	}
}

.u-pt115--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt115--sp {
		padding-top: 115px !important;
	}
}

.u-pb120--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb120--sp {
		padding-bottom: 120px !important;
	}
}

.u-pt120--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt120--sp {
		padding-top: 120px !important;
	}
}

.u-pb125--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb125--sp {
		padding-bottom: 125px !important;
	}
}

.u-pt125--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt125--sp {
		padding-top: 125px !important;
	}
}

.u-pb130--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb130--sp {
		padding-bottom: 130px !important;
	}
}

.u-pt130--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt130--sp {
		padding-top: 130px !important;
	}
}

.u-pb135--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb135--sp {
		padding-bottom: 135px !important;
	}
}

.u-pt135--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt135--sp {
		padding-top: 135px !important;
	}
}

.u-pb140--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb140--sp {
		padding-bottom: 140px !important;
	}
}

.u-pt140--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt140--sp {
		padding-top: 140px !important;
	}
}

.u-pb145--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb145--sp {
		padding-bottom: 145px !important;
	}
}

.u-pt145--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt145--sp {
		padding-top: 145px !important;
	}
}

.u-pb150--sp {
	padding-bottom: 0;
}
@media only screen and (max-width: 736px) {
	.u-pb150--sp {
		padding-bottom: 150px !important;
	}
}

.u-pt150--sp {
	padding-top: 0;
}
@media only screen and (max-width: 736px) {
	.u-pt150--sp {
		padding-top: 150px !important;
	}
}
.u-mg0auto--sp {
	margin: 0;
}
.u-p15--sp {
	padding: 0px;
}
@media only screen and (max-width: 736px) {
	.u-p15--sp {
		padding-top: 15px !important;
	}
}
@media only screen and (max-width: 736px) {
	.u-mg0auto--sp {
		margin: 0 auto !important;
	}
}

/* # =================================================================
# side nav
# ================================================================= */
@media (min-width: 737px) {
	.main-content {
		width: 850px;
	}
	.side-nav {
		width: 265px;
		border-bottom: 1px solid #cacaca;
		letter-spacing: 0;
		height: fit-content;
	}
	.side-nav.is_top.is_fix .is_fixed_nav {
		position: fixed;
		top: 40px;
		width: 265px;
	}
	.side-nav.is_top.is_abs .is_fixed_nav {
		position: absolute;
		top: auto;
		bottom: 0;
	}
	.side-nav.none {
		border-bottom: none;
	}
	.side-nav .current-category {
		margin-bottom: 45px;
		border: 1px solid #cacaca !important;
	}
	.side-nav .current-category li a {
		display: block;
		padding: 8px 10px 8px 35px;
		background: #fff url(../img/gold_point.png) no-repeat 15px center;
		color: #191919;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.side-nav .current-category li a img {
		vertical-align: middle;
	}
	.side-nav .current-category li a:hover,
	.side-nav .current-category li.current a {
		background: url(../img/gold_point.png) no-repeat 15px center;
		color: #a79a70;
	}
	.side-nav .current-category li.title a {
		padding: 6px 0 8px;
		height: 42px;
		background: url(../img/bg_snav_current.jpg) no-repeat center center;
		color: #333;
		text-align: center;
		font-size: 125%;
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "メイリオ", "Meiryo", serif;
	}
	.side-nav .other-category {
		border-top: 1px solid #cacaca;
		border-right: 1px solid #cacaca;
		border-left: 1px solid #cacaca;
	}
	.side-nav .other-category.is_last {
		border-bottom: 1px solid #cacaca;
	}
	.side-nav .other-category li a {
		display: block;
		padding: 8px 10px 6px 35px;
		background: url(../img/gold_point.png) no-repeat 15px center;
		color: #191919;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.side-nav .other-category li a img {
		vertical-align: middle;
	}
	.side-nav .other-category li a:hover {
		background: url(../img/gold_point.png) no-repeat 15px center;
		color: #a79a70;
	}
	.side-nav .other-category li.title a {
		padding: 6px 0 8px;
		background: #f5f5f5;
		color: #575757;
		text-align: center;
		font-size: 110%;
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "メイリオ", "Meiryo", serif;
		line-height: 1.5;
	}
}
/* # =================================================================
# u-decoration(追加装飾用)
# ================================================================= */
.u-decomarker--yellow {
	background-color: #ffff77;
}
/* # =================================================================
# u-width(幅調整用)
# ================================================================= */
/* # =================================================================
# u-font(フォントサイズ,line-height用)
# ================================================================= */

/* # =================================================================
# その他追記部分
# ================================================================= */

/* 監修医情報 */
@media (min-width: 736px) {
	.whoSupervisedThisPage {
		width: 1000px;
		float: right;
	}
}

/* cmn-implementation */
.implementation__title {
	color: #191919;
	text-align: center;
	font-size: 160%;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "メイリオ", "Meiryo", serif;
}
.implementation__lead {
	padding-top: 20px;
	text-align: center;
}

@media (max-width: 736px) {
	.implementation__title {
		padding: 10px;
		font-size: 125%;
	}
	.implementation__lead {
		padding-top: 0;
		font-size: 75%;
	}
	.more-link {
		margin: 0 auto;
	}
	.more-link.-wide {
		width: 280px;
	}
	.more-link a {
		padding: 4px 5px 2px;
		background: #64aad1;
		color: #fff;
		position: relative;
		display: block;
		text-align: center;
	}
	.implementation {
		margin: 0 auto 50px;
	}
}
.implementation .introduction {
	text-align: center;
}
@media (min-width: 736px) {
	.implementation {
		position: relative;
		overflow: hidden;
		margin: 0 auto 50px;
		width: 1150px;
		text-align: justify;
	}
	.implementation .inner {
		max-width: 1000px;
	}
	.implementation .intro {
		margin: 0 0 30px;
	}
	.implementation .introduction .list {
		display: flex;
		padding: 0;
		flex-wrap: wrap;
		justify-content: center;
	}
	.implementation .introduction .list .item {
		margin: 0 0 20px;
	}
	.implementation .introduction .list .item .map {
		float: left;
		overflow: hidden;
		padding: 0;
		width: 400px;
		height: 300px;
	}
	.implementation .introduction .list .item .map iframe {
		margin-top: -200px;
		height: 700px;
	}
	.implementation .introduction .list .item .info .clinicName .link {
	}
	.implementation .introduction .list .item .info .clinicName .link a {
		display: block;
		box-sizing: border-box;
		padding: 12px 0;
		width: 280px;
		background: #64aad1;
		color: #fff;
		text-align: center;
		font-size: 16px;
		line-height: 1.7;
	}
	.implementation .introduction .list.-wide .item .info .clinicName .link a {
		width: 590px;
	}
}

.img_radius8 { /* 写真角丸 */
	border-radius: 8px;
}
.flex-clumn-evevly {
	display: flex;
	flex-direction: column;
	justify-content: space-evenly;
}

.o-select_box { /* しわたるみお悩みから探す */
	border: 1px solid #cccccc;
	border-radius: 13px;
	text-align: center;
	padding: 8px;
}
.o-heading__youtube-wrap {
	display: flex;
	gap: 10px;
}
@media only screen and (max-width: 736px) {
	.o-heading__youtube-wrap {
		flex-direction: column;
	}
}
.bg-yellowgradation {
	background: linear-gradient(35deg, rgb(161, 212, 198) 0%, rgb(226, 236, 193) 50%);
}
.bg-greengradation {
	background: linear-gradient(35deg, rgb(95, 188, 203) 0%, rgb(161, 212, 198) 50%);
}
.bg-basicgradation {
	background: linear-gradient(35deg, rgb(223, 242, 245) 0%, rgb(236, 246, 244) 50%, rgb(249, 251, 243) 100%);
}
.bg-pastel-green {
	background: rgba(196, 225, 195, 0.71);
}
.bg-light-blue {
	background: rgba(171, 219, 226, 0.49);
}
.bg-pale-green {
	background: rgba(161, 212, 198, 0.62);
}
.bg-pastel-yellow {
	background: rgba(223, 230, 201, 0.47);
}
.bg-pastel-blue {
	background: #f6fafa;
}
.bg-pastel-pink {
	background: #ffcccc;
}
.topics_bunner {
	width: 70%;
	margin: 0 auto;
}
@media only screen and (max-width: 736px) {
	.topics_bunner {
		width: 100%;
	}
}

.skinitem {
	flex-direction: column;
	align-items: flex-start;
	padding: 2vw 10vw;
}
@media only screen and (max-width: 736px) {
	.skinitem {
		padding: 2vw 1vw;
	}
	.mask-title {
		flex-direction: column;
		align-items: flex-end;
	}
}

/* 美容皮膚科ターミナル埋め込み動画 */
.top-movie-box {
	height: 64.5vh;
	position: relative;
	z-index: 0;
	overflow: hidden;
}
.top-movie-box .movie-cover {
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: opacity 0.5s;
}
.top-movie-box .movie-cover:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.top-movie-box .movie-cover #movie {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
}
@media only screen and (max-width: 736px) {
	.top-movie-box {
		height: 22.5vh;
	}
}
.mouth_case_wrap {
	flex-wrap: wrap;
	justify-content: space-around;
}
@media only screen and (max-width: 736px) {
	.mouth_case_wrap {
	}
}
.store_img_wrap{
	gap: 8px;
}
@media only screen and (max-width: 736px) {
		.store_img_wrap{
		flex-direction: column;
	}
}
