@charset "UTF-8";
/* CSS Document */


/*  COMMON
----------------------------------------*/

html{
 overflow: auto;
  scroll-behavior: smooth;		
}

body{
	text-align: center;
	margin: 0 auto;
	width: 100%;
	/*font-size: 0px;*/
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;	
	background-color: #ffffff;
}


img {
	vertical-align:bottom;
}

@media screen and (min-width:787px){
	.display_tb,
	.display_sp{
		display: none!important;
	}
	.logo_tb{
		display: none!important;
	}
}
@media screen and (max-width:786px){
	.logo_pc{
		display: none!important;
	}
	.display_pc,
	.display_sp{
		display: none!important;
	}
	.sp_logo{
		text-align: center;
		padding: 10px 0 10px 0;
		background-color: #000000;
		position: relative;
		z-index: 100000;
	}
	.sp_logo img{
		height: 30px;
	}
}
@media screen and (max-width:600px){
	.display_tb,
	.display_pc{
		display: none!important;
	}
	.display_sp{
		display: block!important;
	}
}

@media screen and (min-width:601px){
	.sp{
		display: none !important;
		}
}
@media screen and (max-width:600px){
	.pc,
	.nbo_header{
		display: none !important;
		}
	body{
		background: url() ;
	}
	.sp_logo{
		text-align: center;
		padding: 10px 0 10px 0;
		background-color: #ffffff;
		position: relative;
		z-index: 100000;
	}
	.sp_logo img{
		height: 30px;
	}
}
.mb0{
	margin-bottom: 0px!important;
}
.mb50{
	margin-bottom: 50px!important;
}
.mb80{
	margin-bottom: 80px!important;
}

.mb100{
	margin-bottom: 100px!important;
}


.mb30{
	margin-bottom: 30px!important;
}
.mt30{
	margin-top: 30px!important;
}
.wrapper{
}
@media screen and (max-width:786px){
	.wrapper{

	}
}


/*.bx-wrapper .bx-controls-direction a{
	display: none;
}
.bx-wrapper .bx-viewport {
    -moz-box-shadow: 0 0 0px #ccc;
    -webkit-box-shadow: 0 0 0px #ccc;
    box-shadow: 0 0 0px #ccc;
    border: 0px solid #fff;
    left: -0px;
    background:none;
    -webkit-transform: translatez(0);
    -moz-transform: translatez(0);
    -ms-transform: translatez(0);
    -o-transform: translatez(0);
    transform: translatez(0);
}
.bx-wrapper .bx-pager{
	display: none;
}
.bx-wrapper img{
	text-align: center;
	margin: auto;
}
.bx-wrapper{
	margin-bottom: 0px;
}*/

/*.bxslider,
.sloder{
	width: 1366px!important;
	margin: auto;
	display: block;
	text-align: center;
	max-width: 100%;
}
.slider{
	position: relative;
}

.slider_pctb{
	display: block;
}
.slider_sp{
	display: none;
}

@media screen and (max-width:600px){
	.slider_pctb{
		display: none;
	}
	.slider_sp{
		display: block;
	}
}
*/





/*.bxslider li,
.slider li{
	width: 1366px!important;
	margin: auto;
	text-align: center;
	max-width: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
}
.bxslider li img,
.slider li img{
	width: 100%;
}*/

/*.slider .typ1{
	position: relative;
	animation: slider_op1 0.6s cubic-bezier(0.33, 1, 0.68, 1) 0.2s forwards;
	animation-fill-mode: forwards;
	z-index: 1000;
	opacity: 0;
}

@keyframes slider_op1 {
  0% {
	  opacity: 0;
	  transform: scale(0.9) ;
  }
  80% {

  }
  100% {
opacity: 1;
	  transform: scale(1) ;
  }
}*/

