@charset "UTF-8";
/* ヘッダー */
.header-line {
    width: 100%;
    height: 3px;
    background: #AD0026;
    position:fixed;
    z-index: 2000;
}
.header-top {
    display: flex;
    justify-content: space-between;
    border-bottom: solid 1px #E2E2E2;
    padding-top: calc(19px / 2);
    padding-bottom: calc(19px / 2);
    padding-left: 10px;
    padding-right: calc(25px / 2);
    background-color: #FFFFFF;
}
.header-top .logo {
    position: relative;
}
.header-top .logo span {
    position: relative;
    top: 13px;
    left: 5px;
    font-size: 1rem;
}
.header-top .logo img {
    width: calc(235px / 2);
    height: auto;
}
.header-info {
    position: relative;
    top: 5px;
    width: 25px;
}
.header-info img {
    width: calc(30px /2);
    height: auto;
    display: block;
    margin: auto;
}
.header-info__batch {
    min-width: 6px;
    min-height: 6px;
    max-height: 12px;
    border-radius: 100vh;
    background-color: #FF0000;
    text-align: center;
    position: absolute;
}
.header-info__batch--on {
    top: -7px;
    left: 0;
    right: 0;
    line-height: 12px;
    width: 25px;
}
.header-info__batch span {
    color: #FFFFFF;
    font-size: 0.8rem;
    padding-left: 4px;
    padding-right: 5px;
    display: block;
}
.header-info__batch--off {
    
}
.header-info__batch.header-info__batch--off {
    display: none;
}

.header {
    width: 100%;
    min-width: 320px;
    min-height: 50px;
    max-height: 50px;
    padding: 4px 0 5px;
    position: sticky;
    top: 3px;
    left: 0;
    z-index: 1100;
    background:#ffffff;
    -webkit-box-shadow: 2px 3px 6px 0 rgba(1, 1, 1, 0.15);
    box-shadow: 2px 3px 6px 0 rgba(1, 1, 1, 0.15);
}

.header__item,
.nologin-header__item {
    font-size: 0.8rem;
    text-align: center;
    width: fit-content;
    margin-right: calc(100 / 375 * 45 * 1vw);
    margin-left: auto;
}
.header__item ul,
.nologin-header__item ul {
    display: flex;
    align-items: end;
}
.header__item ul li a img,
.nologin-header__item ul li a img {
    margin-top: 0!important;
}
@media only screen and (orientation: landscape) {
    .header__item,
    .nologin-header__item {
        margin: auto;
    }
    .header__item ul,
    .nologin-header__item ul {
        padding-left: 0;
    }
}
.header__items a,
.nologin-header__items a {
    color: #7A7A7A;
    position: relative;
    display: block;
}
.header__items a span,
.nologin-header__items a span {
    position: absolute;
    display: block;
    background: #FF0000;
    border-radius: 100vh;
    color: #ffffff;
    white-space: nowrap;
}
.header__items img,
.nologin-header__items img {
    display: block;
    margin: auto;
}
.header__items--e-detailing {
    margin-right: calc(100 / 375 * (19 / 2) * 1vw);
}
.header__items--e-detailing a span {
    font-size: 1rem;
    line-height: 0.9;
    padding: 1px 3px 0px;
    top: -4px;
    right: 5px;
}
.header__items--e-detailing img {
    width: calc(100 / 375 * (70 / 2) * 1vw);
    max-width: calc(70px / 2);
    height: auto;
}
.header__items--lecture {
    margin-right: calc(100 / 375 * (43 / 2) * 1vw);
}
.header__items--lecture a span {
    font-size: 0.8rem;
    line-height: 1.125;
    padding: 1px 4px;
    top: -3px;
    right: -5px;
}
.header__items--lecture img {
    width: calc(100 / 375 * (80 / 2) * 1vw);
    max-width: calc(80px / 2);
    height: auto;
}
.header__items--enquete {
    margin-right: calc(100 / 375 * (45 / 2) * 1vw);
}
.header__items--enquete a span {
    font-size: 0.8rem;
    line-height: 12px;
    min-width: 12px;
    padding: 0 3px;
    top: -3px;
    right: -1px;
}
.header__items--enquete img {
    width: calc(100 / 375 * (80 / 2) * 1vw);
    max-width: calc(80px / 2);
    height: auto;
}
.header__items--up {
    margin-right: calc(100 / 375 * (43 / 2) * 1vw);
}
.header__items--up a span {
    font-size: 0.8rem;
    line-height: 12px;
    min-width: 12px;
    padding: 0 2px;
    top: -3px;
    right: -5px;
}
.header__items--up img {
    width: calc(100 / 375 * (80 / 2) * 1vw);
    max-width: calc(80px / 2);
    height: auto;
}
.header__items--point,
.nologin-header__items--point {
    margin-right: calc(100 / 375 * (45 / 2) * 1vw);
}
.header__items--point a span,
.nologin-header__items--point a span {
    font-size: 0.8rem;
    line-height: 1.125;
    padding: 1px 4px;
    top: -3px;
    right: -5px;
}
.header__items--point img,
.nologin-header__items--point img {
    width: calc(100 / 375 * (80 / 2) * 1vw);
    max-width: calc(80px / 2);
    height: auto;
}

