/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Zen+Old+Mincho&display=swap");
*, ::before, ::after {
	box-sizing: border-box;
	border-style: solid;
	border-width: 0;
}

html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: transparent;
}

body {
	margin: 0;
}

main {
	display: block;
}

p, table, blockquote, address, pre, iframe, form, figure, dl {
	margin: 0;
}

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

ul, ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

dt {
	font-weight: 700;
}

dd {
	margin-left: 0;
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
	border-top-width: 1px;
	margin: 0;
	clear: both;
	color: inherit;
}

pre {
	font-family: monospace,monospace;
	font-size: inherit;
}

address {
	font-style: inherit;
}

a {
	background-color: transparent;
	text-decoration: none;
	color: inherit;
}

abbr[title] {
	text-decoration: underline dotted;
}

b, strong {
	font-weight: bolder;
}

code, kbd, samp {
	font-family: monospace,monospace;
	font-size: inherit;
}

small {
	font-size: 80%;
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -.25em;
}

sup {
	top: -.5em;
}

svg, img, embed, object, iframe {
	vertical-align: bottom;
}

button, input, optgroup, select, textarea {
	-webkit-appearance: none;
	appearance: none;
	vertical-align: middle;
	color: inherit;
	font: inherit;
	background: transparent;
	padding: 0;
	margin: 0;
	border-radius: 0;
	text-align: inherit;
	text-transform: inherit;
}

button, [type="button"], [type="reset"], [type="submit"] {
	cursor: pointer;
}

button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled {
	cursor: default;
}

:-moz-focusring {
	outline: auto;
}

select:disabled {
	opacity: inherit;
}

option {
	padding: 0;
}

fieldset {
	margin: 0;
	padding: 0;
	min-width: 0;
}

legend {
	padding: 0;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

[type="number"] {
	-moz-appearance: textfield;
}

label[for] {
	cursor: pointer;
}

details {
	display: block;
}

summary {
	display: list-item;
}

[contenteditable]:focus {
	outline: auto;
}

table {
	border-color: inherit;
	border-collapse: collapse;
}

caption {
	text-align: left;
}

td, th {
	vertical-align: top;
	padding: 0;
}

th {
	text-align: left;
	font-weight: 700;
}

html {
	font-size: 16px;
	overflow-y: scroll;
}
html * {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	box-sizing: border-box;
}

body {
	font-family: "Zen Old Mincho", serif;
	font-feature-settings: "palt";
	margin: 0px auto;
	color: #66514B;
	overflow: hidden;
	background: #fff;
	font-size: clamp(0.8125rem, 0.72207rem + 0.42553vw, 1.0625rem);
	line-height: 1.7;
	font-weight: 400;
	padding-top: 120px;
	background: url(../images/bg.jpg) repeat center top;
}
.pc body {
	padding-top: 60px;
}
body.home {
	background: url(../images/bg_home.jpg) repeat center top;
}
body img {
	border: 0px;
}
body a {
	text-decoration: none;
	color: #000;
}
body a.underline {
	text-decoration: underline;
}
body a.underline:hover {
	text-decoration: none;
}
body dl, body ul, body ol {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
body p {
	margin: 0px;
}
body input, body select {
	outline: none;
}
body .clear {
	clear: both;
}
.sp body .view_pc {
	display: none !important;
}
body .view_sp {
	display: none !important;
}
.sp body .view_sp {
	display: block !important;
}

a {
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
a:hover {
	opacity: 0.7;
}

img {
	max-width: 100%;
}

.stack {
	margin-top: 0 !important;
}

.block {
	margin-top: 40px !important;
}
.sp .block {
	margin-top: 20px !important;
}

.paragraph {
	margin-top: 20px !important;
}
.sp .paragraph {
	margin-top: 10px !important;
}

header {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	background: #ECE6D6;
	z-index: 1000;
	display: flex;
	justify-content: space-between;
}
header .logo {
	width: 182.341px;
	height: 120px;
	padding-left: 20px;
	display: flex;
	align-items: center;
}
.pc header .logo {
	height: 60px;
}
header .logo a {
	line-height: 0;
}
header .logo a img {
	width: 100%;
}
header .menu {
	display: flex;
	align-items: center;
	height: 120px;
}
.pc header .menu {
	height: 60px;
}
header .menu .global_navi {
	display: flex;
	gap: 50px;
	padding-right: 50px;
}
.wpc header .menu .global_navi {
	gap: 30px;
}
.pc header .menu .global_navi {
	display: none;
}
header .menu #sp_btn {
	position: relative;
	width: 120px;
	height: 120px;
	background: #66514B;
	cursor: pointer;
	transition: 0.3s;
}
header .menu #sp_btn:hover {
	background: #BA7E79;
}
.pc header .menu #sp_btn {
	width: 60px;
	height: 60px;
}
header .menu #sp_btn.open {
	background: #BA7E79;
}
header .menu #sp_btn span {
	position: absolute;
	left: 0;
	width: 40px;
	height: 4px;
	background-color: #fff;
	border-radius: 4px;
	display: inline-block;
	transition: all .5s;
	left: 40px;
}
.pc header .menu #sp_btn span {
	width: 30px;
	left: 15px;
}
header .menu #sp_btn span:nth-of-type(1) {
	top: 45px;
}
.pc header .menu #sp_btn span:nth-of-type(1) {
	top: 17px;
}
header .menu #sp_btn span:nth-of-type(2) {
	top: 58px;
}
.pc header .menu #sp_btn span:nth-of-type(2) {
	top: 28px;
}
header .menu #sp_btn span:nth-of-type(3) {
	bottom: 45px;
}
.pc header .menu #sp_btn span:nth-of-type(3) {
	bottom: 17px;
}
header .menu #sp_btn.open span:nth-of-type(1) {
	transform: translateY(20px) rotate(-315deg);
	top: 38px;
}
.pc header .menu #sp_btn.open span:nth-of-type(1) {
	top: 8px;
}
header .menu #sp_btn.open span:nth-of-type(2) {
	opacity: 0;
}
header .menu #sp_btn.open span:nth-of-type(3) {
	transform: translateY(-20px) rotate(315deg);
	bottom: 38px;
}
.pc header .menu #sp_btn.open span:nth-of-type(3) {
	bottom: 8px;
}