/*.slider .typ2{
	position: relative;
	animation: slider_op2 0.6s cubic-bezier(0.33, 1, 0.68, 1) 4s forwards;
	animation-fill-mode: forwards;
	opacity: 0;
	position: absolute;
	z-index: 1001;
}
@keyframes slider_op2 {
  0% {
	  opacity: 0;
	  transform: scale(1.1) ;
  }
  80% {

  }
  100% {
	transform: scale(1) ;
	opacity: 1;
  }
}*/


/*.slider .typ3{
	position: relative;
	animation: slider_op3 0.6s cubic-bezier(0.33, 1, 0.68, 1) 8s forwards;
	animation-fill-mode: forwards;
	opacity: 0;
	position: absolute;
	z-index: 1002;
}
@keyframes slider_op3 {
  0% {
	  opacity: 0;
	  top: -30px;
  }
  100% {

	  opacity: 1;
	  top: 0px;
  }
}*/


/*.slider .typ4{
	position: relative;
	animation: slider_op4 0.6s cubic-bezier(0.33, 1, 0.68, 1) 13s forwards;
	animation-fill-mode: forwards;
	opacity: 0;
	position: absolute;
	z-index: 1003;
}
@keyframes slider_op4 {
  0% {
	  opacity: 0;
	  left: -30px;
  }
  100% {

	  opacity: 1;
	  left: 0px;
  }
}
*/

/*.slider .typ5{
	position: relative;
	animation: slider_op5 0.6s cubic-bezier(0.33, 1, 0.68, 1) 18s forwards;
	animation-fill-mode: forwards;
	opacity: 0;
	position: absolute;
	z-index: 1004;
}
@keyframes slider_op5 {
  0% {
	  opacity: 0;
	  right: -30px;
  }
  100% {

	  opacity: 1;
	  right: 0px;
  }
}
*/


/*.slider .typ6{
	position: relative;
	animation: slider_op6 0.6s cubic-bezier(0.33, 1, 0.68, 1) 22s forwards;
	animation-fill-mode: forwards;
	opacity: 0;
	position: absolute;
	z-index: 1005;
}
@keyframes slider_op6 {
  0% {
	  opacity: 0;
	  transform: scale(1.1) ;
  }
  100% {
	  opacity: 1;
	  transform: scale(1) ;
  }
}*/


/* layout
----------------------------------------*/
.wrapper img{
	width: 100%;
	height: auto;
}


/* haeder
----------------------------------------*/
header{
	position: relative;
	/*width: 1366px;*/
	max-width: 100%;
	margin: auto;
}
/*header .teikyo{
	position: absolute;
	right: 20px;
	top: 20px;
	font-size: 13px;
	z-index: 100000;
	color: #000000;
	font-weight: bold;
	transition-duration: 0.3s;
}
@media screen and (max-width:600px){
	header .teikyo{
		right: 10px;
		top: 10px;
		font-size: 11px;
	}
}

@media screen and (max-width:600px){
	header .teikyo{
		right: 0px;
		top: 0px;
		font-size: 10px;
		position: relative;
		padding: 10px 0 10px 0;
		display: block;	
	}
}*/


/*header .teikyo:hover{
	opacity: 0.5;
}*/


/*-------------提供 mv-sponsor---------------*/
.mv-sponsor-box{
	max-width:1000px;
	margin: 0 auto;
}
.mv-sponsor{
	font-size: 1rem;
	text-align: right;
	padding: 10px 1em 0;
}

@media screen and (max-width: 767px){
	.mv-sponsor{
		font-size: 0.7rem;
		padding: 5px 0 0;
	}
}


/* title
----------------------------------------*/
.title{
  padding: 0 5% 30px;
  background:#88dbdf /*linear-gradient(90deg, #00294d, #081e31)*/;
}
.title-inner{
  max-width: 800px;
  margin: 0 auto;
}
.title-main{
/*  color: #fff;
  font-size: 4.5rem;
  font-weight: 700;
  line-height: 1.4;*/
  text-align: center;
}
/*.title-main span{
  color: #fabd00;
  font-size: 130%;
}*/