.header__items--news,
.nologin-header__items--news {
    margin-right: calc(100 / 375 * (43 / 2) * 1vw);
}
.header__items--news img,
.nologin-header__items--news img {
    width: calc(100 / 375 * (80 / 2) * 1vw);
    max-width: calc(80px / 2);
    height: auto;
}
.header__items--column,
.nologin-header__items--column {
    margin-right: calc(100 / 375 * (42 / 2) * 1vw);
}
.header__items--column img,
.nologin-header__items--column img {
    width: calc(100 / 375 * (80 / 2) * 1vw);
    max-width: calc(80px / 2);
    height: auto;
}
.header__items--medication-search {
    margin-right: calc(100 / 375 * (43 / 2) * 1vw);
}
.header__items--medication-search img {
    width: calc(100 / 375 * (80 / 2) * 1vw);
    max-width: calc(80px / 2);
    height: auto;
}
.header__items--help,
.nologin-header__items--help {
    margin-right: calc(100 / 375 * (42 / 2) * 1vw);
}
.header__items--help img,
.nologin-header__items--help img {
    width: calc(100 / 375 * (80 / 2) * 1vw);
    max-width: calc(80px / 2);
    height: auto;
}
.header__items--login,
.nologin-header__items--login {
    margin-right: calc(100 / 375 * (42 / 2) * 1vw);
}
.header__items--login img,
.nologin-header__items--login img {
    width: calc(100 / 375 * (80 / 2) * 1vw);
    max-width: calc(80px / 2);
    height: auto;
}

@media only screen and (orientation: landscape) {
    .header__items--e-detailing {
        margin-right: calc(57px / 2);
    }
    .header__items--lecture {
        margin-right: calc(68px / 2);
    }
    .header__items--enquete {
        margin-right: calc(78px / 2);
    }
    .header__items--up {
        margin-right: calc(78px / 2);
    }
    .header__items--point {
        margin-right: 0;
    }
    .no-doctor .header__items--news {
        margin-right: calc(78px / 2);
    }
    .no-doctor .header__items--column {
        margin-right: calc(78px / 2);
    }
    .no-doctor .header__items--medication-search {
        margin-right: calc(78px / 2);
    }
    .no-doctor .header__items--enquete {
        margin-right: calc(78px / 2);
    }
    .no-login .header__items--news,
    .nologin-header__items--news {
        margin-right: calc(78px / 2);
    }
    .no-login .header__items--column,
    .nologin-header__items--column {
        margin-right: calc(78px / 2);
    }
    .no-login .header__items--point,
    .nologin-header__items--point {
        margin-right: calc(78px / 2);
    }
    .no-login .header__items--help,
    .nologin-header__items--help {
        margin-right: calc(78px / 2);
    }
    .no-login .header__items--login,
    .nologin-header__items--login {
        margin-right: 0;
    }
    
    
}

