@charset "utf-8";
/* -------------------------------------------------------
	共通
------------------------------------------------------- */
#top #container{
	padding:0;
}
@media screen and (max-width: 767px) {/*sp*/
#top #container{
	overflow: hidden;
}
}


/* -------------------------------------------------------
	slide
------------------------------------------------------- */
@media screen and (max-width: 767px) {/*sp*/
#modR{
display: none;
}
#topSlide {
	position: relative;
	width: 100%;
}
#slideContainer {
	position: relative;
	width: 100%;
	height: 100vh;
	display: block;
	overflow: hidden;
	background-color: #fff;
}
#modL{
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.slideWrap {
	position: absolute;
	width: 100%;
	height: 100vh;
	display: block;
	white-space: nowrap;
	font-size: 0;
}
.slideWrap>img {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#siteLogo{
	position: relative;
	width: 100%;
	margin: 0 auto;
	top: 50%;
	transform: scale(0.9) translate(0, -50%) ;
}
#slidenavi{
	width:100%;
	position: absolute;
	bottom: 30px;
	left: 0;
}
#slidenavi>ul{
	display: flex;
	width:70vw;
	margin-left: 15vw;
	justify-content:space-between;
}
li.foot{
	position: relative;
	background:url(../../image/footR_off.png);
	background-size:cover;
	width: 24px;
	height: 10px;
	margin: 0px;
}
li.foot.active{
	background:url(../../image/footR_on.png);
	background-size:cover;
}
li.foot.left{
	background:url(../../image/footL_off.png);
	background-size:cover;
	margin-top: -20px;
}
li.foot.left.active{
	background:url(../../image/footL_on.png);
	background-size:cover;
}
li.foot:nth-child(1){
	transform: translateY(0px);
}
li.foot:nth-child(2){
	transform: translateY(4px);
}
li.foot:nth-child(3){
	transform: translateY(0px);
}
li.foot:nth-child(4){
	transform: translateY(-4px);
}
li.foot:nth-child(5){
	transform: translateY(-6px);
}
li.foot:nth-child(6){
	transform: translateY(-14px);
}
#topSlide>.message{
	position: static;
	width:100%;
	padding:5vw 0;
	background: #FFF;
	text-align: center;
	font-size: 3vw;
	line-height: 1.8;
}
}
@media screen and (min-width: 768px) {/*pc*/
#topSlide{
	position: relative;
	width: 100%;
	min-width:970px;
}
#slideContainer{
	position: relative;
	width: 100%;
	min-width:970px;
	height: 100%;
	display: block;
	overflow: hidden;
	background-color: #fff;
}
.slideMod{
	position: relative;
	display: block;
	width: 50%;
	height: 100%;
	overflow: hidden;
}
.slideWrap{
	position: absolute;
	width: 100%;
	display: block;
	white-space: nowrap;
	font-size: 0;
}
.slideWrap>img{
	position: absolute;
	display: block;
	width: 100%;
}
#modL{}
#modR{
	position: absolute;
	left: 50%;
}
#siteLogo{
	position: absolute;
	width: 591px;
	height: 308px;
	display: block;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background-image: url(../../image/logo.png);
}
#slidenavi{
	width:100%;
	position: absolute;
	bottom: 30px;
	left: 0;
}
#slidenavi>ul{
	display: flex;
	width:300px;
	margin:0 auto;
	justify-content:space-between;
}
li.foot{
	position: relative;
	background:url(../../image/footR_off.png);
	background-size:cover;
	width: 24px;
	height: 10px;
	margin: 0px;
}
li.foot.active{
	background:url(../../image/footR_on.png);
	background-size:cover;
}
li.foot.left{
	background:url(../../image/footL_off.png);
	background-size:cover;
	margin-top: -20px;
}
li.foot.left.active{
	background:url(../../image/footL_on.png);
	background-size:cover;
}
li.foot:nth-child(1){
	transform: translateY(0px);
}
li.foot:nth-child(2){
	transform: translateY(4px);
}
li.foot:nth-child(3){
	transform: translateY(0px);
}
li.foot:nth-child(4){
	transform: translateY(-4px);
}
li.foot:nth-child(5){
	transform: translateY(-6px);
}
li.foot:nth-child(6){
	transform: translateY(-14px);
}
#topSlide>.message{
	position: absolute;
	right: 0;
	bottom: 0;
	padding: 40px;
	background: #FFF;
	line-height: 2.3;
	font-size: 14px;
}
}
@media screen and (min-width: 768px) and (max-width: 1220px) {
#topSlide>.message{
	position: static;
	width:100%;
	padding: 20px;
	background: #FFF;
	line-height: 2.3;
	text-align: center;
	font-size: 14px;
}
#scrline{
  left: 50px;
  bottom: auto;
  top:45vw;
}
}


