@charset "UTF-8";


/* wrap
------------------------------ */

/* contents
------------------------------ */
.contents_logo {
    width: 17%;
    margin: 0 auto;
    padding: 4.5% 0 4%;
}
.contents_title {
    width: 100%;
    margin: 0 auto;
    padding: 2% 0 4%;
}
.contents_topImg {
    width: 100%;
    margin: 0 auto;
    padding: 0 15% 2%;
}
.contents_ttl {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.contents_lead {
    width: 100%;
    margin: 0 auto;
    padding: 2% 25% 0;
}
.contents_header {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4%;
    display: flex;
}
.contents_head {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4%;
}
.contents_ruby {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.contents_headerImg {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 8%;
}
.contents_headImg {
    width: 100%;
    margin: 0 auto;
    padding: 5% 0 8%;
}
.contents_explain__01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 10% 4%;
}
.contents_explain__02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 10% 4%;
}
.contents_word {
    width: 100%;
    margin: 0 auto;
    padding: 3% 0;
}
.contents_add__01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 7%;
}
.contents_add__02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 10% 5%;
}
.contents_packing__03 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 0 3%;
}
.contents_sign {
    width: 17%;
    margin: 0 auto;
    padding: 0 0 4%;
}
.contents_subtt {
    width: 100%;
    margin: 0 auto;
    padding: 3% 0 1% 1%;
}
.contents_headline {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 5%;
}
.contents_pickup {
    width: 100%;
    margin: 0 auto;
    padding: 3% 0 7%;
}
.contents_price {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 6%;
}
.contents_heading {
    width: 100%;
    margin: 0 auto;
    padding: 2% 0 7%;
}
.contents_link__01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 10%;
}
.contents_topics {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.contents_link__03 {
    width: 100%;
    margin: 0 auto;
    padding: 2% 10% 5%;
}
.contents_ftImg {
    width: 100%;
    margin: 0 auto;
    padding: 4% 0 0;
}
.contents_footer {
    width: 100%;
    margin: 0 auto;
    padding: 3% 8% 0;
}

/* decorate
------------------------------ */

/* block
------------------------------ */
.qualityBlock_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 2%;
}
.reasonBlock_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}


/* border
------------------------------ */
.frame_01 {
    border: solid 1px #111;
}
.frame_02 {
    border: solid 1px #111;
}
.topline_01 {
    border-top: solid 1px #111;
}
.underline_01 {
    border-bottom: solid 1px #999;
}
.partition_01 {
    border-right: solid 1px #111;
}
.ttlBorder_gold {
    border-left: 15px solid #998a4c;
    border-bottom: 2px solid #998a4c;
}
.ttlBorder_silver {
    border-left: 15px solid #878787;
    border-bottom: 2px solid #878787;
}
.ttlBorder_purple {
    border-left: 15px solid #5d17ab;
    border-bottom: 2px solid #5d17ab;
}


/* element
------------------------------ */

/* box
  ------------------------------ */
.carouselBox {
    width: 100%;
    margin: 0 auto;
    padding: 0 .1%;
}
.annexBox {
    width: 100%;
    margin: 0 auto;
    padding: 0 .1%;
}
.slider_box {
    width: 100%;
    margin: 0 auto .5%;
    padding: 0;
    position: relative;
}
.explainBox_01 {
    width: 49%;
    margin: 0 auto;
    padding: 0;
}
.btnBox_01 {
    width: 32.666%;
    margin: 0 auto;
    padding: 0;
}

/* area
------------------------------ */
.btnArea_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

/* inner
------------------------------ */
.itemInner_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 1%;
}
.itemInner_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4%;
}
.itemInner_03 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4%;
}
.itemInner_04 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 6% 15%;
}
.itemInner_05 {
    width: 100%;
    margin: 0 auto;
    padding: 0 10% 6%;
}
.itemInner_06 {
    width: 100%;
    margin: 0 auto;
    padding: 2% 0 6% 15%;
}
.itemInner_07 {
    width: 100%;
    margin: 0 auto;
    padding: 0 10% 6%;
}
.wordInner_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 2%;
}
.wordInner_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 2% 0;
}
.wordInner_03 {
    width: 100%;
    margin: 0 auto;
    padding: 4% 15% 0;
}

