@charset "utf-8";

html {
}
body {
	font-family: "source-han-serif-jp-subset", sans-serif;
	font-size:15px;
	text-align:center;
	color:#042b44;
	font-feature-settings: "palt";
}

@media screen and (max-width:768px){
	body {
		font-size:3.2vw;
	}
}

.en{
  font-family: dolce, sans-serif;
}

.gothic{
  font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}


a {
	color:#042b44;
	transition : opacity 0.4s;
	-webkit-transition : opacity 0.4s;
	opacity:1;
	outline:none;
}
a:hover {
	opacity: 0.7;
}

img{
	max-width:100%;
}

.only_sp,
.only_sp_i{
	display:none !important;
}
@media screen and (max-width:768px){
	.only_pc{
		display:none !important;
	}
	.only_sp{
		display:block !important;
	}
	.only_sp_i{
		display:inline-block !important;
	}
}




#wrapper{
	overflow:hidden;
}

.inner{
	max-width:1080px;
	width:94%;
	margin:auto;
}

@media screen and (max-width:768px){
	.inner{
		width:84%;
	}
}


/* 色・書式関係 */
.gold{
	color:#c69c6d;
}
.bg_gold{
	color:#fff;
	background-color:#c69c6d;
}

.bold{
	font-weight:bold;
}
.text_left{
	text-align:left;
}
.text_right{
	text-align:right;
}


/* .btn */
.btn{
	display:block;
	width:15em;
	line-height:4.5;
	margin-top:5%;
	font-size:14px;
	letter-spacing:0.1em;
	text-indent:0.1em;
	text-align:center;
	border-radius:100px;
}

@media screen and (max-width:768px){
	.btn{
		width:12em;
		line-height:3;
		margin-top:5%;
		font-size:3.3vw;
	}
}


/* header */
header{
	width:100%;
	height:100px;
	padding:0 20px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	position:absolute;
	z-index:100;
}
header .head_logo{
	width:48px;
}
header nav ul{
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
header nav ul li{
	padding:0 min(3.6vw,36px);
	line-height:1;
}
header nav ul li:first-child{
	padding-left:0;
}
header nav ul li a{
	font-size:14px;
	font-weight:bold;
  letter-spacing:0.1em;
}


@media screen and (max-width:768px){
	header{
		height:70px;
		padding:0 0 0 20px;
	}
	header .head_logo{
		width:40px;
	}
	header nav{
		width:100%;
		height:100dvh;
		padding-top:90px;
		background-color:#fff;
		position:fixed;
		top:0;
		left:0;
		display:none;
	}
	header nav ul{
		display: block;
	}
	header nav ul li{
		margin-top:2em;
		padding:0;
		line-height:2;
		font-size:18px;
	}
	header nav ul li:nth-child(-n+3){
		border-right:none;
	}
	header nav ul li a{
		font-size:18px;
	}
	header nav ul li:last-child a{
		padding:0 2em;
		line-height:50px;
		display:inline-block;
		font-size:18px;
	}
}


/* #btnmenu */
#btnmenu{
	width:60px;
	height:60px;
	margin:0;
	padding:0;
	position:relative;
	z-index:105;
	cursor:pointer;
}
#btnmenu span{
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 40px;
	height: 2px;
	border-radius:2px;
	margin: -1px 0 0 -20px;
	background: #042b44;
	-webkit-transition: .2s;
	transition: .2s;
}
#btnmenu span:before,
#btnmenu span:after{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 40px;
	height: 2px;
	background: #042b44;
	border-radius:2px;
	-webkit-transition: .3s;
	transition: .3s;
}

#btnmenu span:before{
	margin-top: -12px;
}

#btnmenu span:after{
	margin-top: 9px;
}
#btnmenu.close{
}
#btnmenu.close span{
	background-color:transparent;
}

#btnmenu.close span:before,
#btnmenu.close span:after{
	margin-top: 0;
	background-color:#042b44;
}

#btnmenu.close span:before{
	width: 40px;
	height: 2px;
	margin: -2px 0 0 0;
	border-radius:2px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#btnmenu.close span:after{
	width: 40px;
	height: 2px;
	margin: -2px 0 0 0;
	border-radius:2px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}


