*,::after,::before{
	box-sizing:border-box;
	overflow-wrap:break-word;
	/* word-wrap:break-word; */
	/* word-break:break-all; */
}

html{line-sizing:normal}
body{margin:0}
h1{font-size:2rem}
h2{font-size:1.5rem}
h3{font-size:1.17rem}
hr{border-style:solid;border-width:1px 0 0;color:inherit;height:0;overflow:visible}
audio,canvas,embed,iframe,img,object,svg,video,picture{display:block;vertical-align:middle;max-width:100%}
canvas,img,svg,video{height:auto}
audio{width:100%}
img{border-style:none}
svg{overflow:hidden}
article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}
[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}
p, dd, figure {margin: 0;}
em { font-style: normal; }
h1,h2,h3 { margin: 0; }
ul { list-style: none; padding: 0; margin-left: 0; }
html {
	position: relative;
	min-height: 100%;
}
body {
	height: 100%;
	margin: 0;
	padding: 0;
	font-size: 100%;
	font-family: 'Noto Serif JP', 'Lato', serif;
	font-weight: 300;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
	color: rgba(30,30,30,1);
	background: #fff;
	overflow-x: hidden;
	animation: wholefade 1.5s ease-in-out 1 normal forwards;
	/* will-change: opacity; */
}
body.home {
	color: rgba(91,91,91,1);
}

/* @media (min-width:750px) {
	body:not(.home) {
		animation: wholeSlide .25s ease-in-out 0s 1 normal forwards;
		will-change: opacity transform;
	}
} */
@keyframes wholefade {
	from, 0% { opacity: 0; }
	to, 99% { opacity: 1; }
}
/* @keyframes wholeSlide {
	from, 0% { opacity: 0; transform: translateY(60vh); }
	to, 99% { opacity: 1; transform: translateY(0); }
} */






.post, .page {
	margin-bottom: 0;
}

.navBtn {z-index: 700000!important;}
.drawerWrap {z-index: 600000!important;}
.knockOut {z-index: 500000!important;}
#drawerCheckbox,.drawerWrap, .drawerInner .localNav, .navBtn { display: none; }
@media (max-width: 750px) {
	.drawerInner .localNav {
		display: block;
	}
	.navBtn {
		/* position: absolute; */
		/* right: 0; */
		/* top: 50%; */
		cursor: pointer;
		display: inline-block;
		margin: 0 auto;
		width: 50px;
	    height: 50px;
	    transform: rotate3d(0,0,0,0deg);
		transition: all .1s cubic-bezier(0.55, 0.055, 0.675, 0.19);

		background: #7E7565;
	}
	.navBtn span,
	.navBtn span::before,
	.navBtn span::after {
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		/* width: 100%; */
		height: 1px;
		background: #fff;
	}
	.navBtn span {
		width: 40%;
		top: 50%;
	}
	.navBtn span::before {
		width: 100%;
		content: '';
		top: -6px;
		transform: rotate3d(0,0,0,0deg);
		transition: top .2s ease-in .2s, transform .2s ease-in;
	}
	.navBtn span::after {
		width: 100%;
		content: '';
		top: 6px;
		transform: rotate(0deg);
		transition: top .2s ease-in .2s, transform .2s ease-in;
	}
	#drawerCheckbox:checked ~ .navBtn {
		right: calc( (20vw / 2 ) - (1.75rem / 2) );
		transform: rotate3d(0,0,1,0deg);
		transition: all .3s ease .1s;
	}
	#drawerCheckbox:checked ~ .navBtn span {
		background: transparent !important;
		transition: background .1s ease;
		box-shadow: none;
	}
	#drawerCheckbox:checked ~ .navBtn span::before,
	#drawerCheckbox:checked ~ .navBtn span::after {
		width: 100%;
		top: 0;
		bottom: 0;
		box-shadow: none;
		background: #fff;
	}
	#drawerCheckbox:checked ~ .navBtn span::before {
		transform: rotate3d(0,0,1,45deg);
		top: 0;
		transition: top .2s ease, transform .2s ease .2s;
	}
	#drawerCheckbox:checked ~ .navBtn span::after {
		transform: rotate3d(0,0,1,-45deg);
		top: 0;
		transition: top .2s ease, transform .2s ease .2s;
	}

	.drawerWrap {
		display: none;
		width: 100vw;
		height: calc( 100vh - 50px );
		background: linear-gradient(136deg, #717275, #B9B9B9);
		display: block;
		position: fixed;
		top: 50px;
		left: -100vw;
		padding-bottom: 16vh;
		transform: translateX(0);
		transition: transform .4s cubic-bezier(0.1, 0.57, 0.1, 1);
		-webkit-overflow-scrolling: touch;
		pointer-events: none;
		overflow-y: scroll;
	}
	#drawerCheckbox:checked ~ .drawerWrap {
		opacity: 1;
		transform: translateX(100vw);
		transition: transform .5s cubic-bezier(0.1, 0.57, 0.1, 1);
		pointer-events: auto;
	}

	.drawerWrap .drawerInner {
		padding: 10vmin 0 0 0;
	}
	.drawerInner .localNav ul {
		padding-left: 0;
	}
	.drawerInner .localNav ul li {
		width: 100%;
		display: block;
		text-decoration: none;
		text-align: left;
		margin: 2.5rem 0;
		line-height: 1;
	}
	.drawerInner .localNav ul li a {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		width: 100%;
		height: 100%;
		padding: 0;
		font-size: min(3vmax, 24px);
		color: #fff;
		line-height: 1;
		font-family: 'Lato';
		font-weight: 300;
		text-decoration: none;
		text-align: center;
	}
	.drawerInner .localNav ul li a::before {
		content: '';
		height: 1px;
		width: 1.5em;
		background: #fff;
		margin-right: .5em;
	}
}

.inner {
	width: 100%;
	max-width: 1230px;
	margin: 0 auto;
	position: relative;
}
@media (min-width:750px) {
	.inner {

	}
}

/* GLOBAL HEADER
_____________________________________________ */
.globalHeader {
	display: flex;
	flex-direction: column;
	position: sticky;
	top: 0;
	z-index: 1000;
	background: #1f1f1f;
	width: 100%;
	height: 50px;
	margin-bottom: 0;
	margin-bottom: -50px;
	/* align-items: stretch; */
}
@media (min-width:750px) {
	.globalHeader {
		padding: 0;
		justify-content: space-between;
	}
	body.home .globalHeader {
		height: min(9vw, 170px);
		margin-bottom: calc( min(9vw, 170px) * -1 );
		transition: height .25s ease-out;
	}
	/* body:not(.home) .globalHeader, */
	body.home .globalHeader.narrow {
		height: min(9vw, 118px);
		margin-bottom: calc( min(9vw, 118px) * -1 );
	}
	body:not(.home) .globalHeader {
		height: min(9vw, 118px);
		margin-bottom: calc( (min(9vw, 118px) * -1) / 2 );
	}
}

.globalFunc {
	display: flex;
	flex-direction: row;
	align-items: center;
	width: 100%;
	height: 100%;
	max-width: 1230px;
	margin: 0 auto;
}
.globalFunc .siteID {
	flex-grow: 1;
	height: 100%;
}
.globalFunc .siteID a {
	width: 100px;
	height: 25px;
	display: inline-block;
	position: relative;
	transform: translateY(60%);
	margin-left: 1em;
}
.globalFunc .siteID img {
	width: 100%;
    height: 100%;
    /* position: absolute;
    top: 50%;
    transform: translateY(-18%); */
}
.globalFunc .func {
	display: flex;
	align-items: center;
}
.globalFunc .func .lang {
	display: none;
}
.globalFunc .func .toContact {
	display: none;
}
.globalFunc .func .toLine {
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(154,139,110,1);
	text-decoration: none;
	color: #fff;
	height: 100%;
	min-height: 50px;
	padding: 0 1.25em;
}
.globalFunc .func .toContact:hover {
	background: rgba(200,176,135,1);
}
.globalFunc .func .toLine:hover {
	background: rgba(200,176,135,1);
}
@media (min-width:750px) {
	.globalFunc {
		height: 60px;
		margin: 0 auto;
		justify-content: space-between;
		flex-direction: row;
		align-items: center;
	}
	.globalFunc .siteID a {
		width: 182px;
		height: 46px;
		transform: translateY(50%);
		margin-left: 0;
	}
}

