﻿@charset "UTF-8";
body,div,h1,h2,h3,h4,h5,h6,p,dl,dt,dd,ul,li,brockquote,pre,table,caption,address,form,object,img,span,a,strong,em,q,ins,del,site,code,dfn,abbr,acronym,section,header,footer,nav,aside,article,address,figure,hgroup,menu{margin:0;padding:0}
body{color:#02133b;text-align:center;word-break:break-all;margin:0;padding:0;background:#fff;line-height:2.2em;font-family: "Noto Sans JP", sans-serif;font-optical-sizing: auto;font-weight:600;font-style: normal;font-size:1.3em}
@media screen and (max-width:767px) {
body{font-size:1.1em;line-height:1.8em}
}
html, body,main { height: 100%; }

ul{list-style-position:outside;list-style-type:none}
li a{border:none}
ol li{margin-bottom:5px}
table{border-collapse:collapse;font-size:100%}
img,a{border:none}
address,em,cite{font-style:normal}
a{overflow:hidden;outline:none;text-decoration:underline;color:#000}
a:visited{text-decoration:underline}
a:hover{text-decoration:none}
.nobr{white-space:nowrap}
.clearboth{clear:both;width:0;height:0;margin:0;padding:0}
.txt-s{font-size:80%}
.txt-red{color:#c00}
.txt-brown,.txt-brown a{color:#963}
.txt-pink {color:#c36e93;}
.txt-blue {color:#82c1ea;}
.txt-green {color:#cce2a3;}
.txt-yellow {color:#ffe67a;}
.txt-orange {color:#f5b090;}
.img-10{width:10%}
.img-20{width:20%}
.img-30{width:30%}
.img-40{width:40%}
.img-50{width:50%}
.img-60{width:60%}
.img-70{width:70%}
.img-80{width:80%}
.img-90{width:90%}
.img-100{width:100%}
.img-10 img,.img-20 img,.img-30 img,.img-40 img,.img-50 img,.img-60 img,.img-70 img,.img-80 img,.img-90 img,.img-100 img{width:100%}
.mt5{margin-top:5px}
.mt10{margin-top:10px}
.mt15{margin-top:15px}
.mt20{margin-top:20px}
.mt30{margin-top:30px}
.mt40{margin-top:40px}
.mb5{margin-bottom:5px}
.mb10{margin-bottom:10px}
.mb15{margin-bottom:15px}
.mb20{margin-bottom:20px}
.mb30{margin-bottom:30px}
.mb40{margin-bottom:40px}
.mr5{margin-right:5px}
.mr10{margin-right:10px}
.mr15{margin-right:15px}
.mr20{margin-right:20px}
.mr30{margin-right:30px}
.mr40{margin-right:40px}
.ml5{margin-left:5px}
.ml10{margin-left:10px}
.ml15{margin-left:15px}
.ml20{margin-left:20px}
.ml30{margin-left:30px}
.ml40{margin-left:40px}
.m5{margin:5px}
.m10{margin:10px}
.m15{margin:15px}
.m20{margin:20px}
.m30{marginp:30px}
.pt5{padding-top:5px}
.pt10{padding-top:10px}
.pt15{padding-top:15px}
.pt20{padding-top:20px}
.pt30{padding-top:30px}
.pt40{padding-top:40px}
.pb5{padding-bottom:5px}
.pb10{padding-bottom:10px}
.pb15{padding-bottom:15px}
.pb20{padding-bottom:20px}
.pb30{padding-bottom:30px}
.pb40{padding-bottom:40px}
.p5{padding:5px}
.p10{padding:10px}
.p15{padding:15px}
.p20{padding:20px}
.p30{padding:30px}
.p40{padding:40px}
figure img{width:100%;height:auto;vertical-align:bottom}
.txt-mincho {font-family: 'Sawarabi Mincho', sans-serif;}
.txt-center{text-align:center}
.txt-right{text-align:right}
.txt-s{font-size:.8em;line-height:1.4em;}
.txt-non{display:none}
.float-right{float:right}
.float-left{float:left}
.absmiddle{vertical-align:middle}
.pagetop-txt{display:none}
/* for modern brouser */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
/* IE7,MacIE5 */
.clearfix {
  display: inline-block;
}
/* WinIE6 below, Exclude MacIE5 \*/
* html .clearfix {
  height: 1%;
}
.clearfix {
  display: block;
}
/**/
.txt-attention{text-indent:-1em;margin-left:1em}
.txt-long {display: inline-block;-moz-transform:scale( 3, 1 ); -webkit-transform:scale( 3, 1 ); -o-transform:scale( 3, 1 );-ms-transform:scale( 3, 1 );transform:scale( 3, 1 );-moz-transform-origin:left top;-webkit-transform-origin:left top;-o-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top;}
.txt-long2 {display: inline-block;-moz-transform:    scale( 2, 1 );-webkit-transform: scale( 2, 1 );-o-transform:scale( 2, 1 );-ms-transform:scale( 2, 1 );transform:scale( 2, 1 );-moz-transform-origin:left top; -webkit-transform-origin: left top;-o-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top;
}

/*========= ローディング画面のためのCSS ===============*/
#splash {
  position: fixed;
  width: 100%;
  height: 100%;
  background: #173764;
  z-index: 9999999;
  text-align:center;
  color:#fff;
}

#splash-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.loading-area {
    display: flex;
    justify-content: center;
    gap: 3px;
	font-family: "Zen Antique Soft", serif;
}

.loading-area span {
    display: inline-block;
    background-color: #efefef;
    background-image: linear-gradient(#37bcf8 0 100%);
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    background-size: 100% 0%;
    background-position: center bottom;
    background-repeat: no-repeat;
    font-size: 3em;
	line-height:4em;
    font-weight:600;
    animation: water-anime 2s infinite linear;
    text-transform: uppercase;
}

.loading-area span:nth-child(1) {
    animation-delay: 0.1s;
}

.loading-area span:nth-child(2) {
    animation-delay: 0.14s;
}

.loading-area span:nth-child(3) {
    animation-delay: 0.18s;
}

.loading-area span:nth-child(4) {
    animation-delay: 0.22s;
}

.loading-area span:nth-child(5) {
    animation-delay: 0.26s;
}

.loading-area span:nth-child(6) {
    animation-delay: 0.3s;
}

.loading-area span:nth-child(7) {
    animation-delay: 0.34s;
}

.loading-area span:nth-child(8) {
    animation-delay: 0.38s;
}

.loading-area span:nth-child(9) {
    animation-delay: 0.4s;
}

.loading-area span:nth-child(10) {
    animation-delay: 0.44s;
}

@keyframes water-anime {

    70%,
    100% {
        background-size: 100% 100%;
    }
}


@media screen and (max-width:500px) {
#splash-logo figure {width:75%;}
}

/*========= 画面遷移のためのCSS ===============*/

/*画面遷移アニメーション*/
.splashbg{
    display: none;
}

/*bodyにappearクラスがついたら出現*/
body.appear .splashbg{
display:block;
animation-name:PageAnime;
animation-duration:1.2s;
animation-timing-function:ease-in-out;
animation-fill-mode:forwards;
content: "";
position:fixed;
z-index: 999;
width: 50%;
height: 100vh;
top: 0;
left: 0;
transform: translateX(-300%) skewX(-45deg);
background-color: #fff;/*伸びる背景色の設定*/
}

@keyframes PageAnime{
0% {
transform-origin:left;
transform:translateX(-300%) skewX(-45deg);
}
100% {
transform-origin:left;
transform:translateX(500%) skewX(-45deg);
}
}

/*画面遷移の後現れるコンテンツ設定*/
#container{
opacity: 0;/*はじめは透過0に*/
}

/*bodyにappearクラスがついたら出現*/
body.appear #container{
  animation-name:PageAnimeAppear;
  animation-duration:1s;
  animation-delay: 0.6s;
  animation-fill-mode:forwards;
  opacity: 0;
}

@keyframes PageAnimeAppear{
  0% {
  opacity: 0;
  }
  100% {
  opacity: 1;
}
}
@media screen and (max-width:767px) {
.loading-area span {font-size:3.5em;line-height:3.5em;}
}

#container {height:100%;}
/*MAIN*/
#main-block {width:100%;height:auto;background-image:url("../img/bg_main.jpg");background-repeat:repeat-x;background-position:top center;background-position: 0 0; -webkit-animation: bgroop 50s linear infinite;animation: bgroop 40s linear infinite;background-color:#183765;}

@-webkit-keyframes bgroop {
    from {
        background-position: 0  0;
    }
    to {
        background-position: -1956px 0;
    }
}
@keyframes bgroop {
    from {
        background-position: 0 0;
    }
    to {
        background-position: -1956px 0;
    }
}

#main-block #main-block-in{width:900px;margin:auto;}
#txt-main-01 {position:absolute;left:12px;top:-10px;width:380px;z-index:10;paddding:0!important;margin:0!important;height:auto}
#main-block #main-block-in #txt-main-02{padding:130px 0 60px;width:100%;}
#main-block #main-block-in #txt-main-03{padding:0 0 60px;width:90%;margin:auto;}
#main-block #main-block-in #img-main-grass{padding:0 0 100px;width:60px;margin:auto;}
#main-block #main-block-in #txt-main{position:absolute;width:100%;left:0;top:0}
@media screen and (max-width:900px) {
#main-block #main-block-in{width:auto;margin:0 30px}
#main-block #main-block-in #txt-main-02{padding:100px 0 40px;}
}
@media screen and (max-width:767px) {
#main-block {background-image:url("../img/bg_main_sp.jpg");}
#txt-main-01 {position:absolute;left:10px;top:10px;}
#main-block #main-block-in #txt-main-02{padding:90px 0 30px;width:100%;}
#main-block #main-block-in #txt-main-03{width:100%;padding:0 0 30px;}
#main-block #main-block-in #img-main-grass{padding:0 0 60px}
}
@media screen and (max-width:580px) {
/*#txt-main-01 {width:80%;position:relative;top:0;left:0;margin:auto!important;padding-top:10px}*/
#main-block #main-block-in #img-main-grass{padding:0 0 40px;}
}


/*TRAILER*/
#trailer {padding:60px 0 30px;}
#trailer h2 {font-size:1.9em;margin-bottom:30px;font-weight:800;line-height:1.6em}
#trailer #trailer-in {width:800px;margin:0 auto 30px;}
#trailer #trailer-in .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#trailer #trailer-in .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
#trailer #txt-trailer{width:960px;margin:40px auto;text-align:left;}
@media screen and (max-width:980px) {
#trailer #txt-trailer{width:auto;margin:40px 25px;text-align:left;}
}
@media screen and (max-width:800px) {
#trailer #trailer-in {width:auto;margin:0 30px 30px;}
#trailer h2 {font-size:1.6em;}
}
/*DIRECTORCOMMENT*/
#directorcomment {background:#f2f3f5;padding:60px 0 60px;}
#directorcomment #directorcomment-in {width:680px;margin:auto;padding:0 0 60px}
#directorcomment #directorcomment-in h2 {font-size:1.2em;margin-bottom:10px;font-weight:700;letter-spacing: .1em}
#directorcomment #directorcomment-in h2 figure img {border-radius:20px;}
#directorcomment #directorcomment-in #txt-directorcomment {text-align:left;margin-top:25px;}
#directorcomment #directorcomment-in #txt-directorcomment p {margin-bottom:1em;}
#directorcomment #directorcomment-in #name-directorcomment {text-align:right;margin-top:15px;line-height:1.2em}
.btn-sign a{background:#f2d252;display:inline-block;width:auto;padding:15px 25px;text-decoration:none;font-weight:bold;line-height:1.6em;font-size:1.6em}
@media screen and (max-width:960px) {
#directorcomment {padding:40px 0;}
#directorcomment #directorcomment-in {width:auto;margin:0 25px;}
.btn-sign{margin:0 25px}
}
@media screen and (max-width:500px) {
.btn-sign a{padding:12px 20px;white-space: nowrap;font-size:1.2em}
}



/*PHOTO*/
.img-photo1{}
.img-photo1 ul {letter-spacing:-.4em}
.img-photo1 ul li {letter-spacing:normal;width:25%;display:inline-block;vertical-align:top;}
@media screen and (max-width:767px) {
.img-photo1 ul li {width:50%;}
}

.img-photo2{}
.img-photo2 ul {letter-spacing:-.4em}
.img-photo2 ul li {letter-spacing:normal;width:50%;display:inline-block;vertical-align:top;}
@media screen and (max-width:767px) {
.img-photo2 ul li {width:100%;}
}

#img-photo3{}
#img-photo3 #img-photo3-in {width:100%;margin:auto;}
@media screen and (max-width:1000px) {
#img-photo3 #img-photo3-in {width:100%;}
}

/*FOOTER*/
#footer {padding:30px 0 40px;}
#footer #footer-logo {width:400px;margin:0 auto 0px;}
#footer #footer-link {margin:8px auto 40px;letter-spacing:.1em}
#footer #footer-link a {color:#173764}
@media screen and (max-width:700px) {
#footer #footer-credit {width:85%;}
#footer #footer-logo {width:70%;}
}


/*BTNSNS*/
#sns-block{text-align:center;}
.btn-sns {letter-spacing:-.4em;width:auto;}
.btn-sns li {height:auto;margin-right:5px;display:inline-block;/display:inline;/zoom:1;vertical-align:top;width:auto;letter-spacing:normal;}
.btn-sns li a {font-size:1.2em;display:block;text-align:center;text-decoration:none;width:40px;height:40px;border-radius:50%;line-height:40px;transform:.5s;background:#173764}
.btn-sns li a i {color:#fff;}
.btn-sns li a:hover {opacity: 50%}
#txt-credit {color:#000000;margin:10px 0 20px;font-family: "BIZ UDPMincho", serif;font-weight:500}
#txt-credit #txt-credit-l {font-size:1.3em;margin-bottom:2px;letter-spacing:.1em}
#txt-credit #txt-credit-s {font-size:.85em;line-height:1.5em;letter-spacing:.1em}
@media screen and (max-width:900px) {
#sns-block{text-align:center;}
}

@media screen and (max-width:679px) {
.btn-sns {letter-spacing:normal;display:block;width:auto;margin:0 auto 5px;}
.btn-sns li:last-child{margin-right:0;}
}


/*SNSSHARE*/
.list-sns{margin:0px auto 10px;text-align:center;letter-spacing:-.4em;display:inline-block;/display:inline;/zoom:1;vertical-align:middle;}
.list-sns li{display:inline-block;/display:inline;/zoom:1;vertical-align:top;letter-spacing:normal;margin-right:5px;}
.list-sns li.twitter-share,.list-sns li.line-share,.list-sns li.eiga-share{padding-top:14px}
.list-sns li.fb-share{padding-top:0px;width:130px}
.list-sns li.fb-share0{padding-top:-4px;height:20px}
.fb-like > span {width: 135px !important;}
.fb-like iframe {width: 135px !important;}
@media screen and (max-width:900px) {
.list-sns{display:block;}
.list-sns li.fb-share{padding-top:5px;}
}
.btn-trailer-start {display:none;}


#backtotop{bottom:5px;height:45px;position:fixed!important;right:5px;width:45px;text-indent:-9999px;z-index:10000}
#backtotop a{background:url(../img/btn_backtotop.png) no-repeat scroll 0 0 transparent;display:block;height:45px;width:45px}
#backtotop a:hover{background:url(../img/btn_backtotop.png) no-repeat scroll 0 -45px transparent}



/*FADE*/
.fadeIn {opacity: 0;-webkit-transition: 1s;transition: 1s;-webkit-transform: translateY(20px);transform: translateY(20px);}
.fadeIn.is-inview {opacity: 1;-webkit-transform: translateY(0px);transform: translateY(0px);}
.img_in_right {overflow: hidden;-webkit-transition: 1s;transition: 1s;opacity: 0;}
.img_in_right img {-webkit-transform: translateX(40px);transform: translateX(40px);-webkit-transition: 1s;transition: 1s;-webkit-clip-path: inset(0 0 0 100%);clip-path: inset(0 0 0 100%);}
.img_in_right.is-inview {opacity: 1;}
.img_in_right.is-inview img {-webkit-clip-path: inset(0);clip-path: inset(0);-webkit-transform: translateX(0px);transform: translateX(0px);}

@media screen and (min-width:900px) {
.pc-only{display:block}
.sp-only{display:none}
}

@media screen and (min-width: 0px) and (max-width:899px) {
.pc-only{display:none}
.sp-only{display:block}
}




