@charset "UTF-8";

/*-------------------------------------------
全体設定
-------------------------------------------*/

html {
	margin: 0;
	padding: 0;
	font-size: 15px;	/*基準となるフォントサイズ。*/
	overflow-x: hidden;
	scroll-behavior:smooth;
}

body {
	margin:0;
	font-family:"font-all","Noto Serif JP", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;	/*フォント種類*/
	background: #FFF;	/*背景色*/
	width:100vw;
	overflow:hidden;
}

main{
	margin-top:22vh;
}

a {text-decoration:none;
	transition: 0.3s;
	text-align: center;
	font-size:13px;
}

img{max-width:100%;
}

p{font-size:15px;
	line-height:2.1;
}

h1{font-size:5rem;
}

h2{font-size:2.5rem;
	margin:3% 0;
}

h3{font-size:3rem;
	margin:5%;
}

main .btn{
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100vh;
	background-color: #fff;
	box-shadow: 0 0 15px 0 #c1c1c1;
}

main .btn:hover{
	-webkit-transform: translateY(5px);
	transform: translateY(5px);
	box-shadow: none;
}

main i{
	font-size: 2.5rem;
	line-height:2.1;
}

main .fa-instagram{
	background: linear-gradient(55deg, #ffbb32 30.25%, #ff0303 44.54%, #cc2fff 67.65%, #7854ff);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

main .fa-line{
	object-position: 0 2.5px;
	padding: 5px;
}

main .fa-youtube{
	background: red;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.btn-text{
	position: relative;
}

.btn-text:after{
	content: "";
	background: url(images/arrow-right.png) no-repeat;
	background-size: contain;
	width: 20px;
	height: 25px;
	position: absolute;
	top: 0.5px;
	right: -30px;
}


@font-face {
	font-family:"font-all";
	src: url("fonts/BIZUDMincho-Regular.ttf") format("truetype");
}

@font-face {
	font-family:"menu-font";
	src: url("fonts/NotoSansJP-ExtraBold.ttf") format("truetype");
}



/*ここからSP版*/
@media screen and (max-width:870px){
	
	main{
		margin-top:12vh;
	}
	
	h3{
		font-size:1.5rem;
	}
	
}

/*-------------------------------------------
セクション１
-------------------------------------------*/

#sec1{
	position:relative;
	height:75vh;
	overflow:hidden;
}

.top-img{
	position:relative;
}

.top-img img{
	object-position: 0 -130px;
	width: 100%;
}

.top-text{
	position:absolute;
	left:0;
	top:10%;
	font-size: 1.7rem;
}

.text_1, .text_2{
	background: rgba(255, 255, 255, 0.7);
	margin: 30px 0;
	padding:7px 13px;
	font-size:2rem;
	width: fit-content;
	border-radius: 0 10px 10px 0;
}

.bottom-img{
	position:absolute;
	top: 75%;
	left: 45.5%;
	width: 10%;
}



/*ここからSP版*/
@media screen and (max-width:870px){
	
	#sec1{
		height:auto;
	}
	
	.top-img img {
		object-position: 0;
	}
	
	.top-text {
		top:0;
	}
	
	.text_1, .text_2{
		font-size:0.7rem;
	}
	
	.bottom-img {
		bottom: 1%;
	}
}

/*-------------------------------------------
セクション２
-------------------------------------------*/
#sec2 .column{
	display:flex;
	margin-top:5%;
}

#sec2 .left-col, #sec2 .center-col, #sec2 .right-col{
	width: calc(100% / 3);
}

.col-title{
	font-family: serif;
	font-size: 2.5rem;
	margin: 3% auto;
	text-align: center;
}

.col-title i{
	font-size: 2.5rem;
	padding-right: 7px;
}

#sec2 .left-col img, #sec2 .center-col img{
	padding: 30px;
}

.top-item, .bottom-item{
	height:calc(100% / 2);
}

.line-top-text{
	width: 60%;
	margin: 5% auto;
}

.line-center-img img{
	padding: 0 25%;
}

.line-bottom-text{
	width: 60%;
	margin: 5% auto;
}

.bottom-item{
	position: relative;
	background-image: url(images/87528.png);
	background-size: contain;
	display: flex;
	margin: 3%;
}

.top-text_sub{
	width: fit-content;
	margin: auto;
}

.top-text_sub p{
	font-size: 1.3rem;
	text-align: center;
}