.func .lang {
	display: flex;
	flex-direction: column;
	position: relative;
	cursor: pointer;
	justify-content: center;
}
.func .lang .currentLang {
	display: flex;
	align-items: center;
	color: #fff;
	font-family: 'Lato';
	font-weight: 300;
	font-size: 20px;
}
.func .lang .currentLang::before {
	content: '';
	display: inline-block;
	width: 23px;
	height: 23px;
	margin-right: .25em;
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url(img/ico_lang.svg);
}
.func .lang:hover .currentLang,
.func .lang.open .currentLang {
	color: #CCC1A9;
}
.func .lang:hover .currentLang:before,
.func .lang.open .currentLang:before {
	background-image: url(img/ico_lang_hov.svg);
}
.func .lang .langSele {
	display: none;
	pointer-events: none;
	position: absolute;
	background: #fff;
	width: 8em;
    padding: 1em;
    margin: 0;
	top: calc( 100% + 1em );
	left: calc((50% + 1em) * -1 );
	transition: display 1s;
	border-radius: 3px;
	z-index: 1;
}
.func .lang.open .langSele {
	display: block;
	pointer-events: auto;
}
.func .lang.open .langSele li {
	color: #CCC1A9;
	font-family: 'Lato';
	font-weight: 400;
	width: 100%;
	padding: .5em 0;
	line-height: 1;
}
.func .lang.open .langSele li a {
	color: rgba(91,91,91,1);
	text-decoration: none;
	width: 100%;
	padding: .5em 0;
}
.func .lang.open .langSele li a:hover {
	color: #CCC1A9;
}
@media (min-width:750px) {
	.globalFunc .func .lang {
		display: flex;
		padding-right: 1em;
	}
	.globalFunc .func .toContact {
		display: flex;
		align-items: center;
		justify-content: center;
		background: rgba(154,139,110,1);
		text-decoration: none;
		color: #fff;
		width: 60px;
		height: 100%;
	    min-height: 60px;
		/* margin-right: 3px; */
	}
	.globalFunc .func .toLine {
		padding: 0 2em;
		width: fit-content;
		height: 100%;
	    min-height: 60px;
	}
}

.globalHeader .globalNav {
	display: none;
}
@media (min-width: 750px) {
	.globalHeader .globalNav {
		display: block;
		background: #1f1f1f;
	}
}
.globalNav ul {
	width: 100%;
	max-width: 1000px;
	display: flex;
	justify-content: space-between;
	padding: .5em 0;
	line-height: 1;
	margin: 0 auto;
}
.globalNav ul li {
	padding: 0 1em;
}
.globalNav ul li a {
	position: relative;
	font-size: min(3.5vw, 20px);
	color: #f3f3f3;
	line-height: 1;
	font-family: 'Lato';
	font-weight: 300;
	text-decoration: none;
	display: flex;
	align-items: center;
}
.globalNav ul li a:hover {
	color: rgba(200,176,135,1);
}
.globalNav ul li a::before {
	content: '';
	display: inline-block;
	width: 24px;
	height: 24px;
	margin-right: 0;
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" height="48" width="48"><path d="M20 34V14l10 10Z" fill="%23f3f3f3"/></svg>');
}
.globalNav ul li a:hover::before {
	background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" height="48" width="48"><path d="M20 34V14l10 10Z" fill="%23C8B087"/></svg>');
}

.type01 {
	color: rgba(91,91,91,1) !important;
	background: rgba(193,193,193,1);
	border: 1px solid rgba(91,91,91,1);
}
.type02 {
	color: #fff !important;
	background: rgba(154,139,110,1);
	border: 1px solid #5B5B5B;
}
.type01:hover {
	background: rgba(200,176,135,1);
}
.type02:hover {
	background: rgba(200,176,135,1);
}
.withLine::after {
	content: '';
	height: 1px;
	width: 2.5em;
	display: block;
	background: rgba(91,91,91,1);
	position: absolute;
	right: -1em;
	top: 50%;
}

.btn {
	font-family: 'Lato';
	display: inline-flex;
	justify-content: center;
	font-size: min(4vw, 16px);
	font-weight: 500;
	text-decoration: none;
	letter-spacing: .1em;
	position: relative;
	line-height: 1;
	width: -moz-fit-content;
	width: fit-content;
	height: -moz-fit-content;
	height: fit-content;
}

@media (max-width: 750px) {
	.drawerInner .func {
		padding: 10% 4vw 5% 4vw;
		flex-wrap: wrap;
	}
	.drawerInner .func .btnWrap {
		width: 100%;
	}
	.drawerInner .func .btnWrap p {
		color: #fff;
	}
	.drawerInner .func .lang {
		display: flex;
		padding-right: 2em;
	}
	.drawerInner .func .lang .langSele {
		left: 0;
		top: auto;
		bottom: calc( 100% + 1em );
	}
	.drawerInner .func .link {
		padding-right: 2em;
		color: #fff;
	}
	.drawerInner .func .link a {
		text-decoration: none;
		color: #fff;
		margin-left: 2em;
	}
}






/* SEC00
_____________________________________________ */
.sec00 {
	width: 100%;
	/* height: 100vh; */
	display: block;
	position: relative;
	background: rgba(0,0,0,.8);
}
.sec00 > .inner {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	padding-top: 28%;
	width: 100%;
	/* height: 100%; */
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
	z-index: 1;
	color: #fff;

    /* remake : 20240329 */
	padding-top: 50%;
}
.sec00 > .inner p:nth-of-type(1) {
	font-size: min(4vw, 32px);
	margin-bottom: min(6vw, 6%);
	line-height: 1.4;
	text-align: center
}
.sec00 > .inner h1 {
	width: 90%;
	/* opacity: 0; */
	/* animation: fade 1s ease-out .5s 1 normal forwards; */
}
.sec00 .inner h1 img {
	width: 100%;
	height: 100%;
}
.sec00 > .inner p:nth-of-type(2) {
	font-size: min(3.5vw, 40px);
	letter-spacing: .05em;
	margin-top: min(10vw,14%);
	line-height: 1;
}
@media (min-width: 750px) {
	.sec00 {
		height: auto;
	}
	.sec00 > .inner {
		padding-top: max(min(9vw, 170px), min(50%, 13vw));
		/* 最低値 170px, 中間値, 最大値 */

	    /* remake : 20240329 */
	    padding-top: max(min(9vw, 200px), min(50%, 18vw));
	}
	.sec00 > .inner p:nth-of-type(1) {
		font-size: min(2vw, 26px);
	}
	.sec00 > .inner h1 {
		width: min(52vw, 930px);
	}
	.sec00 > .inner p:nth-of-type(2) {
		margin-top: 4%;
		font-size: min(2.5vw, 30px);
	}
}
@keyframes fade {
	40%  { opacity: .5; }
	45%  { opacity: 0; }
	50%  { opacity: .2; }
	51%  { opacity: 0; }
	60%  { opacity: .4; }
	65%  { opacity: 0; }
	76%  { opacity: 1; }
	100% { opacity: 1; }
}

