@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
				margin: 0;
				padding: 0;
				border: 0;
				font-size: 100%;
				font: inherit;
				vertical-align: baseline;
				-webkit-box-sizing: border-box;
				        box-sizing: border-box;
}

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

body {
				line-height: 1;
}

ol, ul {
				list-style: none;
}

blockquote, q {
				quotes: none;
}

blockquote:before, blockquote:after {
				content: "";
				content: none;
}

q:before, q:after {
				content: "";
				content: none;
}

table {
				border-collapse: collapse;
				border-spacing: 0;
}

input[type=text], input[type=submit], textarea, button {
				-webkit-box-sizing: border-box;
				        box-sizing: border-box;
				-webkit-appearance: none;
				   -moz-appearance: none;
				        appearance: none;
				max-width: 100%;
}

:focus {
				outline: none;
}

@media (850px < width) {
				.u-hdn--l {
								display: none !important;
				}
}

@media (width < 849px) {
				.u-hdn--m {
								display: none !important;
				}
}
@media (width < 768px) {
				.u-hdn--m {
								display: block !important;
				}
}

@media (width < 768px) {
				.u-hdn--s {
								display: none !important;
				}
}

.u-pe--none {
				pointer-events: none;
}

body {
				font-family: "Noto Sans JP", sans-serif;
				color: #012434;
				font-size: 1rem;
				line-height: 1.6;
				letter-spacing: 0;
				background: white;
				overflow-wrap: break-word;
				overflow-x: hidden;
				word-wrap: break-word;
}

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

a {
				-webkit-transition: 0.3s;
				transition: 0.3s;
				color: #000;
				text-decoration: none;
				cursor: pointer;
}
a:hover {
				color: #ff6666;
}
a img {
				-webkit-transition: 0.3s;
				transition: 0.3s;
}
a img:hover {
				opacity: 0.9;
}

mark {
				background: none !important;
}

h1, h2, h3, h4 {
				font-weight: bold;
}

dl dt {
				font-weight: bold;
}

i {
				margin: 0 0.5em;
}

strong {
				color: green;
}

video {
				width: 100%;
}

iframe {
				width: 100%;
}
iframe[src*="youtube.com"] {
				aspect-ratio: 16/9;
				height: auto;
}

.l-header {
				z-index: 3;
}

.l-container {
				z-index: 2;
}

.l-footer {
				z-index: 1;
}

.c-pagetop {
				z-index: 4;
}

.c-float {
				z-index: 4;
}

.c-drawer {
				z-index: 5;
}

.toggle {
				display: none;
}

.acc-label {
				padding: 1em 0;
				display: block;
				color: red;
				border-bottom: 1px solid #eee;
}

.acc-label::before {
				content: "";
				width: 6px;
				height: 6px;
				border-top: 2px solid red;
				border-right: 2px solid red;
				position: absolute;
				top: calc(50% - 3px);
				right: 0;
				-webkit-transform: rotate(135deg);
				        transform: rotate(135deg);
}

.acc-label,
.acc-content {
				-webkit-backface-visibility: hidden;
				        backface-visibility: hidden;
				-webkit-transform: translateZ(0);
				        transform: translateZ(0);
				-webkit-transition: all 0.3s;
				transition: all 0.3s;
}

.acc-content {
				height: 0;
				margin-bottom: 1em;
				padding: 0 1em;
				overflow: hidden;
}

.toggle:checked + .acc-label + .acc-content {
				height: auto;
				padding: 0 1em 1em 1em;
				-webkit-transition: all 0.3s;
				transition: all 0.3s;
}

.toggle:checked + .acc-label::before {
				-webkit-transform: rotate(-45deg) !important;
				        transform: rotate(-45deg) !important;
}

/* -------------------------- */
/* var*/
/* -------------------------- */
/* -------------------------- */
body.active {
				height: 100%;
				overflow: hidden;
}

#drawer {
				display: none;
}

/* -------------------------- */
/* title 有り */
/*
.drawer-icon__ttl {
    position: absolute;
    width: 100%;
    top: -1.5em;
    @include fs(12);
    @include fb-sb;
    letter-spacing: 0 !important;
}

#drawer:checked~#drawer-icon .drawer-icon__ttl {
    opacity: 0;
}
*/
/* -------------------------- */
#drawer-icon {
				cursor: pointer;
				display: block;
				position: fixed;
				z-index: 3;
				-webkit-box-shadow: 0 0 1.5em #ddd;
				        box-shadow: 0 0 1.5em #ddd;
				background: black;
				-webkit-transition: 0.3s;
				transition: 0.3s;
}
@media (850px < width) {
				#drawer-icon {
								top: calc(50px - 60px / 2);
								right: 3em;
								width: calc(30 * 2px);
								height: calc(30 * 2px);
				}
}
@media (width < 849px) {
				#drawer-icon {
								top: calc(40px - 52px / 2);
								right: 2%;
								width: calc(26 * 2px);
								height: calc(26 * 2px);
				}
}
@media (width < 768px) {
				#drawer-icon {
								top: calc(30px - 40px / 2);
								right: 5%;
								width: calc(20 * 2px);
								height: calc(20 * 2px);
				}
}
#drawer-icon span {
				background: black;
				display: block;
				position: absolute;
				-webkit-transition: 0.3s;
				transition: 0.3s;
				height: 3px;
				border-radius: 3px;
}
@media (850px < width) {
				#drawer-icon span {
								width: 30px;
								top: 30px;
								left: calc(30px / 2);
				}
}
@media (width < 849px) {
				#drawer-icon span {
								width: 26px;
								top: 26px;
								left: calc(26px / 2);
				}
}
@media (width < 768px) {
				#drawer-icon span {
								width: 20px;
								top: 20px;
								left: calc(20px / 2);
				}
}
#drawer-icon span::before, #drawer-icon span::after {
				background: black;
				content: "";
				display: block;
				height: 100%;
				position: absolute;
				-webkit-transform: rotate(0);
				        transform: rotate(0);
				-webkit-transition: 0.3s;
				transition: 0.3s;
				width: 100%;
}
@media (850px < width) {
				#drawer-icon span::before {
								margin-top: -10px;
				}
}
@media (width < 849px) {
				#drawer-icon span::before {
								margin-top: -8px;
				}
}
@media (width < 768px) {
				#drawer-icon span::before {
								margin-top: -7px;
				}
}
@media (850px < width) {
				#drawer-icon span::after {
								margin-top: 10px;
				}
}
@media (width < 849px) {
				#drawer-icon span::after {
								margin-top: 8px;
				}
}
@media (width < 768px) {
				#drawer-icon span::after {
								margin-top: 7px;
				}
}
#drawer-icon:hover {
				background: #333333;
}
#drawer-icon:hover span {
				background: #4d4d4d;
}
#drawer-icon:hover span::before, #drawer-icon:hover span::after {
				background: #4d4d4d;
}

#drawer:checked ~ #drawer-icon {
				-webkit-box-shadow: none;
				        box-shadow: none;
}
#drawer:checked ~ #drawer-icon span {
				background: none;
}
#drawer:checked ~ #drawer-icon span::before, #drawer:checked ~ #drawer-icon span::after {
				background: black;
				margin-top: 0;
}
#drawer:checked ~ #drawer-icon span::before {
				-webkit-transform: rotate(-45deg);
				        transform: rotate(-45deg);
}
#drawer:checked ~ #drawer-icon span::after {
				-webkit-transform: rotate(45deg);
				        transform: rotate(45deg);
}

#drawer-content {
				z-index: 2;
				position: fixed;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background: #f9f9f9;
				overflow-y: scroll;
				-webkit-transition: 0.3s;
				transition: 0.3s;
				-webkit-overflow-scrolling: touch;
				/*
				   // スライド
				   transform: translateX(-100vw);
				*/
				visibility: hidden;
				opacity: 0;
}
#drawer:checked ~ #drawer-content {
				-webkit-transform: translateX(0);
				        transform: translateX(0);
				visibility: visible;
				opacity: 1;
}

#drawer-close {
				display: none;
				position: fixed;
				z-index: 1;
				top: 0;
				left: 0;
				background: black;
				opacity: 0;
				-webkit-transition: 0.3s;
				transition: 0.3s;
				width: 100%;
				height: 100%;
}
#drawer:checked ~ #drawer-close {
				display: block;
				opacity: 0.7;
}

/*---------------------------*/
/* 入力画面 */
/*---------------------------*/
.mw_wp_form .error {
				display: block;
				width: 100%;
}
@media (850px < width) {
				.mw_wp_form .horizontal-item {
								margin: 0 0.7em 0 0 !important;
				}
}
@media (width < 849px) {
				.mw_wp_form .horizontal-item {
								margin: 0 0 0 0 !important;
				}
}

/*---------------------------*/
/* 確認画面 */
/*---------------------------*/
.mw_wp_form_confirm .c-form__edit {
				border-bottom: 1px solid #eee;
				padding-bottom: 0.5em;
}
.mw_wp_form_confirm .c-form__privacy {
				display: none;
}
.mw_wp_form_confirm .c-form__attn {
				display: none;
}
.mw_wp_form_confirm .c-form__emailconfirm {
				display: none;
}
.mw_wp_form_confirm .c-form__btn {
				margin-top: 1.5em;
}

/*---------------------------*/
/* 送信完了画面 */
/*---------------------------*/
.c-form__complete {
				text-align: center;
}
.c-form__complete h4 {
				font-size: 1.5em;
				font-weight: bold;
				margin-bottom: 1em;
}
.c-form__complete p {
				margin-top: 1em;
}