/* ハンバーガーメニュー */
.hamburger-menu {
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
    border-radius: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #AD0026;
    border: none;
    padding: 0;
}
.open .hamburger-menu--ext {
    top: 10px;
    left: 5px;
    right: auto;
    z-index: 999999;
    position: fixed;
}
@media only screen and (orientation: landscape) {
    .open .hamburger-menu--ext { 
        left: auto;
        right: 320px;
    }
}

.hamburger-menu__item {
    width: 22px;
    height: 3px;
    border-radius: 100vh;
    background: #ffffff;
    position: relative;
}
.hamburger-menu__item::before,
.hamburger-menu__item::after {
    content: "";
    display: block;
    width: 22px;
    height: 3px;
    border-radius: 100vh;
    background: #ffffff;
    position: absolute;
}
.hamburger-menu__item::before {
    top: -8px;
}
.hamburger-menu__item::after {
    bottom: -8px;
}

.hamburger-menu--ext .hamburger-menu__item{
    rotate: 45deg;
    top: 0;
    bottom: 0;
}
.hamburger-menu--ext .hamburger-menu__item::before {
    rotate: 90deg;
    top: 0;
    bottom: 0;
}
.hamburger-menu--ext .hamburger-menu__item::after {
    display: none;
}

/* ドロワーメニュー */
body.open {
    overflow: hidden;
    /*
    width: 100%;
    height: 100%;
    position: fixed;
    */
}
.nav-wrapper {
    width: 86.66666%;
    background-color: #ffffff;
    overflow-y: auto;
    transform: translateX(0);
    transition: right .4s cubic-bezier(.19,1,.22,1);
    right:  -100%;
}
@media only screen and (orientation: landscape) {
    .nav-wrapper {
        width: 325px;
    }
}
.nav-wrapper.open {
    transform: translateX(0);
    transition: right .4s cubic-bezier(.19,1,.22,1);
    right: 0;
}
.nav-wrapper-inner {
    overflow: auto;
    padding-bottom: 34px;
}

.nav-header {
    background: #F2F2F2;
    padding-top: calc(29px / 2);
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    width: 100%;
}
.no-login .nav-header {
    padding: 0;
}
.nologin-nav-header {
    padding: 0;
    width: 100%;
}

.nav-header-user {
    font-size: clamp(10px, 2.9333vw, 11px);
    margin-bottom: calc(29px / 2);
}
.nav-header-user__name {
    color: #444444;
    line-height: 1.7272727;
    font-weight: 600;
    margin-bottom: calc(9px / 2);
}
.nav-header-user__prof {
    color: #666666;
    line-height: 1.36363636;
}

.nologin-nav-header-regist-area {
    padding-top: calc(50px / 2);
    padding-bottom: calc(52px / 2);
    background: url('/common/images-sp/header/img_drawer_nologin_bg_2024.png') no-repeat 0 0;
    background-size: 100%;
    width: 100%;
}
.nologin-nav-header-regist-area__logo {
    width: 150px;
    height: auto;
    display: block;
    margin: auto auto calc(34px / 2);
}
.nologin-nav-header-regist-area__copy {
    font-family:  "Hiragino Sans", "ヒラギノ角ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Osaka"!important;
    font-size: 1.5rem;
    font-weight: 900;
    line-height: 1.4666666;
    text-align: center;
    margin-bottom: 15px;
}
.nologin-nav-header-regist-area__copy + p {
    font-family:  "Hiragino Sans", "ヒラギノ角ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Osaka"!important;
    font-size: 1.3rem;
    line-height: 1.6923076;
    font-weight: 600;
    margin-bottom: calc(37px / 2);
    text-align: center;
}
.nologin-nav-header-regist-area__btn {
    max-width: calc(570px / 2);
    margin: auto;
}
.nav-header-regist-area__button {
    width: 100%;
}
.nologin-nav-header-regist-area__button:first-child {
    margin-bottom: 13px;
}
.nologin-nav-header-regist-area__button a {
    display: block;
    width: 100%;
    height: 44px;
    color: #FFFFFF;
    background-color: #AD0026;
    box-shadow: 0 3px 0 rgb(125,0, 27);
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 44px;
    text-align: center;
    border-radius: 5px;
}
.nologin-nav-header-regist-area__button a.linkTap {
    background-color: #AD0026!important;
    color: #FFFFFF!important;
}

