@charset "UTF-8";

/* ----------------------------------------------------------------------
BASE
 ---------------------------------------------------------------------- */
* {
    box-sizing:border-box;
    margin:0;
    padding:0;
}

html {
    font-size:62.5%;
}

body {
    font-size:1.0rem;
    -webkit-text-size-adjust:100%;
    -moz-text-size-adjust:100%;
    -ms-text-size-adjust:100%;
    text-size-adjust:100%;
    font-smoothing:antialiased;
    letter-spacing:.08em;
    text-rendering:auto;
    font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    color:#000;
    line-height:3em;
}

#main {
    position: relative;
    background: #fff;
    z-index: 1;
    padding-top:170px;
}

h1,h2,h3,h4,h5 {
    font-weight:normal;
    font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho";
}

p,a,li {
    font-size:1.4rem;
}

a {
    text-decoration:none;
    color:#333;
}

li {
    list-style-type:none;
}

.img {
    line-height:0;
}

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

.txt-c {
    text-align:center;
}

.cf:after {
    content:'.';
    display:block;
    height:0;
    font-size:0;
    clear:both;
    visibility:hidden;
}

.spbr {
    display:none;
}

.fade {
    opacity:0;
    transition:1.2s;
    transform: translate(0,40px);
    -webkit-transform: translate(0,40px);
}

.mv01{
    transform: translate(0,0);
    -webkit-transform: translate(0,0);
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    opacity:1;
}

@media only screen and (max-width: 768px) {
    #main {
        padding-top:100px;
    }

    h1 img {
        width:90px;
        height:230px;
    }
}

@media only screen and (max-width: 450px) {
    #main {
        padding-top:30px;
    }

    .spbr {
        display:block;
    }

    h1 img {
        width:70px;
        height:179px;
    }
}

/* ----------------------------------------------------------------------
LAYOUT
 ---------------------------------------------------------------------- */
.l-inner-s {
    width:1080px;
    margin:0 auto;
}

.l-inner {
    width:1200px;
    margin:0 auto;
}

@media only screen and (max-width: 1080px) {
    .l-inner-s {
        width:92%;
        margin:0 auto;
    }
}

@media only screen and (max-width: 1200px) {
    .l-inner {
        width:92%;
        margin:0 auto;
    }
}

/* ----------------------------------------------------------------------
MODULE
 ---------------------------------------------------------------------- */


/* ------------------------------
footer
------------------------------ */
footer {
    /*background:url(/special/fieldgallery/img/sea_small.gif) no-repeat bottom center;*/
    padding-top:210px;
    position:relative;
}

footer video {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
}

.pagetop {
    text-align:center;
    font-family: "Times New Roman";
    padding-bottom:100px;
    background:url(/special/fieldgallery/img/co_ln_02.gif) no-repeat bottom center;
    cursor:pointer;
    margin-bottom:250px;
    position:relative;
}

.pc .pagetop {
    transition:0.5s;
}

.pc .pagetop:hover {
    color:#5f9ea0;
}

.ft-nav {
    text-align:center;
    position:relative;
    margin-bottom:20px;
}

.ft-nav li {
    display:inline-block;
    padding:30px;
}

.ft-nav li img {
    width:270px;
    height:auto;
}

.copyright {
    background:#384d70;
    color:#fff;
    text-align:center;
    font-family: "Times New Roman";
    font-size:1.2rem;
    padding:30px 0;
    letter-spacing:0.1em;
    position:relative;
}

@media only screen and (min-width: 1600px) {
    footer {
        padding-top:300px;
    }
}


@media only screen and (max-width: 900px) {
    footer {
        background:url(/special/fieldgallery/img/ft_sea.png) no-repeat bottom center;
        background-size:cover;
    }

    footer video {
        display:none;
    }
}

@media only screen and (max-width: 768px) {
    .ft-nav li {
        padding:20px 10px;
    }
    .ft-nav li img {
        width:220px;
        height:auto;
    }
}

@media only screen and (max-width: 500px) {
    .ft-nav li img {
        width:180px;
        height:auto;
    }
}

/* ----------------------------------------------------------------------
STATE
 ---------------------------------------------------------------------- */

/* ----------------------------------------------------------------------
THEME
 ---------------------------------------------------------------------- */

#nami{
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    height:200px;
    z-index:10;
}

#nami.show {
    opacity:1;
}


