@charset "UTF-8";
/* header_footer_gnav.css fix
------------------------------------------------------- */
@media screen and (min-width:320px) {
  footer .display_pc {
    display: none
  }

  footer .display_sp {
    display: block
  }

  footer #ft_contents a {
    text-decoration: none
  }

  footer .clicktocall {
    padding: 10px 0
  }

  footer .clicktocall a {
    color: #FFF;
    display: block;
    text-align: center;
    font-size: 1.2em;
    font-weight: 700;
    letter-spacing: .2em
  }

  footer #ft_contents .ft_nav_text,
  footer .clicktocall span {
    width: 100%;
    font-size: .7em
  }

  footer .clicktocall span {
    display: block;
    color: #FFF;
    text-align: center;
    font-weight: 700
  }

  footer #ft_contents .ft_nav_text a {
    display: block;
    margin-left: 10%;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 80%
  }

  footer #ft_contents .ft_nav_text .ft_i879 {
    display: block;
    width: 50%;
    float: left;
    position: relative;
    line-height: 1.4em;
    height: 45px;
    background: #FFF6E9;
    padding: 3px 10px 3px 5px;
    border-top: 1px dotted #EB6464;
    border-right: 1px dotted #EB6464
  }

  footer #ft_contents .ft_nav_text:not(.ft_nav_text_mother) .ft_i879:nth-child(2n),
  footer #ft_contents .ft_nav_text.ft_nav_text_mother .ft_i879:nth-child(2n-1) {
    border-right: none
  }

  footer #ft_contents .ft_nav_text:not(.ft_nav_text_sns, .ft_nav_text_mother) .ft_i879:nth-child(1),
  footer #ft_contents .ft_nav_text:not(.ft_nav_text_sns, .ft_nav_text_mother) .ft_i879:nth-child(2) {
    border-top: none
  }

  footer #ft_contents .ft_nav_text .fa-chevron-circle-right:before {
    position: absolute;
    top: calc(50% - .5em);
    color: #EB6464;
    line-height: 1
  }

  footer #ft_contents .ft_nav_text .ft_i879.last {
    width: 100%;
    border-bottom: 1px dotted #EB6464
  }

  footer #ft_contents .ft_nav_text .last a {
    margin-left: 5%
  }

  footer #ft_contents .ft_copy {
    clear: both;
    color: #FFF;
    font-size: .8em;
    padding: 15px 0 0 5px;
    width: 65%;
    float: left
  }

  footer #ft_contents .ft_copy a {
    color: #FFF
  }

  footer #ft_sitemap {
    padding: 2% .2% 5% 2%
  }

  footer #ft_sitemap .ft_sitemap_more {
    text-align: center;
    display: block
  }

  footer #ft_sitemap .ft_sitemap_ttl {
    margin: .2em 0 1em
  }

  footer #ft_sitemap_contents {
    font-size: .9em;
    padding: 1%
  }

  footer label {
    cursor: pointer;
    display: inline-block;
    transition: .1s
  }

  footer .panel {
    transition: .3s ease;
    height: 0;
    overflow: hidden
  }

  footer input:checked+.panel {
    height: auto;
    padding: 15px
  }

  footer #ft_sitemap_contents .fa-chevron-circle-right {
    color: #EB6464;
    padding-right: 5px
  }

  #DigiCertClickID_XeBu-lkZ,
  #DigiCertClickID_XeBu-lkZSeal,
  #DigiCertClickID_XeBu-lkZSeal a {
    display: inline-block;
    margin: 10px 0 0 0
  }

  #footer .globalNav {
    display: block;
    font-size: 14px
  }

  #footer .globalNav .globalNav__item>span {
    font-size: 16px
  }

  #footer .globalNav .globalNav__item:not(:first-child) {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dotted #888
  }

  #footer .globalNav .globalNav__item.globalNav__item--often {
    margin-top: 0;
    padding-top: 0;
    border-top: 0
  }

  #footer #ft_sitemap_contents .fa-chevron-circle-right {
    padding: 0
  }

  #footer .globalNav .globalNav__item--mypage .subNav,
  #footer .globalNav .globalNav__item--reading .subNavColumn,
  #footer .globalNav .globalNav__item--reading .subNavColumn__cell:first-child .subNav {
    display: block
  }

  #footer .globalNav .subNav__item>span {
    font-weight: 700;
    color: #eb6464
  }

  #footer .globalNav .subNav__item .fa-chevron-circle-right {
    color: #eb6464
  }

  #footer .globalNav .subNav__item>.subNav--use,
  #footer .globalNav .subNav__item>.subNav--use .fa {
    color: #97b9ff
  }
}

