/*=================================
	overwrite
===================================*/

.category_outer {
    padding-top: 100px;
}

.category {
    margin-bottom: 0;
    background: #fff;
    margin: auto auto;
    border-radius: 8px;
    overflow: hidden;
}


#tothetop {
    bottom: 30px;
    position: fixed;
    right: 35px;
    z-index: 9;
}

#tothetop a {
    background-color: #fff;
    border: 1px solid #252525;
    border-radius: 50%;
    cursor: pointer;
    display: inline-block;
    height: 60px;
    position: relative;
    width: 60px;
}




#tothetop a::after {
    background-color: #252525;
    content: "";
    height: 11px;
    position: absolute;
    top: 25px;
    width: 1px;
}

#tothetop a::before {
    background-color: #252525;
    content: "";
    height: 11px;
    position: absolute;
    top: 25px;
    width: 1px;
}


#tothetop a::before {
    left: 29px;
    transform: rotate(50deg);
    transform-origin: top;
}

#tothetop a::after {
    left: 28px;
    transform: rotate(-50deg);
    transform-origin: top;
}

#tothetop a::after, #tothetop a::before {
    text-decoration: inherit;
    vertical-align: inherit;
}

#tothetop a::after, #tothetop a::before {
    background-repeat: no-repeat;
    box-sizing: inherit;
}


@media print,
screen and (max-width: 768px) {

    .category_outer {
        padding-top: 45px;
    }

    .category {
        width: 95%;
    }

    .category .makerLogo img.logo.pc {
        display: none;
    }

    .category .makerLogo img.logo.mob {
        width: 80%;
        max-width: 390px;
        margin: auto auto 15px;
        display: block;
    }


    .category .attention.secondary {
        width: 86%;
        padding: 1em 3% 0;
    }

    .category .attention.secondary p {
        margin-left: 0;
        margin-bottom: 1em;
    }

}



@media screen and (max-width: 640px) {
    #tothetop {
        bottom: 10px;
        right: 15px;
    }

    #tothetop a {
        height: 40px;
        width: 40px;
    }

    #tothetop a:before {
        height: 9px;
        left: 19px;
        top: 15px;
    }

    #tothetop a:after {
        height: 9px;
        left: 18px;
        top: 15px;
    }
}




/*=======================
	// grand-header 
=====================*/

#grand-header {
    height: 40px;
    margin-bottom: 0;
    background-color: #3c3c41;
    display: flex;
    justify-content: center;
    align-items: center;
}

#grand-header a {
    width: 92px;
}

#grand-header a img {
    width: 100%;
}

@media print, screen and (min-width: 1000px) {

    #grand-header {
        height: 60px;
    }

    #grand-header a {
        width: 132px;
    }

}


/*===================
	// font
=====================*/

.mark.notice {
    font-size: 1.2rem;
}

/* .zen-kaku-gothic-antique-regular {
    font-family: "Zen Kaku Gothic Antique", serif;
    font-weight: 400;
    font-style: normal;
} */


.noto-sans-jp {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
}

.noto-sans-jp.fw400 {
    font-weight: 400;
}

.noto-sans-jp.fw500 {
    font-weight: 500;
}


.noto-sans-jp.fw600 {
    font-weight: 600;
}


.noto-sans-jp.fw700 {
    font-weight: 700;
}


.noto-sans-jp.fw800 {
    font-weight: 800;
}


.noto-sans-jp.fw900 {
    font-weight: 900;
}


.kosugi-maru-regular {
    font-family: "Kosugi Maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}





/*===================
color
=====================*/

.orange {
    color: #cc8846;
}

.orange2 {
    color: #ff6224;
}

.brown {
    color: #714b34;
}


.brown2 {
    color: #976140;
}



/*===================
	// .link
=====================*/

.link ul {
    display: block;
    width: 100%;
    padding: 20px 0;
}


.link a {
    color: #fff;
    background: #c95a9c;
    letter-spacing: 1.5px;
    border-radius: 5px;
    text-shadow: 1px 1px 1px #720446;
}




/*===================
	// arrow
=====================*/

.arrow {
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid #fff;
    display: inline-block;
    margin-right: 8px;
    vertical-align: middle;
}


.arrow.pink {
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid #f48089;
    display: inline-block;
    margin-right: 8px;
    vertical-align: middle;
}



/*==================
article
======================*/

article {
    /* padding-top: 100px; */
    margin-bottom: 30px;
}

@media screen and (max-width: 900px) {

    article {
        /* padding-top: 60px; */
        margin-bottom: 60px;

    }

}


/*==================
	// id #title
======================*/


#title {
    background: url(../img/bg_1920.jpg)no-repeat top center;
    position: relative;
}

