@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Noto+Serif+JP:wght@400;500;600;700;900&display=swap');
/*
Theme Name: DREAM AT HOME
Theme URI: null
Description: Description
Author: 81bridge - SGX
Version: 1.0
*/

.aligncenter {
	display: block;
	margin: 0 auto;
}
.alignright {
	float: right;
}
.alignleft {
	float: left;
}
img[class*="wp-image-"],
img[class*="attachment-"] {
	height: auto;
	max-width: 100%;
}
.wp-block-image figure,
.wp-block-image figcaption {
	display: block;
}
a.nolink,
a.nolink:hover {
	opacity: 1;
	cursor: default;
	pointer-events: none;
}
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
}
html {
	font-size: 62.5%;
}
@font-face {
    font-family: 'A-OTF-MidashiGoPr5-MB31';
    font-style: normal;
	font-weight: 100;
    src: url('fonts/A-OTF-MidashiGoPr5-MB31.ttf') format('truetype'), url('fonts/A-OTF-MidashiGoPr5-MB31.woff') format('woff');
}
body, table, input, textarea, select, option {
	font-family: 'A-OTF-MidashiGoPr5-MB31';
}
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
a,
a:link {
	color: #231815;
	text-decoration: none;
}
a:visited {
	color: #231815;
}
a:hover {
	color: #231815;
}
a:active {
	color: #231815;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	color: #231815;
	font-size: 1.4rem;
	line-height: 1.64;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FAFAF8;
	--font-noto-sans-jp: "Noto Sans JP", sans-serif;
	--font-noto-serif-jp: "Noto Serif JP", serif;
	--ease: all 0.3s ease;
	--main-brown: #61553e;
	--main-gray: #b9b9b9;
}
body.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
}
#container {
	text-align: left;
	overflow: hidden;
}
#main {
	display: block;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
h2, h3, h4, h5, h6, p {
	font-weight: 400;
	font-feature-settings: "palt";
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: inherit;
		font-size: 1.2rem;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
}
@media all and (max-width: 374px) {
	html {
		font-size: 52%;
	}
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	margin-bottom: 26px;
	width: 100%;
}
#gHeader .hInner {
	margin: 0 auto;
	padding: 59px 12px 59px 64px;
	position: relative;
	display: flex;
	justify-content: space-between;
	box-sizing: border-box;
	z-index: 1001;
}
#gHeader .menu {
	margin-top: 5px;
	width: 29px;
	right: 70px;
	top: 60px;
	cursor: pointer;
	position: fixed;
}
#gHeader .menu:hover {
	opacity: 0.6;
}
#gHeader .menu .lineBox {
	margin-bottom: 24px;
	width: 100%;
}
#gHeader .menu .lineBox .line {
	width: 100%;
	height: 1px;
	background-color: #000;
	position: absolute;
	left: 0;
	top: 0;
	transition: all .3s cubic-bezier(0.33, 1, 0.68, 1);
}
#gHeader .menu .lineBox .line:nth-child(2) {
	margin-top: 13px;
}
#gHeader .menu.on .lineBox .line {
	margin-top: 6px;
	transform: rotate(45deg);
}
#gHeader .menu.on .lineBox .line:nth-child(2) {
	margin-top: 6px;
	transform: rotate(-45deg);
}
#gHeader .menu .close {
	display: none;
    margin-left: -2px;
}
#gHeader .menu.on .close {
	display: block;
}
#gHeader .menu.on .open {
	display: none;
}
#gHeader .menu p {
	margin-left: 1px;
	font-size: 1.2rem;
	transform: scale(0.667);
	transform-origin: left top;
	letter-spacing: 0.16em;
}
body.fixed #gHeader {
	position: fixed !important;
	left: 0 !important;
	top: 0 !important;
	width: 100% !important;
	height: 180px !important;
	z-index: 1001 !important;
}
.menuBox {
	opacity: 0;
	visibility: hidden;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: url(img/common/menu_bg01.png) no-repeat right top / 685px,
	url(img/common/menu_bg02.png) no-repeat left bottom / 412px;
	background-color: #fafaf8;
	transition: all .3s cubic-bezier(0.33, 1, 0.68, 1);
	z-index: 1000;
	overflow-y: scroll;
}
.menuBox.on {
	opacity: 1;
	visibility: visible;
}
.menuBox .logo a {
	display: block;
}
.menuBox .topBox {
	margin: 0 auto 118px;
	max-width: 1240px;
	display: flex;
	justify-content: space-between;
}
.menuBox .content {
	margin: 0 auto 0;
	max-width: 746px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.menuBox .hNav {
	margin: 52px 0 22px;
	display: flex;
	flex-wrap: wrap;
	gap: 0 40px;
}
.menuBox .hNav li a {
	margin: 0 0 22px 0;
	display: block;
	color: #61553E;
	font-size: 2.095rem;
	white-space: nowrap;
}
.menuBox .hNav li a .leftIndent
.menuBox .hNav li a .rightIndent {
	display: inline-block;
}
.menuBox .hNav li a .leftIndent {
	margin-left: -0.5em;
}
.menuBox .hNav li a .rightIndent {
	margin-right: -0.5em;
}
.menuBox .hNav li .last {
	margin-right: 0;
}
.menuBox .navUl {
	margin: 0 -4px 22px -14px;
	padding: 31px 0 36px 16px;
	display: flex;
	flex-wrap: wrap;
	background: url("img/common/line03.png") repeat-x left top / auto 1px,url("img/common/line03.png") repeat-x left bottom/ auto 1px;
}
.menuBox .navUl li a {
	margin-right: 45px;
	display: block;
	color: #61553E;
	font-size: 1.2rem;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
}
.menuBox .navUl li a.last {
	margin-right: 0;
}
.menuBox .contact p {
	margin-bottom: 14px;
	color: #61553E;
	font-size: 1.2rem;
	letter-spacing: 0.16em;
}
.menuBox .contact .InnerBox {
	display: flex;
	flex-wrap: wrap;
	color: #61553E;
}
.menuBox .contact .telBox {
	width: 384px;
}
.menuBox .contact .telBox img {
	margin: 12px 10px 0 -2px;
	width: 38px;
}
.menuBox .contact .telBox .tel a {
	color: #61553E;
	display: inline-block;
	font-size: 3.8rem;
	letter-spacing: 0.12em;
}
.menuBox .contact .telBox span {
	font-size: 1.4rem;
	letter-spacing: 0.09em;
	display: inline-block;
	line-height: 1;
	font-feature-settings: "palt";
}
.menuBox .contact .line a {
	margin-top: 2px;
	padding: 18px 10px 18px 73px;
	width: 250px;
	display: block;
	color: #FFF;
	font-size: 1.2rem;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
	background: url("img/common/line_bg.png") no-repeat left 41px center / 20px;
	background-color: #76633C;
	box-sizing: border-box;
}
@media all and (min-width: 897px) and (max-height: 640px) {
	.menuBox {
		height: 100%;
	}
	.menuBox .content {
		margin: 0 auto;
		padding: 123px 0 30px;
		height: 547px;
		justify-content: flex-start;
		box-sizing: border-box;
	}
}
@media all and (max-width: 374px) {
	.menuBox .contact .line a {
		width: 220px;
		padding-left: 66px;
		background-position-x: 37px;
	}
}
.menuBox .contact .ins a {
	margin: 16px 0 0 40px;
	width: 26px;
	display: block;
}
@media all and (min-width: 897px) {
	.menuBox .hNav li a:hover,
	.menuBox .navUl li a:hover,
	#gHeader .menu:hover {
		opacity: 0.6
	}
	.menuBox .contact .line a:hover {
		opacity: 0.7;
	}
	.menuBox .contact .ins a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	body.fixed #gHeader {
		height: 79px !important;
	}
	#gHeader .logo {
		margin-top: 4px;
		width: 116px;
	}
	#gHeader .hInner {
		padding: 12px 16px 23px 14px;
	}
	#gHeader .menu {
		width: 26px;
		right: 15px;
		top: 12px;
	}
	#gHeader .menu .lineBox {
		margin-bottom: 20px;
	}
	#gHeader .menu p {
		margin-left: 0;
		transform: none;
		font-size: 0.715rem;
	}
	#gHeader .menu .lineBox .line:nth-child(2) {
		margin-top: 11px;
	}
	.menuBox {
		padding-top: 0;
		background-image: url(img/common/sp_menu_bg01.png),
		url(img/common/sp_menu_bg02.png);
		background-size: 314px auto, 253px auto;
	}
	.menuBox .logo a {
		width: 116px;
	}
	.menuBox .content {
		padding: 82px 30px 30px;
		margin: 0;
		max-width: inherit;
		height: auto;
		display: block;
	}
	.menuBox .hNav li a {
		margin: 0 0 16px 0;
		font-size: 2rem;
	}
	.menuBox .hNav {
		margin: 0 0 20px;
		display: block;
	}
	.menuBox .navUl {
		margin: 0 -13px 22px -9px;
		padding: 23px 0 13px 10px;
		gap: 0 30px;
	}
	.menuBox .navUl li a {
		margin: 0 0 8px 0;
		letter-spacing: 0.1em;
	}
	.menuBox .contact .ins {
		margin: 16px 0 0 auto;
	}
	.menuBox .contact .ins a {
		margin: 0;
	}
	.menuBox .contact p {
		font-size: 1rem;
		letter-spacing: 0.05em;
	}
	.menuBox .contact .telBox {
		margin-bottom: 18px;
		width: 100%;
	}
	.menuBox .contact .telBox .tel a {
		font-size: 3.218rem;
	}
	.menuBox .contact p {
		margin-bottom: 6px;
	}
	.menuBox .contact .telBox img {
		width: 32px;
	}
	.menuBox .contact .telBox .tel {
		margin-bottom: 8px;
	}
	.menuBox .contact .telBox span {
		font-size: 1.3rem;
		display: block;
	}
}
@media all and (max-width: 374px) {
	#gHeader .menu .close {
		margin-left: 0;
	}
	#gHeader .menu p {
		text-align: center;
	}
	.menuBox .navUl li a {
		margin-right: 24px;
	}
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
	color: var(--main-brown);
	padding: 111px 0 60px;
}
#gFooter .fInner {
	margin: 0 auto;
	padding: 0 10px;
	max-width: 920px;
}
#gFooter .box01 {
	margin: 0 0 70px 78px;
	align-items: center;
	justify-content: space-between;
}
#gFooter .box01 .fLogo {
	margin: 0 0 16px 14px;
}
#gFooter .box01 .imgList li:not(:last-child) {
	margin-bottom: 8px;
}
#gFooter .box01 .imgList li {
	width: 458px;
}
#gFooter .box02 {
	margin-bottom: 33px;
}
#gFooter .box02 .telBox {
	width: calc(50% - 3.2rem);
}
#gFooter .box02 .insBox {
	margin-top: 3px;
	width: 50%;
}
#gFooter .box02 .insList {
	margin-bottom: 9px;
	display: flex;
	flex-wrap: wrap;
}
#gFooter .box02 .insList li {
	width: 20%;
}
#gFooter .box02 .insList li a {
	display: block;
	width: 100%;
	padding-bottom: 100%;
	background-size: cover;
	background-position: center;
}
#gFooter .box02 .insLink a {
	display: flex;
	align-items: center;
	color: var(--main-brown);
	font-size: 1.131rem;
	letter-spacing: 0.08em;
}
#gFooter .box02 .insLink a .img {
	margin-right: 7px;
}
#gFooter .box02 .telBox .notice {
	margin-bottom: 7px;
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: 0.15em;
	font-family: var(--font-noto-sans-jp);
}
#gFooter .box02 .telBox .tel {
	margin-bottom: 10px;
	display: flex;
	align-items: flex-end;
	font-size: 3.8rem;
	letter-spacing: 0.12em;
	line-height: 1;
}
#gFooter .box02 .telBox .tel a {
	color: var(--main-brown);
}
#gFooter .box02 .telBox .tel .img {
	margin: 0 10px 2px -2px;
	height: 23px;
}
#gFooter .box02 .telBox .time {
	font-size: 1.4rem;
	letter-spacing: 0.09em;
}
#gFooter .box03 {
	align-items: flex-end;
}
#gFooter .box03 .copyright {
	font-size: 0.8rem;
	font-style: normal;
	color: var(--main-gray);
	letter-spacing: 0.08em;
}
#gFooter .box03 .linkBox {
	margin: 4px 5px -3px 0;
	display: flex;
}
#gFooter .box03 .linkList:not(:last-child) {
	margin-right: 43px;
}
#gFooter .box03 .linkList.second {
	margin-right: 41px;
}
#gFooter .box03 .linkList.third {
	margin-right: 33px;
}
#gFooter .box03 .linkList li {
	margin-bottom: 6px;
	box-sizing: border-box;
}
#gFooter .box03 .linkList li:last-child {
	margin-bottom: 0;
}
#gFooter .box03 .linkList a {
	color: var(--main-brown);
	font-size: 1.2rem;
}

@media all and (min-width: 897px) {
	#gFooter .box01 .imgList a:hover,
	#gFooter .insList a:hover {
		opacity: 0.7;
	}
	#gFooter .box03 .linkList a:hover,
	#gFooter .box02 .insLink a:hover {
		opacity: 0.6;
	}

}
@media all and (max-width: 896px) {
	#gFooter {
		padding: 80px 0 13px;
	}
	#gFooter .fInner {
		padding: 0;
		max-width: inherit;
	}
	#gFooter .box01 {
		margin: 0 0 27px;
		display: block;
	}
	#gFooter .box01 .fLogo {
		margin: 0 0 82px;
		text-align: center;
	}
	#gFooter .box01 .fLogo img {
		width: 205px;
	}
	#gFooter .box01 .imgList {
		margin: 0 30px 0 4px;
	}
	#gFooter .box01 .imgList li {
		width: 100%;
	}
	#gFooter .box02 {
		margin-bottom: 38px;
	}
	#gFooter .box02 .telBox {
		display: none;
	}
	#gFooter .box02 .insBox {
		margin: 0;
		display: flex;
		flex-direction: column-reverse;
		width: 100%;
		box-sizing: border-box;
		padding: 0 20px;
	}
	#gFooter .box02 .insList li {
		width: 25%;
	}
	#gFooter .box02 .insList li:nth-child(5) {
		display: none;
	}
	#gFooter .insLink {
		margin-bottom: 10px;
	}
	#gFooter .box03 {
		margin: 0 20px;
	}
	#gFooter .box03 .linkList {
		display: none;
	}
	#gFooter .box01 .imgList img {
		width: 100%;
	}
	#gFooter .box02 .insList li img {
		width: 100%;
	}
}


/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */
.clearfix:after {content: "";display: block;clear: both;}
/* flex */
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.content {
	margin: 0 auto;
	padding: 0 14px;
	max-width: 1214px;
}
.content.sml {
	max-width: 920px;
}
@media all and (max-width: 896px) {
	.content {
		padding: 0 20px;
		max-width: inherit;
	}
}

/* headLine01 */
.headLine01 {
	margin: 0 65px 93px;
}
.animate .headLine01 {
	opacity: 0;
	transition: .7s;
	transition-property: opacity;
}
.animate.isShow .headLine01 {
	opacity: 1;
}
.headLine01 .jp {
	margin-bottom: 4px;
	display: block;
	color: #231815;
	font-size: 4rem;
	letter-spacing: 0.16em;
}
.headLine01 .en {
	color: #b4b4b4;
	font-size: 1.4rem;
	letter-spacing: 0.08em;
	font-weight: normal;
}
.headLine01 .tag {
	min-width: 108px;
	display: inline-block;
	color: #FFF;
	font-size: 1.7rem;
	text-align: center;
	font-weight: normal;
	letter-spacing: 0.12em;
	background-color: #E4782E;
}
@media all and (max-width: 896px) {
	.headLine01 {
		margin-left: 0;
		margin-right: 0;
		padding: 0 20px;
	}
	.headLine01 .jp {
		margin-bottom: 1px;
		font-size: 2.8rem;
		line-height: 1.43;
	}
	.headLine01 .en {
		font-size: 0.9rem;
	}
	.headLine01 .tag {
		min-width: 80px;
		font-size: 1.3rem;
		letter-spacing: 0.1em;
	}
}

.headLine02 {
	margin-bottom: 36px;
	color: #76633C;
	text-align: center;
	font-size: 4rem;
	line-height: 1.45;
	letter-spacing: 0.38em;
}
@media all and (max-width: 896px) {
	.headLine02 {
		font-size: 2.8rem;
		letter-spacing: 0.18rem;
	}
}
.headLine03 {
	margin-bottom: 30px;
	color: #76633C;
	font-size: 3.6rem;
	line-height: 1.61;
	letter-spacing: 0.06em;
}
#concept .headLine03 {
	letter-spacing: 0.03em;
}
@media all and (max-width: 896px) {
	.headLine03 {
		margin-bottom: 18px;
		font-size: 2.7rem;
		line-height: 1.48;
		letter-spacing: 0.22rem;
	}
}
.headLine04 {
	margin-bottom: 32px;
	font-size: 3rem;
	line-height: 1.43;
	letter-spacing: 0.24em;
	text-align: center;
}
@media all and (max-width: 896px) {
	.headLine04 {
		margin-bottom: 20px;
		font-size: 2rem;
		line-height: 1.5;
		letter-spacing: 0.18em;
	}
}
.headLine05 {
	margin-bottom: 0;
	font-size: 2rem;
	line-height: 1.7;
	letter-spacing: 0.28em;
}

/*------------------------------------------------------------
	works
------------------------------------------------------------*/
#works {
	background: url(img/works/bg01.png) no-repeat right top / 287px,
	url(img/works/bg02.png) no-repeat left 692px / 247px,#FAFAF8;
}
.worksTtl {
	margin-bottom: 1px;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.785;
	letter-spacing: 0.22em;
}
.worksTtl .ttl {
	margin-bottom: 10px;
	padding: 14px 0 10px;
	display: block;
	text-align: center;
	border-bottom: 1px solid #000;
	background: url(img/common/line01.png) repeat-x center top / 5px;
}
.worksTtl.btmSml .ttl {
	padding: 12px 0 0;
	background: url(img/common/line02.png) repeat-x center top / 5px;
	border-bottom: none;
}
.worksTtl.btmSml .ttl img {
	width: 94px;
}
#works .imgBox {
	padding: 46px 20px 46px;
	border-bottom: 1px solid #000;
}
#works .worksBox {
	padding-bottom: 2px;
	border-bottom: 3px solid #000;
}
#works .imgBox .comStarIcon {
	margin: 0 auto 30px;
	width: 68px;
	text-align: center;
}
#works .imgBox h3 {
	margin-bottom: 25px;
	padding-bottom: 24px;
	color: #604D28;
	font-size: 2.5rem;
	line-height: 1.36;
	letter-spacing: 0.12em;
	border-bottom: 1px solid #000;
	max-height: 6em;
	overflow: hidden;
}
#works .imgBox p {
	color: #000;
	font-size: 2.7rem;
	line-height: 1.37;
	letter-spacing: 0.1em;
	max-height: 5em;
	overflow: hidden;
}
.backLink {
	margin-top: 42px;
	font-size: 1.6rem;
	text-align: center;
}
.backLink a:hover {
	opacity: 0.6;
}
#works .backTop {
	margin: 77px 0 0;
	text-align: center;
}
#works .backTop .comStarIcon {
	margin-bottom: 17px;
}
#works .backTop a {
	color: #756340;
	font-size: 1.6rem;
	letter-spacing: 0.06em;
	border-bottom: 2px solid #756340;
}
@media all and (min-width: 897px) {
	#works .imgBox a {
		margin: 0 auto;
		max-width: 920px;
		display: flex;
		justify-content: space-between;
	}
	#works .imgBox .photoBox {
		width: 532px;
		aspect-ratio: 532 / 393;
		transition: transform 0.8s cubic-bezier(0.19, 0.08999, 0.2, 1);
		transition-property: transform;
	}
	#works .imgBox a:hover .photoBox {
		transform: scale(1.01);
	}
	#works .imgBox .photoBox img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	#works .imgBox .textBox {
		margin: 0 -9px 0 20px;
		width: 350px;
		flex-shrink: 0;
	}
	#works .imgBox .img {
		position: relative;
		overflow: hidden;
	}
	#works .imgBox .img::after {
		content: '';
		position: absolute;
		top: 0;
		right: -75%;
		width: 50%;
		height: 100%;
		background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.45) 100%);
		animation: none;
		transform: skewX(25deg);
	}
	#works .imgBox a:hover .img::after {
		animation: shine01 0.7s;
	}
	#works .backTop a:hover {
		opacity: 0.6;
	}
}
@keyframes shine01 {
	100% {
		right: 125%;
	}
}
@keyframes shine02 {
	76% {
		right: -75%;
	}
	100% {
		right: 125%;
	}
}

@media all and (max-width: 896px) {
	#works {
		background-position: right -10px,left -15px top 602px;
		background-size: 125px,125px;
	}
	#works .worksBox {
		position: relative;
		border-bottom-width: 2px;
	}
	#works .worksBox::after {
		height: 1px;
		width: 100%;
		position: absolute;
		left: 0;
		bottom: -4px;
		background-color: #000;
		content: "";
	}
	.worksTtl {
		margin-bottom: 50px;
		font-size: 1.3rem;
		line-height: 1.54;
		letter-spacing: 0;
	}
	.worksTtl .ttl {
		margin-bottom: 7px;
		padding: 9px 0 6px;
	}
	.worksTtl.btmSml .ttl {
		padding: 17px 0 0;
		background-size: 3px;
	}
	.worksTtl .ttl img {
		width: 224px;
	}
	#works .imgBox {
		position: relative;
		padding: 90px 15px 80px;
		border: none;
	}
	#works .imgBox .comStarIcon {
		width: 63px;
		position: absolute;
		left: 50%;
		top: 0;
		transform: translateX(-50%);
	}
	#works .imgBox a {
		display: block;
	}
	#works .imgBox:last-of-type a {
		background-size: 3px;
	}
	#works .imgBox .photoBox {
		margin-bottom: 22px;
	}
	#works .imgBox h3 {
		margin-bottom: 19px;
		padding-bottom: 15px;
		font-size: 2.3rem;
		line-height: 1.48;
		letter-spacing: 0.08em;
	}
	#works .imgBox p {
		font-size: 2.2rem;
		line-height: 1.37;
		letter-spacing: 0.1em;
	}
	.backLink {
		margin-top: 18px;
		font-size: 1.8rem;
	}
	.moreLink {
		margin: 25px -10px 0;
		color: #B6B6B6;
		font-size: 0.9rem;
		text-align: right;
	}
	.moreLink .link {
		padding-right: 60px;
		display: inline-block;
		background: url(img/common/icon02.png) no-repeat right center / 51px;
	}
	#works .backTop {
		margin: 75px 0 0;
	}
	#works .backTop .comStarIcon {
		margin-bottom: 11px;
	}
}
/*------------------------------------------------------------
	concept
------------------------------------------------------------*/
#concept {
	background: url(img/concept/bg01.png) no-repeat right top / 255px,
	url(img/concept/bg02.png) no-repeat left 606px / 288px,#FAFAF8;
}
#concept #gHeader {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}
#concept .headLine01 {
	margin-bottom: 0;
	position: absolute;
	top: 207px;
	width: calc(100% - 130px);
	text-align: left;
}
#concept .headLine01 .jp {
	margin-bottom: -2px;
}
#concept .mainVisual {
	margin-bottom: 20px;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
}
#concept .mainImg {
	padding-top: 80px;
}
#concept .mainImg img {
	width: 926px;
}
#concept .mainVisual .imgTtl {
	position: absolute;
	left: 0;
	width: 100%;
	bottom: 20px;
}
@media all and (max-width: 896px) {
	#concept .mainVisual .imgTtl {
		margin: 0 auto 4px;
		width: auto;
		left: 50%;
		bottom: 42px;
		transform: translateX(-50%);
	}
}
#concept .imgTtl {
	text-align: center;
}
#concept .imgTtl img {
	margin: 0 auto;
	display: block;
	height: 53px;
	width: auto;
	max-width: inherit;
}
#concept .imgTtl .img01 {
	height: 67px;
}
#concept .midTxt {
	margin-bottom: 25px;
	color: #76633C;
	font-size: 1.7rem;
	text-align: center;
	letter-spacing: 0.22em;
	line-height: 2.18;
}
#concept .midTxt01 {
	margin-bottom: 60px;
}
#concept .banner {
	margin: 30px 0;
	padding: 23px 0 15px;
	background: #FFF;
}
#concept .banner a {
	margin: 0 auto;
	max-width: 870px;
	background: url(img/common/arrow01.png) no-repeat right center / 9px;
}
#concept .banner a .inner {
	transition: 0.3s;
	transition-property: transform;
}
#concept .banner .text {
	transition: 0.3s;
}
#concept .banner .text small {
	display: block;
	font-size: 1.4rem;
}
#concept .banner .text .line {
	display: inline-block;
	background: url(img/concept/line.png) repeat-x center bottom / auto 3px;
}
#concept .banner .ttl,
#concept .banner .sml {
	display: block;
}
#concept .banner .ttl {
	margin-left: -3px;
	padding: 20px 0 10px 5px;
	color: #76633C;
	font-size: 3.056rem;
	line-height: 1.3;
	letter-spacing: 0.1em;
	background: url(img/concept/ttl_bg.png) no-repeat left bottom / 264px;
}
#concept .banner .ttl .sml {
	margin-bottom: 0;
	color: #231815;
	font-size: 2.1rem;
}
@media all and (min-width: 897px) {
	#concept .banner a {
		display: flex;
	}
	#concept .banner a .inner {
		display: flex;
		align-items: center;
	}
	#concept .banner .img {
		margin-right: 25px;
		text-align: right;
		width: 320px;
	}
	#concept .banner .text {
		flex: 1;
	}
	#concept .banner a:hover .inner {
		transform: scale(1.05);
	}
}
#concept .health {
	padding: 63px 0 37px;
}
#concept .health .imgTtl {
	margin-bottom: 60px;
}
@media all and (max-width: 896px) {
	#concept {
		background-position: right -20px,left calc(100vh + 210px);
		background-size: 115px,134px;
	}
	#concept #gHeader .hInner {
		padding: 15px 23px 25px 14px;
	}
	#concept #gHeader .logo img {
		width: 116px;
	}
	#concept .headLine01 {
		left: 0;
		top: 110px;
		box-sizing: border-box;
	}
	#concept .mainImg {
		/* padding-top: 60px; */
		padding-top: 0;
		margin-top: 60px;
	}
	#concept .mainVisual {
		margin-bottom: 25px;
	}
	#concept .midTxt {
		font-size: 1.5rem;
		line-height: 2.47;
		letter-spacing: 0.22rem;
	}
	#concept .imgTtl img {
		height: 41px;
	}
	#concept .imgTtl .img01 {
		height: 50px;
	}
	#concept .banner {
		margin: 0;
	}
	#concept .banner a {
		padding: 10px 20px 25px;
		display: block;
		text-align: center;
		max-width: inherit;
		background-position: right 19px center;
	}
	#concept .banner .img {
		display: block;
		margin: 0 auto 15px;
		width: auto;
		width: 124px;
	}
	#concept .banner .ttl {
		padding: 15px 0;
		text-align: center;
		background-position: center top;
		letter-spacing: 0;
	}
	#concept .banner .text small {
		font-size: 1.6rem;
		letter-spacing: 0.1em;
	}
	#concept .health {
		padding-bottom: 15px;
	}
	#concept .health .imgTtl {
		margin-bottom: 0;
	}
	#concept .comImgBox p {
		letter-spacing: 0;
	}
	#concept .comImgBox .headLine03 {
		letter-spacing: 0.25em;
	}
}

/* comImgBox */
.comImgBox p {
	line-height: 1.79;
	text-align: justify;
}
.smlBox .headLine03 {
	margin-bottom: 13px;
	line-height: 1.33;
}
@media all and (min-width: 897px) {
	.comImgBox {
		padding: 81px 0 86px;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.comImgBox.whiteBg::before {
		position: absolute;
		top: 0;
		left: 50%;
		width: 5000px;
		height: 100%;
		background: #FFF;
		content: '';
		transform: translateX(-50%);
		z-index: -1;
	}
	.comImgBoxR {
		flex-direction: row-reverse;
	}
	.comImgBox .photoBox {
		width: 50%;
	}
	.comImgBox .textBox {
		width: 45%;
	}
	.smlBox {
		max-width: 856px;
		margin: 0 auto 60px;
		padding: 0;
		align-items: flex-start;
	}
	.smlBox .photoBox {
		margin-right: 45px;
		width: 315px;
	}
	.smlBox .textBox {
		flex: 1;
	}
}

@media all and (max-width: 896px) {
	.comImgBox {
		margin: 0 -20px;
		padding: 34px 30px 44px;
	}
	.comImgBox.whiteBg {
		background: #FFF;
	}
	.comImgBox .photoBox {
		margin-bottom: 30px;
	}
	.comImgBox .photoBox img {
		width: 100%;
	}
	.comImgBox p {
		font-size: 1.3rem;
		line-height: 1.77;
		letter-spacing: -0.07em;
	}
}

/*------------------------------------------------------------
	event
------------------------------------------------------------*/
#event {
	background: url(img/event/bg01.png) no-repeat right top / 313px,
	url(img/event/bg02.png) no-repeat left 726px / 341px,#FAFAF8;
}
.comEventBox {
	margin: 0 auto 122px;
	max-width: 920px;
	box-sizing: border-box;
	position: relative;
}
.comEventBox.lastItem {
	margin-bottom: 179px;
}
.comEventBox.lastItem::after {
	display: none;
}
.comEventBox a {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
	background-color: #fff;
}
.comEventBox::after {
	width: calc(100% + 294px);
	position: absolute;
	left: -147px;
	bottom: -61px;
	border-bottom: 1px dashed #b9b9b9;
	content: "";
}
.comEventBox h3 {
	margin-bottom: 0;
	width: 100%;
	box-sizing: border-box;
	padding: 16px 42px 5px 42px;
	color: #fff;
	font-size: 3.6rem;
	letter-spacing: 0.1em;
	background-color: #80ae3f;
}
.comEventBox.end h3 {
	background-color: #9b9b9b;
}
.comEventBox h3 span {
	margin-right: 23px;
	padding: 2px;
	width: 128px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #80ae3f;
	font-size: 2.2rem;
	vertical-align: 4px;
	box-sizing: border-box;
	letter-spacing: 0.02em;
	background-color: #fff;
}
.comEventBox.end h3 span {
	color: #9b9b9b;
}
.comEventBox .textBox {
	padding: 8px 10px 25px 44px;
	width: calc(100% - 238px);
	box-sizing: border-box;
}
.comEventBox .textBox .dateTime {
	margin-bottom: 14px;
	padding-bottom: 12px;
	border-bottom: 1px dashed #b9b9b9;
}
.comEventBox .textBox .dateTime .date {
	margin-bottom: -8px;
	font-size: 3.7rem;
	letter-spacing: 0.12em;
	display: block;
}
.comEventBox .textBox .dateTime .date .blue {
	color: #0071a4;
}
.comEventBox .textBox .dateTime .date .red {
	color: #b50000;
}
.comEventBox .textBox .dateTime .time {
	font-size: 2rem;
	letter-spacing: 0.12em;
}
.comEventBox .textBox h4 {
	margin-left: 5px;
	font-size: 2.7rem;
	letter-spacing: 0.02em;
}
.comEventBox .textBox h4.sml {
	font-size: 2.2rem;
}
.comEventBox .textBox h4.sml small {
	margin-bottom: 10px;
}
.comEventBox .textBox h4 small {
	margin-bottom: 2px;
	display: block;
	font-size: 1.6rem;
	letter-spacing: 0.02em;
}
.comEventBox .photoBox {
	width: 223px;
	height: auto;
	position: absolute;
	right: 1px;
	bottom: -9px;
	transform: rotate(5deg);
	transition: all 0.8s cubic-bezier(0.19, 0.08999, 0.2, 1);
	transform-origin: right bottom;
	transition-property: right, bottom, transform;
}
.comEventBox .photoBox img {
	width: 100%;
	left: 0;
	bottom: 0;
}
@media all and (min-width: 897px) {
	.comEventBox a:hover .photoBox {
		transform: scale(0.857);
		right: 15px;
		bottom: 14px;
	}
}
@media all and (max-width: 896px) {
	#event {
		background-position: right 0,left 600px;
		background-size: 110px,188px;
	}
	.comEventBox {
		margin: 0 0 90px;
		padding: 0 10px;
	}
	.comEventBox.lastItem {
		margin-bottom: 0;
	}
	.comEventBox::after {
		bottom: -40px;
		left: 0;
		width: 100%;
	}
	.comEventBox h3 {
		margin-bottom: 30px;
		padding: 18px 10px;
		position: relative;
		font-size: 2.6rem;
		letter-spacing: 0;
		line-height: 1.11;
		text-align: center;
	}
	.comEventBox h3 span {
		width: 83px;
		height: 24px;
		position: absolute;
		left: -15px;
		top: -12.5px;
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	.comEventBox .photoBox {
		height: auto;
		width: 100%;
		position: static;
		margin: 0 70px 15px;
		order: 2;
		transform: none;
	}
	.comEventBox .photoBox img {
		position: static;
	}
	.comEventBox .textBox {
		width: 100%;
		order: 3;
		padding: 8px 10px 25px;
	}
	.comEventBox .textBox .dateTime .date {
		font-size: 1.8rem;
	}
	.comEventBox .textBox .dateTime .time {
		font-size: 1.5rem;
	}
	.comEventBox .textBox h4 {
		font-size: 1.7rem;
		line-height: 1.41;
	}
	.comEventBox .textBox h4.sml {
		font-size: 1.6rem;
	}
	.comEventBox .textBox h4 small {
		font-size: 1.2rem;
		line-height: 1.33;
	}
}

