body:before {
	display: none;
}

body {
	background-color: #f8f8f8;
}

.back_wrapper {
	width: 750px;
	margin: 0 auto;
	background-color: #fff;
}

@media screen and (max-width: 750px) {
	.back_wrapper {
		width: 100%;
	}
}

.slick-slide {
	margin-left: 10px;
}

.slick-slide {
	margin-left: 8vw;
}
.slick-list {
	margin-left: -8vw;
}

.bx-wrapper .bx-viewport {
	padding-bottom: 5px;
}
.bx-wrapper li {
	margin-left: 5px;
}

img {
	max-width: 100%;
}
.content_box {
	width: 90%;
	max-width: 1180px;
	margin: 0 auto;
	position: relative;
}

.riyouritu{
	max-width: 90%;
	margin-left: 20px;
}
@media screen and (max-width: 750px) {
	.riyouritu{
	max-width: 90%;
	}
}

.wedding_news{
	margin-top: 30px;
}

.wedding_news img{
	display: block;
    margin: 0 auto;
	width: 50%;
	padding-right: 30px;
}

.ranking_btn {
	border-radius: 100px;
	border: 1px solid #fff;
    background: #d6939d;
    width: 80%;
    text-align: center;
    margin: 5px auto 0 auto;
	transition: .4s;
}

.ranking_btn:hover{
	border-radius: 100px;
	border: 1px solid #d6939d;
    background: #fff;
	transition: .4s;
}

.ranking_btn:hover a{
	color: #474244 !important;
	transition: .4s;
}

.wedding_news .ranking_btn:hover a.ranking::after {
	filter: invert(10) contrast(10);
	transition: .4s;
}

.ranking {
	position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1.4em 0em;
    font-size: medium;
}
.ranking span{
	font-size: medium;
	line-height: 22px;
	padding-top: 4px;

}
.ranking_btn a{
	color: #fff;
}

@media screen and (max-width: 750px) {
	.ranking span{
		font-size: larger;
		line-height: 35px;
	}
}

.wedding_news .ranking_btn a.ranking::after {
	content: "";
    display: block;
	position: absolute;
	top: 45%;
	right: 4%;
    width: 1em;
    max-width: 7px;
    padding-top: 10px;
    background: url(../images/top/2021/ico_btn1.png) center center no-repeat;
    background-size: contain;
	transition: .4s;
}

#top_page_content .btn_area {
}
#top_page_content .btn_area ul {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 35.6%;
	margin: 0 auto;
}
#top_page_content .btn_area ul li {
	width: 100%;
	margin-top: 4%;
}
#top_page_content .btn_area ul li a {
	/* background: #ff5e69; */
	background: #06c655;
	border-radius: 100px;
	/* border: 1px solid #ff5e69; */
	border: 1px solid #06c655;
	color: #fff !important;
	text-align: center;
	display: block;
	padding: 1.4em 0em;
	line-height: 1.5em;
	height: auto;
	width: 100%;
	position: relative;
}
#top_page_content .btn_area ul li a::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	width: 1em;
	max-width: 7px;
	height: 0px;
	padding-top: 10px;
	background: url(../images/top/2021/ico_btn1.png) center center no-repeat;
	background-size: contain;
}
#top_page_content .btn_area ul li a:hover {
	background: #fff;
	color: #06c655 !important;
}
#top_page_content .btn_area ul li a.line_btn {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 1em 0;
}
#top_page_content .btn_area ul li a.line_btn img {
	display: inline-block;
	width: fit-content;
	max-width: 80px;
}
#top_page_content .btn_area ul li a.line_btn span {
	display: inline-block;
}

#top_page_content .btn_area ul li.btn2 a {
	color: #000000 !important;
	border: 1px solid #000000;
	background: #fff;
}
#top_page_content .btn_area ul li.btn2 a::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	width: 1em;
	max-width: 7px;
	height: 0px;
	padding-top: 10px;
	background: url(../images/top/2021/ico_btn2.png) center center no-repeat;
	background-size: contain;
}
#top_page_content .btn_area ul li.btn2 a:hover {
	background: #000;
	color: #fff !important;
}

#top_page_content .btn_area ul {
	width: 90%;
}
#top_page_content .btn_area ul li {
	width: 100%;
	margin-top: 6%;
}

#top_page_content .top_text_box {
	margin: 40px 0 0;
}

#top_page_content .top_text_box p.ttl {
	font-size: 2.31vw;
	text-align: center;
	color: #d8728a;
	line-height: 1.2;
	font-weight: bold;
	margin-bottom: 12px;
}
@media screen and (max-width: 900px) {
	#top_page_content .top_text_box p.ttl {
		font-size: 4.31vw;
	}
}

#top_page_content .top_text_box p.txt {
	text-align: center;
}

#top_page_content .top_text_box {
	margin: 40px 0 0;
}

/*#top_page_content .top_text_box p.ttl{
    font-size:4vw;
}*/

#top_page_content .top_text_box p.txt {
	text-align: left;
	line-height: 2.2;
	padding-bottom: 70px;
}

#top_page_content .top_box {
	max-width: 1700px;
	margin: 0 auto;
	position: relative;
	height: 38vw;
}
#top_page_content .top_box .ttl_box {
}
#top_page_content .top_box .ttl_box h2 {
	position: absolute;
	top: 0%;
	right: 0%;
	margin-top: -0.6em;
	margin-right: 1em;
}
#top_page_content .top_box.left .ttl_box h2 {
	right: auto;
	left: 0%;
	margin-left: 1em;
	margin-right: 0px;
}
#top_page_content .top_box .details_box {
	position: absolute;
	bottom: 0px;
	right: 0px;
	width: 100%;
}
#top_page_content .top_box .details_box .details {
	background: #fff;
	width: 44.4%;
	position: absolute;
	bottom: -5px;
	right: 0%;
	padding-top: 5.6em;
	padding-left: 6%;
}
#top_page_content .top_box.left .details_box .details {
	right: auto;
	left: 0%;
	padding-left: 0%;
	padding-right: 6%;
}
#top_page_content .top_box .details_box .details .sub {
	color: #d7d7d7;
	line-height: 1.5em;
	margin-bottom: 1em;
}
#top_page_content .top_box .details_box .details .ttl {
	color: #060606;
	line-height: 1.5em;
	padding-bottom: 0.7em;
	margin-bottom: 0.7em;
	position: relative;
}
#top_page_content .top_box .details_box .details .ttl::before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0px;
	left: -1em;
	width: 1.6em;
	height: 3px;
	background: #a68b62;
}

/*@media screen and (min-width: 1300px) {
    #top_page_content .top_box{
        height: 494px;
    }
}*/

@media screen and (max-width: 750px) {
	#top_page_content .top_box {
		height: 62.3vw;
	}
}

#top_page_content .top_box .ttl_box h2 {
	margin-right: 0px;
	margin-top: -0.5em;
}
#top_page_content .top_box .details_box .details {
	padding-top: 4.9em;
	padding-left: 11.3em;
	box-sizing: border-box;
	width: 64.5%;
}
#top_page_content .top_box.left .ttl_box h2 {
	margin-left: 0px;
}

/* ==========================================================================
   page top - hero
   ========================================================================== */
#top_page_content {
}
#top_page_content #hero {
	background: url(../images/top/2025/hero_bg.png) top center no-repeat;
	max-width: 1700px;
	margin: 0 auto;
}
#add_bg {
	background: url(../images/top/2025/hero_bg.png) top center no-repeat;
	max-width: 1700px;
	margin: 0 auto;
}
#top_page_content #hero .hero_content {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: flex-end;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
#top_page_content #hero .hero_details {
	width: 40.7%;
	position: relative;
}

#top_page_content #hero .hero_details .top_images {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

#top_page_content #hero .hero_details .top_images .line10 {
	margin-right: 2%;
	margin-bottom: 2.5%;
}

#top_page_content #hero .hero_details h1 {
	padding-top: 6%;
	width: 42.1%;
	margin: 0 auto;
}
#top_page_content #hero .hero_details h2 {
	width: 90%;
	text-align: center;
	margin: 0 auto;
	margin-top: 12%;
}

#top_page_content #hero .hero_details .ttl_area ul {
	margin: 0 auto;
	width: 90%;
	margin-top: 7%;
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
#top_page_content #hero .hero_details .ttl_area ul li {
	width: 29%;
	padding: 1.5%;
}
.top_2022 #hero .hero_details .ttl_area ul li img {
	width: 160px;
	max-width: 100%;
}
#top_page_content #hero .hero_details .btn_area {
	padding-bottom: 19%;
	background-color: #fff;
}
/* #top_page_content #hero .hero_details .btn_area ul{
    width: 80%;
} */

#top_page_content #hero .hero_img {
	margin-left: 1%;
	position: relative;
	width: 31.5%;
}
#top_page_content #hero .hero_line10 {
	position: relative;
}
#top_page_content #hero .scroll {
	position: absolute;
	/*bottom: 0px;*/
	bottom: -30px;
	left: 0px;
	width: 1.9%;
}