#title .bg_1 {
    margin: auto;
    background: url(../img/bg_inst.png) no-repeat center top;
}

#title .inside {
    margin: auto;
    padding-bottom: 15px;
    position: relative;
}

#title .link-to-top {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
}

#title .inside .link-to-top a {
    font-size: 1.3rem;
    color: #fff;
    background: #ff5430;
    padding: .5em 1em .25em;
    display: inline-block;
}


#h1_pc {
    width: 95%;
    max-width: 1060px;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

#h1_mob {
    display: none;
}

#title .date-time span {
    width: 80%;
    max-width: 400px;
    margin: auto;
    display: inline-block;
    color: #fff;
    background-color: #714b34;
}


#title h1 img {
    width: 100%;
}


#title .catch {

    background: linear-gradient(to right, transparent 0, #ffec4c 50%, transparent 100%);
    background: linear-gradient(to right, transparent 0, #ffec4c 30%, #ffec4c 50%, #ffec4c 70%, transparent 100%);
    text-shadow: 0 0 10px #fff;
}

#title .lead .time {
    font-weight: normal;
    font-size: 1.5rem;
    display: block;
    padding-top: 5px;
}

#title .lead .break1 {
    display: none;
}

#title .tax {
    text-align: right;
    font-size: 1.2rem;
    margin-bottom: 0em;
}


/* // class .title_notice */
.title_notice {
    width: 60%;
    margin: auto auto 60px;
    padding-bottom: 30px;
    background: #fff8e9;
    overflow: hidden;
    border-radius: 8px;
}


.title_notice .tel_link {
    font-size: 2.4rem;
}

/* .title_notice .link.block a {
    width: 60%;
} */

.title_notice h4 {
    color: #fff;
    font-weight: normal;
    padding: 30px 0 26px;
    background: #563b2e url(../img/bg_dot_2.png) repeat;
}

.title_notice #icon_reserve {
    width: 50%;
    margin: auto;
    padding: 0 0 5px;
}

.title_notice p small {
    font-size: 1.3rem;
}

.title_notice p .place {
    font-size: 2.0rem;
}

#title .lead_sub .time {
    margin-top: 15px;
}

#title .lead_sub .time span {
    font-size: 2.0rem;
    color: #714b34;
    padding: 3px 60px 2px;
    border-top: #714b34 thin solid;
    border-bottom: #714b34 thin solid;
}




@media screen and (max-width: 1400px) {
    #title .bg_1 {
        margin: auto;
        max-width: 1400px;
        background: url(../img/bg_inst.png) no-repeat center top;
        background-size: contain;
    }

}

@media screen and (max-width: 1280px) {

    #title #h1_pc {
        width: 72%;
        max-width: 72%;
    }

    #title .lead .break1 {
        display: block;
    }

    .title_notice {
        width: 80%;
    }
}



@media screen and (min-width:901px) and (max-width: 1024px) {

    #title .lead_sub {
        padding: 15px 0;
        background: rgba(255, 255, 255, 0.8);
        border-radius: 5px;
    }

}



@media print,
screen and (max-width: 900px) {

    #title {
        background: url(../img/bg_mob.jpg)no-repeat top center;
        background-size: contain;
    }

    #title .bg_1 {
        background: none;
    }


    #title .inside {
        width: 100%;
        margin-top: 0;
        margin-bottom: 0;
        padding-top: 0;

    }


    #h1_pc {
        display: none;
    }

    #h1_mob {
        display: block;
    }

    #title h1 {
        width: 100%;
        max-width: 100%;
    }

    .title_notice {
        width: 90%;
        margin: auto auto 45px;
    }


    /* 
    .title_notice .link.block a {
        width: 80%;
    }

    .link ul {
        padding: 0;
    } */

    .title_notice .tel_link a {
        color: #000;
    }

    /* .link a {
        font-size: 16px;
        padding: 5px 15px;
    } */

}



@media screen and (min-width: 1920px) {
    #title {
        background: url(../img/bg_1920.jpg)no-repeat top center;
        background-size: contain;
        /* border: #f00 10px solid; */
    }
}


/*=================================
	// id #title_nav
===================================*/

#title_nav {
    width: 95%;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
}

#title_nav ul {
    flex-wrap: wrap;
    justify-content: flex-start;
    padding-bottom: 30px;
}

