@charset "utf-8";

html{
	font-size: 16px;
	scroll-padding-top: 100px;
}

*,
*::before,
*::after{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body{
	width: 100%;
	font-family: "dnp-shuei-gothic-gin-std", sans-serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", yu-mincho-pr6, serif;
	letter-spacing: 0.05em;
	position: relative;
}

a{
	color: #000;
	text-decoration: none;
	transition: all 0.5s;
}

a:hover{
	opacity: 0.5;
}

li{
	list-style: none;

}

img{
	width: 100%;
}

main {
	padding-top: 100px;
}

/* ☆ヘッダー */

header {
	width: 100%;
	height: 100px;
	padding-left: 32px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	z-index: 1000;
	background-color: #fff;
}

.header_logo{
	position: relative;
	z-index: 3;
}

.header_logo a{
	display: flex;
}

.header_logo img{
	width: 100%;
	max-width: 180px;
}

.header_nav ul{
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 64px;
	font-size: 16px;
	font-family: "ab-hiro", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.header_beginner{
	display: flex;
	align-items: center;
}

.beginner_mark{
	width: auto;
	height: 100%;
	max-height: 13px;
	margin-right: 4px;
}

.header_reserve_button{
	width: 200px;
	height: 100px;
	color: #FFF;
	background-color: #956057;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.header_reserve_button span{
	text-align: center;
	display: block;
	width: 100%;
	max-width: 152px;
}

.burger_btn_wrapper{
	display: none;
}

.nav-wrapper{
	display: none;
}

/* ファーストビュー（スライダー） */
.first_view{
	width: 100%;
	position: relative;
}

.slick-slide img{
	height: 400px;
	object-fit: cover;
}

.scroll_icon {
	position: absolute;
	left: 20%;
	transform: translateX(-50%);
	bottom: 2%;
	z-index: 10;
}

.scroll_icon::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 11;
	width: 5px;
	height: 105px;
	background: #808080;
}

.scroll_icon::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: -8px;
	z-index: 12;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #000;
	animation: circlemove 3s ease-in-out infinite,
	cirlemovehide 3s ease-out infinite;
}

@keyframes circlemove {
	0% {
	  bottom: 95px;
	}
	100% {
	  bottom: 0px;
	}
  }
  
  @keyframes cirlemovehide {
	0% {
	  opacity: 0;
	}
	50% {
	  opacity: 1;
	}
	80% {
	  opacity: 0.9;
	}
	100% {
	  opacity: 0;
	}
}

/* 共通 */

.section_title{
	width: 95%;
	max-width: 500px;
	margin: 0 auto 60px;
	padding: 8px;
	border-bottom: 1px solid #666;
	color: #666;
	display: flex;
	justify-content: center;
	font-size: 20px;
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-weight: 500;
	font-style: normal;
}

.section_title_page{
	width: 95%;
	max-width: 500px;
	margin: 0 auto 100px;
	padding: 8px;
	border-bottom: 1px solid #666;
	color: #666;
	display: flex;
	justify-content: center;
	font-size: 22px;
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-weight: 500;
	font-style: normal;
}

.content_wrapper{
	width: 95%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 68px 0 80px;
}

.more_button{
	width: 100%;
	max-width: 305px;
	height: 96px;
	margin: 50px auto;
	position: relative;
	display: block;
	box-shadow: 0px 5px 6px rgb(0, 0, 0);;
}

.more_button:hover{
	box-shadow: 0px 3px 4px rgb(0, 0, 0);
	transform: translate(0, 3px);
	filter: brightness(1.2);
	opacity: 1;
}

.more_button p{
	color: #fff;
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-weight: 500;
	font-style: normal;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
}

.button_arrow {
	position: relative;
	display: inline-block;
	width: 45px;
	height: 1px;
	margin-top: 18px;
	border-radius: 9999px;
	background-color: #ffffff;
	
}

.button_arrow::before {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	right: 0;
	width: 12px;
	height: 1px;
	border-radius: 9999px;
	background-color: #ffffff;
	transform: rotate(45deg);
	transform-origin: calc(100% - 1px) 50%;
}

.more_button img{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.post_parent .no_posts {
	text-align: center;
}

/* ☆トップページ */

/* 掲載サロン */

.top_salon_list{
	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 40px;
}

.top_salon_list li{
	width: calc(33.333% - 26.66px);
	background-color: #fff;
}

.top_salon_list a{
	width: 305px;
	height: auto;
	padding: 6px;
	display: block;
	border-radius: 20px;
	box-shadow: 0px 3px 7px rgba(0, 0, 0, 0.2);
	overflow: hidden;
	transition: all 0.5s;
}

.top_salon_list a:hover{
	transform: scale(1.03);
	opacity: 1;
}

.hover_active {
	opacity: 0;
	margin-bottom: 0;
	text-overflow: clip;
	overflow: visible;
	white-space: normal;
	pointer-events: none;
	transition: opacity 0.4s ease;
	visibility: hidden;
}

@media (hover: hover) {
	.excerpt_text_area {
		position: relative;
		margin-bottom: 8px;
		height: 1.6em;
		overflow: hidden;
		transition: height 0.4s ease;
	}

	.top_salon_list a:hover .excerpt_text {
		opacity: 0;
		visibility: hidden;
	}

	.top_salon_list a:hover .excerpt_text_area {
		height: 3em;
	}

	.top_salon_list a:hover .hover_active {
		opacity: 1;
		visibility: visible;
	}
}

.icon_bg_color {
	width: 100px;
	height: 100px;
	clip-path: polygon(0 0, 0% 100%, 100% 0);
	position: absolute;
	top: 0;
	left: 0;
}

.icon_bg_color > img{
	width: 35px;
	height: auto;
	position: absolute;
	top: 10px;
	left: 10px;
}

.scissors_icon{
	width: 89px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}

.category-icon {
	width: auto;
	height: 13px;
	margin-right: 4px;
	vertical-align: middle;
	display: inline-block;
	fill: currentColor;
}

.salon_title{
	width: 100%;
	padding: 15px 0 10px 0;
	font-size: 24px;
	font-style: normal;
	border-bottom: 1px solid #000;
	text-align: center;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}

.top_reserve_title {
	height: 50px;
	line-height: 50px;
}

.salon_title > img,
.archive_salon_title > img{
	width: auto;
	height: 50px;
	object-fit: cover;
}

.salon_title img,
.top_reserve_title {
	margin-left: 64px;
}

.top_salon_excerpt{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	width: 100%;
	height: 100%;
	padding: 10px;
	text-align: center;
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-weight: 500;
	font-style: normal;
	padding-top: 16px;
}

.top_salon_excerpt .excerpt_text {
	margin-bottom: 0;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	transition: opacity 0.4s ease;
}

.top_salon_excerpt .excerpt_text,
.hover_active {
	line-height: 1.6;
}

.excerpt_text_area {
	position: relative;
	margin-bottom: 8px;
}

.hover_active {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}

.excerpt_access{
	font-size: 11px;
	margin-bottom: 16px;
}

.excerpt_img{
	width: 280px;
	height: 178px;
	object-fit: cover;
}

#top_salon .excerpt_img {
	width: 100%;
}