#top_page_content #hero {
	background: url(../images/top/2025/hero_bg_sp.png) top center no-repeat;
	background-size: 110%;
	/*background-position: 40%;
     background-size: 132%;
    background-position: 69% -196%; */
	/* background-position: 70%; */
}
#top_page_content #hero .content_box {
	width: 100%;
}
#top_page_content #hero .hero_content {
	flex-direction: column-reverse;
	align-items: flex-start;
	position: relative;
}
#top_page_content #hero .hero_details {
	width: 100%;
}
#top_page_content #hero .hero_img {
	width: 49.5%;
	position: absolute;
	left: 5%;
	top: 10%;
	margin: 0px;
}
#top_page_content #hero .hero_details .ttl_area {
	background: #fff;
	margin-top: 77%;
	width: 77.4%;
	padding-top: 4.2%;
}
#top_page_content #hero .hero_details h1 {
	background: #fff;
	margin: 0px;
	padding: 5.4% 0px;
	text-align: center;
	width: 33.1%;
}
#top_page_content #hero .hero_details h1 a {
	display: block;
	width: 68.2%;
	margin: 0 auto;
}
#top_page_content #hero .hero_details h2 {
	margin-top: 8%;
	width: 79.3%;
	margin-bottom: 4.2%;
}
#top_page_content #hero .hero_details .ttl_area ul {
	width: 100%;
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0 auto -2px;
}
#top_page_content #hero .hero_details .btn_area {
	padding-bottom: 0px;
	/*position: absolute;
         width: 100%; */
	left: 0;
	right: 0;
	margin: auto;
	z-index: 10;
	padding: 0 4em;
}
#top_page_content #hero .scroll {
	display: none;
}

#top_page_content #hero .hero_details .top_images .line10 {
	width: 50%;
}

/* ==========================================================================
   page top - feature
   ========================================================================== */
#top_page_content #feature .content_box {
	border-bottom: 1px solid #dedede;
}
#top_page_content #feature h2 {
	line-height: 0.5em;
	margin-top: 7%;
}
#top_page_content #feature h2 .sub {
	color: #252525;
	letter-spacing: 0.3em;
	position: relative;
}
#top_page_content #feature h2 .sub::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -2.2em;
	width: 1.6em;
	height: 1px;
	background: #252525;
}
#top_page_content #feature .content_box > ul {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 94%;
	margin: 0 auto;
}
#top_page_content #feature .content_box > ul li {
	width: 31%;
	margin-top: 6%;
}
#top_page_content #feature .content_box > ul li .photo {
	width: 76.2%;
	margin: 0 auto;
	margin-bottom: 5%;
}
#top_page_content #feature .content_box > ul li p {
	min-height: 9em;
	color: #0f0f0f;
}
#top_page_content #feature .content_box > ul li:nth-of-type(4) p,
#top_page_content #feature .content_box > ul li:nth-of-type(5) p,
#top_page_content #feature .content_box > ul li:nth-of-type(6) p {
	min-height: 13em;
}
#top_page_content #feature .content_box > ul li p span {
	color: #ff2e50;
}
#top_page_content #feature .content_box > ul li .link {
	color: #a68b62;
	display: inline-block;
	letter-spacing: 0.1em;
	border-bottom: 1px solid #a68b62;
	padding-right: 2.7em;
	position: relative;
	min-height: 0px !important;
	cursor: pointer;
}
#top_page_content #feature .content_box > ul li:nth-of-type(3) .link {
	padding-right: 1em;
}
#top_page_content #feature .content_box > ul li .link::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -9%;
	right: 2%;
	width: 1px;
	height: 1em;
	transform: rotateZ(-45deg);
	background: #a68b62;
}
#top_page_content #feature .content_box > ul li .link:hover {
	color: #ff5e69;
	border-bottom: 1px solid #ff5e69;
}
#top_page_content #feature .content_box > ul li .link:hover::after {
	background: #ff5e69;
}
#top_page_content #feature .btn_area {
	margin-top: 4%;
	margin-bottom: 5%;
}

/*#top_page_content #feature h2{
        margin-top: 50%;
        line-height: 0.6em;
    }*/
#top_page_content #feature h2 {
	/* 何もない場合 = 50% */
	/*年末年始バナーのみの場合 = 85%*/
	/*追加テキストを実装 = 95%*/
	margin-top: 120%;
	line-height: 0.6em;
}
.btm_txt {
	margin: 0 auto -0.8em;
}
@media screen and (max-width: 1200px) {
	#top_page_content #feature h2 {
		margin-top: 100%;
	}
}

@media screen and (max-width: 750px) {
	#top_page_content #feature h2 {
		margin-top: 130%;
	}
	#top_page_content #hero .hero_img {
		top: 9% !important;
	}
}

#top_page_content #feature .content_box > ul {
	width: 100%;
}
#top_page_content #feature .content_box > ul li {
	width: 47.5%;
	margin-top: 9.6%;
}
#top_page_content #feature .content_box > ul li .photo {
	width: 100%;
	margin-bottom: 6%;
}
#top_page_content #feature .content_box > ul li:nth-of-type(1) p,
#top_page_content #feature .content_box > ul li:nth-of-type(2) p {
	min-height: 7em;
}
#top_page_content #feature .content_box > ul li:nth-of-type(3) p,
#top_page_content #feature .content_box > ul li:nth-of-type(4) p {
	min-height: 14em;
}
#top_page_content #feature .content_box > ul li:nth-of-type(5) p,
#top_page_content #feature .content_box > ul li:nth-of-type(6) p {
	min-height: 11em;
}
#top_page_content #feature .content_box > ul li:nth-of-type(3) .link {
	padding-right: 1em;
}
#top_page_content #feature .btn_area {
	margin-top: 8%;
	margin-bottom: 14%;
}
#top_page_content #feature .content_box > ul li .link {
	padding-right: 0;
	width: 97.5%;
	box-sizing: border-box;
	margin-top: 1em;
}

/* ==========================================================================
   page top - feature popup
   ========================================================================== */
#feature_popup {
	display: none;
	position: fixed;
	top: 0%;
	left: 0%;
	width: 100vw;
	height: 100%;
	z-index: 1000;
}
#feature_popup .feature_overlay {
	z-index: 11;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
}
#feature_popup .content {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	right: 0;
	margin: auto;
	width: 42.7vw;
	max-width: 554px;
	border: 3px solid #000;
	background: #000;
	z-index: 12;
}
#feature_popup .image_box {
	overflow: auto;
	max-height: 80vh;
	background: #fff;
}
#feature_popup .image_box .slick-slide {
	margin-left: 0px;
}
#feature_popup .image_box .slick-list {
	margin-left: 0px;
}

#feature_popup .feature_closebtn {
	position: absolute;
	display: block;
	top: 0%;
	right: 0%;
	width: 10%;
	height: 0px;
	padding-top: 10%;
	transform: translate(40%, -40%);
	background: url(../images/top/2021/close.svg) center center no-repeat;
	background-size: 100%;
	z-index: 12;
	cursor: pointer;
	border: 1px solid #000;
	border-radius: 100px;
}
#feature_popup .feature_popupnext {
	position: absolute;
	display: block;
	top: 50%;
	transform: translateY(-50%);
	right: -12%;
	width: 10%;
	height: 0px;
	padding-top: 10%;
	background: url(../images/top/2021/next.svg) center center no-repeat;
	background-size: 100%;
	z-index: 12;
	cursor: pointer;
}
#feature_popup .feature_popupprev {
	position: absolute;
	display: block;
	top: 50%;
	transform: translateY(-50%);
	left: -12%;
	width: 10%;
	height: 0px;
	padding-top: 10%;
	background: url(../images/top/2021/prev.svg) center center no-repeat;
	background-size: 100%;
	z-index: 12;
	cursor: pointer;
}

#feature_popup .content {
	max-width: none;
	width: 80vw;
}
#feature_popup .image_box {
	max-height: 70vh;
}
#feature_popup .image_box img {
	width: 100%;
	max-width: 100%;
}

/* ==========================================================================
   page top - instagram
   ========================================================================== */
#top_page_content #instagram {
}
#top_page_content #instagram h2 {
	text-align: center;
	line-height: 1em;
	margin-top: 7%;
	padding-bottom: 2%;
	margin-bottom: 4%;
	position: relative;
	letter-spacing: 0.7em;
	text-indent: 3em;
}
#top_page_content #instagram h2:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: calc(50% - 6.5em);
	transform: translate(-50%, -85%);
	width: 1em;
	max-width: 29px;
	height: 0px;
	padding-top: 29px;
	background: url(../images/top/2021/insta_ico.png) center center no-repeat;
	background-size: contain;
}
#top_page_content #instagram h2:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -1.3em;
	left: 0;
	right: 0;
	margin: auto;
	width: 1px;
	height: 1.3em;
	background: #000;
}
#top_page_content #instagram .text {
	text-align: center;
	margin-bottom: 3%;
}
#top_page_content #instagram .instagram_box {
	margin-bottom: 15%;
}
#sb_instagram #sbi_load {
	text-align: right;
}
#sb_instagram #sbi_load .sbi_load_btn {
	background: none;
	padding: 0px;
	margin-top: 2%;
}
#sb_instagram .sbi_load_btn .sbi_btn_text {
	color: #a68b62;
	display: inline-block;
	letter-spacing: 0.1em;
	border-bottom: 1px solid #a68b62;
	padding-right: 3em;
	position: relative;
	font-size: 16px;
	font-size: 1.24vw;
}
#sb_instagram .sbi_load_btn .sbi_btn_text::after {
	content: "";
	position: absolute;
	text-align: right;
	margin-left: auto;
	width: 100px;
	height: 8px;
	margin-top: -10px;
	border-bottom: 1px solid #a68b60;
	border-right: 1px solid #a68b60;
	transform: skew(45deg);
	bottom: 1px;
	right: 18px;
}