/* article */
article{
}
article h1{
}


/* .cont */
.cont{
	padding:min(6%,60px) 0;
}
.cont .tit{
	padding-top:1em;
	padding-left:3%;
	text-align:left;
}
.cont .tit.center{
	padding-left:0;
	text-align:center;
}
.cont .tit .en{
	line-height:1;
	display:block;
	font-size:64px;
	font-weight:normal;
}
.cont .tit .jp{
	display:block;
	font-size:14px;
	font-weight:500;
	letter-spacing:0.1em;
}

@media screen and (max-width:768px){
	.cont{
		padding:12% 0;
	}
	.cont .tit{
		padding-left:0;
	}
	.cont .tit .en{
		font-size:12vw;
	}
	.cont .tit .jp{
		font-size:3vw;
	}
}


/* #cont0 */
#cont0{
	padding-top:0;
}
#cont0 p{
	line-height:3;
	padding:0 min(3vw,30px);
	text-align:left;
	letter-spacing:0.1em;
}
#cont0 > p{
	width:100%;
	padding-top:min(9%,90px);
	padding-bottom:min(4%,40px);
}
#cont0 .flex{
	margin-top:min(5%,50px);
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
#cont0 .flex p{
	width:636px;
}
#cont0 .flex figure{
	flex:1;
}

#cont0 .flex.left{
	margin-right:calc(50% - 540px);
}
#cont0 .flex.left p{
	padding-left:min(8vw,80px);
}

#cont0 .flex.right{
	margin-left:calc(50% - 540px);
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
#cont0 .flex.right p{
	padding-right:min(8vw,80px);
}

@media screen and (max-width:1080px){
	#cont0 .flex{
		margin-top:50px;
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		align-items: center;
	}
	#cont0 .flex p{
		width:60%;
	}
	#cont0 .flex figure{
		flex:1;
	}

	#cont0 .flex.left{
		margin-right:0;
	}
	#cont0 .flex.left p{
		padding-left:min(3vw,30px);
	}

	#cont0 .flex.right{
		margin-left:0;
	}
	#cont0 .flex.right p{
		padding-right:min(3vw,30px);
	}
}

@media screen and (max-width:768px){
	#cont0 p{
		line-height:2;
		padding:0 8%;
	}
	#cont0 > p{
		width:100%;
		padding-top:8%;
		padding-bottom:0;
	}
	#cont0 .flex{
		margin-top:8%;
		display: block;
	}
	#cont0 .flex p{
		width:auto;
		padding:8% 8% 0;
	}

	#cont0 .flex.left figure{
		margin-right:28%;
	}
	#cont0 .flex.left p{
		padding-left:8%;
	}

	#cont0 .flex.right figure{
		margin-left:28%;
	}
	#cont0 .flex.right p{
		padding-right:8%;
	}
}


/* #cont1 */
#cont1{
	padding-bottom:0;
	position:relative;
}
#cont1 .sec{
	width:1212px;
	margin-left:calc(50% - 540px);
	margin-top:70px;
	padding:80px;
	background-color:#fff;
	border:1px solid #c69c6d;
	border-radius:2em;
	box-shadow:7px 15px 25px rgba(45,45,45,0.75);
}
#cont1 .sec h3{
	font-size:24px;
	font-weight:500;
	letter-spacing:0.1em;
	text-align:left;
}
#cont1 .sec .cont_wrapper{
	margin-top:9%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
			justify-content: flex-end;
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
#cont1 .sec .cont_wrapper figure{
	width:436px;
	margin-left:5%;
}
#cont1 .sec .cont_wrapper .cont_left{
	width:500px;
	text-align:left;
}
#cont1 .sec .cont_wrapper .cont_left p{
	line-height:2.3;
	font-weight:500;
	letter-spacing:0.19em;
}

@media screen and (max-width:1160px){
	#cont1 .sec{
		margin-left:3%;
	}
	#cont1 .sec{
		width:auto;
		margin-left:3%;
		margin-top:6%;
		padding:6%;
		border-right:none;
		border-radius:2em 0 0 2em;
	}
}

