@charset "UTF-8";
/*
Theme Name: DETAIL BASE
Description: DETAIL BASE Theme
Author: cunelwork
Version: 202604
 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap");

/* ============================
	base
============================ */
html {
	scroll-behavior: smooth;
}

@media screen and (max-width: 1200px) {
	html {
		font-size: 52%;
	}
}

body {
	color: #000;
	font-weight: 400;
	font-size: 1.6rem;
	font-family: "Lato","Sawarabi Gothic", sans-serif;
	line-height: 2;
	background: #fff;
	letter-spacing: 0.1em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
}

p {
	margin: 0;
}

p + p {
	margin-top: 1em;
}

a {
	color: #000;
	text-decoration: none;
}

a:hover {
	opacity: 0.8;
	transition: all .3s;
}

small {
	font-size: 100%;
}

.bold {
	font-weight: 700;
	font-family: "Sawarabi Gothic", sans-serif;
}

.wf-din {
	font-weight: 400;
	font-family: din-2014, sans-serif;
	font-style: 400;
}

.pre-wrap {
	display: block;
	white-space: pre-wrap;
}

.ofi {
	object-fit: cover;
	object-position: center;
	font-family: "object-fit: cover; object-position: center;";
}

.ofi-contain {
	object-fit: contain;
	object-position: center;
	font-family: "object-fit: cover; object-position: center;";
}

/* fonts */
.futura {
	font-family: futura-pt, sans-serif;
}

.mincho {
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3",
		"Hiragino Mincho ProN", "source-han-serif-japanese",
		source-han-serif-japanese, serif;
}

.roboto {
	font-family: "Roboto", sans-serif;
}

/* bg */
.bg-gray {
	background-color: #f3f3f3;
}

.bg-gray-wrap .content-width {
	max-width: 1100px;
}

.bg-gray-radius {
	background-color: #dcdcdc;
	border-radius: 27px;
	padding: 90px 110px;
}

.bg-turquoise {
	background-color: #00a5c1;
}

.bg-white {
	background-color: #fff;
}

.bg-black {
	background-color: #000;
}

.bg-txt-white {
	background-color: #fff;
	font-weight: 700;
	padding: 0 12px;
}

.bg-counter {
	background: url(./assets/images/jpg/contact_bg.jpg) center / cover no-repeat;
}

.bg-circle {
	position: relative;
}

.bg-circle:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 100%;
	height: calc(100% - 40px);
	background: url(assets/images/svg/bg_circle.svg) center / cover no-repeat;
	z-index: -1;
	transform: translateX(-50%);
}

@media screen and (max-width: 1100px) {
	.bg-gray-radius {
		padding: 90px 10%;
	}
}

@media screen and (max-width: 767px) {
	.bg-gray-radius {
		border-radius: 3.6vw;
		padding: 30px 20px;
	}
}

/* tips */
.strong-mark {
	position: relative;
}

.strong-mark::before {
	content: "";
	background: #fff;
	position: absolute;
	bottom: 22px;
	left: -135px;
	width: 45px;
	height: 2px;
	transform: rotate(70deg);
}

.strong-mark::after {
	content: "";
	background: #fff;
	position: absolute;
	bottom: 22px;
	right: -40px;
	width: 45px;
	height: 2px;
	transform: rotate(-70deg);
}

@media screen and (max-width: 767px) {
	.strong-mark::before {
		left: -28px;
	}
}

/* flex */
.flex-between {
	display: flex;
	justify-content: space-between;
}

.flex-start {
	display: flex;
	justify-content: flex-start;
}

.flex-reverse {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}

.flex-wrap {
	display: flex;
	flex-wrap: wrap;
}

.flex-center {
	display: flex;
	justify-content: center;
}

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

.flex-list {
	display: flex;
	margin-top: 80px;
}

.flex-list.column-2 {
	gap: 20px 40px;
}

.flex-list.column-3 {
	gap: 40px;
}

.flex-list.column-2 .flex-list-item {
	width: calc(100% / 2 - 20px);
}

.flex-list.column-3 .flex-list-item {
	width: calc((100% - 80px) / 3);
}

.flex-list .flex-list-item .thumb {
	aspect-ratio: 3 / 2;
}

.flex-list .flex-list-item .thumb img {
	max-width: 100%;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.flex-list.column-3 .flex-list-item dt {
	width: 14px;
	flex-shrink: 0;
}

.flex-list.column-3 .flex-list-item dt img {
	padding-bottom: 11px;
}
@media screen and (max-width: 767px) {
	.flex-list.column-3 .flex-list-item dt img {
		padding-bottom: 6px;
	}
}


@media screen and (max-width: 1000px) {
	.flex-list.column-3 {
		gap: 30px;
	}
	.flex-list.column-3 .flex-list-item {
		width: calc(50% - 15px);
	}
}

@media screen and (max-width: 767px) {
	.flex-list.column-2,
	.flex-list.column-3 {
		justify-content: center;
		gap: 30px;
		margin-top: 60px;
	}
	.flex-list.column-2 .flex-list-item,
	.flex-list.column-3 .flex-list-item {
		width: auto;
		max-width: 470px;
	}
}

/* display */
.d-sp {
	display: inline-block;
}

.d-pc {
	display: none;
}

.d-shared-sp {
	display: block;
}

@media screen and (min-width: 480px) {
	.d-sp {
		display: none;
	}

	.d-pc {
		display: inline-block;
	}

	.d-shared-sp {
		display: none;
	}
}

/* ============================
	section
============================ */
.sec-inner {
	padding: 0;
}

.sec-title {
	margin: 0;
	text-align: center;
}

.content-inner {
	width: 100%;
}

/* ============================
	Pagenavi
============================ */
.wp-pagenavi {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	padding: 0 20px;
	clear: both;
	margin: 60px 0 0;
	font-size: 1.6rem;
	text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
	display: inline-block;
	color: #000;
	font-weight: 700;
	line-height: 65px;
	width: 65px;
	height: 65px;
	aspect-ratio: 1 / 1;
	text-align: center;
	vertical-align: middle;
	transition: all 0.5s ease;
	font-size: 1.6rem;
	border-radius: 50%;
	border: none;
	padding: 0;
}
.wp-pagenavi span.current {
	background-color: #000;
	color: #fff;
	border-radius: 50%;
}

.wp-pagenavi a.first,
.wp-pagenavi a.last {
	display: none;
}

.wp-pagenavi a:hover,
.wp-pagenavi span {
	opacity: 0.7;
}

.wp-pagenavi a:hover {
	transition: all 0.5s ease;
}

.wp-pagenavi .extend {
	width: 1em;
	color: #00a5c1;
	background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
	border: medium none;
}

.wp-pagenavi .extend::after {
	content: "…";
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	position: relative;
	width: 0;
	height: 0;
	color: transparent;
}

.wp-pagenavi .previouspostslink::after,
.wp-pagenavi .nextpostslink::after {
	content: "";
	position: absolute;
	top: -3px;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	width: 25px;
	height: 10px;
	background: url(assets/images/icon/icon_arrow.png) no-repeat center / contain;
}

.wp-pagenavi .previouspostslink::after {
	transform: rotate(180deg) translateX(20px);
}

.wp-pagenavi .previouspostslink:hover::after,
.wp-pagenavi .nextpostslink:hover::after {
	border-color: #fff;
}

.result_count {
	margin-bottom: 15px;
	color: #999;
	font-size: 1.4rem;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.wp-pagenavi {
		margin-top: 30px;
	}

	.wp-pagenavi a,
	.wp-pagenavi span {
		width: 50px;
		height: 50px;
		line-height: 50px;
	}
}

/* ============================
	404
============================ */
#error-404 .content-inner p {
	text-align: center;
}

.archive-item {
	position: relative;
	border-top: 1px solid #646464;
}

.archive-item:last-child {
	border-bottom: 1px solid #646464;
}

.archive-item > a {
	display: flex;
	align-items: center;
	padding: 40px 80px 40px 0;
	transition: all .3s;
}

.archive-item > a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.archive-item:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 56px;
	height: 56px;
	background: url(assets/images/icon/icon_arrow.svg) no-repeat center / contain;
	transform: translateY(-50%);
}

.archive-thumb {
	-webkit-flex: 0 0 130px;
	flex: 0 0 130px;
	width: 130px;
	aspect-ratio: 1 / 1;
}

.archive-link {
	display: -webkit-flex;
	display: flex;
	width: 100%;
	height: 100%;
}

.archive-thumb img {
	-webkit-align-self: flex-start;
	align-self: flex-start;
	border-radius: 50%;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.archive-detail {
	margin-left: 40px;
}

.archive-date {
	font-size: 1.6rem;
}

.archive-title {
	font-size: 2.4rem;
	line-height: 1.75;
	font-weight: 500;
}

@media screen and (max-width: 767px) {
	.archive-item:before {
		width: 30px;
		height: 30px;
	}

	.archive-item > a {
		padding: 20px 40px 20px 0;
	}

	.archive-thumb {
		margin: 0;
		width: 12%;
		flex: 0 0 23%;
	}

	.archive-title {
		font-size: 1.8rem;
	}

	.archive-item .archive-detail {
		margin-left: 15px;
		margin-top: 0;
	}
}

body#company .sec-inner > .content-inner {
	margin-top: 50px;
}

.company-branches-columns {
	padding-bottom: 60px;
}

.company-branches-columns:last-child {
	padding-bottom: 0;
}

.company-branches-title {
	position: relative;
	padding-bottom: 0;
	font-size: 2.0rem;
	border: none;
}

.company-branches-address {
	font-size: 1.6rem;
	margin-top: 8px;
}

.company-branches-map {
	margin-top: 15px;
}

.company-branches-map iframe {
	aspect-ratio: 3 / 1.75;
	width: 100%;
}

.section-header + .company-branches-columns {
	padding-top: 18px;
}

#company .section-wrapper:first-child {
	padding-top: 0;
}

#company .section-area {
	padding-bottom: 0;
}

#company .section-area .txt {
	margin-top: 20px;
}

#company .section-area .img-box {
	margin-top: 20px;
}


#company .section-buildings .txt {
	margin-top: 20px;
}

#company .seminarhouse-reason-item-table-wrap {
	margin: 40px 0 30px;
	overflow-x: scroll;
}

#company .seminarhouse-reason-item-table {
	width: 100%;
	margin: 0;
	text-align: center;
	white-space: nowrap;
	border-top: 1px solid #a7a49d;
	border-left: none;
}

#company .seminarhouse-reason-item-table td,
#company .seminarhouse-reason-item-table th {
	padding: 20px;
	border-right: 1px solid #a7a49d;
	border-bottom: 1px solid #a7a49d;
}

#company .seminarhouse-reason-item-table td:last-child,
#company .seminarhouse-reason-item-table th:last-child {
	border-right: none;
}

#company .seminarhouse-reason-item-table th {
	background-color: #e5ddca;
}

#company .seminarhouse-reason-item-img {
	margin-top: 20px;
	text-align: center;
}

@media screen and (min-width: 960px) {
	#company .seminarhouse-reason-item-img {
		margin-top: 40px;
	}
}

@media screen and (max-width: 767px) {
	body#company .sec-inner > .content-inner {
		margin-top: 0;
	}

}

.company-message {
	margin-top: 18px;
}

.company-message.section-wrapper {
	padding-top: 0;
	padding-bottom: 0;
}

.company-message-columns {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	padding-top: 18px;
}

.company-message-image {
	-webkit-order: 2;
	order: 2;
	margin-top: 30px;
}

.company-message-text {
	-webkit-order: 1;
	order: 1;
}

.company-message-text .ttl {
	margin-bottom: 15px;
}

.company-table-list:first-of-type {
	border-top: 1px solid #aaa;
}

.company-table-list {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin: 0;
	border-bottom: 1px solid #aaa;
}

.company-table-list dt {
	width: 18%;
	padding: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	padding: 25px 20px 25px 0;
}

.company-table-list dd {
	width: 82%;
	font-size: 1.6rem;
	margin-left: 0;
	padding: 25px 0 25px 20px;
}

.company-table-list dd a {
	color: #00a5c1;
}

.company-table-list dd a:hover,
.company-table-list dd a:active,
.company-table-list dd a:focus {
	color: #4fb8c6;
}

.section-hub .readtxt {
	font-size: 1.6rem;
	text-align: center;
}

.section-hub .img-box {
	margin-top: 40px;
}

.contact-header {
	padding-top: 24px;
	padding-bottom: 20px;
}

.contact-header .breadcrumbs {
	display: none;
}

.contact-label {
	color: #84b846;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
}

.contact-title {
	margin-top: 10px;
	line-height: 1.4;
	text-align: center;
}

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

.contact-mv img {
	width: 100vw;
	max-width: initial;
	margin: 0 calc(50% - 50vw);
}

.contact-section {
	padding-top: 60px;
	padding-bottom: 60px;
}

.contact-section:nth-child(even) {
	background-color: #f9f9f9;
}

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

	.company-table-list dt {
		width: 100%;
		padding: 20px 0 5px;
	}

	.company-table-list dd {
		width: 100%;
		padding: 5px 0 20px;
	}

	.section-hub .readtxt {
		text-align: left;
		font-size: 1.8rem;
	}

	.contact-section img.d-sp {
		width: 100%;
	}

}

.contact-section-title {
	font-weight: 700;
	font-size: 2.4rem;
	text-align: center;
}

.contact-section-content {
	margin-top: 36px;
}

.contact-intro {
	text-align: center;
}

.contact-intro-text {
	margin-top: 36px;
}

.contact-catalog {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-align-items: center;
	align-items: center;
}

.contact-catalog + .contact-catalog {
	margin-top: 48px;
}

.contact-catalog-text {
	margin-top: 24px;
}

.contact-catalog-text p {
	margin-top: 16px;
}

.contact-catalog-head {
	font-size: 2.2rem;
}

.contact-benefits-title {
	font-weight: 700;
	font-size: 3.6rem;
	line-height: 1.44;
	text-align: center;
}

.contact-benefits-image {
	text-align: center;
}

.contact-benefits-image small {
	font-size: 1.2rem;
}

.contact-benefits-image + .contact-benefits-image {
	margin-top: 54px;
}

.contact-benefits-caption {
	margin-top: 30px;
	font-weight: 700;
	font-size: 2.4rem;
}

.contact-request-image {
	text-align: center;
}

.contact-request-title {
	margin-top: 32px;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1.75;
}


.event-block {
	width: 100%;
	padding-bottom: 140px;
}

.event-detail {
	margin-top: 40px;
	border-bottom: 1px solid #dbdbdb;
	text-align: center;
}

.event-detail.bg-gray-radius {
	padding: 40px 30px;
}

.event-detail > .inner {
	display: inline-block;
}

.event-detail .modelhouse-info + .modelhouse-info {
	margin-top: 5px;
}

.event-detail .modelhouse-info dt img {
	padding-bottom: 11px;
}
@media screen and (max-width: 767px) {
	.event-detail .modelhouse-info dt img {
		padding-bottom: 6px;
	}
}

.event-detail-list {
	display: -webkit-flex;
	display: flex;
	margin: 0;
	border-top: 1px solid #dbdbdb;
}

.event-detail-list dt {
	width: 23%;
	padding: 10px 0;
	text-align: center;
	background-color: #f9f9f9;
}

.event-detail-list dd {
	width: 77%;
	padding: 10px 0;
}

.event-detail-list dd a {
	text-decoration: underline;
}

.event-site {
	margin-top: 4rem;
	border-top: 1px solid #dbdbdb;
}

.event-site-text {
	margin: 4rem 0;
	font-weight: 700;
	font-size: 2rem;
}

.event-map iframe {
	width: 100%;
	aspect-ratio: 3 /2;
}

.section-wrapper.event-slider {
	padding-top: 30px;
}

.event-slider .event-block {
	padding-bottom: 0;
}

.eventlist-slider {
	position: relative;
	margin-top: 20px;
	padding-right: 30px;
	padding-left: 30px;
}

.eventlist-slider-prev.slider-prev,
.eventlist-slider-next.slider-next {
	width: 42px;
	height: 42px;
}

.eventlist-slider-prev.slider-prev {
	position: absolute;
	top: 50%;
	left: -20px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.eventlist-slider-next.slider-next {
	position: absolute;
	top: 50%;
	right: -20px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.eventlist-slider p + p {
	margin-top: 0;
}

.bg-black .slider-area {
	background-color: #000;
	padding: 80px 0;
}

.bg-black .slider-area .content-width {
	max-width: calc(1100px + 100px);
}

.bg-black .slider-area .entry-images {
	padding: 0 100px;
	position: relative;
}


.bg-black .swiper-button-prev,
.bg-black .swiper-button-next {
	width: 62px;
	height: 62px;
	background-image: none;
	border: 1px solid #fff;
	border-radius: 50%;
}

.bg-black .swiper-button-prev::before,
.bg-black .swiper-button-next::before {
	content: "";
	display: inline-block;
	position: absolute;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	width: 12px;
	height: 12px;
	transform: rotate(225deg);
	position: absolute;
	top: 22px;
	right: 21px;
}

.bg-black .swiper-button-next::before {
	transform: rotate(45deg);
	right: 27px;
}

.event-map {
	margin-top: 75px;
}

.slider-area .event-block .content-width {
	max-width: 1160px;
}

.event-block .swiper-slide {
	padding: 0 80px;
}

.reserve-banner_sp {
	display: block;
}

.reserve-banner_pc {
	display: none;
}

@media screen and (max-width: 767px) {
	.event-block {
		padding-bottom: 70px;
	}
	.event-map {
		margin-top: 40px;
	}

	.bg-black .slider-area {
		padding: 40px 0;
	}

	.bg-black .slider-area .content-width {
		padding: 0 10px;
	}

	.bg-black .slider-area .entry-images {
		padding: 0 35px;
	}

	.bg-black .swiper-button-prev,
	.bg-black .swiper-button-next {
		width: 32px;
		height: 32px;
	}

	.bg-black .swiper-button-prev {
		left: -5px;
	}

	.bg-black .swiper-button-next {
		right: -5px;
	}

	.bg-black .swiper-button-prev::before,
	.bg-black .swiper-button-next::before {
		width: 8px;
		height: 8px;
		top: 10px;
	}

	.bg-black .swiper-button-prev::before {
		right: 10px;
	}

	.bg-black .swiper-button-next::before {
		right: 13px;;
	}
}


.footer-content {
	padding-top: 60px;
	padding-bottom: 100px;
	color: #fff;
	text-align: center;
	background-color: #000;
}


.footer-copyright {
	-webkit-order: 3;
	order: 3;
	color: #5f5f5f;
	font-size: 1rem;
}

.footer-main + .footer-copyright {
	margin-top: 30px;
}


.l-wrapper {
	overflow: hidden;
}

.l-container {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-right: 20px;
	padding-left: 20px;
}

.l-column {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-top: 50px;
}

.l-column-full {
	margin-top: 50px;
}

.l-article {
	box-sizing: border-box;
	width: 100%;
	padding: 0;
}

.l-sidebar {
	box-sizing: border-box;
	width: 100%;
	margin-top: 30px;
	padding: 0;
}

.l-article-full {
	width: 100%;
}

.l-footer-container {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-right: 31.5px;
	padding-left: 31.5px;
}

.single-post .entry-inner {
	padding-top: 0;
}

.section-wrapper {
	padding-top: 120px;
}

.section-label {
	color: #00a5c1;
	font-weight: 700;
	font-size: 2.4rem;
	letter-spacing: 0.04em;
	text-align: center;
	text-transform: uppercase;
}

.section-label-sp {
	display: block;
	padding-top: 26px;
	padding-bottom: 26px;
	background-color: #fff;
}

.section-label-pc {
	display: none;
}

.section-title {
	font-size: 2.4rem;
	letter-spacing: 0.04em;
	text-align: center;
}

.section-text {
	margin-top: 18px;
}

.lineup-title {
	color: #00a5c1;
	font-weight: 700;
	font-size: 3.6rem;
	text-transform: uppercase;
}

.lineup-header {
	padding: 60px 0;
}

.lineup-header h2 {
	text-align: center;
}

.lineup-header h2 img {
	max-height: 72px;
}

.lineup-subttl,
.lineup-subttl p {
	font-size: 4.0rem;
	text-align: center;
	line-height: 1.4;
	margin-top: 20px;
}

.lineup-explain {
	margin-top: 60px;
	font-size: 1.6rem;
}

.lineup-mv-box {
	width: 100%;
	text-align: center;
}

.lineup-mv-box img {
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 4 / 3;
}

.lineup-mv {
	display: inline-block;
	height: 100%;
}

.lineup-slider-container .swiper-wrapper {
	gap: 0;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	margin-top: 60px;
}

.lineup-slider-container .swiper-slide {
	width: initial;
}

.lp-header {
	position: relative;
	text-align: center;
}

.lp-header-text {
	position: absolute;
	top: 0;
	left: 0;
	max-width: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}

.slider-item-sp {
	display: inline-block !important;
}

.slider-item-pc {
	display: none !important;
}

.shared-slider {
	position: relative;
}

.shared-section {
	overflow: hidden;
}

.shared-section .l-container {
	position: relative;
}

.shared-section .section-text {
	text-align: center;
}

.shared-section .shared-slider-container {
	margin-top: 36px;
	overflow: visible;
}

.shared-section .swiper-slide {
	text-align: center;
}

.shared-section .swiper-slide a {
	display: block;
}

.shared-label {
	text-align: center;
}

.shared-btns {
	position: absolute;
	top: 0;
	z-index: 900;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.shared-prev.slider-prev,
.shared-next.slider-next {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.shared-prev.slider-prev {
	left: -20px;
}

.shared-next.slider-next {
	right: -20px;
}

.shared-item img {
	transition: all ease-out 0.3s;
}

.shared-item:hover img,
.shared-item:active img,
.shared-item:focus img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}


.sidebar-head {
	color: #00a5c1;
	font-size: 1.6rem;
	text-transform: uppercase;
}

.sidebar-news-item {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	box-sizing: border-box;
}

.sidebar-news-head {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.sidebar-news-item + .sidebar-news-item {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #dbdbdb;
}

.sidebar-date {
	color: #adadad;
	font-size: 1.4rem;
}

.sidebar-title {
	margin-top: 10px;
	font-size: 1.6rem;
}

.sidebar-cat-item:not(:first-child) {
	margin-top: 0.75em;
}

#entry-sidebar .sidebar-head {
	margin: 0;
}

#sidebar-cat-list {
	margin: 20px 0 0;
}

#sidebar-news-box {
	margin: 50px 0 0;
}

#sidebar-news-list {
	margin: 20px 0 0;
}