/*@media screen and (min-width: 1300px) {
    #sb_instagram .sbi_load_btn .sbi_btn_text{
        font-size: 16px;
    }
}*/

#top_page_content #instagram h2 {
	margin-top: 12.6%;
	padding-top: 12.6%;
	text-indent: 0px;
	padding-bottom: 4.5%;
	margin-bottom: 9.5%;
}
#top_page_content #instagram h2:before {
	background: url(../images/top/2021/insta_ico_sp.png) top center no-repeat;
	background-size: contain;
	left: 50%;
	transform: translateX(-50%);
	max-width: 55px;
	padding-top: 55px;
	top: 0%;
	width: 8.2%;
}
#top_page_content #instagram .text {
	margin-bottom: 7.5%;
}
#top_page_content #instagram .instagram_box {
	margin-bottom: 25.3%;
}
#sb_instagram .sbi_load_btn .sbi_btn_text {
	font-size: 16px;
	width: 100px;
	padding-right: 25px;
	border-bottom: none;
}

#top_page_content #sb_instagram #sbi_load .sbi_load_btn:active {
	box-shadow: none;
}

#top_page_content #sb_instagram.sbi_col_4 #sbi_images .sbi_item {
	padding: 0 !important;
}

#top_page_content #sb_instagram.sbi_col_4 #sbi_images .sbi_item .sbi_inner_wrap {
	padding: 6px;
}

@media screen and (max-width: 750px) {
	#sb_instagram .sbi_load_btn .sbi_btn_text {
		font-size: 2.94vw;
		width: 150px;
	}
	#sb_instagram .sbi_load_btn .sbi_btn_text::after {
		width: 135px;
	}
}

/* ==========================================================================
   page top - design
   ========================================================================== */
#top_page_content #design .top_box {
	background: url(../images/top/2021/section_bg_01.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #design .design_content {
}
#top_page_content #design .design_content h3 {
	margin: 0 auto;
	width: 59.5%;
	margin-top: 4.3%;
	margin-bottom: 3%;
}
#top_page_content #design .design_content .text {
	text-align: center;
	margin-bottom: 3%;
}
#top_page_content #design .design_content .warning {
	text-align: center;
	color: #b6b6b6;
	margin-bottom: 2%;
}
#top_page_content #design .design_content .sliderWrap {
	margin-bottom: 2%;
}
#top_page_content #design .design_content .btn_area {
}
#top_page_content #design .design_content .btn_area a {
	color: #a68b62 !important;
	background: #fff;
	border: 1px solid #a68b62;
	position: relative;
}
#top_page_content #design .design_content .btn_area a::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	width: 1em;
	max-width: 7px;
	height: 0px;
	padding-top: 10px;
	background: url(../images/top/2021/ico_btn3.png) center center no-repeat;
	background-size: contain;
}
#top_page_content #design .design_content .btn_area a:hover {
	color: #fff !important;
	background: #a68b62;
}
#top_page_content #design .design_content .btn_area ul {
	margin-bottom: 18.5%;
}

#top_page_content #design .top_box {
	background: url(../images/top/2021/section_bg_01_sp.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #design .design_content h3 {
	width: 100%;
	margin: 6% 0px;
	margin-bottom: 4%;
}
#top_page_content #design .design_content .text {
	text-align: left;
	margin-bottom: 3%;
}
#top_page_content #design .design_content .warning {
	text-align: left;
	margin-bottom: 4.5%;
}
#top_page_content #design .design_content .btn_area ul {
	margin-bottom: 29.7%;
}
#top_page_content #design .design_content .design_slider .slick-slide {
	margin-left: 1vw;
}
#top_page_content #design .design_content .design_slider .slick-list {
	margin-left: -1vw;
}

/* ==========================================================================
   page top - howtouse
   ========================================================================== */
#top_page_content #howtouse .top_box {
	background: url(../images/top/2021/section_bg_02.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #howtouse .howtouse_content {
}
#top_page_content #howtouse .howtouse_content .ttl {
	margin-top: 3.4%;
	padding-left: 7%;
}
#top_page_content #howtouse .top_box.left .details_box .details {
	width: 27%;
	padding-right: 0px;
	left: 7%;
}
#top_page_content #howtouse .howtouse_content .content_area .wrap {
}
#top_page_content #howtouse .howtouse_content .content_area ul {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 9%;
}
#top_page_content #howtouse .howtouse_content .content_area ul li {
	width: 29%;
}
#top_page_content #howtouse .howtouse_content .content_area ul li .step_img {
	margin: 0 auto;
	width: 81.6%;
	position: relative;
	display: block;
}
#top_page_content #howtouse .howtouse_content .content_area ul li .step_img::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: -43%;
	transform: translateY(-50%);
	width: 39%;
	max-width: 107px;
	height: 0px;
	padding-top: 7px;
	background: url(../images/top/2021/dots.png) center center no-repeat;
	background-size: contain;
}
#top_page_content #howtouse .howtouse_content .content_area ul li:nth-of-type(1) .step_img::before {
	display: none;
}
#top_page_content #howtouse .howtouse_content .content_area .step {
	width: 21%;
	text-align: center;
	margin: 0 auto;
	margin-top: 6%;
}
#top_page_content #howtouse .howtouse_content .content_area .ttl {
	color: #a68b62;
	line-height: 1em;
	text-align: center;
	font-weight: 600;
	padding-bottom: 7%;
	margin-bottom: 7%;
	position: relative;
}
#top_page_content #howtouse .howtouse_content .content_area .ttl::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0px;
	left: 0;
	right: 0;
	margin: auto;
	width: 9%;
	height: 2px;
	background: #a68b62;
}
#top_page_content #howtouse .howtouse_content .content_area .text {
}
#top_page_content #howtouse .howtouse_content .content_area .warning {
	color: #b6b6b6;
}
#top_page_content #howtouse .howtouse_content .btn_area {
	margin-bottom: 15%;
	margin-top: 3%;
}

#top_page_content #howtouse .top_box {
	background: url(../images/top/2021/section_bg_02_sp.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #howtouse .top_box.left .details_box .details {
	width: 53.7%;
	left: 2%;
	padding-top: 5em;
}
#top_page_content .top_box .details_box .details .ttl {
	padding-bottom: 1em;
	margin-bottom: 1em;
}
#top_page_content .top_box .details_box .details .ttl::before {
	left: -0.3em;
}
#top_page_content #howtouse .howtouse_content .ttl {
	margin-top: 4.5%;
	padding-left: 2%;
	width: 55%;
	margin-bottom: 9.6%;
}
#top_page_content #howtouse .howtouse_content .content_area .wrap {
	overflow: auto;
}
#top_page_content #howtouse .howtouse_content .content_area .wrap ul {
	width: 212vw;
	max-width: 1600px;
}
#top_page_content #howtouse .howtouse_content .howtouse_slider .slider_page {
	width: 55vw;
}
#top_page_content #howtouse .howtouse_content .howtouse_slider .slider_page .step_img {
	position: relative;
	width: 50.2vw;
	margin: 0 auto;
}
#top_page_content #howtouse .howtouse_content .howtouse_slider .slider_page .step_img::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: -28%;
	transform: translateY(-50%);
	width: 14.4vw;
	max-width: 107px;
	height: 0px;
	padding-top: 7px;
	background: url(../images/top/2021/dots.png) center center no-repeat;
	background-size: contain;
}
#top_page_content #howtouse .howtouse_content .howtouse_slider .slick-slide:nth-of-type(1) .slider_page .step_img::before {
	display: none;
}
#top_page_content #howtouse .howtouse_content .btn_area {
	margin-bottom: 29%;
	margin-top: 6%;
}
#top_page_content #howtouse .howtouse_content .content_area .step {
	width: 14.6vw;
	margin-top: 4vw;
}
#top_page_content #howtouse .howtouse_content .content_area .ttl {
	margin-top: 3vw;
	width: 100%;
}

/* ==========================================================================
   page top - tips
   ========================================================================== */
#top_page_content #tips .top_box {
	background: url(../images/top/2021/section_bg_03.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #tips .tips_content {
}
#top_page_content #tips .tips_content .content_box > ul {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 5%;
	margin-bottom: 5%;
}
#top_page_content #tips .tips_content .content_box > ul li {
	width: 47.5%;
	margin: 0px 2%;
}
#top_page_content #tips .tips_content .content_box > ul li:nth-of-type(1) {
	margin-left: 0px;
}
#top_page_content #tips .tips_content .content_box > ul li:nth-of-type(2) {
	margin-right: 0px;
}
#top_page_content #tips .tips_content .content_box > ul li .top {
}
#top_page_content #tips .tips_content .content_box > ul li .top .photo {
}
#top_page_content #tips .tips_content .content_box > ul li .top .ttl {
}
#top_page_content #tips .tips_content .content_box > ul li .text {
}

