/*
Theme Name:ba-template
*/
@charset "UTF-8";
/*####################################

1. General
┣ Root
┣ Element
┣ Decoration
┣ Css Animation
┣ Plugin Overwrite
┣ default.css Overwrite
┣ Other
2. Site Common Style
┣ Pagination
┣ Form
┣ 404 & Thanks
3. Header
4. Main
5. Footer
6. Common Style
┣ Single
┣ Section 
7.Module
8. Page

####################################*/
/*====================================

1. General

====================================*/
/*
Root
====================================*/
:root {
	/* メインカラー */
	--mainColor: #e6437a;
	--mainColorHover:#f8568d;
	--mainColor2: #583b6d;
	/*====== 背景カラー ======*/
	/* コンテンツ背景カラー */
	--contentsBg: #ebeaf5;
	/* 下層ページトップ背景カラー */
	--lowerTopBg: #ebeaf5;
	/* 表組み項目名背景カラー */
	--tableItemBg: #F0F5FA;
	/* フォーム項目名背景カラー */
	--formItemBg: #F0F5FA;
	/* カテゴリーリンク背景カラー */
	--categoryLinkBg: #D7E1FA;
	/* メール問い合わせボタン背景カラー */
	--mailBtnBg: #e6437a;
	/*====== テキストカラー ======*/
	/* テキストカラー */
	--textColor: #000;
	/* リンクテキストカラー */
	--linkTextColor: #0c4876;
	/*====== ページネーションカラー ======*/
	/* ページネーションテキスト、矢印カラー */
	--pnColor: #000;
	/* ページネーションhoverテキスト、矢印カラー */
	--pnHoverColor: #000;
	/* ページネーションCurrentテキスト、矢印カラー */
	--pnCurrentColor: #000;
	/* ページネーションhover背景カラー */
	--pnHoverBg: #ebeaf5;
	/* ページネーションCurrent背景カラー */
	--pnCurrentBg: #ebeaf5;
	/*====== フォント ======*/
	--gothic: "NotoSansJp", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	--mincho: "NotoSerifJp", "游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	/*====== width ======*/
	--maxWidth768: 768px;
	--maxWidth500: 500px;
	--maxWidth375: 375px;
	--maxWidth300: 300px;
	/*====== other ======*/
}
/*
Element
====================================*/
body {
	color: var(--textColor);
}
/*
Decoration
====================================*/
.arrow1 {
  position: absolute;
  top: 50%;
  right: clamp(0.938rem, 0.67rem + 1.14vw, 1.563rem);
  transform: translateY(-50%);
  display: inline-block;
  width: 7.5px;
  height: 11.1px;
	transition:.3s;
}
a:hover .arrow1 {
	transform: translate(5px, -50%);
}
.arrow1._right20px {
  right: clamp(0.938rem, 0.804rem + 0.57vw, 1.25rem);
}
.arrow1._right25px {
  right: clamp(0.938rem, 0.67rem + 1.14vw, 1.563rem);
}
.arrow1::before,
.arrow1::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: 9px;
  height: 2px;
  border-radius: 9999px;
  background-color: var(--mainColor2);
  transform-origin: calc(100% - 1px) 50%;
}
.arrow1::before {
  transform: rotate(45deg);
}
.arrow1::after {
  transform: rotate(-45deg);
}
.arrow1._white::before,
.arrow1._white::after {
  background-color: #fff;
}
/*
Css Animation
====================================*/
/* fade */
.css_fade {
	opacity: 0;
	animation-name: css_fade;
	animation-duration: 3s;
	animation-timing-function: ease;
	animation-delay: 1s;
	animation-direction: normal;
	animation-fill-mode: forwards;
}
.top_mv .catchBlk > ._catch.css_fade {
	animation-duration: .8s;
	animation-delay: 2s;
}
.top_mv .catchBlk > ._subCatch.css_fade {
	animation-duration: .8s;
	animation-delay: 2.5s;
}
@keyframes css_fade {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
/* text fade */
.css_textSplitFade {
	opacity: 0;
}
.css_textSplitFade > span {
	opacity: 0;
	animation: css_textSplitFade 1s ease-out forwards;
}
@keyframes css_textSplitFade {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
/*
Plugin Overwrite
====================================*/
/*
Slick
---------------------------------------------------------------*/
.top_mv .slick-arrow::before {
	border-color: var(--mainColor);
}
.top_mv .slick-dots li.slick-active button {
	background: var(--mainColor);
}
/*
default.css Overwrite
====================================*/
#dentalHygienists .breadcrumb,
#dentalClinics .breadcrumb,
#educationalInstitution .breadcrumb,
#aboutUs .breadcrumb {
	padding: 20px 0;
}
/*
Other
====================================*/
/*====================================

2. Site Common Style

====================================*/
/*
Pagination
====================================*/
/*
List
---------------------------------------------------------------*/
.pn_list {
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 56px;
	border-radius: 6px;
	background: #fff;
	box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.1);
	margin: 75px 0 0;
}
.pn_list .listArrow::before, .pn_list .listArrow::after {
	content: '';
	position: absolute;
	top: calc(50% + 3px);
	width: 9px;
	height: 9px;
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	transform: rotate(45deg) translate(-50%, -50%);
	transition: .3s;
}
.pn_list .listPagerBlk {
	display: flex;
	align-items: center;
	gap: 11px;
}
.pn_list .listPagerPrevious::before {
	border-bottom: solid 2px var(--pnColor);
	border-left: solid 2px var(--pnColor);
	left: calc(50% - 2px);
}
.pn_list .listPagerBlk a, .pn_list .listPagerBlk span {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 35px;
	width: 35px;
	color: var(--pnColor);
	border-radius: 5px;
}
.pn_list .listPagerBlk span.listPagerNum {
	color: var(--pnCurrentColor);
	background: var(--pnCurrentBg);
}
.pn_list .listPagerNext::before {
	border-top: solid 2px var(--pnColor);
	border-right: solid 2px var(--pnColor);
	right: calc(50% - 2px);
}
@media screen and (min-width: 1025px) {
	.pn_list .listPagerPrevious:hover::before {
		border-bottom: solid 2px var(--pnHoverColor);
		border-left: solid 2px var(--pnHoverColor);
	}
	.pn_list .listPagerBlk a:hover {
		color: var(--pnHoverColor);
		background: var(--pnHoverBg);
		opacity: 1;
	}
	.pn_list .listPagerNext:hover::before {
		border-top: solid 2px var(--pnHoverColor);
		border-right: solid 2px var(--pnHoverColor);
	}
}
.pn_list .listFirstBlk, .pn_list .listLastBlk {
	width: 100px;
	height: 100%;
}
.pn_list .listFirstBlk a, .pn_list .listLastBlk a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 1025px) {
	.pn_list .listFirstBlk a:hover, .pn_list .listLastBlk a:hover {
		background: var(--pnHoverBg);
	}
}
.pn_list .listFirstBlk a {
	border-right: solid 1px #E2E6EB;
}
.pn_list .listFirstBlk a::before {
	border-bottom: solid 2px var(--pnColor);
	border-left: solid 2px var(--pnColor);
	left: 50%;
}
.pn_list .listFirstBlk a::after {
	border-bottom: solid 2px var(--pnColor);
	border-left: solid 2px var(--pnColor);
	left: calc(50% - 7px);
}
@media screen and (min-width: 1025px) {
	.pn_list .listFirstBlk a:hover::before {
		border-bottom: solid 2px var(--pnHoverColor);
		border-left: solid 2px var(--pnHoverColor);
	}
	.pn_list .listFirstBlk a:hover::after {
		border-bottom: solid 2px var(--pnHoverColor);
		border-left: solid 2px var(--pnHoverColor);
	}
}
.pn_list .listLastBlk a {
	border-left: solid 1px #E2E6EB;
}
.pn_list .listLastBlk a::before {
	border-top: solid 2px var(--pnColor);
	border-right: solid 2px var(--pnColor);
	right: 50%;
}
.pn_list .listLastBlk a::after {
	border-top: solid 2px var(--pnColor);
	border-right: solid 2px var(--pnColor);
	right: calc(50% - 7px);
}
@media screen and (min-width: 1025px) {
	.pn_list .listLastBlk a:hover {
		opacity: 1;
	}
	.pn_list .listLastBlk a:hover::before {
		border-top: solid 2px var(--pnHoverColor);
		border-right: solid 2px var(--pnHoverColor);
	}
	.pn_list .listLastBlk a:hover::after {
		border-top: solid 2px var(--pnHoverColor);
		border-right: solid 2px var(--pnHoverColor);
	}
}
@media screen and (max-width: 1024px) {
	.pn_list {
		margin: 60px 0 0;
	}
	.pn_list .listArrow::before, .pn_list .listArrow::after {
		top: calc(50% + 2px);
	}
	.pn_list .listPagerBlk {
		gap: 8px;
	}
	.pn_list .listPagerPrevious::before {
		left: calc(50% - 2px);
	}
	.pn_list .listPagerBlk a, .pn_list .listPagerBlk span {
		height: 30px;
		width: 26px;
		font-size: 14px;
	}
	.pn_list .listPagerBlk span.listPagerNum {}
	.pn_list .listPagerNext::before {}
	.pn_list .listFirstBlk, .pn_list .listLastBlk {
		width: 40px;
	}
	.pn_list .listFirstBlk a, .pn_list .listLastBlk a {}
	.pn_list .listFirstBlk a {}
	.pn_list .listFirstBlk a::before {
		left: calc(50% + 2px);
	}
	.pn_list .listFirstBlk a::after {
		left: calc(50% - 5px);
	}
	.pn_list .listLastBlk a {}
	.pn_list .listLastBlk a::before {
		right: calc(50% + 2px);
	}
	.pn_list .listLastBlk a::after {
		right: calc(50% - 5px);
	}
}
/*
Detail
---------------------------------------------------------------*/
.pn_detail {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: clamp(0.938rem, 0.511rem + 1.82vw, 1.875rem);
	width: 100%;
	height: clamp(3.125rem, 2.841rem + 1.21vw, 3.75rem);
	margin: 60px 0 0;
}
.pn_detail > * {
	height: 100%;
}
.pn_detail .detailpreviousBlk, .pn_detail .detailNextBlk {
	width: clamp(3.125rem, 2.841rem + 1.21vw, 3.75rem);
}
.pn_detail .detailpreviousBlk a, .pn_detail .detailNextBlk a {
	position: relative;
	display: grid;
	place-items: center;
	height: 100%;
}
.pn_detail a {
	background: #fff;
	border-radius: 5px;
}
@media screen and (min-width: 1025px) {
	.pn_detail a:hover {
		background: var(--pnHoverBg);
		opacity: .7;
	}
}
.pn_detail .detailpreviousBlk {}
.pn_detail .detailpreviousBlk a {
}
.pn_detail .detailpreviousBlk a::before, .pn_detail .detailpreviousBlk a::after {
	content: '';
	position: absolute;
	top: calc(50% + 2px);
	width: 12px;
	height: 12px;
	border-bottom: solid 2px #A19DD1;
	border-left: solid 2px #A19DD1;
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	transform: rotate(45deg) translate(-50%, -50%);
	transition: .3s;
}
.pn_detail .detailpreviousBlk a::before {
	left: calc(50% - 3px);
}
.pn_detail .detailpreviousBlk a::after {
	display: none;
	left: calc(50% - 43px);
}
/* @media screen and (min-width: 1025px) {
	.pn_detail .detailpreviousBlk a:hover::before, .pn_detail .detailpreviousBlk a:hover::after {
		border-bottom: solid 2px var(--pnHoverColor);
		border-left: solid 2px var(--pnHoverColor);
	}
} */
.pn_detail .detailNextBlk {}
.pn_detail .detailNextBlk a {}
@media screen and (min-width: 1025px){
	.pn_detail * a:hover {
		opacity: 1;
	}
}
.pn_detail .detailNextBlk a::before, .pn_detail .detailNextBlk a::after {
	content: '';
	position: absolute;
	top: calc(50% + 2px);
	width: 12px;
	height: 12px;
	border-top: solid 2px #A19DD1;
	border-right: solid 2px #A19DD1;
	transform: rotate(45deg) translate(-50%, -50%);
	transition: .3s;
}
.pn_detail .detailNextBlk a::before {
	right: calc(50% - 3px);
}
.pn_detail .detailNextBlk a::after {
	right: calc(50% - 43px);
	display: none;
}
/* @media screen and (min-width: 1025px) {
	.pn_detail .detailNextBlk a:hover::before, .pn_detail .detailNextBlk a:hover::after {
		border-top: solid 2px var(--pnHoverColor);
		border-right: solid 2px var(--pnHoverColor);
	}
} */
.pn_detail .detailBackBlk {
    flex: 1;
    max-width: 350px;
}
.pn_detail .detailBackBlk a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: clamp(0.938rem, 0.852rem + 0.36vw, 1.125rem);
	background: #d1cef2;
}
@media screen and (min-width: 1025px){
	.pn_detail .detailBackBlk a:hover {
		opacity: .7;
	}
}
@media screen and (max-width: 1024px) {
	.pn_detail {
		margin: 30px 0 0;
		padding: initial;
	}
	.pn_detail > * {}
	.pn_detail .detailpreviousBlk, .pn_detail .detailNextBlk {
	}
	.pn_detail .detailpreviousBlk a, .pn_detail .detailNextBlk a {
		width: 100%;
	}
	.pn_detail a {}
	.pn_detail .detailpreviousBlk {}
	.pn_detail .detailpreviousBlk a {
	}
	.pn_detail .detailpreviousBlk a::before, .pn_detail .detailpreviousBlk a::after {}
	.pn_detail .detailpreviousBlk a::before {
	}
	.pn_detail .detailpreviousBlk a::after {
		left: calc(50% - 40px);
	}
	.pn_detail .detailNextBlk {}
	.pn_detail .detailNextBlk a {
	}
	.pn_detail .detailNextBlk a::before, .pn_detail .detailNextBlk a::after {}
	.pn_detail .detailNextBlk a::before {
	}
	.pn_detail .detailNextBlk a::after {
		right: calc(50% - 47px);
	}
	.pn_detail .detailBackBlk {}
	.pn_detail .detailBackBlk a {}
}
/*
Form
====================================*/
/*
Input
----------------------------------------------------------------*/
.form_input {
	border: 1px solid #D7DCE2;
	border-bottom: transparent;
}
.form_input .inputRow {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #D7DCE2;
}
.form_input .inputItem {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 225px;
	font-size: 14px;
	background: var(--formItemBg);
	padding: 25px 22px 25px 22px;
	font-weight: 600;
	border-right: 1px solid #D7DCE2;
}
.form_input .inputItem ._must {
	font-size: 12px;
	color: #BF2121;
}
.form_input .inputValue {
	flex: 1;
	padding: 15px;
	display: flex;
	align-items: center;
}
.form_input .wpcf7-form-control-wrap {
	width: 100%;
}
/* input[text, tel, email], textarea */
.form_input input[type="text"], .form_input input[type="tel"], .form_input input[type="email"], .form_input textarea {
	width: 100%;
	height: 40px;
	border-radius: 6px;
	border: solid #707070 1px;
	padding: 0px 10px;
	font-size: 13px;
}
.form_input textarea {
	width: 100% !important;
	height: auto;
	padding: 10px;
}
.form_input input::placeholder, .form_input textarea::placeholder {
	font-size: 14px;
	color: #b4b7bc;
}
/* input[checkbox, radio] */
.form_input input[type="checkbox"], .form_input input[type="radio"] {
	width: 16px;
	height: 16px;
	cursor: pointer;
}
.form_input .wpcf7-form-control {
	display: flex;
	flex-direction: column;
	gap: 10px 0;
}
.form_input .wpcf7-list-item {
	margin: 0;
}
.form_input .wpcf7-list-item label {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}
.form_input .wpcf7-list-item-label {
	font-size: 14px;
}
/* input[file] */
.form_input input[type="file"] {
	font-size: 14px;
}
/* validation */
.form_input .wpcf7-not-valid-tip {
	width: 100%;
	font-size: 14px;
	margin: 10px 0 0;
}
/* agree */
.form_agree {
	margin: 40px 0 0;
	text-align: center;
}
.form_agree .wpcf7-list-item {
	margin: 0;
}
.form_agree label {
	display: flex;
	align-items: center;
	gap: 12px;
}
.form_agree .wpcf7-list-item-label {
	font-size: 13px;
}
.form_agree input[type="checkbox"] {
	width: 20px;
	height: 20px;
}
/* submit */
.form_submit {
	position: relative;
	width: 350px;
	text-align: center;
	margin: 40px auto 0;
}
.form_submit input[type="submit"] {
	width: 100%;
	height: 70px;
	font-size: 18px;
	color: #fff;
	transition: .3s;
	background: var(--mailBtnBg);
}
@media screen and (min-width: 1025px) {
	.form_submit input[type="submit"]:hover {
		opacity: .7;
	}
}
.form_submit .wpcf7-spinner {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}
@media screen and (max-width: 1024px) {
	.form_input {
		border: 1px solid #D7DCE2;
	}
	.form_input .inputRow {
		border-bottom: 1px solid #D7DCE2;
		flex-flow: wrap;
	}
	.form_input .inputRow:last-child {
		border-bottom: transparent;
	}
	.form_input .inputItem {
		justify-content: flex-start;
		width: 100%;
		padding: 20px 15px;
		border-right: transparent;
		gap: 20px;
	}
	.form_input .inputItem ._must {}
	.form_input .inputValue {}
	.form_input .wpcf7-form-control-wrap {}
	/* input[text, tel, email], textarea */
	.form_input input[type="text"], .form_input input[type="tel"], .form_input input[type="email"], .form_input textarea {
		font-size: 16px;
	}
	.form_input textarea {}
	.form_input input::placeholder, .form_input textarea::placeholder {}
	/* input[checkbox, radio] */
	.form_input input[type="checkbox"], .form_input input[type="radio"] {}
	.form_input .wpcf7-form-control {}
	.form_input .wpcf7-list-item {}
	.form_input .wpcf7-list-item label {}
	.form_input .wpcf7-list-item-label {}
	/* input[file] */
	.form_input input[type="file"] {}
	/* validation */
	.form_input .wpcf7-not-valid-tip {}
	/* agree */
	.form_agree {}
	.form_agree .wpcf7-list-item {}
	.form_agree label {}
	.form_agree .wpcf7-list-item-label {}
	.form_agree input[type="checkbox"] {}
	/* submit */
	.form_submit {
		margin: 30px auto 0;
		width: 100%;
		max-width: var(--maxWidth300);
	}
	.form_submit input[type="submit"] {
		height: 55px;
	}
	.form_submit .wpcf7-spinner {}
}
/*
Privacy Policy
----------------------------------------------------------------*/
.form_pp {
	margin: 60px 0 0;
	width: 100%;
	height: 270px;
	border-radius: 5px;
	background: #fff;
	border: 1px solid #cecece;
	padding: 30px 33px;
	overflow: auto;
}
.form_pp dl {}
.form_pp dt {
	font-size: 15px;
}
.form_pp dd {
	font-size: 13px;
	line-height: 22px;
	margin: 20px 0 0;
}
@media screen and (max-width: 1024px) {
	.form_pp {
		margin: 60px 0 0;
		width: 100%;
		height: 250px;
		padding: 30px 15px;
	}
	.form_pp dl {}
	.form_pp dt {
		font-size: 15px;
	}
	.form_pp dd {}
}
/*
Thanks & 404
====================================*/
.thanks_section {
	overflow: hidden;
	padding: 80px 0 150px;
}
.thanks_section .inner {}
.thanks_section .blk {}
.thanks_section .headBlk {
	width: 100vw;
	margin: 0 calc(50% - 50vw);
	padding: 20px 0;
	background: var(--contentsBg);
}
body._signUp .headBlk {
	background: #9de1ff;
}
.thanks_section .head {
	text-align: center;
	font-size: 24px;
}
.thanks_section .mainBlk {
	margin: 35px 0 0;
}
.thanks_section .mainDesc {
	font-size: 14px;
	line-height: 26px;
	text-align: center;
}
.error_section {
	overflow: hidden;
	padding: 80px 0 150px;
}
.error_section .inner {}
.error_section .blk {}
.error_section .headBlk {
	width: 100vw;
	margin: 0 calc(50% - 50vw);
	padding: 20px 0;
	background: var(--contentsBg);
}
.error_section .head {
	text-align: center;
	font-size: 30px;
	font-weight: 600;
}
.error_section .head span {
	font-size: 22px;
	display: block;
}
.error_section .mainBlk {
	margin: 35px 0 0;
}
.error_section .mainDesc {
	font-size: 14px;
	line-height: 26px;
	text-align: center;
}
.thanks_section .linkBlk, .error_section .linkBlk {
	text-align: center;
	margin: 45px 0 0;
}
.thanks_section .linkBlk a, .error_section .linkBlk a {
	display: inline-block;
	width: 250px;
	line-height: 40px;
	font-size: 14px;
	border: solid 1px var(--mainColor);
	border-radius: 30px;
}
@media screen and (min-width: 1025px) {
	.thanks_section .linkBlk a:hover, .error_section .linkBlk a:hover {
		opacity: 1;
		background: var(--mainColor);
		color: #fff;
	}
}
@media screen and (max-width: 1024px) {
	.thanks_section {
		padding: 60px 0 90px;
	}
	.thanks_section .inner {}
	.thanks_section .blk {}
	.thanks_section .headBlk {
		padding: 15px 0;
	}
	.thanks_section .head {
		text-align: center;
		font-size: 20px;
	}
	.thanks_section .mainBlk {
		margin: 30px 0 0;
	}
	.thanks_section .mainDesc {
		line-height: 24px;
	}
	.thanks_section .linkBlk {
		margin: 40px 0 0;
	}
	.error_section {
		padding: 40px 0 90px;
	}
	.error_section .inner {}
	.error_section .blk {}
	.error_section .headBlk {}
	.error_section .head {
		font-size: 24px;
	}
	.error_section .head span {
		font-size: 16px;
	}
	.error_section .mainBlk {
		margin: 30px 0 0;
	}
	.error_section .mainDesc {
		line-height: 24px;
	}
	.thanks_main .linkBlk a, .error_section .linkBlk a {}
}
/*====================================

3. Header

====================================*/
header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	width: 100%;
	height: 100px;
	/* height: clamp(4.063rem, 0.568rem + 5.45vw, 5rem); */
	/* box-shadow: 0 3px 6px rgb(0 0 0 / 16%); */
	background: white;
}
header .inner {
	height: 100%;
	padding: 0 clamp(0.938rem, -3.783rem + 7.37vw, 3.125rem);
}
header .blk {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0 clamp(0.938rem, -1.086rem + 3.16vw, 1.875rem);
	height: 100%;
}
body._signUp header .blk {
	justify-content: center;
}
header .logoBlk {
	flex-shrink: 0;
	display: flex;
}
header .logoBlk a {}
header .logoBlk a img {
	height: clamp(3.438rem, 0.74rem + 4.21vw, 4.688rem);
}
@media screen and (min-width: 1025px) {
	header .menuBlk {
		display: flex;
		flex-shrink: 0;
		height: 100%;
	}
	header .menuBlk nav {}
	header .menuBlk nav > ul {
		display: flex;
		gap: clamp(0.938rem, -1.086rem + 3.16vw, 1.875rem);
		height: 100%;
	}
	header .menuBlk nav > ul > li {
		position: relative;
		display: flex;
		align-items: center;
		height: 100%;
	}
	header .menuBlk nav > ul > li._ml {
		margin-left: 10px; 
	}
	header .menuBlk nav > ul > li > a {
		font-size: clamp(0.875rem, 0.74rem + 0.21vw, 0.938rem);
	}
	header .menuBlk nav > ul > li > a._active {
		color: var(--mainColor);
	}
	header .menuBlk nav > ul > li > a:hover {}
	@media screen and (min-width: 1025px) {
		header .menuBlk nav > ul > li:not(._contact) a:hover {
			color: var(--mailBtnBg);
			opacity:1;
		}
	}
	@media screen and (min-width: 1025px) {
		header .menuBlk nav > ul > li a:hover img {
			opacity:.7;
		}
	}
	header .menuBlk nav > ul > li > ul {
		position: absolute;
		top: 80%;
		left: -30px;
		left: clamp(-1.25rem, 1.08rem + -3.64vw, -1.875rem);
		display: flex;
		gap: 15px;
		flex-direction: column;
		background: #fff;
		box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
		z-index: 1;
		padding: clamp(1.25rem, -1.08rem + 3.64vw, 1.875rem);
		min-width: 190px;
		opacity: 0;
		background: #ebeaf5;
		visibility: hidden;
		transition: .3s;
		pointer-events: none;
	}
	header .menuBlk > nav > ul > li._parent:hover > ul {
		top: 100%;
		opacity: 1;
		visibility: visible;
		pointer-events: initial;
	}
	header .menuBlk nav > ul > li > ul > li {}
	header .menuBlk nav > ul > li > ul > li > a {
		font-size: 14px;
		white-space: nowrap;
	}
	header .menuBlk nav > ul > li > ul > li > a:hover {}
	header .menuBlk nav > ul > li._insta {
		width: 33.16px;
	}
	header .menuBlk nav > ul > li._contact {}
	header .menuBlk nav > ul > li._contact._tel {}
	header .menuBlk nav > ul > li._contact._mail {}
	header .menuBlk nav > ul > li._contact a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: clamp(9.375rem, 2.632rem + 10.53vw, 12.5rem);
		height: 55px;
		font-weight: 600;
		color: #fff;
		background: var(--mainColor);
	}
	header .menuBlk nav > ul > li._contact a:hover {
		opacity: 1;
	    background: var(--mainColorHover);
	}
	header .menuBlk nav > ul > li._contact > a > span {
		padding: 0 0 0 25px;
		line-height: 1;
		background-image: url(./images/icon_mail01_white.svg);
		background-repeat: no-repeat;
		background-position: left top 70%;
		background-size: 18px;
		background-size: clamp(1.063rem, 0.83rem + 0.36vw, 1.125rem);
	}
	/* _form */
	body._form header .blk {
		justify-content: center;
	}
	body._form header .menuBlk {
		display: none;
	}
}
@media screen and (max-width: 1024px) {
	header {
		height: 60px;
		box-shadow: none;
	}
	header .inner {
		background: white;
		padding: 0 5px 0 4%;
		/* box-shadow: 0 2px 10px rgb(0 0 0 / 5%); */
		margin: auto;
	}
	header .blk {}
	header .logoBlk {}
	header .logoBlk a {}
	header .logoBlk a img {
		height: 45px;
	}
	header .menuBlk {
		position: absolute;
		top: var(--headerH, 55px);
		left: 0;
		height: calc(100dvh - var(--headerH, 55px));
		z-index: -1;
		width: 100%;
		background: white;
		overflow: auto;
		padding: 20px 0 60px;
		opacity: 0;
		visibility: hidden;
		transition: .3s;
		display: block;
		flex-shrink: unset;
	}
	header .menuBlk::-webkit-scrollbar {
		display: none;
	}
	header._menuOpen .menuBlk {
		opacity: 1;
		visibility: visible;
	}
	header .menuBlk > * {
		width: 92%;
		max-width: var(--maxWidth768);
		margin: auto;
	}
	header .menuBlk nav {}
	header .menuBlk nav > ul {
		display: block;
		height: auto;
	}
	header .menuBlk nav > ul > li {
		position: relative;
		display: block;
		height: auto;
		border-bottom: 1px solid #ccc;
	}
	header .menuBlk nav > ul > li > span {
		position: absolute;
		top: 0;
		right: 0;
		height: 100%;
		width: 70px;
	}
	header .menuBlk nav > ul > li > a {
		display: flex;
		font-size: 15px;
		padding: 15px 10px;
	}
	header .menuBlk nav > ul > li._parent > a {
		position: relative;
	}
	header .menuBlk nav > ul > li._parent::before {
		content: '';
		border-style: solid;
		border-width: 5px 5px 0px 5px;
		border-color: var(--mainColor) transparent transparent transparent;
		position: absolute;
		top: 25px;
		right: 15px;
		transform: translateY(0%);
		transition: .3s;
	}
	header .menuBlk nav > ul > li._parent::before {
		transform: translateY(0%);
	}
	header .menuBlk nav > ul > li._parent._childOpen::before {
		transform: rotateX(180deg);
	}
	header .menuBlk nav > ul > li > ul {
		display: flex;
		flex-direction: column;
		gap: 0;
		margin: 0;
		padding: 0 0 0 20px;
		transition: .3s;
		position: unset;
		background: unset;
		box-shadow: unset;
		min-width: unset;
		opacity: unset;
		visibility: unset;
	}
	header .menuBlk nav > ul > li > ul {
		overflow-y: scroll;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	header .menuBlk nav > ul > li > ul::-webkit-scrollbar {
		display: none;
	}
	header .menuBlk > nav > ul > li._parent:hover > ul {
		top: 100%;
		opacity: unset;
		visibility: unset;
	}
	header .menuBlk nav > ul > li._childOpen > ul {
		gap: 15px 0;
		margin: 5px 0 20px;
	}
	header .menuBlk nav > ul > li > ul > li {
		height: 0;
		transition: .3s;
	}
	header .menuBlk nav > ul > li._childOpen > ul > li {
		height: auto;
	}
	header .menuBlk nav > ul > li > ul > li > a {
		font-size: 15px;
		opacity: 0;
		visibility: hidden;
	}
	header._menuOpen  .menuBlk nav > ul > li._childOpen > ul > li > a {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	header .menuBlk nav > ul > li._insta {
		margin-top: 28px;
		text-align: center;
		border-bottom: initial;
	}
	header .menuBlk nav > ul > li._insta a {
	    display: inline-block;
	    padding: initial;
	    justify-content: center;
	}
	header .menuBlk nav > ul > li._contact {
		margin-top: 25px;
		border-bottom: none;
		text-align: center;
	}
	header .menuBlk nav > ul > li._contact a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		max-width: 250px;
		height: 55px;
		border-radius: 5px;
		font-weight: 600;
		color: #fff;
		font-size: 16px;
		background: var(--mainColor);
	}
	header .menuBlk nav > ul > li._contact a > span {
		padding: 5px 0 5px 26px;
		line-height: 1;
		background-image: url(./images/icon_mail01_white.svg);
		background-repeat: no-repeat;
		background-position: left top calc(50% + 1px);
		background-size: 18px;
	}
	header .menuBlk nav > ul > li._contact._tel {
		margin: 40px 0 0;
	}
	header .menuBlk nav > ul > li._contact._tel > a {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 5px 0;
		flex-flow: wrap;
		padding: 15px 0;
		font-size: 26px;
		line-height: 23px;
		font-weight: 500;
		border: 1px solid;
		background: unset;
	}
	header .menuBlk nav > ul > li._contact._tel > a > ._num {
		padding: 0 0 0 20px;
		background-image: url(./images/icon_tel01_black.svg);
		background-repeat: no-repeat;
		background-position: left top 100%;
		background-size: 15px;
	}
	header .menuBlk nav > ul > li._contact._tel > a > ._time {
		width: 100%;
		font-size: 14px;
		text-align: center;
		color: black;
		line-height: 1;
		margin: 7px 0 0;
	}
	header .menuBlk nav > ul > li._contact._tel > a > img {
		height: 20px;
		margin: 4px 0 0;
		margin: 0 2px 0 0;
	}
	header .menuBlk nav > ul > li._contact._mail {
		margin: 35px auto 0;
	}
	header .menuBlk nav > ul > li._contact._mail > a {
		display: grid;
		place-items: center;
		padding: 15px 0;
		box-shadow: 0 3px 6px rgb(0 0 0 / 18%);
		height: auto;
		border-radius: 5px;
		color: white;
		font-weight: 600;
		font-size: 1.125rem;
		background: var(--mailBtnBg);
	}
	header .menuBlk nav > ul > li._contact._mail > a > img {
		height: 20px;
	}
	header .menuBlk nav > ul > li._contact._mail > a > span {
		padding: 27px 0 0;
		background-image: url(./images/icon_mail01_white.svg);
		background-repeat: no-repeat;
		background-position: left 50% top;
		background-size: 25px;
	}
	header .mbMenuBlk {
		position: relative;
		height: 100%;
		aspect-ratio: 1/1;
		cursor: pointer;
	}
	/*header .mbMenuBlk::before {
		content: 'MENU';
		color: #363A4D;
		font-size: 10px;
		position: absolute;
		top: 0;
		right: 0;
		right: 14px;
		top: 11px;
	}*/
	header .mbMenuBdrBlk, .mbMenuBdrBlk span {
		display: inline-block;
		box-sizing: border-box;
	}
	header .mbMenuBdrBlk {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 25px;
		height: auto;
		transform: translate(-50%, -50%);
	}
	header .mbMenuBdrBlk:focus:not(:focus-visible) {
		outline: none;
	}
	header .mbMenuBdrBlk::before, .mbMenuBdrBlk::after {
		content: '';
	}
	header .mbMenuBdrBlk::before, .mbMenuBdrBlk::after, .mbMenuBdrBlk span {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 2px;
		background: #333;
		border-radius: 4px;
		transition: .2s;
	}
	header .mbMenuBdrBlk::before {
		transform: rotate(45deg) scaleX(0);
	}
	header .mbMenuBdrBlk::after {
		transform: rotate(-45deg) scaleX(0);
	}
	header .mbMenuBdrBlk span:nth-of-type(1) {
		top: -8px;
		transition-delay: .2s;
	}
	header .mbMenuBdrBlk span:nth-of-type(2) {
		top: 0px;
		transition-delay: .2s;
	}
	header .mbMenuBdrBlk span:nth-of-type(3) {
		top: 8px;
		transition-delay: .2s;
	}
	header._menuOpen .mbMenuBdrBlk::before {
		transform: rotate(45deg) scaleX(1);
		transition-delay: .2s;
	}
	header._menuOpen .mbMenuBdrBlk::after {
		transform: rotate(-45deg) scaleX(1);
		transition-delay: .2s;
	}
	header._menuOpen .mbMenuBdrBlk span {
		transform: scaleX(0);
		transition-delay: 0s;
	}
	/* _form */
	body._form header .blk {
		justify-content: center;
	}
	body._form header .mbMenuBlk {
		display: none!important;
	}
}
/*====================================

4. Main

====================================*/
main {
	margin: var(--headerH, clamp(4.063rem, 0.568rem + 5.45vw, 5rem)) 0 0;
}
@media screen and (max-width: 1024px) {
	main {
		margin: var(--headerH, 55px) 0 0;
	}
}
/*====================================

5. Footer

====================================*/
footer {
	padding: 45px 0;
	background: #f5f3f0;
}
footer .inner {}
footer .blk {}
footer .mainBlk {
	justify-content: space-between;
	gap: clamp(6.25rem, -22.841rem + 45.45vw, 11.25rem);
}
body._signUp footer .mainBlk {
	justify-content: center;
}
footer .mainLeftBlk {}
footer .mainLogoBlk {}
body._form footer .mainLogoBlk {
	text-align: center;
}
footer .mainLogoBlk a {}
footer .mainLogoBlk img {
	height: clamp(2.625rem, 2.341rem + 1.21vw, 3.25rem);
}
footer .mainInfoBlk {
    display: none;
}
body._form footer .mainInfoBlk {
    display: block;
    margin-top: clamp(1.563rem, 1.278rem + 1.21vw, 2.188rem);
}
body._form footer .mainInfoBlk > ._info1 {
	font-size: 18px;
	text-align: center;
}
body._form footer .mainInfoBlk > ._info2 {
	margin-top: 15px;
	font-size: 14px;
	text-align: center;
}
footer .mainSnsBlk {
    margin-top: 30px;
    text-align: center;
}
footer .mainSnsBlk a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    width: 250px;
    height: 60px;
    color: #3d4750;
    border: 2px solid #f8d4e0;
    background: #fff;
}
footer .mainSnsBlk a img {}
footer .mainSnsBlk a span {
    font-weight: 600;
}
footer .menuBlk {
    flex: 1;
}
footer .menuBlk > ul {
	justify-content: flex-start;
	width: min(455px, 100%);
	gap: 20px 40px;
}
footer .menuBlk > ul > li {}
footer .menuBlk > ul > li > a {
	font-size: clamp(0.875rem, 0.847rem + 0.12vw, 0.938rem);
	font-weight: 600;
	color: #3d4750;
}
footer .menuBlk > ul > li > a._fsLarge {
    font-size: clamp(1rem, 0.972rem + 0.12vw, 1.063rem);
}
@media screen and (min-width: 1025px){
	footer .menuBlk > ul > li a:hover {
		color: #E6437A;
		opacity:1;
	}
}
footer .menuBlk > ul > li > ul {
	display: grid;
	gap: 8px;
	margin: 15px 0 0;
}
footer .menuBlk > ul > li > ul > li {}
footer .menuBlk > ul > li > ul > li > a {
	font-size: 14px;
}
footer .menuBlk .otherBlk {
	display: flex;
	gap: 20px;
	margin: 30px 0 0;
}
footer .menuBlk .otherBlk a {
	display: grid;
	place-items: center;
	flex: 1;
	height: clamp(4.375rem, 3.807rem + 2.42vw, 5.625rem);
	text-align: center;
	font-size: clamp(1rem, 0.943rem + 0.24vw, 1.125rem);
	font-weight: 600;
	border-radius: 10px;
	color: var(--mainColor2);
	line-height: 1.4;
	background: #fff;
	background-image: url(./images/icon_link01.svg);
	background-repeat: no-repeat;
	background-position: right 20px center;
	background-size: 20px;
}
@media screen and (min-width: 1025px){
	footer .menuBlk .otherBlk a:hover {
		opacity: 1;
	    color: var(--mainColor);
	}
}
footer .copyrightBlk {
	margin: 45px 0 0;
}
footer .copyrightBlk p {
	font-family: "Zen Maru Gothic";
	font-size: 0.75rem;
	font-weight: 700;
	color: #3d4750;
	text-align: center;
}
footer .recaptchaBlk {
	margin: 6px 0 0;
}
footer .recaptchaBlk p {
	font-family: "Zen Maru Gothic";
	font-size: 0.75rem;
	font-weight: 700;
	color: #3d4750;
	text-align: center;
}
body._form footer .mainBlk {
	justify-content: center;
}
body._form footer .menuBlk, 
body._form footer .mainSnsBlk {
	display: none;
}
@media screen and (max-width: 1024px) {
	footer .mainBlk {
		justify-content: center;
		gap: 35px;
	}
	footer .mainLeftBlk {
		order: 2;
	}
	footer .mainLogoBlk {
		text-align: center;
	}
	footer .menuBlk {
		order: 1;
		width: 100%;
		flex: unset;
	}
	footer .menuBlk {
		text-align: center;
	}
	footer .menuBlk > ul {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		align-items: center;
		gap: 20px 0;
		margin: auto;
	}
	footer .menuBlk > ul > li {
		text-align: center;
	}
	footer .menuBlk .otherBlk {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
		gap: 15px;
		margin: 35px 0 0;
	}
	footer .copyrightBlk {
		margin: 30px 0 0;
	}
	footer .copyrightBlk p {
		font-size: 0.875rem;
	}
	footer .recaptchaBlk {}
	footer .recaptchaBlk p {
		font-size: 0.875rem;
	}
}
/*====================================

6. Common Style

====================================*/
/*
6.1 Single
====================================*/
.cmn_bgColor {
	background-color: var(--contentsBg);
}
.cmn_outer {
	padding: clamp(3.75rem, 2.946rem + 3.43vw, 5.625rem) 0;
}
.cmn_outer._top {
	padding: clamp(3.75rem, 2.946rem + 3.43vw, 5.625rem) 0 0;
}
.cmn_inner {
	max-width: 1250px;
	padding: 0 50px;
	margin: auto;
}
.cmn_inner._small {
	max-width: 750px;
	padding: 0;
}
.cmn_link1 {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: clamp(3.438rem, 3.036rem + 1.71vw, 4.375rem);
	font-size: clamp(1rem, 0.946rem + 0.23vw, 1.125rem);
	color: #fff;
	border-radius: 50px;
	letter-spacing: 0.05em;
	font-weight: 600;
	background: var(--mainColor);
}
@media screen and (min-width: 1025px){
	.cmn_link1:hover {
		opacity: 1;
		background: var(--mainColorHover);
	}
}
/*head*/
.cmn_head1 {
	color: var(--mainColor2);
	letter-spacing: 0.05em;
	font-weight: 700;
}
.cmn_head1._center {
	text-align: center;
}
.cmn_head1._fs25px {
	font-size: clamp(1.125rem, 0.926rem + 0.85vw, 1.563rem);
}
.cmn_head1._fs30px {
	font-size: clamp(1.125rem, 0.784rem + 1.45vw, 1.875rem);
}
.cmn_head1._fs35px {
	font-size: clamp(1.375rem, 1.006rem + 1.58vw, 2.188rem);
}
.cmn_head1._fs40px {
	font-size: clamp(1.375rem, 0.864rem + 2.18vw, 2.5rem);
}
.cmn_head1._fs45px {
	font-size: clamp(1.375rem, 0.722rem + 2.79vw, 2.813rem);
}
.cmn_head1._fs50px {
	font-size: clamp(1.5rem, 0.761rem + 3.15vw, 3.125rem);
}
.cmn_head2 {
	color: var(--mainColor2);
	font-size: clamp(2.188rem, 1.25rem + 4vw, 4.375rem);
	line-height: 1.2;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.05em;
}
.cmn_head2 span {
	display: block;
	font-size: clamp(0.938rem, 0.804rem + 0.57vw, 1.25rem);
}
/*title*/
.cmn_title1 {
	font-size: 24px;
}
/*text*/
.cmn_text1 {
	font-size: 15px;
	line-height: 2;
}
/*border radius*/
.cmn_br5px {
	border-radius: 5px;
}
.cmn_br10px {
	border-radius: 10px;
}
.cmn_br15px {
	border-radius: clamp(0.625rem, 0.483rem + 0.61vw, 0.938rem);
}
.cmn_br20px {
	border-radius: clamp(0.625rem, 0.341rem + 1.21vw, 1.25rem);
}
.cmn_br30px {
	border-radius: clamp(0.625rem, 0.057rem + 2.42vw, 1.875rem);
}
@media screen and (max-width: 1024px) {
	.cmn_inner {
		width: 92%;
		max-width: var(--maxWidth768);
		padding: 0;
	}
	/*head*/
	.cmn_head1 {
		color: var(--mainColor2);
	}
	/*title*/
	.cmn_title1 {
		font-size: 18px;
	}
	/*text*/
	.cmn_text1 {
		font-size: 14px;
		line-height: 1.6;
	}
}
/*
6.2 Section
====================================*/
/* top1 */
.cmn_top1 {
    padding: clamp(1.875rem, 1.023rem + 3.64vw, 3.75rem) 0 clamp(3.75rem, 2.946rem + 3.43vw, 5.625rem);
}
.cmn_top1 .inner {
	height: 100%;
}
.cmn_top1 .box {
	height: 100%;
}
.cmn_top1 .topBox {
    position: relative;
}
.cmn_top1 .headBox {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0%, -50%);
}
.cmn_top1 .headBox > ._head {
    font-size: clamp(1.5rem, 0.903rem + 2.55vw, 2.813rem);
    font-weight: 700;
    line-height: calc(65 / 45);
    letter-spacing: 0.03em;
    color: var(--mainColor2);
}
.cmn_top1 .headBox > ._head span {
	display: block;
	margin-top: clamp(0.625rem, 0.483rem + 0.61vw, 0.938rem);
	font-size: clamp(0.875rem, 0.761rem + 0.48vw, 1.125rem);
}
.cmn_top1 .imgBox {
    text-align: center;
}
.cmn_top1 .imgBox img {
    max-height: clamp(12.5rem, 7.102rem + 23.03vw, 24.375rem);
}
.cmn_top1 .textBox {
    margin-top: clamp(1.563rem, 1.278rem + 1.21vw, 2.188rem);
}
.cmn_top1 .textBox p {
    text-align: center;
    color: var(--mainColor2);
    font-size: clamp(1.125rem, 0.926rem + 0.85vw, 1.563rem);
    font-weight: 600;
    line-height: calc(50 / 25);
    letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
	.cmn_top1 {}
}
/* top2 */
.cmn_top2 {
    height: clamp(7.5rem, 4.943rem + 10.91vw, 13.125rem);
}
.cmn_top2 .inner {
	height: 100%;
}
.cmn_top2 .box {
	height: 100%;
}
.cmn_top2 .headBox {
    display: flex;
    flex-flow: column;
    justify-content: center;
    height: 100%;
}
.cmn_top2 .headBox > ._head {
    font-weight: 700;
    font-size: clamp(1.5rem, 0.903rem + 2.55vw, 2.813rem);
    letter-spacing: 0.03em;
    color: var(--mainColor2);
    line-height: 1.4;
}
.cmn_top2 .headBox > ._head span {
    display: block;
    margin-top: clamp(0.313rem, 0.028rem + 1.21vw, 0.938rem);
    font-weight: 500;
    font-size: clamp(0.875rem, 0.761rem + 0.48vw, 1.125rem);
}
/* top3 */
.cmn_top3 {
    height: clamp(6.25rem, 3.409rem + 12.12vw, 12.5rem);
    background: var(--contentsBg);
}
.cmn_top3 .inner {
    height: 100%;
}
.cmn_top3 .box {
    height: 100%;
}
.cmn_top3 .headBox {
    display: grid;
    place-items: center;
    height: 100%;
}
.cmn_top3 .headBox > ._head {}
/* table */
.cmn_table > dl {padding: clamp(1.875rem, 1.307rem + 2.42vw, 3.125rem) clamp(0.938rem, -0.057rem + 4.24vw, 3.125rem);}
.cmn_table > dl > div {
	display: flex;
	flex-flow: wrap;
	border-top: 1px solid #ddd;
}
.cmn_table > dl > div:last-child {
	border-bottom: 1px solid #ddd;
}
.cmn_table > dl > div > * {
	padding: 20px 0;
}
.cmn_table > dl > div > dt {
	width: min(274px, 100%);
}
.cmn_table > dl > div > dd {
	flex: 1;
}
.cmn_table > dl > div > dd a {
	color: var(--linkTextColor);
}
.cmn_table > dl > div > dd a:not([href^="tel"]) {
	text-decoration: underline;
}
.cmn_table > dl > div > dd a[href^="tel"] {
	color: inherit;
}
@media screen and (max-width: 1024px) {
	/* table */
	.cmn_table > dl {
	}
	.cmn_table > dl > div {
		display: flex;
		flex-flow: wrap;
	}
	.cmn_table > dl > div:last-child {
		/* border-bottom: initial; */
	}
	.cmn_table > dl > div > * {
		padding: 20px 15px;
	}
	.cmn_table > dl > div > dt {
		width: 100%!important;
		padding: 15px 15px;
		border-right: transparent;
		background: var(--contentsBg);
	}
	.cmn_table > dl > div > dd {
		flex: unset;
		width: 100%;
	}
	.cmn_table > dl > div > dd a {}
	.cmn_table > dl > div > dd a[href^="tel"] {}
}
/* section1 */
.cmn_section1 {
    background: var(--contentsBg);
}
.cmn_section1 .inner {}
.cmn_section1 .box {}
.cmn_section1 .cmnBox {
    width: min(890px, 100%);
    margin: clamp(1.563rem, 1.021rem + 2.31vw, 2.5rem) auto 0;
    padding: clamp(1.563rem, 0.994rem + 2.42vw, 2.813rem) clamp(0.938rem, 0.085rem + 3.64vw, 2.813rem);
    background: #fff;
}
.cmn_section1 .headBox {}
.cmn_section1 .headBox > ._head {
    text-align: center;
    font-weight: 700;
    line-height: 1.4;
}
.cmn_section1 .textBox {
    margin-top: clamp(1.25rem, 0.824rem + 1.82vw, 2.188rem);
}
.cmn_section1 .textBox p {
    text-align: center;
    font-size: clamp(1rem, 0.886rem + 0.48vw, 1.25rem);
    letter-spacing: 0.05em;
    line-height: calc(40 / 20);
}
.cmn_section1 .noteBox {
    margin-top: clamp(0.625rem, 0.341rem + 1.21vw, 1.25rem);
}
.cmn_section1 .noteBox p {
    display: table;
    margin: auto;
    font-size: clamp(0.875rem, 0.847rem + 0.12vw, 0.938rem);
    letter-spacing: 0.05em;
}
.cmn_section1 .item1Box {
    margin: clamp(1.563rem, 1.278rem + 1.21vw, 2.188rem) clamp(0rem, -0.568rem + 2.42vw, 1.25rem) 0;
}
.cmn_section1 .item1Box dl {
    justify-content: center;
    align-items: stretch;
    gap: clamp(0.938rem, 0.511rem + 1.82vw, 1.875rem);
}
.cmn_section1 .item1Box dl > div {
    overflow: hidden;
    flex: 1;
    max-width: calc((100% - (30px * 2)) / 3);
    background: #fff;
}
@media screen and (max-width: 1024px) {
	.cmn_section1 .item1Box dl > div {
	    flex: initial;
	    width: min(375px, 100%);
	    max-width: initial;
	}
}
.cmn_section1 .item1Box dl dt {
    display: grid;
    place-items: center;
    min-height: clamp(2.813rem, 2.386rem + 1.82vw, 3.75rem);
    padding: 5px;
    text-align: center;
    font-size: clamp(1.125rem, 1.011rem + 0.48vw, 1.375rem);
    letter-spacing: 0.05em;
    color: #fff;
    font-weight: 500;
    background: var(--mainColor2);
}
.cmn_section1 .item1Box dl dd {
	display: grid;
	place-items: center;
	min-height: clamp(6.25rem, 4.83rem + 6.06vw, 9.375rem);
	padding: clamp(0.938rem, 0.653rem + 1.21vw, 1.563rem);
}
.cmn_section1 .item1Box dl dd ul {display: grid;gap: 5px;}
.cmn_section1 .item1Box dl dd ul li {
    padding-left: 1.5em;
    font-size: clamp(1rem, 0.943rem + 0.24vw, 1.125rem);
    letter-spacing: 0.05em;
    background-image: url(./images/icon_check01_color01.svg);
    background-repeat: no-repeat;
    background-position: left top 50%;
    background-size: clamp(1.125rem, 1.011rem + 0.48vw, 1.375rem);
}
.cmn_section1 .item2Box {}
.cmn_section1 .item2Box > ._head {
    font-weight: 700;
    text-align: center;
}
.cmn_section1 .item2Box > ._desc {
	margin: 15px 0 10px;
	text-align: center;
	font-size: clamp(0.875rem, 0.761rem + 0.48vw, 1.125rem);
	letter-spacing: 0.05em;
	line-height: calc(35/18);
}
@media screen and (max-width: 1024px) {
	.cmn_section1 .item2Box > ._desc {
		text-align: justify;
	}
}
.cmn_section1 .item2ListBox {
    margin-top: 20px;
}
.cmn_section1 .item2ListBox ul {
    display: grid;
    gap: clamp(0.938rem, 0.795rem + 0.61vw, 1.25rem);
}
.cmn_section1 .item2ListBox ul li {
    margin: 0 50px;
    padding: clamp(0.938rem, 0.653rem + 1.21vw, 1.563rem);
    font-size: clamp(1rem, 0.886rem + 0.48vw, 1.25rem);
    text-align: center;
    letter-spacing: 0.05em;
    font-weight: 600;
    border-radius: 100px;
    background: #f5f3f0;
}
@media screen and (max-width: 1024px) {
	.cmn_section1 .item2ListBox ul li {
		margin: initial;
	}
}
.cmn_section1 .item2ListBox ul li a {
    padding-right: 1.5em;
    background-image: url(./images/icon_link01.svg);
    background-repeat: no-repeat;
    background-position: right top 50%;
    background-size: 1em;
}
@media screen and (min-width: 1025px){
	.cmn_section1 .item2ListBox ul li a:hover {
		opacity: 1;
		color: var(--mainColor);
	}
}
.cmn_section1 .item2ListBox ul li span {
    color: var(--mainColor);
}
.cmn_section1 .item2ListBox ul li div {
    font-size: clamp(0.813rem, 0.756rem + 0.24vw, 0.938rem);
}
.cmn_section1 .item3Box {}
.cmn_section1 .item3TopBox {
    position: relative;
    padding: 0 100px 30px;
    border-bottom: 1px solid #ddd;
}
@media screen and (max-width: 1024px) {
	.cmn_section1 .item3TopBox {
	    position: relative;
	    padding: 0 0 20px;
	    border-bottom: 1px solid #ddd;
	}
}
.cmn_section1 .item3TopBox::before,
.cmn_section1 .item3TopBox::after {
	content:'';
	position: absolute;
	top: calc(50% - 15px);
	right: 0;
	transform: translate(0%, -50%) scale(-1, 1);
	display: inline-block;
	width: 80px;
	aspect-ratio: 1/1.685;
	background-image: url(./images/icon_leaf01.svg);
	background-repeat: no-repeat;
	background-size: 100%;
}
.cmn_section1 .item3TopBox::after {
	left: 0;
	transform: translate(0%, -50%);
}
.cmn_section1 .item3TopBox > ._head {
    text-align: center;
}
.cmn_section1 .item3TopBox p {
    margin-top: 10px;
    font-size: clamp(0.875rem, 0.79rem + 0.36vw, 1.063rem);
    line-height: 2;
    text-align: center;
}
@media screen and (max-width: 1024px) {
	.cmn_section1 .item3TopBox::before,
	.cmn_section1 .item3TopBox::after {
		top: -3px;
		left: calc(50% + clamp(8.125rem, 0.798rem + 33.49vw, 16.875rem));
		right: initial;
		transform: translate(-50%, 0%) scale(-1, 1);
		width: clamp(2.063rem, 1.764rem + 1.27vw, 2.375rem);
	}
	.cmn_section1 .item3TopBox:after {
		left: calc(50% - clamp(8.125rem, 0.798rem + 33.49vw, 16.875rem));
		transform: translate(-50%, 0%);
	}
	.cmn_section1 .item3TopBox > ._head {
		padding: 0 25px;
	}
	.cmn_section1 .item3TopBox p {
	    margin-top: 20px;
	}
}
.cmn_section1 .item3DescBox {
    width: min(582px, 100%);
    margin: 25px auto 0;
}
.cmn_section1 .item3DescBox dl {
    display: grid;
    gap: 20px;
}
.cmn_section1 .item3DescBox dl > div {}
.cmn_section1 .item3DescBox dl dt {
    width: clamp(5.625rem, 5.028rem + 2.55vw, 6.938rem);
    color: var(--mainColor2);
    letter-spacing: 0.05em;
}
.cmn_section1 .item3DescBox dl dd {
    flex: 1;
    font-size: 14px;
    letter-spacing: 0.05em;
}
.cmn_section1._type2 {
    background: #fff;
}
.cmn_section1._type2 .cmnBox {
    background: var(--contentsBg);
}
.cmn_section1._type2 .item2ListBox ul li {
	background: #fff;
}
/* section2 */
.cmn_section2 {
    background: var(--contentsBg);
}
.cmn_section2 .inner {}
.cmn_section2 .box {}
.cmn_section2 .headBox {}
.cmn_section2 .headBox > ._head {
    text-align: center;
}
.cmn_section2 .mainBox {
    width: min(890px,100%);
    margin: clamp(1.25rem, 0.966rem + 1.21vw, 1.875rem) auto 0;
    padding: clamp(1.563rem, 1.136rem + 1.82vw, 2.5rem) clamp(0.938rem, 0.227rem + 3.03vw, 2.5rem);
    background: #fff;
}
.cmn_section2 .mainBox > ._head {
    text-align: center;
}
.cmn_section2 .main1Box {
    gap: clamp(1.563rem, 1.136rem + 1.82vw, 2.5rem);
    margin-top: 25px;
}
.cmn_section2 .main1ImgBox {
    width: calc(50% - 185px);
}
@media screen and (max-width: 1024px) {
	.cmn_section2 .main1ImgBox {
	    width: 40%;
	    margin: auto;
	    text-align: center;
	}
}
.cmn_section2 .main1ImgBox img {}
.cmn_section2 .main1TextBox {
    flex: 1;
}
@media screen and (max-width: 1024px) {
	.cmn_section2 .main1TextBox {
	    flex: initial;
		width: 100%;
	}
}
.cmn_section2 .main1TextBox > ._head{
    color: var(--mainColor);
    font-size: clamp(1rem, 0.886rem + 0.48vw, 1.25rem);
    letter-spacing: 0.05em;
    line-height: calc(35 / 20);
}
.cmn_section2 .main1TextBox > p {
    margin-top: 15px;
    line-height: 2;
}
.cmn_section2 .main2Box {
    margin-top: clamp(1.563rem, 1.278rem + 1.21vw, 2.188rem);
    padding: clamp(1.563rem, 1.42rem + 0.61vw, 1.875rem) clamp(0.938rem, -0.199rem + 4.85vw, 3.438rem);
    background: #f5f3f0;
}
.cmn_section2 .main2Box > ._head {
    text-align: center;
    color: var(--mainColor2);
    font-weight: 700;
    font-size: clamp(1.125rem, 1.068rem + 0.24vw, 1.25rem);
    letter-spacing: 0.05em;
}
.cmn_section2 .main2Box > p {
    margin-top: 12px;
    line-height: 2;
}
.cmn_section2 .main2Box > span {
    display: block;
    margin-top: 12px;
    text-align: right;
    line-height: 2;
}
/* section3 */
.cmn_section3 {
}
.cmn_section3 .inner {}
.cmn_section3 .box {}
.cmn_section3 .headBox {}
.cmn_section3 .headBox > ._head {
    text-align: center;
}
.cmn_section3 .mainBox {
    width: min(700px, 100%);
    margin: clamp(1.25rem, 1.108rem + 0.61vw, 1.563rem) auto 0;
}
.cmn_section3 .mainBox dl {
	letter-spacing: 0.05em;
}
.cmn_section3 .mainBox dl > div {
    padding: clamp(0.938rem, 0.795rem + 0.61vw, 1.25rem) 0;
    border-top: 1px solid #ddd;
}
.cmn_section3 .mainBox dl > div:last-child {
    border-bottom: 1px solid #ddd;
}
.cmn_section3 .mainBox dt {
    text-indent: -2em;
    margin-left: 2em;
    color: var(--mainColor);
    font-weight: 700;
    font-size: clamp(1rem, 0.886rem + 0.48vw, 1.25rem);
}
.cmn_section3 .mainBox dt span {}
.cmn_section3 .mainBox dd {
    text-indent: -2em;
    margin-left: 2em;
    color: var(--mainColor2);
}
.cmn_section3 .mainBox dd span {}
.cmn_section3 .mainBox dt span,
.cmn_section3 .mainBox dd span {
    margin-right: 5px;
    font-weight: 700;
    font-size: clamp(1.5rem, 1.33rem + 0.73vw, 1.875rem);
}
/* section4 */
.cmn_section4 {
	padding-top: clamp(2.813rem, 1.534rem + 5.45vw, 5.625rem);
}
.cmn_section4 .inner {}
.cmn_section4 .box {}
.cmn_section4 .headBox {}
.cmn_section4 .headBox > ._head {}
.cmn_section4 .mainBox {
    width: min(700px, 100%);
    margin: clamp(1.563rem, 0.994rem + 2.42vw, 2.813rem) auto 0;
}
.cmn_section4 .mainBox > dl {
    display: grid;
    gap: clamp(2.188rem, 2.045rem + 0.61vw, 2.5rem);
}
.cmn_section4 .mainBox > dl > div {}
.cmn_section4 .mainBox > dl > div > dt {
    font-size: clamp(1rem, 0.943rem + 0.24vw, 1.125rem);
    color: var(--mainColor2);
}
.cmn_section4 .mainBox > dl > div > dd {
    margin-top: 10px;
    font-size: clamp(0.875rem, 0.847rem + 0.12vw, 0.938rem);
}
.cmn_section4 .mainBox > dl > div > dd a {
    color: #2985d8;
}
/* form */
.cmn_form {
	padding: 50px 0;
	background: #9de1ff;
}
.cmn_form .inner {}
.cmn_form .box {
	padding: clamp(1.875rem, 1.307rem + 2.42vw, 3.125rem) clamp(0rem, -1.42rem + 6.06vw, 3.125rem);
	border-radius: 5px;
	background: #fff;
}
@media screen and (max-width: 1024px) {
	.cmn_form .box {
		overflow: hidden;
		padding-bottom: 0;
	}
}
.cmn_form .headBox {
}
.cmn_form .headBox > ._head {
    padding: 0 15px;
}
.cmn_form .leadBox {
	margin-top: clamp(1.25rem, 1.108rem + 0.61vw, 1.563rem);
}
.cmn_form .leadBox p {
	padding: 0 15px;
	font-size: clamp(0.875rem, 0.761rem + 0.48vw, 1.125rem);
	text-align: center;
}
.cmn_form .mainBox {
	margin-top: clamp(1.875rem, 1.733rem + 0.61vw, 2.188rem);
}
/*====================================

7. Module

====================================*/
.mod_modal {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999999;
	width: 100%;
	height: 100dvh;
	background-color: rgb(51, 51, 51, 65%);
	transition: all .5s;
	opacity: 0;
	visibility: hidden;
}
.mod_modal._open {
	opacity: 1;
	visibility: visible;
}
.mod_modal .layer {
	width: 100%;
	height: 100%;
}
.mod_modal .inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: calc(100% - 80px);
	max-height: 85%;
	min-height: 400px;
	padding: 90px 60px 60px;
	border-radius: 10px;
	background: #fff;
}
.mod_modal .blk {
	overflow-y: auto;
	height: 100%;
}
.mod_modal .closeBtn {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 2px solid #989EA7;
	background: #fff;
	pointer-events: auto;
	cursor: pointer;
	transition: all .3s;
}
.mod_modal .closeBtn::before, .mod_modal .closeBtn::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 45%;
	height: 2px;
	background: #989EA7;
	border-radius: 4px;
	transition: all .3s;
}
.mod_modal .closeBtn::before {
	transform: translate(-50%, -50%) rotate(45deg);
}
.mod_modal .closeBtn::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
@media screen and (min-width: 1025px) {
	.mod_modal .closeBtn:hover {
		background: #989EA7;
		opacity: 1;
	}
	.mod_modal .closeBtn:hover::before, .mod_modal .closeBtn:hover::after {
		background: #fff;
	}
}
.mod_modal .mainBlk {}
@media screen and (max-width: 1024px) {
	.mod_modal {}
	.mod_modal._open {}
	.mod_modal .layer {
	}
	.mod_modal .inner {
		width: 92%;
		min-height: 45%;
		max-height: 85%;
		padding: 60px 15px 40px;
	}
	.mod_modal .blk {
	}
	.mod_modal .closeBtn {
		position: absolute;
		top: 15px;
		right: 15px;
		width: 30px;
		height: 30px;
		border-radius: 50%;
		border: 2px solid #989EA7;
		background: #fff;
		pointer-events: auto;
		cursor: pointer;
		transition: all .3s;
	}
	.mod_modal .closeBtn::before, .mod_modal .closeBtn::after {
		content: '';
		position: absolute;
		top: 50%;
		left: 50%;
		width: 45%;
		height: 2px;
		background: #989EA7;
		border-radius: 4px;
		transition: all .3s;
	}
	.mod_modal .closeBtn::before {
		transform: translate(-50%, -50%) rotate(45deg);
	}
	.mod_modal .closeBtn::after {
		transform: translate(-50%, -50%) rotate(-45deg);
	}
	.mod_modal .mainBlk {}
}
/* float link */
.mod_floatLink {
    top: 855px;
    z-index: 1;
}
#news .mod_floatLink {
    top: 398px;
}
.mod_floatLink a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 215px;
    font-weight: 600;
    font-size: 18px;
    color: #fff;
    border-radius: 15px 0px 0px 15px;
    letter-spacing: 3px;
    background: var(--mainColor);
}
@media screen and (min-width: 1025px){
	.mod_floatLink a:hover {
		opacity: 1;
	    background: var(--mainColorHover);
	}
}
.mod_floatLink a span {
	padding-top: 21px;
	background-image: url(./images/icon_mail01_white.svg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 20px;
}
/* contact */
.mod_contact {}
.mod_contact .inner {}
.mod_contact .box {
    position: relative;
    padding: clamp(2.188rem, 1.477rem + 3.03vw, 3.75rem) clamp(0.938rem, 0.511rem + 1.82vw, 1.875rem);
    background: #9de1ff;
}
.mod_contact .headBox {
    position: absolute;
    top: calc(0px - clamp(0.063rem, 0.006rem + 0.24vw, 0.188rem));
    left: 50%;
    transform: translate(-50%, -50%);
}
.mod_contact .headBox > ._head {
}
.mod_contact .mainBox {
    align-items: center;
    gap: clamp(1.563rem, 1.136rem + 1.82vw, 2.5rem);
}
.mod_contact .mainImgBox {
    width: calc(50% - 265px);
}
@media screen and (max-width: 1024px) {
	.mod_contact .mainImgBox {
	    width: 50%;
	    margin: auto;
	    text-align: center;
	}
}
.mod_contact .mainImgBox img {}
.mod_contact .mainTextBox {
    flex: 1;
}
@media screen and (max-width: 1024px) {
	.mod_contact .mainTextBox {
	    flex: initial;
		width: 100%;
	}
}
.mod_contact .mainTextBox > p {
    font-size: clamp(1rem, 0.744rem + 1.09vw, 1.563rem);
    letter-spacing: 0.05em;
    font-weight: 700;
    line-height: 2;
}
.mod_contact .mainTextLinkBox {
    margin-top: clamp(1.563rem, 1.42rem + 0.61vw, 1.875rem);
}
.mod_contact .mainTextLinkBox a {
    display: inline-grid;
    place-items: center;
    width: min(450px, 100%);
	height: clamp(4.063rem, 3.068rem + 4.24vw, 6.25rem);
	font-size: clamp(1rem, 0.886rem + 0.48vw, 1.25rem);
    letter-spacing: 0.05em;
    font-weight: 700;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 60px;
    background: #fff;
}
@media screen and (min-width: 1025px){
	.mod_contact .mainTextLinkBox a:hover {
		opacity: 1;
	    color: var(--mainColor);
	}
}
@media screen and (max-width: 1024px) {
	.mod_contact .mainTextLinkBox {
	    text-align: center;
	}
}
/*====================================

8. Page

====================================*/
/*
Top
====================================*/
/*common start*/
.top_cmn_head {
	text-align: center;
	color: var(--mainColor2);
}
/*common end*/
/* top > mv */
.top_mv {}
.top_mv .inner {
	height: 100%;
}
.top_mv .blk {
	position: relative;
	height: 100%;
	padding: 159px 0;
	background-image: url(./images/top_mv_single01.webp);
	background-repeat: no-repeat;
	background-size: 71%;
	background-position: right;
}
.top_mv .catchBlk {}
.top_mv .catchBlk > ._catch {
	font-family: "Zen Maru Gothic";
	font-weight: 500;
	font-size: clamp(1.75rem, 1.161rem + 2.51vw, 3.125rem);
	letter-spacing: 5px;
}
.top_mv .catchBlk > ._catch span {
	position: relative;
}
.top_mv .catchBlk > ._catch span::before {
	content:'';
	position: absolute;
	top: -6px;
	left: calc(50% - 2px);
	transform: translate(-50%, 0%);
	display: inline-block;
	border-radius: 50%;
	width: 9px;
	aspect-ratio: 1;
	background: var(--mainColor2);
}
.top_mv .catchBlk > ._catch span:nth-child(odd)::before {
	background: #e6437a;
}
.top_mv .catchBlk > ._subCatch {
	margin: clamp(0.625rem, 0.411rem + 0.91vw, 1.125rem) 0 0;
	font-size: clamp(1rem, 0.893rem + 0.46vw, 1.25rem);
	line-height: 2;
	letter-spacing: 2px;
}
/* top > info */
.top_info {
    padding: clamp(2.5rem, 1.161rem + 5.71vw, 5.625rem) 0 0!important;
}
.top_info .inner {}
.top_info .blk {
	position: relative;
	margin: 0 100px;
	padding: clamp(0.938rem, 0.804rem + 0.57vw, 1.25rem) clamp(0.938rem, 0.268rem + 2.86vw, 2.5rem) clamp(1.563rem, 1.295rem + 1.14vw, 2.188rem);
	background: #ebeaf5;
}
.top_info .headBlk {
    position: relative;
}
.top_info .headBlk > ._head {}
.top_info .headLinkBlk {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0, -50%);
    color: var(--mainColor2);
}
.top_info .headLinkBlk a {
	font-size: 16px;
	text-decoration: underline;
}
.top_info .mainBlk {
	margin: 10px 0 0;
}
.top_info .mainBlk article {}
.top_info .mainBlk a {
	position: relative;
	display: block;
	height: 100%;
	padding: clamp(0.938rem, 0.67rem + 1.14vw, 1.563rem) clamp(0.938rem, 0.536rem + 1.71vw, 1.875rem);
	padding-right: clamp(2.813rem, 2.277rem + 2.29vw, 4.063rem);
	background: #fff;
}
@media screen and (min-width: 1025px){
	.top_info .mainBlk a:hover {
		opacity: 1;
		background: #f9f9f9;
	}
}
.top_info .mainBlk a > ._date {
	font-size: 15px;
	font-weight: 600;
}
.top_info .mainBlk a > ._title {
	margin: 5px 0 0;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.77;
}
.top_info .mainBlk a > ._desc {
	margin: 8px 0 0;
	font-size: clamp(0.875rem, 0.848rem + 0.11vw, 0.938rem);
	line-height: 2;
}
/* top > service */
.top_service {}
.top_service .inner {}
.top_service .blk {}
.top_service .headBlk {}
.top_service .headBlk > ._head {
}
.top_service .leadBlk {
	margin: clamp(1.25rem, 1.116rem + 0.57vw, 1.563rem) 0 0;
	font-weight: 600;
}
.top_service .leadBlk p {
	display: table;
	margin: auto;
	font-size: clamp(1rem, 0.893rem + 0.46vw, 1.25rem);
	line-height: 2;
}
.top_service .mainBlk {
	align-items: stretch;
	gap: clamp(0.938rem, 0.215rem + 3.08vw, 2.188rem);
	margin: clamp(1.875rem, 1.333rem + 2.31vw, 2.813rem) 0 0;
}
.top_service .mainBlk > div {
	flex: 1;
	padding: 30px clamp(0.938rem, 0.536rem + 1.71vw, 1.875rem);
	background: #ebeaf5;
}
.top_service .mainBlk > div > ._head {
	font-weight: bold;
	font-size: clamp(1.25rem, 1.143rem + 0.46vw, 1.5rem);
	letter-spacing: 0.05em;
	line-height: 35px;
	text-align: center;
	color: #3b3b6d;
}
.top_service .mainBlk > div > ._head span._en {
	display: block;
	margin-bottom: clamp(0.313rem, 0.179rem + 0.57vw, 0.625rem);
	color: #3b3b6d;
	font-size: 16px;
	line-height: 1;
}
.top_service .mainBlk > div > ._head span._color {
	color: var(--mailBtnBg);
}
.top_service .mainImgBlk {
	margin: 5px 0 0;
	text-align: center;
}
.top_service .mainImgBlk img {}
.top_service .mainBlk > div > ._lead {
	margin: 10px 0 0;
	font-size: clamp(1rem, 0.893rem + 0.46vw, 1.25rem);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.75;
	text-align: center;
}
.top_service .mainLinkBlk {
    margin: 20px auto 0;
    text-align: center;
}
.top_service .mainLinkBlk a {
	max-width: var(--maxWidth300);
}
@media screen and (min-width: 1025px){
	.top_service .mainLinkBlk a:hover {
		opacity: 1;
	}
}
.top_service .certificationBlk {
	margin: clamp(2.5rem, 2.232rem + 1.14vw, 3.125rem) 75px 0;
	padding: clamp(1.563rem, 1.161rem + 1.71vw, 2.5rem) clamp(0.938rem, 0.268rem + 2.86vw, 2.5rem);
	border: solid clamp(0.938rem, 0.536rem + 1.71vw, 1.875rem) #ebeaf5;
	text-align: center;
}
.top_service .certificationBlk > div {
	display: inline-block;
	position: relative;
}
.top_service .certificationBlk > div::before,
.top_service .certificationBlk > div::after {
	content:'';
	position: absolute;
	top: 50%;
	left: 100%;
	transform: translate(0%, -50%) scale(-1, 1);
	display: inline-block;
	width: 104.11px;
	aspect-ratio: 1/1.685;
	background-image: url(./images/icon_leaf01.svg);
	background-repeat: no-repeat;
	background-size: 100%;
}
.top_service .certificationBlk > div::after {
	left: initial;
	right: 100%;
	transform: translate(0%, -50%);
}
.top_service .certificationBlk > div > ._title {
	font-size: clamp(1.25rem, 0.982rem + 1.14vw, 1.875rem);
	font-weight: 600;
	letter-spacing: initial;
}
.top_service .certificationBlk > div > ._title span {
	display: block;
	margin: 6px 0 0;
	font-size: clamp(0.875rem, 0.768rem + 0.46vw, 1.125rem);
}
.top_service .certificationBlk > div > ._desc {
	margin-top: clamp(0.938rem, 0.795rem + 0.61vw, 1.25rem);
	text-align: center;
	font-size: clamp(0.875rem, 0.847rem + 0.12vw, 0.938rem);
	line-height: 2;
}
/* top > aboutUs */
.top_aboutUs {}
.top_aboutUs .inner {}
.top_aboutUs .headBlk {}
.top_aboutUs .headBlk > ._head {}
.top_aboutUs .headBlk > ._head span {}
.top_aboutUs .mainBlk {
	margin-top: clamp(1.25rem, 0.824rem + 1.82vw, 2.188rem);
	padding: clamp(1.563rem, 0.852rem + 3.03vw, 3.125rem) clamp(0.938rem, -0.483rem + 6.06vw, 4.063rem);
	background: #f5f3f0;
}
.top_aboutUs .mainTopBlk {
	padding: clamp(1.563rem, 0.852rem + 3.03vw, 3.125rem) 15px;
	font-weight: 600;
	background: #fff;
}
.top_aboutUs .mainTopImgBlk {
	text-align: center;
}
.top_aboutUs .mainTopImgBlk img {
	width: min(clamp(10.625rem, 8.409rem + 9.45vw, 15.5rem), 100%);
}
.top_aboutUs .mainTopTextBlk {
    position: relative;
    display: grid;
    gap: 30px;
    margin-top: clamp(0.938rem, 0.653rem + 1.21vw, 1.563rem);
}
.top_aboutUs .mainTopTextBlk::before{
	content:'';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, 0%);
	display:inline-block;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	width: 10px;
	aspect-ratio: 1;
	background: var(--mainColor2);
}
.top_aboutUs .mainTopTextBlk p {letter-spacing: initial;}
.top_aboutUs .mainTopTextBlk p span {
	font-size: clamp(1rem, 0.943rem + 0.24vw, 1.125rem);
}
.top_aboutUs .mainDescBlk {
    width: min(700px, 100%);
    margin: clamp(1.875rem, 1.591rem + 1.21vw, 2.5rem) auto 0;
}
.top_aboutUs .mainDescBlk ._head {
	text-align: center;
	font-size: clamp(1.125rem, 0.926rem + 0.85vw, 1.563rem);
}
.top_aboutUs .mainDescBlk ._desc {
	margin: 20px 0 0;
	line-height: 2;
}
.top_aboutUs .mainLinkBlk {
	margin-top: clamp(1.875rem, 1.591rem + 1.21vw, 2.5rem);
	text-align: center;
}
.top_aboutUs .mainLinkBlk a {
    max-width: var(--maxWidth300);
}
/* top > recruit */
.top_recruit {}
.top_recruit .inner {}
.top_recruit .headBlk {}
.top_recruit .headBlk > ._head {}
.top_recruit .headBlk > ._head span {}
.top_recruit .mainBlk {
	display: flex;
	flex-flow: column;
	justify-content: center;
	width: min(950px, 100%);
	aspect-ratio: 950 / 500;
	margin: clamp(1.563rem, 1.278rem + 1.21vw, 2.188rem) auto 0;
	padding: 30px clamp(0.938rem, -0.909rem + 7.88vw, 5rem);
	background-image: url(./images/top_recruit_mainBg01.webp);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 65% center;
}
.top_recruit .mainBlk ._head {
	font-size: clamp(1.125rem, 0.841rem + 1.21vw, 1.75rem);
	color: var(--mainColor);
}
.top_recruit .mainBlk ._desc {
	margin-top: 20px;
	font-size: clamp(0.875rem, 0.648rem + 0.97vw, 1.375rem);
	line-height: 1.909;
}
.top_recruit .mainLinkBlk {
	margin-top: clamp(1.875rem, 1.591rem + 1.21vw, 2.5rem);
}
.top_recruit .mainLinkBlk a {
    max-width: var(--maxWidth300);
}
@media screen and (max-width: 1024px) {
	/*common start*/
	/*common end*/
	/* top > mv */
	.top_mv .blk {
		padding: 77% 0 0;
		background-size: 100%;
		background-position: center top;
	}
	.top_mv .catchBlk > ._subCatch {
		line-height: 1.6;
	}
	/* top > info */
	.top_info .blk {
		margin: initial;
	}
	.top_info .mainBlk {
		gap: 15px;
		margin: 10px 0 0;
	}
	.top_info .mainBlk a > ._desc {
		line-height: 1.6;
	}
	/* top > service */
	.top_service .leadBlk p {
		line-height: 1.8;
	}
	.top_service .mainBlk > div {
		flex: initial;
		width: 100%;
	}
	.top_service .mainBlk > div > ._lead {
		line-height: 1.6;
	}
	.top_service .certificationBlk {
		margin: clamp(1.875rem, 1.153rem + 3.08vw, 3.125rem) 0 0;
	}
	.top_service .certificationBlk > div::before,
	.top_service .certificationBlk > div::after {
		top: clamp(1.938rem, 1.612rem + 1.39vw, 2.5rem);
		left: calc(50% + clamp(8.188rem, 6.599rem + 6.78vw, 10.938rem));
		transform: translate(-50%, -50%) scale(-1, 1);
		width: clamp(1.875rem, 1.333rem + 2.31vw, 2.813rem);
	}
	.top_service .certificationBlk > div::after {
		left: calc(50% - clamp(8.188rem, 6.599rem + 6.78vw, 10.938rem));
		transform: translate(-50%, -50%);
	}
	.top_service .certificationBlk > div > ._title span {
		margin: 1px 0 0;
	}
	.top_service .certificationBlk > div > ._desc {
		line-height: 1.6;
	}
	/* top > aboutUs */
	.top_aboutUs .mainTopBlk p {
		font-size: 22px;
	}
	.top_aboutUs .mainTopBlk span {
		display: block;
	}
	.top_aboutUs .mainDescBlk ._desc {
		line-height: 1.6;
	}
	/* top > recruit */
	.top_recruit .mainLinkBlk {
		text-align: center;
	}
}
/*
歯科衛生士の皆さまへ
====================================*/
/*common start*/
/*common end*/
.dentalHygienists_flow {}
.dentalHygienists_flow .inner {}
.dentalHygienists_flow .box {}
.dentalHygienists_flow .imgBox {
    text-align: center;
}
.dentalHygienists_flow .imgBox img {
    width: clamp(9.375rem, 6.534rem + 12.12vw, 15.625rem);
}
.dentalHygienists_flow .headBox {
    margin-top: 20px;
}
.dentalHygienists_flow .headBox > ._head {
    text-align: center;
}
.dentalHygienists_flow .mainBox {
    margin-top: clamp(1.25rem, 0.966rem + 1.21vw, 1.875rem);
}
.dentalHygienists_flow .mainBox dl {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(1.875rem, 1.561rem + 1.44vw, 2.25rem);
}
@media screen and (max-width: 1024px) {
		.dentalHygienists_flow .mainBox dl {
	    grid-template-columns: repeat(1, 1fr);
	    width: min(var(--maxWidth500), 100%);
	    margin: auto;
	}
}
.dentalHygienists_flow .mainBox dl > div {
    position: relative;
    padding: 25px 10px;
    background: var(--contentsBg);
}
.dentalHygienists_flow .mainBox dl > div:not(:last-child)::before {
    content: '';
    position: absolute;
    top: 50%;
    left: calc(100% + 13px);
    display: inline-block;
    width: 11px;
    height: 14px;
    background: var(--mainColor2);
    clip-path: polygon(0 0, 0 100%, 100% 50%);
}
@media screen and (max-width: 1024px) {
	.dentalHygienists_flow .mainBox dl > div:not(:last-child)::before {
	    content: '';
	    position: absolute;
	    top: calc(100% + clamp(0.625rem, 0.468rem + 0.72vw, 0.813rem));
	    left: 50%;
	    transform: translate(-50%, 0%) rotate(90deg);
	    display: inline-block;
	    width: 10px;
	    height: 13px;
	    background: var(--mainColor2);
	    clip-path: polygon(0 0, 0 100%, 100% 50%);
	}
}
.dentalHygienists_flow .mainBox dl dt {
    font-weight: 700;
    text-align: center;
    color: var(--mainColor);
    font-size: clamp(1.125rem, 1.068rem + 0.24vw, 1.25rem);
    letter-spacing: 0.05em;
}
.dentalHygienists_flow .mainBox dl dt > ._step {
    display: block;
    margin-bottom: clamp(0.438rem, 0.352rem + 0.36vw, 0.625rem);
    line-height: 1;
    color: var(--mainColor2);
}
.dentalHygienists_flow .mainBox dl dt > ._step span {
    margin-left: 3px;
    font-size: clamp(1.75rem, 1.409rem + 1.45vw, 2.5rem);
}
.dentalHygienists_flow .mainBox dl dd {
    margin-top: 12px;
    text-align: center;
}
/*
歯科医院の皆さまへ
====================================*/
/*common start*/
/*common end*/
.dentalClinics_flow {}
.dentalClinics_flow .inner {}
.dentalClinics_flow .box {}
.dentalClinics_flow .headBox {}
.dentalClinics_flow .headBox > ._head {}
.dentalClinics_flow .mainBox {}
.dentalClinics_flow .mainBox > ._head{
	text-align: center;
}
.dentalClinics_flow .mainBox {}
.dentalClinics_flow .mainItemBox {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 18px;
    width: max(700px, 100%);
    margin-top: 35px;
}
.dentalClinics_flow .mainItemBox p {
    position: relative;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1/1;
    border-radius: 50%;
    border: 2px solid #d1cef2;
    text-align: center;
    letter-spacing: 0.03em;
    line-height: calc(21/16);
    background: #fff;
}
.dentalClinics_flow .mainItemBox p:not(:last-child)::before {
    content: '';
    position: absolute;
    top: 50%;
    left: calc(100% + 6px);
    transform: translateY(-50%);
    display: inline-block;
    width: 11px;
    height: 14px;
    background: var(
    --mainColor2);
    clip-path: polygon(0 0, 0 100%, 100% 50%);
}
@media screen and (max-width: 1024px) {
	.dentalClinics_flow .mainItemBox p:not(:last-child)::before {
		left: calc(100% + 7px);
	    width: 8px;
	    height: 11px;
	}
}
.dentalClinics_flow .mainItemBox p > ._num {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    display: grid;
    place-items: center;
    width: clamp(1.875rem, 1.705rem + 0.73vw, 2.25rem);
    height: clamp(1.875rem, 1.705rem + 0.73vw, 2.25rem);
    font-size: clamp(1.25rem, 1.136rem + 0.48vw, 1.5rem);
    color: #fff;
    border-radius: 50%;
    line-height: 1;
    background: var(--mainColor2);
}
.dentalClinics_flow .mainItemBox p > ._note {
    margin-top: 4px;
    font-size: 13px;
}
/*
about-us
====================================*/
/*common start*/
/*common end*/
.aboutUs_philosophy {
    background: #f5f3f0;
}
.aboutUs_philosophy .inner {}
.aboutUs_philosophy .blk {}
.aboutUs_philosophy .headBlk {}
.aboutUs_philosophy .headBlk > ._head {}
.aboutUs_philosophy .mainBlk {
    background: #fff;
}
.aboutUs_philosophy .mainTopBlk {
    background: #ebeaf5;
}
.aboutUs_greeting {}
.aboutUs_greeting .inner {}
.aboutUs_greeting .box {}
.aboutUs_greeting .headBox {}
.aboutUs_greeting .headBox > ._head {}
.aboutUs_greeting .mainBox {
    width: min(700px, 100%);
    margin: clamp(1.25rem, 0.824rem + 1.82vw, 2.188rem) auto 0;
}
.aboutUs_greeting .mainBox > ._message {
    line-height: 2;
}
@media screen and (max-width: 1024px) {
	.aboutUs_greeting .mainBox > ._message {
	    line-height: 1.6;
	}
}
.aboutUs_greeting .mainBox > ._name {
    margin-top: 30px;
    text-align: right;
    font-weight: 600;
}
.aboutUs_overview {
    background: #f5f3f0;
}
.aboutUs_overview .inner {}
.aboutUs_overview .box {}
.aboutUs_overview .headBox {}
.aboutUs_overview .headBox > ._head {}
.aboutUs_overview .mainBox {
    width: min(950px, 100%);
    margin: clamp(1.25rem, 0.824rem + 1.82vw, 2.188rem) auto 0;
    background: #fff;
}
.aboutUs_overview .mainTableBox {}
.aboutUs_overview .mainTableBox dl {}
.aboutUs_overview .mainTableBox dl > div {}
.aboutUs_overview .mainTableBox dl dt {}
.aboutUs_overview .mainTableBox dl dd {}
.aboutUs_overview .linkBox {
    justify-content: center;
    gap: clamp(0.938rem, 0.511rem + 1.82vw, 1.875rem);
    margin-top: clamp(2.188rem, 1.761rem + 1.82vw, 3.125rem);
}
.aboutUs_overview .linkBox a {
    display: grid;
    place-items: center;
    width: min(clamp(18.75rem, 17.33rem + 6.06vw, 21.875rem), 100%);
    min-height: clamp(3.75rem, 3.182rem + 2.42vw, 5rem);
    padding: 10px;
    font-size: clamp(0.938rem, 0.852rem + 0.36vw, 1.125rem);
    letter-spacing: 0.05em;
    color: var(--mainColor2);
    text-align: center;
    border: 1px solid #d1cef2;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 50px;
    line-height: 1.3;
    background: #fff;
}
@media screen and (min-width: 1025px){
	.aboutUs_overview .linkBox a:hover {
		opacity: 1;
	    background: #d1cef22b;
	}
}
/*
プライバシーポリシー
====================================*/
/*common start*/
/*common end*/
.privacyPolicy_privacyPolicy {}
.privacyPolicy_privacyPolicy .inner {}
.privacyPolicy_privacyPolicy .box {}
.privacyPolicy_privacyPolicy .headBox {}
.privacyPolicy_privacyPolicy .headBox > ._head {}
.privacyPolicy_privacyPolicy .mainBox {}
.privacyPolicy_privacyPolicy .mainBox dl {}
.privacyPolicy_privacyPolicy .mainBox dl > div {}
.privacyPolicy_privacyPolicy .mainBox dl dt {}
.privacyPolicy_privacyPolicy .mainBox dl dd {}
.privacyPolicy_privacyPolicy .mainBox dl dd a {}
.disclosureMatters_disclosureMatters {}
.disclosureMatters_disclosureMatters .inner {}
.disclosureMatters_disclosureMatters .box {}
.disclosureMatters_disclosureMatters .mainBox {
    margin-top: 0;
}
.disclosureMatters_disclosureMatters .mainBox > dl {}
.disclosureMatters_disclosureMatters .mainBox > dl > div {}
.disclosureMatters_disclosureMatters .mainBox > dl > div > dt {}
.disclosureMatters_disclosureMatters .mainBox > dl > div > dd {}
.disclosureMatters_disclosureMatters .mainItemBox {
    display: grid;
    gap: 25px;
    margin-top: 30px;
}
.disclosureMatters_disclosureMatters .mainItemBox table {
    table-layout: fixed;
    border-collapse: collapse;
}
.disclosureMatters_disclosureMatters .mainItemBox table th,
.disclosureMatters_disclosureMatters .mainItemBox table td {
	vertical-align: middle;
	padding: 15px;
	border: 1px solid #ddd;
}
.disclosureMatters_disclosureMatters .mainItemBox table th {
    width: 50%;
}
.disclosureMatters_disclosureMatters .mainItemBox table td {}
.disclosureMatters_disclosureMatters .mainItemBox dl {
    padding: 15px;
    border: 1px solid #ddd;
}
.disclosureMatters_disclosureMatters .mainItemBox dl dt {}
.disclosureMatters_disclosureMatters .mainItemBox dl dd {
    margin-top: 10px;
}
.disclosureMatters_disclosureMatters .mainBox dl dd a {}
/*
recruit
====================================*/
/*common start*/
/*common end*/
.recruit_top {
	height: initial;
	padding: 45px 0 clamp(2.813rem, -2.443rem + 22.42vw, 14.375rem);
	background-image: url(./images/recruit_top_bg01.webp);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 78% 20%;
}
.recruit_top .inner {}
.recruit_top .box {}
.recruit_top .headBox {}
.recruit_top .headBox > ._head {}
.recruit_top .mainBox {
    margin-top: clamp(1.563rem, 0.852rem + 3.03vw, 3.125rem);
    line-height: 2;
}
@media screen and (max-width: 1024px) {
	.recruit_top .mainBox {
	    margin-top: clamp(1.563rem, 0.852rem + 3.03vw, 3.125rem);
	    line-height: 1.6;
	}
}
.recruit_top .mainBox > ._text1 {
    font-size: clamp(1rem, 0.744rem + 1.09vw, 1.563rem);
    letter-spacing: 0.05em;
    font-weight: 600;
}
.recruit_top .mainBox > ._text2 {
	margin-top: 20px;
	
}
@media screen and (max-width: 1024px) {
	.recruit_top .mainBox p {
	   text-shadow: 0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;
	}
}
.recruit_workIs {}
.recruit_workIs .inner {}
.recruit_workIs .box {}
.recruit_workIs .headBox {}
.recruit_workIs .headBox > ._head {}
.recruit_workIs .mainBox {
    width: min(750px, 100%);
    margin: clamp(1.25rem, 1.108rem + 0.61vw, 1.563rem) auto 0;
}
.recruit_workIs .mainBox dl {
	display: grid;
	gap: clamp(2.188rem, 1.761rem + 1.82vw, 3.125rem);
	letter-spacing: 0.05em;
}
.recruit_workIs .mainBox dl > div {}
.recruit_workIs .mainBox dt {
    display: flex;
    padding: 15px;
    font-weight: 700;
    font-size: clamp(1rem, 0.886rem + 0.48vw, 1.25rem);
    border-radius: 5px;
    background: var(--contentsBg);
}
.recruit_workIs .mainBox dt span {
    transform: translateY(-3px);
    color: var(--mainColor);
}
.recruit_workIs .mainBox dd {
    display: flex;
    margin-top: clamp(0.938rem, 0.653rem + 1.21vw, 1.563rem);
    padding: 0 15px;
    line-height: 2;
}
@media screen and (max-width: 1024px) {
	.recruit_workIs .mainBox dd {
	    line-height: 1.8;
	}
}
.recruit_workIs .mainBox dd span {
    display: inline-block;
    color: var(--mainColor2);
}
.recruit_workIs .mainBox dt span,
.recruit_workIs .mainBox dd span {
    margin-right: 10px;
    font-weight: 700;
    font-size: clamp(1.5rem, 1.33rem + 0.73vw, 1.875rem);
    line-height: 1;
}
.recruit_jobDescription {
    background: var(--contentsBg);
}
.recruit_jobDescription .inner {}
.recruit_jobDescription .box {}
.recruit_jobDescription .headBox {}
.recruit_jobDescription ._head {}
.recruit_jobDescription .mainBox {
    display: grid;
    gap: clamp(2.188rem, 1.761rem + 1.82vw, 3.125rem);
    width: min(950px, 100%);
    margin: clamp(1.25rem, 1.108rem + 0.61vw, 1.563rem) auto 0;
}
.recruit_jobDescription .mainTableBox {
    background: #fff;
}
.recruit_jobDescription .mainTableBox dl {
}
.recruit_jobDescription .mainTableBox dl >  {}
.recruit_jobDescription .mainTableBox dl dt {
    width: min(106px, 100%);
}
.recruit_jobDescription .mainTableBox dl dd {}
.recruit_jobDescription .mainFormBox {
    padding: clamp(1.875rem, 1.307rem + 2.42vw, 3.125rem) clamp(0.938rem, -0.057rem + 4.24vw, 3.125rem);
    background: #fff;
}
.recruit_jobDescription .mainForm1Box {
    margin-top: clamp(1.25rem, 0.824rem + 1.82vw, 2.188rem);
}
.recruit_jobDescription .mainForm2Box {
    margin-top: clamp(1.563rem, 1.42rem + 0.61vw, 1.875rem);
}
.recruit_jobDescription .mainForm2Box dl {
    display: grid;
    gap: 15px;
}
.recruit_jobDescription .mainForm2Box dl > div {
    align-items: center;
    justify-content: flex-start;
    padding: clamp(0.938rem, 0.795rem + 0.61vw, 1.25rem);
    background: var(--contentsBg);
}
.recruit_jobDescription .mainForm2Box dl dt {
    width: min(146px, 100%);
    font-size: clamp(1rem, 0.943rem + 0.24vw, 1.125rem);
    color: var(--mainColor2);
    font-weight: 700;
}
.recruit_jobDescription .mainForm2Box dl dd {
    flex: 1;
}
@media screen and (max-width: 1024px) {
	.recruit_jobDescription .mainForm2Box dl dt {
	    width: 100%;
	}
	.recruit_jobDescription .mainForm2Box dl dd {
	    margin-top: 5px
	}
}
.recruit_welcome {}
.recruit_welcome .inner {}
.recruit_welcome .box {}
.recruit_welcome .mainBox {}
.recruit_welcome .mainImgBox {
    text-align: center;
}
.recruit_welcome .mainImgBox img {
    width: min(450px, 70%);
}
.recruit_welcome .mainBox p {
    margin-top: clamp(1.25rem, 0.966rem + 1.21vw, 1.875rem);
    text-align: center;
    font-size: clamp(1rem, 0.602rem + 1.7vw, 1.875rem);
    font-weight: 700;
    color: var(--mainColor2);
    line-height: 2;
}
/*
contact
====================================*/
/*common start*/
/*common end*/
.contact_form {}
.contact_form .inner {}
.contact_form .box {}
.contact_form .headBox {}
.contact_form .headBox > ._head {}
.contact_form .leadBox {}
.contact_form .leadBox p {
}
.contact_form .mainBox {}
/*
sign-up
====================================*/
/*common start*/
/*common end*/
.signUp_form {}
.signUp_form .inner {}
.signUp_form .box {}
.signUp_form .headBox {}
.signUp_form .headBox > ._head {}
.signUp_form .leadBox {}
.signUp_form .leadBox p {}
.signUp_form .mainBox {}
/*
news
====
================================*/
.news_list {
    padding-top: clamp(1.875rem, 1.023rem + 3.64vw, 3.75rem);
}
.news_list .inner {}
.news_list .box {
    width: min(850px, 100%);
    margin: auto;
}
.news_list .mainBox {}
.news_list .mainBox article {
	border-bottom: 1px solid #ddd;
}
.news_list .mainBox a {
    position: relative;
    justify-content: flex-start;
    padding: clamp(1.563rem, 1.278rem + 1.21vw, 2.188rem) 0;
    padding-right: 3.5em;
}
@media screen and (min-width: 1025px){
	.news_list .mainBox a:hover {
		opacity: 1;
		background: #f9f9f9;
	}
}
.news_list .mainBox a > ._date {
    font-size: clamp(0.875rem, 0.847rem + 0.12vw, 0.938rem);
}
.news_list .mainBox a > ._new {}
.news_list .mainBox a > ._title {
	width: 100%;
	margin-top: 6px;
	font-size: clamp(1rem, 0.943rem + 0.24vw, 1.125rem);
	letter-spacing: 0.05em;
	font-weight: 600;
}
.news_list .mainBox a > ._content {
	margin-top: 8px;
	font-size: clamp(0.875rem, 0.847rem + 0.12vw, 0.938rem);
	letter-spacing: 0.05em;
}
.news_list .mainBox a .arrow1::before,
.news_list .mainBox a .arrow1::after {
    background: #E6437A;
}
.news_detail {}
.news_detail .inner {}
.news_detail .box {
    padding: 0 75px;
}
@media screen and (max-width: 1024px){
	.news_detail .box {
	    padding: initial;
	}
}
.news_detail .mainBox {
    padding: clamp(1.875rem, 1.307rem + 2.42vw, 3.125rem) clamp(0.938rem, -0.057rem + 4.24vw, 3.125rem);
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.16);
    background: #fff;
}
.news_detail .mainBox article {}
.news_detail .mainBox article > ._date {}
.news_detail .mainBox article > ._new {}
.news_detail .mainBox article > ._head {
    margin-top: 7px;
    font-size: clamp(1.125rem, 0.926rem + 0.85vw, 1.563rem);
    letter-spacing: 0.05em;
}
.news_detail .mainContentBox {
    margin-top: clamp(1.563rem, 1.42rem + 0.61vw, 1.875rem);
}
.news_detail .mainContentBox > *:first-child,
.news_detail .mainContentBox > * *:first-child {
	margin-top: 0;
}
.news_detail .mainContentBox p {
    line-height: calc(30/15);
}
.news_detail .mainContentBox img {
	display: table;
	margin: auto!important;
}
.news_detail .mainContentBox :not(ul):not(li):not(iframe):not(table *) {
	margin: calc(clamp(0.875rem, 0.818rem + 0.24vw, 1rem) * 1.6) 0 0;
}
.news_detail .mainContentBox a {
	color: #2985d8;
	text-decoration: underline;
}
.news_detail .paginationBox {}
/* , */
.news_list .mainBox a > ._date,
.news_detail .mainBox article > ._date {
    font-size: 15px;
}
.news_list .mainBox a > ._new,
.news_detail .mainBox article > ._new {
    margin-left: 1em;
    font-size: clamp(0.875rem, 0.847rem + 0.12vw, 0.938rem);
    color: red;
}
/*common start*/
/*common end*/
/*テスト*/