.scroller {
    position: absolute;
	top: 115%;
	bottom: auto;
    left: 50%;
    pointer-events: none;
    transform: translate(-50%,0);
}
@media (min-width: 750px) {
	.scroller {
		/* top: 115%; */
		/* bottom: auto; */
		/* transform: translateX( calc(((100% - 1000px) / 2) * -1) ); */
	}
}
.scroller .tx {
    font-size: min(3vw, 12px);
	font-family: 'Lato';
    text-align: center;
	margin-bottom: .5em;
}
.scroller .sline {
    position: relative;
    display: block;
    width: 1px;
    height: 40px;
    margin: 0 auto;
    overflow: hidden;
}
.scroller .sline:before {
    position: absolute;
    width: 100%;
    height: 100%;
    content: "";
    background-color: #fff;
	animation: scroller 1s ease-in-out infinite;
}
@keyframes scroller {
	0% { transform: translateY(-100%) }
	to{ transform: translateY(100%) }
}


.sec00 .news {
	position: absolute;
	z-index: 1;
	width: 100%;
	background: #47484ACC;
	bottom: 0;
	left: 0;
}
.sec00 .news .inner {
	display: flex;
	padding: 4% 4%;
	flex-direction: column;
}
.sec00 .news .inner h2 {
	order: 1;
	font-family: 'Lato';
	font-weight: 400;
	color: #A8A8A8;
	font-size: min(4vw, 24px);
	display: flex;
	justify-content: flex-start;
	align-items: center;
	letter-spacing: .1em;
	margin-bottom: .5em;
}
.sec00 .news .inner div {
	order: 3;
	text-align: center;
}
.sec00 .news .inner div .btn {
	margin: 0 auto;
	padding: 1em 2em;
}
.sec00 .news .inner ul {
	width: 100%;
	margin: 0 auto;
	order: 2;
}
.sec00 .news .inner ul li:not(:last-child) {
	border-bottom: 1px dashed #A8A8A8;
}
.sec00 .news .inner ul li a {
	font-size: min(3vw, 16px);
	display: flex;
	flex-direction: row;
	color: #A8A8A8;
	text-decoration: none;
}
.sec00 .news .inner ul li a time {
	padding: 0;
	width: 6em;
}
.sec00 .news .inner ul li a p {
	padding: 0 0 1em 0;
}
.sec00 .news .inner ul li a p em {
	font-weight: 500;
}
@media (min-width: 750px) {
	.sec00 .news {
		bottom: 6%;
	}
	.sec00 .news .inner {
		display: grid;
		/* grid-template-columns: max(290px,27%) 1fr; */
		grid-template-columns: max(220px,27%) 73%;
		grid-template-rows: repeat(2, 1fr);
		grid-column-gap: 0px;
		grid-row-gap: 0px;
		padding: 1.5% 80px;
	}
	.sec00 .news .inner h2 {
		grid-area: 1 / 1 / 2 / 2;
		width: 60%;
		line-height: 1;
		justify-content: center;
		margin-bottom: 0;
	}
	.sec00 .news .inner div {
		grid-area: 2 / 1 / 3 / 2;
		text-align: left;
	}
	.sec00 .news .inner div .btn {
		width: 60%;
		padding: .75em 0;
	}
	.sec00 .news .inner ul {
		grid-area: 1 / 2 / 3 / 3;
	    display: flex;
	    flex-direction: column;
	    justify-content: center;
		margin: 0;
	}
	.sec00 .news .inner ul li a {
		flex-direction: row;
		padding: 1em 0;
		display: flex;
	}
	/* .sec00 .news .inner ul li a time {
		padding: 0;
		width: 6em;
	} */
	.sec00 .news .inner ul li a p {
		width: calc( 100% - 8em );
		padding: 0 0 0 1em;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
}
.sec00 .bg {
	width: 100%;
	height: auto;
}
@media (min-width: 750px) {
	.sec00 .bg {
		object-fit: contain;
	}
}


.secHeadline {
	font-family: 'Lato';
	font-weight: 400;
	letter-spacing: .1em;
	font-size: min(5.5vw, 35px);
	line-height: 1;
	display: block;
    margin: 0 auto;
	width: 100%;
	text-align: center;
	height: -moz-fit-content;
	height: fit-content;
	position: relative;
}
.articleHeadline {
	width: 100%;
	position: relative;
	overflow: hidden;
	max-height: 320px;
}
.articleHeadline h1 {
	color: #fff;
	font-family: 'Lato';
	font-size: min(6vw, 35px);
	font-weight: 400;
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	transform: translateY(25px);
	height: -moz-fit-content;
	height: fit-content;
	width: 100%;
	text-align: center;
	display: inline-block;
}
.articleHeadline .bg {
	width: 100%;
	height: 100%;
}
@media (min-width:750px) {
	.articleHeadline h1 {
		transform: translateY(.5em);
	}
}
.secHeadline::after,
.articleHeadline h1::after {
	content: '';
	display: block;
	background: rgba(154,139,110,1);
	width: 3em;
	height: 3px;
	position: absolute;
	top: calc( 100% + .5em );
	left: 0;
	right: 0;
	margin: 0 auto;
}




/* SEC01
_____________________________________________ */
.sec01 .inner:nth-of-type(1) {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;

	padding: 62% 0 10% 0;
	background-repeat: no-repeat;
	background-image: url(img/concept_bg_sp.jpg);
	background-position: center top;
	background-size: cover;
	position: relative;
}
/* .sec01 .inner:nth-of-type(1)::before {
	content: 'Concept';
    font-family: 'Lato';
    font-weight: 400;
    color: #c1c1c12e;
    font-size: min(24vw, 170px);
    position: absolute;
    top: 21%;
    left: 0;
} */
.sec01 .inner:nth-of-type(1) .item:nth-of-type(1) {
	text-align: left;
	background-image: linear-gradient(90deg, rgba(243,243,243,1), rgba(255,255,255,.6) 80%, rgba(255,255,255,0) );
	z-index: 100;
	padding: 1em 0 3em 10%;
}
.sec01 .inner:nth-of-type(1) .item:nth-of-type(1) .secHeadline {
	margin: 0;
}
.sec01 .inner:nth-of-type(1) .item:nth-of-type(2) {
	margin-left: 5%;
    margin-top: -30%;
    padding: 36% 7% 15% 15%;
	background: rgba(30,30,30,.8);
	position: relative;
}
.sec01 .inner:nth-of-type(1) .item:nth-of-type(2)::before {
	content: 'Concept';
    font-family: 'Lato';
    font-weight: 400;
    color: #c1c1c12e;
    font-size: min(24vw, 170px);
    position: absolute;
	bottom: 97%;
    left: -5%;
    line-height: 1;
}
.sec01 .inner:nth-of-type(1) .item:nth-of-type(2) p {
	font-size: min(3vw, 24px);
	color: #fff;
	line-height: 2;
}
@media (min-width: 750px) {
	.sec01 .inner:nth-of-type(1) {
		padding: 20% 0 0 0;
		background-image: url(img/concept_bg.jpg);
	}
	.sec01 .inner:nth-of-type(1)::before {
		top: 15%;
	    left: 17%;
	}
	.sec01 .inner:nth-of-type(1) .item:nth-of-type(1) {
		text-align: center;
		margin-right: calc( 100% - 64% );
	}
	.sec01 .inner:nth-of-type(1) .item:nth-of-type(1) .secHeadline {
		margin: 0 auto;
	}
	.sec01 .inner:nth-of-type(1) .item:nth-of-type(2) {
		margin-left: calc( 100% - 67% );
		margin-top: -10%;
		margin-bottom: -3%;
		padding: 12% calc( (100% - 1000px) / 2 ) 6% 6%;
		z-index: 1;
	}
	.sec01 .inner:nth-of-type(1) .item:nth-of-type(2)::before {
		left: -28%;
	}
	.sec01 .inner:nth-of-type(1) .item:nth-of-type(2) p {
		font-size: min(3vw, 24px);
		color: #fff;
	}
}
/* remake : 20240329 */
@media (max-width: 750px) {
	.sec01 .inner:nth-of-type(1) .item:nth-of-type(1) {
		/* remake : 20240329 */
		text-align: center;
		padding: 1em 0 3em 0;
	}
	.sec01 .inner:nth-of-type(1) .item:nth-of-type(2) {
		/* remake : 20240329 */
		margin-left: 0;
		margin-top: -30%;
		padding: 36% 7% 15% 7%;
	}

}

.sec01 .inner:nth-of-type(2) {
	padding: 10% 0 10% 0;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	background-image: linear-gradient(-45deg, rgba(91,91,91,1), rgba(197,203,212,1));
	display: flex;
	flex-direction: column-reverse;
}
.sec01 .inner:nth-of-type(2) .subHeadline {
	width: 100%;
	display: flex;
	justify-content: center;
	flex-direction: column;
	z-index: 1;
	margin: -60% auto 0 auto;
    padding: 10% 5% 10% 5%;
}
.sec01 .inner:nth-of-type(2) .subHeadline h2 {
	text-align: right;
	font-size: min(4.5vw, 28px);
	color: #fff;
	line-height: 1;
	font-weight: 400;
	margin-bottom: 2%;
}
.sec01 .inner:nth-of-type(2) .subHeadline .en {
	text-align: right;
	font-family: 'Lato';
	font-weight: 100;
	font-size: min(9vw, 60px);
	color: #fff;
	line-height: 1.2;
}
.sec01 .inner:nth-of-type(2) .subHeadline .en .btn {
	margin: 6% 1em 0 auto;
	font-family: 'Lato';
	font-weight: 500;
	text-decoration: none;
	line-height: 1;
	width: fit-content;
	padding: 1em 2em;
	display: flex;
	justify-content: center;
	font-size: min(4vw, 16px);
	letter-spacing: .1em;
	position: relative;
}
.sec01 .inner:nth-of-type(2) .bg {
	width: 100%;
}
@media (min-width: 750px) {
	.sec01 .inner:nth-of-type(2) {
		padding: 0;
		flex-direction: row-reverse;
		align-items: center;
	}
	.sec01 .inner:nth-of-type(2) .subHeadline {
		width: 100%;
		margin: 0 0 0 -68%;
	    padding: 5% calc( (100% - 1000px) / 2 ) 5% 0;
		z-index: 1;
	}
	.sec01 .inner:nth-of-type(2) .subHeadline .en {
		font-size: min(6vw, 60px);
	}
	.sec01 .inner:nth-of-type(2) .subHeadline .en .btn {
		margin: 3% 1em 0 auto;
	}
	.sec01 .inner:nth-of-type(2) .bg {
		max-width: 68%;
		margin: 6% 0;
	}
}


/* SEC02
_____________________________________________ */
.sec02 {
	background-repeat: no-repeat;
	background-image: url(img/menu_bg_sp.jpg);
	background-size: cover;
}
.sec02 .inner {
	width: 100%;
	max-width: 1070px;
	margin: 0 auto;
	padding: 16% 0 16% 0;
}
@media (min-width: 750px) {
	.sec02 {
		background-image: url(img/menu_bg.jpg);
	}
	.sec02 .inner {
		padding: 5% 0 3% 0;
	}
}
.sec02 .inner .secHeadline {
	text-align: center;
	margin-bottom: 14%;
}
.sec02 .inner .menu {
	display: flex;
	flex-direction: column;
	padding: 0 4vw;
}
.sec02 .inner .menu a {
	width: 100%;
	display: block;
	text-decoration: none;
	border-radius: 5px;
	overflow: hidden;
	aspect-ratio: 682 / 400;
	margin-bottom: 5%;
}
.sec02 .inner .menu a dl {
	width: 100%;
	height: 55%;
	margin: 0;
	text-align: center;
	background: #fff;
	display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-evenly;
	color: rgba(91,91,91,1);
}
.sec02 .inner .menu a dl dt {
	font-size: min(5vw, 26px);
	font-weight: 400;
}
.sec02 .inner .menu a dl dd {
	font-size: min(4.5vw, 24px);
	font-weight: 300;
}
.sec02 .inner .menu a .thumb {
	width: 100%;
	position: relative;
}
.sec02 .inner .menu a .thumb img {
	width: 100%;
	height: auto;
}
.sec02 .inner .menu a .thumb div {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	padding: .5em 2em;
	z-index: 1;
	border: none;
}
@media (min-width: 750px) {
	.sec02 .inner .secHeadline {
		margin-bottom: 10%;
	}
	.sec02 .inner .menu {
		flex-direction: row;
		padding: 0;
		/* justify-content: space-between; */
    justify-content: space-evenly;
	}
	.sec02 .inner .menu a {
		width: calc( 100% / 3 - 1.4% );
		aspect-ratio: 340 / 400;
	}
	.sec02 .inner .menu a dl {

	}
	.sec02 .inner .menu a .thumb {
		position: relative;
	}
	.sec02 .inner .menu a .thumb div {
		padding: .75em 2.5em;
	}
}


/* sec03
____________________________________ */
.sec03 {
	background: rgba(243,243,243,1);
}
.sec03 .inner {
	padding: 20% 0 16% 0;
}
@media (min-width: 750px) {
	.sec03 .inner {
		padding: 5% 0 5% 0;
		width: 100%;
		max-width: 1000px;
	}
}

.sec03 .access {
	display: flex;
	flex-direction: column;
	padding: 0 11%;
}
.sec03 .access .item:nth-of-type(1) {
	margin-bottom: 20%;
}
@media (min-width: 750px) {
	.sec03 .access {
		flex-direction: row;
		padding: 0;
	}
	.sec03 .access .item:nth-of-type(1) {
		width: 45%;
	}
	.sec03 .access .item:nth-of-type(1) .secHeadline {
	    margin: 0 auto 0 1em;
	}
}
.sec03 .access .item:nth-of-type(2) {
	width: 100%;
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}
.sec03 .access .item:nth-of-type(2) .siteID {
	width: 40%;
	margin-bottom: 7%;
}
.sec03 .access .item:nth-of-type(2) .siteID img {
	width: 100%;
	height: auto;
}
.sec03 .access .item:nth-of-type(2) .addr {
	font-size: min(3.5vw, 18px);
	line-height: 1.4;
	margin-bottom: 7%;
}
.sec03 .access .item:nth-of-type(2) .addr span {
	font-size: 80%;
}
.sec03 .access .item:nth-of-type(2) .telInfo {
	font-size: min(3vw, 12px);
	display: flex;
}
.sec03 .access .item:nth-of-type(2) .telInfo span {
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(154,139,110,1);
	color: #fff;
	line-height: 1;
	margin-right: 1em;
	padding: 0 .5em;
	border-radius: 3px;
	width: 8em;
}
.sec03 .access .item:nth-of-type(2) .telInfo p {
	width: calc( 100% - 8em );
	font-size: min(3vw, 13px);
}
@media (min-width: 750px) {
	.sec03 .access .item:nth-of-type(2) {
		width: 55%;
		border-left: 1px solid #000;
		padding-left: 7%;
	}
	.sec03 .access .item:nth-of-type(2) .siteID {
		width: 40%;
	}
	.sec03 .access .item:nth-of-type(2) .addr span {
		font-size: 80%;
	}
	.sec03 .access .item:nth-of-type(2) .telInfo span {
		padding: .25em 1em .4em 1em;
	}
}

.btnWrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	padding: 5% 0;
}
.btnWrap .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: left;
	width: calc( 100% / 2 - 1.5% );
	padding: 1.35em 1em;
	font-size: min(3.25vw, 18px);
	border-radius: 2px;
	color: #fff;
	font-family: 'Noto Serif JP';
	font-weight: 200;
	cursor: pointer;
}
.btnWrap .btn:focus {
	outline: none;
}
.btnWrap .btn:hover {
	opacity: .85;
}
@media (min-width: 750px) {
	.btnWrap {
		justify-content: flex-start;
		padding: 3% 0;
	}
	.btnWrap .btn {
		width: fit-content;
		justify-content: center;
		text-align: center;
		padding: 1em 1em;
	}
}