.salon_information_category .top_topic_category{
	margin: 10px auto 0;
}

/* トピックス */
.top_topics_slider{
	width: 100%;
	margin: 60px 0;
}

.topics_text{
	font-size: 18px;
	font-family: "aktiv-grotesk", sans-serif;
	font-weight: 400;
	font-style: normal;
	margin-top: 4px;
	display: flex;
	flex-direction: column-reverse;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
}

.topics_title{
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 4px;
	word-break: break-all;
	width: 100%;
	margin-top: 7px;
}

.layout_topics a {
	display: block;
}


.topics_title_wrap{
	display: block;
	width: 400px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.max_wrap{
	max-width: clamp(540px, 70.22vw, 800px);
}



.topics_date{
	color: #4d4d4d;
	font-size: 14px;
	white-space: nowrap;
}

.topic_category{
	width: fit-content;
	padding: 4px 8px;
	font-size: 13px;
	color: #FFF;
	background-color: #000;
	border-radius: 50px;
	display: flex;
	white-space: nowrap;
}

.topic_category img{
	width: auto;
	height: 13px;
	margin-right: 4px;
	vertical-align: middle;
}

.topic_category .category-icon{
	display: inline-block;
	fill: currentColor;
}

.top_topics_row{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 32px;
}

.top_topics_row > a{
	width: 50%;
}

.top_topics_row > .top_topics_row_empty{
	width: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	aspect-ratio: 4.8 / 3;
	max-width: 100%;
	border: 1px solid #e8e4e0;
	background-color: #faf8f6;
	padding: 16px;
}

.top_topics_row_empty .topics_empty_message{
	margin: 0;
	text-align: center;
	font-size: 16px;
	font-family: "aktiv-grotesk", sans-serif;
	font-weight: 400;
	color: #666;
	line-height: 1.6;
}

.top_topics_row a > img{
	width: 500px;
	max-width: 100%;
	height: auto;
	aspect-ratio: 4.8 / 3;
	object-fit: cover;
}

.slick-next{
	right: 25px;
}

.slick-prev{
	left: 25px;
	z-index: 10;
}

.slick-next,
.slick-prev{
	color: #000
}

.slick-next:before,
.slick-prev:before{
	color: #000
}

/* ニュース */
.top_news_list{
	display: flex;
	flex-direction: column;
	gap: 32px;
	width: 100%;
}

.top_news_list li {
	width: 100%;
}

.top_news_list figure{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 32px;
	width: 100%;
}

.top_news_list a {
	display: block;
}

.top_news_list a img{
	max-width: 250px;
	max-height: 113px;
	object-fit: cover;
}

.news_row{
	width: 100%;
	max-width: 721px;
	padding: 44px 16px;
	border-top: 1px solid #4d4d4d;
	border-bottom: 1px solid #4d4d4d;
	font-family: "aktiv-grotesk", sans-serif;
	font-weight: 400;
	font-style: normal;
	display: grid;
	grid-template-columns: 1fr 90px;
	justify-content: space-between;
	position: relative;
}

.news_row h3{
	font-size: 16px;
	margin: 4px 0;
	word-break: break-all;
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
	max-width: 550px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.news_row .top_news_title {
	-webkit-line-clamp: 1;
}

.news_category {
	width: fit-content;
	height: auto;
	background-color: #956057;
	color: #fff;
	font-size: 10px;
	padding: 3px 8px;
}

.front_news_style {
	position: absolute;
	top: 10px;
	left: 16px;
}

.single_news_style{
	width: fit-content;
	height: auto;
	background-color: #956057;
	color: #fff;
	font-size: 12px;
	display: inline-block;
}

.archive_news_style {
	position: absolute;
	left: 100px;
}

.single_news_style a {
	color: #fff;
	display: block;
	width: 100%;
	padding: 3px 8px;
}



/* カフェ */
.top_cafe_bg{
	background-color: #dfd1bd;
}

.top_advertisement_content {
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", yu-mincho-pr6, serif;
}

/* 広告：表示端末（PC/SP）ブロックの切り替え */
.top_advertisement_content .ad-display-both { display: block; }
.top_advertisement_content .ad-display-pc { display: block; }
.top_advertisement_content .ad-display-sp { display: none; }

/* 初めての方へ */
.top_beginner_bg{
	width: 100%;
	height: 550px;
	background-image: url(../images/coupon_img.jpg);
	background-repeat: no-repeat;
	object-fit: cover;
	background-position: center;
}

.top_beginner_bg h2{
	font-size: 26px;
	text-align: center;
	padding-top: 90px;
	color: #fff;
}

.top_beginner_mark{
	width: auto;
	height: 20px;
	margin-right: 4px;
}

.top_beginner_s{
	text-align: center;
	margin: 20px 0;
	color: #fff;
}

.top_beginner_l{
	text-align: center;
	font-size: 32px;
	font-family: "ab-hiro", sans-serif;
	font-weight: 400;
	font-style: normal;
	margin-top: 100px;
	margin-bottom: 20px;
	color: #FFF;
}

.top_beginner_l span {
	display: inline-block;
	animation: bright 5s ease-in-out infinite;
}

@keyframes bright{
	0%{
		filter: drop-shadow(0 0 1px rgba(255, 255, 255, 0.8));
	}

	5%{
		filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.8));
	}

	10%{
		filter: drop-shadow(0 0 1px rgba(255, 255, 255, 0.8));
	}
}