/* inward
------------------------------ */
.inward_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.inward_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

/* parts
  ------------------------------ */
.btnParts {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.packingParts {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

/* layer
  ------------------------------ */

/* after
------------------------------ */

/*space
------------------------------ */
.space_top {}
.space_left {}
.space_right {}

/*hover
------------------------------ */

/*background-color
------------------------------ */
.white_bk {
    background: rgba(255, 255, 255, 1);
}
.gray_bk {
    background: rgba(238, 238, 238, 1);
}
.beige_bk {
    background: rgba(240, 238, 228, 1);
}
.beige_bk__pc {
    background: rgba(240, 238, 228, 1);
}
.pink_bk {
    background: rgba(251, 222, 218, .5);
}
.yellow_bk {
    background: rgba(229, 212, 118, .6);
}
.margarine_bk {
    background: rgba(238, 232, 170, .4);
}
.purpleBk {
    background: rgba(184, 141, 232, .2);
}
.blueBk_01 {
    background: rgba(205, 233, 236, .8);
}

/*radius
------------------------------ */

/* flex
------------------------------ */
.flexBox_01 {
    display: -webkit-box;
    /* old Android */
    display: -webkit-flex;
    /* Safari etc. */
    display: -ms-flexbox;
    /* IE10        */
    display: flex;
    -webkit-flex-wrap: wrap;
    /* Safari etc. */
    -ms-flex-wrap: wrap;
    /* IE10        */
    flex-wrap: wrap;
    justify-content: flex-start;
    flex-direction: row;
    column-gap: 2%;
}
.btnFlex_01 {
    display: -webkit-box;
    /* old Android */
    display: -webkit-flex;
    /* Safari etc. */
    display: -ms-flexbox;
    /* IE10        */
    display: flex;
    -webkit-flex-wrap: wrap;
    /* Safari etc. */
    -ms-flex-wrap: wrap;
    /* IE10        */
    flex-wrap: wrap;
    justify-content: flex-start;
    flex-direction: row;
    column-gap: 1%;
}
.annexFlex_01 {
    display: -webkit-box;
    /* old Android */
    display: -webkit-flex;
    /* Safari etc. */
    display: -ms-flexbox;
    /* IE10        */
    display: flex;
    -webkit-flex-wrap: wrap;
    /* Safari etc. */
    -ms-flex-wrap: wrap;
    /* IE10        */
    flex-wrap: wrap;
    justify-content: flex-start;
    flex-direction: column;
}
.flexParts_01 {
    display: -webkit-box;
    /* old Android */
    display: -webkit-flex;
    /* Safari etc. */
    display: -ms-flexbox;
    /* IE10        */
    display: flex;
    -webkit-flex-wrap: wrap;
    /* Safari etc. */
    -ms-flex-wrap: wrap;
    /* IE10        */
    flex-wrap: wrap;
    justify-content: flex-start;
    flex-direction: column;
}

/* anchor
------------------------------ */

/* center
------------------------------ */

/* font
------------------------------ */

/* h1 text
------------------------------ */
h1.brand_gift_title {
    font-family: 'ShipporiMincho';
    color: #28325a;
    font-size: calc(2.8rem * 1.5);
    text-align: center;
    margin: 0;
    letter-spacing: .3rem;
}

h1.brand-header-name-jp {
    font-family: var(--font_ja);
    color: var(--c_text_g);
    margin: 0;
    text-align: center;
    font-size: calc(1.1rem * 1.5);
    letter-spacing: .1em;
}

/* h3 text
------------------------------ */
h3.brand-header-name-eng {
    font-family: var(--font_eng);
    margin: 0;
    text-align: center;
    font-size: calc(3.5rem * 1.5);
    letter-spacing: .1em;
    line-height: calc(4.4rem * 1.5);
    margin-bottom: 4px;
}

h3.title {
    font-family: 'ShipporiMincho';
    color: #111;
    font-size: calc(2rem * 1.5);
    text-align: center;
    margin: 0;
    letter-spacing: .05rem;
}

h3.ttl {
    font-family: Lato, Noto Sans JP, sans-serif;
    font-size: calc(2rem * 1.5);
    text-align: center;
    margin: 0;
    color: #111;
    letter-spacing: 1rem;
}

h3.subject {
    font-family: Lato, Noto Sans JP, sans-serif;
    font-size: calc(1.8rem * 1.5);
    text-align: center;
    line-height: calc(2.8rem * 1.5);
    margin: 0;
    padding: 0;
    color: #111;
}

/* h4 text
------------------------------ */
h4.title {
    font-family: 'ShipporiMincho';
    color: #111;
    font-size: calc(2rem * 1.5);
    text-align: left;
    margin: 0;
    line-height: calc(2.8rem * 1.5);
    letter-spacing: .1rem;
}

h4.header {
    font-family: 'ShipporiMincho';
    color: #111;
    font-size: calc(2rem * 1.5);
    text-align: left;
    margin: 0;
    line-height: calc(2.8rem * 1.5);
}

h4.heading {
    font-family: Lato, Noto Sans JP, sans-serif;
    color: #111;
    font-size: calc(2rem * 1.5);
    text-align: left;
    margin: 0;
    line-height: calc(2.8rem * 1.5);
}

h4.headline {
    font-family: 'ShipporiMincho';
    color: #111;
    margin: 0;
    font-size: calc(2rem * 1.5);
    display: flex;
    text-align: center;
    align-items: center;
}

h4.headline span {
    font-family: Lato, Noto Sans JP, sans-serif;
    color: #111;
    margin: 0;
    font-size: calc(2rem * 1.5);
}

h4.headline::before {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0 3rem;
    height: 1px;
    background: #111;
    display: block;
}

h4.headline::after {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0 3rem;
    height: 1px;
    background: #111;
    display: block;
}

h4.topics {
    font-family: Lato, Noto Sans JP, sans-serif;
    color: #111;
    font-size: calc(2rem * 1.5);
    text-align: center;
    line-height: calc(2.8rem * 1.5);
    margin: 0;
    font-weight: normal;
}

/* h5 text
------------------------------ */
h5.title {
    font-family: 'ShipporiMincho';
    color: #111;
    font-size: calc(1.5rem * 1.5);
    text-align: center;
    margin: 0;
    line-height: calc(2rem * 1.5);
}

h5.header {
    font-family: Lato, Noto Sans JP, sans-serif;
    color: #111;
    font-size: calc(1.6rem * 1.5);
    text-align: left;
    margin: 0;
    line-height: calc(2rem * 1.5);
    letter-spacing: 1rem;
}

h5.heading {
    font-family: 'ShipporiMincho';
    color: #111;
    font-size: calc(1.7rem * 1.5);
    text-align: left;
    margin: 0;
    line-height: calc(2.8rem * 1.5);
}

h5.topics {
    font-family: Lato, Noto Sans JP, sans-serif;
    color: #111;
    font-size: calc(2.6rem * 1.5);
    text-align: center;
    line-height: calc(3.4rem * 1.5);
    margin: 0;
    font-weight: normal;
}

h5.headline {
    font-family: Lato, Noto Sans JP, sans-serif;
    color: #111;
    margin: 0;
    font-size: calc(2rem * 1.5);
    display: flex;
    text-align: center;
    align-items: center;
}

h5.headline::before {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0 3rem;
    height: 1px;
    background: #111;
    display: block;
}

h5.headline::after {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0 3rem;
    height: 1px;
    background: #111;
    display: block;
}

h5.ruby {
    font-family: Lato, Noto Sans JP, sans-serif;
    color: #111;
    font-size: calc(1.2rem * 1.5);
    text-align: center;
    line-height: calc(2.4rem * 1.5);
    margin: 0;
    font-weight: normal;
}

/* h6 text
------------------------------ */

/* li text
------------------------------ */

/* p text
------------------------------ */
p.lead {
    font-family: Lato, Noto Sans JP, sans-serif;
    margin: 0;
    color: #111;
    text-align: left;
    font-size: calc(1.3rem * 1.5);
    line-height: calc(3rem * 1.5);
    letter-spacing: .2rem;
}

p.sentence_01 {
    font-family: Lato, Noto Sans JP, sans-serif;
    margin: 0;
    color: #111;
    text-align: left;
    font-size: calc(1.3rem * 1.5);
    line-height: calc(2.7rem * 1.5);
    letter-spacing: .2rem;
}

p.comment_01 {
    font-family: Lato, Noto Sans JP, sans-serif;
    margin: 0;
    color: #111;
    text-align: left;
    font-size: calc(1.2rem * 1.5);
    line-height: calc(2.2rem * 1.5);
    letter-spacing: .2rem;
}

p.word_01 {
    font-family: Lato, Noto Sans JP, sans-serif;
    margin: 0;
    color: #111;
    text-align: left;
    font-size: calc(1.2rem * 1.5);
    line-height: calc(2.2rem * 1.5);
    letter-spacing: .2rem;
}

p.catch_01 {
    font-family: Lato, Noto Sans JP, sans-serif;
    margin: 0;
    color: #111;
    text-align: left;
    font-size: calc(1.3rem * 1.5);
    line-height: calc(2.5rem * 1.5);
    letter-spacing: .2rem;
}

p.see {
    font-size: .9rem;
    text-align: right;
    margin: 0;
}

p.btntext {
    font-family: Lato, Noto Sans JP, sans-serif;
    color: #111;
    text-align: left;
    margin: 0;
    font-size: calc(1.1rem * 1.5);
    line-height: calc(2rem * 1.5);
    letter-spacing: .2rem;
}

/* before after
------------------------------ */
.diamondIcon::before {
    content: '◆';
    font-size: 2.5rem;
    margin-right: 8px;
    display: contents;
}
.squareIcon::before {
    content: '■';
    font-size: 3rem;
    vertical-align: text-bottom;
    margin-right: 8px;
    display: contents;
}

/* color
------------------------------ */
.cobaltTxt {
    color: #003379 !important;
}
.pinkTxt {
    color: #ce618d !important;
}

/* text-decoration
------------------------------ */
h5.underlineTxt_01 {
    text-decoration: underline
}

/* btn
------------------------------ */
p.itemBtn {
    display: block;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    width: 100%;
    margin: 0 auto;
    padding: 1rem 4rem;
    font-weight: bold;
    border: 2px solid #555;
    color: #555;
    border-radius: 100vh;
    transition: 0.5s;
    font-size: calc(1rem * 1.5);
}

p.itemBtn:hover {
    opacity: 10 !important;
    color: #fff;
    background: #555;
}

a.categoryBtn {
    display: block;
    padding: 2.5% 0;
    font-size: calc(1rem * 1.5);
    letter-spacing: .1rem;
    text-align: center;
    text-decoration: none;
    border: 2px solid #666;
    color: #555;
    margin: 0 auto;
    font-weight: bold;
}

a.categoryBtn:hover {
    opacity: 10 !important;
    color: #fff;
    background: #666;
}

a.brandBtn p.btntext {
    margin: 0 auto;
    display: block;
    padding: 3.5% 0;
    font-size: calc(1.1rem * 1.5);
    letter-spacing: .1rem;
    text-align: center;
    text-decoration: none;
    border: 2px solid #666;
    color: #555;
    font-weight: bold;
}

a.brandBtn p.btntext:hover {
    opacity: 10 !important;
    color: #fff;
    background: #666;
}

a.brandBtn p.linkTxt {
    margin: 0 auto;
    display: block;
    padding: 3.5% 0;
    font-size: calc(1rem * 1.5);
    letter-spacing: .1rem;
    text-align: center;
    text-decoration: none;
    border: 1px solid #111;
    color: #111;
}

a.brandBtn p.linkTxt:hover {
    opacity: 10 !important;
    color: #fff;
    background: #111;
}
.btnBox_01 .btnArea_01 a.priceBtn_01 {
    width: 100%;
    padding: 3% 0 4%;
    margin: 0 auto;
    text-align: center;
    background: #cccccc;
    /*ボタン色*/
    color: #111;
    border-bottom: solid 4px #999999;
    border-radius: 3px;
    display: block;
    overflow: hidden;
    background-size: cover;
    font-size: calc(1rem * 1.5);
}
.btnBox_01 .btnArea_01 a.priceBtn_01:active {
    -ms-transform: translateY(4px);
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
    /*下に動く*/
    border-bottom: none;
    /*線を消す*/
}



/* other------------------------------ */
.space{margin: 5% 0}
.pc_display{display:block !important;}
.sp_display{display:none !important;}
.br_pc{display: block !important;}
.br_sp{display: none !important;}
.pc_img{display: block !important;}
.sp_img{display: none !important;}



/* --------------------------------
* Note PC
* -------------------------------- */
@media screen and (max-width: 1380px) {
    
/* wrapper
  ------------------------------ */

}


/* --------------------------------
* yahoo
* -------------------------------- */
@media screen and (max-width: 1100px) {
    
/* wrapper
  ------------------------------ */

}
    
    
/* --------------------------------
* rakuten
* -------------------------------- */
@media screen and (max-width: 850px) {
    
/* wrapper
  ------------------------------ */

}


/* --------------------------------
* SP
* -------------------------------- */
@media screen and (max-width:639px) {
/* base */
    
/* wrapper
  ------------------------------ */

/* wrap
  ------------------------------ */
.wrap_top {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 12%;
}
.wrap_ttl {
    width: 100%;
    margin: 0 auto;
    padding: 2% 0 5%;
}
.wrap_annex {
    width: 100%;
    margin: 0 auto;
    padding: 10% 3%;
}
.wrap_subttl {
    width: 100%;
    margin: 0 auto;
    padding: 6% 0;
}
.wrap_first {
    width: 100%;
    margin: 0 auto;
    padding: 10% 0 0;
}
.wrap_second {
    width: 100%;
    margin: 0 auto;
    padding: 12% 0 4%;
}
.wrap_third {
    width: 100%;
    margin: 0 auto;
    padding: 12% 0 8%;
}
.wrap_fourth {
    width: 100%;
    margin: 0 auto;
    padding: 12% 0 8%;
}
.wrap_fifth {
    width: 100%;
    margin: 0 auto;
    padding: 12% 0 8%;
}
.wrap_footer {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 10%;
}

/* ColumnBox
------------------------------ */

/* area
------------------------------ */

/* outer
------------------------------ */

/* contents
------------------------------ */
.contents_logo {
    width: 36%;
    margin: 0 auto;
    padding: 6.5% 0 5.5%;
}
.contents_title {
    width: 100%;
    margin: 0 auto;
    padding: 2% 0 8.5%;
}
.contents_topImg {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 8%;
}
.contents_subject {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.contents_lead {
    width: 100%;
    margin: 0 auto;
    padding: 5% 8% 0;
}
.contents_headline {
    width: 100%;
    margin: 0 auto;
    padding: 6% 8% 2%;
}
.contents_topics {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 5%;
}
.contents_header {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4% 2%;
}
.contents_headImg {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 8%;
}
.contents_pickup {
    width: 100%;
    margin: 0 auto;
    padding: 8% 0 3%;
}
.contents_sign {
  width: 22%;
  margin: 0 auto;
  padding: 0 0 6%;
}
.contents_explain__01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 10% 10%;
}
.contents_explain__02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 10% 10%;
}
.contents_add__01 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.contents_packing__01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 4% 3%;
}
.contents_packing__02 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 5% 8%;
}
.contents_heading {
    width: 100%;
    margin: 0 auto;
    padding: 2% 0 1%;
}
.contents_subttl {
    width: 100%;
    margin: 0 auto;
    padding: 8% 0 2% 2%;
}
.contents_price {
    width: 100%;
    margin: 0 auto;
    padding: 10% 0 6%;
}
.contents_link__01 {
    width: 100%;
    margin: 0 auto;
    padding: 8% 5% 12%;
}
.contents_link__02 {
    width: 100%;
    margin: 0 auto;
    padding: 6% 5%;
}
.contents_link__03 {
    width: 100%;
    margin: 0 auto;
    padding: 6% 5%;
}
.contents_footer {
    width: 100%;
    margin: 0 auto;
    padding: 8% 8% 0;
}
.contents_footer {
    width: 100%;
    margin: 0 auto;
    padding: 8% 8% 0;
}