/*ここからSP版*/
@media screen and (max-width:870px){
	
	#sec2 .column{
		flex-wrap: wrap;
		justify-content: space-evenly;
		margin-top: 10%;
	}
	
	#sec2 .left-col, #sec2 .center-col, #sec2 .right-col{
		width:45%;
	}
	
	.col-title {
		font-size: 1.5rem;
	}
	
	.col-title i {
		font-size: 1.5rem;
	}
	
	#sec2 .left-col img, #sec2 .center-col img {
		padding:0;
	}
	
	#sec2 .right-col {
		margin-top:10%;
		width: 85%;
	}
	
	.top-item, .bottom-item{
		height:calc(100% / 2);
	}
	
	.bottom-item{
		background-size: cover;
		margin: 10% 0;
		padding: 0 7%;
	}
	
	.top-text_sub p{
		font-size:1.1rem;
	}
}

/*-------------------------------------------
セクション３
-------------------------------------------*/
.what{
	width:63%;
	margin:10% 0;
	cursor: pointer;
}

.what-img{
	display: flex;
}

.what-img:hover{
	-webkit-transform: translateX(-15px);
	transform: translateX(-15px);
}



/*ここからSP版*/
@media screen and (max-width:870px){
	#sec3{
		margin: 30% 0;
	}
	
	.what{
		width: 70%;
	}
}

/*-------------------------------------------
セクション４
-------------------------------------------*/

#sec4{
	background: linear-gradient(#fff 15%, #c9f3f6 15%, #c9f3f6 80.5%, #fff 80.5%);
	margin-top: 5%;
	padding-bottom: 5%;
}

.where-img{
	width: 50%;
	margin: 7% auto;
}

#sec4 .column{
	display:flex;
	margin: 0 10%;
}

#sec4 .left-col, #sec4 .center-col, #sec4 .right-col{
	width:calc(100% / 3);
	margin: 3%;
}

#sec4 .column a{
	display: flex;
	box-shadow: 5px 5px 11px #50808d, -7px -7px 15px 0 #fff;
	border-radius: 5vh;
	overflow: hidden;
	height: 200px;
}

#sec4 .column a:hover{
	-webkit-transform: translateY(5px);
	transform: translateY(5px);
	box-shadow:none;
}

#sec4 .btn{
	background-color: #7FB3D5;
	margin:5% auto;
	width: 200px;
	height: 60px;
	font-size: 20px;
	font-family:menu-font;
}



/*ここからSP版*/
@media screen and (max-width:870px){
	
	#sec4{
		background: linear-gradient(#fff 7.7%, #c9f3f6 7.7%, #c9f3f6 87%, #fff 87%);
	}
	
	.where-img{
		width: 70%;
	}
	
	#sec4 .column {
		flex-wrap: wrap;
		justify-content: center;
		margin: 0;
		padding: 0;
	}
	
	#sec4 .left-col, #sec4 .center-col, #sec4 .right-col{
		width: 44%;
		margin: 3%;
	}
	
	#sec4 .column a {
		box-shadow: 7px 7px 20px #aaa;
		height: 120px;
		margin: 0;
	}
	
	#sec4 .btn{
		font-size: 15px;
	}
}

/*-------------------------------------------
セクション５
-------------------------------------------*/

#sec5{
	background: linear-gradient(#fff 15%, #D3DCE4 15%, #D3DCE4 95.5%, #fff 95.5%);
	margin-top:5%;
}

.which-img{
	width: 50%;
	margin: 7% auto;
}

#sec5 .column{
	display:flex;
	margin: 0 10%;
}

#sec5 .left-col, #sec5 .center-col, #sec5 .right-col{
	width:calc(100% / 3);
	margin: 3%;
}

#sec5 .column a{
	display: block;
	box-shadow: 5px 5px 11px #6a6a6a, -7px -7px 15px 0px #fff;
	border-radius: 5vh;
	overflow: hidden;
	height: 200px;
}

#sec5 .column a:hover{
	-webkit-transform: translateY(5px);
	transform: translateY(5px);
	box-shadow:none;
}

#sec5 .column img{
	width: 100%;
	height:100%;
}

#sec5 .btn{
	background-color: #7FB3D5;
	margin:5% auto;
	width: 230px;
	height: 60px;
	font-size: 20px;
	font-family:menu-font;
}



/*ここからSP版*/
@media screen and (max-width:870px){
	
	#sec5{
		background: linear-gradient(#fff 7.7%, #D3DCE4 7.7%, #D3DCE4 94%, #fff 94%);
	}
	
	.which-img{
		width: 70%;
	}
	
	#sec5 .column {
		flex-wrap: wrap;
		justify-content: center;
		margin: 0;
		padding: 0;
	}
	
	#sec5 .left-col, #sec5 .center-col, #sec5 .right-col{
		width: 44%;
		margin: 3%;
	}
	
	#sec5 .column a {
		box-shadow: 7px 7px 20px #aaa;
		height: 120px;
		margin: 0;
	}
	
	#sec5 .btn{
		font-size: 15px;
	}
}
