@charset 'UTF-8';
/*========================================================
▼Webフォント指定（游明朝・游ゴシック）
========================================================*/
@font-face {
    font-family: 'MyYuMinchoM';
    font-weight: normal;
    src: local('YuMincho-Medium'), /* PostScript Name = localの正式な指定方法 */
		 local('Yu Mincho Medium'), /* PostScript Nameを認識できないChrome用にFull Nameを指定 */
		 local('YuMincho-Regular'); /* 游ゴシックMediumが存在しないWindows8.1用 */
}
@font-face {
    font-family: 'MyYuMinchoM';
    font-weight: bold;
    src: local('YuMincho-Bold'), /* PostScript Name = localの正式な指定方法 */
		 local('Yu Mincho');     /* PostScript Nameを認識できないChrome用にFull Nameを指定 */
}
/*========================================================
▼全体
========================================================*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
   font-family: 'MyYuMinchoM',/* Windows調整用 */ 'YuMincho',/* Mac用 */ ' serif;';
    font-size: 100%;
    font-weight: 400;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    border: 0;
    outline: 0;
    background: transparent;
}
a {
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    text-decoration: none;
    background: transparent;
}
@media only screen and (min-width: 769px) {
a:hover img{
	opacity: 0.8;
}
}
ul li {
    list-style: none;
}
img {
    width: 100%;
    max-width: 100%;
	display: block;
}
html {
    font-size: 62.5%;
    height: 100%;
}
@media only screen and (min-width: 769px) {
	html,  body {
		font-weight: 300;
	}
}
body {
    position: relative;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    -webkit-text-size-adjust: 100%;
}
@media only screen and (min-width: 769px) {
	.disc--sp {display: none!important;}
}
@media only screen and (max-width: 768px) {
	.disc--pc {display: none!important;}
}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
li{
	list-style: none;
}
.txt-right{
	text-align: right !important;
}
.txt-left{
	text-align: left !important;
}

/*========================================================
▼ヘッダー
========================================================*/
.l-header {
	background-color: #000;
	position: relative;
	z-index: 999999;
  }
  
  .l-header__container {
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
	width: 100%;
  }
  
  @media screen and (min-width: 768px) {
	.l-header__container {
	  height: 70px;
	  width: 96%;
	}
  }
  
  @media screen and (max-width: 767px) {
	.l-header__container {
	  height: calc(41.25px + 1vw);
	  width: 92%;
	}
  }
  
  @media screen and (min-width: 768px) {
	.l-header__container > a > img {
	  width: 106px;
	}
  }
  
  @media screen and (max-width: 767px) {
	.l-header__container > a > img {
	  width: 53px;
	}
  }
  
  .l-header__container > a.js-hover {
	-webkit-transition: opacity .3s;
	transition: opacity .3s;
  }
  
  .l-header__container > a.is_hover {
	opacity: .7;
  }
  
  .l-header__container .sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
  }
  
  .l-header__container .sns a {
	display: block;
	padding: 0 1em;
	text-align: center;
	color: #fff;
  }
  
  @media screen and (min-width: 768px) {
	.l-header__container .sns a {
	  padding: 0 1.5em;
	}
  }
  
  .l-header__container .sns a:last-of-type {
	padding-right: 0;
  }
  
  .l-header__container .sns a i {
	font-size: calc(2rem + 1vw);
	vertical-align: middle;
  }
  
  @media screen and (min-width: 768px) {
	.l-header__container .sns a i {
	  font-size: 3.5rem;
	  vertical-align: middle;
	}
  }
  
  .l-header__container .sns a img {
	width: 27px;
  }
  
  @media screen and (max-width: 767px) {
	.l-header__container .sns a img {
	  width: 3.5vw;
	}
  }
  
  @media screen and (max-width: 767px) and (max-width: 480px) {
	.l-header__container .sns a img {
	  width: 5.3vw;
	}
  }
  
  @media screen and (min-width: 769px) {
	.l-header__logo {
	  width: 182px;
	}
  }
  
  @media screen and (max-width: 768px) {
	.l-header__logo {
	  width: 104px;
	}
  }
  
  @media screen and (min-width: 769px) {
	.l-header__logo:hover {
	  opacity: .8;
	}
  }
  
  .l-header__logo img {
	height: auto;
	max-width: 100%;
  }