#top_page_content #tips .top_box {
	background: url(../images/top/2021/section_bg_03_sp.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #tips .top_box .details_box .details {
	width: 59%;
}
#top_page_content #tips .top_box .details_box .details .ttl {
	padding-bottom: 0.9em;
	margin-bottom: 0.9em;
}
#top_page_content #tips .tips_content .content_box > ul {
	margin-top: 6%;
	margin-bottom: 10%;
}
#top_page_content #tips .tips_content .content_box > ul li {
	width: 100%;
	margin-top: 10%;
	margin-left: 0px;
	margin-right: 0px;
}
#top_page_content #tips .tips_content .content_box > ul li:nth-of-type(1) {
	margin-top: 0%;
}
#top_page_content #tips .tips_content .content_box > ul li .top .photo {
	margin-bottom: 3%;
}

/* ==========================================================================
   page top - benefits
   ========================================================================== */
#top_page_content #benefits .top_box {
	background: url(../images/top/2021/section_bg_04.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #benefits .top_box.left .details_box .details {
	width: 27%;
	padding-right: 0px;
	left: 7%;
}
#top_page_content #benefits .benefits_content {
}
#top_page_content #benefits .benefits_content .ttl {
	margin-top: 3.4%;
	padding-left: 7%;
}
#top_page_content #benefits .benefits_content .benefits_list {
	margin: 0 auto;
	margin-top: 5%;
	width: 100%;
	margin-bottom: 1%;
	margin-bottom: 14%;
}
#top_page_content #benefits .benefits_content .benefits_list ul {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#top_page_content #benefits .benefits_content .benefits_list ul li {
	width: 22%;
	text-align: center;
	border: 1px solid #a68b62;
	border-left: 6px solid #a68b62;
	padding: 1% 0px;
	margin: 1%;
}
#top_page_content #benefits .benefits_content .benefits_list ul li p {
	line-height: 1.5em;
}
#top_page_content #benefits .benefits_content .benefits_list ul li p.line1 {
	line-height: 3em;
}
#top_page_content #benefits .benefits_content .btn_area {
	margin-bottom: 14%;
	display: none;
}
#top_page_content #benefits .benefits_content .btn_area a {
	color: #a68b62 !important;
	background: #fff;
	border: 1px solid #a68b62;
	position: relative;
}
#top_page_content #benefits .benefits_content .btn_area a::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	width: 1em;
	max-width: 7px;
	height: 0px;
	padding-top: 10px;
	background: url(../images/top/2021/ico_btn3.png) center center no-repeat;
	background-size: contain;
}
#top_page_content #benefits .benefits_content .btn_area a:hover {
	color: #fff !important;
	background: #a68b62;
}

#top_page_content #benefits .top_box {
	background: url(../images/top/2021/section_bg_04_sp.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #benefits .top_box.left .details_box .details {
	padding-top: 8em;
	width: 52.8%;
	left: 2%;
}
#top_page_content #benefits .benefits_content .ttl {
	margin-top: 4.5%;
	padding-left: 2%;
}
#top_page_content #benefits .benefits_content .benefits_list {
	width: 100%;
	margin-top: 9%;
	margin-bottom: 29%;
}
#top_page_content #benefits .benefits_content .btn_area {
	margin-bottom: 29%;
}
#top_page_content #benefits .benefits_content .benefits_list ul {
}
#top_page_content #benefits .benefits_content .benefits_list ul li {
	width: 45%;
	margin: 0px;
	margin-bottom: 4%;
	border-left: 10px solid #a68b62;
}
@media screen and (max-width: 750px) {
	#top_page_content #benefits .benefits_content .benefits_list ul li {
		width: 48%;
	}
}
#top_page_content #benefits .benefits_content .benefits_list ul li:nth-of-type(2n-1) {
	margin-right: 4%;
}

/* ==========================================================================
   page top - recommend
   ========================================================================== */
#top_page_content #recommend .top_box {
	background: url(../images/top/2021/section_bg_05.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #recommend .recommend_content {
}
#top_page_content #recommend .recommend_content .ttl {
	margin-top: 2%;
	text-align: right;
	margin-bottom: 6%;
}
#top_page_content #recommend .recommend_content .tag_list {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.top_2022 #top_page_content #recommend .recommend_content .tag_list {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.top_2022 #top_page_content #recommend .recommend_content .tag_list li {
	width: 20%;
	margin-bottom: 20px;
	padding: 0 0.5%;
	box-sizing: border-box;
}
.top_2022 #top_page_content #recommend .recommend_content .tag_list .line3 {
	width: 21% !important;
}
#top_page_content #recommend .recommend_content .tag_list li a {
	color: #a68b62;
	border: 1px solid #a68b62;
	border-radius: 100px;
	text-align: center;
	line-height: 1.4em;
	padding: 0.6em 1.4em;
	display: block;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
#top_page_content #recommend .recommend_content .tag_list li a:hover {
	background: #a68b62;
	color: #fff;
}
#top_page_content #recommend .recommend_content .tag_list li.line1 a {
	line-height: 2.8em;
}
#top_page_content #recommend .recommend_content .function_list {
}
#top_page_content #recommend .recommend_content .function_list > li {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 5% 0px;
	border-bottom: 1px solid #dedede;
}
#top_page_content #recommend .recommend_content .function_list .fun2-2 {
	justify-content: center !important;
}
#top_page_content #recommend .recommend_content .function_list > li:nth-of-type(2n-1) {
	flex-direction: row;
}
#top_page_content #recommend .recommend_content .function_list > li .photo {
	width: 50%;
	text-align: center;
}
#top_page_content #recommend .recommend_content .function_list > li .details {
	width: 48%;
}
#top_page_content #recommend .recommend_content .function_list .fun2-2 .details {
	width: 60%;
}
#top_page_content #recommend .recommend_content .function_list > li .details .ttl {
	text-align: center;
	width: 42.4%;
	margin: 0 auto;
	padding-bottom: 3%;
	margin-bottom: 7%;
	position: relative;
}
#top_page_content #recommend .recommend_content .function_list > li .details .ttl::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -1.8em;
	left: 0;
	right: 0;
	margin: auto;
	width: 1px;
	height: 1.8em;
	background: #000;
}
#top_page_content #recommend .recommend_content .function_list > li .details h3 {
	color: #a68b62;
	text-align: center;
	line-height: 1.4em;
	margin-bottom: 6%;
}
#top_page_content #recommend .recommend_content .function_list > li .details h3 span {
	position: relative;
	z-index: 2;
}
#top_page_content #recommend .recommend_content .function_list > li .details h3 span::before {
	content: "";
	display: block;
	position: absolute;
	bottom: -0.2em;
	left: 0%;
	width: 100%;
	height: 0.4em;
	background: #f5f2ed;
	z-index: -1;
}
#top_page_content #recommend .recommend_content .function_list > li .details h3 span.gmap::before {
	display: none;
}
#top_page_content #recommend .recommend_content .function_list > li .function_list_inner {
	background: #f8f6f3;
	margin-top: 4%;
	margin-bottom: 3%;
	padding: 1em 0.6em;
	border-radius: 0.6em;
}
#top_page_content #recommend .recommend_content .function_list > li .function_list_inner .text {
	color: #a68b62;
	position: relative;
	padding: 0.5em 0px;
	padding-left: 2em;
}
#top_page_content #recommend .recommend_content .function_list > li .function_list_inner .text::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0.3em;
	transform: translateY(-50%);
	width: 1.4em;
	max-width: 24px;
	height: 0px;
	padding-top: 24px;
	background: url(../images/top/2021/ico_check.png) center center no-repeat;
	background-size: contain;
}
#top_page_content #recommend .recommend_content .function_list > li .details .warning {
	color: #b6b6b6;
	padding-left: 1em;
}
#top_page_content #recommend .recommend_content .function_list > li .full {
	width: 100%;
}
#top_page_content #recommend .recommend_content .function_list > li .full h3 {
	margin: 0 auto;
	width: 46.5%;
	position: relative;
	margin-bottom: -2%;
	margin-top: 4%;
}
#top_page_content #recommend .recommend_content .function_list > li .full .function_list_inner {
	margin: 0px;
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0px 3%;
	padding-top: 3.4%;
	padding-bottom: 2%;
}
#top_page_content #recommend .recommend_content .function_list > li .full .function_list_inner li {
	width: 49.5%;
	border-bottom: 1px solid #d8ccb9;
	padding-bottom: 2%;
	margin-bottom: 2%;
}
#top_page_content #recommend .recommend_content .function_list > li .full .function_list_inner .text {
	padding-top: 0px;
	padding-bottom: 0px;
	line-height: 1.8em;
}
/* #top_page_content #recommend .recommend_content .function_list > li .full .function_list_inner li:nth-of-type(4) .text{
    line-height: 3.6em;
} */
#top_page_content #recommend .recommend_content .function_list > li .full .function_list_inner li:nth-of-type(5) {
	border-bottom: none;
	padding-bottom: 0px;
	margin-bottom: 0px;
}
#top_page_content #recommend .recommend_content .function_list > li:nth-last-of-type(1) {
	padding-bottom: 15%;
	border-bottom: none;
}
#top_page_content #recommend .recommend_content .function_list > li .full .merit {
	margin-top: 5%;
	margin-bottom: 3%;
	text-align: center;
}
#top_page_content #recommend .recommend_content .function_list > li .full .tb-ttl {
	width: 70% !important;
	margin: 0 auto !important;
}
#top_page_content #recommend .recommend_content .function_list > li .full .tb-ttl h3 {
	margin-bottom: 3% !important;
}
#top_page_content #recommend .recommend_content .function_list > li .full .merit_tb {
	border-collapse: collapse;
	width: 80%;
	margin: 0 auto;
	table-layout: fixed;
	text-align: center;
}
#top_page_content #recommend .recommend_content .function_list > li .full .merit_tb th {
	background-color: #f4f4f4;
	border: 1px solid #ccc;
	text-align: center;
	vertical-align: middle;
	padding: 5px;
	font-size: 2rem;
	width: 27%;
	font-weight: bold;
	color: #666;
}
#top_page_content #recommend .recommend_content .function_list > li .full .merit_tb .merit_tbb {
	width: 15% !important;
}
#top_page_content #recommend .recommend_content .function_list > li .full .merit_tb td {
	border: 1px solid #ccc;
	background: #fff;
	color: #333;
	padding: 5px;
	font-size: 1.3rem;
	width: 73%;
	vertical-align: middle;
	font-weight: bold;
}
#top_page_content #recommend .recommend_content .function_list > li .full .merit_tb .fon {
	font-size: 1.1rem;
}
@media screen and (max-width: 750px) {
	#top_page_content #recommend .recommend_content .function_list > li .full .merit_tb td {
		font-size: 1.8rem;
	}
    #top_page_content #recommend .recommend_content .function_list > li .full .merit_tb .fon {
        font-size: 1.6rem;
    }
}