.btnWrap .btn.mail {
	background: rgba(154,139,110,1);
}
.btnWrap .btn.line {
	background: rgba(103,145,108,1);
}
.btnWrap .btn img {
	margin-right: .5em;
	height: 1em;
}

.btnWrap .note {
	width: 100%;
	font-size: min(3.25vw, 14px);
	line-height: 1.4;
	padding: 1em 0 0 0;
}
@media (min-width: 750px) {
	.btnWrap .btn + .btn {
		margin-left: 1em;
	}
	.btnWrap .note {
		padding: .5em 0 0 0;
	}
}

.sec03 .gmap {
	width: 100%;
	height: 100%;
	aspect-ratio: 16 / 12;
}
@media (min-width: 750px) {
	.sec03 .gmap {
		aspect-ratio: 16 / 5;
	}
}

.googleMapsWrap .googleMaps {
	z-index: 0;
	width: 100%;
	height: 600px;
}





/* CLINIC
_____________________________________________ */
.sec04 .inner {
	padding: 7% 0 7% 0;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	background-image: linear-gradient(138deg, rgba(91,91,91,1), rgba(197,203,212,1));
	display: flex;
	flex-direction: column-reverse;
}
.sec04 .inner .subHeadline {
	width: 90%;
	display: flex;
	justify-content: center;
	flex-direction: column;
	margin: -30% 0 auto auto;
	padding: 10% 10% 20% 10%;
	background: rgba(30,30,30,.8);
	z-index: 1;
}
.sec04 .inner .subHeadline h2 {
	text-align: right;

	font-size: min(4.5vw, 28px);
	color: #fff;
	line-height: 1;
	font-weight: 400;
	margin-bottom: 2%;
}
.sec04 .inner .subHeadline .en {
	text-align: right;
	font-family: 'Lato';
	font-weight: 100;
	font-size: min(8vw, 60px);
	color: #fff;
	line-height: 1.2;
	margin-bottom: 10%;
}
.sec04 .inner .subHeadline .desc {
	color: #fff;
	font-size: min(3.5vw, 24px);
	line-height: 1.6;
}
.sec04 .inner .bg {
	width: 90%;
}
@media (min-width: 750px) {
	.sec04 .inner {
		flex-direction: row-reverse;
		align-items: center;
	}
	.sec04 .inner .subHeadline {
		width: 100%;
		margin: 0 0 0 -10%;
		padding: 5% calc( (100% - 1000px) / 2 ) 10% 7%;
		z-index: 1;
	}
	.sec04 .inner .subHeadline h2 {

	}
	.sec04 .inner .subHeadline .en {

	}
	.sec04 .inner .subHeadline .desc {
		font-size: min(1.75vw, 24px);
	}
	.sec04 .inner .bg {
		width: 100%;
		max-width: 43%;
	}
}
@media (max-width: 750px) {
	.sec04 .inner .subHeadline {
		/* ADD : 20240329 */
		margin: -30% auto auto auto;
		margin: -10% auto auto auto;
	}
}


