@charset "UTF-8";
@keyframes slideUp {
  0% {
    translate: 0 100%;
  }
  100% {
    translate: 0 0;
  }
}

/* ========================================
  @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px),print {  
/* fv
-------------------------------------*/
.p-fv {
	background: url(../images/index/fv.jpg) no-repeat top center/cover;
	left: 50%;
	margin-inline: auto;
	max-width: 1920px;
	position: relative;
	top: -120px;
	transform: translateX(-50%);
	width: 100%;
}

.p-fv .l-inner.l-fv {
	padding: 20.25rem 0 14rem;
}

.p-fv .p-fv__ttl {
	color: #ffffff;
	font-size: 60px;
	font-weight: 600;
	letter-spacing: 0em;
	line-height: 1.2;
	margin-bottom: 2.875rem;
	text-align: center;
  overflow: hidden;
}

.p-fv .p-fv__ttl .char {
  opacity: 0;
}

.p-fv .p-fv__ttl02 {
	color: #ffffff;
	font-size: 28px;
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 1.7857142857;
	margin-bottom: 2.875rem;
	text-align: center;
  overflow: hidden;
}

.p-fv .p-fv__ttl02 span {
  display: inline-block;
  animation: 0.8s 2.0s ease forwards slideUp;
  translate: 0 100%;
}

.p-fv .p-fv__logo {
	text-align: center;
	position: relative;
	left: -2rem;
  overflow: hidden;
}

.p-fv .p-fv__logo img {
	height: auto;
	width: 13rem;
  animation: 0.8s 2.0s ease forwards slideUp;
  translate: 0 100%;
}

/* omoi
-------------------------------------*/

.p-omoi {
	margin-bottom: 11rem;
}

.p-omoi .l-inner.l-omoi {
	margin-inline: auto;
	padding: 0.4375rem 0px 0;
	position: relative;
	width: min(95%, 1524px);
}

.p-omoi .p-omoi__en {
	margin-bottom: -2.5rem;
	text-align: center;
}

.p-omoi .p-omoi__en img {
	height: auto;
	width: 49.875rem;
}

.p-omoi .p-omoi__ttl {
	font-size: 23px;
	font-weight: 600;
	letter-spacing: 0.15em;
	line-height: 1.2173913043;
	margin-bottom: 6.6875rem;
	text-align: center;
}

.p-omoi .p-omoi__img01 {
	position: absolute;
	right: 3rem;
	top: 8.5rem;
}

.p-omoi .p-omoi__img01 img {
  width: 16.75rem;
  height: auto;
}

.p-omoi .p-omoi__txt {
	margin-bottom: 5rem;
	text-align: center;
}

.p-omoi .p-omoi__img02 {
	left: -3rem;
	position: absolute;
	top: 3.5rem;
}

.p-omoi .p-omoi__img02 img {
  width: 23.3125rem;
  height: auto;
}

.p-omoi .p-omoi__txt02 {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.12em;
	line-height: 2.7;
	margin-bottom: 3.8125rem;
	text-align: center;
}

.p-omoi .p-omoi__txt03 {
	color: #171717;
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.2em;
	line-height: 2.6071428571;
	margin-bottom: 0.5rem;
	text-align: center;
}

.p-omoi .p-omoi__txt03 span {
	color: #34B1C5;
}

.p-omoi .p-omoi__txt04 {
	color: #171717;
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.2em;
	line-height: 2.6071428571;
	text-align: center;
}

/* onayami
-------------------------------------*/
.p-onayami {
	background: url(../images/index/onayami_bg.jpg) no-repeat top center/cover;
	margin-bottom: 11.1875rem;
	margin-inline: auto;
	max-width: 1920px;
	width: 100%;
  position: relative;
}

.p-onayami::after {
  position: absolute;
  content: "";
  background: url(../images/index/line.svg) no-repeat center center / contain;
  width: 2px;
  height: 142px;
  bottom: -71px;
  left: 50%;
  transform: translateX(-50%);
}

.p-onayami .l-inner.l-onayami {
	padding: 6.5625rem 0 8.5rem;
}

.p-onayami .p-onayami__ttl {
	margin-bottom: 2.5rem;
	text-align: center;
}

.p-onayami .p-onayami__contents {
	background: #ffffff;
	margin-inline: auto;
	padding: 3.1875rem 0px 3.1875rem;
	width: min(95%, 815px);
}

.p-onayami .p-onayami__list {
	display: grid;
	gap: 1.3rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 696px);
}

.p-onayami .p-onayami__list li {
	border-bottom: 1px dashed #A5A5A5;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.024em;
	line-height: 1.6666666667;
	padding-bottom: 24px;
	padding-left: 56px;
	position: relative;
}

.p-onayami .p-onayami__list li:before {
	background: url(../images/index/onayami_check.svg) no-repeat center center/contain;
	content: "";
	height: 26px;
	left: 15px;
	position: absolute;
	top: 3px;
	width: 26px;
}

/* pro
-------------------------------------*/
.p-pro .l-inner.l-pro {
	padding: 0 0 8.0625rem;
	position: relative;
}

.p-pro .l-inner.l-pro::after {
	background: url(../images/index/daihyo.png) no-repeat center center/contain;
	bottom: 0;
	content: "";
	height: 38.5625rem;
	position: absolute;
	left: calc(50% + 24rem);
	width: 24.75rem;
}

.p-pro .p-pro__ttl {
	display: grid;
	gap: 2.9375rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 3.6875rem;
}

.p-pro .p-pro__ttl span.top {
	color: #171717;
	font-size: 30px;
	font-weight: 400;
	letter-spacing: 0.12em;
	line-height: 1.4666666667;
	margin-inline: auto;
	position: relative;
	width: min(95%, 43rem);
  text-align: center;
}

.p-pro .p-pro__ttl span.top:before {
  background: url(../images/index/heart.png) no-repeat center center / contain;
  bottom: -1rem;
  content: "";
  height: 9.375rem;
  left: -12rem;
  position: absolute;
  width: 10.9375rem;
}

.p-pro .p-pro__ttl span.bottom {
	background: #34B1C5;
	color: #ffffff;
	display: block;
	font-size: 40px;
	font-weight: 400;
	letter-spacing: 0.16em;
	line-height: 1.45;
	padding: 11px 0;
	text-align: center;
}

.p-pro .p-pro__txt {
	color: #34B1C5;
	font-size: 42px;
	font-weight: 400;
	letter-spacing: 0.09em;
	line-height: 1.8571428571;
	text-align: center;
}

/* strong
-------------------------------------*/
.p-strong {
	margin-bottom: 9.4375rem;
  overflow: hidden;
}

.p-strong .l-inner.l-strong {
	background: url(../images/index/strong_bg.jpg) no-repeat top center/cover;
	margin-inline: auto;
	padding: 7.25rem 0 11.25rem;
	width: min(95%, 1800px);
}

.p-strong .p-strong__en {
	margin-bottom: -7rem;
	text-align: center;
}

.p-strong .p-strong__en img {
	height: auto;
	width: 46.9375rem;
}

.p-strong .p-strong__ttl {
	margin-bottom: 5.625rem;
	text-align: center;
}