.top-lineup {
	padding-bottom: 60px;
}

.top-lineup-title {
	text-transform: uppercase;
}


.top-simulation-bnrs {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	margin-top: 36px;
}

.top-simulation-bnr + .top-simulation-bnr {
	margin-top: 36px;
}

.top-simulation-bnr.simulation-bnr-particular {
	box-shadow: 0 0 30px rgba(132, 184, 70, 0.15);
}

.top-simulation-bnr.simulation-bnr-lifestyle {
	box-shadow: 0 0 30px rgba(248, 210, 71, 0.15);
}

.lineup-header .breadcrumbs {
	background: url(./assets/images/hale/brown-texture.jpg) center / cover no-repeat;
}

.breadcrumbs {
	padding: 10px 0;
	overflow: hidden;
	font-size: 1.2rem;
	font-weight: 500;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.breadcrumbs [property="itemListElement"]:last-child>span {
	color: #00a5c1;
}

.breadcrumbs a {
	color: #222222;
}

.breadcrumbs .content-width>span>*:first-child {
	position: relative;
	display: inline-block;
	margin-right: 24px;
}

.breadcrumbs .content-width>span>*:first-child::after {
	content: "";
	background: #000;
	position: absolute;
	width: 1px;
	height: 10px;
	top: 0;
	bottom: 0;
	margin: auto;
	right: -12px;
	transform: rotate(15deg);
}

.breadcrumbs .content-width>span:last-child>*:first-child {
	margin-right: 0;
}

.breadcrumbs .content-width>span:last-child>*:first-child::after {
	display: none;
}

.breadcrumbs a:hover,
.breadcrumbs a:active,
.breadcrumbs a:focus {
	opacity: 0.8;
}

.breadcrumbs + .archive-list {
	margin-top: 20px;
}

.btn,
.transmission-btn {
	cursor: pointer;
	display: inline-block;
	padding: 16.5px;
	font-weight: 700;
	text-align: center;
	transition: all 0.3s ease;
}

.btn:hover {
	opacity: 0.8;
	transition: all 0.3s ease;
}

.btn-box {
	margin-top: 42px;
	text-align: center;
}

.btn-box-shift {
	max-width: calc(100% - 63px);
	margin-top: 36px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.btn-shift {
	position: relative;
	width: 100%;
	padding: 0;
	color: #fff;
	border: none;
}

.btn-shift-inner {
	position: relative;
	z-index: 1;
	display: inline-block;
	width: 100%;
	padding: 16px;
	line-height: 1.75;
	background-color: #00a5c1;
}

.btn-shift-inner:hover,
.btn-shift-inner:active,
.btn-shift-inner:focus {
	color: #fff;
	background-color: #4fb8c6;
}

.btn-shift::after {
	position: absolute;
	right: -10px;
	bottom: -10px;
	z-index: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: #000;
	content: "";
}

.btn-submit,
.transmission-btn {
	width: 100%;
	color: #fff;
	background-color: #00a5c1;
	border-color: #00a5c1;
}

.btn-submit:hover,
.btn-submit:active,
.btn-submit:focus,
.transmission-btn:hover,
.transmission-btn:active,
.transmission-btn:focus {
	color: #fff;
	background-color: #4fb8c6;
}

.btn-submit:disabled,
.transmission-btn:disabled {
	color: #adadad;
	background-color: #fff;
	border-color: #adadad;
}

.btn-slide {
	position: relative;
	z-index: 1;
	width: 100%;
	min-height: 60px;
	margin-right: auto;
	margin-left: auto;
	overflow: hidden;
	color: #fff;
	text-transform: uppercase;
	background-color: #fff;
}

.btn-slide::before {
	position: absolute;
	top: 50%;
	right: 27px;
	display: block;
	width: 16px;
	height: 14px;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2216%22%20viewBox%3D%220%200%2018%2016%22%3E%3Cpath%20d%3D%22M5.125%2C14.142H18.468l-4.084%2C4.982a1.157%2C1.157%2C0%2C0%2C0%2C.146%2C1.611%2C1.114%2C1.114%2C0%2C0%2C0%2C1.586-.149l5.625-6.857a1.364%2C1.364%2C0%2C0%2C0%2C.1-.171c0-.057.056-.091.079-.149a1.114%2C1.114%2C0%2C0%2C0%2C0-.823c0-.057-.056-.091-.079-.149a1.364%2C1.364%2C0%2C0%2C0-.1-.171L16.116%2C5.411a1.118%2C1.118%2C0%2C0%2C0-1.586-.149%2C1.155%2C1.155%2C0%2C0%2C0-.146%2C1.611l4.084%2C4.982H5.125a1.143%2C1.143%2C0%2C0%2C0%2C0%2C2.286Z%22%20transform%3D%22translate%28-4%20-5%29%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	content: "";
}

.btn-slide::after {
	position: absolute;
	top: 50%;
	left: 0;
	z-index: -1;
	display: block;
	width: 100%;
	height: 100%;
	background-color: #00a5c1;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	-webkit-transform-origin: top right;
	transform-origin: top right;
	transition: -webkit-transform ease-out 0.3s;
	transition: transform ease-out 0.3s;
	transition: transform ease-out 0.3s, -webkit-transform ease-out 0.3s;
	content: "";
}

.btn-slide:hover,
.btn-slide:active,
.btn-slide:focus {
	color: #000;
}

.btn-slide:hover::before,
.btn-slide:active::before,
.btn-slide:focus::before {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2216%22%20viewBox%3D%220%200%2018%2016%22%3E%3Cpath%20d%3D%22M5.125%2C14.142H18.468l-4.084%2C4.982a1.157%2C1.157%2C0%2C0%2C0%2C.146%2C1.611%2C1.114%2C1.114%2C0%2C0%2C0%2C1.586-.149l5.625-6.857a1.364%2C1.364%2C0%2C0%2C0%2C.1-.171c0-.057.056-.091.079-.149a1.114%2C1.114%2C0%2C0%2C0%2C0-.823c0-.057-.056-.091-.079-.149a1.364%2C1.364%2C0%2C0%2C0-.1-.171L16.116%2C5.411a1.118%2C1.118%2C0%2C0%2C0-1.586-.149%2C1.155%2C1.155%2C0%2C0%2C0-.146%2C1.611l4.084%2C4.982H5.125a1.143%2C1.143%2C0%2C0%2C0%2C0%2C2.286Z%22%20transform%3D%22translate%28-4%20-5%29%22%20fill%3D%22%23000%22%2F%3E%3C%2Fsvg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transition-duration: 0.25s;
}

.btn-slide:hover::after,
.btn-slide:active::after,
.btn-slide:focus::after {
	-webkit-transform: translate(100%, -50%);
	transform: translate(100%, -50%);
}


.btn-action {
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	background-color: transparent;
	border: none;
	outline: none;
}

.btn-action-icon {
	position: relative;
	display: block;
	width: 60px;
	height: 60px;
	margin-right: auto;
	margin-bottom: 10px;
	margin-left: auto;
	padding: 0;
	background-color: #f9f9f9;
	border: 1px solid #dbdbdb;
	border-radius: 50%;
}

.btn-action-icon:hover,
.btn-action-icon:active,
.btn-action-icon:focus {
	background-color: #e0e0e0;
}

.btn-action svg {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.btn-menu-sp {
	width: 100%;
	color: #00a5c1;
	background-color: #fff;
	border-color: #fff;
}

.btn-menu-sp:active,
.btn-menu-sp:focus {
	color: #fff;
	background-color: #4fb8c6;
}

.contact-comments {
	margin-top: 0.5em;
	font-size: 1.2rem;
}

.contact-required {
	color: #e60012;
}

.reservation-comment {
	margin: 0 0 50px;
}

.reservation-box {
	position: relative;
	z-index: 2;
	margin-top: 80px;
	padding: 50px 8% 60px;
	overflow: hidden;
	background-color: #fff;
	border-radius: 30px;
}

.reservation-box .reservation-title {
	margin-bottom: 25px;
	font-size: 2.8rem;
	text-align: center;
}

.reservation-box .item-wrap {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin: 0;
	padding: 25px 0;
	border-bottom: 1px dashed #000;
}

.reservation-box .item-wrap:first-of-type {
	border-top: 1px dashed #000;
}

.reservation-box .item-ttl {
	width: 25%;
	font-size: 1.6rem;
	font-weight: 700;
}

.reservation-box .item-txt {
	width: 70%;
}

.reservation-box .item-txt p {
	line-height: 1.75;
}

.reservation-box .item-txt textarea {
	height: 150px;
}
.reservation-box .item-txt .date-month + .option,
.reservation-box .item-txt .date-moon + .option,
.reservation-box .item-txt .date-day + .option,
.reservation-box .item-txt .date-time + .option,
.reservation-box .item-txt .date-month_no_connect + .option,
.reservation-box .item-txt .date-moon_no_connect + .option,
.reservation-box .item-txt .date-day_no_connect + .option,
.reservation-box .item-txt .date-time_no_connect + .option {
	margin-right: 1em;
}

.reservation-box .notes-box {
	height: 200px;
	margin: 40px 0.5em 0;
	padding: 20px;
	overflow-y: scroll;
	font-size: 1.4rem;
	background-color: #f3f3f3;
}

.reservation-box .notes-box a {
	text-decoration: underline;
}

.reservation-box .notes-ttl {
	margin-bottom: 15px;
	font-size: 2rem;
	text-align: center;
}

.reservation-box .notes-txt {
	margin-bottom: 30px;
	font-size: 1.5rem;
}

.reservation-box .consent-btn {
	margin-top: 40px;
	text-align: center;
}

.reservation-box .consent-btn input[type="checkbox"] {
	position:absolute;
	opacity:0;
}

.reservation-box .consent-btn label {
	position:relative;
	padding-left:30px;
	cursor:pointer;
}

.reservation-box .consent-btn label::before {
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:20px;
	height:20px;
	border:1px solid #000;
	border-radius:50%;
	background:#f3f3f3;
}

.reservation-box .consent-btn label::after {
	content:"";
	position:absolute;
	left:3px;
	top:5px;
	width:14px;
	height:10px;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2214%22%20height%3D%2210%22%20viewBox%3D%220%200%2014%2010%22%3E%3Cpath%20d%3D%22M9.114%2C15.956a.894.894%2C0%2C0%2C1-.637-.266L4.236%2C11.4a.8.8%2C0%2C0%2C1%2C.039-1.175.906.906%2C0%2C0%2C1%2C1.235.037l3.6%2C3.645%2C7.34-7.639a.9.9%2C0%2C0%2C1%2C.847-.3.858.858%2C0%2C0%2C1%2C.669.576.8.8%2C0%2C0%2C1-.225.831l-7.977%2C8.3a.893.893%2C0%2C0%2C1-.637.274Z%22%20transform%3D%22translate%28-3.999%20-5.956%29%22%20fill%3D%22%2303a6c1%22/%3E%3C/svg%3E");
	opacity:0;
}

.reservation-box .consent-btn label:has(input:checked)::after {
	opacity:1;
}

.reservation-box .transmission-inner {
	position: relative;
	margin-top: 40px;
	text-align: center;
}

/*.reservation-box .transmission-inner .btn-type-b {
	padding-right: 60px;
	min-width: 300px;
	max-width: 100%;
	width: auto;
}*/

.reservation-box .transmission-inner .btn-type-b,
.reservation-box .transmission-inner .btn-type-b input {
	background-color: #969696;
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.4;
	font-weight: 700;
	box-shadow: none;
	border: none;
	letter-spacing: 0.2em;
}

.reservation-box .transmission-inner .btn-type-b:before {
	right: 30px;
}

.reservation-box .transmission-inner .btn-type-b:hover,
.reservation-box .transmission-inner .btn-type-b input:hover {
	opacity: 0.8;
}

.reservation-box .transmission-inner .btn-type-b:hover:before {
	background: url(assets/images/icon/icon_arrow-wh.svg) center / contain no-repeat;
}


.reservation-box .transmission-inner .btn-type-b .wpcf7-spinner {
	position: absolute;
}

.reservation-box .transmission-inner .ajax-loader {
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

#autozip {
	display: none!important;
}


@media screen and (max-width: 767px) {
	.section-wrapper {
		padding-top: 80px;
	}
	.reservation-box {
		margin-top: 70px;
		padding: 50px 20px 60px;
	}

	.reservation-box .transmission-inner .btn-type-b,
	.reservation-box .transmission-inner .btn-type-b input {
		font-size: 1.8rem;
	}

	.reservation-box .transmission-inner .btn-type-b:before {
		right: 20px;
	}

	.reservation-box {
		border-radius: 15px;
	}

	.reservation-box .reservation-title {
		font-size: 2.4rem;
	}
}

/* ============================
	single post
============================ */
.entry-inner {
	padding: 100px 0;
}

.entry-cats {
	display: -webkit-flex;
	display: flex;
	margin: 8px 0;
}

.entry-cat {
	min-width: 70px;
	padding: 4px 16px;
	color: #00a5c1;
	border-radius: 30px;
	text-align: center;
	background-color: #fff;
}

.entry-cat + .entry-cat {
	margin-left: 10px;
}

.entry-date {
	font-size: 2.0rem;
}


/* ============================
	entry-content
============================ */
.entry-title {
	font-size: 3.0rem;
	line-height: 1.75;
	margin: 100px 0 50px;
}

body.single-news .entry-title {
	margin-top: 0;
}

.entry-content {
	font-size: 1.6rem;
	line-height: 1.8;
}

.entry-content a {
	color: #00a5c1;
}

.entry-content a:hover,
.entry-content a:focus,
.entry-content a:active {
	color: #4fb8c6;
}

.entry-content p {
	margin: 1.4em 0;
}

.entry-content p.mb35rem {
	margin-bottom: 3.5rem;
}

.entry-content hr {
	height: 0;
	margin: 4rem 0;
	padding: 0;
	color: #fff;
	line-height: 0;
	background: none;
	border: none;
	border-top: 1px solid #dbdbdb;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4 {
	font-weight: 700;
	line-height: 1.2;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.entry-content h1 {
	margin: 30px 0;
	font-size: 2.8rem;
}

.entry-content h2 {
	margin: 50px 0 30px;
	padding: 15px;
	font-size: 2.6rem;
	letter-spacing: 0.05em;
	border-bottom: 2px solid #00a5c1;
}

.entry-content h3 {
	box-sizing: border-box;
	margin: 50px 0 30px;
	padding: 10px 16px;
	font-size: 1.8rem;
	background-color: rgba(27, 169, 188, 0.2);
}

.entry-content h4 {
	margin: 50px 0 30px;
	padding: 5px 0 5px 14px;
	font-size: 1.5rem;
	border-left: 4px solid rgba(27, 169, 188, 0.2);
}

.entry-content h4.noborder {
	padding-bottom: 0;
	border: none;
	content: none;
}

.entry-content h4.noborder::after,
.entry-content .infobox h4::after {
	content: none;
}

.entry-content span.red {
	color: #df0101;
}

.entry-content span.bold {
	color: #310b00;
	font-weight: 700;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.entry-content span.underline {
	color: #310b00;
	font-weight: 700;
	text-decoration: underline;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.entry-content span.marker {
	padding: 3px 0 4px;
	color: #310b00;
	font-weight: 700;
	background: linear-gradient(transparent 60%, rgba(255, 167, 0, 0.7) 60%);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.entry-content blockquote {
	position: relative;
	margin: 4rem 0;
	padding: 0.5rem 2.5rem;
	color: #555;
	font-weight: 700;
	font-size: 1.7rem;
	line-height: 1.65;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

.entry-content blockquote::before,
.entry-content blockquote::after {
	position: absolute;
	display: inline-block;
	width: 3.5rem;
	height: 2.5rem;
	content: "";
}

.entry-content blockquote::before {
	top: -1.2rem;
	left: 0;
	background: url("./assets/images/c_blockquate_before.png") no-repeat scroll left top #fff;
	background-size: contain;
}

.entry-content blockquote::after {
	right: 0;
	bottom: -1.2rem;
	background: url("./assets/images/c_blockquate_after.png") no-repeat scroll right bottom #fff;
	background-size: contain;
}

.entry-content blockquote p {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin: 2rem 0;
}

.entry-content blockquote small,
.entry-content blockquote small a {
	color: #888;
	font-weight: 400;
	font-size: 11px;
}

.entry-content blockquote cite {
	font-size: 1.2rem;
}

.instagram-media {
	max-width: 520px !important;
}

.twitter-tweet {
	width: 520px !important;
}

.entry-content blockquote.wp-embedded-content,
.entry-content blockquote.instagram-media,
.entry-content blockquote.twitter-tweet {
	box-sizing: border-box;
	border: 1px solid #eee;
}

.entry-content blockquote.wp-embedded-content::after,
.entry-content blockquote.wp-embedded-content::before,
.entry-content blockquote.instagram-media::after,
.entry-content blockquote.instagram-media::before,
.entry-content blockquote.instagram-media-registered::after,
.entry-content blockquote.instagram-media-registered::before,
.entry-content blockquote.twitter-tweet::after,
.entry-content blockquote.twitter-tweet::before {
	display: none !important;
}

.entry-content iframe.wp-embedded-content {
	width: 100% !important;
}

.entry-content .instagram-media {
	margin: 3.5rem 0 !important;
}

.entry-content .infobox {
	margin: 2.5rem 0;
	padding: 1rem 2.5rem;
	line-height: 1.65;
	background: #fdf9f5;
}

.entry-content .infobox h4 {
	margin: 1.5rem 0;
	padding: 0;
	font-size: 1.6rem;
	border: none;
}

.entry-content .infobox p {
	margin: 1.5rem 0;
	font-size: 1.5rem;
}

.entry-content .ytsl-wrapper {
	margin: 4rem 0;
}

.entry-content .ytsl-wrapper img {
	display: none !important;
}

.entry-content img {
	width: 100%;
	height: auto !important;
}

.entry-content .imagebox br {
	display: none;
}

.entry-content .imagebox small,
.entry-content .imagebox small a {
	color: #888;
	font-weight: 400;
	font-size: 11px;
}

.entry-content ul,
.entry-content ol {
	text-align: left;
}

.entry-content li {
	position: relative;
	padding-left: 20px;
}

.entry-content li::before {
	position: absolute;
	top: 11px;
	left: 0;
	width: 10px;
	height: 10px;
	margin: auto;
	background: #ddd;
	border-radius: 50%;
	content: "";
}

.entry-content a {
	text-decoration: underline;
}

.entry-content pre {
	box-sizing: border-box;
	padding: 20px;
	color: #23282d;
	font-size: 1.4rem;
	background-color: #eee;
}

.entry-thumb {
	margin-top: 50px;
}

.entry-thumb img {
	width: 100%;
	height: auto;
}

.wp-block-file a {
	vertical-align: middle;
}

/* = .wp-caption
-------------------------------------------------------------- */
.wp-caption {
	box-sizing: border-box;
	max-width: 100% !important;
	margin-bottom: 20px;
	padding: 10px;
	line-height: 18px;
	text-align: center;
	background: #f1f1f1;
}

.wp-caption img {
	max-width: 100%;
	margin: 0;
}

.wp-caption p.wp-caption-text {
	margin: 10px 0 0 0;
	color: #777;
	font-size: 14px;
}

/* = other
-------------------------------------------------------------- */
.entry-container {
	padding: 120px 0;
}

.entry-container .content-width.flexbox {
	-webkit-align-items: flex-start;
	align-items: flex-start;
}

.entry-container article {
	box-sizing: border-box;
	width: 70%;
	margin-right: 20px;
	padding-right: 20px;
	border-right: 1px solid gray;
}

.entry-container aside {
	width: 30%;
}

.entry-meta.flexbox {
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}

.side-titles-item.flexbox {
	-webkit-align-items: flex-start;
	align-items: flex-start;
}

.side-titles-item + .side-titles-item {
	margin-top: 16px;
}

.side-thumb {
	width: 100px;
}

.side-body {
	box-sizing: border-box;
	width: calc(100% - 100px);
	padding-left: 10px;
}

.side-title {
	margin: 0;
	font-size: 1.5rem;
	line-height: 1.3;
}

.side-meta {
	margin-top: 4px;
}

.side-meta.flexbox {
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}

.side-meta .date {
	font-size: 1.2rem;
}

.side-meta .cats {
	margin-left: 4px;
}

.side-meta .cat {
	padding: 0 8px;
	font-size: 1.2rem;
}

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
	box-sizing: border-box;
	height: 34px;
	margin: 0 8px 0 0;
	padding: 6px 10px;
	background-color: #f3f3f3;
	border: 1px solid #000;
	border-radius: 2px;
	box-shadow: none;
}

::placeholder {
	color: #b0b0b0;
}

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea {
	width: 100%;
	font-size: 16px;
}

select {
	max-width: 100%;
}

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus {
	border: 1px solid #c1dca2;
	outline: 0;
}

input[type="checkbox"],
input[type="radio"] {
	display: inline;
}

textarea {
	height: 160px;
	min-height: 65px;
	padding-top: 6px;
	padding-bottom: 6px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	resize: none;
}

textarea:focus,
select:focus {
	border: 1px solid #c1dca2;
	outline: 0;
}

fieldset {
	padding: 0;
	border-width: 0;
}

label,
legend {
	font-weight: 400;
}

label>.label-body {
	display: inline-block;
	margin-left: 0.5rem;
	font-weight: 400;
}

/* wpcf7 customize */
.wpcf7-form .required {
	color: #e60012;
	font-size: 80%;
}

.wpcf7-form .readonly {
	border: none;
}

.wpcf7-checkbox input[type="checkbox"] {
	display: none;
}

.wpcf7-checkbox input[type="checkbox"]+.wpcf7-list-item-label {
	position: relative;
	display: none;
	display: inline-block;
	box-sizing: border-box;
	width: auto;
	padding: 5px 12px 5px 28px;
	cursor: pointer;
}

.wpcf7-checkbox input[type="checkbox"]+.wpcf7-list-item-label::before {
	position: absolute;
	top: 10px;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: #fff;
	border: 1px solid #000;
	border-radius: 50%;
	background-color: #f3f3f3;
	content: "";
}

.wpcf7-checkbox input[type="checkbox"]+.wpcf7-list-item-label::after {
	position: absolute;
	top: 15px;
	left: 3.5px;
	display: block;
	width: 14px;
	height: 10px;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2214%22%20height%3D%2210%22%20viewBox%3D%220%200%2014%2010%22%3E%3Cpath%20d%3D%22M9.114%2C15.956a.894.894%2C0%2C0%2C1-.637-.266L4.236%2C11.4a.8.8%2C0%2C0%2C1%2C.039-1.175.906.906%2C0%2C0%2C1%2C1.235.037l3.6%2C3.645%2C7.34-7.639a.9.9%2C0%2C0%2C1%2C.847-.3.858.858%2C0%2C0%2C1%2C.669.576.8.8%2C0%2C0%2C1-.225.831l-7.977%2C8.3a.893.893%2C0%2C0%2C1-.637.274Z%22%20transform%3D%22translate%28-3.999%20-5.956%29%22%20fill%3D%22%2303a6c1%22/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	opacity: 0;
	content: "";
}

.wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
	opacity: 1;
}

.wpcf7-radio input[type="radio"] {
	display: none;
}

.wpcf7-radio input[type="radio"]+.wpcf7-list-item-label {
	position: relative;
	display: inline-block;
	box-sizing: border-box;
	width: auto;
	padding: 5px 12px 5px 28px;
	cursor: pointer;
}

.wpcf7-radio input[type="radio"]+.wpcf7-list-item-label::before {
	position: absolute;
	top: 10px;
	left: 0;
	display: block;
	width: 16px;
	height: 16px;
	background: #fff;
	border: 1px solid #dbdbdb;
	border-radius: 50%;
	content: "";
}

.wpcf7-radio input[type="radio"]+.wpcf7-list-item-label::after {
	position: absolute;
	top: 14px;
	left: 4px;
	display: block;
	width: 8px;
	height: 8px;
	background: #00a5c1;
	border-radius: 50%;
	opacity: 0;
	content: "";
}

.wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label::after {
	opacity: 1;
}

.wpcf7-form-control.wpcf7-checkbox {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.wpcf7-form-control.wpcf7-radio {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.radio-full .wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
	display: block;
	width: 100%;
}

.wpcf7-form-control-wrap {
	margin: 0;
}

span.wpcf7-list-item {
	margin: 0;
}

.radio_block .wpcf7-list-item {
	width: 100%;
}

.document-request .wpcf7-form-control.wpcf7-checkbox {
	display: inline-block;
}

.document-request .wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item {
	width: 100%;
}

.document-request .wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item-label {
	padding-right: 0;
}

.lineup-item {
	display: block;
	color: #000;
	text-align: center;
}

.lineup-item-img {
	position: relative;
	margin-right: auto;
	margin-left: auto;
	overflow: hidden;
}

.lineup-item-img .lineup-sp {
	display: block;
}

.lineup-item-img .lineup-pc {
	display: none;
}

.lineup-item-exterior {
	transition: -webkit-transform ease-out 0.5s;
	transition: transform ease-out 0.5s;
	transition: transform ease-out 0.5s, -webkit-transform ease-out 0.5s;
}

.lineup-item-exterior img {
	width: 100%;
	height: auto;
}

.lineup-item-name {
	margin-top: 18px;
	font-size: 1.8rem;
	line-height: 1.4;
}

.lineup-item-explain {
	margin-top: 16px;
}

.lineup-item-badge {
	position: absolute;
	top: 6px;
	left: 6px;
}

#js-show-popup {
	color: #00a5c1;
	text-decoration: underline;
	cursor: pointer;
}

#js-show-popup:hover,
#js-show-popup:active,
#js-show-popup:focus {
	color: #4fb8c6;
}

.popup {
	position: relative;
	visibility: hidden;
	opacity: 0;
}

.popup.is-popup-open {
	visibility: visible;
	opacity: 1;
}

.popup .close-btn {
	position: absolute;
	top: 0;
	right: 0;
	width: 60px;
	height: 60px;
	padding: 15px;
	line-height: 40px;
	text-align: center;
	background-color: #fff;
	cursor: pointer;
}

.popup .close-btn i {
	display: block;
	width: 30px;
	height: 30px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.popup .close-btn i::before,
.popup .close-btn i::after {
	position: absolute;
	display: block;
	background-color: #000;
	content: "";
}

.popup .close-btn i::before {
	top: 50%;
	left: 0;
	width: 100%;
	height: 1px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.popup .close-btn i::after {
	top: 0;
	left: 50%;
	width: 1px;
	height: 100%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.popup-inner {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 9900;
	width: 100%;
	max-width: calc(100vw - 40px);
	background-color: #fff;
	border-radius: 5px;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.popup-inner a {
	color: #00a5c1;
}

.popup-inner a:hover,
.popup-inner a:active,
.popup-inner a:focus {
	color: #4fb8c6;
}

.popup-inner .online_consultation {
	max-height: calc(100vh - 240px);
	padding: 60px 20px 42px;
	overflow-y: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.popup-inner .online_consultation::-webkit-scrollbar {
	display: none;
}

.black-background {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9000;
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.9);
}

body.is-popup-open {
	height: 100vh;
	overflow: hidden;
}

.slider-prev,
.slider-next {
	position: relative;
	z-index: 900;
	display: block;
	width: 42px;
	height: 42px;
	border: 1px solid #000;
	border-radius: 42px;
	pointer-events: visible;
}

.slider-prev svg,
.slider-next svg {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	fill: #000;
}

.slider-prev.swiper-button-disabled,
.slider-next.swiper-button-disabled {
	border-color: #dbdbdb;
}

.slider-prev.swiper-button-disabled svg,
.slider-next.swiper-button-disabled svg {
	fill: #dbdbdb;
}

.slider-prev {
	margin-right: 20px;
}

.slider-prev svg {
	-webkit-transform: translate(-50%, -50%) scale(-1, 1);
	transform: translate(-50%, -50%) scale(-1, 1);
}

@media screen and (min-width: 480px) {

	.company-message {
		margin-top: 36px;
	}

	.company-message-columns {
		-webkit-flex-direction: row;
		flex-direction: row;
		padding-top: 36px;
	}

	.company-message-image {
		-webkit-flex-basis: 300px;
		flex-basis: 300px;
		-webkit-order: 1;
		order: 1;
		margin-top: 0;
	}

	.company-message-text {
		-webkit-flex-basis: calc(100% - 300px);
		flex-basis: calc(100% - 300px);
		-webkit-order: 2;
		order: 2;
		padding-left: 48px;
	}

	.company-message-text .ttl {
		margin-bottom: 30px;
	}

	.company-table-list {
		-webkit-flex-direction: row;
		flex-direction: row;
	}

	.contact-header {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.contact-header .breadcrumbs {
		display: block;
		margin-top: 24px;
	}

	.contact-label {
		text-align: left;
	}

	.contact-title {
		display: none;
	}

	.contact-mv img {
		width: 100%;
		max-width: 100%;
		margin: 0;
	}

	.contact-section {
		padding-top: 84px;
		padding-bottom: 84px;
	}

	.contact-section-title {
		font-size: 3.6rem;
	}

	.contact-section-content {
		margin-top: 60px;
	}

	.contact-intro-text {
		margin-top: 48px;
	}

	.contact-catalog {
		-webkit-flex-direction: row;
		flex-direction: row;
	}

	.contact-catalog + .contact-catalog {
		margin-top: 60px;
	}

	.contact-catalog-image {
		width: 60%;
	}

	.contact-catalog-text {
		width: 40%;
		margin-top: 0;
	}

	.contact-catalog-text p {
		margin-top: 24px;
	}

	.contact-catalog-head {
		font-size: 2.4rem;
	}

	.contact-catalog:nth-child(odd) .contact-catalog-image {
		-webkit-order: 1;
		order: 1;
	}

	.contact-catalog:nth-child(odd) .contact-catalog-text {
		-webkit-order: 2;
		order: 2;
		margin-left: 48px;
	}

	.contact-catalog:nth-child(even) .contact-catalog-image {
		-webkit-order: 2;
		order: 2;
	}

	.contact-catalog:nth-child(even) .contact-catalog-text {
		-webkit-order: 1;
		order: 1;
		margin-right: 48px;
	}

	.contact-benefits-images {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
	}

	.contact-benefits-image + .contact-benefits-image {
		margin-top: 0;
		margin-left: 60px;
	}

	.contact-request-title {
		text-align: center;
	}

	.contact-request-text {
		text-align: center;
	}

	.footer-sns li + li {
		margin-left: 18px;
	}

	.lineup-title + .breadcrumbs {
		margin-top: 60px;
	}

	.lineup-kv {
		height: 47.64vw;
	}

	.lineup-kv-pc {
		display: block;
	}

	.lineup-kv-sp {
		display: none;
	}

	.lineup-plan-feature {
		font-size: 3.6rem;
	}

	.lineup-plan-text {
		text-align: center;
	}

	.lineup-detail-label {
		font-size: 4.8rem;
	}

	.lineup-list-text {
		display: block;
	}

	.lineup-list-box {
		width: 100%;
		margin: 0 auto;
	}

	.top-mv {
		margin-top: 0;
	}

	.top-mv-inner {
		height: 696px;
	}

	.top-mv-text {
		padding-top: 80px;
		padding-left: 10px;
	}

	.top-mv-text img {
		width: 316px;
	}

	.top-mv-catch {
		position: relative;
		bottom: initial;
		margin-top: 43px;
		margin-left: -6px;
	}

	.top-mv-catch .text-line + .text-line {
		margin-top: 12px;
	}

	.top-mv-catch .text-line-inner {
		padding: 9px 20px;
	}

	.top-mv-image,
	.top-mv-slider {
		padding-left: 25.71vw;
	}

	.top-concept-header {
		margin-right: 0;
		margin-left: 0;
	}

	.top-simulation-bnrs {
		-webkit-flex-direction: row;
		flex-direction: row;
		margin-top: 72px;
	}

	.top-simulation-bnr + .top-simulation-bnr {
		margin-top: 0;
	}

	.top-simulation-bnr {
		margin-right: 20px;
		margin-left: 20px;
	}

	.btn-slide::before {
		width: 22px;
		height: 19px;
	}

	.btn-slide {
		width: 400px;
	}

	.btn-simulation {
		width: 624px;
		max-width: 100%;
		height: 140px;
		font-size: 2.4rem;
	}

	.btn-simulation-text {
		padding-left: 80px;
		line-height: 44px;
	}

	.btn-simulation-text::before {
		width: 52px;
		height: 44px;
	}

	.btn-footer-link::after {
		width: 12px;
		height: 12px;
	}

	.lineup-item-img .lineup-sp {
		display: none;
	}

	.lineup-item-img .lineup-pc {
		display: block;
	}

	.lineup-item-badge {
		top: 14px;
		left: 14px;
	}
}

@media screen and (min-width: 960px) {

.event-slider .event-block {
		max-width: 1000px;
	}

	.event-text {
		text-align: center;
	}

	.common-slider-container-item.swiper-slide {
		height: 520px;
	}

	.common-slider-container-item.swiper-slide {
		height: 570px;
	}

	.common-slider-container-prev,
	.common-slider-container-next {
		width: 60px;
		height: 80px;
	}


	.section-wrapper.event-slider {
		padding-top: 0;
	}

	.reserve-banner_sp {
		display: none;
	}

	.reserve-banner_pc {
		display: block;
	}


	.l-container {
		width: 960px;
		padding-right: 30px;
		padding-left: 30px;
	}

	.l-column {
		-webkit-flex-direction: row;
		flex-direction: row;
	}

	.l-article {
		width: 78%;
		padding-right: 24px;
		border-right: 1px solid #ddd;
	}

	.l-container .l-article {
		width: 74%;
	}

	.l-container.l-column-full .l-article {
		width: 100%;
		padding-right: 0;
		border-right: none;
	}

	.l-sidebar {
		width: 22%;
		margin-top: 0;
		padding-left: 24px;
	}

	.l-footer-container {
		width: 823px;
	}

	.section-wrapper {
		padding-top: 120px;
	}

	.section-label-sp {
		display: none;
	}

	.section-label-pc {
		display: block;
	}

	.section-title {
		font-size: 3.6rem;
	}

	.section-text {
		margin-top: 36px;
	}

	.section-wrapper.common-news-section {
		padding-top: 0;
	}


	.lineup-slider-container .swiper-wrapper {
		display: -ms-grid;
		display: grid;
		-ms-grid-rows: auto 84px auto;
		grid-template-rows: repeat(2, auto);
		-ms-grid-columns: auto 15px auto 15px auto;
		grid-template-columns: repeat(3, auto);
		gap: 84px 15px;
		-webkit-justify-content: center;
		justify-content: center;
		margin-top: 72px;
	}

	.lineup-slider-container .swiper-wrapper>*:nth-child(1) {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
	}

	.lineup-slider-container .swiper-wrapper>*:nth-child(2) {
		-ms-grid-row: 1;
		-ms-grid-column: 3;
	}

	.lineup-slider-container .swiper-wrapper>*:nth-child(3) {
		-ms-grid-row: 1;
		-ms-grid-column: 5;
	}

	.lineup-slider-container .swiper-wrapper>*:nth-child(4) {
		-ms-grid-row: 3;
		-ms-grid-column: 1;
	}

	.lineup-slider-container .swiper-wrapper>*:nth-child(5) {
		-ms-grid-row: 3;
		-ms-grid-column: 3;
	}

	.lineup-slider-container .swiper-wrapper>*:nth-child(6) {
		-ms-grid-row: 3;
		-ms-grid-column: 5;
	}


	.shared-section .section-text {
		text-align: left;
	}

	.shared-section .shared-slider-container {
		height: 100%;
		margin-top: 65px;
	}

	.shared-label {
		text-align: left;
	}

	.shared-text p {
		width: 70%;
	}

	.shared-btns {
		top: -130px;
		right: 30px;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		width: auto;
	}

	.shared-prev.slider-prev,
	.shared-next.slider-next {
		position: relative;
		top: 0;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	.shared-prev.slider-prev {
		left: 0;
	}

	.shared-next.slider-next {
		right: 0;
	}


	.top-simulation {
		background-image: url(assets/images/top/simulation_head_bg.png);
		background-repeat: no-repeat;
		background-position: top 40px center;
	}

	.top-simulation-text {
		text-align: center;
	}

	.top-simulation-bnr.simulation-bnr-particular {
		box-shadow: none;
	}

	.top-simulation-bnr.simulation-bnr-particular:hover,
	.top-simulation-bnr.simulation-bnr-particular:active,
	.top-simulation-bnr.simulation-bnr-particular:focus {
		box-shadow: 0 0 30px rgba(132, 184, 70, 0.5);
	}

	.top-simulation-bnr.simulation-bnr-lifestyle {
		box-shadow: none;
	}

	.top-simulation-bnr.simulation-bnr-lifestyle:hover,
	.top-simulation-bnr.simulation-bnr-lifestyle:active,
	.top-simulation-bnr.simulation-bnr-lifestyle:focus {
		box-shadow: 0 0 30px rgba(248, 210, 71, 0.5);
	}

	.breadcrumbs + .archive-list {
		margin-top: 30px;
	}

	.btn-box {
		margin-top: 84px;
	}

	.btn-box-shift {
		margin-top: 60px;
	}

	.btn-shift {
		width: auto;
	}

	.btn-shift-inner {
		width: auto;
		padding: 30px 48px;
	}

	.btn-submit,
	.transmission-btn {
		width: 400px;
	}

	.btn-footer-link {
		width: 320px;
		margin-top: 0;
		padding: 28px;
		font-size: 1.4rem;
	}

	.btn-menu-sp {
		width: 400px;
	}

	.contact-block {
		width: 80%;
		margin: 0 auto;
	}


	.reservation-box .notes-box {
		margin-right: 1em;
		margin-left: 1em;
	}

	.wpcf7-form-control.wpcf7-checkbox {
		-webkit-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item {
		width: 50%;
	}

	.wpcf7-form-control.wpcf7-radio {
		-webkit-flex-direction: row;
		flex-direction: row;
	}

	.lineup-item-name {
		margin-top: 36px;
		font-size: 2rem;
	}

	.popup-inner {
		max-width: 852px;
	}

	.popup-inner .online_consultation {
		max-height: calc(100vh - 230px);
		padding: 84px;
	}

	.slider-prev,
	.slider-next {
		width: 60px;
		height: 60px;
	}
}

@media screen and (min-width: 1100px) {
	#sp-menu {
		display: none;
	}

	#btn-hamburger {
		display: none;
	}
}

@media screen and (min-width: 1060px) {
	.eventlist-slider {
		padding-right: 0;
		padding-left: 0;
	}

	.eventlist-slider-prev.slider-prev {
		left: -70px;
	}

	.eventlist-slider-next.slider-next {
		right: -70px;
	}

	.l-footer-container {
		width: 843px;
	}

	.lineup-kv {
		height: 486px;
	}
}

@media screen and (min-width: 1400px) {
	.footer-logo-pc {
		width: 279px;
	}

	.footer-tel {
		font-size: 3.8rem;
	}

	.footer-tel-label {
		font-size: 2rem;
	}

	.footer-nav {
		font-size: 1.6rem;
	}

	.footer-nav .menu + .menu {
		margin-left: 60px;
	}

	.footer-nav .sub-menu li {
		font-size: 1.4rem;
	}

	.footer-sns li svg {
		width: 30px;
		height: 30px;
	}

	.footer-sns li:nth-child(2) svg {
		width: 38px;
	}

	.footer-sns li + li {
		margin-left: 24px;
	}

	.l-container {
		width: 1060px;
	}

	.l-footer-container {
		width: 1137px;
	}

	.top-mv-inner {
		width: 1080px;
	}

	.top-mv-image,
	.top-mv-slider {
		max-width: 1020px;
		padding-left: 0;
	}

	.top-mv-video {
		height: 696px !important;
	}
}

@media screen and (max-width: 767px) {
	#entry-article {
		width: 100%;
		padding: 0;
		border-right: none;
	}

	#entry-sidebar {
		width: 100%;
		margin: 50px 0 0;
		padding: 0;
	}

	.entry-title {
		font-size: 2.0rem;
		margin: 40px 0 30px;
	}

	#adjacent-news-box .adjacent-news {
		width: 100%;
	}

	#adjacent-news-box .adjacent-news#prev-news {
		padding: 0;
	}

	#adjacent-news-box .adjacent-news#next-news {
		padding: 0;
		border-left: none;
	}

	#adjacent-news-box #next-news {
		margin: 30px 0 0;
	}

	#adjacent-news-box #next-news .adjacent-news-inner.flex-f {
		-webkit-flex-direction: row-reverse;
		flex-direction: row-reverse;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
	}

	#adjacent-news-box #next-news .adjacent-head {
		text-align: left;
	}

	#adjacent-news-box #next-news .title {
		padding: 0 10px 0 0;
	}

	.single-works #adjacent-news-box {
		display: flex;
		flex-direction: column;
	}

	.single-works #adjacent-news-box .adjacent-news,
	.single-works #adjacent-news-box .link-archive {
		width: 100%;
		flex: 1 1 auto;
	}

	.single-works #adjacent-news-box .adjacent-news#prev-news {
		order: 1;
	}

	.single-works #adjacent-news-box .adjacent-news#next-news {
		order: 2;
	}

	.single-works #adjacent-news-box .link-archive {
		order: 3;
		margin-top: 30px;
	}

	.lineup-header {
		padding: 40px 0;
	}

	.lineup-explain {
		margin-top: 40px;
	}

	.lineup-item-name {
		margin-top: 10px;
	}

	.lineup-item-explain {
		margin-top: 4px;
		font-size: 1.4rem;
		line-height: 1.75;
	}

	.reservation-box .item-wrap {
		flex-direction: column;
	}

	.reservation-box .item-ttl {
		width: 100%;
		font-size: 1.8rem;
	}

	.reservation-box .item-txt {
		width: 100%;
		margin: 0;
	}
}

