
/**
.wrapper
**/
.wrapper {
	width: 100%;
	max-width: 1508px;
	margin: 0 auto;
	/*overflow: hidden;*/
}
.wrapper-hidden {
	width: 100%;
	max-width: 1508px;
	margin: 0 auto;
	overflow: hidden;
}
.visible{
	overflow: visible;
}
.hidden{
	overflow: hidden;
}
.relative{
	position: relative;
}


/**
.navi
**/

.navi {
	position: fixed;
	top: 0;
	width: 20rem;
	height: 100%;
	padding: 10rem 5rem 0;
	padding: 7rem 5rem 0;
	z-index: 1;
	pointer-events: none;
}
nav {
	width: 100vw;
	transform: rotate( 90deg );
	transform-origin: 0 0 0;
	position: absolute;
	top: calc(19.3rem + 5em);
	margin: 0 0 0 6rem;
	font-size: 1.6rem;
	pointer-events: auto;
}
nav ul {
	display: flex;
	list-style: none;
}
nav ul li {
	margin-right: 2em;
}
nav ul li.current a{
	color: #bb8d8d!important;
}
nav ul li a {
	padding-left: 1.5em;
	/*color: #000;*/
	text-decoration: none;
	position: relative;
	display:flex;
}
nav ul li a::before {
	content: "";
	display: block;
	position: absolute;
	top: 0.6em;
	left:0;
	width: 0.7em;
	height: 0;
	border-top: solid 1px #000;
}

.logo_gooddesign{
	margin-top: 3.1rem;
}

/**
.contents
**/

.contents {
	padding: 0 0 0 20rem;
	position: relative;
}

.circle-btn{
	position: fixed;
    bottom: 20px;
    right: 20px;
	height: 8.6rem;
	width:8.6rem;
	background-color: #bb8d8d;
	z-index: 1;
    border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.circle-btn:hover{
	background-color: #a77474;
}
.circle-btn svg{
	fill:#fff;
	width: 2.1rem;
}

@media (max-width: 768px) {
	.circle-btn{
	width: 25.8rem;
	height: 25.8rem;
	}
	.circle-btn svg{
		width: 6.3rem;
	}
}
/**
.kv
**/

.kv {
	position: fixed;
	margin: 0;
	width: 100%;
	height: 100vh;
}
.kv-bg {
	position: relative;
	width: 100%;
	height: 100vh;
	overflow: hidden;
}
.kv .slider{
	position: relative;
	z-index: 1;
	height: 100vh;
	/*overflow: hidden;*/
}
.kv .slick-dots{
	position: relative;
	z-index: 3;
	text-align: center;
	margin: -50px 0 0 0;
}
.kv .slick-dots li{
	display: inline-block;
	margin:0 0.15rem;
}
.kv .slick-dots button{
	color: transparent;
	outline: none;
	width: 40px;
	height: 2px;
	display: block;
	background: #ededed;
	cursor: pointer;
}
.kv .slick-dots li button:hover,
.kv .slick-dots .slick-active button{
	background: #bb8d8d;
}
.kv-movie {
	/*position: absolute;
	top: 50%;
	left: 50%;*/
	width: 100%;
	height: 100vh;
	/*margin-left: -50%;
	margin-top: -50vh;
	transform-origin: center;
	transform: scale(1);*/
	object-fit: cover;
}
.kv-mask {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
}
.kv-logo-white {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -40%);
	width: 15rem;
	display: none;
}
.kv-contents {
	width: 100%;
	height: 100vh;
	max-width: 1508px;
	margin: 0 auto;
	position: relative;
	top: -100vh;
}
.kv-logo {
	position: absolute;
	top: calc(50% + 5rem);
	left: 18.7rem;
	width: 20.2rem;
	z-index: 2;
}
.kv-txt {
	font-family: 'Raleway', sans-serif;
	font-family: 'Yu Mincho', serif;
	font-weight: 300;
	position: absolute;
	top: 47%;
	left: 18.7rem;
	font-size: 2.4rem;
	margin-top: 16.8rem;
	z-index: 2;
}
.kv-txt span {
	display: block;
}
.kv-bg-logo {
	width: 100%;
	height: 30vh;
	position: absolute;
	bottom: 20%;
	left: 0;
	background: url("../img/bg_kv.png") repeat-x;
	background-size: auto 100%;
	opacity: 0.04;
	z-index: 2;
}

.kv .slick-prev,
.kv .slick-next{
	position: absolute;
	z-index: 3;
	top:50%;
	cursor: pointer;
	outline: none;
	width: 47px;
	height: 104px;
	background-color: #bb8d8d;
	transform: translateY(-50%);
	transition: 0.5s all;
}
.kv .slick-prev:hover,
.kv .slick-next:hover{
	background-color: #a77474;	
}
.kv .slick-prev:hover{
	transform: translate3d(7px, -50%, 0);
}
.kv .slick-next:hover{
	transform: translate3d(-7px, -50%, 0);	
}
.kv .slick-prev::before,
.kv .slick-next::before{
	content: '';
	display: block;
	position: absolute;
}
.kv .slick-prev::before{
	border-top: 1px solid #fff;
    border-right: 1px solid #fff;
	transform: rotate(-135deg);
	height: 10px;
    width: 10px;
	top:47px;
	left:22px;
}
.kv .slick-next::before{
	border-top: 1px solid #fff;
    border-right: 1px solid #fff;
	transform: rotate(45deg);
	height: 10px;
    width: 10px;
	top:47px;
	right:22px;

}
.kv .slick-prev{
	left: -7px;
}
.kv .slick-next{
	right:-7px;
}

.kv-tagline {
	position: absolute;
	bottom: calc(50% + 4rem);
	left: 25.7rem;
	width: 7rem;
	z-index: 2;
}

.kv-cart {
	position: absolute;
	bottom: 0;
	left: 5rem;
	z-index: 2;
}
.kv-cart a {
	display: block;
	padding: 2.2em 2em;
	background: #1b1b1b;
	color: #fff;
	text-decoration: none;
}
.kv-cart a:hover {
	background: #000;
}
.link-cart {
	padding: 30rem 30px 0;
	text-align: center;
}
.link-cart a {
	display: block;
	padding: 2.2em 2em;
	background: #1b1b1b;
	color: #fff;
	text-decoration: none;
	font-size: 6rem;
}
.link-cart a:hover {
	background: #000;
}



/**
.para-area
**/

#content {
	height: 200vh;
  }
  
	.para-area{
		position: relative;
		padding:20rem 0;
		min-height:200vh;
	}
	.para{
		opacity: 0;
	}
	.para-area p{
		position: absolute;
	}
	.para-bg-txt{
		color: #bb8d8d;
		font-family: 'Raleway', sans-serif;
		font-weight: 100;
		font-size: 16.6875rem;
		position: absolute;
		white-space: nowrap;
		/*margin-top:62.4rem;*/
		/*margin-top:29.4rem;*/
		/*line-height: 0.5;*/
		top:13.5rem;
	}
	.para-area img{
		/*width:auto;*/
	}
	.loop-area{
		top:49.4rem;
		}
	.para_img_01,.para_img_02,.para_img_03{
		position: absolute;
	}
	.para_img_01{
		margin-left:25%;
		width: 41rem;
		/*margin-top:29.4rem;*/
	}
	.para_img_02{
		width: 33.5rem;
		margin-top: 72.2rem;
		margin-left:75%;
	}
	.para_img_03{
		width: 33.5rem;
		/*bottom:0;
		left:-20rem;*/
		margin-top: 103rem;
		margin-left:-20rem;

	}
	.txt_01,
	.txt_02,
	.txt_03{
		font-family :'Yu Mincho', serif;
		font-weight: 100;
	}
	.txt_01{
		font-size:3.6rem;
	}
	.txt_02{
		/*top:77rem; 
		left:0;*/
		font-size:2.4rem;
		margin-top: 76.4rem;
	}
	.txt_03{
		/*top:77rem; 
		left:63rem;*/
		font-size:2.4rem;
		margin-top: 91.4rem;
		margin-left: 50%;;
	}
	.txt_02 span,.txt_03 span{
		font-family: 'Raleway', sans-serif;
		font-weight: 400;
		display: block;
		padding-bottom:1em;
		font-size:4.8rem; 
		padding-bottom:0.78em;
	}
	.pv-movie{
		margin-top: 131.8rem;
		padding-right: 20rem;
	}
	.pv-movie video {
		width: 100%;
	}
	.feature-area{
		display: flex;
		/*gap:60px;*/
	}
	.txt-box{
		width:calc((100% - 60px *2) / 3);
		display: flex;
		flex-direction: column;
	}
	.txt-box:not(:last-child){
		margin-right: 60px;
	}
	.txt-box img{
		margin-top: auto;
	}