#sp_menu {
	display: none;
	position: fixed;
	z-index: 10000;
	left: 0;
	top: 120px;
	width: 100%;
	background: #E5DFDF;
	padding: 80px 80px;
	height: calc(100% - 120px);
	overflow-y: auto;
}
.pc #sp_menu {
	top: 60px;
	padding: 30px 20px;
	height: calc(100% - 60px);
}
.sp #sp_menu {
	padding: 30px 10px;
}
#sp_menu > div {
	display: flex;
	width: 100%;
}
#sp_menu > div > .img {
	width: 40%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-right: 80px;
}
.pc #sp_menu > div > .img {
	display: none;
}
#sp_menu > div > .img img {
	mix-blend-mode: multiply;
}
#sp_menu > div > .body {
	width: 60%;
}
.pc #sp_menu > div > .body {
	width: 100%;
}
#sp_menu > div > .body > ul {
	border-top: 1px solid #66514B;
}
#sp_menu > div > .body > ul > li {
	position: relative;
}
#sp_menu > div > .body > ul > li a {
	display: block;
	padding: 20px 0;
	color: #66514B;
	border-bottom: 1px solid #66514B;
}
#sp_menu > div > .body > ul > li.ac .btn {
	transform: rotate(180deg);
}
#sp_menu > div > .body > ul > li .btn {
	position: absolute;
	right: 0;
	top: 0;
	display: block;
	width: 70px;
	height: 70px;
	background: url(/wordpress/wp-content/themes/root/common/images/arrow02.svg) no-repeat center;
	cursor: pointer;
	z-index: 100;
	transition: 0.2s;
}
#sp_menu > div > .body > ul > li > ul {
	display: none;
}
#sp_menu > div > .body > ul > li > ul a {
	background: #dfd4d4;
	padding-left: 40px;
}
.sp #sp_menu > div > .body > ul > li > ul a {
	padding-left: 20px;
}
#sp_menu > div > .body > .bottom {
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
	align-items: center;
}
.sp #sp_menu > div > .body > .bottom {
	flex-direction: column;
	gap: 20px;
}
#sp_menu > div > .body > .bottom .privacy a {
	display: inline-block;
	color: #66514B;
	font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
	line-height: 1;
	font-weight: 400;
}
#sp_menu > div > .body > .bottom .privacy a + a {
	margin-left: 20px;
}
#sp_menu > div > .body > .bottom .sns li {
	display: inline-block;
}
#sp_menu > div > .body > .bottom .sns li + li {
	margin-left: 20px;
}

.mainvisual {
	position: relative;
	height: calc(100vh - 120px);
	background: url(/images/mainvisual.jpg) no-repeat center/cover;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 20px;
}
.pc .mainvisual {
	height: calc(100vh - 60px);
}
.mainvisual .catch {
	position: relative;
	z-index: 10;
}
.mainvisual .catch img {
	display: block;
	max-width: 70%;
	margin: 0 auto;
}
.pc .mainvisual .catch img {
	max-width: 85%;
}
.tablet .mainvisual .catch img {
	max-width: 90%;
}
.mainvisual .mark {
	mix-blend-mode: color-burn;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	max-width: 650px;
	z-index: 1;
}

#sp_link {
	display: none;
}
.sp #sp_link {
	display: flex;
	background: #ECE6D6;
	gap: 1px;
	padding-bottom: 20px;
}
#sp_link li {
	width: calc((100% - 2px)  / 3);
}
#sp_link li a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 60px;
	background: #66514B;
	color: #fff;
}
#sp_link li a:hover {
	opacity: 1;
	background: #BA7E79;
}