.nologin-nav-header-regist-area__button--login a {
    background: #FFFFFF;
    color: #AD0026;
    border: solid 1px #AD0026;
}

.nologin-nav-header-regist-area__button--login a.linkTap {
    background: #FFFFFF!important;
    color: #AD0026!important;
}

.nav-header-point-up {
    display: flex;
    justify-content: space-between;

}
.nav-header-point,
.nav-header-up {
    background: #FFFFFF;
    position: relative;
    box-shadow: 0 2px 4px rgba(1, 1, 1, 0.1);
}
.nav-header-point a,
.nav-header-up a {
    color: #444444;
}

.nav-header-point::before ,
.nav-header-up::before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 0;
    left: 0;
}
.nav-header-point::before {
    border-top: 7.5px solid #E6100B;
    border-left: 7.5px solid #E6100B;
    border-right: 7.5px solid transparent;
    border-bottom: 7.5px solid transparent;
}
.nav-header-up::before {
    border-top: 7.5px solid #003B8E;
    border-left: 7.5px solid #003B8E;
    border-right: 7.5px solid transparent;
    border-bottom: 7.5px solid transparent;
}

.nav-header-point::after,
.nav-header-up::after {
    content: "";
    display: block;
    width: 5px;
    height: 10px;
    background: #FFFFFF url('/common/images-sp/common/icon/ico_arrow_gray.png') no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 6.25px;
    margin: auto;
}

.nav-header-point {
    width: 41.6393344262%;
}
.nav-header-point a{
    display: block;
    width: 100%;
    height: 100%;
}
.no-doctor .nav-header-point {
    margin: auto;
}

.nav-header-up {
    width: 55.081967213%;
}
.nav-header-up a {
    display: block;
    width: 100%;
    height: 100%;
}

.nav-header-point__title,
.nav-header-up__title {
    font-size: clamp(12px, 4vw, 15px);
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    color: #444444;
    padding-top: 10px;
    margin-bottom: 5px;
}
.nav-header-point__number {
    font-size: clamp(13px, 4.2666666666vw, 16px);
    font-weight: 700;
    line-height: 1.09375;
    padding-bottom: 12px;
    text-align: center;
    color: #E6100B;
    font-family: Arial, Helvetica, sans-serif;
}
.nav-header-up__number {
    font-size: clamp(10px, 2.9333vw, 11px);
    text-align: center;
}
.nav-header-up__left-number {
    font-size: clamp(13px, 4.2666666666vw, 16px);
    font-weight: 700;
    line-height: 1.09375;
    color: #003B8E;
    font-family: Arial, Helvetica, sans-serif;
}
.nav-header-up__get-number {
    font-size: clamp(13px, 4.2666666666vw, 16px);
    font-weight: 700;
    line-height: 1.09375;
    color: #E6100B;
    font-family: Arial, Helvetica, sans-serif;
}

.nav-search {
    background-color: #FFFFFF;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 20px;
    margin-bottom: 10px;
}
.nav-search-wrapper {
    position: relative;
}
.nav-search__text {
    width: 100%;
    height: 44px;
    line-height: 44px;
    font-size: clamp(13px, 4vw, 14px);
    background: #FAFAFA;
    border: solid 1px #CDCDCD;
    border-radius: 5px;
    padding-left: 11px;
    padding-right: 26px;
    box-sizing: border-box!important;
}
.nav-search__text::placeholder,
.nav-search__text::-webkit-input-placeholder,
.nav-search__text:-moz-placeholder,
.nav-search__text::-moz-placeholder {
    color: #CDCDCD;
}
.nav-search__btn {
    width: calc(31px /2);
    position: absolute;
    right: 12px;
    top: 0;
    bottom: 0;
    margin: auto;
}