@media screen and (min-width:320px) {
  .subNav_cate {
    width: 100%;
    padding: 0
  }

  .subNav_cate>li {
    width: 100%;
    float: none;
    padding: 10px
  }

  .subNav_cate>li:first-child {
    padding: 10px
  }

  .subNav_cate>li.gnav-col4 {
    width: 100%
  }

  .subNav_cate>li:first-child.gnav-col4 {
    padding: 10px
  }

  header #header_menu .subNav_cate p {
    color: #939090;
    font-size: .1em;
    font-weight: 700;
    margin: 0 0 0 0;
    width: 100%
  }

  header #header_menu .subNav_cate p.subNav_cate_ttl a,
  header #header_menu .subNav_cate p.subNav_cate_ttl {
    font-size: 1.1em;
    margin-bottom: 0;
    text-align: left
  }

  header #header_menu .subNav_cate p.subNav_cate_des {
    font-size: 1em;
    min-height: auto;
    border-top: none;
    border-bottom: none;
    padding: 5px;
    text-align: left
  }

  header #header_menu .subNav_cate p.subNav_cate_Em {
    padding: 3px 5px;
    border-radius: 50px;
    background: #eb6464;
    color: #fff;
    font-weight: 700;
    text-align: center;
    margin-top: 10px;
    margin-bottom: 5px;
    font-size: 1.2em
  }

  .subNav_cate_cam .subNav_cate_ttl a,
  .subNav_cate_cam .subNav_cate_ttl {
    margin-bottom: 5px
  }

  .subNav_cate>li {
    text-align: center
  }

  .subNav_cate>li .subNav_cate_sub {
    text-align: left
  }

  .subNav_cate li img {
    width: 80%
  }

  header .subNav_cate a:active,
  header .subNav_cate a:hover,
  header .subNav_cate a:link,
  header .subNav_cate a:visited {
    color: #353535
  }

  .subNav_cate_sub {
    padding: 5px 0
  }

  .subNav_cate_sub li {
    padding: 5px
  }

  .globalNav .subNav_cate li ul.subNav_cate_sub li {
    font-size: 1em
  }

  header #header_menu .subNav_cate_cam p a:link {
    color: #d04239
  }

  header #header_menu .subNav_cate .subNav_cate_cam p.subNav_cate_ttl {
    color: #d04239;
    font-size: 1.2em
  }

  header #header_menu .subNav_cate p.subNav_cate_des {
    font-size: 1em;
    font-weight: 300;
    color: #939090
  }

  .subNav_cate>li {
    border-top: 1px dotted #EB6464
  }

  .subNav_cate>li:first-child {
    border-top: none
  }

  .subNav_cate.followNav>li {
    text-align: left;
    padding: 0
  }

  .subNav_cate.followNav>li span {
    width: 100%;
    font-weight: 500;
    font-size: 1.2em;
    letter-spacing: 0;
    padding: 10px
  }

  .subNav_cate.followNav>li a {
    color: #fff;
    display: block
  }

  .subNav_cate.followNav>li>ul>li a {
    padding: 5px
  }

  .subNav_cate.followNav>li>ul>li a {
    color: #353535;
    display: block;
    margin: 5px 0 0 0;
    padding-left: 1em
  }

  .subNav_cate.followNav>li>ul>li .fa {
    color: #353535
  }

  .subNav_cate.followNav>li>ul>li:last-child a {
    padding-bottom: 10px
  }

  header #header_menu .subNav_cate p.subNav_cate_ttl a {
    color: #d04239
  }

  header #header_menu .subNav_cate .subNav_cate_cam-div p.subNav_cate_ttl a {
    margin-bottom: 5px
  }

  #header_menu .subNav_cate .subNav_cate_cam-div p.subNav_cate_ttl {
    margin-bottom: 10px
  }

  .globalNav .subNav_cate li ul.subNav_cate_sub li a .fa {
    margin-right: 3px;
    color: #939090
  }

  .subNav_cate li ul.subNav_cate_sub li a:hover {
    color: #eb6464;
    text-decoration: underline
  }

  .globalNav__item--budget .subNavColumn div:first-child .subNav:nth-of-type(1) .subNavLv2:nth-of-type(1) .subNavLv2__item:first-child {
    border-top: 0
  }

  .globalNav {
    width: 100%;
    margin: 0;
    display: block;
    border: 0
  }

  .globalNav__item,
  .globalNav__item.globalNav__item--reading {
    width: 100%;
    border: 0
  }

  .globalNav__item>a,
  .globalNav__item>span {
    padding: 0 20px;
    font-weight: 700;
    font-size: 16px;
    text-align: left;
    background-position: calc(100% - 20px) center;
    background-size: 60px 40px;
    border-bottom: 1px solid #fff
  }

  .globalNav__item>a:hover {
    background-color: #fff
  }

  .globalNav__item--top {
    display: block;
    border-top: 1px dotted #eb6464
  }

  .globalNav__item--top:first-child {
    border-top: 0
  }

  .globalNav__item--top>a {
    height: auto;
    padding: .75em;
    line-height: inherit;
    font-weight: 400;
    font-size: 14px;
    text-align: left
  }

  .sp-nav .globalNav__item--login {
    display: block
  }

  .globalNav__item--quick {
    display: block;
    border-top: 1px dotted #eb6464
  }

  .globalNav__item--quick:first-child {
    border-top: 0
  }

  .globalNav__item--quick>a {
    height: auto;
    padding: .75em .3em .75em .3em;
    line-height: inherit;
    font-weight: 400;
    font-size: 14px;
    text-align: left
  }

  .globalNav__item--quick span.item--quick--ttl {
    display: table-cell;
    font-weight: 700;
    font-size: 1.5em;
    vertical-align: middle;
    padding-left: 32px;
    background: url(//images.i879.com/webp/common/float_quick_watch.webp) no-repeat;
    background-size: 33px
  }

  .globalNav__item--quick span.item--quick--sub {
    display: table-cell;
    color: #353535;
    font-size: .85em;
    padding-left: 8px
  }

  .globalNav__item--sp {
    display: block
  }

  .globalNav__sub {
    min-width: inherit;
    padding: 0;
    position: relative;
    display: block;
    background-color: white;
    border: 0;
  }

  .sp-nav .globalNav__sub {
    min-width: inherit;
    padding: 0;
    position: relative;
    display: block;
    background-color: #fff;
    border: 0;
    height: 0;
    overflow: hidden;
    transition: all 0.5s
  }

  .globalNav__sub--open {
    height: auto
  }

  .subNavColumn {
    display: block
  }

  .subNav {
    padding: 0;
    white-space: normal
  }

  .subNav.subNav--second {
    border-top: 1px dotted #EB6464;
    margin-top: 0
  }

  .subNav__item {
    padding: 0;
    border-top: 1px dotted #EB6464
  }

  .subNav__item:first-child {
    border: 0
  }

  .subNav__item>a,
  .subNav__item>span {
    margin-top: 0;
    padding: .75em;
    display: block
  }

  .subNav--budget .subNav__item>span {
    display: none
  }

  .subNav--megaMenu .subNav__item>a {
    width: 100%
  }

  .subNavLv2 {
    margin-top: 0
  }

  .subNavLv2__item {
    padding: 0
  }

  .subNavLv2__item>a {
    padding: .3em .75em .3em 1.75em;
    display: block
  }

  .subNavLv2__sp {
    display: inline-block
  }

  .subNavLv2--budget {
    padding-left: 0
  }

  .subNavLv2--budget .subNavLv2__item {
    padding: 0;
    border-top: 1px dotted #EB6464
  }

  .subNavLv2--budget .subNavLv2__item>a,
  .subNavLv2--budget .subNavLv2__item>span {
    margin-top: 0;
    padding: .75em;
    display: block;
    text-indent: 0
  }

  .subNavLv2--budget .subNavLv2__item>a::before,
  .subNavLv2--budget .subNavLv2__item>span::before {
    content: '\f138';
    font: normal normal normal 14px/1 FontAwesome;
    color: #eb6464
  }

  .subNavLv2--budget .subNavLv2__item>a .display_sp,
  .subNavLv2--budget .subNavLv2__item>span .display_sp {
    display: inline-block
  }

  .subNavLv2--megaMenu .subNavLv2__item>a {
    padding: 15px 10px 5px
  }

  .onekind .megaMenuFeature__img img {
    float: left;
    width: 70px;
    margin-bottom: 10px
  }

  .megaMenuFeature.onekind {
    display: block
  }

  .onekind .megaMenuFeature__list {
    width: calc(100% - 0px)
  }

  .onekind .megaMenuFeature__list li,
  .onekind .megaMenuFeature__list li:first-child {
    padding: 3px 5px 3px 75px
  }

  .subNav__item__3 {
    padding: .75em;
    border-top: 1px dotted #EB6464
  }

  .globalNav__item--reading .subNav:nth-of-type(1) .subNav__item__3:first-child {
    border-top: 0
  }

  .subNav__item__3>a {
    display: inline-block;
    padding-left: 1.3em;
    text-indent: -1.3em;
    font-size: 14px;
    line-height: 1.2em
  }

  .nav-first {
    padding: .75em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 10px
  }

  .nav-first__item {
    width: 50%
  }

  .nav-first__btn {
    min-height: 45px;
    padding: 3px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1.2;
    font-weight: 700;
    color: #fff;
    text-align: center;
    border-radius: 2px;
    border-width: 2px;
    border-style: solid
  }

  .nav-first__btn--login {
    background-color: #da3940;
    border-color: #da3940
  }

  .nav-first__btn--login:link,
  .nav-first__btn--login:visited,
  .nav-first__btn--login:hover,
  .nav-first__btn--login:focus,
  .nav-first__btn--login:active {
    color: #fff
  }

  .nav-first__btn--regist {
    background-color: #fdf1d9;
    border-color: #dc7272
  }

  .nav-first__btn--regist:link,
  .nav-first__btn--regist:visited,
  .nav-first__btn--regist:hover,
  .nav-first__btn--regist:focus,
  .nav-first__btn--regist:active {
    color: #dc7272
  }

  header #header_menu .msg-login {
    width: auto;
    padding: 0 .75em;
    margin: 0;
    font-size: 1em;
    color: #000
  }
}

