/*================================================================
RESET
================================================================*/

*,
*::after,
*::before {
	box-sizing: border-box;
	word-wrap: break-word;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	color: inherit;
	vertical-align: baseline;
}

header,
footer,
nav,
section,
article,
aside,
figure,
figcaption {
	display: block;
}

body {
	line-height: 1;
}

ol,
ul {
	list-style: none;
	list-style-type: none;
}

a {
	text-decoration: none;
	cursor: pointer;
}

img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

/*================================================================
変数
================================================================*/

/*================================================================
メディアクエリ
================================================================*/

/*================================================================
BASE
================================================================*/

body {
	color: #ad5e55;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.075rem;
	position: relative;
}

/*================================================================
PC
================================================================*/

/*================================================================
PC  タブレット
================================================================*/

/*================================================================
PC  スマホ
================================================================*/

/*================================================================
タブレット
================================================================*/

/*================================================================
タブレット  スマホ
================================================================*/

/*================================================================
スマホ
================================================================*/

/*================================================================
スマホ デザインカンプ以下
================================================================*/

.l-header {
	width: 100%;
	height: 120px;
	background: #fdda82;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 20;
}

.l-header__inner {
	max-width: 1200px;
	width: 87.3998543336vw;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 50px;
	height: inherit;
}

/*================================================================
header
================================================================*/

.l-header__logo {
	flex: 0 0 auto;
}

.l-header__menu {
	flex: 0 1 745px;
}

.l-header__nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.l-header__list {
	flex: 0 1 auto;
}

.l-header__list a {
	display: inline-block;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	white-space: nowrap;
	position: relative;
}

.l-header__list a::after {
	content: "";
	width: 0px;
	height: 2px;
	background: #ad5e55;
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.5s ease 0s;
}

.l-header__list a:hover::after {
	width: 100%;
}

/*=====================================
drawer icon
=====================================*/

.l-header__drawer {
	display: none;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 45px;
	transition: all 0.5s ease 0s;
}

.l-header__drawerIcon {
	width: 40px;
	height: 29px;
	cursor: pointer;
	position: relative;
}

.l-header__drawerBar {
	width: 100%;
	height: 3px;
	background: #ad5e55;
	border-radius: 20px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.5s ease 0s;
}

.l-header__drawerBar1 {
	top: 0;
}

.l-header__drawerBar2 {
	top: 13px;
}

.l-header__drawerBar3 {
	top: 26px;
}

.l-header__drawer.is-active .l-header__drawerBar1 {
	transform: translateX(-50%) rotate(-45deg);
	top: 13px;
}

.l-header__drawer.is-active .l-header__drawerBar2 {
	width: 0;
}

.l-header__drawer.is-active .l-header__drawerBar3 {
	transform: translateX(-50%) rotate(45deg);
	top: 13px;
}

/*=====================================
drawer
=====================================*/

.l-header.is-active::after {
	content: "";
	width: 100vw;
	height: 100vh;
	background: rgba(0, 0, 0, 0.7);
	position: absolute;
	top: 80px;
	right: 0;
	z-index: -1;
}

/*================================================================
footer
================================================================*/

.l-footer {
	padding-block: 109px 65px;
	background: #fdda82;
	margin-top: 220px;
}

.l-footer__inner {
	display: flex;
	justify-content: space-between;
	align-items: end;
	gap: 37px;
}

/*================================================================
左側
================================================================*/

.l-footer__right {
	flex: 0 1 auto;
}

.l-footer__logo {
	width: -moz-fit-content;
	width: fit-content;
	text-align: center;
	letter-spacing: 0.18rem;
}

.l-footer__logo span {
	font-size: 28px;
	display: block;
}

.l-footer__adddres {
	font-size: min(2.1849963583vw, 30px);
	line-height: 1.2;
	margin-top: 27px;
	letter-spacing: 0.13rem;
}

.l-footer__email {
	font-size: min(2.1849963583vw, 30px);
	white-space: nowrap;
	margin-top: 37px;
	letter-spacing: 0.11rem;
}

.l-footer__email span {
	text-decoration: none !important;
}

.l-footer__fax {
	font-size: min(2.1849963583vw, 30px);
	margin-top: 7px;
	letter-spacing: 0.15rem;
	text-decoration: none !important;
	pointer-events: none;
}

.l-footer__fax span {
	text-decoration: none !important;
	pointer-events: none;
}

