@charset "UTF-8";

#shavedice_title #main_second_title {
	top:100px;
}

#shavedice_title #main_second_title > h2 {
    font-size:28px;
}

#shavedice_ninki {
    background-color:#fff;
    background-image:url( images/dot_back.png );
    background-position:top center;
    background-repeat:no-repeat;
    background-size:1200px;
    padding-bottom:80px;
}

#shavedice_ninki > div > ul > li {
    list-style-type:none;
    padding-bottom:40px;
}

#shavedice_ninki > div > ul > li:nth-of-type( n+2 ){
    padding-top:30px;
}

#shavedice_ninki > div > ul > li > div {
    display:flex;
    align-items:flex-start;
}

#shavedice_ninki > div > ul > li > div > div:first-of-type {
    width:45%;
    position:relative;
}

#shavedice_ninki > div > ul > li > div > div:first-of-type img {
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:20px;
}

#shavedice_ninki > div > ul > li > div > div:last-of-type {
    width:55%;
    padding:28px 28px 0 28px;
}

#shavedice_ninki h4, .shavedice_premium_item h4 {
    font-size:24px;
    line-height:1.3em;
    font-weight:600;
    letter-spacing:3px;
	font-family: 'Noto Serif JP';
    font-weight:800;
}

div.shavedice_catch {
    padding-top:12px;
}
div.shavedice_catch > p {
    background-color:#A72325;
    letter-spacing:2px;
    color:#fff;
    line-height:32px;
    border-radius:16px;
    display:inline-block;
    padding:0 20px;
}

div.shavedice_catch > p:nth-of-type( n+2 ){
    margin-left:12px;
}

p.shavedice_comment {
    padding-top:18px;
    padding-bottom:8px;
    font-size:14px;
    font-weight:400;
}

ul.shavedice_anko {
    margin-top:15px;
    font-weight:400;
    font-size:14px;
}

ul.shavedice_anko > li {
    list-style-type:none;
    display:inline-block;
    background-color:#F3F5E2;
    margin-top:6px;
    padding:0 26px;
    line-height:2.2em;
    border-radius:4px;
}

ul.shavedice_anko > li:not(:last-of-type) {
    margin-right:6px;
}

.shavedice_main_set {
    margin-top:12px;
    padding-top:10px;
    display:flex;
    border-top:1px solid #C1A36E;
    border-bottom:1px solid #C1A36E;
}

.shavedice_main_set > div {
    letter-spacing:2px;
}

.shavedice_main_set > div:first-of-type {
    padding: 0 8px 12px 0;
    width:70%;
    font-size:19px;
	font-family: 'Noto Serif JP';
    font-weight:700;
}

.shavedice_main_set > div:first-of-type > span {
	font-family: 'Noto Serif JP';
    font-weight:700;
    font-size:23px;
    color:#C1A36E;
}

.shavedice_main_set > div:last-of-type {
    text-align:right;
    color:#A72325;
    width:30%;
    font-weight:700;
    font-size:22px;
}

.shavedice_main_set > div:last-of-type > span {
    font-size:15px;
    padding-left:2px;
    letter-spacing:1px;
}

.shavedice_set {
    border:1px solid #C1A36E;
    border-radius:8px;
    margin-top:12px;
    padding:18px 20px 20px 20px;
}

.shavedice_set > div {
    margin-bottom:5px;
    letter-spacing:2px;
}

.shavedice_set > dl {
    display:flex;
    flex-wrap:wrap;
    font-size:14px;
    line-height:1.4em;
    font-weight:400;
}

.shavedice_set > dl > dt {
    margin-top:8px;
    width:calc( 100% - 120px );
    padding-left:1.5em;
    position:relative;
}

.shavedice_set > dl > dt:before {
    content:'・';
    position:absolute;
    left:6px;
    top:0;
}

.shavedice_set > dl > dd {
    margin-top:8px;
    text-align:right;
    font-weight:500;
    font-size:16px;
    width:120px;
    padding-right:8px;
    letter-spacing:2px;
}

.shavedice_set > dl > dd > span {
    font-size:13px;
    padding-left:2px;
}

#shavedice_tezukuri {
    background-image:url( images/back.jpg );
    padding-bottom:0;
}

