/*=======================
	// 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%;
}

.header.miyajiHeader {
    display: none;
}

@media print, screen and (min-width: 1000px) {

    #grand-header {
        height: 60px;
    }

    #grand-header a {
        width: 132px;
    }

}



/*====================================================
	overwrite
====================================================*/


em {
    font-style: normal;
}


a i {
    width: 6px;
    margin-right: 8px;
    display: inline-block;
    vertical-align: middle;
}

.spec dt {
    margin-bottom: .5em !important;
    padding: .6em 0 .5em;
    /* border-bottom: #b39b75 thin solid; */
    border-bottom: #b49666 thin solid;
}

.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) {

    .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%;
    }
}





/*=======================
	// font-family
=====================*/

/*
// <weight>: Use a value from 200 to 900
// <uniquifier>: Use a unique and descriptive class name
.noto-serif-jp-<uniquifier> {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
  */
.noto-serif-jp {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-style: normal;
}


.noto-serif-jp.fw200 {
    font-weight: 200;
    /* border: #f00 thin solid; */
}

.noto-serif-jp.fw300 {
    font-weight: 300;
}

.noto-serif-jp.fw400 {
    font-weight: 400;
}

.noto-serif-jp.fw500 {
    font-weight: 500;
}

.noto-serif-jp.fw600 {
    font-weight: 600;
}

.noto-serif-jp.fw700 {
    font-weight: 700;
}

.noto-serif-jp.fw800 {
    font-weight: 800;
}


/*

.eb-garamond-<uniquifier> {
  font-family: "EB Garamond", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

*/

.eb-garamond {
    font-family: "EB Garamond", serif;
    font-optical-sizing: auto;
    /* font-weight: <weight>; */
    font-style: normal;
}

.eb-garamond.fw400 {
    font-weight: 400;
}

.eb-garamond.fw500 {
    font-weight: 500;
}

.eb-garamond.fw600 {
    font-weight: 600;
}

.eb-garamond.fw700 {
    font-weight: 700;
}

.eb-garamond.fw800 {
    font-weight: 800;
}



/*====================================================
	common
====================================================*/

/* .toSR-TOP .linkbtn {
    width: 70%;
    margin: auto auto 50px;
}

.toSR-TOP .link-lineup a {
    padding: 1em;
    background: #3156a1;
} */

.linkbtn li a {
    margin: auto auto 1.5em;
    padding: 20px 1em;
    color: #fff;
    background: #b39b75;
    display: block;
    text-align: center;
    border-radius: 2em;

}

.link-selection a {
    margin: auto;
    color: #fff;
    font-size: 1.6rem;
    display: block;
    text-align: center;
    padding: .5em 1em;
    border-radius: 2em;
    background: #3156a1;
}


@media screen and (min-width: 769px) {
    .link-selection a {
        width: 60%;
    }
}

@media screen and (max-width: 768px) {

    .whitebox {
        padding: 21px 0em 0;
    }

    /* 
    .toSR-TOP .linkbtn {
        width: 95%;
        margin: 0 auto;
    } */

    .linkbtn li a {
        border-radius: 3em;
        padding: 15px 0em;
    }



}


@media screen and (max-width: 640px) {
    .whitebox {
        padding: 1em 1em 0;
    }
}



/*====================================================
	color settings
====================================================*/

/* text */

.red {
    color: #9e0905;
}

.red_02 {
    color: #f00;
}

.endtxt {
    color: #f00;
}

.gray {
    color: #999;
}

.text-purple {
    color: #4f267b;
}


/*  //////// background //////// */

.bg-purple {
    background-color: #4f267b;
}

.bg-purple2 {
    /* background-color: #e4d8f1; */
    background-color: #f3ecfc;
}



.bg-gold {
    background-color: #c6ad86;
}

.bg-gold2 {
    background-color: #e4d8c5;
}


.bg-ccc {
    background-color: #ccc;
}

.bg-ddd {
    background-color: #ddd;
}

.bg-eee {
    background-color: #eee;
}


/* border */

.border-555 {
    border: #555 thin solid;
}


.border-top-555 {
    border-top: #555 thin solid;
}

.border-bottom-555 {
    border-bottom: #555 thin solid;
}

.border-top-purple {
    border-top: #4f267b thin solid;
}

.border-bottom-purple {
    border-bottom: #4f267b thin solid;
}



/* shadow */

.shadow {
    box-shadow: 0 3px 5px 0 #999;
}

i.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;
}


i.arrow.gold {
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid #b39b75;
    display: inline-block;
    margin-right: 8px;
    vertical-align: middle;
}



/*====================================================
	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;
}

@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 {
    position: relative;
    font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";
    /* background: linear-gradient(to right bottom, #96c7fe, #c4bafe); */

    /* background: linear-gradient(to right bottom, #2c64a5 0, #96c7fe 5%, #c4bafe 100%); */
    background: linear-gradient(to right bottom, #2c64a5 0px, #96c7fe 5%, #c4bafe 95%, #3e2d9c 100%);

    background-size: contain;
    color: #333;
}


a.red {
    color: #a20000;
}

a.red:hover {
    color: #f46060;
}

a.line {
    text-decoration: underline;
}

article .lv-02 {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
}

@media screen and (min-width: 1000px) {

    /* article {
        padding-top: 100px;
        border: #f00 thin solid;
    } */

    article .lv-02 {
        width: 95%;
    }


}


/*====================================================
	// class .contents
====================================================*/



.contents_texture {
    padding-bottom: 60px;
}



@media screen and (max-width: 1023px) {
    .pages .contents_texture {
        padding-top: 100px;
    }
}



@media screen and (max-width: 900px) {

    .pages .contents_texture {
        padding-top: 120px;
    }

}


@media screen and (max-width: 768px) {

    .pages .contents_texture {
        padding: 70px 0;
    }

}



/*====================================================
	//ID .category
====================================================*/

.category {
    background: #fff;
    overflow: hidden;
}

.category h2 {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    height: 110px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
    background-color: #4f267b;
    line-height: 1.1;
    /**/
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: 400;
}


@media screen and (min-width: 1000px) {

    .category h2 {
        height: 200px;
    }
}

/*====================================================
	// NOTE  h3 design 
====================================================*/


@media screen and (max-width: 768px) {
    .category h3 {
        font-size: 2.6rem !important;
        margin: 0 auto .75em;
    }
}




/*====================================================
	#msc
====================================================*/

#msc {
    background: #fff;
    overflow: hidden;
}

#msc h3 {
    text-align: center;
    color: #fff;
    background: #4f267b;
    /* background: linear-gradient(to bottom, #44206b, #653599); */
}

#msc .catch {
    color: #9b7c25;
}


/*====================================================
	advance_notice
=====================================================*/

.advance_notice .inside {
    min-height: 600px;
}




/*====================================================
	#access
=====================================================*/

#access figure {
    height: 600px;
    /* border: #f00 thin solid; */
}

#access figure iframe {
    height: 100%;
}

@media screen and (max-width: 900px) {

    #access figure {
        height: 400px;
        /* border: #f00 thin solid; */
    }


}