﻿@charset "UTF-8";

/* ----------------------------------
 レイアウト
---------------------------------- */
.top_layout_1_ div.wrapper_ { padding: 0; margin: 0;}
.top_layout_1_ div.container_ div.contents_,
.top_layout_1_ div.container_ div.contents_ div.mainframe_ { max-width: unset; min-width: unset; padding: 0; margin: 0;}
.top_layout_1_ div.container_ div.contents_ div.mainframe_ .topiclist_ { width: 100%; max-width: unset; margin: 0;}
#footer { margin-top: 0;}

/* 使用しないブロックの非表示化 */
div.mainframe_ > div.maker_,
div.mainframe_ > div.category_list_title_,
div.mainframe_ > div.CategoryStyleP_,
div.mainframe_ > div.event_,
div.wrapper_ > div#goods_search_box,
#slide-banner,
#block_of_cart_dest_,
#block_of_contact_ { display: none;}

/* ----------------------------------
 汎用パーツ
---------------------------------- */
.top-contents-frame { padding: 80px 40px; background: #FFF;}
.top-contents-inner { max-width: 1120px; margin: 0 auto;}

@media (max-width: 768px) {
	.top-contents-frame { padding: 40px 16px;}
}

.top-contents-title { padding: 0; margin: 0 0 30px; border: none; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 10px;}
.top-contents-title .ttl { font-size: 24px; font-weight: 700; text-align: center; color: var(--site-color-deepblue);}
.top-contents-title .sub { font-size: 10px; font-weight: 400; text-align: center; letter-spacing: 0.25em; color: var(--site-color-sky);}
.top-contents-title-text { font-size: 16px; text-align: center; color: var(--site-color-gray);}

@media (max-width: 768px) {
	.top-contents-title { margin: 0 0 20px;}
	.top-contents-title .ttl { font-size: 18px;}
	.top-contents-title .sub { font-size:  8px;}
	.top-contents-title-text { font-size: 14px;}
}

.top-contents-list { display: flex; flex-wrap: wrap; gap: 16px;}
.top-contents-list.column3 li { width: calc((100% - 16px * 2)/3);}
.top-contents-list li { padding: 24px; border-radius: var(--radius-01);}
.top-contents-list li:has(a) { padding: 0; display: block;}
.top-contents-list li a { padding: 24px; border-radius: var(--radius-01);}
.top-contents-list li .image { width: 100%; padding: 100% 0 0; margin: 0 auto 20px; position: relative;}
.top-contents-list li .img-inner { display: flex; justify-content: center; align-items: center; position: absolute; top: 0; left: 0; right: 0; bottom: 0;}
.top-contents-list li .image img { width: 100%; vertical-align: top;}
.top-contents-list li .step { margin: 0 0 10px; display: flex; justify-content: center; align-items: center;}
.top-contents-list li .step .num {
  padding: 2px 10px;
	border-radius: 20px;
  font-size: 12px;
  color: var(--site-color-blue);
  display: flex;
  justify-content: center;
  align-items: center;
	background: var(--site-bg-dark);
}
.top-contents-list li .name { margin: 0 0 20px; font-size: 20px; font-weight: 700; text-align: center; color: var(--site-color-black);}
.top-contents-list li .text { font-size: 13px; font-weight: 400; text-align: left; color: var(--site-color-dark);}

@media (max-width: 768px) {
	.top-contents-list li { padding: 20px;}
	.top-contents-list li a { padding: 20px;}
	.top-contents-list li .name { margin: 0 0 12px; font-size: 15px;}
	.top-contents-list li .text { font-size: 12px;}
}

/* ----------------------------------
 メインビジュアル
---------------------------------- */
#sec_mv_visual { text-align: center; overflow: hidden;}
#sec_mv_visual img { vertical-align: top;}

/* ----------------------------------
 メインビジュアル[スライダー版]
---------------------------------- */
#sec_mv { padding: 16px 0 0; background: #FFF; overflow: hidden;}
#sec_mv_slider_warp { max-width: 1200px; padding: 0 0 34px; margin: 0 auto; overflow: visible;}
#sec_mv_slider_list li { max-width: 1200px;}
#sec_mv_slider_list li img { vertical-align: top;}
#sec_mv .swiper-button-disabled { display: none !important;}
#sec_mv .swiper-button-prev,
#sec_mv .swiper-button-next { width: 48px; height: 48px; border-radius: 48px; background: var(--site-color-blue); position: absolute; transition: var(--transition); cursor: pointer;}
#sec_mv .swiper-button-prev::after,
#sec_mv .swiper-button-next::after {
  content: "";
  width: 12px;
  height: 12px;
  border-right: #FFF 2px solid;
  border-top: #FFF 2px solid;
  position: absolute;
  left: calc(50% - 10px);
  top: calc(50% - 2px);
  display: block;
  transform: rotate(45deg);
}
#sec_mv .swiper-button-prev:hover,
#sec_mv .swiper-button-next:hover { opacity: var(--opacity);}
#sec_mv .swiper-button-prev { left: -24px; transform: rotate(180deg);}
#sec_mv .swiper-button-next { right: -24px;}
#sec_mv .swiper-pagination-bullets { width: auto; padding: 0; display: flex; gap: 4px; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);}
#sec_mv span.swiper-pagination-bullet {
  width: 24px;
  height: 2px;
  padding: 0;
	margin: 0;
  border: none;
	border-radius: 0;
  font-size: 0;
  display: flex;
	justify-content: center;
	align-items: center;
  background: #DDE1E6;
	opacity: 1.0;
	cursor: pointer;
}
#sec_mv span.swiper-pagination-bullet.swiper-pagination-bullet-active { background: var(--site-color-blue);}