/* 建築事例のカスタム投稿追加に伴う（cssの追記） */
.footer-nav .menu .menu-item + .menu-item {
	margin-top: 10px;
}

@media screen and (max-width: 959px) {
	.footer-nav .menu .menu-item + .menu-item {
		margin-top: 0;
	}
}

.pc-only {
	display: block!important;
}

.sp-only {
	display: none!important;
}

@media screen and (max-width: 767px) {
	.pc-only {
		display: none!important;
	}

	.sp-only {
		display: block!important;
	}
}

.single-works .entry-inner {
	padding-top: 0;
}

.post-thumb {
	transition: all 0.3s ease;
}

.post-thumb .img-relative {
	aspect-ratio: 3 / 2;
}

.post-thumb .img-relative img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.post-thumb:hover {
	opacity: 0.7;
	transition: all 0.3s ease;
}

/* 画像配置 */

.img-relative {
	position: relative;
}

.img-relative .tag {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #000;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 500;
	padding: 2px 7px;
}

.img-sec .title {
	margin: 20px auto;
	font-size: 1.7rem;
	font-weight: 400;
	line-height: 1.75;
}


/* ============================
	archive
============================ */
/* cat btn */
.works-category-block {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 60px;
	padding: 0 5%;
}

.works-category-list {
	position: relative;
	width: calc((100% - 40px) / 3);
}