main .top_content .headlabel {
	font-size: clamp(1.0625rem, 0.76862rem + 1.38298vw, 1.875rem);
	line-height: 1.5;
	font-weight: 400;
	color: #66514B;
}
main .top_content .headline {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 70px;
}
.tablet main .top_content .headline {
	gap: 40px;
}
.sp main .top_content .headline {
	gap: 20px;
}
main .top_content .headline .title {
	font-size: clamp(2.5rem, -0.21277rem + 12.76596vw, 10rem);
	line-height: 1;
	font-weight: 400;
	text-align: center;
	font-family: "ltc-metropolitan-pro", sans-serif;
}
main .top_content .headline .lead {
	width: 100%;
	max-width: 600px;
	font-size: clamp(1rem, 0.90957rem + 0.42553vw, 1.25rem);
	line-height: 1.7;
	font-weight: 400;
}
.tablet main .top_content .headline .lead {
	padding: 0 40px;
}
main .top_content #about a {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 453px;
	background: url(/images/bg_about.jpg) no-repeat center/cover;
	color: #fff;
}
main .top_content #about a:hover {
	opacity: 1;
}
main .top_content #about a:hover::after {
	opacity: 0;
}
.tablet main .top_content #about a {
	height: 300px;
}
.sp main .top_content #about a {
	height: 200px;
	gap: 0;
}
main .top_content #about a::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #6A6262;
	mix-blend-mode: multiply;
	opacity: 0.7;
	z-index: 1;
	transition: 0.4s;
}
main .top_content #about a > div {
	position: relative;
	z-index: 10;
}
main .top_content #about a .headlabel {
	color: #fff;
	font-family: "paganini", serif;
	font-size: clamp(2.25rem, 1.70745rem + 2.55319vw, 3.75rem);
	line-height: 1.5;
	font-weight: 400;
}
main .top_content #about a .tx {
	font-size: clamp(1.125rem, 1.07979rem + 0.21277vw, 1.25rem);
	line-height: 1.5;
	font-weight: 400;
}
main .top_content #about a .gt {
	font-size: clamp(1.375rem, 0.96809rem + 1.91489vw, 2.5rem);
	line-height: 1.5;
	font-weight: 400;
}
main .top_content #features {
	padding: 150px 20px;
}
.tablet main .top_content #features {
	padding: 60px 20px;
}
.sp main .top_content #features {
	padding: 40px 10px;
}
main .top_content #features .features_slider {
	position: relative;
	width: 100%;
	max-width: 1640px;
	margin: 100px auto 0;
	padding-bottom: 80px;
}
.tablet main .top_content #features .features_slider {
	margin-top: 40px;
}
main .top_content #features .features_slider .item {
	position: relative;
}
.wpc main .top_content #features .features_slider .item {
	text-align: center;
}
main .top_content #features .features_slider .item .label {
	position: absolute;
	top: 0;
	left: 0;
	font-size: clamp(1.875rem, 1.60372rem + 1.2766vw, 2.625rem);
	line-height: 1.5;
	font-weight: 400;
}
.wpc main .top_content #features .features_slider .item .label {
	position: static;
}
main .top_content #features .features_slider .item .label span {
	display: block;
	color: #66514B;
	font-family: "ltc-metropolitan-pro", sans-serif;
	font-size: clamp(2.5rem, 1.59574rem + 4.25532vw, 5rem);
	line-height: 1.5;
	font-weight: 400;
	margin-bottom: 40px;
}
.wpc main .top_content #features .features_slider .item .label span {
	display: inline-block;
	padding-right: 20px;
}
main .top_content #features .features_slider .item .img {
	padding-right: 200px;
}
.wpc main .top_content #features .features_slider .item .img {
	padding-right: 0;
}
main .top_content #features .features_slider .item .img img {
	display: block;
	width: 60%;
	margin: 0 auto;
}
.pc main .top_content #features .features_slider .item .img img {
	width: 80%;
}
main .top_content #features .features_slider .item .tx {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: clamp(1.25rem, 1.15957rem + 0.42553vw, 1.5rem);
	line-height: 1.5;
	font-weight: 400;
	width: 25%;
}
.wpc main .top_content #features .features_slider .item .tx {
	position: static;
	transform: translateY(0);
	width: auto;
	padding: 0 50px;
}
main .top_content #features .features_slider .item .tx p {
	text-align: left;
}
.wpc main .top_content #features .features_slider .item .tx br {
	display: none;
}
main .top_content #features .features_slider .slick-dots {
	bottom: -60px;
}
.tablet main .top_content #features .features_slider .slick-dots {
	bottom: -50px;
}
main .top_content #features .features_slider .slick-dots li button:before {
	content: "";
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #BFBFBF;
	opacity: 1;
}
main .top_content #features .features_slider .slick-dots li.slick-active button:before {
	background: #6CAC99;
}
main .top_content #lesson {
	padding: 150px 0px 0;
	background: #E4EBEA;
}
.tablet main .top_content #lesson {
	padding: 60px 0px;
}
.sp main .top_content #lesson {
	padding: 40px 0 0 0;
}
main .top_content #lesson .headline {
	padding: 0 20px;
}
main .top_content #lesson .r_scroll {
	position: relative;
	margin-top: 100px;
	display: flex;
	background: #CDDBD9;
}
.tablet main .top_content #lesson .r_scroll {
	margin-top: 60px;
}
main .top_content #lesson .r_scroll .base {
	width: 50%;
}
.pc main .top_content #lesson .r_scroll .base {
	display: none;
}
.base_fix main .top_content #lesson .r_scroll .base {
	position: fixed;
	left: 0;
	top: 120px;
}
.base_fix.base_fix_bottom main .top_content #lesson .r_scroll .base {
	position: absolute;
	top: auto;
	bottom: 0;
}
main .top_content #lesson .r_scroll .base > div {
	height: calc(100vh - 120px);
	width: 100%;
}
main .top_content #lesson .r_scroll .base > div img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
main .top_content #lesson .r_scroll .inner {
	width: 50%;
	padding: 40px 80px 40px 80px;
}
.base_fix main .top_content #lesson .r_scroll .inner {
	width: 100%;
	padding-left: calc(50% + 80px);
}
.pc main .top_content #lesson .r_scroll .inner {
	position: static;
	width: 100%;
	padding: 40px;
}
.sp main .top_content #lesson .r_scroll .inner {
	padding: 30px 20px;
}
main .top_content #lesson .r_scroll .inner a.item {
	display: block;
	width: 100%;
	max-width: 450px;
	background: #fff;
	padding: 40px;
}
.pc main .top_content #lesson .r_scroll .inner a.item {
	max-width: 100%;
}
.sp main .top_content #lesson .r_scroll .inner a.item {
	padding: 20px;
}
main .top_content #lesson .r_scroll .inner a.item + .item {
	margin-top: 80px;
}
.sp main .top_content #lesson .r_scroll .inner a.item + .item {
	margin-top: 30px;
}
main .top_content #lesson .r_scroll .inner a.item .img img {
	width: 100%;
}
main .top_content #lesson .r_scroll .inner a.item .ttl {
	margin-top: 20px;
	font-size: clamp(1.25rem, 1.15957rem + 0.42553vw, 1.5rem);
	line-height: 1.5;
	font-weight: 400;
}
main .top_content #lesson .r_scroll .inner a.item .tx {
	margin-top: 20px;
	font-size: clamp(0.9375rem, 0.89229rem + 0.21277vw, 1.0625rem);
	line-height: 1.5;
	font-weight: 400;
}
main .top_content #studio {
	padding: 150px 20px;
}
.tablet main .top_content #studio {
	padding: 60px 20px;
}
.sp main .top_content #studio {
	padding: 40px 10px;
}
main .top_content #studio .studio_col {
	width: 100%;
	max-width: 1400px;
	margin: 80px auto 0;
	display: flex;
}
.pc main .top_content #studio .studio_col {
	flex-direction: column;
	flex-flow: column-reverse;
	gap: 40px;
}
main .top_content #studio .studio_col + .studio_col {
	margin-top: 150px;
}
.pc main .top_content #studio .studio_col + .studio_col {
	margin-top: 80px;
}
main .top_content #studio .studio_col .left {
	width: 40%;
	padding-right: 30px;
}
.pc main .top_content #studio .studio_col .left {
	width: auto;
	padding-right: 0;
	display: block;
}
main .top_content #studio .studio_col .left .num {
	width: 80px;
	color: #66514B;
	font-family: "ltc-metropolitan-pro", sans-serif;
	font-size: clamp(2.5rem, 1.59574rem + 4.25532vw, 5rem);
	line-height: 1.5;
	font-weight: 400;
}
.pc main .top_content #studio .studio_col .left .num {
	display: none;
}
main .top_content #studio .studio_col .left .tx {
	width: calc(100% - 80px);
}
.pc main .top_content #studio .studio_col .left .tx {
	width: auto;
}
main .top_content #studio .studio_col .left .tx .ttl {
	font-size: clamp(1.75rem, 1.43351rem + 1.48936vw, 2.625rem);
	line-height: 1.5;
	font-weight: 400;
	font-weight: 600;
}
.pc main .top_content #studio .studio_col .left .tx .ttl {
	text-align: center;
}
main .top_content #studio .studio_col .left .tx .ttl span {
	display: none;
	color: #66514B;
	font-family: "ltc-metropolitan-pro", sans-serif;
	padding-right: 20px;
}
.pc main .top_content #studio .studio_col .left .tx .ttl span {
	display: inline-block;
}
main .top_content #studio .studio_col .left .tx p {
	margin-top: 30px;
	font-size: clamp(0.9375rem, 0.89229rem + 0.21277vw, 1.0625rem);
	line-height: 1.5;
	font-weight: 400;
}
.pc main .top_content #studio .studio_col .left .tx p {
	width: 100%;
	max-width: 500px;
	margin: 30px auto 0;
}
main .top_content #studio .studio_col .right {
	width: 60%;
}
.pc main .top_content #studio .studio_col .right {
	width: 100%;
	text-align: center;
}
.pc main .top_content #studio .studio_col .right img {
	width: 100%;
	max-width: 70%;
}
main .top_content #instructor {
	padding: 150px 0px;
	background: #E4EBEA;
}
.pc main .top_content #instructor {
	padding-bottom: 30px;
}
.tablet main .top_content #instructor {
	padding: 60px 20px;
}
.sp main .top_content #instructor {
	padding: 40px 10px;
}
main .top_content #instructor .headline {
	position: relative;
	z-index: 10;
}
main .top_content #instructor .instructor_slider {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 600px;
	margin: -80px auto 0;
}
.pc main .top_content #instructor .instructor_slider {
	margin-top: 30px;
}
main .top_content #instructor .instructor_slider .slick-prev, main .top_content #instructor .instructor_slider .slick-next {
	width: 55px;
	height: 55px;
	left: 0;
	top: 40%;
	z-index: 100;
}
main .top_content #instructor .instructor_slider .slick-prev::before, main .top_content #instructor .instructor_slider .slick-next::before {
	content: "";
	display: block;
	width: 55px;
	height: 55px;
	background: url(/wordpress/wp-content/themes/root/common/images/arrow01.svg) no-repeat center/cover;
}
main .top_content #instructor .instructor_slider .slick-next {
	left: auto;
	right: 0;
}
main .top_content #instructor .instructor_slider .slick-next::before {
	transform: scale(-1, 1);
}
main .top_content #instructor .instructor_slider .img {
	width: 66.6%;
	margin: 0 auto;
}
main .top_content #instructor .instructor_slider .img img {
	width: 100%;
}
main .top_content #instructor .instructor_slider .tx {
	margin-top: 30px;
}