.wave{
    background:#fff;
    display:inline-block;
    height:20%;
    width:30px;
    position:absolute;
    -webkit-animation-name:dostuff;
    -moz-animation-name:dostuff;
    -ms-animation-name:dostuff;
    animation-name:dostuff;
    -webkit-animation-duration:5s;
    -moz-animation-duration:5s;
    -ms-animation-duration:5s;
    animation-duration:5s;
    -webkit-animation-iteration-count:infinite;
    -moz-animation-iteration-count:infinite;
    -ms-animation-iteration-count:infinite;
    animation-iteration-count:infinite;
    -webkit-transition-timing-function:ease-in-out;
}

@keyframes dostuff{
    0%{height:60%}
    50%{height:40%}
    100%{height:60%}
}

@-ms-keyframes dostuff{
    0%{height:60%}
    50%{height:40%}
    100%{height:60%}
}

@-webkit-keyframes dostuff{
    0%{height:60%}
    50%{height:40%}
    100%{height:60%}
}

@-moz-keyframes dostuff /* Firefox */{
    0%{height:60%}
    50%{height:40%}
    100%{height:60%}
}

#progress {
    width:100%;
    height:5px;
    position:fixed;
    z-index:10;
    bottom:0;
    display:block;
}

#progressBar {
    width: 100%;
    height:10px;
    display: block;
    background: #ccc;
}


#loader-bg {
    background-color: #fefefe;
    z-index: 1001;
    position: relative;
    position: fixed;
    width: 100%;
    height: 100%;
    overflow:hidden;
}

#loader-bg .logo {
    position:absolute;
    top:50%;
    left:50%;
    margin-left:-30px;
    z-index:200;
}

#loader-bg .logo {
    width:60px;
}

#loading {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align:center;
}

#loading p {
    font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho";
    font-weight:bold;
    color:#f7f7f7;
    /*font-weight: 700;*/
    font-size: 9.8vw;
    letter-spacing: .003em;
    white-space: nowrap;
    position: relative;
    -webkit-animation: scroll 12s linear infinite;
    -moz-animation: scroll 12s linear infinite;
    -ms-animation: scroll 12s linear infinite;
    animation: scroll 12s linear infinite;
    line-height:0;
    opacity:0.7;
}

#loading p.txt1 {
    -webkit-animation: 150s cubic-bezier(0.19, 1, 0.22, 1) infinite alternate;
    animation: 150s cubic-bezier(0.19, 1, 0.22, 1) infinite alternate;
    -webkit-animation-name: moving1;
    animation-name: moving1;
}

@-webkit-keyframes moving1 {
    0% { -webkit-transform: translateX(0) rotate(0deg); }
    100% { -webkit-transform: translateX(80%) rotate(0deg); }
}

@keyframes moving1 {
    0% { transform: translateX(0) rotate(0deg); }
    100% { transform: translateX(80%) rotate(0deg); }
}

#loading p.txt2 {
    -webkit-animation: 150s cubic-bezier(0.19, 1, 0.22, 1) infinite alternate;
    animation: 150s cubic-bezier(0.19, 1, 0.22, 1) infinite alternate;
    -webkit-animation-name: moving2;
    animation-name: moving2;
}

@-webkit-keyframes moving2 {
    0% { transform: translateX(20%) rotate(0deg); }
    100% { transform: translateX(0) rotate(0deg); }
}

@keyframes moving2 {
    0% { transform: translateX(20%) rotate(0deg); }
    100% { transform: translateX(0) rotate(0deg); }
}

#loading p.txt3 {
    -webkit-animation: 150s cubic-bezier(0.19, 1, 0.22, 1) infinite alternate;
    animation: 150s cubic-bezier(0.19, 1, 0.22, 1) infinite alternate;
    -webkit-animation-name: moving3;
    animation-name: moving3;
}

@-webkit-keyframes moving3 {
    0% { -webkit-transform: translateX(10%) rotate(0deg); }
    100% { -webkit-transform: translateX(60%) rotate(0deg); }
}

@keyframes moving3 {
    0% { -webkit-transform: translateX(10%) rotate(0deg); }
    100% { -webkit-transform: translateX(60%) rotate(0deg); }
}

#loading p.txt4 {
    -webkit-animation: 150s cubic-bezier(0.19, 1, 0.22, 1) infinite alternate;
    animation: 150s cubic-bezier(0.19, 1, 0.22, 1) infinite alternate;
    -webkit-animation-name: moving4;
    animation-name: moving4;
}

@-webkit-keyframes moving4 {
    0% { transform: translateX(0) rotate(0deg); }
    100% { transform: translateX(-20%) rotate(0deg); }
}

@keyframes moving4 {
    0% { transform: translateX(0) rotate(0deg); }
    100% { transform: translateX(-20%) rotate(0deg); }
}