@media (max-width: 768px) {
	#sec_mv { padding: 0;}
	#sec_mv_slider_warp { padding: 0;}
	#sec_mv .swiper-button-prev,
	#sec_mv .swiper-button-next { display: none;}
	#sec_mv .swiper-pagination-bullets { bottom: 15px;}
}

/* ----------------------------------
 サービス紹介
---------------------------------- */
#sec_service_intro .top-contents-inner { max-width: 1420px; }
#sec_service_intro .top-contents-inner-box + .top-contents-inner-box { margin-top: 48px;}
#sec_service_intro .sub-box-title { margin: 0 0 16px; font-size: 20px; font-weight: 700; color: var(--site-color-black);}
#sec_service_intro .sub-box-title-wrap { margin: 0 0 16px; position: relative;}
#sec_service_intro .sub-box-title-wrap .sub-box-title { margin: 0;}
#sec_service_intro .sub-box-title-wrap .tip { margin-top: 8px; font-size: 11px; font-weight: 400; color: var(--site-color-dark);}
#sec_service_intro .sub-box-title-wrap .tip.indent { padding: 0 0 0 1em; text-indent: -1em;}

@media (max-width: 768px) {
	#sec_service_intro .top-contents-inner-box + .top-contents-inner-box { margin-top: 32px;}
	#sec_service_intro .sub-box-title { padding: 0 0 0 24px; font-size: 14px; line-height: 1.0; display: flex; align-items: center; gap: 5px; position: relative;}
	#sec_service_intro .sub-box-title::before {
		content: '';
		width: 14px;
		display: block;
		background: linear-gradient(90deg, #19AAF1 0%, rgba(54, 225, 191, 0) 100%);
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
	}
}