.top_beginner_arrow {
	margin: 0 auto;
	display: block;
	width: 190px;
	height: 70px;
	background: #ffffff;
	clip-path: polygon(0 28.6%, 18.4% 28.6%, 18.4% 0, 81.6% 0, 81.6% 28.6%, 100% 28.6%, 50% 100%);
}

.top_beginner_bg .more_button{
	margin-top: 24px;
}

/* ☆サロンページ */
.filter_form{
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 32px;
	margin-bottom: 60px;
}

.filter_form button{
	width: 200px;
	height: 35px;
	border: 0;
	background-color: #00ad86;
	border-radius: 10px;
	color: #fff;
}

.select_row{
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 4px;
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-weight: 500;
	font-style: normal;
}

.select_row select{
	border: 0;
	padding: 0 10px;
	height: 35px;
	border-radius: 10px;
	color: #808080;
	background-color: #d4e4f1b3;
	width: 140px;
}

.font_size_designation {
	font-size: 14px;
}



.layout_grid{
	width: 100%;
	display: grid;
	gap: 40px;
	justify-content: center;
	margin-bottom: 60px;
}

.archive_topics_container .layout_grid {
	grid-template-columns: repeat(2, minmax(200px, 1fr));
}

.archive_reserve_container .layout_grid {
	grid-template-columns: 1fr;
}

.layout_grid li{
	width: 100%;
	height: 100%;
	margin: 0 auto;
}


.salon_card{
	width: 100%;
	height: auto;
	border: 1px solid #000;
	display: flex;
	flex-direction: column;
	border-radius: 20px;
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-weight: 500;
	font-style: normal;
	letter-spacing: 0.05em;
}

.salon_information{
	color: #fff;
	background: #956057;
	padding: 24px;
	border-radius: 19px 19px 0 0;
}

.salon_information_category{
	display: flex;
	flex-direction: row;
	gap: 8px;
}

.salon_information_category .topic_category{
	color: #956057;
	background-color: #fff;
}

.salon_information_category .top_topic_category{
	background-color: #956057;
	color: #fff;
}

.salon_card span{
	margin-right: 8px;
}

.salon_card h3{
	font-size: 36px;
	font-weight: 400;
	font-style: normal;
	padding: 0 10px 10px;
	margin: 10px 0 15px;
	border-bottom: 1px solid #fff;
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
}


.archive_salon_title img{
	height: 100%;
}

.salon_reservation_img{
	width: 100%;
	max-width: 300px;
	align-self: flex-end;
	filter: brightness(1.0) drop-shadow(0px 2px 3px rgb(0, 0, 0));
	transition: all 0.5s;
}

.salon_excerpt_images a{
	opacity: 1;
}

.salon_excerpt_images a:hover .salon_reservation_img{
	transform: translate(0, 3px);
	filter: brightness(1.1) drop-shadow(0px 0px 0px rgb(0, 0, 0));
}

.salon_information_texts p{
	font-size: 13px;
	margin: 14px 0;
	display: flex;
	align-items: center;
}

.salon_information_texts p:last-child{
	margin-bottom: 0;
}

.salon_information_texts span{
	width: 16px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
}

.salon_information_texts img{
	margin-right: 4px;
	width: auto;
	height: 16px;
}

.salon_excerpt{
	padding: 24px 24px 10px;
	gap: 16px;
	display: flex;
}

.salon_excerpt_inner {
	width: 50%;
}

.salon_excerpt_img{
	width: 50%;
	height: 300px;
	object-fit: cover;
	margin: 0 auto;
}

.salon_excerpt_title {
	font-size: 18px;
}

.top_salon_excerpt_title {
	color: #956057;
}

.salon_excerpt_text{
	font-size: 13px;
}

.salon_excerpt_images{
	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 32px;
	padding: 0 24px 34px 24px;
}

.salon_excerpt_images a{
	display: block;
	text-align: center;
}

.salon_excerpt_images p{
	font-size: 13px;
}

.margin_bottom_15 {
	margin-bottom: 15px;
}

.pagination{
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 16px;
	font-size: 18px;
	font-family: "aktiv-grotesk", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.pagination li{
	list-style: none;
}

.pagination li a,
.pagination li span{
	color: #4d4d4d;
	text-decoration: none;
}

.pagination li.active span{
	font-weight: 700;
	color: #fff;
	background-color: #956057;
	padding: 6px 6px;
	border-radius: 50%;
}

.pagination_prev{
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-right: 12px solid #4d4d4d;
	border-left: 0;
}

.pagination_next{
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 12px solid #4d4d4d;
	border-right: 0;
}

.more_btn {
	display: none;
}

.archive_salon_excerpt_title {
	color: #fff;
}

.archive_reserve_container {
	margin-bottom: 60px;
}

/* ☆トピックスページ */
.topics_textbox{
	margin-top: 16px;
	word-break: break-all;
	text-align: left;
}

.topics_single{
	margin: 60px 0;
	text-align: center;
}

.topics_img {
	height: 300px;
	object-fit: cover;
	margin: 0 auto;
}

.archive_topics_container .topics_img{
	width: 100%;
	height: auto;
	max-height: 300px;
	aspect-ratio: 4.8 / 3;
}

.topics_single_img{
	width: 70%;
	min-width: 250px;
	height: auto;
	max-height: 400px;
	object-fit: contain;
	margin: 0 auto;
}

.return_button{
	width: 120px;
	height: 45px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #4d4d4d;
	border: 1px solid #4d4d4d;
	margin: 0 auto;
	margin-bottom: 180px;
}

.return_button span {
	position: relative;
	display: inline-block;
	width: 8.9px;
	height: 13.9px;
	margin-right: 4px;
}

.return_button span::before,
.return_button span::after {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
	width: 11px;
	height: 2px;
	border-radius: 9999px;
	background-color: #4d4d4d;
	transform-origin: 1px 50%;
}

.return_button span::before {
	transform: rotate(45deg);
}

.return_button span::after {
	transform: rotate(-45deg);
}

/* ☆ニュースページ */
.news_layout_grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(200px, 1fr));
	gap: 40px;
	margin-bottom: 60px;
}