.nav-item-wrapper {
    background: #FFFFFF;
    padding-left: 10px;
    padding-right: 10px;
}
.nav-item li a {
    color: #111111;
    font-weight: 700;
    font-size: clamp(12px, 4vw, 15px);
    line-height: 1;
    display: block;
    padding-top: calc(29px / 2);
    padding-bottom: calc(26px / 2);
    position: relative;
    width: 100%;
}
.nav-items--parent > a,
.nav-items--outer-link a,
.nav-items--child-ext {
    padding-left: 5px;
}
.nav-items--parent > a::after {
    content: "";
    width: 5px;
    height: 10px;
    background: url('/common/images-sp/common/icon/ico_arrow_gray.png') no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 4.75px;
    margin: auto;
    rotate: 90deg;
}
.nav-items--active.nav-items--parent > a::after {
    rotate: -90deg;
}
.nav-items--child > a::after {
    content: "";
    width: 5px;
    height: 10px;
    background: #FFFFFF url('/common/images-sp/common/icon/ico_arrow_gray.png') no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 4.75px;
    margin: auto;
}
.nav-items--outer-link > a::after {
    content: "";
    width: 12px;
    height: 12px;
    background: #FFFFFF url('/common/images-sp/common/icon/ico_outer_link_2024.png') no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 2px;
    margin: auto;
}
.nav-item--child li a {
    color: #444444;
    font-weight: 400;
    font-size: clamp(11px, 3.46666666666vw, 13px);
    line-height: 1;
    padding-top: calc(27px / 2);
    padding-bottom: calc(26px / 2);
    padding-left: 5px;
}
.nav-item--child {
    padding-left: 10px!important;
    display: none;
}
.nav-items--parent,
.nav-items--child,
.nav-items--outer-link {
    border-bottom: solid 1px #E2E2E2;
}
.nav-items--parent.nav-items--active {
    border-bottom: none;
}
.nav-items--active > a {
    border-bottom: solid 1px #E2E2E2;
    background-color: #F5F5F5;
}
.nav-item-wrapper a:hover, .nav-item-wrapper a:focus {
    color: #444444 !important;
    text-decoration: none;
}

.nav-user-setting {
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 30px;
}
.nav-user-setting__button {
    width: 100%;
    background-color: #FFFFFF;
    border: solid 1px #CCCCCC;
    border-radius: 5px;
    box-shadow: 0 2px 0 rgba(204, 204, 204, 1);
}
.nav-user-setting__button:first-child {
    margin-bottom: 12px;
}
.nav-user-setting__button a {
    width: 100%;
    height: 45px;
    display: block;
    line-height: 45px;
    font-size: 1.4rem;
    font-weight: 600;
    color: #444444;
    text-align: center;
}

.nav-footer {
    display: flex;
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 32px;
}

.nav-footer-sns {
    display: flex;
    justify-content: space-between;
    gap: 0 10px;
    border-right: solid 1px #E2E2E2;
    padding-right: 15px;
    width: calc(175 / 285 * 100%);
}
.nav-footer-sns a{
    width: calc(50% - 5px);
}
.nav-footer-sns img {
    width: 100%;
    height: auto;
    flex: none;
}
.nav-footer-change-pc {
    margin-left: 15px;
    width: calc(95 / 285 * 100%);
}
.nav-footer-change-pc img {
    width: 100%;
    height: auto;
}