/* box
------------------------------ */
.carouselBox {
    width: 100%;
    margin: 0 auto .5%;
    padding: 0;
}
.itemBox_01 {
    width: 100%;
    margin: 0 auto 8%;
    padding: 0 0 3%;
}
.btnBox_01 {
    width: 90%;
    margin: 0 auto 5%;
    padding: 0;
}
.explainBox_01 {
    width: 100%;
    margin: 0 auto .5%;
    padding: 0;
}

/* block
------------------------------ */

/* decorate
------------------------------ */

/* border
------------------------------ */

/* parts
------------------------------ */

/*space
------------------------------ */


/* inner
------------------------------ */
.itemInner_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 2%;
}
.itemInner_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.itemInner_03 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 8%;
}
.itemInner_04 {
    width: 100%;
    margin: 0 auto;
    padding: 0 6% 5%;
}
.itemInner_05 {
    width: 100%;
    margin: 0 auto;
    padding: 5% 5% 15%;
}
.itemInner_06 {
    width: 100%;
    margin: 0 auto;
    padding: 0 6% 5%;
}
.itemInner_07 {
    width: 100%;
    margin: 0 auto;
    padding: 5% 5% 15%;
}
.wordInner_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 8%;
}
.wordInner_02 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.wordInner_03 {
    width: 100%;
    margin: 0 auto;
    padding: 5% 10%;
}