/*----------------------------------------
▼メインビジュアル
----------------------------------------*/
.p-mv {
	position: relative;
	width: 100%;
	max-height: 1080px;
	height:calc(1066/1920 * 100vw);
}
.p-mv__container {
	position: relative;
	max-height: 1080px;
	height:calc(1066/1920 * 100vw);
	overflow: hidden;
}
.p-mv__container video {
	position: absolute;
	width: 100%;
	height: 100%;
	top:0px;
	left: 0;
}
@media only screen and (max-width: 1100px) {
	.p-mv {
		max-height: 1920px;
		height:calc(1060/1920 * 100vw);
	}	
	.p-mv__container {
		max-height: 1920px;
		height:calc(1060/1920 * 100vw);
	}	
	.p-mv__container video {
		position: absolute;
		width: 100%;
		height: auto;
		top:0px;
		left: 0;
	}
}
@media only screen and (max-width: 768px) {
	.p-mv {
		max-height: 1920px;
		height:calc(1050/1920 * 100vw);
	}	
	.p-mv__container {
		max-height: 1920px;
		height:calc(1050/1920 * 100vw);
	}	
	.p-mv__container video {
		position: absolute;
		width: 100%;
		height: auto;
		top:0px;
		left: 0;
	}
}
/* @media only screen and (max-width: 620px) {
	.p-mv {
		max-height: 1920px;
		height: calc(1860/1080 * 100vw);
	}	
	.p-mv__container {
		max-height: 1920px;
		height: calc(1860/1080 * 100vw);
	}	
}
@media only screen and (max-width: 480px) {
	.p-mv {
		max-height: 1920px;
		height: calc(1850/1080 * 100vw);
	}	
	.p-mv__container {
		max-height: 1920px;
		height: calc(1850/1080 * 100vw);
	}	
} */
/*----------------------------------------
▼lead
----------------------------------------*/
.p-lead{
	width: 100%;
	position: relative;
	margin: 0 auto;
	background: url(../images/lead_bg.png) no-repeat center center;
	background-size: cover;
	padding-bottom: 120px;
	padding-top: 120px;
	margin-bottom: 120px;

}
.p-lead__inner{
	max-width: 600px;
	width: 100%;
	margin: 0 auto;
	padding-bottom: 70px;
	padding-top: 70px;
	text-align: center;
	background-color: rgba(255, 255, 255, .9);
}
.p-lead__text{
	font-size: 18px;
    line-height: 3;
	letter-spacing: 1.5px;
}
@media only screen and (max-width: 769px){
	.p-lead{
		width: 100%;
		padding-bottom: calc(120/750 * 100vw);
		padding-top: calc(120/750 * 100vw);
		margin-bottom: calc(120/750 * 100vw);
	}
	.p-lead__inner{
		max-width: 650px;
		width: calc(650/750 * 100vw);
		padding-bottom: calc(70/750 * 100vw);
		padding-top: calc(70/750 * 100vw);
	}
	.p-lead__text{
		font-size: calc(24/750 * 100vw);
		line-height: 2.35;
		letter-spacing:normal;
	}
}

/*========================================================
▼cmn_ttl
========================================================*/
.cmn_ttl{
	font-size:calc(38/750 * 100vw);
	letter-spacing: 1.4;
	color:#000;
	font-weight: bold;
	text-align: center;
}
@media only screen and (min-width: 769px) {
.cmn_ttl{
	font-size:28px;
	line-height: 28px;
}
}


.video-wrap {
    position: relative;
}
.video-btn {
    content: "";
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:40px; /*コントローラー分下部に余白を*/
    cursor: pointer;
}

/*----------------------------------------
▼p-movie
----------------------------------------*/
.p-movie{
	text-align: center;
	position: relative;
	margin-bottom: 120px;
}
.p-movie__ttl{
	max-width: 800px;
	width:calc(800/1200 * 100vw);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
}
.p-movie__box{
	position: relative;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	width:calc(1100/1200 * 100vw);
	overflow: hidden;
}
.play_btn {
	display: block;
	left: 50%;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	z-index: 2000;
	max-width: 1100px;
	width:calc(1100/1200 * 100vw);
	z-index: 9999;
  }
