/*====================================================
	overwrite
====================================================*/


.tax {
    width: 95%;
    margin: auto auto 1em;
    font-size: 1.2rem;
    text-align: right;
}

a {
    transition: .2s linear;
    -webkit-transition: .2s linear;
    -moz-transition: .2s linear;
    -o-transition: .2s linear;
    -ms-transition: .2s linear;
}

a:hover {
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
}

a i {
    width: 6px;
    margin-right: 8px;
    display: inline-block;
    vertical-align: top;
}

.spec dt {
    margin-bottom: .5em !important;
    padding: .6em 0 .5em;
    border-bottom: #c1874d thin solid;
    line-height: 1.3;
}

.spec dt .name-kana {
    font-size: 1.4rem;
    font-weight: normal;
}

.spec .period {
    font-size: 1.4rem;
    font-weight: normal;
}

.spec-price-inner dt {
    font-size: 1.2rem !important;
    font-weight: normal !important;
    color: #fff;
    margin-bottom: 0 !important;
    padding: .15em 1em .1em;
    background: #1a738f;
    display: inline-block;
    border-radius: .5em;
}

.spec-price-inner dd {
    margin-left: 1em;
    margin-bottom: 1em;
}

.spec dd s {
    font-size: 1.6rem;
    font-weight: normal !important;
}

.spec dd .red_price {
    color: #c00;
    font-size: 2.0rem;
}

.spec dd.copy {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    flex-wrap: wrap;
}




.read_more {
    margin-bottom: 2em;
}

.read_more li {
    width: 70%;
    margin: auto;
    padding: .2em 0;
    color: #fff;
    background: #3156a1;
    text-align: center;
    border-radius: 2em;
}


@media print,
screen and (min-width: 1024px) {

    /* ///////// pc /////////// */
    .spec dd.copy .txtbox {
        width: 70%;
        margin: auto 5% auto auto;
    }

    .spec dd.copy figure {
        width: 25%;
    }
}


@media screen and (min-width: 641px) and (max-width: 1023px) {

    /* //////////////////// mobile ///////////////////// */
    .spec dd.copy .txtbox {
        width: 82.5%;
        margin: auto 2.5% auto auto;
    }

    .spec dd.copy figure {
        width: 15%;
    }
}



@media screen and (max-width: 768px) {

    .spec dt {
        margin-bottom: 0 !important;
    }

    .spec dd.copy .txtbox {
        width: 70%;
        margin: auto 5% auto auto;
    }

    .spec dd.copy figure {
        width: 25%;
    }
}



/*====================================================
	common
====================================================*/

.whitebox {
    font-size: 1.6rem;
    margin-bottom: 1em;
    padding: 3em 1em 0;
    background: #fff;
    overflow: hidden;
}

.toSR-TOP .linkbtn {
    width: 70%;
    margin: auto auto 50px;
    font-size: 1.6rem;
}

.toSR-TOP .link-lineup a {
    padding: 15px 0;
    /*    background:#083388;*/
    background: #3156a1;
    border-radius: 3em;
    /* border: #f00 thin solid; */
}

.linkbtn li a {
    margin: auto auto 1.5em;
    padding: 30px 1em;
    color: #fff;
    background: #b68d3c;
    /* background: linear-gradient(to bottom, #9b7323 0, #b68d3c 50%, #b68d3c 100%); */
    display: block;
    text-align: center;
    border-radius: 2em;

}

.link-selection {
    width: 60%;
    margin: auto auto 60px;
    padding: 15px 0 1px;
    /* color: #b68d3c; */
    color: #666;
    background: #efe8db;
    /* background: #eaf3dd; */
    text-align: center;
    border-radius: 5px;
    line-height: 1.3;
}

.link-selection p {
    font-size: 1.6rem;
}

.link-selection a {
    margin: auto;
    color: #fff;
    font-size: 1.6rem;
    display: block;
    text-align: center;
    padding: .5em 1em;
    border-radius: 2em;
    /*    background: #083388;*/
    background: #3156a1;
    /*    box-shadow: 0 0.3em 0.3em 0 #aaa;*/
}


@media screen and (min-width: 769px) {
    .link-selection a {
        width: 60%;
    }
}