@media screen and (min-width:641px) {
  #mtarea {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #FFF
  }

  #mtarea .mtarea_inner {
    width: 1000px;
    position: relative
  }

  #bnrClose {
    background-color: #000;
    border-radius: 50%;
    color: #FFF;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    width: 28px;
    height: 28px;
    line-height: 28px;
    text-align: center;
    position: absolute;
    top: 20px;
    right: 40px;
    font-weight: 700;
    z-index: 0
  }
}

@media screen and (min-width:320px) {
  #mtarea {
    width: 100%;
    position: fixed;
    z-index: 99998
  }

  #mtarea .mtarea_inner {
    width: 100%;
    position: relative
  }

  #mtpic {
    width: 100%;
    position: absolute
  }

  #bnrClose {
    background-color: #000;
    border-radius: 50%;
    color: #FFF;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    width: 28px;
    height: 28px;
    line-height: 28px;
    text-align: center;
    top: 4px;
    position: absolute;
    right: 5px;
    font-weight: 700
  }
}

@media screen and (min-width:641px),
print {
  .product_code {
    margin-top: 3px
  }

  footer #ft_contents {
    position: relative
  }

  table.ft_ssl {
    position: absolute;
    bottom: 30px;
    right: 10px;
    width: 135px;
    float: none;
    margin: 0
  }

  .schedule_list_vernor_arrow {
    display: none
  }

  body:before {
    content: "";
    display: block;
    padding-top: 0%
  }

  .display_pc {
    display: block
  }

  .dispaly_sp {
    display: none
  }

  .crumb_box {
    width: 1000px;
    margin: 0 auto;
    clear: both
  }

  #product .ranking {
    display: inline-block;
    width: 100%;
    background-color: #fffde9;
    border: 2px solid #fedf8f;
    padding: 1em;
    margin-bottom: 2em
  }

  #product .ranking {
    display: inline-block;
    width: 100%;
    background-color: #fffde9;
    border: 2px solid #fedf8f;
    padding: 1em
  }

  #product .ranking img {
    width: 90%;
    margin: 5%
  }

  .col_mother_ranking {
    width: 10%;
    padding: 10px .5%;
    float: left
  }

  .contents-index-ttl--outer {
    margin-top: 50px
  }

  .contents-index-ttl h1 br.display_sp {
    display: none
  }

  .gotoAnchor span:after {
    white-space: normal
  }

  .gotoAnchor {
    line-height: 3em
  }

  .gotoAnchor::before {
    top: 2px;
    left: 2px
  }

  .gotoAnchorWrap,
  .gotoAnchorWrap.osonae {
    margin: 20px 0;
    padding: 15px 0;
    border-top: none;
    border-bottom: none
  }

  .i879-set .gotoAnchorWrap {
    margin: 20px 0 50px
  }

  .gotoAnchorWrap a {
    border-top: solid 1px #7a7a7a;
    border-bottom: solid 1px #7a7a7a
  }

  .gotoAnchor.birth,
  .osonae .gotoAnchor {
    padding: 0 10px 0 48px
  }

  .column_index_title {
    margin: 30px 0 20px 0;
    padding: 15px 10px 10px 70px;
    min-height: 70px
  }

  .column_index_title {
    background-repeat: no-repeat;
    background-size: 15%;
    background-position: 98% 27%
  }

  .column_index_title img {
    width: 60px;
    height: auto;
    top: 0;
    left: 0
  }

  .column_index_title h1 {
    display: inline;
    font-size: 1.5em
  }

  .column_index_title h1:after {
    content: "\A";
    white-space: pre
  }

  .column_more input {
    display: none
  }

  .column_more label {
    display: none
  }

  .column_innner {
    margin-bottom: 10px
  }

  ul.column_innner li {
    width: 20%;
    float: left
  }

  ul.column_innner li dl dt span.column_innner_title {
    font-size: .8em;
    top: 70px
  }

  ul.column_innner li dl dd {
    font-size: 1em
  }

  ul.column_innner li dl dt {
    width: 200px;
    height: 106px;
    overflow: hidden
  }

  ul.column_innner li img {
    transition: 0.3s
  }

  ul.column_innner li img:hover {
    -ms-transform: scale(1.3);
    transform: scale(1.3)
  }

  ul.column_innner li dl dd {
    width: 100%;
    height: 7.5em;
    white-space: normal;
    text-overflow: clip;
    -webkit-text-overflow: clip;
    -o-text-overflow: clip;
    font-size: .7em
  }

  .column_index_title h1 {
    top: 30px
  }

  .floatBanner {
    bottom: 60px
  }

  #floatBanner-fathercolumn .floatBanner {
    border: 1px solid #003b96
  }
}