@media screen and (max-width: 767px){
  .title{
    padding: 0 2% 10px;
  } 
/*  .title-main{
    font-size: 3.0rem;
  } */
}


/* mv
----------------------------------------*/
.mv{
  position: relative;
}
.mv::after{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 20%;
  background:#88dbdf /*linear-gradient(90deg, #00294d, #081e31)*/;
  content: "";
  z-index: -10;
}
.mv-inner{
  padding: 0 3%;
}
.mv-image{
  max-width: 1300px;
  margin: 0 auto;
}
/*.mv-person{
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1300px;
  margin: 0 auto;
  padding: 30px;
  background-color: #000;
}
.mv-person .left,
.mv-person .right{
	width: calc(100% / 2 - 100px);
}
.mv-person .left .name,
.mv-person .right .name{
  display: inline-block;
  color: #fff;
	font-size: 1.5rem;
	line-height: 1.6;
}
.mv-person .left .name span,
.mv-person .right .name span{
	font-size: 150%;
}
.mv-person .left{
  text-align: right;
}
.mv-person .cross{
  display: block;
  position: relative;
  width: 100px;
  margin: 0 50px;
}
.mv-person .cross::before,
.mv-person .cross::after{
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 100px;
  background: #fabd00;
	content: "";
}
.mv-person .cross::before{
  transform: translate(-50%,-50%) rotate(45deg);
}
.mv-person .cross::after{
  transform: translate(-50%,-50%) rotate(-45deg);
}
*/
@media screen and (max-width: 767px){
  .mv-inner{
    padding: 0;
  }
/*  .mv-person{
    padding: 15px 5px;
  }
  .mv-person .left,
  .mv-person .right{
    width: calc(100% / 2 - 30px);
  }
  .mv-person .left .name,
  .mv-person .right .name{
    font-size: 1.2rem;
  }
  .mv-person .left .name{
    text-align: right;
  }
  .mv-person .right .name{
    text-align: left;
  }
  .mv-person .cross{
    width: 30px;
    margin: 0 10px;
  }
  .mv-person .cross::before,
  .mv-person .cross::after{
    height: 30px;
  }*/
}



/*-------------lead---------------*/
.leadbox{
	margin: 30px auto ;	
	/*width: 1366px;*/
	max-width: 1000px;
	
	/*max-width: calc(100% - 0px);*/
	/*position: relative;*/
}
@media screen and (max-width:767px){
.leadbox{
		margin: 20px auto;
}
}

/*.leadbox .txt1{
	font-size: 13px;
	color: #ffffff;
	position: absolute;
	right: 20px;
	top: 10px;
}
@media screen and (max-width:1330px){
	.leadbox .txt1{
		position: relative;
		right: 0px;
		top: 0px;
		width: 850px;
		margin: auto;
		margin-top: 10px;
	}
}
@media screen and (max-width:850px){
	.leadbox .txt1{
		margin-left: 20px;
		width: 100%;
	}
}

@media screen and (max-width:600px){
	.leadbox .txt1{
		margin-left: 20px;
		width:auto;
	}
}
*/



.leadbox .inner{
	max-width: 850px;
	margin: 0 auto;
	padding: 0 20px ;
/*	max-width: calc(100% - 40px);
	position: relative;*/
}
.leadbox .inner p{
	font-size: 17px;
	line-height: 2em;
	font-weight: bold;
	color: #4b8f92;

}

/*.leadbox .inner p span{
	font-size: 14px;
}*/

@media screen and (max-width:767px){
.leadbox .inner p{
	font-size: 1em;
	line-height: 1.9em;
	}	

}


/*-------------content---------------*/
.content{
	margin: auto;
	padding: 0;
	max-width: calc(100% - 40px);
}
.content .h2box{
	border-top: 2px solid #4b8f92;
	border-bottom: 2px solid #4b8f92;
	padding: 2px 0 2px 0px;
	
	max-width: 850px;
	margin: 60px auto 30px;
}