@media screen and (max-width: 768px) {

    .link-selection {
        width: 90%;
        font-size: 1.3rem;
    }

    .toSR-TOP .linkbtn {
        width: 95%;
        margin: 0 auto;
    }

    .linkbtn li a {
        border-radius: 3em;
    }



}


@media screen and (max-width: 640px) {
    .whitebox {
        padding: 1em 1em 0;
    }
}



/*====================================================
	font
====================================================*/

.wf-sawarabimincho {
    font-family: "Sawarabi Mincho";
}


.red {
    color: #9e0905;
}

.red_02 {
    color: #f00;
}

.endtxt {
    color: #f00;
}

.gray {
    color: #999;
}

.light_green {
    color: #a4cec6;
}

.green {
    color: #5faa9c;
}

.pink {
    color: #ff4d4d;
}


img.arrow {
    /*    width: 1em;*/
    width: 20px;
    height: 20px;
    vertical-align: text-top;
}


/*====================================================
	header
====================================================*/

header {
    font-size: 1.4rem;
    background: #fff;
    /*    border-bottom: #e2e2e2 thin solid;*/
}

header .header-inner {
    position: relative;
}

header .header-inner .link-to-top {
    position: absolute;
    top: 2%;
    right: 0;
}

header .header-inner .link-to-top a {
    font-size: 1.2rem;
    color: #fff;
    background: #c1874d;
    padding: .25em 2em;
    border-radius: 0 0 .5em .5em;
    transition: .2s linear;
    -webkit-transition: .2s linear;
    -moz-transition: .2s linear;
    -o-transition: .2s linear;
    -ms-transition: .2s linear;
}

@media print,
screen and (min-width: 1024px) {
    header .header-inner {
        width: 95%;
        max-width: 1080px;
        margin: auto;
        padding: 1em 0;
    }

    header .logo {
        width: 365px;
    }
}

@media screen and (max-width: 1023px) {
    header .header-inner {
        padding: .5em .5em;
    }

    header .header-inner img.logo {
        width: 60%;
    }

    header .header-inner .link-to-top {
        position: absolute;
        top: .75em;
    }

    header .header-inner .link-to-top {
        width: 35%;
    }

    header .header-inner .link-to-top a {
        font-size: 1.2rem;
        text-align: center;
        margin-right: 1%;
        padding: .25em .5em;
        border-radius: 2em;
        display: block;
    }
}




/*====================================================
article 
====================================================*/

article {
    margin: auto;
    position: relative;
    font-size: 1.4rem;
    font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";

}

article img {
    width: 100%;
}

a.red {
    color: #a20000;
}

a.red:hover {
    color: #f46060;
}

a.line {
    text-decoration: underline;
}

/*====================================================
	// class .contents
====================================================*/

.contents {
    /* background: #999; */
}

.contents_texture {
    padding-bottom: 60px;
}

.contents .lv_02 {
    width: 95%;
    max-width: 1260px;
    margin: auto;
    padding-top: 20px;
}



@media screen and (max-width: 1023px) {
    .pages .contents_texture {
        padding-top: 100px;
    }
}



@media screen and (max-width: 900px) {
    .contents .lv_02 {
        width: 95%;
        margin: auto;
        padding-top: 10px;
    }

    .pages .contents_texture {
        padding-top: 120px;
    }

}


@media screen and (max-width: 768px) {
    .contents .lv_02 {
        /* width: 95%; */
        width: 90%;
        margin: auto;
    }

    .pages .contents_texture {
        padding: 70px 0;
    }

}



/*====================================================
	//ID .category
====================================================*/

.category {
    margin-bottom: 3em;
    padding-bottom: 1em;
    background: #fff;
    overflow: hidden;
}

.category_lead {
    width: 80%;
    color: #666;
    margin: auto auto;
    text-align: center;
}

.category_lead p {
    font-size: 1.6rem;
    line-height: 1.8;
}

.category p.item-notice {
    font-size: 1.3rem;
    width: 95%;
    margin: auto;
}

.category h2 {
    color: #fff;
    font-size: 3.4rem;
    font-weight: normal;
    font-family: "Sawarabi Mincho";
    text-align: center;
    margin: auto auto 1em;
    /* background: #8771a3; */
    /* background: #766191; */
    background: #6e4f96;
    /**/
    /* background: linear-gradient(to bottom, #573b7c 0, #6e4f96 50%, #6e4f96 100%); */
    /* background: linear-gradient(to bottom, #573b7c, #6e4f96); */
}


