/*
Theme Name: hirota Theme
Theme URI: 
Author: hirota
Author URI: 
Description: Original Theme of hirota
Version: 1.0
License: hirota
License URI: 
Tags: 
Text Domain: 
*/
@charset "UTF-8";

*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0;
	padding: 0;
}

:where([hidden]:not([hidden=until-found])) {
	display: none !important;
}

:where(html) {
	-moz-tab-size: 2;
	  -o-tab-size: 2;
	     tab-size: 2;
	-webkit-text-size-adjust: none;
	color-scheme: dark light;
}

:where(body) {
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

:where(button) {
	all: unset;
}

:where(input,
button,
textarea,
select) {
	font: inherit;
	color: inherit;
}

:where(textarea) {
	resize: vertical;
}

:where(button,
label,
select,
summary,
[role=button],
[role=option]) {
	cursor: pointer;
}

:where(:disabled) {
	cursor: not-allowed;
}

:where(label:has(> input:disabled),
label:has(+ input:disabled)) {
	cursor: not-allowed;
}

:where(a) {
	color: inherit;
	text-underline-offset: 0.2ex;
}

:where(ul,
ol) {
	list-style: none;
}

:where(img,
svg,
video,
canvas,
audio,
iframe,
embed,
object) {
	display: block;
}

:where(img,
picture,
svg,
video) {
	max-inline-size: 100%;
	block-size: auto;
}

:where(p,
h1,
h2,
h3,
h4,
h5,
h6) {
	overflow-wrap: break-word;
}

:where(h1,
h2,
h3 h4) {
	line-height: 1.5;
}

:where(hr) {
	overflow: visible;
	border: none;
	color: inherit;
	-webkit-border-before: 1px solid;
	        border-block-start: 1px solid;
	block-size: 0;
}

:where(:focus-visible,
:target) {
	scroll-margin-block: 8vh;
}

:where(.visually-hidden:not(:focus-within,
:active)) {
	position: absolute !important;
	overflow: hidden !important;
	width: 1px !important;
	height: 1px !important;
	border: 0 !important;
	white-space: nowrap !important;
	-webkit-clip-path: inset(50%) !important;
	        clip-path: inset(50%) !important;
}

html {
	margin: 0;
	padding: 0;
	font-size: 62.5%;
	word-wrap: break-word;
}

body {
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	background-color: #fff;
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
	line-height: 1.8;
	color: #444;
	text-align: left;
	letter-spacing: 0.05em;
	-webkit-text-size-adjust: 100%;
}

img {
	max-width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-size: cover;
	font-style: italic;
	vertical-align: middle;
	-webkit-shape-margin: 0.75rem;
	        shape-margin: 0.75rem;
}

a {
	color: #444;
	text-decoration: none;
}

.en {
	font-family: "Lato", sans-serif;
}

.wrapper {
	width: 85%;
	max-width: 1280px;
	margin: 0 auto;
}

.c-btn--primary {
	position: relative;
	display: -ms-grid;
	display: grid;
	border: 2px solid transparent;
	border-radius: 999px;
	background-color: #fd7c7c;
	color: #fff;
	-webkit-transition: background-color 0.4s ease, border-color 0.4s ease;
	-moz-transition: background-color 0.4s ease, border-color 0.4s ease;
	transition: background-color 0.4s ease, border-color 0.4s ease;
	place-items: center;
}

.c-btn--primary:hover {
	border-color: #fd7c7c;
	background-color: #fff;
	color: #fd7c7c;
}

.c-btn--primary:hover::after {
	background-color: #fd7c7c;
}

.c-btn--primary::after {
	position: absolute;
	top: 50%;
	display: inline-block;
	background-color: #fff;
	content: "";
	-webkit-transition: background-color 0.4s ease;
	-moz-transition: background-color 0.4s ease;
	transition: background-color 0.4s ease;
	-webkit-transform: translateY(-50%);
	   -moz-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-mask: url(./images/common/white_arrow.svg) center/contain no-repeat;
	        mask: url(./images/common/white_arrow.svg) center/contain no-repeat;
	aspect-ratio: 12/14;
}

.c-btn--primary .text {
	position: relative;
	font-weight: 700;
	letter-spacing: 0.05em;
	-webkit-transition: color 0.4s ease;
	-moz-transition: color 0.4s ease;
	transition: color 0.4s ease;
}

.c-heading_section {
	text-align: center;
}

.c-heading_section .title {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -moz-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	margin-top: 4px;
	font-size: clamp(2.8rem, 2.3958333333vw, 4.6rem);
	font-weight: 700;
	color: #fd7c7c;
}

.c-heading_section .enTitle {
	display: block;
	font-family: "Lato", sans-serif;
	font-size: clamp(1.3rem, 0.8333333333vw, 1.6rem);
	font-weight: 700;
}

.back_circle {
	position: absolute;
	z-index: -1;
}

.back_circle img {
	width: 100%;
}

.fade-appear {
	opacity: 0;
}

.fade-appear.fade-action {
	-webkit-animation-name: appear;
	   -moz-animation-name: appear;
	        animation-name: appear;
	-webkit-animation-duration: 0.8s;
	   -moz-animation-duration: 0.8s;
	        animation-duration: 0.8s;
	-webkit-animation-timing-function: ease;
	   -moz-animation-timing-function: ease;
	        animation-timing-function: ease;
	-webkit-animation-fill-mode: forwards;
	   -moz-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}

.fade-in {
	opacity: 0;
}

.fade-in.fade-action {
	-webkit-animation-name: fade-in;
	   -moz-animation-name: fade-in;
	        animation-name: fade-in;
	-webkit-animation-duration: 0.8s;
	   -moz-animation-duration: 0.8s;
	        animation-duration: 0.8s;
	-webkit-animation-timing-function: ease;
	   -moz-animation-timing-function: ease;
	        animation-timing-function: ease;
	-webkit-animation-fill-mode: forwards;
	   -moz-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}

.fade-up {
	opacity: 0;
}

.fade-up.fade-action {
	-webkit-animation-name: fade-up;
	   -moz-animation-name: fade-up;
	        animation-name: fade-up;
	-webkit-animation-duration: 0.8s;
	   -moz-animation-duration: 0.8s;
	        animation-duration: 0.8s;
	-webkit-animation-timing-function: ease;
	   -moz-animation-timing-function: ease;
	        animation-timing-function: ease;
	-webkit-animation-fill-mode: forwards;
	   -moz-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}

.fade-right {
	opacity: 0;
}

.fade-right.fade-action {
	-webkit-animation-name: fade-right;
	   -moz-animation-name: fade-right;
	        animation-name: fade-right;
	-webkit-animation-duration: 0.8s;
	   -moz-animation-duration: 0.8s;
	        animation-duration: 0.8s;
	-webkit-animation-timing-function: ease;
	   -moz-animation-timing-function: ease;
	        animation-timing-function: ease;
	-webkit-animation-fill-mode: forwards;
	   -moz-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}

.fade-left {
	opacity: 0;
}

.fade-left.fade-action {
	-webkit-animation-name: fade-left;
	   -moz-animation-name: fade-left;
	        animation-name: fade-left;
	-webkit-animation-duration: 0.8s;
	   -moz-animation-duration: 0.8s;
	        animation-duration: 0.8s;
	-webkit-animation-timing-function: ease;
	   -moz-animation-timing-function: ease;
	        animation-timing-function: ease;
	-webkit-animation-fill-mode: forwards;
	   -moz-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}

.fade-bg .title {
	position: relative;
	color: transparent;
	-webkit-transition: color 0.1ms 0.35s;
	-moz-transition: color 0.1ms 0.35s;
	transition: color 0.1ms 0.35s;
}

.fade-bg .title::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--c-primary);
	content: "";
	-webkit-transform: translate(101%, -50%);
	   -moz-transform: translate(101%, -50%);
	    -ms-transform: translate(101%, -50%);
	        transform: translate(101%, -50%);
}

.fade-bg.white .title::before {
	background-color: var(--c-white);
}

.fade-bg.fade-action .title {
	color: var(--c-primary);
}

.fade-bg.fade-action .title::before {
	-webkit-animation-name: fade-bg;
	   -moz-animation-name: fade-bg;
	        animation-name: fade-bg;
	-webkit-animation-duration: 1.25s;
	   -moz-animation-duration: 1.25s;
	        animation-duration: 1.25s;
	-webkit-animation-fill-mode: forwards;
	   -moz-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}

.fade-bg.fade-action.white .title {
	color: var(--c-white);
}

.fade-cheese {
	opacity: 0;
}

.fade-cheese.fade-action {
	-webkit-animation-name: appear;
	   -moz-animation-name: appear;
	        animation-name: appear;
	-webkit-animation-duration: 0.8s;
	   -moz-animation-duration: 0.8s;
	        animation-duration: 0.8s;
	-webkit-animation-timing-function: ease;
	   -moz-animation-timing-function: ease;
	        animation-timing-function: ease;
	-webkit-animation-fill-mode: forwards;
	   -moz-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
}

.l-header {
	position: relative;
}

.l-header_left {
	position: absolute;
	z-index: 10;
}

.l-header_left img {
	width: clamp(50rem, 36.09375vw, 69.3rem);
}

.l-header .circle_image {
	position: absolute;
	top: 500px;
	left: 0;
	width: clamp(9rem, 5.7291666667vw, 11rem);
}

.l-header_right {
	position: relative;
	z-index: 20;
	padding: 20px 20px 0 0;
}

.l-header_right .link_group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-webkit-justify-content: end;
	   -moz-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: end;
	gap: 20px;
}

.l-header .header_toplink {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 15px;
	line-height: 1;
	-webkit-transition: opacity 0.4s ease;
	-moz-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 5px;
	-webkit-box-pack: end;
	-webkit-justify-content: end;
	   -moz-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: end;
}

.l-header .header_toplink:hover {
	opacity: 0.7;
}

.l-header .header_toplink a {
	font-size: 15px;
	font-weight: 700;
}

.l-header .header_toplink .circle {
	position: relative;
	display: inline-block;
	width: 16px;
	height: 16px;
	border: 1.8px solid #fd7c7c;
	border-radius: 50%;
}