.active .play_btn {
    display: none;
}
.p-movie video {
    vertical-align: bottom;
    width: 100%;
	opacity: 0;
}
.p-movie .active video {
	opacity: 1;
	z-index: 99999;
}
.p-movie__txt{
	font-size: 18px;
	line-height: 2;
	text-align: center;
	margin-bottom: 30px;
}
/*----------------------------------------
▼p-videos
----------------------------------------*/

@media screen and (max-width: 768px) {
	.p-movie{
		text-align: center;
		position: relative;
		margin-bottom: calc(150/1200 * 100vw);
	}
	.p-movie__ttl{
		max-width: 600px;
		width:calc(600/750 * 100vw);
		margin-bottom:calc(40/750 * 100vw);
	}
	.p-movie__box{
		max-width: 750px;
		width:100%;
	}
	.play_btn {
		max-width: 750px;
		width:100%;
	  }
	  .p-movie__txt{
		text-align: center;
		font-size: calc(28/750 * 100vw);
		margin-bottom:calc(40/750 * 100vw);
	}
}

.p-Song{
	margin-top: 50px;
	position: relative;
	max-width: 800px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	background: #445d57;
}
.p-Song__inner{
	padding: 80px 20px;
}
.p-Song__text--wht{
	font-size: 24px;
	line-height: 2;
	color: #fff;
	text-align: center;
	margin-bottom: 30px;
}
.p-Song__text--well{
	font-size: 24px;
	line-height: 2;
	color: #f3de23;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.p-Song{
		margin-top: calc(80/750 * 100vw);
		width: calc(680/750 * 100vw);
	}
	.p-Song__inner{
		padding: calc(80/750 * 100vw) calc(20/750 * 100vw);
	}
	.p-Song__text--wht{
		font-size: calc(30/750 * 100vw);
		margin-bottom: calc(30/750 * 100vw);
	}
	.p-Song__text--well{
		font-size: calc(30/750 * 100vw);
	}
}