/*------------------------------------------------------------
	company
------------------------------------------------------------*/
#company {
	background: #FAFAF8 url(img/company/bg01.png) no-repeat right top / 314px;
}
#company .headLine01 {
	margin-bottom: 75px;
}
#company .idea {
	padding-bottom: 93px;
	position: relative;
	z-index: 2;
}
#company .headLine05 {
	margin-bottom: 40px;
	text-align: center;
}
#company .idea .headLine02 {
	margin-bottom: 32px;
	color: #61553E;
	line-height: 1.55;
	letter-spacing: 0.23em;
}
#company .idea p {
	margin-bottom: 41px;
	color: #000;
	text-align: center;
	font-size: 1.6rem;
	line-height: 2.0625;
	letter-spacing: 0.22em;
}
#company .idea p:last-child {
	margin-bottom: 0;
}
#company .idea .img {
	margin: 0 auto;
	width: 920px;
	text-align: center;
}
#company .speech {
	padding: 70px 0 93px;
	position: relative;
	background-color: #fff;
}
#company .speech::before {
	position: absolute;
	left: 0;
	top: -499px;
	width: 349px;
	height: 785px;
	content: '';
	background: url(img/company/bg02.png) no-repeat left center / 100%;
}
#company .speech::after {
	position: absolute;
	right: 0;
	bottom: -85px;
	width: 340px;
	height: 491px;
	content: '';
	background: url(img/company/bg03.png) no-repeat right center / 248px,
	url(img/company/bg04.png) no-repeat left bottom 115px / 172px;
}
#company .speech .headLine05 {
	margin-bottom: 75px;
}
#company .speech .imgBox {
	margin: 0 auto;
	padding-left: 3px;
	max-width: 666px;
	display: flex;
}
#company .speech .imgBox .photoBox {
	margin-right: 47px;
	width: 242px;
}
#company .speech .imgBox .textBox {
	margin-top: -15px;
	max-width: 380px;
	flex: 1;
}
#company .speech .imgBox .ttl {
	margin-bottom: 22px;
	font-size: 3.6rem;
	color: var(--main-brown);
	letter-spacing: 0.24em;
}
#company .speech .imgBox p {
	margin-left: 3px;
	font-size: 1.4rem;
	line-height: 1.714;
	text-align: justify;
	letter-spacing: 0.08em;
}
#company .speech .imgBox p + p {
	margin-top: 25px;
}
#company .speech .imgBox p.name {
	margin-top: 33px;
	color: var(--main-brown);
	line-height: 1.5;
}
#company .produce {
	padding: 80px 0 43px;
}
#company .produce .headLine05 {
	margin-bottom: 65px;
}
#company .produce .img {
	margin: 0 auto 80px;
	max-width: 920px;
}
#company .produce .imgList {
	margin: 0 auto;
	max-width: calc(820px + 76px);
	display: flex;
	flex-wrap: wrap;
}
#company .produce .imgList li {
	padding: 0 35px 58px;
	width: 25%;
	box-sizing: border-box;
}
#company .produce .imgList .photoBox {
	margin-bottom: 15px;
	width: 100%;
	position: relative;
	padding-bottom: 100%;
	border-radius: 100%;
	overflow: hidden;
}
#company .produce .imgList .photoBox img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#company .produce .imgList .ttl {
	margin-bottom: 12px;
	padding-bottom: 9px;
	font-size: 2.1rem;
	color: var(--main-brown);
	text-align: center;
	letter-spacing: 0.27em;
	border-bottom: 1px dashed #B8B8B8;
}
#company .produce .imgList .ttl small {
	margin-bottom: 1px;
	display: block;
	color: #000;
	font-size: 1.4rem;
	letter-spacing: 0.12em;
}
#company .produce .imgList p {
	text-align: justify;
	word-break: break-all;
	line-height: 1.571;
	letter-spacing: 0.14em;
	font-family: var(--font-noto-sans-jp);
}
#company .company {
	margin-bottom: -130px;
	padding: 69px 0 109px;
	background-color: #fff;
}
#company .company .headLine05 {
	margin-bottom: 65px;
}
#company .company .textList {
	margin: 0 auto;
	max-width: 919px;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px dashed #B8B8B8;
}
#company .company .textList dt,
#company .company .textList dd {
	padding: 23px 0 26px;
	font-size: 1.5rem;
	line-height: 1.8;
	letter-spacing: 0.08em;
	box-sizing: border-box;
}
#company .company .textList dt {
	color: var(--main-brown);
    margin-right: 32px;
    width: 140px;
	display: inline-flex;
	align-items: center;
}
#company .company .textList dd {
	width: calc(100% - 140px - 32px);
	position: relative;
}
#company .company .textList dd::after {
	width: calc(100% + 140px + 32px);
	height: auto;
	border-bottom: 1px dashed #B8B8B8;
	position: absolute;
	left: calc(-140px - 32px);
	bottom: 0;
	content: "";
}
#company .company .textList .mapLink {
	margin-left: 48px;
	display: inline-block;
	color: #61553F;
	font-size: 1.2rem;
	letter-spacing: 0.08em;
	text-decoration: underline;
}
@media all and (min-width: 897px) {
	#company .company .textList .mapLink:hover {
		text-decoration: none;
	}
}

@media all and (max-width: 896px) {
	#company {
		background-size: 128px;
	}
	#company .idea {
		padding-bottom: 66px;
	}
	#company .headLine05 {
		margin-bottom: 24px;
		font-size: 2.2rem;
		text-align: center;
	}
	#company .headLine01 {
		margin-bottom: 48px;
	}
	#company .idea .headLine02 {
		margin-bottom: 28px;
		font-size: 3.2rem;
		line-height: 1.5328125;
	}
	#company .idea p {
		margin-bottom: 37px;
		font-size: 1.4rem;
		line-height: 2.214;
		letter-spacing: 0.14em;
	}
	#company .idea .img {
		width: auto;
	}
	#company .speech {
		padding: 48px 0 56px;
	}
	#company .speech::before {
		top: -386px;
		width: 200px;
		height: 450px;
	}
	#company .speech::after {
		bottom: -55px;
		width: 145px;
		height: 224px;
		background-size: 112px,101px;
		background-position: right center,left bottom 72px;
	}
	#company .speech .imgBox {
		padding: 0;
		max-width: inherit;
		display: block;
	}
	#company .speech .headLine05 {
		margin-bottom: 24px;
	}
	#company .speech .imgBox .ttl {
		margin-bottom: 19px;
		font-size: 3.1rem;
		text-align: center;
	}
	#company .speech .imgBox .photoBox {
		margin: 0 auto 22px;
		width: 242px;
	}
	#company .speech .imgBox .textBox {
		margin: 0 9px;
		max-width: inherit;
	}
	#company .speech .imgBox p {
		margin-left: 0;
		font-size: 1.3rem;
		line-height: 1.77;
	}
	#company .speech .imgBox p + p {
		margin-top: 23px;
	}
	#company .speech .imgBox p.name {
		margin-top: 27px;
		line-height: 1.6;
	}
	#company .produce {
		padding: 49px 0 27px;
	}
	#company .produce .headLine05 {
		margin-bottom: 51px;
	}
	#company .produce .img {
		margin: 0 -20px 48px;
	}
	#company .produce .img img {
		width: 100%;
	}
	#company .produce .imgList {
		margin: 0 10px;
		justify-content: space-between;
	}
	#company .produce .imgList li {
		padding: 0 0 42px;
		width: calc(50% - 17px);
	}
	#company .produce .imgList .photoBox {
		height: auto;
	}
	#company .produce .imgList .ttl {
		padding-bottom: 7px;
		margin-bottom: 13px;
		font-size: 1.9rem;
	}
	#company .produce .imgList .ttl small {
		margin-bottom: 1px;
		font-size: 1.2rem;
	}
	#company .produce .imgList p {
		line-height: 1.583;
		font-feature-settings: normal;
	}
	#company .company {
		margin-bottom: -84px;
		padding: 48px 10px 65px;
	}
	#company .company .headLine05 {
		margin-bottom: 50px;
	}
	#company .company .textList {
		display: block;
	}
	#company .company .textList dt {
		margin: 0;
		padding: 10px 0 2px;
		width: 100%;
	}
	#company .company .textList dd {
		padding: 10px 0 25px;
		width: 100%;
		line-height: 1.47;
		box-sizing: border-box;
	}
	#company .company .textList dd::after {
		left: 0;
		width: 100%;
	}
	#company .company .textList .mapLink {
		margin: 6px 0 0;
	}
}
@media all and (max-width: 374px) {
	#company .company {
		padding-left: 0;
		padding-right: 0;
	}
	#company .idea .headLine02,
	#company .idea p,
	#company .speech .imgBox .ttl,
	#company .produce .imgList .ttl {
		letter-spacing: 0;
	}
	#company .produce .imgList li {
		width: calc(50% - 10px);
	}
}


/*------------------------------------------------------------
	event_detail
------------------------------------------------------------*/
#event_detail {
	background: url(img/event/detail/bg01.png) no-repeat right top / 627px,
	url(img/event/detail/bg02.png) no-repeat left 565px / 338px,#FAFAF8;
}
@media all and (max-width: 896px) {
	#event_detail {
		background-position: right 0,left 406px;
		background-size: 232px,169px;
	}
	#event_detail .comDetailBox {
		margin-top: -22px;
	}
	#event_detail .comDetailBox .ttl02 {
		margin: 0;
	}
}
/* comDetailBox */
.comDetailBox .headLine01 {
	margin: 0 14px 55px;
}
.comDetailBox .h2Ttl {
	margin: -33px 0 23px;
	border-top: 3px solid #000;
}
.comDetailBox .h2Ttl .txt {
	margin: 2px 0 0;
	padding: 8px 0 10px;
	display: block;
	text-align: center;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}
.comDetailBox .ttl01 {
	margin-bottom: 41px;
	color: #604D28;
	font-size: 2.5rem;
	line-height: 1.3432;
	letter-spacing: 0.12em;
	text-align: center;
}
.eventMainImg {
	margin: 0 auto 26px;
	max-width: 918px;
	height: 400px;
}
.eventMainImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.comDetailBox .ttl02 {
	margin-bottom: 83px;
	color: #000;
	font-size: 2.7rem;
	text-align: center;
	letter-spacing: 0.1em;
}
.comDetailBox .ttl02 .date {
	margin-top: 12px;
	display: block;
	color: #E2782E;
	letter-spacing: 0.02em;
	font-size: 1.6rem;
}
.comStory .comStarIcon {
	margin-bottom: -9px;
    width: 76px;
    height: 81px;
}
.comDetailBox .ttl03 {
	margin-bottom: 32px;
	color: #604D28;
	font-size: 2.5rem;
	line-height: 1.36;
	text-align: center;
	letter-spacing: 0.12em;
}
.comDetailBox .ttl03 .img {
	display: block;
	margin-bottom: 16px;
}
.comDetailBox .ttl03 small {
	margin-bottom: 22px;
	display: block;
	color: #231815;
	font-size: 1.6rem;
	line-height: 1.14625;
	letter-spacing: 0.2em;
}
.comStory p {
	margin: 0 auto;
	max-width: 850px;
	line-height: 1.642;
	letter-spacing: 0.14em;
	text-align: justify;
}
.comStory .imgArea {
	margin: 96px auto 118px;
	padding: 51px 0 57px;
	max-width: 920px;
	position: relative;
	background-color: #fff;
	box-shadow: 4px 4px 12px rgba(4, 0, 0, 0.15);
}
.comStory .imgArea::before,
.comStory .imgArea::after {
	width: 246px;
	height: 135px;
	position: absolute;
    left: -85px;
    top: -38px;
	background: url(img/event/detail/bg_img01.png) no-repeat center / 100%;
	content: "";
}
.comStory .imgArea::after {
	width: 196px;
	height: 162px;
	left: auto;
	top: auto;
    right: -87px;
    bottom: -43px;
	background-image: url(img/event/detail/bg_img02.png);
}
.comStory .imgArea .ttl {
	margin-bottom: 55px;
	color: #C35728;
	font-size: 2.1rem;
	text-align: center;
	line-height: 1.476;
	letter-spacing: 0.06em;
}
.comStory .imgArea .photo + .photo {
	margin-top: 41px;
}
.dreamLookList {
	margin: 118px auto 85px;
	max-width: 920px;
	display: flex;
}
.dreamLookList li {
	padding-top: 6px;
	border-right: 1px solid #231815;
}
.dreamLookList li:nth-child(2n) {
	border-right: none;
}
.dreamLookList .dreamLookNum {
	margin-bottom: 17px;
	padding-bottom: 10px;
	display: flex;
	justify-content: center;
	background: url(img/event/detail/bg_img03.png) no-repeat center bottom / 182px;
}
.dreamLookList .dreamLookNum .dreamLook {
	margin-right: 11px;
}
.dreamLookList .ttl {
	margin-bottom: 11px;
	color: #E66C00;
	font-size: 2.1rem;
	line-height: 1.333;
	text-align: center;
	letter-spacing: 0.06em;
}
.dreamLookList p {
	padding: 0 35px 0;
    text-align: justify;
	letter-spacing: 0.14em;
}
.comVoice {
	padding: 93px 0 59px;
	position: relative;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}
.comVoice .imgBox01 {
	margin: 0 auto;
	padding: 0 0 88px;
	max-width: 920px;
	border-bottom: 1px solid #000;
}
.comVoice .imgBox01 .photoBox {
	margin: 0 auto 25px;
	width: 473px;
}
.comVoice .imgBox01 .photoBox img {
	aspect-ratio: 3 / 2;
	width: 100%;
	object-fit: cover;
}
.comVoice .imgBox01 .ttl {
	margin-bottom: 23px;
	font-size: 2.5rem;
	line-height: 1.32;
	color: #604D28;
	text-align: center;
	letter-spacing: 0.12em;
}
.comVoice .imgBox01 p {
	margin: 0 auto;
	max-width: 369px;
	text-align: justify;
	letter-spacing: 0.14em;
}
.comVoice .imgBox02 {
	margin: 0 auto;
	padding: 50px 0 0;
	max-width: 650px;
	display: flex;
	align-items: center;
}
.comVoice .imgBox02 .photoBox .photo {
	margin-bottom: 0;
	width: 123px;
	height: 123px;
	border-radius: 100%;
	overflow: hidden;
}
.comVoice .imgBox02 .photoBox .photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.comVoice .imgBox02 .photoBox p {
	margin-top: 9px;
	color: #604D28;
	font-size: 1.6rem;
	text-align: center;
	letter-spacing: 0.12em;
}
.comVoice .imgBox02 > p {
	margin: 0 0 14px 45px;
	letter-spacing: 0.14em;
	text-align: justify;
}
@media all and (max-width: 896px) {
	.comDetailBox .headLine01 {
		margin: 0 auto 55px;
		padding: 0;
	}
	.comDetailBox .headLine01 .jp {
		letter-spacing: 0.1em;
	}
	.comDetailBox .worksTtl {
		margin-bottom: 27px;
	}
	.comDetailBox .comStarIcon {
		margin-bottom: -3px;
		width: 62px;
	}
	.comDetailBox .ttl01 {
		margin-bottom: 36px;
		font-size: 2.3rem;
		line-height: 1.48;
	}
	.eventMainImg {
		margin: 0 -20px 15px;
		height: 43vw;
	}
	.comDetailBox .ttl02 {
		margin-bottom: 48px;
		font-size: 2rem;
		line-height: 1.5;
	}
	.comDetailBox .ttl02 .date {
		margin-top: 19px;
		font-size: 1.3rem;
	}
	.comStory .comStarIcon {
		width: 62px;
	}
	.comDetailBox .ttl03 {
		margin-bottom: 27px;
		font-size: 2.3rem;
		line-height: 1.39;
	}
	.comDetailBox .ttl03 small {
		margin-bottom: 32px;
		font-size: 1.5rem;
	}
	.comDetailBox .ttl03 .img {
		margin-bottom: 12px;
	}
	.comDetailBox .ttl03 .img img {
		width: 130px;
	}
	.comStory p {
		margin: 0 10px;
		font-size: 1.4rem;
		line-height: 2;
		letter-spacing: 0.18em;
	}
	.comStory .imgArea {
		margin: 78px auto 88px;
		padding: 42px 0 50px;
	}
	.comStory .imgArea::before {
		width: 148px;
		height: 103px;
		left: -35px;
		top: -41px;
	}
	.comStory .imgArea::after {
		width: 118px;
		right: -50px;
		height: 130px;
	}
	.comStory .imgArea .ttl {
		padding: 0 20px;
		margin-bottom: 20px;
		font-size: 1.9rem;
		line-height: 1.37;
	}
	.comStory .imgArea .photo {
		margin: 0;
	}
	.comStory .imgArea .photo + .photo {
		margin-top: 17px;
	}
	.dreamLookList {
		margin-top: 88px;
		display: block;
	}
	.dreamLookList li {
		margin-bottom: 55px;
		padding: 0 0 53px;
		border-right: none;
		border-bottom: 1px solid #231815;
	}
	.dreamLookList li:last-child {
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: none;
	}
	.dreamLookList .dreamLookNum {
		background-size: 138px;
	}
	.dreamLookList .dreamLookNum .dreamLook img {
		width: 58px;
	}
	.dreamLookList .dreamLookNum .num img {
		width: inherit;
		height: 33px;
	}
	.dreamLookList .ttl {
		margin-bottom: 18px;
		font-size: 1.9rem;
		line-height: 26px;
	}
	.dreamLookList p {
		padding: 0;
		margin: 0 10px;
		line-height: 1.71;
	}
	.comVoice {
		padding: 50px 0 40px;
	}
	.comVoice .imgBox01 {
		padding: 0 10px 47px;
	}
	.comVoice .imgBox01 .photoBox {
		width: 100%;
	}
	.comVoice .imgBox01 .ttl {
		margin-bottom: 17px;
	}
	.comVoice .imgBox01 p {
		font-size: 1.4rem;
		line-height: 1.71;
		max-width: inherit;
	}
	.comVoice .imgBox02 {
		padding: 45px 0 0;
		display: block;
		max-width: inherit;
	}
	.comVoice .imgBox02 .photoBox {
		margin-bottom: 15px;
	}
	.comVoice .imgBox02 .photoBox .photo {
		width: 110px;
		height: 110px;
		margin: 0 auto;
	}
	.comVoice .imgBox02 .photoBox p {
		margin-top: 5px;
		font-size: 1.8rem;
	}
	.comVoice .imgBox02 p {
		margin: 0 10px;
		font-size: 1.4rem;
		line-height: 1.71;
	}
}

.accessBox {
	margin-bottom: 50px;
	padding: 30px 10px 40px;
	background: #FFF;
}
.accessBox .ttlBox {
	margin: 0 auto;
	max-width: 860px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.accessBox .ttlBox .img {
	margin: 5px 20px 0 0;
	flex: 1;
	text-align: center;
}
.accessBox .ttlBox .img img {
	width: 246px;
}
.accessBox .dateTime {
	color: #61553E;
}
.accessBox .dateTime .date {
	margin-bottom: -6px;
	font-size: 3.8rem;
	letter-spacing: 0.12em;
	display: block;
}
.accessBox .dateTime .date .blue {
	color: #0071a4;
}
.accessBox .dateTime .date .red {
	color: #b50000;
}
.accessBox .dateTime .time {
	margin-bottom: 13px;
	display: block;
	font-size: 2rem;
	letter-spacing: 0.12em;
}
.accessBox .dateTime .access {
	margin-bottom: 8px;
	display: inline-block;
	min-width: 216px;
	color: #FFF;
	font-size: 2.69rem;
	line-height: 1.6;
	text-align: center;
	background-color: #61553E;
}
.accessBox .dateTime a {
	color: #61553E;
	font-size: 1.2rem;
	text-decoration: underline;
}
.accessBox .dateTime a:hover {
	text-decoration: none;
}
.accessBox .comImgList02 {
	margin: 40px auto 30px;
}
@media all and (max-width: 896px) {
	.accessBox {
		margin: 60px 0 40px;
		padding: 52px 20px 45px;
	}
	.accessBox .ttlBox {
		margin-bottom: 0;
		display: block;
	}
	.accessBox .ttlBox .img {
		margin: 0 0 25px;
	}
	.accessBox .ttlBox .img img {
		width: 220px;
	}
	.accessBox .dateTime {
		text-align: center;
	}
	.accessBox .dateTime .date {
		margin-bottom: 0;
		font-size: 2.3rem;
	}
	.accessBox .dateTime .time {
		margin-bottom: 35px;
		font-size: 1.4rem;
	}
	.accessBox .dateTime .access {
		min-width: 150px;
		font-size: 1.9rem;
	}
	.accessBox .txtBox {
		margin-top: 15px;
	}
	.accessBox .dateTime a:hover {
		text-decoration: underline;
	}
	.accessBox .comImgList02 {
		margin: 25px auto 10px;
	}
}

#event_detail .content01 {
    max-width: 920px;
}
.heartSec {
    margin-bottom: 45px;
    padding: 7px 60px 37px;
    background: url("img/event/detail/heart_bg04.png") no-repeat center top;
    background-size: cover;
}
.heartSec .topImg {
    margin-bottom: 22px;
    padding-bottom: 10px;
    text-align: center;
    border-bottom: 1px solid #231816;
}
.heartSec .title {
    margin-bottom: 25px;
    font-size: 2rem;
    letter-spacing: 0.16em;
    text-align: center;
}
.heartSec .subBox .lBox {
    width: 50%;
    flex-direction: row-reverse;
}
.heartSec .subBox .rBox {
    width: 46.5%;
}
.heartSec .subBox .lBox .pho {
    width: 38%;
}
.heartSec .subBox .lBox .textBox {
    width: 59%;
}
.heartSec .subBox .lBox .textBox p {
    font-size: 1.4rem;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: 0.1em;
    line-height: 1.6;
}
.heartSec .subBox .rBox .top {
	margin: -9px 0 4px;
    color: #b14d21;
    font-size: 2.35rem;
    letter-spacing: 0.08em;
}
.heartSec .subBox .rBox .top .img {
	margin-left: 7px;
	vertical-align: -11px;
	height: 19px;
	display: inline-block;
}
@media all and (max-width: 896px) {
	.heartSec .subBox .rBox .top .img {
		margin-left: 5px;
		vertical-align: -8px;
	}
}
.heartSec .subBox .rBox .txtImg {
    position: relative;
}
.heartSec .subBox .rBox .phoImg {
    margin: -24px -10px 0 -14px;
}
.heartSec .btmBox .ttl {
    margin-bottom: 18px;
    color: #fff;
    padding-bottom: 2px;
    font-size: 2.27rem;
    text-align: center;
    line-height: 1.3;
    background: #76633b;
    letter-spacing: 0.14em;
}
.heartSec .btmBox .txtList {
    text-align: center;
}
.heartSec .btmBox .txtList li {
    padding: 0 4px;
    display: inline-block;
    font-size: 1.8rem;
    vertical-align: top;
    letter-spacing: 0.1em;
}
.participation {
    margin-bottom: 46px;
}
.participation .topBg img,
.participation .btmBg img {
    display: block;
    width: 100%;
}
.participation .infoPart {
    padding: 4px 62px 7px;
    background: url("img/event/detail/heart_bg02.png") repeat-y center top;
    background-size: 100% auto;
}
.participation h3 {
    margin-bottom: 10px;
    padding-bottom: 14px;
    text-align: center;
    font-size: 2.3rem;
    letter-spacing: 0.2em;
    border-bottom: 1px solid #231816;
}
.participation h3 img {
    display: inline-block;
    vertical-align: middle;
    width: 32px;
    margin: -10px 10px 0 0;
}
.participation .txtUl {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.participation .txtUl li {
    width: 50%;
    font-size: 1.6rem;
    letter-spacing: 0.12em;
}
.participation .txtUl li .color {
    color: #b14d21;
}
#event_detail .btmListUl {
    margin-bottom: 65px;
}
#event_detail .btmListUl li {
    width: 48.5%;
    display: flex;
    justify-content: space-between;
    padding: 18px 10px 10px 20px;
    box-sizing: border-box;
    background: #fff;
}
#event_detail .btmListUl li .title {
    color: #61553e;
    font-size: 2rem;
    letter-spacing: 0.16em;
}
#event_detail .btmListUl li .txt {
    font-size: 1.2rem;
    letter-spacing: 0.04em;
}
#event_detail .btmListUl li .phoImg {
    flex-shrink: 0;
}
#event_detail .btn a {
    width: 458px;
    margin: 0 auto;
    flex-direction: column;
    display: flex;
    height: 96px;
    color: #fff;
    position: relative;
    font-size: 2.4rem;
    align-items: center;
    justify-content: center;
    background: #80ae3f;
    letter-spacing: 0.1em;
}
#event_detail .btn a:before {
    margin-top: -6px;
    position: absolute;
    right: 24px;
    background: url("img/event/detail/heart_icon.png") no-repeat right center;
    background-size: 9px auto;
    width: 9px;
    height: 12px;
    content: "";
}
#event_detail .btn a:hover {
    opacity: 0.7;
}
#event_detail .btn .small {
    margin-bottom: -4px;
    font-size: 1.4rem;
    letter-spacing: 0;
}
@media all and (max-width: 896px) {
    #event_detail .content01 {
        max-width: inherit;
    }
    .heartSec {
        margin-bottom: 50px;
        padding: 17% 24px 27px;
        background: url("img/event/detail/sp_heart_bg04.png") no-repeat center top;
        background-size: cover;
    }
    .heartSec .topImg {
        margin-bottom: -15px;
        padding-bottom: 0;
        border-bottom: none;
    }
    .heartSec .title {
        margin-bottom: 25px;
        letter-spacing: 0.12em;
        line-height: 1.4;
    }
    .heartSec .subBox {
        display: block;
    }
    .heartSec .subBox .lBox {
        width: 100%;
        margin-bottom: 26px;
        flex-direction: row-reverse;
    }
	.heartSec .btmBox .txtList {
		text-align: left;
	}
    .heartSec .subBox .rBox {
        width: 100%;
    }
    .heartSec .subBox .lBox .pho {
        width: 63%;
        margin: 0 auto 25px;
        text-align: center;
    }
    .heartSec .subBox .lBox .textBox {
        width: 100%;
    }
    .heartSec .subBox .lBox .textBox p {
        margin: 0 3px;
        line-height: 1.86;
    }
    .heartSec .subBox .rBox .top {
		margin-bottom: -1px;
        font-size: 1.8rem;
        text-align: center;
    }
    .heartSec .subBox .rBox .txtImg {
        text-align: center;
    }
    .heartSec .subBox .rBox .phoImg {
        margin: -10px -10px 29px -7px;
        text-align: center;
    }
    .heartSec .btmBox .ttl {
        margin-bottom: 15px;
		padding: 2px 0 3px;
        font-size: 2rem;
    }
    .participation {
        margin-bottom: 44px;
    }
    .participation .infoPart {
        padding: 7px 28px 5px;
        background: url("img/event/detail/sp_heart_bg02.png") repeat-y center top;
        background-size: 100% auto;
    }
    .participation h3 {
        margin-bottom: 12px;
        padding-bottom: 15px;
        font-size: 1.8rem;
        line-height: 1.2;
    }
    .participation h3 img {
        display: block;
        width: 21px;
        margin: 0 auto 8px;
    }
    .participation .txtUl {
        display: block;
        margin: 0 -7px 0 0;
    }
    .participation .txtUl li {
        width: 100%;
        padding-bottom: 6px;
        font-size: 1.3rem;
        letter-spacing: 0;
    }
    .participation .txtUl li .color {
        color: #b14d21;
    }
    #event_detail .btmListUl {
        margin-bottom: 45px;
        display: block;
    }
    #event_detail .btmListUl li {
        margin-bottom: 10px;
        width: 100%;
        display: block;
        padding: 32px 35px 26px;
    }
    #event_detail .btmListUl li .title {
        font-size: 2rem;
        text-align: center;
        letter-spacing: 0.16em;
    }
    #event_detail .btmListUl li .txt {
        font-size: 1.3rem;
        line-height: 1.45;
    }
    #event_detail .btmListUl li .phoImg {
        margin-bottom: 2px;
        text-align: center;
    }
    #event_detail .btn a {
        width: 100%;
        height: 92px;
        font-size: 2.2rem;
    }
    #event_detail .btn a:before {
        margin-top: -5px;
        right: 16px;
        background: url("img/event/detail/sp_heart_icon.png") no-repeat right center;
        background-size: 7px auto;
        width: 7px;
        height: 9px;
    }
    #event_detail .btn .small {
        margin-bottom: -7px;
        font-size: 1.3rem;
    }
}
@media all and (max-width: 374px) {
    .heartSec .btmBox .txtList li {
        font-size: 1.5rem;
    }
    .participation h3 {
        font-size: 1.7rem;
    }
    #event_detail .btn a:before {
        right: 10px;
    }
}
/*------------------------------------------------------------
	privacy_policy
------------------------------------------------------------*/
#privacy .content {
	margin: 0 auto;
	max-width: 751px;
}
#privacy .headLine01 {
	margin-bottom: 79px;
}
#privacy #main .notice {
	margin-bottom: 47px;
	padding-bottom: 42px;
	font-weight: 500;
	line-height: 1.857;
	letter-spacing: 0.06em;
	font-family: var(--font-noto-sans-jp);
	border-bottom: 1px dashed #B6B6B6;
}
#privacy dl dt,
#privacy dl dd {
	font-family: var(--font-noto-sans-jp);
	letter-spacing: 0.06em;
	font-feature-settings: "palt";
}
#privacy dl dt {
	margin-bottom: 13px;
	font-weight: 900;
	font-size: 1.8rem;
	line-height: 2;
}
#privacy dl dd {
	font-weight: 500;
	margin-bottom: 45px;
}
#privacy #main dl + .notice {
	margin-top: 65px;
	padding: 23px 0 0;
	border-top: 1px dashed #B6B6B6;
	border-bottom: none;
}
@media all and (max-width: 896px) {
	#privacy .content {
		max-width: inherit;
	}
	#privacy .headLine01 {
		margin-bottom: 40px;
	}
	#privacy .notice {
		margin-bottom: 30px;
		padding-bottom: 30px;
	}
	#privacy dl dt {
		font-size: 1.6rem;
	}
	#privacy dl dd {
		margin-bottom: 30px;
	}
	#privacy dl dd:last-child {
		margin-bottom: 0;
	}
	#privacy dl + .notice {
		margin-top: 50px;
	}
}