#breadcrumbs {
	position: relative;
	background: #F0F0F3;
	padding-top: 30px;
}
.sp #breadcrumbs {
	padding-top: 10px;
	display: none;
}
#breadcrumbs ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 0;
	position: relative;
	width: 100%;
	max-width: 1320px;
	margin: auto;
	padding: 0px 20px 0px;
	width: 100%;
}
.sp #breadcrumbs ul {
	padding: 0px 10px 0px;
}
#breadcrumbs ul li {
	font-size: clamp(0.75rem, 0.70479rem + 0.21277vw, 0.875rem);
	line-height: 1.3;
	font-weight: 400;
	color: #7D8E9E;
}
#breadcrumbs ul li + li::before {
	content: "/";
	padding: 0 10px;
}

main .contents {
	position: relative;
	background: #F0F0F3;
	padding-bottom: 120px;
}
.tablet main .contents {
	padding-bottom: 80px;
}
.sp main .contents {
	padding-bottom: 60px;
}
main .contents > div:not(.background) {
	position: relative;
	width: 100%;
	max-width: 1320px;
	margin: auto;
	padding: 120px 20px 0px;
}
.sp main .contents > div:not(.background) {
	padding: 60px 10px 0px;
}
.tablet main .contents > div:not(.background) {
	padding: 80px 20px 0;
}
.sp main .contents > div:not(.background) {
	padding: 60px 10px 0;
}
main .contents > div:not(.background) + div:not(.background) {
	padding-top: 0;
}
main .contents * + .background {
	margin-top: 120px;
}
.tablet main .contents * + .background {
	margin-top: 80px;
}
.sp main .contents * + .background {
	margin-top: 60px;
}
main .contents > .background {
	background: #fff;
}
main .contents > .background > div {
	position: relative;
	width: 100%;
	max-width: 1320px;
	margin: auto;
	padding: 80px 20px 80px;
}
.sp main .contents > .background > div {
	padding: 40px 10px 40px;
}
main .contents .center {
	text-align: center;
}
main .contents .right {
	text-align: right;
}
main .contents * + section {
	margin-top: 70px;
}
.tablet main .contents * + section {
	margin-top: 50px;
}
main .contents * + p {
	margin-top: 10px;
}
main .contents .text {
	max-width: 950px;
	margin-left: auto;
	margin-right: auto;
}
main .contents .text p {
	font-size: clamp(1rem, 0.90957rem + 0.42553vw, 1.25rem);
	line-height: 1.7;
	font-weight: 400;
}
main .contents .image {
	max-width: 950px;
	margin-left: auto;
	margin-right: auto;
}
main .contents .image img {
	display: block;
	margin: auto;
}
main .contents .image p.caption {
	margin-left: auto;
	margin-right: auto;
}
main .contents .image.left {
	text-align: left;
}
main .contents .image.left img {
	margin-left: 0px;
}
main .contents .image.right {
	text-align: right;
}
main .contents .image.right img {
	margin-right: 0px;
}
main .contents * + .image {
	margin-top: 30px;
}
.sp main .contents * + .image {
	margin-top: 20px;
}
main .contents h2 {
	position: relative;
	padding-bottom: 20px;
	color: #1AC78D;
	font-size: clamp(1.5rem, 1.27394rem + 1.06383vw, 2.125rem);
	line-height: 1.5;
	font-weight: bold;
	border-bottom: 1px solid #9BABCB;
}
main .contents h2 + * {
	margin-top: 40px;
}
.tablet main .contents h2 + * {
	margin-top: 30px;
}
.sp main .contents h2 + * {
	margin-top: 20px;
}
main .contents h2 a {
	color: #1AC78D;
	text-decoration: underline;
}
main .contents h2 a:hover {
	text-decoration: none;
}
main .contents * + h2 {
	margin-top: 80px;
}
.sp main .contents * + h2 {
	margin-top: 60px;
}
main .contents h3 {
	font-size: clamp(1.25rem, 1.15957rem + 0.42553vw, 1.5rem);
	line-height: 1.5;
	font-weight: 400;
	color: #1AC78D;
}
main .contents h3 + * {
	margin-top: 20px;
}
main .contents * + h3 {
	margin-top: 40px;
}
.tablet main .contents * + h3 {
	margin-top: 30px;
}
.sp main .contents * + h3 {
	margin-top: 20px;
}
main .contents .anchor {
	margin-top: -40px;
	border-radius: 10px;
	overflow: hidden;
}
.tablet main .contents .anchor {
	margin-top: 0;
}
main .contents .anchor ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 0;
}
main .contents .anchor ul li {
	position: relative;
	overflow: hidden;
}
main .contents .anchor ul li a {
	display: block;
	position: relative;
	padding: 10px 10px 20px;
	height: 100%;
	font-size: clamp(1rem, 0.90957rem + 0.42553vw, 1.25rem);
	line-height: 1.5;
	font-weight: bold;
	color: #1AC78D;
	text-align: center;
	background: #fff;
}
main .contents .anchor ul li a::after {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	bottom: 7px;
	left: calc(50% - 3px);
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 8px solid #9BABCB;
}
main .contents .anchor ul li + li::before {
	content: "";
	position: absolute;
	top: 10px;
	left: 0;
	width: 1px;
	height: calc(100% - 20px);
	background: #9BABCB;
	z-index: 2;
}
main .contents .anchor ul.col4 li {
	width: 25%;
}
.tablet main .contents .anchor ul.col4 li {
	width: 50%;
}
.tablet main .contents .anchor ul.col4 li:nth-of-type(2n+1)::before {
	display: none !important;
}
.tablet main .contents .anchor ul.col4 li:nth-of-type(2n+1) {
	border-radius: 10px 0 0 10px;
}
.tablet main .contents .anchor ul.col4 li:nth-of-type(2n+2) {
	border-radius: 0 10px 10px 0;
}
main .contents .anchor ul.col4 li:last-child a {
	border-radius: 0 10px 10px 0;
}
main .contents .anchor ul.col5 li {
	width: 20%;
}
main .contents .anchor ul.col5 li:nth-of-type(5n+1) {
	border-radius: 10px 0 0 10px;
}
main .contents .anchor ul.col5 li:nth-of-type(5n+1)::before {
	display: none !important;
}
main .contents .anchor ul.col5 li:nth-of-type(5n) {
	border-radius: 0 10px 10px 0;
}
.tablet main .contents .anchor ul.col5 li {
	width: 50%;
}
.tablet main .contents .anchor ul.col5 li:nth-of-type(5n+1)::before {
	display: block !important;
}
.tablet main .contents .anchor ul.col5 li:nth-of-type(2n+1)::before {
	display: none !important;
}
.tablet main .contents .anchor ul.col5 li:nth-of-type(2n+1) {
	border-radius: 10px 0 0 10px;
}
.tablet main .contents .anchor ul.col5 li:nth-of-type(2n) {
	border-radius: 0 10px 10px 0;
}
main .contents .anchor ul.col5 li:last-child a {
	border-radius: 0 10px 10px 0;
}
main .contents .linkbox {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
.tablet main .contents .linkbox {
	gap: 20px;
}
main .contents .linkbox > div {
	width: calc((100% - 120px) / 4);
}
.tablet main .contents .linkbox > div {
	width: calc((100% - 40px) / 2);
}
main .contents .linkbox > div > a, main .contents .linkbox > div > span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 70%;
	margin-left: auto;
	margin-right: auto;
	aspect-ratio: 290 / 205;
	background: #fff;
}
main .contents .linkbox > div > a img, main .contents .linkbox > div > span img {
	display: block;
	max-width: 100%;
	aspect-ratio: 290 / 205;
	object-fit: contain;
}
main .contents .linkbox > div .title {
	font-size: clamp(1.125rem, 1.07979rem + 0.21277vw, 1.25rem);
	line-height: 1.5;
	font-weight: bold;
	margin-top: 10px;
}
main .contents .linkbox > div .tx {
	margin-top: 10px;
}
main .contents .pdf_box {
	margin: 40px auto 0;
	width: 620px;
	max-width: 100%;
	border: 1px solid #9BABCB;
	border-radius: 10px;
}
main .contents .pdf_box > div {
	display: flex;
	align-items: center;
	gap: 40px;
	padding: 40px 50px;
}
.tablet main .contents .pdf_box > div {
	display: block;
	padding: 20px;
}
.tablet main .contents .pdf_box > div .button {
	margin-top: 20px;
}
main .contents .pdf_box > div p {
	font-size: clamp(0.875rem, 0.73936rem + 0.6383vw, 1.25rem);
	line-height: 1.5;
	font-weight: bold;
}
main .contents .seminar_list {
	position: relative;
	margin-top: 120px;
}
.tablet main .contents .seminar_list {
	margin-top: 80px;
	padding-top: 40px;
}
.sp main .contents .seminar_list {
	margin-top: 60px;
}
main .contents .seminar_list .news {
	margin-top: 0;
	border-top: none;
}
main .contents .seminar_list .news > div {
	gap: 10px 100px;
	min-height: 225px;
}
main .contents .seminar_list .news > div .tx {
	width: calc(100% - 220px);
}
.tablet main .contents .seminar_list .news > div .tx {
	padding: 0;
	width: 100%;
}
main .contents .seminar_list .time_link {
	position: absolute;
	right: 0;
	top: 15px;
	z-index: 2;
	text-align: right;
}
main .contents .seminar_list .time_link a {
	color: #000;
}
main .contents .seminar_list .time_link a.ac {
	color: #868686;
	pointer-events: none;
}
main .contents .seminar_detail {
	margin-bottom: 180px;
}
.tablet main .contents .seminar_detail {
	margin-bottom: 0;
}
main .contents .seminar_detail .time {
	font-size: clamp(1rem, 0.90957rem + 0.42553vw, 1.25rem);
	line-height: 1.7;
	font-weight: bold;
}
main .contents .seminar_detail .time .br {
	display: none;
}
main .contents .seminar_detail .title {
	margin: 40px 0 50px 0;
	font-size: clamp(1.5rem, 1.31915rem + 0.85106vw, 2rem);
	line-height: 1.6;
	font-weight: bold;
}
.sp main .contents .seminar_detail .title {
	margin: 20px 0 25px 0;
}
main .contents .seminar_detail .tx {
	margin-top: 20px;
}
main .contents .seminar_detail .tx + .tx {
	margin-top: 10px;
}
main .contents .timetable h2 {
	padding: 0;
	font-size: clamp(1.75rem, 1.43351rem + 1.48936vw, 2.625rem);
	line-height: 1.5;
	font-weight: 400;
	color: #000;
	border: none;
}
main .contents .timetable h3 {
	font-size: clamp(1.5rem, 1.27394rem + 1.06383vw, 2.125rem);
	line-height: 1.5;
	font-weight: bold;
	color: #1AC78D;
}
main .contents .timetable .button + .button {
	margin-top: 25px;
}
main .contents .company_detail .logo img {
	max-width: 100%;
}
main .contents .company_detail .title {
	margin-top: 10px;
}
main .contents .company_detail .title .tx {
	font-size: clamp(1.75rem, 1.43351rem + 1.48936vw, 2.625rem);
	line-height: 1.5;
	font-weight: 400;
}
main .contents .company_detail .title .tx a {
	text-decoration: underline;
}
main .contents .company_detail .title .tx a:hover {
	text-decoration: none;
}
main .contents .company_detail .title .tag {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 15px;
}
main .contents .company_detail .title .tag > span {
	padding: 10px 20px;
	border: 1px solid #9BABCB;
	border-radius: 20px;
	background: #fff;
	font-size: clamp(0.75rem, 0.70479rem + 0.21277vw, 0.875rem);
	line-height: 1;
	font-weight: 400;
}
main .contents .company_detail + h2 {
	margin-top: 50px;
}
main .contents .company_list {
	display: flex;
	width: 100%;
}
.tablet main .contents .company_list {
	display: none;
}
main .contents .company_list > ul {
	width: 25%;
	margin-top: 15px;
	padding-left: 10px;
	padding-right: 10px;
}
main .contents .company_list > ul + ul {
	position: relative;
}
main .contents .company_list > ul + ul::before {
	content: "";
	position: absolute;
	width: 1px;
	height: 100%;
	background: #9BABCB;
	left: 0;
	top: 0;
}
main .contents .company_list > ul li a {
	text-decoration: underline;
}
main .contents .company_list > ul li a:hover {
	text-decoration: none;
}