#top_page_content #recommend .recommend_content .function_list > li .full .merit_tb .tb-bg {
	background: #ff5e69;
	color: #fff;
}

#top_page_content #recommend .top_box {
	background: url(../images/top/2021/section_bg_05_sp.png) top center no-repeat;
	background-size: cover;
}
#top_page_content #recommend .top_box .details_box .details {
	padding-top: 8.8em;
	padding-left: 11.9em;
}
#top_page_content #recommend .recommend_content .content_box > .ttl {
	margin-top: 3%;
	width: 56%;
	text-align: left;
	position: relative;
	left: 47%;
}
.top_2022 #top_page_content #recommend .recommend_content .tag_list li,
#top_page_content #recommend .recommend_content .tag_list li {
	width: 32%;
}
.top_2022 #top_page_content #recommend .recommend_content .tag_list .line3 {
	width: 32% !important;
}
#top_page_content #recommend .recommend_content .tag_list li a {
	padding-left: 0px;
	padding-right: 0px;
	margin-bottom: 5%;
}
#top_page_content #recommend .recommend_content .function_list > li .details {
	width: 100%;
}
#top_page_content #recommend .recommend_content .function_list > li {
	padding-top: 12%;
	padding-bottom: 10%;
}
#top_page_content #recommend .recommend_content .function_list > li .details .ttl {
	width: 33%;
}
#top_page_content #recommend .recommend_content .function_list > li .photo {
	width: 100%;
	margin-bottom: 3%;
	text-align: center;
}
#top_page_content #recommend .recommend_content .function_list > li .function_list_inner {
	margin-top: 8%;
	padding: 1.6em 0.9em;
}
#top_page_content #recommend .recommend_content .function_list > li .details .warning {
	padding-left: 0px;
}
#top_page_content #recommend .recommend_content .function_list > li .full h3 {
	margin-top: 6%;
	width: 100%;
	margin-bottom: -6%;
}
#top_page_content #recommend .recommend_content .function_list > li .full .function_list_inner li {
	width: 100%;
}
#top_page_content #recommend .recommend_content .function_list > li .full .function_list_inner {
	padding-top: 10.4%;
	padding-bottom: 5%;
}
#top_page_content #recommend .recommend_content .function_list > li .full .function_list_inner li:nth-of-type(2) .text,
#top_page_content #recommend .recommend_content .function_list > li .full .function_list_inner li:nth-of-type(4) .text {
	line-height: 1.8em;
}
#top_page_content #recommend .recommend_content .function_list > li:nth-of-type(3) .photo {
	margin: 4% 0px;
}
#top_page_content #recommend .recommend_content .function_list > li:nth-of-type(5) .photo {
	margin-top: 5%;
	margin-bottom: 5%;
}
#top_page_content #recommend .recommend_content .function_list > li:nth-of-type(6) .details .warning {
	margin-top: 5%;
}
#top_page_content #recommend .recommend_content .function_list > li:nth-last-of-type(1) {
	border-bottom: none;
	padding-bottom: 29%;
}
#top_page_content #recommend .recommend_content .function_list .fun2-2 .details {
	width: 100%;
}
#top_page_content #recommend .recommend_content .function_list > li .full .merit img {
	width: 100%;
}
#top_page_content #recommend .recommend_content .function_list > li .full .tb-ttl {
	width: 90% !important;
}
#top_page_content #recommend .recommend_content .function_list > li .full .merit_tb {
	width: 100%;
}
.title_tb{
	padding-top: 20px;
}

/* ==========================================================================
   page top - service
   ========================================================================== */
#top_page_content #service {
}
#top_page_content #service .ttl_box h2 {
	text-align: center;
}
#top_page_content #service .ttl_box h3 {
	text-align: center;
	font-weight: bold;
	line-height: 1em;
	margin-top: 2.8%;
	padding-bottom: 4.4%;
	margin-bottom: 4.5%;
	position: relative;
}
#top_page_content #service .ttl_box h3::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0%;
	left: 0;
	right: 0;
	margin: auto;
	width: 5%;
	height: 3px;
	background: #a68b62;
}
#top_page_content #service .expandListItem {
	margin-top: 2%;
}
#top_page_content #service .expandListItem:nth-of-type(1) {
	margin-top: 6%;
}
#top_page_content #service .expandListItem .top {
	text-align: center;
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#top_page_content #service .expandListItem .top .expandItem {
	width: 48.9%;
	opacity: 1;
	cursor: pointer;
}
#top_page_content #service .expandListItem .top .expandItem:hover {
	-moz-transition: opacity 0.5s ease;
	-webkit-transition: opacity 0.5s ease;
	transition: opacity 0.5s ease;
	opacity: 0.8;
}
#top_page_content #service .expandListItem .content {
}
#top_page_content #service .expandListItem .content .serv_content {
	background: #f5f2ed;
	border-radius: 2em;
	padding: 1.5%;
	margin-top: 2.6%;
	position: relative;
	display: none;
}
#top_page_content #service .expandListItem .content .serv_content::before {
	content: "";
	display: block;
	position: absolute;
	top: -5%;
	left: 5%;
	width: 4.1%;
	max-width: 48px;
	height: 0px;
	padding-top: 36px;
	background: url(../images/top/2021/ico_arrow.png) center center no-repeat;
	background-size: contain;
}
#top_page_content #service .expandListItem .content:nth-of-type(2n) .serv_content::before {
	left: auto;
	right: 5%;
}
#top_page_content #service .expandListItem .content .serv_content .serv_content_inner {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#top_page_content #service .expandListItem .content .serv_content .photo_area {
	width: 32.1%;
}
#top_page_content #service .expandListItem .content .serv_content .photo_area .photo {
}
#top_page_content #service .expandListItem .content .serv_content .photo_area .btn_area {
}
#top_page_content #service .expandListItem .content .serv_content .photo_area .btn_area ul {
	width: 94%;
}
#top_page_content #service .expandListItem .content .serv_content .details {
	width: 65.6%;
}
#top_page_content #service .expandListItem .content .serv_content .details ul {
}
#top_page_content #service .expandListItem .content .serv_content .details ul li {
	border-top: 1px solid #c2bbb1;
	padding: 3% 0px;
}
#top_page_content #service .expandListItem .content .serv_content .details ul li:nth-of-type(1) {
	border-top: none;
}
#top_page_content #service .expandListItem .content .serv_content .details ul li .text {
}
#top_page_content #service .expandListItem .content .serv_content .details ul li .ttl {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#top_page_content #service .expandListItem .content .serv_content .details ul li .ttl .point {
}
#top_page_content #service .expandListItem .content .serv_content .details ul li .ttl h3 {
	color: #a68b62;
	margin-left: 3%;
	position: relative;
	bottom: 0.2em;
	line-height: 1.5em;
	font-weight: 600;
}
#top_page_content #service .expandListItem .content .serv_content .details ul li .ttl h3 span {
	position: relative;
	z-index: 2;
}
#top_page_content #service .expandListItem .content .serv_content .details ul li .ttl h3 span::before {
	content: "";
	display: block;
	position: absolute;
	bottom: -0.2em;
	left: 0%;
	width: 100%;
	height: 0.4em;
	background: #ffffff;
	z-index: -1;
}
#top_page_content #service .content_box > .btn_area {
	margin-top: 6%;
	margin-bottom: 9%;
}