/*------------------------------------------------------------
	contact
------------------------------------------------------------*/
#contact .headLine01 {
	margin-bottom: 75px;
}
#contact #main > h3,
#contact #main > .content > h3 {
	margin-bottom: 62px;
	font-size: 2rem;
	line-height: 1.7;
	text-align: center;
	letter-spacing: 0.06em;
}
#contact .mailForm {
	margin: 0 auto;
	max-width: 858px;
	font-family: var(--font-noto-sans-jp);
}
#contact .mailForm .notice {
	margin-bottom: 18px;
	font-weight: 500;
	color: #000;
	font-size: 1.4rem;
	letter-spacing: 0.08em;
}
#contact .mailForm dl {
	margin-bottom: 63px;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px dashed #B6B6B6;
}
#contact .mailForm dt,
#contact .mailForm dd {
	padding: 30px 0 31px;
	font-size: 1.6rem;
	letter-spacing: 0.08em;
}
#contact .mailForm dt {
	padding-top: 43px;
	margin-right: 35px;
    width: 160px;
	font-weight: 700;
}
#contact .mailForm dt .must {
	margin-left: 6px;
	display: inline-block;
	color: #8C7B4F;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.08em;
}
#contact .mailForm dd {
	width: calc(100% - 160px - 35px);
	position: relative;
}
#contact .mailForm dd::after {
	width: calc(100% + 160px + 35px);
	position: absolute;
	left: calc(-160px - 35px);
	bottom: 0;
	border-bottom: 1px dashed #B6B6B6;
	content: "";
}
#contact .mailForm input::-webkit-input-placeholder,
#contact .mailForm textarea::-webkit-input-placeholder {color: #BFBFBF;opacity:1;}
#contact .mailForm input:-moz-placeholder,
#contact .mailForm textarea:-moz-placeholder {color: #BFBFBF;opacity:1;}
#contact .mailForm input::-moz-placeholder,
#contact .mailForm textarea::-moz-placeholder {color: #BFBFBF;opacity:1;}
#contact .mailForm input:-ms-input-placeholder,
#contact .mailForm textarea:-ms-input-placeholder {color: #BFBFBF;opacity:1;}
#contact .mailForm input[type="text"],
#contact .mailForm input[type="tel"],
#contact .mailForm textarea,
#contact .mailForm select {
	padding: 16px 21px 16px;
	width: 663px;
	height: 55px;
	color: #231815;
	font-size: 1.4rem;
	letter-spacing: 0.08em;
	border: none;
	background-color: #fff;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	font-feature-settings: "palt";
	box-sizing: border-box;
	font-family: var(--font-noto-sans-jp);
}
#contact .mailForm input[name="zip"],
#contact .mailForm select,
#contact .mailForm .hopeDateList input[type="text"] {
	width: 178px;
}
#contact .mailForm .addressLink {
	margin-left: 9px;
	width: 89px;
	height: 55px;
	display: inline-block;
}
#contact .mailForm .addressLink a {
	width: 100%;
	height: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 1.4rem;
	letter-spacing: 0.08em;
	background-color: #A3A39F;
	font-family: 'A-OTF-MidashiGoPr5-MB31';
}
#contact .mailForm select,
#contact .mailForm .hopeDateList input[type="text"] {
	font-size: 1.2rem;
	background: url(img/common/icon_arrow02.png) #fff no-repeat right 16px center / 10px;
}
#contact .mailForm input[name="input_main_em01"],
#contact .mailForm input[name="input_main_em02"] {
	width: 306px;
}
#contact .mailForm .at {
	margin: 0 14px;
	font-size: 1.8rem;
	font-weight: 500;
	display: inline-block;
}
#contact .mailForm .errorBox {
	margin-top: 14px;
	padding: 15px 20px;
	position: relative;
	width: 100%;
	min-height: 84px;
	box-sizing: border-box;
	background-color: #E5E5E0;
}
#contact .mailForm .errorBox::after {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 12px 6px;
	border-color: transparent transparent #E5E5E0 transparent;
	position: absolute;
	left: 24px;
	top: -12px;
	content: "";
}
#contact .mailForm .errorBox .error {
	color: #969693;
	font-size: 1.2rem;
	letter-spacing: 0.08em;
}
#contact .mailForm .errorBox .error strong {
	margin-top: -5px;
	color: #000;
	display: block;
	font-size: 2.4rem;
	font-weight: 700;
	word-break: break-all;
}
#contact .mailForm textarea {
	margin-bottom: -7px;
	width: 663px;
	height: 196px;
	resize: vertical;
}
#contact .mailForm label {
	position: relative;
}
#contact .mailForm .agreeBox {
	padding-right: 14px;
	text-align: center;
}
#contact .mailForm input[type="checkBox"] {
	opacity: 0;
	visibility: hidden;
	position: absolute;
}
#contact .mailForm input[type="checkBox"] ~ span {
	padding: 2px 0 2px 30px;
	display: inline-block;
	font-weight: 900;
	font-size: 1.6rem;
	letter-spacing: 0.08em;
	background: url(img/common/icon_check_box.png) no-repeat left center / 21px;
	cursor: pointer;
}
#contact .mailForm input[type="checkBox"]:checked ~ span {
	background-image: url(img/common/icon_check_box_checked.png);
}
#contact .mailForm input[type="checkBox"] ~ span a {
	text-decoration: underline;
}
#contact .mailForm .submit {
	margin-top: 76px;
}
#contact .mailForm .submit li {
	text-align: center;
}
#contact .mailForm .submit li + li {
	margin-top: 16px;
}
#contact .mailForm .submit input {
	width: 455px;
	height: 95px;
	color: #fff;
	font-size: 2.4rem;
	text-align: center;
	letter-spacing: 0.2em;
	border: none;
	border-radius: 0;
	background: url(img/common/icon_arrow03.png) #75633E no-repeat right 23px center / 9px;
	font-family: 'A-OTF-MidashiGoPr5-MB31';
	cursor: pointer;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}
#contact .mailForm .submit input:disabled {
	background-color: #BFBFBF;
	pointer-events: none;
}
@media all and (min-width: 897px) {
	#contact .mailForm .addressLink a:hover,
	#contact .mailForm .submit input:hover {
		opacity: 0.7;
	}
	#contact .mailForm input[type="checkBox"] ~ span a:hover {
		text-decoration: none;
	}
}
@media all and (max-width: 896px) {
	#contact .headLine01 {
		margin-bottom: 68px;
	}
	#contact #main > h3,
	#contact #main > .content > h3 {
		margin-bottom: 38px;
		font-size: 1.8rem;
	}
	#contact .mailForm .notice {
		margin-bottom: 21px;
		font-size: 1.5rem;
		text-align: center;
	}
	#contact .mailForm dl {
		display: block;
	}
	#contact .mailForm dt,
	#contact .mailForm dd {
		margin: 0;
		padding: 26px 0 0;
		width: auto;
		font-size: 1.5rem;
	}
	#contact .mailForm dd {
		padding-bottom: 33px;
	}
	#contact .mailForm dd::after {
		width: 100%;
		left: 0;
	}
	#contact .mailForm input[type="text"], #contact .mailForm input[type="tel"], #contact .mailForm textarea, #contact .mailForm select {
		width: 100%;
		font-size: 1.5rem;
	}
	#contact .mailForm input[name="zip"], #contact .mailForm select, #contact .mailForm .hopeDateList input[type="text"] {
		width: 178px;
	}
	#contact .mailForm .submit input {
		width: 100%;
		max-width: 355px;
		height: 65px;
		font-size: 2rem;
	}
	#contact .mailForm .errorBox .error strong {
		margin-top: 0;
		font-size: 1.6rem;
	}
	#contact .mailForm dt .must {
		font-size: 1.1rem;
	}
}
@media all and (max-width: 374px) {
	#contact .mailForm .errorBox .error strong {
		margin-top: 5px;
		font-size: 1.4rem;
	}
}

/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#index .mainVisual {
	margin: -15px 0 104px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	opacity: 0;
}
#index .mainVisual.isShow {
	opacity: 1;
	transition: opacity .8s;
}
#index .mainVisual .imgList {
	display: flex;
	justify-content: center;
}
#index .mainVisual .imgList li {
	position: relative;
}
#index .mainVisual .imgList .img01 {
	width: 814px;
	height: 560px;
	position: relative;
	max-height: 80vh;
}
#index .mainVisual .imgList .img01 > img,
#index .mainVisual .imgList .img02 > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: rotate(-352.155deg);
}
#index .mainVisual .imgList .img01 span {
	position: absolute;
    left: -72px;
    top: 337px;
	width: 42px;
}
#index .mainVisual .imgList .img02 {
	width: 268px;
	height: 184px;
	position: absolute;
	left: -78px;
    bottom: -20px;
}
#index .mainVisual .imgList .img02 > img {
	transform: rotate(-6.611deg);
}
#index .headLine01 {
	margin: 0;
	padding-left: 80px;
	width: 100%;
	max-width: inherit;
	position: absolute;
	left: 0;
	bottom: 5px;
	box-sizing: border-box;
}
#index .headLine01 .jp {
	margin-bottom: 8px;
	font-size: 5.146rem;
	letter-spacing: 0.22em;
}
#index .headLine01 .en {
	display: inline-block;
	margin-left: 3px;
}
#index .event {
	margin: 0 25px 151px;
}
#index .event .h3Ttl {
	margin-bottom: 52px;
	text-align: center;
}
#index .event .h3Ttl .en {
	margin-bottom: -1px;
	display: block;
	letter-spacing: 0.1em;
}
#index .event .h3Ttl .line {
	display: inline-block;
	width: 388px;
}
#index .event .h3Ttl .jp {
	margin-top: 10px;
	display: block;
	letter-spacing: 0.22em;
}
#index .event .h3Ttl .jp + .jp {
	margin-top: 0;
}
#index .event .imgBox {
	padding: 41px 20px 43px;
	border-top: 1px dashed #b9b9b9;
	border-bottom: 1px dashed #b9b9b9;
}
#index .event .imgBox a {
	margin: 0 auto;
	max-width: 960px;
	display: block;
	position: relative;
	text-align: center;
}
#index .event .imgBox a img {
	width: 100%;
}
#index .sec01 .imgBox {
	margin: 0 auto;
	padding: 0 30px;
	max-width: 852px;
}
#index .sec01 .content {
	position: relative;
	z-index: 2;
}
#index .sec01 .imgBox .photoBox01 {
	margin-left: auto;
	position: relative;
}
#index .sec01 .imgBox .photoBox01 .img {
	position: absolute;
}
#index .sec01 .imgBox .photoBox01 .img.img01 {
    left: -340px;
    top: 137px;
}
#index .sec01 .imgBox02 .photoBox01 .img.img01 {
    left: -310px;
	top: 74px;
}
#index .sec01 .imgBox .photoBox01 .img.img02 {
	bottom: -41px;
    right: -34px;
}
#index .sec01 .imgBox .innerBox {
	margin: -168px 0 0 3px;
	position: relative;
	display: flex;
	align-items: flex-end;
}
#index .sec01 .imgBox .innerBox .textBox {
	margin: 0 0 13px auto;
	width: 386px;
}
#index .sec01 .imgBox .innerBox .comBtn02 {
	position: absolute;
	top: 100%;
	right: 0;
}
#index .sec01 .imgBox .innerBox p {
	margin-bottom: 57px;
	line-height: 1.785;
	text-align: justify;
	letter-spacing: 0.08em;
}
#index .sec01 .imgBox .innerBox .ttl {
	margin-bottom: 14px;
	color: #76633c;
	font-size: 4rem;
	line-height: 1.3;
	letter-spacing: 0.22em;
}
#index .sec01 .imgBox + .imgBox {
	margin-top: 299px;
}
#index .sec01 .imgBox.imgBox02 .innerBox {
	margin-top: -143px;
}
#index .sec01 {
	margin-bottom: 267px;
	position: relative;
}
#index .sec01::before {
	position: absolute;
	right: 0;
	top: -285px;
	width: 347px;
	height: 1079px;
	content: "";
	background: url(img/index/bg01.png) no-repeat right top / 100%;
}
#index .sec01::after {
	position: absolute;
	left: 0;
	top: 595px;
	width: 311px;
	height: 853px;
	content: "";
	background: url(img/index/bg02.png) no-repeat left top / 100%;
}
#index .dreamLook h3 {
	margin-bottom: 58px;
	text-align: center;
	border-top: 3px solid #000;
}
#index .dreamLook h3 .en {
	margin: 2px 0 6px;
	padding: 8px 0 11px;
	display: block;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}
#index .dreamLook h3 .jp {
	line-height: 1.785;
	letter-spacing: 0.15em;
    font-feature-settings: normal;
}
#index .dreamLook .innerBox {
	position: relative;
	border-bottom: 1px solid #000;
}
#index .dreamLook .innerBox::after {
	width: 100%;
	height: 3px;
	position: absolute;
	left: 0;
	bottom: -6px;
	background-color: #000;
	content: "";
}
#index .dreamLook .imgList {
	margin-bottom: 5px;
	padding-bottom: 81px;
	display: flex;
	justify-content: center;
	position: relative;
}
#index .dreamLook .imgList .img01 {
	width: 505px;
	height: 351px;
}
#index .dreamLook .imgList .img01 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.8s cubic-bezier(0.19, 0.08999, 0.2, 1);
	transition-property: transform;
}
#index .dreamLook .imgList .imgBox {
	margin-bottom: 81px;
	position: relative;
}
#index .dreamLook .imgList .img02 {
	position: absolute;
    left: -94px;
    bottom: -73px;
	width: 236px;
	height: 168px;;
}
#index .dreamLook .imgList .img02 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: rotate(-9.544deg);
}
#index .dreamLook .imgList p {
	max-width: 505px;
	min-height: 50px;
	text-align: center;
	line-height: 1.785;
	letter-spacing: 0.22em;
	opacity: 0;
}
#index .dreamLook {
	margin-bottom: 106px;
	position: relative;
}
#index .dreamLook::before {
	position: absolute;
	right: 0;
	top: -185px;
	width: 415px;
	height: 1062px;
	content: "";
	background: url(img/index/bg03.png) no-repeat right top / 100%;
}
#index .dreamLook::after {
	position: absolute;
	left: 0;
	top: 18px;
	width: 397px;
	height: 934px;
	content: "";
	background: url(img/index/bg04.png) no-repeat left top / 100%;
}
#index .news h3 {
	margin-bottom: 56px;
	font-size: 4rem;
	text-align: center;
	letter-spacing: 0.22em;
}
#index .news .viewAll {
	margin: 20px 0 57px;
}
@media all and (min-width: 897px) {
	#index .news .viewAll a {
		margin: 0 auto;
		width: 204px;
		height: 52px;
		font-size: 1.3rem;
		letter-spacing: .08em;
	}
}
.comNewsList {
	margin: 0 auto 7px;
	max-width: 919px;
}
.comNewsList li {
	position: relative;
	border-bottom: 1px dashed #B9B9B9;
}
.comNewsList a {
	display: flex;
	transition: 0.3s;
	transition-property: background;
	justify-content: space-between;
}
.comNewsList .textBox {
	flex: 1;
	padding: 28px 110px 0 0;
}
.comNewsList .date {
	margin-bottom: -2px;
	color: #B9B9B9;
	font-size: 1.2rem;
	letter-spacing: 0.08em;
}
.comNewsList .tag {
	margin-left: 15px;
	padding-left: 15px;
	display: inline-block;
	line-height: 1;
	border-left: 1px dashed currentColor;
}
.comNewsList h4 {
	margin-left: 14px;
	font-size: 2rem;
	line-height: 1.273;
	letter-spacing: 0.22em;
	max-height: 2.6em;
	overflow: hidden;
}
.comNewsList .photoBox {
	margin-bottom: -1px;
	width: 146px;
	height: 120px;
}
.comNewsList .photoBox img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.newsLink {
	margin: 0 auto;
	max-width: 920px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.newsLink::after {
	width: calc((100% - 20px)/3);
	content: "";
}
.newsLink li {
	width: calc((100% - 26px)/3);
	background-color: #fff;
}
.newsLink a {
	padding: 20px 100px 20px 26px;
	min-height: 163px;
	position: relative;
	display: block;
	box-sizing: border-box;
	overflow: hidden;
}
.newsLink .comLink {
	text-align: left;
}
.newsLink .img {
	position: absolute;
	right: -85px;
	top: 50%;
	transform: translateY(-50%);
	width: 260px;
}
.newsLink p {
	margin: 0 -10px 5px 0;
	color: var(--main-brown);
	font-size: 1.8rem;
	line-height: 1.336;
	letter-spacing: 0.22em;
}
.newsLink .comLink {
	text-align: left;
}
.newsLink .comLink .arrow {
	width: 33px;
	margin-left: 0;
}
#index .news {
	margin-bottom: 126px;
}
@media all and (min-width: 897px) and (max-width: 1000px)  {
	#index .sec01 .imgBox .innerBox .textBox {
		margin-left: 30px;
	}
	#index .sec01 .imgBox .innerBox .ttl {
		letter-spacing: 0.1em;
	}
	.newsLink li:hover {
		background-color: rgba(255, 255, 255, 0.7);
	}
}
#index .dreamLook .imgList a {
	pointer-events: none;
}
#index .dreamLook .imgList .slick-center a {
	pointer-events: all;
}
@media all and (min-width: 897px) {
	#index .dreamLook .imgList .slick-center a:hover .img01 img {
		transform: rotate(5deg) scale(0.95);
	}
	#index .event .imgBox a:hover {
		opacity: 0.75;
	}
	.newsLink li:hover {
		background: rgba(255,255,255,0.7);
	}
	#index .sec01 .imgBox .innerBox .comLink {
		margin-right: -35px;
	}
	.comNewsList a:hover {
		background-color: #FFF;
	}
}
@media all and (max-width: 896px) {
	#index .mainVisual .imgList {
		margin: 0 36px;
	}
	#index .mainVisual .imgList .img01 {
		margin: 0 -10px 0 9px;
		width: auto;
		height: auto;
	}
	#index .mainVisual .imgList .img02 {
		width: 26.667vw;
		height: auto;
		aspect-ratio: 100 / 69;
		left: -5vw;
		bottom: -2vw;
	}
	#index .mainVisual .imgList .img01 span {
		left: -7vw;
		top: auto;
		width: 4vw;
		bottom: 16.4vw;
	}
	#index .headLine01 {
		margin-bottom: 8px;
		padding-left: 24px;
		bottom: 13px;
	}
	#index .headLine01 .jp {
		font-size: 3.3rem;
		line-height: 1.242;
		letter-spacing: 0.2em;
	}
	#index .headLine01 .en {
		font-size: 0.9rem;
	}
	#index .event .h3Ttl .en {
		font-size: 1.3rem;
		letter-spacing: 0.08em;
	}
	#index .event .h3Ttl .line {
		width: 309px;
	}
	#index .event .h3Ttl .jp {
		font-size: 1.4rem;
		line-height: 1.785;
		letter-spacing: 0.18em;
	}
	#index .event .h3Ttl {
		margin-bottom: 63px;
	}
	#index .event .imgBox {
		padding: 20px 5px 42px;
	}
	#index .event .imgBox a {
		width: auto;
	}
	#index .event {
		margin: 0 0 180px;
		background-image: none;
	}
	#index .sec01 .imgBox {
		padding: 0;
		max-width: inherit;
	}
	#index .sec01 .imgBox .photoBox01 {
		width: 63.466vw !important;
	}
	#index .sec01 .imgBox .innerBox {
		margin: -59px 0 0;
		display: block;
	}
	#index .sec01 .imgBox .photoBox02 {
		margin-bottom: 26px;
		width: 45.2%;
	}
	#index .sec01 .imgBox .innerBox .textBox {
		margin: 0 0 20px;
	}
	#index .sec01 .imgBox .innerBox p {
		margin-bottom: 37px;
		font-size: 1.3rem;
		line-height: 1.769;
		max-width: 259px;
	}
	#index .sec01 .imgBox .innerBox .ttl {
		margin-bottom: 18px;
		font-size: 2.8rem;
		line-height: 1.285;
	}
	#index .sec01 .imgBox .innerBox .comBtn02 {
		position: static;
	}
	#index .sec01 .imgBox02 .photoBox01 {
		width: 76.466vw !important;
	}
	#index .sec01 .imgBox02 .photoBox01 .img.img01 img {
		width: 210px;
	}
	#index .sec01 .imgBox + .imgBox {
		margin-top: 157px;
	}
	#index .sec01 .imgBox.imgBox02 .innerBox {
		margin-top: -53px;
	}
	#index .sec01 .imgBox.imgBox02 .innerBox p {
		margin-bottom: 14px;
	}
	#index .sec01 .imgBox .photoBox01 .img.img01 {
		left: -91px;
		top: -84px;
	}
	#index .sec01 .imgBox .photoBox01 .img.img02 {
		width: 135px;
		bottom: -45px;
		right: -10px;
	}
	#index .sec01 .imgBox02 .photoBox01 .img.img01 {
		left: -51px;
		top: -64px
	}
	#index .sec01 {
		margin-bottom: 95px;
	}
	#index .dreamLook h3 {
		margin-bottom: 39px;
		border-top-width: 2px;
	}
	#index .dreamLook h3 .en {
		margin-top: 1px;
		padding: 4px 0 6px;
	}
	#index .dreamLook h3 .en img {
		width: 224px;
	}
	#index .dreamLook h3 .jp,
	#index .dreamLook .imgList p {
		font-size: 1.3rem;
		line-height: 1.538;
		letter-spacing: 0.08em;
	}
	#index .dreamLook .imgList p {
		min-height: inherit;
	}
	#index .dreamLook .imgList li {
		margin: 0 59px 0 58px;
	}
	#index .dreamLook .imgList .img01 {
		width: auto;
		height: 40.3vw;
	}
	#index .dreamLook .imgList .img02 {
		width: 102px;
		height: 72px;
		left: -40px;
		bottom: -32px;
	}
	#index .dreamLook .imgList .imgBox {
		margin-bottom: 37px;
	}
	#index .dreamLook .imgList {
		padding-bottom: 59px;
	}
	#index .dreamLook .imgList::after {
		bottom: -4px;
		height: 2px;
	}
	#index .dreamLook {
		margin-bottom: 59px;
	}
	#index .news h3 {
		margin-bottom: 45px;
		font-size: 2.8rem;
	}
	.comNewsList {
		margin-bottom: 27px;
		width: auto;
	}
	.comNewsList li {
		margin-bottom: 25px;
	}
	.comNewsList .photoBox {
		width: 107px;
		height: 88px;
	}
	.comNewsList .textBox {
		padding: 4px 14px 0 0;
	}
	.comNewsList .tag {
		margin-left: 10px;
		padding-left: 10px;
	}
	.comNewsList .date {
		margin-bottom: 0;
	}
	.comNewsList h4 {
		font-size: 1.7rem;
		line-height: 1.411;
		letter-spacing: 0.08em;
		max-height: 3em;
	}
	#index .news .viewAll {
		margin-bottom: 54px;
	}
	.newsLink li {
		width: calc((100% - 22px)/3);
	}
	.newsLink li a {
		padding: 81px 10px 28px 13px;
		width: 100%;
		min-height: inherit;
	}
	.newsLink .img {
		right: 50%;
		top: 0;
		transform: translate(50%,0);
		width: 104px;
	}
	.newsLink p {
		margin-bottom: 0;
		min-height: 48px;
		display: flex;
		align-items: center;
		font-size: 1.3rem;
		line-height: 1.23;
		letter-spacing: 0.11em;
	}
	.newsLink .comLink {
		height: 4px;
	}
	.newsLink .comLink .arrow {
		width: 19px;
	}
	.newsLink .comLink .arrow::after {
		height: 5px;
	}
	#index .news {
		margin-bottom: 84px;
	}
	#index .sec01::before {
		width: 201px;
		top: -242px;
	}
	#index .sec01::after {
		top: 665px;
		width: 195px;
	}
	#index .dreamLook::before {
		width: 225px;
		right: -83px;
		top: -76px;
	}
	#index .dreamLook::after {
		left: -81px;
		top: -15px;
		width: 181px;
	}
}
@media all and (max-width: 374px) {
	#index .event .h3Ttl .line {
		width: 270px;
	}
	.comNewsList .tag {
		margin-left: 4px;
		padding-left: 4px;
	}
}

/*------------------------------------------------------------
	consulation
------------------------------------------------------------*/
#consultation #gHeader {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}
#consultation .headLine01 {
	position: absolute;
	width: calc(100% - 130px);
	top: 199px;
	text-align: left;
	margin-bottom: 0;
}
#consultation .mainVisual {
	margin-bottom: 20px;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
}
#consultation .mainVisual .mainImg {
	margin-top: 60px;
	max-width: 927px;
}
#consultation .mainVisual .imgTtl {
	position: absolute;
	left: 0;
	width: 100%;
	bottom: 20px;
}
#consultation .mainVisual .imgTtl img {
	margin: 0 auto;
	display: block;
	height: 62px;
	width: auto;
	max-width: inherit;
}
#consultation .fadeImgBox {
	text-align: center;
}
#consultation .fadeImgBox .innerBox {
	display: inline-block;
	padding: 268px 0 181px;
	position: relative;
}
#consultation .fadeImgBox h3 {
	color: #76633C;
	font-size: 4rem;
	line-height: 1.45;
	letter-spacing: 0.38em;
}
#consultation .fadeImgBox .img {
	position: absolute;
}
#consultation .fadeImgBox .img01 {
    top: 135px;
    left: -227px;
}
#consultation .fadeImgBox .img02 {
	margin-top: 7px;
	top: 50%;
	left: -476px;
	transform: translateY(-50%);
}
#consultation .fadeImgBox .img03 {
    bottom: 71px;
    left: -253px;
}
#consultation .fadeImgBox .img04 {
    right: -288px;
    top: 73px;
}
#consultation .fadeImgBox .img05 {
    margin-top: -57px;
	right: -458px;
    top: 50%;
    transform: translateY(-50%);
}
#consultation .fadeImgBox .img06 {
    right: -346px;
    bottom: 31px;
}
@media all and (max-width: 896px) {
	#consultation .mainVisual {
		margin-bottom: 0;
		position: relative;
	}
	#consultation .fadeImgBox .img01 {
		top: 0px;
		left: 84px;
		width: 63px;
	}
	#consultation .fadeImgBox .img02 {
		margin-top: -94px;
		left: -33px;
		width: 92px;
	}
	#consultation .fadeImgBox .img03 {
		bottom: 69px;
		left: 48px;
		width: 88px;
	}
	#consultation .fadeImgBox .img04 {
		right: 66px;
		top: 61px;
		width: 82px;
	}
	#consultation .fadeImgBox .img05 {
		right: -30px;
		top: 13px;
		width: 68px;
		margin-top: 0;
		transform: none;
	}
	#consultation .fadeImgBox .img06 {
		right: 12px;
		bottom: 0px;
		width: 115px;
	}
}
#consultation .sec01 .imgBox {
	padding: 81px 0 86px;
}
#consultation .sec01 .imgBox:not(.reverse) {
	background-color: #fff;
}
#consultation .sec01 .imgBox .innerBox {
	margin: 0 auto;
	max-width: 920px;
	display: flex;
	align-items: center;
}
#consultation .sec01 .imgBox.reverse {
	padding: 98px 0 96px;
}
#consultation .sec01 .imgBox.reverse .innerBox {
	flex-direction: row-reverse;
}
#consultation .sec01 .imgBox .textBox {
	margin-top: 10px;
	flex: 1;
}
#consultation .sec01 .imgBox .ttl {
	margin-bottom: 31px;
	color: #76633C;
	font-size: 3.6rem;
	line-height: 1.611;
	letter-spacing: 0.24em;
}
#consultation .sec01 .imgBox p {
	max-width: 414px;
	line-height: 1.785;
	text-align: justify;
	letter-spacing: 0.08em;
}
#consultation .sec01 .imgBox .photoBox {
	width: 460px;
	order: 3;
}
#consultation .sec01 .imgBox.reverse .textBox {
	margin-top: 0;
}
#consultation .sec01 .imgBox.reverse .photoBox {
	margin-right: 46px;
}
#consultation .sec02 {
	padding: 100px 0 110px;
}
#consultation .sec02 .imgBox {
	margin: 0 auto;
	padding: 68px 0;
	max-width: 920px;
	border-top: 1px dashed #B5B5B5;
	border-bottom: 1px dashed #B5B5B5;
}
#consultation .sec02 .imgBox .innerBox {
	margin: 0 auto;
	max-width: 666px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#consultation .sec02 .imgBox .photoBox {
	width: 242px;
}
#consultation .sec02 .imgBox .textBox {
	margin-top: 20px;
	flex: 1;
	max-width: 374px;
}
#consultation .sec02 .imgBox .ttl {
	font-weight: 500;
	color: #61553E;
	margin-bottom: 44px;
	font-family: var(--font-noto-serif-jp);
}
#consultation .sec02 .imgBox .ttl .jp {
	font-size: 3.6rem;
	display: inline-block;
	letter-spacing: 0.54em;
}
#consultation .sec02 .imgBox .ttl small {
	margin-bottom: -7px;
	display: block;
	font-size: 2.7rem;
	letter-spacing: 0.24em;
}
#consultation .sec02 .imgBox .ttl .en {
	font-size: 1rem;
	letter-spacing: 0.24em;
	vertical-align: 8px;
}
#consultation .sec02 .imgBox p {
	line-height: 1.928;
	font-weight: 500;
	font-family: var(--font-noto-sans-jp);
}
@media all and (max-width: 896px) {
	#consultation .mainVisual {
		overflow-x: hidden;
	}
	#consultation .headLine01 {
		width: auto;
		top: 105px;
		left: 0;
		box-sizing: border-box;
	}
	#consultation .mainVisual .mainImg {
		margin: 72px -27px 0 -26px;
	}
	#consultation .fadeImgBox h3 {
		margin-top: -75px;
		width: 100%;
		position: absolute;
		top: 50%;
		left: 0;
		font-size: 2.8rem;
		line-height: 1.48;
		letter-spacing: 0.15em;
	}
	#consultation .fadeImgBox .showImg {
		margin: 0 auto;
		max-width: 575px;
	}
	#consultation .sec01 .imgBox .innerBox {
		display: block;
	}
	#consultation .fadeImgBox .innerBox {
		max-width: 375px;
		width: 100%;
		height: 482px;
		padding: 0;
		position: relative;
	}
	#consultation .mainVisual .imgTtl {
		margin: 0 auto 4px;
		width: auto;
		left: 50%;
		bottom: 42px;
		transform: translateX(-50%);
	}
	#consultation .mainVisual .imgTtl img {
		height: 84px;
	}
	#consultation .fadeImgBox {
		margin-bottom: 30px;
	}
	#consultation .sec01 .imgBox {
		padding: 34px 30px 44px;
		margin: 0 6px;
	}
	#consultation .sec01 .imgBox .photoBox {
		width: auto;
	}
	#consultation .sec01 .imgBox .ttl {
		margin-bottom: 17px;
		font-size: 2.7rem;
		line-height: 1.48;
		letter-spacing: 0.22rem;
	}
	#consultation .sec01 .imgBox .textBox {
		margin-top: 31px;
	}
	#consultation .sec01 .imgBox p {
		font-size: 1.3rem;
		line-height: 1.77;
		max-width: inherit;
		letter-spacing: -0.07em;
	}
	#consultation .sec01 .imgBox.reverse {
		padding: 34px 30px 44px;
	}
	#consultation .sec01 .imgBox.reverse .photoBox {
		margin-right: 0;
	}
	#consultation .sec01 .imgBox.reverse .textBox {
		margin-top: 31px;
	}
	#consultation .sec02 {
		padding: 66px 30px 65px;
	}
	#consultation .sec02 .imgBox {
		padding: 45px 0 35px;
		max-width: inherit;
		border-top: 1px dashed #B5B5B5;
		border-bottom: 1px dashed #B5B5B5;
	}
	#consultation .sec02 .imgBox .innerBox {
		max-width: inherit;
		display: block;
	}
	#consultation .sec02 .imgBox .photoBox {
		width: 193px;
		margin: 0 auto;
	}
	#consultation .sec02 .imgBox .ttl {
		text-align: center;
	}
	#consultation .sec02 .imgBox .ttl .en {
		display: block;
	}
	#consultation .sec02 .imgBox .ttl small {
		margin-bottom: -1px;
		display: block;
		font-size: 1.9rem;
		letter-spacing: 0.24em;
	}
	#consultation .sec02 .imgBox .ttl .jp {
		font-size: 3.3rem;
		display: block;
		letter-spacing: 0.54em;
	}
	#consultation .sec02 .imgBox .ttl {
		margin-bottom: 25px;
	}
	#consultation .sec02 .imgBox p {
		line-height: 2.1;
	}
	#consultation .comIntroduct {
		margin-bottom: -18px;
	}
	#consultation .sec02 .imgBox .textBox {
		max-width: inherit;
	}
}
/*------------------------------------------------------------
	appointment
------------------------------------------------------------*/
#contact.appointment {
	background: url(img/consultation/appointment/bg.png) no-repeat right top / 552px,#FAFAF8;
}
@media all and (max-width: 896px) {
	#contact.appointment {
		background-size: 276px;
	}
}
#contact.appointment h3 {
	margin-bottom: 88px;
}
#contact.appointment h3 span {
	color: #E1782E;
}
#contact.appointment .mailForm .hopeDateList {
	margin-right: -10px;
}
#contact.appointment .mailForm .hopeDateList li:not(:last-child) {
	margin-bottom: 22px;
}
#contact.appointment .mailForm .hopeDateList .hopeTime,
#contact.appointment .mailForm .hopeDateList .hopeDate,
#contact.appointment .mailForm .hopeDateList p {
	margin-right: 8px;
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.714;
	letter-spacing: 0.08em;
}
#contact.appointment .mailForm .hopeDateList .strong {
	margin-right: 25px;
	font-weight: 700;
}
#contact.appointment .mailForm .hopeDateList .strong span {
	position: absolute;
	left: -65px;
	color: #A18774;
}
#contact.appointment .mailForm .hopeDateList .strong span.must {
	color: #E41413;
}
#contact.appointment .mailForm .hopeDateList .hopeTime {
	margin-left: 14px;
	margin-right: 7px;
}
#contact .mailForm input[type="radio"] {
	position: absolute;
	visibility: hidden;
	opacity: 0;
}
#contact .mailForm .radioList {
	margin: 13px 0 -11px;
	display: flex;
	flex-wrap: wrap;
}
#contact .mailForm .radioList li {
	margin-bottom: 25px;
	margin-right: 38px;
}
#contact .mailForm .radioList .special {
	margin-right: 0;
	display: flex;
}
#contact .mailForm .radioList .special .wpcf7-form-control-wrap + .wpcf7-form-control-wrap {
	margin-top: 0 !important;
}
#contact .mailForm .radioList .special label {
	margin: 12px 9px 0 0;
	display: inline-block;
}
#contact .mailForm .radioList .last {
	margin-right: 0;
}
#contact .mailForm .radioList label {
	vertical-align: top;
}
#contact .mailForm .radioList textarea {
	display: inline-block;
	width: 566px;
	height: 136px;
}
#contact .mailForm input[type="radio"] ~ span {
	padding: 2px 0 2px 30px;
	display: inline-block;
	cursor: pointer;
	font-weight: 500;
	font-size: 1.4rem;
	letter-spacing: 0.08em;
	background: url(img/common/icon_radio.png) no-repeat left center / 21px;
}
#contact .mailForm input[type="radio"]:checked ~ span {
	background-image: url(img/common/icon_radio_checked.png);
}
@media all and (max-width: 896px) {
	#contact.appointment .mailForm .hopeDateList p {
		margin: 0 0 10px;
		display: block;
	}
	#contact.appointment .mailForm .hopeDateList .strong {
		margin: 0;
	}
	#contact.appointment .mailForm .hopeDateList .strong span {
		position: relative;
		left: 0;
		margin-left: 10px;
	}
	#contact.appointment .mailForm .hopeDateList .hopeTime {
		margin: 0;
	}
	#contact.appointment .mailForm .hopeDateList input[type="text"],
	#contact.appointment .mailForm .hopeDateList select {
		width: 100%;
	}
	#contact.appointment .mailForm .hopeDateList .inner {
		display: flex;
		justify-content: space-between;
	}
	#contact.appointment .mailForm .hopeDateList .innerBox {
		width: calc(50% - 10px);
	}
	#contact .mailForm .radioList {
		margin: 0;
		display: block;
	}
	#contact .mailForm .radioList li {
		margin: 0 0 14px;
	}
	#contact .mailForm .radioList textarea {
		width: 100%;
		display: block;
	}
	#contact .mailForm .radioList .special {
		display: block;
	}
	#contact .mailForm .radioList .special label {
		margin: 0 0 14px;
	}
}