@media screen and (min-width:320px) {
  .schedule_list_ver02_outer {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch
  }

  .schedule_list_ver02_box {
    position: relative
  }

  .schedule_list_ver02_arrow {
    color: #eb6464;
    position: absolute;
    right: 0;
    top: 0;
    background: rgba(255, 255, 255, .6);
    padding: 10px;
    padding-top: 20%;
    height: 100%
  }

  .schedule_list_vernor_arrow {
    color: #eb6464;
    position: absolute;
    right: 0;
    top: 0;
    background: rgba(255, 255, 255, .6);
    padding: 10px;
    padding-top: 25%;
    height: 90%
  }

  .schedule_list_ver02_outer table.ate_table {
    width: 600px
  }

  .column_index_title {
    min-height: 58px;
    padding: 10px 10px 10px 75px
  }

  .column_box .column_index_title h1 {
    top: 15px;
    font-size: 1.3em
  }

  .column_more {
    margin-top: 0;
    margin-bottom: 30px 10px
  }

  .column_index_title h1+p {
    display: none
  }

  .column_more input {
    display: none
  }

  .column_more label {
    cursor: pointer;
    display: inline-block;
    padding: 10px;
    width: 100%;
    text-align: center;
    color: #714141;
    background: #ffd9ec;
    border-top: 1px solid #fff;
    font-weight: 700;
    transition: 0.1s;
    font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', '繝偵Λ繧ｮ繝手ｧ偵ざ ProN W3', Meiryo, 繝｡繧､繝ｪ繧ｪ, sans-serif
  }

  .column_more :hover {
    color: #fff;
    background: #ff9dca
  }

  .column_more .column_panel {
    transition: .3s ease;
    height: 0;
    overflow: hidden;
    background: #fff7e3;
    padding: 0
  }

  .column_more input:checked+.column_panel {
    height: auto
  }

  .mother_index_more .m_index_panel {
    transition: .3s ease;
    height: 0;
    overflow: hidden;
    background: #fff7e3;
    padding: 0
  }

  .mother_index_more input:checked+.m_index_panel {
    height: auto
  }

  .column_box {
    width: 100%;
    margin-bottom: 40px
  }

  .m_index_wrapper {
    overflow: hidden
  }

  .column_index_title h1 {
    top: 15px;
    font-size: 1.3em
  }

  .father_ver .column_more .column_panel {
    height: auto;
    overflow: visible;
    background: #fff7e3
  }

  .logo-sdgs {
    display: none
  }

  header #header_logo_sp_wrapper .mypg_lk {
    float: left;
    width: 9%;
    margin: 2% 0 0 0
  }

  header #header_logo_sp_wrapper .mypg_lk {
    margin: 3% 0 0 0
  }

  .mypg_lk {
    position: relative
  }

  .cartItemNumber {
    position: absolute;
    top: -7px;
    right: -5px;
    padding: 2px 8px;
    border-radius: 15px;
    background: red;
    color: #fff;
    font-weight: 700
  }
}

@media screen and (min-width:768px) {
  .np-keyword-suggest {
    width: 300px !important
  }

  .np-keyword-suggest div {
    width: 300px !important
  }
}

body {
  margin: 0;
}

body:before {
  display: none;
}

.drawer-nav {
  width: 19.25rem;
}

.header #header_menu {
  width: 43px;
  position: absolute;
  top: 0;
  left: 0;
}

.header__logo {
  width: 255px;
}

.mypg_lk {
  position: relative;
}

.smartphone_header {
  width: 100%;
  height: 65px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 99999;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
}

.user-menu {
  padding-top: 3px;
  padding-right: 10px;
  position: absolute;
  right: 0;
  display: flex;
  align-items: center;
}

.cartItemNumber {
  width: 25px;
  height: 25px;
  padding: 0;
  top: -8px;
  right: -8px;
  display: block;
  line-height: 25px;
  text-align: center;
}

.header {
  background-color: #fff;
}