#sec_service_intro .top-service-list { display: flex; flex-wrap: wrap; gap: 32px;}
#sec_service_intro .top-service-list li { width: calc((100% - 32px * 2)/3);}
#sec_service_intro .top-service-list li a {
  height: 100%;
  padding: 20px;
  border-radius: var(--radius-03);
  text-decoration: none;
  display: flex;
  flex-direction: column;
  background: var(--site-bg-dark);
}
#sec_service_intro .top-service-list li .image { width: 100%; margin: 0 auto 20px; position: relative;}
#sec_service_intro .top-service-list li .image img { width: 100%; vertical-align: top;}
#sec_service_intro .top-service-list li .desc { padding: 0 30px 0 0; display: flex; align-items: center; gap: 16px; position: relative; flex: 1;}
#sec_service_intro .top-service-list li .desc::after { 
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 20px;
	line-height: 1.0;
	font-size: 8px;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--site-color-blue);
	background-image: var(--bg-image-arrow-white);
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: calc(50% - 10px);
	right: 0;
}
#sec_service_intro .top-service-list li .name { font-size: 16px; font-weight: 700; word-break: keep-all; white-space: nowrap; color: var(--site-color-black);}
#sec_service_intro .top-service-list li .tip { font-size: 11px; font-weight: 400; color: var(--site-color-dark);}
#sec_service_intro .top-service-list li .tip.indent { padding: 0 0 0 1em; text-indent: -1em;}

@media (max-width: 1200px) {
	#sec_service_intro .top-service-list li .desc { padding: 0; margin: auto 0; flex-direction: column; gap: 10px;}
	#sec_service_intro .top-service-list li .desc::after { width: 14px; height: 14px; -webkit-background-size: 6px auto; background-size: 6px auto; top: 2px;}
	#sec_service_intro .top-service-list li .name { width: 100%; padding: 0 20px 0 0; font-size: 12px; font-weight: 400; text-align: left; word-break: break-all; white-space: inherit;}
	#sec_service_intro .top-service-list li .tip { font-size: 10px;}
}
@media (max-width: 768px) {
	#sec_service_intro .top-service-list { gap: 4px;}
	#sec_service_intro .top-service-list li { width: calc((100% - 4px * 2)/3);}
	#sec_service_intro .top-service-list li a { padding: 10px; display: flex; flex-direction: column;}
	#sec_service_intro .top-service-list li .image { margin: 0 auto 10px;}
	#sec_service_intro .top-service-list li .image img { border-radius: var(--radius-03);}
}

#sec_service_intro .top-service-list + .top-contents-txt-list { margin-top: 16px;}
#sec_service_intro .top-contents-txt-list { display: flex; flex-wrap: wrap; gap: 16px 32px;}
#sec_service_intro .top-contents-txt-list li { width: calc((100% - 32px * 2)/3);}
#sec_service_intro .top-contents-txt-list li.l { width: calc((100% - 32px)/2);}
#sec_service_intro .top-contents-txt-list li a {
	min-height: 56px;
  padding: 8px 40px 8px 16px;
  border-radius: var(--radius-03);
	font-size: 14px;
	font-weight: 400;
  text-decoration: none;
	color: var(--site-color-black);
  display: flex;
	align-items: center;
	gap: 16px;
  background: var(--site-bg-dark);
	position: relative;
}
#sec_service_intro .top-contents-txt-list li a::after { 
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 20px;
	line-height: 1.0;
	font-size: 8px;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--site-color-blue);
	background-image: var(--bg-image-arrow-white);
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: calc(50% - 10px);
	right: 15px;
}
#sec_service_intro .top-contents-txt-list li .name { font-size: 14px; font-weight: 400; word-break: keep-all; white-space: nowrap;}
#sec_service_intro .top-contents-txt-list li .tip { padding: 0 0 0 1em; font-size: 11px; font-weight: 400; text-indent: -1em; color: var(--site-color-dark);}