/* -------------------------------------------------------
	pickup
------------------------------------------------------- */
@media screen and (max-width: 767px) {/*sp*/
/* にじみ */
.pickupbg{
	display: block;
	width: 100%;
	height:120vh;
	transition: 2s cubic-bezier(0.77, 0, 0.175, 1);
	opacity: 0;
	position: absolute;
	background: url(../../image/nijimi.png) no-repeat 40% top;
	background-size: 180% auto;
}
.pickupbg.active{
	opacity: 1;
}
/* コンテンツ */
#pickup{
	position: relative;
	overflow:hidden;
	min-height: 135vw;
	margin-bottom:15vw;
}
.pickupLogo{
	display: block;
	margin: 30vw 1vw 0;
}
.pickupwrap{
	margin-top:8vw;
}
.pickupbox{
	display: none;
}
#pickupboxSp a{
	display: block;
	text-decoration: none;
}
#pickupboxSp .photo{
	display:block;
	background-color: #fff;
	box-shadow: 6px 6px 8px 0px rgba(0,0,0,0.3);
	position: relative;
}
#pickupboxSp .photo:before{
   content: "Read More";
   font-family: "arial black";
   font-size: 16px;
   position: absolute;
   top:50%;left:50%;
   transform : translate(-50%,-50%);
   opacity: 0;
}
#pickupboxSp .photo>img{
	vertical-align: top;
}
#pickupboxSp a:active .photo>img{
	opacity: 0.3;
}
#pickupboxSp a:active .photo:before{
   opacity: 0.8;
}
#pickupboxSp a h3{
	font-size: 3.2vw;
	margin-top: 5vw;
	color:#000;
}
#pickupboxSp a p{
	font-size: 5vw;
	margin-top: 2vw;
	color:#00AAE7;
	line-height: 1.5em;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 700;
	text-shadow:
	#fff 1px 1px 2px, #fff -1px 1px 2px,
	#fff 1px -1px 2px, #fff -1px -1px 2px;
}
#pickupboxSp a:active p{
	text-decoration: underline;
}
/* stamp animation */
#stamp1{
	display: block;
	width:30vw;
	max-width:133px;
	position: absolute;
	right: 30vw;
	top: 2vw;
}
#stamp2{
	display: block;
	width:35vw;
	max-width:165px;
	position: absolute;
	right: 0;
	top: 7vw;
}
#stamp3{
	display: block;
	width:30vw;
	max-width:158px;
	position: absolute;
	right: 12vw;
	top: 60vw;
}
#stamp4{
	display: none;
}
#stamp5{
	display: block;
	width:40vw;
	max-width:178px;
	position: absolute;
	left: 5vw;
	top: 70vw;
}
}
@media screen and (min-width: 768px) {/*pc*/
/* にじみ */
.pickupbg{
	display: block;
	width: 100%;
	min-width:970px;
	height:0;
	min-height:940px;
	padding-top:80.8%;
	transition: 2s cubic-bezier(0.77, 0, 0.175, 1);
	opacity: 0;
	position: absolute;
	background: url(../../image/nijimi.png) no-repeat 0 0;
	background-size: 100% auto;
}
.pickupbg.active{
	opacity: 1;
}
/* コンテンツ */
#pickup{
	position: relative;
	height: 100%;
	min-height: 950px;
	overflow:hidden;
}
.pickupLogo{
	display: block;
	position: absolute;
	top: 150px;
	left: 50%;
	margin-left: -510px;
}
.pickupwrap{
	display:block;
	position: relative;
	top: 190px;
	max-width: 1020px;
	margin:0 auto;
	height: 730px;
}
.pickupbox{
	display: flex;
	flex-wrap: nowrap;
	justify-content:space-between;
	align-items: flex-start;
	margin: 0 auto;
}
.pickups{
	height:560px;
	position: relative;
	display: inline-block;
}
/* 位置 */
.pickups:nth-child(1) {
	top:180px;
}
.pickups:nth-child(2) {
	top:90px;
}
.pickups:nth-child(3) {
	top:0;
}
.pickupSize{
	width: 294px;
	height: 427px;
	margin-right: 62px;
}
#pick3{
	margin-right: 0;
}
.pickups a{
	display: block;
	text-decoration: none;
	position: relative;
}
.pickups a h3{
	font-size: 15px;
	margin-top: 30px;
	color:#000;
}
.pickups a p{
	font-size: 21px;
	margin-top: 10px;
	color:#00AAE7;
	line-height: 1.5em;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 700;
	text-shadow:
	#fff 1px 1px 2px, #fff -1px 1px 2px,
	#fff 1px -1px 2px, #fff -1px -1px 2px;
}
.pickups a:hover p{
	text-decoration: underline;
}
/* stamp animation */
#stamp1{
	display: block;
	width:133px;
	position: absolute;
	right: -1px;
	top: -157px;
}
#stamp2{
	display: block;
	width:165px;
	position: absolute;
	right: 159px;
	top: -141px;
}
#stamp3{
	display: block;
	width:158px;
	position: absolute;
	right: -71px;
	top: -57px;
}
#stamp4{
	display: block;
	width:208px;
	position: absolute;
	right: -31px;
	bottom: 30px
}
#stamp5{
	display: block;
	width:178px;
	position: absolute;
	left: 230px;
	bottom: 0px;
}
/* 画像表示エフェクト */
.fdImg{
	position: relative;
	display: inline-block;
	width: 294px;
	height: 427px;
}
.fdImg>.mask{
	position: absolute;
	height: 0%;
	overflow: hidden;
	transform: translate(0,200px);
}
.mask.active{
	transition: 1.2s cubic-bezier(0.77, 0, 0.175, 1);
	height: 427px;
	transform: translate(0, 0px);
	box-shadow: 6px 6px 8px 0px rgba(0,0,0,0.3);
	background-color: #fff;
}
.mask:before{
   content: "Read More";
   font-family: "arial black";
   font-size: 20px;
   position: absolute;
   top:50%;left:50%;
   transform : translate(-50%,-50%) ;
}
.mask>img{
	position: relative;
	display: block;
	opacity: 0;
}
.mask.active>img{
	opacity: 1;
	transition: 0.5s cubic-bezier(0.14, 0, 0.175, 1);
}
.pickups a:hover .mask.active>img{
	opacity: 0.3;
}
}
@media screen and (min-width: 768px) and (max-width: 1220px) {
/* にじみ */
.pickupbg{
	height:940px;
}
#pickup{
	min-width: 970px;
}
.pickupLogo{
	display: block;
	position: absolute;
	top: 160px;
	left: 50%;
	margin-left: -480px;
}
.pickupwrap{
	max-width: 970px;
}
.pickupSize{
	width: 294px;
	height: 427px;
	margin:0 20px 0 10px;
}
#pick3{
	margin:0 30px 0 10px;
}
.pickups h3{
	font-size: 15px;
	margin:30px 30px 0 10px;
}
.pickups p{
	font-size: 21px;
	margin:10px 30px 0 10px;
	color:#00AAE7;
	line-height: 1.5em;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 700;
}
}