.p-strong .p-strong__ttl img {
	height: auto;
	width: 55.625rem;
}

.p-strong .p-strong__items {
	width: min(95%, 1400px);
}

.p-strong .p-strong__item:nth-child(1),
.p-strong .p-strong__item:nth-child(3) {
	left: 6.25rem;
	position: relative;
}

.p-strong .p-strong__item:nth-child(2) {
	left: 16.25rem;
	position: relative;
}

.p-strong .p-strong__contents {
	display: grid;
	gap: 0 4.5rem;
	grid-template-columns: 54.2857142857% 41.1428571429%;
}

.p-strong .p-strong__contents.point01 {
	margin-bottom: -3rem;
}

.p-strong .p-strong__contents.point02 {
	display: grid;
	gap: 0 5.5rem;
	grid-template-columns: 42.4% 54.2%;
	margin-bottom: 2.5rem;
}

.p-strong .p-strong__contents.point03 {
	align-items: flex-end;
	margin-bottom: 6.6875rem;
}

.p-strong .p-strong__contents-img img {
	height: auto;
	width: 100%;
}

.p-strong .p-strong__contents-txt.top {
	position: relative;
	top: -2rem;
}

.p-strong .p-strong__contents-txt div.en {
	margin-bottom: 1.5rem;
}

.p-strong .p-strong__contents-txt h3 {
	font-size: 40px;
	font-weight: 400;
	letter-spacing: 0.14em;
	line-height: 1.55;
	margin-bottom: 2.375rem;
	color: #34B1C5;
}

.p-strong .p-strong__contents-txt p {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2;
}

.p-strong .p-strong__contents-txt p span {
	color: #34B1C5;
}

.p-strong .p-strong__contents-txt p span.bold {
	color: #333333;
  font-weight: 700;
}

.p-strong .p-strong__contents-txt p.top {
	margin-bottom: 1.5rem;
}

.p-strong .p-strong__contents-txt p.center {
	margin-bottom: 1.5rem;
}

.p-strong .p-strong01_txt {
	margin-bottom: 10rem;
	position: relative;
	left: 6rem;
  width: min(95%,791px);
  margin-inline: auto;
}

.p-strong .p-strong01_txt img {
  width: 100%;
  height: auto;        
}

.p-strong .p-strong02_txt {
	margin-bottom: -2rem;
	position: relative;
	z-index: 10;
	left: -4rem;
  width: min(95%,1039px);
  margin-inline: auto;
}

.p-strong .p-strong02_txt img {
  width: 100%;
  height: auto;        
}

.p-strong .p-strong02__slider-wrap {
  width: 1920px;
  margin-inline: auto;
  overflow: hidden;
  position: relative;
  left: -23%;
} 

.p-strong .p-strong02__slider {
	margin-bottom: 7.6875rem;
	width: 2110px;
  text-align: center;
  position: relative;
  left: -2%;
}

.p-strong .p-strong02__slider img {
	height: auto;
	width: 100%;
}

.p-strong .p-strong03_txt {
	margin-inline: auto;
	position: relative;
	text-align: center;
	width: min(95%, 1100px);
}

.p-strong .p-strong03_txt:before {
	background: url(../images/index/car.png) no-repeat center center/contain;
	content: "";
	height: 114px;
	left: 2rem;
	position: absolute;
	top: -4rem;
	width: 131px;
}

.p-strong .p-strong03_txt::after {
	background: url(../images/index/air.png) no-repeat center center/contain;
	content: "";
	height: 143px;
	position: absolute;
	right: -2rem;
	top: -3rem;
	width: 133px;
}


/* plus
-------------------------------------*/
.p-plus {
	margin-bottom: 11.2rem;
	position: relative;
}

.p-plus::after {
	background: url(../images/index/yama.png) no-repeat center center/contain;
	bottom: -11.2rem;
	content: "";
	height: 15.1rem;
	left: 0;
	position: absolute;
	width: 33.3rem;
}

.p-plus .l-inner.l-plus {
	margin-inline: auto;
	width: min(95%, 1240px);
	position: relative;
	left: 1rem;
}

.p-plus .p-plus__contents {
	display: grid;
	grid-template-columns: 64.0322580645% 38.7096774194%;
}

.p-plus .p-plus__contents-left div.icon {
	margin-bottom: 2rem;
	position: relative;
	left: -2rem;
}

.p-plus .p-plus__contents-left div.icon img {
	height: auto;
	width: 8.875rem;
}

.p-plus .p-plus__contents-left h2 {
	color: #34B1C5;
	font-size: 40px;
	font-weight: 400;
	letter-spacing: 0.15em;
	line-height: 1.65;
	margin-bottom: 2.5rem;
}

.p-plus .p-plus__contents-left p.top {
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 2;
	margin-bottom: 3.125rem;
}

.p-plus .p-plus__contents-left p.top span {
	-webkit-text-decoration-color: #34B1C5;
	text-decoration-color: #34B1C5;
	-webkit-text-decoration-line: underline;
	text-decoration-line: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 8px;
}

.p-plus .p-plus__contents-left p.center {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2;
	margin-bottom: 34px;
}

.p-plus .p-plus__contents-left p.bottom {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2;
	position: relative;
}

.p-plus .p-plus__contents-left p.bottom::after {
  background: url(../images/index/a_icon.png) no-repeat center center / contain;
  content: "";
  height: 16.0625rem;
  position: absolute;
  right: -38.75rem;
  top: 50%;
  transform: translateY(-50%);
  width: 31.25rem;
}


.p-plus .p-plus__contents-left p.bottom span {
	font-weight: 700;
}

.p-plus .p-plus__contents-right {
  position: relative;
  top: 7rem;
  left: -2rem;
}

.p-plus .p-plus__contents-right img {
	height: auto;
	width: 100%;
}

/* contact
-------------------------------------*/

.p-contact {
	background: url(../images/index/contact_bg.jpg) no-repeat top center/cover;
	margin-bottom: 9rem;
	margin-inline: auto;
	max-width: 1920px;
	width: 100%;
}

.p-contact .l-inner.l-contact {
	padding: 107px 0px 70px;
}

.p-contact .p-contact__ttl {
	color: #ffffff;
	font-size: 48px;
	font-weight: 400;
	letter-spacing: 0.07em;
	line-height: 1.2083333333;
	margin-bottom: 44px;
	text-align: center;
}

.p-contact .p-contact__txt {
	color: #ffffff;
	font-size: 28px;
	font-weight: 400;
	letter-spacing: 0em;
	line-height: 1.7142857143;
	margin-bottom: 61px;
	text-align: center;
}

.p-contact .p-contact__contents {
	background: #34B1C5;
	display: grid;
	gap: 0 3.75rem;
	grid-template-columns: 39.6875% 32.734375%;
	justify-content: center;
	margin-inline: auto;
	padding: 48px 0px 42px;
	width: min(95%, 1280px);
}

.p-contact .p-contact__contents-left img {
	height: auto;
	width: 100%;
}

.p-contact .p-contact__contents-right img {
	height: auto;
	width: 100%;
}

.p-contact .p-contact__txt {
	color: #ffffff;
	font-size: 30px;
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 1.4444444444;
	text-align: center;
}

