@charset "UTF-8";

/*メイン画像アニメーション
--------------------------------*/
@keyframes scaleIn
{
    0%
    {
        transform: scale(1.2, 1.2);
        opacity: 0;
    }

    5%
    {
        opacity: 1;
    }

    100%
    {
        transform: scale(1, 1);
        opacity: 1;
    }
}

@keyframes img-wrap-top
{
    100%
    {
        height: 100%;
        opacity: 1;
    }
}

@keyframes fadeIn
{
    100%
    {
        opacity: 1;
    }
}

@keyframes fadeInY
{
    0%
    {
        transform: translateY(100%);
        opacity: 0
    }

    20%
    {
        transform: translateY(0);
        opacity: 1
    }

    100%
    {
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes fadeInX
{
    0%
    {
        transform: translateX(-100%);
        opacity: 0
    }

    20%
    {
        transform: translateX(0);
        opacity: 1
    }

    100%
    {
        transform: translateX(0);
        opacity: 1
    }
}

/*メイン画像
--------------------------------*/
.mainimg-area
{
    position: relative;
    width: 100%;
    height: 500px;
    display: flex;
    margin-bottom: 50px;
    background: #fff;
}

@media screen and (max-width: 900px)
{
    .mainimg-area
    {
        display: block;
        height: 301px;
        margin-bottom: 20px;
    }
}

.main-img
{
    position: relative;
    flex: 1;
}

@media screen and (max-width: 900px)
{
    .main-img
    {
        width: 100%;
        height: 182px;
    }
}

/*画像アニメーション*/
.slide
{
    display: flex;
    position: relative;
    width: 100%;
    height: 100%;
}

.slide .left
{
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    height: 0;
    opacity: 0;
    overflow: hidden;
    animation-name: img-wrap-top;
    animation-duration: .5s;
    animation-delay: 0s;
    animation-timing-function: linear;
    animation-direction: normal;
    animation-fill-mode: forwards;

}

.slide .right
{
    position: absolute;
    right: 0;
    bottom: 0;
    width: 50%;
    height: 0;
    opacity: 0;
    overflow: hidden;
    animation-name: img-wrap-top;
    animation-duration: .5s;
    animation-delay: 0s;
    animation-timing-function: linear;
    animation-direction: normal;
    animation-fill-mode: forwards;
}

.slide .left>div,
.slide .right>div
{
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}

.slide .right .scale,
.slide .left .scale
{
    width: 100%;
    height: 100%;
    animation-name: scaleIn;
    animation-duration: 6s;
    animation-timing-function: ease-out;
    animation-direction: normal;
    animation-delay: 0;
    animation-fill-mode: forwards;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.imgL1
{
    background-image: url(../img/index/main-L1-pc.jpg);
    animation-delay: 0;

}

.imgL2
{
    background-image: url(../img/index/main-L2-pc.jpg);
    animation-delay: 6s !important;

}

.imgL3
{
    background-image: url(../img/index/main-L3-pc.jpg);
    animation-delay: 12s !important;

}

.imgR1
{
    background-image: url(../img/index/main-R1-pc.jpg);
    animation-delay: 0;
}

.imgR2
{
    background-image: url(../img/index/main-R2-pc.jpg);
    animation-delay: 6s;
}

.imgR3
{
    background-image: url(../img/index/main-R3-pc.jpg);
    animation-delay: 12s;
}

@media screen and (max-width: 900px)
{

    .imgR1,
    .imgR2,
    .imgR3,
    .imgL1,
    .imgL2,
    .imgL3
    {
        background-size: cover;
    }
}


/*麦、水、製法テキストアニメーション*/
.mainimg-on img
{
    position: absolute;
    top: 155px;
    left: 6%;
    opacity: 0;
    animation-timing-function: cubic-bezier(0.11, 0.84, 0.3, 1);
    animation-duration: 6.0s;
    animation-delay: 0s;
    animation-fill-mode: backwards;
}

@media screen and (max-width: 900px)
{
    .mainimg-on img
    {
        top: 60px;
        width: 119px;
        height: 62px;
    }
}

.mainimg-on img.mugi
{
    animation-name: fadeInY;
    animation-delay: 0s
}

.mainimg-on img.mizu
{
    animation-name: fadeInX;
    animation-delay: 6s
}

.mainimg-on img.seihou
{
    animation-name: fadeInY;
    animation-delay: 12s
}

/*佐賀の麺づくり*/
.black
{
    position: relative;
    width: 420px;
    height: 100%;
    background: #000;
    background-image: url(../img/index/maru-g.png);
    background-repeat: no-repeat;
    background-position: top 30% right 15%;
    color: #fff;
}

@media screen and (max-width: 900px)
{
    .black
    {
        width: 100%;
        height: 119px;
        display: flex;
        align-items: center;
        padding-top: 5px;
        box-sizing: border-box;
        background-size: 20% 76%;
        background-position: top 14px right 23%;
    }
}

.sougyou
{
    position: absolute;
    content: '';
    top: 48px;
    right: 20px;
    width: 183px;
    height: 183px;
}

@media screen and (max-width: 900px)
{
    .sougyou
    {
        top: 14px;
        right: 16%;
        width: 72.95px;
        height: 72.95px;
    }
}

.black .top-area
{
    width: 100%;
    height: 201px;
    padding-top: 73px;
    box-sizing: border-box;
    text-align: center;
}

@media screen and (max-width: 900px)
{
    .black .top-area
    {
        position: absolute;
        top: 25px;
        left: 54%;
        width: 54px;
        height: 55.19px;
        padding-top: 0;
    }
}

.black .bottom-area
{
    padding-left: 72px;
    box-sizing: border-box;
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 600;
    font-size: 3.0rem;
}


.black .bottom-area span
{
    font-size: 20.0rem;
}

@media screen and (max-width: 900px)
{
    .black .bottom-area
    {
        font-size: 1.2rem;
        padding-left: 25%;
    }

    .black .bottom-area span
    {
        font-size: 8.0rem;
    }
}

/*トップバナー
-------------------------------*/
.top-bn
{
    width: 920px;
    max-width: 90%;
    margin: 0 auto 8rem;
}

.banner
{
    position: absolute;
    bottom: 2rem;
    width: 35rem;
}

@media screen and (max-width: 900px)
{
    .top-bn
    {
        width: 86%;
        max-width: 86%;
        margin: 0 auto 3rem;
    }

    .top-bn img
    {
        width: 100%;
    }

    .banner
    {
        position: static;
        max-width: 960px;
        width: 85%;
        margin: 0.5rem auto 0;
    }
}

/*上段コンテンツ
--------------------------------*/
.top-cont
{}

.top-cont p
{
    line-height: 1.6;
    padding-bottom: 2rem;
}

@media screen and (max-width: 900px)
{
    .top-cont p
    {
        padding-bottom: 1rem;
    }
}

.main-txt
{
    font-size: 2.0rem;
}

@media screen and (max-width: 900px)
{
    .main-txt
    {
        font-size: 1.6rem;
    }
}

.item-box
{
    margin: 30px 0 130px;
    background: linear-gradient(180deg, #fff 0%, #fff 60px, transparent 60px, transparent 100%), url(../img/common/washi.png);
}

@media screen and (max-width: 900px)
{
    .item-box
    {
        margin: 0;
        padding-bottom: 20px;
        background: linear-gradient(180deg, #fff 0%, #fff 40px, transparent 40px, transparent 100%), url(../img/common/washi.png);
    }
}

.item-back
{
    background-image: url(../img/index/back.png);
    background-repeat: no-repeat;
    background-position: bottom left;
}

@media screen and (max-width: 900px)
{
    .item-back
    {
        background-size: 40%;
    }
}

ul.item
{
    width: 900px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto;
}

@media screen and (max-width: 900px)
{
    ul.item
    {
        width: 85%;
    }
}

ul.item li
{
    display: block;
    width: 20%;
    height: 180px;
    font-size: 2.0rem;
    text-align: center;
    color: #98801C;
}

ul.item li img
{
    padding-bottom: 1rem;
}

@media screen and (max-width: 900px)
{
    ul.item li
    {
        width: 30%;
        height: auto;
        padding-top: calc(100% / 20);
        font-size: 1.3rem;
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }
}

/*中段コンテンツ
--------------------------------*/
h2
{
    display: block;
    width: 526.28px;
    height: 49px;
    margin: 0 auto 100px;
    background-image: url(../img/common/h2.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center bottom;
    text-align: center;
    font-size: 2.6rem;
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 600;
    letter-spacing: 0.05em;
}

@media screen and (max-width: 900px)
{
    h2
    {
        width: 80%;
        height: 31px;
        margin: 0 auto 61px;
        font-size: 2.2rem;
    }
}

.middle-cont
{
    margin: 87px 0 20px;
    background-image: url(../img/index/middle01.jpg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center top 100px;
}

@media screen and (max-width: 900px)
{
    .middle-cont
    {
        margin: 69px 0 0;
        background-position: center top 70px;
    }
}

.middle-cont-box
{
    position: relative;
    max-width: 960px;
    height: 325px;
    margin: 0 auto;
}

@media screen and (max-width: 900px)
{
    .middle-cont-box
    {
        height: auto;
    }
}

.middle-cont-box p
{
    display: block;
    width: 55%;
    margin-bottom: 1.5rem;
    font-size: 1.6rem;
    line-height: 1.8;
}

@media screen and (max-width: 900px)
{
    .middle-cont-box p
    {
        width: 100%;
        margin-bottom: 2rem;
        font-size: 1.4rem;
    }
}

.middle-cont-box p.right
{
    float: right;
}

.middle-cont-box p.left
{
    float: left;
}

.middle-cont-box .left-img
{
    position: absolute;
    bottom: 10px;
    left: 28px;
}

@media screen and (max-width: 900px)
{
    .middle-cont-box .left-img
    {
        width: 90px;
        height: 90px;
        top: 0;
        left: 0;
    }
}

.middle-cont-box .right-img
{
    position: absolute;
    top: -68px;
    right: 20px;
}

@media screen and (max-width: 900px)
{
    .middle-cont-box .right-img
    {
        width: 179px;
        height: 179px;
        top: inherit;
        bottom: 0;
        right: 0;
    }
}

@media screen and (max-width: 900px)
{
    .middle-cont-box .mt100
    {
        margin-top: 100px;
    }

    .middle-cont-box .mb179
    {
        margin-bottom: 185px;
    }
}

/*下段コンテンツ
--------------------------------*/

.bottom-back
{
    background: linear-gradient(180deg, #fff 0%, #fff 130px, transparent 130px, transparent 100%), url(../img/common/washi.png);
    box-sizing: border-box;
}

@media screen and (max-width: 900px)
{
    .bottom-back
    {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 75px, #F8F4DD 75px, #F8F4DD 100%);
    }
}

.bottom-back-img
{
    background-image: url(../img/index/bottom01.svg);
    background-repeat: no-repeat;
    background-position: top right;
}

@media screen and (max-width: 900px)
{
    .bottom-back-img
    {
        background-image: url(../img/index/bottom01-sp.png);
        background-position: top left;
    }
}

.pt60
{
    padding-top: 60px;
}



.link-area
{
    display: flex;
    justify-content: space-between;
    margin-top: 43px;
    padding-bottom: 145px;
    box-sizing: border-box;
}

@media screen and (max-width: 900px)
{
    .link-area
    {
        display: block;
        padding-bottom: 50px;
    }
}

.link-area section
{
    flex: 1;
    display: block;
    box-sizing: border-box;
}

.link-area section:first-child
{
    border-right: 1px solid #707070;
    padding-right: 10%;
}

@media screen and (max-width: 900px)
{
    .link-area section:first-child
    {
        position: relative;
        border-right: none;
        border-bottom: 1px solid #707070;
        padding-right: 0;
        padding-bottom: 78px;
    }
}

.link-area section:last-child
{
    padding-left: 10%;
}

@media screen and (max-width: 900px)
{
    .link-area section:last-child
    {
        position: relative;
        padding-left: 0;
        padding-top: 43px;
        padding-bottom: 78px;
    }
}

.link-area section h3
{
    font-size: 3.0rem;
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 600;
    padding-bottom: 3.3rem;
}

@media screen and (max-width: 900px)
{
    .link-area section h3
    {
        font-size: 2.4rem;
        padding-bottom: 2.0rem;
    }
}

.link-area section p
{
    display: block;
    font-size: 1.8rem;
    line-height: 1.5;
    padding-bottom: 1rem;
}

@media screen and (max-width: 900px)
{
    .link-area section p
    {
        font-size: 1.4rem;
        line-height: 1.5;
    }
}

.link-area section a
{
    position: absolute;
    bottom: 300px;
    font-weight: 600;
    font-size: 1.9rem;
    letter-spacing: 0.05em;
    color: #98801C;
}

@media screen and (max-width: 900px)
{
    .link-area section a
    {
        bottom: 43px;
        font-size: 1.6rem;
    }

    .link-area section a img
    {
        width: 44.46px;
    }
}

.link-area section a:hover
{
    opacity: 0.8;
}