/**
.feature
**/

.feature {
	/*overflow: hidden;*/
	width: 100%;
	/*height: 100vh;*/
	/*background-color: #000;*/
}
.feature-gsap {
	/*position: relative;*/
	width: 100%;
	/*height: 100vh;*/
}

/**
.images
**/

.images {
	/*height: 100vh;
	position: absolute;*/
	display: flex;
	/*flex-wrap: nowrap;*/
	flex-direction: column;
	/*align-items: center;*/
	padding-left: 30%;
	padding-right: 20%;
	/*background: linear-gradient(90deg, #000 0%, #000 50%, #fff 50%, #fff 100%);*/
}
.image {
	width: 80vw;
}
.image h3{
	font-family: 'Raleway', sans-serif;
	font-weight: 300;
	font-size: 4rem;
	line-height: 0.8;
}
.image h4{
	margin:5.0rem 0 10rem;
	font-size:2rem;
	font-weight: 100;
}
.image p{
	line-height: 3.2rem;
	margin-bottom:5rem;
}

.txt_s{
	font-size:3.2rem; 
}





.images {
	/*margin: 30rem 0;*/
	padding-left: 20rem;
}
.image {
	/*margin: 15rem;*/
	padding: 20rem;
	position: relative;
}
.images > section {
    /*background-color: #000;*/
    color: #fff;
	padding: 10rem 10rem 10rem 0;
	display: flex;
	flex-direction: column;
}
/*.images > section:nth-child(2n) {
    background-color: #fff;
    color: #000;
	padding: 20rem 10rem;
}*/
/*.image:nth-of-type(odd){
	display: flex;
	align-items: center;
}*/
/*.image:nth-of-type(even){
	display: flex;
	flex-direction: column;
	justify-content: center;
}*/
.images h2 {
	font-family: 'Raleway', sans-serif;
	font-weight: 300;
	position: absolute;
	left: -15rem;
	bottom: 6rem;
	font-size: 9.6rem;
	line-height: 1;
	color: #bb8d8d;
	z-index: 999;
}

section:nth-of-type(2) h2{
	font-size:8.9rem;
}
h4.scroll-img02-txt,	
.scroll-img02-txt p,	
h4.scroll-img04-txt,	
.scroll-img04-txt p,	
h4.scroll-img06-txt,	
.scroll-img06-txt p	
{	
font-family :'Yu Mincho', serif;	
font-weight: 400;
	font-size: 1.5rem;
}
h4.scroll-img02-txt,
h4.scroll-img04-txt,
h4.scroll-img06-txt {
	font-size: 2.4rem;
}
/*.scroll-img02-txt:nth-of-type(3) p{
	margin-bottom:8.2rem;
}
.scroll-img04-txt:nth-of-type(2) p{
	/*padding-bottom:3.2rem;
	margin-bottom:11.2rem;
}
.scroll-img04-txt:nth-of-type(3) p{
	margin-bottom: 11.19rem;
}

.scroll-img06-txt:nth-of-type(3) p{
	margin-bottom: 1.76rem;
}*/



/**
.pv-area
**/

.pv-area{
	position: relative;
	display: flex;
	margin: 50rem 0;
}
.pv-image{
	position: absolute;
	left:-14rem;
	top: -10rem;
	width: 81.4rem;
}
.pv-img{
	position: absolute;
	left:-70%;
	/*z-index: 1;*/
}
.pv-wrapper{
	margin:15% 0 0 48%;
	position: relative;
	z-index: 2;
}
.pv-area h2,
.pv-area h3 {
	font-family: 'Raleway', sans-serif;
	font-weight: 100;
	/*position: absolute;
	left: -14rem;
	bottom: -0.5em;*/
	font-size: 9.6rem;
	line-height: 1;
}
.pv-area h2{
	position: relative;
	top:-3rem;
}
.pv-area h3{
	font-size: 6.5em;
	margin-top: 40rem;
}

.hospitality{
	padding: 10rem 0 10rem 0;
	position: relative;

}
.hospitality ul.slider{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	list-style: none;
}
.hospitality ul.slider li{
	width: calc(100% / 2 - 4px);
	height: auto;
	margin-right: 4px;
	float: left;
}
.hospitality .slider img{
	width: 100%;
	height: auto;
}

.hospitality h2{
	font-family: 'Raleway', sans-serif;
    font-weight: 300;
    position: absolute;
    left: -15rem;
    bottom: 6rem;
    font-size: 9.6rem;
    line-height: 1;
    color: #bb8d8d;
    z-index: 999;
}

.hospitality .slick-dots {
	position: absolute;
	bottom: -10rem;
    text-align:center;
 	margin:20px 0 0 0;
}
.hospitality ul.slick-dots li{
	display: inline-block;
	margin:0 0.15rem;
	width: auto;
}
.hospitality .slick-dots button{
	color: transparent;
	outline: none;
	width: 40px;
	height: 2px;
	display: block;
	/*border-radius: 50%;*/
	background: #5f5f5f;
	cursor: pointer;
}
.hospitality .slick-dots .slick-active button{
	background: #bb8d8d;
}
.hospitality .slick-prev,
.hospitality .slick-next{
	position: absolute;
	z-index: 3;
	top:50%;
	cursor: pointer;
	outline: none;
	width:47px;
	height:104px;
	background-color: #bb8d8d;
	transform: translateY(-50%);
    transition: 0.5s all;
}
.hospitality .slick-prev:hover,
.hospitality .slick-next:hover{
	background-color: #a77474;
}
.hospitality .slick-prev:hover{
	transform: translate3d(7px, -50%, 0);
}
.hospitality .slick-next:hover{
	transform: translate3d(-7px, -50%, 0);
}
.hospitality .slick-disabled,
.hospitality .slick-prev.slick-disabled:before,
.hospitality .slick-next.slick-disabled:before {
    display: none!important;
}
.hospitality .slick-prev::before,
.hospitality .slick-next::before{
	content: '';
	display: block;
	position: absolute;
}
.hospitality .slick-prev::before{
	border-top: 1px solid #fff;
    border-right: 1px solid #fff;
	transform: rotate(-135deg);
	height: 10px;
    width: 10px;
	top: 47px;
    left: 22px;
}
.hospitality .slick-next::before{
	border-top: 1px solid #fff;
    border-right: 1px solid #fff;
	transform: rotate(45deg);
	height: 10px;
    width: 10px;
	top: 47px;
    right: 22px;

}
.hospitality .slick-prev{
	left:-7px;
}
.hospitality .slick-next{
	right:-7px;
}
.hosp-txt{
	margin: 9.2rem 10rem 10rem 10rem;
	display: flex;
}
.hosp-txt h4{
	font-family: 'Yu Mincho', serif;
    font-weight: 400;
	font-size: 2.4rem;
	line-height: 2;
	width: calc((100% - 60px)/2);
}
.hosp-txt > div{
	width: calc((100% - 60px)/2);
}
.hosp-txt p{
	font-family: 'Yu Mincho', serif;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2;
    padding-bottom: 2em;
}
.underline{
	border-bottom: 3px solid #bb8d8d;
}
.underline_black{
	border-bottom: 1px solid #000;
}
@media (max-width: 768px) {
	.hospitality{
		padding-top: 18rem;
	}
	.hospitality .slick-list{
		padding-left: 0!important;
	}
	.hospitality ul.slider li.slick-slide{
		width: 100%;
		padding-right: 1.6rem;
	}
	.hospitality h2{
		font-size: 24rem;
		left:21px;
		bottom:-2rem;
	}
	.hospitality .slick-dots {
	bottom:-22rem;
	padding-left:30px;
	}
	.hosp-txt{
		margin-top: 31.6rem;
		flex-direction: column;
	}
	.hosp-txt h4{
		font-size: 9.8rem;
		width: 100%;
	}
	.hosp-txt > div{
		width: 100%;
		padding-top: 59px;
	}
	.hosp-txt > div p{
		font-size: 7.2rem;
	}

}