.sec05 {
	position: relative;
	background-image: linear-gradient(-45deg, rgba(91,91,91,1), rgba(197,203,212,1));
}
.sec05 .bg {
	width: 100%;
}
.sec05 .inner {
	z-index: 1;
	display: flex;
	flex-direction: column;
	position: relative;
	/* padding-bottom: .05%; */
}
.sec05 .inner .subHeadline {
	width: calc(100% - (4vw * 2));
	color: #fff;
	display: flex;
	justify-content: center;
	flex-direction: column;
	margin: -46% auto auto auto;
	padding: 9% 4vw 14% 4vw;
	background: rgba(30,30,30,.8);
	/* ADD : 20240329 */
	margin: -18% auto auto auto;
}
.sec05 .inner .subHeadline h2 {
	text-align: left;
	/* font-family: 'Lato'; */
	font-size: min(4.5vw, 28px);
	color: #fff;
	line-height: 1;
	font-weight: 400;
	margin-bottom: 5%;
}
.sec05 .inner .subHeadline .en {
	text-align: left;
	font-family: 'Lato';
	font-weight: 100;
	font-size: min(5.75vw, 43px);
	color: #fff;
	line-height: 1.2;
	margin-bottom: 10%;
}
.sec05 .inner .subHeadline .en span {
	display: block;
	font-size: 125%;
}
.sec05 .inner .subHeadline .desc {
	color: #fff;
	font-size: min(3.5vw, 24px);
	line-height: 1.6;
}

.sec05 .inner .carousel {
	width: calc( 100% - (4vw * 2) );
	margin: 0 auto 0 auto;
	background: rgba(30,30,30,.8);
	padding: 4vw 4vw 20% 4vw;
}
.sec05 .inner .carousel .item {
	width: 100%;
}
.sec05 .inner .carousel .item img {
	width: 100%;
	height: auto;
}
@media (min-width: 750px) {
	.sec05 .inner {
		flex-direction: row;
	}
	.sec05 .inner .subHeadline {
		width: 100%;
		max-width: 1080px;
		margin: -30% auto auto 0;
		padding: 9% 9% 14% 9%;
		/* ADD : 20240329 */
		margin: -18% auto auto auto;
	}
	.sec05 .inner .subHeadline .desc {
		padding-right: 40%;
	}
	.sec05 .inner .carousel {
		display: block;
		width: fit-content;
		margin-left: -32%;
		margin-top: 15%;
		width: 43.09%;
		background: transparent;
		padding: 0;
	}
}
.slick-dots {
	bottom: auto;
}


.sec06 {
	background: rgba(30,30,30,1);
	padding: 5% 0;
}
.sec06 .inner {
	display: flex;
	flex-direction: column;
	padding: 10% 4vw;
}
.sec06 .inner .item:nth-of-type(1) {
	width: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-direction: column;
	margin: 10% auto;
}
.sec06 .inner .item:nth-of-type(1) .subHeadline {
	color: rgba(243,243,243,1);
	width: 100%;
}
.sec06 .inner .item:nth-of-type(1) .subHeadline h2 {
	line-height: 1;
	font-weight: 400;
	margin-bottom: 2%;
	font-size: min(4.5vw, 28px);
	padding-right: 4%;
}
.sec06 .inner .item:nth-of-type(1) .subHeadline .en {
	font-family: 'Lato';
	font-weight: 100;
	font-size: min(9vw, 60px);
	color: #fff;
	line-height: 1.2;
	color: rgba(193,193,193,1);
	margin-bottom: 36%;
}
.sec06 .inner .item:nth-of-type(1) .name p.jp {
	color: #fff;
	font-family: 'Noto Serif JP';
	font-size: min(3.75vw, 24px);
	font-weight: 200;
}
.sec06 .inner .item:nth-of-type(1) .name p.en {
	font-family: 'Lato';
	font-weight: 300;
	font-size: min(9vw, 60px);
	color: #ccc1a9;
	z-index: 200;
}
.sec06 .inner .item:nth-of-type(2) .desc {
	padding-left: 15%;
	padding-bottom: 1em;
	margin-bottom: 1em;
	border-bottom: 1px solid rgba(243,243,243,1);
	line-height: 1;
	color: #fff;
}
.sec06 .inner .item:nth-of-type(2) ul {
	padding-left: 15%;
	color: #fff;
}
.sec06 .inner .item:nth-of-type(2) ul li {
	font-size: min(3.75vw, 16px);
	/* font-weight: 200; */
	line-height: 1;
	padding: .5em 0;
	letter-spacing: -.05em;
}

