/*
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
*/
/* 
    Created on : 2017/12/12, 16:46:33
    Author     : Naruhito Murata
*/
@charset "utf-8";
:root {
  --box-angle: 17deg;
  --box-angle-minus: 17deg;
  --inner-padding: 290px;
}

html {
    font-family:'Noto Sans Japanese','メイリオ','Meiryo', 'ＭＳ Ｐゴシック',' verdana', 'arial', 'Helvetica', 'sans-serif', 'Osaka';
    font-size: 80.5%;
    z-index: １;
}
dd, dl, dt, li, ol, ul {
    list-style-type: none;
    list-style-position: outside;
}
body {
    background-image: linear-gradient(-90deg, #61C1BF, #289abf);
}
.contents {
    position: relative;
    overflow: hidden;
}
.top-box {
    width: 100%;
    height: 1150px;
    position: relative;
    background-color: #FFF;
    z-index: １;
}
.top-box-bg {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    color: #fff;
    content: ""
 }
.top-logo {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10%;
}
.vision-box {
    width: 100%;
    height: 1250px;
    position: relative;
    -ms-transform: skew(0deg, 17deg);
    transform: skew(0deg, var(--box-angle));
    margin-top: -425px;
    z-index: １;
} 
.vision-box-bg {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    color: #fff;
    content: "";
    background-image: linear-gradient(-90deg, #61C1BF, #289abf);
}
.vision-inner {
    width: 100%;
    padding-left:  90px;
    padding-right:  90px;
    padding-top: var(--inner-padding);
    -ms-transform: skew(0deg, -17deg);
    transform: skew(0deg, var(--box-angle-minus));
}
.vision-inner p {
    font-size: 1.3rem;
}
.vision-inner-xs {
    width: 100%;
    padding-left:  10px;
    padding-right:  10px;
    padding-top: var(--inner-padding);
    -ms-transform: skew(0deg, -17deg);
    transform: skew(0deg, var(--box-angle-minus));
}
.vision-inner-xs p {
    font-size: 1.3rem;
}
@media all and (-ms-high-contrast:none){
    .vision-inner {
        width: 100%;
        padding-left:  90px;
        padding-right:  90px;
        padding-top: 290px;
        -ms-transform: skew(0deg, -17deg);
    }
    .vision-inner p {
        font-size: 1.3rem;
    }
    .vision-inner-xs {
        width: 100%;
        padding-left:  10px;
        padding-right:  10px;
        padding-top: 100px;
        -ms-transform: skew(0deg, -17deg);
    }
    .vision-inner-xs p {
        font-size: 1.3rem;
    }
};
.title-img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 100px;
    margin-bottom: 50px;
}
.title-img-xs {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
    margin-bottom: 50px;
}
.about-box {
    width: 100%;
    height: 1250px;
    position: relative;
    -ms-transform: skew(0deg, -17deg);
    transform: skew(0deg, var(--box-angle-minus));
    margin-top: -525px;
    z-index: １;
} 
.about-box-bg {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    color: #757575;
    content: "";
    background-color: #FFF;
}
.about-inner {
    width: 100%;
    margin-left: 40px;
    padding-left:  50px;
    padding-right:  50px;
    padding-top: var(--inner-padding);
    -ms-transform: skew(0deg, 17deg);
    transform: skew(0deg, var(--box-angle));
}
@media all and (-ms-high-contrast:none){
    .about-inner {
        width: 100%;
        margin-left: 40px;
        padding-left:  50px;
        padding-right:  50px;
        padding-top: 290px;
        -ms-transform: skew(0deg, 17deg);
    }
}
.profile {
    margin-right: 20px;
}
.profile-en {
    margin-left: 20px;
}
.profile-list {
    margin-bottom: 30px;
}
.profile-list .profile-title {
    font-size: 1.0rem;
    line-height: 1;
    margin-bottom: 5px;
    margin-top: 0;
}
.profile-list .profile-detail {
    letter-spacing: .05em;
}
.access-box {
    width: 100%;
    height: 1150px;
    position: relative;
    -ms-transform: skew(0deg, 17deg);
    transform: skew(0deg, var(--box-angle));
    margin-top: -425px;
    z-index: １;
} 
.access-box-bg {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    color: #fff;
    content: "";
    background-image: linear-gradient(-90deg, #61C1BF, #289abf);
}
@media screen and (min-width:768px) {
    .access-inner {
        width: 100%;
        padding-left:  90px;
        padding-right:  90px;
        padding-top: var(--inner-padding);
        transform: skew(0deg, var(--box-angle-minus));
    }
    .access-inner .movie{
        max-width: 640px;
    }
}
@media screen and (max-width:767px) { 
    .access-inner {
        width: 100%;
        padding-top: var(--inner-padding);
        transform: skew(0deg, var(--box-angle-minus));
    }
    .access-inner .movie{
        max-width: 100%;
    }
}
@media all and (-ms-high-contrast:none){
    .access-inner {
        width: 100%;
        padding-top: 290px;
        -ms-transform: skew(0deg, -17deg);
    }
}
.access-inner-map {
    width: 100%;
    padding-top: 5px;
    -ms-transform: skew(0deg, -17deg);
    transform: skew(0deg, var(--box-angle-minus));
}

footer .line {
    background-color: #002f43;
    padding: 20px 0;
}
footer .line p {
    color: #87acbf;
    font-size: 10px;
    text-align: center;
}
.float-navi {
    top: calc(50% - 50px/2);
    position: fixed;
    z-index: 10;
}
.float-navi ul {
    margin-left: -40px;    
}
.square_btn {
    display: inline-block;
    width: 90px;
    padding: 0.3em 1em;
    margin-top: 2px;
    text-decoration: none;
    color: #249bc6;
    background-color: white;
    border: solid 1px #249bc6;
    border-radius: 1px;
    transition: .4s;
    opacity: 0.80;
}

.square_btn:hover {
    background: #249bc6;
    color: white;
}
@media (min-width: 768px) {
    html {
        font-size: 100%;
    }
}