#shavedice_tezukuri > div {
    background-image:url( images/dot_back.png );
    background-position:top center;
    background-repeat:no-repeat;
    background-size:1200px;
    padding-bottom:120px;
}

.shavedice_osusume {
    background-color:#A72325;
    color:#fff;
    position:absolute;
    left:-28px;
    top:-28px;
    width:76px;
    font-size:13px;
    line-height:76px;
    text-align:center;
    display:block;
    border-radius:38px;
}

#shavedice_tezukuri > div > div > ul > li {
    list-style-type:none;
    padding:24px;
    background-color:#fff;
    border-radius:16px;
}

#shavedice_tezukuri > div > div > ul > li:nth-of-type( n+2 ){
    margin-top:22px;
}

#shavedice_tezukuri > div > div > ul > li > div {
    display:flex;
    align-items:center;
    width:100%;
}

#shavedice_tezukuri > div > div > ul > li > div > div:first-of-type {
    width:20%;
}

#shavedice_tezukuri > div > div > ul > li > div > div:first-of-type img {
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:16px;
}

#shavedice_tezukuri > div > div > ul > li > div > div:nth-of-type(2) {
    width:52%;
    padding-left:38px;
    padding-right:38px;
}

#shavedice_tezukuri > div > div > ul > li > div > div:nth-of-type(3) {
    width:30%;
}

#shavedice_tezukuri h4 {
    font-size:20px;
    line-height:1.3em;
    font-weight:600;
    letter-spacing:3px;
	font-family: 'Noto Serif JP';
    font-weight:800;
}

.shavedice_set2 {
    margin-top:20px;
    border-top:1px solid #C1A36E;
    border-bottom:1px solid #C1A36E;
    font-weight:700;
    padding:8px;
    display:flex;
}

.shavedice_set2 > div:first-of-type {
    width:calc( 100% - 120px );
	font-family: 'Noto Serif JP';
    letter-spacing:1px;
    font-size:15px;
}

.shavedice_set2 > div:last-of-type {
    font-size:19px;
    width:120px;
    letter-spacing:1px;
    text-align:right;
    color:#A72325;
}

.shavedice_set2 > div:last-of-type > span {
    font-size:15px;
    padding-left:2px;
}

#shavedice_tezukuri > div > div > ul > li > div > div:nth-of-type(2) > p {
    margin-top:20px;
    font-size:14px;
    line-height:1.7em;
    font-weight:400;
}

.shavedice_set3 {
    border:1px solid #C1A36E;
    padding:16px 14px;
    border-radius:16px;
}

.shavedice_set3 > p {
    padding-bottom:4px;
}

.shavedice_set3 dl {
    display:flex;
    flex-wrap:wrap;
}

.shavedice_set3 dl > dt {
    width:calc( 100% - 80px );
    font-size:14px;
    font-weight:400;
    padding:2px 0 2px 1.2em;
    position:relative;
}

.shavedice_set3 dl > dt::before {
    position:absolute;
    left:0;
    top:2px;
    content: '・';
}

.shavedice_set3 dl > dd {
    width:80px;
    text-align:right;
    padding:2px 0 2px 8px;
    letter-spacing:1px;
}

.shavedice_set3 dl > dd > span {
    font-size:12px;
    padding-left:2px;
}

#shavedice_tezukuri > div > div > p:first-of-type {
    margin-top:30px;
    margin-bottom:4px;
}

#shavedice_premium {
    background-image:url( images/dot_back.png );
    background-size:1050px auto;
    background-position:50% 50px;
    background-repeat:no-repeat;
    padding:90px 8px;
}

#shavedice_premium h3 {
    text-align:center;
}

#shavedice_premium h3 > p {
    position:relative;
    display:inline-block;
    writing-mode: vertical-rl;
    font-size:28px;
	font-family: 'Noto Serif JP';
    font-weight:800;
    letter-spacing:5px;
    line-height:1.8em;
    padding-top:2em;
    text-align:left;
    text-indent:-2em;
}

#shavedice_premium h3 > p > span {
    position:absolute;
    color:#A72325;
    writing-mode: vertical-rl;
    font-size:14px;
    line-height:10px;
    letter-spacing:0;
    top:0;
    right:-16px;
    text-indent:0;
}