#top_page_content #service .ttl_box {
	margin-top: 20%;
}
#top_page_content #service .content_box {
	width: 100%;
}
#top_page_content #service .expandListItem:nth-of-type(1) {
	margin-top: 0px;
}
#top_page_content #service .expandListItem .top .expandItem {
	width: 100%;
	margin-bottom: 2%;
}
#top_page_content #service .expandListItem {
	margin-top: 0px;
}
#top_page_content #service .expandListItem .content {
	width: 95%;
	margin: 0 auto;
}
#top_page_content #service .expandListItem .content .serv_content {
	margin-top: 3%;
	margin-bottom: 5%;
	padding: 3%;
}
#top_page_content #service .expandListItem .content .serv_content::before {
	background: url(../images/top/2021/ico_arrow_sp.png) center center no-repeat;
	background-size: contain;
	width: 6.8%;
	top: -2%;
}
#top_page_content #service .expandListItem .content .serv_content .photo_area {
	width: 100%;
	padding-top: 3%;
	padding-bottom: 2%;
}
#top_page_content #service .expandListItem .content .serv_content .details {
	width: 100%;
}
#top_page_content #service .expandListItem .content .serv_content .btn_area ul li {
	margin-top: 0%;
	margin-bottom: 5%;
}
#top_page_content #service .expandListItem .content .serv_content .details ul li {
	padding: 5% 0px;
}
#top_page_content #service .content_box > .btn_area {
	margin-top: 0%;
}
#top_page_content #service .expandListItem .content:nth-of-type(2n) .serv_content::before {
	left: 5%;
	right: auto;
}

/* ==========================================================================
   page top - banner
   ========================================================================== */
#top_page_content .banner {
}
#top_page_content .banner ul {
	display: -ms-flexbox;
	-js-display: flex;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding-bottom: 8%;
	border-bottom: 1px solid #dedede;
}
#top_page_content .banner ul li {
	width: 48.9%;
	opacity: 1;
	cursor: pointer;
}
#top_page_content .banner ul li:hover {
	-moz-transition: opacity 0.5s ease;
	-webkit-transition: opacity 0.5s ease;
	transition: opacity 0.5s ease;
	opacity: 0.8;
}

#top_page_content .banner .content_box {
	width: 100%;
}
#top_page_content .banner {
	margin-top: 17%;
}
#top_page_content .banner ul {
	border-bottom: none;
}

/* ==========================================================================
   mobile nav
   ========================================================================== */
.nav-btns {
	position: fixed;
	width: 100%;
	top: 0;
	right: 0;
	z-index: 900;
}
.nav-btns ul {
	width: 100%;
	max-width: 1180px;
	max-width: 1550px;
	margin: 0 auto;
}
.nav-btns ul li {
	float: right;
	width: 50%;
	box-sizing: border-box;
	padding: 0 10px;
	max-width: 250px;
}
.nav-btns ul li a {
	color: #fff;
	display: block;
	box-sizing: border-box;
	padding: 18px 15px;
}
.nav-btns ul li.login a {
	background: #a68b62;
}
.nav-btns ul li.start a {
	background: #06c655;
}
.pc-nav-btns {
	z-index: 900;
	display: none;
}
.pc-nav-btns ul li.login a {
	background: #a68b62 url(../images/common/arrow_right_white.png) right 10px center no-repeat;
	border: 1px solid #a68b62;
}
.pc-nav-btns ul li.start a {
	background: #ff5e69 url(../images/common/arrow_right_white.png) right 10px center no-repeat;
	border: 1px solid #ff5e69;
}

.nav-btns {
	background: rgba(0, 0, 0, 0.6);
	top: inherit;
	bottom: 0;
	padding: 10px 0;
}
.nav-btns ul {
	max-width: 700px;
}
.nav-btns ul li {
	max-width: 350px;
	font-size: 2.4rem;
}
.nav-btns ul li a {
	text-align: center;
	padding: 18px 15px;
}

.fixed_line{
	position: relative;
	transition: .5s;
	padding:0 10px;
}

.fixed_line a{
	display: block;
	padding:0 !important;
	margin-bottom: 5px;
}

.fixed_line img{
	width:100%;
	height:auto;
}
  
.fixed_line p.fixed_line_close{
	position: absolute;
	top: -12%;
	right: 0;
	cursor: pointer;
	z-index: 99;
}

@media screen and (max-width: 750px) {
	.fixed_line p.fixed_line_close{
		top: -20%;
		right: 5%;
	}
	.fixed_line p.fixed_line_close img{
		width:200%;
		max-width:200%;
	}
}

/* ==========================================================================
   initial overlay
   ========================================================================== */
@keyframes overlay_hide_anim {
	0%,
	80% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@keyframes photo_show_anim {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
#initial_overlay_box {
	position: fixed;
	z-index: 999;
	background: #fff;
	width: 100vw;
	height: 100vh;
	top: 0px;
	left: 0px;
	opacity: 0;
	-moz-animation: overlay_hide_anim 5s ease-out;
	-webkit-animation: overlay_hide_anim 5s ease-out;
	-o-animation: overlay_hide_anim 5s ease-out;
	animation: overlay_hide_anim 5s ease-out;
	animation-iteration-count: 1;
	display: none;
}
#initial_overlay_box .content_box {
	max-width: 1180px;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	position: relative;
	display: block;
}
#initial_overlay_box .photo {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin: auto;
	transform: translateY(-50%);
	width: 20%;
	height: auto;
}
#initial_overlay_box .photo img {
	opacity: 1;
	-moz-animation: photo_show_anim 2.5s cubic-bezier(0.88, 0.05, 0.99, 0.59);
	-webkit-animation: photo_show_anim 2.5s cubic-bezier(0.88, 0.05, 0.99, 0.59);
	-o-animation: photo_show_anim 2.5s cubic-bezier(0.88, 0.05, 0.99, 0.59);
	animation: photo_show_anim 2.5s cubic-bezier(0.88, 0.05, 0.99, 0.59);
	animation-iteration-count: 1;
}

#initial_overlay_box .photo {
	width: 44%;
	top: 40%;
}

.btn_area_privacy {
	margin-bottom: 0;
}
.privacymark {
	border: solid 1px #ccc;
	border-radius: 25px;
	/* padding: 3ch; */
	align-items: center !important;
}
.privacymark a {
	display: flex !important;
	flex-direction: row !important;
	align-items: center;
	justify-content: space-between;
	padding: 3ch;
}
.privacymark li {
	margin: initial !important;
}
.privacymark li.mark {
	width: 30% !important;
}
.privacymark li.mark_txt {
	width: 65% !important;
}
.flex {
	display: flex;
	width: 100% !important;
	align-items: center;
}
.flex .photo,
.flex_p {
	width: 48% !important;
}
.flex_p {
}

/*--------------追加 CSS 0906---------------*/
.text_wrapper {
	position: relative !important;
	margin-bottom: 45px;
}
.texts {
	height: 220px;
	overflow: hidden;
}
.show_more {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 75px;
	padding-top: 120px;
	text-align: center;
	line-height: 30px;
	background: linear-gradient(180deg, rgb(255, 255, 255, 0) 0%, rgb(255, 255, 255, 1) 70%);
	cursor: pointer;
	transition: bottom 0.2s;
}
.active {
	background: none;
	bottom: -30px;
}
.list li.is-hidden {
	opacity: 0 !important;
	height: 0 !important;
	margin: 0 !important;
}
.list::after {
	content: inherit !important;
}
.news-area {
	width: 100%;
	margin: 0 auto;
	background-color: #fff;
}
.news-area h2 {
	width: 90% !important;
	margin-top: 0 !important;
	padding-top: 5%;
	text-align: left !important;
	font-size: 4vw !important;
	color: #a00d23;
	margin-bottom: 0% !important;
}

.news-area ul li {
	width: 100%;
	display: inline-block;
	margin-top: 2% !important;
	border-bottom: 1px solid #333;
	line-height: 0.5;
	padding-bottom: 10px;
}

.news-area ul li:last-child {
	border-bottom: 0px;
}

.news-area ul li.border-none {
	border: none !important;
}

.news-area ul li a {
	margin-left: 0 !important;
}

.news-area dl {
	width: 100%;
	margin: 0 auto;
	display: flex;
	align-items: center;
}
.news-area dl + dl {
	margin-top: 25px;
}
.news-area dl dt,
.news-area dl dd {
	font-size: 18px;
}

.news-area dl dd {
	padding-left: 30px;
	box-sizing: border-box;
}

#top_page_content .btn_area .list ul li a {
	background: none !important;
	border-radius: 0;
	color: #333 !important;
	border: none;
	text-align: left;
	display: block;
	padding: 0;
	line-height: 0;
	height: auto;
	width: 100%;
	position: inherit;
	font-size: 18px;
	margin-left: 2em;
}
.more__btn {
	width: 100px;
	margin-left: auto;
	padding-right: 40px;
	display: block;
	text-align: right;
	margin-top: 20px !important;
	font-size: 16px;
	border: 0;
	color: #a68b60;
	cursor: pointer;
	position: relative;
}
/*
.more__btn::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  width: 1em;
  max-width: 7px;
  height: 0px;
  padding-top: 10px;
  background: url("../images/top/2021/ico_news.png");
  background-size: contain;
}
*/