/* -------------------------------------------------------
	interview
------------------------------------------------------- */
@media screen and (max-width: 767px) {/*sp*/
/* 画像表示 */
#interviewArea a{
	display: block;
	text-decoration: none;
	 -webkit-tap-highlight-color: rgba(0,0,0,0);
}
.interview{
	display: block;
	margin-top: 12vw;
}
.fdImg{
	display:block;
	box-shadow:none;
}
.mask{
	background-color: #fff;
	position: relative;
}
.mask:before{
   content: "Read More";
   font-family: "arial black";
   font-size: 20px;
   position: absolute;
   top:50%;left:50%;
   transform : translate(-50%,-50%);
   opacity: 0;
}
.mask>img{
	opacity: 0;
	vertical-align: top;
}
.mask.active>img{
	opacity: 1;
}
a:active .mask.active>img{
	opacity: 0.3;
}
a:active .mask:before{
   opacity: 0.8;
}
.interview .txt{
	display: block;
	position: relative;
	padding:20vw 10vw 0;
}
.interview .badge{
	width:91px;
	height:88px;
	position: absolute;
	top:-44px;left:6vw;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url(../../image/water.png) no-repeat 0 0;
	background-size: cover;
}
.interview .cel{
	font-size: 4vw;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 400;
	color:#00AAE7;
}
.interview .ttl{
	font-size: 7.8vw;
	margin-top: 4vw;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 700;
	color:#00AAE7;
	line-height: 1.2;
}
.interview .message{
	font-size: 3.4vw;
	line-height: 2;
	margin-top: 6vw;
	color:#000;
}
#interviewArea a:active .ttl{
	text-decoration: underline;
}
/*animation*/
.anmInt1{
	width:40vw;
	max-width: 200px;
	position: absolute;
	top: -19vw;
	right: 4vw;
}
.anmInt2{
	width:60vw;
	position: absolute;
	top: -7vw;
	right: -5vw;
}
.anmInt3{
	width:30vw;
	position: absolute;
	top: -10vw;
	right: 15vw;
}
.anmInt4{
	width:50vw;
	position: absolute;
	top: -8vw;
	right: 10vw;
}
}
@media screen and (min-width: 600px) and (max-width: 767px) {/*sp*/
.anmInt1{
	right: 12vw;
}
}
@media screen and (min-width: 768px) {/*pc*/
#interviewArea{
	display: block;
	max-width: 1200px;
	height: auto;
	margin: 0 auto 100px;
}
#interviewArea a{
	display: block;
	text-decoration: none;
	margin-top: 60px;
}
#interviewArea a:hover .mask.active img{
	opacity: 0.3;
}
.interview{
	margin: 0 auto 0;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content:space-between;
}
.interview .txt{
	display: block;
	width: 470px;
	height: 340px;
	position: relative;
}
.interviewSize{
	display: block;
	width: 680px;
}
#int1 .interviewSize,
#int3 .interviewSize{
	order:2;
}
#int1 .txt,
#int3 .txt{
	order:1;
	padding-left:130px;
}
#int2 .txt,
#int4 .txt{
	padding-left:50px;
}
.interviewSize.fdImg{
	width: 680px;
	height:500px;
}
.interviewSize .mask{
	width: 680px;
	height:500px;
}
.interviewSize .mask.active{
	width: 680px;
	height:500px;
	box-shadow:none;
}
.interview .badge{
	width:91px;
	height:88px;
	margin-left:-30px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url(../../image/water.png) no-repeat 0 0;
	background-size: cover;
}
.interview .cel{
	font-size: 18px;
	margin-top: 40px;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 400;
	color:#00AAE7;
}
.interview .ttl{
	font-size: 32px;
	margin-top: 10px;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 700;
	color:#00AAE7;
	line-height: 1.4;
}
.interview .message{
	font-size: 15px;
	line-height: 1.8;
	margin-top: 20px;
	color:#000;
}
#interviewArea a:hover .ttl{
	text-decoration: underline;
}
/*animation*/
.anmInt1{
	width:141px;
	position: absolute;
	top: 0;
	right: 0;
}
.anmInt2{
	width:283px;
	position: absolute;
	top: -30px;
	right: 20px;
}
.anmInt3{
	width:168px;
	position: absolute;
	top: -40px;
	right: 0px;
}
.anmInt4{
	width:280px;
	position: absolute;
	top: -30px;
	right: 0;
}
}
@media screen and (min-width: 768px) and (max-width: 1220px) {
#interviewArea{
	min-width: 970px;
	overflow: hidden;
}
.interview{
	max-width: 970px;
}
.interview .txt{
	display: block;
	width: 370px;
	height: 330px;
	position: relative;
}
.interviewSize{
	display: block;
	width: 550px;
}
#int1 .txt,
#int3 .txt{
	padding-left:40px;
}
#int2 .txt,
#int4 .txt{
	width: 400px;
	padding-left:40px;
}
.interviewSize.fdImg{
	width: 550px;
	height:404px;
}
.interviewSize .mask{
	width: 550px;
	height:404px;
}
.interviewSize .mask.active{
	width: 550px;
	height:404px;
	box-shadow:none;
}
.anmInt2{
	right: -20px;
}
}