#shavedice_premium h3 + p {
    width:320px;
    max-width:calc( 100% - 32px );
    font-size:12px;
    font-weight:400;
    line-height:1.8em;
    margin:18px auto 50px auto;
}

div.shavedice_premium_item {
    display:flex;
    margin-top:40px;
}

div.shavedice_premium_item > div {
    width:50%;
}

div.shavedice_premium_item > div:first-of-type {
    padding-right:24px;
}

div.shavedice_premium_item > div:first-of-type img {
    width:100%;
    aspect-ratio:1 / 1;
    border-radius:38px;
}


div.shavedice_premium_item > div:last-of-type {
    padding-left:24px;
}

div.shavedice_premium_title {
    display:flex;
    align-items:flex-end;
    width:100%;
}
div.shavedice_premium_title > h4 {
    margin-top:8px;
    font-size:18px;
    font-weight:800;
    line-height: 1.5em;
    width:75%;
}

div.shavedice_premium_title > p.shavedice_premium_price {
    color:#A72325;
    font-size:20px;
    margin-top:8px;
    text-align:right;
    width:25%;
}

div.shavedice_premium_title > p.shavedice_premium_price > span {
    font-size:15px;
    padding-left:2px;
}

.shavedice_premium_text {
    margin-top:18px;
    padding-top:15px;
    border-top:1px solid #C1A36E;
}

.shavedice_premium_append {
    margin-top:20px;
    border-left:5px solid  #738B5D;
    padding:4px 0 8px 8px;
}

.shavedice_premium_append > p {
    font-weight:700;
    color:#738B5D;
}

.shavedice_premium_append ul > li {
    list-style-type:none;
    padding-left:1.3em;
    color:#738B5D;
    font-weight:500;
    position: relative;
}

.shavedice_premium_append ul > li::before {
    position: absolute;
    content:'・';
    left:4px;
    top:0;
}
ul.shavedice_premium_comment {
    padding-top:24px;
    font-size:14px;
    font-weight:400;
}

ul.shavedice_premium_comment > li {
    padding-left:1.4em;
    position:relative;
    list-style-type:none;
}

ul.shavedice_premium_comment > li:before {
    content: '※';
    position:absolute;
    left:0;
    top:0;
}

.shavedice_kin {
    color:#C1A36E;
    font-size:1.2em;
	font-family: 'Noto Serif JP';
    font-weight:800;
}

.shavedice_gin {
    color:#a2a2a2;
    font-size:1.2em;
	font-family: 'Noto Serif JP';
    font-weight:800;
}

@media screen and (max-width:1080px) {
    .shavedice_osusume {
        left:4px;
        top:4px;
    }
}

@media screen and (max-width:640px) {
    #shavedice_ninki > div > ul > li > div {
        display:block;
    }
    #shavedice_ninki > div > ul > li > div > div:first-of-type,
    #shavedice_ninki > div > ul > li > div > div:nth-of-type(2),
    #shavedice_ninki > div > ul > li > div > div:last-of-type {
        width:100%;
    }
    #shavedice_ninki > div > ul > li > div > div:last-of-type {
        padding:20px 0 0 0;
    }
    #shavedice_ninki > div > ul > li:nth-of-type( n+2 ){
        border-top:0 none #fff;
    }
    #shavedice_tezukuri > div > div > ul > li > div {
        flex-wrap:wrap;
        align-items:flex-start;
    }
    #shavedice_tezukuri > div > div > ul > li > div > div:first-of-type {
        width:100%;
    }
    #shavedice_tezukuri > div > div > ul > li > div > div:nth-of-type(2) {
        width:100%;
        padding-left:0;
        padding-right:0;
        padding-top:20px;
    }
    #shavedice_tezukuri > div > div > ul > li > div > div:nth-of-type(3) {
        width:100%;
        padding-top:20px;
    }
    #shavedice_tezukuri > div > div > p {
        padding:0 16px;
    }
    #shavedice_premium {
        background-size:190% auto;
        background-position:70% 50px;
    }
    div.shavedice_premium_item {
        display:block;
    }

    div.shavedice_premium_item > div:first-of-type {
        width:100%;
        padding:0 16px;
    }
    div.shavedice_premium_item > div:last-of-type {
        width:100%;
        padding:20px 16px 0 16px;
    }
}