@charset "utf-8";
.sp-only {
    display: none !important;
}
body {
    min-width: 1140px;
}
.inner {
    width: 1100px;
    margin: auto;
}
#splash {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    z-index: 100;
    overflow: hidden;
}
#splash::before {
    content: '';
    width: 50%;
    height: 150%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: #fff;
    background-image: url(../img/noren/left.png);
    background-repeat: no-repeat;
    background-position: right top 20%;
    background-size: auto 40%;
    transform-origin: right top;
    transition: all 3s ease .3s;
    box-sizing: border-box;
}
#splash::after {
    content: '';
    width: 50%;
    height: 150%;
    position: absolute;
    right: 0;
    top: 0;
    background-color: #fff;
    background-image: url(../img/noren/right.png);
    background-repeat: no-repeat;
    background-position: left top 20%;
    background-size: auto 40%;
    transform-origin: left top;
    transition: all 3s ease .3s;
}
body.page__open #splash {
    pointer-events: none;
    visibility: hidden;
}
body.page__open #splash::before {
    transform: rotate3d(1, 0, .3, 180deg);
    perspective: 1000;
}
body.page__open #splash::after {
    transform: rotate3d(1, 0, -.3, 180deg);
}
/* == parts ============================================== */
.float-box {
    overflow: hidden;
}
.float-box .box-sns {
    float: left;
    width: 500px;
    margin: 0 25px;
}
.float-box .box-sns.area_twitter {
    height: 500px;
    overflow-y: scroll;
}
.float-box .box-sns iframe {
    width: 100%;
}
.fb-container {
    width: 100% !important;
}
.float-box .box-sns + .box-sns {
    float: right;
}
.title_center {
    text-align: center;
    font-size: 250%;
    margin: 0 0 40px;
    position: relative;
}
.title_center span {
    display: block;
    font-size: 40%;
    margin: -10px 0 10px;
}
.title_strong {
    text-align: center;
    font-size: 250%;
    margin: 0 0 50px;
}
.map-wrap {
    height: 500px;
}
.map-wrap iframe {
    width: 100%;
    height: 100%;
}
/* == header ============================================== */
/* == footer ============================================== */
footer {
    padding: 25px 0 30px;
    background: #f1f1f1;
}
footer .inner {
    overflow: hidden;
}
footer .inner address {
    float: left;
}
footer .inner .area_bnr {
    float: right;
}
footer .copyright {
    margin: 20px 0 0;
    text-align: center;
    font-size: 88%;
}
.list_sns {
    overflow: hidden;
    margin: 20px 0 30px;
}
.list_sns li {
    text-align: center;
    float: left;
    width: 25%;
}
.list_sns li img {
    vertical-align: bottom;
}
/* == frontpage ==============================================*/
main {
    background-size: cover;
    position: relative;
}
.block_title .title_main {
    text-align: center;
    height: 100vh;
    background: url("../img/main.jpg") no-repeat center;
    background-size: cover;
    background-color: #f5f5f5;
    position: relative;
    box-shadow: 0 10px 20px -5px #ccc;
}
.block_title .title_main img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.block_title .area_lead {
    padding: 150px 0 120px;
}
.block_title .title-lead {
    text-align: center;
    font-size: 130%;
    line-height: 2;
    margin: auto;
}
.block_title .title-lead p + p {
    margin: 30px 0 0;
}
.block_title .title-lead .image {
    text-align: center;
    margin: 100px auto 0;
}
.block_title .area_slide {
    margin: 40px auto;
}
.block_title .area_slide .contents{
    margin: 0 10px;
}
/*--------------------*/
.slide-ticker {
    height: 480px;
    -webkit-animation: slider 50s linear 0s infinite;
}
.slider {
    overflow: hidden;
    max-width: 2560px;
    margin: 75px auto;
}
.slider .content {
    float: left;
    width: 25%;
    position: relative;
    height: 0;
    padding: 19% 0 0;
}
.slider .content img {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
}
.slider .content img:nth-child(2) {
    -webkit-animation: slider 8s linear 0s infinite;
    animation: slider 8s linear 0s infinite;
}
@-webkit-keyframes slider {
    0% {
        opacity: 0;
    }
    20% {
        opacity: 0;
    }
    30% {
        opacity: 1;
    }
    70% {
        opacity: 1;
    }
    80% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
@keyframes slider {
    0% {
        opacity: 0;
    }
    20% {
        opacity: 0;
    }
    30% {
        opacity: 1;
    }
    70% {
        opacity: 1;
    }
    80% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
/*--------------------------------------------------*/
.block_profile {
    background: #f5f5f5;
    padding: 30px 0;
}
.block_profile .profile-set {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    max-width: 1300px;
    margin: 100px auto;
}
.block_profile .profile-set.set-right {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}
.block_profile .area_image {
    width: 45%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.block_profile .set01 .area_image {
    background-image: url("../img/pic/img02.jpg");
}
.block_profile .set02 .area_image {
    background-image: url("../img/pic/img07.jpg");
}
.block_profile .set03 .area_image {
    background-image: url("../img/pic/img08.jpg");
}
.block_profile .area_text {
    padding: 100px 30px 200px 60px;
    width: 55%;
}
.block_profile .set03 .area_text {
    background: url(../img/winedog.png) no-repeat right 40px bottom 40px;
    background-size: 174px 244px;
}
.block_profile .area_text .title_center {
    text-align: left;
}
.block_profile .area_text .list_profile {
    font-size: 88%;
    line-height: 2.5;
    list-style: disc;
    margin: 0 0 0 1em;
}
.block_profile .profile-set .sake-text-end {
    text-align: right;
    margin: 10px 0 20px;
}
.block_profile .profile-set .sake-text-att {
    font-size: 88%;
}
.block_profile .profile-set .link-note {
    margin: 30px 0 0;
}
.block_profile .profile-set .link-note a {
    display: block;
    padding: 20px 0 20px 120px;
    background: url("../img/note-logo.svg") no-repeat left top;
    background-size: contain;
    font-family: Meiryo, "sans-serif";
    background-color: #fff;
    transition: all .3s;
    font-weight: 600;
    position: relative;
}
.block_profile .profile-set .link-note a::after {
    content: '';
    width: 20px;
    height: 20px;
    background: url("../img/blank.svg") no-repeat;
    background-size: contain;
    position: absolute;
    right: 25px;
    top: 0;
    bottom: 0;
    margin: auto;
}
.block_profile .profile-set .link-note a:hover {
    color: #2cb696;
}
.list_info {
    margin: 0 0 30px;
}
.list_info li + li {
    margin: 20px 0 0;
}
.list_info dl {
    overflow: hidden;
}
.list_info dt {
    float: left;
    width: 180px;
    font-weight: 600;
    border-right: solid 1px #333;
    box-sizing: border-box;
    margin: 0 20px 0 0;
}
.list_info dd {
    float: left;
    width: calc(100% - 200px);
    box-sizing: border-box;
}
/*--------------------------------------------------*/
.block_sns {
    padding: 100px 0 150px;
}
/*--------------------------------------------------*/
.block_map {
    padding: 100px 0 150px;
    background: #f5f5f5;
}
.block_map .access-text {
    text-align: center;
    margin: 30px 0 0;
    font-size: 120%;
}