@media screen and (max-width:768px){
	#cont1 .sec{
		margin-top:7%;
		margin-left:8%;
		padding:6% 8% 8% 6%;
		border-radius:1.5em 0 0 1.5em;
		box-shadow:4px 9px 12px rgba(45,45,45,0.75);
	}
	#cont1 .sec h3{
		font-size:4vw;
	}
	#cont1 .sec .cont_wrapper{
		margin-top:5%;
		display: block;
	}
	#cont1 .sec .cont_wrapper figure{
		width:auto;
		margin-left:0;
	}
	#cont1 .sec .cont_wrapper .cont_left{
		width:auto;
		margin-top:5%;
	}
	#cont1 .sec .cont_wrapper .cont_left p{
		line-height:1.6;
		letter-spacing:0.19em;
	}
}

/* .sec_wrapper */
.sec_wrapper{
	margin-top:-70px;
	background:url(../images/sec_wrapper.png)no-repeat center top;
	background-size: auto 100%;
}
@media screen and (max-width:1080px){
	.sec_wrapper{
		background:url(../images/sec_wrapper_t.png)no-repeat left top;
		background-size: auto 100%;
	}
}

@media screen and (max-width:768px){
	.sec_wrapper{
		margin-top:-15%;
		background:url(../images/sec_wrapper_s.png)no-repeat center top;
		background-size: 100% 100%;
	}
}



/* #cont2 */
#cont2{
	padding-top:200px;
}
#cont2 .slide_wrapper{
	margin-top:70px;
}
#cont2 .slide_wrapper .slick{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
#cont2 .slide_wrapper .slick .item{
	width:min(32%,340px);
	padding:3%;
	border:1px solid #c69c6d;
	border-radius:2em;
	background-color:#fff;
}
#cont2 .slide_wrapper .slick .item figure figcaption{
	margin-top:0.5em;
	padding:0 2%;
	text-align:left;
	font-weight:500;
}
#cont2 .slide_wrapper .slick .item figure figcaption .small{
	display:block;
	font-size:14px;
	letter-spacing:0.1em;
}
#cont2 .slide_wrapper .slick .item figure figcaption .large{
	display:block;
	letter-spacing:0.1em;
}
#cont2 .slide_wrapper .slick .item p{
	margin-top:1em;
	padding:0 2%;
	line-height:2;
	font-size:14px;
	font-weight:500;
	text-align:left;
	letter-spacing:0.19em;
}

@media screen and (max-width:768px){
	#cont2{
		padding-top:40%;
	}
	#cont2 .slide_wrapper{
		width:100%;
		margin-top:6%;
		margin-left:6%;
		overflow:hidden;
	}
	#cont2 .slide_wrapper .slick{
		width:58%;
		display: block;
	}
	#cont2 .slide_wrapper .slick .slick-list{
		overflow:visible;
	}
	#cont2 .slide_wrapper .slick .slick-track {
		display: flex;
	}
	#cont2 .slide_wrapper .slick .slick-slide {
		height: auto !important;
	}
	#cont2 .slide_wrapper .slick .item{
		width:58vw;
		padding:5vw;
		border:none;
		border-radius:0;
		background-color:transparent;
		position:relative;
	}
	#cont2 .slide_wrapper .slick .item:before{
		content:'';
		display:block;
		width:calc(100% - 3vw);
		height:100%;
		background-color:#fff;
		border:1px solid #c69c6d;
		border-radius:1em;
		position:absolute;
		top:0;
		left:50%;
		z-index:-1;
		transform:translateX(-50%);
	}
	#cont2 .slide_wrapper .slick .item figure figcaption .small{
		font-size:3vw;
	}
	#cont2 .slide_wrapper .slick .item figure figcaption .large{
		font-size:4vw;
	}
	#cont2 .slide_wrapper .slick .item p{
		line-height:1.5;
		font-size:3vw;
	}
}