.category h2 .break1 {
    margin-left: 10px;
}

.category h2 small {
    font-size: 2.6rem;
}

.category h2 .bg_h2 {
    width: auto;
    margin: auto;
    padding: 1em 0 1em;
    /* background: url(../img/bg_headings.png) repeat top center; */
    display: block;
}

.category h2 .bg_h2.line1 {
    padding: 1.25em 0;
}

.category h2 .bg_h2.line2 {
    padding: 30px 0;
}



/* .category h3 {
    width: 91%;
    width: 60%;
    margin: auto auto 30px;
    padding-bottom: 10px;
    color: #b68d3c;
    font-size: 3.0rem;
    font-weight: normal;
    font-family: "Sawarabi Mincho";
    text-align: center;
    border-bottom: #b68d3c thin solid;
} */


/* ////////////////////// */

.demo {
    width: 500px;
    margin: 0 auto;
    padding: 10px 0;
    font-family: "Sawarabi Mincho";
    font-size: 3.0rem;
    color: #b68d3c;
}

.heading {
    margin: 10px 0
}

.demo3 .heading {
    color: #b68d3c;
    text-align: center;
    overflow: hidden;
    font-weight: normal;
}

.demo3 .heading span {
    display: inline-block;
    position: relative;
}

.demo3 .heading span:before,
.demo3 .heading span:after {
    content: "";
    border-bottom: 1px solid #b68d3c;
    /* width: 45px; */
    width: 160px;
    margin: 0 15px;
    position: absolute;
    bottom: 20px;
}

.demo3 .heading span:before {
    right: 100%;
}

.demo3 .heading span:after {
    left: 100%;
}

@media print,
screen and (max-width: 768px) {

    .demo {
        width: 300px;
        margin: 0 auto;
        padding: 10px 0;
        font-size: 2.0rem;
        color: #b68d3c;
    }


    .demo3 .heading span:before,
    .demo3 .heading span:after {
        content: "";
        border-bottom: 1px solid #b68d3c;
        width: 45px;
        /* width: 160px; */
        margin: 0 15px;
        position: absolute;
        bottom: 20px;
    }


    /* #old_bunsu .demo {
        width: 400px;
        margin: 0 auto;
        padding: 10px 0;
        font-size: 2.0rem;
        color: #b68d3c;
    } */



    #old_bunsu .demo3 .heading span:before,
    #old_bunsu .demo3 .heading span:after {
        content: "";
        border-bottom: 1px solid #b68d3c;
        margin: 0 15px;
        position: absolute;
        bottom: 40px;
    }


}










/* ////////////////////// */


.category .leadtxt p {
    width: 90%;
    margin: auto auto;
    padding: 1em 0;
    font-size: 1.8rem;
    line-height: 1.8;
    text-align: center;
}

.link-lineup li {
    width: 80%;
    text-align: center;
    margin: auto auto 4em;
}

.link-lineup a {
    color: #fff;
    font-size: 1.6rem;
    background: #3d62ac;
    padding: .5em 1.5em;
    border-radius: 2em;
    display: block;
}

.link-lineup a:hover {
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
}







@media screen and (max-width: 900px) {
    .category h2 {
        font-size: 2.6rem;
        margin-bottom: .75em;
    }

    .category h2 .break1 {
        margin-left: 0;
        display: block;
    }

    .category_lead {
        width: 100%;
    }

    .category_lead p {
        font-size: 1.5rem;
        line-height: 1.8;
        margin-bottom: 2em;
    }
}



@media screen and (max-width: 768px) {

    .category h2 {
        font-size: 2.4rem;
        margin-bottom: .75em;
    }

    .category .leadtxt p {
        width: 90%;
        margin: auto auto 0;
        font-size: 1.5rem;
        line-height: 1.6;
        text-align: center;
    }


    .category h2 small {
        font-size: 1.8rem;
    }







    .link-lineup li {
        margin: auto auto 1em;
    }

    .category_lead {
        width: 90%;
        margin: auto;
    }
}




@media screen and (max-width: 320px) {
    .category .leadtxt {
        font-size: 1.4rem;
    }

}

/*====================================================
	// NOTE  h3 design 
====================================================*/