#title_nav li {
    width: 48%;
    margin-left: 1%;
    margin-right: 1%;
    margin-bottom: 10px;
    height: 70px;
}

#title_nav a {
    width: 100%;
    height: 100%;
    text-align: center;
    position: relative;
    color: #fff;
    background: #c95a9c;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    text-shadow: 1px 1px 2px #720446;
}




@media screen and (min-width: 1000px) {

    #title_nav li {
        width: 18%;
        height: 100px;
        margin: 0 1% 15px;
    }



}


/*=================================
	// class .contents
===================================*/

.contents {
    background: #563b2e url(../img/bg_dot.png) repeat;
}

.contents img {
    width: 100%;
}

.contents .lv_02 {
    width: 98%;
    margin: auto;
}

.contents .tax {
    width: 98%;
    max-width: 1260px;
    margin: auto auto 2em;
    font-size: 1.2rem;
    text-align: right;
}

.contents h2 {
    width: 100%;
    height: 100px;
    color: #fff;
    font-weight: normal;
    text-align: center;
    border-bottom: none;
    background: #714b34;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: repeating-linear-gradient(90deg, #c89153, #c89153 10px, #cd9658 10px, #cd9658 20px);
}


#wakeari h2 {
    background: #c1243a;
    background-image: repeating-linear-gradient(90deg, #c1243a, #c1243a 10px, #c7384c 10px, #c7384c 20px);
}

.contents h2 small {
    font-size: 2.8rem;
    display: block;
}

.contents .sub_category {
    padding-top: 40px;
}

.contents h3 span {
    display: block;
}

.contents h3 .jp {
    font-size: 2.0rem;
}

.contents h3 span.sub {
    font-size: 1.8rem;
    display: block;
}

.contents .lead {
    color: #714b34;
}


.contents .lead .tax {
    font-size: 1.2rem;
    text-align: right;
}

.link-lineup a {
    width: 50%;
    margin: auto auto 3em;
    padding: 1.5em 0;
    text-align: center;
    color: #fff;
    font-size: 1.6rem;
    background: #ff5430;
    display: block;
}


@media screen and (min-width: 640px) {

    .contents h2 {
        height: 200px;
    }

}

@media screen and (min-width: 1000px) {




    .contents .lv_02 {
        width: 90%;
        margin: auto;
    }

}





/* ////////////////// individual ////////////////////// */


#special .icon {
    width: 24px;
    height: auto;
    margin-bottom: 3px;
}











/*====================================================
	.member
====================================================*/

.member h2 {
    line-height: 1.3;
}

.member .inside {
    width: 90%;
    width: 85%;
    margin: auto auto;
}

.member .txt {
    width: 100%;
    margin-right: 1%;
}

.member figure {
    width: 90%;
    margin: auto;
    text-align: center;
    /* border: #f00 thin solid; */
}

.member figure img {
    width: 100%;
    /* border: #f00 thin solid; */
}


.member .catch {
    color: #9b7c25;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 1em;
}

.member .free {
    color: #c00;
}

.member p {
    margin-bottom: 2em;
}

.member .link a:hover {
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
}

.member .indent {
    color: #cc8846;
}


.member dt .icon {
    color: #fff;
    background: #cc8846;
    padding: 5px 10px;
    border-radius: 2px;

}

@media screen and (min-width: 1000px) {

    .member .txt {
        width: 69%;
        margin-right: 1%;
    }

    .member figure {
        width: 30%;
        text-align: right;
    }

    .member figure img {
        width: 100%;
    }



}

/*====================================================
	advance_notice
=====================================================*/

.advance_notice {
    font-size: 1.4rem;
    text-align: center;
    background: #fff;
    padding: 10em 0 10em;
}

.advance_notice p {
    margin-bottom: 1em;
}

.advance_notice a {
    display: block;
    margin-bottom: 1em;
}


.advance_notice .shoplogo {
    width: 20%;
    max-width: 250px;
    margin: auto;
}

@media print,
screen and (max-width: 768px) {

    .advance_notice .shoplogo {
        width: 50%;
        max-width: 50%;
        margin: auto;
    }

}



/*=====================
	// #access
=======================*/


#access h3 {
    border-top: #cc8846 thin solid;
    border-bottom: #cc8846 thin solid;
}


#access iframe {
    width: 100%;
    height: 360px;
}



@media screen and (min-width: 1000px) {


    #access iframe {
        height: 600px;
    }

}