/* inward
------------------------------ */
.inward_01 {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

/* layer
------------------------------ */

/* center
------------------------------ */

/*background-color
------------------------------ */

/* flex
------------------------------ */
.itemFlex_01 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start;
    flex-direction: row;
    column-gap: 1%;
}

/* h1_text
------------------------------ */
h1.brand_gift_title {
    font-size: calc(1.6rem * 1.5);
    margin: 0;
    letter-spacing: .1rem;
}

/* h3_text
------------------------------ */
h3.brand-header-name-eng {
    font-size: calc(2rem * 1.5);
    letter-spacing: .1em;
    line-height: calc(2.2rem * 1.5);
    margin-bottom: 4px;
}

h3.title {
    font-size: calc(1.4rem * 1.5);
    margin: 0;
    letter-spacing: .1rem;
    line-height: calc(2.3rem * 1.5);
}

h3.ttl {
    font-size: calc(2rem * 1.5);
    margin: 0;
    letter-spacing: .2rem;
}

h3.subject {
    font-size: calc(1.4rem * 1.5);
    line-height: calc(2rem * 1.5);
    margin: 0;
}

/* h4 text
------------------------------ */
h4.title {
    font-size: calc(1.4rem * 1.5);
    margin: 0;
    line-height: calc(2.2rem * 1.5);
    letter-spacing: normal;
    text-align: left;
}