.works-category-list > a {
	position: relative;
	display: block;
	background-color: #969696;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 700;
	width: 100%;
	height: 100%;
	padding: 20px;
}

.works-category-list > a:before {
	content: "+";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 20px;
	font-size: 32px;
	font-weight: 400;
	line-height: 1;
}

.works-category-list > a.open:before {
	content: "-";
}

.works-category-list > a:hover {
	opacity: 1;
}

.works-category-list .search-tax {
	position: relative;
	font-weight: 700;
	width: 50%;
	text-align: center;
}

.works-category-list .search-tax::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 18px;
	right: 20px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	width: 10px;
	height: 10px;
	transform: rotate(135deg);
}

.works-category-list .search-tax.is-active>a,
.works-category-list .search-tax.is-active>span {
	pointer-events: none;
	color: #00a5c1;
	background-color: rgba(27, 169, 188, 0.2);
}

.works-category-list .search-tax.all::before {
	content: none;
}

.works-category-list .search-tax.is-active {
	background-color: rgba(27, 169, 188, 0.2);
}

.works-category-list .search-tax.all::before {
	content: none;
}

.works-category-list .search-tax.all:hover a {
	color: #00a5c1;
	background-color: rgba(27, 169, 188, 0.2);
}

.works-category-list .search-tax a,
.works-category-list .search-tax span {
	background-color: #f9f9f9;
	display: inline-block;
	width: 100%;
	padding: 10px 0;
}

@media screen and (min-width: 768px) {
	.works-category-list .search-tax:hover .search-sub-list {
		display: inline-block;
	}
}

@media screen and (max-width: 960px) {
	.works-category-block {
		padding: 0;
	}

}

@media screen and (max-width: 768px) {
	.works-category-block {
		flex-direction: column;
		margin-bottom: 40px;
	}

	.works-category-list {
		width: 100%;
	}
}

.works-category-list .search-sub-list {
	position: absolute;
	top: 100%;
	left: 0;
	display: none;
	width: 100%;
	box-sizing: border-box;
	background-color: #969696;
	z-index: 10;
}

.works-category-list .search-sub-list > li {
	width: 100%;
}

.works-category-list .search-sub-list > li > a {
	position: relative;
	display: block;
	padding: 15px 20px;
	color: #fff;
	font-size: 2.0rem;
}

.works-category-list .search-sub-list > li > a:before {
	content: ">";
	position: absolute;
	right: 20px;
	top: 50%;
	font-size: 2.0rem;
	transform: translateY(-50%);
}

.works-category-list .search-sub-list > li > a:hover {
	background-color: #fff;
	color: #000;
	opacity: 1;
}

@media screen and (max-width: 767px) {
	.works-category-list .search-tax {
		position: relative;
		width: 100%;
	}

	.works-category-list .search-sub-list {
		display: none;
		position: relative;
		top: 0;
	}

	.works-category-list .search-tax.is-active>a,
	.works-category-list .search-tax.is-active>span {
		pointer-events: painted;
	}

}


@media screen and (max-width: 767px) {
	#adjacent-news-box {
		display: block;
	}

	#adjacent-news-box #next-news .adjacent-head {
		text-align: right;
	}
}

/* ============================
	2021リニューアル - 基本スタイル
============================ */

p {
	line-height: 2;
}

a {
	transition: all 0.3s ease;
}

a:hover {
	transition: all 0.3s ease;
}

.l-main {
	padding-top: calc(20px + 9.11vw);
	padding-bottom: 190px;
}

#simulation .l-main {
	padding-top: 79px;
}

.single-lp .l-main {
	padding-top: 0;
}

.section-inner {
	padding: 100px 0;
}

.archive .section-inner {
	padding: 0;
}

.content-width {
	max-width: 1000px;
  width: calc(100% - 40px);
	margin: auto;
}

.cont-wrap + .cont-wrap {
	margin-top: 80px;
}

@media screen and (max-width: 1100px) {
	.l-main {
		padding-top: 15.7vw;
	}

	#simulation .l-main {
		padding-top: 72px;
	}
}

@media screen and (max-width: 960px) {
	.l-main {
		padding-bottom: 150px;
	}

	.section-inner {
		padding: 60px 0;
	}

	.archive .section-inner {
		padding: 0;
	}

	.content-width {
		width: 100%;
		margin-right: auto;
		margin-left: auto;
		padding-right: 20px;
		padding-left: 20px;
	}
}

@media screen and (max-width: 767px) {
	.l-main {
		padding-bottom: 90px;
	}
	.cont-wrap + .cont-wrap {
		margin-top: 60px;
	}
}

/* sec-ttl */
.sec-ttl-box {
	margin-bottom: 60px;
}

.sec-ttl-box-center {
	margin-bottom: 70px;
	text-align: center;
}

.sec-ttl-box-center .lead-txt {
	margin-top: 20px;
	font-size: 1.8rem;
}

.sec-ttl {
	position: relative;
	z-index: 10;
}

.cont-ttl-box-center {
	margin-bottom: 40px;
	text-align: center;
}

.cont-ttl-box-center .lead-txt {
	margin-top: 15px;
	font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
	.sec-ttl-box {
		margin-bottom: 30px;
	}

	.sec-ttl-box-center {
		margin-bottom: 30px;
	}

	.sec-ttl-box-center .lead-txt,
	.cont-ttl-box-center .lead-txt {
		text-align: left;
	}
}

.underline-txt {
	background: linear-gradient(to bottom,
			rgba(0, 0, 0, 0) 70%,
			rgba(255, 248, 206, 100) 70%);
	background: -moz-linear-gradient(to bottom,
			rgba(0, 0, 0, 0) 70%,
			rgba(255, 248, 206, 100) 70%);
	background: -webkit-linear-gradient(to bottom,
			rgba(0, 0, 0, 0) 70%,
			rgba(255, 248, 206, 100) 70%);
	background: -ms-linear-gradient(to bottom,
			rgba(0, 0, 0, 0) 70%,
			rgba(255, 248, 206, 100) 70%);
}

.bold-name {
	font-weight: 700;
	font-size: 1.8rem;
}

.ttl-type-a {
	display: inline-block;
	font-size: 4.2rem;
	line-height: 1.4;
	letter-spacing: 0.2em;
	font-weight: 700;
}

.ttl-type-a .ttl_en {
	display: block;
	color: #00a5c1;
	font-family: "Lato", sans-serif;
	font-size: 1.2rem;
	padding: 0 0 10px;
}

.ttl-type-a .ttl_ja {
	display: block;
	font-size: 4.2rem;
	padding: 5px 0;
}

.ttl-type-a .border-bottom {
	border-bottom: 4px solid;
}

.ttl-type-a .border-top {
	border-top: 4px solid;
}

.ttl-type-b {
	font-size: 3.8rem;
	font-weight: 700;
	line-height: 1.1;
	color: #fff;
	text-align: center;
}

.ttl-type-b.font-black {
	color: #000;
}

.ttl-type-b .ttl_en {
	position: relative;
	font-size: 1.2rem;
	letter-spacing: 0.25em;
	padding: 2px 5px;
	border: 1px solid;
}

.ttl-type-b .ttl_en:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -50px;
	width: 50px;
	height: 1px;
	border: 1px solid;
	transform: translateY(-50%);
}

.ttl-type-b .ttl_en:after {
	content: "";
	position: absolute;
	top: 50%;
	right: -50px;
	width: 50px;
	height: 1px;
	border: 1px solid;
	transform: translateY(-50%);
}

.ttl-type-c {
	position: relative;
	text-align: center;
	line-height: 1.2;
}

.ttl-type-c span {
	display: inline-block;
	position: relative;
	font-size: 3.4rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	padding: 0 25px;
	background-color: #fff;
	z-index: 10;
}

.ttl-type-c::before,
.ttl-type-c::after {
	content: "";
	background: #a7a49d;
	position: absolute;
	width: 100%;
	height: 1px;
	transform: translateX(-50%);
}

.ttl-type-c::before {
	top: calc(50% - 3px);
	left: 50%;
}

.ttl-type-c::after {
	top: calc(50% + 3px);
	left: 50%;
}

.ttl-type-d {
	font-size: 3.2rem;
	font-weight: 700;
	color: #fff;
	text-align: center;
}

.ttl-type-e {
	font-size: 4.2rem;
	line-height: 1.75;
	letter-spacing: 0.16em;
	color: #00a5c1;
	font-weight: 700;
	text-align: center;
}

.ttl-type-f {
	text-align: center;
	padding: 10px 0;
	font-size: 2.4rem;
	font-weight: 700;
	border-top: 2px solid #918e84;
	border-bottom: 2px solid #918e84;
}

@media screen and (max-width: 767px) {
	.ttl-type-a {
		font-size: 2.6rem;
	}

	.ttl-type-a .ttl_ja {
		font-size: 2.6rem;
		padding: 6px;
	}

	.ttl-type-a .border-bottom {
		border-bottom: 2px solid;
	}

	.ttl-type-a .border-top {
		border-top: 2px solid;
	}

	.ttl-type-b {
		font-size: 2.7rem;
		line-height: 1.2;
	}

	.ttl-type-b .ttl_en {
		font-size: 0.9rem;
	}

	.ttl-type-b .ttl_en:before {
		border: 0.5px solid;
		left: -25px;
		width: 25px;
	}

	.ttl-type-b .ttl_en:after {
		border: 0.5px solid;
		right: -25px;
		width: 25px;
	}

	.ttl-type-c::before,
	.ttl-type-c::after {
		width: 100%;
	}

	.ttl-type-c::before {
		top: calc(50% - 2px);
	}

	.ttl-type-c::after {
		top: calc(50% + 2px);
	}

	.ttl-type-d {
		font-size: 2.6rem;
	}

	.ttl-type-e {
		font-size: 2.6rem;
	}
}

/* btn */
.btn-box {
	margin-top: 40px;
}

@media screen and (max-width: 767px) {
	.btn-box {
		margin-top: 30px;
	}
}

.btn-type-a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding: 24px 0 10px;
	background-color: #fff;
	border-radius: 100px;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	line-height: 1.4;
	font-weight: 700;
	width: 180px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	transition: all 0.3s;
}

.btn-type-a:hover {
	transform: scale(1.1);
	opacity: 1.0;
}

.btn-type-a .txt {
	display: block;
}

.btn-type-a .icon {
	display: block;
	max-width: 25px;
}

.btn-type-b {
	position: relative;
	display: inline-block;
	border: none;
	color: #fff;
	border: 1px solid;
	background-color: #000;
	border-radius: 100px;
	font-size: 1.8rem;
	line-height: 1.4;
	font-weight: 700;
	min-width: 230px;
	text-align: left;
	padding: 17px 50px 17px 30px;
	transition: all .3s;
}

.btn-type-b::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 25px;
	height: 10px;
	background: url(assets/images/icon/icon_arrow-wh.svg) center / contain no-repeat;
	transform: translateY(-50%);
	transition: all .3s;
}

.btn-type-b:hover {
	background-color: #fff;
	color: #000;
	opacity: 1.0;
}

.btn-type-b:hover:before {
	background: url(assets/images/icon/icon_arrow.png) center / contain no-repeat;
}

.btn-type-c {
	position: relative;
	display: inline-block;
	border: none;
	color: #fff;
	border: 1px solid;
	border-radius: 100px;
	font-size: 1.8rem;
	line-height: 1.4;
	font-weight: 700;
	max-width: 260px;
	width: 100%;
	text-align: center;
	padding: 16px 20px;
	transition: all .3s;
}

.btn-type-c:hover {
	background-color: #fff;
	color: #1ea2b6;
	opacity: 1.0;
}

.btn-size-348 {
	width: 348px;
}

.btn-size-566 {
	width: 566px;
}

@media screen and (max-width: 767px) {
	.btn-type-a {
		max-width: 140px;
		width: 100%;
		font-size: 1.8rem;
	}

	.btn-type-b {
		padding: 13px 50px 13px 20px;
		font-size: 1.6rem;
		max-width: 240px;
	}

	.btn-size-348,
	.btn-size-566 {
		width: 100%;
	}
}

/* table */
.table-type-a table {
	border-top: 1px solid #a7a49d;
	border-left: none;
}

.table-type-a th {
	background: #e5ddca;
}

.table-type-a td,
.table-type-a th {
	border-right: 1px solid #a7a49d;
	border-bottom: 1px solid #a7a49d;
	text-align: center;
	font-weight: 400;
	padding: 18px 0;
}

.table-type-a td:last-child,
.table-type-a th:last-child {
	border-right: none;
}

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

	.table-type-a thead,
	.table-type-a tbody {
		width: 100%;
	}
}

.table-type-b table {
	margin: 0;
	border-top: 1px solid #a8a59c;
	border-left: none;
	font-weight: 500;
}

.table-type-b th {
	background: #ddd6c6;
}

.table-type-b td,
.table-type-b th {
	border-bottom: 1px solid #a8a59c;
	text-align: center;
	font-weight: 400;
	padding: 18px 0;
	letter-spacing: 0.05em;
}

.table-type-b td:last-child,
.table-type-b th:last-child {
	border-right: none;
}