@media (max-width: 1200px) {
	#sec_service_intro .top-contents-txt-list li a {
	  height: 100%;
	  padding: 10px 30px 10px 10px;
	  font-size: 12px;
	  font-weight: 400;
	  flex-direction: column;
	  justify-content: center;
	  gap: 3px;
	}
	#sec_service_intro .top-contents-txt-list li a::after { width: 14px; height: 14px; -webkit-background-size: 6px auto; background-size: 6px auto; top: calc(50% - 7px); right: 10px;}
	#sec_service_intro .top-contents-txt-list li .name { width: 100%; font-size: 12px; text-align: left; word-break: break-all; white-space: inherit;}
	#sec_service_intro .top-contents-txt-list li .tip { font-size: 10px;}
}
@media (max-width: 768px) {
	#sec_service_intro .top-service-list + .top-contents-txt-list { margin-top: 4px;}
	#sec_service_intro .top-contents-txt-list { gap: 4px;}
	#sec_service_intro .top-contents-txt-list li { width: calc(50% - 2px) !important;}
}

#sec_service_intro .for-quotation-button { margin: 32px auto 0; display: flex; justify-content: center; align-items: center;}
#sec_service_intro .for-quotation-button a { 
	width: 360px;
	height: 56px;
	margin: 0 auto;
	border-radius: var(--radius-02);
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	color: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
	background: var(--site-color-sky);
	box-shadow: 0 0 16px 0 rgba(57, 190, 255, 0.3);
}
#sec_service_intro .for-quotation-button a::after { 
	content: '';
	width: 14px;
	height: 14px;
	border-radius: 14px;
	line-height: 1.0;
	font-size: 8px;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #FFF;
	background-image: var(--bg-image-arrow-sky);
	-webkit-background-size: 8px auto;
	background-size: 8px auto;
	background-position: center;
	background-repeat: no-repeat;
}

@media (max-width: 768px) {
	#sec_service_intro .for-quotation-button { margin: 20px auto 0;}
	#sec_service_intro .for-quotation-button a { width: 100%; font-size: 13px;}
}

/* ----------------------------------
 サービス情報
---------------------------------- */
#sec_service_info { background: var(--site-color-blue);}
#sec_service_info .top-contents-title { color: #FFF;}
#sec_service_info .top-contents-title .ttl { color: #FFF;}
#sec_service_info .top-contents-title .sub { color: #FFF;}
#sec_service_info .service-list { display: flex; flex-wrap: wrap; gap: 12px;}
#sec_service_info .service-list li { width: calc((100% - 12px)/2);}
#sec_service_info .service-list li a {
  width: 100%;
  min-height: 56px;
	padding: 0 16px;
	border-radius: var(--radius-02);
  font-size: 16px;
  font-weight: 700;
	text-decoration: none;
  color: var(--site-color-blue);
  display: flex;
  align-items: center;
	gap: 0 5px;
	background: #FFF;
	position: relative;
}
#sec_service_info .service-list li a::before { content: ''; width: 24px; height: 24px; display: inline-block; -webkit-background-size: cover; background-size: cover;}
#sec_service_info .service-list li a::after { 
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 20px;
	line-height: 1.0;
	font-size: 8px;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--site-color-blue);
	background-image: var(--bg-image-arrow-white);
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: calc(50% - 10px);
	right: 16px;
}
#sec_service_info .service-list li.service-area a::before { background-image: url("../../img/usr/icon/ico_area.png");}
#sec_service_info .service-list li.service-price a::before { background-image: url("../../img/usr/icon/ico_price.png");}

@media (max-width: 768px) {
	#sec_service_info.top-contents-frame { padding: 76px 16px;}
	#sec_service_info .service-list { flex-direction: column;}
	#sec_service_info .service-list li { width: 100%;}
}

/* ----------------------------------
 ご利用の流れ
---------------------------------- */
#sec_flow { background: var(--site-bg-gray);}
#sec_flow .top-contents-title { margin: 0 0 20px;}
#sec_flow .top-contents-title-text { margin: 0 0 30px;}
#sec_flow .top-contents-list li { height: auto; padding: 32px 24px; background: #FFF;}
#sec_flow .top-contents-list li .image { width: 80%; padding: 80% 0 0; overflow: hidden;}
#sec_flow .top-contents-list li .name { margin-bottom: 0; font-size: 18px; color: var(--site-color-blue);}
#sec_flow .top-contents-list li .memo { margin: 5px 0 0; font-size: 13px; font-weight: 400; text-align: center; color: var(--site-color-dark);}