/* ADD : 20240329 */
.sec06 .inner .item_outer { position: relative; width:100%; z-index:0;}
.sec06 .inner .item .subHeadline { width: 60%; padding-left: 9%;  z-index:1;}
.sec06 .inner .item .name { width: 40%;  z-index:2;  margin-top:1.2em;}
.sec06 .inner .item_outer .dr_pic { width:auto; float:right; right:0; top:0; position:absolute; display:inline-block; z-index:-1; text-align:right;}
.sec06 .inner .item_outer .dr_pic img{ width:200px; height:auto; }
.sec06 .inner .item .name p.jp{ font-size:min(3.75vw, 20px); letter-spacing:.1em; }
.sec06 .inner .item .name p.en{ font-size:32px; letter-spacing:.1em; font-weight: 100; text-shadow:0px 0px 2px #111,0px 0px 3px #000,0px 0px 4px #000,0px 0px 5px #000; }

@media (min-width: 750px) {
	.sec06 .inner {
		padding: 0;
	}
	.sec06 .inner .item:nth-of-type(1) {
		flex-direction: row;
		margin: 0 auto;
	}
	.sec06 .inner .item:nth-of-type(1) .subHeadline {
		width: 60%;
		padding-left: 9%;
	}
	.sec06 .inner .item:nth-of-type(1) .subHeadline h2 {
		padding-right: 10%;
	}
	.sec06 .inner .item:nth-of-type(1) .subHeadline .en {
		padding-right: 10%;
		margin-bottom: 20%;
	}
	.sec06 .inner .item:nth-of-type(1) .name {
		width: 40%;
	}
	.sec06 .inner .item:nth-of-type(2) .desc {
		padding-left: 60%;
	}
	.sec06 .inner .item:nth-of-type(2) ul {
		padding-left: 60%;
	}
	.sec06 .inner .item:nth-of-type(2) ul li {
		letter-spacing: 0;
	}
}

/* ADD : 20240329 */
@media (max-width: 750px){
	.sec06 .inner .item .subHeadline { width: 100%; padding-left: 9%;  z-index:1;}
	.sec06 .inner .item .name { width: 100%;  z-index:2; padding-left: 9%;}
	.sec06 .inner .item .subHeadline .en { margin-bottom: 0%!important; }
	.sec06 .inner .item .name p.en{ font-size:6vw; letter-spacing:.05em; }
	.sec06 .inner .item_outer .dr_pic { right:0; top:14vw;}
	.sec06 .inner .item_outer .dr_pic img{ width:35vw; height:auto; }
	.sec06 .inner .item:nth-of-type(2) ul li {
		line-height: 1.65em;
	}
}


/* MENU
_____________________________________________ */
.sec07 {
	background-image: linear-gradient(-45deg, rgba(91,91,91,1), rgba(197,203,212,1));
	padding: 0 0 10% 0;
}
.sec07 .inner {
	width: 100%;
	max-width: 100%;
	height: 100%;
	margin: 0 auto 15% auto;
	display: flex;
	flex-direction: column-reverse;
	align-items: stretch;
}
.sec07 .inner .subHeadline {
	width: 90%;
	display: flex;
	justify-content: center;
	flex-direction: column;
	margin: -115% 0 auto auto;
	padding: 10% 10% 10% 10%;
	color: rgba(243,243,243,1);
	background: rgba(30,30,30,.8);
	z-index: 1;
}
.sec07 .inner .subHeadline h2 {
	text-align: right;
	font-size: min(4.5vw, 22px);
	line-height: 1;
	font-weight: 400;
	margin-bottom: 2%;
}
.sec07 .inner .subHeadline .en {
	text-align: right;
	font-family: 'Lato';
	font-weight: 100;
	font-size: min(7.5vw, 52px);
	line-height: 1.2;
	margin-bottom: 7%;
}
.sec07 .inner .subHeadline .desc {
	font-size: min(3.5vw, 24px);
	line-height: 2;
}
.sec07 .inner .bg {
	width: 100%;
	height: auto;
	object-fit: cover;
}
.sec07 .inner .subHeadline .btn {
	margin: 14% 1em 0 auto;
	font-family: 'Lato';
	font-weight: 400;
	text-decoration: none;
	line-height: 1;
	width: fit-content;
	padding: 1em 2.5em;
	display: flex;
	justify-content: center;
	font-size: min(4vw, 16px);
	letter-spacing: .1em;
	position: relative;
}
@media (min-width: 750px) {
	.sec07 {
		padding: 0 0 .005% 0;
	}
	.sec07 .inner {
		flex-direction: row-reverse;
		margin-bottom: 7%;
	}
	.sec07 .inner .subHeadline {
		width: 70%;
		margin: 0 0 0 -70%;
		padding: 5% 5% 5% 7%;
		z-index: 1;
	}
	.sec07 .inner .subHeadline h2 {
		margin-bottom: 1%;
	}
	.sec07 .inner .subHeadline .en {
		margin-bottom: 5%;
	}
	.sec07 .inner:nth-of-type(even) .subHeadline h2,
	.sec07 .inner:nth-of-type(even) .subHeadline .en {
		text-align: left;
	}

	.sec07 .inner .subHeadline .desc {
		font-size: min(1.75vw, 20px);
	}
	.sec07 .inner .subHeadline .btn {
		margin: 7% 1em 0 auto;
	}
}
/* ADD : 20240329 */
@media (max-width: 750px){
	.sec07 .inner .subHeadline {
	margin: -115% auto auto auto;
	}
}
@media (min-width: 1040px) {
	.sec07 .inner .subHeadline {
		width: 70%;
		margin: 0 0 0 -70%;
		padding: 5% calc( (100% - 1000px) / 2 ) 5% 7%;
		z-index: 1;
	}
}


/* MODAL
_____________________________________________ */
.knockOut {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 900000;
	background: rgba(0,0,0,.75);
}
.modal {
	opacity: 0;
	pointer-events: none;
	position: fixed;
	z-index: 999999;
	background: rgba(226,226,226,1);
	padding: 5% 0 11% 0;
	text-align: left;
	left: 50%;
	transform: translate(-50%, -47%);
	width: 86%;
	top: 50%;
	height: 80%;
	box-shadow: 1px 1px 3px rgba(0,0,0,.7);
	transition: opacity .5s ease 0s;
	border-width: 2px;
	border-style: solid;
}
.modal > .modalClose {
	position: absolute;
	/* bottom: calc( 100% + (34px / 2)); */
	bottom: 100%;
	right: 0;
	text-align: center;
	cursor: pointer;
	width: 34px;
	height: 34px;
}
.modal.mopen {
	opacity: 1;
	pointer-events: auto;
}
.modal .modalInner {
	height: 90%;
	margin: 0;
	padding: 0 4vw;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.modal .modalInner > dl {
	margin-bottom: 20vw;
	color: rgba(30,30,30,1);
	font-weight: 400;
}
.modal .modalInner > dl .modalSubHeadline {
	padding: 0 0 1em 0;
	font-size: min(4vw, 24px);
	width: 100%;
	border-bottom: 3px solid rgba(154,139,110,1);
	line-height: 1.4;
	margin-bottom: 2em;
}
.modal .modalInner > dl .modalLead {
	padding: 0 5% 0 5%;
	color: rgba(91,91,91,1);
	border-left: 1px solid rgba(91,91,91,1);
	line-height: 2;
}
.modal .modalInner > dl .modalNotes {
	padding: 1.5em;
	color: rgba(30,30,30,1);
	background: rgba(204,193,169,1);
	line-height: 2;
}
.modal .modalInner > dl > dd {
	font-size: min(4vw, 18px);
	margin-bottom: 8vw;
}
.modal .modalInner > dl > dd ul li {
	margin: 0 0 1em 1em;
	padding-left: 1em;
	text-indent: -1em;
}
.modal .modalInner > dl > dd p {
	line-height: 2;
}
.modal .modalInner > dl .cases > dl {
	background: rgba(243,243,243,1);
	padding: 7%;
}
.modal .modalInner > dl .cases > dl dt {
	color: rgba(139,129,111,1);
	font-size: min(5vw, 24px);
	font-weight: 400;
	line-height: 1;
	margin-bottom: 1em;
}
.modal .modalInner > dl .cases > dl dt span {
	font-family: 'Lato';
	display: inline-block;
	margin-right: 1em;
}
.modal .modalInner > dl .cases > dl dd {
	line-height: 2;
}
@media (min-width: 750px) {
	.modal {
		width: 80%;
		padding: 3% 0 3% 0;
	}
	.modal .modalInner {
		padding: 0;
	}
	.modal .modalInner > dl {
		margin-bottom: 7vw;
	}
	.modal .modalInner > dl .modalSubHeadline {
		padding: 0 0 1em 10%;
		margin-bottom: 4%;
		width: -moz-fit-content;
		width: fit-content;
		min-width: 50%;
		padding-right: 5%;
	}
	.modal .modalInner > dl > dd {
		width: 80%;
		/* margin: 0 auto; */
		margin-right: auto;
		margin-left: auto;
	}
	.modal .modalInner > dl .modalLead {
		padding: 0 0 0 1.5em;
		margin: 0 auto 4% auto;
	}
	.modal .modalInner > dl .modalNotes {
		padding: 1.5em;
	}
	.modal .modalInner > dl .cases > dl {
		padding: 3%;
	}
	.modal .modalInner > dl dd .modalSubHeadline {
		padding: 0 0 1em 0;
		margin-bottom: 4%;
		width: -moz-fit-content;
		width: fit-content;
		min-width: 50%;
		padding-right: 5%;
	}
}
.modal .btnWrap {
	padding: 2% 0 2% 0;
	justify-content: center;
	background: rgba(226,226,226,1);
}
.modal .btnWrap .btn {
	width: 47%;
	margin: 0 1.5%;
}
.modal .btnWrap .note {
	text-align: center;
	padding: .5em 0 0 0;
}
@media (min-width: 750px) {
	.modal .btnWrap .btn {
		width: -moz-fit-content;
		width: fit-content;
		margin: 0 5px;
		padding: 1em 3em;
	}
}
.zuan {
	margin-bottom: 4%;
}

/* Q&A
_____________________________________________ */
.sec08 {
	background: rgba(226,226,226,1);
	padding-bottom: .01%;
}
.sec08 .qa {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 5% auto;
	padding: 10% 8vw;
}
@media (min-width: 970px) {
	.sec08 .qa {
		padding: 5% 0;
	}
}
.sec08 .qa dl {
	margin: 0 0 2.5% 0;
}
.sec08 .qa dt {
	color: rgba(30,30,30,1);
	border-bottom: 1px solid rgba(30,30,30,1);
	display: flex;
	align-items: center;
	font-size: min(3.5vw, 24px);
	line-height: 1;
	padding: 1em 1em;
	cursor: pointer;
}
.sec08 .qa dt:hover,
.sec08 .qa .qaOpen dt {
	/* background: rgba(30,30,30,.05); */
	/* color: rgba(30,30,30,1); */
	/* transition: background .4s cubic-bezier(0.1, 0.57, 0.1, 1); */
}

.sec08 .qa dt::before {
	content: 'Q.';
	font-family: 'Lato';
	font-size: 1.25em;
	width: min(6vw,37px);
	height: min(6vw,35px);
	margin-right: 1.25em;
	line-height: initial;
	background-size: cover;
}
.sec08 .qa dt::after {
	content: '';
	width: min(4vw, 25px);
	height: min(4vw, 25px);
	background: url(img/ico_plus.png) no-repeat;
	background-size: cover;
}
.sec08 .qa .qaOpen dt::after {
	content: '';
	width: min(4vw, 25px);
	height: min(4vw, 25px);
	background: url(img/ico_minus.png) no-repeat;
	background-size: cover;
}
.sec08 .qa dt p {
	width: calc( 100% - 32px - 1.25em );
	font-weight: 400;
	margin-bottom: 0;
	text-align: left;
}

.sec08 .qa dd {
	color: rgba(30,30,30,1);
	display: flex;
	align-items: center;
	font-size: min(3vw,20px);
	line-height: 1;
	padding: 0 1em 0 1em;
	margin: 0;
    overflow: hidden;
	height: 0;
	transition: padding .4s cubic-bezier(0.1, 0.57, 0.1, 1), height 1s cubic-bezier(0.65, 0, 0, 1.01);
}
.sec08 .qa .qaOpen dd {
	height: auto;
	padding: .75em 1em .75em 1em;
	overflow: visible;
	transition: padding .4s cubic-bezier(0.1, 0.57, 0.1, 1), height 1s cubic-bezier(0.65, 0, 0, 1.01);
}
.sec08 .qa dd::before {
	content: ' ';
	font-family: 'Lato';
	font-size: 1.25em;
	display: block;
	width: min(6vw,32px);
	height: min(6vw,35px);
	margin-right: 1.5em;
	background-size: cover;
}
.sec08 .qa dd p {
	line-height: 2;
	width: calc( 100% - 32px - 1.5em );
	margin-bottom: 0;
	text-align: left;
}



/* PRIVACY
_____________________________________________ */
.sec09 {
	background: rgba(226,226,226,1);
	padding-bottom: .01%;
}
.sec09 .privacy {
	max-width: 1000px;
	padding: 10% 0;
}
.sec09 .privacy .privacyLead {
	margin-bottom: 8%;
	line-height: 1.6;
}

.sec09 .privacy dl {
	margin-bottom: 8%;
}
.sec09 .privacy dl dt {
	font-weight: 700;
}
.sec09 .privacy dl dd {
	padding: 1em;
	font-weight: 300;
}
.sec09 .privacy dl dd ul,
.sec09 .privacy dl dd ol {
	margin-left: 0;
}

ul, ol {
	list-style: none;
	padding-left: 0;
}
li {
	line-height: 1.6;
	margin-bottom: .5em;
}
li ul {
	margin: 1em 0 2em 0;
}
.withBrackets li {
	padding-left: 3em;
	text-indent: -1.5em;
}
.withDot li {
	padding-left: 1em;
	text-indent: -1em;
}



/* CONTACT
_____________________________________________ */
.sec11 {
	background: rgba(226,226,226,1);
	padding-bottom: .01%;
}
.sec11 .contact {
	max-width: 1000px;
	padding: 6% 0;
}
.contactTable {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	padding: 5% 4vw;
}
.contactTable dt {
	font-weight: 300;
	width: 100%;
	line-height: 1;
	font-size: min(2.5vmax,22px);
	margin-bottom: 1em;
	padding: .25em 0 .25em .5em;
}

p.required {

}
p.required::before {
	content: '\00203b';
	color: red;
}
.contactTable dt.required::after {
	content: '\00203b';
	color: red;
}

.contactTable dd {
	font-weight: 300;
	width: 100%;
	line-height: 1.6;
	font-size: min(2.5vmax, 22px);
	color: #333;
	margin-bottom: 1em;
}
@media (min-width:750px) {
	.contactTable {
		padding: 5% 0;
	}
	.contactTable dt {
		width: 12em;
		line-height: 1.6;
		padding: 0;
		background: transparent;
	}
	.contactTable dd {
		width: calc( 100% - 12em );
	}
}

.contactTable dd input:not([type="radio"]),
.contactTable dd textarea {
	font-size: 16px;
	padding: 1em;
	border: 1px solid #bdaf8b;
	background: #fefffc;
}
button,
label {
	cursor: pointer
}
.contactTable dd.radio {
	padding: 0 0 1em 1em;
}
.mw_wp_form .horizontal-item + .horizontal-item {
	margin-left: 0!important;
}
.contactTable dd input:not([type="radio"]) {
	width: 100%;
	border-radius: 3px;
}
.contactTable dd textarea {
	width: 100%;
	height: 16em;
	border-radius: 3px;
}
.contactTable dd.radio label {
	display: block;
	color: #724b23;
	cursor: pointer;
}


.sec11 .contact .btnWrap {
	justify-content: center;
}








/* NEWS
_____________________________________________ */
.archive {
	background: rgba(226,226,226,1);
	padding-bottom: .01%;
}
.sec.archive .inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 5% auto;
	padding: 10% 8vw;
}
@media (min-width: 970px) {
	.sec.archive .inner {
		padding: 5% 0;
	}
}
.sec.archive .inner a {
	margin: 0 0 2em 0;
	text-decoration: none;
	display: block;
}
.sec.archive .title {
	color: rgba(30,30,30,1);
	border-bottom: 1px solid rgba(30,30,30,1);
	display: flex;
	align-items: center;
	font-size: min(3.5vw, 24px);
	line-height: 1;
	padding: 1em 1em 1em 0;
}
.sec.archive .title time {
	width: 6em;
}
.sec.archive .excerpt {
	padding: 1em 1em 1em 0;
	color: rgba(30,30,30,1);
}
.sec.archive .excerpt p {
	line-height: 2;
	word-break: break-word;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}



/* ARTICLE
_____________________________________________ */
.article {
	background: rgba(226,226,226,1);
	padding-bottom: .01%;
}
.articleHeadline.article h1 {
	font-family: 'Noto Serif JP';
}
.sec.article .inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 5% auto;
	padding: 10% 8vw;
}
/* .sec.article .inner {
	padding: 10% 4vw 10% 4vw;
} */
@media (min-width:750px) {
	.sec.article .inner {
		padding: 5% 0 5% 0;
	}
}