.table-type-b td {
	text-align: left;
	padding-left: 30px;
}

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

	.table-type-b thead,
	.table-type-b tbody {
		width: 100%;
	}
}

/* ============================
	page header / mainvisual
============================ */
.page-header {
	position: relative;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	padding: 70px 20px 140px;
}

body.single .page-header.modelhouse,
body.single .page-header.event,
body.single .page-header.works {
	border-bottom: 1px solid #000;
}

.category .page-header,
.single-post .page-header {
	background-image: url(./assets/images/common/mv_news.jpg);
}

.post-type-archive-shared .page-header {
	background-image: url(./assets/images/common/mv_shared.jpg);
}

.page-header .section-title {
	display: flex;
	align-items: center;
	justify-content: center;
		height: 100%;
}

.page-header .section-title.border-bottom {
	border-bottom: 1px solid #000;
}

.page-header .section-title img {
	max-height: 66px;
}


#hale .section-title::before,
.lineup .section-title::before {
	background: url(./assets/images/svg/lineup.svg) center / contain no-repeat;
	width: 230px;
	height: 124px;
}

#company .section-title::before {
	background: url(./assets/images/hale/company.svg) center / contain no-repeat;
	width: 320px;
	height: 130px;
}

.works .section-title::before {
	background: url(./assets/images/hale/works.svg) center / contain no-repeat;
	width: 240px;
	height: 120px;
	top: -65px;
}

.event .section-title::before {
	background: url(./assets/images/svg/event.svg) center / contain no-repeat;
	width: 210px;
	height: 110px;
	top: -65px;
}

.news .section-title::before {
	background: url(./assets/images/svg/news.svg) center / contain no-repeat;
	width: 210px;
	height: 110px;
	top: -65px;
}

@media screen and (max-width: 960px) {
	.page-header {
		padding-top: 80px;
		padding-bottom: 120px;
	}

	.page-header .section-title {
		font-size: 4.4rem;
		padding-bottom: 0;
	}

	.page-header .section-title::before {
		transform: scale(0.6);
	}
}

@media screen and (max-width: 767px) {
	.page-header {
		padding-top: 70px;
		padding-bottom: 84px;
	}

	.page-header .section-title {
		font-size: 3.6rem;
		padding-bottom: 0;
	}

	.page-header .section-title::before {
		transform: scale(0.4);
	}

	.page-header .section-title img {
		max-height: 28px;
	}
}

/* ============================
	swiper
============================ */

.swiper-parent {
	position: relative;
}

.swiper-button-prev .swiper-navigation-icon,
.swiper-button-next .swiper-navigation-icon {
	display: none;
}

.hale-color .swiper-button-prev,
.hale-color .swiper-button-next,
.modelhouse-prev,
.modelhouse-next {
	width: 62px;
	height: 62px;
	background-image: none;
	border: 1px solid;
	border-radius: 50%;
	transform: translateY(-50%);
}

.hale-color .swiper-button-prev,
.modelhouse-prev {
	left: -80px;
}

.hale-color .swiper-button-next,
.modelhouse-next {
	right: -80px;
}

.hale-color .swiper-button-prev::before,
.hale-color .swiper-button-next::before,
.modelhouse-prev::before,
.modelhouse-next::before {
	content: "";
	display: inline-block;
	position: absolute;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	width: 12px;
	height: 12px;
	transform: rotate(225deg);
	position: absolute;
	top: 22px;
}

.hale-color .swiper-button-prev::before,
.modelhouse-prev::before {
	left: 28px;
}

.hale-color .swiper-button-next::before,
.modelhouse-next::before {
	transform: rotate(45deg);
	right: 28px;
}

.hale-color .swiper-pagination .swiper-pagination-bullet {
	margin: 0 10px;
	background-color: #e5ddca;
	opacity: 1;
}

.hale-color .swiper-pagination .swiper-pagination-bullet-active {
	background-color: #00a5c1;
}

.hale-color .swiper-pagination {
	position: relative;
	margin-top: 45px;
}

@media screen and (max-width: 960px) {
	.hale-color .swiper-pagination {
		margin-top: 6.9%;
	}
	.hale-color .swiper-button-prev,
	.hale-color .swiper-button-next,
	.modelhouse-prev,
	.modelhouse-next {
		width: 42px;
		height: 42px;
	}

	.hale-color .swiper-button-prev,
	.modelhouse-prev {
		left: -50px;
	}

	.hale-color .swiper-button-next,
	.modelhouse-next {
		right: -50px;
	}

	.hale-color .swiper-button-prev::before,
	.hale-color .swiper-button-next::before,
	.modelhouse-prev::before,
	.modelhouse-next::before {
		top: 14px;
	}

	.hale-color .swiper-button-prev::before,
	.modelhouse-prev::before {
		left: 17px;
	}

	.hale-color .swiper-button-next::before,
	.modelhouse-next::before {
		right: 17px;
	}
}


/* ============================
	global header
============================ */
.header {
	position: fixed;
	z-index: 1000;
	width: 100%;
	top: 0;
	padding: 20px 20px 0;
}

.header-inner {
	align-items: flex-start;
}

.header-logo {
	z-index: 100;
	display: inline-block;
	padding: 10px 15px 10px 15px;
	background-color: #fff;
}

.header-logo-text {
	position: absolute;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
	pointer-events: none;
}

.header-logo a {
	display: block;
	line-height: 1;
}

.header-logo img {
	vertical-align: top;
}

.h-logo-box {
	padding: 0 0 0 40px;
	margin-top: 20px;
	position: relative;
	z-index: 10;
}

.h-logo-box h1 {
	font-size: 0;
}

.h-logo-box .img-box a {
	display: block;
	max-width: 137px;
}

.header-nav {
	flex: 1 0;
	position: absolute;
	left: 0;
	top: calc(3.9rem + 3px - max(0px, 1vw - 14px));
	width: 100%;
	z-index: 1;
}

.header-nav-list {
}

.header-nav-list .menu-item {
	font-weight: 700;
	/* font-size: 1.6rem; */
}

.header-nav-list>.menu-item {
	padding: 0 1%;
	line-height: 2.0;
}

.header-nav-list>.menu-item  > a {
	position: relative;
	display: block;
	font-size: max(13px, 1vw);
	padding: 3px 0 0;
	transition: all .3s;
	cursor: pointer;
}

.header-nav-list>.menu-item  > a:hover {
	padding: 0 0 3px;
}

.header-nav-list>.menu-item  > a:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 0;
	height: 2px;
	background-color: #00a5c1;
	transition: 0.4s ease-in-out;
}

.header-nav-list>.menu-item  > a:hover:before {
	width: 100%;
}


.header-nav-list .menu-item-has-children>a {
	padding-right: 20px;
	position: relative;
}

.header-nav-list .menu-item-has-children>a:hover {
	padding: 0 20px 3px 0;
}

.header-nav-list .menu-item-has-children>a::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 11px;
	right: 0;
	border-top: 2px solid #00a5c1;
	border-right: 2px solid #00a5c1;
	width: 10px;
	height: 10px;
	transform: rotate(135deg);
}

.header-nav-list .has-nav-child>a,
.header-nav-list .has-nav-child>span {
	position: relative;
	display: inline-block;
	padding-right: 26px;
	color: #fff;
	cursor: pointer;
}

.header-nav-list .has-nav-child>a::after,
.header-nav-list .has-nav-child>span::after {
	position: absolute;
	top: 50%;
	right: 0;
	display: inline-block;
	width: 14px;
	height: 8px;
	vertical-align: middle;
	background-image: url(./assets/images/common/icon_menu_child.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	content: "";
}

.header-nav-list .sub-menu-container {
	display: none;
	position: absolute;
	top: 72px;
	left: 50%;
	transform: translateX(-50%);
	margin: auto;
	background-color: #fff;
	width: 100%;
}

.header-nav-list .sub-menu-container .sub-menu {
	width: 1060px;
	padding: 40px 0px;
	margin: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.header-nav-list .sub-menu-container .sub-menu>.menu-item {
	width: 200px;
	text-align: center;
	margin: 0 20px;
}

.header-nav-list .sub-menu-container .sub-menu .menu-item a {
	display: block;
	padding-top: 180px;
	font-size: 2rem;
}

.header-nav-list .sub-menu-container .sub-menu .hale a {
	background: url(./assets/images/png/lineup_01.png) top center / 200px no-repeat;
}

.header-nav-list .sub-menu-container .sub-menu .doors a {
	background: url(./assets/images/png/lineup_02.png) top center / 200px no-repeat;
}

.header-nav-list .sub-menu-container .sub-menu .konoie a {
	background: url(./assets/images/png/lineup_03.png) top center / 200px no-repeat;
}

.header-nav-list .sub-menu-container .sub-menu .paco a {
	background: url(./assets/images/png/lineup_04.png) top center / 200px no-repeat;
}

.header-nav-list .header-nav-inner {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.header-nav-list .header-nav-box {
	width: 35.2%;
	margin-right: 20px;
}

.header-nav-list .header-nav-box p {
	margin-top: 24px;
	color: #fff;
	line-height: 2;
}

.header-nav-list .header-nav-child-title {
	color: #00a5c1;
	font-weight: 700;
	font-size: 2.4rem;
	text-transform: uppercase;
}

.header-nav-list .header-nav-child-bnrs {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width: 56.8%;
	margin-left: auto;
}

.header-nav-list .header-nav-child-bnr a {
	display: block;
	opacity: 1;
}

.header-nav-list .header-nav-child-bnr.simulation-bnr-particular {
	box-shadow: none;
}

.header-nav-list .header-nav-child-bnr.simulation-bnr-particular:hover,
.header-nav-list .header-nav-child-bnr.simulation-bnr-particular:active,
.header-nav-list .header-nav-child-bnr.simulation-bnr-particular:focus {
	box-shadow: 0 0 30px rgba(132, 184, 70, 0.15);
}

.header-nav-list .header-nav-child-bnr.simulation-bnr-lifestyle {
	box-shadow: none;
}

.header-nav-list .header-nav-child-bnr.simulation-bnr-lifestyle:hover,
.header-nav-list .header-nav-child-bnr.simulation-bnr-lifestyle:active,
.header-nav-list .header-nav-child-bnr.simulation-bnr-lifestyle:focus {
	box-shadow: 0 0 30px rgba(248, 210, 71, 0.15);
}

.header-nav-list .header-nav-child-bnr + .header-nav-child-bnr {
	margin-left: 10px;
}

.h-contact {
	width: 9.11vw;
	position: relative;
	z-index: 10;
}

.btn-contact-pc {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	text-align: center;
	background-color: #00a5c1;
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	line-height: 1.75;
	transition: all .3s;
}

.btn-contact-pc .icon {
	display: block;
	vertical-align: middle;
	margin:0 auto 8px;
	max-width: 2.5vw;
}

.btn-contact-pc .txt {
	font-size: 0.93vw;
	font-weight: 700;
	color: #fff;
}

.btn-contact-pc:hover,
.btn-contact-pc:active,
.btn-contact-pc:focus {
	transform: scale(1.1);
	opacity: 1.0;
}

.btn-hamburger-open,
.btn-hamburger-close {
	display: none;
}

@media screen and (max-width: 1400px) {
	.h-contact {
		width: 120px;
	}
}

@media screen and (max-width: 1200px) {

	.header-nav-list {
		margin-right: 0;
	}
	.header-nav-list>.menu-item {
		padding: 0 5px;
	}
	.header-nav {
		top: calc(3.9rem + 6px - max(0px, 1vw - 14px));
	}
	.h-contact {
		width: 110px;
	}

	.btn-contact-pc .txt {
		font-size: 1.4rem;
	}
}


@media screen and (max-width: 999px) {

	.l-main {
		padding-top: 76px;
	}

	.header-inner {
		align-items: center;
		height: 100%;
	}

	.h-logo-box {
		width: 88px;
		margin-top: 9px;
		padding: 0;
	}

	.h-logo-box .img-box a {
		max-width: unset;
	}

	.header-nav {
		display: none;
	}

	.h-contact {
		display: none;
	}

	.btn-hamburger-open,
	.btn-hamburger-close {
		display: inline-block;
	}
	.btn-contact-pc {
		display: none;
	}
}

/* ============================
	global header (SP)
============================ */
.btn-hamburger-open {
	position: fixed;
	top: 20px;
	right: 20px;
	z-index: 99999;
	width: 48px;
	height: 48px;
	background-color: #00a5c1;
	border-radius: 50%;
	cursor: pointer;
}

.btn-hamburger-open .border {
	position: absolute;
	z-index: 1;
	width: 16px;
	height: 2px;
	background: #fff no-repeat left top;
	left: 50%;
	transform: translate(-50%,-50%);
	transition: opacity, -webkit-transform 0.2s ease;
	transition: opacity, transform 0.2s ease;
	transition: opacity, transform 0.2s ease, -webkit-transform 0.2s ease;
}

.btn-hamburger-open .border:first-child {
	top: 43%;
}

.btn-hamburger-open .border:nth-child(2) {
	top: 54%;
}

.btn-hamburger-close {
	position: fixed;
	top: 20px;
	right: 20px;
	z-index: 99999;
	display: none;
	width: 48px;
	height: 48px;
	background-color: #00a5c1;
	border-radius: 50%;
	cursor: pointer;
}

.btn-hamburger-close .border {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 1;
	width: 16px;
	height: 2px;
	background: #fff no-repeat left top;
	transition: opacity, -webkit-transform 0.2s ease;
	transition: opacity, transform 0.2s ease;
	transition: opacity, transform 0.2s ease, -webkit-transform 0.2s ease;
}

.btn-hamburger-close .border:first-child {
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
}

.btn-hamburger-close .border:nth-child(2) {
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	transform: translate(-50%, -50%) rotate(-45deg);

}

.is-open .btn-hamburger-close {
	display: block;
}

#sp-menu {
	position: fixed;
	top: 0;
	right: -100%;
	z-index: 99999;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 20px;
	overflow-y: scroll;
	background-color: #dcdcdc;
	transition: all 0.35s ease;
	pointer-events: none;
}

#sp-menu.is-open {
	right: 0;
	transition: all 0.35s ease;
	pointer-events: auto;
}

#sp-menu .menu-item a {
	position: relative;
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 15px 0;
	color: #000;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1;
	text-transform: uppercase;
}

#sp-menu .menu-item a span {
	display: inline-block;
	color: #00a5c1;
	font-size: 1.3rem;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
		"游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3",
		"Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	text-transform: initial;
}

#sp-menu .menu-item-has-children {
	position: relative;
}

#sp-menu .g_nav_js {
	margin-top: 60px;
	padding: 0 20px;
}

#sp-menu .btn-open {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	width: 20px;
	height: 60px;
	cursor: pointer;
}

#sp-menu .btn-open::before {
	position: absolute;
	top: calc(50% - 1px);
	left: calc(50% - 8px);
	display: block;
	width: 16px;
	height: 2px;
	background-color: #fff;
	content: "";
}

#sp-menu .btn-open::after {
	position: absolute;
	top: calc(50% - 8px);
	left: calc(50% - 1px);
	display: block;
	width: 2px;
	height: 16px;
	background-color: #fff;
	transition: -webkit-transform ease 0.5s;
	transition: transform ease 0.5s;
	transition: transform ease 0.5s, -webkit-transform ease 0.5s;
	content: "";
}

#sp-menu .btn-open.is-open::after {
	-webkit-transform: scale(0);
	transform: scale(0);
	-webkit-transform-origin: center;
	transform-origin: center;
}

#sp-menu .sub-menu {
	display: none;
}

#sp-menu .sub-menu li {
	position: relative;
}

#sp-menu .sub-menu li::before {
	content: "";
	display: block;
	position: absolute;
	top: 25px;
	left: 0;
	width: 5px;
	height: 5px;
	background-color: #fff;
	border-radius: 5px;
}

#sp-menu .sub-menu li a {
	line-height: 1.2;
}

#sp-menu .sub-menu a {
	padding: 20px 0 20px 20px;
	font-size: 1.8rem;
}

#sp-menu .sub-menu a span {
	margin-top: 8px;
	color: #5f5f5f;
	font-size: 1.1rem;
}

#sp-menu .sp-contact-box {
	margin: 60px 0 0;
}

#sp-menu .sp-contact-box a {
	display: block;
	box-sizing: border-box;
	padding: 13px 0;
	color: #fff;
	font-size: 1.8rem;
	text-align: center;
	background-color: #111;
}

.sp-menu-logo {
	width: 88px;
	margin-top: 9px;
}

.sp-menu-sns {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	margin-top: 30px;
}

.sp-menu-sns li + li {
	margin-left: 18px;
}

.sp-menu-sns svg {
	width: 20px;
	height: 20px;
}

#sp-menu .btn-box {
	margin-top: 60px;
}

#sp-menu .btn-box .btn {
	display: -webkit-inline-flex;
	display: -ms-inline-flex;
	display: inline-flex;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
	background-color: #00a5c1;
	border: none;
	text-align: center;
	width: 100%;
	font-size: 2.4rem;
	height: 86.5px;
	max-width: unset;
	padding: 0;
}

#sp-menu .btn-box .btn:before {
	content: none;
}

#sp-menu .btn-box .btn img {
	max-height: 22px;
	margin-right: 12px;
}

#sp-menu .btn-box .btn:hover {
	color: #fff;
	opacity: 0.8;
}

/* ============================
	footer
============================ */

#contact-sec {
	position: relative;
	z-index: 1;
}

#contact-sec .logo {
	text-align: center;
	padding-top: 0;
	margin-bottom: -33px;
	position: relative;
	z-index: 10;
}

#contact-sec .logo img {
	max-width: 344px;
}

#contact-sec .section-inner {
	position: relative;
	z-index: 0;
	overflow: hidden;
	padding: 0 0 18.5vw;
}

#contact-sec .section-inner::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 177.5vw; /* 3408px / 1920px * 100 */
	aspect-ratio: 1 / 1;
	background-color: #00A5C1;
	border-radius: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

#contact-sec .ttl-btn-box {
	align-items: center;
}

#contact-sec .sec-ttl {
	font-size: 5rem;
	line-height: 1.24;
}

#contact-sec .slide-flex {
	display: flex;
	justify-content: center;
	gap: 40px;
}

#contact-sec .slide-flex .img-item {
	aspect-ratio: 3 / 2;
}

#contact-sec .slide-flex .img-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#contact-sec .btn-area {
	text-align: center;
}

#contact-sec .btn-area .btn-box-center {
	margin-top: 15px;
}

#contact-sec .btn-area .btn {
	font-size: 2.4rem;
	font-weight: 700;
	padding: 25px 60px;
	width: fit-content;
}

.contact-list {
	max-width: 600px;
	margin: 0 auto;
	padding: 140px 0 0;
	justify-content: center;
	gap: 60px;
}

.contact-list > li {
	width: 210px;
}

.contact-list > li > a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background-color: #fff;
	text-align: center;
}

.contact-list > li > a:hover {
	transform: scale(1.1);
	opacity: 1;
}

.contact-list > li > a .txt {
	display: block;
	font-size: 2.2rem;
	font-weight: 700;
	margin-top: 10px;
}

.contact-list > li > a .arrow {
	margin-top: 8px;
	max-width: 26px;
}

.contact-list > li > a > img {
	width: 48px;
}

.bottom-slider {
	position: relative;
	z-index: 1;
	margin-top: -10.42vw;
}

.bottom-slider .swiper-slide {
	width: 465px;
	height: 310px;
}

.info-area {
	padding: 140px 0 120px;
}

.info-area .company-name {
	font-size: 3.0rem;
	font-weight: 700;
	line-height: 1.2;
}

.info-area .company-info {
	margin-top: 20px;
}

.info-area .company-info p {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.2;
}