footer {
	position: relative;
	width: 100%;
	background: #6CAC99;
	padding-top: 50px;
}
footer:has(.co2link) {
	padding-top: 0px;
}
footer:has(.co2link)::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100px;
	left: 0;
	top: 0;
	background: #E4EBEA;
	z-index: 0;
}
footer > div {
	position: relative;
	width: 100%;
	max-width: 1640px;
	padding: 0 20px;
	margin: 0 auto;
	z-index: 10;
}
.tablet footer > div {
	padding: 0;
}
footer .co2link {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
.pc footer .co2link {
	gap: 20px;
}
.tablet footer .co2link {
	flex-direction: column;
	gap: 0;
}
footer .co2link > a {
	position: relative;
	width: calc((100% - 40px) / 2);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 10px;
	height: 400px;
	font-size: clamp(1.5rem, 1.09309rem + 1.91489vw, 2.625rem);
	line-height: 1;
	font-weight: 400;
	color: #fff;
}
.wpc footer .co2link > a {
	height: 250px;
}
.pc footer .co2link > a {
	width: calc((100% - 20px) / 2);
}
.tablet footer .co2link > a {
	width: 100%;
}
footer .co2link > a::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #6A6262;
	mix-blend-mode: multiply;
	opacity: 0.7;
	z-index: 1;
	transition: 0.4s;
}
footer .co2link > a:hover {
	opacity: 1;
}
footer .co2link > a:hover::after {
	opacity: 0;
}
footer .co2link > a > div {
	position: relative;
	z-index: 10;
}
footer .co2link > a > div.label {
	font-size: clamp(2.5rem, 2.04787rem + 2.12766vw, 3.75rem);
	line-height: 1.5;
	font-weight: 400;
}
footer .co2link > a > div.tx {
	font-size: clamp(1.125rem, 1.07979rem + 0.21277vw, 1.25rem);
	line-height: 1.5;
	font-weight: 400;
}
footer .co2link > a > div.gt {
	font-size: clamp(1.75rem, 1.47872rem + 1.2766vw, 2.5rem);
	line-height: 1.5;
	font-weight: 400;
}
.tablet footer .co2link > a {
	height: 250px;
}
.sp footer .co2link > a {
	width: 100%;
	height: 180px;
}
footer .co2link > a.faq {
	background: url(/wordpress/wp-content/themes/root/common/images/footer01.jpg) no-repeat center/cover;
}
footer .co2link > a.access {
	background: url(/wordpress/wp-content/themes/root/common/images/footer02.jpg) no-repeat center/cover;
}
footer a.reserve {
	display: block;
	margin-top: 80px;
	background: #579381;
	height: 300px;
	padding: 10px;
	transition: 0.4s;
}
.wpc footer a.reserve {
	margin-top: 60px;
}
.pc footer a.reserve {
	margin-top: 40px;
}
.tablet footer a.reserve {
	display: none;
}
footer a.reserve:hover {
	opacity: 1;
	background: #BA7E79;
}
footer a.reserve > div {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 10px;
	height: 100%;
	border: 2px solid #fff;
	color: #fff;
}
.tablet footer a.reserve > div {
	padding: 30px 0;
}
footer a.reserve > div .label {
	font-family: "paganini", serif;
	font-size: clamp(2.5rem, 2.04787rem + 2.12766vw, 3.75rem);
	line-height: 1.5;
	font-weight: 400;
	font-weight: 300;
}
footer a.reserve > div .tx {
	font-size: clamp(1.125rem, 1.07979rem + 0.21277vw, 1.25rem);
	line-height: 1.5;
	font-weight: 400;
}
footer .bg_img {
	position: relative;
	height: 852px;
	background: #6CAC99;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 20px;
}
.tablet footer .bg_img {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
}
footer .bg_img .img {
	position: relative;
	z-index: 20;
}
footer .bg_img .mark {
	mix-blend-mode: color-burn;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
}
.pc footer .bg_img .mark {
	width: 80%;
}
footer .menu {
	margin-top: 30px;
	padding: 0 20px;
}
footer .menu .navi {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
footer .menu .navi a {
	color: #fff;
}
footer .menu .sns {
	display: flex;
	gap: 30px;
	margin-top: 40px;
}
.tablet footer .menu .sns {
	justify-content: center;
}
footer .footer_link {
	position: relative;
	margin-top: 120px;
	display: flex;
	justify-content: flex-end;
	padding: 30px 0 30px 20px;
}
.tablet footer .footer_link {
	margin-top: 40px;
}
footer .footer_link::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	background: #fff;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
footer .footer_link ul {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	width: 100%;
	max-width: 1640px;
}
footer .footer_link ul li {
	font-size: clamp(0.75rem, 0.68218rem + 0.31915vw, 0.9375rem);
	line-height: 1;
	font-weight: 400;
	color: #fff;
}
footer .footer_link ul li a {
	color: #fff;
}

#float_reserve {
	position: fixed;
	right: 0;
	top: 150px;
	z-index: 9000;
}
.wpc #float_reserve {
	display: none;
}
#float_reserve a {
	position: relative;
	display: block;
	background: #66514B;
	color: #fff;
	writing-mode: vertical-rl;
	padding: 20px 20px 65px 20px;
}
#float_reserve a::after {
	content: ">";
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	color: #fff;
	writing-mode: horizontal-tb;
}
#float_reserve a:hover {
	opacity: 1;
	background: #BA7E79;
}