#sec_flow #sec_flow_slider_warp .top-contents-list { flex-wrap: nowrap; gap: 0;}

@media (max-width: 768px) {
	#sec_flow { overflow: hidden;}
	#sec_flow #sec_flow_slider_warp { width: 90%; padding: 0 0 24px; margin: 0 auto; overflow: visible; position: relative;}
	#sec_flow .top-contents-list li { width: 100%; padding: 20px;}
	#sec_flow .top-contents-list li .name { color: var(--site-color-black);}
	#sec_flow .top-contents-list li .step .num { min-height: 30px;}
	#sec_flow .swiper-pagination-bullets { width: auto; padding: 0; display: flex; gap: 4px; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);}
	#sec_flow span.swiper-pagination-bullet {
		width: 24px;
		height: 2px;
		padding: 0;
		margin: 0;
		border: none;
		border-radius: 0;
		font-size: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		background: #DDE1E6;
		opacity: 1.0;
		cursor: pointer;
	}
	#sec_flow span.swiper-pagination-bullet.swiper-pagination-bullet-active { background: var(--site-color-blue);}
}

/* ----------------------------------
 こんな方におすすめ
---------------------------------- */
#sec_foryou .top-contents-list li { padding: 32px 24px; background: var(--site-bg-gray);}
#sec_foryou .top-contents-list li .image { width: 80%; padding: 80% 0 0; border-radius: 50%; overflow: hidden;}
#sec_foryou .top-contents-list li .image img { border-radius: var(--radius-02);}
#sec_foryou .top-contents-list li .name { font-size: 19px;}

@media (max-width: 768px) {
	#sec_foryou .top-contents-list { display: flex; flex-direction: column; gap: 12px;}
	#sec_foryou .top-contents-list li { width: 100%; padding: 20px; display: flex; align-items: center; gap: 14px;}
	#sec_foryou .top-contents-list li .image { width: calc(45% - 14px); padding-top: calc(45% - 14px); margin: auto 0;}
	#sec_foryou .top-contents-list li .desc  { width: 55%;}
	#sec_foryou .top-contents-list li .name  { font-size: 15px; text-align: left;}
}

/* ----------------------------------
 選ばれる理由
---------------------------------- */
#sec_reason { background: var(--site-bg-gray);}
#sec_reason .top-contents-list li { background: #FFF;}

@media (max-width: 768px) {
	#sec_reason .top-contents-list { display: flex; flex-direction: column; gap: 12px;}
	#sec_reason .top-contents-list li { width: 100%; padding: 20px; display: flex; align-items: center; gap: 14px;}
	#sec_reason .top-contents-list li .image { width: calc(45% - 14px); padding-top: calc(45% - 14px); margin: auto 0;}
	#sec_reason .top-contents-list li .desc  { width: 55%;}
	#sec_reason .top-contents-list li .name  { font-size: 15px;}
}