@media screen and (max-width: 960px) {
	#contact-sec .sec-ttl {
		font-size: 3.8rem;
	}
}

@media screen and (max-width: 767px) {
	#contact-sec .section-inner {
		padding: 50px 0 34vw;
	}

	#contact-sec .section-inner::before {
		width: 454.4vw; /* 3408px / 750px * 100 */
	}

	#contact-sec .ttl-btn-box {
		flex-wrap: wrap;
	}

	#contact-sec .ttl-area,
	#contact-sec .btn-area {
		width: 100%;
	}

	#contact-sec .sec-ttl::before {
		transform: scale(0.7);
	}

	#contact-sec .sec-ttl {
		font-size: 3.6rem;
		text-align: center;
	}

	#contact-sec .btn-area {
		margin-top: 30px;
	}

	#contact-sec .btn-area .btn {
		font-size: 2rem;
		padding: 20px 0;
		width: 100%;
	}

	#contact-sec .logo {
		margin-bottom: -28px;
	}

	#contact-sec .logo img {
		max-width: 220px;
	}

	.contact-list {
		padding: 30px 30px;
		gap: 30px;
	}
	.contact-list > li {
		width: calc((100% - 30px) / 2);
		max-width: 210px;
		container-type: inline-size;
	}
	.contact-list > li > a > img {
		width: 22.8cqi;
	}
	.contact-list > li > a .txt {
		font-size: 10.5cqi;
		margin-top: 4.76cqi;
	}
	.contact-list > li > a .arrow {
		margin-top: 3.8cqi;
		max-width: 12.4cqi;
	}
	.info-area {
		padding: 60px 0 50px;
	}

	.info-area .company-name {
		font-size: 3.2rem;
		text-align: center;
	}

	.info-area .company-info p {
		font-size: 1.8rem;
		text-align: center;
		margin-top: 10px;
		line-height: 1.75;
	}

	.bottom-slider {
		margin-top: -30.42vw;
	}

	.bottom-slider .swiper-slide {
		width: auto;
		height: auto;
	}


}

#to-top {
	position: fixed;
	bottom: 25px;
	right: 25px;
	width: 58px;
	height: 58px;
	opacity: 0;
	z-index: 999;
	transition: all 0.5s ease;
}

#to-top.show-up {
	opacity: 1;
	transition: all 0.5s ease;
}

@media screen and (max-width: 767px) {
	#to-top {
		width: 38px;
		height: 38px;
		right: 15px;
		bottom: 15px;
	}
}

#footer {
	color: #fff;
}
#footer .f-inner {
	padding: 70px 0;
}

#footer a {
	color: #fff;
}

#footer .f-menu-box a:hover {
	color: #00a5c1;
}

#footer .menu-area .f-nav:nth-child(2) {
	margin-left: 60px;
}

#footer .menu-area .f-nav:nth-child(3) {
	margin-left: 40px;
}

#footer .sns-list li + li {
	margin-left: 20px;
}

#footer .f-copyright-inner {
	padding: 20px 0;
}

#footer .f-copyright-inner p {
	text-align: right;
	font-size: 1.3rem;
	color: #fff;
}

.f-nav .menu-item {
	font-size: 1.6rem;
	font-weight: 700;
}

.f-nav .menu-item + .menu-item {
	margin-top: 6px;
}

.f-nav .sub-menu {
	margin-top: 6px;
}

.f-nav .sub-menu .menu-item {
	position: relative;
	padding-left: 18px;
}

.f-nav .sub-menu .menu-item::before {
	content: "";
	background: #fff;
	position: absolute;
	width: 12px;
	height: 2px;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

@media screen and (max-width: 767px) {
	#footer::before {
		top: -66px;
		border-width: 0 0 66px 100vw;
	}

	#footer::after {
		top: -44px;
		border-width: 0 0 44px 100vw;
	}

	#footer .f-inner {
		padding: 40px 0 70px;
	}

	#footer .content-width {
		padding: 0 40px;
	}

	#footer .menu-area {
		flex-wrap: wrap;
	}

	#footer .menu-area .f-menu-box {
		flex-wrap: wrap;
		width: 100%;
	}

	#footer .menu-area .f-nav {
		width: 100%;
	}

	#footer .menu-area .f-nav:nth-child(2) {
		margin-left: 0;
		margin-top: 12px;
	}

	#footer .menu-area .f-nav:nth-child(3) {
		margin-left: 0;
		margin-top: 12px;
	}

	#footer .menu-area .f-sns-box {
		margin-top: 30px;
	}

	#footer .info-area {
		margin-top: 60px;
		flex-wrap: wrap;
	}

	#footer .info-area .company-box {
		text-align: center;
		width: 100%;
	}

	#footer .info-area .map-box {
		width: 100%;
		margin-top: 30px;
	}

	#footer .f-copyright {
		text-align: center;
		padding: 0 0 30px;
	}

	#footer .f-copyright>p {
		width: 100%;
	}

	.f-nav .menu-item {
		font-size: 1.8rem;
	}

	.f-nav .menu-item + .menu-item {
		margin-top: 12px;
	}

	#footer .f-copyright-inner {
		padding: 0 0 50px;
	}

	#footer .f-copyright-inner p {
		text-align: center;
	}
}

.single-lp #contact-sec,
.single-lp #footer {
	display: none;
}

/* ============================
	list (投稿一覧共通)
============================ */
.post-place {
	color: #00a5c1;
	font-size: 1.5rem;
	border-left: 2px solid #00a5c1;
	padding-left: 10px;
	font-weight: 700;
	line-height: 1.2;
}

.post-ttl {
	font-size: 1.8rem;
	font-weight: 500;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.post-date {
	font-size: 1.6rem;
	font-weight: 500;
}

.post-meta {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}

.post-item {
	align-items: center;
	padding: 20px 0;
	border-bottom: 1px dotted #b9b9b9;
	font-weight: 700;
	font-size: 1.5rem;
}

.post-item > a {
	width: 100%;
	align-items: center;
}

.post-item > a:hover {
	opacity: 0.7;
}

.post-item .post-img {
	border-radius: 50%;
	width: 100px;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	margin-right: 20px;
}

.post-item .post-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.post-item .post-content {
	width: calc(100% - 120px);
}

.news-item .post-ttl:hover,
.news-item .post-ttl:active,
.news-item .post-ttl:focus {
	text-decoration: underline;
}

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

	.post-ttl {
		font-size: 2.0rem;
	}

	.post-item .post-img {
		width: 70px;
		margin-right: 15px;
	}

	.post-item .post-content {
		width: calc(100% - 85px);
	}
}

/* works-list */
.works-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 60px;
}

.works-item {
	width: calc((100% - 120px) / 3);
	border-bottom: 1px solid;
}

.works-item > a {
	position: relative;
	display: block;
	height: 100%;
	padding: 0 0 50px;
}

.works-item > a:before {
	content: "";
	position: absolute;
	bottom: 22px;
	right: 0;
	width: 56px;
	height: 56px;
	background: url(assets/images/icon/icon_arrow.svg) no-repeat center / contain;
}

.works-item .post-thumb {
	aspect-ratio: 1 / 1;
}

.works-item .post-thumb .post-link {
	position: relative;
	display: inline-block;
}

.works-item .post-thumb .post-link::before {
	content: "";
	position: absolute;
	top: 10px;
	left: 10px;
	width: 34px;
	height: 34px;
	z-index: 1;
}

.works-item.doors .post-thumb .post-link::before {
	background: url(./assets/images/common/icon_6doors_logo.png) center / contain no-repeat;
}

.works-item.konoie .post-thumb .post-link::before {
	background: url(./assets/images/common/icon_konoie_logo.png) center / contain no-repeat;
}

.works-item.viola .post-thumb .post-link::before {
	background: url(./assets/images/common/icon_viola_logo.svg) center / contain no-repeat;
	opacity: 0.5;
}

.works-item.hale .post-thumb .post-link::before {
	background: url(./assets/images/common/icon_hale_logo.svg) center / contain no-repeat;
	opacity: 0.5;
}

.works-item .post-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.works-item .post-detail {
	margin-top: 20px;
}

.works-item .post-detail h3 {
	font-size: 1.8rem;
	font-weight: 700;
}

.category-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
}

.category-list > li {
	font-size: 1.3rem;
	border: 1px solid #646464;
	padding: 3px 8px;
 	line-height: 1.75;
}

.works-price {
	font-size: 1.6rem;
	margin-top: 10px;
}

.works-price .price {
	font-size: 2.2rem;
}

/* 建築実例詳細 */

.works-block {
	padding: 100px 0 70px;
}

.works-block .img-box {
	width: 46%;
}

.works-block .img-box img {
	aspect-ratio: 1/1;
	object-fit: cover;
	width: 100%;
	height: auto;
}

.works-block .text-box {
	width: 50%;
}

.works-block .text-box h2 {
	font-size: 3.0rem;
	line-height: 1.75;
}

.works-block .text-box .works-price {
	font-size: 3.2rem;
	border-top: 1px solid;
	border-bottom: 1px solid;
	padding: 5px 0;
  margin-top: 25px;
}

.works-block .text-box .works-price .price {
	font-size: 4.4rem;
}

.works-block .text-box .works-area {
	margin-top: 20px;
}

.works-content {
	margin-top: 60px;
}

@media screen and (max-width: 960px) {
	.works-item > a:before {
		width: 42px;
		height: 42px;
	}

}

@media screen and (max-width: 767px) {
	.works-list {
		gap: 40px;
	}

	.works-item {
		width: 100%;
		margin-left: 0;
	}

	.works-item .post-thumb .post-link::before {
		top: 6px;
		left: 6px;
		width: 24px;
		height: 24px;
	}

	.category-list > li {
		font-size: 1.5rem;
	}

	./*works-item .post-detail {
		font-size: 1.4rem;
		margin-top: 10px;
		line-height: 1.4;
	}*/

	/* 建築実例詳細 */

	.works-block {
		padding: 70px 0 30px;
	}

	.works-block .flex-between {
		flex-direction: column;
	}

	.works-block .img-box {
		width: 100%;
	}

	.works-block .text-box {
		width: 100%;
		margin-top: 30px;
	}

	.works-block .text-box h2 {
		font-size: 2.6rem;
	}

	.works-block .text-box .works-price {
		font-size: 1.8rem
	}

	.works-block .text-box .works-price .price {
		font-size: 3.2rem;
	}
}

/* reason */
.reason-list {
	flex-wrap: wrap;
}

.reason-list-item {
	width: 29.2%;
}

.reason-list-item .img-area .img-box {
	position: relative;
	text-align: center;
	z-index: 10;
}

.reason-list-item .img-area .img-box::before {
	content: "";
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: 60px;
	height: 60px;
}

.reason-list-item:nth-child(1) .img-area .img-box::before {
	background: url(./assets/images/hale/num_01.png) center / contain no-repeat;
	top: 0;
	left: 0;
	width: 58px;
	height: 60px;
}

.reason-list-item:nth-child(2) .img-area .img-box::before {
	background: url(./assets/images/hale/num_02.png) center / contain no-repeat;
	top: 0;
	left: 0;
	width: 67px;
	height: 61px;
}

.reason-list-item:nth-child(3) .img-area .img-box::before {
	background: url(./assets/images/hale/num_03.png) center / contain no-repeat;
	top: 0;
	left: 0;
	width: 72px;
	height: 62px;
}

.reason-list-item .img-area .img-box::after {
	content: "";
	background-color: #fff8ce;
	position: absolute;
	bottom: -14px;
	right: -14px;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	z-index: -1;
}

.reason-list-item .txt-area {
	margin-top: 20px;
}

.reason-list-item .txt-area .ttl {
	text-align: center;
	line-height: 1.3;
	margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
	.reason-list-item {
		width: 100%;
	}

	.reason-list-item + .reason-list-item {
		margin-top: 50px;
	}

	.reason-list-item .img-area {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}

	.reason-list-item .img-area .img-box {
		width: 35%;
	}

	.reason-list-item:nth-child(1) .img-area .img-box::before {
		width: 38px;
		height: 40px;
	}

	.reason-list-item:nth-child(2) .img-area .img-box::before {
		width: 47px;
		height: 41px;
	}

	.reason-list-item:nth-child(3) .img-area .img-box::before {
		width: 52px;
		height: 42px;
	}

	.reason-list-item .img-area .img-box::after {
		bottom: -7px;
		right: -7px;
	}

	.reason-list-item .img-area .ttl {
		width: 58%;
	}
}

/* event */
.event-list-item {
	border-top: 2px dotted #707070;
	padding: 35px 0;
}

.event-list-item:last-child {
	border-bottom: 2px dotted #707070;
}

.event-list-item-inner {
	align-items: center;
}

.event-list-item .post-thumb {
	width: 25%;
}

.event-list-item .post-info {
	width: 72%;
	margin-left: 3%;
}

.event-list-item .post-ttl {
	margin-top: 5px;
	line-height: 1.8;
}

.event-list-item .post-schedule {
	margin-top: 5px;
	font-size: 1.5rem;
	font-weight: 700;
	color: #00a5c1;
}

@media screen and (max-width: 767px) {
	.event-list-item-inner {
		flex-wrap: wrap;
	}

	.event-list-item .post-thumb {
		width: 100%;
	}

	.event-list-item .post-info {
		margin-top: 20px;
		width: 100%;
		margin-left: 0%;
	}
}

/* faq-list */
.faq-item {
	margin-top: 30px;
	margin-bottom: 0;
}

.faq-item .faq-q,
.faq-item .faq-a {
	position: relative;
	margin: 0;
}

.faq-item .faq-q {
	display:flex;
	align-items:center;
	font-size: 1.8rem;
	color: #fff;
	background-color: #969696;
	cursor:pointer;
	padding: 10px 50px;
}


.faq-item .faq-a {
	background-color: #fff;
	font-size: 1.6rem;
	height:0;
	overflow:hidden;
	padding:0;
	margin:0;
	display:block;
	transition: height .3s ease-out;
}

.faq-item.is-active .faq-a {
  opacity: 1;
}

.faq-item .faq-q .img-box,
.faq-item .faq-a .img-box {
	min-width: 20px;
	margin-right: 25px;
}

.faq-item .faq-a a {
	text-decoration: underline;
}

.faq-item .faq-a a:hover,
.faq-item .faq-a a:active,
.faq-item .faq-a a:focus {
	color: #00a5c1;
}
.faq-a__inner {
	padding:15px 50px;
}
.faq-toggle {
	margin: 0 0 5px auto;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	font-size: 32px
}

.faq-toggle::before {
	content: "+";
	display: inline-block;
	transition: transform 0.3s ease;
}

.faq-q.is-open .faq-toggle::before {
	content: "-";
}

.faq-a {
	display:none;
}

.faq-item.open .faq-a {
	display:flex;
}

.faq-item.open .faq-toggle::before {
	content:"−";
}

@media screen and (max-width: 767px) {
	.faq-item {
		margin-top: 20px;
	}

	.faq-item .faq-q {
		padding: 12px 15px;
	}

	.faq-item .faq-a {
		font-size: 1.8rem;
		font-weight: 400;
	}


	.faq-item .faq-q .img-box,
	.faq-item .faq-a .img-box {
		min-width: 18px;
		margin-right: 15px;
	}

	.faq-toggle {
		font-size: 0;
	}

	.faq-toggle::before {
		font-size: 27px;
		line-height: 1.0;
	}

	.faq-a__inner {
		padding: 10px 15px;
	}

}

/* cont-list */
.cont-list {
	margin-top: -15px;
	margin-left: -15px;
	flex-wrap: wrap;
}

.cont-list-item {
	position: relative;
	margin-top: 15px;
	margin-left: 15px;
	padding: 10px 0;
	width: 323px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 700;
	border-radius: 100px;
	background-color: #ddd6c6;
}

.cont-list-item::before {
	content: "";
	background: url(./assets/images/svg/icon_check.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 13px;
	display: inline-block;
	width: 18px;
	height: 18px;
}

@media screen and (max-width: 767px) {
	.cont-list {
		margin: 0;
	}

	.cont-list-item {
		margin-left: 0;
		width: 100%;
	}
}

/* ============================
	カタログ請求
============================ */

.catalogue-area {
	margin-top: 100px;
}

.catalogue-list > ul {
	display: flex;
	justify-content: space-between;
	gap: 40px;
}

.catalogue-list > ul > li img {
	box-shadow: 10px 10px 20px rgba(78, 78, 78, 0.2);
}

.catalogue-area p {
	font-size: 1.6rem;
	margin-top: 30px;
}

.contact-content > .section-inner {
	padding: 0;
}


@media screen and (max-width: 767px) {
	.contact-content .section-inner {
		padding: 0;
	}

	.contact-content .content-inner {
		margin-top: 0;
	}

	.catalogue-list > ul {
		flex-wrap: wrap;
		gap: 20px;
	}

	.catalogue-list > ul > li {
		width: calc(100% / 2 - 10px);
	}

	.catalogue-area {
		margin-top: 70px;
	}
	.catalogue-area p {
		font-size: 1.8rem;
	}

	.contact-content .reservation-box .item-ttl {
		width: 100%;
		margin-bottom: 5px;
	}

	.contact-content .reservation-box .item-txt {
		width: 100%;
	}
}

/* ============================
	Front-page
============================ */
.home .section-inner {
	padding: 140px 0 150px;
}

.home .sec-ttl-box-center {
	margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
	.home .section-inner {
		padding: 70px 0 60px;
	}
	.home .sec-ttl-box-center {
		margin-bottom: 60px;
	}
}

/* mv */

.mainText {
	padding: 100px 40px 210px;
}

.mainText p {
	text-align: center;
}

.mainText p img {
	max-width: 900px;
}

#home-mv .vegas-slide,
#home-mv .vegas-slide-inner {
	background-position: center right -20vw !important;
}

@media screen and (max-width: 999px) {

	.mainText {
		padding: 17.3vw 40px 20.13vw;
	}

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


	.mainText p img {
		height: 6vw;
	}

	#home-mv .vegas-slide,
	#home-mv .vegas-slide-inner {
		background-position: center right -160px !important;
	}
}

#home-mv {
	position: relative;
	overflow: hidden;
	z-index: 10;
}

#home-mv .home-mv-inner {
	position: relative;
	z-index: 10;
	height: 700px;
}

#home-mv .home-mv-inner .swiper-parent,
#home-mv .home-mv-inner .swiper-container {
	height: 100%;
	display: flex;
	align-items: center;
	border-radius: 60px 60px 0 0;
}

#home-mv .home-mv-inner .swiper-slide img {
	object-fit: cover;
	object-position: center;
	width: 100%;
}

#home-mv .mv-ttl-box .ttl {
	position: relative;
	font-size: 9.7rem;
	line-height: 1;
	letter-spacing: 0.02em;
	color: #00a5c1;
	font-weight: 700;
	z-index: 10;
}

#home-mv .mv-ttl-box .ttl::before {
	content: "";
	background: url(./assets/images/svg/conpacthouse.svg) center / contain no-repeat;
	position: absolute;
	top: -60px;
	left: -100px;
	display: inline-block;
	width: 413px;
	height: 104px;
	z-index: -1;
}

#home-mv .mv-ttl-box .tagline-box {
	margin-top: 26px;
}

#home-mv .mv-ttl-box .tagline {
	margin-top: 7px;
}

#home-mv .mv-ttl-box .tagline span {
	display: inline-block;
	font-size: 2.5rem;
	letter-spacing: 0.17em;
}