#gototop {
	position: fixed;
	z-index: 100;
	right: 30px;
	bottom: 30px;
	opacity: 0;
	transition: 0.3s;
	pointer-events: none;
}
.tablet #gototop {
	right: 20px;
	bottom: 20px;
}
.sp #gototop {
	right: 10px;
	bottom: 10px;
}
.shortheader #gototop {
	opacity: 1;
	pointer-events: auto;
}
#gototop a {
	display: block;
	width: 60px;
	height: 60px;
}
.sp #gototop a {
	width: 40px;
	height: 40px;
}
#gototop a img {
	width: 100%;
}

.barlink {
	margin-top: 30px;
}
.sp .barlink {
	margin-top: 20px;
}
.barlink.center {
	text-align: center;
}
.barlink.center a {
	text-align: left;
}
.pc .barlink.pc_center {
	text-align: center;
}
.pc .barlink.pc_center a {
	text-align: left;
}
.barlink a {
	display: inline-block;
	position: relative;
	font-size: clamp(0.8125rem, 0.72207rem + 0.42553vw, 1.0625rem);
	line-height: 1.5;
	font-weight: 400;
	min-width: 250px;
	border-bottom: 1px solid #66514B;
	padding: 20px 0px 20px 10px;
	color: #66514B;
}
.barlink a:hover {
	opacity: 1;
	background: #F0E2E1;
}
.barlink a::after {
	content: ">";
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}

#cat_label {
	border-bottom: 1px solid #66514B;
}
#cat_label > div {
	position: relative;
	width: 100%;
	max-width: 1320px;
	margin: auto;
	padding: 175px 20px 80px;
}
.sp #cat_label > div {
	padding: 87.5px 10px 40px;
}
#cat_label.narrow > div {
	position: relative;
	width: 100%;
	max-width: 1320px;
	margin: auto;
	padding: 80px 20px 80px;
}
.sp #cat_label.narrow > div {
	padding: 40px 10px 40px;
}
#cat_label h1 {
	font-size: clamp(2rem, 1.6383rem + 1.70213vw, 3rem);
	line-height: 1;
	font-weight: 500;
}