h4.header {
    font-size: calc(1.4rem * 1.5);
    text-align: left;
    margin: 0;
    line-height: calc(2rem * 1.5);
    letter-spacing: normal;
}

h4.headline {
    margin: 0;
    font-size: calc(1.4rem * 1.5);
    display: block;
    text-align: center;
}

h4.headline span {
    margin: 0;
    font-size: calc(1.2rem * 1.5);
}

h4.headline::before {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0;
    margin-bottom: 10px;
    height: 1px;
    background: #111;
    display: flex;
}

h4.headline::after {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0;
    margin-top: 5px;
    height: 1px;
    background: #111;
    display: flex;
}

h4.topics {
    font-family: Lato, Noto Sans JP, sans-serif;
    color: #111;
    font-size: calc(1.5rem * 1.5);
    text-align: center;
    line-height: calc(2rem * 1.5);
    margin: 0;
    font-weight: normal;
}

/* h5 text
------------------------------ */
h5.topics {
    font-size: calc(2rem * 1.5);
    text-align: center;
    margin: 0;
    line-height: calc(2.4rem * 1.5);
    letter-spacing: normal;
}

h5.header {
    font-size: calc(1.3rem * 1.5);
    text-align: left;
    margin: 0;
    line-height: calc(2rem * 1.5);
    letter-spacing: .1rem;
}

