@charset "utf-8";

/*----------------------------------------------------
  #BODY
--------------------------------------------------- */

* {
	word-wrap:break-word;
	background-repeat:no-repeat;
	overflow-wrap:break-word;
}

html,body {
	height:100%; 
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0; 
	padding:0; 
}

html {
	scroll-behavior:smooth;
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-weight: 400;
	font-size: 62.5%;
}

body {
	font-size: 1.6rem;
	line-height: 1.75;
	letter-spacing: 0.175em;
	overflow-wrap: break-word;
	word-break: normal;
	color: #423930;
	background: #fff;
	text-align: center;
}

table { 
	border-collapse:collapse;
	border-spacing:0; 
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

img {
	border: none;
	vertical-align: bottom;
}


h1, h2, h3, h4, h5 {
	font-size: 100%;
	font-weight: normal;
	margin: 0;
}

a:hover img {
  opacity: 0.9;
  filter: alpha(opacity=90);
  -ms-filter: "alpha(opacity=90)";
}


ol,ul { 
	list-style:none;
}

.effect-fadein {
    opacity: 0;
    transform: translate(0, 200px);
    transition: all 1800ms;
}

.effect-fadein.effect-scroll {
    opacity: 1;
    transform: translate(0, 0);
}

.result {
    opacity: 0;
}
.loading {
  top: 0;
  left: 0;
  right: 0;
  bottom:0;
  position: absolute;
	margin: auto;
  z-index: 99999;
}


/*----------------------------------------------------
  #Wrap
--------------------------------------------------- */

#Wrap {
	margin:0 auto;
	text-align:center;
}

h1 {
	color:#204e6d;
	font-size:30px;
	font-weight:bold;
	text-align:center;
}

h2 {
	color:#204e6d;
	font-size:30px;
	font-weight:bold;
	text-align:center;
}

h3 {
	color:#204e6d;
	font-size:30px;
	font-weight:bold;
	text-align:center;
}

img {
	max-width: 100%;
    height: auto;
}



/*----------------------------------------------------
	movie
----------------------------------------------------*/

.movie-wrap {
     position:relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
	pointer-events: none;
	z-index: -9999;	
	margin-top: -8%;
    background: #000;
}
 
.movie-wrap video {
     position:absolute;
     top: 0;
     left:0;
     width: 100%;
     height: 100%;
     background: #000;
	opacity: 0.8;
    }

.youtube {
  padding-top: 56.25%;
  position: relative;
  width: 100%;
}

.youtube iframe {
   height: 100%;
   left: 0;
   position: absolute;
   top: 0;
   width: 100%;
}

/*----------------------------------------------------
	header_nav
----------------------------------------------------*/


nav.header_nav {
	width: 100%;
	max-width: 1200px;
	position: absolute;
	top:0;
	left: 0;
	right: 0;
	margin: 24px auto;
	padding: 0 16px;
	display: block;
}

nav.header_nav li.left{
	float: left;
	text-align: left;
}

nav.header_nav li.right{
	float: right;
	text-align: right;
}

nav.header_nav .sns{
	display: inline-flex;
}

nav.header_nav .sns li{
	margin-left: 20px;
}

nav.header_nav .sns{
	width:80%;
}

nav.header_nav .btn_mv_pc {
	border: 1px solid #fff;
	margin: 20px 0;
	width: 240px;
	text-align: center;
	display:block;
}

nav.header_nav .btn_mv_pc a {
	color: #FFF;
	text-decoration: none;
	display: block; 
	padding: 5px 10px;
}

nav.header_nav .btn_mv_pc a::after {
	content: url(../img/icon_arrow.png);
    display: inline-block;
    vertical-align: middle;
	margin-left:10px; 
}


nav.header_nav .btn_mv_pc a:hover {
    background: rgba(20,20,20,0.3);
}

.btn_mv_sp {
	display: none;
}


/*----------------------------------------------------
	message
----------------------------------------------------*/

section.message {
	background: url(../img/bg_message_pc.jpg) top center no-repeat;
	padding: 0 16px;
}

section.message h1 {
	padding: 150px 0 120px;
    text-align: center;
    margin: 0 20px;
}

section.message p {
	padding:  0 0 90px;
	text-align: center;
    margin: 0 20px;
}

section.message div:nth-of-type(5) {
    display: none;
}

section.message div:nth-of-type(4) {
    display: none;
}

/*----------------------------------------------------
	about
----------------------------------------------------*/

section.about {
	background: url(../img/bg_about.jpg) top center no-repeat;
	padding: 0 16px;
}

section.about h2 {
	padding: 90px 0 0;
	font-family:"Montserrat","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 90px;
	color: #0da110;
	font-weight: 100;
}

section.about h3 {
	padding: 0;
	font-size: 24px;
	color: #0da110;
}

section.about h4 {
	padding: 50px 0;
}

section.about p {
	padding: 0;
    font-weight: bold;
	line-height: 1.5em;
}

section.about p br{
	display: none;
}

section.about .point_list {
	display: inline-flex;
	margin: 50px 0;
	width: 100%;
	max-width: 1210px;
}

section.about .point_list li {
	border-left: dashed 1px #c4c4c4;
	border-right: dashed 1px #c4c4c4;
	margin-left: -1px;
}

section.about .point_list img {
-webkit-backface-visibility: hidden;
	width:auto;
}

/*----------------------------------------------------
	footer
----------------------------------------------------*/