/* voice
-------------------------------------*/
.p-voice {
	margin-bottom: 12.5rem;
}

.p-voice .l-inner.l-voice {
	background: url(../images/index/voice_bg.png) no-repeat top center/cover;
	margin-inline: auto;
	padding: 8.75rem 0 5.3125rem;
	position: relative;
	width: min(95%, 1600px);
}

.p-voice .l-inner.l-voice::after {
  background: url(../images/index/voice_icon02.png) no-repeat center center / contain;
  bottom: -5.6875rem;
  content: "";
  height: 13.5625rem;
  left: calc(50% + 21rem);
  position: absolute;
  width: 21rem;
}

.p-voice .p-voice__en {
	margin-bottom: 1.5rem;
	text-align: center;
}

.p-voice .p-voice__ttl {
	font-size: 42px;
	font-weight: 400;
	letter-spacing: 0.16em;
	line-height: 1.1904761905;
	margin-bottom: 7.0625rem;
	margin-inline: auto;
	position: relative;
	text-align: center;
	width: min(95%, 550px);
}

.p-voice .p-voice__ttl::after {
  background: url(../images/index/voice_icon.png) no-repeat center center / contain;
  content: "";
  height: 16.3125rem;
  position: absolute;
  right: -24rem;
  top: -6.5rem;
  width: 20rem;
}

.p-voice .p-voice__items {
	display: grid;
	gap: 6.25rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-inline: auto;
	width: min(95%, 1280px);
}

.p-voice .p-voice__item h3 {
	background: #ffffff;
	border-radius: 42px;
	color: #34B1C5;
	font-size: 34px;
	font-weight: 400;
	letter-spacing: 0.11em;
	line-height: 1.2058823529;
	margin-bottom: 50px;
	padding: 20px 0;
	position: relative;
	text-align: center;
}

.p-voice .p-voice__item h3::after {
	background: url(../images/index/voice_arrow.svg) no-repeat center center/contain;
	bottom: -34px;
	content: "";
	height: 39px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 45px;
}

.p-voice .p-voice__contents {
	display: grid;
	gap: 0 2.8125rem;
	grid-template-columns: 46.484375% 43.515625%;
}

.p-voice .p-voice__contents-left img {
	height: auto;
	width: 100%;
}

.p-voice .p-voice__contents-right {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 2.1;
}

/* features
-------------------------------------*/
.p-features {
	margin-bottom: 8.75rem;
}

.p-features .l-inner.l-features {
	margin-inline: auto;
	width: min(95%, 1289px);
}

.p-features .p-features__en {
	margin-bottom: 20px;
	text-align: center;
}

.p-features .p-features__ttl {
	color: #171717;
	font-size: 42px;
	font-weight: 400;
	letter-spacing: 0.16em;
	line-height: 1.1904761905;
	margin-bottom: -4rem;
	text-align: center;
}

.p-features .p-features__img img {
	height: auto;
	width: 100%;
}

/* price 
-------------------------------------*/

.p-price {
	margin-bottom: 9.5625rem;
}

.p-price .l-inner.l-price {
	margin-inline: auto;
	width: min(95%, 1200px);
}

.p-price .p-price__en {
	margin-bottom: 20px;
	text-align: center;
}

.p-price .p-price__ttl {
	color: #171717;
	font-size: 42px;
	font-weight: 400;
	letter-spacing: 0.16em;
	line-height: 1.1904761905;
	margin-bottom: 2.3125rem;
	text-align: center;
}

.p-price .p-price__info {
	border: 1px solid #34B1C5;
	border-collapse: collapse;
	margin-bottom: 1.5rem;
	table-layout: fixed;
	width: 100%;
}

.p-price .p-price__info-row {
	color: #171717;
	text-align: center;
}

.p-price .p-price__info-row:nth-child(1) {
	background: #7CCBD8;
	color: #ffffff;
}

.p-price .p-price__info-row:nth-child(1) th {
	border-right: 1px solid #34B1C5;
	padding-block: 16px;
}

.p-price .p-price__info-row:nth-child(1) th:last-child {
	border-right: none;
}

.p-price .p-price__info-row:nth-child(1) th:nth-child(1) {
	width: 21.3%;
}

.p-price .p-price__info-row:nth-child(1) th:nth-child(2) {
	width: 27.9%;
}

.p-price .p-price__info-row:nth-child(1) th:nth-child(3) {
	width: 22.4%;
}

.p-price .p-price__info-row:nth-child(1) th:nth-child(4) {
	width: 28.25%;
}

.p-price .p-price__info-row:nth-child(3),
.p-price .p-price__info-row:nth-child(5) {
	background: #F5F5F5;
}

.p-price .p-price__info-row th {
	border-right: 1px solid #34B1C5;
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 1.4545454545;
	margin: 0;
	padding-block: 32px;
}

.p-price .p-price__info-row td {
	border-right: 1px solid #34B1C5;
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.4545454545;
	margin: 0;
}

.p-price .p-price__info-row td:last-child {
	border-right: none;
}