h5.heading {
    font-size: calc(1.4rem * 1.5);
    text-align: left;
    margin: 0;
    line-height: calc(2.4rem * 1.5);
}

h5.headline {
    margin: 0;
    font-size: calc(2rem * 1.5);
    display: block;
    text-align: center;
    align-items: center;
}

h5.headline::after {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 2% 4% 0;
    height: 1px;
    display: block;
}

h5.headline::before {
    align-content: center;
    content: "";
    flex-grow: 1;
    margin: 0 4% 2%;
    height: 1px;
    display: block;
}

/* li text
------------------------------ */
li.annexBox {
    font-size: calc(1.05rem * 1.5);
    line-height: calc(2.8rem * 1.5);
    letter-spacing: .1rem;
}

li.packingParts {
    margin: 0;
    font-size: calc(1.1rem * 1.5);
    line-height: calc(2.5rem * 1.5);
    letter-spacing: .1rem;
}

/* p text
------------------------------ */
p.lead {
    font-size: calc(1rem * 1.5);
    line-height: calc(1.8rem * 1.5);
}

p.sentence_01 {
    font-size: calc(1rem * 1.5);
    line-height: calc(1.8rem * 1.5);
    letter-spacing: .1rem;
}

p.comment_01 {
    font-size: calc(1rem * 1.5);
    line-height: calc(2rem * 1.5);
    letter-spacing: .1rem;
}