.articleHeader {
	font-size: min(5vw, 18px);
	margin-bottom: 1em;
	line-height: 1;
	text-align: left;
	font-weight: 200;
}
.articleBody {
	font-size: min(5vw, 24px);
	margin-bottom: 20%;
}

.archivePageNav {
	text-align: center;
	display: flex;
	justify-content: flex-start;
}
.archivePageNav .page-numbers {
	font-size: min(5vw, 24px);
	text-decoration: none;
	padding: .65em .75em;
	background: rgba(30,30,30,1);
	color: #fff;
	line-height: 1;
	margin-right: .35em !important;
	margin-left: .35em !important;
	margin-bottom: 0 !important;
	display: flex!important;
	justify-content: center;
	align-items: center;
	font-family: 'Lato';
	font-weight: 500;
}
.archivePageNav .page-numbers:hover,
.archivePageNav .page-numbers.current {
	background: rgba(113,114,117,1);
}
.archivePageNav .page-numbers.next,
.archivePageNav .page-numbers.prev {
	background: transparent;
	color: rgba(168,168,168,1);
	padding: 0 .5em;
	margin-right: 0 !important;
	margin-left: 0 !important;
	font-size: 300%;
	font-weight: 100;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    text-align: left;
	order: 1;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	text-align: right;
	order: 2;
}
.nav-next a,
.nav-previous a {
	color: #333;
	font-weight: 200;
	display: inline-block;
}
.nav-next a::before {
	content: '\002039\0020Newer　';
	font-weight: 200;
	display: inline-block;
	text-decoration: none;
	margin-right: .5em;
}
.nav-previous a::after {
	content: '　Older \0020\00203a';
	font-weight: 200;
	display: inline-block;
	text-decoration: none;
	margin-left: .5em;
}