/*========================================================
▼p-spring
========================================================*/
.p-spring{
	position: relative;
	width: 100%;
}
.p-spring__inner{
	position: relative;
	width: 100%;
	margin-right: auto;
	margin-left:auto;
	padding-bottom: 120px;
}
.p-springMain{
	background: url(../images/spring_bg.jpg) no-repeat center center;
	background-size: cover;
	height: calc(950/1200 * 100vw)
}
.p-springSub{
	padding-top: 100px;
	padding-bottom: 200px;
	width: 100%;
	margin-right: auto;
	margin-left:auto;
	background-color: rgba(255, 255, 255, .8);
}
.p-springSub__inner{
	max-width: 1120px;
	width:calc(1100/1200 * 100vw);
	margin-right: auto;
	margin-left:auto;
	display: flex;
	justify-content: space-between;
}
.p-springSub__list{
	width: calc(100%/2 - 5.32%);
}
.p-springSub__list:last-child{
	padding-top: 100px;
}
.c-items__linkBtn{
	text-align: right;
	margin-top: 10px;
}
.c-items__linkBtn a{
	color:#455d57;
	font-size: 30px;
	text-decoration: underline;
}
.p-springDec{
	max-width: 1050px;
	width:calc(1050/1200 * 100vw);
	position: relative;
	margin-right: auto;
	margin-left:auto;
	margin-top: 50px;
}
.p-springDec__inner{
	position: relative;
	max-width: 900px;
	width: calc(900/1200 * 100vw);
	margin-right: auto;
}
.p-springDec__ttl{
	width: 100%;
	position: absolute;
	top: 3%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1000;

}
.p-springDec__img{
	max-width: 900px;
	width:calc(900/1200 * 100vw);
}
.p-springDec__text{
	position:absolute;
	top:30.1%;
	right:calc(-20/1200 * 100vw);
	max-width: 340px;
    width: calc(340/1200 * 100vw);
}
.p-springDec__text p{
	font-size: 14px;
	line-height: 2.1;
    letter-spacing: -.5px;
	margin-bottom: 40px;
}
.p-springDec__text p span{
	font-size: 13px;
}
.p-springDec__text p a{
	color:#000;
	text-decoration: underline;

}
@media screen and (max-width: 768px) {
	.p-spring__inner{
		padding-bottom: calc(200/1200 * 100vw)
	}
	.p-springMain{
		background: url(../images/spring_bg_sp.jpg) no-repeat center center;
		background-size: cover;
		height: calc(1126/750 * 100vw)
	}
	.p-springSub{
		padding-top: calc(150/1200 * 100vw);
		padding-bottom: calc(200/1200 * 100vw);
	}
	.p-springSub__inner{
		max-width: 750px;
		width:90%;
		display: block;
	}
	.p-springSub__list{
		width:calc(600/750 * 100vw);
	}

	.p-springSub__list:last-child{
		padding-top: calc(80/750 * 100vw);
		margin-left: auto;
	}
	.c-items__linkBtn{
		margin-top: calc(15/750 * 100vw);
	}
	.c-items__linkBtn a{
		font-size: calc(36/750 * 100vw);
	}
	.p-springDec{
		max-width: 750px;
		width:100%;
		margin-top: calc(50/750 * 100vw);
	}
	.p-springDec__inner{
		position: relative;
		max-width:725px;
		width:calc(725/750 * 100vw);
		margin-right: auto;
	}
	.p-springDec__ttl{
		width: 100%;
		position: absolute;
		top: calc(14/750 * 100vw);
		left: 50%;
		transform: translateX(-50%);
	}
	.p-springDec__img{
		max-width: 725px;
		width:calc(725/750 * 100vw);
	}
	.p-springDec__text{
		position:relative;
		margin-right: auto;
		margin-left: auto;
		margin-top:calc(50/750 * 100vw);
		max-width: 580px;
		width: calc(580/750 * 100vw);
		right: 0;
	}
	.p-springDec__text p{
		font-size: calc(24/750 * 100vw);
		line-height: 1.5;
		letter-spacing: -.5px;
		margin-bottom:  calc(40/750 * 100vw);
	}
	.p-springDec__text p span{
		font-size: calc(23/750 * 100vw);
	}
}

/*========================================================
▼p-summer
========================================================*/

.p-summer{
	position: relative;
	width: 100%;
}
.p-summer__inner{
	position: relative;
	width: 100%;
	margin-right: auto;
	margin-left:auto;
}
.p-summerMain{
	background: url(../images/summer_bg.jpg) no-repeat center center;
	background-size: cover;
	height: calc(950/1200 * 100vw)
}
.p-summerSub{
	padding-top: 100px;
	padding-bottom: 200px;
	width: 100%;
	margin-right: auto;
	margin-left:auto;
	background-color: rgba(255, 255, 255, .8);
}
.p-summerSub__inner{
	z-index: 99;
	position: relative;
	max-width: 1120px;
	width:calc(1100/1200 * 100vw);
	margin-right: auto;
	margin-left:auto;
	display: flex;
	justify-content: space-between;
	margin-bottom: 90px;
}
.p-summerSub__list{
	width: calc(100%/2 - 5.32%);
}
.p-summerSub__list:first-child{
	padding-top: 30%;
}
.c-items__linkBtn{
	text-align: right;
	margin-top: 10px;
}
.c-items__linkBtn a{
	color:#455d57;
	font-size: 30px;
	text-decoration: underline;
}
@media screen and (min-width: 768px) {
	.p-summerSub__inner::after{
		content: "";
		display: inline-block;
		position: absolute;
		background: url(../images/summer_after_bg.jpg) no-repeat center center;
	    background-size: cover;
		max-width: 800px;
		max-height: 800px;
		width: calc(800/1200 * 100vw);
		height: calc(800/1200 * 100vw);
		z-index: -11;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
	}
}