/* #cont3 */
#cont3{
	padding:200px 0 150px;
}
#cont3 .tit .jp{
	color:#fff;
}
#cont3 .desc{
	margin-top:70px;
	padding:0 3%;
	color:#fff;
}
#cont3 .desc div{
	line-height:2;
	text-align:left;
	display: -webkit-flex;
	display: flex;
	letter-spacing:0.19em;
}
#cont3 .desc div.noflex{
	display:block;
}
#cont3 .desc div:nth-child(n+2){
	margin-top:30px;
}
#cont3 .desc div dt:after{
	content:':';
}
#cont3 .desc div dd{
	flex:1;
}
#cont3 .desc div dd ul{
	padding-left:2em;
}
#cont3 .desc div dd ul li{
	list-style:decimal;
}

@media screen and (max-width:768px){
	#cont3{
		padding:3% 0 45%;
	}
	#cont3 .desc{
		margin-top:9%;
		padding:0;
	}
	#cont3 .desc div{
		line-height:1.4;
		text-align:left;
		display: -webkit-flex;
		display: flex;
		letter-spacing:0.19em;
	}
	#cont3 .desc div.noflex{
		display:block;
	}
	#cont3 .desc div:nth-child(n+2){
		margin-top:5%;
	}
	#cont3 .desc div dt:after{
		content:':';
	}
	#cont3 .desc div dd{
		flex:1;
	}
	#cont3 .desc div dd ul{
		padding-left:2em;
	}
	#cont3 .desc div dd ul li{
		list-style:decimal;
	}
}


/* #cont4 */
#cont4{
}
#cont4 .tit .en{
	text-align:center;
}
#cont4 .btn{
	margin-left:auto;
	margin-right:auto;
	font-size:;
}



/* #contact */
#contact{
}
#contact div.inner{
	max-width:750px;
}
#contact .inner form > dl{
	margin:50px 0 30px;
	line-height:1.5;
	font-size:16px;
	text-align:left;
}
#contact .inner form > dl > dt{
	margin:1em 0 0.3em;
}
#contact .inner form > dl > dt.hissu:after{
	content:'（必須）';
	color:#165E83;
}
#contact .inner form > dl > dd dl{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
#contact .inner form > dl > dd dl div{
	width:48%;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
#contact .inner form > dl > dd dl div dt{
	width:1.5em;
	color:#333;
}
#contact .inner form > dl > dd dl div dd{
	width:calc(100% - 1.5em);
}
#contact .inner form > dl > dd ul{
	display: -webkit-flex;
	display: flex;
}
#contact .inner form > dl > dd ul li{
	margin-right:1em;
}
#contact .inner .privacy{
	font-size:16px;
}
#contact .inner .privacy a{
	text-decoration:underline;
}


@media screen and (max-width:768px){
	#contact{
		padding-bottom:15%;
	}
	#contact .inner form > dl{
		margin:9% 0 5%;
	}
}

@media screen and (max-width:480px){
	#contact .inner form > dl{
		font-size:16px;
	}
	#contact .inner .privacy{
		font-size:13px;
	}
}


/* confirm */
#contact.confirm{
	min-height:calc(100vh - 100px);
}
#contact.confirm .inner{
	margin-top:50px;
}
#contact.confirm .inner form > dl{
	margin-top:50px;
	text-align:left;
}
#contact.confirm .inner form > dl dt{
	margin:0;
	float:left;
}
#contact.confirm .inner form > dl > dd{
	margin-bottom:1em;
	padding-left:15em;
	border-bottom:1px dotted;
}

@media screen and (max-width:768px){
	#contact.confirm .inner{
		margin-top:5%;
	}
	#contact.confirm .inner form > dl{
		margin-top:5%;
		font-size:3.6vw;
	}
	#contact.confirm .inner form > dl > dt{
		font-weight:bold;
		float:none;
	}
	#contact.confirm .inner form > dl > dd{
		padding:0;
	}
}


/* thanks */
#contact.thanks{
	min-height:calc(100vh - 500px);
	padding-top:120px;
}
#contact.thanks .inner{
	margin-top:50px;
}
#contact.thanks .inner p{
	line-height:2;
	font-size:16px;
}

@media screen and (max-width:1000px){
	#contact.thanks .inner p .only_smart{
		display:block !important;
	}
}