.content h2{
	font-size: 1.9em /*29px*/;
	text-align: center;
	font-weight: bold;
	color: #000000;
	line-height: 1.4em;
	border-top: 1px solid #4b8f92/*#d9d9d9*/;
	border-bottom: 1px solid #4b8f92/*#d9d9d9*/;
	width: 850px;
	margin: auto;
	padding: 20px 0 20px 0px;
	
	max-width: 100%;
}
@media screen and (max-width:786px){
.content .h2box{
	margin: 30px auto 20px;
}	
	.content h2{
		font-size: 1.5em;
	}
}

@media screen and (max-width:600px){
	.content h2{
		font-size: 1.2em;
		text-align: left;
	}
}


/*.content h2 span{
	font-size: 17px;
	display: block;
	color: #333333;
	font-weight: normal;
	
	padding: 0 20px 0 20px;
}
@media screen and (max-width:600px){
	.content h2 span{
		padding: 0px;
		font-size: 14px;
		font-weight: normal;
	}
}*/


.content .text{
	color: #333333;
	font-size: 17px;
	line-height: 2em;
	margin-bottom: 30px;
}
/*.content .text a{
	font-weight: bold;
	color: #c9a555;
	transition-duration: 0.3s;
}*/
@media screen and (max-width:786px){
.content .text{
	font-size: 0.9em;
	line-height: 1.8em;
}	
}

.content .text a:hover{
	opacity: 0.5;
}
.content .text.size_s{
	font-size: 13px;
}

.content .inner{
	width: 850px;
	margin: auto;
	
	max-width: calc(100% - 0px);
}

.content .inner .img_left{
	float: left;
	margin: 5px 40px 40px -70px;
	width: 450px;
}
@media screen and (max-width:1030px){
	.content .inner .img_left{
		margin: 5px 40px 40px 0px;
	}
}
@media screen and (max-width:786px){
	.content .inner .img_left{
		width: 300px;
	}
}
@media screen and (max-width:600px){
	.content .inner .img_left{
		width: 100%;
		float: none;
		margin: 0px 0px 30px 0px;
	}
}
.content .inner .img_left.img_pc{
	display: block;
}

.content .inner .img_left.img_sp{
	display: none;
}
@media screen and (max-width:600px){
	.content .inner .img_left.img_pc{
		display: none;
	}

	.content .inner .img_left.img_sp{
		display: block;
	}
}





.content .inner .img_left img{
	max-width: 100%;
}


.content .inner .img_right{
	float: right;
	margin: 5px -70px 40px 40px;
	width: 450px;
}
@media screen and (max-width:1030px){
	.content .inner .img_right{
		margin: 5px 0px 40px 40px;
	}
}
@media screen and (max-width:786px){
	.content .inner .img_right{
		width: 300px;
	}
}
@media screen and (max-width:600px){
	.content .inner .img_right{
		float: none;
		margin: 5px 0px 40px 0px;
		width:100%;
	}
}

.content .inner .img_right.img_pc{
	display: block;
}

.content .inner .img_right.img_sp{
	display: none;
}

@media screen and (max-width:600px){
	.content .inner .img_right.img_pc{
		display: none;
	}

	.content .inner .img_right.img_sp{
		display: block;
	}
}




.content .inner .img_right img{
	max-width: 100%;
}



.content .inner .img_center{
	/*width: 650px;*/
	margin:0 auto;
	margin-bottom: 30px;
	/*max-width: calc(100% - 0px);*/
}
.content .inner .pic{
	max-width: 650px;
	margin:0 auto 30px;
/*	max-width: calc(100% - 0px);*/

}

.content .inner .img_center .cap{
	text-align: left;
	margin-top: 10px;
	font-size: 13px;
	color: #444444;
}

.content .inner .img_center img{
	max-width: 100%;
}