.l-header .header_toplink .circle::before {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 10px;
	background-image: url("./images/common/pink_arrow.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	-webkit-transform: translate(-50%, -50%);
	   -moz-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.l-header_nav {
	position: relative;
	z-index: 20;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: end;
	-webkit-justify-content: end;
	   -moz-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: end;
}

.l-header_list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-right: clamp(1rem, 1.5625vw, 3rem);
}

.l-header_menu {
	padding: 0 clamp(1rem, 1.5625vw, 3rem);
	background-image: -webkit-linear-gradient(#737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(#737373 2px, transparent 3px);
	background-image: linear-gradient(#737373 2px, transparent 3px);
	background-repeat: repeat-y;
	background-position: right center;
	background-size: 1px 8px;
	-webkit-transition: opacity 0.4s ease;
	-moz-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
}

.l-header_menu a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	font-size: clamp(1.4rem, 0.9375vw, 1.8rem);
	font-weight: 700;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.l-header_menu a:hover {
	opacity: 0.7;
}

.l-header_menu:first-child {
	position: relative;
}

.l-header_menu:first-child::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 1px;
	height: 100%;
	background-image: -webkit-linear-gradient(#737373 2px, transparent 6px);
	background-image: -moz-linear-gradient(#737373 2px, transparent 6px);
	background-image: linear-gradient(#737373 2px, transparent 6px);
	background-repeat: repeat-y;
	background-size: 1px 8px;
	content: "";
	-webkit-transform: translateY(-50%);
	   -moz-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.l-header .header_contact {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px;
}

.l-header .header_contact_tel {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: 240px;
	height: 70px;
	border-radius: 10px;
	background: #ffe34d;
	font-weight: 700;
	-webkit-transition: opacity 0.4s ease;
	-moz-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.l-header .header_contact_tel:hover {
	opacity: 0.7;
}

.l-header .header_contact_tel .tel_group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 5px;
}

.l-header .header_contact_tel .tel_group p {
	font-family: "Lato", sans-serif;
	font-size: 25px;
	line-height: 1.4;
}

.l-header .header_contact_tel .tel_time {
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
}

.l-header .header_contact_tel .tel_time span {
	font-family: "Lato", sans-serif;
}

.l-header .header_contact_entry {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 240px;
	height: 70px;
	padding-left: 20px;
	border-radius: 10px;
	background: #fd7c7c;
	font-weight: 700;
	color: #fff;
	-webkit-transition: opacity 0.4s ease;
	-moz-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 40px;
}

.l-header .header_contact_entry:hover {
	opacity: 0.7;
}

.l-header .header_contact_entry p {
	font-size: 20px;
}

.l-header .header_contact_recruit {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 240px;
	height: 70px;
	padding-left: 20px;
	border-radius: 10px;
	background: #e38222;
	font-weight: 700;
	color: #fff;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 40px;
}

.l-header .header_contact_recruit p {
	font-size: 20px;
}

.l-header .hamburger {
	position: relative;
	z-index: 100;
}

.l-header .hamburger_btn {
	position: absolute;
	z-index: 999;
	top: 15px;
	right: 15px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: 90px;
	height: 90px;
	margin-top: 15px;
	border-radius: 50%;
	background: #fd7c7c;
	cursor: pointer;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	transition: 0.3s;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 8px;
}

.l-header .hamburger_btn span {
	width: 50px;
	height: 2px;
	border-radius: 2px;
	background: #fff;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	transition: 0.3s;
	-webkit-transform: translateY(4px);
	   -moz-transform: translateY(4px);
	    -ms-transform: translateY(4px);
	        transform: translateY(4px);
}

.l-header .hamburger_btn p {
	margin-top: 2px;
	font-family: "Lato", sans-serif;
	font-size: clamp(1.7rem, 2.4390243902vw, 2rem);
	font-weight: 700;
	color: #fff;
}

.l-header .hamburger_btn.active span:nth-child(1) {
	-webkit-transform: rotate(23deg) translate(2px, 4px);
	   -moz-transform: rotate(23deg) translate(2px, 4px);
	    -ms-transform: rotate(23deg) translate(2px, 4px);
	        transform: rotate(23deg) translate(2px, 4px);
}

.l-header .hamburger_btn.active span:nth-child(2) {
	-webkit-transform: rotate(-23deg) translate(2px, -5px);
	   -moz-transform: rotate(-23deg) translate(2px, -5px);
	    -ms-transform: rotate(-23deg) translate(2px, -5px);
	        transform: rotate(-23deg) translate(2px, -5px);
}

.l-header .hamburger_menu {
	position: fixed;
	z-index: 90;
	display: none;
	overflow-y: auto;
	width: 100%;
	height: 100dvh;
	padding: 80px 20px 40px;
	background: #fff;
	inset: 0;
	-webkit-overflow-scrolling: touch;
}

.l-header .hamburger_menu.open {
	display: block;
	-webkit-animation: fadeIn 0.3s ease;
	   -moz-animation: fadeIn 0.3s ease;
	        animation: fadeIn 0.3s ease;
}

.l-header .hamburger_menu_list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: 85%;
	margin: 0 auto;
	margin-bottom: 40px;
	gap: 10%;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.l-header .hamburger_menu_list li a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	padding: 10px 5px;
	background-image: -webkit-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: linear-gradient(to right, #737373 2px, transparent 3px);
	background-repeat: repeat-x;
	background-position: bottom left;
	background-size: 8px 1px;
	font-size: 18px;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 12px;
}

.l-footer {
	padding-top: 50px;
}

.l-footer .group_area .ttl_group_area {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 30px;
	text-align: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.l-footer .group_area .bn_list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 1240px;
	margin: 0 auto;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.l-footer .group_area .bn_list li {
	width: 50%;
}

.l-footer .group_area .bn_list li img {
	-webkit-transition: opacity 0.4s ease;
	-moz-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
}

.l-footer .group_area .bn_list li:hover img {
	opacity: 0.7;
}

.l-footer .bg-footer {
	height: 1098px;
	margin-top: 90px;
	background: url("./images/common/footer_img.png") no-repeat;
	background-position: center;
	color: #fff;
}

.l-footer .bg-footer_wrapper {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 1200px;
	padding-top: 100px;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	gap: 80px;
}

.l-footer .bg-footer_wrapper .footer_info {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: 40%;
}

.l-footer .bg-footer_wrapper .footer_info_address {
	margin-top: 45px;
	font-size: 19px;
}

.l-footer .bg-footer_wrapper .footer_info_banner {
	margin-top: 55px;
	-webkit-transition: opacity 0.4s ease;
	-moz-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
}

.l-footer .bg-footer_wrapper .footer_info_banner:hover {
	opacity: 0.7;
}

.l-footer .bg-footer_wrapper .footer_right {
	width: 70%;
}

.l-footer .bg-footer_wrapper .footer_nav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-webkit-flex: 1 1;
	   -moz-box-flex: 1;
	    -ms-flex: 1 1;
	        flex: 1 1;
	-webkit-box-pack: end;
	-webkit-justify-content: end;
	   -moz-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: end;
	gap: clamp(4rem, 3.90625vw, 7.5rem);
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.l-footer .bg-footer_wrapper .footer_nav ul {
	list-style: none;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title {
	margin-bottom: 25px;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title a {
	position: relative;
	display: inline-block;
	padding-bottom: 2px;
	font-size: 18px;
	color: #fff;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background-color: #fff;
	content: "";
	-webkit-transition: width 0.3s ease;
	-moz-transition: width 0.3s ease;
	transition: width 0.3s ease;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title a:hover::after {
	width: 100%;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title_detail {
	position: relative;
	margin-bottom: 15px;
	padding-left: 12px;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title_detail::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "-";
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title_detail a {
	position: relative;
	display: inline-block;
	padding-bottom: 2px;
	font-size: 16px;
	font-weight: 500;
	color: #fff;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title_detail a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background-color: #fff;
	content: "";
	-webkit-transition: width 0.3s ease;
	-moz-transition: width 0.3s ease;
	transition: width 0.3s ease;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title_detail a:hover::after {
	width: 100%;
}

.l-footer .bg-footer_wrapper .footer_bottom_menu {
	margin-top: 60px;
	text-align: end;
}

.l-footer .bg-footer_wrapper .footer_bottom_menu a {
	position: relative;
	display: inline-block;
	padding-bottom: 2px;
	font-size: 14px;
	color: #fff;
}

.l-footer .bg-footer_wrapper .footer_bottom_menu a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background-color: #fff;
	content: "";
	-webkit-transition: width 0.3s ease;
	-moz-transition: width 0.3s ease;
	transition: width 0.3s ease;
}

.l-footer .bg-footer_wrapper .footer_bottom_menu a:hover::after {
	width: 100%;
}

.l-footer .bg-footer_wrapper .footer_bottom_menu span {
	margin: 0 10px;
}

.l-footer .bg-footer_wrapper .copyright {
	margin-top: 5px;
	font-size: 13px;
	text-align: end;
}

.l-contact {
	position: relative;
	position: relative;
	z-index: -2;
	z-index: 10;
	margin-top: -200px;
	padding: 100px 0 150px;
	background: url(./images/common/contact.png) top/cover no-repeat;
	text-align: center;
}

.l-contact_circle {
	bottom: -50px;
	width: clamp(7.5rem, 7.2916666667vw, 14rem);
}

.l-contact_inner {
	width: 85%;
	max-width: 1200px;
	margin: 0 auto;
}

.l-contact_inner .enTitle,
.l-contact_inner .title,
.l-contact_inner .contact_text {
	color: #fff;
}

.l-contact_inner .contact_text {
	margin-top: 30px;
	font-size: clamp(1.6rem, 1.5vw, 1.8rem);
}

.l-contact_box {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin: 30px auto 0;
	padding: 90px 100px;
	border-radius: 30px;
	background: #fff;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.l-contact_box_tel {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	text-align: left;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.l-contact .tel {
	width: 50%;
	margin: 0 auto;
	background-image: -webkit-linear-gradient(#737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(#737373 2px, transparent 3px);
	background-image: linear-gradient(#737373 2px, transparent 3px);
	background-repeat: repeat-y;
	background-position: right center;
	background-size: 1px 8px;
}

.l-contact .tel_head {
	font-size: clamp(2rem, 1.9166666667vw, 2.3rem);
	font-weight: 500;
}

.l-contact .tel_number {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Lato", sans-serif;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 14px;
}

.l-contact .tel_number a {
	font-size: clamp(4.5rem, 3.7692307692vw, 4.9rem);
	font-weight: 700;
	color: #fd7c7c;
}

.l-contact .tel_time {
	margin-top: 12px;
	font-size: clamp(1.6rem, 1.6666666667vw, 2rem);
}

.l-contact .contact_form {
	width: 50%;
	text-align: center;
}

.l-contact .contact_form_head {
	margin-bottom: 15px;
	font-size: clamp(2rem, 1.9166666667vw, 2.3rem);
	font-weight: 500;
}

.l-contact .contact_form .form_btn {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -moz-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	width: clamp(30rem, 32.9166666667vw, 39.5rem);
	padding: 30px 65px;
	border-radius: 999px;
	background: #fd7c7c;
	font-size: 22px;
	font-weight: 700;
	color: #fff;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 12px;
}

.l-contact .contact_form .form_btn:hover {
	border-color: #fd7c7c;
	background-color: #fff;
	color: #fd7c7c;
}

.l-contact .contact_form .form_btn:hover::after {
	background-color: #fd7c7c;
}

.l-contact .contact_form .form_btn .text {
	font-size: clamp(2rem, 1.8333333333vw, 2.2rem);
}

.l-contact .contact_form .form_btn .arrow {
	font-size: 20px;
	-webkit-transform: translateY(1px);
	   -moz-transform: translateY(1px);
	    -ms-transform: translateY(1px);
	        transform: translateY(1px);
}

.l-mv {
	position: relative;
}

.l-mv_image {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 90%;
	margin: 0 auto;
	padding-top: clamp(2rem, 4.1666666667vw, 8rem);
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.l-mv_circle {
	right: 0;
	bottom: 30px;
	width: clamp(10rem, 6.25vw, 12rem);
}

.l-mv_title {
	position: absolute;
	top: 57%;
	left: 50%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: clamp(20rem, 19.7916666667vw, 38rem);
	-webkit-transform: translate(-50%, -50%);
	   -moz-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.home {
	position: relative; /* ==============================================
  お知らせ
  ============================================== */ /* ==============================================
  保育所の紹介
  ============================================== */ /* ==============================================
  保育所の特色
  ============================================== */ /* ==============================================
  スライダー
  ============================================== */ /* ==============================================
  1日の過ごし方
  ============================================== */ /* ==============================================
  年間行事
  ============================================== */ /* ==============================================
  特別事業
  ============================================== */ /* ==============================================
  採用情報
   ============================================== */
}

.home .mv {
	position: relative;
}

.home .mv_inner {
	position: relative;
	width: 92%;
	margin: 0 auto;
	padding-top: 40px;
}

.home .mv .mv_image {
	position: relative;
	z-index: 20;
	overflow: hidden;
	width: 90%;
	margin: 0 auto;
	aspect-ratio: 1513/858;
	-webkit-clip-path: url(#mask-pc);
	        clip-path: url(#mask-pc);
}

.home .mv .mv_slide {
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-transition: opacity 1.2s ease-in-out;
	-moz-transition: opacity 1.2s ease-in-out;
	transition: opacity 1.2s ease-in-out;
	inset: 0;
	-o-object-fit: cover;
	   object-fit: cover;
}

.home .mv .mv_slide.active {
	opacity: 1;
}

.home .mv .mv_frame {
	position: absolute;
	z-index: 10;
	top: 37px;
	left: 50%;
	width: 89%;
	height: auto;
	pointer-events: none;
	-webkit-transform: translateX(-50%);
	   -moz-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}

.home .mv .mv_frame img {
	width: 100%;
}

.home .mv_copy {
	position: absolute;
	z-index: 30;
	top: clamp(1rem, 5.2083333333vw, 10rem);
	right: clamp(1rem, 3.6458333333vw, 7rem);
}

.home .mv_copy img {
	width: clamp(14rem, 11.4583333333vw, 22rem);
}

.home .news {
	position: relative;
	padding-top: 50px;
}

.home .news_circle_01 {
	top: -50px;
	right: 0;
	width: clamp(10rem, 6.25vw, 12rem);
}

.home .news_circle_02 {
	bottom: -80px;
	left: 0;
	width: clamp(10rem, 6.25vw, 12rem);
}

.home .news_wrapper {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	gap: 5%;
}

.home .news_title {
	text-align: left;
}

.home .news_btn {
	margin-top: 95px;
}

.home .news_list {
	width: 70%;
}

.home .news_item {
	padding: 30px 0;
	background-image: -webkit-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: linear-gradient(to right, #737373 2px, transparent 3px);
	background-repeat: repeat-x;
	background-position: bottom left;
	background-size: 8px 1px;
}

.home .news_item .news_item_inner:hover .circle {
	border-color: #fd7c7c;
	background: #fd7c7c;
}

.home .news_item .news_item_inner:hover .circle::before {
	background-image: url("./images/common/white_arrow.svg");
}

.home .news_item_inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 20px;
}

.home .news_item_info {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: clamp(25rem, 14.5833333333vw, 28rem);
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 20px;
}

.home .news_item_date {
	font-family: "Lato", sans-serif;
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	font-weight: 700;
	color: #fd7c7c;
}

.home .news_item_cat {
	min-width: 120px;
	padding: 1px 12px;
	border-radius: 20px;
	background: #ffe6e6;
	font-size: clamp(1.5rem, 0.8333333333vw, 1.6rem);
	text-align: center;
}

.home .news_item_right {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 65%;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.home .news_item_text {
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
}

.home .news .circle {
	position: relative;
	display: inline-block;
	width: clamp(3rem, 2.1354166667vw, 4.1rem);
	height: clamp(3rem, 2.1354166667vw, 4.1rem);
	border: 3px solid #fd7c7c;
	border-radius: 50%;
	background: #fff;
	-webkit-transition: background-color 0.4s;
	-moz-transition: background-color 0.4s;
	transition: background-color 0.4s;
}

.home .news .circle::before {
	position: absolute;
	top: 50%;
	left: 50%;
	width: clamp(1.2rem, 0.78125vw, 1.5rem);
	height: clamp(1.5rem, 0.9375vw, 1.8rem);
	background-image: url("./images/common/pink_arrow.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	-webkit-transform: translate(-50%, -50%);
	   -moz-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.home .features {
	position: relative;
	z-index: 0;
	margin-top: 200px;
	padding: 80px 0;
	background: #ffe6e6;
}

.home .features_circle_01 {
	right: 0;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.home .features_circle_02 {
	top: 800px;
	left: 0;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.home .features_circle_03 {
	right: 0;
	bottom: 10px;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.home .features_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.home .features_jpTitle::before {
	display: block;
	width: clamp(10rem, 9.1666666667vw, 13.2rem);
	height: auto;
	background-image: url("images/home/features_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 132/43;
}

.home .features_jpTitle::after {
	display: block;
	width: clamp(10rem, 9.1666666667vw, 13.2rem);
	height: auto;
	background-image: url("images/home/features_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 132/43;
}

.home .features img {
	width: 100%;
}

.home .features::before {
	position: absolute;
	z-index: -2;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/130;
}

.home .features::after {
	position: absolute;
	z-index: -2;
	bottom: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink_bottom.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(98%);
	   -moz-transform: translateY(98%);
	    -ms-transform: translateY(98%);
	        transform: translateY(98%);
	aspect-ratio: 1488/130;
}

.home .features_grid {
	display: -ms-grid;
	display: grid;
	margin-top: clamp(4.5rem, 4.1666666667vw, 8rem);
	gap: clamp(1rem, 2.0833333333vw, 4rem);
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
}

.home .features_block {
	position: relative;
	overflow: hidden;
	border-radius: 35px;
	background: #fff;
}

.home .features_block_inner {
	position: relative;
	padding-top: clamp(3rem, 2.34375vw, 4.5rem);
	padding-right: clamp(2rem, 3.125vw, 6rem);
	padding-bottom: clamp(2rem, 3.125vw, 6rem);
	padding-left: clamp(2rem, 3.125vw, 6rem);
	text-align: center;
}

.home .features_block_number {
	position: absolute;
	top: -55px;
	left: 50%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: clamp(7rem, 5.3645833333vw, 10.3rem);
	height: clamp(7rem, 5.3645833333vw, 10.3rem);
	border-radius: 50%;
	background: #fd7c7c;
	color: #fff;
	-webkit-transform: translateX(-50%);
	   -moz-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.home .features_block_label {
	font-size: 12px;
}

.home .features_block_count {
	font-size: clamp(1.8rem, 1.71875vw, 3.3rem);
	line-height: 1;
}

.home .features_block_text {
	margin-top: 8px;
}

.home .features_block_title {
	margin-bottom: 10px;
	font-size: clamp(2rem, 1.4583333333vw, 2.8rem);
	font-weight: bold;
}

.home .features_block_desc {
	font-size: clamp(1.8rem, 0.9375vw, 1.8rem);
	text-align: left;
}

.home .features_btn {
	margin: 0 auto;
	margin-top: clamp(4.5rem, 4.9479166667vw, 9.5rem);
}

.home .philosophy {
	position: relative;
	padding-top: 160px;
	padding-bottom: 80px;
}

.home .philosophy_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.home .philosophy_jpTitle::before {
	display: block;
	width: clamp(8rem, 21.0416666667vw, 40.4rem);
	height: auto;
	background-image: url("images/home/philosophy_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 404/141;
}

.home .philosophy_jpTitle::after {
	display: block;
	width: clamp(8rem, 21.0416666667vw, 40.4rem);
	height: auto;
	background-image: url("images/home/philosophy_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 404/141;
}

.home .philosophy_image_left {
	position: absolute;
	top: 25%;
	left: 0;
	width: 27%;
}

.home .philosophy_image_bottom {
	position: absolute;
	bottom: 3%;
	left: 10%;
	width: 15%;
}

.home .philosophy_image_bottom img {
	width: 100%;
}

.home .philosophy_image_right {
	position: absolute;
	top: 26%;
	right: 0;
	width: 26%;
}

.home .philosophy_image_right img {
	right: 0;
	width: 100%;
}

.home .philosophy_subtitle {
	font-size: clamp(3.4rem, 1.875vw, 3.6rem);
	line-height: 1.4;
	text-align: center;
}

.home .philosophy_text {
	position: relative;
	z-index: 10;
	max-width: 830px;
	margin: 45px auto 0;
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	text-align: center;
}

.home .philosophy_text p {
	margin-bottom: 25px;
}

.home .philosophy_btn {
	margin: 0 auto;
	margin-top: 50px;
}

.home .slider {
	--unit: 408px;
	position: relative;
	z-index: 10;
	overflow: hidden;
	padding: 40px 0;
}

.home .slider .slider_track {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: -webkit-calc(var(--unit) * 10);
	width: -moz-calc(var(--unit) * 10);
	width: calc(var(--unit) * 10);
	-webkit-animation: slideAnim 30s linear infinite;
	   -moz-animation: slideAnim 30s linear infinite;
	        animation: slideAnim 30s linear infinite;
	gap: 20px;
}

.home .slider .slider_item {
	width: 388px;
	-webkit-box-flex: 0;
	-webkit-flex: 0 0 auto;
	   -moz-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}

.home .slider .slider_item img {
	display: block;
	width: 100%;
}

.home .slider .slider_item:nth-child(2n+1) {
	position: relative;
	top: 0px;
}

.home .slider .slider_item:nth-child(2n+2) {
	position: relative;
	top: 40px;
}

.home .schedule {
	position: relative;
	z-index: 0;
	margin-top: -200px;
	padding-top: 300px;
	background: #ffe6e6;
}

.home .schedule_circle_01 {
	top: 130px;
	left: 0;
	width: clamp(7.5rem, 5.7291666667vw, 11rem);
}

.home .schedule_circle_02 {
	right: 0;
	width: clamp(7.5rem, 5.7291666667vw, 11rem);
}

.home .schedule_inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2%;
}

.home .schedule_image {
	width: 35%;
}

.home .schedule_title {
	text-align: left;
}

.home .schedule_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.home .schedule_jpTitle::after {
	display: block;
	width: clamp(8rem, 5.5729166667vw, 10.7rem);
	height: auto;
	background-image: url("images/home/schedule_title.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 107/46;
}

.home .schedule_content {
	width: 50%;
}

.home .schedule_head {
	margin-top: 30px;
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
}

.home .schedule .box_schedule_timeline {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	margin-top: 30px;
	padding: 50px 40px 50px 40px;
	border-radius: 10px;
	background: url("images/home/bg_schedule.png") no-repeat #fff;
	background-position: right 30px top 30px;
	background-size: 40%;
}

.home .schedule .box_schedule_timeline .schedule_timeline {
	position: relative;
	border-radius: 20px;
}

.home .schedule .box_schedule_timeline .schedule_timeline::before {
	position: absolute;
	z-index: 0;
	top: 0;
	bottom: 0;
	left: 180px;
	width: 5px;
	background-color: #e5e5d1;
	content: "";
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 30px; /* --- 左側：時間ボックス --- */
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	   -moz-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li:last-child {
	margin-bottom: 0;
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li .timeline-date {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	min-width: 140px;
	height: 54px;
	margin-right: 20px;
	padding: 8px 16px;
	border-radius: 10px;
	background-color: #fd7c7c;
	font-size: 23px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li .timeline-date::after {
	position: absolute;
	top: 50%;
	right: -6px;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid #fd7c7c;
	content: "";
	-webkit-transform: translateY(-50%);
	   -moz-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li .timeline-date::before {
	position: absolute;
	z-index: 1;
	top: 20px;
	right: -50px;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background-color: #fd7c7c;
	content: "";
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li .timeline-content {
	padding-top: 8px;
	padding-left: 50px;
	font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
	line-height: 1.8;
}

.home .events {
	position: relative;
	z-index: 0;
	padding-top: 150px;
	padding-bottom: 300px;
	background: #ffe6e6;
}

.home .events_circle_01 {
	top: 30px;
	left: 0;
	width: clamp(7.5rem, 4.1666666667vw, 8rem);
}

.home .events_circle_02 {
	right: 0;
	bottom: 150px;
	width: clamp(7.5rem, 5.7291666667vw, 11rem);
}

.home .events_inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-webkit-justify-content: end;
	   -moz-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: end;
	gap: 4%;
}

.home .events_title {
	text-align: left;
}

.home .events_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.home .events_jpTitle::after {
	display: block;
	width: clamp(8rem, 6.0416666667vw, 11.6rem);
	height: auto;
	background-image: url("images/home/events_title.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 116/48;
}

.home .events_content {
	width: 55%;
}

.home .events_head {
	margin-top: 30px;
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
}

.home .events_list {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	margin-top: 40px;
	padding: 50px 40px 50px 40px;
	border-radius: 10px;
	background: #fff;
}

.home .events_list .events_item {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	padding: 15px 0;
	background-image: -webkit-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: linear-gradient(to right, #737373 2px, transparent 3px);
	background-repeat: repeat-x;
	background-position: bottom left;
	background-size: 8px 1px;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 20px;
}

.home .events_list .events_item:last-child {
	background-image: none;
}

.home .events_list .events_item .events_season {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: clamp(4.5rem, 3.0208333333vw, 5.8rem);
	height: clamp(4.5rem, 3.0208333333vw, 5.8rem);
	border-radius: 50%;
	font-size: 24px;
	font-size: clamp(2rem, 1.3020833333vw, 2.5rem);
	color: #fff;
	white-space: nowrap;
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.home .events_list .events_item .events_season.spring {
	background-color: #ffa8a8;
}

.home .events_list .events_item .events_season.summer {
	background-color: #88cc64;
}

.home .events_list .events_item .events_season.autumn {
	background-color: #ea9e66;
}

.home .events_list .events_item .events_season.winter {
	background-color: #5ab9d3;
}

.home .events_list .events_item .events_season.monthly {
	width: auto;
	height: auto;
	padding: 11px 20px;
	border-radius: 999px;
	background-color: #9ca1cd;
	font-size: clamp(1.8rem, 1.0416666667vw, 2rem);
	line-height: 1;
}

.home .events_list .events_item .events_text {
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	line-height: 1.6;
}

.home .events_image {
	width: 30%;
}

.home .events_image img {
	width: 100%;
}

.home .events_btn {
	margin: 0 auto;
	margin-top: 50px;
}

.home .support {
	position: relative;
	z-index: 0;
	padding: 60px 0 240px;
	padding-bottom: clamp(12rem, 12.5vw, 24rem);
	background: #fffde3;
}

.home .support_circle {
	width: clamp(7.5rem, 6.7708333333vw, 13rem);
}

.home .support::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-yellow.svg") no-repeat;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/102;
}

.home .support_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.home .support_jpTitle::before {
	display: block;
	width: clamp(8rem, 6.71875vw, 12.9rem);
	height: auto;
	background-image: url("images/home/support_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 129/57;
}

.home .support_jpTitle::after {
	display: block;
	width: clamp(8rem, 6.71875vw, 12.9rem);
	height: auto;
	background-image: url("images/home/support_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 129/57;
}

.home .support_inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 55px;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	gap: clamp(0.5rem, 2.0833333333vw, 4rem);
}

.home .support_inner_item {
	overflow: hidden;
	width: 33%;
	border-radius: 30px;
	background: #fff;
}

.home .support_inner_image img {
	display: block;
	width: 100%;
	border-radius: 30px 30px 0 0;
}

.home .support_inner_box {
	padding-top: clamp(2rem, 1.8229166667vw, 3.5rem);
	padding-right: clamp(2rem, 2.0833333333vw, 4rem);
	padding-bottom: clamp(2rem, 1.8229166667vw, 3.5rem);
	padding-left: clamp(2rem, 2.0833333333vw, 4rem);
	text-align: center;
}

.home .support_inner_label {
	font-family: "Lato", sans-serif;
	font-size: clamp(1.3rem, 0.78125vw, 1.5rem);
	font-weight: 700;
	color: #fd7c7c;
}

.home .support_inner_head {
	margin-bottom: 20px;
	font-size: clamp(1.8rem, 1.25vw, 2.4rem);
}

.home .support_inner_text {
	margin-bottom: 15px;
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	line-height: 1.8;
	text-align: left;
}

.home .support_inner_note {
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	text-align: left;
}

.home .recruit {
	position: relative;
	z-index: 0;
	padding: 50px 0 300px;
	background: #ffe6e6;
}

.home .recruit_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.home .recruit_jpTitle::before {
	display: block;
	width: clamp(4rem, 3.3333333333vw, 6.4rem);
	height: auto;
	background-image: url("images/home/recruit_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 64/56;
}

.home .recruit_jpTitle::after {
	display: block;
	width: clamp(4rem, 3.3333333333vw, 6.4rem);
	height: auto;
	background-image: url("images/home/recruit_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 64/56;
}

.home .recruit_circle {
	right: 0;
}

.home .recruit::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/130;
}

.home .recruit_image {
	display: block;
	margin: 0 auto;
}

.home .recruit_image img {
	display: block;
	margin: 0 auto;
	-webkit-transition: opacity 0.4s ease;
	-moz-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
}

.home .recruit_image img:hover {
	opacity: 0.7;
}

/* ==============================================
   フローティングボタン
   ============================================== */

.floating-banner {
	position: fixed;
	z-index: 9999;
	right: 20px;
	bottom: 20px;
	display: block;
}

.floating-banner img {
	display: block;
	width: 180px;
	height: auto;
	-webkit-transition: -webkit-transform 0.25s ease-out;
	transition: -webkit-transform 0.25s ease-out;
	-moz-transition: transform 0.25s ease-out, -moz-transform 0.25s ease-out;
	transition: transform 0.25s ease-out;
	transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out, -moz-transform 0.25s ease-out;
}

.floating-banner img:hover {
	-webkit-transform: translateY(-8px);
	   -moz-transform: translateY(-8px);
	    -ms-transform: translateY(-8px);
	        transform: translateY(-8px);
}

.p-notFound .error_content {
	max-width: 120rem;
	margin-inline: auto;
}

.p-notFound .error_content_text {
	font-size: clamp(1.4rem, 3.7333333333vw, 1.8rem);
	text-align: center;
	letter-spacing: 0.05em;
}

.p-notFound .error_content .c-btn--primary {
	margin-top: clamp(3.6rem, 9.6vw, 6.2rem);
	margin-inline: auto;
}

.p-philosophy { /* ==============================================
  保育理念
  ============================================== */ /* ==============================================
  保育方針
  ============================================== */ /* ==============================================
  保育目標
  ============================================== */ /* ==============================================
  リンクボタン
  ============================================== */ /* ==============================================
  メッセージ
  ============================================== */ /* ==============================================
  保育所の概要
  ============================================== */
}

.p-philosophy .philosophy {
	position: relative;
	z-index: 0;
	overflow: hidden;
	width: 100%;
	margin-top: 80px;
	padding-bottom: 500px;
	background-image: url("./images/philosophy/philosophy_back.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	aspect-ratio: 1920/870;
}

.p-philosophy .philosophy_circle_02 {
	bottom: 80px;
	left: 0;
	width: clamp(10rem, 6.25vw, 12rem);
}

.p-philosophy .philosophy_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.p-philosophy .philosophy_jpTitle::before {
	display: block;
	width: clamp(10rem, 11.5972222222vw, 16.7rem);
	height: auto;
	background-image: url("images/philosophy/philosophy_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 167/40;
}

.p-philosophy .philosophy_jpTitle::after {
	display: block;
	width: clamp(10rem, 11.5972222222vw, 16.7rem);
	height: auto;
	background-image: url("images/philosophy/philosophy_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 167/40;
}

.p-philosophy .philosophy_text {
	margin-top: clamp(5rem, 4.1666666667vw, 8rem);
	font-size: clamp(2.5rem, 1.9791666667vw, 3.8rem);
	font-weight: 700;
	text-align: center;
}

.p-philosophy .philosophy_text .green {
	color: #5ebc64;
}

.p-philosophy .philosophy_text .orange {
	color: #e16a49;
}

.p-philosophy .philosophy_left {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: clamp(20rem, 28.3854166667vw, 54.5rem);
}

.p-philosophy .philosophy_right {
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	width: clamp(20rem, 28.3854166667vw, 54.5rem);
}

.p-philosophy .vision {
	position: relative;
	position: relative;
	z-index: 1;
	margin-top: clamp(-6rem, -0.5208333333vw, -1rem);
	padding: 80px 0;
	background: #ffe6e6;
}

.p-philosophy .vision_circle_01 {
	right: 0;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.p-philosophy .vision_circle_02 {
	top: 800px;
	left: 0;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.p-philosophy .vision_wrapper {
	max-width: 1200px;
}

.p-philosophy .vision::before {
	position: absolute;
	z-index: -2;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/130;
}

.p-philosophy .vision::after {
	position: absolute;
	z-index: -2;
	bottom: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink_bottom.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(98%);
	   -moz-transform: translateY(98%);
	    -ms-transform: translateY(98%);
	        transform: translateY(98%);
	aspect-ratio: 1488/130;
}

.p-philosophy .vision_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.p-philosophy .vision_jpTitle::before {
	display: block;
	width: clamp(10rem, 7.5vw, 10.8rem);
	height: auto;
	background-image: url("images/philosophy/vision_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 108/32;
}

.p-philosophy .vision_jpTitle::after {
	display: block;
	width: clamp(10rem, 7.5vw, 10.8rem);
	height: auto;
	background-image: url("images/philosophy/vision_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 108/32;
}

.p-philosophy .vision_inner {
	display: -ms-grid;
	display: grid;
	margin-top: 60px;
	gap: 30px;
	-ms-grid-columns: (1fr)[3];
	grid-template-columns: repeat(3, 1fr);
}

.p-philosophy .goal {
	position: relative;
	z-index: 0;
	height: auto;
	padding-bottom: 120px;
	background-image: url("./images/philosophy/goal_bg-image.jpg");
	background-repeat: no-repeat;
	background-position: 75% center;
	background-size: cover;
}

.p-philosophy .goal_circle {
	right: 0;
	bottom: -100px;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.p-philosophy .goal_wrapper {
	max-width: 1200px;
	padding-top: 200px;
}

.p-philosophy .goal_title {
	text-align: left;
}

.p-philosophy .goal_jpTitle {
	position: relative;
	gap: clamp(1.5rem, 2.7777777778vw, 4rem);
}

.p-philosophy .goal_jpTitle::after {
	display: block;
	width: clamp(10rem, 8.75vw, 12.6rem);
	height: auto;
	background-image: url("images/philosophy/goal_title.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 126/48;
}

.p-philosophy .goal_list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	margin-top: 40px;
	gap: 20px;
}

.p-philosophy .goal_item {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 50%;
	padding: 20px 30px;
	border-radius: 10px;
	background: #fff;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 20px;
}

.p-philosophy .goal_num {
	position: absolute;
	left: -30px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: #fd7c7c;
	font-size: 22px;
	font-weight: 700;
	color: #fff;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
}

.p-philosophy .goal_text {
	padding-left: 20px;
	font-size: clamp(1.6rem, 1.1458333333vw, 2.2rem);
	font-weight: 700;
}

.p-philosophy .goal_image_tb {
	margin-top: 30px;
}

.p-philosophy .link {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 915px;
	margin: 0 auto;
	margin-top: 100px;
	border: 3px solid #fd7c7c;
	border-radius: 15px;
	background-color: #fff;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-philosophy .link img {
	width: clamp(25rem, 21.4583333333vw, 41.2rem);
	-webkit-box-flex: 1;
	-webkit-flex: 1 1;
	   -moz-box-flex: 1;
	    -ms-flex: 1 1;
	        flex: 1 1;
}

.p-philosophy .link .link_title {
	font-weight: 700;
	text-align: center;
	-webkit-box-flex: 1;
	-webkit-flex: 1 1;
	   -moz-box-flex: 1;
	    -ms-flex: 1 1;
	        flex: 1 1;
}

.p-philosophy .link .link_title .link_jpTitle {
	display: block;
	margin-bottom: 4px;
	font-size: clamp(1.6rem, 1.1979166667vw, 2.3rem);
}

.p-philosophy .link .link_title .link_enTitle {
	margin-bottom: 20px;
	font-size: clamp(3.5rem, 2.1875vw, 4.2rem);
	font-weight: 700;
	color: #fd7c7c;
}

.p-philosophy .link_right {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-flex: 1;
	-webkit-flex: 1 1;
	   -moz-box-flex: 1;
	    -ms-flex: 1 1;
	        flex: 1 1;
}

.p-philosophy .link .circle {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 65px;
	height: 65px;
	border: 2px solid transparent;
	border-radius: 50%;
	background-color: #fd7c7c;
	-webkit-transition: background-color 0.4s ease, border-color 0.4s ease;
	-moz-transition: background-color 0.4s ease, border-color 0.4s ease;
	transition: background-color 0.4s ease, border-color 0.4s ease;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-philosophy .link .circle::before {
	display: block;
	width: 20px;
	height: 20px;
	background-image: url("./images/common/white_arrow.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	content: "";
}

.p-philosophy .link .circle:hover {
	border-color: #fd7c7c;
	background-color: #fff;
}

.p-philosophy .link .circle:hover::before {
	background-image: url("./images/common/pink_arrow.svg");
}

.p-philosophy .message {
	position: relative;
	z-index: 0;
	margin-top: 200px;
	padding: 60px 0 240px;
	padding-bottom: clamp(12rem, 12.5vw, 24rem);
	background: #fffde3;
}

.p-philosophy .message::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-yellow.svg") no-repeat;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/102;
}

.p-philosophy .message_circle {
	top: 130px;
	left: 0;
	width: clamp(7.5rem, 5.7291666667vw, 11rem);
}

.p-philosophy .message_wrapper {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 1200px;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	gap: 5%;
}

.p-philosophy .message_right {
	width: 50%;
}

.p-philosophy .message_title {
	text-align: left;
}

.p-philosophy .message_jpTitle {
	position: relative;
	gap: clamp(2rem, 15.2777777778vw, 22rem);
}

.p-philosophy .message_jpTitle::after {
	display: block;
	width: clamp(10rem, 11.6666666667vw, 16.8rem);
	height: auto;
	background-image: url("images/philosophy/message_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 168/88;
}

.p-philosophy .message_image {
	position: relative;
}

.p-philosophy .message_image::after {
	position: absolute;
	left: -10px;
	display: block;
	width: clamp(10rem, 8.6805555556vw, 12.5rem);
	height: auto;
	background-image: url("images/philosophy/message_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 125/88;
}

.p-philosophy .message_text {
	margin-top: 25px;
	font-size: clamp(1.8rem, 1.0416666667vw, 2rem);
}

.p-philosophy .message_text p {
	margin-top: 15px;
}

.p-philosophy .message_text .message_text_name {
	margin-top: 30px;
	font-weight: 700;
}

.p-philosophy .message_text .message_text_name span {
	margin-left: 15px;
	font-size: 40px;
}

.p-philosophy .profile {
	position: relative;
	z-index: 1; /* メイン画像 */ /* プロフィール項目 */
	padding: 120px 0 350px;
	background: #ffe6e6;
}

.p-philosophy .profile::before {
	position: absolute;
	z-index: -2;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/130;
}

.p-philosophy .profile_circle_01 {
	right: 0;
	width: clamp(7.5rem, 5.7291666667vw, 11rem);
}

.p-philosophy .profile_circle_02 {
	top: 800px;
	left: 0;
	width: clamp(7.5rem, 4.1666666667vw, 8rem);
}

.p-philosophy .profile_circle_03 {
	right: 0;
	bottom: 300px;
	width: clamp(7.5rem, 5.7291666667vw, 11rem);
}

.p-philosophy .profile_wrapper {
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	padding: 75px 120px;
	border-radius: 40px;
	background: #fff;
}

.p-philosophy .profile_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.p-philosophy .profile_jpTitle::before {
	display: block;
	width: clamp(5rem, 5.0694444444vw, 7.3rem);
	height: auto;
	margin-top: 15px;
	background-image: url("images/philosophy/profile_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 73/42;
}

.p-philosophy .profile_jpTitle::after {
	display: block;
	width: clamp(5rem, 5.0694444444vw, 7.3rem);
	height: auto;
	margin-top: 15px;
	background-image: url("images/philosophy/profile_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 73/42;
}

.p-philosophy .profile .profile_image {
	margin-top: 50px;
	margin-bottom: 50px;
}

.p-philosophy .profile .profile_list {
	width: 100%;
}

.p-philosophy .profile .profile_list .profile_item {
	display: -ms-grid;
	display: grid;
	padding: 20px 0;
	background-image: -webkit-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: linear-gradient(to right, #737373 2px, transparent 3px);
	background-repeat: repeat-x;
	background-position: bottom left;
	background-size: 8px 1px;
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	-ms-grid-columns: 130px 1fr;
	grid-template-columns: 130px 1fr;
}

.p-philosophy .profile .profile_list .profile_item dt {
	font-weight: 700;
	color: #fd7c7c;
}

.p-philosophy .profile .profile_list .profile_item .business_row {
	display: -ms-grid;
	display: grid;
	margin-bottom: 25px;
	-ms-grid-columns: 180px 1fr;
	grid-template-columns: 180px 1fr;
}

.p-philosophy .profile .profile_list .profile_item .business_row .business_text {
	font-weight: 400;
}

.p-philosophy .profile .profile_list .profile_item .business_row:last-child {
	margin-bottom: 0;
}

.p-about { /* ==============================================
  施設の紹介
  ============================================== */ /* ==============================================
  制服紹介
  ============================================== */ /* ==============================================
  年間行事
  ============================================== */ /* ==============================================
  1日の過ごし方紹介
  ============================================== */ /* ==============================================
  リンクボタン
  ============================================== */ /* ==============================================
  写真ギャラリー
  ============================================== */
}

.p-about .head_text {
	width: 85%;
	margin: 0 auto;
	margin-top: 60px;
	font-size: clamp(1.6rem, 1.1458333333vw, 2.2rem);
	font-weight: 700;
	text-align: center;
}

.p-about .facility {
	position: relative;
	z-index: 1;
	margin-top: 160px;
	padding: 80px 0;
	background: #ffe6e6;
}

.p-about .facility::before {
	position: absolute;
	z-index: -2;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/130;
}

.p-about .facility::after {
	position: absolute;
	z-index: -2;
	bottom: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink_bottom.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(98%);
	   -moz-transform: translateY(98%);
	    -ms-transform: translateY(98%);
	        transform: translateY(98%);
	aspect-ratio: 1488/130;
}

.p-about .facility_circle_01 {
	top: 40px;
	left: 0;
	width: clamp(10rem, 6.25vw, 12rem);
}

.p-about .facility_circle_02 {
	top: 700px;
	right: 0;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.p-about .facility_circle_03 {
	bottom: 20px;
	left: 0;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.p-about .facility_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.p-about .facility_jpTitle::before {
	display: block;
	width: clamp(10rem, 11.4583333333vw, 16.5rem);
	height: auto;
	background-image: url("images/about/facility_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 165/40;
}

.p-about .facility_jpTitle::after {
	display: block;
	width: clamp(10rem, 11.4583333333vw, 16.5rem);
	height: auto;
	background-image: url("images/about/facility_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 165/40;
}

.p-about .facility_wrapper {
	max-width: 1400px;
}

.p-about .facility_list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 50px;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: clamp(4rem, 2.8645833333vw, 5.5rem);
}

.p-about .facility_item:nth-child(-n+2) {
	-webkit-box-flex: 0;
	-webkit-flex-grow: 0;
	   -moz-box-flex: 0;
	    -ms-flex-positive: 0;
	        flex-grow: 0;
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
	-webkit-flex-basis: -webkit-calc(50% - 40px);
	    -ms-flex-preferred-size: calc(50% - 40px);
	        flex-basis: -moz-calc(50% - 40px);
	        flex-basis: calc(50% - 40px);
}

.p-about .facility_item:nth-child(n+3) {
	-webkit-box-flex: 0;
	-webkit-flex-grow: 0;
	   -moz-box-flex: 0;
	    -ms-flex-positive: 0;
	        flex-grow: 0;
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
	-webkit-flex-basis: -webkit-calc(33.333% - 40px);
	    -ms-flex-preferred-size: calc(33.333% - 40px);
	        flex-basis: -moz-calc(33.333% - 40px);
	        flex-basis: calc(33.333% - 40px);
}

.p-about .uniform {
	position: relative;
	padding: 150px 0;
}

.p-about .uniform_circle {
	z-index: 2;
	right: 0;
	bottom: 400px;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.p-about .uniform_jpTitle {
	position: relative;
	gap: clamp(2rem, 5.5555555556vw, 8rem);
}

.p-about .uniform_jpTitle::before {
	display: block;
	width: clamp(10rem, 19.7916666667vw, 28.5rem);
	height: auto;
	background-image: url("images/about/uniform_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	aspect-ratio: 285/122;
}

.p-about .uniform_jpTitle::after {
	display: block;
	width: clamp(10rem, 19.7916666667vw, 28.5rem);
	height: auto;
	background-image: url("images/about/uniform_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 285/122;
}

.p-about .uniform_inner {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	margin-top: 50px;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: clamp(2rem, 4.1666666667vw, 8rem);
}

.p-about .uniform_main {
	width: 65%;
	max-width: 513px;
}

.p-about .uniform_text {
	max-width: 620px;
	font-size: clamp(1.6rem, 1.4285714286vw, 2rem);
	font-weight: 700;
}

.p-about .uniform_list {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 55px;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 20px;
}

.p-about .uniform_list_item {
	text-align: center;
}

.p-about .uniform_list_item p {
	margin-top: 10px;
	font-size: clamp(1.6rem, 1.5714285714vw, 2.2rem);
}

.p-about .uniform_list .illust_balloon {
	position: absolute;
	top: -60px;
	right: 0;
}

.p-about .events {
	position: relative;
	z-index: 1;
	margin-top: 60px;
	padding: 80px 0 300px;
	background: #ffe6e6;
}

.p-about .events::before {
	position: absolute;
	z-index: -2;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/130;
}

.p-about .events_circle_01 {
	top: 200px;
	left: 0;
	width: clamp(7.5rem, 5.7291666667vw, 11rem);
}

.p-about .events_circle_02 {
	top: 900px;
	right: 0;
	width: clamp(7.5rem, 5.7291666667vw, 11rem);
}

.p-about .events_circle_03 {
	bottom: 400px;
	left: 0;
	width: clamp(7.5rem, 4.1666666667vw, 8rem);
}

.p-about .events_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.p-about .events_jpTitle::before {
	display: block;
	width: clamp(10rem, 11.4583333333vw, 16.5rem);
	height: auto;
	background-image: url("images/about/events_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 165/40;
}

.p-about .events_jpTitle::after {
	display: block;
	width: clamp(10rem, 11.4583333333vw, 16.5rem);
	height: auto;
	background-image: url("images/about/events_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 165/40;
}

.p-about .events_season {
	width: 90%;
	max-width: 1500px;
	margin: 0 auto;
	margin-top: 60px;
	padding-top: clamp(2rem, 2.0833333333vw, 4rem);
	padding-right: clamp(1rem, 2.0833333333vw, 4rem);
	padding-bottom: clamp(2rem, 2.0833333333vw, 4rem);
	padding-left: clamp(1rem, 2.0833333333vw, 4rem);
	border-radius: 20px;
	background: #fff;
}

.p-about .events_season.spring {
	position: relative;
}

.p-about .events_season.spring::before {
	position: absolute;
	top: -50px;
	right: 0;
	width: clamp(60px, 10vw, 106px);
	background-image: url("images/about/events_illust01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 106/151;
}

.p-about .events_season.spring::after {
	position: absolute;
	bottom: 0;
	left: -30px;
	width: clamp(60px, 12vw, 131px);
	background-image: url("images/about/events_illust02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 131/85;
}

.p-about .events_season.summer {
	position: relative;
}

.p-about .events_season.summer::before {
	position: absolute;
	top: -50px;
	right: 0;
	width: clamp(60px, 12vw, 116px);
	background-image: url("images/about/events_illust03.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 116/82;
}

.p-about .events_season.summer::after {
	position: absolute;
	bottom: 0;
	left: -30px;
	width: clamp(60px, 12vw, 120px);
	background-image: url("images/about/events_illust04.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 120/85;
}

.p-about .events_season.autum {
	position: relative;
}

.p-about .events_season.autum::before {
	position: absolute;
	top: -50px;
	right: 0;
	width: clamp(60px, 12vw, 123px);
	background-image: url("images/about/events_illust05.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 123/110;
}

.p-about .events_season.autum::after {
	position: absolute;
	bottom: 0;
	left: -30px;
	width: clamp(60px, 12vw, 131px);
	background-image: url("images/about/events_illust06.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 131/85;
}

.p-about .events_season.winter {
	position: relative;
}

.p-about .events_season.winter::before {
	position: absolute;
	top: -50px;
	right: 0;
	width: clamp(60px, 12vw, 137px);
	background-image: url("images/about/events_illust07.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 137/121;
}

.p-about .events_season.winter::after {
	position: absolute;
	bottom: 0;
	left: -30px;
	width: clamp(50px, 10vw, 82px);
	background-image: url("images/about/events_illust08.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 82/129;
}

.p-about .events_season_title {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 25px;
	font-size: clamp(3rem, 2.5vw, 4.8rem);
	font-weight: 700;
	color: #ffa8a8;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px;
}

.p-about .events_season_title .events_season_line {
	display: inline-block;
	width: 48px;
	height: 3px;
	margin-right: 20px;
	border-radius: 2px;
	background: #ffa8a8;
}

.p-about .events_season .summer_title {
	color: #88cc64;
}

.p-about .events_season .summer_line {
	background: #88cc64;
}

.p-about .events_season .autum_title {
	color: #ea9e66;
}

.p-about .events_season .autum_line {
	background: #ea9e66;
}

.p-about .events_season .winter_title {
	color: #5ab9d3;
}

.p-about .events_season .winter_line {
	background: #5ab9d3;
}

.p-about .events_list {
	display: -ms-grid;
	display: grid;
	margin-bottom: 60px;
	-ms-grid-columns: (auto)[4];
	grid-template-columns: repeat(4, auto);
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: clamp(1rem, 1.3020833333vw, 2.5rem);
	-ms-grid-columns: (auto)[4];
	grid-template-columns: repeat(4, auto);
}

.p-about .events_list img {
	display: block;
	width: 100%;
	height: auto;
}

.p-about .events_item_caption {
	margin-top: 10px;
	font-size: clamp(1.5rem, 1.25vw, 2.4rem);
	text-align: center;
}

.p-about .spring {
	position: relative;
}

.p-about .spring::before {
	position: absolute;
	z-index: 2;
	display: block;
	width: 100%;
	height: auto;
	background-image: url("images/about/events_illust01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
}

.p-about .day_schedule {
	position: relative;
	z-index: 2;
	margin-top: -20px;
	padding: 40px 0 100px;
	background: #fffde3;
}

.p-about .day_schedule::before {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-yellow.svg") no-repeat;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/102;
}

.p-about .day_schedule_circle {
	top: 200px;
	right: 0;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.p-about .day_schedule_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.p-about .day_schedule_jpTitle::before {
	display: block;
	width: clamp(10rem, 10.9722222222vw, 15.8rem);
	height: auto;
	background-image: url("images/about/day_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 158/50;
}

.p-about .day_schedule_jpTitle::after {
	display: block;
	width: clamp(10rem, 10.9722222222vw, 15.8rem);
	height: auto;
	background-image: url("images/about/day_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 158/50;
}

.p-about .day_schedule_list {
	display: -ms-grid;
	display: grid;
	margin-top: 70px;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: clamp(1rem, 2.0833333333vw, 4rem);
	-ms-grid-columns: (1fr)[4];
	grid-template-columns: repeat(4, 1fr);
}

.p-about .day_schedule_item {
	margin: 0 auto;
}

.p-about .day_schedule_item p {
	margin-top: 10px;
	font-size: clamp(1.6rem, 1.25vw, 2.4rem);
	font-weight: 700;
	text-align: center;
}

.p-about .day_schedule_meal {
	position: relative;
	width: clamp(72rem, 54.1428571429vw, 75.8rem);
	margin: 70px auto 0;
	padding: 35px 90px;
	border-radius: 30px;
	background: #fff;
	text-align: center;
}

.p-about .day_schedule_meal::before {
	position: absolute;
	border: 2px dashed #fd7c7c;
	border-radius: 24px;
	pointer-events: none;
	content: "";
	inset: 8px;
}

.p-about .day_schedule_meal h3 {
	margin-bottom: 25px;
	font-size: clamp(2.5rem, 1.71875vw, 3.3rem);
	font-weight: 700;
}

.p-about .day_schedule_meal ul {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: left;
}

.p-about .day_schedule_meal ul li {
	position: relative;
	margin-bottom: 12px;
	padding-left: 0.5em;
	font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
}

.p-about .day_schedule_meal ul li::before {
	margin-right: 6px;
	color: #fd7c7c;
	content: "●";
}

.p-about .day_schedule_meal ul li span {
	padding-left: 5rem;
}

.p-about .link {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 915px;
	margin: 0 auto;
	margin-top: 100px;
	border: 3px solid #fd7c7c;
	border-radius: 15px;
	background-color: #fff;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-about .link img {
	width: clamp(25rem, 21.4583333333vw, 41.2rem);
	-webkit-box-flex: 1;
	-webkit-flex: 1 1;
	   -moz-box-flex: 1;
	    -ms-flex: 1 1;
	        flex: 1 1;
}

.p-about .link .link_title {
	font-weight: 700;
	text-align: center;
	-webkit-box-flex: 1;
	-webkit-flex: 1 1;
	   -moz-box-flex: 1;
	    -ms-flex: 1 1;
	        flex: 1 1;
}

.p-about .link .link_title .link_jpTitle {
	display: block;
	margin-bottom: 4px;
	font-size: clamp(1.6rem, 1.1979166667vw, 2.3rem);
}

.p-about .link .link_title .link_enTitle {
	margin-bottom: 20px;
	font-size: clamp(3.5rem, 2.1875vw, 4.2rem);
	font-weight: 700;
	color: #fd7c7c;
}

.p-about .link_right {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-flex: 1;
	-webkit-flex: 1 1;
	   -moz-box-flex: 1;
	    -ms-flex: 1 1;
	        flex: 1 1;
}

.p-about .link .circle {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 65px;
	height: 65px;
	border: 2px solid transparent;
	border-radius: 50%;
	background-color: #fd7c7c;
	-webkit-transition: background-color 0.4s ease, border-color 0.4s ease;
	-moz-transition: background-color 0.4s ease, border-color 0.4s ease;
	transition: background-color 0.4s ease, border-color 0.4s ease;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-about .link .circle::before {
	display: block;
	width: 20px;
	height: 20px;
	background-image: url("./images/common/white_arrow.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	content: "";
}

.p-about .link .circle:hover {
	border-color: #fd7c7c;
	background-color: #fff;
}

.p-about .link .circle:hover::before {
	background-image: url("./images/common/pink_arrow.svg");
}

.p-about .gallery {
	position: relative;
	z-index: 1;
	margin-top: 160px;
	padding: 70px 0;
	padding: 80px 0 300px;
	background: #ffe6e6;
}

.p-about .gallery::before {
	position: absolute;
	z-index: -2;
	top: 0;
	left: 0;
	width: 100%;
	background: url("images/common/bg-cm-wave-pink.svg") no-repeat;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
	-webkit-transform: translateY(-98%);
	   -moz-transform: translateY(-98%);
	    -ms-transform: translateY(-98%);
	        transform: translateY(-98%);
	aspect-ratio: 1488/130;
}

.p-about .gallery_circle_01 {
	top: 20px;
	left: 0;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.p-about .gallery_circle_02 {
	right: 0;
	bottom: 200px;
}

.p-about .gallery_jpTitle {
	position: relative;
	gap: clamp(2rem, 2.7777777778vw, 4rem);
}

.p-about .gallery_jpTitle::before {
	display: block;
	width: clamp(10rem, 11.4583333333vw, 16.5rem);
	height: auto;
	background-image: url("images/about/gallery_title01.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 165/40;
}

.p-about .gallery_jpTitle::after {
	display: block;
	width: clamp(10rem, 11.4583333333vw, 16.5rem);
	height: auto;
	background-image: url("images/about/gallery_title02.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 165/40;
}

.p-about .gallery_list {
	display: -ms-grid;
	display: grid;
	margin-top: 75px;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 10px;
	-ms-grid-columns: (1fr)[4];
	grid-template-columns: repeat(4, 1fr);
}

.p-about .gallery_list img {
	display: block;
	width: 100%;
	height: auto;
}

.p-access .access {
	position: relative;
	margin-top: 100px;
}

.p-access .access_circle {
	top: 600px;
	left: 0;
	width: clamp(10rem, 6.25vw, 12rem);
}

.p-access .access_wrapper {
	width: 85%;
	max-width: 1200px;
	margin: 0 auto;
}

.p-access .access_inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	gap: 60px;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-access .access_map {
	width: 55%;
}

.p-access .access_title {
	margin-bottom: 25px;
	font-size: clamp(2.2rem, 1.4583333333vw, 2.8rem);
	font-weight: 700;
}

.p-access .access_address {
	margin-bottom: 22px;
	font-size: clamp(1.4rem, 1.0416666667vw, 2rem);
	font-weight: 700;
	line-height: 1.8;
}

.p-access .access_address span {
	font-family: "Lato", sans-serif;
}

.p-access .access_station_title {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 10px;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 8px;
}

.p-access .access_station_title .train_icon {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-access .access_station_title h3 {
	font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
	font-weight: 700;
	color: #fd7c7c;
}

.p-access .access_station ul {
	padding-left: 20px;
}

.p-access .access_station ul li {
	position: relative;
	list-style: none;
	font-size: clamp(1.3rem, 0.8333333333vw, 1.6rem);
}

.p-access .access_station ul li::before {
	position: absolute;
	top: 15px;
	left: -20px;
	width: 0.5em;
	height: 0.5em;
	border-radius: 50%;
	background-color: #fd7c7c;
	content: "";
	-webkit-transform: translateY(-50%);
	   -moz-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.p-access .access .google_map {
	overflow: hidden;
	margin-top: 70px;
	border-radius: 30px;
	aspect-ratio: 1200/485;
}

.p-access .access .google_map iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.p-access .facilityMap {
	position: relative;
	margin-top: 120px;
	margin-bottom: 350px;
}

.p-access .facilityMap_circle {
	right: 0;
	bottom: -50px;
	width: clamp(7.5rem, 5.2083333333vw, 10rem);
}

.p-access .facilityMap_title {
	font-size: 32px;
	text-align: center;
}

.p-access .facilityMap_wrapper {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 85%;
	max-width: 1200px;
	margin: 0 auto;
	margin-top: 60px;
	gap: 20px;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-contact .form {
	padding: 120px 0 300px;
	padding-top: clamp(6rem, 6.25vw, 12rem);
}

.p-contact .form_content {
	max-width: 120rem;
	margin-inline: auto;
}

.p-contact .form_content_title {
	margin-bottom: 40px;
}

.p-contact .form_content_text {
	text-align: center;
}

.p-contact .form_content_body {
	margin-top: 80px;
	font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
}

.p-contact .form_content_body table,
.p-contact .form_content_body tbody {
	display: block;
}

.p-contact .form_content_body table {
	display: block;
	max-width: 116.8rem;
	margin-left: auto;
}

.p-contact .form_content_body table tr {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	border-bottom: 0.1rem #d9d9d9 solid;
}

.p-contact .form_content_body table th {
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
}

.p-contact .form_content_body table th p {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	font-weight: 700;
	line-height: 1;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-contact .form_content_body table th .required,
.p-contact .form_content_body table th .any {
	display: -ms-grid;
	display: grid;
	width: 5.4rem;
	border-radius: 0.3rem;
	font-weight: 500;
	line-height: 2;
	color: #fff;
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
	place-items: center;
}

.p-contact .form_content_body table th .required.required,
.p-contact .form_content_body table th .any.required {
	background-color: #d82e2e;
}

.p-contact .form_content_body table th .required.any,
.p-contact .form_content_body table th .any.any {
	background-color: #aaaaaa;
}

.p-contact .form_content_body table td {
	width: 100%;
}

.p-contact .form_content_body table td:has(input[type=tel]) .note {
	margin-top: 0.8rem;
	font-size: 16px;
	line-height: 2;
	color: #5b5b5b;
}

.p-contact .form_content_body input[type=text],
.p-contact .form_content_body input[type=tel],
.p-contact .form_content_body input[type=email],
.p-contact .form_content_body input[type=submit],
.p-contact .form_content_body textarea[name=your-message] {
	border: none;
	outline: none;
	background-color: #fff;
	-webkit-box-shadow: none;
	        box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.p-contact .form_content_body input[type=text],
.p-contact .form_content_body input[type=tel],
.p-contact .form_content_body input[type=email],
.p-contact .form_content_body textarea[name=your-message] {
	border: 0.1rem solid #d8d8d8;
	background-color: #f1f1f1;
}

.p-contact .form_content_body input[type=submit] {
	display: -ms-grid;
	display: grid;
	width: clamp(26rem, 74.6666666667vw, 40.6rem);
	margin-top: clamp(3.2rem, 8.5333333333vw, 4.4rem);
	padding: clamp(1.8rem, 4.8vw, 2.6rem);
	border: 0.2rem solid #fd7c7c;
	border-radius: 110px;
	background-color: #fd7c7c;
	font-size: clamp(1.6rem, 4.2666666667vw, 2.1rem);
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.05em;
	cursor: pointer;
	-webkit-transition: color 0.4s ease, background-color 0.4s ease;
	-moz-transition: color 0.4s ease, background-color 0.4s ease;
	transition: color 0.4s ease, background-color 0.4s ease;
	place-items: center;
	margin-inline: auto;
}

.p-contact .form_content_body .wpcf7-response-output {
	display: none;
}

.p-contact.complete .form .c-btn--primary {
	margin-top: clamp(3.6rem, 9.6vw, 6.2rem);
	margin-inline: auto;
}

.p-contact.complete .form_text {
	font-size: clamp(1.4rem, 3.7333333333vw, 1.8rem);
	letter-spacing: 0.05em;
}

.p-contact.complete .form .c-btn--primary {
	margin-top: clamp(3.6rem, 9.6vw, 6.2rem);
	margin-inline: auto;
}

.p-contact.complete .form_text {
	font-size: clamp(1.4rem, 3.7333333333vw, 1.8rem);
	letter-spacing: 0.05em;
}

.p-privacy {
	padding: 120px 0 300px;
	padding-top: clamp(6rem, 6.25vw, 12rem);
}

.p-privacy_bgTitle {
	margin-top: 50px;
	margin-bottom: 24px;
	padding-bottom: 12px;
	background-image: -webkit-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: linear-gradient(to right, #737373 2px, transparent 3px);
	background-repeat: repeat-x;
	background-position: bottom left;
	background-size: 8px 1px;
	font-size: clamp(2.5rem, 1.8229166667vw, 3.5rem);
}

.p-privacy_wrapper {
	max-width: 1200px;
}

.p-privacy_contents {
	margin-top: 40px;
}

.p-privacy_contents_head {
	margin-bottom: 10px;
	font-size: clamp(2rem, 1.3020833333vw, 2.5rem);
	font-weight: 700;
}

.p-privacy_contents_text {
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	font-weight: 500;
}

.p-privacy_contents_list {
	padding-left: 0;
	list-style: none;
}

.p-privacy_contents_list li {
	position: relative;
	padding-left: 1em;
}

.p-privacy_contents_list li::before {
	position: absolute;
	left: 0;
	content: "・";
}

.p-privacy_name {
	text-align: right;
}

.p-complaint {
	padding: 120px 0 300px;
	padding-top: clamp(6rem, 6.25vw, 12rem);
}

.p-complaint_bgTitle {
	margin-top: 50px;
	margin-bottom: 24px;
	background-image: -webkit-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: linear-gradient(to right, #737373 2px, transparent 3px);
	background-repeat: repeat-x;
	background-position: bottom left;
	background-size: 8px 1px;
	font-size: clamp(2.5rem, 1.8229166667vw, 3.5rem);
}

.p-complaint_wrapper {
	max-width: 1200px;
}

.p-complaint_contents {
	margin-top: 60px;
}

.p-complaint_contents_head {
	margin-bottom: 10px;
	font-size: clamp(2rem, 1.3020833333vw, 2.5rem);
	font-weight: 700;
	color: #fd7c7c;
}

.p-complaint_contents_text {
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	font-weight: 500;
}

.p-complaint_contents_text ul {
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}

.p-complaint_contents_text li {
	list-style: none;
}

.p-complaint_contents_text li::marker {
	content: none;
}

.p-complaint_contents_list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.p-complaint_contents_list li {
	display: -ms-grid;
	display: grid;
	padding: 25px 10px;
	border-bottom: 1px solid #dadada;
	line-height: 1;
	-ms-grid-columns: clamp(20rem, 15.625vw, 30rem) 1fr;
	grid-template-columns: clamp(20rem, 15.625vw, 30rem) 1fr;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-complaint_contents_list .label {
	font-weight: 700;
}

.p-complaint_contents_list .is-tel .tel {
	display: block;
	margin-bottom: 4px;
	font-family: "Lato", sans-serif;
	font-size: clamp(2rem, 1.40625vw, 2.7rem);
	font-weight: 700;
	color: #fd7c7c;
}

.p-complaint_contents_list .is-tel .time {
	display: block;
	margin-top: 10px;
	font-size: clamp(1.4rem, 0.8333333333vw, 1.6rem);
}

.p-complaint .tel {
	font-family: "Lato", sans-serif;
	font-weight: 700;
}

.p-complaint h3 {
	margin-top: 30px;
}

.p-complaint_notes {
	margin: 24px 0 0;
	padding: 0;
	list-style: none;
}

.p-complaint_notes li {
	position: relative;
	padding-left: 1em;
}

.p-complaint_notes li::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "・";
}

.p-complaint_buttun {
	margin: 0 auto;
	margin-top: 120px;
}

.news_archive {
	padding-bottom: 350px;
}

.news_archive_wrapper {
	width: 85%;
	max-width: 1200px;
	margin: 0 auto;
	margin-top: clamp(6rem, 5.2083333333vw, 10rem);
}

.news_archive_category {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 60px;
	gap: clamp(1.5rem, 1.3020833333vw, 2.5rem);
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.news_archive_category li a {
	display: inline-block;
	padding: 6px 22px;
	border-radius: 8px;
	background: #efefef;
	font-weight: 700;
	color: #fd7c7c;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	transition: 0.3s;
}

.news_archive_category li a.current {
	background: #fd7c7c;
	color: #fff;
}

.news_archive_category li a:hover {
	opacity: 0.8;
}

.news_archive_cards {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[3];
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

.news_archive .news_card_link {
	display: block;
	height: 100%;
	-webkit-transition: opacity 0.3s;
	-moz-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

.news_archive .news_card_link:hover {
	opacity: 0.8;
}

.news_archive .news_card_body {
	padding: 16px 12px 20px;
}

.news_archive .news_card_meta {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 6px;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px;
}

.news_archive .news_card_thumb {
	overflow: hidden;
	width: 100%;
	border-radius: 20px;
	aspect-ratio: 4/3;
}

.news_archive .news_card_thumb img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center;
	   object-position: center;
}

.news_archive .news_card_date {
	font-family: "Lato", sans-serif;
	font-size: clamp(1.3rem, 0.8333333333vw, 1.6rem);
	font-weight: 700;
	color: #fd7c7c;
}

.news_archive .news_card_cat {
	padding: 2px 10px;
	border-radius: 20px;
	background: #ffe6e6;
	font-size: clamp(1.3rem, 0.78125vw, 1.5rem);
}

.news_archive .news_card_title {
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	font-weight: 700;
	line-height: 1.6;
}

.news_archive_pagination {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 120px;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.news_archive_pagination .page-numbers {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -moz-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	width: 50px;
	height: 50px;
	margin-right: 20px;
	border: 1px solid #fd7c7c;
	border-radius: 50%;
	font-weight: 700;
	color: #fd7c7c;
	text-decoration: none;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.news_archive_pagination .page-numbers.current {
	background: #fd7c7c;
	color: #fff;
}

.news_archive_pagination .prev,
.news_archive_pagination .next {
	display: none;
}

.news_archive .screen-reader-text {
	display: none;
}

.news_detail {
	padding-top: clamp(8rem, 7.8125vw, 15rem);
	padding-bottom: 300px;
}

.news_detail_wrapper {
	width: 85%;
	max-width: 850px;
	margin: 0 auto;
}

.news_detail .news_content_ttlBox {
	margin-bottom: clamp(2rem, 2.0833333333vw, 4rem);
	padding: 10px 0;
	background-image: -webkit-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: linear-gradient(to right, #737373 2px, transparent 3px);
	background-repeat: repeat-x;
	background-position: bottom left;
	background-size: 8px 1px;
}

.news_detail .news_content_ttlBox h1 {
	margin: 1rem 0;
	font-size: clamp(2.5rem, 2.34375vw, 4.5rem);
}

.news_detail .news_content_inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 1em;
}

.news_detail .news_content_inner .time {
	font-family: "Lato", sans-serif;
	font-size: clamp(1.5rem, 0.9375vw, 1.8rem);
	font-weight: bold;
	color: #fd7c7c;
}

.news_detail .news_content_inner .category {
	padding: 1px 12px;
	border-radius: 16px;
	background: #ffe6e6;
	font-size: clamp(1.5rem, 0.9375vw, 1.8rem);
}

.news_detail .news_content_thumbnail {
	margin-bottom: 2rem;
}

.news_detail .news_content_thumbnail img {
	display: block;
	width: 100%;
	height: auto;
}

.news_detail .news_content .news_text {
	font-size: clamp(1.6rem, 0.9375vw, 1.8rem);
	font-weight: 500;
}

.news_detail .news_content .news_text h2 {
	padding: 15px 20px;
	border-top: 2px solid #fd7c7c;
	border-bottom: 2px solid #fd7c7c;
	font-size: clamp(2.2rem, 1.5625vw, 3rem);
	color: #fd7c7c;
}

.news_detail .news_content .news_text h2 + h2,
.news_detail .news_content .news_text h2 + h3,
.news_detail .news_content .news_text h2 + h4,
.news_detail .news_content .news_text h2 + p,
.news_detail .news_content .news_text h2 + ul,
.news_detail .news_content .news_text h2 + ol,
.news_detail .news_content .news_text h2 + .wp-block-image {
	margin-top: 40px;
}

.news_detail .news_content .news_text h3 {
	position: relative;
	padding: 15px 20px;
	border-bottom: solid 2px #dedede;
	font-size: 25px;
	color: #fd7c7c;
}

.news_detail .news_content .news_text h3::after {
	position: absolute;
	bottom: -3px;
	left: 0;
	display: block;
	width: 20%;
	border-bottom: solid 2px #fd7c7c;
	content: " ";
}

.news_detail .news_content .news_text h3 + h2,
.news_detail .news_content .news_text h3 + h3,
.news_detail .news_content .news_text h3 + h4,
.news_detail .news_content .news_text h3 + p,
.news_detail .news_content .news_text h3 + ul,
.news_detail .news_content .news_text h3 + ol,
.news_detail .news_content .news_text h3 + .wp-block-image {
	margin-top: 4.8rem;
}

.news_detail .news_content .news_text h4 {
	padding: 0.4em 0.7em;
	border-left: solid 4px #fd7c7c;
	border-radius: 5px;
	background: #fff8f8;
	font-size: 20px;
	line-height: 1.8;
	color: #fd7c7c;
}

.news_detail .news_content .news_text h4 + h2,
.news_detail .news_content .news_text h4 + h3,
.news_detail .news_content .news_text h4 + h4,
.news_detail .news_content .news_text h4 + p,
.news_detail .news_content .news_text h4 + ul,
.news_detail .news_content .news_text h4 + ol,
.news_detail .news_content .news_text h4 + .wp-block-image {
	margin-top: 4.8rem;
}

.news_detail .news_content .news_text p {
	font-weight: 500;
}

.news_detail .news_content .news_text p + h2,
.news_detail .news_content .news_text p + h3,
.news_detail .news_content .news_text p + h4,
.news_detail .news_content .news_text p + p,
.news_detail .news_content .news_text p + ul,
.news_detail .news_content .news_text p + ol,
.news_detail .news_content .news_text p + .wp-block-image {
	margin-top: 40px;
}

.news_detail .news_content .news_text > ul + p,
.news_detail .news_content .news_text > ul + h2,
.news_detail .news_content .news_text > ul + h3,
.news_detail .news_content .news_text > ul + h4,
.news_detail .news_content .news_text > ul + ul,
.news_detail .news_content .news_text > ul + ol,
.news_detail .news_content .news_text > ul + .wp-block-image,
.news_detail .news_content .news_text > ol + p,
.news_detail .news_content .news_text > ol + h2,
.news_detail .news_content .news_text > ol + h3,
.news_detail .news_content .news_text > ol + h4,
.news_detail .news_content .news_text > ol + ul,
.news_detail .news_content .news_text > ol + ol,
.news_detail .news_content .news_text > ol + .wp-block-image {
	margin-top: 40px;
}

.news_detail .news_content .news_text > ul li {
	position: relative;
	padding-left: 1em;
	list-style: none;
	line-height: 2.2;
}

.news_detail .news_content .news_text > ul li::before {
	position: absolute;
	top: 0.8em;
	left: 0;
	width: 0.45em;
	height: 0.45em;
	border-radius: 50%;
	background-color: #fd7c7c;
	content: "";
}

.news_detail .news_content .news_text > ol {
	list-style-type: decimal;
}

.news_detail .news_content .news_text > .wp-block-image + h2,
.news_detail .news_content .news_text > .wp-block-image + h3,
.news_detail .news_content .news_text > .wp-block-image + h4,
.news_detail .news_content .news_text > .wp-block-image + p,
.news_detail .news_content .news_text > .wp-block-image + ul,
.news_detail .news_content .news_text > .wp-block-image + ol,
.news_detail .news_content .news_text > .wp-block-image + .wp-block-image {
	margin-top: 4.8rem;
}

.news_detail .news_content .news_text .wp-element-button {
	background-color: #ffe34d;
	font-weight: 700;
	color: #444;
}

.news_detail_btn {
	margin: 0 auto;
	margin-top: 100px;
}

.news_detail_btn a {
	color: #fff;
}

.news_detail_btn :hover {
	color: #fd7c7c;
}

@media (prefers-reduced-motion: no-preference) {

:where(html:focus-within) {
	scroll-behavior: smooth;
}

}

@media (hover: hover) and (pointer: fine) {

.p-contact .form_content_body input[type=submit]:hover {
	background: #fff;
	color: #fd7c7c;
}

}

@media screen and (min-width: 577px) {

body {
	font-size: 1.6rem;
}

.sp-only {
	display: none;
}

.sp-escape {
	display: block;
}

.p-notFound .error_content_text {
	line-height: 1.8;
}

.p-contact .form_content_text {
	font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
}

.p-contact .form_content_body table tr {
	padding-bottom: 2.4rem;
}

.p-contact .form_content_body table tr:not(:first-of-type) {
	padding-top: 2.4rem;
}

.p-contact .form_content_body table th {
	margin-top: 0.8rem;
	padding-left: 1.2rem;
}

.p-contact .form_content_body table th p {
	font-size: 2rem;
	-webkit-column-gap: 1rem;
	   -moz-column-gap: 1rem;
	        column-gap: 1rem;
}

.p-contact .form_content_body table th .required,
.p-contact .form_content_body table th .any {
	width: 5.4rem;
	padding-right: 0.6rem;
	padding-left: 0.6rem;
	font-size: 1.4rem;
}

.p-contact .form_content_body input[type=text],
.p-contact .form_content_body input[type=tel],
.p-contact .form_content_body input[type=email],
.p-contact .form_content_body textarea[name=your-message] {
	padding: 1rem;
}

.p-contact .form_content_body input[type=text],
.p-contact .form_content_body input[type=email] {
	width: min(90%, 90rem);
}

.p-contact .form_content_body input[type=tel] {
	width: min(87%, 29.5rem);
}

.p-contact .form_content_body textarea[name=your-message] {
	width: min(100%, 67.2rem);
	max-height: 25.4rem;
}

}

@media screen and (max-width: 820px) and (min-width: 577px) {

.tab-only {
	display: block;
}

.tab-escape {
	display: none;
}

.p-contact .form_content_body table td {
	padding-left: 1.2rem;
}

.p-contact .form_content_body input[type=text],
.p-contact .form_content_body input[type=tel],
.p-contact .form_content_body input[type=email],
.p-contact .form_content_body textarea[name=your-message] {
	margin-top: 1.4rem;
}

}

@media screen and (min-width: 821px) {

.pc-only {
	display: block;
}

.pc-escape {
	display: none;
}

.tab-only {
	display: none;
}

.tab-escape {
	display: block;
}

.c-btn--primary {
	width: clamp(26rem, 16.9270833333vw, 32.5rem);
	padding: 2.5rem 4.6rem;
}

.c-btn--primary::after {
	right: clamp(0rem, 2.0833333333vw, 3.2rem);
	width: clamp(1.8rem, 1.7200938233vw, 2.2rem);
}

.c-btn--primary .text {
	font-size: clamp(2rem, 1.7200938233vw, 2.2rem);
}

.p-notFound .error {
	padding: 15rem clamp(3.2rem, 3.7529319781vw, 4.8rem) clamp(10.4rem, 31.2744331509vw, 40rem);
}

.p-contact .form_content_body {
	margin-left: 1.2rem;
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
}

.p-contact .form_content_body table tr {
	-webkit-column-gap: 2.4rem;
	   -moz-column-gap: 2.4rem;
	        column-gap: 2.4rem;
}

.p-contact .form_content_body table th {
	width: clamp(29.6rem, 23.1430805317vw, 29.6rem);
}

}

@media screen and (max-width: 1440px) {

.l-contact_box {
	padding-top: 80px;
	padding-right: clamp(2rem, 3.3333333333vw, 4rem);
	padding-bottom: 80px;
	padding-left: clamp(2rem, 3.3333333333vw, 4rem);
}

.l-contact .tel_number img {
	width: clamp(2rem, 3.4166666667vw, 4.1rem);
}

}

@media screen and (max-width: 1280px) {

.l-header_nav {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 20px;
	-webkit-box-align: end;
	-webkit-align-items: end;
	   -moz-box-align: end;
	    -ms-flex-align: end;
	        align-items: end;
}

.home .news_item_inner {
	display: block;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.home .news_item_right {
	width: 100%;
}

.home .news_item_text {
	margin-top: 8px;
}

.home .schedule .box_schedule_timeline {
	background: #fff;
}

}

@media screen and (max-width: 1024px) {

.l-footer .bg-footer_wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 40px;
}

.l-footer .bg-footer_wrapper .footer_info {
	width: 100%;
}

.l-footer .bg-footer_wrapper .footer_right {
	width: 100%;
}

.l-footer .bg-footer_wrapper .footer_nav {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.l-contact .tel_number a {
	font-size: 40px;
}

.p-philosophy .vision {
	margin-top: -50px;
}

.p-philosophy .goal_item {
	width: 60%;
}

.p-philosophy .profile .profile_list .profile_item .business_row {
	-ms-grid-columns: 2fr;
	grid-template-columns: 2fr;
}

.p-philosophy .profile .profile_list .profile_item .business_row .business_text {
	margin-top: 2px;
}

}

@media screen and (max-width: 1024px) and (max-width: 820px) {

.l-contact .tel_number a {
	font-size: clamp(2.8rem, 5.487804878vw, 4.5rem);
}

}

@media screen and (max-width: 820px) {

.pc-only {
	display: none;
}

.pc-escape {
	display: block;
}

.c-btn--primary {
	width: clamp(26rem, 36.5853658537vw, 30rem);
	padding: clamp(1.5rem, 5.3333333333vw, 2rem) clamp(4rem, 10.6666666667vw, 7.4rem);
}

.c-btn--primary::after {
	right: clamp(0rem, 4.8vw, 5rem);
	width: clamp(1.6rem, 2.1951219512vw, 1.8rem);
}

.c-btn--primary .text {
	font-size: clamp(1.6rem, 1.9512195122vw, 1.6rem);
}

.l-header_left img {
	width: clamp(30rem, 69.4444444444vw, 40rem);
}

.l-header_menu a {
	min-width: 317px;
	gap: 70px;
}

.l-header .header_contact {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.l-header .header_contact_tel {
	min-width: 317px;
}

.l-header .header_contact_tel {
	min-width: 317px;
	padding-left: 20px;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	   -moz-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.l-header .header_contact_tel .tel_group {
	gap: 35px;
}

.l-header .header_contact_tel .tel_time {
	padding-left: 62px;
}

.l-header .header_contact_entry {
	min-width: 317px;
	gap: 70px;
}

.l-header .header_contact_recruit {
	min-width: 317px;
	gap: 70px;
}

.l-header .hamburger_menu_list li a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	   -moz-box-orient: horizontal;
	   -moz-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 10px;
}

.l-footer .group_area .bn_list {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.l-footer .group_area .bn_list li {
	width: 100%;
}

.l-footer .bg-footer {
	background: url("./images/common/footer_img_sp.png") no-repeat;
	background-position: center;
	background-size: cover;
}

.l-footer .bg-footer_wrapper .footer_info_banner {
	margin-top: 30px;
}

.l-footer .bg-footer_wrapper .footer_info_banner img {
	margin: 0 auto;
}

.l-contact_box {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 20px;
}

.l-contact .tel {
	width: 100%;
	padding-bottom: 35px;
	background-image: -webkit-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: -moz-linear-gradient(left, #737373 2px, transparent 3px);
	background-image: linear-gradient(to right, #737373 2px, transparent 3px);
	background-repeat: repeat-x;
	background-position: bottom center;
	background-size: 8px 1px;
}

.l-contact .tel_number {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	   -moz-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.l-contact .tel_time {
	margin-top: 0;
}

.l-contact .contact_form {
	width: 100%;
}

.l-contact .contact_form_head {
	font-size: clamp(2.2rem, 3.0487804878vw, 2.5rem);
}

.l-contact .contact_form .form_btn {
	width: 80%;
	padding: 10px 20px;
}

.l-contact .contact_form .form_btn .text {
	font-size: clamp(2rem, 5.487804878vw, 4.5rem);
}

.l-mv_image {
	padding-top: 200px;
}

.l-mv_title {
	top: 65%;
	width: clamp(15rem, 35.3658536585vw, 29rem);
}

.home .mv_inner {
	width: 100%;
	padding-top: 120px;
}

.home .mv .mv_image {
	width: 100%;
	-webkit-clip-path: url(#mask-sp);
	        clip-path: url(#mask-sp);
	aspect-ratio: 819/769;
}

.home .mv .mv_frame {
	top: 120px;
	width: 100%;
}

.home .mv_copy {
	top: auto;
	right: auto;
	bottom: -90px;
	left: clamp(2rem, 4.8780487805vw, 4rem);
}

.home .mv_copy img {
	width: clamp(35rem, 81.9512195122vw, 67.2rem);
}

.home .news {
	padding-top: 150px;
}

.home .news_wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.home .news_title {
	margin-bottom: 15px;
	text-align: center;
}

.home .news_btn_sp {
	margin: 0 auto;
	margin-top: 45px;
	text-align: center;
}

.home .news_list {
	width: 100%;
}

.home .news_item_text {
	font-size: 18px;
}

.home .features {
	margin-top: 100px;
	padding: 40px 0;
}

.home .features_grid {
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	gap: 40px;
}

.home .features_block_number {
	top: -38px;
}

.home .features_block_title {
	font-size: 22px;
}

.home .features_block_desc {
	font-size: 18px;
}

.home .philosophy {
	padding-top: 100px;
	padding-bottom: 50px;
}

.home .philosophy_jpTitle::before {
	display: none;
}

.home .philosophy_jpTitle::after {
	display: none;
}

.home .philosophy_image_left {
	top: 10%;
}

.home .philosophy_image_bottom {
	top: 5%;
	left: 19%;
	width: 18%;
}

.home .philosophy_image_right {
	top: 6%;
}

.home .philosophy_subtitle {
	margin-top: 40px;
}

.home .philosophy_text {
	max-width: none;
	text-align: left;
}

.home .schedule {
	margin-top: -150px;
	padding-top: 250px;
}

.home .schedule_inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: 85%;
	margin: 0 auto;
	gap: 32px;
}

.home .schedule_image {
	width: 100%;
}

.home .schedule_content {
	width: 100%;
}

.home .schedule .box_schedule_timeline .schedule_timeline::before {
	left: 140px;
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li .timeline-date {
	min-width: 100px;
	height: 45px;
	font-size: 16px;
}

.home .events {
	padding-top: 100px;
	padding-bottom: 100px;
}

.home .events_inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: column-reverse;
	   -moz-box-orient: vertical;
	   -moz-box-direction: reverse;
	    -ms-flex-direction: column-reverse;
	        flex-direction: column-reverse;
	width: 85%;
	margin: 0 auto;
	gap: 32px;
}

.home .events_content {
	width: 100%;
}

.home .events_list .events_item .events_season {
	font-size: clamp(1.6rem, 2.4390243902vw, 2rem);
}

.home .events_list .events_item .events_season.monthly {
	font-size: clamp(1.6rem, 2.4390243902vw, 2rem);
}

.home .events_image {
	width: 100%;
}

.home .events_btn {
	margin-top: 50px;
}

.home .support_inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	margin-top: 45px;
	gap: 20px;
}

.home .support_inner_item {
	width: 100%;
}

.home .support_inner_head {
	font-size: 22px;
}

.home .support_inner_text {
	font-size: 18px;
}

.home .support_inner_note {
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
}

.p-notFound .error {
	padding: clamp(23rem, 36.5853658537vw, 40rem) clamp(2rem, 5.3333333333vw, 3.2rem) clamp(30rem, 12.8048780488vw, 10.5rem);
}

.p-philosophy .philosophy {
	margin-top: 40px;
	padding-bottom: 300px;
	background-image: url("./images/philosophy/philosophy_back_sp.jpg");
	background-position: center;
	background-size: cover;
	aspect-ratio: auto;
}

.p-philosophy .philosophy_left {
	width: clamp(15rem, 24.3902439024vw, 20rem);
}

.p-philosophy .philosophy_right {
	width: clamp(15rem, 24.3902439024vw, 20rem);
}

.p-philosophy .vision {
	margin-top: -10px;
}

.p-philosophy .vision_wrapper {
	width: 70%;
	max-width: 1000px;
}

.p-philosophy .vision_inner {
	margin-top: 45px;
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
}

.p-philosophy .goal {
	background: none;
}

.p-philosophy .goal_wrapper {
	padding-top: 80px;
}

.p-philosophy .goal_title {
	text-align: center;
}

.p-philosophy .goal_jpTitle::before {
	display: block;
	width: clamp(10rem, 8.75vw, 12.6rem);
	height: auto;
	background-image: url("images/philosophy/goal_title.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	aspect-ratio: 126/48;
}

.p-philosophy .goal_list {
	gap: 15px;
}

.p-philosophy .goal_item {
	width: 100%;
	padding: 15px 5px 15px 20px;
	background-color: #fff7f4;
}

.p-philosophy .goal_num {
	left: -15px;
	width: 40px;
	height: 40px;
}

.p-philosophy .goal_text {
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
}

.p-philosophy .link {
	margin-top: 0;
	border: 2px solid #fd7c7c;
}

.p-philosophy .link img {
	width: clamp(15rem, 30.487804878vw, 25rem);
}

.p-philosophy .link .link_title .link_jpTitle {
	font-size: clamp(1.2rem, 1.9512195122vw, 1.6rem);
}

.p-philosophy .link .link_title .link_enTitle {
	font-size: clamp(2rem, 4.2682926829vw, 3.5rem);
}

.p-philosophy .message {
	margin-top: 150px;
}

.p-philosophy .message_wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-philosophy .message_right {
	width: 100%;
	margin-top: 30px;
}

.p-philosophy .message_jpTitle::after {
	display: none;
}

.p-philosophy .message_text {
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
}

.p-philosophy .message_text .message_text_name {
	margin-top: 15px;
}

.p-philosophy .message_text .message_text_name span {
	font-size: clamp(2.2rem, 4.8780487805vw, 4rem);
}

.p-philosophy .profile_wrapper {
	padding: 40px;
}

.p-philosophy .profile .profile_list .profile_item {
	-ms-grid-columns: 2fr;
	grid-template-columns: 2fr;
}

.p-philosophy .profile .profile_list .profile_item {
	padding: 10px 0;
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
}

.p-about .head_text {
	text-align: left;
}

.p-about .facility_circle_02 {
	top: 400px;
}

.p-about .facility_list {
	gap: 20px;
}

.p-about .facility_item {
	-webkit-box-flex: 0;
	-webkit-flex-grow: 0;
	   -moz-box-flex: 0;
	    -ms-flex-positive: 0;
	        flex-grow: 0;
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
	-webkit-flex-basis: -webkit-calc(33.333% - 20px);
	    -ms-flex-preferred-size: calc(33.333% - 20px);
	        flex-basis: -moz-calc(33.333% - 20px);
	        flex-basis: calc(33.333% - 20px);
}

.p-about .uniform {
	padding: 80px 0;
}

.p-about .uniform_inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-about .uniform_text {
	max-width: none;
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
}

.p-about .events_season.summer::before {
	top: -20px;
}

.p-about .events_season.autum::before {
	top: -20px;
}

.p-about .events_season.winter::before {
	top: -20px;
}

.p-about .events_season_title {
	font-size: clamp(2.2rem, 3.6585365854vw, 3rem);
}

.p-about .events_list {
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
}

.p-about .day_schedule_circle {
	top: 400px;
}

.p-about .day_schedule_list {
	margin-top: 40px;
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	gap: 35px;
}

.p-about .day_schedule_meal {
	width: 90%;
	padding-right: clamp(2rem, 3.6585365854vw, 3rem);
	padding-left: clamp(2rem, 3.6585365854vw, 3rem);
}

.p-about .link {
	margin-top: 80px;
	border: 2px solid #fd7c7c;
}

.p-about .link img {
	width: clamp(15rem, 30.487804878vw, 25rem);
}

.p-about .link .link_title .link_jpTitle {
	font-size: clamp(1.2rem, 1.9512195122vw, 1.6rem);
}

.p-about .link .link_title .link_enTitle {
	font-size: clamp(2rem, 4.2682926829vw, 3.5rem);
}

.p-about .gallery {
	margin-top: 120px;
}

.p-about .gallery_list {
	-ms-grid-columns: (1fr)[3];
	grid-template-columns: repeat(3, 1fr);
	gap: 5px;
}

.p-contact .form {
	padding-top: clamp(18rem, 19.512195122vw, 16rem);
}

.p-contact .form_content_text {
	text-align: left;
}

.p-contact .form_content_body table tr {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-contact .checkbox {
	margin-top: 15px;
}

.p-contact.complete .complete_form {
	padding-top: clamp(25rem, 36.5853658537vw, 30rem);
}

.page-contact .l-header .circle_image {
	display: none;
}

.p-privacy {
	padding-top: clamp(18rem, 19.512195122vw, 16rem);
}

.p-privacy_bgTitle {
	font-size: clamp(1.8rem, 3.0487804878vw, 2.5rem);
}

.p-privacy_contents_head {
	font-size: clamp(1.6rem, 2.4390243902vw, 2rem);
}

.p-privacy_contents_text {
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
}

.page-privacy-policy .l-header .circle_image {
	display: none;
}

.p-complaint {
	padding-top: clamp(18rem, 19.512195122vw, 16rem);
}

.p-complaint_bgTitle {
	font-size: clamp(1.8rem, 3.0487804878vw, 2.5rem);
}

.p-complaint_contents_head {
	font-size: clamp(1.6rem, 2.4390243902vw, 2rem);
}

.p-complaint_contents_text {
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
}

.p-complaint_contents_list li {
	line-height: 1.4;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	row-gap: 8px;
}

.p-complaint_buttun {
	margin-top: 60px;
}

.page-hoiku-kujyo .l-header .circle_image {
	display: none;
}

.news_archive_cards {
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}

.news_detail {
	padding-top: clamp(20rem, 30.487804878vw, 25rem);
}

.news_detail .news_content_ttlBox h1 {
	font-size: clamp(1.6rem, 2.4390243902vw, 2rem);
}

.news_detail .news_content_inner .time {
	font-size: clamp(1.3rem, 1.8292682927vw, 1.5rem);
}

.news_detail .news_content_inner .category {
	font-size: clamp(1.3rem, 1.8292682927vw, 1.5rem);
}

.news_detail .news_content .news_text {
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
}

.news_detail .news_content .news_text .has-fixed-layout td {
	font-size: clamp(1.2rem, 1.7073170732vw, 1.4rem);
}

.news_detail_btn {
	margin-top: clamp(4rem, 9.756097561vw, 8rem);
}

}

@media screen and (max-width: 820px) and (max-width: 576px) {

.p-philosophy .goal_jpTitle::before {
	display: none;
}

}

@media screen and (max-width: 576px) {

body {
	font-size: 1.4rem;
	line-height: 1.6;
}

.tab-only {
	display: none;
}

.tab-escape {
	display: block;
}

.sp-only {
	display: block;
}

.sp-escape {
	display: none;
}

.l-header .circle_image {
	top: 600px;
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.l-header .header_contact {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
}

.l-header .hamburger_btn {
	width: 75px;
	height: 75px;
}

.l-header .hamburger_btn span {
	width: 42px;
}

.l-footer .bg-footer_wrapper {
	padding-top: 60px;
}

.l-footer .bg-footer_wrapper .footer_info_logo {
	width: 50%;
}

.l-footer .bg-footer_wrapper .footer_info_address {
	margin-top: 30px;
	font-size: clamp(1.6rem, 3.125vw, 1.8rem);
}

.l-footer .bg-footer_wrapper .footer_nav {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	gap: 25px 0;
}

.l-footer .bg-footer_wrapper .footer_nav ul {
	width: 48%;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title {
	margin-bottom: 17px;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title a {
	font-size: 16px;
}

.l-footer .bg-footer_wrapper .footer_nav ul .nav_title_detail a {
	font-size: 14px;
}

.l-footer .bg-footer_wrapper .footer_bottom_menu a {
	font-size: clamp(1.2rem, 2.2569444444vw, 1.3rem);
}

.l-footer .bg-footer_wrapper .footer_bottom_menu span {
	margin: 0 3px;
}

.l-contact {
	padding: 80px 0 80px;
	background: url(./images/common/contact_sp.png) top/cover no-repeat;
}

.l-contact_circle {
	width: clamp(7rem, 12.1527777778vw, 7rem);
}

.l-contact_inner .contact_text {
	font-size: 14px;
	text-align: left;
}

.l-contact_box {
	padding: 40px 30px;
}

.l-contact .tel_head {
	font-size: 18px;
}

.l-contact .contact_form_head {
	font-size: 18px;
}

.l-contact .contact_form .form_btn {
	width: 85%;
}

.l-mv_image {
	padding-top: 160px;
}

.l-mv_circle {
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.l-mv_title {
	top: 75%;
}

.home .news_circle_01 {
	width: clamp(7rem, 12.1527777778vw, 7rem);
}

.home .news_circle_02 {
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.home .news_item {
	padding: 20px 0;
}

.home .news_item_info {
	gap: 12px;
}

.home .news_item_date {
	font-size: 13px;
}

.home .news_item_cat {
	min-width: auto;
	font-size: 12px;
}

.home .news_item_text {
	margin-top: 8px;
	font-size: 16px;
}

.home .news .circle {
	border: 2px solid #fd7c7c;
}

.home .features_circle_01 {
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.home .features_circle_02 {
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.home .features_circle_03 {
	bottom: 120px;
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.home .features_jpTitle::before {
	display: none;
}

.home .features_jpTitle::after {
	display: none;
}

.home .features_block_title {
	font-size: 20px;
}

.home .features_block_desc {
	font-size: 14px;
}

.home .philosophy {
	padding-top: 80px;
}

.home .philosophy_subtitle {
	margin-top: 20px;
	font-size: clamp(2rem, 5.7291666667vw, 3.3rem);
}

.home .philosophy_text {
	margin-top: 20px;
	font-size: 14px;
}

.home .slider {
	--unit: 190px;
	padding: 20px 0;
}

.home .slider .slider_track {
	width: -webkit-calc(var(--unit) * 10);
	width: -moz-calc(var(--unit) * 10);
	width: calc(var(--unit) * 10);
	gap: 10px;
}

.home .slider .slider_item {
	width: 180px;
}

.home .slider .slider_item:nth-child(2n+2) {
	top: 20px;
}

.home .schedule_circle_01 {
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.home .schedule_circle_02 {
	top: 550px;
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.home .schedule {
	margin-top: -100px;
	padding-top: 180px;
}

.home .schedule_jpTitle::after {
	display: none;
}

.home .schedule_head {
	margin-top: 25px;
	font-size: 14px;
}

.home .schedule .box_schedule_timeline {
	padding: 20px 30px;
}

.home .schedule .box_schedule_timeline .schedule_timeline::before {
	left: 95px;
	width: 3px;
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li {
	margin-bottom: 20px;
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li .timeline-date {
	min-width: 80px;
	height: 32px;
	font-size: 15px;
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li .timeline-date::after {
	right: -4px;
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li .timeline-date::before {
	top: 13px;
	right: -20px;
	width: 8px;
	height: 8px;
}

.home .schedule .box_schedule_timeline .schedule_timeline .timeline li .timeline-content {
	padding-left: 20px;
	font-size: 14px;
}

.home .events {
	padding-top: 50px;
	padding-bottom: 70px;
}

.home .events_circle_01 {
	width: clamp(4rem, 8.6805555556vw, 5rem);
}

.home .events_circle_02 {
	width: clamp(5rem, 12.1527777778vw, 7rem);
}

.home .events_jpTitle::after {
	display: none;
}

.home .events_head {
	margin-top: 25px;
	font-size: 14px;
}

.home .events_list {
	padding: 20px;
}

.home .events_list .events_item .events_season {
	width: 35px;
	height: 35px;
}

.home .events_list .events_item .events_season.monthly {
	padding: 3px 5px 4px;
	font-size: 13px;
}

.home .events_list .events_item .events_text {
	font-size: 14px;
}

.home .support {
	padding: 30px 0 80px;
}

.home .support_circle {
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.home .support_jpTitle::before {
	display: none;
}

.home .support_jpTitle::after {
	display: none;
}

.home .support_inner_head {
	font-size: 20px;
}

.home .support_inner_text {
	font-size: 14px;
}

.home .recruit {
	padding-bottom: 250px;
}

.home .recruit_jpTitle::before {
	display: none;
}

.home .recruit_jpTitle::after {
	display: none;
}

.home .recruit_circle {
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.home .recruit_image {
	margin-top: 30px;
}

.p-notFound .error_content_text {
	line-height: 1.5;
}

.p-philosophy .philosophy {
	padding-bottom: 200px;
}

.p-philosophy .philosophy_circle_02 {
	display: none;
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.p-philosophy .philosophy_jpTitle::before {
	display: none;
}

.p-philosophy .philosophy_jpTitle::after {
	display: none;
}

.p-philosophy .philosophy_text {
	font-size: 20px;
}

.p-philosophy .philosophy_left {
	width: clamp(11rem, 26.0416666667vw, 15rem);
}

.p-philosophy .philosophy_right {
	width: clamp(11rem, 26.0416666667vw, 15rem);
}

.p-philosophy .vision {
	margin-top: 5px;
	padding: 40px 0;
}

.p-philosophy .vision_circle_01 {
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.p-philosophy .vision_circle_02 {
	top: 1450px;
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.p-philosophy .vision_wrapper {
	width: 70%;
	max-width: 1200px;
}

.p-philosophy .vision_jpTitle::before {
	display: none;
}

.p-philosophy .vision_jpTitle::after {
	display: none;
}

.p-philosophy .vision_inner {
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
}

.p-philosophy .goal {
	padding-bottom: 40px;
}

.p-philosophy .goal_circle {
	bottom: 0px;
	display: none;
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.p-philosophy .goal_jpTitle::after {
	display: none;
}

.p-philosophy .goal_list {
	gap: 10px;
}

.p-philosophy .goal_item {
	padding-right: 10px;
	padding-left: 10px;
}

.p-philosophy .goal_num {
	width: 30px;
	height: 30px;
	font-size: 16px;
}

.p-philosophy .link {
	border: 1px solid #fd7c7c;
	border-radius: 5px;
}

.p-philosophy .link .link_title .link_enTitle {
	margin-bottom: 10px;
	font-size: clamp(1.6rem, 3.4722222222vw, 2rem);
}

.p-philosophy .link .circle {
	width: 30px;
	height: 30px;
}

.p-philosophy .link .circle::before {
	width: 10px;
	height: 10px;
}

.p-philosophy .message {
	margin-top: 60px;
	padding-bottom: 85px;
}

.p-philosophy .message_circle {
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.p-philosophy .message_jpTitle::after {
	display: none;
}

.p-philosophy .message_image::after {
	display: none;
}

.p-philosophy .profile {
	padding: 60px 0 250px;
}

.p-philosophy .profile_circle_01 {
	top: 550px;
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.p-philosophy .profile_circle_02 {
	width: clamp(4rem, 8.6805555556vw, 5rem);
}

.p-philosophy .profile_circle_03 {
	width: clamp(5rem, 12.1527777778vw, 7rem);
}

.p-philosophy .profile_wrapper {
	padding: 40px 20px;
	border-radius: 20px;
}

.p-philosophy .profile_jpTitle::before {
	display: none;
}

.p-philosophy .profile_jpTitle::after {
	display: none;
}

.p-philosophy .profile .profile_image {
	margin-top: 25px;
	margin-bottom: 25px;
}

.p-about .head_text {
	margin-top: 30px;
	font-size: 14px;
}

.p-about .facility {
	margin-top: 50px;
	padding: 30px 0;
}

.p-about .facility_circle_01 {
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.p-about .facility_circle_02 {
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.p-about .facility_circle_03 {
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.p-about .facility_jpTitle::before {
	display: none;
}

.p-about .facility_jpTitle::after {
	display: none;
}

.p-about .facility_list {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-about .uniform {
	padding: 40px 0;
}

.p-about .uniform_circle {
	bottom: 0px;
	display: none;
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.p-about .uniform_jpTitle::before {
	display: none;
}

.p-about .uniform_jpTitle::after {
	display: none;
}

.p-about .uniform_main {
	width: 100%;
}

.p-about .uniform_list .illust_balloon {
	top: -50px;
	width: clamp(2rem, 12.1527777778vw, 7rem);
}

.p-about .events {
	margin-top: 45px;
	padding-top: 45px;
	padding-bottom: 120px;
}

.p-about .events_circle_01 {
	top: 50px;
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.p-about .events_circle_02 {
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.p-about .events_circle_03 {
	width: clamp(4rem, 8.6805555556vw, 5rem);
}

.p-about .events_jpTitle::before {
	display: none;
}

.p-about .events_jpTitle::after {
	display: none;
}

.p-about .events_season {
	width: 85%;
	margin-top: 30px;
}

.p-about .events_season.spring::after {
	left: 0;
}

.p-about .events_season.summer::after {
	left: 0;
}

.p-about .events_season.autum::after {
	left: 0;
}

.p-about .events_season.winter::after {
	left: 0;
}

.p-about .events_season_title {
	display: block;
	margin-right: auto;
	margin-bottom: 2px;
	margin-left: auto;
	text-align: center;
}

.p-about .events_season_title .events_season_line {
	display: none;
}

.p-about .events_list {
	margin-bottom: 0;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	gap: 15px;
}

.p-about .events_item_caption {
	margin-top: 0;
}

.p-about .day_schedule {
	padding-bottom: 50px;
}

.p-about .day_schedule_circle {
	display: none;
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.p-about .day_schedule_jpTitle::before {
	display: none;
}

.p-about .day_schedule_jpTitle::after {
	display: none;
}

.p-about .day_schedule_list {
	margin-top: 40px;
}

.p-about .day_schedule_item p {
	font-size: 15px;
}

.p-about .day_schedule_meal {
	width: 100%;
	margin-top: 40px;
	padding: 15px;
}

.p-about .day_schedule_meal::before {
	border: 1px dashed #fd7c7c;
	inset: 3px;
}

.p-about .day_schedule_meal h3 {
	font-size: 16px;
}

.p-about .day_schedule_meal ul li {
	font-size: 14px;
}

.p-about .link {
	margin-top: 40px;
	border: 1px solid #fd7c7c;
	border-radius: 5px;
}

.p-about .link .link_title .link_enTitle {
	margin-bottom: 10px;
	font-size: clamp(1.6rem, 3.4722222222vw, 2rem);
}

.p-about .link .circle {
	width: 30px;
	height: 30px;
}

.p-about .link .circle::before {
	width: 10px;
	height: 10px;
}

.p-about .gallery {
	margin-top: 70px;
	padding: 40px 0 300px;
}

.p-about .gallery_circle_01 {
	width: clamp(4rem, 12.1527777778vw, 7rem);
}

.p-about .gallery_circle_02 {
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.p-about .gallery_jpTitle::before {
	display: none;
}

.p-about .gallery_jpTitle::after {
	display: none;
}

.p-about .gallery_list {
	margin-top: 35px;
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	gap: 2px;
}

.p-access .access {
	margin-top: 40px;
}

.p-access .access_circle {
	top: 750px;
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.p-access .access_inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: column-reverse;
	   -moz-box-orient: vertical;
	   -moz-box-direction: reverse;
	    -ms-flex-direction: column-reverse;
	        flex-direction: column-reverse;
	gap: 30px;
}

.p-access .access_map {
	width: 100%;
}

.p-access .access_title {
	margin-bottom: 10px;
	font-size: 18px;
}

.p-access .access_address {
	margin-bottom: 20px;
	font-size: 14px;
}

.p-access .access .google_map {
	margin-top: 40px;
	border-radius: 10px;
	aspect-ratio: 7/4;
}

.p-access .facilityMap {
	margin-top: 40px;
	margin-bottom: 250px;
}

.p-access .facilityMap_circle {
	bottom: -50px;
	width: clamp(6rem, 12.1527777778vw, 7rem);
}

.p-access .facilityMap_title {
	font-size: 18px;
}

.p-access .facilityMap_wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	   -moz-box-orient: vertical;
	   -moz-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	margin-top: 30px;
	gap: 30px;
}

.page-access .l-header .circle_image {
	display: none;
}

.p-contact .form {
	padding-bottom: 250px;
}

.p-contact .form_content_title {
	margin-bottom: 20px;
}

.p-contact .form_content_text {
	font-size: clamp(1.4rem, 1.9512195122vw, 1.6rem);
	line-height: 1.5;
}

.p-contact .form_content_body {
	margin-top: 40px;
}

.p-contact .form_content_body table tr {
	padding-bottom: 2rem;
}

.p-contact .form_content_body table tr:not(:first-of-type) {
	padding-top: 2rem;
}

.p-contact .form_content_body table th p {
	font-size: 1.6rem;
	-webkit-column-gap: 1.4rem;
	   -moz-column-gap: 1.4rem;
	        column-gap: 1.4rem;
}

.p-contact .form_content_body table th .required,
.p-contact .form_content_body table th .any {
	width: 4.8rem;
	padding-right: 0.4rem;
	padding-left: 0.4rem;
	font-size: 1.2rem;
}

.p-contact .form_content_body input[type=text],
.p-contact .form_content_body input[type=tel],
.p-contact .form_content_body input[type=email],
.p-contact .form_content_body textarea[name=your-message] {
	margin-top: 1rem;
	padding: 0.8rem;
}

.p-contact .form_content_body input[type=text],
.p-contact .form_content_body input[type=email] {
	width: 100%;
}

.p-contact .form_content_body input[type=tel] {
	width: 100%;
}

.p-contact .form_content_body textarea[name=your-message] {
	width: 100%;
	max-height: 20rem;
}

.p-contact.complete .complete_form {
	padding-top: clamp(18rem, 43.4027777778vw, 25rem);
}

.p-privacy {
	padding-bottom: 250px;
}

.p-privacy_bgTitle {
	margin-top: 30px;
}

.p-privacy_contents {
	margin-top: 30px;
}

.p-complaint {
	padding-bottom: 250px;
}

.p-complaint_bgTitle {
	margin-top: 30px;
}

.p-complaint_contents {
	margin-top: 30px;
}

.p-complaint_contents_list li {
	padding: 15px 10px;
}

.news_archive {
	padding-bottom: 250px;
}

.news_archive_wrapper {
	margin-top: 30px;
}

.news_archive_category {
	margin-bottom: 30px;
	gap: 10px;
}

.news_archive_category li a {
	padding: 4px 18px;
}

.news_archive_cards {
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	gap: 24px;
}

.news_archive .news_card_date {
	font-size: 12px;
}

.news_archive .news_card_cat {
	font-size: 12px;
}

.news_archive .news_card_title {
	font-size: 16px;
}

.news_archive_pagination {
	margin-top: 50px;
}

.archive .l-header .circle_image {
	display: none;
}

.news_detail {
	padding-top: 180px;
}

.news_detail .news_content .news_text h2 {
	padding: 7px;
	font-size: clamp(1.5rem, 3.125vw, 1.8rem);
}

.news_detail .news_content .news_text h2 + h2,
.news_detail .news_content .news_text h2 + h3,
.news_detail .news_content .news_text h2 + h4,
.news_detail .news_content .news_text h2 + p,
.news_detail .news_content .news_text h2 + ul,
.news_detail .news_content .news_text h2 + ol,
.news_detail .news_content .news_text h2 + .wp-block-image {
	margin-top: 2rem;
}

.news_detail .news_content .news_text h3 {
	padding: 7px;
	font-size: clamp(1.5rem, 3.125vw, 1.8rem);
}

.news_detail .news_content .news_text h3 + h2,
.news_detail .news_content .news_text h3 + h3,
.news_detail .news_content .news_text h3 + h4,
.news_detail .news_content .news_text h3 + p,
.news_detail .news_content .news_text h3 + ul,
.news_detail .news_content .news_text h3 + ol,
.news_detail .news_content .news_text h3 + .wp-block-image {
	margin-top: 2rem;
}

.news_detail .news_content .news_text h4 {
	padding: 7px;
	font-size: clamp(1.5rem, 3.125vw, 1.8rem);
}

.news_detail .news_content .news_text h4 + h2,
.news_detail .news_content .news_text h4 + h3,
.news_detail .news_content .news_text h4 + h4,
.news_detail .news_content .news_text h4 + p,
.news_detail .news_content .news_text h4 + ul,
.news_detail .news_content .news_text h4 + ol,
.news_detail .news_content .news_text h4 + .wp-block-image {
	margin-top: 2rem;
}

.news_detail .news_content .news_text p + h2,
.news_detail .news_content .news_text p + h3,
.news_detail .news_content .news_text p + h4,
.news_detail .news_content .news_text p + p,
.news_detail .news_content .news_text p + ul,
.news_detail .news_content .news_text p + ol,
.news_detail .news_content .news_text p + .wp-block-image {
	margin-top: 2rem;
}

.news_detail .news_content .news_text > ul + p,
.news_detail .news_content .news_text > ul + h2,
.news_detail .news_content .news_text > ul + h3,
.news_detail .news_content .news_text > ul + h4,
.news_detail .news_content .news_text > ul + ul,
.news_detail .news_content .news_text > ul + ol,
.news_detail .news_content .news_text > ul + .wp-block-image,
.news_detail .news_content .news_text > ol + p,
.news_detail .news_content .news_text > ol + h2,
.news_detail .news_content .news_text > ol + h3,
.news_detail .news_content .news_text > ol + h4,
.news_detail .news_content .news_text > ol + ul,
.news_detail .news_content .news_text > ol + ol,
.news_detail .news_content .news_text > ol + .wp-block-image {
	margin-top: 2rem;
}

.news_detail .news_content .news_text > ul li {
	line-height: 2;
}

.news_detail .news_content .news_text > .wp-block-image + h2,
.news_detail .news_content .news_text > .wp-block-image + h3,
.news_detail .news_content .news_text > .wp-block-image + h4,
.news_detail .news_content .news_text > .wp-block-image + p,
.news_detail .news_content .news_text > .wp-block-image + ul,
.news_detail .news_content .news_text > .wp-block-image + ol,
.news_detail .news_content .news_text > .wp-block-image + .wp-block-image {
	margin-top: 2rem;
}

.news_detail .news_content .news_text .wp-element-button {
	font-size: 15px;
}

.single .l-header .circle_image {
	display: none;
}

}

@-webkit-keyframes fade-in {

0% {
	opacity: 0;
	-webkit-transform: translateY(25px);
	        transform: translateY(25px);
}

100% {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

}

@-moz-keyframes fade-in {

0% {
	opacity: 0;
	-moz-transform: translateY(25px);
	     transform: translateY(25px);
}

100% {
	opacity: 1;
	-moz-transform: translateY(0);
	     transform: translateY(0);
}

}

@keyframes fade-in {

0% {
	opacity: 0;
	-webkit-transform: translateY(25px);
	   -moz-transform: translateY(25px);
	        transform: translateY(25px);
}

100% {
	opacity: 1;
	-webkit-transform: translateY(0);
	   -moz-transform: translateY(0);
	        transform: translateY(0);
}

}

@-webkit-keyframes fade-up {

0% {
	opacity: 0;
	-webkit-transform: translateY(-25px);
	        transform: translateY(-25px);
}

100% {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

}

@-moz-keyframes fade-up {

0% {
	opacity: 0;
	-moz-transform: translateY(-25px);
	     transform: translateY(-25px);
}

100% {
	opacity: 1;
	-moz-transform: translateY(0);
	     transform: translateY(0);
}

}

@keyframes fade-up {

0% {
	opacity: 0;
	-webkit-transform: translateY(-25px);
	   -moz-transform: translateY(-25px);
	        transform: translateY(-25px);
}

100% {
	opacity: 1;
	-webkit-transform: translateY(0);
	   -moz-transform: translateY(0);
	        transform: translateY(0);
}

}

@-webkit-keyframes fade-right {

0% {
	opacity: 0;
	-webkit-transform: translateX(25px);
	        transform: translateX(25px);
}

100% {
	opacity: 1;
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

}

@-moz-keyframes fade-right {

0% {
	opacity: 0;
	-moz-transform: translateX(25px);
	     transform: translateX(25px);
}

100% {
	opacity: 1;
	-moz-transform: translateX(0);
	     transform: translateX(0);
}

}

@keyframes fade-right {

0% {
	opacity: 0;
	-webkit-transform: translateX(25px);
	   -moz-transform: translateX(25px);
	        transform: translateX(25px);
}

100% {
	opacity: 1;
	-webkit-transform: translateX(0);
	   -moz-transform: translateX(0);
	        transform: translateX(0);
}

}

@-webkit-keyframes fade-left {

0% {
	opacity: 0;
	-webkit-transform: translateX(-25px);
	        transform: translateX(-25px);
}

100% {
	opacity: 1;
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

}

@-moz-keyframes fade-left {

0% {
	opacity: 0;
	-moz-transform: translateX(-25px);
	     transform: translateX(-25px);
}

100% {
	opacity: 1;
	-moz-transform: translateX(0);
	     transform: translateX(0);
}

}

@keyframes fade-left {

0% {
	opacity: 0;
	-webkit-transform: translateX(-25px);
	   -moz-transform: translateX(-25px);
	        transform: translateX(-25px);
}

100% {
	opacity: 1;
	-webkit-transform: translateX(0);
	   -moz-transform: translateX(0);
	        transform: translateX(0);
}

}

@-webkit-keyframes fade-bg {

0% {
	-webkit-transform: translate(-101%, -50%);
	        transform: translate(-101%, -50%);
}

50% {
	-webkit-transform: translateX(0, -50%);
	        transform: translateX(0, -50%);
}

100% {
	-webkit-transform: translate(101%, -50%);
	        transform: translate(101%, -50%);
}

}

@-moz-keyframes fade-bg {

0% {
	-moz-transform: translate(-101%, -50%);
	     transform: translate(-101%, -50%);
}

50% {
	-moz-transform: translateX(0, -50%);
	     transform: translateX(0, -50%);
}

100% {
	-moz-transform: translate(101%, -50%);
	     transform: translate(101%, -50%);
}

}

@keyframes fade-bg {

0% {
	-webkit-transform: translate(-101%, -50%);
	   -moz-transform: translate(-101%, -50%);
	        transform: translate(-101%, -50%);
}

50% {
	-webkit-transform: translateX(0, -50%);
	   -moz-transform: translateX(0, -50%);
	        transform: translateX(0, -50%);
}

100% {
	-webkit-transform: translate(101%, -50%);
	   -moz-transform: translate(101%, -50%);
	        transform: translate(101%, -50%);
}

}

@-webkit-keyframes appear {

0% {
	opacity: 0;
}

100% {
	opacity: 1;
}

}

@-moz-keyframes appear {

0% {
	opacity: 0;
}

100% {
	opacity: 1;
}

}

@keyframes appear {

0% {
	opacity: 0;
}

100% {
	opacity: 1;
}

}

@-webkit-keyframes disappear {

0% {
	opacity: 1;
}

100% {
	opacity: 0;
}

}

@-moz-keyframes disappear {

0% {
	opacity: 1;
}

100% {
	opacity: 0;
}

}

@keyframes disappear {

0% {
	opacity: 1;
}

100% {
	opacity: 0;
}

}

@-webkit-keyframes sway {

0%,100% {
	-webkit-transform: rotate(10deg);
	        transform: rotate(10deg);
}

50% {
	-webkit-transform: rotate(-10deg);
	        transform: rotate(-10deg);
}

}

@-moz-keyframes sway {

0%,100% {
	-moz-transform: rotate(10deg);
	     transform: rotate(10deg);
}

50% {
	-moz-transform: rotate(-10deg);
	     transform: rotate(-10deg);
}

}

@keyframes sway {

0%,100% {
	-webkit-transform: rotate(10deg);
	   -moz-transform: rotate(10deg);
	        transform: rotate(10deg);
}

50% {
	-webkit-transform: rotate(-10deg);
	   -moz-transform: rotate(-10deg);
	        transform: rotate(-10deg);
}

}

@-webkit-keyframes ver-hol {

0% {
	-webkit-transform: translate(10px, 10px) rotate(4deg);
	        transform: translate(10px, 10px) rotate(4deg);
}

50% {
	-webkit-transform: translate(-10px, -10px) rotate(-8deg);
	        transform: translate(-10px, -10px) rotate(-8deg);
}

100% {
	-webkit-transform: translate(10px, 10px) rotate(4deg);
	        transform: translate(10px, 10px) rotate(4deg);
}

}

@-moz-keyframes ver-hol {

0% {
	-moz-transform: translate(10px, 10px) rotate(4deg);
	     transform: translate(10px, 10px) rotate(4deg);
}

50% {
	-moz-transform: translate(-10px, -10px) rotate(-8deg);
	     transform: translate(-10px, -10px) rotate(-8deg);
}

100% {
	-moz-transform: translate(10px, 10px) rotate(4deg);
	     transform: translate(10px, 10px) rotate(4deg);
}

}

@keyframes ver-hol {

0% {
	-webkit-transform: translate(10px, 10px) rotate(4deg);
	   -moz-transform: translate(10px, 10px) rotate(4deg);
	        transform: translate(10px, 10px) rotate(4deg);
}

50% {
	-webkit-transform: translate(-10px, -10px) rotate(-8deg);
	   -moz-transform: translate(-10px, -10px) rotate(-8deg);
	        transform: translate(-10px, -10px) rotate(-8deg);
}

100% {
	-webkit-transform: translate(10px, 10px) rotate(4deg);
	   -moz-transform: translate(10px, 10px) rotate(4deg);
	        transform: translate(10px, 10px) rotate(4deg);
}

}

@-webkit-keyframes hol-ver {

0% {
	-webkit-transform: translate(-10px, -10px) rotate(12deg);
	        transform: translate(-10px, -10px) rotate(12deg);
}

50% {
	-webkit-transform: translate(10px, 10px) rotate(-6deg);
	        transform: translate(10px, 10px) rotate(-6deg);
}

100% {
	-webkit-transform: translate(-10px, -10px) rotate(12deg);
	        transform: translate(-10px, -10px) rotate(12deg);
}

}

@-moz-keyframes hol-ver {

0% {
	-moz-transform: translate(-10px, -10px) rotate(12deg);
	     transform: translate(-10px, -10px) rotate(12deg);
}

50% {
	-moz-transform: translate(10px, 10px) rotate(-6deg);
	     transform: translate(10px, 10px) rotate(-6deg);
}

100% {
	-moz-transform: translate(-10px, -10px) rotate(12deg);
	     transform: translate(-10px, -10px) rotate(12deg);
}

}

@keyframes hol-ver {

0% {
	-webkit-transform: translate(-10px, -10px) rotate(12deg);
	   -moz-transform: translate(-10px, -10px) rotate(12deg);
	        transform: translate(-10px, -10px) rotate(12deg);
}

50% {
	-webkit-transform: translate(10px, 10px) rotate(-6deg);
	   -moz-transform: translate(10px, 10px) rotate(-6deg);
	        transform: translate(10px, 10px) rotate(-6deg);
}

100% {
	-webkit-transform: translate(-10px, -10px) rotate(12deg);
	   -moz-transform: translate(-10px, -10px) rotate(12deg);
	        transform: translate(-10px, -10px) rotate(12deg);
}

}

@-webkit-keyframes floating-right {

0% {
	-webkit-transform: translate(-10px, -5px) rotate(-6deg);
	        transform: translate(-10px, -5px) rotate(-6deg);
}

50% {
	-webkit-transform: translate(10px, 10px) rotate(6deg);
	        transform: translate(10px, 10px) rotate(6deg);
}

100% {
	-webkit-transform: translate(-10px, -5px) rotate(-6deg);
	        transform: translate(-10px, -5px) rotate(-6deg);
}

}

@-moz-keyframes floating-right {

0% {
	-moz-transform: translate(-10px, -5px) rotate(-6deg);
	     transform: translate(-10px, -5px) rotate(-6deg);
}

50% {
	-moz-transform: translate(10px, 10px) rotate(6deg);
	     transform: translate(10px, 10px) rotate(6deg);
}

100% {
	-moz-transform: translate(-10px, -5px) rotate(-6deg);
	     transform: translate(-10px, -5px) rotate(-6deg);
}

}

@keyframes floating-right {

0% {
	-webkit-transform: translate(-10px, -5px) rotate(-6deg);
	   -moz-transform: translate(-10px, -5px) rotate(-6deg);
	        transform: translate(-10px, -5px) rotate(-6deg);
}

50% {
	-webkit-transform: translate(10px, 10px) rotate(6deg);
	   -moz-transform: translate(10px, 10px) rotate(6deg);
	        transform: translate(10px, 10px) rotate(6deg);
}

100% {
	-webkit-transform: translate(-10px, -5px) rotate(-6deg);
	   -moz-transform: translate(-10px, -5px) rotate(-6deg);
	        transform: translate(-10px, -5px) rotate(-6deg);
}

}

@-webkit-keyframes floating-left {

0% {
	-webkit-transform: translate(10px, 10px) rotate(12deg);
	        transform: translate(10px, 10px) rotate(12deg);
}

50% {
	-webkit-transform: translate(-20px, -20px) rotate(-12deg);
	        transform: translate(-20px, -20px) rotate(-12deg);
}

100% {
	-webkit-transform: translate(10px, 10px) rotate(12deg);
	        transform: translate(10px, 10px) rotate(12deg);
}

}

@-moz-keyframes floating-left {

0% {
	-moz-transform: translate(10px, 10px) rotate(12deg);
	     transform: translate(10px, 10px) rotate(12deg);
}

50% {
	-moz-transform: translate(-20px, -20px) rotate(-12deg);
	     transform: translate(-20px, -20px) rotate(-12deg);
}

100% {
	-moz-transform: translate(10px, 10px) rotate(12deg);
	     transform: translate(10px, 10px) rotate(12deg);
}

}

@keyframes floating-left {

0% {
	-webkit-transform: translate(10px, 10px) rotate(12deg);
	   -moz-transform: translate(10px, 10px) rotate(12deg);
	        transform: translate(10px, 10px) rotate(12deg);
}

50% {
	-webkit-transform: translate(-20px, -20px) rotate(-12deg);
	   -moz-transform: translate(-20px, -20px) rotate(-12deg);
	        transform: translate(-20px, -20px) rotate(-12deg);
}

100% {
	-webkit-transform: translate(10px, 10px) rotate(12deg);
	   -moz-transform: translate(10px, 10px) rotate(12deg);
	        transform: translate(10px, 10px) rotate(12deg);
}

}

@-webkit-keyframes swiper-animation {

0% {
	-webkit-transform: translateX(0%);
	        transform: translateX(0%);
}

100% {
	-webkit-transform: translateX(-100%);
	        transform: translateX(-100%);
}

}

@-moz-keyframes swiper-animation {

0% {
	-moz-transform: translateX(0%);
	     transform: translateX(0%);
}

100% {
	-moz-transform: translateX(-100%);
	     transform: translateX(-100%);
}

}

@keyframes swiper-animation {

0% {
	-webkit-transform: translateX(0%);
	   -moz-transform: translateX(0%);
	        transform: translateX(0%);
}

100% {
	-webkit-transform: translateX(-100%);
	   -moz-transform: translateX(-100%);
	        transform: translateX(-100%);
}

}

@-webkit-keyframes slideAnim {

from {
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

to {
	-webkit-transform: translateX(-webkit-calc(var(--unit) * -5));
	        transform: translateX(calc(var(--unit) * -5));
}

}

@-moz-keyframes slideAnim {

from {
	-moz-transform: translateX(0);
	     transform: translateX(0);
}

to {
	-moz-transform: translateX(-moz-calc(var(--unit) * -5));
	     transform: translateX(calc(var(--unit) * -5));
}

}

@keyframes slideAnim {

from {
	-webkit-transform: translateX(0);
	   -moz-transform: translateX(0);
	        transform: translateX(0);
}

to {
	-webkit-transform: translateX(-webkit-calc(var(--unit) * -5));
	   -moz-transform: translateX(-moz-calc(var(--unit) * -5));
	        transform: translateX(calc(var(--unit) * -5));
}

}