p.word_01 {
    font-size: calc(1rem * 1.5);
    line-height: calc(1.7rem * 1.5);
    letter-spacing: .1rem;
}

p.catch_01 {
    font-size: calc(1.1rem * 1.5);
    line-height: calc(2.2rem * 1.5);
    letter-spacing: .2rem;
}

p.itemBtn {
    padding: 3% 0 2%;
    font-size: calc(.8rem * 1.5);
}

p.btntext {
    margin: 0;
    font-size: calc(1rem * 1.5);
    padding: 3% 0 2%;
    letter-spacing: .1rem;
    text-align: center;
    text-decoration: none;
    color: #fff;
}

/* after
------------------------------ */
.diamondIcon::before {
    content: '◆';
    font-size: 2rem;
    margin-right: 3px;
    display: contents;
}
.squareIcon::before {
    content: '■';
    font-size: 2.2rem;
    margin-right: 3px;
    display: contents;
}

/* btn
------------------------------ */
a.categoryBtn {
    padding: 4% 0;
    font-size: calc(.9rem * 1.5);
    letter-spacing: normal;
}

p.seriesBtn {
    padding: 4% 0;
    font-size: calc(.9rem * 1.5);
    letter-spacing: normal;
}

p.itemBtn {
    padding: 4% 0 5%;
    font-size: calc(.9rem * 1.5);
}

a.brandBtn p.btntext {
    font-size: calc(.9rem * 1.5);
    letter-spacing: .1rem;
}

/* item_name
------------------------------ */

/* other
------------------------------ */
.pc_display { display: none !important;}
.sp_display {display: block !important; }
.br_pc {display: none !important;}
.br_sp {display: block !important;}
.pc_img {display: none !important;}
.sp_img {display: block !important;}

}