.photo01,
.photo02{
	position: relative;
}
.photo01 .photo-caption{
	position: absolute;
	bottom: 10px;
	right: -20px;
	padding: 20px;
	background: rgba(3,102,107,0.75);
	color: #fff;
	font-feature-settings: "palt";
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.03em;
	line-height: 1.3;
}
.photo-caption span{
	display: block;
	margin-bottom: 5px;
	font-size: 64%;
}
.photo-caption small{
	font-size: 64%;
}
.photo02 .photo-caption{
	display: inline-block;	
	position: absolute;
	bottom: 10px;
	left: -20px;
	padding: 20px;
	background: rgba(3,102,107,0.75);
	color: #fff;
	font-feature-settings: "palt";
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.03em;
	line-height: 1.3;	
}

.figure-frame{
	border: 1px solid #ccc;
}

.pic_L{
	max-width: 1000px;
	margin:0 auto 30px;
}


@media screen and (max-width: 767px){
	.pic{
		width: 98%;
		margin: 30px auto;	
	}
	.photo01 .photo-img,
	.photo02 .photo-img{
		width: 98%;
	}
/*	.photo02{
		position: static;
	}*/
.photo01 .photo-caption,
.photo02 .photo-caption{
	font-size: 1rem;
		transition-duration: 0.3s;
		transition-delay: 0.3s; 		
	}
	.photo-comment{
		font-size: 1.6rem;
	}
}

/* figure
----------------------------------------*/
/*.figure-center{
	max-width: 700px;
	margin: 40px auto;
}*/
.figure-title{
	display: block;
	margin-bottom: 10px;
	font-size: 1.5rem;
	font-weight: 700;
/*	line-height: 1.5;*/
	margin: 50px 0 0;
}
/*.figure-caption{
	margin-top: 20px;
	font-size: 1.4rem;
	line-height: 1.5;
}*/

@media screen and (max-width: 767px){
	.figure-title{
		font-size: 1.2rem;
	}
/*	.figure-center{
		margin: 30px auto;
	}
	.figure-caption{
		font-size: 1.3rem;
	}*/
}





/*.content .inner .img_center2{
	width: 750px;
	margin: auto;
	margin-bottom: 30px;
	
	max-width: calc(100% - 0px);
}
.content .inner .img_center2 a{
	display: block;
	transition-duration: 0.3s;
}
.content .inner .img_center2 a:hover{
	opacity: 0.5;
}

.content .inner .img_center2 img{
	max-width: 100%;
}
*/

/*.noticetxt{
	width: 650px;
	margin: auto;
	display: block;
	padding-bottom: 30px;
	
	max-width: calc(100% - 0px);
}
.noticetxt img{
	max-width: 100%;
}*/


/*footer{
	padding-top: 15px;
	background-color: #ffffff;
	border-top: 1px solid #efefef;
}*/



/*.fxwr{
	position: relative;
	right: 0px;
	top: 0px;
}
@media screen and (max-width:600px){
	.fxwr{
		top: 0px;
	}
}


.fxwr .fxinner{
	position:absolute;
	right: 0px;
	top: 200px;
	height: 100%;
}

@media screen and (max-width:600px){
	.fxwr .fxinner{
		right: 10px;
	}
}


.fxwr .fxbanner{
	position: sticky;
	display: block;
	top: 70px;
	right: 0px;
	width: 220px;
	transition-duration: 0.3s;
	z-index: 1000000;
	
}
@media screen and (max-width:1300px){
	.fxwr .fxbanner{
		width: 180px;
		
	}
}*/


/*
@media screen and (max-width:1220px){
	.fxwr .fxbanner{
		width: 160px;
	}
}
@media screen and (max-width:600px){
	.fxwr .fxbanner{
		width: 100%;

		margin: auto;
		top: calc(100% - 130px);
		text-align: center;
		right: 0px;
		
	}
}

.fxwr .fxbanner .banner_pctb{
	display: block;
}
.fxwr .fxbanner .banner_sp{
	display: none;
}
@media screen and (max-width:600px){
	.fxwr .fxbanner .banner_pctb{
		display:none;
	}
	.fxwr .fxbanner .banner_sp{
		display: block;
	}
}*/