@media screen and (max-width: 768px) {
	.p-summerMain{
		background: url(../images/summer_bg_sp.jpg) no-repeat center center;
		background-size: cover;
		height: calc(1126/750 * 100vw)
	}
	.p-summerSub{
		padding-top: calc(120/1200 * 100vw);
		padding-bottom: calc(200/1200 * 100vw);
	}
	.p-summerSub__inner{
		max-width: 750px;
		width:100%;
		display: block;
		margin-bottom: calc(90/750 * 100vw);
	}
	.p-summerSub__list{
		width:100%;
		padding-top: calc(100/750 * 100vw);
	}
	.p-summerSub__list:first-child{
		padding-top: calc(0/750 * 100vw);
		margin-left: auto;
		margin-right: auto;
		width:calc(700/750 * 100vw);
	}
	.c-items__linkBtn{
		margin-top: calc(15/750 * 100vw);
	}
	.p-summerSub__list:first-child .c-items__linkBtn{
		margin-top: calc(-40/750 * 100vw);
	}
	.c-items__linkBtn a{
		font-size: calc(36/750 * 100vw);
		/* text-shadow: 3px 0 7px rgba(0, 0, 0, .25); */
	}
	.postion-m{
		width:calc(175/750 * 100vw);

	}
}
/*========================================================
▼ボタン
========================================================*/
.cmn_btn{
	width: 450px;
	margin: 0 auto;
}
.cmn_btn a {
	display: block;
	text-align: center;
	padding: 15px;
	font-size: 24px;
	line-height: 1.5;
	letter-spacing: 1.5px;
	color: #000;
	border: solid 2px #000;
	text-shadow: 0px 1px 5px rgba(0, 0, 0, 0.004);
}
.cmn_btn a:hover {
  color: #fff;
  background-color: #000;
}
@media screen and (max-width: 768px) {
  .cmn_btn {
    width: calc(600/750 * 100vw);
  }
  .cmn_btn a {
    font-size: calc(30/750 * 100vw);
	border: solid 1px #000;
  }
  
}
/*========================================================
▼ボタン
========================================================*/
.p-credit{
	background-color: #445d57;
}
.p-credit__inner{
	padding: 70px 20px 100px;
}
.p-credit__first{
	max-width: 800px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 80px;
	padding: 25px 50px;
	background-color: #fff;
	display: flex;
	align-items: center;
}
.p-credit__first li{
	width: 50%;
}
.p-credit__first--img{
	max-width: 350px;
	width: 100%;
	margin-right: 40px;
}
.p-credit__first--text{
	text-align: center;
}
.p-credit__first--ttl{
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 35px;
	line-height:1.4 ;
}
.p-credit__first--desc{
	font-size: 18px;
	line-height:1.8;
}
.p-credit__first--desc span{
	font-size: 14px;
	display: block;
	margin-bottom: 25px;
	margin-top: 15px;
}
.p-credit__first--desc a{
	font-weight: bold;
	color:#000;
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
	.p-credit__inner{
		padding: calc(70/750 * 100vw) 0 calc(120/750 * 100vw);
	}
	.p-credit__first{
		max-width: 700px;
		width: calc(700/750 * 100vw);
		margin-bottom: calc(80/750 * 100vw);
		padding: calc(70/750 * 100vw) calc(70/750 * 100vw);
		display: block;
	}
	.p-credit__first li{
		width: 100%;
	}
	.p-credit__first--img img{
		max-width: 350px;
		width: calc(350/750 * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.p-credit__first--text{
		margin-top:calc(35/750 * 100vw);
	}
	.p-credit__first--ttl{
		font-size: calc(36/750 * 100vw);
		margin-bottom:calc(35/750 * 100vw);
		line-height:1.7 ;
	}
	.p-credit__first--desc{
		font-size: calc(32/750 * 100vw);
	}
	.p-credit__first--desc span{
		font-size: calc(28/750 * 100vw);
		margin-bottom:calc(25/750 * 100vw);
		margin-top:calc(15/750 * 100vw);
	}
}



.p-credit__second{
	max-width: 800px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding: 50px 50px 130px;
	background-color: #fff;
}
.p-credit__second li{
	width: 100%
}
.p-credit__second--img{
	max-width: 500px;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}
.p-credit__second--text{
	margin-top: 30px;
}
.p-credit__second--ttl{
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 20px;
	line-height: 2;
}
.p-credit__second--desc{
	font-size: 18px;
	line-height:1.9;
}
@media screen and (max-width: 768px) {
	.p-credit__second{
		max-width: 700px;
		width: calc(700/750 * 100vw);
		padding: calc(70/750 * 100vw) calc(50/750 * 100vw);
	}
	.p-credit__second li{
		width: 100%
	}
	.p-credit__second--img{
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
		width:  calc(500/750 * 100vw);
	}
	.p-credit__second--img img{
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
		width:  calc(500/750 * 100vw);
	}
	.p-credit__second--text{
		margin-top:  calc(30/750 * 100vw);
	}
	.p-credit__second--ttl{
		font-size: calc(32/750 * 100vw);
		margin-bottom: calc(20/750 * 100vw);
	}
	.p-credit__second--desc{
		font-size:  calc(28/750 * 100vw);
	}
}
/*========================================================
▼remodal
========================================================*/

	.remodal {
		position: relative;
		width: 90%;
		padding-left: 14px;
		max-width: 900px;
	  }
	  
	  @media screen and (max-width: 767px) {
		.remodal {
		  width: calc(600/750*100vw);
		  padding-left: 0px;
		}
	  }
	  
	  .remodal img {
		width: 100%;
		height: auto;
		vertical-align: top;
	  }
	  
	  .p-modal__Con {
		max-width: 900px;
		width: 100%;
		height: auto;
		margin: 3em auto;
		z-index: 3;
		padding-bottom: 50px;
		margin-bottom: 50px;
	  }
	  
	  @media screen and (max-width: 767px) {
		.p-modal__Con {
		  margin-top: calc(50/750*100vw);
		  padding-bottom: calc(50/750*100vw);
		}
	  }
	  
	  .p-modal__Inner {
		position: relative;
		cursor: default;
		background-color: #aab6b3;
		/* background-color: rgba(255, 255, 255, 0.9); */
		-webkit-box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.2);
				box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.2);
	  }
	  
	  .p-modal__ttl {
		padding: 80px 0 30px;
		text-align: center;
		font-size: 30px;
		color: #445d57;
		font-weight: bold;
	  }
	  
	  @media screen and (max-width: 767px) {
		.p-modal__ttl {
		  padding: calc(80/750*100vw) 0 calc(10/750*100vw);
		  font-size: calc(36/750*100vw);
		}
	  }
	  
	  .p-modal__items {
		max-width: 900px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
			-ms-flex-pack: justify;
				justify-content: space-between;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	  }
	  
	  @media screen and (max-width: 767px) {
		.p-modal__items {
		  display: block;
		}
	  }
	  
	  .p-modal__list {
		width: 44%;
		padding: 0 20px;
		padding-bottom: 100px;
	  }
	  
	  @media screen and (max-width: 767px) {
		.p-modal__list {
		  width: 100%;
		  padding: 0;
		  padding-bottom: calc(80/750*100vw);
		}
	  }
	  
	  .p-modal__img {
		max-width: 400px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 50px;
	  }
	  
	  @media screen and (max-width: 767px) {
		.p-modal__img {
		  width: calc(350/750*100vw);
		  margin-bottom: calc(30/750*100vw);
		}
	  }
	  
	  .p-modal__img a {
		display: block;
	  }
	  
	  .p-modal__img a:hover img {
		opacity: .8;
	  }
	  
	  .p-modal__info {
		font-size: 18px;
		text-align: center;
	  }
	  
	  @media screen and (max-width: 767px) {
		.p-modal__info {
		  font-size: calc(24/750*100vw);
		}
	  }
	  
	  .p-modal__linkBtn {
		margin-top: 20px;
	  }
	  
	  @media screen and (max-width: 767px) {
		.p-modal__linkBtn {
		  margin-top: calc(30/750*100vw);
		}
	  }
	  
	  .p-modal__linkBtn a {
		display: block;
		width: 240px;
		line-height: 50px;
		background: #fff;
		color: #445d57;
		margin: auto;
		text-align: center;
		text-decoration: none;
		font-size: 20px;
		font-weight: bold;
	  }
	  
	  @media screen and (max-width: 767px) {
		.p-modal__linkBtn a {
		  width: calc(250/750*100vw);
		  line-height: calc(60/750*100vw);
		  font-size: calc(30/750*100vw);
		}
	  }
	  
	  .p-modal__linkBtn:hover {
		opacity: 0.8;
	  }
	  
	  .remodal-cancel {
		position: absolute;
		border: none;
		width: 50px;
		height: 50px;
		right: 20px;
		top: 20px;
		background-color: transparent;
	  }
	  
	  @media screen and (max-width: 767px) {
		.remodal-cancel {
		  right: calc(20/750*100vw);
		  top: calc(20/750*100vw);
		  width: 36px;
		  height: 36px;
		}
	  }
	  
	  .remodal-cancel:hover {
		opacity: .7;
	  }