main .lower_content {
	position: relative;
	width: 100%;
	max-width: 1320px;
	margin: auto;
	padding: 150px 20px 150px;
}
.sp main .lower_content {
	padding: 75px 10px 75px;
}
main .lower_content h2 {
	font-size: clamp(1.875rem, 1.60372rem + 1.2766vw, 2.625rem);
	line-height: 1.5;
	font-weight: 500;
}
main .lower_content h2.border {
	position: relative;
	padding-bottom: 40px;
}
main .lower_content h2.border::before {
	content: "";
	position: absolute;
	width: 80px;
	height: 6px;
	left: 0;
	bottom: 0;
	background: #6CAC99;
}
main .lower_content * + h2 {
	margin-top: 80px;
}
main .lower_content h3 {
	font-size: clamp(1.625rem, 1.44415rem + 0.85106vw, 2.125rem);
	line-height: 1.5;
	font-weight: 500;
}
main .lower_content * + h3 {
	margin-top: 60px;
}
main .lower_content h4 {
	font-size: clamp(1.375rem, 1.23936rem + 0.6383vw, 1.75rem);
	line-height: 1.5;
	font-weight: 500;
}
main .lower_content * + h4 {
	margin-top: 40px;
}
main .lower_content h5 {
	font-size: clamp(1.25rem, 1.15957rem + 0.42553vw, 1.5rem);
	line-height: 1.5;
	font-weight: 500;
}
main .lower_content * + h5 {
	margin-top: 30px;
}
main .lower_content h6 {
	font-size: clamp(1.125rem, 1.07979rem + 0.21277vw, 1.25rem);
	line-height: 1.5;
	font-weight: 500;
}
main .lower_content * + h6 {
	margin-top: 30px;
}
main .lower_content * + .text {
	margin-top: 40px;
}
main .lower_content * + p, main .lower_content * + ul {
	margin-top: 30px;
}
main .lower_content * + .column, main .lower_content * + .anchor_link, main .lower_content * + .table, main .lower_content * + .q_and_a, main .lower_content * + .form {
	margin-top: 80px;
}
.tablet main .lower_content * + .column, .tablet main .lower_content * + .anchor_link, .tablet main .lower_content * + .table, .tablet main .lower_content * + .q_and_a, .tablet main .lower_content * + .form {
	margin-top: 40px;
}
main .lower_content .column {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
.tablet main .lower_content .column {
	gap: 30px 20px;
}
.sp main .lower_content .column {
	gap: 20px 10px;
}
main .lower_content .column.reverse {
	flex-direction: row-reverse;
}
main .lower_content .column.col1 > * {
	width: calc((100% - 40px * (1 - 1)) / 1);
}
.tablet main .lower_content .column.col1 > * {
	width: calc((100% - 20px * (1 - 1)) / 1);
}
.tablet main .lower_content .column.tabcol1 > * {
	width: calc((100% - 20px * (1 - 1)) / 1) !important;
}
.tablet.sp main .lower_content .column.spcol1 > * {
	width: calc((100% - 10px * (1 - 1)) / 1) !important;
}
main .lower_content .column.col2 > * {
	width: calc((100% - 40px * (2 - 1)) / 2);
}
.tablet main .lower_content .column.col2 > * {
	width: calc((100% - 20px * (2 - 1)) / 2);
}
.tablet main .lower_content .column.tabcol2 > * {
	width: calc((100% - 20px * (2 - 1)) / 2) !important;
}
.tablet.sp main .lower_content .column.spcol2 > * {
	width: calc((100% - 10px * (2 - 1)) / 2) !important;
}
main .lower_content .column.col3 > * {
	width: calc((100% - 40px * (3 - 1)) / 3);
}
.tablet main .lower_content .column.col3 > * {
	width: calc((100% - 20px * (3 - 1)) / 3);
}
.tablet main .lower_content .column.tabcol3 > * {
	width: calc((100% - 20px * (3 - 1)) / 3) !important;
}
.tablet.sp main .lower_content .column.spcol3 > * {
	width: calc((100% - 10px * (3 - 1)) / 3) !important;
}
main .lower_content .column.col4 > * {
	width: calc((100% - 40px * (4 - 1)) / 4);
}
.tablet main .lower_content .column.col4 > * {
	width: calc((100% - 20px * (4 - 1)) / 4);
}
.tablet main .lower_content .column.tabcol4 > * {
	width: calc((100% - 20px * (4 - 1)) / 4) !important;
}
.tablet.sp main .lower_content .column.spcol4 > * {
	width: calc((100% - 10px * (4 - 1)) / 4) !important;
}
main .lower_content .column.col5 > * {
	width: calc((100% - 40px * (5 - 1)) / 5);
}
.tablet main .lower_content .column.col5 > * {
	width: calc((100% - 20px * (5 - 1)) / 5);
}
.tablet main .lower_content .column.tabcol5 > * {
	width: calc((100% - 20px * (5 - 1)) / 5) !important;
}
.tablet.sp main .lower_content .column.spcol5 > * {
	width: calc((100% - 10px * (5 - 1)) / 5) !important;
}
main .lower_content .column.center {
	justify-content: center;
}
main .lower_content .column img + p {
	margin-top: 10px;
}
main .lower_content .anchor_link {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
.tablet main .lower_content .anchor_link {
	gap: 30px;
}
.sp main .lower_content .anchor_link {
	gap: 20px;
}
main .lower_content .anchor_link.col1 > * {
	width: calc((100% - 40px * (1 - 1)) / 1);
}
.tablet main .lower_content .anchor_link.col1 > * {
	width: calc((100% - 30px * (1 - 1)) / 1);
}
.tablet main .lower_content .anchor_link.tabcol1 > * {
	width: calc((100% - 30px * (1 - 1)) / 1) !important;
}
.tablet.sp main .lower_content .anchor_link.spcol1 > * {
	width: calc((100% - 20px * (1 - 1)) / 1) !important;
}
main .lower_content .anchor_link.col2 > * {
	width: calc((100% - 40px * (2 - 1)) / 2);
}
.tablet main .lower_content .anchor_link.col2 > * {
	width: calc((100% - 30px * (2 - 1)) / 2);
}
.tablet main .lower_content .anchor_link.tabcol2 > * {
	width: calc((100% - 30px * (2 - 1)) / 2) !important;
}
.tablet.sp main .lower_content .anchor_link.spcol2 > * {
	width: calc((100% - 20px * (2 - 1)) / 2) !important;
}
main .lower_content .anchor_link.col3 > * {
	width: calc((100% - 40px * (3 - 1)) / 3);
}
.tablet main .lower_content .anchor_link.col3 > * {
	width: calc((100% - 30px * (3 - 1)) / 3);
}
.tablet main .lower_content .anchor_link.tabcol3 > * {
	width: calc((100% - 30px * (3 - 1)) / 3) !important;
}
.tablet.sp main .lower_content .anchor_link.spcol3 > * {
	width: calc((100% - 20px * (3 - 1)) / 3) !important;
}
main .lower_content .anchor_link.col4 > * {
	width: calc((100% - 40px * (4 - 1)) / 4);
}
.tablet main .lower_content .anchor_link.col4 > * {
	width: calc((100% - 30px * (4 - 1)) / 4);
}
.tablet main .lower_content .anchor_link.tabcol4 > * {
	width: calc((100% - 30px * (4 - 1)) / 4) !important;
}
.tablet.sp main .lower_content .anchor_link.spcol4 > * {
	width: calc((100% - 20px * (4 - 1)) / 4) !important;
}
main .lower_content .anchor_link.col5 > * {
	width: calc((100% - 40px * (5 - 1)) / 5);
}
.tablet main .lower_content .anchor_link.col5 > * {
	width: calc((100% - 30px * (5 - 1)) / 5);
}
.tablet main .lower_content .anchor_link.tabcol5 > * {
	width: calc((100% - 30px * (5 - 1)) / 5) !important;
}
.tablet.sp main .lower_content .anchor_link.spcol5 > * {
	width: calc((100% - 20px * (5 - 1)) / 5) !important;
}
main .lower_content .anchor_link a {
	position: relative;
	display: block;
	text-align: center;
	padding: 20px 10px;
	border-bottom: 1px solid #66514B;
	color: #66514B;
}
main .lower_content .anchor_link a::after {
	content: "";
	position: absolute;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
	border-top: 10px solid #66514B;
	border-right: 6px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 6px solid transparent;
}
main .lower_content .table {
	display: grid;
	grid-template-columns: 50% 50%;
	width: 100%;
	border-top: 1px solid #66514B;
}
main .lower_content .table > div {
	display: flex;
}
main .lower_content .table .th {
	flex: 0 0 auto;
	padding: 30px 20px 30px 10px;
	border-bottom: 1px solid #66514B;
}
main .lower_content .table .td {
	flex: 1 1 0;
	padding: 30px 10px 30px 20px;
	border-bottom: 1px solid #66514B;
}
main .lower_content .table.border .th {
	border-right: 1px solid #66514B;
}
main .lower_content .table.col3 {
	grid-template-columns: 150px 1fr 1fr;
}
.sp main .lower_content .table.col3 {
	grid-template-columns: auto 1fr 1fr;
}
main .lower_content .table.col3 .th + .td {
	border-right: 1px solid #66514B;
}
main .lower_content .q_and_a {
	border-top: 1px solid #66514B;
}
main .lower_content .q_and_a .q {
	position: relative;
	padding: 30px 80px;
	border-bottom: 1px solid #66514B;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
main .lower_content .q_and_a .q:hover {
	opacity: 0.7;
}
main .lower_content .q_and_a .q::before {
	content: "Q";
	position: absolute;
	left: 15px;
	top: 20px;
	font-size: 24px;
}
main .lower_content .q_and_a .q::after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 70px;
	height: 70px;
	background: url(/wordpress/wp-content/themes/root/common/images/arrow02.svg) no-repeat center;
	z-index: 100;
	transition: 0.2s;
}
main .lower_content .q_and_a .q.ac::after {
	transform: translateY(-50%) rotate(180deg);
}
main .lower_content .q_and_a .a {
	display: none;
	position: relative;
	padding: 30px 80px;
	background: #F0E2E1;
	border-bottom: 1px solid #66514B;
}
main .lower_content .q_and_a .a::before {
	content: "A";
	position: absolute;
	left: 15px;
	top: 20px;
	font-size: 24px;
	color: #BA7E79;
}
main .lower_content .form .label {
	font-size: clamp(1rem, 0.97739rem + 0.10638vw, 1.0625rem);
	line-height: 1.5;
	font-weight: 400;
}
main .lower_content .form .label + p {
	margin-top: 10px;
	font-size: clamp(0.9375rem, 0.91489rem + 0.10638vw, 1rem);
	line-height: 1.5;
	font-weight: 400;
}
main .lower_content .form .label span {
	display: inline-block;
	margin-left: 10px;
	color: #DB8F88;
}
main .lower_content .form * + .label {
	margin-top: 30px;
}
main .lower_content .form input {
	width: 100%;
	display: inline-block;
	margin-top: 10px;
	background: #fff;
	padding: 10px 8px;
	border: 1px solid #66514B;
}
main .lower_content .form input[type='submit'] {
	border: none;
	border-bottom: 1px solid #66514B;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	width: 200px;
	display: block;
	margin: 30px auto 0;
	background: none;
	background: url(/wordpress/wp-content/themes/root/common/images/arrow03.svg) no-repeat right center;
}
main .lower_content .form input[type='submit']:hover {
	opacity: 0.7;
}
main .lower_content .form input[type='submit']:disabled {
	cursor: auto;
}
main .lower_content .form input[type='submit']:disabled:hover {
	opacity: 1;
}
main .lower_content .form input[type='radio'] {
	appearance: auto;
	width: auto;
	margin-top: 0;
	padding: 0;
	border: none;
}
main .lower_content .form input[type='checkbox'] {
	appearance: auto;
	width: auto;
	margin-top: 0;
	padding: 0;
}
main .lower_content .form .wpcf7-list-item {
	margin-top: 10px;
	margin-left: 0;
	display: block;
}
main .lower_content .form .wpcf7-list-item-label a {
	color: #66514B;
	text-decoration: underline;
}
main .lower_content .form .wpcf7-list-item-label a:hover {
	text-decoration: none;
}
main .lower_content .form .zip {
	vertical-align: middle;
	margin-top: 10px;
}
main .lower_content .form .zip input {
	width: 100px;
	margin-top: 0;
}
main .lower_content .form .zip span.dash {
	display: inline-block;
	padding: 0px 10px 0;
	line-height: 50px;
}
main .lower_content .form .hide_sick {
	display: none;
	margin-top: 20px;
}
main .lower_content .form .date {
	padding-top: 10px;
}
main .lower_content .form .date input {
	width: 170px;
	padding: 10px 8px;
	margin-top: 0;
}
.sp main .lower_content .form .date input {
	display: block;
	width: 100%;
}
main .lower_content .form .date select {
	display: inline-block;
	margin-left: 30px;
	appearance: auto;
	padding: 12px 12px;
	background: #fff;
	border: 1px solid #66514B;
}
.sp main .lower_content .form .date select {
	margin-top: 20px;
	margin-left: 0;
	display: block;
	width: 100%;
}
main .lower_content .form textarea {
	width: 100%;
	display: inline-block;
	margin-top: 10px;
	background: #fff;
	padding: 10px 8px;
	border: 1px solid #66514B;
}
main .lower_content .gmap {
	width: 100%;
	margin-top: 60px;
}
.sp main .lower_content .gmap {
	margin-top: 30px;
}
main .lower_content .gmap iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
}