.wp-pagenavi {
				display: block;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
@media (850px < width) {
				.wp-pagenavi {
								margin-top: 3em;
				}
}
@media (width < 849px) {
				.wp-pagenavi {
								margin-top: 4%;
				}
}
@media (width < 768px) {
				.wp-pagenavi {
								margin-top: 7%;
				}
}

.wp-pagenavi a, .wp-pagenavi span {
				border: none !important;
				margin: 0 0.5em;
}

.wp-pagenavi a {
				color: black;
}
.wp-pagenavi a:hover {
				color: #ff6666;
}

.wp-pagenavi .current {
				background: red;
				color: white;
				padding: 0.5em 1em;
}

.l-wrapper {
				position: relative;
				width: 850px;
				margin-inline: auto;
				overflow-x: hidden;
}
@media (width < 849px) {
				.l-wrapper {
								width: 100%;
				}
}

.l-header {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
}

.l-container {
				position: relative;
}

.l-footer {
				clear: both;
}

.c-btn {
				text-align: center;
}
@media (850px < width) {
				.c-btn {
								margin-top: 2em;
				}
}
@media (width < 849px) {
				.c-btn {
								margin-top: 4%;
				}
}
@media (width < 768px) {
				.c-btn {
								margin-top: 5%;
				}
}
.c-btn__link, .c-btn__link--back, .c-btn__link--submit, .c-btn__link--scnd, .c-btn__link--prm {
				color: white;
				font-size: 1rem;
				-webkit-transition: 0.3s;
				transition: 0.3s;
				text-align: center;
				text-decoration: none;
				letter-spacing: 0.1em;
				height: 100%;
				border: none;
				border-radius: 4px;
				display: inline-block;
				cursor: pointer;
}
@media (850px < width) {
				.c-btn__link, .c-btn__link--back, .c-btn__link--submit, .c-btn__link--scnd, .c-btn__link--prm {
								padding: 0.7em 2em;
				}
}
@media (width < 849px) {
				.c-btn__link, .c-btn__link--back, .c-btn__link--submit, .c-btn__link--scnd, .c-btn__link--prm {
								padding: 0.7em 2em;
				}
}
@media (width < 768px) {
				.c-btn__link, .c-btn__link--back, .c-btn__link--submit, .c-btn__link--scnd, .c-btn__link--prm {
								display: block;
								padding: 1em 2em;
								width: 100%;
				}
}
.c-btn__link--prm {
				background-color: red;
}
.c-btn__link--prm:hover {
				background-color: #ff1a1a;
				color: white;
}
.c-btn__link--scnd {
				background-color: green;
}
.c-btn__link--scnd:hover {
				background-color: #00a600;
				color: white;
}
.c-btn__link--submit {
				background-color: #555;
				color: white;
}
.c-btn__link--submit:hover {
				background-color: #999;
				color: white;
}
.c-btn__link--back {
				background-color: #eee;
				color: black;
				margin-right: 1em;
}
@media (width < 768px) {
				.c-btn__link--back {
								margin-right: 0;
								margin-bottom: 5%;
				}
}
.c-btn__link--back:hover {
				background-color: #ddd;
				color: black;
}

.c-cta {
				background: #5BC4BD;
				background: -webkit-gradient(linear, left bottom, left top, from(rgb(91, 196, 189)), to(rgb(67, 181, 173)));
				background: linear-gradient(0deg, rgb(91, 196, 189) 0%, rgb(67, 181, 173) 100%);
				padding: 3.5%;
}
.c-cta__block {
				position: relative;
				padding-block: 7%;
				background-color: white;
				background-image: url("../img/cta_block_bg.png");
				background-repeat: no-repeat;
				background-size: 100%;
				background-position: top left;
}
.c-cta header {
				text-align: center;
}
.c-cta header h3 {
				width: 68%;
				margin-inline: auto;
}
.c-cta header h3 img {
				width: 100%;
}
.c-cta header h4 {
				font-size: 2.1875rem;
				color: #044451;
				margin-top: 1%;
}
@media (width < 849px) {
				.c-cta header h4 {
								font-size: 1.75rem;
				}
}
@media (width < 768px) {
				.c-cta header h4 {
								font-size: 1.125rem;
				}
}
@media (width < 768px) {
				.c-cta header h4 {
								font-size: 3.8vw;
				}
}
.c-cta__box {
				width: 100%;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: end;
				    -ms-flex-pack: end;
				        justify-content: flex-end;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				background-image: url("../img/cta_pht.png");
				background-repeat: no-repeat;
				background-size: 65%;
				background-position: left -20% top;
				margin-top: 2%;
				padding-bottom: 10%;
}
.c-cta__size {
				width: 50%;
}
.c-cta__size ul {
				display: -ms-grid;
				display: grid;
				-ms-grid-columns: 1fr 4% 1fr 4% 1fr;
				grid-template-columns: repeat(3, 1fr);
				gap: 12% 4%;
				margin-top: 10%;
				padding-right: 5%;
}
.c-cta__size ul li {
				padding: 0.2em 0;
				background: #039CA8;
				background: linear-gradient(135deg, rgb(3, 156, 168) 0%, rgb(116, 212, 215) 100%);
				border-radius: 4px;
				font-size: 3.0625rem;
				text-align: center;
				color: white;
				line-height: 1;
}
@media (width < 849px) {
				.c-cta__size ul li {
								font-size: 2.5rem;
				}
}
@media (width < 768px) {
				.c-cta__size ul li {
								font-size: 1.6875rem;
				}
}
@media (width < 849px) {
				.c-cta__size ul li {
								font-size: 6vw;
								border-radius: 1vw;
				}
}
.c-cta__contents {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
}
.c-cta__badge {
				background: #58beb8;
				padding: 1.4% 1% 1.4% 1.4%;
				text-align: center;
				letter-spacing: 0.1em;
				color: white;
				font-size: 2.8125rem;
				line-height: 1.1;
				font-weight: 500;
}
@media (width < 849px) {
				.c-cta__badge {
								font-size: 2.1875rem;
				}
}
@media (width < 768px) {
				.c-cta__badge {
								font-size: 1.25rem;
				}
}
@media (width < 849px) {
				.c-cta__badge {
								font-size: 6vw;
				}
}
.c-cta__price {
				position: relative;
				font-size: 1rem;
				padding-left: 3%;
				color: #012434;
}
@media (width < 849px) {
				.c-cta__price {
								font-size: 0.875rem;
				}
}
@media (width < 849px) {
				.c-cta__price {
								font-size: 6vw;
				}
}
.c-cta__price .span1 {
				font-size: 9.375rem;
				line-height: 1;
				font-weight: 500;
}
@media (width < 849px) {
				.c-cta__price .span1 {
								font-size: 7.5rem;
				}
}
@media (width < 768px) {
				.c-cta__price .span1 {
								font-size: 3.75rem;
				}
}
@media (width < 849px) {
				.c-cta__price .span1 {
								font-size: 17vw;
				}
}
.c-cta__price .span2 {
				font-size: 5rem;
				line-height: 1;
				font-weight: 600;
				margin-left: 0.15em;
}
@media (width < 849px) {
				.c-cta__price .span2 {
								font-size: 4.375rem;
				}
}
@media (width < 768px) {
				.c-cta__price .span2 {
								font-size: 1.875rem;
				}
}
@media (width < 849px) {
				.c-cta__price .span2 {
								font-size: 10vw;
				}
}
.c-cta__price .span3 {
				position: absolute;
				top: 14%;
				right: -6%;
				font-weight: 400;
				font-size: 2.3125rem;
				line-height: 1;
}
@media (width < 849px) {
				.c-cta__price .span3 {
								font-size: 1.875rem;
				}
}
@media (width < 768px) {
				.c-cta__price .span3 {
								font-size: 0.875rem;
				}
}
@media (width < 849px) {
				.c-cta__price .span3 {
								right: -3%;
								font-size: 3.5vw;
				}
}
.c-cta__warranty {
				margin: 5% auto;
				width: 96%;
}
.c-cta__btn {
				text-align: center;
}
.c-cta__btn .c-cta__btn-text {
				width: 54%;
				margin-inline: auto;
				line-height: 1;
				font-size: 0;
}
@media (width < 849px) {
				.c-cta__btn .c-cta__btn-text {
								width: 54vw;
				}
}
.c-cta__btn .c-cta__btn-box {
				margin-top: 3%;
}
@media (width < 849px) {
				.c-cta__btn .c-cta__btn-box {
								line-height: 1;
								font-size: 0;
								padding-inline: 5%;
				}
}
.c-cta__btn .c-cta__btn-box a {
				display: inline-block;
}
.c-cta__btn .c-cta__btn-box a img {
				display: block;
				-webkit-animation: float 2s ease-in-out infinite;
				        animation: float 2s ease-in-out infinite;
				-webkit-transform-origin: center center;
				        transform-origin: center center;
}
.c-cta__btn .c-cta__btn-box a:hover {
				opacity: 0.8;
}

@-webkit-keyframes float {
				0%, 100% {
								-webkit-transform: translateY(0) scale(1);
								        transform: translateY(0) scale(1);
				}
				50% {
								-webkit-transform: translateY(-1px) scale(1.04);
								        transform: translateY(-1px) scale(1.04);
				}
}

@keyframes float {
				0%, 100% {
								-webkit-transform: translateY(0) scale(1);
								        transform: translateY(0) scale(1);
				}
				50% {
								-webkit-transform: translateY(-1px) scale(1.04);
								        transform: translateY(-1px) scale(1.04);
				}
}
.c-cta--dark {
				margin-top: 10%;
}
.c-cta--dark .c-cta {
				background: #0f808f;
}

.c-footer {
				text-align: center;
				padding-block: 15%;
}
@media (width < 849px) {
				.c-footer {
								padding-block: 12vw;
				}
}
@media (850px < width) {
				.c-footer__logo {
								width: 30%;
								margin-inline: auto;
				}
}
@media (width < 849px) {
				.c-footer__logo {
								width: 25%;
								margin-inline: auto;
				}
}
@media (width < 768px) {
				.c-footer__logo {
								width: 35%;
				}
}
.c-footer nav {
				margin-top: 10%;
}
.c-footer nav ul {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
}
.c-footer nav ul li {
				border-right: 1px solid #000;
				padding-inline: 1em;
}
@media (width < 849px) {
				.c-footer nav ul li {
								line-height: 1.5;
								font-size: 0;
								padding-inline: 3vw;
								border-right: 0.1vw solid #000;
								margin-bottom: 5vw;
				}
}
.c-footer nav ul li:last-child {
				border-right: none;
}
.c-footer nav ul li a {
				font-size: 1.5rem;
				text-decoration: none;
}
@media (width < 849px) {
				.c-footer nav ul li a {
								font-size: 1.125rem;
				}
}
@media (width < 768px) {
				.c-footer nav ul li a {
								font-size: 0.8125rem;
				}
}
@media (width < 849px) {
				.c-footer nav ul li a {
								font-size: 3vw;
				}
}
.c-footer__copy {
				font-size: 1.5625rem;
				font-weight: 500;
				margin-top: 10%;
}
@media (width < 849px) {
				.c-footer__copy {
								font-size: 1.125rem;
				}
}
@media (width < 768px) {
				.c-footer__copy {
								font-size: 0.8125rem;
				}
}
@media (width < 849px) {
				.c-footer__copy {
								font-size: 3vw;
								margin-top: 5vw;
				}
}
.c-footer__copy a {
				text-decoration: none;
				color: #000;
				padding-right: 1.5em;
				background-image: url("../img/icon_blank.jpg");
				background-repeat: no-repeat;
				background-position: right center;
				background-size: 1em;
}
.c-header__ttl {
				position: absolute;
				left: 50%;
				-webkit-transform: translateX(-50%);
				        transform: translateX(-50%);
				aspect-ratio: 778/165;
				width: 34%;
				top: 50px;
}
@media (width < 849px) {
				.c-header__ttl {
								width: 34.1vw;
								height: 7.1vw;
								top: 7vw;
								line-height: 1;
								font-size: 0;
				}
}
.c-header__ttl img {
				width: 100%;
				height: 100%;
}

.c-icon__map, .c-icon_envelope, .c-icon__arrw--scnd, .c-icon__arrw--prm, .c-icon__arrw {
				background-repeat: no-repeat;
				background-size: contain;
				background-position: 50%;
}

.c-icon__arrw--prm {
				background-image: url(../img/common/icon_arrw--prm.svg);
				background-size: 12px;
				background-position: right 1em center;
}
.c-icon__arrw--scnd {
				background-image: url(../img/common/icon_arrw--scnd.svg);
}
.c-icon_envelope {
				background-image: url(../img/common/icon_envelope.svg);
				background-size: 20px;
				background-position: right 1em center;
}
.c-icon__map {
				background-image: url(../img/common/icon_map.svg);
				background-size: 11px;
				background-position: right 1em center;
}

.c-inner, .c-inner--s {
				position: relative;
				margin-inline: auto;
}
@media (850px < width) {
				.c-inner, .c-inner--s {
								width: 850px;
								padding-inline: 3.5%;
				}
}
@media (width < 849px) {
				.c-inner, .c-inner--s {
								padding-inline: 3%;
				}
}
@media (width < 768px) {
				.c-inner, .c-inner--s {
								padding-inline: 4%;
				}
}
@media (850px < width) {
				.c-inner--s {
								padding-inline: 10%;
				}
}
/*
.c-link {
    transition:.3s;
    color: $clr-prm;
    &:hover {
        color:color.scale($clr-prm, $lightness: -30%);
    }
}
*/
.c-section {
				position: relative;
}
.c-section img {
				-o-object-fit: cover;
				   object-fit: cover;
				max-width: 100%;
}

.c-tbl {
				border-collapse: collapse;
				border-top: 1px solid #eee;
				border-left: 1px solid #eee;
				width: 100%;
}
.c-tbl tr th,
.c-tbl tr td {
				border-right: 1px solid #eee;
				border-bottom: 1px solid #eee;
}
@media (850px < width) {
				.c-tbl tr th,
				.c-tbl tr td {
								padding: 0.7em 1em;
				}
}
@media (width < 849px) {
				.c-tbl tr th,
				.c-tbl tr td {
								padding: 0.8em 1em;
				}
}
@media (width < 768px) {
				.c-tbl tr th,
				.c-tbl tr td {
								padding: 0.6em;
								display: block;
								width: 100%;
				}
}
.c-tbl tr th {
				background: #eee;
}
.c-video {
				width: 100%;
				padding-bottom: 56.25%;
				height: 0px;
				position: relative;
}
.c-video iframe {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
}

/* ------------------------------------------------------
スクロールしたらコンテンツを表示
------------------------------------------------------ */
.is-scrlSA {
				opacity: 0;
				-webkit-transition: opacity 3s ease, -webkit-transform 3s ease;
				transition: opacity 3s ease, -webkit-transform 3s ease;
				transition: opacity 3s ease, transform 3s ease;
				transition: opacity 3s ease, transform 3s ease, -webkit-transform 3s ease;
}
.is-scrlSA--right {
				-webkit-transform: translate(-50px, 0);
				        transform: translate(-50px, 0);
}
.is-scrlSA--left {
				-webkit-transform: translate(50px, 0);
				        transform: translate(50px, 0);
}
.is-scrlSA--up {
				-webkit-transform: translate(0, 20px);
				        transform: translate(0, 20px);
}
.is-scrlSA--down {
				-webkit-transform: translate(0, -50px);
				        transform: translate(0, -50px);
}

.is-scrlSA.is-scrlSA-show {
				opacity: 1;
				-webkit-transform: none;
				        transform: none;
}

@-webkit-keyframes UpAnime {
				from {
								opacity: 1;
								-webkit-transform: translateY(0);
								        transform: translateY(0);
				}
				to {
								opacity: 0;
								-webkit-transform: translateY(-100px);
								        transform: translateY(-100px);
				}
}

@keyframes UpAnime {
				from {
								opacity: 1;
								-webkit-transform: translateY(0);
								        transform: translateY(0);
				}
				to {
								opacity: 0;
								-webkit-transform: translateY(-100px);
								        transform: translateY(-100px);
				}
}
@-webkit-keyframes DownAnime {
				from {
								opacity: 0;
								-webkit-transform: translateY(-100px);
								        transform: translateY(-100px);
				}
				to {
								opacity: 1;
								-webkit-transform: translateY(0);
								        transform: translateY(0);
				}
}
@keyframes DownAnime {
				from {
								opacity: 0;
								-webkit-transform: translateY(-100px);
								        transform: translateY(-100px);
				}
				to {
								opacity: 1;
								-webkit-transform: translateY(0);
								        transform: translateY(0);
				}
}
.is-scrlUP {
				-webkit-animation: UpAnime 0.5s forwards;
				        animation: UpAnime 0.5s forwards;
}

.is-scrlDN {
				-webkit-animation: DownAnime 0.5s forwards;
				        animation: DownAnime 0.5s forwards;
}

.p-fv {
				aspect-ratio: 850/1244;
				padding-block: 170px 0;
}
@media (width < 849px) {
				.p-fv {
								padding-block: 0;
				}
}
.p-fv__bg {
				position: absolute;
				top: 0;
				left: 0;
				z-index: 0;
}
.p-fv__bg img {
				width: 100vw;
}
.p-fv__contents {
				position: relative;
				top: 0;
				left: 0;
}
.p-fv p {
				position: relative;
				display: inline-block;
}
.p-fv p.is-scrlSA-show {
				position: absolute;
}
@media (width < 849px) {
				.p-fv p.is-scrlSA-show {
								line-height: 1;
								font-size: 0;
				}
}
.p-fv__txt01 {
				width: 88%;
}
@media (width < 849px) {
				.p-fv__txt01 {
								width: 88vw;
				}
}
.p-fv__txt01.is-scrlSA-show {
				top: 0;
				right: 0;
}
@media (width < 849px) {
				.p-fv__txt01.is-scrlSA-show {
								top: 20vw;
				}
}
.p-fv__txt02 {
				width: 80%;
}
@media (width < 849px) {
				.p-fv__txt02 {
								width: 80vw;
				}
}
.p-fv__txt02.is-scrlSA-show {
				top: 120px;
				right: 0;
}
@media (width < 849px) {
				.p-fv__txt02.is-scrlSA-show {
								top: 34vw;
				}
}
.p-fv__txt03 {
				width: 40%;
}
@media (width < 849px) {
				.p-fv__txt03 {
								width: 41vw;
				}
}
.p-fv__txt03.is-scrlSA-show {
				top: 830px;
				left: 0;
}
@media (width < 849px) {
				.p-fv__txt03.is-scrlSA-show {
								top: 112vw;
				}
}
.p-fv__txt04 {
				width: 42%;
}
@media (width < 849px) {
				.p-fv__txt04 {
								width: 43vw;
				}
}
.p-fv__txt04.is-scrlSA-show {
				top: 905px;
				left: 0;
}
@media (width < 849px) {
				.p-fv__txt04.is-scrlSA-show {
								top: 122vw;
				}
}
.p-fv__txt05 {
				width: 61%;
}
@media (width < 849px) {
				.p-fv__txt05 {
								width: 62vw;
				}
}
.p-fv__txt05.is-scrlSA-show {
				top: 980px;
				left: 0;
}
@media (width < 849px) {
				.p-fv__txt05.is-scrlSA-show {
								top: 132vw;
				}
}

.p-movie01 {
				background-color: #43b5ad;
				background-image: url("../img/block01_bg.webp");
}
.p-movie01__video video {
				-o-object-fit: cover;
				object-fit: cover;
				max-width: 100%;
}

.p-movie02 {
				padding-block: 7%;
}
.p-movie02__note {
				text-align: right;
				font-size: 1rem;
				font-weight: 500;
				color: #cb9f51;
				margin-top: 3%;
}
@media (width < 849px) {
				.p-movie02__note {
								font-size: 2vw;
								letter-spacing: 0;
				}
}
.p-movie02__video {
				line-height: 0;
				margin-top: 1.5%;
}
.p-movie02__video video {
				border: 6px solid #d2ae4b;
				line-height: 0;
				font-size: 0;
				display: block;
}
@media (width < 849px) {
				.p-movie02__video video {
								border-width: 1.6vw;
								width: 100%;
								height: auto;
				}
}

.p-block02 {
				background: #5bc5bf;
}

.p-overview {
				text-align: center;
				padding-block: 3.5%;
}
.p-overview header {
				padding-top: 6%;
}
.p-overview__block {
				background: white;
				-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
				box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}
.p-overview__logo {
				width: 84%;
				margin-inline: auto;
}
.p-overview__pht {
				margin-top: 10%;
}
.p-overview__intro {
				margin-top: -15%;
}
.p-overview__intro h3 {
				font-size: 3.5625rem;
				font-weight: 800;
}
@media (width < 849px) {
				.p-overview__intro h3 {
								font-size: 6.8vw;
				}
}
.p-overview__intro h3 span {
				border: 2px solid #012434;
				font-size: 2.8125rem;
				line-height: 1.2;
				padding: 0.2em 0.4em;
				font-weight: 600;
				display: inline-block;
}
@media (width < 849px) {
				.p-overview__intro h3 span {
								border: 0.1vw solid #012434;
								font-size: 5.8vw;
								margin-top: 10vw;
								margin-bottom: 2vw;
				}
}
.p-overview__intro p {
				font-size: 1.75rem;
				font-weight: 600;
				line-height: 2;
				margin-top: 10%;
}
@media (width < 849px) {
				.p-overview__intro p {
								font-size: 3.3vw;
				}
}
.p-overview__contents {
				padding-bottom: 13%;
				background: #ddfffc;
}
.p-overview__contents-head {
				margin-top: 13%;
}
@media (width < 849px) {
				.p-overview__contents-head {
								margin-top: 7%;
				}
}
.p-overview__contents-head ul {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				-ms-flex-pack: justify;
				justify-content: space-between;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
				background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(50%, #fff), color-stop(50%, #ddfffc), to(#ddfffc));
				background: linear-gradient(to bottom, #fff 0%, #fff 50%, #ddfffc 50%, #ddfffc 100%);
}
.p-overview__contents-head ul li {
				width: 50%;
				background: #5bc5bf;
				color: white;
				font-size: 3.125rem;
				font-weight: 700;
				line-height: 1;
				padding: 1em 0.4em;
				text-align: center;
}
@media (width < 849px) {
				.p-overview__contents-head ul li {
								font-size: 5.8vw;
				}
}

.p-overview__contents-head ul li span {
				padding-bottom: 0;
				line-height: 1;
				position: relative;
}

.p-overview__contents-head ul li span::after {
				content: "";
				display: inline-block;
				width: 100%;
				height: 2px;
				background: white;
				position: absolute;
				bottom: 3px;
				left: 0;
}

.p-overview__contents-head ul li:first-child {
				clip-path: polygon(0% 0, calc(100% - 50px) 0, 100% 50%, calc(100% - 50px) 100%, 0% 100%);
				background: #1FD2CF;
				background: -webkit-gradient(linear, left top, right top, from(rgb(31, 210, 207)), to(rgb(0, 148, 213)));
				background: linear-gradient(90deg, rgb(31, 210, 207) 0%, rgb(0, 148, 213) 100%);
}

@media (width < 849px) {
				.p-overview__contents-head ul li:first-child {
								clip-path: polygon(0% 0, calc(100% - 25px) 0, 100% 50%, calc(100% - 25px) 100%, 0% 100%);
								padding-right: 1em;
				}
}
.p-overview__contents-head ul li:last-child {
				clip-path: polygon(0% 50%, 50px 0, 100% 0, 100% 100%, 50px 100%);
				background: #0094D5;
				background: -webkit-gradient(linear, left top, right top, from(rgb(0, 148, 213)), to(rgb(31, 210, 207)));
				background: linear-gradient(90deg, rgb(0, 148, 213) 0%, rgb(31, 210, 207) 100%);
}

@media (width < 849px) {
				.p-overview__contents-head ul li:last-child {
								clip-path: polygon(0% 50%, 25px 0, 100% 0, 100% 100%, 25px 100%);
								padding-left: 1em;
				}
}
.p-overview__contents-head dl {
				margin-top: 7%;
}

@media (width < 849px) {
				.p-overview__contents-head dl {
								padding-top: 7%;
								margin-top: 0;
				}
}
.p-overview__contents-head dl dt {
				font-family: "M PLUS 1p", sans-serif;
				font-weight: 500;
				font-size: 3.75rem;
				font-weight: 800;
				font-style: italic;
				background: -webkit-gradient(linear, left bottom, left top, from(#209cff), color-stop(58%, #3ecdbb));
				background: linear-gradient(0deg, #209cff 0%, #3ecdbb 58%);
				color: transparent;
				-webkit-background-clip: text;
				background-clip: text;
				-webkit-text-fill-color: transparent;
				text-fill-color: transparent;
}

@media (width < 849px) {
				.p-overview__contents-head dl dt {
								font-size: 8vw;
				}
}
.p-overview__contents-head dl dt .span1 {
				font-size: 4.5rem;
				line-height: 1;
}

@media (width < 849px) {
				.p-overview__contents-head dl dt .span1 {
								font-size: 9vw;
				}
}
.p-overview__contents-head dl dt .span2 {
				font-size: 5.5rem;
				line-height: 1;
}

@media (width < 849px) {
				.p-overview__contents-head dl dt .span2 {
								font-size: 10vw;
				}
}
.p-overview__contents-head dl dd {
				color: #209cff;
				font-size: 1.75rem;
				font-weight: 600;
				line-height: 1.9;
				margin-top: 3%;
}

@media (width < 849px) {
				.p-overview__contents-head dl dd {
								font-size: 3vw;
				}
}
.p-overview__list {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				-ms-flex-pack: justify;
				justify-content: space-between;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
				padding-inline: 5%;
				margin-top: 7%;
}

.p-overview__list li {
				width: 29%;
				height: 100%;
				aspect-ratio: 1;
				background: white;
				position: relative;
				-webkit-animation: float 2s ease-in-out infinite;
				animation: float 2s ease-in-out infinite;
				-webkit-transform-origin: center center;
				transform-origin: center center;
}

.p-overview__list li:nth-child(1) {
				-webkit-animation-delay: 0s;
				animation-delay: 0s;
}

.p-overview__list li:nth-child(2) {
				-webkit-animation-delay: 0.2s;
				animation-delay: 0.2s;
}

.p-overview__list li:nth-child(3) {
				-webkit-animation-delay: 0.4s;
				animation-delay: 0.4s;
}

.p-overview__item-ttl {
				font-size: 3rem;
				font-style: italic;
				font-family: "Montserrat", sans-serif;
				font-weight: 500;
				font-weight: 800;
				line-height: 1;
				padding: 1em 0.4em;
				text-align: center;
				color: #209cff;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				-ms-flex-pack: center;
				justify-content: center;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
				height: 100%;
}

@media (width < 849px) {
				.p-overview__item-ttl {
								font-size: 2.1875rem;
				}
}
@media (width < 768px) {
				.p-overview__item-ttl {
								font-size: 6vw;
				}
}
.p-overview__corner {
				position: absolute;
				z-index: 2;
				width: 30px;
				height: 30px;
}

@media (width < 849px) {
				.p-overview__corner {
								width: 4vw;
								height: 4vw;
				}
}
.p-overview__corner--tl {
				top: 0;
				left: 0;
				border-top: 4px solid #209cff;
				border-left: 4px solid #209cff;
}

@media (width < 849px) {
				.p-overview__corner--tl {
								border-top: 1vw solid #209cff;
								border-left: 1vw solid #209cff;
				}
}
.p-overview__corner--tr {
				top: 0;
				right: 0;
				border-top: 4px solid #209cff;
				border-right: 4px solid #209cff;
}

@media (width < 849px) {
				.p-overview__corner--tr {
								border-top: 1vw solid #209cff;
								border-right: 1vw solid #209cff;
				}
}
.p-overview__corner--bl {
				bottom: 0;
				left: 0;
				border-bottom: 4px solid #209cff;
				border-left: 4px solid #209cff;
}

@media (width < 849px) {
				.p-overview__corner--bl {
								border-bottom: 1vw solid #209cff;
								border-left: 1vw solid #209cff;
				}
}
.p-overview__corner--br {
				bottom: 0;
				right: 0;
				border-bottom: 4px solid #209cff;
				border-right: 4px solid #209cff;
}

@media (width < 849px) {
				.p-overview__corner--br {
								border-bottom: 1vw solid #209cff;
								border-right: 1vw solid #209cff;
				}
}
.p-overview__summary {
				font-size: 3.3125rem;
				font-weight: 600;
				line-height: 1.3;
				margin-top: 7%;
				color: #209cff;
}

@media (width < 849px) {
				.p-overview__summary {
								font-size: 6vw;
				}
}
.p-concern {
				text-align: center;
				padding-block: 0;
}

.p-concern__list {
				aspect-ratio: 85/92;
				position: relative;
				background-image: url(../img/concern_bg01.jpg);
				background-size: cover;
				background-repeat: no-repeat;
				background-position: center bottom;
}
.p-concern__list h3 {
				font-family: "M PLUS 1p", sans-serif;
				font-weight: 500;
				font-size: 2.1875rem;
				line-height: 1.4;
				font-weight: 800;
				text-align: left;
				padding: 7rem 0 0 5rem;
}
@media (width < 849px) {
				.p-concern__list h3 {
								font-size: 4vw;
								padding: 13vw 0 0 10vw;
				}
}
.p-concern__list h3 span {
				font-size: 2.8125rem;
				color: #057f7b;
}
@media (width < 849px) {
				.p-concern__list h3 span {
								font-size: 5.5vw;
				}
}
.p-concern__list ul {
				margin-top: 4.5%;
				text-align: left;
				padding-left: 5rem;
}
@media (width < 849px) {
				.p-concern__list ul {
								margin-top: 3vw;
								padding-left: 10vw;
				}
}
.p-concern__list ul li {
				background-image: url("../img/icon_check.jpg");
				background-repeat: no-repeat;
				background-position: left 50%;
				background-size: 35px;
				margin-block: 0.5em;
				padding: 0.1em 0 0.1em 1.7em;
				font-size: 1.75rem;
				font-weight: 700;
}
@media (width < 849px) {
				.p-concern__list ul li {
								font-size: 3.5vw;
								background-size: 5vw;
								margin-block: 0;
								padding-block: 1vw;
				}
}
.p-concern__list ul li span {
				color: #14b096;
}

.p-concern__txt01 {
				position: absolute;
				width: 54%;
				margin-inline: auto;
				top: 550px;
				left: 50%;
				-webkit-transform: translateX(-50%);
				        transform: translateX(-50%);
				font-size: 0;
				line-height: 0;
}
@media (width < 849px) {
				.p-concern__txt01 {
								width: 54vw;
								top: 64vw;
				}
}
.p-concern__txt01.is-scrlSA-show {
				-webkit-transform: translateX(-50%) !important;
				        transform: translateX(-50%) !important;
}

.p-concern__ttl02 {
				-webkit-filter: none;
				        filter: none;
				position: absolute;
				bottom: 140px;
				left: 50%;
				-webkit-transform: translateX(-50%) !important;
				        transform: translateX(-50%) !important;
				white-space: nowrap;
				-webkit-transition-delay: 0.5s;
				        transition-delay: 0.5s;
}
@media (width < 849px) {
				.p-concern__ttl02 {
								bottom: 16vw;
				}
}

.p-concern__ttl02 p {
				background-color: white;
				color: #00866f;
				display: inline-block;
				padding: 0.2em 0.1em 0.2em 0.7em;
				font-size: 3.6rem;
				font-weight: 600;
				line-height: 1.1;
}

@media (width < 849px) {
				.p-concern__ttl02 p {
								font-size: 7vw;
								top: 6vw;
				}
}
.p-concern__contents {
				background-image: url("../img/concern_bg02.jpg");
				background-size: cover;
				background-repeat: no-repeat;
				background-position: top center;
				padding-block: 10% 3.5%;
				aspect-ratio: 850/831;
}

@media (width < 849px) {
				.p-concern__contents {
								padding: 7% 5%;
				}
}
.p-concern__contents h4 .span1 {
				font-size: 2.9375rem;
				font-weight: 500;
				line-height: 1;
				padding: 0em 1em;
				background: #07B99A;
				background: linear-gradient(312deg, rgb(7, 185, 154) 0%, rgb(7, 185, 154) 28%, rgb(11, 193, 161) 52%, rgb(42, 216, 191) 100%);
				color: white;
}

@media (width < 849px) {
				.p-concern__contents h4 .span1 {
								font-size: 6vw;
				}
}
.p-concern__contents h5 {
				width: 78%;
				margin: 3% auto 0;
}
@media (width < 849px) {
				.p-concern__contents h5 {
								width: 100vw;
								margin-left: -5vw;
				}
}
.p-concern__contents h5 img {
				width: 100%;
}

.p-concern__contents p {
				margin-top: 12%;
				font-size: 1.5rem;
				color: #3b3b3b;
}

@media (width < 849px) {
				.p-concern__contents p {
								font-size: 3vw;
				}
}
.p-concern__contents p span {
				background: #aef0e7;
				-webkit-box-shadow: 0 0 20px #fff;
				        box-shadow: 0 0 20px #fff;
}

.p-concern__contents dl {
				margin-top: 6%;
				color: #3b3b3b;
}

.p-concern__contents dl dt {
				font-size: 2.125rem;
				font-weight: 500;
				border-bottom: 2px solid #000;
				display: inline-block;
}

@media (width < 849px) {
				.p-concern__contents dl dt {
								font-size: 4.5vw;
								border-bottom: 0.1vw solid #000;
				}
}
.p-concern__contents dl dt span {
				font-size: 2.8125rem;
				color: #06967d;
}

@media (width < 849px) {
				.p-concern__contents dl dt span {
								font-size: 6vw;
				}
}
.p-concern__contents dl dd {
				font-size: 1.375rem;
				font-weight: 600;
				line-height: 1.9;
				margin-top: 3%;
}

@media (width < 849px) {
				.p-concern__contents dl dd {
								font-size: 3.1vw;
				}
}
.p-concern__contents dl dd span {
				background: #aef0e7;
}

.p-comparision {
				text-align: center;
				position: relative;
				z-index: 0;
				margin-top: 8%;
				padding-bottom: 3.5%;
				/* 右（after） */
				background: -webkit-gradient(linear, left top, left bottom, from(#27caaf), to(#c1e8e4));
				background: linear-gradient(to bottom, #27caaf 0%, #c1e8e4 100%);
}
@media (width < 849px) {
				.p-comparision {
								margin-top: 8vw;
								padding-bottom: 3.5vw;
				}
}
.p-comparision::before {
				content: "";
				position: absolute;
				inset: 0 auto 0 0;
				width: 50%;
				z-index: -1;
				/* ← 左右ちょうど半分 */
				background: -webkit-gradient(linear, left top, left bottom, from(#a9aeae), to(#dededc));
				background: linear-gradient(to bottom, #a9aeae 0%, #dededc 100%);
}
.p-comparision header {
				background-image: url("../img/comparision_obj.png");
				background-repeat: no-repeat;
				background-size: 50%;
				background-position: right top 130px;
				padding-bottom: 10%;
}
@media (width < 849px) {
				.p-comparision header {
								background-position: right top 10vw;
								padding-bottom: 10vw;
								font-size: 0;
				}
}
.p-comparision header p {
				display: inline-block;
				background: white;
				color: #3b3b3b;
				padding: 0.3em 1em;
				font-size: 2.9375rem;
				font-weight: 500;
				line-height: 1;
				margin-bottom: 2%;
				clip-path: polygon(20px 0%, 100% 0%, calc(100% - 20px) 100%, 0% 100%);
				-webkit-transform: translateY(-50%);
				        transform: translateY(-50%);
}
@media (width < 849px) {
				.p-comparision header p {
								margin-bottom: 2vw;
								font-size: 7vw;
								clip-path: polygon(4vw 0%, 100% 0%, calc(100% - 4vw) 100%, 0% 100%);
				}
}
.p-comparision header h3 {
				font-weight: 500;
				font-size: 4.375rem;
				line-height: 1.3;
				color: white;
				text-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
@media (width < 849px) {
				.p-comparision header h3 {
								font-size: 9vw;
				}
}
.p-comparision__contents {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				-ms-flex-pack: justify;
				justify-content: space-between;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
				position: relative;
}
.p-comparision__contents dl {
				width: 43%;
				margin-inline: auto;
}
.p-comparision__contents dl dt {
				font-size: 2.8125rem;
				font-weight: 700;
				color: white;
				font-style: italic;
}
@media (width < 849px) {
				.p-comparision__contents dl dt {
								font-size: 6vw;
				}
}
.p-comparision__contents dl dd {
				aspect-ratio: 366/566;
				border: 2px solid white;
				-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
				box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
}
.p-comparision__contents dl dd img,
.p-comparision__contents dl dd video {
				display: block;
				-o-object-fit: cover;
				object-fit: cover;
				line-height: 0;
				font-size: 0;
				aspect-ratio: 366/566;
				width: 100%;
				height: 100%;
}
.p-comparision__arrow {
				position: absolute;
				top: 55%;
				left: 50%;
				-webkit-transform: translateX(-50%);
				transform: translateX(-50%);
}
@media (width < 849px) {
				.p-comparision__arrow {
								width: 20vw;
				}
}
.p-comparision__arrow img {
				width: 100%;
}

.p-block03 {
				margin-top: 8%;
}

.p-block03 > header {
				text-align: center;
}

.p-block03 > header p:first-child {
				color: #27637e;
				font-size: 1.875rem;
				font-weight: 600;
}

@media (width < 849px) {
				.p-block03 > header p:first-child {
								font-size: 4vw;
				}
}
.p-block03 > header p:last-child {
				margin-top: 6%;
				font-size: 4.375rem;
				line-height: 1;
				font-weight: 500;
				font-style: italic;
				background: #4693B6;
				background: -webkit-gradient(linear, left top, right top, from(rgb(70, 147, 182)), to(rgb(1, 36, 52)));
				background: linear-gradient(90deg, rgb(70, 147, 182) 0%, rgb(1, 36, 52) 100%);
				color: white;
				display: inline-block;
				clip-path: polygon(20px 0%, 100% 0%, calc(100% - 20px) 100%, 0% 100%);
				padding: 0.1em 0.5em 0.3em;
}

@media (width < 849px) {
				.p-block03 > header p:last-child {
								font-size: 7vw;
								clip-path: polygon(4vw 0%, 100% 0%, calc(100% - 4vw) 100%, 0% 100%);
								padding: 0.2em 0.9em 0.4em;
				}
}
.p-block03 > header p:last-child .span1 {
				font-size: 5.625rem;
				line-height: 1;
}

@media (width < 849px) {
				.p-block03 > header p:last-child .span1 {
								font-size: 10vw;
				}
}
.p-block03 > header p:last-child .span2 {
				font-size: 2.5rem;
				line-height: 1;
				position: relative;
				top: -20px;
				letter-spacing: -0.3em;
}

@media (width < 849px) {
				.p-block03 > header p:last-child .span2 {
								font-size: 5vw;
				}
}
@media (width < 849px) {
				.p-block03 > header p:last-child .span2 {
								top: 0px;
				}
}
.p-construction {
				color: #012434;
}

.p-construction__number {
				font-family: "Inter", sans-serif;
				font-weight: 500;
				font-size: 25rem;
				line-height: 1;
				font-weight: 700;
				font-style: italic;
				color: white;
}

@media (width < 849px) {
				.p-construction__number {
								font-size: 48vw;
								margin-left: -3vw;
				}
}
.p-construction__ttl {
				font-size: 4.8125rem;
				line-height: 1.3;
				font-weight: 900;
				color: #012434;
}

@media (width < 849px) {
				.p-construction__ttl {
								font-size: 9vw;
				}
}
.p-construction__guide {
				background-image: url("../img/construction_guide.jpg");
				background-repeat: no-repeat;
				background-size: cover;
				height: 1627px;
				aspect-ratio: 850/1627;
				margin-top: 12%;
				padding-top: 7%;
}

@media (width < 849px) {
				.p-construction__guide {
								height: auto;
				}
}
.p-construction__guide header {
				position: relative;
}

.p-construction__guide header .p-construction__ttl {
				position: absolute;
				top: 49%;
				left: 18%;
				text-align: center;
}

.p-construction__guide ul {
				background-image: url("../img/construction_guide_bg.webp");
				background-size: 100%;
				background-repeat: no-repeat;
				background-position: center 129px;
				position: relative;
				aspect-ratio: 850/955;
				margin-top: 12%;
}
@media (width < 849px) {
				.p-construction__guide ul {
								background-position: center 14vw;
				}
}

.p-construction__guide ul li {
				position: absolute;
}
.p-construction__guide ul li:nth-child(1) {
				width: 29%;
				top: -5px;
				left: 102px;
}
@media (width < 849px) {
				.p-construction__guide ul li:nth-child(1) {
								width: 29vw;
								top: -1vw;
								left: 12vw;
				}
}
.p-construction__guide ul li:nth-child(2) {
				width: 35%;
				top: 30px;
				left: 497px;
}
@media (width < 849px) {
				.p-construction__guide ul li:nth-child(2) {
								width: 35vw;
								top: 3vw;
								left: 58vw;
				}
}
.p-construction__guide ul li:nth-child(3) {
				width: 29%;
				top: 695px;
				left: 87px;
}
@media (width < 849px) {
				.p-construction__guide ul li:nth-child(3) {
								width: 29vw;
								top: 85vw;
								left: 10.5vw;
				}
}
.p-construction__guide ul li:nth-child(4) {
				width: 29%;
				top: 733px;
				left: 527px;
}
@media (width < 849px) {
				.p-construction__guide ul li:nth-child(4) {
								width: 29vw;
								top: 85vw;
								left: 61vw;
				}
}

.p-construction__box01,
.p-construction__box02,
.p-construction__box03,
.p-construction__box04 {
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
}

.p-construction__box01 h4,
.p-construction__box02 h4,
.p-construction__box03 h4,
.p-construction__box04 h4 {
				font-style: italic;
				font-weight: 800;
}

.p-construction__box01 h4 span,
.p-construction__box02 h4 span,
.p-construction__box03 h4 span,
.p-construction__box04 h4 span {
				display: block;
}

.p-construction__box01 p,
.p-construction__box02 p,
.p-construction__box03 p,
.p-construction__box04 p {
				font-weight: 600;
				font-size: 1.75rem;
}

@media (width < 849px) {
				.p-construction__box01 p,
				.p-construction__box02 p,
				.p-construction__box03 p,
				.p-construction__box04 p {
								font-size: 3.4vw;
				}
}
.p-construction__box01 p span,
.p-construction__box02 p span,
.p-construction__box03 p span,
.p-construction__box04 p span {
				font-weight: 700;
				background: -webkit-gradient(linear, left top, left bottom, color-stop(30%, transparent), color-stop(70%, #b4f1f3), to(#b4f1f3));
				background: linear-gradient(transparent 30%, #b4f1f3 70%, #b4f1f3 100%);
}

.p-construction__box01 {
				background-image: url("../img/construction_bg01.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 850/541;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: end;
				-ms-flex-pack: end;
				justify-content: flex-end;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
}

.p-construction__box01-contents {
				width: 50%;
				padding-right: 3%;
}

.p-construction__box01-contents h4 {
				font-size: 4.0625rem;
				line-height: 1.2;
}

@media (width < 849px) {
				.p-construction__box01-contents h4 {
								font-size: 7.5vw;
				}
}
.p-construction__box01-contents p {
				margin-top: 7%;
}

.p-construction__box02 {
				background-image: url("../img/construction_bg02.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 850/541;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				-ms-flex-pack: start;
				justify-content: flex-start;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
}

.p-construction__box02-contents {
				width: 80%;
				padding-left: 5%;
}

.p-construction__box02-contents h4 {
				font-size: 1.75rem;
				line-height: 1.2;
}

@media (width < 849px) {
				.p-construction__box02-contents h4 {
								font-size: 4.1vw;
				}
}
.p-construction__box02-contents h4 span {
				font-size: 3.625rem;
}
@media (850px < width) {
				.p-construction__box02-contents h4 span {
								margin-top: 0.7rem;
				}
}
@media (width < 849px) {
				.p-construction__box02-contents h4 span {
								font-size: 7vw;
								margin-top: 1vw;
				}
}
.p-construction__box02-contents p {
				margin-top: 7%;
}

.p-construction__box03 {
				background-image: url("../img/construction_bg03.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 850/541;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: end;
				-ms-flex-pack: end;
				justify-content: flex-end;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
}

.p-construction__box03-contents {
				width: 55%;
				padding-right: 3%;
}

.p-construction__box03-contents h4 {
				font-size: 2.5rem;
				line-height: 1.3;
}

@media (width < 849px) {
				.p-construction__box03-contents h4 {
								font-size: 5vw;
				}
}
.p-construction__box03-contents h4 span {
				font-size: 3.5rem;
}

@media (width < 849px) {
				.p-construction__box03-contents h4 span {
								font-size: 6.4vw;
				}
}
.p-construction__box03-contents p {
				margin-top: 7%;
}

.p-construction__box04 {
				background-image: url("../img/construction_bg04.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 850/541;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				-ms-flex-pack: start;
				justify-content: flex-start;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
}

.p-construction__box04-contents {
				width: 80%;
				padding-left: 5%;
}

.p-construction__box04-contents h4 {
				font-size: 2.5rem;
				line-height: 1.4;
}

@media (width < 849px) {
				.p-construction__box04-contents h4 {
								font-size: 5vw;
				}
}
.p-construction__box04-contents h4 span {
				font-size: 3.75rem;
				line-height: 1.4;
}

@media (width < 849px) {
				.p-construction__box04-contents h4 span {
								font-size: 7.5vw;
				}
}
.p-construction__box04-contents p {
				margin-top: 7%;
}

.p-posture header {
				background-image: url("../img/posture_bg01.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				height: 1150px;
				aspect-ratio: 850/1150;
				position: relative;
}

@media (width < 849px) {
				.p-posture header {
								height: auto;
				}
}
.p-posture header p {
				color: #cae5ed;
				text-align: right;
				position: relative;
				top: 12vw;
				right: -1%;
}

.p-posture header h3 {
				text-align: center;
				position: absolute;
				top: 30%;
				left: 18%;
}
@media (width < 849px) {
				.p-posture header h3 {
								top: 38vw;
				}
}

.p-posture header dl {
				text-align: center;
				margin-top: 30%;
				color: #012434;
}
@media (width < 849px) {
				.p-posture header dl {
								margin-top: 29vw;
				}
}

.p-posture header dl dt {
				font-size: 2.8rem;
				font-weight: 700;
}
@media (width < 849px) {
				.p-posture header dl dt {
								font-size: 5.5vw;
				}
}
.p-posture header dl dd {
				margin-top: 8%;
				font-size: 1.625rem;
				line-height: 2.4;
				font-weight: 600;
}

@media (width < 849px) {
				.p-posture header dl dd {
								font-size: 3.7vw;
								line-height: 2;
				}
}
.p-posture__list-inner {
				background-image: url("../img/posture_bg02.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				padding: 20% 5.5%;
				aspect-ratio: 850/1230;
}

.p-posture__list ul {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				-ms-flex-pack: justify;
				justify-content: space-between;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
}

.p-posture__list ul li {
				background: white;
				color: #012434;
				width: 47%;
				text-align: center;
				margin-bottom: 12%;
				font-size: 2.125rem;
				font-weight: 900;
				-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
				box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
				padding: 10% 3% 6%;
				position: relative;
}

@media (width < 849px) {
				.p-posture__list ul li {
								font-size: 4.5vw;
				}
}
.p-posture__list ul li::after {
				content: "";
				background-image: url("../img/icon_check02.png");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				width: 75px;
				aspect-ratio: 1;
				display: block;
				position: absolute;
				top: 0;
				left: 50%;
				-webkit-transform: translate(-50%, -50%);
				transform: translate(-50%, -50%);
}

@media (width < 849px) {
				.p-posture__list ul li::after {
								width: 8vw;
				}
}
.p-posture__list ul li div {
				border-bottom: 1px solid #1986c4;
}
@media (width < 849px) {
				.p-posture__list ul li div {
								border-bottom: 0.3vw solid #1986c4;
				}
}

.p-posture__list ul li span {
				font-size: 2.8125rem;
				color: #1986c4;
}

@media (width < 849px) {
				.p-posture__list ul li span {
								font-size: 5.4vw;
				}
}
.p-posture__note {
				text-align: center;
}

.p-posture__note p {
				font-size: 2.0625rem;
				font-weight: 800;
				line-height: 2.2;
				color: #012434;
}

@media (width < 849px) {
				.p-posture__note p {
								font-size: 4.2vw;
				}
}
.p-posture__note p span {
				background: #bdf4f3;
}

.p-posture__item {
				margin-top: 3rem;
}
@media (width < 849px) {
				.p-posture__item {
								margin-top: 10vw;
				}
}

.p-motion header {
				background-image: url("../img/motion_head.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				height: 1531px;
				aspect-ratio: 850/1531;
				position: relative;
}

@media (width < 849px) {
				.p-motion header {
								height: auto;
				}
}
.p-motion header p {
				color: rgba(255, 255, 255, 0.2);
				position: relative;
				top: 7%;
				right: -1%;
}

@media (width < 849px) {
				.p-motion header p {
								top: 0.2em;
				}
}
.p-motion header h3 {
				color: white;
				text-align: center;
				position: absolute;
				top: 22%;
				left: 18%;
}

@media (width < 849px) {
				.p-motion header h3 {
								top: 37vw;
				}
}
.p-motion header .p-motion__intro {
				color: white;
				font-size: 1.8125rem;
				font-weight: 500;
				line-height: 2;
				text-align: center;
				background: rgba(255, 255, 255, 0.15);
				width: 92%;
				margin: 30% auto 0;
				padding: 7% 2%;
}

@media (width < 849px) {
				.p-motion header .p-motion__intro {
								font-size: 3.7vw;
				}
}
.p-motion header .p-motion__intro span {
				font-size: 3.0625rem;
				font-weight: 600;
				line-height: 3;
				display: block;
}

@media (width < 849px) {
				.p-motion header .p-motion__intro span {
								font-size: 5vw;
				}
}
.p-motion header h4 {
				color: white;
				text-align: center;
				margin-top: 8%;
				font-size: 2.125rem;
}

@media (width < 849px) {
				.p-motion header h4 {
								font-size: 4vw;
								font-weight: 900;
				}
}
.p-motion header h4 .span1,
.p-motion header h4 .span2 {
				font-size: 2.9375rem;
}

@media (width < 849px) {
				.p-motion header h4 .span1,
				.p-motion header h4 .span2 {
								font-size: 6vw;
				}
}
.p-motion header h4 .span3 {
				width: 80px;
				height: 2px;
				background: white;
				display: inline-block;
				position: relative;
				top: -10px;
				left: 0.3em;
}
@media (width < 849px) {
				.p-motion header h4 .span3 {
								width: 8vw;
								height: 1px;
								top: -1vw;
				}
}

.p-motion .p-motion__box01,
.p-motion .p-motion__box02,
.p-motion .p-motion__box03,
.p-motion .p-motion__box04 {
				position: relative;
}

.p-motion .p-motion__box01 p,
.p-motion .p-motion__box02 p,
.p-motion .p-motion__box03 p,
.p-motion .p-motion__box04 p {
				font-family: "Montserrat", sans-serif;
				font-weight: 500;
				font-size: 7.5rem;
				font-weight: 900;
				font-style: italic;
				letter-spacing: 0.1em;
				color: #35a6d5;
				opacity: 0.8;
				position: absolute;
				mix-blend-mode: overlay;
}

@media (width < 849px) {
				.p-motion .p-motion__box01 p,
				.p-motion .p-motion__box02 p,
				.p-motion .p-motion__box03 p,
				.p-motion .p-motion__box04 p {
								font-size: 14vw;
				}
}
.p-motion .p-motion__box01 h5,
.p-motion .p-motion__box02 h5,
.p-motion .p-motion__box03 h5,
.p-motion .p-motion__box04 h5 {
				color: white;
				background: #075e83;
				font-size: 2.1rem;
				font-weight: 700;
				display: inline-block;
				position: absolute;
				bottom: 0;
				-webkit-transform: translateY(50%);
				        transform: translateY(50%);
				z-index: 2;
				padding: 0.2em 0.5em;
}

@media (width < 849px) {
				.p-motion .p-motion__box01 h5,
				.p-motion .p-motion__box02 h5,
				.p-motion .p-motion__box03 h5,
				.p-motion .p-motion__box04 h5 {
								font-size: 4vw;
				}
}
.p-motion .p-motion__box01 {
				background-image: url("../img/motion_bg01.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 850/501;
}

.p-motion .p-motion__box01 p {
				top: 12%;
				left: -1%;
}

.p-motion .p-motion__box01 h5 {
				padding-left: 1.5em;
				right: 0;
				clip-path: polygon(30px 0%, 100% 0%, 100% 100%, 0% 100%);
}

@media (width < 849px) {
				.p-motion .p-motion__box01 h5 {
								clip-path: polygon(10px 0%, 100% 0%, 100% 100%, 0% 100%);
								padding-left: 1.5em;
				}
}
.p-motion .p-motion__box02 {
				background-image: url("../img/motion_bg02.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 850/530;
}

.p-motion .p-motion__box02 p {
				top: 14%;
				right: -1%;
}

.p-motion .p-motion__box02 h5 {
				padding-left: 1em;
				padding-right: 1em;
				left: 0;
				clip-path: polygon(0% 0%, calc(100% - 30px) 0%, 100% 100%, 0% 100%);
}

@media (width < 849px) {
				.p-motion .p-motion__box02 h5 {
								clip-path: polygon(0% 0%, calc(100% - 10px) 0%, 100% 100%, 0% 100%);
								padding-left: 1em;
				}
}
.p-motion .p-motion__box03 {
				background-image: url("../img/motion_bg03.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 850/530;
}

.p-motion .p-motion__box03 p {
				top: 23%;
				left: -2%;
				line-height: 0.9;
}

.p-motion .p-motion__box03 h5 {
				padding-left: 1.5em;
				right: 0;
				clip-path: polygon(30px 0%, 100% 0%, 100% 100%, 0% 100%);
}

@media (width < 849px) {
				.p-motion .p-motion__box03 h5 {
								clip-path: polygon(10px 0%, 100% 0%, 100% 100%, 0% 100%);
								padding-left: 1.5em;
				}
}
.p-motion .p-motion__box04 {
				background-image: url("../img/motion_bg04.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 850/510;
}

.p-motion .p-motion__box04 p {
				top: 14%;
				right: -1%;
				line-height: 0.9;
				text-align: right;
}

.p-motion .p-motion__box04 h5 {
				padding-left: 1em;
				padding-right: 1em;
				left: 0;
				bottom: auto;
				top: 450px;
				clip-path: polygon(0% 0%, calc(100% - 30px) 0%, 100% 100%, 0% 100%);
}

@media (width < 849px) {
				.p-motion .p-motion__box04 h5 {
								clip-path: polygon(0% 0%, calc(100% - 10px) 0%, 100% 100%, 0% 100%);
								padding-left: 1em;
								top: auto;
								bottom: 0;
				}
}
.p-benefit__block {
				background-image: url("../img/benefit_bg.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: top;
				aspect-ratio: 850/1721;
}

.p-benefit header {
				position: relative;
				padding-top: 4%;
}
.p-benefit header p {
				color: #cae5ed;
				text-align: right;
				position: relative;
				top: 10%;
				right: -1%;
}
@media (width < 849px) {
				.p-benefit header p {
								top: 2vw;
				}
}
.p-benefit header h3 {
				text-align: center;
				position: absolute;
				top: 54%;
				left: 50%;
				-webkit-transform: translateX(-50%);
				        transform: translateX(-50%);
				display: block;
				white-space: nowrap;
}
@media (width < 849px) {
				.p-benefit header h3 {
								top: 32vw;
				}
}
.p-benefit header .p-construction__number {
				right: 2%;
}

.p-benefit__pct {
				margin: 10% auto 0;
}
@media (width < 849px) {
				.p-benefit__pct {
								margin: 10vw auto 0;
				}
}

.p-benefit__pct h4 {
				text-align: center;
				font-family: "M PLUS 1p", sans-serif;
				font-size: 4.375rem;
				font-weight: 900;
}

@media (width < 849px) {
				.p-benefit__pct h4 {
								font-size: 8vw;
				}
}
.p-benefit__pct h4 .span1 {
				font-size: 7.5rem;
}

@media (width < 849px) {
				.p-benefit__pct h4 .span1 {
								font-size: 15vw;
				}
}
.p-benefit__pct h4 .span2 {
				font-size: 6.25rem;
				background: linear-gradient(135deg, #00bcbf 28%, #0180c3 80%);
				color: transparent;
				-webkit-background-clip: text;
				background-clip: text;
				-webkit-text-fill-color: transparent;
				text-fill-color: transparent;
}

@media (width < 849px) {
				.p-benefit__pct h4 .span2 {
								font-size: 13vw;
				}
}
.p-benefit__pct ul {
				aspect-ratio: 688/695;
				position: relative;
				background-image: url("../img/benefit_obj.png");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				width: 80%;
				margin: 11% auto 0;
}

.p-benefit__pct ul li {
				font-family: "M PLUS 1p", sans-serif;
				font-weight: 500;
				font-weight: 800;
				font-size: 5rem;
				background: linear-gradient(135deg, #00bcbf 28%, #0180c3 80%);
				color: transparent;
				-webkit-background-clip: text;
				background-clip: text;
				-webkit-text-fill-color: transparent;
				text-fill-color: transparent;
				position: absolute;
}

@media (width < 849px) {
				.p-benefit__pct ul li {
								font-size: 10vw;
				}
}
.p-benefit__pct ul li:nth-child(1) {
				top: 20%;
				left: 50%;
				-webkit-transform: translateX(-50%);
				transform: translateX(-50%);
}

.p-benefit__pct ul li:nth-child(2) {
				top: 62%;
				left: 12%;
}

.p-benefit__pct ul li:nth-child(3) {
				top: 62%;
				left: 58%;
}

.p-benefit__contents ul {
				padding-inline: 5%;
}

.p-benefit__contents ul li {
				background-image: url("../img/benefit_card.png");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 789/417;
				margin: 10% auto 0;
}

.p-benefit__contents ul li dl {
				text-align: center;
}

.p-benefit__contents ul li dl dt {
				color: white;
				font-family: "M PLUS 1p", sans-serif;
				font-weight: 500;
				font-size: 4.375rem;
				font-weight: 700;
				font-style: italic;
				line-height: 1;
				background: #00BCBF;
				background: -webkit-gradient(linear, left top, right top, from(rgb(0, 188, 191)), to(rgb(0, 128, 195)));
				background: linear-gradient(90deg, rgb(0, 188, 191) 0%, rgb(0, 128, 195) 100%);
				text-align: center;
				display: inline-block;
				padding: 0.2em 0.3em;
				-webkit-transform: translateY(-50%);
				transform: translateY(-50%);
}

@media (width < 849px) {
				.p-benefit__contents ul li dl dt {
								font-size: 8vw;
								-webkit-transform: translateY(-10vw);
								        transform: translateY(-10vw);
				}
}
.p-benefit__contents ul li dl dd {
				text-align: left;
				font-size: 1.8rem;
				font-weight: 600;
				padding: 0 1em 0 1.5em;
				position: relative;
				margin-top: -2%;
}

@media (width < 849px) {
				.p-benefit__contents ul li dl dd {
								font-size: 3.5vw;
								line-height: 1.7;
								margin-top: -7vw;
				}
}
.p-benefit__summary {
				margin: 3% auto 0;
				width: 90%;
}

.p-benefit__summary dl {
				color: white;
				background: #00BCBF;
				background: -webkit-gradient(linear, left top, right top, from(rgb(0, 188, 191)), to(rgb(0, 128, 195)));
				background: linear-gradient(90deg, rgb(0, 188, 191) 0%, rgb(0, 128, 195) 100%);
				text-align: center;
				padding: 5% 1%;
}

.p-benefit__summary dl dt {
				font-family: "M PLUS 1p", sans-serif;
				font-weight: 500;
				font-size: 3.125rem;
				font-weight: 800;
				font-style: italic;
				line-height: 1;
}

@media (width < 849px) {
				.p-benefit__summary dl dt {
								font-size: 6vw;
				}
}
.p-benefit__summary dl dt span {
				font-size: 4.25rem;
}

@media (width < 849px) {
				.p-benefit__summary dl dt span {
								font-size: 8.3vw;
				}
}
.p-benefit__summary dl dd {
				font-size: 1.875rem;
				font-weight: 600;
				margin-top: 5%;
}

@media (width < 849px) {
				.p-benefit__summary dl dd {
								font-size: 4vw;
				}
}
.p-review {
				padding-block: 10% 8%;
				background: #ddfffc;
}

.p-review > header {
				text-align: center;
}

.p-review > header p {
				font-family: "M PLUS 1p", sans-serif;
				font-weight: 500;
				font-size: 2.75rem;
				font-weight: 800;
				letter-spacing: 0.08em;
}

@media (width < 849px) {
				.p-review > header p {
								font-size: 5.5vw;
				}
}
.p-review > header h3 {
				margin: 4% auto;
				width: 77%;
}

@media (width < 849px) {
				.p-review > header h3 {
								font-size: 5.5vw;
								margin: 3vw auto;
				}
}
.p-review__contents {
				margin-top: 15%;
				padding-inline: 4%;
}

.p-review__box {
				background: white;
				-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
				box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
				margin-bottom: 11%;
}

.p-review__box header {
				position: relative;
				aspect-ratio: 79/36;
}

.p-review__box header h4 {
				color: white;
				position: absolute;
				z-index: 2;
}

.p-review__box header h4 span {
				display: inline-block;
				font-size: 4rem;
				line-height: 1;
				padding: 0.15em 0.5em 0.3em;
				margin-bottom: 2%;
}

@media (width < 849px) {
				.p-review__box header h4 span {
								font-size: 8.2vw;
								margin-bottom: 2vw;
				}
}
.p-review__pht {
				width: 50%;
				position: absolute;
				bottom: 0;
				right: 0;
}

.p-review__pht img {
				width: 100%;
}

.p-review__text {
				background-image: url("../img/review_note.png");
				background-repeat: repeat;
				padding: 4% 4% 7%;
				font-size: 1.85rem;
				font-weight: 500;
}

@media (width < 849px) {
				.p-review__text {
								font-size: 3.5vw;
								background-size: 4vw;
				}
}
.p-review__text div {
				border-bottom: 1px solid #91a0a6;
				padding: 0.2em 0;
}
@media (width < 849px) {
				.p-review__text div {
								border-bottom: 0.3vw solid #91a0a6;
				}
}

.p-review__text div span {
				color: #ee4b1f;
}

.p-review__box01 header {
				background-image: url("../img/review_bg01.webp");
				background-repeat: no-repeat;
				background-size: 50%;
				background-position: right center;
}

.p-review__box01 header h4 {
				top: 20%;
				left: -5%;
				line-height: 1;
				font-size: 0;
}

.p-review__box01 header h4 span {
				background: #0083C3;
				background: -webkit-gradient(linear, left top, right top, from(rgb(0, 131, 195)), to(rgb(0, 185, 191)));
				background: linear-gradient(90deg, rgb(0, 131, 195) 0%, rgb(0, 185, 191) 100%);
}

.p-review__box02 {
				margin-bottom: 2%;
}

.p-review__box02 header {
				background-image: url("../img/review_bg02.webp");
				background-repeat: no-repeat;
				background-size: 50%;
				background-position: left center;
}

.p-review__box02 header h4 {
				top: 20%;
				right: -5%;
				text-align: right;
				line-height: 1;
				font-size: 0;
}

.p-review__box02 header h4 span {
				font-size: 3.125rem;
				display: inline-block;
}

@media (width < 849px) {
				.p-review__box02 header h4 span {
								font-size: 6vw;
				}
}
.p-review__box02 header h4 span:last-child {
				margin-top: 1%;
				font-size: 3.75rem;
}

@media (width < 849px) {
				.p-review__box02 header h4 span:last-child {
								font-size: 7.2vw;
								margin-top: 0;
				}
}
.p-review__box02 header h4 span {
				background: #0083C3;
				background: -webkit-gradient(linear, left top, right top, from(rgb(0, 131, 195)), to(rgb(0, 185, 191)));
				background: linear-gradient(90deg, rgb(0, 131, 195) 0%, rgb(0, 185, 191) 100%);
}

.p-review__box02 header .p-review__pht {
				width: 50%;
				left: 0;
				right: auto;
}

.p-review__note {
				text-align: right;
				font-size: 1.25rem;
}

@media (width < 849px) {
				.p-review__note {
								font-size: 2.5vw;
				}
}
.p-step header {
				background-image: url("../img/step_head.jpg");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				padding-block: 8%;
				text-align: center;
}

.p-step__head {
				line-height: 1;
				display: inline-block;
				position: relative;
				z-index: 2;
				width: 47%;
}
@media (width < 849px) {
				.p-step__head {
								width: 47vw;
				}
}

.p-step h3 {
				font-size: 5.3125rem;
				font-weight: 900;
}

@media (width < 849px) {
				.p-step h3 {
								font-size: 9vw;
								margin-top: 0;
								line-height: 1;
				}
}
.p-step p {
				font-size: 1.9375rem;
				margin-top: 15px;
				font-weight: 500;
}

@media (width < 849px) {
				.p-step p {
								font-size: 3.8vw;
								margin-top: 2vw;
				}
}
.p-step__contents > ul > li {
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				position: relative;
				margin-top: 10px;
}

.p-step__contents > ul > li h4 {
				background: #10555e;
				color: white;
				font-size: 2.0625rem;
				font-weight: 800;
				line-height: 1;
				padding: 0.5em 2em 0.7em 1em;
				display: inline-block;
				position: absolute;
				top: 0;
				left: 0;
				clip-path: polygon(0% 0%, 100% 0%, calc(100% - 30px) 100%, 0% 100%);
}

@media (width < 849px) {
				.p-step__contents > ul > li h4 {
								font-size: 4.5vw;
								clip-path: polygon(0% 0%, 100% 0%, calc(100% - 10px) 100%, 0% 100%);
				}
}
.p-step__contents > ul > li > div > p {
				font-weight: 800;
				text-shadow: 0px 0px 2px #fff;
}

.p-step__contents > ul > li:nth-child(1) {
				background-image: url("../img/step_bg01.webp");
				aspect-ratio: 85/43;
}

.p-step__contents > ul > li:nth-child(1) div {
				height: 100%;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				-ms-flex-pack: start;
				justify-content: flex-start;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
				padding-left: 4%;
}

.p-step__contents > ul > li:nth-child(1) div p {
				-webkit-transform: translateY(20%);
				transform: translateY(20%);
}

.p-step__contents > ul > li:nth-child(2) {
				background-image: url("../img/step_bg02.webp");
				aspect-ratio: 85/43;
}

.p-step__contents > ul > li:nth-child(2) div {
				height: 100%;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				-ms-flex-pack: start;
				justify-content: flex-start;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
				padding-left: 4%;
}

.p-step__contents > ul > li:nth-child(2) div p {
				-webkit-transform: translateY(20%);
				transform: translateY(20%);
}

.p-step__contents > ul > li:nth-child(3) {
				background-image: url("../img/step_bg03.webp");
				aspect-ratio: 850/966;
}

.p-step__contents > ul > li:nth-child(3) > div {
				height: 100%;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: start;
				-ms-flex-pack: start;
				justify-content: flex-start;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
				padding-left: 4%;
}

.p-step__contents > ul > li:nth-child(3) > div > ul li {
				position: absolute;
				width: 27%;
}
@media (width < 849px) {
				.p-step__contents > ul > li:nth-child(3) > div > ul li {
								width: 27vw;
				}
}

.p-step__contents > ul > li:nth-child(3) > div > ul li:nth-child(1) {
				top: 19%;
				left: 36%;
}

.p-step__contents > ul > li:nth-child(3) > div > ul li:nth-child(2) {
				top: 43%;
				left: 5%;
}

.p-step__contents > ul > li:nth-child(3) > div > ul li:nth-child(3) {
				top: 43%;
				right: 4%;
}

.p-step__contents > ul > li:nth-child(3) > div > ul li:nth-child(4) {
				bottom: 10%;
				left: 36%;
}

.p-step__item {
				position: absolute;
				top: 43%;
				left: 50%;
				-webkit-transform: translateX(-50%);
				transform: translateX(-50%);
				width: 62%;
}

@media (width < 849px) {
				.p-step__item {
								width: 60vw;
				}
}
.p-step__item img {
				width: 100%;
}

.p-detail header {
				background-image: url("../img/detail_head.webp");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				aspect-ratio: 850/458;
				text-align: center;
				padding-top: 12%;
}
@media (width < 849px) {
				.p-detail header {
								padding-top: 12vw;
				}
}

.p-detail header h3 {
				width: 39%;
				margin-inline: auto;
}

@media (width < 849px) {
				.p-detail header h3 {
								width: 39vw;
				}
}
.p-detail header ul {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				-ms-flex-pack: center;
				justify-content: center;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
				margin-top: 4%;
}

.p-detail header ul li {
				font-weight: 500;
				font-size: 2.1875rem;
				line-height: 1;
				margin-inline: 1%;
				padding: 0.2em 0.2em;
				border-radius: 3px;
				background: #029BA8;
				background: linear-gradient(135deg, rgb(2, 155, 168) 0%, rgb(116, 212, 215) 100%);
				color: white;
				min-width: 4.8rem;
}
@media (width < 849px) {
				.p-detail header ul li {
								font-size: 5vw;
								width: 11vw;
								border-radius: 0.4vw;
								min-width: initial;
				}
}

.p-detail__list {
				margin-top: 13%;
}

.p-detail__list ul {
				padding-inline: 5% 2%;
}

.p-detail__list ul li {
				margin-bottom: 5%;
}

.p-detail__tbl {
				margin-top: 13%;
				width: 100%;
}
@media (width < 849px) {
				.p-detail__tbl {
								width: 94%;
								margin-inline: auto;
								border-top: 0.3vw solid #046873;
				}
}
.p-detail__tbl th {
				font-size: 1.5rem;
				padding: 0.5em 1em;
}
@media (width < 849px) {
				.p-detail__tbl th {
								font-size: 3.3vw;
				}
}
.p-detail__tbl th .p-detail__tbl th span {
				font-size: 1.0625rem;
}
@media (width < 849px) {
				.p-detail__tbl th .p-detail__tbl th span {
								font-size: 2.2vw;
				}
}
.p-detail__tbl td {
				font-size: 1.5rem;
				padding: 0.5em 1em;
				vertical-align: middle;
}
@media (width < 849px) {
				.p-detail__tbl td {
								font-size: 3.5vw;
				}
}
.p-detail__tbl thead tr th {
				background: #046873;
				color: white;
				text-align: center;
}
.p-detail__tbl thead tr th span {
				font-size: 1.0625rem;
}
@media (width < 849px) {
				.p-detail__tbl thead tr th span {
								font-size: 2.2vw;
				}
}
.p-detail__tbl thead tr th:nth-child(1) {
				width: 35%;
}
.p-detail__tbl thead tr th:nth-child(2) {
				width: 65%;
				border-left: 1px solid #fff;
				border-right: 1px solid #046873;
}
@media (width < 849px) {
				.p-detail__tbl thead tr th:nth-child(2) {
								border-left: 0.3vw solid #fff;
								border-right: 0.3vw solid #046873;
				}
}
.p-detail__tbl tbody tr th,
.p-detail__tbl tbody tr td {
				border-right: 1px solid #046873;
				border-bottom: 1px solid #046873;
				color: #046873;
}
@media (width < 849px) {
				.p-detail__tbl tbody tr th,
				.p-detail__tbl tbody tr td {
								border-right: 0.3vw solid #046873;
								border-bottom: 0.3vw solid #046873;
				}
}
.p-detail__tbl tbody tr th {
				background: #d9efec;
				vertical-align: middle;
				border-left: 1px solid #046873;
}
@media (width < 849px) {
				.p-detail__tbl tbody tr th {
								border-left: 0.3vw solid #046873;
				}
}
.p-detail__tbl tbody tr th span {
				font-size: 1.5625rem;
				font-weight: 600;
}
@media (width < 849px) {
				.p-detail__tbl tbody tr th span {
								font-size: 4vw;
				}
}
.p-detail__tbl tbody tr td {
				color: #046873;
				line-height: 1.3;
				font-weight: 600;
}
.p-detail__tbl tbody tr td span {
				font-size: 1.125rem;
}
@media (width < 849px) {
				.p-detail__tbl tbody tr td span {
								font-size: 2.4vw;
				}
}
.p-detail__tbl tbody tr.blank th,
.p-detail__tbl tbody tr.blank td {
				height: 10px;
				background: none;
				border-right: none;
				border-left: none;
				border-bottom: 1px solid #046873;
}
@media (width < 849px) {
				.p-detail__tbl tbody tr.blank th,
				.p-detail__tbl tbody tr.blank td {
								border-bottom: 0.3vw solid #046873;
								padding: 0;
								height: 3vw;
				}
}

.p-detail__note {
				margin-top: 1%;
				color: #046873;
}

@media (width < 849px) {
				.p-detail__note {
								padding-inline: 3%;
				}
}
.p-detail__note ul li {
				font-size: 1.6875rem;
				font-weight: 600;
}

@media (width < 849px) {
				.p-detail__note ul li {
								font-size: 3vw;
				}
}
.p-faq {
				margin-top: 8%;
}

.p-faq header {
				background-image: url("../img/faq_head.jpg");
				background-repeat: no-repeat;
				background-size: cover;
				background-position: center;
				padding-block: 8%;
				text-align: center;
}

.p-faq header p {
				color: #fff;
				text-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
				background: #42B8B3;
				background: linear-gradient(135deg, rgb(66, 184, 179) 0%, rgb(49, 135, 177) 100%);
				font-size: 2.1875rem;
				font-weight: 600;
				line-height: 1;
				padding: 0.4em 0.7em 0.6em;
				display: inline-block;
}

@media (width < 849px) {
				.p-faq header p {
								font-size: 4.3vw;
				}
}
.p-faq header h3 {
				font-size: 4.8125rem;
				margin-top: 0.2em;
				font-weight: 800;
}

@media (width < 849px) {
				.p-faq header h3 {
								font-size: 9vw;
				}
}
.p-faq__contents dl {
				border-bottom: 1px solid white;
}

.p-faq__contents dl:last-child {
				border-bottom: none;
}

.p-faq__contents dl dt {
				background: #d0e9e5;
				font-size: 1.75rem;
				font-weight: 600;
				padding: 0.7em 1em;
				cursor: pointer;
				position: relative;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				-ms-flex-pack: justify;
				justify-content: space-between;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
				-ms-flex-wrap: nowrap;
				flex-wrap: nowrap;
}

@media (width < 849px) {
				.p-faq__contents dl dt {
								font-size: 4vw;
								padding: 0.7em 0.5em 0.7em 1em;
				}
}
.p-faq__contents dl dt::before {
				content: "Q";
				font-family: "Inter", sans-serif;
				font-weight: 700;
				font-size: 3.75rem;
				font-weight: 600;
				color: #3187b1;
				margin-right: 0.5em;
}

@media (width < 849px) {
				.p-faq__contents dl dt::before {
								font-size: 7vw;
				}
}
@media (width < 849px) {
				.p-faq__contents dl dt::before {
								width: 5%;
				}
}
.p-faq__contents dl dt::after {
				content: "+";
				font-size: 3.75rem;
				font-weight: 300;
				color: #1271a0;
				margin-left: auto;
				-webkit-transition: content 0.3s;
				transition: content 0.3s;
}

@media (width < 849px) {
				.p-faq__contents dl dt::after {
								font-size: 7vw;
								width: 8%;
								padding-left: 0.5em;
				}
}
.p-faq__contents dl dt.is-active::after {
				content: "−";
}

.p-faq__contents dl dd {
				max-height: 0;
				overflow: hidden;
				opacity: 0;
				background: white;
				color: #046873;
				font-size: 1.375rem;
				line-height: 1.8;
				padding: 0 1em 0 4em;
				-webkit-transition: max-height 0.3s ease, opacity 0.3s ease, padding-top 0.3s ease, padding-bottom 0.3s ease;
				transition: max-height 0.3s ease, opacity 0.3s ease, padding-top 0.3s ease, padding-bottom 0.3s ease;
}

@media (width < 849px) {
				.p-faq__contents dl dd {
								font-size: 4vw;
								padding: 0 5vw 0 10vw;
				}
}
.p-faq__contents dl dd.is-show {
				max-height: 5000px;
				opacity: 1;
				padding-top: 1.5em;
				padding-bottom: 1.5em;
}
/*# sourceMappingURL=style.css.map */