/**
.description
**/

.description {
	margin: 9rem 0 20rem;
	/*padding-top:9rem;*/
}
.description h2 {
	font-family: 'Raleway', sans-serif;
	font-weight: 300;
	/*margin: 0 0 0 6rem;*/
	font-size: 9.6rem;
	text-indent: -0.1em;
}
.description-wrapper {
	/*margin: 24% 5% 0 52%;
	margin-top:33.2rem;*/
	display: flex;
	/*align-items: center;*/
}
.desc-img{
	padding: 0 12.5rem 0 6rem;
}
.desc-img-box{
	margin-top:32rem;
	position: relative;
	width: 100%;
	height: 24.5rem;
	overflow: hidden;
}
.desc-img-box img{
	position: absolute;
	width: 100%;
	height: auto;
	top:0;
	animation: anime 16s 0s infinite;
	z-index: 0;
	opacity: 0;
}
.desc-img-box img:nth-last-of-type(2){
	animation-delay: 4s;
}
.desc-img-box img:nth-last-of-type(3){
	animation-delay: 8s;
}
.desc-img-box img:nth-last-of-type(4){
	animation-delay: 12s;
}
@keyframes anime{
	0%{
		opacity: 1;
	}
	50%{
		opacity: 1;
	}
	60%{
		opacity: 0;
		transform: scale(1.2);
		z-index: 10;
	}
	100%{
		opacity: 0;
		transform: scale(1.2);
	}
}
.desc-txt-area{
	margin-top:41.6rem;
	padding-right: 6rem;
}
.description h3 {
	margin: 2.5em 0 1.5em 0;
	font-size: 1.8rem;
	font-weight: 600;
}
.description em {
	font-weight: inherit;
	text-decoration: underline;
}
.description ul,
.description dl {
	padding-left: 1.5em;
}
.description li,
.description dt,
.description dd {
	line-height: 1.8;
}
.description dt{
	display: list-item;
	list-style: disc;
	font-weight: bold;
}
.description-note {
	margin: 7.4rem 0 0 0;
	line-height: 1.8;
}
.weight-norm{
	font-weight: normal;
}
.sticky{
    height:100%;
    position: sticky;
    position: -webkit-sticky;
    top:0;
}

.desc-img,
.about-r{
	width: 63.3rem;
}
.catalog-area_pc,
.catalog-area{
	display: flex;
}
.catalog-area_pc,
.catalog-area_sp,
.catalog-area{
	margin-top: 6rem;
}
.cata-l{
	margin-right:5.9rem;
}
.cata-l img{
	width: 20.9rem;
}
.cata-r{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	/*margin-top:auto;*/
}
.catalog-area_pc .cata-r p.explanation{
    margin-top: 10px;
    font-size: small;
}
.catalog-area_sp .cata-r p.explanation{
    margin-top: -50px;
    font-size: small;
}

.catalog-area_pc h4,
.catalog-area_sp h4,
.catalog-area h4{
	font-family: 'Yu Mincho', serif;
	font-size: 2.4rem;
	font-weight: 400;
}
.catalog-area_pc h5,
.catalog-area_sp h5,
.catalog-area h5{
	font-family: 'Yu Mincho', serif;
	font-size: 1.8rem;
	margin-top:1em;
	margin-bottom:1em;
	text-indent: -0.5em;
	font-weight: 400;
}
h5.no-indent{
	text-indent: 0;

}
.catalog-area_pc p,.catalog-area_sp p{
	padding-bottom:3rem;
	
}
.catalog-area_pc p {
	margin-top: 10rem;
}
.down-btn{
	font-size: 1.4rem;
	color: #fff;
	/*background: #000;*/
	background-color: #bb8d8d;
	border-radius: 20px;
	padding:1rem 7rem;
	max-width: 27rem;
	text-decoration: none;
	text-align: center;
}
.down-btn:hover{
	/*background-color: rgba(0, 0, 0, 70%);*/
	background-color: #a77474;
	color: #fff!important;
}
.down-btn:hover svg{
	fill: #fff!important;

}
.catalog-area_sp{
	display: none;
}
.shop{
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
}
.shop p{
	padding-bottom: 2rem;
	margin-top: 1rem;
}
.shop_inner{
	display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 27.7rem;
}
.shop select{
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
	width: 24.2rem;
	border: 1px solid #dcdcdc;
	padding: 0.5rem 1rem;
	text-align: center;
	font-size: 1.4rem;
	-webkit-appearance: none;
  	appearance: none;
	color: #000;
	background-color: #fff;
	background-image: url(../img/icon_select_arrow.png);
	background-repeat: no-repeat;
	background-position: center right 1rem;
	background-size: 0.8rem;
}
.shop .btn-submit{
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
	font-size: 1.4rem;
    color: #fff;
    /* background: #000; */
    background-color: #bb8d8d;
    border-radius: 20px;
	margin-top:2rem;
    line-height: 4rem;
	max-width: 27.7rem;
	width: 100%;
    text-decoration: none;
    text-align: center;
}
.shop .btn-submit:hover{
	cursor: pointer;
	background-color: #a77474;
    color: #fff!important;
}
@media (max-width: 768px) {
	.description-note{
		margin:0;
	}
	.catalog-area_sp{
		display: block;
		margin-top: 20rem;
	}
	.catalog-area_pc{
		display: none;
	}
	.cata-l{
		display: flex;
		flex-direction: column;
		margin-right:0;
	}
	.catalog-area_sp h4{
		font-size: 5.625vw;
		font-weight: 400;
	}
	.catalog-area_sp h5{
		font-size: 4.375vw;
	}
	.cata-l img{
		width: auto;
	}
	.catalog-area_sp p{
		font-size: 4.375vw;
		padding: 2em 0;
		font-family: 'Yu Mincho', serif;
		font-weight: 400;

	}
	.catalog-area_sp img{
		width: 50%;
		margin: 0 auto;
	}
	.catalog-area{
		display: block;
		margin-top: 20rem;
	}
	.catalog-area .cata-l{
		display: none;
	}
	.catalog-area img{
		width: 50%;
		margin: 0 auto;
	}
	.catalog-area h4{
		font-size: 5.625vw;
		font-weight: 400;
	}
	.catalog-area h5{
		font-size: 4.375vw;
		padding: 2em 0;
		margin: 0;
		text-indent: unset;
	}

	.down-btn{
		max-width: 100%;
		font-size: 6rem;
		padding:6rem 8rem;
		text-decoration: none;
		text-align: center;
		border-radius: 30px;
		margin-top: 16rem;
		margin-bottom:24rem;
	}
	.shop p{
		font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
		font-size: 3.84vw; /*15px*/
		padding: 10.25vw 0 7.68vw;
		margin-top: 0;
	}
	.shop_inner{
		max-width: 100%;
		font-size: 3.84vw;
	}
	
	.shop select{
		font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
		width: 73.46vw;
		padding: 3.84vw;
		font-size: 3.84vw;
		-webkit-appearance: none;
  		appearance: none;
		background-image: url(../img/icon_select_arrow.png);
		background-repeat: no-repeat;
		background-position: center right 3.71vw;
		background-size: 2.76vw;
	}
	.shop .btn-submit{
		max-width: 100%;
		font-size: 6rem;
		padding:6rem 8rem;
		text-decoration: none;
		text-align: center;
		border-radius: 30px;
		margin-top: 7.68vw;
		margin-bottom:24rem;
		line-height: unset;
	}
}

/**
.about
**/

.about {
	margin: 30rem 0;
	padding-top: 9rem;
	display: flex;
}
.about h2 {
	font-family: 'Raleway', sans-serif;
	font-weight: 300;
	/*margin: 0 0 0 6rem;
	width: 52%;*/
	padding-left:6rem;
	font-size: 9.6rem;
}