@media screen and (max-width:768px){
	#contact.thanks .inner{
		margin-top:5%;
	}
	#contact.thanks{
		min-height:calc(100vh - 300px);
		padding-top:12%;
	}
	#contact.thanks .inner{
		margin-top:9%;
		padding-bottom:3%;
	}
	#contact.thanks .inner p{
		font-size:4vw;
	}
}


/* footer */
footer{
	padding:min(5%,50px) 0 min(3%,30px);
}
footer dl dt{
	width:48px;
	margin:auto;
}
footer dl dd{
	margin:min(3%,30px) 0 min(6%,60px);
}
footer dl dd ul{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
}
footer dl dd ul li{
	padding:0 min(3.6vw,36px);
	line-height:1;
}
footer dl dd ul li a{
	font-size:14px;
	font-weight:bold;
  letter-spacing:0.1em;
}

footer .copy{
	font-weight:500;
	letter-spacing:0.19em;
	text-indent:0.19em;
}

@media screen and (max-width:768px){
	footer dl dt{
		width:10%;
	}
	footer dl dd ul{
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	footer dl dd ul li{
		width:40%;
		padding:1em 0;
		line-height:1;
	}
	footer dl dd ul li a{
		font-size:3.4vw;
	}
}


/* top_top */
#topbtn{
	width:50px;
	line-height:50px;
	font-size:18px;
	letter-spacing:0;
	border-radius:50%;
	color:#fff;
	background-color:rgba(0,0,0,0.5);
	position:fixed;
	z-index:90;
	right:30px;
	bottom:-150px;
	-webkit-transition: bottom 0.8s;
	transition: bottom 0.8s;
}
@media screen and (max-width:768px){
	#topbtn{
		width:40px;
		line-height:40px;
		right:20px;
	}
}


/* fadein */
.fadein0 {
	opacity : 0;
	-webkit-transition-property: opacity;
	transition-property : opacity;
	-webkit-transition-duration: 1.5s;
	transition-duration : 1.5s;
}
.fadein {
	opacity : 0;
	-webkit-transform : translate(0, 70px);
	transform : translate(0, 70px);
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
}
.fadein_l {
	opacity : 0;
	-webkit-transform : translate(-100px, 0);
	transform : translate(-100px, 0);
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
}
.fadein_r {
	opacity : 0;
	-webkit-transform : translate(100px, 0);
	transform : translate(100px, 0);
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
}

.delay1 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 0.2s;
	transition-delay : 0.2s;
}
.delay2 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 0.4s;
	transition-delay : 0.4s;
}
.delay3 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 0.6s;
	transition-delay : 0.6s;
}
.delay4 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 0.8s;
	transition-delay : 0.8s;
}
.delay5 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 1.0s;
	transition-delay : 1.0s;
}
.delay6 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 1.2s;
	transition-delay : 1.2s;
}

.fadein0.scrollin{
	opacity : 1;
}
.fadein.scrollin,
.fadein_l.scrollin,
.fadein_r.scrollin{
	opacity : 1;
	-webkit-transform : translate(0, 0);
	transform : translate(0, 0);
}


/* popup */
.popup {
	-webkit-transform : scale(0);
	transform : scale(0);
	-webkit-transition-property: transform;
	transition-property : transform;
	-webkit-transition-duration: 0.4s;
	transition-duration : 0.4s;
	-webkit-transition-timing-function: cubic-bezier(.17,.67,.68,1.34);
	transition-timing-function: cubic-bezier(.17,.67,.68,1.34);
}
.popup.scrollin {
	-webkit-transform : scale(1);
	transform : scale(1);
}


/* -------privacy------- */

.privacy_hd{
margin: 100px auto 20px auto;
font-size: 50px;
}
.privacy_box dl{
margin: 30px auto;
max-width: 700px;
}
.privacy_box dl dt{
text-align: left;
font-size: 20px;
margin-bottom: 10px;
border-bottom: 1px solid #06314F;
}
.privacy_box dl dd{
text-align: left;
}

@media screen and (max-width:768px){
.privacy_box dl{
margin: 0px auto 20px auto;
width: 90%;
}
.privacy_box dl dd{
font-size: 14px;
}
}
