@charset "UTF-8";@import url('https://fonts.googleapis.com/css?family=Open+Sans');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 {    margin: 0;    padding: 0;    border: 0;    outline: 0;    font-size: 100%;    vertical-align: baseline;    background: transparent;    font-family: 'Open Sans', 'Roboto', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;    font-weight: normal;}p {    line-height: 1.8;}a {    margin: 0;    padding: 0;    font-size: 100%;    vertical-align: baseline;    background: transparent;    text-decoration: none;    color: #444;}li{	list-style: none;}img {    max-width: 100%;    display: block;}html {    height: 100%;    font-size: 62.5%;}body {    width: 100%;    height: 100%;    margin: 0 auto;    color: #444;    position: relative;    -webkit-text-size-adjust: 100%;}* {    box-sizing: border-box;    -webkit-box-sizing: border-box;    -moz-box-sizing: border-box;}@media only screen and (min-width: 769px) {    .SP {        display: none!important;    }    .PC {        display: block!important;    }}@media only screen and (max-width: 768px) {    html,    body {        height: 100%;        text-align: center;        min-width: 320px;    }	 .SP {        display: block!important;    }	.PC {        display:none!important;    }}/*========================================================▼ヘッダー========================================================*/header {    width: 100%;    height: 90px;    position: relative;    display: flex;    align-items: center;    background-color: #0e0e0e;}.header-inner {    width: 100%;    max-width: 1200px;    padding: 0 20px;    margin: 0 auto;    position: relative;    height: 45px;    display: flex;    justify-content: space-between;    align-items: center;}/*SNSアイコン*/.header-inner .sns {    display: flex;    justify-content: space-between;    align-items: center;}.header-inner .sns a {    display: block;    text-align: center;    padding: 0 1.5em;    color: #fff;}.header-inner .sns a:hover,.header-inner .logo:hover {    opacity: 0.8;}.header-inner .sns a i {    font-size: 3rem;    vertical-align: middle;}@media only screen and (max-width: 768px) {    header {        width: 100%;        height: calc(41.25px + 1vw);        margin: 0 auto;    }    .header-inner {        width: 100%;        position: relative;        height: calc(41.25px + 1vw);        display: flex;        justify-content: space-between;        padding: 0 3%;    }    .header-inner .logo {        width: 30vw;    }    /*SNSアイコン*/    .header-inner .sns {        display: flex;        justify-content: space-between;        align-items: center;    }    .header-inner .sns a {        display: block;        text-align: center;        padding: 0 1em;        color: #fff;    }    .header-inner .sns a:last-of-type {        padding-right: 0;    }    .header-inner .sns a:hover,    .header-inner .logo:hover {        opacity: 0.8;    }    .header-inner .sns a i {        font-size: calc(2rem + 1vw);        vertical-align: middle;    }}/*========================================================▼メインコンテンツ========================================================*/#main {    width: 100%;    position: relative;}@media only screen and (max-width: 768px) {    #main {        width: 100%;        margin: 0 auto;    }}/*========================================================▼メインビジュアル========================================================*/#mv_pc {    position: relative;}#mv_pc .mv-inner_pc {    width: 100%;    max-width: 1200px;    margin: 0 auto;    height: calc(100vw * 1.467);    max-height: 733px;    position: relative;    background-image: url(../images/mv_pc.jpg);    background-position: 50% 50%;    background-size: cover;}.mv-txt_pc {    width: 50%;    max-width: 379px;    position: absolute;    top: 20%;    right: 15%;}.mv-inner_pc .mv-btn {    max-width: 220px;    margin: 10% auto;}.mv-inner_pc .mv-btn a{	padding: 10px;  	color: #fff;  	background:rgba(0,0,0, 0.7);/*	border:solid 2px #000;*/  	display: block;  	text-align: center;	font-size:1.6rem;}.mv-inner_pc .mv-btn a:hover{opacity: 0.7;color:#000;background-color:rgba(255,255,255, 0.7);}#mv_sp{	display:none;}@media only screen and (max-width: 768px) {		#mv_pc{		display: none;	}    #mv_sp {        width: 100%;		position: relative;		display: block;    }	#mv_sp .mv-inner_sp {		width: 100%;		max-width: 1200px;		margin: 0 auto;		height: calc(100vw * 1.467);		max-height: 1134px;		position: relative;		background-image: url(../images/mv_sp.jpg);		background-position: 50% 50%;		background-size: cover;	}	#mv_sp .mv-txt_sp {		width: 38%;		max-width: 271px;		position: absolute;		top: 8%;		right: 7%;	}	.mv-inner_sp .mv-btn {		width: 27vw;		margin: 10% auto;	}	.mv-inner_sp .mv-btn a{		padding: 5px;		color: #fff;		background:rgba(0,0,0, 0.7);		display: block;		text-align: center;		font-size:1rem;	}	.mv-inner_pc .mv-btn a:hover{		opacity: 0.7;		color:#000;		background-color:rgba(255,255,255, 0.7);		}	}/*========================================================▼コンテンツ========================================================*/#wrapper {    width: 100%;    max-width: 1000px;    margin: 0 auto;    position: relative;}@media only screen and (max-width: 768px) {    #wrapper {        width: 92%;        margin: 0 auto;    }}/*----------------------------------------リードテキスト----------------------------------------*/.lead {    width: 100%;    max-width: 760px;    font-size: 1.6rem;	line-height: 2.5;}.lead p {	margin: 30px 0 60px;	line-height: 2.9;}@media only screen and (max-width: 768px) {    .lead {        width: 100%;        margin: 0 auto 40px;        font-size: calc(1rem + 1vw);        text-align: left;		    }	.lead p {	margin: 20px 0 40px;	line-height: 1.9;}	.lead br{		display:none;	}	}/*----------------------------------------セクション共通----------------------------------------*/.section{	display: block;    margin-bottom: 20px;}.section .section-img {    width: 100%;    position: relative;}.section .onlyimg{	margin-bottom: 70px;}@media only screen and (max-width: 768px) {    .section {        display: block;        padding: 0;        margin-bottom: 0;		    }    .section .section-img {        width: 100%;        position: relative;        padding: 0 0px;    }	.section .onlyimg{	margin-bottom: 40px;}	}/*-------------------------------ディテールボタン共通-------------------------------*/.detail-btn {    font-size: 1.4rem;    letter-spacing: 0.8px;    width: 70px;    height: 70px;    line-height: 70px;    text-align: center;    border-radius: 100%;/*    box-shadow: 0px 7px 9px rgba(0, 0, 0, 0.4);    -webkit-box-shadow: 0px 7px 9px rgba(0, 0, 0, 0.4);    -moz-box-shadow: 0px 7px 9px rgba(0, 0, 0, 0.4);*/}/*ディテールボタン・右*/.detail-btn__r {    background-color: rgba(255, 255, 255, 0.6);    color: #000;	position: absolute;    right: 3%;    bottom: 3%;}.detail-btn__r:hover {   background:rgba(0,0,0, 0.7);    color: #fff;}/*ディテールボタン・左*/.detail-btn__l {    background-color: rgba(255, 255, 255, 0.6);    color: #000;	position: absolute;    left: 3%;    bottom: 3%;}.detail-btn__l:hover {   background:rgba(0,0,0, 0.7);    color: #fff;}@media only screen and (max-width: 768px) {    .detail-btn {        font-size: calc(1rem + .4vw);        letter-spacing: 0.8px;        width: calc(100vh / 24 * 2);        height: calc(100vh / 24 * 2);        line-height: calc(100vh / 24 * 2);    }    /*ディテールボタン・右*/	.detail-btn__r {        position: absolute;        right: 3%;        bottom: 2.3%;    }    .detail-btn__r:hover,    .detail-btn__r:active {       background:rgba(0,0,0, 0.7);        color: #fff;\    }	    /*ディテールボタン・左*/	.detail-btn__l {        position: absolute;        left: 3%;        bottom: 2.3%;    }    .detail-btn__l:hover,    .detail-btn__l:active {        background:rgba(0,0,0, 0.7);        color: #fff;\    }}/*----------------------------------------アバウト----------------------------------------*/.about {	margin: 0 0 15% 0px;	border-bottom: 2px solid #000;}.about-inner {    position: relative;}.about-inner .about-box {    width: 100%;    max-width: 760px;    background-color: rgba(255, 255, 255, 0.5);    position:relative;    font-size: 2rem;    text-align:left;    padding: 0% 0 15%;}.about-txt {    width: 50%;	text-align: left;}.about-inner .about-box dl {    width: 100%;    max-width: 38em;    margin: 3% auto 2%;}.about-inner .about-box dt {	max-width: 278px;	width:100%;	margin: 20px 0 20px;}.about-inner .about-box dt img{	width:100%;}.about-inner .about-box dd {    font-size: 1.4rem;    line-height: 2;}.about-inner .about-box ul {    width: 100%;	text-decoration: none;}.about-inner .about-box ul li{	text-decoration: none;	font-size:1.5rem;	margin: 5px 0;}.about-inner .about-box ul li a{	text-decoration: none;	font-size:1.5rem;	color: #008dd2;}.about-inner .about-box ul li a:hover img {    opacity: 0.8;	color: #0172aa;}@media only screen and (max-width: 768px) {	.about {			margin: 0 0 15% 0px;			border-bottom: 2px solid #000;		}	.about-inner {			position: relative;		}	.about-inner .about-box {			width: 100%;			max-width: 760px;			background-color: rgba(255, 255, 255, 0.5);			position:relative;			font-size: 2rem;			text-align:left;			padding: 0% 0 15%;		}	.about-inner .about-box br{		display:none;		}	.about-txt {	  	width: 80%;      	padding:0px;    	text-align: left;		margin-bottom: 20px;    }    .about-inner .about-box dl {        margin: 0% auto 4%;    }	.about-inner .about-box dt {		max-width: 1016px;		width:100%;		margin: 10px 0 10px;	}	.about-inner .about-box dt img{		width:25%;	}    .about-inner .about-box dd {       font-size:1.2rem;        line-height: 1.6;		margin: 0 0;    }    .about-inner .about-box .about-link a:hover,    .about-inner .about-box .about-link a:active {        color: #008dd2;    }    .about-inner .about-box ul {        width: 100%;/*        margin: 0 auto;*/    }    .about-inner .about-box ul li {		width: 100%;		font-size:1.4rem;		margin: 0 0;		text-align: left;    }	.about-inner .about-box ul li a{	text-decoration: none;	font-size:1.4rem;	color: #008dd2;}    .about-inner .about-box ul li a:hover img,    .about-inner .about-box ul li a:active img {        opacity: 1;    }}/*Presented-----------------------------------------------------------------------------*/.presented{	width:100%;	margin: 5% 0 8%;}.pre_inner .pre_img img{	max-width:566px;	width:100%;	margin:5% auto;}.pre_inner .pre_title_01{	 font-size: 3rem;	text-align: center;/*    font-family: "Hiragino Mincho ProN", 游明朝, "Yu Mincho", YuMincho, HGS明朝E, メイリオ, Meiryo, serif;*/	margin-bottom: 4%;}.pre_inner .pre_title_02{	 font-size: 3rem;	text-align: center;/*    font-family: "Hiragino Mincho ProN", 游明朝, "Yu Mincho", YuMincho, HGS明朝E, メイリオ, Meiryo, serif;*/	margin-bottom: 4%;}.pre_inner .pre_text{	font-size:1.6rem;	line-height: 2.9;	text-align: center;/*    font-family: "Hiragino Mincho ProN", 游明朝, "Yu Mincho", YuMincho, HGS明朝E, メイリオ, Meiryo, serif;*/}.pre_text br{	display: block;}@media only screen and (max-width: 768px) {		.presented{		width:100%;		margin: 0 auto;		margin-bottom: 4%;	}	.pre_inner .pre_img img{		max-width:566px;		width:80%;		margin:5% auto;	}		.pre_inner .pre_title_01{		font-size: 1.4rem;		text-align: center;/*		font-family: 'Open Sans', 'Roboto', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/		margin-bottom: 5%;	}	.pre_inner .pre_title_02{		font-size: 1.8rem;		text-align: center;/*		font-family: 'Open Sans', 'Roboto', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/		margin-bottom: 5%;	}.pre_inner .pre_text{	 font-size: calc(1rem + 1vw);	line-height: 2;	text-align:left;	margin-bottom: 10%;}	.pre_text br{	display: none;}	.pre_text .SP{		display: block;	}}	/*----------------------------------------インフォメーション----------------------------------------*/.info {    font-size: 2.2rem;	margin-top: 15%;}.info-inner{	border: solid 2px #000;	padding:15% 6%;		}.info-inner dl {    width: 100%;	margin-bottom: 30px;}.info-inner dl img{	max-width:650px;	width:100%;	margin: 0 auto;}.info-inner .info_title{	font-size: 3rem;	text-align: center;	margin-bottom: 4%;	line-height: 1.9;}.info-inner p {	font-size:1.6rem;	line-height:2.9;	text-align: center;}.profile{	max-width:472px;	width: 100%;	margin: 0 auto;}.info-inner .info-img {	width: 100%;	margin-bottom: 30px;}.info-inner .info_detial{	margin-bottom: 80px;}.info-inner .info_detial li{	font-size:1.4rem;	line-height: 1.9;	color:#000;	text-align: left;	margin: 0px 0;}  .info-inner .info_detial li:last-of-type {        margin: 5% 0;    }.info-inner .info_detial .infront_spc{	margin-left: 7%;}.info-inner .info_detial li a{	font-size:1.4rem;	line-height: 1.9;	color:#000;	text-align: left;	text-decoration: underline;}.info-img_01{	max-width: 468px;	width:100%;	margin: 0 auto;}.info-img_01 img{	width:55%;	margin:0 auto;}@media only screen and (max-width: 768px) {    		.info {			font-size: 2.2rem;			margin-bottom: 40px;			margin-top: 15%;		}		.info-inner{			width: 100%;			margin:0 auto;			border: solid 2px #000;			padding:15% 6%;				}		.info-inner dl {			width: 100%;			margin-bottom: 30px;		}		.info-inner .info_title{			font-size: 1.8rem;			text-align: center;		/*    font-family: "Hiragino Mincho ProN", 游明朝, "Yu Mincho", YuMincho, HGS明朝E, メイリオ, Meiryo, serif;*/			margin-bottom: 4%;			line-height: 1.6;		}			.info-inner p {/*			font-family: 'Hiragino Mincho ProN', 游明朝, 'Yu Mincho', YuMincho, HGS明朝E, メイリオ, Meiryo, serif;*/		 	font-size: calc(1rem + 1vw);			line-height:2;			text-align: left;		}		.info-inner p br{			display:none;	}		.profile{			max-width:472px;			width: 100%;			margin: 0 auto;		}				.info-inner .info-img {			width: 100%;			margin-bottom: 20px;		}		.info-inner .info_detial{			margin-bottom: 50px;		}		.info-inner .info_detial li{			font-size:1.2rem;			line-height: 1.9;			color:#000;1			text-align: left;			margin: 0px 0;		}		.info-inner .info_detial .infront_spc{			margin-left: 0%;		}		.info-inner .info_detial li a{			font-size:1.2rem;			line-height: 1.9;			color:#000;			text-align: left;			margin: 10px 0;			text-decoration: underline;			margin: 20px 0;		}		.info-img_01{			max-width: 468px;			width:100%;			margin: 0 auto;		}		.info-img_01 img{			width:47%;			margin:0 auto;		}}/*----------------------------------------credite----------------------------------------*/.credite{	width:100%;	text-align:center;	margin: 0 auto;	padding:15% 0 0;}.credite .cred_img img{	max-width:378px;	width:100%;	margin: 0 auto;	margin-bottom: 3%;}.credite .cred_img_01{	max-width:637px;	width:100%;	margin: 0 auto;}.credite .cred_name{	 font-size:3rem;	text-align: center;	margin-bottom: 3%;/*	font-family: "Hiragino Mincho ProN", 游明朝, "Yu Mincho", YuMincho, HGS明朝E, メイリオ, Meiryo, serif;*/}.cred_dis {    width: 100%;    max-width: 1000px;	margin: 0 auto;    font-size: 1.6rem;	line-height: 2.9;	text-align: left;}.cred_dis p {	margin: 35px 0 0px;	line-height: 2.9;}@media only screen and (max-width: 768px) {    		.credite{			width:100%;			text-align:center;			margin: 0 auto;			padding:15% 0 0;		}		.credite .cred_img img{			max-width:378px;			width:80%;			margin: 0 auto;			margin-bottom: 5%;		}		.credite .cred_img_01{			max-width:637px;			width:70%;			margin: 0 auto;		}	.credite .cred_img_01{			max-width:637px;			width:70%;			margin: 0 auto;		}		.credite .cred_name{			 font-size: 1.9rem;			text-align: center;			margin-bottom: 10%;		}			.cred_dis {			width: 100%;			margin: 0 auto 0px;			font-size: calc(1rem + 1vw);			text-align: left;		}			.cred_dis p {			margin: 40px 0 0px;			line-height: 2;		}	}/*footer_logo---------------------------------------------*/.footer_logo{	max-width:223px;	width:100%;	margin: 15% auto;}.footer_logo img{	max-width:223px;	width:100%;	text-align: center;}@media only screen and (max-width: 768px) {		.footer_logo{		max-width:1149px;		width:100%;		margin: 0% auto;	}	.footer_logo img{		max-width:1149px;		width:70%;		text-align: center;		margin: 40% auto;	}	}/*========================================================▼フッター========================================================*/footer {    text-align: center;}footer small {    width: 100%;    background: #000;    color: #fff;    font-size: 14px;    line-height: 50px;    display: block;}@media only screen and (max-width: 768px) {    footer small {        font-size: 2.6vw;        line-height: 1.2;        padding: 10px 0;    }}/*========================================================▼モーダル========================================================*/.modal-overlay {    z-index: 9999;    display: none;    position: fixed;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: #0e0e0e;}a.modal-close {    position: fixed;    top: 30px;    right: 30px;    width: calc(65px - 4vw);    max-width: 50px;}.modal_logo {    width: 100%;    margin: 0 auto;    text-align: center;}.modal_logo img {    display: inline-block;}@media only screen and (min-width: 769px) {    a.modal-close {        width: 30px;    }    a.modal-close:hover {        cursor: pointer;        opacity: 0.75;    }    .modal_logo {        width: 100%;    }}/*動画部分-------------------------------------------------------*/@media only screen and (max-width: 768px) {    .modal_content {        width: 100%;        margin: 0 auto;        position: fixed !important;        top: 140px !important;        left: 0 !important;        display: none;        z-index: 99999;    }    .modal_movie {        width: 100%;        padding: 0 5%;        height: 50vh;    }}@media only screen and (min-width: 769px) {    .modal_content {        width: 750px;        margin: 0 auto;        position: fixed;        display: none;        z-index: 99999;    }    .modal_movie {        width: 100%;        height: 421px;        margin: 0 auto;    }}