/* ----------------------------------
 お客様の声
---------------------------------- */
#sec_voice .top-contents-inner { max-width: 1420px; overflow: hidden;}
#sec_voice .revico-common-background-style { background: transparent;}
#sec_voice .revico-multicomment-top .revico-multicomment-inner { max-width: 100%;}
#sec_voice .revico-multicomment-top .revico-comment-main { max-width: 100%; display: flex; flex-wrap: nowrap; gap: 12px; overflow-x: auto;}
#sec_voice .revico-multicomment-top .revico-comment-main .revico-review-comment-row-wrapper {
	min-width: 330px;
	width: 330px;
	padding: 0;
	margin: 0;
	border-radius: var(--radius-01);
	background: var(--site-bg-gray);
	overflow: hidden;
}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail { padding: 24px;}
#sec_voice .revico-multicomment-top .revico-logo { display: none !important;}
#sec_voice .revico-multicomment-top .revico-comment-header { display: none !important;}
#sec_voice .revico-multicomment-top .revico-comment-footer { display: none !important;}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--title .revico-review-comment-detail--title-review-title { font-size: 17px; font-weight: 700; color: #0F2742;}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--title { margin: 0 0 16px;}
#sec_voice .revico-multicomment-top .revico-review-comment-detail--comment { margin: 0 0 16px;}
#sec_voice .revico-multicomment-top .revico-review-comment-detail--comment .revico-review-comment-detail--comment--content { font-size: 12px; font-weight: 400; color: var(--site-color-dark);}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--addition * { font-size: 12px; font-weight: 400; color: var(--site-color-dark);}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail a.revicocustom-link-userreview { display: block;}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail a.revicocustom-link-userreview:hover { border: none;}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--addition .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-reviewer-profile { margin: 0;}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--addition > div { width: 100%;}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--addition .revico-review-comment-detail--addition-reviewer .revico-review-comment-detail--addition-reviewer-profile .revico-review-comment-detail--addition-reviewer-profile--attribute { width: 100%;}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--action { justify-content: flex-start;}
#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--action-like { margin-left: 10px;}
#sec_voice .revico-multicomment-top .revico-starability-result { background-image: url("../../img/usr/user_review/star_yellow.png") !important;}

@media (max-width: 768px) {
	#sec_voice .top-contents-inner { max-width: calc(100% + 16px); width: calc(100% + 16px); margin: 0 -16px 0 0; overflow: visible;}
	#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail { padding: 16px;}
	#sec_voice .revico-multicomment-top .revico-comment-main .revico-review-comment-row-wrapper { min-width: 280px; width: 280px;}
	#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--title .revico-review-comment-detail--title-review-title { font-size: 15px;}
	#sec_voice .revico-multicomment-top .revico-review-comment-detail--comment .revico-review-comment-detail--comment--content { font-size: 11px;}
	#sec_voice .revico-multicomment-top .revico-review-comment-row-wrapper .revico-review-comment-row .revico-review-comment-detail .revico-review-comment-detail--addition * { font-size: 11px;}	
}

#sec_review_slider_warp.swiper .swiper-button-prev,
#sec_review_slider_warp.swiper .swiper-button-next { 
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 20px;
	line-height: 1.0;
	font-size: 8px;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--site-color-blue);
	background-image: var(--bg-image-arrow-white);
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: calc(50% - 10px);
	right: 5px;
}
#sec_review_slider_warp.swiper .swiper-button-prev { transform: rotate(180deg); left: 5px; right: auto;}
#sec_review_slider_warp.swiper .swiper-button-prev::after,
#sec_review_slider_warp.swiper .swiper-button-next::after { display: none;}
#sec_review_slider_warp.swiper .swiper-pagination { display: none;}

#sec_voice_more_btn { margin: 48px 0 0; display: flex; justify-content: center; align-items: center;}
#sec_voice_more_btn .more-btn a {
  width: 360px;
  height: 56px;
	padding: 0 0 0 20px;
  margin: 0 auto;
	border: var(--border-solid-blue);
	border-radius: var(--radius-03);
	font-size: 16px;
	text-align: center;
	text-decoration: none;
	color: var(--site-color-blue);
  display: flex;
  justify-content: center;
  align-items: center;
	gap: 12px;
	background: transparent;
	cursor: pointer;
	transition: var(--transition);
}
#sec_voice_more_btn .more-btn a:hover { opacity: var(--opacity);}
#sec_voice_more_btn .more-btn a::after { 
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 20px;
	line-height: 1.0;
	font-size: 8px;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: transparent;
	background-image: var(--bg-image-arrow-blue);
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	background-position: center;
	background-repeat: no-repeat;
}