@media screen and (max-width: 960px) {
	#home-mv .home-mv-inner {
		aspect-ratio: 3 / 2;
		height: auto;
	}
}

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

	#home-mv .home-mv-inner {
		border-radius: 30px 30px 0 0;
		aspect-ratio: 1 / 1;
		overflow: hidden;
	}

	#home-mv .home-mv-inner .swiper-parent {
		height: 100%;
	}

	#home-mv .home-mv-inner img {
		height: 100%;
		width: 100%;
		object-fit: cover;
		aspect-ratio: 1 / 1;
	}

}
@media screen and (max-width: 767px) {
	#top-slider-section .section-inner {
		padding: 40px 0 60px;
	}
}
@media screen and (min-width: 768px) {
	#top-slider-section .section-inner {
		padding: 40px 0 60px;
	}
	#top-slider-section .swiper-slide {
		width: 448px;
		height: 235px;
	}
}

/* concept */
#home-concept .sec-ttl {
	margin-bottom: 60px;
}

#home-concept .concept-area {
	align-items: flex-end;
}

#home-concept .concept-area .img-area .btn {
	margin: 0 auto;
	font-size: 2.0rem;
}

#home-concept .concept-area .txt-area p {
	font-size: 1.8rem;
	margin-top: 40px;
}

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

	#home-concept .concept-area {
		display: block;
	}

	#home-concept .concept-area .img-area {
		margin-top: 50px;
	}

	#home-concept .concept-area .txt-area {
		width: 100%;
	}

	/*#home-concept .concept-area .txt-area p {
		font-size: 1.8rem;
	}*/

	#home-concept .concept-area .img-area .btn {
		font-size: 1.8rem;
	}
}

/* works */
#top #home-works .section-inner {
	padding-top: 60px;
}

@media screen and (max-width: 767px) {
	#top #home-works .section-inner {
		padding-top: 30px;
	}
}

#home-works .sec-ttl::before {
	content: "";
	background: url(./assets/images/hale/works.svg) center / contain no-repeat;
	position: absolute;
	top: -55px;
	left: 0;
	right: 10px;
	margin: auto;
	display: inline-block;
	width: 184px;
	height: 90px;
	z-index: -1;
}

#home-works .post-title {
	font-size: 1.6rem;
	margin-top: 20px;
	line-height: 1.4;
}

@media screen and (max-width: 767px) {
	#home-works .sec-ttl::before {
		transform: scale(0.8);
	}
}

/* event */
#home-event {
	background-color: #1ea2b6;
	color: #fff;
}

#home-event .content-width {
	padding: 0 80px;
	max-width: 1160px;
 }

#home-event .post-thumb,
.event-item > a {
	display: flex;
	flex-direction: column;
	height: 100%;
}

#home-event .img-sec .title {
	color: #fff;
	line-height: 1.75;
	flex-grow: 1;
}

.event-info-text {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	flex-grow: 1;
}

#home-event .img-sec .info-wrap,
.event-item .info-wrap {
	margin: auto 0 0;
	min-height: 4.5em;
}

#home-event .img-sec .modelhouse-info dt img {
	padding-bottom: 11px;
}
@media screen and (max-width: 767px) {
	#home-event .img-sec .modelhouse-info dt img {
		padding-bottom: 6px;
	}
}

#home-event .img-sec .modelhouse-info dd {
	color: #fff;
}

#home-event .btn-type-b {
	background-color: transparent;
}
#home-event .btn-type-b:hover {
	color: #1ea2b6;
	background-color: #fff;
}
#home-event .btn-type-b:hover::before {
	background: url(assets/images/icon/icon_arrow-blue.svg) center / contain no-repeat;
}
@media screen and (max-width: 960px) {

	#home-event .content-width {
		padding: 0 55px;
	}
}


@media screen and (max-width: 767px) {
	#home-event .content-width {
		padding: 0 20px;
	}

	#home-event .post-thumb,
	.event-item > a {
		display: block;
	}

	.event-info-text {
		display: block;
	}

	#home-event .event-slider .swiper-wrapper {
		display: block;
	}

	#home-event .event-slider .swiper-slide {
		width: 100%;
		margin-bottom: 30px;
	}

	#home-event .event-slider .swiper-slide:last-child {
		margin-bottom: 0;
	}

	#home-event .swiper-button-next,
	#home-event .swiper-button-prev {
		display: none;
	}


	#home-event .img-sec .info-wrap,
	.event-item .info-wrap {
		margin: 0;
		min-height: auto;
	}
}

/* lineup */
#home-lineup {
	background-color: #000;
}

#home-lineup .lineup-list-item {
	width: calc(100% / 3);
}

#home-lineup .lineup-list-item > a {
	display: flex;
	flex-direction: column;
	height: 100%;
}

#home-lineup .lineup-list-item .img-box {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	aspect-ratio: 1 / 1.56;
}

#home-lineup .lineup-list-item .img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home-lineup .lineup-list-item .img-box .ttl-img {
	position: absolute;
	bottom: 50px;
	display: block;
	width: 100%;
	text-align: center;
}

#home-lineup .lineup-list-item .img-box .ttl-img img {
	max-width: 200px;
	height: 42px;
	object-fit: contain;
}

#home-lineup .lineup-list-item .lineup-ttl {
	text-align: center;
	font-size: 2.4rem;
	font-weight: 500;
	margin: 25px 0;
	color: #fff;
	line-height: 1.75;
	flex-grow: 1;
}

#home-lineup .lineup-list-item .btn-box {
	margin-top: auto;
}

#home-lineup .lineup-list-item .btn-type-b:hover {
	color: #fff;
	border: 1px solid;
	background-color: #000;
}

#home-lineup .lineup-list-item .btn-type-b:hover:BEFORE {
	background: url(assets/images/icon/icon_arrow-wh.svg) center / contain no-repeat;
}

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

	#home-lineup .content-width {
		padding: 0;
	}

	#home-lineup .lineups-list {
		flex-direction: column;
	}

	#home-lineup .lineup-list-item {
		width: calc(100% - 20px);
	}

	#home-lineup .lineup-list-item:nth-child(even) {
		margin-left: 20px;
	}

	#home-lineup .lineup-list-item:nth-child(odd) {
		margin-right: 20px;
	}

	#home-lineup .lineup-list-item + .lineup-list-item {
		margin-top: 60px;
	}

	#home-lineup .lineup-list-item .lineup-ttl {
		margin-left: 20px;
	}

	#home-lineup .lineup-list-item:nth-child(even) .lineup-ttl {
		margin-left: 0;
		margin-right: 20px;
	}

	#home-lineup .lineup-list-item .img-box {
		aspect-ratio: 1 / 0.6;
	}

	#home-lineup .lineup-list-item .img-box .ttl-img img {
		height: 44px;
	}

	#home-lineup .lineup-list-item .btn-box {
		margin-left: 20px;
	}

	#home-lineup .lineup-list-item:nth-child(even) .btn-box {
		margin-left: 0;
		margin-right: 20px;
	}

}

/* post */
#home-post {
	background-color: #dcdcdc;
}

#home-post .sec-ttl-box-center {
	margin-bottom: 40px;
}

#home-post .news-area {
	border-right: 1px solid #5a5a5a;
	padding: 0 5%;
	width: 50%;
}

#home-post .blog-area {
	padding: 0 5%;
	width: 50%;
}

#home-post .sec-ttl {
	color: #000;
}

#home-post .ttl-type-b .ttl_en:before {
	width: 23px;
	left: -23px;
}

#home-post .ttl-type-b .ttl_en:after {
	width: 23px;
	right: -23px;
}

#home-post .content-box {
	display: flex;
	flex-direction: column;
}

#home-post .news-list {
	flex-grow: 1;
	margin: 0 0 70px;
}

#home-post .btn-box {
	margin-top: auto;
}

@media screen and (max-width: 960px) {
}

@media screen and (max-width: 767px) {
	#home-post .content-width > .flex-between {
		flex-direction: column;
	}
	#home-post .sec-ttl-box-center {
		margin-bottom: 20px;
	}
	#home-post .news-list {
		margin: 0;
	}

	#home-post .news-area {
		padding: 0;
		border-right: none;
		border-bottom: 1px solid #5a5a5a;
		padding-bottom: 60px;
		width: 100%;
	}

	#home-post .blog-area {
		padding: 60px 0 20px;
		width: 100%;
	}

	#home-post .btn-box {
		margin-top: 40px;
	}
	#home-post .sec-ttl-box-center {
		margin-bottom: 20px;
	}
}

/* q&a */

#home-faq .section-inner {
	padding-bottom: 0;
}

#home-faq .ttl-type-b {
	color: #000;
}

/* cta */
.hale-cta {
	position: relative;
}

.hale-cta::before {
	content: "";
	background: #fedc00;
	position: absolute;
	width: 100vw;
	height: 330px;
	top: 10px;
}

.hale-cta::after {
	content: "";
	background: #00a5c1;
	position: absolute;
	width: 110vw;
	height: 330px;
	top: 10px;
	left: -5%;
	transform: rotate(-2deg);
}

.hale-cta .sec-inner {
	position: relative;
	padding: 50px 0;
	z-index: 10;
}

.hale-cta .txt-area {
	position: relative;
	text-align: center;
	color: #fff;
	padding-left: 360px;
}

.hale-cta .img-area {
	position: absolute;
	width: 490px;
	left: -115px;
	top: -90px;
	z-index: 10;
}

.hale-cta .txt-area .ttl {
	position: relative;
	font-size: 3.4rem;
	padding-bottom: 20px;
	border-bottom: 1px dotted #fff;
	line-height: 1.4;
}

.hale-cta .txt-area .cta-btn-box {
	margin-top: 30px;
}

.hale-cta .btn-type-a {
	width: 520px;
	font-size: 2.2rem;
}

.hale-cta .notice {
	margin-top: 5px;
	font-weight: 700;
	line-height: 1.75;
}

@media screen and (max-width: 1390px) {
	.hale-cta::before {
		width: 100vw;
		height: 100%;
	}

	.hale-cta::after {
		width: 110vw;
		height: 100%;
	}

	.hale-cta .txt-area .ttl {
		font-size: 3rem;
	}

	.hale-cta .btn-type-a {
		width: 100%;
		font-size: 1.8rem;
	}
}

@media screen and (max-width: 960px) {
	.hale-cta .txt-area .ttl {
		font-size: 2.4rem;
	}
}

@media screen and (max-width: 767px) {
	.hale-cta::before {
		content: "";
		background: #fedc00;
		position: absolute;
		width: 100vw;
		height: 100%;
		top: 10px;
	}

	.hale-cta::after {
		content: "";
		background: #00a5c1;
		position: absolute;
		width: 110vw;
		height: 100%;
		top: 10px;
		left: -5%;
		transform: rotate(-2deg);
	}

	.hale-cta .txt-area {
		padding-left: 0;
	}

	.hale-cta .txt-area .ttl {
		padding-left: 0;
		font-size: 2.5rem;
	}

	.hale-cta .img-area {
		position: relative;
		width: 100%;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin-top: 10px;
	}

	.hale-cta .txt-area .cta-btn-box {
		margin-top: 15px;
		padding-left: 0;
	}

	.hale-cta .btn-type-a {
		width: 100%;
		border-radius: 60px;
	}
}

/* reason */

.reason-nav {
	margin: 0 auto 90px;
	max-width: 1000px;
	width: calc(100% - 40px);
}

.reason-nav > ul {
	display: flex;
	justify-content: space-between;
}

.reason-nav > ul > li {
	width: 50%;
}

.reason-nav > ul > li > a {
	display: block;
	text-align: center;
	padding: 20px 20px;
	background-color: #fff;
	font-size: 2.0rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.reason-nav > ul > li > a.btn-conpact {
	border-radius: 30px 0 0 30px;
}

.reason-nav > ul > li > a.btn-base {
	border-radius: 0 30px 30px 0;
}

.reason-nav > ul > li > a.btn-conpact.active {
	background-color: #00a5c1;
	color: #fff;
}

.reason-nav > ul > li > a.btn-base.active {
	background-color: #1c5aa9;
	color: #fff;
}

.reason-list > li {
	margin-top: 150px;
	width: 100%;
	padding-left: calc((100vw - 1000px) / 2);
	padding-right: 0;
}

.reason-list > li:nth-child(even) {
	padding-left: 0;
	padding-right: calc((100vw - 1000px) / 2);
}

.reason-list > li  .reason-txt {
	order: 1;
	width: 45%;
	margin-top: -10px;
}

.reason-list > li  .reason-img {
	order: 2;
	width: 49%;
}

.reason-list > li  .reason-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 3 / 2;
}

.reason-list > li:nth-child(even) .reason-txt {
	order: 2;
}

.reason-list > li:nth-child(even) .reason-img {
	order: 1;
}

.reason-list > li .reason-txt .num {
	font-family: "Baskervville", serif;
	font-size: 120px;
	font-weight: 600;
	color: #00a5c1;
	line-height: 1.0;
	margin-top: -25px;
}

.reason-base .reason-list > li .reason-txt .num {
	color: #1c5aa9;
}

.reason-list > li .reason-txt .reason-ttl {
	font-size: 3.8rem;
	margin-top: 20px;
	line-height: 1.75;
}

.reason-list > li .reason-txt .reason-explain {
	font-size: 1.6rem;
	margin-top: 20px;
}

@media screen and (max-width: 1080px) {


	.reason-list > li {
		padding-left: 20px;
	}

	.reason-list > li:nth-child(even) {
		padding-right: 20px;
	}


	.reason-list > li .reason-txt .num {
		font-size: 100px;
	}

	.reason-list > li .reason-txt .reason-ttl {
		font-size: 4.0rem;
	}
}

@media screen and (max-width: 767px) {
	.sec-reason .content-inner {
		margin: 0 auto;
	}
	.reason-nav {
		width: 100%;
		margin: 0;
	}

	.reason-nav > ul {
		flex-direction: column;
	}

	.reason-nav > ul > li {
		width: 100%;
	}

	.reason-nav > ul > li > a {
		position: relative;
		padding: 15px 20px;
		text-align: left;
	}

	.reason-list > li:nth-child(even) {
		padding-right: 0;
	}

	.reason-nav > ul > li > a.btn-conpact {
		border-radius: 0;
	}

	.reason-nav > ul > li > a.btn-base {
		border-radius: 0;
	}

	.reason-nav > ul > li > a:before {
		content: "";
		position: absolute;
		top: 50%;
		right: 20px;
		display: inline-block;
		vertical-align: middle;
		line-height: 1;
		width: 15px;
		height: 15px;
		border: 0.1em solid currentColor;
		border-left: 0;
		border-bottom: 0;
		box-sizing: border-box;
		transform: translateY(-70%) rotate(135deg);
	}

	.reason-list {
		padding: 0 20px;
	}

	.reason-list > li {
		width: 100%;
		padding: 0;
		margin-top: 60px;
	}

	.reason-list > li .flex-between {
		flex-direction: column;
	}

	.reason-list > li .reason-txt {
		width: 100%;
		order:2;
		margin-top: 0;
	}

	.reason-list > li .reason-img {
		width: 100%;
		order:1;
	}

	.reason-list > li .reason-txt .num {
		text-align: center;
		margin-top: -0.6em;
	}

	.reason-list > li .reason-txt .reason-ttl {
		font-size: 3.0rem;
		text-align: center;
		border-bottom: 1px solid;
		padding: 0 0 15px;
		margin-top: 30px;
	}

	.reason-list > li .reason-txt .reason-explain {
		font-size: 1.8rem;
	}
}

/* ============================
	lineup
============================ */
.sec-lineup .bg-black {
	padding: 150px 0;
}

.lineup-list > li {
	width: 100%;
	padding-left: calc((100vw - 1000px) / 2);
	padding-right: 0;
	margin-top: 150px;
}

.lineup-list > li:nth-child(even) {
	padding-right: calc((100vw - 1000px) / 2);
	padding-left: 0;
}

.lineup-list > li:first-of-type {
	margin-top:0;
}

.lineup-list .txt-box {
	position: relative;
	width: 600px;
	margin: 0 -30px 0 0;
}

.lineup-list > li:nth-child(even) .txt-box {
	order: 2;
	margin: 0 0 0 -30px;
}

.lineup-list > li h3 img {
	max-height: 66px;
}

/* .lineup-list > li:nth-child(even) h3 {
	text-align: right;
} */

.lineup-list .img-box {
	width: calc(100% - 600px + 30px);
}

.lineup-list > li:nth-child(even) .img-box {
	order: 1;
}

.lineup-list .img-box img {
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 4 / 3;
}

.lineup-list > li:nth-child(even) .ttl-box {
	padding-left: 12%;
}

.lineup-list > li .sub-ttl {
	margin-top: 30px;
}

.lineup-list .sub-ttl,
.lineup-list .sub-ttl p {
	font-size: 3.6rem;
	font-weight: 500;
	color: #fff;
	text-align: left;
	line-height: 1.75;
	padding-right: 30px;
}

/* .lineup-list > li:nth-child(even) .sub-ttl,
.lineup-list > li:nth-child(even) .sub-ttl p {
	text-align: right;
	padding-right: 0;
	padding-left: 30px;
} */

.lineup-recommend {
	padding: 30px 20px;
	border-radius: 10px;
	margin-top: 30px;
}

.lineup-recommend.HALE {
	background-color: #00a5c1;
}

.lineup-recommend.LANI {
	background-color: #004381;
}

.lineup-recommend.PONO {
	background-color: #23a891;
}

.lineup-recommend h4 {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 130px;
	background-color: #fff;
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	font-size: 1.6rem;
	text-align: center;
	line-height: 1.25;
}

.lineup-recommend.HALE h4 {
	color: #00a5c1;
}

.lineup-recommend.LANI h4 {
	color: #004381;
}

.lineup-recommend.PONO h4 {
	color: #23a891;
}

.lineup-recommend .lineup-recommend-list {
	width: calc(100% - 150px);
}

.lineup-recommend-list li {
	position: relative;
	color: #fff;
	font-size: 1.6rem;
	border-bottom: 1px solid;
	padding: 5px 0 5px 30px;
}

.lineup-recommend-list li:before {
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	width: 23px;
	height: 18px;
	background: url(assets/images/icon/icon_check.svg) no-repeat center / contain;
}

.lineup-list > li .btn-box {
	text-align: left;
}

.lineup-list > li:nth-child(even) .btn-box {
	text-align: right;
}

/* ラインナップ詳細ページ */

.recommend-single {
	max-width: 1060px;
	width: 100%;
	margin: 20px auto 0;
}

.recommend-single > .flex-between {
	gap: 20px;
}

.recommend-single .lineup-recommend-list {
	width: 66%;
}

.recommend-single .lineup-recommend-list li {
	color: #000;
	font-size: 2.4rem;
	padding: 5px 0 5px 50px;
}

.recommend-single .lineup-recommend-list li:before {
	    background: url(assets/images/icon/icon_check_color.svg) no-repeat center / contain;
}

.recommend-single .lineup-recommend-list li:before {
	top: 15px;
	width: 44px;
	height: 30px;
}

.recommend-single .lineup-recommend-list h3 {
	width: 30%;
}

.lineup-price {
	margin-top: 70px;
}

.fee-list,
.fee-include-list {
	gap: 20px;
}

.fee-list > dl,
.fee-include-list > li {
	width: calc((100% - 40px) / 3);
	margin: 0;
}

.fee-list > dl dt,
.fee-list > dl dd {
	font-size: 3.2rem;
	text-align: center;
	width: 100%;
	margin: 0;
}

.fee-list > dl dt {
	background-color: #00a5c1;
	color: #fff;
}

.fee-list > dl dd {
	background-color: #fff;
}

.fee-list > dl dt .font-s,
.fee-list > dl dd .font-s {
	font-size: 2.4rem;
}

.lineup-price-include {
	margin-top: 70px;
}

.fee-include-list > li {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.9rem;
	font-weight: 700;
	background-color: #fff;
	text-align: center;
	padding: 10px;
	letter-spacing: 0.03em;

}

.catalogue-bnr {
	padding: 80px 0 0;
}

@media screen and (max-width: 1400px) {


	.lineup-list > li .txt-box {
		width: calc(50% + 30px);
	}

	.lineup-list > li .img-box {
		width: 50%;
	}
}