/*------------------------------------------------------------
	reserve
------------------------------------------------------------*/
#contact.reserve {
	background: url(img/works/reserve/bg.png) no-repeat right top / 626px,#FAFAF8;
}
#contact.reserve #main > h3 {
	margin-bottom: 43px;
}
#contact.reserve .comEventBox {
	margin-bottom: 144px;
}
#contact.reserve .comEventBox a {
	pointer-events: none;
}
#contact.reserve .mailForm dd .ttl {
	margin: 13px 0 12px;
	color: #76633B;
}
#contact.reserve .mailForm .checkBoxList + .checkBoxList {
	margin-top: 22px;
}
#contact.reserve .mailForm .checkBoxList:last-child {
	margin-bottom: 16px;
}
#contact.reserve .mailForm .checkBoxList li {
	margin-bottom: 8px;
}
#contact.reserve .mailForm .checkBoxList input[type="checkBox"] ~ span {
	font-size: 1.4rem;
	font-weight: 500;
	font-family: var(--font-noto-sans-jp);
	letter-spacing: 0.08em;
	cursor: pointer;
}
#contact.reserve .mailForm .hopeTime {
	margin: 17px 0 28px;
}
#contact.reserve .mailForm .hopeTime p {
	display: inline-block;
	font-weight: 500;
	font-size: 1.4rem;
	letter-spacing: 0.08em;
}
#contact.reserve .mailForm .submit input {
	background-color: #80AE3F;
}
#contact.reserve .mailForm small {
	font-weight: 500;
	font-size: 1.4rem;
	letter-spacing: 0.08em;
}
#contact.reserve .mailForm .join + .join {
	margin-left: 39px;
}
#contact.reserve .mailForm .join select {
	margin: 0 10px 0 15px;
}
@media all and (max-width: 896px) {
	#contact.reserve {
		background-size: 276px;
	}
	#contact.reserve .comEventBox::after {
		display: none;
	}
	#contact.reserve .comEventBox .textBox .dateTime {
		margin-bottom: 16px;
	}
	#contact.reserve .comEventBox .textBox {
		padding: 8px 19px 27px;
	}
	#contact.reserve .comEventBox .textBox h4 {
		margin-left: 0;
	}
	#contact.reserve .comEventBox .textBox h4 small {
		margin-bottom: 8px;
	}
	#contact.reserve .comEventBox {
		margin-bottom: 73px;
	}
	#contact.reserve .mailForm dd .ttl {
		margin: 10px 0 12px;
		font-size: 1.6rem;
	}
	#contact.reserve .mailForm .hopeTime p {
		display: block;
		font-size: 1.3rem;
	}
	#contact.reserve .mailForm .hopeTime {
		margin: 23px 0 42px;
	}
	#contact.reserve .joinInnerBox {
		display: flex;
		flex-direction: column;
	}
	#contact.reserve .mailForm .join {
		width: 100%;
	}
	#contact.reserve .mailForm .join select {
		margin: 6px 6px 0 0;
		width: 160px;
	}
	#contact.reserve .mailForm .join small:nth-child(1) {
		display: block;
	}
	#contact.reserve .mailForm .join + .join {
		margin: 28px 0 0;
	}
	#contact .mailForm select {
		font-size: 1.3rem;
	}
}

/* comLink */
.comLink {
	text-align: right;
}
.comLink a {
	margin-left: auto;
	display: inline-flex;
	justify-content: flex-end;
	color: #b9b9b9;
	font-size: 0.8rem;
	letter-spacing: 0.08em;
	transition: all .2s ease-in-out;
	transition-property: background, color, right;
}
a .arrow {
	margin: 2px 0 0 10px;
	display: inline-block;
	position: relative;
	width: 43px;
	height: 6px;
	overflow: hidden;
	border-bottom: 1px solid #B9B9B9;
}
a .arrow img {
	display: none;
}
a .arrow::before {
	width: 43px;
	height: 1px;
	position: absolute;
	bottom: 0;
	right: 100%;
	content: '';
	transition: all .2s ease-in-out;
	transition-property: background, color, right;
	background: #000;
}
a .arrow::after {
	width: 1px;
	height: 8px;
	position: absolute;
	bottom: 0;
	right: 0;
	content: '';
	transition: all .2s ease-in-out;
	background: #B9B9B9;
	transition-property: background, color, right;
	transform: rotate(-50deg);
	transform-origin: right bottom;
}
@media all and (min-width: 897px) {
	.comLink a:hover {
		color: #000;
	}
	a:hover .arrow::after {
		background: #000;
	}
	a:hover .arrow::before {
		right: 0;
	}
}
@media all and (max-width: 896px) {
	.comLink a {
		font-size: 0.9rem;
	}
	a .arrow {
		margin-top: 4px;
		width: 50px;
	}
}

/* comMapBox */
.comMapBox {
	margin-top: 130px;
}
.comMapBox .map {
	margin-bottom: 16px;
	width: 100%;
	height: 366px;
	position: relative;
}
.comMapBox .map iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}
.comMapBox .address {
	margin: 0 16px 0 125px;
	overflow: hidden;
	color: var(--main-brown);
	text-align: center;
	letter-spacing: 0.15em;
}
.comMapBox .address a {
	float: right;
	color: var(--main-brown);
	font-size: 1.1rem;
	text-decoration: underline;
	letter-spacing: 0.08em;
}
.comMapBox .address a:hover {
	opacity: 0.6;
}
@media all and (max-width: 896px) {
	.comMapBox {
		margin-top: 84px;
	}
	.comMapBox .map {
		margin-bottom: 20px;
		height: 68.8vw;
	}
	.comMapBox .address {
		margin: 0 10px;
		font-size: 1.4rem;
	}
	.comMapBox .address a {
		display: inline-block;
		margin-top: 5px;
		font-size: 1.2rem;
		float: none;
	}
	.comMapBox .address a:hover {
		text-decoration: underline;
	}
}

/* comImgList01 */
.comImgList01 {
	margin: 0 auto 130px;
	max-width: 920px;
	position: relative;
}
.comImgList01 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.comImgList01 li:nth-child(1) {
	margin-left: auto;
	width: 566px;
	height: 424px;
	position: relative;
}
.comImgList01 li:nth-child(1) img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: rotate(-353.328deg);
}
.comImgList01 li:nth-child(1)::after {
	width: 59px;
	height: 51px;
	position: absolute;
    left: -67px;
    top: 86px;
	background: url(img/common/icon_arrow01.svg) no-repeat center / 100%;
	content: "";
}
.comImgList01 li:nth-child(2) {
	width: 244px;
	height: 183px;
	position: absolute;
    left: 23px;
    top: 29px;
}
.comImgList01 li:nth-child(2) img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: rotate(-358.076deg);
}
.comImgList01 li:nth-child(3) {
	width: 341px;
	height: 256px;
	position: absolute;
    left: 11px;
    bottom: -39px;
}
.comImgList01 li:nth-child(3) img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: rotate(-8.585deg);
}
@media all and (max-width: 980px) {
	.comImgList01 li:nth-child(1) {
		width: 509px;
		height: 382px;
	}
	.comImgList01 li:nth-child(2) {
		width: 220px;
		height: 165px;
	}
	.comImgList01 li:nth-child(3) {
		width: 307px;
		height: 230px;
	}
	.comImgList01 {
		max-width: 830px;
	}
}
@media all and (max-width: 896px) {
	.comImgList01 {
		margin-bottom: 60px;
	}
	.comImgList01 li:nth-child(1) {
		width: 57.171vw;
		height: 42.824vw;
	}
	.comImgList01 li:nth-child(1)::after {
		top: 8vw;
		width: 5.3vw;
		left: -5.3vw;
	}
	.comImgList01 li:nth-child(2) {
		width: 24.117vw;
		height: 18.088vw;
		left: auto;
		right: 65.2vw;
		top: 7.4vw;
	}
	.comImgList01 li:nth-child(3) {
		width: 33.3334vw;
		height: 25.021vw;
		left: auto;
		right: 56.5vw;
		bottom: -6.3vw;
	}
}

/* comImgList02 */
.comImgList02 {
	margin: 0 auto 62px;
	max-width: 741px;
	display: flex;
	flex-wrap: wrap;
}
.comImgList02 li {
	width: calc(100%/3);
}
.comImgList02 a {
	width: 100%;
	padding-bottom: 100%;
	display: block;
	position: relative;
	transition: all ease 0.3s;
	transition-property: opacity;
}
.comImgList02 img {
	width: 100%;
	height: 100%;
	position: absolute;
	object-fit: cover;
}
.comImgList02 a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.comImgList02 {
		max-width: inherit;
		margin: 0 10px 60px;
	}
}

/* comStarIcon */
.comStarIcon {
	margin: 0 auto 20px;
	width: 68px;
	height: 71px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url(img/event/detail/icon_star_cycle.png) no-repeat center / 100%;
}
.comStarIcon .img {
	position: relative;
	overflow: hidden;
	top: 1px;
}
.comStarIcon .img::after {
	position: absolute;
    top: 0;
    right: -75%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.45) 100%);
    transform: skewX(25deg);
	animation: shine02 3s infinite;
	content: "";
}

/* comPopList01 */
.comPopList01 li {
	padding-top: 18px;
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 1000;
	background-color: #fafaf8;
	overflow: auto;
}
.comPopList01 .photoBox {
	margin: 0 auto 25px;
	text-align: center;
	position: relative;
}
.comPopList01 .photoBox .closeBtn {
	position: absolute;
    right: -41px;
    top: 1px;
}
.comPopList01 p {
	margin: 0 auto;
	max-width: 741px;
	line-height: 1.642;
	text-align: center;
	letter-spacing: 0.14em;
}
@media all and (min-width: 897px) {
	.comPopList01 li .popInner {
		height: 700px;
		width: 100%;
		max-width: 740px;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
	}
}
@media all and (max-width: 896px) {
	.comPopList01 li {
		padding: 0;
		display: block;
		text-align: center;
		box-sizing: border-box;
	}
	.comPopList01 li::before {
		display: inline-block;
		font-size: 0;
		height: 100%;
		vertical-align: middle;
		width: 0;
		content: "";
	}
	.comPopList01 li .popInner {
		padding: 20px;
		display: inline-block;
		vertical-align: middle;
	}
	.comPopList01 .photoBox {
		margin: 0 auto;
		width: 280px !important;
	}
	.comPopList01 .photoBox + p {
		margin-top: 25px;
	}
	.comPopList01 .photoBox .closeBtn {
		position: fixed;
		right: 20px;
		top: 24px;
		width: 17px;
	}
	.comPopList01 p  {
		font-size: 1.4rem;
		font-weight: normal;
	}
}
@media all and (max-width: 330px) {
	.comPopList01 .photoBox {
		width: 260px !important;
	}
}


/* comIntroduct */
.comIntroduct {
	padding: 33px 0 0;
	background: #FFF;
}
.comIntroduct .headLine04 {
	margin-bottom: 36px;
	letter-spacing: 0.28em;
}
.comIntroduct .slidePhoto li {
	float: left;
	width: 25%;
}
.comIntroduct a {
	display: block;
}
.comIntroduct .btmBanner {
	margin: 0 auto;
	padding: 0;
	max-width: 870px;
	background: url(img/common/arrow01.png) no-repeat right center / 9px;
}
.comIntroduct .btmBanner > div {
	height: 128px;
	justify-content: center;
	transition: 0.3s;
	transition-property: transform;
	letter-spacing: 0.2em;
}
.comIntroduct .btmBanner > div img {
	margin: -5px 20px 0 40px;
}
@media all and (min-width: 897px) {
	.comIntroduct .btmBanner > div {
		display: flex;
		align-items: center;
	}
	.comIntroduct a:hover .btmBanner > div {
		transform: scale(1.05);
	}
}
@media all and (max-width: 896px) {
	.comIntroduct {
		padding: 26px 0 0;
	}
	.comIntroduct .slidePhoto li {
		width: 50%;
	}
	.comIntroduct .btmBanner > div {
		padding: 28px 10px 34px;
		height: inherit;
		letter-spacing: 0;
		display: block;
		background-size: 7px;
		font-weight: normal;
		background-position: right 19px center;
		text-align: center;
	}
	.comIntroduct .btmBanner > div img {
		margin: 12px auto 0;
		width: 220px;
		display: block;
	}
	.comIntroduct .headLine04 {
		margin-bottom: 24px;
	}
}
#index #gHeader {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}
#index .mainVisual .imgList {
	margin-top: -35px;
	font-size: 0;
	width: 100%;
}
#index .mainVisual .imgList .slick-list {
	padding: 80px 0 !important;
}
#index .mainVisual .imgList li {
	margin: 0 50px;
	width: auto !important;
}
#index .mainVisual .imgList a {
	display: block;
	pointer-events: none;
}
#index .mainVisual .imgList .slick-center a {
	pointer-events: all;
}
#index .mainVisual .imgList .slick-center a:hover {
	opacity: 0.7;
}
#index .mainVisual .imgList .img01 {
	transform: scale(0.8);
	transition: 2s;
	transition-property: transform;
}
#index .mainVisual .imgList  .slick-current .img01 {
	transform: scale(1);
}
#index .mainVisual .imgList .style01 .img01 > img {
	transform: rotate(352.155deg);
}
#index .mainVisual .imgList .img01 span {
	overflow: hidden;
}
#index .mainVisual .imgList .img01 span::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 200%;
	height: 200%;
	content: "";
	background-image: linear-gradient(to left bottom,rgba(250,250,248,0),rgba(250,250,248,0) 50%,rgba(250,250,248,1) 50.1%,rgba(250,250,248,1));
	transition: .7s;
	transition-delay: 2s;
	transition-property: left, bottom;
}

#index .mainVisual .imgList .slick-current li .img01 span::after {
	left: -100%;
	bottom: -100%;
}
#index .mainVisual .imgList .img02 {
	animation: rotatehide linear 1s forwards;
	opacity: 0;
}
#index .mainVisual .imgList .slick-current .img02 {
	animation: rotateshow linear .5s forwards;
	animation-delay: 2.3s;
}
@keyframes rotateshow {
	0% {
		opacity: 0;
		transform: rotate(5deg);
		transform-origin: right bottom;
	}
	100% {
		opacity: 1;
		transform: rotate(0);
		transform-origin: right bottom;
	}
}

@keyframes rotatehide {
	0%,50% {
		opacity: 1;
		transform: rotate(0);
		transform-origin: right bottom;
	}
	100% {
		opacity: 0;
		transform: rotate(5deg);
		transform-origin: right bottom;
	}
}
@keyframes img02show {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes img02hide {
	0% {
		opacity: 1;
	}
	41% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
#index .dreamLook .content {
	position: relative;
	z-index: 2;
}
#index .dreamLook .imgList li {
	margin: 0 108px;
	padding-top: 14px;
	width: auto !important;
}
#index .dreamLook .imgList {
	position: relative;
}
#index .dreamLook .imgList .slick-arrow:hover {
	opacity: 0.7;
}
#index .dreamLook .imgList .slick-prev,
#index .dreamLook .imgList .slick-next {
	width: 9px;
	height: 12px;
	position: absolute;
	left: calc(50% - 437px);
	top: 184px;
	cursor: pointer;
	font-size: 0;
	transform: translateY(-50%);
	border: none;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	z-index: 2;
	background: url(img/common/icon_arrow04_left.png) no-repeat center / 9px;
}
#index .dreamLook .imgList .slick-next {
	left: auto;
	right: calc(50% - 437px);
	background-image: url(img/common/icon_arrow04_right.png);
}
#index .scrollBox {
	position: absolute;
    right: 36px;
    bottom: -28px;
}
#index .scrollBox a {
	padding-bottom: 52px;
	color: #b9b9b9;
	font-size: 0.8rem;
	letter-spacing: 0.08em;
	writing-mode: vertical-rl;
	transition: all 0.2s ease-out;
	transition-property: opacity;
	background: url(img/common/icon03.png) no-repeat center bottom / 6px;
}
#index .scrollBox a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	#index .mainVisual {
		margin: 0 0 56px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#index .mainVisual .imgList {
		margin: 0 0 76px;
		font-size: 0;
	}
	#index .mainVisual .imgList li .img01 {
		width: 80.8vw;
		aspect-ratio: 101 / 70;
	}
	#index .scrollBox {
		right: 20px;
	}
	#index .scrollBox a {
		font-size: 0.7rem;
		font-weight: normal;
	}
	#index .scrollBox {
		right: 14px;
		bottom: -2px;
	}

}

.animate img.lineanimate {
	clip-path: inset(0 100% 0 0);
}
.animate.isShow  img.lineanimate {
	transition: clip-path 1s 0.16s cubic-bezier(0, 0.24, 0.194, 1);
	clip-path: inset(0 0 0 0);
}
.animate img.fadeImg {
	opacity: 0;
}
.animate.isShow img.fadeImg {
	transition: opacity .8s;
	transition-delay: .5s;
	opacity: 1;
}
.jsImgBox2,
.jsImgBox {
	position: relative;
}
.jsImgBox img:not(:first-child) {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.animate.fadeUp,
.animate .jsImgBox2 .fadeImg,
.animate .jsImgBox .fadeImg {
	opacity: 0;
	transform: translateY(15px);
}
span.animate.fadeUp {
	display: inline-block;
}
.animate.isShow.fadeUp,
.animate.isShow .jsImgBox2 .fadeImg,
.animate.isShow .jsImgBox .fadeImg {
	opacity: 1;
	transition: all 1.8s cubic-bezier(.165,.84,.44,1);
	transform: translateY(0);
	transition-delay: .5s;
	transition-property: transform, opacity;
}
.dely01 {
	transition-delay: .7s !important;
}
.dely02 {
	transition-delay: .9s !important;
}
#index .dreamLook .imgList {
	margin: 0 calc(607px - 50vw);
}
#index .dreamLook .imgList p,
#index .dreamLook .imgList .img02 {
	opacity: 0;
	transition: .5s;
}
@keyframes dreamLookshow {
	20%,80% {
		opacity: 1;
	}
	0%,100% {
		opacity: 0;
	}
}
#index .dreamLook .imgList .slick-current .img02 {
	opacity: 1;
	transition: 1s;
	transition-delay: 1s;
	transition-property: opacity;
}
#index .dreamLook .imgList .slick-track {
	transition-delay: .3s !important;
}
#index .dreamLook .imgList .slick-center p {
	opacity: 1;
	transition: 1s;
	transition-delay: 1s;
	transition-property: opacity;
}
#index .dreamLook .imgList a:hover .img02 {
	animation-play-state:paused;
}
#index .dreamLook .imgList a:hover p {
	animation-play-state:paused;
}

@media all and (max-width: 896px) {
	#index .dreamLook .imgList {
		margin: 0 -20px;
	}
	#index .dreamLook .imgList li {
		margin: 0 25px !important;
		width: 60vw !important;
		box-sizing: border-box;
	}
}
.comPopList01 li .bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}
/* fixedLink */
.fixedLink {
	position: fixed;
	right: 0;
	z-index: 998;
}
.fixedLink a {
	display: flex;
	align-items: center;
	color: #fff;
	font-size: 2.4rem;
	letter-spacing: 0.06em;
	box-sizing: border-box;
	background: url(img/common/icon_arrow03.png) #74633d no-repeat center bottom 22px / 9px;
}
.fixedLink a.greenBg {
	background-color: #80AE3F;
}
.fixedLink a:hover {
	opacity: 0.9;
}
@media all and (min-width: 897px) {
	.fixedLink {
		top: 50%;
		transform: translateY(-50%);
	}
	.fixedLink a {
		padding: 21px 0 0;
		width: 73px;
		height: 324px;
		writing-mode: vertical-rl;
	}
}
@media all and (max-height: 570px) and (min-width: 897px) {
	.fixedLink {
		top: 143px;
		transform: none;
	}
}
@media all and (max-width: 896px) {
	.fixedLink {
		display: none;
		top: auto;
		bottom: 15px;
		width: 100%;
	}
	.fixedLink a {
		margin: 0 auto;
		width: 233px;
		height: 44px;
		font-size: 1.5rem;
		justify-content: center;
		background-position: right 10px center;
	}
}
.wpcf7-list-item {
	display: block !important;
	margin: 0 0 8px !important;
}
.wpcf7-form-control-wrap + .wpcf7-form-control-wrap {
	display: block !important;
	margin-top: 22px !important;
}

/* comBtn */
.comBtn {
	text-align: center;
}
.comBtn a {
	margin: 0 auto;
	width: 455px;
	height: 95px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 2.4rem;
	background-color: #75633E;
}
.comBtn a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.comBtn a {
		width: auto;
		height: 60px;
		font-size: 2rem;
	}
}
/* comBtn02 */
.comBtn02 {}
.comBtn02 a {
	width: 389px;
	height: 66px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	color: #786436;
	font-size: 1.6rem;
	letter-spacing: .08em;
	font-feature-settings: "palt";
	background-color: white;
	transition: opacity .3s ease;
}
.comBtn02 a .arrow {
	margin: 0;
	width: 8px;
	height: 11px;
	overflow: hidden;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	border: none;
}
.comBtn02 a .arrow img {
	display: block;
}
.comBtn02 a .arrow::before,
.comBtn02 a .arrow::after {
	display: none;
}
@media all and (min-width: 897px) {
	.comBtn02 a:hover {
		opacity: .7;
	}
}
@media all and (max-width: 896px) {
	.comBtn02 {
		width: 100%;
	}
	.comBtn02 a {
		width: 100%;
		height: 61px;
		font-size: 1.5rem;
	}
	.comBtn02 a .arrow {
		right: 20px;
	}
}

#thanks #main p {
	margin-bottom: 80px;
	text-align: center;
	font-size: 2rem;
	line-height: 1.7;
	letter-spacing: 0.06em;
}
@media all and (max-width: 896px) {
	#thanks #main p {
		font-size: 1.7rem;
	}
}
#loading {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #FAFAF8;
	z-index: 99999;
}

.notLink {
	pointer-events: none;
	opacity: 0.25;
}

.wpcf7-spinner {
	display: block !important;
	margin: 10px auto 0 !important;
}
.wpcf7-not-valid-tip {
	font-size: 1.3rem !important;
	position: absolute;
	left: 0;
    top: 100%;
}
.maildd .wpcf7-not-valid-tip {
	position: relative;
}
.maildd .wpcf7-form-control-wrap {
	vertical-align: text-top;
}
.maildd .at {
	vertical-align: -14px;
}
.wpcf7 form.invalid .wpcf7-response-output {
	border: none !important;
	text-align: center !important;
	color: #dc3232 !important;
}
.wpcf7-form-control-wrap {
	display: inline-block !important;
}
@media all and (max-width: 896px) {
	.maildd .wpcf7-form-control-wrap {
		width: calc(50% - 25px);
		display: inline-block !important;
	}
	.wpcf7-not-valid-tip {
		position: relative;
	}
	.wpcf7-form-control-wrap {
		display: block !important;
	}
	.zipdd .wpcf7-form-control-wrap,
	.join .wpcf7-form-control-wrap {
		display: inline-block !important;
	}
	.zipdd .wpcf7-not-valid-tip,
	.join .wpcf7-not-valid-tip {
		position: absolute;
	}
}

/* headLine06 */
.headLine06 {
	margin-bottom: 33px;
	text-align: center;
	font-size: 2.4rem;
	letter-spacing: 0.1em;
}
.headLine06 small {
	font-size: 1.8rem;
}
@media all and (max-width: 896px) {
	.headLine06 {
		margin-bottom: 15px;
		font-size: 2.6rem;
	}
	.headLine06 small {
		font-size: 2rem;
	}
}
/* wp-pagenavi */
.wp-pagenavi {
	margin: 89px auto 0;
	font-size: 0;
	width: -moz-fit-content;
	width: fit-content;
	clear: both;
	display: flex;
	position: relative;
	justify-content: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
	color: #000;
	font-size: 1.6rem;
	display: inline-block;
	text-decoration: none;
	padding: 1px 4px;
	margin: 0 14px;
	border-bottom: 2px solid transparent;
}
.wp-pagenavi a:hover {
	opacity: 0.6;
}
.wp-pagenavi span.current {
	border-color: currentColor;
	color: #75633E;
}
.wp-pagenavi .pages {
	display: none;
}
.wp-pagenavi .extend {
	display: none;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
#news .newsDetail .wp-pagenavi a[rel="prev"],
#news .newsDetail .wp-pagenavi a[rel="next"] {
	font-size: 0;
	width: 10px;
	height: 12px;
	position: absolute;
	left: -60px;
	top: 8px;
	background: url(img/common/icon_arrow04_left.png) no-repeat center center / 8px;
}
#news .newsDetail .wp-pagenavi a[rel="prev"],
#news .newsDetail .wp-pagenavi a[rel="next"] {
	left: -128px;
}
.wp-pagenavi .previouspostslink {
	margin-left: 0;
}
.wp-pagenavi .nextpostslink,
#news .newsDetail .wp-pagenavi a[rel="next"]  {
	left: auto;
	right: -60px;
	background-image: url(img/common/icon_arrow04_right.png);
}
#news .newsDetail .wp-pagenavi a[rel="next"] {
	right: -128px;
}

.wp-pagenavi .list {
	padding-left: 0;
	padding-right: 0;
	color: #75633E;
	border-bottom: 2px solid #75633E;
}
@media all and (max-width: 896px) {
	.wp-pagenavi {
		margin-top: 43px;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		margin: 0 10px;
		font-size: 1.7rem;
	}
	.wp-pagenavi .previouspostslink {
		left: -50px;
		background-size: 6px;
	}
	.wp-pagenavi .nextpostslink {
		left: auto;
		right: -50px;
		background-size: 6px;
	}
	.wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink, .wp-pagenavi a[rel="prev"], .wp-pagenavi a[rel="next"] {
		top: 10px;
	}
	#news .newsDetail .wp-pagenavi a[rel="prev"], #news .newsDetail .wp-pagenavi a[rel="next"] {
		left: -89px;
	}
	#news .newsDetail .wp-pagenavi a[rel="next"] {
		left: auto;
		right: -89px;
	}
}