/*.fxwr .fxbanner:hover{
	opacity: 0.5;
	mix-blend-mode: multiply;
}
.fxwr .fxbanner img{
	max-width: 100%;
}
@media screen and (max-width:600px){
	.fxwr .fxbanner img{
		max-width: 100%;
		text-align: center;
		height: 120px;
		margin: auto;
		display: block;
		border: 2px solid #ffffff;
	}
}*/


/*----------contact------------*/

.contact{
	border-top: 1px solid #d9d9d9;
	padding-top: 80px;
	padding-bottom: 80px;
}

.contact .btn{
	width: 355px;
	margin: auto;
	display: block;
	border-radius: 50px;
	background: url("arrow.png")no-repeat 95% center;
	background-size: 12px 14px;
/*	background-color: #fc3b00;*/
	background-color: #15b5aa;	
	padding: 13px 20px;
	font-size: 17px;
	color: #ffffff;
	text-align: center;
	font-weight: bold;
	margin-bottom: 50px;
	transition-duration: 0.3s;
	text-decoration: none;
	
	max-width: calc(100% - 40px);
}
.contact .btn:hover{
	opacity: 0.5;
}

.logo{
	width: 350px;
	display: block;
	margin: auto;
}
.logo img{
	max-width: 100%;
}



/* company
----------------------------------------*/
.company{
/*	position: relative;*/
	padding: 120px 5%;
	/*background-color: #f3f9fc;*/
	
	width:100%;
	margin: 0 auto;
}
/*.company::after{
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	border-bottom: solid 1px transparent;
	transition: width 1.0s cubic-bezier(0.21, 0.6, 0.35, 1);
	z-index: 100;
}

.company.fade.on::after{
	width: 0;
}*/
.company-inner{
	max-width: 760px;
	margin: 0 auto;	
}
/*.company-inner.fade-up.on{
	transition-delay: 1.0s;
}*/

.company-name{
	margin: 80px auto ;
/*	font-size: 2.7rem;*/
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
}
.company-name a{
	text-decoration: none;
}
.company-logo{
	max-width: 200px;
	margin: 0 auto;
}

/*.company-text{
	font-size: 1.8rem;
	line-height: 2;
	text-align: center;
}
.company-text a:hover{
	text-decoration: underline;
}
*/
@media screen and (max-width: 767px){
	.company{
		padding: 50px 5%;
	}
	.company-logo{
		width: 80%;
	}
	.company-name{
		margin: 40px 0 15px;
		font-size: 2.4rem;
	}
/*	.company-text{
		font-size: 1.6rem;
	}*/
}



/* pagetop
----------------------------------------*/
.pagetop{
	position: fixed;
	bottom: 2em;
	right: 2em;
}
.pagetop img{
	width: 60px;
	height: 60px;
}
.pagetop a {
  display: block;
  transition: 0.5s;
}
.pagetop a:hover{
    opacity: 0.8;
}

@media screen and (max-width: 767px){
	.pagetop{
		position: fixed;
		bottom: 0.5em;
		right: 0.5em;
	}
	.pagetop img{
		width: 50px;
		height: 50px;
	}
}

/*---------アニメーション-------------*/

/*.img_op{
	opacity: 0;
	top: -30px;
	transition-duration:0.6s;
	position: relative;
	transition-delay: 0.2s;
}

.img_ani{
	opacity: 1;
	top: 0px;
}


.h2_op{
	opacity: 0;
	left: -30px;
	transition-duration:0.6s;
	position: relative;
	transition-delay: 0.2s;
}

.h2_ani{
	opacity: 1;
	left: 0px;
}*/


/* footer
----------------------------------------*/
footer{
  border-top: solid 1px #ccc!important;
}
.localFooter{
  font-size: 13px;
  text-align: center;
}