/*================================================================
右側
================================================================*/

.l-footer__left {
	flex: 0 1 660px;
	display: flex;
	justify-content: space-between;
	gap: 20px;
}

.l-footer__menuTitle {
	font-size: min(2.1849963583vw, 30px);
	white-space: nowrap;
	position: relative;
}

.l-footer__menuTitle::after {
	content: "";
	width: 0px;
	height: 1px;
	background: #ad5e55;
	position: absolute;
	bottom: -5px;
	left: 0;
	transition: all 0.5s ease 0s;
}

.l-footer__menuTitle:hover::after {
	width: 100%;
}

.l-footer__nav {
	margin-top: 20px;
}

.l-footer__list {
	font-size: min(1.8936635106vw, 26px);
	margin-top: 16px;
	position: relative;
}

.l-footer__list::after {
	content: "";
	width: 0px;
	height: 1px;
	background: #ad5e55;
	position: absolute;
	bottom: -5px;
	left: 0;
	transition: all 0.5s ease 0s;
}

.l-footer__list:hover::after {
	width: 100%;
}

.l-inner {
	max-width: 1200px;
	width: 89.3333333333vw;
	margin-inline: auto;
}

.c-contentTitle {
	font-size: 40px;
	letter-spacing: 0.25rem;
}

.c-contentTitle span {
	display: inline-block;
	margin-top: 30px;
}

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

.c-sectionTitle {
	box-sizing: content-box;
	display: inline-block;
	width: -moz-fit-content;
	width: fit-content;
	font-size: 40px;
	padding-inline: 90px 110px;
	position: relative;
}

.c-sectionTitle span {
	display: inline-block;
	white-space: nowrap;
	margin-top: 11.0497237569%;
}

.c-sectionTitle::after {
	content: "";
	width: 100%;
	padding-top: 29.8342541436%;
	background: url(../img/title-flame.png) no-repeat center center/cover;
	position: absolute;
	top: 0;
	left: 0;
}

.p-frontpage-top__top {
	height: 45.1565914057vw;
	background: url(./../img/mv.jpg) no-repeat left center/cover;
}

.p-frontpage-top__inner {
	height: inherit;
	position: relative;
}

.p-frontpage-top__text {
	font-family: "Yomogi";
	font-size: 2.9133284778vw;
	font-weight: 700;
	line-height: 1.75;
	letter-spacing: 0.25rem;
	position: absolute;
	right: 15.5134741442vw;
	top: 25.3459577567vw;
}

.p-frontpage-news {
	margin-top: 210px;
}

.p-frontpage-news__inner {
	max-width: 900px;
	width: 88vw;
}

.p-frontpage-news__title {
	font-size: 40px;
	letter-spacing: 0.25rem;
}

.p-frontpage-news__itemWrap {
	width: 88.8888888889%;
	margin-inline: auto;
	min-height: 350px;
	background: #e1efc3;
	padding: 37px 11px;
	margin-top: 54px;
	display: flex;
	flex-direction: column;
	gap: 11px;
}

.p-frontpage-news__item {
	display: flex;
	gap: min(4.3699927167vw, 60px);
	letter-spacing: 0.15rem;
}

.p-frontpage-news__date {
	flex: 0 0 auto;
	color: #d4a760;
	line-height: 1.5;
}

.p-frontpage-news__text {
	line-height: 1.5;
}

.p-frontpage-contents {
	margin-top: 160px;
	display: flex;
	flex-direction: column;
	gap: 200px;
}

.p-frontpage-contents__inner {
	max-width: 920px;
	width: 88vw;
	margin-inline: auto;
}

.p-frontpage-contents__Wrap {
	min-height: 255px;
	display: flex;
	justify-content: space-between;
	align-items: end;
	gap: 20px;
}