/* -------------------------------------------------------
	where
------------------------------------------------------- */
@media screen and (max-width: 767px) {/*sp*/
#where{
	display: block;
	margin-top:10vw;
	height:76vw;
	position: relative;
	color:#fff;
	overflow: hidden;
}
#where .bg{
	display: block;
	width:180vw;
	height:auto;
	transform: translate(-40vw,-10vw);
}
#where .mvAreaBox{
	position: absolute;
	top:50%;left:0;
	width: 100%;
	padding: 0 5vw;
	transform: translateY(-50%);
	text-align: center;
}
#where h2 {
	font-size: 6vw;
	line-height: 1.4;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 700;
}
#where p {
	padding-top: 3vw;
	font-size: 3.3vw;
	line-height: 1.7;
}
#where .btn{
 width:76vw;
 margin:4vw auto 2vw;
}
#where .btn a{
 display: block;
 padding:5vw 0;
 background-color: #fff;
}
#where .btn span{
 width:100%;
 display: inline-block;
 color:#00aae7;
 font-size:5vw;
 font-family: 'M PLUS Rounded 1c', sans-serif;
 font-weight: 700;
 position: relative;
}
}
@media screen and (min-width: 768px) {/*pc*/
.mvArea{
	position: relative;
	width: 100%;
	min-width: 970px;
	height: 460px;
	display: block;
	overflow:hidden;
	text-align: center;
	color: #FFF;
}
.mvArea>img.bg{
	position: relative;
	width: 100%;
	min-width: 970px;
}
.mvAreaBox{
	width:100%;
	position: absolute;
	margin: 0 auto;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#where h2{
	font-size: 35px;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 700;
}
#where p{
	margin-top: 20px;
	font-size: 16px;
	line-height: 1.5em;
}
#neighborhood .btn span{
 width:100%;
 display: inline-block;
 color:#00aae7;
 font-size:5vw;
 position: relative;
}
	#where .btn{
	width:430px;
	margin:30px auto 20px;
}
	#where .btn a {
	width:430px;
	display: inline-block;
	padding:32px 0;
	text-align: center;
	border:3px solid #fff;
	text-decoration: none;
	outline: none;
	z-index: 2;
	background-color: #fff;
	position: relative;
}
	#where .btn a span{
	padding:0;
	font-size:28px;
	line-height: 1;
 font-family: 'M PLUS Rounded 1c', sans-serif;
 font-weight: 700;
}
	#where .btn a::before,
	#where .btn a::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	top: 0;
	width: 50%;
	height: 100%;
	background-color: #fff;
}
	#where .btn a,
	#where .btn a::before,
	#where .btn a::after {
	transition: all .3s;
}
	#where .btn a::before {
	right: 0;
}
	#where .btn a::after {
	left: 0;
}
	#where .btn a:hover {
	background-color: #00aae7;
	border:3px solid #fff;
}
	#where .btn a:hover span{
	color:#fff;
}
	#where .btn a:hover::before,
	#where .btn a:hover::after {
	width: 0;
}
}