/*------------------------------------------------------------
	news
------------------------------------------------------------*/
#news {
	background: url(img/news/bg.png) no-repeat right top / 626px,#FAFAF8;
}
#news .headLine01 {
	margin-bottom: 58px;
}
#news #main .content {
	padding-bottom: 155px;
	background: url("img/common/line03.png") repeat-x left bottom / auto 1px;
}
#news .categoryBox {
	margin-bottom: 72px;
	padding: 37px 0 33px;
	background: url("img/common/line03.png") repeat-x left top / auto 1px,url("img/common/line03.png") repeat-x left bottom/ auto 1px;
}
#news .cateList {
	margin: 0 auto;
	max-width: 800px;
	text-align: center;
}
#news .cateList li {
	margin-bottom: 20px;
	display: inline-block;
	line-height: 1;
	border-right: 1px dashed #61553F;
}
#news .cateList li.last {
	border: none;
}
#news .cateList li:last-child {
	border: none;
}
#news .cateList a {
	padding: 0 22px;
	color: #61553F;
	font-size: 1.6rem;
	display: inline-block;
	line-height: 1;
}
#news .cateList a:hover {
	opacity: 0.6;
}
#news .comNewsList li:not(:last-child) {
	margin-bottom: 40px;
}
#news .comNewsList .textBox {
	padding: 16px 110px 0 0;
}
#news .comNewsList .date {
	margin-bottom: 3px;
}
#news .comNewsList h4 {
	line-height: 1.4;
	transition: 0.3s;
	max-height: 3em;
}
#news .relatedCase {
	padding-top: 50px;
}
#news .relatedCase .headLine06 {
	margin-bottom: 42px;
	color: #76633C;
}
@media all and (max-width: 896px) {
	#news {
		background-size: 267px;

	}
	#news .headLine01 {
		margin-bottom: 75px;
	}
	#news #main .content {
		padding: 0 0 75px;
		margin: 0 20px;
	}
	#news .categoryBox {
		margin-bottom: 46px;
		padding: 34px 0 33px;
	}
	#news .cateList {
		margin: 0 -10px;
		max-width: inherit;
	}
	#news .cateList li {
		margin-bottom: 12px;
	}
	#news .cateList a {
		padding: 0 14px;
		font-size: 1.4rem;
	}
	#news .comNewsList li:not(:last-child) {
		margin-bottom: 25px;
	}
	#news .comNewsList .textBox {
		padding: 0 14px 10px 0;
	}
	#news .relatedCase {
		padding: 32px 20px 0;
	}
	#news .relatedCase .headLine06 {
		margin-bottom: 35px;
		letter-spacing: 0.05em;
	}
}
@media all and (max-width: 374px) {
	#news .comNewsList .textBox {
		padding-right: 4px;
	}
}
#news #main .newsDetail .content {
	padding-bottom: 80px;
}
#news .newsDetail article {
	margin: 0 auto;
	max-width: 750px;
}
#news .newsDetail .headLine01 {
	margin-bottom: 70px;
}
#news .topTtl {
	margin-bottom: -30px;
}
#news .topTtl .date {
	margin-bottom: 10px;
	color: #B9B9B9;
	font-size: 1.2rem;
	letter-spacing: 0.08em;
}
#news .topTtl .date .tag {
	margin-left: 12px;
	padding-left: 15px;
	display: inline-block;
	line-height: 1;
	border-left: 1px dashed currentColor;
}
#news .topTtl .headLine02 {
	letter-spacing: 0.18em;
	text-align: left;
}
#news .detailBox h1 {
	margin: 85px 0 18px;
	padding-bottom: 5px;
	color: #000;
	font-weight: 400;
	font-size: 2.4rem;
	letter-spacing: 0.18em;
	border-bottom: 1px dashed #B9B9B9;
}
#news .detailBox h3 {
	margin: 20px 0 12px;
	color: #75633E;
	font-size: 1.8rem;
	letter-spacing: 0.06em;
}
#news .detailBox h2 {
	margin: 38px 0 28px;
	padding: 0 10px 2px;
	color: #FFF;
	font-size: 2.2rem;
	letter-spacing: 0.16em;
	background: #75633E;
}
#news .detailBox h4,
#news .detailBox h5,
#news .detailBox p {
	margin: 0 0 35px;
	font-size: 1.6rem;
	letter-spacing: 0.06em;
	line-height: 2;
	font-weight: 400;
	text-align: justify;
}
#news .detailBox h4 span {
	color: #E66C00;
}
#news .detailBox h5 span {
	background-color: #f8e9d9;
}
#news .detailBox p img {
	padding: 9px 0 5px;
}
#news .detailBox a {
	color: #75633E;
	text-decoration: underline;
}
#news .detailBox ol {
	margin: 60px 0 30px;
	counter-reset: num;
}
#news .detailBox ol li {
	padding: 0 0 21px 1.7em;
	counter-increment: num;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.625;
	position: relative;
}
#news .detailBox ol li:last-child {
	padding-bottom: 0;
}
#news .detailBox ol li::before {
	position: absolute;
	left: 0;
	top: 0;
	color: #75633E;
	font-size: 1.6rem;
	line-height: 1.625;
	content: counter(num)".";
}
#news .detailBox ul {
	margin: 70px 0 35px;
}
#news .detailBox ul li {
	padding: 0 0 18px 25px;
	font-size: 1.6rem;
	line-height: 1.625;
	font-weight: 500;
	position: relative;
}
#news .detailBox ul li::before {
	position: absolute;
	left: 0;
	top: 7px;
	width: 15px;
	height: 15px;
	border-radius: 15px;
	background-color: #E66C00;
	content: '';
}
#news .detailBox .photoList {
	margin: 0 0 41px;
	display: flex;
	flex-wrap: wrap;
}
#news .detailBox .photoList + h1 {
	margin-top: 95px;
}
#news .detailBox .photoList li {
	margin: 0 24px 24px 0;
	padding: 0;
	color: #9B9B9B;
	font-size: 1.2rem;
	line-height: 18px;
	font-weight: normal;
	width: calc((100% - 48px)/3);
}
#news .detailBox .photoList li::before {
	display: none;
}
#news .detailBox .photoList li:nth-child(3n) {
	margin-right: 0;
}
#news .detailBox .photoList img {
	width: 100%;
}
#news .detailBox .photoList span {
	display: block;
	margin: 12px 0 -27px;
}
#news .detailBox pre,
#news .detailBox pre p {
	margin: 0;
	font-size: 1.4rem;
	line-height: 30px;
	letter-spacing: 0.06em;
	word-break: break-all;
	white-space: pre-wrap;
	font-family: 'A-OTF-MidashiGoPr5-MB31';
}
#news .detailBox pre {
	margin: 65px 0;
	padding: 20px 40px;
	border: 1px solid #000
}
#news .detailBox pre:last-child {
	margin-bottom: 0;
}
@media all and (min-width: 897px) {
	#news .detailBox a:hover {
		text-decoration: none;
	}
}
@media all and (max-width: 896px) {
	#news #main .newsDetail .content {
		margin: 0 30px;
	}
	#news .newsDetail .headLine01 {
		margin-bottom: 66px;
	}
	#news .newsDetail .topTtl .date {
		margin-bottom: 7px;
	}
	#news .newsDetail .topTtl .headLine02 {
		margin-bottom: 95px;
		font-size: 3rem;
		line-height: 1.4;
		letter-spacing: 0.08em;
	}
	#news .detailBox h1 {
		margin: 89px 0 14px;
		padding-bottom: 11px;
		font-size: 2.5rem;
		line-height: 1.2;
		letter-spacing: 0.16em;
	}
	#news .detailBox h4,
	#news .detailBox h5,
	#news .detailBox p {
		font-size: 1.4rem;
		line-height: calc(32/14);
	}
	#news .detailBox .photoList {
		margin-bottom: 33px;
		justify-content: space-between;
	}
	#news .detailBox .photoList.col-1 {
		display: block;
	}
	#news .detailBox .photoList.col-1 li {
		width: auto;
		display: flex;
		align-items: center;
	}
	#news .detailBox .photoList.col-1 img {
		width: 148px;
		height: 111px;
		object-fit: cover;
	}
	#news .detailBox .photoList.col-1 span {
		margin: 0 0 9px 20px;
		line-height: calc(18 / 12);
		letter-spacing: 0.06em;
	}
	#news .detailBox .photoList li {
		margin: 0 0 19px;
		width: calc(50% - 10px);
	}
	#news .detailBox .photoList span {
		margin-bottom: 0;
	}
	#news .detailBox h2 {
		margin: 22px 0 14px;
	}
	#news .detailBox h3 {
		margin: 18px 0 7px;
		letter-spacing: 0.06em;
	}
	#news .detailBox pre {
		padding: 20px;
	}
}
.mfp-hide {
	display: none;
}

@media all and (min-width: 1367px) {
	html {
		font-size: 0.732vw;
	}
	.content {
		max-width: 88.77%;
	}
	.headLine01 .jp {
		margin-bottom: 0.4rem;
	}

	#privacy .headLine01 {
		margin-bottom: 7.9rem;
	}
	#privacy .content {
		max-width: 54.98%;
	}
	#privacy #main .notice {
		margin-bottom: 4.7rem;
		padding-bottom: 4.2rem;
	}
	#privacy dl dt {
		margin-bottom: 1.3rem;
	}
	#privacy dl dd {
		margin-bottom: 4.5rem;
	}

	#news {
		background: url(img/news/bg.png) no-repeat right top / 62.6rem,#FAFAF8;
	}
	#news .headLine01 {
		margin-bottom: 5.8rem;
	}
	#news #main .content {
		padding-bottom: 15.5rem;
		background: url("img/common/line03.png") repeat-x left bottom / auto .1rem;
	}
	#news .categoryBox {
		margin-bottom: 7.2rem;
		padding: 3.7rem 0 3.3rem;
		background: url("img/common/line03.png") repeat-x left top / auto .1rem,url("img/common/line03.png") repeat-x left bottom/ auto .1rem;
	}
	#news .cateList {
		margin: 0 auto;
		max-width: 80rem;
		text-align: center;
	}
	#news .cateList li {
		margin-bottom: 2rem;
		display: inline-block;
		line-height: 1;
		border-right: .1rem dashed #61553F;
	}
	#news .cateList li.last {
		border: none;
	}
	#news .cateList li:last-child {
		border: none;
	}
	#news .cateList a {
		padding: 0 2.2rem;
		color: #61553F;
		font-size: 1.6rem;
		display: inline-block;
		line-height: 1;
	}
	#news .cateList a:hover {
		opacity: 0.6;
	}
	#news .comNewsList li:not(:last-child) {
		margin-bottom: 4rem;
	}
	#news .comNewsList .textBox {
		padding: 1.6rem 11rem 0 0;
	}
	#news .comNewsList .date {
		margin-bottom: .3rem;
	}
	#news .comNewsList h4 {
		line-height: 1.4;
		transition: 0.3s;
		max-height: 3em;
	}
	#news .relatedCase {
		padding-top: 5rem;
	}
	#news .relatedCase .headLine06 {
		margin-bottom: 4.2rem;
		color: #76633C;
	}

	#news #main .newsDetail .content {
		padding-bottom: 8rem;
	}
	#news .newsDetail article {
		margin: 0 auto;
		max-width: 75rem;
	}
	#news .newsDetail .headLine01 {
		margin-bottom: 7rem;
	}
	#news .topTtl {
		margin-bottom: -3rem;
	}
	#news .topTtl .date {
		margin-bottom: 1rem;
		color: #B9B9B9;
		font-size: 1.2rem;
		letter-spacing: 0.08em;
	}
	#news .topTtl .date .tag {
		margin-left: 1.2rem;
		padding-left: 1.5rem;
		display: inline-block;
		line-height: 1;
		border-left: .1rem dashed currentColor;
	}
	#news .topTtl .headLine02 {
		letter-spacing: 0.18em;
		text-align: left;
	}
	#news .detailBox h1 {
		margin: 8.5rem 0 1.8rem;
		padding-bottom: .5rem;
		color: #000;
		font-weight: 400;
		font-size: 2.4rem;
		letter-spacing: 0.18em;
		border-bottom: .1rem dashed #B9B9B9;
	}
	#news .detailBox h3 {
		margin: 2rem 0 1.2rem;
		color: #75633E;
		font-size: 1.8rem;
		letter-spacing: 0.06em;
	}
	#news .detailBox h2 {
		margin: 3.8rem 0 2.8rem;
		padding: 0 1rem .2rem;
		color: #FFF;
		font-size: 2.2rem;
		letter-spacing: 0.16em;
		background: #75633E;
	}
	#news .detailBox h4,
	#news .detailBox h5,
	#news .detailBox p {
		margin: 0 0 3.5rem;
		font-size: 1.6rem;
		letter-spacing: 0.06em;
		line-height: 2;
		font-weight: 400;
		text-align: justify;
	}
	#news .detailBox h4 span {
		color: #E66C00;
	}
	#news .detailBox h5 span {
		background-color: #f8e9d9;
	}
	#news .detailBox p img {
		padding: .9rem 0 .5rem;
	}
	#news .detailBox a {
		color: #75633E;
		text-decoration: underline;
	}
	#news .detailBox ol {
		margin: 6rem 0 3rem;
		counter-reset: num;
	}
	#news .detailBox ol li {
		padding: 0 0 2.1rem 1.7em;
		counter-increment: num;
		font-size: 1.5rem;
		font-weight: 500;
		line-height: 1.625;
		position: relative;
	}
	#news .detailBox ol li:last-child {
		padding-bottom: 0;
	}
	#news .detailBox ol li::before {
		position: absolute;
		left: 0;
		top: 0;
		color: #75633E;
		font-size: 1.6rem;
		line-height: 1.625;
		content: counter(num)".";
	}
	#news .detailBox ul {
		margin: 7rem 0 3.5rem;
	}
	#news .detailBox ul li {
		padding: 0 0 1.8rem 2.5rem;
		font-size: 1.6rem;
		line-height: 1.625;
		font-weight: 500;
		position: relative;
	}
	#news .detailBox ul li::before {
		position: absolute;
		left: 0;
		top: .7rem;
		width: 1.5rem;
		height: 1.5rem;
		border-radius: 1.5rem;
		background-color: #E66C00;
		content: '';
	}
	#news .detailBox .photoList {
		margin: 0 0 4.1rem;
		display: flex;
		flex-wrap: wrap;
	}
	#news .detailBox .photoList + h1 {
		margin-top: 9.5rem;
	}
	#news .detailBox .photoList li {
		margin: 0 2.395rem 2.4rem 0;
		padding: 0;
		color: #9B9B9B;
		font-size: 1.2rem;
		line-height: 1.8rem;
		font-weight: normal;
		width: calc((100% - 4.8rem)/3);
	}
	#news .detailBox .photoList li::before {
		display: none;
	}
	#news .detailBox .photoList li:nth-child(3n) {
		margin-right: 0;
	}
	#news .detailBox .photoList img {
		width: 100%;
	}
	#news .detailBox .photoList span {
		display: block;
		margin: 1.2rem 0 -2.7rem;
	}
	#news .detailBox pre,
	#news .detailBox pre p {
		margin: 0;
		font-size: 1.4rem;
		line-height: 3rem;
		letter-spacing: 0.06em;
		word-break: break-all;
		white-space: pre-wrap;
		font-family: 'A-OTF-MidashiGoPr5-MB31';
	}
	#news .detailBox pre {
		margin: 6.5rem 0;
		padding: 2rem 4rem;
		border: .1rem solid #000
	}
	#news .detailBox pre:last-child {
		margin-bottom: 0;
	}
}

@media all and (min-width: 2000px) {
	html {
		font-size: 91.1%;
	}
}