/*
.category h3:not(span) {
    margin: auto auto .75em;
    padding: .5em 0 .5em;
    font-size: 4.0rem;
    font-weight: normal;
    text-align: center;
}
*/


@media screen and (max-width: 768px) {
    .category h3 {
        font-size: 2.6rem !important;
        margin: 0 auto .75em;
    }
}



/*====================================================
	// id special
====================================================*/

#special h2 {
    color: #a13e92;
}

#special h3 {
    color: #a13e92;
    border-top: #deacd7 thin solid;
    border-bottom: #deacd7 thin solid;
    padding: .5em 0;
}

@media print,
screen and (min-width: 769px) {
    #special h3 {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
}



/*====================================================
	// id #event / #goods
====================================================*/

#goods {
    padding: 1em 2.5% 3em;
    font-size: 1.6rem;
    background: #fff;
    margin-bottom: 2em;
    overflow: hidden;
}

#goods h3 {
    font-size: 3.0rem;
    color: #662600;
    text-align: center;
    border-bottom: #662600 thin solid;
    margin-bottom: .5em;
    padding: 1em 0 .5em;
}

#goods .txt_off {
    width: 50%;
    margin: auto auto 1em;
}

#goods .lead {
    margin-bottom: 1.5em;
    text-align: center;
}

#goods .lead p {
    font-size: 1.8rem;
    font-weight: bold;
}

#goods .inside {
    width: 95%;
    margin: auto auto 1em;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
}

#goods .first_size {
    color: #f00;
    font-size: 2.8rem;
    margin-bottom: 0;
}

#goods .item {
    width: 24%;
}

#goods figure {
    margin-bottom: 1em;
}

#goods dt {
    font-weight: bold;
    margin-bottom: .5em;
}

#goods dd {
    margin-bottom: .5em;
}


#goods dd.price li {
    margin-left: 5px;
    color: #000;
    font-weight: normal;
    /* border:#f00 thin solid; */
}

#goods dd.copy {
    font-size: 1.4rem;
}

#goods .icon {
    margin-bottom: 5px;
    padding: .2em 1em 0;
    font-size: 1.2rem;
    color: #333;
    background: #f0e7c2;
    border-radius: .2em;
    display: inline-block;
}

#goods .price {
    color: #f00;
    font-weight: bold;
}

#goods small {
    font-size: 1.2rem;
    font-weight: normal;
    /* display: block; */
}


#goods .more {
    width: 80%;
    margin: auto auto 30px;
    text-align: center;
}

#goods .more p {
    font-size: 1.8rem;
    line-height: 1.6;
    /* color: #ff4d4d; */
    color: #9b3c83;
    margin-bottom: 0;
}


#goods .score {
    width: 80%;
    margin: auto;
    padding: 20px 5% 10px;
    border: #ff4d4d thin dotted;
    /**/
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
}


#goods .score .break1 {
    display: block;
}

#goods .score .txtbox {
    width: 65%;
}

#goods .score figure {
    width: 31%;
    max-width: 290px;
}

#goods .score h5 {
    font-size: 1.8rem;
    color: #ff4d4d;
}

#goods .score h5 span {
    display: inline-block;
}


#goods .score h5 .item {
    font-size: 3.0rem;
    /* border: #f00 thin solid; */
}

#goods .score h5 .msc {
    font-size: 2.0rem;
    color: #fff;
    background: #ff4d4d;
    border-radius: 2em;
    vertical-align: top;
    padding: 0 30px;
    margin-top: 5px;
}

#goods .score h5 .item {
    width: auto;
}

#goods h5 .off {
    font-size: 3.0rem;
}

#goods .score p {
    font-size: 1.6rem;
}



@media screen and (max-width: 1279px) {

    #goods .score .break1 {
        display: none;
    }

}

@media print,
screen and (max-width: 1024px) {
    #goods {
        width: 94%;
        margin: auto auto 3em;
        padding: 1em 2% 30px;
    }

    #goods h3 {
        padding: 0 0 .25em;
    }

    #goods .lead p {
        font-size: 1.4rem;
        margin-bottom: 2em;
    }

    #goods .inside {
        display: block;
    }

    #goods p.first_size {
        font-size: 2.0rem;
        margin-bottom: 0;
    }

    #goods .item {
        width: 100%;
        margin-bottom: 1em;
        border-bottom: #ddd thin dotted;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between;
    }

    #goods figure {
        width: 20%;
        margin-bottom: 0;
    }

    #goods .txtbox {
        width: 78%;
    }

    #goods .more {
        width: 80%;
        margin-bottom: 2em;
        padding: 30px 8% 10px;
    }

    #goods .more p {
        font-size: 1.5rem;
        text-align: center;
    }

    #goods .score h5 .item {
        border: none;
    }

}