/* GLOBAL FOOTER
_____________________________________________ */
.globalFooter {
	background: rgba(30,30,30,1);
}
.globalFooter .footerInner {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 8% 0 32% 0;
}
.globalFooter .footerInner .globalNav {
	width: 100%;
	margin-bottom: 8%;
	padding: 0 4vw 0 0;
}
.globalFooter .footerInner .globalNav ul {
	width: 100%;
	justify-content: space-between;
	padding: 0;
}
.globalFooter .footerInner .globalNav ul li {
	padding: 0;
}
.globalFooter .footerInner .func {
	width: 100%;
	display: flex;
	justify-content: flex-start;
	padding: 0 4vw 0 4vw;
}
.globalFooter .footerInner .func .lang {
	margin-right: 1em;
}
.globalFooter .footerInner .func .lang .langSele {
	left: 0;
}
.globalFooter .footerInner .func .toLine {
	font-family: 'Lato';
	color: #fff;
	border: 1px solid #fff;
	padding: .2em 1em;
	line-height: 1;
	text-decoration: none;
}
.globalFooter .footerBottom {
	border-top: 1px solid rgba(91,91,91,1);
	width: 100%;
	font-family: 'Lato';
	padding: 5% 0 7% 0;
	font-weight: 300;
}
.globalFooter .footerBottom .inner {
	display: flex;
	color: #fff;
	width: 100%;
	max-width: 1070px;
	flex-direction: column;
	padding: 0 4vw;

    /* remake : 20240329 */
	max-width: 100%;
	text-align: center;
}
.globalFooter .footerBottom .inner .copy {
	margin-right: 4em;
	margin-bottom: 1em;
	font-size: min(3.5vw,20px);

    /* remake : 20240329 */
	margin-right: 0;
	margin-bottom: 1em;
	font-size: min(3.5vw,20px);
	text-align: center;
}
.globalFooter .footerBottom a {
	color: #fff;
	font-family: 'Lato';
	text-decoration: none;
	display: flex;
	font-size: min(3.5vw,20px);

    /* remake : 20240329 */
	display: inline-block;
}
.globalFooter .footerBottom a::before {
	content: '／';
	margin-right: 3em;

    /* remake : 20240329 */
	content: '';
	margin-right: 0em;
}
@media (min-width:750px) {
	.globalFooter .footerInner {
		display: flex;
		flex-direction: row;
		width: 100%;
		max-width: 1070px;
		margin: 0 auto;
		padding: 3% 0 10% 0;
	}
	.globalFooter .footerInner .globalNav {
		width: 70%;
		margin-bottom: 0;
		padding: 0;
	}
	.globalFooter .footerInner .globalNav ul li {
		padding: 0 .5em;
	}
	.globalFooter .footerInner .func {
		width: 30%;
		display: flex;
		justify-content: flex-end;
		padding: 0;
	}
	.globalFooter .footerInner .func .lang {
		margin-right: 2em;
	}
	.globalFooter .footerInner .func .toLine {
		padding: .5em 2em;
	}
	.globalFooter .footerBottom {
		padding: 2% 0 8% 0;
	}
	.globalFooter .footerBottom .inner {
		flex-direction: row;
		padding: 0;

		/* remake : 20240329 */
	    max-width: 1070px;
	    text-align: center;
	}
	.globalFooter .footerBottom .inner .copy {
		margin-bottom: 0;

		/* remake : 20240329 */
		margin-right: 4em;
	}
	.globalFooter .footerBottom a::before {
		margin-right: 4em;

		/* remake : 20240329 */
	    content: '／';
	    margin-right: 3em;
	}
}


.copyright {
	text-align: center;
	padding: 0 0 4% 0;
	font-family: 'Lato';
	font-weight: 300;
}


._sp { display: inline-block; }
._pc { display: none; }
@media (min-width: 750px) {
	._sp { display: none; }
	._pc { display: inline-block; }
}