.p-frontpage-contents__textWrap {
	width: 455px;
	min-height: inherit;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.p-frontpage-contents__text {
	color: #af7f56;
	font-family: "Yomogi";
	font-size: 20px;
	font-weight: 700;
	line-height: 1.8;
	letter-spacing: 0.1rem;
	margin-top: 16px;
}

.p-frontpage-contents__img {
	flex: 0 1 auto;
}

.p-frontpage-contents__btn {
	text-align: center;
	margin-top: 60px;
}

.p-frontpage-contents__btn a {
	display: inline-block;
	color: #ce9b49;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
	border: 5px solid #ce9b49;
	border-radius: 40px;
	padding: 21px 65px;
	transition: all 0.5s ease;
}

.p-frontpage-contents__btn a:hover {
	color: #FFF;
	background: #ce9b49;
}

.p-frontpage-management {
	margin-top: 250px;
}

.p-frontpage-management__inner {
	max-width: 1083px;
	background: #d4e8a8;
	padding-block: 40px 80px;
	text-align: center;
}

.p-frontpage-management__title {
	display: inline-flex;
	gap: 34px;
	font-family: "Yomogi";
	font-weight: 700;
	font-size: 30px;
	letter-spacing: 0.2rem;
}

.p-frontpage-management__text {
	font-size: 20px;
	margin-top: 41px;
	letter-spacing: 0.15rem;
}

.p-frontpage-management__tell {
	display: inline-flex;
	align-items: center;
	font-family: "Yomogi";
	font-weight: 700;
	font-size: 44px;
	letter-spacing: 0.25rem;
	margin-top: 35px;
	padding-left: 70px;
	position: relative;
}

.p-frontpage-management__tell::before {
	content: "";
	width: 61px;
	height: 61px;
	background: url(../../../assets/img/phone.svg) no-repeat center center/contain;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.p-frontpage-management__tell span {
	font-size: 24px;
	letter-spacing: 0.1rem;
}

.p-page-top__top {
	height: 30.1529497451vw;
	background: url(./../img/mv2.jpg) no-repeat left center/cover;
	margin-top: 29px;
}

.p-page-top__inner {
	height: inherit;
	position: relative;
}

.p-page-top__text {
	font-size: max(48px, 3.4959941733vw);
	letter-spacing: 0.25rem;
	position: absolute;
	bottom: 5.6081573197vw;
	right: 16.3874726875vw;
}

.p-page-top__text--2row {
	line-height: 1.7916666667;
	bottom: 3.3503277495vw;
}

.p-feature-message {
	margin-top: min(9.176984705vw, 126px);
}

.p-feature-message__inner {
	text-align: center;
}

.p-feature-message__text {
	display: inline-block;
	font-family: "Yomogi";
	font-size: clamp(22px, 1.7479970867vw, 24px);
	font-weight: 700;
	line-height: 1.75;
	letter-spacing: 0.18rem;
	text-align: left;
	margin-inline: auto;
}

.p-feature-info {
	padding-top: 180px;
}

.p-feature-info__inner {
	max-width: 856px;
}

.p-feature-info__content {
	font-family: "Yomogi";
	font-weight: 700;
	line-height: 1.75;
	letter-spacing: 0.17rem;
	margin-top: 87px;
}

.p-feature-info__text {
	display: flex;
}

.p-feature-info__text dt {
	white-space: nowrap;
}

.p-feature-info__text dd span {
	display: inline-block;
	white-space: nowrap;
}

.p-feature-info__img {
	width: 220px;
	margin-left: auto;
	margin-right: 20px;
}

.p-feature-price {
	padding-top: 240px;
}

.p-feature-price__content {
	max-width: 735px;
	margin-inline: auto;
	padding: 50px 40px 40px;
	background: #dbecb6;
	margin-top: 155px;
}

.p-feature-price__item {
	display: flex;
	font-family: "Yomogi";
	font-weight: 700;
	letter-spacing: 0.16rem;
	position: relative;
}

.p-feature-price__item + .p-feature-price__item {
	margin-top: 60px;
}

.p-feature-price__item + .p-feature-price__item::after {
	content: "";
	width: calc(100% + 82px);
	height: 8px;
	background: url(../img/line.png) no-repeat center center/contain;
	position: absolute;
	top: -33px;
	left: 50%;
	transform: translateX(-50%);
}

.p-feature-price__item dt {
	flex: 0 1 215px;
}

.p-feature-price__item dd + dd {
	margin-top: 20px;
}

.p-feature-price__item dd {
	white-space: nowrap;
}

.p-feature-price__point {
	max-width: 660px;
	margin-inline: auto;
	margin-top: 45px;
	text-align: right;
}

.p-feature-price__pointText {
	display: inline-block;
	font-family: "Yomogi";
	font-weight: 700;
	line-height: 1.75;
	letter-spacing: 0.15rem;
	text-align: left;
	position: relative;
}

.p-feature-price__pointText::before {
	content: "";
	width: 60px;
	height: 30px;
	background: url(../img/hand-arrow.png) no-repeat center center/contain;
	position: absolute;
	top: 10px;
	right: calc(100% - 23px);
}

.p-feature-image {
	padding-top: 240px;
}

.p-feature-image__itemWrap {
	display: grid;
	grid-template-columns: auto auto;
	justify-content: center;
	grid-gap: 94px min(7.1376547706vw, 98px);
	margin-top: 97px;
}

.p-feature-image__item {
	max-width: 500px;
	padding: 25px 25px 0;
	background: #d4e8a8;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.p-feature-image__itemImg {
	width: 100%;
	background: no-repeat center center/contain;
	text-align: center;
}

.p-feature-image__itemImg.--5 {
	width: 59.1111111111%;
	margin-inline: auto;
}

.p-feature-image__itemText {
	height: min(32vw, 120px);
	font-family: "Yomogi";
	font-size: clamp(20px, 1.7479970867vw, 24px);
	font-weight: 700;
	line-height: 1.8333333333;
	text-align: left;
	display: flex;
	align-items: center;
	justify-content: center;
}

.p-life-flow {
	padding-top: 210px;
}

.p-life-flow__inner {
	max-width: 900px;
}

.p-life-flow__content {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 55px min(7.5vw, 75px);
	margin-top: 220px;
	position: relative;
}

.p-life-flow__content::before,
.p-life-flow__content::after {
	content: "";
	width: 5px;
	height: 100%;
	position: absolute;
	top: 0;
	z-index: -1;
}

.p-life-flow__content::before {
	left: calc(((100% - min(7.5vw, 75px) - 104px) / 2 - 5px) / 2);
	background-color: #659c4d;
}

.p-life-flow__content::after {
	right: calc(((100% - min(7.5vw, 75px) - 104px) / 2 - 5px) / 2);
	background-color: #d37608;
}

.p-life-flow__item {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 25px;
	font-family: "Yomogi";
	font-weight: 700;
	letter-spacing: 0.1rem;
	border-radius: 30px;
	background: #FFF;
	padding: 20px 15px;
}

.p-life-flow__item p {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.p-life-flow__item p:nth-child(3) {
	width: 100%;
	text-align: right;
}

.--left-column {
	border: 4px solid #659c4d;
}

.--right-column {
	border: 4px solid #d37608;
}

.--1column {
	border-radius: 25px;
	position: relative;
}

.--1column::after {
	content: "";
	width: calc(100% + 8px);
	height: calc(100% + 8px);
	background: linear-gradient(to right, #659c4d 0%, #659c4d 45%, #d37608 55%, #d37608 100%);
	border-radius: 30px;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	transform: translate(-50%, -50%);
}

.--1row {
	line-height: 64px;
}

.p-life-flow__item--1,
.p-life-flow__item--2 {
	font-size: 30px;
	justify-content: center;
}

.p-life-flow__item--1 {
	margin-right: 52px;
}

.p-life-flow__item--2 {
	margin-left: 52px;
}

.p-life-flow__item--3 {
	grid-column: 1/3;
}

.p-life-flow__item--4 {
	grid-column: 1/3;
}

.p-life-flow__item--5 {
	grid-column: 1/2;
	grid-row: 4/8;
	flex-direction: column;
	gap: 17px;
}

.p-life-flow__item--6 {
	grid-column: 2/3;
}

.p-life-flow__item--7 {
	grid-column: 2/3;
}

.p-life-flow__item--8 {
	grid-column: 2/3;
}

.p-life-flow__item--9 {
	grid-column: 2/3;
}

.p-life-flow__item--12 {
	grid-column: 1/3;
}

.p-life-flow__item--13 {
	grid-column: 1/3;
	flex-wrap: nowrap;
}

.p-life-flow__item--14 {
	grid-column: 1/3;
}

.p-life-event {
	padding-top: 240px;
}

.p-life-event__content {
	max-width: 755px;
	margin-inline: auto;
	background: #dbecb6;
	padding: 75px 54px 101px;
	display: flex;
	flex-direction: column;
	gap: 60px;
	margin-top: 150px;
	position: relative;
}

.p-life-event__content::after {
	content: "";
	width: min(76.5333333333vw, 287px);
	height: min(59.2vw, 222px);
	background: url(../img/event-img.png) no-repeat center center/contain;
	position: absolute;
	bottom: 17px;
	right: 23px;
}

.p-life-event__text {
	font-family: "Yomogi";
	font-weight: 700;
	letter-spacing: 0.17rem;
}

.p-life-event__text span {
	margin-left: 50px;
}

.p-flow-condition {
	padding-top: 210px;
}

.p-flow-condition__content {
	max-width: 800px;
	min-height: 411px;
	margin-inline: auto;
	background: #e3f0c6;
	padding: 80px min(10%, 80px);
	margin-top: 105px;
}

.p-flow-condition__content span {
	white-space: nowrap;
}

.p-flow-condition__mainText {
	font-family: "Yomogi";
	font-weight: 700;
	line-height: 30px;
	letter-spacing: 0.1rem;
}

.p-flow-condition__subText {
	font-family: "Yomogi";
	font-weight: 700;
	line-height: 30px;
	letter-spacing: 0.16rem;
	margin-top: 54px;
	padding-left: 52px;
	position: relative;
}

.p-flow-condition__subText::before {
	content: "";
	width: 40px;
	height: 40px;
	background: url(../img/check.svg) no-repeat center center/contain;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.p-flow-overview {
	padding-top: 240px;
}

.p-flow-overview__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	margin-top: 165px;
}

.p-flow-overview__text {
	width: 563px;
	min-height: 80px;
	font-family: "Yomogi";
	font-weight: 700;
	line-height: 1.8333333333;
	letter-spacing: 0.15rem;
	padding-inline: 40px 39px;
	border: 4px solid #659c4d;
	border-radius: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.p-flow-overview__text span {
	white-space: nowrap;
}

.p-flow-overview__arrow {
	width: 67px;
	height: 60px;
}

.p-contact-access {
	padding-top: 210px;
}

.p-contact-access__map {
	max-width: 700px;
	height: 530px;
	margin-inline: auto;
	margin-top: 140px;
}

.p-contact-info {
	padding-top: 240px;
}

.p-contact-info__inner {
	padding-bottom: 210px;
	position: relative;
}

.p-contact-info__inner::after {
	content: "";
	width: 530px;
	height: 234px;
	background: url(../img/josei-gazou.png) no-repeat center center/contain;
	position: absolute;
	bottom: 0;
	right: 54px;
}

.p-contact-info__content {
	max-width: 960px;
	margin-inline: auto;
	background: #e6f1cc;
	padding: 45px 60px;
	margin-top: 165px;
}

.p-contact-info__logo {
	width: 150px;
	margin-inline: auto;
}

.p-contact-info__adressWrap {
	font-family: "Yomogi";
	font-weight: 700;
	letter-spacing: 0.16rem;
	padding-left: 110px;
	margin-top: 31px;
	display: flex;
	flex-direction: column;
	gap: 44px;
}

.p-contact-info__adressWrap span {
	white-space: nowrap;
}

.p-contact-info__adress {
	line-height: 1.8333333333;
	position: relative;
}

.p-contact-info__adress::before {
	content: "";
	width: 94px;
	height: 84px;
	background: url(../img/house.svg) no-repeat center center/contain;
	position: absolute;
	top: 50%;
	right: calc(100% + 16px);
	transform: translateY(-50%);
}

.p-contact-info__tell {
	text-decoration: none !important;
	position: relative;
}

.p-contact-info__tell::before {
	content: "";
	width: 48px;
	height: 48px;
	background: url(../img/phone.svg) no-repeat center center/contain;
	position: absolute;
	bottom: 0;
	right: calc(100% + 32px);
}

.p-contact-info__fax {
	text-decoration: none !important;
	pointer-events: none;
	position: relative;
}

.p-contact-info__fax::before {
	content: "";
	width: 48px;
	height: 41px;
	background: url(../img/fax.svg) no-repeat center center/contain;
	position: absolute;
	bottom: 0;
	right: calc(100% + 32px);
}

.p-contact-info__email {
	text-decoration: none !important;
	position: relative;
}

.p-contact-info__email::before {
	content: "";
	width: 48px;
	height: 36px;
	background: url(../img/mail.svg) no-repeat center center/contain;
	position: absolute;
	bottom: 0;
	right: calc(100% + 32px);
}

.p-contact-info__textWrap {
	display: flex;
	flex-direction: column;
	gap: 11px;
	font-family: "Yomogi";
	font-weight: 700;
	margin-top: 78px;
	margin-left: 40px;
}

.p-contact-info__text {
	letter-spacing: 0.16rem;
	line-height: 1.25;
}

.u-page {
	padding-top: 120px;
}

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

.is-pc-sp {
	display: block;
}

.is-tab {
	display: none;
}

.is-tab-sp {
	display: none;
}

.is-sp {
	display: none;
}

.is-dsp {
	display: none;
}

.l-footer__left {
	margin-right: 37px;
	margin-bottom: 16px;
}

}

@media screen and (max-width: calc(1000px - 1px)) {

.is-pc {
	display: none;
}

.is-pc-sp {
	display: none;
}

.is-tab {
	display: block;
}

.is-sp {
	display: none;
}

.is-dsp {
	display: none;
}

.l-header {
	height: 80px;
}

.l-header__logo {
	flex: 0 1 140px;
}

.l-header__drawer {
	display: block;
}

.l-header__menu {
	width: 300px;
	height: 550px;
	background: #fdda82;
	background: url(../img/mv.jpg) no-repeat left -190px center/cover;
	position: absolute;
	top: 0;
	right: -301px;
	transition: right 0.5s ease 0s;
}

.l-header__menu.is-active {
	right: 0;
}

.l-header__nav {
	display: block;
	width: 50%;
	margin-inline: auto;
	margin-top: 130px;
	text-align: center;
}

.l-header__list {
	margin-top: 50px;
}

.l-header__list a {
	text-shadow: 2px 2px 2px #FFF, -2px -2px 2px #FFF, -2px 2px 2px #FFF, 2px -2px 2px #FFF, 2px 0 2px #FFF, -2px 0 2px #FFF, 0 2px 2px #FFF, 0 -2px 2px #FFF;
}

.c-contentTitle {
	font-size: max(4vw, 34px);
}

.c-contentTitle span {
	margin-top: max(3vw, 20px);
}

.p-frontpage-contents__text {
	font-size: max(2vw, 18px);
	letter-spacing: 0.06rem;
}

.p-page-top__text {
	right: 10.9249817917vw;
}

.p-feature-message__text {
	width: 67.0065549891vw;
	text-align: justify;
}

.p-feature-image__itemWrap {
	grid-template-columns: auto;
}

.p-feature-image__item {
	width: 500px;
	margin-inline: auto;
}

.p-feature-image__itemText {
	font-size: 24px;
}

.p-life-flow__item {
	font-size: max(20px, 2.4vw);
	letter-spacing: 0.03rem;
	gap: 12px 22px;
}

.--1row {
	line-height: 40px;
}

.p-life-flow__item--1,
.p-life-flow__item--2 {
	font-size: max(24px, 3vw);
}

.u-page {
	padding-top: 80px;
}

}

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

.is-pc-tab {
	display: none;
}

.is-pc-sp {
	display: block;
}

.is-tab {
	display: none;
}

.is-sp {
	display: block;
}

.l-header {
	height: 60px;
}

.l-header__logo {
	flex: 0 1 120px;
}

.l-header__drawer {
	right: 22px;
}

.l-header__drawerIcon {
	width: 30px;
	height: 16px;
}

.l-header__drawerBar {
	height: 2px;
}

.l-header__drawerBar2 {
	top: 7px;
}

.l-header__drawerBar3 {
	top: 14px;
}

.l-header__drawer.is-active .l-header__drawerBar1 {
	top: 7px;
}

.l-header__drawer.is-active .l-header__drawerBar3 {
	top: 7px;
}

.l-header.is-active::after {
	top: 60px;
}

.l-footer {
	margin-top: 150px;
	text-align: center;
	padding-block: 80px 50px;
}

.l-footer__inner {
	flex-direction: column;
}

.l-footer__right {
	flex: unset;
	width: 100%;
}

.l-footer__logo {
	margin-inline: auto;
}

.l-footer__adddres {
	font-size: min(4.8vw, 18px);
	margin-top: 25px;
}

.l-footer__email {
	font-size: min(4.8vw, 18px);
	margin-top: 25px;
}

.l-footer__fax {
	font-size: min(4.8vw, 18px);
}

.l-footer__left {
	flex: unset;
	width: 100%;
	flex-direction: column;
	margin: 0;
	gap: 40px;
}

.l-footer__menuTitle {
	display: inline-block;
	font-size: 20px;
}

.l-footer__nav {
	width: 26.6666666667vw;
	width: 100px;
	margin-inline: auto;
	text-align: left;
}

.l-footer__list {
	font-size: 16px;
}

.c-contentTitle {
	font-size: 36px;
}

.c-sectionTitle {
	box-sizing: border-box;
	width: min(88vw, 370px);
	font-size: min(7.4666666667vw, 32px);
	padding-inline: 0;
	position: relative;
}

.c-sectionTitle span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-57%, -50%);
}

.p-frontpage-top__top {
	height: 400px;
	background-position: left -25px center;
}

.p-frontpage-top__text {
	font-size: clamp(20px, 4vw, 28px);
	line-height: 1.5;
	letter-spacing: unset;
	top: 40px;
	right: 5.3333333333vw;
}

.p-frontpage-news {
	margin-top: 100px;
}

.p-frontpage-news__inner {
	max-width: 500px;
}

.p-frontpage-news__title {
	font-size: 36px;
}

.p-frontpage-news__itemWrap {
	width: 100%;
	margin-top: 40px;
}

.p-frontpage-news__item {
	display: block;
}

.p-frontpage-news__date {
	font-size: 20px;
}

.p-frontpage-news__text {
	font-size: 20px;
	margin-inline: 22px 10px;
}

.p-frontpage-contents {
	margin-top: 100px;
	gap: 100px;
}

.p-frontpage-contents__inner {
	max-width: 400px;
}

.p-frontpage-contents__Wrap {
	flex-direction: column;
	gap: 25px;
}

.p-frontpage-contents__textWrap {
	width: 100%;
	min-height: unset;
	gap: 25px;
}

.p-frontpage-contents__text {
	margin-top: 0;
	text-align: justify;
}

.p-frontpage-contents__img {
	flex: unset;
	width: 100%;
}

.p-frontpage-contents__btn {
	margin-top: 40px;
}

.p-frontpage-management__inner {
	max-width: 450px;
	padding-block: 35px 50px;
}

.p-frontpage-management__title {
	font-size: min(6.4vw, 24px);
	flex-direction: column;
	gap: 10px;
}

.p-frontpage-management__text {
	font-size: min(4.8vw, 18px);
}

.p-frontpage-management__tell {
	flex-direction: column;
	gap: 5px;
	font-size: min(8vw, 30px);
	padding-left: 55px;
}

.p-frontpage-management__tell::before {
	width: 50px;
	height: 50px;
}

.p-frontpage-management__tell span {
	font-size: min(5.3333333333vw, 20px);
}

.p-page-top__top {
	height: 260px;
	background-position: left -27px center;
}

.p-page-top__text {
	font-size: clamp(24px, 4.5283018868vw, 30px);
	line-height: 1.5;
	letter-spacing: unset;
	bottom: clamp(32px, 6.0377358491vw, 40px);
	right: 4vw;
}

.p-page-top__text--2row {
	line-height: 1.1666666667;
}

.p-feature-message__text {
	width: 80vw;
	font-size: 20px;
	letter-spacing: 0;
	margin-top: 50px;
}

.p-feature-info {
	padding-top: 120px;
}

.p-feature-info__content {
	font-size: min(5.3333333333vw, 20px);
	margin-top: 150px;
}

.p-feature-info__img {
	width: 180px;
	margin-right: auto;
	margin-top: 15px;
}

.p-feature-price {
	padding-top: 200px;
}

.p-feature-price__inner {
	max-width: 570px;
}

.p-feature-price__content {
	padding: 30px 8vw;
}

.p-feature-price__item {
	display: block;
	font-size: min(6.4vw, 24px);
}

.p-feature-price__item + .p-feature-price__item::after {
	width: calc(100% + 2px + 16vw);
	height: 5px;
	background-size: cover;
	background-position: left center;
}

.p-feature-price__item dd + dd {
	margin-top: 10px;
}

.p-feature-price__item dd {
	margin-top: 10px;
}

.p-feature-price__pointText {
	font-size: 20px;
	margin-left: 23px;
	line-height: 1.5;
}

.p-feature-price__pointText::before {
	width: 40px;
	top: 5px;
	right: calc(100% - 15px);
}

.p-feature-image {
	padding-top: 200px;
}

.p-feature-image__itemWrap {
	margin-top: 150px;
	grid-gap: 60px;
}

.p-feature-image__item {
	max-width: 400px;
	width: 100%;
}

.p-feature-image__itemText {
	font-size: min(5.3333333333vw, 20px);
	line-height: 1.5;
}

.p-life-flow {
	padding-top: 150px;
}

.p-life-flow__content {
	grid-gap: min(8vw, 30px) 25px;
	margin-top: 150px;
}

.p-life-flow__content::before {
	left: calc(((100% - 25px) / 2 - 5px) / 2);
}

.p-life-flow__content::after {
	right: calc(((100% - 25px) / 2 - 5px) / 2);
}

.p-life-flow__item {
	font-size: min(4.8vw, 18px);
	flex-direction: column;
	padding: min(4vw, 15px);
	gap: 0;
}

.p-life-flow__item p {
	line-height: 24px;
	gap: 0;
}

.p-life-flow__item p:first-child {
	margin-bottom: 8px;
}

.p-life-flow__item p:nth-child(3) {
	text-align: left;
	display: contents;
}

.p-life-flow__item--1,
.p-life-flow__item--2 {
	font-size: min(5.3333333333vw, 20px);
	align-items: center;
}

.p-life-flow__item--1 {
	margin-right: 0;
}

.p-life-flow__item--2 {
	margin-left: 0;
}

.p-life-event {
	padding-top: 200px;
}

.p-life-event__content {
	max-width: 500px;
	font-size: min(6.4vw, 24px);
	padding-block: 50px min(77.3333333333vw, 290px);
	padding-inline: min(9.3333333333vw, 35px);
	gap: 30px;
	margin-top: 150px;
}

.p-life-event__content::after {
	bottom: 30px;
	right: 6.1333333333%;
}

.p-life-event__text span {
	margin-left: 20px;
}

.p-flow-condition {
	padding-top: 150px;
}

.p-flow-condition__content {
	padding: 45px 9.3333333333vw;
	margin-top: 150px;
}

.p-flow-overview {
	padding-top: 200px;
}

.p-flow-overview__text {
	max-width: 500px;
	width: 100%;
	font-size: min(5.3333333333vw, 20px);
	line-height: 1.5;
	padding-inline: 20px;
	border: 3px solid #659c4d;
	flex-direction: column;
}

.p-contact-access {
	padding-top: 150px;
}

.p-contact-access__map {
	height: min(89.3333333333vw, 500px);
}

.p-contact-info {
	padding-top: 200px;
}

.p-contact-info__inner {
	max-width: 500px;
	padding-bottom: min(34.6666666667vw, 130px);
}

.p-contact-info__inner::after {
	width: min(89.3333333333vw, 335px);
	height: min(39.4666666667vw, 148px);
	right: 0;
}

.p-contact-info__content {
	padding: 45px 15px;
}

.p-contact-info__adressWrap {
	font-size: min(5.3333333333vw, 20px);
	letter-spacing: 0.075rem;
	padding-left: min(16vw, 80px);
	gap: 25px;
	margin-top: 40px;
}

.p-contact-info__adress {
	line-height: 1.25;
}

.p-contact-info__adress::before {
	width: min(16vw, 60px);
	right: calc(100% + min(1.8666666667vw, 12px));
}

.p-contact-info__tell {
	line-height: 1.25;
}

.p-contact-info__tell::before {
	width: min(10.6666666667vw, 40px);
	right: calc(100% + min(4vw, 20px));
	bottom: 50%;
	transform: translateY(50%);
}

.p-contact-info__fax {
	line-height: 50px;
}

.p-contact-info__fax::before {
	width: min(10.6666666667vw, 40px);
	right: calc(100% + min(4vw, 20px));
	bottom: 50%;
	transform: translateY(50%);
}

.p-contact-info__email {
	white-space: nowrap;
	line-height: 50px;
}

.p-contact-info__email::before {
	width: min(10.6666666667vw, 40px);
	right: calc(100% + min(4vw, 20px));
	bottom: 50%;
	transform: translateY(50%);
}

.p-contact-info__textWrap {
	margin-top: 50px;
}

.p-contact-info__text {
	font-size: min(5.3333333333vw, 20px);
}

.u-page {
	padding-top: 60px;
}

}

@media screen and (max-width: calc(375 - 1px)) {

.is-dsp {
	display: block;
}

}