.stickarrow {
	text-align: right;
	margin-left: auto;
	width: 100px;
	height: 8px;
	margin-top: -10px;
	margin-right: 30px;
	border-bottom: 1px solid #a68b60;
	border-right: 1px solid #a68b60;
	transform: skew(45deg);
}

button:hover {
	background-color: #a68b60 !important;
	color: #fff;
}
#top_page_content #feature h2 {
	margin-top: 50px !important; /*--お知らせの情報が入るのでタイトルを下げています--*/
	line-height: 0.6em;
}
#more-news {
	width: 45% !important;
	font-size: 16px !important;
	margin: 0 auto !important;
	border: 0 !important;
	background-color: #fff !important;
	cursor: pointer !important;
	text-align: center !important;
	position: relative !important;
}
#more-news::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	width: 1em;
	max-width: 7px;
	height: 0px;
	padding-top: 10px;
	background: url("../images/top/2021/ico_news.png");
	background-size: contain;
}

#top_page_content .btn_area #more-news a {
	text-align: center !important;
	color: #a68b60 !important;
	height: 50px !important;
	line-height: 50px !important;
	display: block !important;
	border-radius: 40px !important;
	border: 1px solid #a68b60 !important;
	margin: 0 !important;
}

#top_page_content .btn_area #more-news a:hover,
#more-news a:hover {
	background-color: #a68b60 !important;
	color: #fff !important;
}
@media screen and (max-width: 750px) {
	.news-area {
		width: 100%;
		margin: 0 auto 50px;
		background-color: #fff;
	}
	.news-area h2 {
		font-size: 6vw !important;
	}
	.news-area dl {
		flex-wrap: wrap;
	}
	.news-area dl dd {
		padding-left: 0px;
		box-sizing: border-box;
	}
	.news-area dl dt,
	.news-area dl dd {
		width: 100%;
		display: block;
		font-size: 2.67vw;
		margin-left: 0em;
	}
	.news-content {
		position: relative;
		height: auto;
		max-height: 300px;
		overflow: hidden;
		transition: max-height 1s;
	}
	.texts {
		height: 280px;
		overflow: hidden;
	}
	.show_more {
		height: 40px;
		padding-top: 20px;
	}
	#top_page_content #feature h2 {
		margin-top: 30px !important; /*--お知らせの情報が入るのでタイトルを下げています--*/
		line-height: 0.6em;
	}
	#top_page_content .btn_area .list ul li a {
		margin-left: 0 !important;
	}
	.more-btn {
		margin-top: 40px;
	}
	.more__btn {
		padding: 1.4em 50px 0.5em 0 !important;
		line-height: 1.5em !important;
		height: auto;
		width: 90% !important;
		font-size: 2.94vw !important;
		border-radius: 50px;
	}
	.stickarrow {
		width: 130px;
		margin-top: -15px;
		margin-right: 40px;
	}

	#top_page_content .btn_area #more-news a {
		width: 100%;
		font-size: 2.94vw !important;
		padding: 1em 0em !important;
		line-height: 1.5em !important;
		height: auto !important;
		line-height: inherit !important;
		border-radius: 50px;
	}
	#more-news {
		width: 100% !important;
	}
}

/* 2024.02.21 add */

.back_wrapper {
	width: 100%;
	margin: 0 auto;
	background-color: #fff;
	max-width: 500px;
}
#top_page_content #hero .hero_img {
	top: 165px;
}
.texts {
	height: 315px;
	overflow: hidden;
}
@media screen and (max-width: 750px) {
	.texts {
		height: 280px;
	}
}
.top_2022 .nav-btns ul {
	max-width: 500px;
}
.top_2022 .nav-btns ul li {
	width: 30%;
}
@media screen and (min-device-width: 750px) {
	#top_page_content #feature h2 {
		margin-top: 0px !important;
		font-size: 75px;
	}
	#top_page_content .top_text_box p.ttl {
		font-size: 23px;
	}
	#top_page_content #feature h2 .sub {
		font-size: 23px;
	}
	#top_page_content .btn_area ul li a.line_btn span {
		line-height: 1.4;
	}
	.btm_txt {
		margin: 0 auto 0.2em;
	}
	#top_page_content #instagram h2 {
		margin-top: 30px;
		padding-top: 60px;
		text-indent: 0px;
		padding-bottom: 30px;
		margin-bottom: 60px;
		font-size: 23px;
	}
	#top_page_content .top_box {
		height: 300px;
	}
	#top_page_content .top_box .details_box .details {
		padding-top: 20px;
		padding-left: 40px;
		box-sizing: border-box;
		width: 64.5%;
	}
	#top_page_content .top_box .ttl_box h2 {
		font-size: 75px;
	}
	#top_page_content .top_box .details_box .details .sub {
		font-size: 10px;
	}
	#top_page_content .top_box .details_box .details .ttl {
		font-size: 23px;
	}
	#top_page_content #howtouse .howtouse_content .ttl {
		margin-top: 20px;
		width: 50%;
		margin-bottom: 30px;
		font-size: 16px;
	}

	#top_page_content #howtouse .howtouse_content .content_area ul li {
		width: 29%;
		display: flex;
		flex-flow: column;
		align-items: center;
		padding: 30px 0;
	}
	#top_page_content #howtouse .howtouse_content .content_area ul li .step_img {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#top_page_content #howtouse .howtouse_content .content_area .step {
		width: 100%;
		margin-top: 20px;
	}
	#top_page_content #howtouse .howtouse_content .content_area .ttl {
		margin-top: 20px;
		font-size: 23px;
		width: 100%;
	}
	#top_page_content .top_box.left .ttl_box h2 {
		margin-left: 0px;
		font-size: 64px;
		display: flex;
		justify-content: center;
		width: 100%;
	}
	#top_page_content #benefits .top_box.left .details_box .details {
		padding-top: 30px;
	}
	#top_page_content #benefits .benefits_content .benefits_list ul li p {
		font-size: 12px;
	}
	#top_page_content #benefits .benefits_content .benefits_list ul li p.line1 {
		font-size: 12px;
	}
	#top_page_content #recommend .top_box .details_box .details {
		padding-top: 30px;
		padding-left: 40px;
	}
	#top_page_content #recommend .recommend_content .tag_list li a {
		margin-bottom: 0%;
		font-size: 13px;
	}
	#top_page_content #recommend .recommend_content .function_list > li .details h3 {
		font-size: 21px;
	}
	#top_page_content #recommend .recommend_content .function_list > li .function_list_inner .text::before {
		max-width: 19px;
	}
	#top_page_content #recommend .recommend_content .function_list > li .full h3 {
		width: 70%;
	}
	#top_page_content #recommend .recommend_content .function_list > li .full .merit_tb th {
		font-size: 12px;
	}
	#top_page_content #service .ttl_box h3 {
		margin-top: 20px;
		padding-bottom: 30px;
		margin-bottom: 30px;
		font-size: 18px;
		position: relative;
	}
	#top_page_content #service .ttl_box h2 {
		text-align: center;
		font-size: 65px;
	}
	#footer_page_top .content_box {
		width: 100%;
		max-width: 500px;
	}

	#footer_page_top .content_box {
		width: 90%;
	}
	#footer_page_top .cont-01 p a,
	#footer_page_top .cont-01 ul li a {
		font-size: 20px;
		font-size: 2.67vw;
	}
	#footer_page_top .logo a {
		width: 49.9%;
		margin-bottom: 8.3%;
	}
	#footer_page_top .logo {
		padding-bottom: 15%;
	}
	#footer_page_top .logo a picture img {
		width: 100%;
		height: auto;
	}
	#footer_page_top .menu_content {
		width: 100%;
	}
	#footer_page_top .menu_area {
		margin-top: 0px;
		margin-bottom: 4%;
	}
	#footer_page_top .cont-01 {
		width: 100%;
	}
	#footer_page_top .cont-01 .menu,
	#footer_page_top .cont-01 .menu ul {
		width: 100%;
		display: -ms-flexbox;
		-js-display: flex;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	#footer_page_top .cont-01 p,
	#footer_page_top .cont-01 ul li {
		width: 50%;
		padding: 2em 0px;
		padding-left: 5%;
		border-bottom: 1px solid #cecece;
		position: relative;
	}
	#footer_page_top .cont-01 ul li {
		background: #f3f4f5;
	}
	#footer_page_top .cont-01 ul li a::before {
		display: none;
	}
	#footer_page_top .cont-01 ul li a {
		padding-left: 0px;
	}
	#footer_page_top .cont-01 p a::after {
		display: none;
	}
	#footer_page_top .cont-01 p::after,
	#footer_page_top .cont-01 ul li::after {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: 1.5em;
		transform: translateY(-50%);
		width: 0.4em;
		max-width: 10px;
		height: 0px;
		padding-top: 17px;
		background: url(../images/top/2021/ico_arrow_left_sp.png) center center no-repeat;
		background-size: contain;
	}
	#footer_page_top .cont-01 p:nth-of-type(2n-1),
	#footer_page_top .cont-01 ul li:nth-of-type(2n-1) {
		border-right: 1px solid #cecece;
	}
	#footer_page_top .cont-01 .menu:nth-of-type(3) {
		border-top: 1px solid #cecece;
	}
	#footer_page_top .cont-01 .menu:nth-of-type(2) > p,
	#footer_page_top .cont-01 .menu:nth-of-type(3) > p {
		width: 100%;
	}
	#footer_page_top .cont-01 p a,
	#footer_page_top .cont-01 ul li a {
		width: 80%;
		font-size: 2vw;
		line-height: 1em;
	}
	#footer_page_top .cont-02 {
		width: 90%;
		margin: 0 auto;
		margin-top: 6%;
	}
	#footer_page_top .cont-02 .insta {
		width: 5.1%;
		top: auto;
		bottom: 10%;
	}
	#footer_page_top .copy {
		padding: 1% 0px;
	}
	#footer_page_top {
		padding-bottom: 0px;
	}

	#footer_page_top .cont-01 p,
	#footer_page_top .cont-01 ul li {
		padding: 20px 0px;
		padding-left: 20px;
		box-sizing: border-box;
	}
	#footer_page_top .cont-01 p a,
	#footer_page_top .cont-01 ul li a {
		font-size: 10px;
	}
	#footer_page_top .cont-01 p::after,
	#footer_page_top .cont-01 ul li::after {
		right: 15px;
	}
	#footer_page_top .cont-01 .menu:nth-of-type(2) > p,
	#footer_page_top .cont-01 .menu:nth-of-type(3) > p {
		width: 100%;
		border-right: none;
	}
	#footer_page_top .cont-01 .menu:nth-of-type(3) {
		border-top: none;
	}
	#footer_page_top .menu li p {
		border-bottom: 1px solid #cecece !important;
	}
	#footer_page_top .cont-01 p,
	#footer_page_top .cont-01 ul li {
		border-bottom: 1px solid #cecece !important;
	}
	#footer_page_top .logo_area {
		border-bottom: 1px solid #dedede;
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}
	#footer_page_top .copy {
		padding: 1% 0px;
		padding-bottom: 95px;
	}
	#top_page_content #feature h2 .sub::after {
		left: -25px;
		width: 15px;
	}
}
@media screen and (max-width: 750px) {
	.back_wrapper {
		width: 100%;
		max-width: 750px !important;
	}
	.top_2022 .nav-btns ul {
		max-width: 750px !important;
	}

	#footer_page_top .content_box {
		max-width: 750px !important;
	}
	#footer_page_top .logo_area {
		max-width: 750px !important;
	}
}

