@font-face{font-family:"Yu Gothic M";src:local("Yu Gothic Medium")}
@font-face{font-family:"Yu Gothic M";src:local("Yu Gothic Bold");font-weight:bold}

.gradient-red {
    border: 1px solid #bc001d;
    background-color: #df1f3d;
    background: -webkit-gradient(linear, left top, left bottom, from(#df1f3d), to(#df1f3d));
    background: linear-gradient(to bottom, #df1f3d 0%, #df1f3d 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1, StartColorStr='#df1f3d', EndColorStr='#df1f3d');
}

.dis-block{display:block !important}
.contents-header *{
    -webkit-box-sizing:border-box;
    box-sizing:border-box}
.contents-header{
    width:100%;
    z-index:99;
    color:#252525}
.contents-header a{
    color:#252525;
    display:block;
    text-decoration:none;
    -webkit-transition:all .3s;
    transition:all .3s}
.contents-header a:hover,.contents-header a:active,.contents-header a:focus{opacity:1}
.contents-header .ch-header{
    width:100%;
    position:relative;
    z-index:2;
    background:#fff;
    -webkit-box-shadow:0 1px 2px rgba(102,102,102,0.3);
    box-shadow:0 1px 2px rgba(102,102,102,0.3)}
.contents-header .ch-header-in{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:start;
    -ms-flex-pack:start;
    justify-content:flex-start;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-item-align:stretch;
    align-self:stretch;
    letter-spacing:-.4em;
    font-size:14px;
    font-size:1.4rem}
.contents-header .ch-logo,.contents-header .ch-gnav{letter-spacing:normal}
.contents-header .ch-logo{
    width:100%;
    max-width:360px;
    margin:0 auto 0 0}
.contents-header .ch-logo a{padding:1.5rem 0 1.4rem}
.contents-header .ch-gnav-in{
    width:100%;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-item-align:stretch;
    align-self:stretch;
    letter-spacing:-.4em}
.contents-header .ch-gnav-in>ul{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    -webkit-box-align:center;
    -ms-flex-align:center;
    -ms-flex-item-align:stretch;
    align-self:stretch;
    letter-spacing:-.4em;
    align-items:center;
    flex-wrap: wrap;
    align-content: center;
}
.contents-header .ch-gnav-in li{
    letter-spacing:normal;
    justify-content:center;
}
.contents-header .ch-gnav-in li a{
    font-weight:bold;
    cursor:pointer;
    -webkit-transition:all .3s;
    transition:all .3s}
.contents-header .ch-gnav-in li:not(.login) a{
    padding:2.2rem 0;
    border-bottom:3px solid #fff}
.contents-header .ch-gnav-in li:not(.login) a:hover{
    color:rgba(37,37,37,0.7);
    border-bottom:3px solid #df1f3d}
.contents-header .ch-gnav-in li:not(.login) a>div{padding:0 2.5rem}
.contents-header .ch-gnav-in li:not(.login) a>div{padding:0 1.4rem}
.contents-header .ch-gnav-in li.active a{color:#df1f3d;border-bottom:3px solid #df1f3d}
.contents-header .ch-gnav-in li.active a:hover{color:rgba(147,28,68,0.7);border-bottom:3px solid #df1f3d}
.contents-header .ch-gnav-in li.active .submenu-in ul li a{color:#252525;border-bottom:3px solid #fff}
.contents-header .ch-gnav-in li.active .submenu-in ul li a:hover{color:rgba(37,37,37,0.7);border-bottom:3px solid #df1f3d}
.contents-header .ch-gnav-in li.active .submenu-in ul li.active a{color:#df1f3d;border-bottom:3px solid #df1f3d}
.contents-header .ch-gnav-in li.login a{
    padding:1.8rem 0;
    margin:0 0 0 1rem;
    color:#fff;
    font-weight:normal}
.contents-header .ch-gnav-in li.login a i{
    font-size:18px;
    font-size:1.8rem;
    margin:0 .5rem 0 0}
.contents-header .ch-gnav-in li.login a:hover>div{background:#df1f3d}
.contents-header .ch-gnav-in li.login a>div{
    padding:.5rem .8rem;
    background:#252525;
    -webkit-transition:all .3s;
    transition:all .3s}
.contents-header .ch-gnav-in li.ch-drop:hover span a{border-bottom:3px solid #df1f3d}
.contents-header .ch-gnav-in li.ch-drop:hover .ch-submenu{
    opacity:1;
    -webkit-transition:opacity .5s ease-out, visibility .5s;
    transition:opacity .5s ease-out, visibility .5s;
    visibility:visible;
    pointer-events:auto}
.contents-header .ch-submenu{
    width:100%;
    position:absolute;
    left:0;
    right:0;
    margin:0 auto;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    z-index:2;
    background:#fff;
    -webkit-box-shadow:0 2px 5px rgba(37,37,37,0.1),0 2px 5px rgba(37,37,37,0.1) inset;
    box-shadow:0 2px 5px rgba(37,37,37,0.1),0 2px 5px rgba(37,37,37,0.1) inset;
    border-top:2px solid #df1f3d;
    -webkit-transition:opacity .2s ease-out, visibility .2s;
    transition:opacity .2s ease-out, visibility .2s}
.contents-header .ch-submenu .flex{
    -webkit-box-align:start;
    -ms-flex-align:start;
    align-items:flex-start}
.contents-header .submenu-in{
    width:100%;
    max-width:1140px;
    margin:0 auto;
    position:relative}
.contents-header .submenu-in ul{
    width:100%;
    text-align:center;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-item-align:stretch;
    align-self:stretch;
    letter-spacing:-.4em}
.contents-header .submenu-in ul li{
    width:20%;
    letter-spacing:normal;
    position:relative}
.contents-header .submenu-in ul li:not(.login) a{
    margin:0;
    padding:1.5rem .5rem}
.contents-header .submenu-in ul li:not(:last-child):after{
    content:'';
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    margin:auto;
    height:60%;
    border-right:1px dashed rgba(102,102,102,0.3)}
.contents-header .ch-outline{
    width:100%;
    position:relative;
    background:#fff}
.contents-header .ch-outline__in{
    width:100%;
    max-width:1280px;
    position:relative;
    margin:0 auto;
    padding:1rem 0;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center}
.contents-header .ch-outline__in li:not(:first-child){margin-left:.3%}
.contents-header .ch-outline .btn-outline{
    width:11.2%;
    position:relative;
    border-radius:2em;
    font-family:"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif}
.contents-header .ch-outline .btn-outline:before{display:none}
.contents-header .ch-outline .btn-outline a{
    color:#fff;
    display:block;
    padding:0.8rem 0;
    font-size:13px;
    font-size:1.3rem;
    font-weight:bold;
    text-decoration:none;
    text-align:center;
    -webkit-transition:all .3s ease;
    transition:all .3s ease;
    line-height:1.4}
.contents-header .ch-outline .tel-outline{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:start;
    -ms-flex-pack:start;
    justify-content:flex-start;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    font-size:12px;
    font-size:1.2rem}
.contents-header .ch-outline .tel-outline p:nth-child(1){margin:0 .5rem 0 0}
.breadcrumb{
    background:#fff;
    -webkit-box-shadow:0 1px 2px rgba(37,37,37,0.2) inset,0 0 5px rgba(102,102,102,0.1) inset;
    box-shadow:0 1px 2px rgba(37,37,37,0.2) inset,0 0 5px rgba(102,102,102,0.1) inset}
.breadcrumb li{color:#252525}
.breadcrumb li.nolink{color:#df1f3d}
.breadcrumb li a{color:#252525}
.breadcrumb li a:hover{color:#df1f3d}
.bread-fixed{background:rgba(255,255,255,0.7)}
.outline-in ul.flex{
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center}
@media screen and (max-width: 1280px){
    .contents-header .ch-logo a{padding:1.5rem 0 1.4rem .5rem}
    .contents-header .ch-outline__in{padding:1rem .5rem}
    .contents-header .ch-gnav-in li:not(.login) a>div{padding:0 1.4rem}
}
@media screen and (max-width: 1180px){
    .outline-in ul{width:50%}
    .outline-in li{width:100%}
}
@media screen and (max-width: 1140px){
    .contents-header .ch-header-in{font-size:13px;font-size:1.3rem}
    .footerNav .ft_outline p:nth-child(1){font-size:18px;font-size:1.8rem}
}
@media (max-width: 1024px){
    .contents-header .ch-logo{width:35%}
    .contents-header .ch-outline .btn-outline{width:20%}
}
@media screen and (max-width: 940px){
    .contents-header .ch-logo{width:25%}
}
@media (max-width: 768px){
    .dis-block{display:none !important}
    .header{
        /* display:none; */
        display: block;
        height: 0px;
        position: absolute;
        top: -36px;
    }
    .contents-header{border-top:2px solid #666}
    .contents-header .ch-header-in{
        display:block;
        -webkit-box-pack:inherit;
        -ms-flex-pack:inherit;
        justify-content:inherit;
        -webkit-box-align:inherit;
        -ms-flex-align:inherit;
        align-items:inherit;
        -ms-flex-item-align:inherit;
        align-self:inherit;
        padding:1rem .5rem;
        font-size:14px;
        font-size:1.4rem}
        .contents-header .ch-logo,.contents-header .ch-menu-btn{
            vertical-align:middle;
            display:inline-block;
            *display:inline;
            zoom:1}
    .contents-header .ch-logo{
        width:100%;
        max-width:inherit;
        margin:0 0 0 -40px;
        padding:0 5% 0 45px;
        -webkit-transition:none;transition:none}
    .contents-header .ch-logo a{padding:0}
    .contents-header .ch-logo img{width:100%}
    .contents-header .gnavbtn,.contents-header .ch-menu-btn span,.contents-header .ch-menu-btn span::after,.contents-header .ch-menu-btn span::before,.contents-header .ch-menu-btn span.is-open,.contents-header .ch-menu-btn span.is-open::after,.contents-header .ch-menu-btn span.is-open::before{
            position:absolute;
            width:25px;
            height:2px;
            background:#fff;
            cursor:pointer}
    .contents-header .ch-menu-btn{
        width:40px;
        height:40px;
        position:relative;
        z-index:99999;
        cursor:pointer;
        margin:auto 0 auto auto;
        top:0;
        right:0;
        left:0;
        bottom:0;
        text-align:center;
        background:#df1f3d;
        padding:.2rem}
    .contents-header .ch-menu-btn p{
        width:100%;
        height:100%;
        border:1px solid #fff}
    .contents-header .ch-menu-btn span{
        top:50%;
        left:50%;
        -webkit-transform:translate(-50%, -50%);
        transform:translate(-50%, -50%);
        -webkit-transition:linear .2s;
        transition:linear .2s}
    .contents-header .ch-menu-btn span::after{
        content:'';
        top:400%;
        left:0}
    .contents-header .ch-menu-btn span::before{
        content:'';
        top:-400%;
        left:0}
    .contents-header .ch-menu-btn span.is-open{
        background:none;
        -webkit-transform:translate(-50%, -50%) rotate(45deg);
        transform:translate(-50%, -50%) rotate(45deg);
        -webkit-transition:linear .2s;
        transition:linear .2s}
    .contents-header .ch-menu-btn span.is-open::after,.contents-header .ch-menu-btn span.is-open::before{
        content:'';
        top:50%;
        left:50%;
        -webkit-transition:linear .2s;
        transition:linear .2s}
    .contents-header .ch-menu-btn span.is-open::after{
        -webkit-transform:translate(-50%, -50%) rotate(90deg);
        transform:translate(-50%, -50%) rotate(90deg)}
    .contents-header .ch-menu-btn span.is-open::before{
        -webkit-transform:translate(-50%, -50%) rotate(180deg);
        transform:translate(-50%, -50%) rotate(180deg)}
    .contents-header .ch-menu-bg{
        width:100%;
        height:100%;
        position:fixed;
        z-index:99;
        display:none;
        top:0;
        right:0;
        background:#df1f3d}
    .contents-header .ch-submenu{
        position:relative;
        visibility:visible;
        opacity:1;
        pointer-events:inherit;
        z-index:0;
        background:none;
        -webkit-box-shadow:none;
        box-shadow:none;
        border-top:1px dashed rgba(255,255,255,0.3);
        -webkit-transition:none;
        transition:none}
    .contents-header .submenu-in ul{
        -ms-flex-wrap:wrap;
        flex-wrap:wrap}
    .contents-header .submenu-in ul li{
        width:50%;
        border-bottom:1px dashed rgba(255,255,255,0.3)}
    .contents-header .submenu-in ul li:nth-child(odd){border-right:1px dashed rgba(255,255,255,0.3)}
    .contents-header .submenu-in ul li.last{width:100%}
    .contents-header .submenu-in ul li:after{display:none}
    .contents-header .ch-gnav{
        display:none;
        position:relative;
        z-index:99}
    .contents-header .ch-gnav-in{
        width:100%;
        height:100%;
        position:fixed;
        z-index:99;
        top:0;
        right:0;
        display:block;
        -webkit-box-pack:inherit;
        -ms-flex-pack:inherit;
        justify-content:inherit;
        -webkit-box-align:inherit;
        -ms-flex-align:inherit;
        align-items:inherit;
        -ms-flex-item-align:inherit;
        align-self:inherit;
        letter-spacing:normal;
        padding:0 0 5rem;
        background:#df1f3d;
        overflow-y:scroll}
    .contents-header .ch-gnav-in .btn-login{
        width:100%;
        height:11vw;
        min-height:60px;
        position:relative;
        border-bottom:1px solid #fff;
        padding:1rem 1.5rem}
    .contents-header .ch-gnav-in>ul{
        display:block;
        -webkit-box-pack:inherit;
        -ms-flex-pack:inherit;
        justify-content:inherit;
        -webkit-box-align:inherit;
        -ms-flex-align:inherit;
        align-items:inherit;
        -ms-flex-item-align:inherit;
        align-self:inherit;
        letter-spacing:normal}
    .contents-header .ch-gnav-in>ul li:not(.login) a>div{padding:0}
    .contents-header .ch-gnav-in li:not(.login) a{
        color:#fff;
        font-weight:normal;
        padding:1.5rem;
        border-bottom:none;
        -webkit-transition:none;
        transition:none}
    .contents-header .ch-gnav-in li:not(.login) a:hover{
        color:#fff;
        border-bottom:none}
    .contents-header .ch-gnav-in li.ch-drop:hover span a{border-bottom:none}
    .contents-header .ch-gnav-in li.active a{
        color:#fff;
        border-bottom:none;
        background:rgba(255,255,255,0.3)}
    .contents-header .ch-gnav-in li.active a:hover{
        color:#fff;
        border-bottom:none}
    .contents-header .ch-gnav-in li:nth-child(7){display: none;}
    .contents-header .ch-gnav-in li.active span a{background:#df1f3d}
    .contents-header .ch-gnav-in li.active .submenu-in ul li a{
        color:#fff;
        border-bottom:none;
        background:#df1f3d}
    .contents-header .ch-gnav-in li.active .submenu-in ul li a:hover{
        color:#fff;
        border-bottom:none}
    .contents-header .ch-gnav-in li.active .submenu-in ul li.active a{
        color:#fff;
        border-bottom:none;
        background:rgba(255,255,255,0.3)}
    .contents-header .ch-gnav-in ul.ch-contact{margin:2rem auto 3rem}
    .contents-header .ch-gnav-in ul.ch-contact li{
        width:49.5%;
        text-align:center;
        background:#000}
    .contents-header .ch-gnav-in ul.ch-contact li a{
        padding:1.5rem .5rem;
        color:#fff;
        font-size:12px;
        font-size:1.2rem}
    .contents-header .ch-gnav-in .ch-outline{padding:0 1.5rem 1.5rem}
    .contents-header .ch-gnav-in .ch-outline p:first-child{padding:0 20% 0 0}
    
    .contents-header .ch-gnav-in .ch-outline p:nth-child(2){
        color:#fff;
        margin:.5rem 0 0;
        font-size:12px;
        font-size:1.2rem}
    .contents-header .ch-gnav-in .ch-outline p:nth-child(2) a{
        color:#fff;
        padding:0}
    .contents-header .ch-gnav-in .ch-outline p:nth-child(2) img{
        max-width:20px;
        margin:0 .5rem 0 0;
        vertical-align:text-top}
    .contents-header .ch-gnav-in .ch-outline p:nth-child(2) .number{
        font-size:16px;
        font-size:1.6rem}
    .contents-header .ch-outline{display:none}
}
@media (max-width: 360px){.contents-header .ch-header-in{font-size:12px;
	font-size:1.2rem}
}