/* ヘッダーお知らせ */
.info-open {
    overflow: hidden;
}
.header-info-wrapper {
    position: fixed;
    top: 42px;
    background: rgba(0, 0, 0, .5);
    width: 100%;
    height: 100%;
    z-index: 3000;
    border-top: solid 1px #E2E2E2;
    display: none;
    opacity: 0;
    z-index: 5000;
}
.info-open .header-info-wrapper {
    display: block;
    transition: all .3s;
    opacity: 1;
}
.header-info-wrapper::before {
    content: "";
    width: 6px;
    height: 6px;
    border-top: solid 1px #E2E2E2;
    border-left: solid 1px #E2E2E2;
    background-color: #ffffff;
    rotate: 45deg;
    position: absolute;
    top: -4px;
    right: 24px;
    z-index: 3500;
}
.header-info-wrapper-inner {
    overflow: scroll;
    background-color: #FFF;
    position: relative;
    z-index: 6000;
}
.header-info-item {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 50px;
}
@media only screen and (orientation: landscape) {
    .header-info-wrapper-inner {
        height: 100%;
    }
    .header-info-item {
        max-width: 355px;
        margin: auto;
    }
}
.header-info-header {
    position: relative;
    box-shadow: none;
    max-width: inherit;
    min-width: inherit;
    max-height: inherit;
    min-height: inherit;
    box-shadow: none;
    padding: 0;
}
.header-info-header__title {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.055555;
    text-align: center;
    padding-top: calc(36.5px / 2);
    padding-bottom: 9px;
}
.header-info-items {
    padding-top: calc(17px / 2);
    padding-left: 5px;
    padding-right: calc(25px / 2);
    padding-bottom: calc(17px / 2);
    border-bottom: solid 1px #E2E2E2;
}
.header-info-items,
.header-info-items a {
    color: #444444;
}
.header-info-items a {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}
.header-info-items a::after {
    content: "";
    width: 5px;
    height: 10px;
    background: #FFFFFF url('/common/images-sp/common/icon/ico_arrow_gray.png') no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -12px;
    margin: auto;
}

.header-info-items__text {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.58333333;
}
.header-info-items__date {
    font-size: 1rem;
    line-height: 1.9;
    color: #888888;
    margin-bottom: 5px;
}
.header-info-items__date span {
    display: inline-block;
    width: 32px;
    height: 15px;
    line-height: 1.7;
    text-align: center;
    color: #FFFFFF;
    background-color: #E00000;
    font-weight: 400;
    border-radius: 100vh;
    margin-right: 5px;
}

/* フッター */
.footer-page-top {
    background-color: #FFFFFF;
    padding-top: 20px;
    padding-bottom: 25px;
}
.footer-page-top a {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 400;
    background: url('/common/images-sp/footer/ico_pagetop_arrow_2024.png') no-repeat center 0;
    background-size: 10px;
    padding-top: 15px;
}

.footer {
    margin-top: 25px;
    background-color: #FFFFFF;
    -webkit-box-shadow: 0 -4px 8px 0 rgba(1, 1, 1, 0.1);
    box-shadow: 0 -4px 8px 0 rgba(1, 1, 1, 0.1);
}

.footer-page-top + .footer {
    margin-top: 0;
}

.footer.footer--api {
    -webkit-box-shadow: none;
    box-shadow: none;
}
.footer.footer--api .footer-item {
    -webkit-box-shadow: 0 -4px 8px 0 rgba(1, 1, 1, 0.1);
    box-shadow: 0 -4px 8px 0 rgba(1, 1, 1, 0.1);
}
/* ぱんくず */
.footer-breadcrumb {
    width: 100%;
    border-bottom: solid 1px #F2F2F2;
    
}
.footer-breadcrumb-item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 35px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.footer-breadcrumb-item li {
    background: url('/common/images-sp/footer/img_breadcrumb_arrow_2024.png') no-repeat right center;
    background-size: 19px;
    padding-right: 19px;
    padding-left: 11px;
    height: 35px;
    line-height: 35px;
    font-size: 1.2rem;
    white-space: nowrap;
}
.footer-breadcrumb-item li:last-of-type {
    background: none;
}
.footer-breadcrumb-item li:first-of-type {
    padding-left: 12px;
    padding-right: 24px;
}
.footer-breadcrumb-item li:first-of-type a img {
    width: 19px;
    height: auto;
}
.footer-breadcrumb-item li:first-of-type a {
    display: flex;
    align-items: center;
    height: 100%;
}
.footer-breadcrumb-item li a {
   color: #888888;
}

.footer-item {
    padding-top: 25px;
    padding-bottom: 25px;
    background-color: #FFFFFF;
}
.footer-item img {
    display: block;
    margin: auto;
    width: calc(235px / 2);
    height: auto;
}
.footer-item address {
    font-size: 1rem;
    color: #888888;
    line-height: 1.8;
    text-align: center;
    margin-top: 10px;
}