/* 2024.07.19 */
.back_wrapper {
	position: relative;
	z-index: 20;
	filter: drop-shadow(0px 4px 5px rgb(0 0 0 / 30%));
}
.fvbg_wrapper {
	position: relative;
	width: 100%;
	box-sizing: border-box;
}
.fvbg_wrapper > img {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: 0;
	object-fit: cover;
	box-sizing: border-box;
}

.fvbg-logo {
	position: fixed;
	top: 30px;
	left: 30px;
	z-index: 10;
	width: 120px;
	height: auto;
	aspect-ratio: 120 / 75;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	box-sizing: border-box;
}
.fvbg-logo > img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.fvbg-contents-box {
	width: 100%;
	max-width: 1200px;
	position: fixed;
	z-index: 1;
	margin: 0 auto;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
}

.fvbg-nav-box {
	position: absolute;
	top: 80px;
	left: -130px;
	z-index: 1;
	width: 500px;
	height: 500px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 115px 102px 108px 130px;
	box-sizing: border-box;
}
.fvbg-nav-box > nav {
	position: relative;
	z-index: 2;
	display: flex;
	flex-flow: column;
	gap: 18px;
	width: 100%;
}
.fvbg-nav-box > nav > a {
	display: flex;
	width: 100%;
	gap: 24px;
	align-items: center;
	color: #d97189;
	transition: all ease 0.33s;
}
.fvbg-nav-box > nav > a:hover {
	opacity: 0.6;
}
.fvbg-nav-box > nav > a > span:first-of-type {
	font-size: 34px;
	font-family: bebas-neue, sans-serif;
	line-height: 1.2;
	width: 100px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-shrink: 0;
	letter-spacing: 0px;
}
.fvbg-nav-box > nav > a > span:last-of-type {
	font-size: 18px;
	line-height: 1.72;
	width: auto;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-weight: bold;
}
.fvbg-nav-box > img {
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1 / 1;
}

.fvbg-btn-box {
	position: absolute;
	bottom: 60px;
	right: 0;
	z-index: 1;
	width: 268px;
	height: auto;
	display: flex;
	flex-flow: column;
	gap: 20px;
	align-items: center;
	box-sizing: border-box;
}
.fvbg-btn-bnr-line {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	aspect-ratio: 67 / 25;
}
.fvbg-btn-bnr-line > img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
a.fvbg-btn {
	width: 100%;
	border-radius: 999px;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 60px;
	max-width: 268px;
	font-size: 17px;
	font-weight: bold;
	position: relative;
	border: 1px solid #d97189;
	color: #d97189;
	background: transparent;
	transition: all ease 0.33s;
}
.fvbg-btn svg {
	position: absolute;
	right: 16px;
	width: 14px;
	height: 14px;
	aspect-ratio: 1 / 1;
}
.fvbg-btn:hover {
	color: #fff;
	background: #d97189;
}
.fvbg-btn:hover svg {
	fill: #fff;
}
#footer_page_top {
	padding-bottom: 0px;
	position: relative;
	z-index: 30;
	max-width: 500px;
	margin: 0 auto;
	filter: drop-shadow(0px 4px 5px rgb(0 0 0 / 30%));
}
#footer_page_top .copy {
	padding: 1% 0px;
	padding-bottom: 1%;
}
@media screen and (max-width: 1299px) {
	.fvbg-nav-box {
		left: -100px;
	}
	.fvbg-btn-box {
		right: 30px;
	}
}
@media screen and (max-width: 1199px) {
	.fvbg-contents-box {
		display: none;
	}
	.fvbg-logo {
		display: none;
	}
}
@media screen and (max-width: 750px) {
	#footer_page_top {
		max-width: none;
		filter: none;
	}
	.back_wrapper {
		filter: none;
	}
}

/* 2024.07.26 add */

@media screen and (min-device-width: 750px) {
	.nav-btns {
		display: none;
	}
	.nav-btns.nav-btns-pc {
		display: block;
		max-width: 500px;
		margin: 0 auto;
		left: 0;
		right: 0;
	}
	.nav-btns.nav-btns-pc a {
		font-size: 16px;
		padding: 18px 5px;
		letter-spacing: 0;
	}
}
@media screen and (max-device-width: 750px) {
	.nav-btns {
		display: block;
	}
	.nav-btns.nav-btns-pc {
		display: none;
	}
}

#page_top.top_2022 .video{
	width:100%;
	height:50vw;
	max-height:300px;
	margin:10px auto;
	text-align:center;
	position:relative;
}
#page_top.top_2022 .video iframe{
	position: absolute;
	width: 106%;
	height: 100%;
	left: -13.8px;
	top: 0;
	right: 0;
}
#page_top.top_2022 .v-top{
	color:#A68B62;
	margin-top:30px;
	font-weight:bold;
	margin-bottom: -16px;
}
@media screen and (max-width: 750px) {
	#page_top.top_2022 .video{
		max-height: initial;
		height: 54vw;
	}
	#page_top.top_2022 .video iframe{
		left:-21px;
	}
	#page_top.top_2022 .v-top{
		margin-bottom:0;
	}
}
@media screen and (max-device-width: 750px) {
	#page_top.top_2022 .video{
		max-height: initial;
		height: 54vw;
	}
	#page_top.top_2022 .video iframe{
		left:-21px;
	}
	#page_top.top_2022 .v-top{
		margin-bottom:0;
	}
}

#top_page_content #hero .hero_details .top_images .service_counter_btn{
    margin-right: 2%;
    margin-bottom: 2.5%;
	margin-top: -4%;
    margin-left:auto;
	width: 50%;
}
.top_2022 #top_page_content #feature .content_box > ul.icon_row li{
    margin: 0;
}
.top_2022 #top_page_content #service_counter{
    max-width: 500px;
	overflow-x: hidden;
}
#top_page_content #feature .content_box{
	border:none;
}
.top_2022 #top_page_content #service_counter h2.border{
	border-bottom:solid 1px #dedede;
	padding: 10px;
    margin: 50px auto 20px;
    width: 90%;
}
.top_2022 #top_page_content #service_counter .flx{
	display: flex;
	justify-content: center;
	gap: 5px;
}
.top_2022 #top_page_content #service_counter .flx img{
	width:50%;
	object-fit: contain;
	object-position: top;
}
.top_2022 #top_page_content #service_counter .wrap{
	padding: 0 20px;
}
.top_2022 #top_page_content #service_counter .about_reserve{
	text-align: center;
}
.top_2022 #top_page_content #service_counter .about_reserve .box{
	border: 1px solid;
    padding: 5px 20px;
    letter-spacing: 6px;
	width: fit-content;
    margin: 16px auto;
}
.top_2022 #top_page_content #service_counter .about_reserve .tel{
	font-family: "Poppins", sans-serif;
    margin: 10px 0 16px;
    display: block;
}
@media screen and (max-width: 750px) {
	.top_2022 #top_page_content #service_counter{
		width: 100%;
		max-width: initial;
	}
	.top_2022 #top_page_content #service_counter iframe{
		width: 100%;
	}
}