/*========================================================
▼bottomLogo
==================================================
======*/
.bottomLogo{
	padding-bottom: 120px;
	text-align: center;
	background-color: #445d57;
  }
  .bottomLogo .logo-img{
	  max-width: 307px;
	  width:100%;
	  margin: 0 auto;
  }
  .bottomLogo .footer-dic{
	  font-size: 2rem;
	  margin-top: 10px;
  }
  .bottomLogo .footer-dic > a {
	  color: #fff;
	  text-decoration: underline;
  }
  .bottomLogo .footer-dic > a:hover {
	  text-decoration: none;
  }
  @media screen and (max-width: 768px) {
	.bottomLogo{
		padding-bottom: 80px;
	}
	.bottomLogo .logo-img {
		max-width: 307px;
		width:100%;
		margin: 0 auto;
	}
  .bottomLogo .logo-img img{
		max-width: 307px;
		width:73%;
		margin: 0 auto;
	}
	.bottomLogo .footer-dic{
		font-size: 1.6rem;
		margin-top: 10px;
	}
  }
  
  

/*========================================================
▼footer
========================================================*/



footer {text-align: center;}
footer small {
	font-size: 14px;
	line-height: 50px;
	display: block;
	width: 100%;
	color: #fff;
	background: #000;
}

@media only screen and (max-width: 768px) {
	footer small {
		font-size: 2.6vw;
		line-height: 1.2;
		padding: 10px 0;
	}
}