footer.item {
	background: url(../img/bg_item_pc.jpg) top center no-repeat;
	padding: 46px 16px;
    background-size: cover;
}

footer.item .box {
	display: flex;
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
    padding: 0 20px;
}

footer.item .box .left {
	width: 70%;
	text-align: left;
}

footer.item .box .right {
	width: 30%;
	text-align: right;
	margin-left: 30px;
}

footer.item h2 {
	font-family:"Montserrat","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 90px;
	color: #0da110;
	font-weight: 100;
    text-align: left;
}

footer.item h4 {
	padding-bottom: 20px;
}

footer.item p {
	padding: 0;
	font-weight: bold;
}

footer.item p br {
	display: none;
}

footer .btn_item {
	border: 1px solid #222;
	margin: 20px 0;
	width: 240px;
    text-align: center;
}

footer .btn_item a {
	color: #222;
	text-decoration: none;
	display: block; 
	padding: 5px 10px;
}

footer .btn_item a::after {
	content: url(../img/icon_arrow_b.png);
    display: inline-block;
    vertical-align: middle;
	margin-left:10px; 
}


footer .btn_item a:hover {
    background: rgba(200,200,200,0.3);
}

/*----------------------------------------------------
	tb
----------------------------------------------------*/

@media screen and (max-width:1600px) {
section.message {
	background: url(../img/bg_message_sp.jpg) top center no-repeat;
    background-size: contain;
}
}

/*----------------------------------------------------
	sp
----------------------------------------------------*/

@media screen and (max-width:640px) {
/*----------------------------------------------------
	header_nav
----------------------------------------------------*/


nav.header_nav .btn_mv_pc {
	display: none;
}

.movie-wrap {
	margin-top: 0;
}
	
nav.header_nav .sns {
    width: 70%;
}
	
nav.header_nav li.left img {
    width: 50%;
}

nav.header_nav {
    margin: 12px auto;
}

/*----------------------------------------------------
	movie
----------------------------------------------------*/

	
.btn_mv_pc {
	display: none;
}
	
.btn_mv_sp {
	border: 1px solid #423930;
	margin: 20px auto;
	width: 240px;
    text-align: center;
}

.btn_mv_sp a {
	color: #423930;
	text-decoration: none;
	display: block; 
	padding: 5px 10px;
}

.btn_mv_sp a::after {
	content: url(../img/icon_arrow_b.png);
    display: inline-block;
    vertical-align: middle;
	margin-left:10px; 
}


.btn_mv_sp a:hover {
    background: rgba(20,20,20,0.3);
}

.btn_mv_sp {
	display: block;
}
	
/*----------------------------------------------------
	message
----------------------------------------------------*/

section.message {
background: url(../img/bg_message_sp.jpg) top center no-repeat;
    padding: 0 16px;
    background-size: contain;
}
	
section.message h1 {
	padding: 30px 20px 40px;
	margin: 0 5px;
}

section.message p {
	padding:  0 0 30px;
	margin: 0 5px;
}

section.message div:nth-of-type(4) {
    display: block;
}
	
section.message div:nth-of-type(5) {
    display: block;
	padding-bottom: 20px;
}


section.message div:nth-of-type(6) img {
	width: 60%;
}

	
	
/*----------------------------------------------------
	about
----------------------------------------------------*/

section.about {
	background: url(../img/bg_about.jpg) top center no-repeat;
	padding: 0 16px;
}
	
section.about h2 {
	padding:  50px 0 0;
	font-family:"Montserrat","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 46px;
	color: #0da110;
	font-weight: bold;
}

section.about h3 {
	padding: 0;
	font-size: 24px;
	color: #0da110;
	font-weight: bold;
}

section.about h4 {
	padding: 30px 0 20px;
}

section.about p {
	padding: 0;
    font-weight: bold;
	line-height: 1.5em;
}

section.about p br{
	display: block;
}

section.about .point_list {
	display:block;
	margin: 50px 0;
	width: 100%;
}

section.about .point_list li {
	border-top: dashed 1px #c4c4c4;
	border-left: none;
	border-right: none;
	padding: 10px 0;
}

section.about .point_list img {
-webkit-backface-visibility: hidden;
	width:auto;
}

	
/*----------------------------------------------------
	footer
----------------------------------------------------*/

footer.item {
	background: url(../img/bg_item_sp.jpg) top center no-repeat;
	padding: 46px 16px;
    background-size: cover;
}
footer.item .box {
	display:block;
	width: 100%;
	margin: 0 auto;
    padding: 0;
}

footer.item .box .left {
	width: 100%;
	text-align: center;
}

footer.item .box .right {
	width: 100%;
	text-align: center;
    margin-left: 0;
}

footer.item h2 {
	font-family:"Montserrat","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size:46px;
	color: #0da110;
	font-weight: bold;
    text-align: center;
}

footer.item h4 {
	padding-bottom: 20px;
}

footer.item p {
	padding: 0;
	font-weight: bold;
}

footer.item p br {
	display:block;
}

footer .btn_item {
	border: 1px solid #222;
	margin: 20px 0;
	width:100%;
    text-align: center;
}

footer .btn_item a {
	color: #222;
	text-decoration: none;
	display: block; 
	padding: 5px 10px;
}

footer .btn_item a::after {
	content: url(../img/icon_arrow_b.png);
    display: inline-block;
    vertical-align: middle;
	margin-left:10px; 
}


footer .btn_item a:hover {
    background: rgba(200,200,200,0.3);
}
	
}