.news_layout_grid li{
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}

.news_layout_grid li a {
	display: block;
}

.news_layout_grid a img{
	max-width: 300px;
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 3 / 2;
}

.news_text{
	font-family: "aktiv-grotesk", sans-serif;
	font-weight: 400;
	font-style: normal;
	position: relative;
}

.news_date{
	color: #4d4d4d;
	margin: 4px 0;
	font-size: 14px;
	margin-right: 10px;
	text-align: right;
}


.news_single{
	margin: 134px 0;
	font-family: "aktiv-grotesk", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.news_single_flex{
	display: flex;
	flex-direction: row;
	gap: 16px;
}

.news_single_flex > img{
	width: 380px;
	max-height: 300px;
	object-fit: cover;
}

.news_single_text{
	word-break: break-all;
	position: relative;
}

.news_title{
	font-size: 18px;
	word-break: break-all;
	margin-top: 7px;
}

.archive_news_title {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	width: 100%;
}

.news_textbox{
	font-size: 16px;
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-weight: 500;
	font-style: normal;
	margin: 16px 0;
}

/* ☆初めての方へページ */
.section_title_page img{
	width: auto;
	height: 26px;
	margin-right: 4px;
}

.beginner_box{
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-weight: 500;
	font-style: normal;
	display: flex;
	flex-direction: row;
	margin-bottom: 60px;
	line-height: 1.75;
	letter-spacing: 0.05em;
}

.beginner_message1{
	max-width: 678px;
}

.beginner_message1_mobile{
	display: none;
}

.beginner_message2{
	max-width: 520px;
}

.beginner_box p{
	padding: 16px 32px;
}

.beginner_box > img{
	max-width: 400px;
	object-fit: cover;
}

.beginner_bubble{
	max-width: 408px;
	margin-left: -15px;
}

.beginner_choice_grid{
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 60px 0;
	justify-items: center;
}

.beginner_choice_grid img{
	max-width: 406px;
	margin-left: -25px;
}

.beginner_can{
	max-width: 525px;
}

.fade_in h3 {
	font-size: 18px;
	margin-bottom: 16px;
}

.beginner_use{
	width: 100%;
	height: 240px;
	border: 1px solid #4d4d4d;
	border-radius: 34px;
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 16px;
	padding: 32px;
	margin-bottom: 16px;
}

.beginner_use:nth-of-type(2){
	position: relative;
	z-index: 1;
}

.beginner_use .beginner_use_text {
	width: 70%;
	text-align: center;
}

.beginner_use_text p {
	width: fit-content;
	text-indent: -1em;
	padding-left: 1em;
	word-break: auto-phrase;
	text-align: left;
}

.beginner_use p span{
	color: #00ad86;
	font-weight: 600;
}

.beginner_check{
	max-width: 243px;
	margin-bottom: 16px;
}

.beginner_photos{
	max-width: 312px;
}

.beginner_sample{
	max-width: 100px;
	transform: rotate(15deg);
	filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.4));
}

.beginner_bottom_message{
	text-align: center;
	font-size: 21px;
	line-height: 1.4;
	word-break: auto-phrase;
	margin-bottom: 40px;
}

.beginner_bottom_message span{
	word-break: auto-phrase;
	font-weight: 600;
}

.beginner_bottom_message_indent {
	display: inline-block;
}

.beginner_sample_site_img {
	max-width: 300px;
	object-fit: cover;
	box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.4);
}

.beginner_photos_box{
	width: 30%;
	min-width: 260px;
}

.beginner_sample_site_box {
	text-align: center;
}

.section_margin {
	margin-bottom: 120px;
}

.margin_bottom_60 {
	margin-bottom: 60px;
}


.coupon_bg{
	background-color: #eff9f8;
}

.coupon_wrapper{
	padding: 50px 0 120px 0;
}

.coupon_wrapper h3{
	font-size: 42px;
	font-family: "ab-hiro", sans-serif;
	font-weight: 400;
	font-style: normal;
	text-align: center;
	margin-bottom: 50px;
}

.coupon_wrapper h3 span{
	font-size: 20px;
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-style: normal;
	display: block;
}