/*========================================================
▼fade_out
========================================================*/
.fade{
	position: relative;
	width:100%;
}
.is-loading {
	/* background-image: url(../images/fade_bg_pc.jpg); */
	background-size: cover;
/*	background-size:100%;*/
	background-repeat: no-repeat;
	background-position: center center; 
	position: fixed;
	top: 0;
	left: 0;
	height: 100vh;
	width: 100vw;
	z-index: 99999;
	background-color:#435d57;
}
.loading {
	position: fixed;
	left: 50%;
	top: 55%;
	transform: translate(-50%, -50%);
	display: none;
	z-index: 99999;
	max-width: 434px;
	width:100%;
	
}
@media only screen and (max-width: 768px) {
	.is-loading {
		position: fixed;
		background-position: 50% 70%;
		top: 0;
		left: 0;
		height: 100vh;
		width: 100%;
		z-index: 99999;
		transition: all 1.5s;
	}
	.loading {
		position: fixed;
		left: 50%;
		top: 52%;
		transform: translate(-50%, -50%);
		display: none;
		z-index: 99999;
		max-width: 230px;
		width:calc(230/750 * 100vw);
	}
}



/* js animation
--------------------------------------------------------- */
.js-view {
  opacity: 0;
  -webkit-transform: translate(0, 10px);
  -moz-transform: translate(0, 10px);
  -o-transform: translate(0, 10px);
  transform: translate(0, 10px);
  -webkit-transition: all .8s ease;
  transition: all .8s ease;
}
.js-view.sl {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}
.ani-up {
	opacity: 0;
	-webkit-transform: translateY(20px);
			transform: translateY(20px);
	-webkit-transition: opacity 1.5s, -webkit-transform 1.5s;
	transition: opacity 1.5s, -webkit-transform 1.5s;
	transition: opacity 1.5s, transform 1.5s;
	transition: opacity 1.5s, transform 1.5s, -webkit-transform 1.5s;
  }
  
  .ani-up.is-active {
	opacity: 1;
	-webkit-transform: translateY(0px);
			transform: translateY(0px);
  }