.about-wrapper {
	/*margin: 0 0 0 48%;*/
	width: 48%;
	margin: 41.6rem 0 0 0;
}
.about table colgroup col:first-child {
	width: 12rem;
}
.about table colgroup col:last-child {
	width: auto;
}
.about table th {
	padding-bottom: 1.5em;
	text-align: left;
	font-weight: 400;
	line-height: 1.8;
	vertical-align: top;
}
.about table td {
	padding-bottom: 1em;
	text-align: left;
	font-weight: 400;
	line-height: 1.8;
	vertical-align: top;
	padding-right: 10%;
}
.about table td a{
	color:#bb8d8d;
}
.about table td a:hover{
	text-decoration: none;
}

/**
.finish
**/

.finish {
	padding: 40vh 0 40vh;
}
.finish h2 {
	font-family: 'Raleway', sans-serif;
	font-weight: 100;
	margin: 0 0 1em 10rem;
	font-size: 4.8rem;
}
.finish-logo {
	margin: 0 0 0 10rem;
	width: 20.1rem;
}


/**
footer
**/

footer {
	margin: 0 0 7rem;
	position: relative;
}
footer p {
	position: relative;
	left: 0;
	width: 100%;
	padding: 1em 0 3em;
	text-align: center;
	pointer-events: none;
}

footer p.footer-link {
	left: 0;
	width: auto;
	margin: 0;
	padding: 1em 0;
}
footer p.footer-link a {
	color: #fff;
	text-decoration: none;
	pointer-events: auto;
}
footer p.footer-link a:hover {
	text-decoration: underline;
}


/**
color
**/


.body {
	background: #fff;
	position: relative;
	top: 100vh;
	/*overflow: hidden;*/
}
.body.light {
	background: #fff;
	color: #000;
	transition: 0.5s;
}
.body.light1 {
	background: #fff;
	color: #000;
	transition: 0.5s;
}
.body.gray {
	background: #1b1b1b;
	color: #fff;
	transition: 0.5s;
}
.body.dark, 
.body.dark2, 
.body.dark4 {
	background: #000;
	color: #fff;
	transition: 0.5s;
}
.body.dark3 {
	background: #000;
	color: #fff;
	transition: 0.5s;
}
.body.dark2 .navi, 
.body.dark3 .navi, 
.body.dark4 .navi,
.body.light1 .navi {
	background: #000;
	color: #fff;
	transition: 0.5s;
}
.body.gray .navi{
	background: #1b1b1b;
	color: #fff;
	transition: 0.5s;
}
.body.dark .navi a, 
.body.dark2 .navi a, 
.body.dark3 .navi a, 
.body.dark4 .navi a,
.body.right1 .navi a {
	color: #fff;
	transition: 0.5s;
}
.body.dark .navi .logo svg, 
.body.dark .navi .logo .cls-1, 
.body.dark2 .navi .logo svg, 
.body.dark2 .navi .logo .cls-1, 
.body.dark3 .navi .logo svg, 
.body.dark3 .navi .logo .cls-1, 
.body.dark4 .navi .logo svg, 
.body.dark4 .navi .logo .cls-1,
.body.gray .navi .logo svg, 
.body.gray .navi .logo .cls-1,
.body.light1 .navi .logo .cls-1,
.body.light1 .navi .logo svg {
	fill: #fff;
	transition: 0.5s;
}
.body.dark nav ul li a::before, 
.body.dark2 nav ul li a::before, 
.body.dark3 nav ul li a::before, 
.body.dark4 nav ul li a::before,
.body.light1 nav ul li a::before {
	border-color: #fff;
	transition: 0.5s;
}
.body.light .navi a {
	color: #000;
}
.body.light li a:hover,
.body.light1 li a:hover,
.body.dark3 li a:hover,
.body.dark4 li a:hover,
.body.gray li a:hover{
	color: #bb8d8d;
}
.body.light .navi a::before{
		border-top: solid 1px #000;
}
.body.light .navi ul li.current a::before{
	border-top: solid 1px #bb8d8d;
}
nav ul li a,
.body.dark3 .navi a,
.body.dark4 .navi a,
.body.light1 .navi a{
	color: #808080;
}
nav ul li a::before,
.body.dark3 .navi a::before,
.body.dark4 .navi a::before,
.body.light1 .navi a::before{
	border-top: solid 1px #808080;
}
.body.dark3 .navi ul li.current a::before,
.body.light1 .navi ul li.current a::before,
.body.gray .navi ul li.current a::before{
	border-top: solid 1px #bb8d8d;
}
.body.dark3 .navi ul li.current a{
	color: #fff;
}
nav ul li.current a{
	color: #000;
}
nav ul li.current a::before{
	border-top: solid 1px #000;
}

.pc-none{
	display: none;
}

/**
.header-navi
**/
#header-navi-wrap.fixed{
	position: fixed;
	z-index: 999;
	top:0;
}
.photo-gallery ul li img{
	opacity: 0.4;
}
.header-navi-wrap{
	background-color: #000;
	width: 100%;
	position: fixed;
	z-index: 9999;
	top:0;
}
.header-navi{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 1100px;
	height: 10rem;
	margin:0 auto;
}
.header-navi p.logo{
	width: 10rem;
	padding:3.8rem 0;
}
.header-navi p.logo svg{
	fill: #fff;
}
.header-navi ul{
	display: flex;
	margin-left: 20rem;
	color: #fff;
}
.header-navi ul li{
	list-style: none;
	font-size: 1.4rem;
}
.header-navi ul li:not(:last-child){
	margin-right: 5rem;
}
.header-navi ul li a{
	color: #fff;
	text-decoration: none;
}
.header-navi ul li a.active,
.header-navi ul li a:hover{
	color:#bb8d8d;
}
.header-navi-wrap .cls-1,
.topic .navi .cls-1,
.subpage-navi .cls-1,
.subpage .navi .cls-1{
	fill:#fff;
}

@media (max-width: 1150px) {
	.header-navi p.logo{
		margin-left: 10rem;
	}
	footer p.footer-link {
		margin-left: 10rem;
	}
}

/**
top-topics
**/
.top-topics section{
	padding-top:20rem;
	margin-bottom: 20rem;
	margin-right: 20rem;
}
.top-topics section h3{
	display: inline-block;
	font-family: 'Raleway', sans-serif;
    font-weight: 300;
    font-size: 4.8rem;
    line-height: 0.8;
	padding-bottom: 6rem;
	padding-right:6rem;
}
.top-topics section a{
	color: #000;
	text-decoration: none;
}
.top-topics section a:hover{
	color: #bb8d8d;
}
.top-topics section div > span{
    font-weight: 300;
	font-size: 1.6rem;
	display: inline-block;
	position: relative;
}
/*.top-topics section div > span:after{
	content: '>';
	display: inline-block;
	margin-left:2rem;
	position: absolute;
	top:-2px;
}*/
.span_arrow{
	margin-left:2rem;
	display: inline-block;

}
.topics-list{
	/*width: 986px;*/
	list-style: none;
	display: flex;
}

.topics-list li{
	width: calc((100% - 100px*2) / 3);
	/*width: 26.2rem;*/
}
.topics-list li:not(:last-child){
	margin-right: 10rem;
}
.topics-list li span{
	display: inline-block;
	font-family: 'Yu Mincho', serif;
	font-size: 1.4rem;
	margin-bottom: 3rem;
	font-weight: 400;
    color: #808080;
}
.topics-list li p{
	font-size: 1.8rem;
	font-family: 'Yu Mincho', serif;
	font-weight: 400;	
}


@media (max-width: 768px) {
	.topics-list{
		width: 100%;
	}
	.top-topics{
		max-width: 100%;
	}
	.top-topics section{
		padding: 60rem 30px 0;
		margin-right: 0;
	}
	.top-topics section div{
		display: flex;
		justify-content: space-between;
	}
	.top-topics section h3{
		font-size: 14.4rem;
		padding-bottom: 24rem;
	}

	.top-topics section div > span{
		font-size: 7.2rem;
		/*padding-right: 30px;*/
	}
	.top-topics section div > span::after{
		margin-left: 1em;
	}
	.topics-list{
		flex-direction: column;
	}
	.topics-list li{
	width: 100%;
	}
	.top-topics li span{
		font-size: 6rem;
		margin-bottom: 12rem;
	}
	.top-topics li p{
		font-size: 7.2rem;
		margin-bottom: 24rem;
	}
}


/**
topic-page
**/

.topics{
	width: 1100px;
	margin: 10rem auto 0;
	padding: 14.7rem 6rem 10rem;
}