@media screen and (max-width: 1100px) {
	.lineup-list > li {
		padding-left: 30px;
	}

	.lineup-list > li:nth-child(even) {
		padding-right: 30px;
	}
}

@media screen and (max-width: 960px) {
	.lineup-recommend h4 {
		width: 120px;
		font-size: 2rem;
	}

	.lineup-recommend .lineup-recommend-list {
		width: calc(100% - 110px);
	}

	.recommend-single .lineup-recommend-list {
		width: 60%;
	}

	.recommend-single .lineup-recommend-list li {
		font-size: 2.0rem;
		padding: 7px 0 7px 38px;
		line-height: 1.75;
	}

	.recommend-single .lineup-recommend-list li:before {
		top: 8px;
		width: 33px;
		height: 20px;
	}

	.fee-list > dl dt,
	.fee-list > dl dd {
		font-size: 3.0rem;
	}

	.fee-list > dl dt .font-s,
	.fee-list > dl dd .font-s {
		font-size: 2.2rem;
	}

}

@media screen and (max-width: 767px) {
	.sec-lineup .bg-black {
		padding: 80px 0;
	}

	.sec-lineup .content-inner {
		margin: 0 auto;
	}

	.lineup-list > li,
	.lineup-list > li:nth-child(even) {
		width: 100%;
		padding: 0 20px;
		margin: 80px auto 0;
	}

	.lineup-list > li .flex-between {
		flex-direction: column;
	}

	.lineup-list > li:nth-child(even) .ttl-box {
		padding-left: 0;
	}

	.lineup-list > li .txt-box,
	.lineup-list > li:nth-child(even) .txt-box {
		width: 100%;
		order: 1;
		margin: 0 auto;
	}

	.lineup-list > li h3,
	.lineup-list > li:nth-child(even) h3 {
		text-align: center;
	}

	.lineup-list > li h3 img {
		max-height: 28px;
	}

	.lineup-list > li .sub-ttl {
		margin-top: 20px;
	}

	.lineup-list .sub-ttl,
	.lineup-list .sub-ttl p,
	.lineup-list > li:nth-child(even) .sub-ttl,
	.lineup-list > li:nth-child(even) .sub-ttl p {
		font-size: 2.4rem;
		text-align: center;
		padding: 0;
	}

	.lineup-list > li .img-box,
	.lineup-list > li:nth-child(even) .img-box {
		width: 100%;
		order: 2;
		margin: 30px 0 0;
	}

	.lineup-recommend {
		padding: 30px 20px;
		margin: -20px auto 0;
		position: relative;
		width: calc(100% - 24px);
	}

	.lineup-recommend .lineup-recommend-list {
		width: auto;
		margin: 10px 0 0;
	}

	.lineup-list > li .btn-box,
	.lineup-list > li:nth-child(even) .btn-box {
		text-align: center;
	}

	/* ラインナップ詳細ページ */

	.recommend-single {
		padding: 0;
		margin-top: 40px;
	}

	.recommend-single .flex-between {
		flex-direction: column;
	}

	.recommend-single .flex-between img {
		max-height: 80px;
	}

	.lineup-price,
	.lineup-price-include {
		margin-top: 40px;
	}

	.fee-list,
	.fee-include-list {
		flex-direction: column;
	}

	.fee-list > dl,
	.fee-include-list > li {
		width: 100%;
	}

	.lineup-header h2 img {
		max-height: 28px;
	}

	.lineup-subttl,
	.lineup-subttl p {
		font-size: 2.4rem;
	}

	.catalogue-bnr {
		padding: 40px 0 0;
	}
}


/* ============================
	お知らせ
============================ */

.news-section {
	padding: 0;
}

.post-nav {
	margin: 0 0 70px;
}

.post-nav > ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.post-nav > ul > li > a {
	display: block;
	padding: 5px 10px;
	border: 1px solid #000;
	font-size: 1.8rem;
}

.post-nav > ul > li.active > a {
	background-color: #000;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.post-nav {
		margin: 0 0 40px;
	}
	.post-nav > ul {
		gap: 10px;
	}
}

/* ============================
	contact page
============================ */
#contact #hale-concept .section-inner {
	padding-top: 90px;
}

@media screen and (max-width: 767px) {
	#contact #hale-concept .section-inner {
		padding-top: 60px;
	}
}

/* ============================
	simulation
============================ */
.simulation-header .simulation-title {
	margin-top: 22px;
}

#simulation #contact-sec,
#simulation #footer {
	display: none;
}

/* ============================
	fixed footer
============================ */
.f-fixed {
	display: none;
}

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

	#contact .f-fixed,
	.single-modelhouse .f-fixed,
	.single-event .f-fixed {
		display: none;
	}

	.f-fixed {
		background-color: #fff;
		bottom: 0;
		display: inline-block;
		left: 0;
		padding: 0;
		position: fixed;
		width: 100%;
		z-index: 9999;
	}

	.f-fixed {
		visibility: hidden;
		opacity: 0;
		transition: 1s;
	}

	.f-fixed.visible {
		visibility: visible;
		opacity: 1;
	}

	.f-fixed .f-fixed-list .f-fixed-list-item {
		align-items: center;
		display: flex;
		justify-content: center;
		width: 50%;
		background-color: #003461;
		color: #fff;
	}

	.f-fixed .f-fixed-list .f-fixed-list-item.link-consultation {
		align-items: flex-start;
	}

	.f-fixed .f-fixed-list .f-fixed-list-item.link-consultation a {
		justify-content: flex-start;
		position: relative;
	}

	.f-fixed .f-fixed-list .f-fixed-list-item.link-consultation a img {
		flex-basis: 100%;
		height: auto;
		object-fit: cover;
		padding-bottom: 0;
		padding-top: 0;
		width: 100%;
	}

	.f-fixed .f-fixed-list .f-fixed-list-item.link-consultation a span {
		background-color: #9f232e;
		bottom: 13px;
		color: #fff;
		display: block;
		left: 0;
		line-height: 1.4;
		position: absolute;
		text-align: center;
		width: 100%;
		z-index: 1;
	}

	.f-fixed .f-fixed-list .f-fixed-list-item + .f-fixed-list-item {
		border-left: 1px solid #fff;
	}

	.f-fixed .f-fixed-list .f-fixed-list-item a {
		background-image: none !important;
		align-items: center;
		display: flex;
		flex-direction: column;
		height: 100%;
		justify-content: center;
		padding-top: 14px;
		padding-bottom: 12px;
		text-decoration: none;
		width: 100%;
	}

	.f-fixed .f-fixed-list .f-fixed-list-item a span {
		align-items: center;
		display: flex;
		flex-basis: 30%;
		font-size: 1.8rem;
		letter-spacing: 0;
	}

	.f-fixed .f-fixed-list .f-fixed-list-item a img {
		flex-basis: 55%;
		height: auto;
		width: 9vw;
	}

	.f-fixed-list-item {
		width: 25%;
		text-align: center;
	}

	.f-fixed-list-item + .f-fixed-list-item {
		border-left: 1px solid #fff;
	}

	.f-fixed-list-item a {
		display: inline-block;
		padding-top: 28px;
		font-size: 1.2rem;
		font-weight: 700;
	}

	.f-fixed-list-item.catalog a {
		background: url(./assets/images/svg/icon_catalog.svg) top center / 24px no-repeat;
	}

	.f-fixed-list-item.consult a {
		background: url(./assets/images/svg/icon_person.svg) top center / 22px no-repeat;
	}

	.f-fixed-list-item.event a {
		background: url(./assets/images/svg/icon_event.svg) top center / 24px no-repeat;
	}

	.f-fixed-list-item.tel a {
		background: url(./assets/images/svg/icon_tel.svg) top center / 24px no-repeat;
	}
}

/* 来店予約調整 */
#reservation .section-inner {
	padding-bottom: 188px;
}

@media screen and (max-width: 960px) {
	#reservation .section-inner {
		padding-bottom: 126px;
	}
}

/**
Common Slider
*/
.common-slider-container {
	margin-top: 30px;
	height: auto!important;
}

.swiper-wrapper {
	height: auto!important;
}

.common-slider-item .img-area {
  aspect-ratio: 3 / 2;
}

.common-slider-item img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.common-slider-container .swiper-slide .img-area img {
	object-fit: contain;
	width: 100% !important;
	height: 100% !important;
}

.common-slider-container .swiper-slide .text-area {
	width: 100%;
	color: #fff;
	font-size: 1.6rem;
	margin-top: 40px;
	line-height: 1.75;
}

.common-slider-container .swiper-button-prev,
.common-slider-container .swiper-button-next {
	width: 60px;
	height: 60px;
	background-image: none;
	border: 1px solid #fff;
	border-radius: 50%;
	top: calc(50% - 60px);
}

.common-slider-container .swiper-button-prev {
	left: 0;
}

.common-slider-container .swiper-button-next {
	right: 0;
}

.common-slider-container .swiper-button-prev::before,
.common-slider-container .swiper-button-next::before {
	content: "";
	display: inline-block;
	position: absolute;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	width: 15px;
	height: 15px;
	transform: rotate(225deg);
	position: absolute;
	top: 21px;
}

.common-slider-container .swiper-button-prev::before {
	left: 26px;
}

.common-slider-container .swiper-button-next::before {
	transform: rotate(45deg);
	right: 26px;
}

.common-thumbs-container {
	margin-top: 10px;
}

.common-thumbs-container .swiper-slide.swiper-slide-thumb-active {
	outline: 4px solid rgba(0, 0, 0, 0.3);
	outline-offset: -4px;
}

.common-thumbs-container .swiper-slide {
	text-align: center;
}

.common-thumbs-container .swiper-slide img {
	width: 100%;
	height: auto !important;
	aspect-ratio: 1 / 1;
}

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

	.common-slider-container .swiper-slide .img-area {
		height: 100% !important;
	}

	.common-slider-container .swiper-slide .img-area img {
		height: 260px !important;
		height: 100% !important;
	}

	.common-slider-container .swiper-slide .text-area {
		font-size: 1.6rem;
		height: auto;
		min-height: 20px;
		margin-top: 20px;
	}

	.common-slider-container .swiper-button-prev,
	.common-slider-container .swiper-button-next {
		width: 32px;
		height: 32px;
		background-image: none;
		border: 1px solid #fff;
		border-radius: 50%;
		top: calc(50% - 18px);
	}

	.common-slider-container .swiper-button-next::before {
		right: 13px;
	}

	.common-slider-container .swiper-button-prev::before {
		left: 13px;
	}

	.common-slider-container .swiper-button-prev::before,
	.common-slider-container .swiper-button-next::before {
		width: 10px;
		height: 10px;
		top: 10px;
	}
}

.single .entry-content iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 560 / 315;
}

@media screen and (min-width: 768px) {
	#footer .content-row {
		display: flex;
		justify-content: space-between;
		align-items: start;
	}
	#footer .right-col {
		width: 200px;
	}
	#footer .left-col {
		width: calc(100% - 200px);
	}
}
#footer .right-col {
	overflow: hidden;
	order: 2;
}
#footer .left-col {
	overflow: hidden;
	order: 1;
}
#footer .f-sns-box {
	margin-top: 20px;
	padding-right: 20px;
	margin-bottom: 40px;
}
#footer .sns-list li + li {
	margin-left: 10px;
}
#footer .sns-list li a img {
	width: 50px;
	height: 50px;
}
.f-nav .sub-menu,
.f-nav .menu-item + .menu-item {
	margin-top: 10px;
}
#footer .f-nav .sub-menu .menu-item.f-smaller {
	font-size: 1.4rem;
}
#footer .f-nav .sub-menu .menu-item.is-disabled a:hover {
	cursor: default;
	opacity: 1;
}
#footer .info-area {
	margin-top: 40px;
}

@media screen and (max-width: 767px) {
	#footer .f-sns-box {
		padding-right: 0;
		margin: 40px 0 0;
	}
	#footer .sns-list li + li {
		margin-left: 8px;
	}
	#footer .info-area .company-info .txt .tel-num {
		font-size: 3.8rem;
	}

	#footer .sns-list li a img {
		width: 36px;
		height: 36px;
	}
}

/* modelhouse-list */
.modelhouse-none {
	text-align: center;
}
.modelhouse-archive-list {
	margin-top: 80px;
}
.modelhouse-archive-list .modelhouse-archive-item {
	width: 100%;
	background-color: #f3f3f3;
	padding: 80px 0;
}
.modelhouse-archive-list .modelhouse-archive-item > a {
	display: block;
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: 0 auto;
}
.modelhouse-archive-list .modelhouse-archive-item > a > .inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.modelhouse-archive-list .modelhouse-archive-item:nth-child(even) {
	background-color: #ffffff;
}

.modelhouse-archive-list .modelhouse-archive-item .img-box {
	width: 48%;
	aspect-ratio: 1 / 1;
}

.modelhouse-archive-list .modelhouse-archive-item .img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.modelhouse-archive-list .modelhouse-archive-item .txt-box {
	width: 48%;
}
.modelhouse-archive-list .modelhouse-archive-item .txt-box .title {
	font-size: 1.7rem;
	font-weight: 400;
	line-height: 1.75;
	margin-top: 1em;
	margin-bottom: 20px;
}
.modelhouse-archive-list .modelhouse-archive-item .modelhouse-info dt img {
	padding: 0 0 11px;
}
@media screen and (max-width: 767px) {
	.modelhouse-archive-list .modelhouse-archive-item .modelhouse-info dt img {
		padding-bottom: 6px;
	}
}
.modelhouse-archive-list .modelhouse-archive-item .place {
	position: relative;
	font-size: 3.6rem;
	font-weight: 700;
	padding-left: 40px;
}
.modelhouse-archive-list .modelhouse-archive-item .place::before {
	content: "";
	background: url(assets/images/icon/icon_pin-blue.svg) center / contain no-repeat;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 32px;
	height: 44px;
}
.modelhouse-info {
	display: flex;
	margin: 0;
}

.modelhouse-info dt {
	width: 14px;
	margin-right: 10px;
	flex-shrink: 0;
}
.modelhouse-info dd {
	font-size: 1.6rem;
	margin: 0;
	text-align: left;
	line-height: 1.5;
}
.modelhouse-archive-list .modelhouse-archive-item .btn-box {
	text-align: left;
}

.modelhouse-archive-list .modelhouse-archive-item .txt-box .button {
	position: relative;
	display: inline-block;
	border: none;
	color: #fff;
	border: 1px solid;
	background-color: #969696;
	border-color: #969696;
	border-radius: 100px;
	font-size: 2.0rem;
	line-height: 1.4;
	font-weight: 700;
	max-width: 360px;
	width: 100%;
	text-align: left;
	padding: 20px 30px;
	transition: all .3s;
}

.modelhouse-archive-list .modelhouse-archive-item .txt-box .button::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 25px;
	height: 10px;
	background: url(assets/images/icon/icon_arrow-wh.svg) center / contain no-repeat;
	transform: translateY(-50%);
	transition: all .3s;
}

.modelhouse-archive-list .modelhouse-archive-item > a:hover .button {
	color: #969696;
	background-color: #fff;
}

.modelhouse-archive-list .modelhouse-archive-item > a:hover	.button:before {
	background: url(assets/images/icon/icon_arrow-gray.svg) center / contain no-repeat;
}
.modelhouse-benefit-top {
	margin-top: 20px;
	padding: 0 0 50px;
	border-bottom: 1px solid;
}

.modelhouse-benefit-bottom {
	padding: 50px 0 0;
}

.modelhouse-benefit .img-box {
	width: 33%;
}

.modelhouse-benefit .txt-box {
	width: 62%;
}

.modelhouse-benefit .txt-box h3 {
	font-size: 3.2rem;
	line-height: 1.75;
}

.modelhouse-benefit .txt-box p {
	font-size: 1.6rem;
	margin-top: 20px;
}

@media screen and (max-width: 1000px) {
	.modelhouse-archive-list .modelhouse-archive-item .place {
		font-size: 3.6rem;
	}
}
@media screen and (max-width: 767px) {
	.modelhouse-benefit-top {
		margin-top: 20px;
		padding: 0 0 30px;
		border-bottom: 1px solid;
	}
	.modelhouse-benefit-bottom {
		padding: 36px 0 0;
	}
	.modelhouse-info dt {
		width: 13px;
		line-height: 1.75;
	}
	.modelhouse-benefit .flex-between {
		flex-direction: column;
	}
	.modelhouse-benefit .img-box {
		width: 100%;
		order: 1;
	}
	.modelhouse-benefit .txt-box {
		width: 100%;
		order: 2;
		margin-top: 30px;

	}
	.modelhouse-archive-list {
		margin-top: 40px;
	}
	.modelhouse-archive-list .modelhouse-archive-item > a > .inner {
		flex-direction: column;
	}

	.modelhouse-archive-list .modelhouse-archive-item .img-box {
		width: 100%;
	}
	.modelhouse-archive-list .modelhouse-archive-item .txt-box {
		width: 100%;
		margin-top: 20px;
	}

	.modelhouse-benefit-top {
		margin-top: 20px;
		padding: 0 0 30px;
		border-bottom: 1px solid;
	}
	.modelhouse-benefit-bottom {
		padding: 36px 0 0;
	}
	.modelhouse-benefit .txt-box {
		width: 100%;
		order: 2;
		margin-top: 30px;
	}
	.modelhouse-benefit .txt-box h3 {
		font-size: 2.3rem;
	}

	.modelhouse-benefit .txt-box p {
		font-size: 1.6rem;
	}

	.modelhouse-archive-list .modelhouse-archive-item {
		padding: 40px 0;
	}

	.modelhouse-archive-list .modelhouse-archive-item .place {
		font-size: 2.4rem;
		padding-left: 30px;
	}

	.modelhouse-archive-list .modelhouse-archive-item .place::before {
		width: 20px;
		height: 35px;
	}

	.modelhouse-archive-list .modelhouse-archive-item .btn-box {
		text-align: center;
	}
}

#home-modelhouse .content-width .inner {
	max-width: 1000px;
	margin: 0 auto;
}
#home-modelhouse .read_txt {
	font-size: 2.0rem;
	margin-top: 35px;
}
.transition-link {
	display: flex;
	justify-content: space-between;
	max-width: 560px;
	margin: 0 auto;
	padding: 60px 0 0;
	gap: 30px;
}
.transition-btn {
	width: 28%;
	text-align: center;
}

.transition-btn.archive {
	width: 36%;
}

.transition-btn.prev > a,
.transition-btn.next > a {
	border: 1px solid #000;
	background-color: #fff;
	color: #000;
}

.transition-btn.prev > a {
	text-align: right;
}

.transition-btn.prev > a:before,
.transition-btn.next > a:before {
	background: url(assets/images/icon/icon_arrow.webp) center / contain no-repeat;
}

.transition-btn.next > a:before {
	right: 30px;
}

.transition-btn.prev > a:before {
	right: auto;
	left: 30px;
	transform: translateY(-50%) rotate(180deg);
}

.transition-btn.archive > a {
	text-align: center;
}

.transition-btn.archive > a:before {
	content: none;
}

.transition-btn.archive > a:hover {
	background-color: #000;
	color: #fff;
	opacity: 0.8;
}

@media screen and (max-width: 767px) {
	#home-modelhouse .content-width .inner {
		padding: 0;
	}
	#home-modelhouse .read_txt {
		font-size: 1.8rem;
		margin-top: 20px;
	}
	#home-modelhouse .img-sec .title {
		margin-bottom: 0;
	}
	.transition-link {
		flex-direction: column;
		gap: 10px;
		padding: 30px 0 0;
	}
	.transition-btn,
	.transition-btn.archive {
		width: 100%;
		margin: 15px auto 0;
		max-width: 160px;
	}

}