.coupon_wrapper ul{
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.coupon_card{
	width: 100%;
	height: 182px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	background-color: #fff;
}

.coupon_new{
	width: 40px;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #FFF;
	background-color: #808080;
	font-size: 14px;
	writing-mode: vertical-lr;
	letter-spacing: 0.5em;
}

.coupon_header{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	border-bottom: 1px solid #4d4d4d;
	padding: 4px 0;
	max-width: 580px;

}

.coupon_header h4{
	font-size: 20px;
	font-weight: 400;
	font-style: normal;
	padding: 4px 16px;
}

.coupon_category_flex{
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 8px;
}

.coupon_category_flex p{
	font-size: 10px;
	padding: 4px 8px;
	color:#FFF;
	background-color: #4d4d4d;
}

.coupon_content{
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: row;
}

.coupon_content > div{
	width: 100%;
}

.coupon_comment_large{
	color: #00ad86;
	margin: 10px 8px;
}

.coupon_comment_large span{
	color: #ff0000;
}

.coupon_comments{
	max-width: 580px;

}

.coupon_comment{
	font-size: 12px;
	margin: 12px 8px;
}

.coupon_comment_small{
	font-size: 11px;
	margin: 12px 8px;
}

.coupon_reservation_img{
	max-width: 107px;
	aspect-ratio: 1 / 1;
	align-self: center;
	display: block;
}

.coupon_card_flex{
	display: flex;
	flex-direction: row;
}

.coupon_under{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin-top: 8px;
}


.coupon_img{
	width: 190px;
	height: 120px;
	object-fit: cover;
	margin: 0 16px;
	filter: brightness(1.0) drop-shadow(0px 1px 2px rgb(0, 0, 0));
}

.coupon_reservation_img:hover {
	transform: translate(0, 3px);
	filter: brightness(1.1) drop-shadow(0px 0px 0px rgb(0, 0, 0));
	opacity: 1;
}

.coupon_bottom_message{
	font-size: 14px;
	text-align: right;
	margin-top: 16px;
}

.beginner_choice_title {
	margin-bottom: 16px;
}

/* ☆運営情報ページ */
.operation_content{
	margin: 100px auto 140px auto;
}

.operation_row{
	display: flex;
	flex-direction: row;
	align-items: center;
	margin-bottom: 16px;
	width: 440px;
	margin-left: auto;
}

.operation_row p:first-child{
	width: 154px;
	height: 45px;
	color: #666;
	clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
	display: flex;
	align-items: center;
	padding-left: 16px;
}

/* ☆利用規約ページ */
.terms_top_message,
.terms_box{
	font-family: "dnp-shuei-gothic-gin-std", sans-serif;
	font-style: normal;
	line-height: 1.5;
}

.terms_top_message{
	margin: 80px 0 40px 0;
	font-weight: 600;
}

.terms_box{
	margin: 32px 0;
}

.terms_box:last-child{
	margin-bottom: 186px;
}

.terms_box h3{
	font-size: 18px;
	color: #00ad86;
}

.terms_box li{
	list-style-type: decimal;
	margin-left: 1.5em;
}

/* ☆フッター */
footer{
	border-top: 1px solid #4d4d4d;
}

.footer_block{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 64px;
}

.footer_wrapper {
	width: 95%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 68px 0 40px;
}

.footer_logo img{
	max-width: 205px;
}

.footer_nav{
	font-family: "ab-hiro", sans-serif;
	font-weight: 400;
	font-style: normal;
	display: flex;
	flex-direction: row;
	gap: 60px;
}

.footer_nav ul{
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.footer_beginner_mark{
	width: auto;
	height: 12px;
	margin-right: 4px;
}

.footer_nav_color{
	font-size: 14px;
	color: #4d4d4d;
	margin-left: 1em;
}

.footer_nav ul:last-child a{
	color: #4d4d4d;
}

.insert_space{
	margin-left: 12px;
}

.copyright{
	font-size: 12px;
	font-family: "noto-sans", sans-serif;
	font-weight: 600;
	font-style: normal;
	display: block;
	text-align: center;
	margin: 60px 0 16px 0;
}

.footer_sns_wrapper {
	width: 20%;
}

.footer_sns_block {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 35px;
}

.footer_sns_icon {
	width: 100%;
}

.footer_sns_icon a {
	display: flex;
	align-items: center;
}

.footer_sns_x{
	width: 25px;
	height: auto;
}

.footer_sns_instagram {
	width: fit-content;
	height: auto;
}

.footer_sns_instagram img {
	margin-right: 3px;
	width: 30px;
}

.footer_sns_youtube {
	width: 90px;
	height: auto;
}

.footer_youtube_logo_sp {
	display: none;
}

/* js用 */
.fade_in_single,
.fade_in_child{
	transition: 0.5s ease-in;
	opacity: 0;
	transform: translateY(40px);
}

.fade_in_single{
	transform: translateY(0);
}

.fade_in_scale{
	transition: 0.5s ease-in-out;
	transform: scale(0);
}

.fade_in_single.show,
.fade_in_child.show{
	transform: translateY(0);
	opacity: 1;
}

.fade_in_scale.show{
	transform: scale(1);
}

.fade_in_child {
	height: fit-content;
}

/* -------------タブレット版------------- */
@media screen and (max-width:1024px){
	/* ハンバーガーメニュー */
	.header_nav{
		display: none;
	}

	header {
		width: 100%;
		position: fixed;
		background-color: #fff;
		padding: 0 32px;
	}

	body {
		padding-top: 0;
	}

	main {
		padding-top: 100px;
	}

	button {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		background: transparent;
		border: 0;
		border-radius: 0;
		color: inherit;
		cursor: pointer;
		font: inherit;
		margin: 0;
		outline: none;
		padding: 0;
		vertical-align: middle;
	}

	.burger_btn_wrapper {
		display: block;
		width: 50px;
		height: 50px;
		position: relative;
		right: 0;
		top: 0;
		z-index: 100;
		border: none;
		background-color: #00ad86;
		border-radius: 50%;
	}

	.burger-btn{
		display: block;
		width: 28px;
		height: 20px;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate( -50%, -50%);
	}

	.bar{
		width: 100%;
		height: 2px;
		display: block;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		background-color: #fff;
		transition: all .3s ease;
	}
	.bar_top{
		top: 0;
	}
	.bar_mid{
		top: 50%;
		transform: translate(-50%,-50%);
	}
	.bar_bottom{
		bottom: 0;
	}

	.burger-btn.close .bar_top{
		top: 50%;
		transform: translate(-50%, -50%) rotate(45deg);
	}
	.burger-btn.close .bar_mid{
		opacity: 0;
	}
	.burger-btn.close .bar_bottom{
		bottom: 50%;
		transform: translate(-50%, 50%) rotate(-45deg);
	}

	.nav-wrapper{
		visibility: hidden;
		opacity: 0;
		width: 100vw;
		height: 100vh;
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		transition: all .5s;
		z-index: 2;
	}
	.header-nav{
		width: 100%;
		height: 100%;
		background-color:#1B1310;
		z-index: 2;
	}
	.nav-list{
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		text-align: center;
		margin-top: 40px;
	}
	.nav-item{
		margin-right: 0;
		margin-bottom: 40px;
	}

	.header_beginner{
		justify-content: center;
	}

	.noscroll{
		overflow: hidden;
	}

	/* メニューオープン時 */
	.nav-wrapper.fade {
		visibility: visible;
		opacity: 1;
	}

	.header_nav_mobile{
		background-color: #fff;
	}

	.header_nav_mobile .header_reserve_button {
		width: 230px;
		height: 100px;
		color: #fff;
		background-color: transparent;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		position: relative;
	}

	.header_nav_mobile .header_reserve_button p {
		text-align: center;
		display: block;
		width: 100%;
		max-width: 152px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: 1;
	}

	.header_nav_mobile .header_reserve_button span {
		position: relative;
		display: inline-block;
		width: 45px;
		height: 1px;
		margin-top: 18px;
		border-radius: 9999px;
		background-color: #ffffff;
	}

	.header_nav_mobile .header_reserve_button img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: contain;
		display: block;
		z-index: 0;
	}

	/* トップページ */
	.scissors_icon{
		width: clamp(65px, 8.45vw ,89px);
	}

	.salon_title{
		padding: 12px 0 8px 0;
		font-size: clamp(20px, 6.67vw, 24px);
	}


	.top_salon_list{
		gap: clamp(20px, 6vw ,30px);
	}

	.top_salon_list a{
		width: 100%;
		height: auto;
	}

	.excerpt_text{
		font-size: clamp(12px, 1.56vw, 16px);
	}

	.excerpt_access{
		font-size: 11px;
	}

	.excerpt_img{
		width: 100%;
		height: auto;
		aspect-ratio: 280 / 178;
	}

	.top_topics_row a > img{
		width: 100%;
	}

	/* 初めての方へページ */
	.beginner_message1_img{
		display: none;
	}

	.beginner_message1_mobile{
		display: block;
	}

	.beginner_box > img{
		max-width: 340px;
	}

	.coupon_wrapper h3{
		font-size: 32px;
	}

	.coupon_wrapper h3 span{
		font-size: 16px;
	}

	.coupon_header h4{
		font-size: 13px;
	}

	.coupon_comment_large{
		font-size: 12px;
	}

	.coupon_comment{
		font-size: 10px;
	}

	.coupon_comment_small{
		font-size: 10px;
	}

	.coupon_reservation_img{
		width: 70px;
	}

	.coupon_img {
		width: clamp(170px, 22.1vw, 205px);
	}


	.beginner_photos_box {
		text-align: center;
	}
}






/* -------------スマホ版------------- */

@media screen and (max-width:768px) {
	html{
		scroll-padding-top: 70px;
	}


	header{
		padding: 0 16px;
		height: 70px;
	}

	main {
		padding-top: 70px;
	}

	.header_logo img {
		width: 75%;
	}

	.burger_btn_wrapper {
		width: 45px;
		height: 45px;
	}

	.burger-btn{
		right: 0;
		width: 25px;
	}

	.content_wrapper {
		width: 100%;
		padding: 40px 20px 40px;
	}

	.section_title_page {
		margin: 0 auto 60px;
	}

	.salon_title {
		margin: 0 auto;
	}

	.top_salon_item .salon_title {
		text-overflow: clip;
		white-space: normal;
		word-break: normal;
		line-break: auto;
		overflow: visible;
		overflow-wrap: normal;
		-webkit-hyphens: auto;
		hyphens: auto;
		min-width: 0;
	}

	@supports (word-break: auto-phrase) {
		.top_salon_item .salon_title {
			word-break: auto-phrase;
		}
	}

	.top_salon_list {
		width: 100%;
	}

	.top_salon_list li{
		width: 100%;
		max-width: 350px;
	}

	.top_salon_list,
	.top_news_list figure{
		flex-direction: column;
		align-items: center;
	}



	.top_salon_excerpt .excerpt_text{
		font-size: clamp(15px, 5vw, 16px);
		text-overflow: clip;
		white-space: normal;
		overflow: visible;
		word-break: auto-phrase;
	}

	.hover_active{
		display: none;
	}


	.excerpt_address{
		font-size: clamp(9px, 3vw, 10px);
	}

	.topics_wrapper{
		width: 100dvw;
		padding: 40px 0;
	}

	.top_topics_slider{
		margin: 30px 0;
	}

	.more_button{
		width: 250px;
		height: 70px;
		margin: 35px auto 25px;
	}

	.slick-slide img{
		max-height: clamp(186px, 58.12vw, 400px);
	}

	.slick-prev{
		left: 10px;
	}

	.slick-next{
		right: 10px;
	}

	.top_topics_row{
		gap: 16px;
		width: 95%;
		margin: 0 auto;
		max-width: 1000px;
	}

	.topics_text{
		flex-direction: column-reverse;
		align-items: flex-start;
		gap: 4px;
	}

	.insert_padding{
		padding: 0 2.5%;
	}

	.topics_title{
		font-size: 16px;
		display: flex;
		align-items: center;
	}

	.topics_title_single {
		align-items: flex-start;
		flex-direction: column;
	}

	.topics_title_wrap{
		font-size: 16px;
	}

	.top_topics_row > a {
		width: calc(50% - 8px);
	}

	.top_topics_row > .top_topics_row_empty {
		width: calc(50% - 8px);
	}

	.topics_single_img {
		max-height: clamp(250px, 78.12vw, 400px);
		height: auto;
		width: 100%;
	}


	.archive_wrap{
		max-width: clamp(280px, 93.33vw, 470px);
		width: calc(100dvw - 116px);
	}

	.topics_date{
		font-size: 12px;
	}

	.topic_category{
		font-size: 12px;
	}

	.topic_category img{
		height: 12px;
	}

	.category-icon {
		height: 12px;
	}


	.top_news_list li{
		margin: 0 auto;
		width: 100%;
		height: auto;
	}

	.top_news_list figure{
		gap: 4px;
		width: 100%;
	}

	.top_news_list a img{
		width: 100%;
		max-width: none;
		height: auto;
		max-height: none;
        aspect-ratio: 3 / 2;
	}

	.news_row{
		padding: 0;
		border-top: 0;
		border-bottom: 0;
		justify-content: center;

	}

	.news_category {
		padding: 3px clamp(5px, 1.67vw, 8px);
		white-space: nowrap;
	}

	.single_news_style a {
		padding: 3px clamp(5px, 1.67vw, 8px);
        font-size: clamp(10px, 3.33vw, 12px);
        white-space: nowrap;
	}

	.front_news_style {
		position: initial;
		display: flex;
		align-items: center;
	}


	.news_row h3,
	.news_title,
	.archive_news_title{
		font-size: 16px;
		max-width: 600px;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 1;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: normal;
	}

	.news_single_text .news_title{
		display: block;
		overflow: visible;
		text-overflow: initial;
		white-space: normal;
		max-width: 100%;
		-webkit-line-clamp: unset;
		-webkit-box-orient: unset;
	}

	.news_date{
		font-size: 12px;
		margin-right: 0;
	}


	/* 広告：表示端末ブロック（SP時） */
	@media screen and (max-width: 768px) {
		.top_advertisement_content .ad-display-pc {
			display: none;
		}
		.top_advertisement_content .ad-display-sp {
			display: block;
		}
	}



	.top_beginner_bg{
		background-image: url(../images/coupon_img_mobile.png);
		aspect-ratio: 195 / 115;
		background-size: cover;
	}

	.top_beginner_bg h2,
	.top_beginner_l{
		font-size: clamp(20px,6.25vw, 26px);
	}

	.top_beginner_bg h2{
		padding-top: 45px;
	}

	.top_beginner_s{
		font-size: clamp(10px, 3.12vw, 16px);
	}

	.top_beginner_l{
		margin-top: 60px;
	}

	.top_beginner_arrow{
		width: clamp(100px, 31.25vw, 190px);
		height: clamp(40px, 12.5vw ,70px);
	}

	/* トピックスページ */
	.archive_topics_container .layout_grid{
		grid-template-columns: repeat(1,1fr);
		justify-items: center;
	}

	.layout_topics{
		width: 100%;
		max-width: 470px;
	}

	.topics_img{
		width: 100%;
		height: auto;
		aspect-ratio: 3 / 2;
	}

	.topics_single{
		margin: 30px 0;
	}

	.topics_textbox{
		font-size: 14px;
	}

	.filter_form .archive_topics--button {
		width: 230px;
	}

	/* ニュースページ */
	.news_layout_grid{
		grid-template-columns: repeat(1, minmax(200px, 470px));
		justify-content: center;
	}

	.news_single{
		margin: 30px 0;
	}

	.news_single_flex{
		flex-direction: column;
		gap:8px;
	}

	.news_single_flex img{
		width: 100%;
		height: auto;
		max-height: 300px;
	}

	.news_textbox{
		font-size: 14px;
	}

	.pagination{
		margin: 35px 0 0;
	}

	.return_button{
		margin-bottom: 90px;
	}

	.news_layout_grid li {
		max-width: initial;
	}

	.news_layout_grid a img {
		max-width: initial;
	}

	.news_layout_grid .noPosts {
		text-align: center;
	}

	/* サロンページ */
	.salon_card h3 {
		font-size: 30px;
	}

	.filter_form{
		flex-direction: column;
		gap: 15px;
	}

	.filter_form .select_row{
		margin: 0;
	}

	.salon_card{
		width: clamp(270px, 90vw, 500px);
		height: auto;
		margin: auto;
	}

	.salon_excerpt {
		flex-direction: column;
		align-items: center;
		gap: 16px;
		padding: 0 0 20px 0;
		overflow-x: hidden;
	}

	.salon_excerpt_inner {
		width: 100%;
	}

	.salon_information{
		padding: 12px;
	}

	.salon_information_texts p{
		font-size: 12px;
	}

	.salon_excerpt_title{
		font-size: clamp(14px, 4.6vw, 16px);
	}

	.salon_excerpt_text{
		font-size: clamp(12px, 4vw, 13px);
		order: 2;
		padding: 0 12px;
	}

	.salon_excerpt_img{
		width: 100%;
		height: 220px;
		aspect-ratio: 3 / 1;
		object-fit: cover;
		object-position: center;
		order: 1;
	}

	.n2-section-smartslider,
	.n2-ss-align.n2-ss-align-visible,
	.n2-padding,
	.n2-ss-slider,
	.n2-ss-slider-1,
	.n2-ss-slider-2,
	.n2-ss-slider-3,
	.n2-ss-slide-backgrounds,
	.n2-ss-slide-background,
	.n2-ss-slider-4,
	.n2-ss-slide{
		height: 220px;
	}


	.margin_bottom_15 {
		margin-bottom: 0px;
	}

	.salon_excerpt_images p{
		font-size: 10px;
	}

	.salon_reservation_img {
		max-width: 280px;
	}

	.text_indent {
		padding-left: 1em;
		text-indent: -1em;
	}

	.filter_form .archive_reserve--button {
		width: 200px;
	}

	.more_content {
		max-height: 50svh;
		overflow: hidden;
		position: relative;
		transition: max-height 0.3s ease-out;
		cursor: pointer;
	}

	.more_content::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		height: 100px;
		background: linear-gradient(transparent 5%, #fff);
		pointer-events: none;
	}

	.more_content.open::after {
		display: none;
	}

	.more_btn {
		width: 100%;
		padding: 0 0 30px;
		display: block;
		cursor: pointer;
		text-align: center;
	}

	.more_btn button {
		width: 70%;
		height: auto;
		padding: 5px 30px;
		font-size: 16px;
	}

	.button_active button {
		background-color: #666;
		color: #fff;
		border-radius: 20px;
		font-size: 12px;
	}



	/* 初めての方へページ */
	.beginner_box{
		flex-direction: column;
		align-items: center;
	}

	.beginner_box p{
		font-size: clamp(12px, 4vw, 14px);
	}

	.beginner_message1{
		max-width: 390px;
		margin: 0 auto;
	}

	.beginner_choice_grid{
		grid-template-columns: repeat(1, 1fr);
	}

	.beginner_choice_grid li{
		text-align: center;
	}

	.beginner_choice_grid img{
		max-width: clamp(235px, 78.33vw, 300px);
	}

	.beginner_use{
		height: auto;
		flex-direction: column;
		padding: 16px;
		padding-bottom: 32px;
	}

	.beginner_use p{
		font-size: 14px;
		margin: 0 auto;
	}

	.beginner_check{
		max-width: clamp(100px, 33vw, 150px) ;
	}

	.beginner_photos {
		max-width: clamp(230px, 76.6vw, 312px);
	}

	.beginner_use .more_button{
		margin: 0;
	}

	.beginner_bottom_message{
		font-size: 13px;
		margin-bottom: 20px;
	}

	.beginner_sample_site_img {
		max-width: clamp(200px, 66.66vw, 300px);
	}

	.beginner_use .beginner_use_text {
		text-align: center;
		width: 100%;
	}

	.beginner_photos_box {
		width: 100%;
	}

	.beginner_box {
		margin-bottom: 40px;
	}

	.beginner_choice_grid {
		gap: 40px;
	}

	.section_margin {
		margin-bottom: 60px;
	}

	.margin_bottom_60 {
		margin-bottom: 30px;
	}

	.coupon_wrapper{
		padding: 40px 15px 60px 15px;
	}

	.coupon_wrapper h3{
		font-size: 24px;
		margin-bottom: 40px;
	}

	.coupon_wrapper h3 span{
		font-size: 12px;
	}

	.coupon_card_flex{
		gap: 8px;
		margin: 0 4px;
		display: grid;
		grid-template-columns: clamp(65px, 21.66vw ,90px);
		justify-items: center;
	}

	.coupon_card {
		padding-right: 5px;
	}

	.coupon_comment_large {
        font-size: clamp(10px, 3.33vw ,12px);
		margin: 4px 0;
		margin-left: 4px;
    }

	.coupon_comment {
		font-size: clamp(9px, 3vw, 11px);
		margin: 4px 0;
		margin-left: 4px;
	}

	.coupon_comment_small {
		font-size: clamp(8px, 2.66vw, 11px);
		margin: 4px 0;
		margin-left: 4px;
	}

	.coupon_reservation_img {
		max-width: clamp(65px, 21.66vw ,90px);

	}

	.coupon_header h4{
		font-size: clamp(10px, 3.33vw ,13px);
		padding: 2px 4px;
	}

	.coupon_img {
		width: 100%;
		height: 60px;
		object-fit: cover;
		margin: 0 4px;
	}

	.coupon_category_flex{
		gap: 4px;
	}

	.coupon_category_flex p {
		font-size: clamp(6px, 2vw, 10px);
		padding: 2px;

	}

	.coupon_new{
		width: 16px;
		font-size: 10px;
	}

	.coupon_bottom_message{
		font-size: 11px;
	}

	/* 規約ページ */

	.terms_top_message,
	.terms_box{
		font-size: 13px;
	}

	.terms_top_message {
		margin: 0 0 40px 0
	}

	.operation_content {
		margin: 40px auto 80px auto;
	}

	.operation_row{
		flex-direction: column;
		align-items: start;
		width: 232px;
		font-size: 13px;
	}

	.operation_row p:first-child{
		padding-left: 0;
	}

	/* フッター */

	.footer_wrapper{
		padding: 30px 20px 20px;
	}

	.footer_block,
	.footer_nav{
		flex-direction: column;
		align-items: center;
	}

	.footer_block{
		gap: 25px;
	}

	.copyright{
		font-size: 10px;
		margin: 0;
	}

	.footer_sns_wrapper {
		width: fit-content;
	}

	.footer_sns_block {
		flex-direction: row;
		align-items: start;
		gap: 25px;
	}

	.footer_sns_x {
		width: 27px;
	}

	.footer_sns_instagram img {
		width: 35px;
		margin-right: 0px;
	}

	.footer_sns_instagram span {
		display: none;
	}

	.footer_youtube_logo_pc {
		display: none;
	}

	.footer_youtube_logo_sp {
		display: block;
	}

	.footer_sns_youtube {
		width: 45px;
	}

	.footer_nav ul {
		align-items: center;
		gap: 22px;
	}

	.footer_nav {
		gap: 40px;
		margin-bottom: 15px;
	}

	.insert_space {
		margin-left: 0;
	}

	.footer_nav_color  {
		margin-left: 0;
	}

	.footer_beginner_wrapper {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.line_breaks {
		display: none;
	}

	.footer_sns_icon a {
		display: block;
	}

	.section_title {
		margin: 0 auto 30px;
	}
}

@media screen and (max-width:560px) {
	.top_beginner_bg{
		height: 400px;
		aspect-ratio: 0;
		background-size: cover;
	}

	.top_beginner_arrow {
        width: 80px;
        height: 30px;
    }
}

/* 404ページ */
.page_404{
    max-width: 1000px;
    margin: 0 auto;
	padding: 200px 20px;
    text-align: center;
}
.page404_title{
    font-size: 50px;
    margin-bottom: 5px;
}
.page404_subtitle{
    font-size: 20px;
    margin-bottom: 20px;
}
.page404_text{
    font-size: 16px;
    line-height: 1.5;
	margin-bottom: 50px;
}
.page404_button{
    width: 200px;
	height: 50px;
    margin: 0 auto;
}
.page404_button a{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #222;
    color: #fff;
}
.page404_button a:hover{
    opacity: 0.8;
}

@media screen and (max-width: 768px) {
	.page404_title{
		font-size: 24px;
	}
	.page404_subtitle{
		font-size: 16px;
	}
	.page404_text{
		font-size: 14px;
	}
}