@media print,
screen and (max-width: 900px) {


    #goods .score {
        display: block;
    }

    #goods .score .txtbox {
        width: 100%;
    }

    #goods .score figure {
        width: 50%;
        max-width: 50%;
        margin: auto;
    }

}



@media print,
screen and (max-width: 768px) {
    #goods h3 {
        font-size: 2.6rem;
    }

    #goods .inside {
        width: 95%;
        margin-left: auto;
        margin-right: auto;
    }

    #goods figure {
        width: 30%;
        margin-bottom: 0;
    }

    #goods .txtbox {
        width: 68%;
    }

    #goods .txt_off {
        width: 90%;
        margin-bottom: .5em !important;
    }

    #goods dt {
        font-size: 1.4rem;
    }


    #goods .score h5 {
        font-size: 2.0rem;
        color: #ff4d4d;
    }

    #goods .score h5 span {
        display: inline-block;
    }

    #goods .score h5 .msc {
        font-size: 1.6rem;
        margin-top: 10px;
    }

    #goods .score h5 .item {
        width: auto;
        margin-bottom: 0;
    }

    #goods h5 .off {
        font-size: 3.0rem;
    }

    #goods .score p {
        font-size: 1.4rem;
    }


}



@media screen and (max-width: 320px) {
    #goods h3 {
        font-size: 2.0rem;
    }

    #goods .more p {
        font-size: 1.4rem;
    }

}

/*====================================================
	#msc
====================================================*/

#msc {
    background: #fff;
    font-size: 1.6rem;
    overflow: hidden;
    /**/

    width: 95%;
    max-width: 1260px;
    margin: auto auto 60px;
}


#msc h2 {
    background: #b68d3c;
}

#msc.category h2 .bg_h2.line1 {
    /* padding: 1.25em 0; */
    padding: 15px 0;
    line-height: 1.3;
}




#msc h2 small {
    font-size: 2.0rem;
}

#msc .br_se {
    display: none;
}

#msc h3 {
    text-align: center;
    color: #fff;
    background: #b68d3c;
    padding: 1em 1em .5em;
}


#msc h3 img {
    width: 50%;
}

#msc .inside {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content：space-between;
    padding: 0 5% 0;
}

#msc .txt {
    width: 69%;
    margin-right: 1%;
}

#msc figure {
    width: 30%;
    text-align: right;
}

#msc figure img {
    width: 100%;
    max-width: 290px;
}


#msc .catch {
    color: #9b7c25;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 1em;
}

#msc .free {
    color: #c00;
}

#msc .link a {
    color: #fff;
    background: #9D4753;
    margin-bottom: 1em;
    padding: .25em 1em;
    border-radius: 2em;
}


#msc .link a {
    margin: auto auto 1.5em;
    padding: 10px 15px;
    color: #fff;
    background: #c79c47;
    background: #b68d3c;
    display: inline-block;
    border-radius: 2em;
}


#msc p {
    margin-bottom: 2em;
}

#msc .link a:hover {
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
}



@media screen and (max-width: 1023px) {

    #msc h3 {
        padding: 2em 0 1em;
    }

    #msc h3 img {
        width: 80%;
    }

    #msc .link a {
        width: 60%;
        margin-left: auto;
        margin-right: auto;
        padding: 1em 1em;
        text-align: center;
        display: block;
    }

    #msc figure {
        width: 50%;
        margin: auto;
        text-align: center;
    }

    #msc .txt {
        width: auto;
        margin: 0 0 2em;
    }




}


@media screen and (max-width: 768px) {


    #msc {
        width: 90%;
    }

    #msc .inside {
        padding: 2em 5% 30px;
    }

    #msc h3 img {
        width: 95%;
    }

    #msc .link a {
        width: 90%;
        border-radius: 3em;
    }

}



@media screen and (max-width: 320px) {
    #msc .link a {
        width: 80% !important;
        border-radius: 5em !important;
    }

    #msc .br_se {
        display: block;
    }

}