@media all and (min-width: 1367px) {
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
	#gHeader {
		margin-bottom: 2.6rem;
	}
	#gHeader .hInner {
		padding: 5.9rem 1.2rem 5.9rem 6.4rem;
	}
	#gHeader .menu {
		margin-top: .5rem;
		width: 2.9rem;
		right: 7rem;
		top: 6rem;
	}
	#gHeader .menu .lineBox {
		margin-bottom: 2.4rem;
	}
	#gHeader .menu .lineBox .line:nth-child(2) {
		margin-top: 1.3rem;
	}
	#gHeader .menu.on .lineBox .line {
		margin-top: .6rem;
	}
	#gHeader .menu.on .lineBox .line:nth-child(2) {
		margin-top: .6rem;
	}
	#gHeader .menu .close {
		margin-left: -.2rem;
	}
	#gHeader .menu p {
		margin-left: .1rem;
	}
	body.fixed #gHeader {
		height: 18rem !important;
	}
	.menuBox {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: url(img/common/menu_bg01.png) no-repeat right top / 68.5rem,
		url(img/common/menu_bg02.png) no-repeat left bottom / 41.2rem;
		background-color: #fafaf8;
		z-index: 1000;
		overflow-y: scroll;
	}
	.menuBox .logo a {
		display: block;
	}
	.menuBox .topBox {
		margin: 0 auto 11.8rem;
		max-width: 124.0rem;
		display: flex;
		justify-content: space-between;
	}
	.menuBox .content {
		margin: 0 auto 0;
		max-width: 74.6rem;
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	.menuBox .hNav {
		margin: 5.2rem 0 2.2rem;
		display: flex;
		flex-wrap: wrap;
		gap: 0 4rem;
	}
	.menuBox .hNav li a {
		margin: 0 0 2.2rem 0;
		display: block;
		color: #61553E;
		font-size: 2.095rem;
	}
	.menuBox .hNav li .last {
		margin-right: 0;
	}
	.menuBox .navUl {
		margin: 0 -.4rem 2.2rem -1.4rem;
		padding: 3.1rem 0 3.6rem 1.6rem;
		display: flex;
		flex-wrap: wrap;
		background: url("img/common/line03.png") repeat-x left top / auto .1rem,url("img/common/line03.png") repeat-x left bottom/ auto .1rem;
	}
	.menuBox .navUl li a {
		margin-right: 4.5rem;
		display: block;
		color: #61553E;
		font-size: 1.2rem;
		letter-spacing: 0.08em;
		font-feature-settings: "palt";
	}
	.menuBox .navUl li a.last {
		margin-right: 0;
	}
	.menuBox .contact p {
		margin-bottom: 1.4rem;
		color: #61553E;
		font-size: 1.2rem;
		letter-spacing: 0.16em;
	}
	.menuBox .contact .InnerBox {
		display: flex;
		flex-wrap: wrap;
		color: #61553E;
	}
	.menuBox .contact .telBox {
		width: 38.4rem;
	}
	.menuBox .contact .telBox img {
		margin: 1.2rem 1.0rem 0 -.2rem;
		width: 3.8rem;
	}
	.menuBox .contact .telBox .tel a {
		color: #61553E;
		display: inline-block;
		font-size: 3.8rem;
		letter-spacing: 0.12em;
	}
	.menuBox .contact .telBox span {
		font-size: 1.4rem;
		letter-spacing: 0.09em;
		display: inline-block;
		line-height: 1;
		font-feature-settings: "palt";
	}
	.menuBox .contact .line a {
		margin-top: .2rem;
		padding: 1.8rem 1.0rem 1.8rem 7.3rem;
		width: 25.0rem;
		display: block;
		color: #FFF;
		font-size: 1.2rem;
		letter-spacing: 0.08em;
		font-feature-settings: "palt";
		background: url("img/common/line_bg.png") no-repeat left 4.1rem center / 2.0rem;
		background-color: #76633C;
		box-sizing: border-box;
	}
	.menuBox .contact .ins a {
		width: 2.6rem;
	}
	/*------------------------------------------------------------
        フッター
    ------------------------------------------------------------*/
	#gFooter {
		padding: 11.1rem 0 6.8rem;
	}
	#gFooter .fInner {
		padding: 0 1rem;
		max-width: 92rem;
	}
	#gFooter .box01 {
		margin-bottom: 7rem;
	}
	#gFooter .box01 .fLogo {
		margin: 0 0 1.6rem 1.4rem;
	}
	#gFooter .box01 .imgList li:not(:last-child) {
		margin-bottom: .8rem;
	}
	#gFooter .box01 .imgList li {
		width: 45.8rem;
	}
	#gFooter .box02 {
		margin-bottom: 3.3rem;
	}
	#gFooter .box02 .insBox {
		margin-top: .3rem;
	}
	#gFooter .box02 .insList {
		margin-bottom: .9rem;
	}
	#gFooter .box02 .insLink a .img {
		margin-right: .7rem;
	}
	#gFooter .box02 .telBox .notice {
		margin-bottom: .7rem;
	}
	#gFooter .box02 .telBox .tel {
		margin-bottom: 1rem;
	}
	#gFooter .box02 .telBox .tel .img {
		margin: 0 1rem .2rem -.2rem;
		height: 2.3rem;
	}
	#gFooter .box03 .linkBox {
		margin: 0.4rem 0.5rem -0.3rem 0;
	}
	#gFooter .box03 .linkList:not(:last-child) {
		margin-right: 4.3rem;
	}
	#gFooter .box03 .linkList.second {
		margin-right: 4.1rem;
	}
	#gFooter .box03 .linkList.third {
		margin-right: 3.3rem;
	}
	#gFooter .box03 .linkList li {
		margin-bottom: 0.6rem;
	}
	/*------------------------------------------------------------
        common
    ------------------------------------------------------------*/
	.content {
		padding: 0 1.4rem;
		max-width: 121.4rem;
	}
	.content.sml {
		max-width: 92rem;
	}
	/* headLine01 */
	.headLine01 {
		margin: 0 6.5rem 9.3rem;
	}
	.headLine01 .jp {
		margin-bottom: .4rem;
	}
	.headLine01 .tag {
		min-width: 10.8rem;
	}
	.headLine02 {
		margin-bottom: 3.6rem;
	}
	.headLine03 {
		margin-bottom: 3rem;
	}
	.headLine04 {
		margin-bottom: 3.2rem;
	}

	/*------------------------------------------------------------
        works
    ------------------------------------------------------------*/
	#works {
		background: url(img/works/bg01.png) no-repeat right top / 28.7rem,
		url(img/works/bg02.png) no-repeat left 69.2rem / 24.7rem,#FAFAF8;
	}
	.worksTtl {
		margin-bottom: .1rem;
	}
	.worksTtl .ttl {
		margin-bottom: 1rem;
		padding: 1.4rem 0 1rem;
		border-bottom: .1rem solid #000;
		background: url(img/common/line01.png) repeat-x center top / .5rem;
	}
	.worksTtl .ttl img {
		width: 36.8rem;
	}
	.worksTtl.btmSml .ttl {
		padding: 1.2rem 0 0;
		background: url(img/common/line02.png) repeat-x center top / .5rem;
	}
	.worksTtl.btmSml .ttl img {
		width: 9.4rem;
	}
	#works .imgBox {
		padding: 4.6rem 2rem 4.6rem;
		border-bottom: .1rem solid #000;
	}
	#works .worksBox {
		padding-bottom: .2rem;
		border-bottom: .3rem solid #000;
	}
	#works .imgBox .comStarIcon {
		margin: 0 auto 3rem;
		width: 6.8rem;
	}
	.comStarIcon .img img {
		width: 3.1rem;
	}
	#works .imgBox h3 {
		margin-bottom: 2.5rem;
		padding-bottom: 2.4rem;
		border-bottom: .1rem solid #000;
	}
	.backLink {
		margin-top: 4.2rem;
	}
	#works .backTop {
		margin: 7.7rem 0 0;
	}
	#works .backTop .comStarIcon {
		margin-bottom: 1.7rem;
	}
	#works .backTop a {
		border-bottom: .2rem solid #756340;
	}
	/*------------------------------------------------------------
        concept
    ------------------------------------------------------------*/
	#concept {
		background: url(img/concept/bg01.png) no-repeat right top / 25.5rem,
		url(img/concept/bg02.png) no-repeat left 60.6rem / 28.8rem,#FAFAF8;
	}
	#concept .headLine01 {
		top: 20.7rem;
		width: calc(100% - 13rem);
	}
	#concept .headLine01 .jp {
		margin-bottom: -.2rem;
	}
	#concept .mainVisual {
		margin-bottom: 2rem;
	}
	#concept .mainImg {
		padding-top: 8rem;
	}
	#concept .mainImg img {
		width: 92.6rem;
	}
	#concept .mainVisual .imgTtl {
		bottom: 2rem;
	}
	#concept .imgTtl img {
		height: 5.3rem;
	}
	#concept .imgTtl .img01 {
		height: 6.7rem;
	}
	#concept .midTxt {
		margin-bottom: 2.5rem;
	}
	#concept .midTxt01 {
		margin-bottom: 6rem;
	}
	#concept .banner {
		margin: 3rem 0;
		padding: 2.3rem 0 1.5rem;
	}
	#concept .banner a {
		max-width: 87rem;
		background: url(img/common/arrow01.png) no-repeat right center / .9rem;
	}
	#concept .banner .text .line {
		background: url(img/concept/line.png) repeat-x center bottom / auto .3rem;
	}
	#concept .banner .ttl {
		margin-left: -.3rem;
		padding: 2rem 0 1rem .5rem;
		background: url(img/concept/ttl_bg.png) no-repeat left bottom / 26.4rem;
	}
	#concept .health {
		padding: 6.3rem 0 3.7rem;
	}
	#concept .health .imgTtl {
		margin-bottom: 6rem;
	}
	/* comImgBox */
	.smlBox .headLine03 {
		margin-bottom: 1.3rem;
	}
	/*------------------------------------------------------------
        event
    ------------------------------------------------------------*/
	#event {
		background: url(img/event/bg01.png) no-repeat right top / 31.3rem,
		url(img/event/bg02.png) no-repeat left 72.6rem / 34.1rem,#FAFAF8;
	}
	.comEventBox {
		margin: 0 auto 12.2rem;
		max-width: 92rem;
	}
	.comEventBox.lastItem {
		margin-bottom: 17.9rem;
	}
	.comEventBox::after {
		width: calc(100% + 29.4rem);
		left: -14.7rem;
		bottom: -6.1rem;
		border-bottom: .1rem dashed #b9b9b9;
	}
	.comEventBox h3 {
		padding: 1.6rem 4.2rem .5rem 4.2rem;
	}
	.comEventBox h3 span {
		margin-right: 2.3rem;
		padding: .2rem;
		width: 12.8rem;
		height: 3.4rem;
		vertical-align: .4rem;
	}
	.comEventBox .textBox {
		padding: .8rem 1rem 2.5rem 4.4rem;
		width: calc(100% - 23.8rem);
	}
	.comEventBox .textBox .dateTime {
		margin-bottom: 1.4rem;
		padding-bottom: 1.2rem;
		border-bottom: .1rem dashed #b9b9b9;
	}
	.comEventBox .textBox .dateTime .date {
		margin-bottom: -.8rem;
	}
	.comEventBox .textBox h4 {
		margin-left: .5rem;
	}
	.comEventBox .textBox h4.sml small {
		margin-bottom: 1rem;
	}
	.comEventBox .textBox h4 small {
		margin-bottom: .2rem;
	}
	.comEventBox .photoBox {
		width: 22.3rem;
		right: .1rem;
		bottom: -.9rem;
	}
	/*------------------------------------------------------------
        company
    ------------------------------------------------------------*/
	#company {
		background: #FAFAF8 url(img/company/bg01.png) no-repeat right top / 31.4rem;
	}
	#company .headLine01 {
		margin-bottom: 7.5rem;
	}
	#company .idea {
		padding-bottom: 9.3rem;
	}
	#company .headLine05 {
		margin-bottom: 4rem;
	}
	#company .idea .headLine02 {
		margin-bottom: 3.2rem;
	}
	#company .idea p {
		margin-bottom: 4.1rem;
	}
	#company .idea .img {
		width: 92rem;
	}
	#company .idea .img img {
		width: 66.2rem;
	}
	#company .speech {
		padding: 7rem 0 9.3rem;
	}
	#company .speech::before {
		top: -49.9rem;
		width: 34.9rem;
		height: 78.5rem;
	}
	#company .speech::after {
		bottom: -8.5rem;
		width: 34rem;
		height: 49.1rem;
		background: url(img/company/bg03.png) no-repeat right center / 24.8rem,
		url(img/company/bg04.png) no-repeat left bottom 11.5rem / 17.2rem;
	}
	#company .speech .headLine05 {
		margin-bottom: 7.5rem;
	}
	#company .speech .imgBox {
		padding-left: 0.3rem;
		max-width: 66.8rem;
	}
	#company .speech .imgBox .photoBox {
		margin-right: 4.7rem;
		width: 24.2rem;
	}
	#company .speech .imgBox .textBox {
		margin-top: -1.5rem;
		max-width: 38rem;
	}
	#company .speech .imgBox .ttl {
		margin-bottom: 2.2rem;
	}
	#company .speech .imgBox p {
		margin-left: .3rem;
	}
	#company .speech .imgBox p + p {
		margin-top: 2.5rem;
	}
	#company .speech .imgBox p.name {
		margin-top: 3.3rem;
	}
	#company .produce {
		padding: 8rem 0 4.3rem;
	}
	#company .produce .headLine05 {
		margin-bottom: 6.5rem;
	}
	#company .produce .img {
		margin: 0 auto 8rem;
		max-width: 92rem;
	}
	#company .produce .imgList {
		max-width: calc(82rem + 7.6rem);
	}
	#company .produce .imgList li {
		padding: 0 3.5rem 5.8rem;
	}
	#company .produce .imgList .photoBox {
		margin-bottom: 1.5rem;
	}
	#company .produce .imgList .ttl {
		margin-bottom: 1.2rem;
		padding-bottom: .9rem;
		border-bottom: .1rem dashed #B8B8B8;
	}
	#company .produce .imgList .ttl small {
		margin-bottom: 0.1rem;
	}
	#company .company {
		margin-bottom: -13rem;
		padding: 6.9rem 0 10.9rem;
	}
	#company .company .headLine05 {
		margin-bottom: 6.5rem;
	}
	#company .company .textList {
		max-width: 91.9rem;
		border-top: .1rem dashed #B8B8B8;
	}
	#company .company .textList dt,
	#company .company .textList dd {
		padding: 2.3rem 0 2.6rem;
	}
	#company .company .textList dt {
		margin-right: 3.2rem;
		width: 14rem;
	}
	#company .company .textList dd {
		width: calc(100% - 14rem - 3.2rem);
	}
	#company .company .textList dd::after {
		width: calc(100% + 14rem + 3.2rem);
		border-bottom: .1rem dashed #B8B8B8;
		left: calc(-14rem - 3.2rem);
	}
	#company .company .textList .mapLink {
		margin-left: 4.8rem;
	}

	/*------------------------------------------------------------
        event_detail
    ------------------------------------------------------------*/
	#event_detail {
		background: url(img/event/detail/bg01.png) no-repeat right top / 62.7rem,
		url(img/event/detail/bg02.png) no-repeat left 56.5rem / 33.8rem,#FAFAF8;
	}
	/* comDetailBox */
	.comDetailBox .headLine01 {
		margin: 0 1.4rem 5.5rem;
	}
	.comDetailBox .h2Ttl {
		margin: -3.3rem 0 2.3rem;
		border-top: .3rem solid #000;
	}
	.comDetailBox .h2Ttl .txt {
		margin: .2rem 0 0;
		padding: .8rem 0 1rem;
		border-top: .1rem solid #000;
		border-bottom: .1rem solid #000;
	}
	.comDetailBox .ttl01 {
		margin-bottom: 4.1rem;
	}
	.eventMainImg {
		margin: 0 auto 2.6rem;
		max-width: 91.8rem;
		height: 40rem;
	}
	.comDetailBox .ttl02 {
		margin-bottom: 8.3rem;
	}
	.comDetailBox .ttl02 .date {
		margin-top: 1.2rem;
	}
	.comStory .comStarIcon {
		margin-bottom: -.9rem;
		width: 7.6rem;
		height: 8.1rem;
	}
	.comDetailBox .ttl03 {
		margin-bottom: 3.2rem;
	}
	.comDetailBox .ttl03 .img {
		margin-bottom: 1.6rem;
	}
	.comDetailBox .ttl03 small {
		margin-bottom: 2.2rem;
	}
	.comStory p {
		max-width: 85rem;
	}
	.comStory .imgArea {
		margin: 9.6rem auto 11.8rem;
		padding: 5.1rem 0 5.7rem;
		max-width: 92rem;
		box-shadow: .4rem .4rem 1.2rem rgba(4, 0, 0, 0.15);
	}
	.comStory .imgArea::before,
	.comStory .imgArea::after {
		width: 24.6rem;
		height: 13.5rem;
		left: -8.5rem;
		top: -3.8rem;
	}
	.comStory .imgArea::after {
		width: 19.6rem;
		height: 16.2rem;
		left: auto;
		top: auto;
		right: -8.7rem;
		bottom: -4.3rem;
	}
	.comStory .imgArea .ttl {
		margin-bottom: 5.5rem;
	}
	.comStory .imgArea .photo + .photo {
		margin-top: 4.1rem;
	}
	.dreamLookList {
		margin: 11.8rem auto 8.5rem;
		max-width: 92rem;
	}
	.dreamLookList li {
		padding-top: .6rem;
		border-right: .1rem solid #231815;
	}
	.dreamLookList .dreamLookNum {
		margin-bottom: 1.7rem;
		padding-bottom: 1rem;
		background: url(img/event/detail/bg_img03.png) no-repeat center bottom / 18.2rem;
	}
	.dreamLookList .dreamLookNum .dreamLook {
		margin-right: 1.1rem;
	}
	.dreamLookList .ttl {
		margin-bottom: 1.1rem;
	}
	.dreamLookList p {
		padding: 0 3.5rem 0;
	}
	.comVoice {
		padding: 9.3rem 0 5.9rem;
		border-top: .1rem solid #000;
		border-bottom: .1rem solid #000;
	}
	.comVoice .imgBox01 {
		padding: 0 0 8.8rem;
		max-width: 92rem;
		border-bottom: .1rem solid #000;
	}
	.comVoice .imgBox01 .photoBox {
		margin: 0 auto 2.5rem;
		width: 47.3rem;
	}
	.comVoice .imgBox01 .ttl {
		margin-bottom: 2.3rem;
	}
	.comVoice .imgBox01 p {
		max-width: 36.9rem;
	}
	.comVoice .imgBox02 {
		padding: 5rem 0 0;
		max-width: 65rem;
	}
	.comVoice .imgBox02 .photoBox .photo {
		width: 12.3rem;
		height: 12.3rem;
	}
	.comVoice .imgBox02 .photoBox p {
		margin-top: .9rem;
	}
	.comVoice .imgBox02 > p {
		margin: 0 0 1.4rem 4.5rem;
	}
	.accessBox {
		margin-bottom: 5rem;
		padding: 3rem 1rem 4rem;
		background: #FFF;
	}
	.accessBox .ttlBox {
		max-width: 86rem;
	}
	.accessBox .ttlBox .img {
		margin: .5rem 2rem 0 0;
	}
	.accessBox .ttlBox .img img {
		width: 24.6rem;
	}
	.accessBox .dateTime .date {
		margin-bottom: -.6rem;
	}
	.accessBox .dateTime .time {
		margin-bottom: 1.3rem;
	}
	.accessBox .dateTime .access {
		margin-bottom: .8rem;
		min-width: 21.6rem;
	}
	.accessBox .comImgList02 {
		margin: 4rem auto 3rem;
	}
	#event_detail .content01 {
		max-width: 92rem;
	}
	.heartSec {
		margin-bottom: 4.5rem;
		padding: .7rem 6rem 3.7rem;
	}
	.heartSec .topImg {
		margin-bottom: 2.2rem;
		padding-bottom: 1rem;
		border-bottom: .1rem solid #231816;
	}
	.heartSec .title {
		margin-bottom: 2.5rem;
	}
	.heartSec .subBox .rBox .top {
		margin: -.9rem 0 .4rem;
	}
	.heartSec .subBox .rBox .top .img {
		margin-left: .7rem;
		vertical-align: -1.1rem;
		height: 1.9rem;
	}
	.heartSec .subBox .rBox .phoImg {
		margin: -2.4rem -1rem 0 -1.4rem;
	}
	.heartSec .btmBox .txtList li {
		padding: 0 .4rem;
	}
	.participation {
		margin-bottom: 4.6rem;
	}
	.participation .infoPart {
		padding: .4rem 6.2rem .7rem;
	}
	.participation h3 {
		margin-bottom: 1rem;
		padding-bottom: 1.4rem;
		border-bottom: .1rem solid #231816;
	}
	.participation h3 img {
		width: 3.2rem;
		margin: -1rem 1rem 0 0;
	}
	#event_detail .btmListUl {
		margin-bottom: 6.5rem;
	}
	#event_detail .btmListUl li {
		padding: 1.8rem 1rem 1rem 2rem;
	}
	#event_detail .btn a {
		width: 45.8rem;
		height: 9.6rem;
	}
	#event_detail .btn a:before {
		margin-top: -.6rem;
		right: 2.4rem;
		background-size: .9rem auto;
		width: .9rem;
		height: 1.2rem;
	}
	#event_detail .btn .small {
		margin-bottom: -.4rem;
	}
	/*------------------------------------------------------------
        privacy_policy
    ------------------------------------------------------------*/
	#privacy .content {
		max-width: 75.1rem;
	}
	#privacy .headLine01 {
		margin-bottom: 7.9rem;
	}
	#privacy #main .notice {
		margin-bottom: 4.7rem;
		padding-bottom: 4.2rem;
		border-bottom: .1rem dashed #B6B6B6;
	}
	#privacy dl dt {
		margin-bottom: 1.3rem;
	}
	#privacy dl dd {
		margin-bottom: 4.5rem;
	}
	#privacy #main dl + .notice {
		margin-top: 6.5rem;
		padding: 2.3rem 0 0;
		border-top: .1rem dashed #B6B6B6;
	}
	/*------------------------------------------------------------
        contact
    ------------------------------------------------------------*/
	#contact .headLine01 {
		margin-bottom: 7.5rem;
	}
	#contact #main > h3,
	#contact #main > .content > h3 {
		margin-bottom: 6.2rem;
	}
	#contact .mailForm {
		max-width: 85.8rem;
	}
	#contact .mailForm .notice {
		margin-bottom: 1.8rem;
	}
	#contact .mailForm dl {
		margin-bottom: 6.3rem;
		border-top: .1rem dashed #B6B6B6;
	}
	#contact .mailForm dt,
	#contact .mailForm dd {
		padding: 3rem 0 3.1rem;
	}
	#contact .mailForm dt {
		padding-top: 4.3rem;
		margin-right: 3.49rem;
		width: 16rem;
	}
	#contact .mailForm dt .must {
		margin-left: .6rem;
	}
	#contact .mailForm dd {
		width: calc(100% - 16rem - 3.5rem);
	}
	#contact .mailForm dd::after {
		width: calc(100% + 16rem + 3.5rem);
		left: calc(-16rem - 3.5rem);
		border-bottom: .1rem dashed #B6B6B6;
	}
	#contact .mailForm input::-webkit-input-placeholder,
	#contact .mailForm textarea::-webkit-input-placeholder {color: #BFBFBF;opacity:1;}
	#contact .mailForm input:-moz-placeholder,
	#contact .mailForm textarea:-moz-placeholder {color: #BFBFBF;opacity:1;}
	#contact .mailForm input::-moz-placeholder,
	#contact .mailForm textarea::-moz-placeholder {color: #BFBFBF;opacity:1;}
	#contact .mailForm input:-ms-input-placeholder,
	#contact .mailForm textarea:-ms-input-placeholder {color: #BFBFBF;opacity:1;}
	#contact .mailForm input[type="text"],
	#contact .mailForm input[type="tel"],
	#contact .mailForm textarea,
	#contact .mailForm select {
		padding: 1.6rem 2.1rem 1.6rem;
		width: 66.3rem;
		height: 5.5rem;
	}
	#contact .mailForm input[name="zip"],
	#contact .mailForm select,
	#contact .mailForm .hopeDateList input[type="text"] {
		width: 17.8rem;
	}
	#contact .mailForm .addressLink {
		margin-left: .9rem;
		width: 8.9rem;
		height: 5.5rem;
	}
	#contact .mailForm select,
	#contact .mailForm .hopeDateList input[type="text"] {
		background: url(img/common/icon_arrow02.png) #fff no-repeat right 1.6rem center / 1rem;
	}
	#contact .mailForm input[name="input_main_em01"],
	#contact .mailForm input[name="input_main_em02"] {
		width: 30.6rem;
	}
	#contact .mailForm .at {
		margin: 0 1.4rem;
	}
	#contact .mailForm .errorBox {
		margin-top: 1.4rem;
		padding: 1.5rem 2rem;
		min-height: 8.4rem;
	}
	#contact .mailForm .errorBox::after {
		border-width: 0 .6rem 1.2rem .6rem;
		left: 2.4rem;
		top: -1.2rem;
	}
	#contact .mailForm .errorBox .error strong {
		margin-top: -.5rem;
	}
	#contact .mailForm textarea {
		margin-bottom: -.7rem;
		width: 66.3rem;
		height: 19.6rem;
	}
	#contact .mailForm .agreeBox {
		padding-right: 1.4rem;
	}
	#contact .mailForm input[type="checkBox"] ~ span {
		padding: .2rem 0 .2rem 3rem;
		background: url(img/common/icon_check_box.png) no-repeat left center / 2.1rem;
	}
	#contact .mailForm .submit {
		margin-top: 7.6rem;
	}
	#contact .mailForm .submit li + li {
		margin-top: 1.6rem;
	}
	#contact .mailForm .submit input {
		width: 45.5rem;
		height: 9.5rem;
		background: url(img/common/icon_arrow03.png) #75633E no-repeat right 2.3rem center / .9rem;
	}
	/*------------------------------------------------------------
        index
    ------------------------------------------------------------*/
	#index .mainVisual {
		margin: -1.5rem 0 10.4rem;
	}
	#index .mainVisual .imgList .img01 {
		width: 81.4rem;
		height: 56rem;
	}
	#index .mainVisual .imgList .img01 span {
		left: -7.2rem;
		top: 33.7rem;
		width: 4.2rem;
	}
	#index .mainVisual .imgList .img02 {
		width: 26.8rem;
		height: 18.4rem;
		left: -7.8rem;
		bottom: -2rem;
	}
	#index .headLine01 {
		padding-left: 8rem;
		bottom: .5rem;
	}
	#index .headLine01 .jp {
		margin-bottom: .8rem;
	}
	#index .headLine01 .en {
		margin-left: .3rem;
	}
	#index .event {
		margin: 0 2.5rem 15.1rem;
	}
	#index .event .h3Ttl {
		margin-bottom: 5.2rem;
	}
	#index .event .h3Ttl .en {
		margin-bottom: -.1rem;
	}
	#index .event .h3Ttl .line {
		width: 38.8rem;
	}
	#index .event .h3Ttl .jp {
		margin-top: 1rem;
	}
	#index .event .imgBox {
		padding: 4.1rem 2rem 4.3rem;
		border-top: .1rem dashed #b9b9b9;
		border-bottom: .1rem dashed #b9b9b9;
	}
	#index .event .imgBox a {
		max-width: 96rem;
	}
	#index .sec01 .imgBox {
		padding: 0 3rem;
		max-width: 85.2rem;
	}
	#index .sec01 .imgBox .photoBox01 .img.img01 {
		left: -34rem;
		top: 13.7rem;
	}
	#index .sec01 .imgBox02 .photoBox01 .img.img01 {
		left: -31rem;
		top: 7.4rem;
	}
	#index .sec01 .imgBox .photoBox01 .img.img02 {
		bottom: -4.1rem;
		right: -3.4rem;
	}
	#index .sec01 .imgBox .innerBox {
		margin: -16.8rem 0 0 .3rem;
	}
	#index .sec01 .imgBox .photoBox01 .photo img {
		width: 100%;
	}
	#index .sec01 .imgBox .innerBox .photoBox02 img {
		width: 38.6rem;
	}
	#index .sec01 .imgBox .innerBox .textBox {
		margin-left: 6.7rem;
	}
	#index .sec01 .imgBox .innerBox p {
		margin-bottom: 5.7rem;
	}
	#index .sec01 .imgBox .innerBox .ttl {
		margin-bottom: 1.4rem;
	}
	#index .sec01 .imgBox + .imgBox {
		margin-top: 29.9rem;
	}
	#index .sec01 .imgBox.imgBox02 .innerBox {
		margin-top: -14.3rem;
	}
	#index .sec01 {
		margin-bottom: 26.7rem;
	}
	#index .sec01::before {
		top: -28.5rem;
		width: 34.7rem;
		height: 107.9rem;
	}
	#index .sec01::after {
		top: 59.5rem;
		width: 31.1rem;
		height: 85.3rem;
	}
	#index .dreamLook h3 {
		margin-bottom: 5.8rem;
		border-top: .3rem solid #000;
	}
	#index .dreamLook h3 .en {
		margin: .2rem 0 .6rem;
		padding: .8rem 0 1.1rem;
		border-top: .1rem solid #000;
		border-bottom: .1rem solid #000;
	}
	#index .dreamLook h3 .en img {
		width: 36.8rem;
	}
	#index .dreamLook .innerBox {
		border-bottom: .1rem solid #000;
	}
	#index .dreamLook .innerBox::after {
		height: .3rem;
		bottom: -.6rem;
	}
	#index .dreamLook .imgList {
		margin-bottom: .5rem;
		padding-bottom: 8.1rem;
	}
	#index .dreamLook .imgList .img01 {
		width: 50.5rem;
		height: 35.1rem;
	}
	#index .dreamLook .imgList .imgBox {
		margin-bottom: 8.1rem;
	}
	#index .dreamLook .imgList .img02 {
		left: -9.4rem;
		bottom: -7.3rem;
		width: 23.6rem;
		height: 16.8rem;;
	}
	#index .dreamLook .imgList p {
		max-width: 50.5rem;
		min-height: 5rem;
	}
	#index .dreamLook {
		margin-bottom: 10.6rem;
	}
	#index .dreamLook::before {
		top: -18.5rem;
		width: 41.5rem;
		height: 106.2rem;
	}
	#index .dreamLook::after {
		top: 1.8rem;
		width: 39.7rem;
		height: 93.4rem;
	}
	#index .news h3 {
		margin-bottom: 5.6rem;
	}
	#index .news .viewAll {
		margin: 2rem auto 5.7rem;
		max-width: 91.9rem;
	}
	.comBtn02 a .arrow {
		width: .8rem;
		height: 1.1rem;
	}
	.comBtn02 a .arrow img {
		width: 100%;
	}
	.comNewsList {
		margin: 0 auto .7rem;
		max-width: 91.9rem;
	}
	.comNewsList li {
		border-bottom: .1rem dashed #B9B9B9;
	}
	.comNewsList .textBox {
		padding: 2.8rem 11rem 0 0;
	}
	.comNewsList .date {
		margin-bottom: -.2rem;
	}
	.comNewsList .tag {
		margin-left: 1.5rem;
		padding-left: 1.5rem;
		border-left: .1rem dashed currentColor;
	}
	.comNewsList h4 {
		margin-left: 1.4rem;
	}
	.comNewsList .photoBox {
		margin-bottom: -.1rem;
		width: 14.6rem;
		height: 12rem;
	}
	.newsLink {
		max-width: 92rem;
	}
	.newsLink::after {
		width: calc((100% - 2rem)/3);
	}
	.newsLink li {
		width: calc((100% - 2.6rem)/3);
	}
	.newsLink a {
		padding: 2rem 10rem 2rem 2.6rem;
		min-height: 16.3rem;
	}
	.newsLink .img {
		right: -8.5rem;
		width: 26rem;
	}
	.newsLink p {
		margin: 0 -1rem .5rem 0;
	}
	.newsLink .comLink .arrow {
		width: 3.3rem;
	}
	#index .news {
		margin-bottom: 12.6rem;
	}
	/*------------------------------------------------------------
        consulation
    ------------------------------------------------------------*/
	#consultation .headLine01 {
		width: calc(100% - 13rem);
		top: 19.9rem;
	}
	#consultation .mainVisual {
		margin-bottom: 2rem;
	}
	#consultation .mainVisual .mainImg {
		margin-top: 6rem;
		max-width: 92.7rem;
	}
	#consultation .mainVisual .imgTtl {
		bottom: 2rem;
	}
	#consultation .mainVisual .imgTtl img {
		height: 4.9rem;
	}
	#consultation .fadeImgBox .innerBox {
		padding: 26.8rem 0 18.1rem;
	}
	#consultation .fadeImgBox .img01 {
		top: 13.5rem;
		left: -22.7rem;
	}
	#consultation .fadeImgBox .img02 {
		margin-top: .7rem;
		left: -47.6rem;
	}
	#consultation .fadeImgBox .img03 {
		bottom: 7.1rem;
		left: -25.3rem;
	}
	#consultation .fadeImgBox .img04 {
		right: -28.8rem;
		top: 7.3rem;
	}
	#consultation .fadeImgBox .img05 {
		margin-top: -5.7rem;
		right: -45.8rem;
	}
	#consultation .fadeImgBox .img06 {
		right: -34.6rem;
		bottom: 3.1rem;
	}
	#consultation .sec01 .imgBox {
		padding: 8.1rem 0 8.6rem;
	}
	#consultation .sec01 .imgBox .innerBox {
		margin: 0 auto;
		max-width: 92rem;
	}
	#consultation .sec01 .imgBox.reverse {
		padding: 9.8rem 0 9.6rem;
	}
	#consultation .sec01 .imgBox .textBox {
		margin-top: 1rem;
	}
	#consultation .sec01 .imgBox .ttl {
		margin-bottom: 3.1rem;
	}
	#consultation .sec01 .imgBox p {
		max-width: 41.4rem;
	}
	#consultation .sec01 .imgBox .photoBox {
		width: 46rem;
	}
	#consultation .sec01 .imgBox.reverse .photoBox {
		margin-right: 4.6rem;
	}
	#consultation .sec02 {
		padding: 10rem 0 11rem;
	}
	#consultation .sec02 .imgBox {
		padding: 6.8rem 0;
		max-width: 92rem;
		border-top: .1rem dashed #B5B5B5;
		border-bottom: .1rem dashed #B5B5B5;
	}
	#consultation .sec02 .imgBox .innerBox {
		max-width: 66.6rem;
	}
	#consultation .sec02 .imgBox .photoBox {
		width: 24.2rem;
	}
	#consultation .sec02 .imgBox .textBox {
		margin-top: 2rem;
		max-width: 37.4rem;
	}
	#consultation .sec02 .imgBox .ttl {
		margin-bottom: 4.4rem;
	}
	#consultation .sec02 .imgBox .ttl small {
		margin-bottom: -.7rem;
	}
	#consultation .sec02 .imgBox .ttl .en {
		vertical-align: .8rem;
	}
	/*------------------------------------------------------------
        appointment
    ------------------------------------------------------------*/
	#contact.appointment {
		background: url(img/consultation/appointment/bg.png) no-repeat right top / 55.2rem,#FAFAF8;
	}
	#contact.appointment h3 {
		margin-bottom: 8.8rem;
	}
	#contact.appointment .mailForm .hopeDateList {
		margin-right: -1rem;
	}
	#contact.appointment .mailForm .hopeDateList li:not(:last-child) {
		margin-bottom: 2.2rem;
	}
	#contact.appointment .mailForm .hopeDateList .hopeTime,
	#contact.appointment .mailForm .hopeDateList .hopeDate,
	#contact.appointment .mailForm .hopeDateList p {
		margin-right: .8rem;
	}
	#contact.appointment .mailForm .hopeDateList .strong {
		margin-right: 2.5rem;
	}
	#contact.appointment .mailForm .hopeDateList .hopeTime {
		margin-left: 1.4rem;
		margin-right: .7rem;
	}
	#contact .mailForm .radioList {
		margin: 1.3rem 0 -1.1rem;
	}
	#contact .mailForm .radioList li {
		margin-bottom: 2.5rem;
		margin-right: 3.8rem;
	}
	#contact .mailForm .radioList .special label {
		margin: 1.2rem .9rem 0 0;
	}
	#contact .mailForm .radioList textarea {
		width: 56.6rem;
		height: 13.6rem;
	}
	#contact .mailForm input[type="radio"] ~ span {
		padding: .2rem 0 .2rem 3rem;
		background: url(img/common/icon_radio.png) no-repeat left center / 2.1rem;
	}

	/*------------------------------------------------------------
        reserve
    ------------------------------------------------------------*/
	#contact.reserve {
		background: url(img/works/reserve/bg.png) no-repeat right top / 62.6rem,#FAFAF8;
	}
	#contact.reserve #main > h3 {
		margin-bottom: 4.3rem;
	}
	#contact.reserve .comEventBox {
		margin-bottom: 14.4rem;
	}
	#contact.reserve .mailForm dd .ttl {
		margin: 1.3rem 0 1.2rem;
	}
	#contact.reserve .mailForm .checkBoxList + .checkBoxList {
		margin-top: 2.2rem;
	}
	#contact.reserve .mailForm .checkBoxList:last-child {
		margin-bottom: 1.6rem;
	}
	#contact.reserve .mailForm .checkBoxList li {
		margin-bottom: .8rem;
	}
	#contact.reserve .mailForm .hopeTime {
		margin: 1.7rem 0 2.8rem;
	}
	#contact.reserve .mailForm .hopeTime p {
		font-size: 1.4rem;
		letter-spacing: 0.08em;
	}
	#contact.reserve .mailForm .join + .join {
		margin-left: 3.9rem;
	}
	#contact.reserve .mailForm .join select {
		margin: 0 1rem 0 1.5rem;
	}
	/* comLink */
	a .arrow {
		margin: .2rem 0 0 1rem;
		width: 4.3rem;
		height: .6rem;
		border-bottom: .1rem solid #B9B9B9;
	}
	a .arrow::before {
		width: 4.3rem;
		height: .1rem;
	}
	a .arrow::after {
		width: .1rem;
		height: .8rem;
	}
	/* comMapBox */
	.comMapBox {
		margin-top: 13rem;
	}
	.comMapBox .map {
		margin-bottom: 1.6rem;
		height: 36.6rem;
	}
	.comMapBox .map iframe {
		margin-bottom: .9rem;
	}
	.comMapBox .address {
		margin: 0 1.6rem 0 12.5rem;
		letter-spacing: 0.15em;
	}
	/* comImgList01 */
	.comImgList01 {
		margin: 0 auto 13rem;
		max-width: 92rem;
	}
	.comImgList01 li:nth-child(1) {
		width: 56.6rem;
		height: 42.4rem;
	}
	.comImgList01 li:nth-child(1)::after {
		width: 5.9rem;
		height: 5.1rem;
		left: -6.7rem;
		top: 8.6rem;
	}
	.comImgList01 li:nth-child(2) {
		width: 24.4rem;
		height: 18.3rem;
		left: 2.3rem;
		top: 2.9rem;
	}
	.comImgList01 li:nth-child(3) {
		width: 34.1rem;
		height: 25.6rem;
		left: 1.1rem;
		bottom: -3.9rem;
	}
	/* comImgList02 */
	.comImgList02 {
		margin: 0 auto 6.2rem;
		max-width: 74.1rem;
	}
	/* comStarIcon */
	.comStarIcon {
		margin: 0 auto 2rem;
		width: 6.8rem;
		height: 7.1rem;
	}
	.comStarIcon .img {
		top: .1rem;
	}
	/* comPopList01 */
	.comPopList01 li {
		padding-top: 1.8rem;
	}
	.comPopList01 .photoBox {
		margin: 0 auto 2.5rem;
	}
	.comPopList01 .photoBox .closeBtn {
		right: -4.1rem;
		top: .1rem;
	}
	.comPopList01 p {
		max-width: 74.1rem;
	}
	/* comIntroduct */
	.comIntroduct {
		padding: 3.3rem 0 0;
	}
	.comIntroduct .headLine04 {
		margin-bottom: 3.6rem;
	}
	.comIntroduct .btmBanner {
		max-width: 87rem;
		background: url(img/common/arrow01.png) no-repeat right center / .9rem;
	}
	.comIntroduct .btmBanner > div {
		height: 12.8rem;
	}
	.comIntroduct .btmBanner > div img {
		margin: -.5rem 2rem 0 4rem;
	}
	#index .mainVisual .imgList {
		margin-top: -3.5rem;
	}
	#index .mainVisual .imgList .slick-list {
		padding: 8rem 0 !important;
	}
	#index .mainVisual .imgList li {
		margin: 0 5rem;
	}
	#index .dreamLook .imgList li {
		margin: 0 10.8rem;
		padding-top: 1.4rem;
	}
	#index .dreamLook .imgList .slick-prev,
	#index .dreamLook .imgList .slick-next {
		width: .9rem;
		height: 1.2rem;
		left: calc(50% - 43.7rem);
		top: 18.4rem;
		background: url(img/common/icon_arrow04_left.png) no-repeat center / .9rem;
	}
	#index .dreamLook .imgList .slick-next {
		left: auto;
		right: calc(50% - 43.7rem);
		background-image: url(img/common/icon_arrow04_right.png);
	}
	#index .scrollBox {
		right: 3.6rem;
		bottom: -2.8rem;
	}
	#index .scrollBox a {
		padding-bottom: 5.2rem;
		background: url(img/common/icon03.png) no-repeat center bottom / .6rem;
	}
	.animate.fadeUp,
	.animate .jsImgBox2 .fadeImg,
	.animate .jsImgBox .fadeImg {
		transform: translateY(1.5rem);
	}
	#index .dreamLook .imgList {
		margin: 0 calc(60.7rem - 50vw);
	}
	.wpcf7-list-item {
		margin: 0 0 .8rem !important;
	}
	.wpcf7-form-control-wrap + .wpcf7-form-control-wrap {
		margin-top: 2.2rem !important;
	}
	/* comBtn */
	.comBtn a {
		width: 45.5rem;
		height: 9.5rem;
	}
	#thanks #main p {
		margin-bottom: 8rem;
	}
	.wpcf7-spinner {
		margin: 1rem auto 0 !important;
	}
	.maildd .at {
		vertical-align: -1.4rem;
	}
	/* headLine06 */
	.headLine06 {
		margin-bottom: 3.3rem;
		text-align: center;
		font-size: 2.4rem;
		letter-spacing: 0.1em;
	}
	.headLine06 small {
		font-size: 1.8rem;
	}
	/* wp-pagenavi */
	.wp-pagenavi {
		margin: 8.9rem auto 0;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		color: #000;
		font-size: 1.6rem;
		display: inline-block;
		text-decoration: none;
		padding: .1rem .4rem;
		margin: 0 1.4rem;
		border-bottom: .2rem solid transparent;
	}
	.wp-pagenavi .previouspostslink,
	.wp-pagenavi .nextpostslink,
	#news .newsDetail .wp-pagenavi a[rel="prev"],
	#news .newsDetail .wp-pagenavi a[rel="next"] {
		width: 1rem;
		height: 1.2rem;
		left: -6rem;
		top: .8rem;
		background: url(img/common/icon_arrow04_left.png) no-repeat center center / .8rem;
	}
	#news .newsDetail .wp-pagenavi a[rel="prev"],
	#news .newsDetail .wp-pagenavi a[rel="next"] {
		left: -12.8rem;
	}
	.wp-pagenavi .nextpostslink,
	#news .newsDetail .wp-pagenavi a[rel="next"]  {
		left: auto;
		right: -6rem;
		background-image: url(img/common/icon_arrow04_right.png);
	}
	#news .newsDetail .wp-pagenavi a[rel="next"] {
		right: -12.8rem;
	}
	.wp-pagenavi .list {
		border-bottom: .2rem solid #75633E;
	}


	#works .imgBox a {
		margin: 0 auto;
		max-width: 92rem;
		display: flex;
		justify-content: space-between;
	}
	#works .imgBox .photoBox {
		width: 53.2rem;
		aspect-ratio: 532 / 393;
		transition: transform 0.8s cubic-bezier(0.19, 0.08999, 0.2, 1);
	}
	#works .imgBox a:hover .photoBox {
		transform: scale(1.01);
	}
	#works .imgBox .photoBox img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	#works .imgBox .textBox {
		margin-right: -.9rem;
		width: 35rem;
		flex-shrink: 0;
	}
	#works .imgBox .img {
		position: relative;
		overflow: hidden;
	}
	#works .imgBox .img::after {
		content: '';
		position: absolute;
		top: 0;
		right: -75%;
		width: 50%;
		height: 100%;
		background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.45) 100%);
		animation: none;
		transform: skewX(25deg);
	}
	#works .imgBox a:hover .img::after {
		animation: shine01 0.7s;
	}
	#works .backTop a:hover {
		opacity: 0.6;
	}

	#concept .banner a {
		display: flex;
	}
	#concept .banner a .inner {
		display: flex;
		align-items: center;
	}
	#concept .banner .img {
		margin-right: 2.5rem;
		text-align: right;
		width: 32rem;
	}
	#concept .banner .text {
		flex: 1;
	}
	#concept .banner a:hover .inner {
		transform: scale(1.05);
	}
	.comImgBox {
		padding: 8.1rem 0 8.6rem;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.comImgBox.whiteBg::before {
		position: absolute;
		top: 0;
		left: 50%;
		width: 500rem;
		height: 100%;
		background: #FFF;
		content: '';
		transform: translateX(-50%);
		z-index: -1;
	}
	.comImgBoxR {
		flex-direction: row-reverse;
	}
	.comImgBox .photoBox {
		width: 50%;
	}
	.comImgBox .textBox {
		width: 45%;
	}
	.smlBox {
		max-width: 85.6rem;
		margin: 0 auto 6rem;
		padding: 0;
		align-items: flex-start;
	}
	.smlBox .photoBox {
		margin-right: 4.5rem;
		width: 31.5rem;
	}
	.smlBox .textBox {
		flex: 1;
	}
	.comEventBox a:hover .photoBox {
		transform: scale(0.857);
		right: 1.5rem;
		bottom: 1.4rem;
	}
	#index .sec01 .imgBox .innerBox .textBox {
		margin-left: auto;
		width: 38.6rem;
	}
	#index .sec01 .imgBox .innerBox .comLink {
		margin-right: -3.5rem;
	}
	.comBtn02 a {
		width: 38.9rem;
		height: 6.6rem;
	}
	#index .news .viewAll a {
		width: 20.4rem;
		height: 5.2rem;
	}
	.comPopList01 li .popInner {
		height: 100%;
		width: 100%;
		max-width: 74rem;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
	}
	.fixedLink a {
		padding: 2.1rem 0 0;
		width: 7.3rem;
		height: 32.4rem;
		writing-mode: vertical-rl;
		background: url(img/common/icon_arrow03.png) #74633d no-repeat center bottom 2.2rem / .9rem;
	}
}
@media all and (min-width: 1367px) and (max-height: 570px) {
	.fixedLink {
		top: 143px;
	}
}
.banner230209{
	padding: 70px 0;
    border-top: 1px dashed #b9b9b9;
    border-bottom: 1px dashed #b9b9b9;
	text-align: center;
}
.hover:hover{
	opacity:0.75;
}
@media all and (min-width: 897px) {
	.banner230209{
		padding:43px 0;
	}
}

/* 20230220 */
.comStory .imgArea .zoomBtn {
	margin: 24px auto;
	width: 146px;
}
.comStory .imgArea .zoomBtn a {
	width: 100%;
	display: flex;
	align-items: center;
	font-size: 1.4rem;
	border-bottom: 2px solid #604d28;
}
.comStory .imgArea .zoomBtn a .img {
	margin-right: 6px;
	width: 15px;
	height: 13px;
}
.comStory .imgArea .zoomBtn a .txt {
	flex-shrink: 0;
}
@media all and (min-width: 897px) {
	.comStory .imgArea .zoomBtn a:hover {
		opacity: .7;
	}
}
@media all and (max-width: 896px) {
	.comStory .imgArea .zoomBtn {
		width: 148px;
	}
}
@media all and (min-width: 1367px) {
	.comStory .imgArea .zoomBtn {
		width: 14.6rem;
	}
	.comStory .imgArea .zoomBtn a .img {
		width: 1.5rem;
		height: 1.3rem;
	}
}

/* semenar reserve*/
#contact.seminarReserve {
	background-image: url("img/seminar/bg01.png");
	background-size: 627px;
}
#contact.seminarReserve .mailForm .submit input {
	background-color: #53AD3C;
	font-feature-settings: "palt";
}
#contact.seminarReserve #main .content > h3 {
	margin-bottom: 80px;
}
#contact.seminarReserve #main .content .textImg {
	margin: 0 auto 22px;
	padding-bottom: 28px;
	max-width: 858px;
	text-align: center;
	border-bottom: 1px dashed #B6B6B6;
}
#contact.seminarReserve .mailForm .notice {
	line-height: 1.7;
}
#contact.seminarReserve .mailForm dl dd .checkBoxList:first-child {
	margin-top: 12px;
}
#contact.seminarReserve .mailForm dl dd .checkBoxList:last-of-type {
	margin-bottom: 16px;
}
#contact.seminarReserve .mailForm .checkBoxList + .checkBoxList {
	margin-top: 21px;
}
#contact.seminarReserve .mailForm .radioList .wpcf7-form-control-wrap,
#contact.seminarReserve .mailForm .checkBoxList .wpcf7-form-control-wrap {
	display: block !important;
}
@media all and (min-width: 1367px) {
	#contact.seminarReserve #main .content > h3 {
		margin-bottom: 8rem;
	}
	#contact.seminarReserve #main .content .textImg {
		margin: 0 auto 2.2rem;
		padding-bottom: 2.8rem;
		max-width: 85.8rem;
		border-bottom: 0.1rem dashed #B6B6B6;
	}
	#contact.seminarReserve #main .content .textImg img {
		width: 49.5rem;
	}
}
@media all and (min-width: 897px) {
	#contact.seminarReserve .mailForm .radioList li {
		margin-bottom: 1.7rem;
	}
}
@media all and (max-width: 896px) {
	#contact.seminarReserve {
		background-image: url("img/seminar/sp_bg01.png");
		background-size: 234px;
	}
	#contact.seminarReserve #main .content > h3 {
		margin-bottom: 58px;
	}
	#contact.seminarReserve #main .content .textImg {
		margin: 0 0 17px;
		padding: 0 14px 17px;
		max-width: inherit;
	}
	#contact.seminarReserve .mailForm .notice {
		margin-bottom: 17px;
		font-size: 1.4rem;
		line-height: 1.714;
		letter-spacing: 0.06em;
	}
	#contact .mailForm dd {
		padding-bottom: 34px;
		padding-top: 9px;
	}
	#contact.seminarReserve .mailForm input[type="text"],
	#contact.seminarReserve .mailForm input[type="tel"],
	#contact.seminarReserve .mailForm textarea,
	#contact.seminarReserve .mailForm select {
		padding: 12px;
		height: 44px;
		font-size: 1.4rem;
	}
	#contact.seminarReserve .mailForm textarea {
		height: 196px;
	}
	#contact.seminarReserve .mailForm .submit input {
		height: 55px;
		font-size: 1.6rem;
		letter-spacing: 0.12em;
	}
	#contact.seminarReserve .mailForm dl dd .checkBoxList:first-child {
		margin-top: 9px;
	}
}