.topics h1{
	margin-bottom:5rem;
	font-family: 'Raleway', sans-serif;
    font-weight: 300;
    font-size: 4.8rem;
    line-height: 0.8;
}

.topics ul{
	display: flex;
}
.topics > ul li{
	list-style: none;
	font-family: 'Raleway', sans-serif;
	font-size: 2.4rem;
	margin-left: 1rem;
}
.topics > ul li a:visited,
.topics > ul li a:active,
.topics > ul li a:link{
	color:#000;
	text-decoration: none;
}
.topics > ul li.active,
.topics >ul li a:hover{
	color: #bb8d8d;
}
.topics > ul li:before{
	content:'/';
	display: inline-block;
	margin-right: 1rem;
	color: #000;
}
.topics section h2{
	font-size: 3rem;
	font-family: 'Yu Mincho', serif;
	font-weight: 400;
	line-height: 1.5;
}
.topics section span{
	font-family: 'Yu Mincho', serif;
	font-size: 1.6rem;
	color: #808080;
	display: block;
	margin-top:3rem;
	margin-bottom:6rem;
	line-height: 0.8;
}
.topics > div{
	margin-bottom: 10rem;
}
.topics section{
	margin:  9rem 0;
	padding-bottom: 9rem;
	border-bottom: 1px solid #dcdcdc;
}
.topics .main-img{
	position: relative;
	padding-top: 56.12244897959184%;
}
.topics .main-img img{
	position: absolute;
	top: 0;
}



.topics .sub-img{
	margin-top:2rem;
	margin-bottom: 5rem;
	display: flex;
	gap:0 1.8rem	
}
.topics .sub-img li{
	list-style: none;
	display: flex;
	width: 20%;
	height: auto;
	cursor: pointer;
}
.topics .sub-img li:last-child{
	margin-right: 0;
}
.topics .sub-img li img{
	object-fit: cover;
	opacity: 0.4;
}
.topics .sub-img li.current img{
	opacity: 1;
}
.topics section p{
	font-size: 1.6rem;
	font-family: 'Yu Mincho', serif;
	font-weight: 400;
	line-height: 2;
}

.topics .txt_list{
	list-style: none;
    margin-top: 5rem;
    gap: 6rem;
}
.topics .txt_list li{
	align-items: center;
    display: flex;
}
.topics .icon_wind{
	width: 1.7rem;
	margin-left: 1rem;
}
.topics .txt_list li::after{
	content: " > ";
	margin-left: 2rem;
	color:#bb8d8d;
}

.topics section a{
	color: #bb8d8d;
}
.topics section a:hover{
	text-decoration: none;
}
@media (max-width:1080px){
	.topics{
		width: 100%;
	}
	.topics > ul li{
			font-size: 14px;
	}
	.topics section span,
	.topics section p,
	.topics section li{
		font-size: 13px;
	}
}
@media (max-width: 768px) {

	.header-navi-wrap{
		width: 100%;
		height: 33.6rem;
	}
	.header-navi{
		width: 100%;
		height: 33.6rem;
		justify-content: space-between;
	}
	.header-navi p.logo{
		width: 43.1rem;
    	padding-left: 30px;
	}
	.header-navi ul{
		margin-right: 30px;
	}
	.topics{
		width: 100%;
		padding: 60rem 30px 0;
		margin-bottom:50rem;
	}
	.topics h1{
		font-size: 14.4rem;
		margin-bottom:24rem;
	}
	.topics > ul li{
		font-size: 7.2rem;
	}
	.topics .container{
		margin-bottom: 24rem;
	}
	.topics > div{
		margin-bottom: 30rem;
	}
	.topics section{ 
		padding-bottom:24rem;
		margin: 24rem 0;
	}
	.topics section h2{
		font-size: 7.2rem;
		margin-top: 0;
	}
	.topics section span {
		font-size: 6rem;
		margin-top: 12rem;
    	margin-bottom: 24rem;
	}
	.topics section p{
		margin-top:1em;
		font-size: 6.3rem;
		line-height: 2;
	}
	.topics section ul.txt_list{
		margin-top: 10rem;
		gap:12rem;
	}
	.topics section ul.txt_list li{
		margin-top: 2.5rem;
		font-size: 6.3rem;	
	}
	.topics .icon_wind{
		width: 6.3rem;
		margin-left: 4rem;
	}
	.topics .txt_list li::after{
		margin-left: 5rem;
	}
}
.footer-area,
.topic .footer-area,
.contact-page .footer-area,
.privacy-page .footer-area{
	color: #fff;
}
.subpage .footer-area, 
.topic .footer-area {
	background: #000;
}
.footer-contact{
	padding:20rem 10rem;
}
.footer-contact h3{
	margin-bottom: 6rem;
	font-family: 'Raleway', sans-serif;
	font-weight: 300;
    font-size: 4.8rem;
    line-height: 0.8;
}
.footer-contact ul{
	list-style: none;
	display: flex;
}
.footer-contact ul li{
	width: 46.3rem;
}
.footer-contact ul li:first-child{
	margin-right: 6rem;
}
.footer-contact ul li h4{
	font-family: 'Yu Mincho', serif;
	font-size: 1.8rem;
	margin-bottom: 3rem;
	font-weight: 400;

}
.footer-contact ul li p{
	font-family: 'Yu Mincho', serif;
	font-size: 1.4rem;
	font-weight: 400;
	margin-bottom: 7rem;
}
.footer-contact .down-btn{
	display: block;
}
.footer-contact .contact-btn{
	display: flex;
	align-items: center;
	justify-content: center;
}
.footer-contact .contact-btn svg{
	fill: #fff;
	width: 1.5rem;
	margin-right:1.4rem;
	opacity: 0.7;

}
.footer-contact .contact-btn:hover svg{
	fill:#bb8d8d;
}
/*.footer-contact .contact-btn{
	background-image: url(../../assets/img/envelope-solid.svg);
	background-repeat: no-repeat;
	background-size: 1.5rem;
	background-position: 67px center;
	padding-left: 9.6rem;
}*/

.footer-contact,
.footer-area .finish,
.footer-area footer{
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
}
@media (max-width:1099px) {
	.footer-contact ul li h4{
		font-size: 16px;
	}
	.footer-contact ul li p{
		font-size: 14px;
	}
	.footer-contact .contact-btn,
	.footer-contact .down-btn{
		max-width: 80%;
		font-size: 12px;
	}
}

@media (max-width: 768px) {
	.footer-contact,
	.footer-area .finish,
	.footer-area footer{
		width: 100%;
	}
	.footer-contact{
		padding: 48rem 10.92rem;
	}
	.footer-contact h3{
		font-size: 12.5vw;
	}
	.footer-contact ul{
		display: flex;
		flex-direction: column;
	}
	.footer-contact ul li{
		width: 100%;
	}
	.footer-contact ul li:first-child{
		border-bottom: 2px solid #5f5f5f;
	}
	.footer-contact ul li h4{
		font-size: 7.2rem;
		margin-top: 24rem;
		margin-bottom: 16rem;
	}
	.footer-contact ul li p{
		font-size: 6rem;
	}
	.footer-contact .contact-btn{
		justify-content: center;
		max-width: 100%;
		font-size: 6rem;
	}
	.footer-contact .contact-btn svg{
		width: 6rem;
		margin-right: 6.4rem;
		opacity: 0.7;
	}
}

/**
contact-page
**/
.second ul li{
	list-style: none;
}
.second{
	width: 1100px;
	margin: 10rem auto 0;
	padding-top: 15rem;
}
.inner{
	font-family: 'Yu Mincho', serif;
	font-weight: 400;
	margin: 0 6.1rem 20rem;

}
.inner-part01{
	display: flex;
	justify-content: space-between;
}