.p-price .p-price__info-row td:empty {
	background-image: linear-gradient(to right bottom, transparent calc(50% - 1px), #F5F5F5 calc(50% - 0.5px), #F5F5F5 calc(50% + 0.5px), transparent calc(50% + 1px), #fff);
	background-repeat: no-repeat;
}

.p-price .p-price__txt {
	color: #171717;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.4444444444;
	margin-bottom: 0rem;
	margin-inline: auto;
	width: min(95%, 1000px);
}

.p-price .p-price__txt02 {
	color: #171717;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.4444444444;
	margin-inline: auto;
	width: min(95%, 1000px);
}

/* faq
-------------------------------------*/
.p-faq {
	margin-bottom: 10.25rem;
}

.p-faq .l-inner.l-faq {
	margin-inline: auto;
	width: min(95%, 1200px);
}

.p-faq .p-faq__en {
	margin-bottom: 20px;
	text-align: center;
}

.p-faq .p-faq__ttl {
	color: #171717;
	font-size: 42px;
	font-weight: 400;
	letter-spacing: 0.16em;
	line-height: 1.1904761905;
	margin-bottom: 3rem;
	text-align: center;
}

.p-faq .p-faq__items {
	display: grid;
	gap: 3.75rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-faq summary {
	display: block;
}

.p-faq summary::-webkit-details-marker {
	display: none;
}

.p-faq .p-faq__item {
	border: 1px solid #34B1C5;
	padding-inline: 6.25rem;
}

.p-faq .p-faq__question {
	display: block;
	padding-block: 3.5rem;
	position: relative;
}

.p-faq .p-faq__question::before,
.p-faq .p-faq__question::after {
	background: #34B1C5;
	content: "";
	position: absolute;
	top: 36%;
	translate: 0 -50%;
}

.p-faq .p-faq__question::before {
	height: 2px;
	right: -4.6rem;
	width: 21px;
}

.p-faq .p-faq__question::after {
	height: 21px;
	right: -4rem;
	transition: rotate 0.3s ease;
	width: 2px;
}

.p-faq details[open] .p-faq__question::after {
	rotate: 90deg;
}

.p-faq .p-faq__question-txt {
	color: #34B1C5;
	font-size: 24px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.4583333333;
	padding-left: 70px;
	position: relative;
}

.p-faq .p-faq__question-txt::before {
	background: url(../images/index/q.svg) no-repeat center center/contain;
	content: "";
	height: 52px;
	left: 0;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: 46px;
}

.p-faq .p-faq__answer {
	padding-block: 0 2.5rem;
}

.p-faq .p-faq__answer-txt {
	color: #171717;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.12em;
	line-height: 2;
	padding-left: 72px;
	position: relative;
}

.p-faq .p-faq__answer-txt::before {
	background: url(../images/index/a.svg) no-repeat center center/contain;
	content: "";
	height: 52px;
	left: 0;
	position: absolute;
	top: 0.5rem;
	width: 46px;
}

.p-faq .p-faq__answer-txt.faq04::before {
  top: 50%;
  transform: translateY(-50%);
}

@media (any-hover: hover) {

.p-faq .p-faq__question:hover {
  cursor: pointer;
}
  
}
  

/* blog
-------------------------------------*/
.p-blog {
	margin-bottom: 12rem;
}

.p-blog .l-inner.l-blog {
	margin-inline: auto;
	width: min(95%, 1280px);
}

.p-blog .p-faq__en {
	margin-bottom: 20px;
	text-align: center;
}

.p-blog .p-faq__ttl {
	color: #171717;
	font-size: 42px;
	font-weight: 400;
	letter-spacing: 0.16em;
	line-height: 1.1904761905;
	margin-bottom: 4rem;
	text-align: center;
}

.p-blog .system-list {
	display: grid;
	gap: 0 5.3125rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 5rem;
}

.p-blog .system-pic {
	margin-bottom: 1rem;
}

.p-blog .system-pic img {
	height: 14.6875rem;
	width: 100%;
}

.p-blog .textbx {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0 0.5rem;
	margin-bottom: 0.625rem;
}

.p-blog .system-category span {
	background: #34B1C5;
	color: #ffffff;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 1.4444444444;
	padding-inline: 16px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-blog .system-day {
	color: #34B1C5;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 1.4444444444;
}

.p-blog .system-ttl-01 {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 1.6;
}

.p-blog .p-blog__btn {
	margin-inline: auto;
	text-align: center;
	width: min(95%, 540px);
}

.p-blog .p-blog__btn a {
	border: 1px solid #34B1C5;
	border-radius: 39px;
	color: #34B1C5;
	display: block;
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 1.4545454545;
	padding-block: 19px 19px;
	position: relative;
}

.p-blog .p-blog__btn a::after {
	background: url(../images/index/arrow.svg) no-repeat center center/contain;
	content: "";
	height: 12px;
	position: absolute;
	right: 44px;
	top: 50%;
	transform: translateY(-50%);
	width: 15px;
}

/* soudan
-------------------------------------*/
.p-soudan {
	background: url(../images/index/contact_bg02.jpg) no-repeat top center/cover;
	margin-bottom: -5.25rem;
	margin-inline: auto;
	max-width: 1920px;
	width: 100%;
}

.p-soudan .l-inner.l-soudan {
	margin-inline: auto;
	padding-block: 6rem 9rem;
	position: relative;
	width: min(95%, 1550px);
}

.p-soudan .l-inner.l-soudan:before {
	background: url(../images/index/contact_left.png) no-repeat center center/contain;
	content: "";
	height: 34.375rem;
	left: 2.5rem;
	position: absolute;
	top: 1rem;
	width: 20.6875rem;
}

.p-soudan .l-inner.l-soudan::after {
	background: url(../images/index/contact_right.png) no-repeat center center/contain;
	bottom: 0;
	content: "";
	height: 38.3125rem;
	position: absolute;
	right: -2rem;
	width: 30.75rem;
}

.p-soudan .p-soudan__ttl {
	display: grid;
	gap: 1.125rem 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	margin-bottom: 3.5rem;
	place-items: center;
}

.p-soudan .p-soudan__ttl span {
	background: #ffffff;
	color: #34B1C5;
	font-size: 48px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1.375;
	padding: 1px 20px;
	width: -moz-fit-content;
	width: fit-content;
	text-align: center;
}

.p-soudan .p-soudan__ttl span.top {
  padding: 0px 0px 0 33px;
  position: relative;
  left: 1rem;
}

.p-soudan .p-soudan__txt {
	color: #6B6B6B;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0em;
	line-height: 2.2;
	text-align: center;
}


}

/* ========================================

======================================== */
@media screen and (min-width:768px) and ( max-width:1919px) {
.p-strong .p-strong02__slider-wrap {
}

.p-strong .p-strong02__slider {
left: 50%;
transform: translateX(-50%);
}


}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1700px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1700px) {
.p-strong .p-strong__item:nth-child(2) {
  left: 5.25rem;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1650px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1650px) {
.p-plus .p-plus__contents-left p.bottom::after {
  right: -34.75rem;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1600px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1600px) {
.p-strong .p-strong__item:nth-child(1), .p-strong .p-strong__item:nth-child(3) {
  position: relative;
  left: 1.25rem;
}

.p-strong .p-strong__item:nth-child(2) {
  left: 1.25rem;
  position: relative;
}

.p-strong .p-strong01_txt {
  left: 0;
}

.p-strong .p-strong02_txt {
  left: -3rem;
}

.p-strong .p-strong__contents-txt h3 {
  font-size: 38px;
  white-space: nowrap;
}


}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1500px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1500px) {
.p-pro .p-pro__txt {
  font-size: 2.8vw;
}

.p-pro .p-pro__ttl span.top {
  font-size: 2vw;
}

.p-pro .p-pro__ttl span.bottom {
  font-size: 2.667vw;
  padding: 0.733vw 0;
}

.p-strong .p-strong__contents.point01 {
  margin-bottom: -1rem;
}    

.p-faq .p-faq__question::before {
  right: -4.65rem;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1450px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1450px) {
.p-omoi .p-omoi__txt02 {
  font-size: 18px;
}

.p-omoi .p-omoi__txt03 {
  font-size: 24px;
}

.p-omoi .p-omoi__txt04 {
  font-size: 24px;   
}

.p-fv {
  background: url(../images/index/fv.jpg) no-repeat top center / contain;
  height: 100%;
}

.p-fv .l-inner.l-fv {
  padding: 14.25rem 0 11rem;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1400px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1400px) {
.p-strong .p-strong02__slider-wrap {

}

.p-strong .p-strong02__slider {
  width: 100%;
  left: 43%;
}

.p-strong {
  overflow: hidden;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1350px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1350px) {
.p-strong .p-strong__contents-txt h3 {
  font-size: 2.815vw;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1300px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1300px) {
.p-omoi .p-omoi__img02 {
  top: 1.5rem;
}

.p-omoi .p-omoi__img01 {
  right: 0;
  top: 1.5rem;
}

.p-soudan .p-soudan__txt {
  font-size: 1.384vw;
}

.p-soudan .p-soudan__ttl span {
  font-size: 3.692vw;
}

.p-fv .p-fv__ttl {
  font-size: 4vw;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1200px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1200px) {
.p-price .p-price__info-row:nth-child(1) th:nth-child(2) {
  font-size: 18px;
}

.p-price .p-price__info-row th {
  font-size: 20px;
}

.p-price .p-price__info-row td {
  font-size: 20px;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1100px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:1100px) {
.p-plus .p-plus__contents-left h2 {
  color: #34B1C5;
  font-size: 3.455vw;
}

.p-plus .p-plus__contents-left p.top {
  font-size: 18px;
}

.p-voice .p-voice__ttl::after {
  right: -19rem;
}

.p-faq .p-faq__question::before {
  right: -4.9rem;
}

.p-fv .p-fv__ttl02 {
  font-size: 20px;
}

.p-contact .p-contact__txt {
  font-size: 28px;
}

.p-omoi .p-omoi__txt02 {
  font-size: 16px;
}
}

/* ========================================

======================================== */
@media screen and (min-width:768px) and ( max-width:1000px) {
.p-strong .p-strong__contents-txt p {
  font-size: 16px;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:900px) {
======================================== */
@media screen and (min-width:768px) and ( max-width:900px) {
.p-price .p-price__info-row:nth-child(1) th:nth-child(2) {
  font-size: 15px;
}

.p-price .p-price__info-row th {
  font-size: 18px;
}

.p-voice .p-voice__ttl::after {
  right: -15rem;
  top: -12.5rem;
}

}
/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
.l-inner {
  margin-inline: auto;
  width: 100%;
}

/* fv
-------------------------------------*/
.p-fv {
  background: url(../images/index/sp_fv.jpg) no-repeat top center/cover;
  margin-bottom: 16.7vw;
  margin-inline: auto;
  position: static;
  transform: none;
  width: 100%;
}

.p-fv .l-inner.l-fv {
  padding: 56.696vw 0px 29.541vw;
}

.p-fv .p-fv__ttl {
  color: #ffffff;
  font-size: 7.246vw;
  font-weight: 600;
  letter-spacing: 0em;
  line-height: 1.6333333333;
  margin-bottom: 2.28vw;
  text-align: center;
  overflow: hidden;
}

.p-fv .p-fv__ttl .char {
  opacity: 0;
}

.p-fv .p-fv__ttl02 {
  color: #ffffff;
  font-size: 4.348vw;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.8888888889;
  margin-bottom: 5.488vw;
  text-align: center;
  overflow: hidden;
}

.p-fv .p-fv__ttl02 span {
  display: inline-block;
  animation: 0.8s 2.0s ease forwards slideUp;
  translate: 0 100%;
}

.p-fv .p-fv__logo {
  text-align: center;
  overflow: hidden;
}

.p-fv .p-fv__logo img {
  height: auto;
  width: 36.473vw;
  animation: 0.8s 2.0s ease forwards slideUp;
  translate: 0 100%;
}

/* omoi
-------------------------------------*/
.p-omoi {
  margin-bottom: 35.647vw;
}

.p-omoi .l-inner.l-omoi {
  padding: 0;
  position: static;
  width: 100%;
}

.p-omoi .p-omoi__en {
  margin-bottom: -2.797vw;
  text-align: center;
}

.p-omoi .p-omoi__en img {
  height: auto;
  width: 74.396vw;
}

.p-omoi .p-omoi__ttl {
  font-size: 4.831vw;
  font-weight: 400;
  letter-spacing: 0em;
  line-height: 1.2;
  margin-bottom: 14.734vw;
  text-align: center;
}

.p-omoi .p-omoi__img01 {
  margin-bottom: 11.111vw;
  position: relative;
  text-align: center;
  left: -6vw;
}

.p-omoi .p-omoi__txt {
  margin-bottom: 12.319vw;
  text-align: center;
}

.p-omoi .p-omoi__img02 {
  margin-bottom: 12.493vw;
  margin-inline: auto;
  position: static;
  width: min(95%, 94.6859903382vw);
}

.p-omoi .p-omoi__img02 img {
  height: auto;
  width: 100%;
}

.p-omoi .p-omoi__txt02 {
  font-size: 4.106vw;
  font-weight: 400;
  letter-spacing: 0.12em;
  line-height: 2.5294117647;
  margin-inline: auto;
  text-align: left;
  width: min(95%, 89.3vw);
  margin-bottom: 15vw;
}

.p-omoi .p-omoi__txt03 {
  color: #171717;
  font-size: 4.831vw;
  font-weight: 600;
  letter-spacing: 0.15em;
  line-height: 2.1;
  margin-bottom: 3.179vw;
  text-align: center;
}

.p-omoi .p-omoi__txt03 span {
  color: #34B1C5;
}

.p-omoi .p-omoi__txt04 {
  color: #171717;
  font-size: 4.831vw;
  font-weight: 600;
  letter-spacing: 0.15em;
  line-height: 2.1;
  text-align: center;
}

.p-omoi .p-omoi__img01 img {
	height: auto;
	width: 293px;
}

.p-omoi .p-omoi__txt img {
	height: auto;
	width: 66.1vw;
}

/* onayami
-------------------------------------*/
.p-onayami {
  background: url(../images/index/sp_onayami_bg.jpg) no-repeat top center/cover;
  margin-bottom: 50.725vw;
  position: relative;
}

.p-onayami::after {
  position: absolute;
  content: "";
  background: url(../images/index/line.svg) no-repeat center center / contain;
  width: 0.483vw;
  height: 22.464vw;
  bottom: -10.87vw;
  left: 50%;
  transform: translateX(-50%);
}

.p-onayami .l-inner.l-onayami {
  padding: 12.56vw 0px 17.633vw;
}

.p-onayami .p-onayami__ttl {
  margin-bottom: 29.952vw;
  text-align: center;
}

.p-onayami .p-onayami__ttl img {
  height: auto;
  width: 54.589vw;
}

.p-onayami .p-onayami__contents {
  background: #ffffff;
  margin-inline: auto;
  padding: 6.039vw 0px 9.662vw;
  width: min(95%, 88.6473429952vw);
}

.p-onayami .p-onayami__list {
  display: grid;
  gap: 4vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-inline: auto;
  width: min(95%, 82.1vw);
}

.p-onayami .p-onayami__list li {
  border-bottom: 0.2vw dashed #A5A5A5;
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.7777777778;
  padding-bottom: 3.831vw;
  padding-left: 8.971vw;
  position: relative;
}

.p-onayami .p-onayami__list li:before {
  background: url(../images/index/onayami_check.svg) no-repeat center center/contain;
  content: "";
  height: 4.348vw;
  left: 0;
  position: absolute;
  top: 1.5vw;
  width: 4.348vw;
}

/* pro
-------------------------------------*/
.p-pro .l-inner.l-pro {
  padding: 0px 0px 33.715vw;
  position: relative;
}

.p-pro .l-inner.l-pro::after {
  background: url(../images/index/sp_daihyo.png) no-repeat center center/contain;
  bottom: 0;
  content: "";
  height: 63.043vw;
  position: absolute;
  right: 0px;
  width: 92.029vw;
}

.p-pro .p-pro__ttl {
  display: grid;
  gap: 5.039vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-bottom: 9.077vw;
}

.p-pro .p-pro__ttl span.top {
  color: #171717;
  font-size: 5.314vw;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 1.7272727273;
  margin-inline: auto;
  position: relative;
  text-align: center;
}

.p-pro .p-pro__ttl span.top:before {
  background: url(../images/index/sp_heart.png) no-repeat center center/contain;
  content: "";
  height: 26.087vw;
  left: 50%;
  position: absolute;
  top: -30.435vw;
  transform: translateX(-50%);
  width: 30.435vw;
}

.p-pro .p-pro__ttl span.bottom {
  background: #34B1C5;
  color: #ffffff;
  display: block;
  font-size: 5.797vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.3333333333;
  padding: 3.5vw 0;
  text-align: center;
}

.p-pro .p-pro__txt {
  color: #34B1C5;
  font-size: 5.314vw;
  font-weight: 400;
  letter-spacing: 0.046em;
  line-height: 1.8181818182;
  padding-left: 7.971vw;
  text-align: left;
}

/* strong
-------------------------------------*/
.p-strong {
  margin-bottom: 16.473vw;
}

.p-strong .l-inner.l-strong {
  background: url(../images/index/sp_strong_bg.jpg) no-repeat top center/cover;
  padding: 14.043vw 0px 53.14vw;
  width: 100%;
}

.p-strong .p-strong__en {
  margin-bottom: -5.797vw;
  margin-inline: auto;
  text-align: center;
  width: min(95%, 89.3vw);
}

.p-strong .p-strong__en img {
  height: auto;
  width: 100%;
}

.p-strong .p-strong__ttl {
  margin-bottom: 11.87vw;
  margin-inline: auto;
  text-align: center;
  width: min(95%, 89.3vw);
}

.p-strong .p-strong__ttl img {
  height: auto;
  width: 100%;
}

.p-strong .p-strong__items {
  margin-inline: auto;
  width: min(95%, 89.3vw);
  margin-bottom: 25vw;
}

.p-strong .p-strong__item:nth-child(1),
.p-strong .p-strong__item:nth-child(3) {
  position: static;
}

.p-strong .p-strong__item:nth-child(2) {
  position: static;
  margin-bottom: 15vw;
}

.p-strong .p-strong__contents {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-strong .p-strong__contents.point01 {
  margin-bottom: 14.734vw;
}

.p-strong .p-strong__contents.point03 {
  margin-bottom: 0;
}

.p-strong .p-strong__contents-img {
  margin-bottom: 6.246vw;
  order: 3;
}

.p-strong .p-strong__contents-img img {
  height: auto;
  width: 100%;
}

.p-strong .p-strong__contents-txt {
  display: contents;
}

.p-strong .p-strong__contents-txt.top {
  position: static;
}

.p-strong .p-strong__contents-txt div.en {
  margin-bottom: 1.382vw;
  order: 1;
}

.p-strong .p-strong__contents-txt h3 {
  font-size: 6.28vw;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.7692307692;
  margin-bottom: 4.522vw;
  margin-inline: auto;
  order: 2;
  color: #34B1C5;
  text-align: center;
}

.p-strong .p-strong__contents-txt p {
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 2.2222222222;
  width: min(95%,82.1vw);
  margin-inline: auto;
}

.p-strong .p-strong__contents-txt p span {
  color: #34B1C5;
}

.p-strong .p-strong__contents-txt p span.bold {
  font-weight: 700;
  color: #333333;
}

.p-strong .p-strong__contents-txt p.top {
  margin-bottom: 5.937vw;
  order: 4;
}

.p-strong .p-strong__contents-txt p.center {
  margin-bottom: 4.937vw;
  order: 5;
}

.p-strong .p-strong__contents-txt p.bottom {
  margin-bottom: -7.304vw;
  order: 6;
}

.p-strong .p-strong01_txt {
  margin-bottom: 14.734vw;
  padding-left: 4vw;
}

.p-strong .p-strong01_txt img {
  height: auto;
  width: 73.671vw;
}

.p-strong .p-strong02_txt {
  margin-bottom: 9.662vw;
  position: static;
  padding-left: 4vw;
}

.p-strong .p-strong02_txt img {
  height: auto;
  width: 84.541vw;
}

.p-strong .p-strong02__slider {
  left: -5.314vw;
  margin-inline: auto;
  position: relative;
  transform: none;
  width: 100vw;
}

.p-strong .p-strong02__slider img {
  height: auto;
  width: 100%;
}

.p-strong .p-strong03_txt {
  margin-inline: auto;
  position: relative;
  width: min(95%, 78.5024154589vw);
}

.p-strong .p-strong03_txt:before {
  background: url(../images/index/sp_car.png) no-repeat center center/contain;
  bottom: -18.87vw;
  content: "";
  height: 13.87vw;
  left: -2vw;
  position: absolute;
  width: 17.734vw;
}

.p-strong .p-strong03_txt::after {
  background: url(../images/index/air.png) no-repeat center center/contain;
  content: "";
  height: 15.459vw;
  position: absolute;
  right: -5vw;
  top: -13.662vw;
  width: 15.217vw;
}

.p-strong .p-strong__contents-txt div.en img {
	height: auto;
	width: 24.638vw;
}

/* plus
-------------------------------------*/
.p-plus {
  margin-bottom: 31.575vw;
  position: relative;
}

.p-plus::after {
  background: url(../images/index/sp_yama.png) no-repeat center center/contain;
  bottom: -31.575vw;
  content: "";
  height: 23.43vw;
  left: 0;
  position: absolute;
  width: 51.449vw;
}

.p-plus .l-inner.l-plus {
  margin-inline: auto;
  width: min(95%, 82.1vw);
}

.p-plus .p-plus__contents {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-plus .p-plus__contents-left {
  display: contents;
}

.p-plus .p-plus__contents-left div.icon {
  margin-bottom: 5.797vw;
  order: 1;
  text-align: center;
}

.p-plus .p-plus__contents-left div.icon img {
  height: auto;
  width: 23.188vw;
}

.p-plus .p-plus__contents-left h2 {
  color: #34B1C5;
  font-size: 6.28vw;
  font-weight: 400;
  letter-spacing: 0.11em;
  line-height: 1.6923076923;
  margin-bottom: 4.246vw;
  order: 2;
  text-align: center;
  white-space: nowrap;
}

.p-plus .p-plus__contents-left p.top {
  font-size: 4.348vw;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 2.2222222222;
  margin-bottom: 5.386vw;
  order: 4;
}

.p-plus .p-plus__contents-left p.top span {
  -webkit-text-decoration-color: #34B1C5;
  text-decoration-color: #34B1C5;
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
  text-decoration-thickness: 0.242vw;
  text-underline-offset: 1.932vw;
}

.p-plus .p-plus__contents-left p.center {
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 2.2222222222;
  margin-bottom: 6.213vw;
  order: 5;
}

.p-plus .p-plus__contents-left p.bottom {
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 2.2222222222;
  order: 6;
  position: relative;
}

.p-plus .p-plus__contents-left p.bottom::after {
  background: url(../images/index/sp_a_icon.png) no-repeat center center/contain;
  bottom: -24.845vw;
  content: "";
  height: 25.845vw;
  position: absolute;
  right: -6vw;
  width: 50vw;
}

.p-plus .p-plus__contents-left p.bottom span {
  font-weight: 700;
}

.p-plus .p-plus__contents-right {
  margin-bottom: 6.662vw;
  order: 3;
}

.p-plus .p-plus__contents-right img {
  height: auto;
  width: 100%;
}

/* contact
-------------------------------------*/
.p-contact {
  background: url(../images/index/sp_contact_bg.jpg) no-repeat top center/cover;
  margin-bottom: 15.942vw;
  width: 100%;
}

.p-contact .l-inner.l-contact {
  padding: 19.222vw 0px 13.043vw;
}

.p-contact .p-contact__ttl {
  color: #ffffff;
  font-size: 7.729vw;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.875;
  margin-bottom: 7.111vw;
  text-align: center;
}

.p-contact .p-contact__txt {
  color: #ffffff;
  font-size: 4.348vw;
  font-weight: 400;
  letter-spacing: 0em;
  line-height: 1.8888888889;
  margin-bottom: 15.459vw;
  margin-inline: auto;
  width: min(95%, 89.3vw);
}

.p-contact .p-contact__contents {
  display: grid;
  gap: 7.729vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-bottom: 5.314vw;
  margin-inline: auto;
  place-items: center;
  width: min(95%, 89.3vw);
  background: #34B1C5;
  padding-block: 8vw 9vw;
}

.p-contact .p-contact__contents-left img {
  height: auto;
  width: 81.159vw;
}

.p-contact .p-contact__contents-right img {
  height: auto;
  width: 82.126vw;
}

.p-contact .p-contact__txt02 {
  color: #ffffff;
  font-size: 4.348vw;
  font-weight: 300;
  letter-spacing: 0.1em;
  line-height: 1.8;
  text-align: center;
}

/* voice
-------------------------------------*/
.p-voice {
  margin-bottom: 25.986vw;
}

.p-voice .l-inner.l-voice {
  background: url(../images/index/sp_voice_bg.png) no-repeat top center/cover;
  padding: 10.319vw 0px 21.43vw;
  width: 100%;
  position: relative;
}

.p-voice .l-inner.l-voice::after {
  background: url(../images/index/sp_voice_icon02.png) no-repeat center center/contain;
  bottom: -11.493vw;
  content: "";
  height: 29.227vw;
  position: absolute;
  right: 9.662vw;
  width: 45.169vw;
}

.p-voice .p-voice__en {
  margin-bottom: 5.662vw;
  text-align: center;
}

.p-voice .p-voice__en img {
  height: auto;
  width: 14.01vw;
}

.p-voice .p-voice__ttl {
  font-size: 6.28vw;
  font-weight: 400;
  letter-spacing: 0.16em;
  line-height: 1.5769230769;
  margin-bottom: 8.628vw;
  margin-inline: auto;
  position: relative;
  text-align: center;
  width: 60.386vw;
}

.p-voice .p-voice__ttl::after {
  background: url(../images/index/sp_voice_icon.png) no-repeat center center/contain;
  content: "";
  height: 25.425vw;
  position: absolute;
  right: -11.493vw;
  top: -27.155vw;
  width: 30.121vw;
}

.p-voice .p-voice__items {
  display: grid;
  gap: 12.493vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-inline: auto;
  width: min(95%, 89.3vw);
}

.p-voice .p-voice__item h3 {
  background: #ffffff;
  border-radius: 3.865vw;
  font-size: 5.797vw;
  font-weight: 300;
  letter-spacing: 0.11em;
  line-height: 1.75;
  margin-bottom: 9.039vw;
  padding: 4.556vw 0;
  position: relative;
  text-align: center;
  color: #34B1C5;
}

.p-voice .p-voice__item h3::after {
  background: url(../images/index/voice_arrow.svg) no-repeat center center/contain;
  bottom: -3.865vw;
  content: "";
  height: 6.039vw;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 10.87vw;
}

.p-voice .p-voice__contents {
  display: grid;
  gap: 5.039vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-voice .p-voice__contents-left img {
  height: auto;
  width: 100%;
}

.p-voice .p-voice__contents-right {
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 2.2222222222;
  width: min(95%,82.1vw);
  margin-inline: auto;
}

/* features
-------------------------------------*/
.p-features {
  margin-bottom: 18.324vw;
}

.p-features .l-inner.l-features {
  width: 100%;
}

.p-features .p-features__en {
  margin-bottom: 5.831vw;
  text-align: center;
}

.p-features .p-features__en img {
  height: auto;
  width: 21.043vw;
}

.p-features .p-features__ttl {
  color: #171717;
  font-size: 7.246vw;
  font-weight: 400;
  letter-spacing: 0.12em;
  line-height: 1.2;
  margin-bottom: 0vw;
  text-align: center;
}

.p-features .p-features__img-wrap {
  margin-bottom: 3.831vw;
  padding-left: 8.971vw;
}

.p-features .p-features__img {
  width: 234.179vw;
}

.p-features .p-features__txt {
  color: #171717;
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.4444444444;
  padding-left: 8.971vw;
}

.p-features .p-features__img-wrap::-webkit-scrollbar {
  display: none;
}

#index .scroll-hint.is-right-scrollable.is-left-scrollable {
  background: none;
}

#index .scroll-hint.is-right-scrollable {
  background: none;
}

#index .scroll-hint-shadow-wrap::before {
  background: none;
}

#index .scroll-hint-shadow-wrap::after {
  background: none;
}

/* price
-------------------------------------*/
.p-price {
  margin-bottom: 18vw;
}

.p-price .p-price__en {
  margin-bottom: 4.831vw;
  text-align: center;
}

.p-price .p-price__en img {
  height: auto;
  width: 13.043vw;
}

.p-price .p-price__ttl {
  color: #171717;
  font-size: 7.246vw;
  font-weight: 400;
  letter-spacing: 0.12em;
  line-height: 1.2;
  margin-bottom: 8.662vw;
  text-align: center;
}

.p-price .p-price__info-wrap {
  margin-bottom: 0.831vw;
  padding-left: 8.971vw;
}

.p-price .p-price__info-wrap::-webkit-scrollbar {
  display: none;
}

.p-price .p-price__info {
  border: 0.2vw solid #34B1C5;
  border-collapse: collapse;
  margin-bottom: 5.797vw;
  table-layout: fixed;
  width: 252.7vw;
}

.p-price .p-price__info-row {
  color: #171717;
  text-align: center;
}

.p-price .p-price__info-row:nth-child(1) {
  background: #7CCBD8;
  color: #ffffff;
}

.p-price .p-price__info-row:nth-child(1) th {
  border-right: 0.2vw solid #34B1C5;
  padding: 3.382vw 0;
}

.p-price .p-price__info-row:nth-child(1) th:last-child {
  border-right: none;
}

.p-price .p-price__info-row:nth-child(1) th:nth-child(2) {
  width: 32%;
}

.p-price .p-price__info-row:nth-child(3),
.p-price .p-price__info-row:nth-child(5) {
  background: #F5F5F5;
}

.p-price .p-price__info-row th {
  border-right: 0.2vw solid #34B1C5;
  font-size: 5.314vw;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 1.4545454545;
  margin: 0;
  padding: 6.5vw 0;
}

.p-price .p-price__info-row td {
  border-right: 0.2vw solid #34B1C5;
  font-size: 5.314vw;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.4545454545;
  margin: 0;
}

.p-price .p-price__info-row td:last-child {
  border-right: none;
}

.p-price .p-price__info-row td:empty {
  background-image: linear-gradient(to right bottom, transparent calc(50% - 1px), #F5F5F5 calc(50% - 0.5px), #F5F5F5 calc(50% + 0.5px), transparent calc(50% + 1px), #fff);
  background-repeat: no-repeat;
}

.p-price .p-price__txt {
  color: #171717;
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.4444444444;
  margin-bottom: 1.932vw;
  padding-left: 8.937vw;
}

.p-price .p-price__txt02 {
  color: #171717;
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.4444444444;
  padding-left: 8.937vw;
}

.p-price .p-price__scroll {
  color: #171717;
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.4444444444;
  margin-bottom: 8.454vw;
  padding-left: 8.937vw;
}

/* faq
-------------------------------------*/
.p-faq {
  margin-bottom: 27.662vw;
}

.p-faq .l-inner.l-faq {
  margin-inline: auto;
  width: min(95%, 89.3vw);
}

.p-faq .p-faq__en {
  margin-bottom: 4.831vw;
  text-align: center;
}

.p-faq .p-faq__en img {
  height: auto;
  width: 11.391vw;
}

.p-faq .p-faq__ttl {
  color: #171717;
  font-size: 7.246vw;
  font-weight: 400;
  letter-spacing: 0.12em;
  line-height: 1.2;
  margin-bottom: 7.662vw;
  text-align: center;
}

.p-faq .p-faq__items {
  display: grid;
  gap: 7.246vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-faq summary {
  display: block;
}

.p-faq summary::-webkit-details-marker {
  display: none;
}

.p-faq .p-faq__item {
  border: 0.2vw solid #34B1C5;
  padding-inline: 17.391vw 12.077vw;
}

.p-faq .p-faq__question {
  display: block;
  padding-block: 7.7vw;
  position: relative;
}

.p-faq .p-faq__question::before,
.p-faq .p-faq__question::after {
  background: #34B1C5;
  content: "";
  position: absolute;
  top: 9vw;
  translate: 0 -50%;
}

.p-faq .p-faq__question::before {
  height: 0.483vw;
  right: -8.662vw;
  width: 5.072vw;
}

.p-faq .p-faq__question::after {
  height: 5.072vw;
  right: -6.246vw;
  transition: rotate 0.3s ease;
  width: 0.483vw;
}

.p-faq details[open] .p-faq__question::after {
  rotate: 90deg;
}

.p-faq .p-faq__question-txt {
  color: #34B1C5;
  font-size: 4.831vw;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.5;
  padding-left: 0px;
  position: relative;
}

.p-faq .p-faq__question-txt::before {
  background: url(../images/index/q.svg) no-repeat center center/contain;
  content: "";
  height: 8.454vw;
  left: -11.662vw;
  position: absolute;
  top: -1vw;
  translate: 0 0;
  width: 7.488vw;
}

.p-faq .p-faq__answer {
  padding-block: 0 7.662vw;
}

.p-faq .p-faq__answer-txt {
  color: #171717;
  font-size: 3.86vw;
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 2;
  padding-left: 0px;
  position: relative;
}

.p-faq .p-faq__answer-txt::before {
  background: url(../images/index/a.svg) no-repeat center center/contain;
  content: "";
  height: 8.454vw;
  left: -11.662vw;
  position: absolute;
  top: -1vw;
  width: 7.488vw;
}

/* blog
-------------------------------------*/
.p-blog {
  margin-bottom: 24.493vw;
}

.p-blog .l-inner.l-blog {
  margin-inline: auto;
  width: min(95%, 89.3vw);
}

.p-blog .p-faq__en {
  margin-bottom: 4.831vw;
  text-align: center;
}

.p-blog .p-faq__en img {
  height: auto;
  width: 11.594vw;
}

.p-blog .p-faq__ttl {
  color: #171717;
  font-size: 7.246vw;
  font-weight: 400;
  letter-spacing: 0.12em;
  line-height: 1.2;
  margin-bottom: 9.662vw;
  text-align: center;
}

.p-blog .system-list {
  display: grid;
  gap: 10.87vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-bottom: 12.662vw;
}

.p-blog .system-pic {
  margin-bottom: 4.314vw;
}

.p-blog .system-pic img {
  height: 56.763vw;
  width: 100%;
}

.p-blog .textbx {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.932vw;
  margin-bottom: 2.415vw;
}

.p-blog .system-category span {
  background: #34B1C5;
  color: #ffffff;
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 1.4444444444;
  padding-inline: 3.865vw;
  width: -moz-fit-content;
  width: fit-content;
}

.p-blog .system-day {
  color: #34B1C5;
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 1.4444444444;
}

.p-blog .system-ttl-01 {
  font-size: 4.831vw;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 1.6;
}

.p-blog .p-blog__btn {
  margin-inline: auto;
  text-align: center;
  width: min(95%, 82.1vw);
}

.p-blog .p-blog__btn a {
  border: 0.2vw solid #34B1C5;
  border-radius: 9.42vw;
  color: #34B1C5;
  display: block;
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 1.4444444444;
  padding-block: 5.797vw;
  position: relative;
}

.p-blog .p-blog__btn a::after {
  background: url(../images/index/arrow.svg) no-repeat center center/contain;
  content: "";
  height: 2.174vw;
  position: absolute;
  right: 8.454vw;
  top: 50%;
  transform: translateY(-50%);
  width: 2.657vw;
}

/* soudan
-------------------------------------*/
.p-soudan {
  background: url(../images/index/sp_contact_bg02.jpg) no-repeat top center/cover;
  margin-bottom: -46vw;
}

.p-soudan .l-inner.l-soudan {
  margin-inline: auto;
  padding-block: 10.188vw 110.527vw;
  position: relative;
  width: min(95%, 89.3vw);
}

.p-soudan .l-inner.l-soudan:before {
  background: url(../images/index/sp_contact_left.png) no-repeat center center/contain;
  bottom: 56.585vw;
  content: "";
  height: 47.585vw;
  left: 1vw;
  position: absolute;
  width: 44.686vw;
}

.p-soudan .l-inner.l-soudan::after {
  content: none;
}

.p-soudan .p-soudan__ttl {
  display: grid;
  gap: 4.14vw 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-bottom: 9.87vw;
  place-items: center;
}

.p-soudan .p-soudan__ttl span {
  background: #ffffff;
  color: #34B1C5;
  font-size: 6.28vw;
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 1.5384615385;
  padding: 0vw 3.14vw;
  width: -moz-fit-content;
  width: fit-content;
}

.p-soudan .p-soudan__txt {
  color: #6B6B6B;
  font-size: 4.348vw;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 2.3333333333;
  text-align: center;
}

.p-soudan .p-soudan__txt span {
  display: block;
  font-size: 3.865vw;
  font-weight: 500;
  letter-spacing: 0em;
  line-height: 2.625;
  padding-block: 3vw 0;
}
  

}

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

.p-faq .p-faq__question:hover {
  cursor: pointer;
}

}

