@charset "utf-8";
header,
.breadcrumbs,
.foot-banner,
footer {
    z-index: 10;
    position: relative;
}
.top-bg {
    background: none!important;
}
.top-back {
    display: none!important;
}
.foot-banner {
    background: #fff;
}
#hobby_content {
    position: relative;
}
#hobby_content * {
    box-sizing: border-box;
}
#hobby_content a {
    transition: all 0.2s ease;
}
#hobby_content a:hover {
    text-decoration: none;
    cursor: pointer;
    transform: translateY(-4px);
    opacity: 1;
}
#hobby_content a, #hobby_content a:focus, #hobby_content area, #hobby_content area:focus {
    outline: none;
}
#hobby_content p, #hobby_content dd, #hobby_content li {
    text-align: justify;
    line-height: 1;
}
#hobby_content img {
    max-width: 100%;
    vertical-align: bottom;
}
@media screen and (min-width: 768px) {
    /* ======================================
    content [ コンテンツ ]
    ====================================== */
    #hobby_content .d_sp {
        display: none !important;
    }
    #hobby_content #page-top {
        cursor: pointer;
        display: none;
        overflow: hidden;
        position: fixed;
        bottom: 20px;
        right: calc(50% - 260px);
        width: 50px;
        transition: 0.4s ease-out;
        z-index: 2;
    }
    /* layout ====================================== */
    #hobby_content {
        position: relative;
        width: 100vw;
        height: 100%;
        overflow: hidden;
    }
    #hobby_content .cd-fixed-bg {
        position: relative;
        min-height: 100%;
        height: 100%;
        background-color: #feecd2;
        background-size: cover;
        background-attachment: fixed;
        background-repeat: no-repeat;
        background-position: center center;
        z-index: 2;
        background-image: url("../img/250919_hobby/content_bg.png");
    }
    #hobby_content .side_nav {
        position: fixed;
        bottom: 30px;
        left: calc(50% - 450px);
        width: 200px;
        height: auto;
        transition: all 0.3s ease;
    }
    #hobby_content .side_nav.scroll-in {
        bottom: calc(50% - 133px);
    }
    #hobby_content .side_nav ul {
        position: relative;
        padding-top: 12px;
    }
    #hobby_content .side_nav li {
        display: block;
        margin-bottom: 12px;
        width: 100%;
        position: relative;
    }
    #hobby_content .side_nav li:last-child {
        margin-bottom: 0;
    }
    #hobby_content .side_nav a {
        display: block;
    }
    #hobby_content #content_main {
        width: 390px;
        margin: 0 auto;
        position: relative;
        z-index: 3;
        background: #fff;
        overflow: hidden;
    }
    #hobby_content .sec_cont {
        position: relative;
        margin: 0 auto 15px;
        width: 89.744%;
    }
    #hobby_content .sec_cont .btn_buy {
        position: absolute;
        bottom: 23px;
        width: 58.857%;
        left: 20%;
    }
    /* pagetop */
    #hobby_content .pagetop {
        position: fixed;
        right: 20px;
        bottom: 165px;
        width: 54px;
        cursor: pointer;
        transition: .3s;
        opacity: 0;
        visibility: hidden;
    }
    #hobby_content .pagetop.active {
        opacity: 1;
        visibility: visible;
    }
    /* mv
   * ************************************************** */
    #hobby_content #mv {
        width: 100%;
        padding-top: 110.256%;
        background: url("../img/250919_hobby/mv_bg.png") no-repeat 0 0 / 100%;
        border-bottom: 20px solid #3fb5b5;
    }
    #hobby_content #mv h1 {
        width: 85.385%;
        position: absolute;
        top: 80px;
        left: 7.692%;
    }
    #hobby_content #mv .zoomIn {
        animation-name: zoomInAnime;
        animation-duration: 2s;
        animation-fill-mode: forwards;
    }
    /* mv_nav */
    #hobby_content .mv_nav {
        background: #fff;
        position: relative;
    }
    #hobby_content .mv_nav ul {
        display: flex;
        justify-content: center;
        align-items: flex-end;
        flex-wrap: wrap;
        padding: 30px 0 20px;
    }
    #hobby_content .mv_nav ul li {
        width: 28.205%;
        margin: 0 1.282% 10px;
    }
    #hobby_content .mv_btn {
        margin: 0 auto;
        padding: 10px 0 20px;
        width: 89.744%;
        background: #fff;
        border-top: 2px solid #000;
    }
    #hobby_content .mv_btn a {
        display: block;
        margin-bottom: 8px;
    }
    /* sec_tomica
   * ************************************************** */
    #hobby_content #sec_tomica {
        padding: 30px 0 20px;
        background: url("../img/250919_hobby/tomica_bg.png") repeat-y 50% 0 / 100%;
    }
    #hobby_content #sec_tomica .tomica_ttl {
        margin: 0 auto 280px;
        width: 33.333%;
    }
    #hobby_content #sec_tomica .tomica_cont01 {
        position: relative;
    }
    #hobby_content #sec_tomica .tomica_cont01::before {
        display: block;
        content: '';
        position: absolute;
        top: -267px;
        left: -2.6%;
        width: 108.857%;
        height: 312px;
        background: url("../img/250919_hobby/tomica_cont01_img.png") no-repeat 0 0 / contain;
    }
    #hobby_content #sec_tomica .tomica_cont01 .btn_buy01 {
        bottom: 54.545%;
    }
    /* sec_plarail
   * ************************************************** */
    #hobby_content #sec_plarail {
        padding: 30px 0 20px;
        background: url("../img/250919_hobby/plarail_bg.png") repeat-y 50% 0 / cover;
    }
    #hobby_content #sec_plarail .plarail_ttl {
        margin: 0 auto 22px;
        width: 80%;
    }
    /* sec_anpanman
   * ************************************************** */
    #hobby_content #sec_anpanman {
        padding: 30px 0 20px;
        background: url("../img/250919_hobby/anpanman_bg.png") repeat 0 0 / 24px;
    }
    #hobby_content #sec_anpanman .anpanman_ttl {
        margin: 0 auto 26px;
        width: 100%;
    }
    /* sec_lego
   * ************************************************** */
    #hobby_content #sec_lego {
        padding: 30px 0 20px;
        background: url("../img/250919_hobby/lego_bg.png") no-repeat 0 0 / 100%, radial-gradient(circle,rgba(0, 64, 151, 1) 0%, rgba(0, 1, 42, 1) 73%);
    }
    #hobby_content #sec_lego .lego_ttl {
        margin: 0 auto 14px;
        width: 93.205%;
    }
    #hobby_content #sec_lego .lego_note {
        margin: 0 auto;
        width: 89.744%;
    }
    /* sec_game
   * ************************************************** */
    #hobby_content #sec_game {
        padding: 30px 0 20px;
        background: url("../img/250919_hobby/game_bg.png") repeat-y 50% 0 / 100% ;
    }
    #hobby_content #sec_game .game_ttl {
        margin: 0 auto 30px;
        width: 85.128%;
    }
    #hobby_content #sec_game .game_ttl_s {
        margin: 0 auto 15px;
        width: 89.744%;
    }
    #hobby_content #sec_game .game_cont01 {
        margin-bottom: 30px;
    }
    #hobby_content #sec_game .game_note {
        margin: 0 auto;
        width: 89.744%;
        line-height: 1;
    }
    #hobby_content #sec_game .game_cont_wrap {
        position: relative;
        padding-bottom: 25px;
        margin-bottom: 25px;
    }
    #hobby_content #sec_game .game_cont_wrap::after {
        display: block;
        content: '';
        width: 100%;
        position: absolute;
        bottom: 0;
        left: 0;
        border-bottom: 3px dotted #fff;
    }
    /* sec_store
   * ************************************************** */
    #hobby_content #sec_store {
        padding: 40px 5.128%;
        background: #fff;
    }
    #hobby_content #sec_store a {
        display: block;
    }
    /* sec_coupon
   * ************************************************** */
    #hobby_content #sec_coupon {
        padding: 38px 5.128% 45px;
        background: #fdf7dc;
    }
    #hobby_content #sec_coupon .coupon_ttl {
        margin: 0 auto 30px;
    }
    #hobby_content #sec_coupon .coupon_btn {
        display: block;
    }
    /* sns
   * ************************************************** */
    #hobby_content #sns {
        padding: 38px 5.128% 15px;
        background: #fff;
    }
    #hobby_content #sns .sns_ttl {
        margin: 0 auto 35px;
    }
    #hobby_content #sns .sns_btn_wrap a {
        display: block;
        margin-bottom: 25px;
    }
    /* notes
   * ************************************************** */
    #hobby_content #notes {
        padding: 0 5.128% 45px;
    }
}
@media screen and (min-width: 768px) and (max-width: 980px) {
    #hobby_content #content_main {
        margin: 0 auto 0 calc(50% - 70px);
    }
    #hobby_content .side_nav {
        left: calc(50% - 320px);
    }
    #hobby_content #page-top {
        right: calc(50% - 380px);
    }
    #hobby_content .cd-fixed-bg::after,
    #hobby_content::after {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    /* ======================================
    content [ コンテンツ ]
    ====================================== */
    #hobby_content .d_pc {
        display: none !important;
    }
    #hobby_content #page-top {
        cursor: pointer;
        display: none;
        overflow: hidden;
        position: fixed;
        bottom: 2vw;
        right: 2vw;
        width: 12.821vw;
        transition: 0.4s ease-out;
        z-index: 12;
    }
    #hobby_content #content_main {
        background: #fff;
    }
    #hobby_content .side_nav {
        display: none;
    }
    #hobby_content .sec_cont {
        position: relative;
        margin: 0 auto 3.846vw;
        width: 89.744%;
    }
    #hobby_content .sec_cont .btn_buy {
        position: absolute;
        bottom: 6.1538vw;
        left: 17.9487vw;
        width: 52.8205vw;
    }
    /* pagetop */
    #hobby_content .pagetop {
        position: fixed;
        right: 3vw;
        bottom: 46vw;
        width: 12vw;
        cursor: pointer;
        transition: .3s;
        opacity: 0;
        visibility: hidden;
    }
    #hobby_content .pagetop.active {
        opacity: 1;
        visibility: visible;
    }
    /* mv
   * ************************************************** */
    #hobby_content #mv {
        width: 100%;
        padding-top: 110.256%;
        background: url("../img/250919_hobby/mv_bg.png") no-repeat 0 0 / 100%;
        border-bottom: 5.128vw solid #3fb5b5;
    }
    #hobby_content #mv h1 {
        width: 85.385%;
        position: absolute;
        top: 20.513vw;
        left: 7.692%;
    }
    #hobby_content #mv .zoomIn {
        animation-name: zoomInAnime;
        animation-duration: 2s;
        animation-fill-mode: forwards;
    }
    /* mv_nav */
    #hobby_content .mv_nav {
        background: #fff;
        position: relative;
    }
    #hobby_content .mv_nav ul {
        display: flex;
        justify-content: center;
        align-items: flex-end;
        flex-wrap: wrap;
        padding: 7.692vw 0 5.128vw;
    }
    #hobby_content .mv_nav ul li {
        width: 28.205%;
        margin: 0 1.282% 2.564vw;
    }
    #hobby_content .mv_btn {
        margin: 0 auto;
        padding: 2.564vw 0 5.128vw;
        width: 89.744%;
        background: #fff;
        border-top: 0.513vw solid #000;
    }
    #hobby_content .mv_btn a {
        display: block;
        margin-bottom: 8px;
    }
    /* sec_tomica
   * ************************************************** */
    #hobby_content #sec_tomica {
        padding: 7.692vw 0 5.128vw;
        background: url("../img/250919_hobby/tomica_bg.png") repeat-y 50% 0 / 100%;
    }
    #hobby_content #sec_tomica .tomica_ttl {
        margin: 0 auto 71.795vw;
        width: 33.333%;
    }
    #hobby_content #sec_tomica .tomica_cont01 {
        position: relative;
    }
    #hobby_content #sec_tomica .tomica_cont01::before {
        display: block;
        content: '';
        position: absolute;
        top: -68.462vw;
        left: -2.6%;
        width: 108.857%;
        height: 80vw;
        background: url("../img/250919_hobby/tomica_cont01_img.png") no-repeat 0 0 / contain;
    }
    #hobby_content #sec_tomica .tomica_cont01 .btn_buy01 {
        bottom: 54.545%;
    }
    /* sec_plarail
   * ************************************************** */
    #hobby_content #sec_plarail {
        padding: 7.692vw 0 5.128vw;
        background: url("../img/250919_hobby/plarail_bg.png") repeat-y 50% 0 / cover;
    }
    #hobby_content #sec_plarail .plarail_ttl {
        margin: 0 auto 5.641vw;
        width: 80%;
    }
    /* sec_anpanman
   * ************************************************** */
    #hobby_content #sec_anpanman {
        padding: 7.692vw 0 5.128vw;
        background: url("../img/250919_hobby/anpanman_bg.png") repeat 0 0 / 24px;
    }
    #hobby_content #sec_anpanman .anpanman_ttl {
        margin: 0 auto 6.667vw;
        width: 100%;
    }
    /* sec_lego
   * ************************************************** */
    #hobby_content #sec_lego {
        padding: 7.692vw 0 5.128vw;
        background: url("../img/250919_hobby/lego_bg.png") no-repeat 0 0 / 100%, radial-gradient(circle,rgba(0, 64, 151, 1) 0%, rgba(0, 1, 42, 1) 73%);
    }
    #hobby_content #sec_lego .lego_ttl {
        margin: 0 auto 3.59vw;
        width: 93.205%;
    }
    #hobby_content #sec_lego .lego_note {
        margin: 0 auto;
        width: 89.744%;
    }
    /* sec_game
   * ************************************************** */
    #hobby_content #sec_game {
        padding: 7.692vw 0 5.128vw;
        background: url("../img/250919_hobby/game_bg.png") repeat-y 50% 0 / 100% ;
    }
    #hobby_content #sec_game .game_ttl {
        margin: 0 auto 7.692vw;
        width: 85.128%;
    }
    #hobby_content #sec_game .game_ttl_s {
        margin: 0 auto 15px;
        width: 89.744%;
    }
    #hobby_content #sec_game .game_cont01 {
        margin-bottom: 7.692vw;
    }
    #hobby_content #sec_game .game_note {
        margin: 0 auto;
        width: 89.744%;
        line-height: 1;
    }
    #hobby_content #sec_game .game_cont_wrap {
        position: relative;
        padding-bottom: 6.41vw;
        margin-bottom: 6.41vw;
    }
    #hobby_content #sec_game .game_cont_wrap::after {
        display: block;
        content: '';
        width: 100%;
        position: absolute;
        bottom: 0;
        left: 0;
        border-bottom: 0.769vw dotted #fff;
    }
    /* sec_store
   * ************************************************** */
    #hobby_content #sec_store {
        padding: 9.744vw 5.128%;
        background: #fff;
    }
    #hobby_content #sec_store a {
        display: block;
    }
    /* sec_coupon
   * ************************************************** */
    #hobby_content #sec_coupon {
        padding: 9.744vw 5.128% 11.538vw;
        background: #fdf7dc;
    }
    #hobby_content #sec_coupon .coupon_ttl {
        margin: 0 auto 7.692vw;
    }
    #hobby_content #sec_coupon .coupon_btn {
        display: block;
    }
    /* sns
   * ************************************************** */
    #hobby_content #sns {
        padding: 9.744vw 5.128% 3.846vw;
        background: #fff;
    }
    #hobby_content #sns .sns_ttl {
        margin: 0 auto 8.974vw;
    }
    #hobby_content #sns .sns_btn_wrap a {
        display: block;
        margin-bottom: 6.41vw;
    }
    /* notes
   * ************************************************** */
    #hobby_content #notes {
        padding: 0 5.128% 11.538vw;
    }
}
@keyframes zoomInAnime {
    0% {
        transform: scale(0.6);
        opacity: 0;
    }
    30% {
        transform: scale(0.6);
        opacity: 0;
    }
    55% {
        transform: scale(1.1);
        opacity: 1;
    }
    73% {
        transform: scale(1);
    }
}
@keyframes UpAnime {
    from {
        opacity: 0;
        transform: translateY(130px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes DownAnime {
    from {
        opacity: 1;
        transform: translateY(0);
    }
    to {
        opacity: 1;
        transform: translateY(130px);
    }
}
@keyframes floating-y {
    0% {
        transform: translateY(-4px);
    }
    100% {
        transform: translateY(4px);
    }
}