.inner_ttl h1{
	font-size: 4.8rem;
	line-height: 1;
	font-family: 'Raleway', sans-serif;
	font-weight: 300;
}
.inner_con{
	width: 62.5%;
}
.inner_con p{
	font-size: 1.6rem;
	font-family: 'Yu Mincho', serif;
	font-weight: 400;
	line-height: 2;
	margin-bottom: 1.4rem;
}
.inner_con p.b{
	font-size: 1.4rem;
}
.r{
	color: #bb8d8d;
	padding-left: 1em;
}
.r_no-left{
	color: #bb8d8d;
	padding-left: 0;

}
.input-area{
	margin: 10rem 0;
}
.inner_con section{
	margin-bottom: 3rem;
}
.inner_con section input{
	border-radius: 0;
	height: 5rem;
	width: 100%;
	border: 1px solid #808080;
	font-family: 'Yu Mincho', serif;
	font-size: 16px;
}
.inner_con section .tel-area{
	display: flex;
	align-items: center;
	justify-content:space-between;
	font-size: 2.4rem;
}
.inner_con section input[type="tel"]{
	width: 30%;
	margin: 0 1rem;
	padding: 0.8em 1em;
}
.inner_con section input[name="tel"]{
	margin-left: 0;
}
.inner_con section input[name="tel3"]{
	margin-right: 0;
}
.inner_con section textarea{
	border: 1px solid #808080;
	width: 100%;
	height: 20rem;
	padding: 0.8em 1em;
	font-family: 'Yu Mincho', serif;
	font-size: 16px;
}
.inner_con h3{
	font-size: 1.6rem;
	margin-bottom: 2rem;
}
.inner-part02{
	display: flex;
	flex-direction: column;
	position: relative;
}
.inner-part02 hr{
	border-top:2px #dcdcdc solid;
}
.privacy-mark-img{
	position: absolute;
	bottom: 0;
	right: 0;
	
}
.privacy-mark-img img{
	width: auto!important;
}
.checkarea{
	margin:0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.checkarea div{
	width: 27rem;
	color: red;
	font-weight: bold;
	display: none;
}
.checkarea div.msg1{
	margin-top:5rem;
}
.checkarea div.msg2{
	margin-top: 2rem;
}
.label-checkbox{
	font-size: 1.6rem;
	margin-top: 5.3rem;
}
.lever a{
	color:#000;
}
.lever a:hover{
	color: #bb8d8d;
}
.label-checkbox input[type="checkbox"]{
	border: 1px #808080 solid;
	width: 2rem;
	height: 2rem;
	border-radius: 0;
	vertical-align: text-top;
}
.btnarea{
	margin-top: 4.7rem;
}
.btnarea .down-btn{
	width: 61rem;
}
.btnarea input[type="submit"]{
	font-family: 'Yu Mincho', serif;
	font-weight: 400;
	cursor: pointer;
}
input[type="submit"]:disabled {
	background-color: #dcdcdc;
}

@media (max-width: 1099px) {
	.second{
		width: 100%;
	}
	.inner{
		margin: 0 10rem 20rem;
	}
	.inner_con p{
		font-size:14px;
	}
	.inner_con p.b{
		font-size: 12px;
	}
	.inner_con h3{
		font-size: 14px;
	}
	.checkarea div{
	font-size: 12px;
	}
	.label-checkbox{
		font-size: 14px;
	}
	input[type="submit"]{
		font-size: 12px;
	}
}

@media (max-width: 768px) {
	.second{
		width: 100%;
		margin: 33.6rem auto 48rem;
		padding: 48rem 30px 0;
	}
	.inner{
		margin: 0 0 24rem;
	}
	.inner-part01{
		display: block;
	}
	.inner_ttl h1{
		margin-bottom: 1em;
		font-size: 18rem;
	}
	.inner_con{
		width: 100%;
	}
	.inner_con p{
		font-size: 6.3rem;
	}
	.inner_con p.b{
		font-size: 6rem;
	}
	.inner_con .input-area{
		margin: 36rem 0;
	}
	.inner_con section{
		margin-bottom: 12rem;
	}
	.inner_con h3{
		font-size: 7.2rem;
	}
	.inner_con section input{
		height: 15rem;
	}
	.inner_con section textarea{
		height: 40rem;
	}
	.inner_con hr{
		margin-left: 0;
	}
	.checkarea{
		margin-top: 12rem;
		margin-left: 0;
		margin-right:0;
		align-items: normal;
	}
	.checkarea div{
		width: 100%;
    	text-align: center;
    	font-size: 6.3rem;
	}
	.checkarea div.msg1{
		margin-top: 12rem;
	}
	.checkarea div.msg2{
		margin-top: 1em;
	}
	.label-checkbox{
    	font-size: 6.3rem;
		margin-top: 12rem;
		text-align: center;
	}
	.label-checkbox input[type="checkbox"]{
		width: 7rem;
		height:7rem;
	}
	.btnarea .down-btn{
		width: 100%;
		font-size: 6rem;
	}
	.privacy-mark-img{
		position: static;
		width: 100%;
	display: flex;
	justify-content: flex-end;
	}
	.privacy-mark-img img{
	}
}





/*check-page*/
.inner h2.headline{
	color:#bb8d8d;
	margin-bottom: 5rem;
}
.checkpage section > div{
	font-size: 1.6rem;
	border-bottom: 1px #808080 solid;
	/*text-indent: 1em;*/
	padding:0 1em 1rem;
	line-height: 2;
}
.checkpage section div.tel-area{
	border-bottom: none;
	padding: 0;
	gap: 1rem;
}
.checkpage section div.tel-area div{
	border-bottom: 1px #808080 solid;
	width: 100%;
	text-indent: 1em;
	font-size: 1.6rem;
}

.checkpage .btnarea{
	display: flex;
	gap: 8rem;
	margin-top: 5rem;
	justify-content: center;
}
.checkpage .btnarea .btn input.down-btn{
	max-width: 27.7rem;
}
.checkpage .btnarea a.back-btn {
	display: block;
	width: 27.7rem;
	background-color: #5f5f5f;
	font-size: 1.4rem;
	color: #fff;
	/*background: #000;*/
	border-radius: 20px;
	padding:1rem 7rem;
	text-decoration: none;
	text-align: center;
}

@media (max-width: 1099px) {
	.checkpage section > div{
		font-size: 14px;
	}
	.checkpage section div.tel-area div {
		font-size: 14px;
		padding: 0 1em 1rem;
		text-indent: 0;
	}
	.checkpage .btnarea a.back-btn{
		font-size: 12px;
	}
	.inner h2.headline{
		font-size: 18px;
	}
}

@media (max-width: 768px) {
	.inner h2.headline{
		font-size: 9.9rem;
	}
	.checkpage section > div{
		font-size: 6.3rem;
	}
		.checkpage section div.tel-area div {
		font-size: 6.3rem;
		}
	.checkpage .btnarea{
		flex-direction: column;
		margin-left: 0;
		/*align-items: center;*/
		gap:0;
		margin-top: 20rem;
	}
	.checkpage .btnarea a.back-btn{
		width: 100%;
		font-size: 6rem;
		padding: 6rem 8rem;
		border-radius: 30px;
		margin-top: 16rem;
	}
	.checkpage .btnarea .btn input.down-btn{
		max-width: 100%;
		border-radius: 30px;
	}
}








/*
privacy-page*/
.privacy-page .inner{
	display: block;
}
.section-wrap{
	margin: 0 auto 15rem;
}
.privacy-page .inner h1,
.privacy-page .inner h2{
	font-size: 4.8rem;
	margin-bottom: 10rem;
}
.privacy-page .section-wrap h3{
	font-size: 2.4rem;
	margin: 7rem 0 3rem;
}
.privacy-page .inner p{
	font-size: 1.4rem;
	margin-top: 1em;
	line-height: 1.8;
}

.privacy-page section{
	margin: 5rem auto 0;
}
.privacy-page section h4{
	font-size: 1.8rem;
	border-bottom:1px #dcdcdc solid;
	padding-bottom: 2rem;
    margin-bottom: 3rem;
}
.privacy-page section h5{
	font-size: 1.7rem;
	margin: 3rem 0 2rem;
	font-weight: bold;
}
.privacy-page .inner ul li{
	list-style: disc;
	margin-left: 2rem;
	font-size: 1.4rem;
	line-height: 1.8;
}
.privacy-page table{
	margin-bottom: 5rem;
}
.privacy-page table th,
.privacy-page table td{
	font-size: 1.4rem;
	text-align: center;
	padding:1.8rem;
	border: #808080 1px solid;
}
.privacy-page table th{
	background-color: #e2e2e2;
}
.privacy-page section ol{
	margin-left: 1.5rem;
}
.privacy-page ol ul.inner_list{
	margin-top: 2rem;
	margin-bottom: 3rem;
}
.privacy-page ol ul.inner_list li{
	margin-left: 1rem;
}
.privacy-page section.section-bg{
	padding: 3rem;
	margin: 3rem 0;
}
.privacy-page section.section-bg h5{
	font-size: 1.4rem;
	margin-top: 3rem;
}
.privacy-page section.section-bg h5:first-of-type{
	margin-top: 0;
}



@media (max-width:1080px){
	.privacy-page .section-wrap h3{
		font-size: 20px;
	}
	.privacy-page .section-wrap p{
		font-size: 14px;
	}
	.privacy-page section h4{
		font-size: 18px;
	}
	.privacy-page section h5{
		font-size: 17px;
	}
	.privacy-page .inner ul li {
		font-size: 14px;
	}
	.privacy-page table th, 
	.privacy-page table td {
		font-size: 14px;
	}
	.privacy-page ol li{
		font-size: 14px;
	}
	.privacy-page section.section-bg h5{
		font-size: 14px;
	}
}

@media (max-width: 768px) {
	.privacy-page .inner h1,
	.privacy-page .inner h2{
		font-size: 14.4rem;
		margin-bottom: 24rem;
	}
	.privacy-page .section-wrap h3{
		font-size: 7.2rem;
		margin: 14rem 0 8rem;
	}
	.privacy-page section{
		margin:24rem 0;
	}
	.privacy-page section.section-bg{
		padding: 24rem 12rem;
		margin: 24rem 0;
	}
	.privacy-page .inner p{
		font-size: 6.3rem;
	}
	.privacy-page section h4{
		font-size: 7.2rem;
		margin-top:12rem;
		margin-bottom: 12rem;
	}
	.privacy-page section h5{
		font-size: 7rem;
		margin: 12rem 0 10rem;
	}
	
	.privacy-page .inner ul li,
	.privacy-page .inner ol li{
		font-size: 6.3rem;
		margin-left: 1em;
	}
	.privacy-page ol ul.inner_list{
		margin: 12rem 0;
	}
	.privacy-page ol ul.inner_list li{
		margin-bottom: 0.5em;
	}
	.privacy-page table tr,
	.privacy-page table tbody{
		width: 100%;
	}
	.privacy-page table th,
	.privacy-page table td{
		font-size: 6.3rem;
		padding: 1em;
	}
	.privacy-page h5{
		font-size: 6rem;
		margin: 6rem 0 6rem;
	}
	.privacy-page section.section-bg h5{
		margin-top: 6rem;
		font-size: 6.3rem;
		line-height: 1.8;
	}
}














/**-----------------------------------------**/

@media (min-width: 769px) {
	.description h3{
		font-size: 16px;
	}
	.description li,
	.description dt,
	.description dd,
	.about table th,
	.about table td{
		font-size: 12px;
	}
	.description-note {
		font-size: 12px;
	}
	.openbtn{
		display: none;
	}
}

@media (min-width: 1080px) {
	
	.description h3{
		font-size: 18px;
	}
	.topics section h2{
		font-size: 30px;
	}
	.description li,
	.description dt,
	.description dd,
	.about table th,
	.about table td{
		font-size: 14px;
	}
	.description-note {
		font-size: 14px;
	}
}

@media (max-width:1080px) {
	nav ul li,
	.header-navi ul li{
		font-size: 13px;
	}
	
	.image p{
		font-size: 13px;
	}
}

@media (max-width: 768px) {

	.contents{
		position: static;
	}
	.description h3{
		font-size: 16px;
	}

	.description li,
	.description dt,
	.description dd,
	.about table th,
	.about table td{
		font-size: 4.375vw;
	}
	.description-note {
		font-size: 4.375vw;
	}
	body.fixed{
		width:100%;
		height:100%;
		position:fixed;
	}

	.openbtn{
		position:fixed;
		width: 80px;
		height:70px;
		z-index: 9999;
		top:0;
		right:0;
		cursor: pointer;
	}
	.openbtn span{
		display: inline-block;
		transition: all.4s;
		position: absolute;
		height:2px;
		width: 30%;
		background-color: #333;
		/*left:20px;*/
		right:30px;
	}
	.body.dark3 .openbtn span,
	.body.dark4 .openbtn span,
	.body.body.gray .openbtn span{
		background-color: #fff;
	}
	.openbtn span:nth-of-type(1){
		top:39px;			}
	.openbtn span:nth-of-type(2){
		top:47px;
	}
	.openbtn.active span:nth-of-type(1){
		left: 23px;
		transform: translateY(6px) rotate(-45deg);
	}
	.openbtn.active span:nth-of-type(2){
		top:51px;
		left: 23px;
		transform: translateY(-6px) rotate(45deg);
	}
	.body.light1 .navi {
		background-color: #fff;
	}
	.body.light1 .navi .logo .cls-1, .body.light1 .navi .logo svg{
		fill:#000;
	}
	.navi,
	.subpage-navi{
		position: fixed;
		top: 0;
		width: 100%;
		height: 18.6rem;
		padding: 0;
		z-index: 10;
	}
	.logo{
		position: relative;
		z-index: 1000;
		width: 36.1rem;
		/*padding:14.56rem 0 0 10.92rem;*/
		padding: 4.5vw 0 0 4.375vw;
		padding-top:0;
	}
	.logo_gooddesign{
		margin-top: 0;
		padding-left: 20px;
	}
	.logo_gooddesign img{
		width: auto;
	}
	.navi{
		display: flex;
		padding-top:6px;
		align-items: center;
	}
	nav {
		transform: none;
		position: fixed;
		top: 0;
		margin: 0;
		font-size: 12px;
		width: 100%;
		height:100vh;
		background-color:#e2e2e2;
	}
	nav ul{
		flex-direction: column;
		align-items: center;
		justify-content: center;
		position: absolute;
		top:50%;
		left:50%;
		transform: translate(-50%,-50%);
	}
	nav ul li{
		font-family: 'Raleway', sans-serif;
		font-weight: 500;
		font-size: 13rem;
		margin-right: 0;
	}
	nav ul li a,
	.body.dark3 .navi a,
	.body.dark4 .navi a{
		padding-left:0.5em;
		color: #000;
	}
	nav ul li a::before,
	.body.dark3 .navi a::before,
	.body.dark4 .navi a::before{
		top:1.1em;
		top:0.7em;
		border: none;
		width: 0.4em;
	}
	.topic nav ul li a::before,
	.subpage nav ul li a::before{
		border-top: solid 1px #000;
	}
	.topic nav ul li a.active,
	.subpage nav ul li a.active{
		color: #bb8d8d;
	}
	.topic nav ul li a.active::before,
	.subpage nav ul li a.active::before{
		border-top: solid 1px #bb8d8d;
	}
	nav ul li.current a,
	.body.dark3 .navi ul li.current a,
	.body.dark4 .navi ul li.current a{
		color: #fff;
	}
	nav ul li.current a::before,
	.body.dark3 nav ul li.current a::before,
	.body.dark4 nav ul li.current a::before{
		border-top: solid 2px #fff;
	}
	.contents {
		padding: 0;
	}
	.kv {
		margin: 0;
	}
	.kv-movie{
		/*width:177.77777778vh;
		height:56.25vw;
		margin-top: 0;
		min-width:100%;
		min-height: 100%;*/
		/*width: auto;
		margin-top:0;
		margin-left:0;
		transform: translate(-50%,-50%);*/
	}
	.kv-txt{
		top:0;
		left:auto;
		right:0;
		margin-top: 57.324rem;
		margin-right:30px;
		font-size: 3.8vw;
		/*font-size: 18.5px;*/
		text-align: right;
	}
	.kv-txt > span{
		display: block;
	}
	.kv-logo{
		top:28.2vw;
		width: 52rem;
		right:0;
		left:auto;
		margin-right:30px;
	}
	.kv-logo-white{
		width:25rem;
	}
	.kv-tagline {
		left: 22rem;
		top: 35rem;
		bottom: auto;
		width: 10rem;
	}
	
	.para-area{
		padding: 150px 0;
	}
	.para-area img{
		width: 100%;
	}
	.para_img_01,
	.para-area p,
	.para_img_03,
	.para_img_02{
		position: static;
	}
	.para_img_wrap{
		margin:0 10.92rem;
		margin-top:16.6vw;
	}
	.para-bg-txt{
		font-size: 150px;
		margin-top:-91px;
	}
	.para_img_01{
		width: 100%;
		margin-left: 0;
	}
	.txt_01{
		font-size: 6.875vw;
		margin:0 30px;
	}
	.txt_02{
		font-size: 6.25vw;
		margin:0 30px;
		margin-top:174.5px;
	}
	.txt_02 span,
	.txt_03 span{
		font-size: 48px;
	}
	img.para_img_03{
		margin-top: 60px;
		width: auto;
		margin-left:0;
	}
	.txt_03{
		font-size: 6.25vw;
		margin: 60px 20px 0 20%;
	}
	img.para_img_02{
		margin-top: 60px;
		margin-left: 0;
		width: auto;
	}
	.para_img:nth-of-type(3){
		text-align: right;
	}
	.para-area-img-right {
		text-align: right;
	}
	.pv-movie{
		margin-top:32.9rem;
		padding-right:0;
	}
	.pv-movie video{
		width: 100%;
	}

/** .feature **/

	.feature{
		height: auto;
		overflow: visible;
	}
	.feature-gsap{
		position: static;
		height: auto;
	}
	.images{
		flex-direction: column;
		position: static;
		padding-left: 0;
		padding-right: 0;
		height:100%;
	}
	.image {
		width: 100vw;
		padding: 0;
	}
	section.image{
		padding:28.125vw 30px 0;
	}
	section.image:first-of-type{
		padding:28.125vw 0 0;
	}
	section.image:last-of-type{
		padding:18.75vw 30px 18rem;
	}
	.scroll-i{
		position: relative;
	}
	.images h2{
		left:0;
		margin-left:30px;
		bottom:-11.5rem;
		font-size: 21.84rem;
		font-weight: 500;
	}
	.feature-area{
		flex-direction: column;
	}
	.txt-box{
		width: 100%;
	}
	.image h3{
		font-size: 11.25vw;
	}
	.image h4{
		font-size:7.5vw;
		padding: 0;
		margin:0;
	}
	.txt_s{
		font-size: 8.74rem;
	}
	.image p{
		font-size: 5.625vw;
		line-height: 1.5;
		margin-bottom: 18.75vw;
		margin-top: 24rem;
	}
	section:nth-of-type(2) h2{
		font-size:8.7rem;
	}
	.scroll-img04-txt:nth-of-type(2) p,
	.scroll-img06-txt:nth-of-type(1) p,
	.scroll-img06-txt:nth-of-type(2) p{
		margin-bottom: 21.84rem;
	}
	h2.scroll-img03-txt{
		font-size: 13.7vw;
	}
	section.image:nth-of-type(5){
		padding-bottom:28.125vw;
	}
	h2.scroll-img05-txt{
		bottom: -12vw;
	}

	/*
	.pv-area{
		flex-direction: column;
		margin: 30rem 0;
	}
	.pv-image{
		left:0;
	}
	
	.pv-wrapper{
		margin:0;
		position:relative;
		z-index:0;
	}
	.pv-img{
		position:relative;
		left:0;
		z-index:0;
		margin-top:20rem;
	}
	.pv-area h2{
		top:21rem;
		position: absolute;
		left:6rem;	
	}
	.pv-area h3{
		margin-top:0;
		margin-left:6rem;
	}
	*/
	.sticky{
		position: static;
	}
	.description,
	.about{
		/*padding:21.84rem 0;*/
		margin:0;
	}
	.description h2,
	.about h2 {
		font-size: 21.84rem;
		padding: 0;
		margin-left:0;
	}
	.description h2{
		font-size: 12.5vw;
	}
	.description-wrapper {
		padding: 18.75vw 10.92rem 0;
		flex-direction: column;
	}
	.desc-img{
		width: 100%;
		padding:0;
	}
	.desc-img-box{
		height: 76.5625vw;
		margin-top:18.75vw;
	}
	.desc-txt-area{
		margin-top:0;
		padding-right:0;
	}
	.description h3{
		margin:0 0 12.5vw;
		font-size: 5.625vw;
	}
	.description ul,
	.description dl {
		margin-left: 3em;
		margin-bottom:18.75vw;
	}
	.about {
		flex-direction: column;
		background-color: #fff;
		color:#000;
		padding:24rem  10.92rem 18.75vw;
	}
	.about h2 {
		width: 100%;
		font-size: 12.5vw;
		white-space: nowrap;
	}
	.about-wrapper {
		width: 100%;
		margin: 0;
		padding: 18.75vw 0;
	}
	.about table colgroup col:first-child {
		width: 25rem;
	}
	.about table th,.about table td{
		font-size: 4.375vw;
	}
	.about table th{
		width: 38.22rem;
		width: 33.125vw;
	}
	.about table td{
		padding-right:0;
	}
	.finish{
		/*height: 100vh;*/
		padding: 37.5vw 10.92rem;
		background-color: #000;
		color: #fff;
	}
	.finish h2{
		font-size:10vw;
		margin: 0;
	}
	.finish-logo{
		width: 64.4rem;
		margin: 21.84rem 0 0 0;
	}
	footer{
		margin: 0 0 25vw 0;
		padding-bottom:25vw;
	}
	footer p{
		position: static;
		left: auto;
		padding: 0;
		font-size: 4.0625rem;
	}
	footer p.footer-link {
		position: relative;
		left: 0;
		width: 100%;
		margin: 0;
		padding: 1em 0 3em;
		text-align: center;
	}
	.pc-none{
		display: block;
	}
	.sp-none{
		display: none;
	}

}

@media (max-width: 768px) {
	.topic .navi,
	.subpage-navi,
	.subpage .navi{
		background-color: #000;
	}
	.topic .openbtn span,
	.subpage-navi .openbtn span,
	.subpage .openbtn span{
		background-color: #fff;
	}

}
@media (max-width: 550px) {
	.navi,
	.subpage-navi{
		height:33.6rem;
		height: 80px;
	}
	.logo{
		width:43.1rem;
		padding:40px 0 0 30px;
		padding-top: 0;
	}
	
}




.animation {
	/*margin: 50px 0;
	font-size: 40px;
	font-weight: bold;
	color: #ff0000;*/
}

.fadeInDown {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:1s;
	-ms-animation-duration:1s;
	animation-duration:1s;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
	0% { opacity: 0; -webkit-transform: translateY(0); }
	100% { opacity: 1; -webkit-transform: translateY(-25px); }
}
@keyframes fadeInDown {
	0% { opacity: 0; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
	100% { opacity: 1; -webkit-transform: translateY(-25px); -ms-transform: translateY(-25px); transform: translateY(-25px); }
}

.kv-text-fadeIn {
	opacity: 0;
	transform: translateY(25px);
	animation: kv-text-fadeIn 0.8s linear forwards;
}
@keyframes kv-text-fadeIn {
	0% {
		opacity: 0;
		transform: translateY(25px);
	}
	100% { 
		opacity: 1;
		transform: translateY(0);
	}
}
.delay-time01 { animation-delay: 0.1s; }
.delay-time02 { animation-delay: 0.2s; }
.delay-time03 { animation-delay: 0.3s; }
.delay-time04 { animation-delay: 0.4s; }
.delay-time05 { animation-delay: 0.5s; }
.delay-time06 { animation-delay: 0.6s; }
.delay-time07 { animation-delay: 0.7s; }
.delay-time08 { animation-delay: 0.8s; }
.delay-time09 { animation-delay: 0.9s; }
.delay-time10 { animation-delay: 1.0s; }
.delay-time11 { animation-delay: 1.1s; }
.delay-time12 { animation-delay: 1.2s; }
.delay-time13 { animation-delay: 1.3s; }
.delay-time14 { animation-delay: 1.4s; }
.delay-time15 { animation-delay: 1.5s; }
.delay-time16 { animation-delay: 1.6s; }
.delay-time50 { animation-delay: 5.0s; }
.delay-time100 { animation-delay: 10.0s; }
.delay-time150 { animation-delay: 15.0s; }
.delay-time200 { animation-delay: 20.0s; }

.ps-color{
	color: #bb8d8d;
}

      

      
      