/* seminar */
#seminar {
	background: url("img/seminar/bg01.png") no-repeat right top / 627px,
	url("img/seminar/bg02.png") no-repeat left top 565px / 338px;
	background-color: #fafaf8;
}
#seminar .mainVisual {
	margin: -58px auto 48px;
	padding: 0 80px;
	max-width: 919px;
}
#seminar .reserveDate {
	margin: 0 auto 49px;
	padding: 17px 43px 13px;
	max-width: 817px;
	position: relative;
	background-color: #fff;
	box-shadow: 0 2px 6px rgba(77, 77, 77, 0.1);
	box-sizing: border-box;
}
#seminar .reserveDate::before,
#seminar .reserveDate::after {
	width: 37px;
	height: 52px;
	position: absolute;
	left: 19px;
	top: -3px;
	background: url("img/seminar/icon_pin_left.png") no-repeat center / 100%;
	content: "";
}
#seminar .reserveDate::after {
	left: auto;
	right: 21px;
	background-image: url("img/seminar/icon_pin_right.png");
}
#seminar .reserveDate .h3Ttl {
	margin-bottom: 4px;
	color: #5A3016;
	font-size: 3rem;
	text-align: center;
	letter-spacing: 0.14em;
}
#seminar .reserveDate .date {
	margin: 0 auto;
	padding: 20px;
	max-width: 731px;
	font-size: 1.6rem;
	letter-spacing: 0.12em;
	text-align: center;
	border-top: 1px dashed #B8B8B8;
	/* display: grid;
	grid-template-columns: auto auto 1fr; */
}
#seminar .reserveDate .date .blue {
	color: #0070A3;
}
#seminar .reserveDate .date .red {
	color: #B40000;
}
#seminar .reserveDate .date .orange {
	color: #E85513;
}
#seminar .situation {
	margin: 0 auto 85px;
	max-width: 819px;
}
#seminar .situation .h3Ttl {
	margin-bottom: 16px;
	color: #5A3016;
	font-size: 2.2rem;
	text-align: center;
	letter-spacing: 0.14em;
}
#seminar .situation .tableBox {
	position: relative;
}
#seminar .situation .tableBox::before {
	width: 175px;
	height: 203px;
	position: absolute;
    right: -15px;
    bottom: -34px;
	background: url("img/seminar/situation_img.png") no-repeat center / 100%;
	opacity: 0;
	transition: all 1.8s cubic-bezier(.165,.84,.44,1);
	transition-delay: .5s;
	transition-property: opacity;
	content: "";
}
#seminar .situation .tableBox.isShow::before {
	opacity: 1;
}
#seminar .situation .tableBox table {
	width: 100%;
	border-collapse: collapse;
}
#seminar .situation .tableBox table th,
#seminar .situation .tableBox table td {
	padding: 15px 0;
	font-size: 1.5rem;
	font-weight: 400;
	text-align: left;
	letter-spacing: 0.08em;
	border-top: 1px dashed #AEAEAE;
}
#seminar .situation .tableBox table tr:last-child th,
#seminar .situation .tableBox table tr:last-child td {
	border-bottom: 1px dashed #AEAEAE;
}
#seminar .situation .tableBox table th {
	padding-left: 31px;
	width: 203px;
	color: #61553D;
	vertical-align: middle;
	box-sizing: border-box;
}
#seminar .situation .tableBox table td {
	color: #000;
}
#seminar .situation .tableBox table td small {
	color: rgba(97, 85, 62, 0.8);
	font-size: 1.2rem;
	letter-spacing: 0.08em;
}
#seminar .situation .tableBox table td small.link {
	margin-left: 10px;
	display: inline-block;
	letter-spacing: 0;
}
#seminar .situation .tableBox table td small.link a {
	color: #61553E;
	text-decoration: underline;
}
#seminar .situation .tableBox table td .indentText {
	margin: 4px 0 0 1em;
	display: block;
	text-indent: -1em;
}
#seminar .situation .tableBox table td .indentText.spe {
	margin: -2px 0 4px 1em;
}
#seminar .situation .tableBox table td strong {
	font-size: 2.3rem;
	font-weight: 400;
	letter-spacing: 0.08em;
}
#seminar .situation .tableBox table td .orange {
	color: #E85513;
}
#seminar .sec01 {
	padding: 74px 0 67px;
	background: url("img/seminar/sec01_bg.png") repeat left top / 1367px;
}
#seminar .sec01 .h3Ttl {
	margin-bottom: 9px;
	text-align: center;
}
#seminar .sec01 .borderBox {
	margin: 0 auto 40px;
	padding: 0 0 48px;
	max-width: 919px;
	position: relative;
	border: 7px solid #4FB033;
	box-sizing: border-box;
	border-top-width: 3px;
	background-color: #FCD61D;
}
#seminar .sec01 .borderBox .h4Ttl {
	padding-bottom: 4px;
	color: #fff;
	font-size: 2.5rem;
	text-align: center;
	letter-spacing: 0.1em;
	background-color: #4FB033;
}
#seminar .sec01 .borderBox .h4Ttl .color {
	color: #F6DF3B;
}
#seminar .sec01 .borderBox .textList {
	margin: 38px 56px 48px 44px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 36px 0;
	color: #5A3016;
}
#seminar .sec01 .borderBox .textList > li {
	width: calc(50% - 23px);
}
#seminar .sec01 .borderBox .textList .title {
	margin: 0 -14px 9px 0;
	padding-bottom: 10px;
	display: flex;
	align-items: center;
	font-size: 2.9rem;
	letter-spacing: 0.04em;
	line-height: 1.1;
	border-bottom: 2px dotted #B49910;
}
#seminar .sec01 .borderBox .textList .title img {
	margin: 0 12px 0 10px;
	width: 33px;
}
#seminar .sec01 .borderBox .textList .innerList {
	margin-left: 18px;
}
#seminar .sec01 .borderBox .textList .innerList li {
	margin: 0 0 4px 1.1em;
	font-size: 1.6rem;
	font-weight: 700;
	text-indent: -1.1em;
	line-height: 1.38;
	letter-spacing: 0.1em;
	font-feature-settings: "palt";
	font-family: "Noto Sans JP", sans-serif;
}
#seminar .sec01 .borderBox .textList .innerList .circle {
	color: #E85513;
}
#seminar .sec01 .borderBox .h4Ttl02 {
	color: #5A3016;
	font-size: 2.9rem;
	text-align: center;
	line-height: 1.31;
	letter-spacing: 0.04em;
}
#seminar .sec01 .borderBox .h4Ttl02 .inner {
	display: inline-block;
	position: relative;
}
#seminar .sec01 .borderBox .h4Ttl02 .inner::before,
#seminar .sec01 .borderBox .h4Ttl02 .inner::after {
	width: 38px;
	height: 42px;
	position: absolute;
	left: -23px;
	bottom: -1px;
	background: url("img/seminar/icon_ttl_img.png") no-repeat center / 100%;
	content: "";
}
#seminar .sec01 .borderBox .h4Ttl02 .inner::after {
	left: auto;
	right: -23px;
	transform: rotateY(180deg);
}
#seminar .sec01 .borderBox .h4Ttl02 .color {
	color: #E85513;
}
#seminar .sec01 .borderBox .fadeImg {
	position: absolute;
	left: -38px;
	bottom: -20px;
	transform: rotate(-15.34deg);
	z-index: 1;
}
#seminar .sec01 .borderBox .fadeImg.img02 {
	left: auto;
	right: -23px;
	bottom: -49px;
	transform: rotate(-345.6deg);
}
#seminar .sec01 .imgList {
	margin: 0 auto;
	max-width: 919px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#seminar .sec01 .imgList li {
	padding: 18px 12px 16px 27px;
	width: calc(50% - 13px);
	position: relative;
	display: flex;
	box-sizing: border-box;
	background-color: #fff;
}
#seminar .sec01 .imgList li .textBox {
	flex: 1;
}
#seminar .sec01 .imgList li.absImg .textBox {
	max-width: 330px;
}
#seminar .sec01 .imgList li .title {
	color: #61553E;
	font-size: 2rem;
	line-height: 1.75;
	letter-spacing: 0.16em;
}
#seminar .sec01 .imgList li .title .color {
	color: #E85513;
}
#seminar .sec01 .imgList p {
	font-size: 1.2rem;
	line-height: 1.531;
	font-weight: 700;
	letter-spacing: 0.04em;
	font-family: "Noto Sans JP", sans-serif;
}
#seminar .sec01 .imgList p .color {
	color: #E85513;
}
#seminar .sec01 .imgList .absText {
	color: #FFFF00;
	position: absolute;
	left: 13px;
	top: -14px;
}
#seminar .sec01 .imgList .absText span {
	padding: 0 0;
	min-width: 84px;
	height: 29px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1.429rem;
	letter-spacing: 0.04em;
	background-color: #4FB033;
	box-sizing: border-box;
}
#seminar .sec01 .imgList li.absImg .photoBox {
	position: absolute;
	right: -6px;
    top: -1px;
}
#seminar .sec01 .reason {
	margin: 56px auto 0;
	padding: 15px 54px 14px 56px;
	max-width: 919px;
	display: flex;
	border: 4px solid #5A3016;
	box-sizing: border-box;
	background-color: #fff;
}
#seminar .sec01 .reason .textBox {
	margin: 13px 0 0 25px;
	flex: 1;
}
#seminar .sec01 .reason .textBox .title,
#seminar .sec01 .reason .textBox p,
#seminar .sec01 .reason .photoBox p {
	color: #5A3016;
}
#seminar .sec01 .reason .textBox .title {
	margin-bottom: 12px;
	padding-bottom: 2px;
	font-size: 2.7rem;
	line-height: 1.556;
	letter-spacing: 0.04em;
	border-bottom: 1px solid #5A3016;
}
#seminar .sec01 .reason .textBox p {
	font-size: 1.3rem;
	text-align: justify;
	line-height: 1.615;
	letter-spacing: -0.06em;
}
#seminar .sec01 .reason .textBox p .color {
	color: #E75513;
}
#seminar .sec01 .reason .photoBox {
	text-align: center;
}
#seminar .sec01 .reason .photoBox p {
	margin-top: 5px;
	font-size: 1.1rem;
	line-height: 1.363;
	white-space: nowrap;
}
#seminar .feature .h3Ttl {
	margin-bottom: 52px;
	text-align: center;
}
#seminar .feature {
	padding: 82px 0 88px;
	background: url("img/seminar/feature_bg.png") repeat left top / 1187px;
}
#seminar .feature .imgList {
	margin: 0 auto -50px;
	max-width: 878px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#seminar .feature .imgList::after {
	height: 0;
	display: block;
	content: "";
}
#seminar .feature .imgList::after,
#seminar .feature .imgList li {
	width: calc((100% / 3) - 57px);
}
#seminar .feature .imgList li {
	margin-bottom: 50px;
}
#seminar .feature .imgList .photo {
	margin-bottom: 26px;
	width: 240px;
}
#seminar .feature .imgList .h4Ttl {
	margin-bottom: 9px;
	color: #E85513;
	font-size: 2.8rem;
	text-align: center;
}
#seminar .feature .imgList p {
	font-size: 1.4rem;
	line-height: 1.428;
	text-align: justify;
	letter-spacing: 0.04em;
}
#seminar #main > .grayBox {
	padding: 52px 0 0;
}
#seminar #main > .grayBox p {
	margin-bottom: 24px;
	color: #5A3016;
	font-size: 2.3rem;
	letter-spacing: 0.24em;
	text-align: center;
}
#seminar #main > .grayBox p .color {
	color: #D75A24;
}
#seminar #main > .grayBox .comBtn a {
	font-size: 2.4rem;
	letter-spacing: 0.2em;
	font-feature-settings: "palt";
	background-size: 9px;
	background-color: #4FB033;
	background-image: url("img/common/icon_arrow03.png");
	background-repeat: no-repeat;
	background-position: right 23px center;
}
#seminar .fixedLink a {
	background-color: #4FB033;
}
#seminar .comMapBox {
	margin-top: 77px;
}
@media all and (min-width: 1367px) {
	#seminar {
		background: url("img/seminar/bg01.png") no-repeat right top / 62.7rem,
		url("img/seminar/bg02.png") no-repeat left top 56.5rem / 33.8rem;
		background-color: #fafaf8;
	}
	#seminar .mainVisual {
		margin: -5.8rem auto 4.8rem;
		padding: 0 8rem;
		max-width: 91.9rem;
	}
	#seminar .reserveDate {
		margin: 0 auto 4.9rem;
		padding: 1.7rem 4.3rem 1.3rem;
		max-width: 81.7rem;
		box-shadow: 0 .2rem .6rem rgba(77, 77, 77, 0.15);
	}
	#seminar .reserveDate::before,
	#seminar .reserveDate::after {
		width: 3.7rem;
		height: 5.2rem;
		left: 1.9rem;
		top: -.3rem;
	}
	#seminar .reserveDate::after {
		left: auto;
		right: 2.1rem;
	}
	#seminar .reserveDate .h3Ttl {
		margin-bottom: .4rem;
	}
	#seminar .reserveDate .date {
		padding: 1.8rem;
		max-width: 73.1rem;
		border-top: .1rem dashed #B8B8B8;
	}
	#seminar .situation {
		margin: 0 auto 8.5rem;
		max-width: 81.9rem;
	}
	#seminar .situation .h3Ttl {
		margin-bottom: 1.6rem;
	}
	#seminar .situation .tableBox::before {
		width: 17.5rem;
		height: 20.3rem;
		right: -1.5rem;
		bottom: -3.4rem;
	}
	#seminar .situation .tableBox table th,
	#seminar .situation .tableBox table td {
		padding: 1.5rem 0;
		border-top: .1rem dashed #AEAEAE;
	}
	#seminar .situation .tableBox table tr:last-child th,
	#seminar .situation .tableBox table tr:last-child td {
		border-bottom: .1rem dashed #AEAEAE;
	}
	#seminar .situation .tableBox table th {
		padding-left: 3.1rem;
		width: 20.3rem;
	}
	#seminar .situation .tableBox table td small.link {
		margin-left: 1rem;
	}
	#seminar .situation .tableBox table td .indentText {
		margin-top: 0.4rem;
	}
	#seminar .sec01 {
		padding: 7.4rem 0 6.7rem;
		background: url("img/seminar/sec01_bg.png") repeat left top / 136.7rem;
	}
	#seminar .sec01 .h3Ttl {
		margin-bottom: 0.9rem;
	}
	#seminar .sec01 .borderBox {
		margin: 0 auto 4rem;
		padding: 0 0 4.8rem;
		max-width: 91.9rem;
		border: .7rem solid #4FB033;
		border-top-width: .3rem;
	}
	#seminar .sec01 .borderBox .h4Ttl {
		padding-bottom: .4rem;
	}
	#seminar .sec01 .borderBox .textList {
		margin: 3.8rem 5.6rem 4.8rem 4.4rem;
		gap: 3.6rem 0;
	}
	#seminar .sec01 .borderBox .textList > li {
		width: calc(50% - 2.3rem);
	}
	#seminar .sec01 .borderBox .textList .title {
		margin: 0 -1.4rem .9rem 0;
		padding-bottom: 1rem;
		border-bottom: .2rem dotted #B49910;
	}
	#seminar .sec01 .borderBox .textList .title img {
		margin: 0 1.2rem 0 1rem;
		width: 3.3rem;
	}
	#seminar .sec01 .borderBox .textList .innerList {
		margin-left: 1.8rem;
	}
	#seminar .sec01 .borderBox .h4Ttl02 .inner::before,
	#seminar .sec01 .borderBox .h4Ttl02 .inner::after {
		width: 3.8rem;
		height: 4.2rem;
		left: -2.3rem;
		bottom: -.1rem;
	}
	#seminar .sec01 .borderBox .h4Ttl02 .inner::after {
		left: auto;
		right: -2.3rem;
	}
	#seminar .sec01 .borderBox .fadeImg {
		left: -3.8rem;
		bottom: -2rem;
	}
	#seminar .sec01 .borderBox .fadeImg.img01 {
		width: 22.2rem;
	}
	#seminar .sec01 .borderBox .fadeImg.img02 {
		right: -2.3rem;
		bottom: -4.9rem;
		width: 16.5rem;
	}
	#seminar .sec01 .imgList {
		margin: 0 auto;
		max-width: 91.9rem;
	}
	#seminar .sec01 .imgList li {
		padding: 1.8rem 1.2rem 1.6rem 2.7rem;
		width: calc(50% - 1.3rem);
	}
	#seminar .sec01 .imgList li.absImg .textBox {
		max-width: 33rem;
	}
	#seminar .sec01 .imgList li.absImg p {
		margin-right: 3rem;
	}
	#seminar .sec01 .imgList .absText {
		left: 1.3rem;
		top: -1.4rem;
	}
	#seminar .sec01 .imgList .absText span {
		min-width: 8.4rem;
		height: 2.9rem;
	}
	#seminar .sec01 .imgList li.absImg .photoBox {
		right: -0.6rem;
		top: 0.1rem;
	}
	#seminar .sec01 .reason {
		margin-top: 5.6rem;
		padding: 1.5rem 5.4rem 1.4rem 5.6rem;
		max-width: 91.9rem;
		border: .4rem solid #5A3016;
	}
	#seminar .sec01 .reason .textBox {
		margin: 1.3rem 0 0 2.5rem;
	}
	#seminar .sec01 .reason .textBox .title {
		margin-bottom: 1.2rem;
		padding-bottom: .2rem;
	}
	#seminar .sec01 .reason .photoBox p {
		margin-top: .5rem;
	}
	#seminar .feature .h3Ttl {
		margin-bottom: 5.2rem;
	}
	#seminar .feature {
		padding: 8.2rem 0 8.8rem;
		background: url("img/seminar/feature_bg.png") repeat left top / 118.7rem;
	}
	#seminar .feature .imgList {
		max-width: 87.8rem;
		margin-bottom: -5rem;
	}
	#seminar .feature .imgList::after,
	#seminar .feature .imgList li {
		width: calc((100% / 3) - 5.7rem);
	}
	#seminar .feature .imgList li {
		margin-bottom: 5rem;
	}
	#seminar .feature .imgList .photo {
		margin-bottom: 2.6rem;
		width: 24rem;
	}
	#seminar .feature .imgList .h4Ttl {
		margin-bottom: .9rem;
	}
	#seminar #main > .grayBox {
		padding: 5.2rem 0 0;
	}
	#seminar #main > .grayBox p {
		margin-bottom: 2.4rem;
	}
	#seminar #main > .grayBox .comBtn a {
		background-size: .9rem;
		background-position: right 2.3rem center;
	}
	#seminar .sec01 .h3Ttl img {
		width: 91.9rem;
	}
	#seminar .sec01 .imgList li .photoBox img {
		width: 13.1rem;
	}
	#seminar .sec01 .imgList li.absImg .photoBox img {
		width: 12.3rem;
	}
	#seminar .sec01 .reason .photoBox .photo img {
		width: 12.3rem;
	}
	#seminar .feature .imgList .photo {
		width: 24rem;
	}
	#seminar .comMapBox {
		margin-top: 7.7rem;
	}
}
@media all and (max-width: 1214px) and (min-width: 897px) {
	#seminar .sec01 .borderBox .textList .title {
		font-size: 2.388vw;
	}
	#seminar .sec01 .borderBox .textList .innerList li {
		font-size: 1.317vw;
	}
	#seminar .sec01 .borderBox .fadeImg {
		left: -3.13vw;
	}
	#seminar .sec01 .borderBox .fadeImg.img02 {
		right: -1.89vw;
	}
	#seminar .sec01 .imgList li.absImg .photoBox {
		right: -29px;
	}
}
@media all and (min-width: 897px) {
	#seminar .sec01 .imgList li.absImg p {
		margin-right: 30px;
	}
	#seminar .situation .content {
		max-width: inherit;
	}
	#seminar .situation .tableBox table td small.link a:hover {
		text-decoration: none;
	}
}
@media all and (max-width: 896px) {
	#seminar {
		background: url("img/seminar/sp_bg01.png") no-repeat right top / 238px,
		url("img/seminar/sp_bg02.png") no-repeat left top 395px / 169px;
		background-color: #fafaf8;
	}
	#seminar .mainVisual {
		margin: -30px auto 18px;
		padding: 0;
	}
	#seminar .mainVisual .mainImg img {
		width: 100%;
	}
	#seminar .reserveDate {
		margin: 0 10px 33px;
		padding: 16px 19px 6px;
	}
	#seminar .reserveDate .h3Ttl {
		margin-bottom: 9px;
		font-size: 2rem;
	}
	#seminar .reserveDate .date {
		padding: 13px 0 14px 4px;
		font-size: 1.8rem;
	}
	#seminar .reserveDate::before, #seminar .reserveDate::after {
		width: 21px;
		height: 29px;
		left: 11px;
		top: 4px;
	}
	#seminar .reserveDate::after {
		left: auto;
		right: 13px;
	}
	#seminar .situation .h3Ttl {
		margin-bottom: 12px;
		font-size: 2rem;
		line-height: 1.3;
	}
	#seminar .situation .tableBox {
		padding: 0 9px;
	}
	#seminar .situation .tableBox table th,
	#seminar .situation .tableBox table td {
		padding: 12px 0 0;
		width: 100%;
		display: block;
		box-sizing: border-box;
	}
	#seminar .situation .tableBox table td {
		padding-bottom: 26px;
		border-top: none;
	}
	#seminar .situation .tableBox table td p {
		line-height: 1.48;
	}
	#seminar .situation .tableBox table td .indentText {
		margin-top: 10px;
		line-height: 1.4;
	}
	#seminar .situation .tableBox table td .indentText.spe {
		margin: 7px 0 -4px 1em;
	}
	#seminar .situation .tableBox table td .indentText + .indentText {
		margin-top: 1px;
	}
	#seminar .situation .tableBox table td small.link {
		margin: 11px 0 0;
		letter-spacing: 0.08em;
	}
	#seminar .situation .tableBox table td {
		font-feature-settings: "palt";
	}
	#seminar .situation .tableBox table tr:last-child th {
		border-bottom: none;
	}
	#seminar .situation .tableBox::before {
		background-image: url("img/seminar/sp_situation_img.png");
		background-size: 158px;
		right: -21px;
		bottom: -30px;
	}
	#seminar .situation {
		margin-bottom: 67px;
	}
	#seminar .sec01 {
		padding: 40px 0 55px;
	}
	#seminar .sec01 .h3Ttl {
		margin: 0 -6px 10px -14px;
	}
	#seminar .sec01 .borderBox .h4Ttl {
		padding-bottom: 9px;
		font-size: 2rem;
		line-height: 1.2;
		letter-spacing: 0.06em;
	}
	#seminar .sec01 .borderBox {
		margin-bottom: 149px;
		padding-bottom: 70px;
		border-top-width: 9px;
	}
	#seminar .sec01 .borderBox .textList {
		margin: 0 0 48px;
		padding: 17px 20px 0;
		display: block;
	}
	#seminar .sec01 .borderBox .textList > li {
		margin-bottom: 36px;
		width: 100%;
	}
	#seminar .sec01 .borderBox .textList > li:last-child {
		margin-bottom: 0;
	}
	#seminar .sec01 .borderBox .textList .title {
		margin: 0 0 11px;
		padding-bottom: 5px;
		font-size: 1.7rem;
		letter-spacing: 0;
	}
	#seminar .sec01 .borderBox .textList .title img {
		margin: 0 0.7rem 0 0.1rem;
		width: 2.6rem;
	}
	#seminar .sec01 .borderBox .textList .innerList {
		margin-left: 6px;
	}
	#seminar .sec01 .borderBox .textList .innerList li {
		margin: 0 0 5px 1em;
		font-size: 1.5rem;
		line-height: 1.466;
		text-indent: -1em;
		letter-spacing: 0.02em;
	}
	#seminar .sec01 .borderBox .textList .innerList li:last-child {
		margin-bottom: 0;
	}
	#seminar .sec01 .borderBox .h4Ttl02 {
		font-size: 2.754rem;
	}
	#seminar .sec01 .borderBox .fadeImg {
		left: -25px;
		bottom: -112px;
	}
	#seminar .sec01 .borderBox .fadeImg.img02 {
		right: -16px;
		bottom: -142px;
	}
	#seminar .sec01 .borderBox .h4Ttl02 .inner::before, #seminar .sec01 .borderBox .h4Ttl02 .inner::after {
		width: 40px;
		height: 68px;
		left: -31px;
		background-image: url("img/seminar/sp_icon_ttl_img.png");
	}
	#seminar .sec01 .borderBox .h4Ttl02 .inner::after {
		left: auto;
		right: -31px;
	}
	#seminar .sec01 .imgList {
		display: block;
	}
	#seminar .sec01 .imgList li:not(:last-child) {
		margin-bottom: 10px;
	}
	#seminar .sec01 .imgList li {
		padding: 34px 34px 23px;
		width: 100%;
		display: block;
		box-sizing: border-box;
	}
	#seminar .sec01 .imgList li.absImg .photoBox {
		position: static;
	}
	#seminar .sec01 .imgList .photoBox {
		margin-bottom: 4px;
		text-align: center;
	}
	#seminar .sec01 .imgList li .title {
		margin-bottom: 6px;
		font-size: 2rem;
		text-align: center;
		line-height: 1.3;
	}
	#seminar .sec01 .imgList .absText {
		left: 10px;
		top: -16px;
	}
	#seminar .sec01 .imgList .absText span {
		min-width: 88px;
		height: 30px;
	}
	#seminar .sec01 .imgList p {
		margin: 0 auto;
		font-size: 1.3rem;
		text-align: justify;
		line-height: 1.461;
		letter-spacing: 0.03em;
	}
	#seminar .sec01 .imgList li.absImg .textBox {
		max-width: inherit;
	}
	#seminar .sec01 .reason {
		margin-top: 28px;
		padding: 25px 22px 20px;
		display: block;
	}
	#seminar .sec01 .reason .title {
		margin-bottom: 12px;
		color: #593019;
		font-size: 2.1rem;
		text-align: center;
		line-height: 1.333;
		letter-spacing: 0.02em;
	}
	#seminar .sec01 .reason .photoBox {
		margin-bottom: 13px;
		padding-bottom: 16px;
		border-bottom: 1px solid #593019;
	}
	#seminar .sec01 .reason .textBox {
		margin: 0;
	}
	#seminar .sec01 .reason .textBox p {
		padding: 0 4px;
		font-size: 1.4rem;
		line-height: 1.714;
		text-align: justify;
	}
	#seminar .feature {
		padding: 48px 0;
		background-image: url("img/seminar/sp_feature_bg.png");
		background-size: 375px;
	}
	#seminar .feature .h3Ttl {
		margin-bottom: 42px;
	}
	#seminar .feature .imgList {
		display: block;
		margin-bottom: 0;
	}
	#seminar .feature .imgList::after {
		display: none;
	}
	#seminar .feature .imgList li {
		margin-bottom: 41px;
		width: 100%;
		display: flex;
	}
	#seminar .feature .imgList li:last-child {
		margin-bottom: 0;
	}
	#seminar .feature .imgList .photo {
		margin: -1px 1px 0 -1px;
		width: 113px;
	}
	#seminar .feature .imgList .textBox {
		margin: -12px 0 0 15px;
		flex: 1;
	}
	#seminar .feature .imgList .h4Ttl {
		margin-bottom: 4px;
		text-align: left;
		font-size: 2.6rem;
	}
	#seminar .feature .imgList p {
		margin: 0 10px 0 3px;
		letter-spacing: 0;
	}
	#seminar #main > .grayBox p {
		margin-bottom: 16px;
		font-size: 1.8rem;
		line-height: 1.556;
		letter-spacing: 0.21em;
	}
	#seminar #main > .grayBox .comBtn a {
		height: 55px;
		font-size: 1.6rem;
		letter-spacing: 0.12em;
		background-size: 7px;
		background-position: right 23px top 23px;
	}
	#seminar .comMapBox {
		margin-top: 68px;
	}
}
@media all and (max-width: 374px) {
	#seminar .sec01 .borderBox .textList .innerList li {
		font-size: 1.4rem;
	}
}
.hasError > .wpcf7-not-valid-tip {
	display: block !important;
	top: auto !important;
}
#loading {
	display: flex;
	align-items: center;
	justify-content: center;
}
#loading .logo {
	position: relative;
	width: 157px;
}
#loading .over {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transform: translatex(-100%);
	transition: .9s linear;
	overflow: hidden;
}
#loading .over img {
	display: block;
	transform: translatex(100%);
	transition: .9s linear;
}
#loading.animate .over img,
#loading.animate .over {
	transform: translatex(0);
}
#loading .under {
	opacity: 0.15;
}
@media all and (max-width: 896px) {
	#loading .logo {
		width: 141px;
	}
}