@media (max-width: 768px) {
	#sec_voice_more_btn { width: 100%; margin-top: 24px;}
}

/* ----------------------------------
 SP FixedFooter
---------------------------------- */
body.popup-notice-fixed:has(#footer_bottom .popup-notice.is-open) #site_header { z-index: 50;}
body.popup-notice-fixed:has(#footer_bottom .popup-notice.is-open) #for_pagetop { z-index: 50;}

#footer_bottom { height: 60px; display: none;}
#footer_bottom .footer-bottom-inner { height: 60px; padding: 10px; background: var(--site-color-darkblue); position: fixed; left: 0; right: 0; bottom: 0;}
#footer_bottom .footer-bottom-inner .menu-list { display: flex; gap: 10px;}
#footer_bottom .footer-bottom-inner .menu-list > li { width: calc(50% - 5px);}
#footer_bottom .footer-bottom-inner .menu-list > li p.switch { padding: 0; margin: 0; border: none; cursor: pointer;}
#footer_bottom .footer-bottom-inner .menu-list > li > a,
#footer_bottom .footer-bottom-inner .menu-list li .switch span {
	width: 100%;
  height: 40px;
  border-radius: var(--radius-02);
	font-size: 12px;
	text-decoration: none;
	color: var(--site-color-blue);
  display: flex;
  justify-content: center;
  align-items: center;
	gap: 4px;
  background: #FFF;
	cursor: pointer;
}
#footer_bottom .footer-bottom-inner .menu-list li.f-area a::before,
#footer_bottom .footer-bottom-inner .menu-list li.f-category .switch span::before {
	content: '';
	width: 20px;
	height: 20px;
	line-height: 1.0;
	font-size: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: transparent;
	background-image: url("../../img/usr/icon/ico_category.png");
	-webkit-background-size: 20px auto;
	background-size: 20px auto;
	background-position: center;
	background-repeat: no-repeat;
}
#footer_bottom .footer-bottom-inner .menu-list li.f-area a::before {
	background-image: url("../../img/usr/icon/ico_area.png");
}
#footer_bottom .popup-notice-pop-head { padding: 20px; background: #FFF;}
#footer_bottom div.popup-notice-pop-body { padding: 0 16px 20px;}
#footer_bottom .top-service-list { display: flex; flex-direction: column; gap: 4px;}
#footer_bottom .top-service-list li { width: 100%;}
#footer_bottom .top-service-list li > a {
  height: 100%;
  padding: 12px 36px 12px 12px;
  border-radius: var(--radius-03);
  text-decoration: none;
  display: flex;
	justify-content: space-between;
	align-items: center;
  background: var(--site-bg-dark);
	position: relative;
}
#footer_bottom .top-service-list li .image { width: 120px; margin: 0; position: relative;}
#footer_bottom .top-service-list li .image img { width: 100%; border-radius: var(--radius-03); vertical-align: top;}
#footer_bottom .top-service-list li .desc { width: calc(100% - 140px);}
#footer_bottom .top-service-list li .name { font-size: 14px; font-weight: 400; color: var(--site-color-black); position: relative;}
#footer_bottom .top-service-list li > a::after { 
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 20px;
	line-height: 1.0;
	font-size: 8px;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--site-color-blue);
	background-image: var(--bg-image-arrow-white);
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: calc(50% - 10px);
	right: 12px;
}
#footer_bottom .pop-close {
  width: 85px;
  height: 36px;
	margin: 20px auto 0;
	border: var(--border-solid-blue);
	border-radius: var(--radius-03);
	font-size: 11px;
	color: var(--site-color-blue);
  display: flex;
  justify-content: center;
  align-items: center;
	cursor: pointer;
}

@media (max-width: 768px) {
	#footer_bottom { display: block; position: relative; z-index: 100;}
	#footer_bottom .top-service-list li .desc { margin: auto 0;}
	body:has(#footer_bottom) #for_pagetop { bottom: 70px;}
}