/* ログインエリア　フッター固定 */
.login-bottom-fix {
    display: flex;
    background: rgba(0,0,0,0.4);
    padding: 10px;
    position: fixed;
    bottom: 0;
    gap: 0 10px;
    width: 100%;
    z-index: 1200;
    justify-content: center;
}
.login-bottom-fix__button {
    width: calc(50% - 5px);
    max-width: calc(345px / 2);
}
.login-bottom-fix__button a {
    display: block;
    width: 100%;
    height: 44px;
    color: #FFFFFF;
    background-color: #AD0026;
    box-shadow: 0 3px 0 rgb(125,0, 27);
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 44px;
    text-align: center;
    border-radius: 5px;
}
.login-bottom-fix__button a.linkTap {
    background-color: #AD0026!important;
}
.login-bottom-fix__button--login a {
    background: #FFFFFF;
    color: #AD0026 ;
    border: solid 1px #AD0026;
}
.login-bottom-fix__button--login a.linkTap {
    background: #FFFFFF!important;
}

/* 下層ページにも新デザインを適用するために、ランキング部分で使うソースをヘッダー、フッター用ファイルに移植 */
/* ランキング */
.toppage-ranking {
    margin-top: 40px;
    padding-left: 10px;
    padding-right: 10px;
}
@media only screen and (orientation: landscape) {
    .toppage-ranking {
        max-width: 375px;
        margin-left: auto;
        margin-right: auto;
    }
}
.toppage-ranking-list {
    display: flex;
    flex-wrap: wrap;
}
.toppage-ranking-list__items {
    width: 100%;
    background-color: #FFFFFF;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
    margin-bottom: 10px;
    position: relative;
    overflow: hidden;
}
.toppage-ranking-list__items a {
    display: flex;
}
.toppage-ranking-list--rank1 a{
    display: block;
}
.toppage-ranking-list--rank2 a {
    display: block;
}
.toppage-ranking-list--rank3 a {
    display: block;
}
.toppage-ranking-list--rank2 {
    width: calc(50% - 5px);
    margin-right: 5px;
}
.toppage-ranking-list--rank3 {
    width: calc(50% - 5px);
    margin-left: 5px;
}
.toppage-ranking-list__image {
    max-width: 19.718309859%;
    min-width: 70.5px;
    min-height: 70.5px;
    aspect-ratio: 1 / 1;
    margin: auto;
}
.toppage-ranking-list__image img {
    width: calc(100 / 375 * 70.5 * 1vw);
    height: calc(100 / 375 * 70.5 * 1vw);
    min-width: 70.5px;
    min-height: 70.5px;
}
@media only screen and (orientation: landscape) {
    .toppage-ranking-list__image img {
        width: calc(100 / 812 * 70.5 * 1vw);
        height: calc(100 / 812 * 70.5 * 1vw);
        max-width: 70.5px;
        max-height: 70.5px;
        min-width: 70.5px;
        min-height: 70.5px;
    }
}