.comMainVisual {
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
}
.comMainVisual .headLine01 {
	margin-bottom: 0;
	position: absolute;
	top: 207px;
	width: calc(100% - 130px);
	text-align: left;
}
.comMainVisual .ttl {
	margin-bottom: 14px;
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	color: #76633C;
	font-size: 4rem;
	line-height: 1.45;
	letter-spacing: 0.38em;
}
.comMainVisual + p {
	margin: 25px 0 74px;
	color: #76633C;
	font-size: 1.7rem;
	line-height: 2.176;
	text-align: center;
	letter-spacing: 0.22em;
}
.comMainVisual .headLine01 .jp {
	margin-bottom: 0;
}
@media all and (max-width: 896px) {
	.comMainVisual .headLine01 {
		left: 0;
		top: 110px;
		width: auto;
		box-sizing: border-box;
	}
}
/* afterMaintenance */
#after_maintenance #gHeader {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}
#after_maintenance .mainVisual .mainImg {
	margin: 0 auto -70px;
	width: 927px;
}
#after_maintenance .mainVisual .textBox {

}
#after_maintenance .sec01 {
	padding: 60px 0 80px;
}
#after_maintenance .sec01 .h3Ttl {
	margin-bottom: 24px;
	color: #76633C;
	font-size: 3.6rem;
	text-align: center;
	line-height: 1.611;
	letter-spacing: 0.24em;
}
#after_maintenance .sec01 .content > p {
	margin-bottom: 28px;
	color: #000;
	font-size: 1.4rem;
	text-align: center;
	line-height: 1.785;
	letter-spacing: 0.08em;
}
#after_maintenance .sec01 .bgBox {
	margin: 0 auto;
	padding: 42px 53px 43px 55px;
	max-width: 744px;
	box-sizing: border-box;
	background-color: #FAFAF8;
}
#after_maintenance .sec01 .bgBox p {
	margin-bottom: 15px;
	color: #76633C;
	font-size: 1.9rem;
	line-height: 1.578;
	letter-spacing: 0.08em;
}
#after_maintenance .sec01 .bgBox hr {
	margin: 0;
	border-color: rgba(159, 159, 159, 0.7);
	border-bottom: none;
}
#after_maintenance .sec01 .bgBox .img {
	margin: 16px 0 15px;
}
#after_maintenance .sec01 .bgBox .textList {
	display: flex;
}
#after_maintenance .sec01 .bgBox .textList > li {
	width: 50%;
}
#after_maintenance .sec01 .bgBox .textList > li .h4Ttl {
	margin: 0 2px 11px 0;
	min-height: 42px;
	padding: 0 30px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 1.8rem;
	letter-spacing: 0.08em;
	background-color: #9B9FA3;
}
#after_maintenance .sec01 .bgBox .textList > li.spe .h4Ttl {
	margin: 0 0 11px 2px;
	background-color: #76633C;
}
#after_maintenance .sec01 .bgBox .textList > li .h4Ttl::before,
#after_maintenance .sec01 .bgBox .textList > li .h4Ttl::after {
	width: 0;
	height: 0;
	position: absolute;
	right: 0;
	top: 0;
	border-style: solid;
	border-width: 0 30px 21px 0;
	border-color: transparent #FAFAF8 transparent transparent;
	content: "";
}
#after_maintenance .sec01 .bgBox .textList > li .h4Ttl::after {
	border-width: 0 0 21px 30px;
	border-color: transparent transparent #FAFAF8 transparent;
	top: auto;
	bottom: 0;
}
#after_maintenance .sec01 .bgBox .textList .innerList {
	margin-left: -2px;
}
#after_maintenance .sec01 .bgBox .textList .innerList li {
	color: #808080;
	font-size: 1.3rem;
	line-height: 1.538;
	font-family: var(--font-noto-sans-jp);
}
#after_maintenance .sec01 .bgBox .textList > li.spe .innerList li {
	color: #76633C;
}
#after_maintenance .sec02 {
	padding: 99px 0 0;
}
#after_maintenance .sec02 .content.sml {
	max-width: 857px;
}
#after_maintenance .sec02 .comImgBox {
	padding: 0;
	align-items: flex-start;
}
#after_maintenance .sec02 .comImgBox + .comImgBox {
	margin-top: 52px;
}
#after_maintenance .sec02 .comImgBox .photoBox {
	width: 315px;
}
#after_maintenance .sec02 .comImgBox .textBox {
	margin: -3px 0 0 45px;
	flex: 1;
}
#after_maintenance .sec02 .comImgBox .textBox .headLine03 {
	margin: 0 -40px 17px 0;
	line-height: 1.333;
	letter-spacing: 0.24em;
}
#after_maintenance .sec02 .comImgBox .textBox p {
	line-height: 1.785;
	letter-spacing: 0.08em;
}
@media all and (min-width: 1367px) {
	#after_maintenance .mainVisual .mainImg {
		margin: 0 auto -7rem;
		width: 92.7rem;
	}
	#after_maintenance .sec01 {
		padding: 6rem 0 8rem;
	}
	#after_maintenance .sec01 .h3Ttl {
		margin-bottom: 2.4rem;
	}
	#after_maintenance .sec01 .content > p {
		margin-bottom: 2.8rem;
	}

	#after_maintenance .sec01 .bgBox {
		padding: 4.2rem 5.3rem 4.3rem 5.5rem;
		max-width: 74.4rem;
	}
	#after_maintenance .sec01 .bgBox p {
		margin-bottom: 1.5rem;
	}
	#after_maintenance .sec01 .bgBox .img {
		margin: 1.6rem 0 1.5rem;
	}
	#after_maintenance .sec01 .bgBox .textList > li .h4Ttl {
		margin: 0 .2rem 1.1rem 0;
		min-height: 4.2rem;
		padding: 0 3rem;
	}
	#after_maintenance .sec01 .bgBox .textList > li.spe .h4Ttl {
		margin: 0 0 1.1rem .2rem;
	}
	#after_maintenance .sec01 .bgBox .textList > li .h4Ttl::before,
	#after_maintenance .sec01 .bgBox .textList > li .h4Ttl::after {
		border-width: 0 3rem 2.1rem 0;
	}
	#after_maintenance .sec01 .bgBox .textList > li .h4Ttl::after {
		border-width: 0 0 2.1rem 3rem;
	}
	#after_maintenance .sec01 .bgBox .textList .innerList {
		margin-left: -.2rem;
	}
	#after_maintenance .sec02 {
		padding: 9.9rem 0 0;
	}
	#after_maintenance .sec02 .content.sml {
		max-width: 85.7rem;
	}
	#after_maintenance .sec02 .comImgBox + .comImgBox {
		margin-top: 5.2rem;
	}
	#after_maintenance .sec02 .comImgBox .photoBox {
		width: 31.5rem;
	}
	#after_maintenance .sec02 .comImgBox .textBox {
		margin: -.3rem 0 0 4.5rem;
	}
	#after_maintenance .sec02 .comImgBox .textBox .headLine03 {
		margin: 0 -4rem 1.7rem 0;
	}
}
@media all and (max-width: 950px) and (min-width: 897px) {
	#after_maintenance .sec02 .comImgBox .textBox .headLine03 {
		font-size: 3.4rem;
	}
}
@media all and (max-width: 896px) {
	.comMainVisual .headLine01 {
		top: 105px;
	}
	.comMainVisual .headLine01 .jp {
		margin-bottom: 2px;
		letter-spacing: 0.18em;
	}
	#after_maintenance .mainVisual .mainImg {
		margin: 0 0 18px;
		width: 100%;
	}
	#after_maintenance .mainVisual .mainImg img {
		width: 100%;
	}
	.comMainVisual .ttl {
		margin-bottom: 50px;
		font-size: 2.8rem;
		line-height: 1.5;
		letter-spacing: 0.18em;
	}
	.comMainVisual + p {
		margin: -10px 0 60px;
		font-size: 1.5rem;
		line-height: 2.467;
		letter-spacing: 0.22em;
	}
	#after_maintenance .sec01 .h3Ttl {
		margin-bottom: 26px;
		font-size: 2.7rem;
		line-height: 1.481;
		letter-spacing: 0.22em;
	}
	#after_maintenance .sec01 {
		padding: 45px 0 20px;
	}
	#after_maintenance .sec01 .bgBox {
		padding: 28px 28px 32px;
		max-width: inherit;
	}
	#after_maintenance .sec01 .content > p {
		margin: 0 8px 35px;
		font-size: 1.3rem;
		text-align: justify;
		line-height: 1.769;
	}
	#after_maintenance .sec01 .bgBox p {
		margin-bottom: 19px;
		font-size: 1.7rem;
		text-align: center;
		line-height: 1.529;
		letter-spacing: 0.04em;
	}
	#after_maintenance .sec01 .bgBox .imgBox {
		margin: 25px 22px 0;
		display: flex;
		justify-content: center;
	}
	#after_maintenance .sec01 .bgBox .img {
		margin: 0 27px 0 0;
		width: 82px;
	}
	#after_maintenance .sec01 .bgBox .textList {
		width: 126px;
		flex-direction: column;
	}
	#after_maintenance .sec01 .bgBox .textList > li {
		margin-bottom: 4px;
		padding: 10px 9px 45px 15px;
		width: fit-content;
		position: relative;
		display: flex;
		justify-content: flex-end;
		flex-direction: row-reverse;
		background-color: #9B9FA3;
	}
	#after_maintenance .sec01 .bgBox .textList > li.spe {
		flex: 1;
	}
	#after_maintenance .sec01 .bgBox .textList > li:last-child {
		margin-bottom: 0;
	}
	#after_maintenance .sec01 .bgBox .textList > li::before,
	#after_maintenance .sec01 .bgBox .textList > li::after {
		width: 0;
		height: 0;
		position: absolute;
		left: 0;
		bottom: 0;
		border-style: solid;
		border-width: 43px 0 0 63px;
		border-color: transparent transparent transparent #FAFAF8;
		content: "";
	}
	#after_maintenance .sec01 .bgBox .textList > li::after {
		left: auto;
		right: 0;
		border-width: 0 0 43px 63px;
		border-color: transparent transparent #FAFAF8 transparent;
	}
	#after_maintenance .sec01 .bgBox .textList > li.spe {
		background-color: #76633C;
	}
	#after_maintenance .sec01 .bgBox .textList .innerList {
		margin: 3px 0 0;
		display: flex;
		flex-direction: row-reverse;
	}
	#after_maintenance .sec01 .bgBox .textList .innerList li {
		color: #fff;
		font-size: 1.2rem;
		letter-spacing: 0.02em;
		line-height: 1.667;
		writing-mode: vertical-rl;
	}
	#after_maintenance .sec01 .bgBox .textList > li .h4Ttl {
		margin: 7px 0 0 6px;
		padding: 0;
		display: block;
		font-size: 2.2rem;
		letter-spacing: 0.05em;
		writing-mode: vertical-rl;
		white-space: nowrap;
		font-feature-settings: normal;
		background-color: transparent !important;
	}
	#after_maintenance .sec01 .bgBox .textList > li.spe .h4Ttl {
		margin: 7px 0 0 6px
	}
	#after_maintenance .sec01 .bgBox .textList > li .h4Ttl::after,
	#after_maintenance .sec01 .bgBox .textList > li .h4Ttl::before {
		display: none;
	}
	#after_maintenance .sec01 .bgBox .textList > li.spe .innerList li {
		color: #fff;
	}
	#after_maintenance .sec02 .comImgBox {
		margin: 0 10px;
	}
	#after_maintenance .sec02 .comImgBox .photoBox {
		margin: 0;
		width: auto;
	}
	#after_maintenance .sec02 .comImgBox .textBox {
		margin: 27px 0 0;
	}
	#after_maintenance .sec02 {
		padding: 72px 0 0;
	}
	#after_maintenance .sec02 .comImgBox .textBox .headLine03 {
		margin: 0 0 19px;
		line-height: 1.259;
		letter-spacing: 0.22em;
	}
	#after_maintenance .sec02 .comImgBox .textBox p {
		font-weight: 700;
		line-height: 1.769;
		font-family: var(--font-noto-sans-jp);
	}
	#after_maintenance .sec02 .comImgBox + .comImgBox {
		margin-top: 64px;
	}
}
@media all and (max-width: 896px) and (min-width: 660px) {
	.comMainVisual .ttl {
		margin-bottom: 20px;
	}
}
@media all and (max-width: 374px) {
	#after_maintenance .sec01 .bgBox {
		padding: 28px 20px 32px;
	}
}


/* renovation */
#renovation #gHeader {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}
#after_maintenance .whiteBg,
#renovation .whiteBg {
	background-color: #fff;
}
#renovation .mainImg {
	margin-top: 6.8rem;
	width: 92.7rem;
}
#renovation .comMainVisual .ttl {
	margin-bottom: 0;
}
#renovation .comMainVisual .headLine01 {
	top: 20.3rem;
}
#renovation .comMainVisual + p {
	margin-top: 3.5rem;
}
#renovation .whiteBg {
	margin-bottom: 8.8rem;
}
#renovation .imgtext {
	text-align: center;
}
#renovation .imgtext img {
	width: 27.9rem;
}
#renovation .comImgBox01 {
	padding: 7.7rem 0 7.9rem;
}
#renovation .comImgBox02 {
	padding: 0 0 9.3rem;
}
#renovation .textArea {
	margin: 0 auto 12rem;
	padding: 3.8rem 6% 4.5rem;
	width: 93%;
	position: relative;
	box-sizing: border-box;
	background: #fff;
}
#renovation .textArea::after {
	content: "";
	width: 18rem;
	height: 7.9rem;
	position: absolute;
	right: -5.7%;
	bottom: -14%;
	background: url("img/renovation/img.png") no-repeat center center / 100%;
}
#renovation .textArea .h3Ttl01 {
	margin-bottom: 1.7rem;
	padding-bottom: 1.9rem;
	text-align: center;
	font-size: 2.2rem;
	letter-spacing: 0.11em;
	border-bottom: 0.1rem solid rgba(159, 159, 159, 0.7);
}
#renovation .textArea .textList {
	margin-left: 1.7rem;
}
#renovation .textArea .textList li {
	width: 50%;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 1.6rem;
	line-height: 1.74;
	letter-spacing: 0.05em;
	font-feature-settings: "palt";
	box-sizing: border-box;
}
#renovation .textArea .textList li:nth-child(2n) {
	width: 48.8%;
}
#renovation .textArea .textList li .color {
	color: #B55728;
}
#renovation .reform {
	margin-bottom: 7.5rem;
	padding: 6.4rem 0 9.4rem;
	background: #FFFFFF;
}
#renovation .h3Ttl02 {
	margin-bottom: 2.3rem;
	text-align: center;
	color: #76633C;
	font-size: 3.2rem;
	letter-spacing: 0.25em;
}
#renovation .reform p {
	margin-bottom: 3.8rem;
	text-align: center;
	letter-spacing: 0.09em;
	line-height: 1.75;
}
#renovation .reform .photoList li {
	width: 33.333%;
}
#renovation .reform .photoList li img {
	width: 100%;
}
#renovation .btnBox {
	margin-bottom: 10.9rem;
}
#renovation .btnBox .h3Ttl02 {
	margin-bottom: 2.6rem;
	color: #B55728;
}
#renovation .btnBox .comBtn02 a {
	margin: 0 auto;
	width: 45.5rem;
	height: 9.5rem;
	color: #fff;
	font-size: 2.4rem;
	letter-spacing: 0.2em;
	background-color: #756340;
	transition: none;
}
#renovation .btnBox .comBtn02 a .arrow {
	width: 0.9rem;
	height: 1.1rem;
	right: 2.5rem;
}
#renovation .btnBox .comBtn02 a .arrow img {
	width: 100%;
}
#renovation .comImgBox .textBox .headLine03 {
	letter-spacing: 0.24em;
}
#renovation .comImgBox.comImgBoxR .textBox .headLine03 {
	color: #75633E;
}
#renovation .comImgBox .textBox p {
	letter-spacing: 0.08em;
}
@media all and (min-width: 897px) and (max-width: 960px) {
	#renovation .textArea {
		width: 95%;
		padding-left: 4%;
		padding-right: 4%;
	}
}
@media all and (max-width: 896px) {
	#renovation .mainVisual .mainImg {
		margin: 0 0 18px;
	}
	#renovation .mainVisual .mainImg img {
		width: 100%;
	}
	#renovation .comMainVisual .headLine01 {
		top: 105px;
	}
	#renovation .comMainVisual .ttl {
		margin-bottom: 50px;
	}
	#renovation .comMainVisual + p {
		margin-top: -11px;
	}
	#renovation .whiteBg {
		margin-bottom: 57px;
	}
	#renovation .comImgBox {
		padding: 33px 30px 49px;
	}
	#renovation .comImgBox .textBox .headLine03 {
		margin-bottom: 16px;
		letter-spacing: 0.22em;
	}
	#renovation .comImgBox .textBox p {

	}
	#renovation .imgtext img {
		width: 238px;
	}
	#renovation .comImgBox01 {
		padding: 47px 30px 41px;
	}
	#renovation .comImgBox01 .photoBox {
		margin-bottom: 27px;
	}
	#renovation .comImgBox01 .headLine03 {
		line-height: 1.27;
		letter-spacing: 0.2em;
	}
	#renovation .comImgBox01 p {
		letter-spacing: 0.1em;
	}
	#renovation .comImgBox02 {
		padding: 0 30px 51px;
	}
	#renovation .comImgBox02 .photoBox {
		margin-bottom: 27px;
	}
	#renovation .comImgBox02 .headLine03 {
		line-height: 1.26;
		letter-spacing: 0.2em;
	}
	#renovation .comImgBox02 p {
		letter-spacing: 0.1em;
	}
	#renovation .textArea {
		margin: 0 0 60px;
		padding: 23px 28px;
		width: auto;
	}
	#renovation .textArea::after {
		width: 13.2rem;
		height: 7rem;
		right: -2.3rem;
		bottom: -2.9rem;
	}
	#renovation .textArea .h3Ttl01 {
		margin-bottom: 1.2rem;
		padding-bottom: 1.2rem;
		font-size: 1.8rem;
		line-height: 1.47;
	}
	#renovation .textArea .textList {
		margin-left: 0;
		display: block;
	}
	#renovation .textArea .textList li {
		margin-bottom: 4px;
		width: auto;
		font-size: 1.3rem;
		letter-spacing: 0;
		line-height: 1.77;
	}
	#renovation .textArea .textList li:nth-child(2n) {
		width: auto;
	}
	#renovation .textArea .textList li:last-child {
		margin-bottom: 0;
	}
	#renovation .reform {
		margin-bottom: 53px;
		padding: 47px 0 30px;
	}
	#renovation .h3Ttl02 {
		margin-bottom: 24px;
		font-size: 2.7rem;
		line-height: 1.5;
	}
	#renovation .reform p {
		margin-bottom: 26px;
		font-size: 1.3rem;
		letter-spacing: 0.08em;
		line-height: 1.76;
	}
	#renovation .reform .photoList {
		margin: 0 10px;
		display: block;
	}
	#renovation .reform .photoList li {
		width: auto;
	}
	#renovation .btnBox {
		margin-bottom: 68px;
	}
	#renovation .btnBox .h3Ttl02 {
		margin-bottom: 17px;
		font-size: 1.8rem;
		letter-spacing: 0.2em;
	}
	#renovation .btnBox .comBtn02 a {
		width: 335px;
		max-width: 100%;
		height: 55px;
		font-size: 1.6rem;
		letter-spacing: 0.12em;
	}
	#renovation .btnBox .comBtn02 a .arrow {
		width: 7px;
		right: 24px;
	}
}
@media all and (max-width: 374px) {
	#renovation .textArea {
		padding: 23px 20px;
	}
}
.hover-link{
	text-decoration: underline;
}
.hover-link:hover{
	text-decoration: none;
}

/* 20230713 */
/*------------------------------------------------------------
	reservation
------------------------------------------------------------*/
@media all and (min-width: 897px) {
	#contact #main > .content.reservation > h3 {
		margin-bottom: 4.3rem;
	}
}
@media all and (max-width: 896px) {
	.comEventBox.reservationEventBox {
		margin: 0 auto;
		max-width: 335px;
		padding: 0 3px 0 2px;
	}
}
.fancybox-bg {
	opacity: 1;
	background: #fafaf8 !important;
}
.fancybox-is-open .fancybox-bg {
	opacity: 1;
}
.fancybox-close-small svg {
	display: none;
}
.fancybox-close-small {
	width: 2.2rem;
	height: 2.2rem;
	right: -4.1rem;
    top: 0.1rem;
	background: url(img/common/icon_close.png) no-repeat center / 100%;
}
.fancybox-slide--image {
	padding: 3.1rem 8.8rem 5.7rem;
}
.fancybox-slide--image::before {
	width: 0;
	height: 100%;
	display: inline-block;
	vertical-align: middle;
	content: "";
}
.fancybox-button {
	background-color: #fafaf8;
}
.fancybox-button, .fancybox-button:visited, .fancybox-button:link {
	color: #444;
}
.fancybox-caption {
	background: linear-gradient(
		to top,
		rgba(255, 255, 255, .85) 0%,
		rgba(255, 255, 255, .3) 50%,
		rgba(255, 255, 255, .15) 65%,
		rgba(255, 255, 255, .075) 75.5%,
		rgba(255, 255, 255, .037) 82.85%,
		rgba(255, 255, 255, .019) 88%,
		rgba(255, 255, 255, 0) 100%
		);
	color: #604D28;
}
@media all and (min-width: 897px) {
	.fancybox-button:hover {
		color: #000;
	}
	.fancybox-slide--image {
		padding: 9.1rem 17rem 11.6rem;
	}
}
@media all and (max-width: 896px) {
	.fancybox-button:hover {
		color: #444;
	}
	.fancybox-slide--image {
		overflow: auto;
		padding: 31px 47px 57px;
	}
	.fancybox-close-small {
		right: -30px;
	}
}
/*  20240207  */
#index .event .imgArea {
	padding: 70px 0;
	border-top: 1px dashed #b9b9b9;
	border-bottom: 1px dashed #b9b9b9;
}
#index .event .imgArea a {
	margin: 0 auto;
	max-width: 920px;
	display: block;
	position: relative;
}
#index .event .imgArea .textArea {
	padding: 25px 233px 31px 47px;
	position: relative;
	background-color: #fff;
}
#index .event .imgArea .date {
	margin: 0 0 9px 59px;
	font-size: 3.6rem;
	letter-spacing: 0.12em;
}
#index .event .imgArea .date .blue {
	color: #0071a4;
}
#index .event .imgArea .date .red {
	color: #b50000;
}
#index .event .imgArea h4 {
	margin-bottom: 14px;
	padding: 0 0 20px 5px;
	border-bottom: 1px dashed #b9b9b9;
}
#index .event .imgArea h5 {
	font-size: 2.7rem;
	letter-spacing: 0.02em;
}
#index .event .imgArea h5 small {
	margin-bottom: 2px;
	display: block;
	font-size: 1.6rem;
	letter-spacing: 0.02em;
}
#index .event .imgArea .floatBox {
	width: 117px;
	height: 117px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: absolute;
    left: -37px;
    top: -29px;
	color: #fff;
	font-size: 2.4rem;
	line-height: 1.1;
	letter-spacing: 0.08em;
	z-index: 1;
}
#index .event .imgArea .floatBox::after {
	width: 117px;
	height: 117px;
	position: absolute;
	left: 50%;
	top: 50%;
	border-radius: 60px;
	background-color: #80ae3f;
	transition: all 0.8s cubic-bezier(0.19, 0.08999, 0.2, 1);
	transform: translate(-50%, -50%);
	z-index: -1;
	content: "";
}
#index .event .imgArea .photoArea {
	width: 234px;
	position: absolute;
    right: -4px;
    top: -17px;
	bottom: auto;
	transition: all 0.8s cubic-bezier(0.19, 0.08999, 0.2, 1);
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
@media all and (min-width: 897px) {
	#index .event .imgArea a:hover .photoArea {
		transform: rotate(5deg);
		clip-path: polygon(5% 5%, 95% 5%, 95% 95%, 5% 95%);
	}
}
@media all and (min-width: 897px) and (max-width: 1000px) {
	#index .event .imgArea .date {
		margin-left: 30px;
	}
}
@media all and (max-width: 896px) {
	#index .event .imgArea .photoArea {
		margin: 0 19px 19px;
		position: relative;
		right: auto;
		bottom: auto;
		top: auto;
		width: auto;
	}
	#index .event .imgArea a {
		margin: 0 10px;
		padding: 29px 20px 24px;
		display: flex;
		background-color: #fff;
		flex-direction: column-reverse;
	}
	#index .event .imgArea {
		padding: 52px 0 43px;
	}
	#index .event .imgArea .textArea {
		padding: 0;
		position: static;
	}
	#index .event .imgArea .date {
		margin: 0 0 5px;
		font-size: 1.5rem;
	}
	#index .event .imgArea h4 {
		max-width: 260px;
		width: 100%;
		padding: 0 0 17px 3px;
	}
	#index .event .imgArea h5 {
		font-size: 1.7rem;
		line-height: 1.411;
	}
	#index .event .imgArea h5 small {
		margin-bottom: 9px;
		font-size: 1.2rem;
	}
	#index .event .imgArea .floatBox {
		width: 84px;
		height: 84px;
		font-size: 1.7rem;
		line-height: 1.111;
		left: -11px;
		top: -32px;
	}
	#index .event .imgArea .floatBox::after {
		width: 84px;
		height: 84px;
	}
}
@media all and (min-width: 1367px) {
	#index .event .imgArea {
		padding: 7rem 0;
	}
	#index .event .imgArea a {
		max-width: 92rem;
	}
	#index .event .imgArea .textArea {
		padding: 2.5rem 23.3rem 3.1rem 4.7rem;
	}
	#index .event .imgArea .date {
		margin: 0 0 0.9rem 5.9rem;
	}
	#index .event .imgArea h4 {
		margin-bottom: 1.4rem;
		padding: 0 0 2rem 0.5rem;
	}
	#index .event .imgArea h5 small {
		margin-bottom: 0.2rem;
	}
	#index .event .imgArea .floatBox {
		width: 11.7rem;
		height: 11.7rem;
		left: -3.7rem;
		top: -2.9rem;
	}
	#index .event .imgArea .floatBox::after {
		width: 11.7rem;
		height: 11.7rem;
		border-radius: 50%;
	}
	#index .event .imgArea .photoArea {
		width: 23.4rem;
		right: -0.4rem;
	}
}
#contact.seminarReserve #main .content .textImg.style02 {
	margin-bottom: 85px;
	max-width: 920px;
	box-shadow : 0px 10px 30px rgba(0, 0, 0, 0.1);
	padding: 0;
	border-bottom: none;
}
#contact.seminarReserve #main .content .textImg.style02 img {
	width: 100%;
}
#contact.seminarReserve #main .content .textImg.style02 + h3 {
	border-bottom: 1px dashed #B6B6B6;
	margin: 0 auto 22px;
	max-width: 858px;
	padding-bottom: 25px;
}
#contact .mailForm dt br + .must {
	display: block;
}
@media all and (max-width: 896px) {
	#contact.seminarReserve #main .content .textImg.style02 {
		margin-bottom: 37px;
	}
}

/* 202405 */
#index .event .imgArea:not(:last-child) {
	border-bottom: none;
}
#index .event .imgArea + .imgBox,
#index .event .imgArea + .imgArea {
	border-top: none;
}
#index .event .imgArea + .imgBox:not(:last-child),
#index .event .imgArea + .imgArea:not(:last-child) {
	border-bottom: none;
}
#index .event .imgBox .banner {
	padding-right: 28px;
}
#index .event .imgBox .banner a {
	display: block;
	position: relative;
	max-width: 946px;
}
#index .event .imgBox .banner .img {
	position: absolute;
	z-index: 1;
	transition: all 0.8s cubic-bezier(0.19, 0.08999, 0.2, 1);
}
#index .event .imgBox .banner .img img {
	display: block;
	transition: all 0.8s cubic-bezier(0.19, 0.08999, 0.2, 1);
}
#index .event .imgBox .banner .img.icon {
	z-index: 2;
	left: 0;
	top: 0;
	width: 12.4%;
	max-width: 117px;
}
#index .event .imgBox .banner .img01 {
	right: 6.5%;
	top: 1.5%;
	max-width: 330px;
	width: 34.9%;
	transform: rotate(5.5deg);
}
#index .event .imgBox .banner .img02 {
	right: 33.2%;
	bottom: -5.6%;
	max-width: 115px;
	width: 12.3%;
	transform: rotate(-7deg);
}
@media all and (min-width: 1367px) {
	#index .event .imgBox .banner {
		padding-right: 2.8rem;
	}
	#index .event .imgBox .banner a {
		max-width: 96rem;
	}
	#index .event .imgBox .banner .img.icon {
		max-width: 11.7rem;
	}
	#index .event .imgBox .banner .img01 {
		max-width: 33rem;
	}
	#index .event .imgBox .banner .img02 {
		max-width: 11.5rem;
	}
}
@media all and (min-width: 897px) {
	#index .event .imgBox .banner a:hover {
		opacity: 1;
	}
	#index .event .imgBox .banner a:hover .img:not(.icon) img {
		transform: scale(0.95);
	}
	#index .event .imgBox .banner a:hover .img02,
	#index .event .imgBox .banner a:hover .img01 {
		transform: rotate(0deg);
	}
}
@media all and (max-width: 896px) {
	#index .event .imgBox .banner {
		margin: 20px 4px 0 -5px;
		padding-right: 0;
	}
	#index .event .imgBox .banner a {
		display: block;
		position: relative;
		max-width: 946px;
	}
	#index .event .imgBox .banner .img {
		position: absolute;
		z-index: 1;
	}#index .event .imgBox .banner .img.icon {
		width: 25.46%;
		max-width: inherit;
	}
	#index .event .imgBox .banner .img01 {
		right: -1.5%;
		top: 12.1%;
		max-width: inherit;
		width: 88.35%;
	}
	#index .event .imgBox .banner .img02 {
		right: auto;
		left: 10%1.5%;
		bottom: auto;
		top: 39%;
		max-width: inherit;
		width: 34.97%;
	}
}
#contact .mailForm.style02 dt.style01,
#contact .mailForm.style02 dd.style01,
#contact .mailForm.style01 dt.style02,
#contact .mailForm.style01 dd.style02 {
	display: none;
}
#contact.reservation .mailForm .hopeDateList {
	margin-right: -10px;
}
#contact.reservation .mailForm .hopeDateList li:not(:last-child) {
	margin-bottom: 22px;
}
#contact.reservation .mailForm .hopeDateList .hopeTime,
#contact.reservation .mailForm .hopeDateList .hopeDate,
#contact.reservation .mailForm .hopeDateList p {
	margin-right: 8px;
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.714;
	letter-spacing: 0.08em;
}
#contact.reservation .mailForm .hopeDateList .strong {
	margin-right: 25px;
	font-weight: 700;
}
#contact.reservation .mailForm .hopeDateList .hopeTime {
	margin-left: 14px;
	margin-right: 7px;
}
@media all and (max-width: 896px) {
	#contact.reservation .mailForm .hopeDateList p {
		margin: 0 0 10px;
		display: block;
	}
	#contact.reservation .mailForm .hopeDateList .strong {
		margin: 0;
	}
	#contact.reservation .mailForm .hopeDateList .hopeTime {
		margin: 0;
	}
	#contact.reservation .mailForm .hopeDateList input[type="text"],
	#contact.reservation .mailForm .hopeDateList select {
		width: 100%;
	}
	#contact.reservation .mailForm .hopeDateList .inner {
		display: flex;
		justify-content: space-between;
	}
	#contact.reservation .mailForm .hopeDateList .innerBox {
		width: calc(50% - 10px);
	}
}
@media all and (min-width: 897px) {
	.menuBox .hNav {
		gap: 0 !important;
		justify-content: space-between !important;
	}
}
.eventMainImg {
	height: auto !important;
	font-size: 0;
}
.eventMainImg img {
	width: 100%;
	height: 400px;
	object-fit: cover;
}
@media all and (min-width: 1367px) {
	.eventMainImg img {
		height: 40rem;
	}
}
.eventMainImg .slick-dots {
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	display: flex;
	justify-content: center;
	gap: 10px;
	z-index: 2;
}
.eventMainImg .slick-dots li {
	width: 10px;
	height: 10px;
	border-radius: 10px;
	overflow: hidden;
	background-color: #fff;
}
.eventMainImg .slick-dots li button {
	display: none;
}
.eventMainImg .slick-dots li.slick-active {
	background-color: #000;
}
.eventMainImg .slick-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	font-size: 0;
	width: 40px;
	height: 40px;
	border: none;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	appearance: none;
	background: none;
	cursor: pointer;
}
.eventMainImg .slick-arrow.slick-next {
	right: 30px;
	transform: rotate(45deg);
}
.eventMainImg .slick-arrow.slick-prev {
	left: 30px;
	transform: rotate(-135deg);
}
@media all and (min-width: 897px) and (max-width: 1366px) {
	#index .event .imgArea {
		padding: 35px 0;
	}
	#index .event .imgArea:nth-child(2) {
		padding-top: 70px;
	}
}
@media all and (min-width: 897px) {
	#index .event .imgArea .photoArea {
		transform: rotate(5deg);
	}
	#index .event .imgArea a .photoArea img {
		transition: all 0.8s cubic-bezier(0.19, 0.08999, 0.2, 1);
	}
	#index .event .imgArea a:hover .photoArea {
		transform: rotate(0deg);
		clip-path: none;
	}
	#index .event .imgArea a:hover .photoArea img {
		transform: scale(0.95);
	}
	#index .event .imgArea .txt {
		font-size: 2.2rem;
		letter-spacing: 0.02em;
	}
	#index .event .imgArea .txt .bg {
		padding: 0 0.5rem;
		margin-right: 1rem;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background-color: #593019;
		color: #fff;
	}
	#index .event .imgArea .txt .yellow {
		color: #FFED00;
	}
	#index .event .imgArea.img2 h5 {
		margin-top: 0.5rem;
		font-size: 1.6rem;
	}
	#index .event .imgArea .date > img {
		display: block;
	}
}
@media all and (max-width: 896px) {
	#index .event .imgArea {
		padding: 25px 0;
	}
	#index .event .imgArea:nth-child(2) {
		padding-top: 50px;
	}
	#index .event .imgArea .txt {
		font-size: 1.4rem;
		letter-spacing: 0.01em;
	}
	#index .event .imgArea .txt .bg {
		padding: 0 0.2rem;
		margin: 0 0 0.5rem;
		max-width: 16.2rem;
		line-height: 1.1;
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: #593019;
		color: #fff;
	}
	#index .event .imgArea .txt .yellow {
		color: #FFED00;
	}
	#index .event .imgArea.img2 h5 {
		margin-top: 0.5rem;
		font-size: 1.2rem;
	}
	#index .event .imgArea .date > img {
		display: block;
		max-width: 68.82%;
	}
	#index .event .imgBox {
		margin-top: -30px;
		padding-top: 0;
	}
	.eventMainImg .slick-slide img {
		height: auto;
		aspect-ratio: 3/2;
	}
}
#contact .mailForm .notice .point {
	font-size: 0.64em;
	vertical-align: middle;
}
#contact .mailForm .textarea textarea {
	display: none;
}
#contact .mailForm .textarea span {
	display: block;
	width: 100%;
}
#news .btn a {
    width: 458px;
    margin: 0 auto;
    flex-direction: column;
    display: flex;
    height: 96px;
    color: #fff;
    position: relative;
    font-size: 2.4rem;
    align-items: center;
    justify-content: center;
    background: #80ae3f;
    letter-spacing: 0.1em;
}
#news .btn a:before {
    margin-top: -6px;
    position: absolute;
    right: 24px;
    background: url("img/event/detail/heart_icon.png") no-repeat right center;
    background-size: 9px auto;
    width: 9px;
    height: 12px;
    content: "";
}
#news .btn a:hover {
    opacity: 0.7;
}
#news .btn .small {
    margin-bottom: -4px;
    font-size: 1.4rem;
    letter-spacing: 0;
}
@media all and (min-width: 1367px) {
	#news .btn a {
		width: 45.8rem;
		height: 9.6rem;
	}
	#news .btn a:before {
		margin-top: -.6rem;
		right: 2.4rem;
		background-size: .9rem auto;
		width: .9rem;
		height: 1.2rem;
	}
	#news .btn .small {
		margin-bottom: -.4rem;
	}
}
@media all and (max-width: 896px) {
    #news .btn a {
        width: 100%;
        height: 92px;
        font-size: 2.2rem;
    }
    #news .btn a:before {
        margin-top: -5px;
        right: 16px;
        background: url("img/event/detail/sp_heart_icon.png") no-repeat right center;
        background-size: 7px auto;
        width: 7px;
        height: 9px;
    }
    #news .btn .small {
        margin-bottom: -7px;
        font-size: 1.3rem;
    }
}
@media all and (max-width: 374px) {
    #news .btn a:before {
        right: 10px;
    }
}