.toppage-ranking-list__text {
    width: calc(100% - 19.718309859%);
}
.toppage-ranking-list__rank {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 200;
}
.toppage-ranking-list__rank {
    width: 20px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    font-size: 1.1rem;
    color: #666666;
    background-color: #DDDDDD;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}
.toppage-ranking-list--rank1 .toppage-ranking-list__rank {
    width: 34px;
    height: 19px;
    line-height: 19px;
    text-align: center;
    font-size: 1.3rem;
    color: #FFFFFF;
    background-color: #E2C924;
}
.toppage-ranking-list--rank2 .toppage-ranking-list__rank {
    width: 34px;
    height: 19px;
    line-height: 19px;
    text-align: center;
    font-size: 1.3rem;
    color: #FFFFFF;
    background-color: #A1B1B7;
}
.toppage-ranking-list--rank3 .toppage-ranking-list__rank {
    width: 34px;
    height: 19px;
    line-height: 19px;
    text-align: center;
    font-size: 1.3rem;
    color: #FFFFFF;
    background-color: #C9A349;
}
.toppage-ranking-list--rank1 .toppage-ranking-list__text {
    position: absolute;
    bottom: 0;
    z-index: 100;
    color: #FFFFFF;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 7px;
}
.toppage-ranking-list--rank1 .toppage-ranking-list__image::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    position: absolute;
    z-index: 50;
}
.toppage-ranking-list--rank1 .toppage-ranking-list__image {
    width: 100%;
    height: auto;
    max-width: 100%;
    aspect-ratio: inherit;
    background-color: #777777;
}
.toppage-ranking-list--rank1 .toppage-ranking-list__image img {
    width: 100%;
    max-width: calc(533px / 2);
    aspect-ratio: 533 / 300;
    height: auto;
    display: block;
    margin: auto;
}
.toppage-ranking-list--rank1 .toppage-ranking-list__text {
    width: 100%;
}
.toppage-ranking-list--rank1 .toppage-ranking-list__text .toppage-ranking-list__article-data {
    font-size: 1rem;
    font-weight: 400;
    margin-bottom: 3px;
    color: #FFFFFF;
}
.toppage-ranking-list--rank1 .toppage-ranking-list__text .toppage-ranking-list__title {
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.4666666;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    word-break: break-all;
    color: #FFFFFF;
    margin-bottom: 0;

}
.toppage-ranking-list--rank2 .toppage-ranking-list__image,
.toppage-ranking-list--rank3 .toppage-ranking-list__image {
    width: 100%;
    height: auto;
    max-width: 100%;
    aspect-ratio: 23 / 12;
}
.toppage-ranking-list--rank2 .toppage-ranking-list__image img,
.toppage-ranking-list--rank3 .toppage-ranking-list__image img {
    width: 100%;
    height: 100%;
    display: block;
}
.toppage-ranking-list--rank2 .toppage-ranking-list__text,
.toppage-ranking-list--rank3 .toppage-ranking-list__text {
    width: 100%;
    padding: 5px 7px 0;
}
.toppage-ranking-list--rank2 .toppage-ranking-list__text .toppage-ranking-list__title,
.toppage-ranking-list--rank3 .toppage-ranking-list__text .toppage-ranking-list__title {
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 1.46153846;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 3;
    word-break: break-all;
    margin-bottom: 4px;
    height: 4.27461538em;
}
.toppage-ranking-list--rank2 .toppage-ranking-list__text .toppage-ranking-list__article-data,
.toppage-ranking-list--rank3 .toppage-ranking-list__text .toppage-ranking-list__article-data {
    font-size: 1rem;
    font-weight: 400;
    margin-bottom: 3px;
    line-height: 2;
    color: #888888;
    display: flex;
    align-items: center;
}
.toppage-ranking-list--rank2 .toppage-ranking-list__text .toppage-ranking-list__article-data span,
.toppage-ranking-list--rank3 .toppage-ranking-list__text .toppage-ranking-list__article-data span {
    max-width: calc(157px - 5em);
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.toppage-ranking-list__text {
    padding-left: 7px;
    padding-right: 7px;
    padding-top: 5px;
}
.toppage-ranking-list__article-data {
    color: #888888;
    font-size: 1rem;
    line-height: 2;
}
.toppage-ranking-list__title {
    color: #111111;
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 1.46153846;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    word-break: break-all;
    margin-bottom: 6px;
    height: 2.92307692em;
}

.toppage-ranking .toppage-section-header {
    position: relative;
    background: none;
    max-width: inherit;
    min-width: inherit;
    max-height: inherit;
    min-height: inherit;
    box-shadow: none;
    padding: 0;
    margin-bottom: 15px;
    z-index: 100;
}
.toppage-ranking .toppage-section-header .toppage-section-header__title {
    font-size: 1.8rem;
    font-weight: 900;
    line-height: 1;
    padding-top: 14px;
    padding-left: 15px;
    color: #111111;
}
.toppage-ranking .toppage-section-header::before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 0;
    left: 0;
}
.toppage-ranking .toppage-section-header--yel::before {
    border-top: 10px solid #EEDE7A;
    border-left: 10px solid #EEDE7A;
    border-right: 10px solid transparent;
    border-bottom: 10px solid transparent;
}



.indexButtonFotter {
    width: 93.75%!important;
    margin: 0 auto 25px!important;
}