body
{
    margin: 0;
    padding: 0;
}
.mincho {
    font-family:"Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    font-weight: bold;
}
.mobile{display: none;}
a{color: #1980af;}



.w1000{
    width: 1000px;
    margin: 0 auto;
    box-sizing: border-box;
}



.main_title{
    margin-bottom: 20px;
}
.main_title .title{
    text-align: center;
    font-size: 32px;
}
.main_title .title span{
    font-size: 22px;
    padding-left: 1em;
}
.main_title .blue1{
    height: 1.2px;
    background: #88d5f8;
    width: 45px;
    margin: 0 auto;
    margin-bottom: 2px;
}
.main_title .blue2{
    height: 3px;
    background: #009ae1;
    width: 45px;
    margin: 0 auto;
}



.view_more{
    background: #ffa800;
    color: #fff;
    display: inline-block;
    width: 10em;
    text-align: center;
    text-decoration: none;
    border-radius: 100px;
    border: 2px solid #ffa800;
    transition: all 0.3s ease-out;
}
.view_more .more{
    position: relative;
}
.view_more .more span{
    position: absolute;
    right: 6px;
}
.view_more:hover{
    border: 2px solid #ffa800;
    background: #fff;
    color: #ffa800;
    transition: all 0.3s ease-out;
}



.page_top_img{
    /*background:url(../images/top_back.jpg) center/cover no-repeat;*/
    /*backgroundは各cssで指定*/
    height: 200px;
    width: 100%;
}
.page_top_img div{
    color: #fff;
    font-size: 28px;
    text-align: center;
    padding-top: 80px;
    filter: drop-shadow(0 0 4px rgba(0,0,0,1));
}



.breadcrumb{
    padding: 6px 0;
    font-size: 14px;
}




/*---------------ヘッダーここから---------------*/
.header_mobile{display: none;}
.header_pc{
    z-index: 900;
    position:fixed;
    top:0;
    width: 100%;
    background: #fefcef;
    box-shadow: 0 0 8px #aaa;
}
.header_pc .logo_block{
    align-items: center;
    display: flex;
    justify-content: space-between;
    height: 110px;
    padding: 2px 20px;
    position: relative;
}
.header_pc .logo_block .logo{
    /*position: absolute;
    top: 5px;
    left: 15px;*/
    width: 230px;
    display: block;
}
.header_pc .logo_block .open_time{
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 10px auto;
    width: fit-content;
    min-height: 50px;
}
.header_pc .logo_block .open_time > div:first-child{
    color: #5ebee6;
    font-weight: bold;
}
.header_pc .logo_block .open_time > div:first-child.holiday{
    color: #666;
}
.header_pc .logo_block .open_time > div:nth-child(2){
    align-items: center;
    background: #5ebee6;
    border-radius: 25px;
    color: #fff;
    display: flex;
    font-size: 30px;
    justify-content: center;
    margin: 2px auto;
    padding: 0 0 0 20px;
    width: fit-content;
}
.header_pc .logo_block .open_time > div:nth-child(2) div {
    letter-spacing: -2px;
}
.header_pc .logo_block .open_time > div:nth-child(2) img {
    margin-right: 10px;
}
.header_pc .logo_block .open_time > div:nth-child(2) img.sp {
    display: none;
}
.header_pc .logo_block .open_time > div:nth-child(2) span {
    font-size: 12px;
    letter-spacing: 0;
}
.header_pc .logo_block .open_time > div:nth-child(2).holiday {
    background: #666666;
}
.header_pc .logo_block .open_time > div:nth-child(3){
    font-size: 14px;
    color: #f00;
}
.header_pc .logo_block .open_time_hide{
    display: none;
}
.header_pc .logo_block .open_time span,
.header_pc .logo_block .open_time_hide span{
    font-size: 10px;
    padding-right: 10px;
}
.header_pc .logo_block .right_block{
    /*position: absolute;
    top: 4px;
    right: 15px;*/
}
.header_pc .logo_block .right_block .language{
    text-align: right;
    margin-right: 3px;
}
.header_pc .logo_block .right_block .language a{
    margin-left: 1em;
    font-size: 17px;
    color: #898989;
    text-decoration: none;
}
.header_pc .logo_block .right_block .language a.now_lang{
    text-decoration: underline;
    color: #4f4f4f;
    /*font-weight: bold;*/
}
/*
SNSアイコンはヘッダーから、ファーストビュー（トップページだけ）に移動
.header_pc .logo_block .right_block .sns_block,*/
.header_pc .logo_block .right_block .search_block{
    display: inline-block;
    vertical-align: middle;
    margin-top: 7px;
}
/*.header_pc .logo_block .right_block .sns_block{
    margin-right: 10px;
    font-size: 0;
}
.header_pc .logo_block .right_block .sns_block img{
    display: inline-block;
    margin: 0 5px;
    width: 25px;
}
.header_pc .logo_block .right_block .search_block input{
    height: 20px;
}*/
.header_pc .logo_block .right_block .search_block .search_submit{
    border: none;
    display: inline-block;
    vertical-align: middle;
    background: #8d8d8d;
    color: #fff;
    text-align: center;
    width: 3em;
    text-decoration: none;
    font-size: 14px;
    line-height: 25px;
    height: 26px;
    border-radius: 3px;
}

.header_pc .menu_block{
    background: #f5ea9d;
    text-align: center;
    padding: 7px 0 0 0;
    height: 24px;
}
.header_pc .menu_block a{
    display: inline-block;
    vertical-align: middle;
    margin-left: 3.5em;
    text-decoration: none;
    color: #000;
    font-size: 16.5px;
    letter-spacing: 1px;
    line-height: 18px;
}
.header_pc .menu_block a:first-child{
    margin-left: 0;
}
.header_pc .menu_block a:hover{
    color: #0e648c;
}
.header_pc .menu_block a .only_text{
    display: inline-block;
    font-size: 13.5px;
    background: #999;
    color: #fff;
    border-radius: 5px;
    padding: 0 10px;
    line-height: 20px;
    margin-top: 3px;
}
.header_pc .under_yellow{
    height: 7px;
    width: 100%;
    background: #fbf4c4;
}

/*---------------ヘッダーここまで---------------*/






/*---------------フッターここから---------------*/
.footer{
    margin-top: 60px;
    color: #fff;
}
.footer .top_foot{
    background: #556989;
    padding: 10px 0;
}
.footer .top_foot img{
    display: inline-block;
    width: 20%;
    vertical-align: middle;
}
.footer .top_foot .link_block{
    display: inline-block;
    width: 78%;
    box-sizing: border-box;
    vertical-align: middle;
    text-align: right;
}
.footer .top_foot .link_block a{
    color: #fff;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    margin: 10px;
    vertical-align: middle;
}
.footer .top_foot .link_block a .only_text{
    display: inline-block;
    font-size: 13.5px;
    background: #999;
    color: #fff;
    border-radius: 5px;
    padding: 0 10px;
    line-height: 20px;
    margin-top: 3px;
}
.footer .top_foot .link_block a:hover{
    text-decoration: underline;
}

.footer .black_foot{
    background: #303030;
    text-align: center;
    font-size: 13px;
    padding: 3px 0;
}

.footer .pagetop{
    display: none;
    position: fixed;
    z-index: 900;
    bottom: 60px;
    right: 10px;
    cursor: pointer;
    opacity: 0.8;
    animation: pagetop_move 0.8s linear 0s 1;
    transition: all 0.3s ease-out;
}
.footer .pagetop:hover{
    opacity: 1;
    transition: all 0.3s ease-out;
}

/*.footer .pagetop_text{
    font-size: 14px;
    line-height: 17px;
    position: fixed;
    z-index: 901;
    bottom: 110px;
    right: 31px;
    color: #fff;
    text-align: center;
    opacity: 1;
}
.footer .pagetop_text:hover + .pagetop{
    opacity: 1;
}*/



@keyframes pagetop_move {
/*  0%   { transform: scale(1.0, 1.0) translate(0%, 0%); }
  15%  { transform: scale(0.9, 0.9) translate(0%, 5%); }
  30%  { transform: scale(1.3, 0.8) translate(0%, 10%); }
  50%  { transform: scale(0.8, 1.3) translate(0%, -10%); }
  70%  { transform: scale(1.1, 0.9) translate(0%, 5%); }
  100% { transform: scale(1.0, 1.0) translate(0%, 0%); }*/
  
  0%   { transform: scale(1.0, 1.0) translate(0%, 0%); }
  /*15%  { transform: scale(0.9, 0.9) translate(0%, 5%); }*/
  20%  { transform: scale(1.2, 0.8) translate(0%, 10%); }
  40%  { transform: scale(0.8, 1.2) translate(0%, -10%); }
  100%  { transform: scale(0.8, 1.2) translate(0%, -10%); }
  
}
/*---------------フッターここまで---------------*/









@media all and (max-width: 960px) and (min-width:769px){
            /*ヘッダー調整*/
            .header_pc .logo_block .open_time{
                /*opacity: 0;*/
                display: none
            }
            .header_pc .logo_block .open_time_hide{
/*                position: absolute;
                display: block;
                padding: 3px 0;
                background: #5ebee6;
                color: #fff;
                text-align: center;
                width: 15em;
                font-size: 14px;
                border-radius: 100px;
                left: 43%;
                top: 3px;*/
                display: flex;
                padding-right: 100px;
            }
            .header_pc .logo_block .open_time_hide > div:first-child{
                padding: 5px 10px;
            }
            .header_pc .menu_block a{
                margin-left: 1.58em;
                letter-spacing: 0;
            }
}



@media all and (max-width: 768px) {
            .pc{display: none;}
            .mobile{display: block;}
            .w1000{
                width: 96%;
            /*    margin: 0 auto;*/
            }


            .main_title{
                /*margin-bottom: 20px;*/
            }
            .main_title .title{
                /*text-align: center;*/
                font-size: 6.5vw;
            }
            .main_title .title span{
                font-size: 5vw;
                /*padding-left: 1em;*/
            }
/*            .main_title .blue1{
                height: 1.2px;
                background: #88d5f8;
                width: 45px;
                margin: 0 auto;
                margin-bottom: 2px;
            }
            .main_title .blue2{
                height: 3px;
                background: #009ae1;
                width: 45px;
                margin: 0 auto;
            }*/


            .view_more{
                /*background: #ffa800;*/
                /*color: #fff;*/
                /*display: inline-block;*/
                /*width: 10em;*/
                /*text-align: center;*/
                /*text-decoration: none;*/
                /*border-radius: 100px;*/
                /*border: 2px solid #ffa800;*/
            }
            .view_more .more{
                font-size: 3.5vw
                /*position: relative;*/
            }
            .view_more .more span{
                /*position: absolute;*/
                /*right: 6px;*/
            }
            .view_more:hover{
                /*border: 2px solid #ffa800;*/
                /*background: #fff;*/
                /*color: #ffa800;*/
            }

            
            
            .page_top_img{
                /*background:url(../images/top_back.jpg) center/cover no-repeat;*/
                /*backgroundは各cssで指定*/
                height: 150px;
                /*width: 100%;*/
            }
            .page_top_img div{
                /*color: #fff;*/
                font-size: 23px;
                /*text-align: center;*/
                padding-top: 56px;
                /*filter: drop-shadow(0 0 4px rgba(0,0,0,1));*/
            }



            .breadcrumb{
                padding: 4px 0;
                font-size: 3.3vw;
            }




            /*---------------ヘッダーここから---------------*/
            .header_pc{display: none;}
            .header_mobile{display: block;}
            .header_mobile{
                z-index: 900;
                position:fixed;
                top:0;
                width: 100%;
                background: #fefcef;
                box-shadow: 0 0 8px #aaa;
            }
            .header_mobile .logo{
                display: inline-block;
                width: 41%;
                padding: 1.5vw 0 0 1.5vw;
                box-sizing: border-box;
            }
            .header_mobile .logo img{width: 100%;}
            .header_mobile .open_time{
                position: absolute;
                background: rgba(255,255,255,0.8);
                border-radius: 20px;
                width: fit-content;
                box-sizing: border-box;
                font-size: 3.2vw;
                top: 70px;
                left: 50%;
                right: initial;
                transform: translateX(-50%);
                line-height: 1;
                /*display: flex;*/
                display: none;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                /* x heightはIncludeFooter.jspのscriptで設定*/
                padding: 5px 20px;
            }
            .header_mobile .open_time > div:nth-child(2) {
                display: flex;
                font-size: 5vw;
                margin: 10px 0 0 0;
            }
            .header_mobile .open_time > div:nth-child(2) div{
                margin: 0 0 0 10px;
            }
            .header_mobile .open_time > div:nth-child(2) span{
                display: block;
                font-size: 3vw;
                margin-top: 5px;
            }
            .header_mobile .open_time > div:nth-child(2) img.pc {
                display: none;
            }
            .header_mobile .open_time > div:nth-child(2) img.sp {
                display: inline;
                height: 14px;
                width: 14px;
            }
            .header_mobile .open_time > div:nth-child(3) {
                margin-top: 5px;
                color: #f00;
                font-size: 2.6vw;
            }

            
            .header_mobile .menu_icon_bg{
                position: absolute;
                z-index: 9001;
                top: 0;
                right: 0;
                width: 15vw;
                background: #dbc94d;
                /*heightはIncludeFooter.jspのscriptで設定*/
            }
            
            .header_mobile .menu{
                position: absolute;
                z-index: 9002;
                top: 0;
                right: 0;
                background:url("../images/top_menu_open.png") center/cover no-repeat;
                width: 15vw;
                /*heightはIncludeFooter.jspのscriptで設定*/
            }


            /*ヘッダーまわりはご自由に*/
            .header_mobile .menu #nav-drawer {
              position: relative;
            }
            /*チェックボックス等は非表示に*/
            .header_mobile .menu .nav-unshown {
              display:none;
            }
            /*アイコンのスペース*/
            .header_mobile .menu #nav-open {
                display: inline-block;
                /*heightはIncludeFooter.jspのscriptで設定*/
                width: 15vw;
                cursor: pointer;
            }
            /*閉じる用の薄黒カバー*/
            .header_mobile .menu #nav-close {
                display: none;/*はじめは隠しておく*/
                position: fixed;
                z-index: 1000;
/*                top: 7.3vh;/*全体に広がるように*/
                /*topはIncludeFooter.jspのscriptで設定*/
                left: 0;
                width: 100%;
                height: 100%;
                background: black;
                opacity: 0;
                transition: .3s ease-in-out;
            }
            /*中身*/
            .header_mobile .menu #nav-content {
                overflow: auto;
                position: fixed;
                /*top: 7.3vh;*/
                /*topはIncludeFooter.jspのscriptで設定*/
                right: 0;
                z-index: 1200;/*最前面に*/
                width: 80%;/*左側に隙間を作る*/
                height: 100%;
                background: #dff8ff;/*背景色*/
                transition: .3s ease-in-out;/*滑らかに表示*/
                -webkit-transform: translateX(105%);
                transform: translateX(105%);/*右に隠しておく*/
            }
            .header_mobile .menu .sidebarMenuInner{
                margin:0;
                padding:0;
            }
            .header_mobile .menu .sidebarMenuInner li{
                list-style: none;
                background: #dff8ff;
                border-bottom: 1px solid #a3a3a3;
            }
            .header_mobile .menu .sidebarMenuInner li.menu_btn:hover{
                background: #93cad7;
                color: #fff;
                font-weight: bold;
            }
            .header_mobile .menu .sidebarMenuInner li.menu_btn:hover > a{
                color: #fff;
            }
            .header_mobile .menu .sidebarMenuInner li a{
                display: block;
                padding: 15px 20px;
                color: #000;
                font-size: 3.5vw;
                text-decoration: none;
            }
            .header_mobile .menu .sidebarMenuInner li a .only_text{
                display: inline-block;
                font-size: 3vw;
                background: #999;
                color: #fff;
                border-radius: 100px;
                padding: 0 10px;
                margin-top: 3px;
            }
            /*チェックが入ったらもろもろ表示*/
            .header_mobile .menu #nav-input:checked ~ #nav-close {
                display: block;/*カバーを表示*/
                opacity: .5;
            }
            .header_mobile .menu #nav-input:checked ~ #nav-content {
                -webkit-transform: translateX(0%);
                transform: translateX(0%);/*中身を表示*/
                /*box-shadow: 6px 0 25px rgba(0,0,0,.15);*/
            }
            
            
            .header_mobile .menu .sidebarMenuInner li.lng_search_block{
                background: #f9ffff;
                padding: 15px 0 15px 20px;
                color: #898989;
                border-bottom: 1px solid #a3a3a3;
                font-size: 3.5vw;
            }
            .header_mobile .menu .sidebarMenuInner li.lng_search_block .lang_block a{
                display: inline-block;
                margin-left: 1.5em;
                padding: 0;
                font-size: 4vw;
                color: #898989;
            }
            .header_mobile .menu .sidebarMenuInner li.lng_search_block .lang_block a:first-child{
                margin-left: 0.5em;
            }
            .header_mobile .menu .sidebarMenuInner li.lng_search_block .lang_block a.now_lang{
                text-decoration: underline;
                color: #222;
            }
            
            .header_mobile .menu .sidebarMenuInner li.lng_search_block .search_block{
                margin-top: 10px;
                margin-bottom: 7px;
            }
            .header_mobile .menu .sidebarMenuInner li.lng_search_block .search_block input{
                display: inline-block;
                vertical-align: middle;
                height: 5vw;
                width: 56vw;
            }
            .header_mobile .menu .sidebarMenuInner li.lng_search_block .search_block .search_submit{
                border: none;
                display: inline-block;
                vertical-align: middle;
                background: #8d8d8d;
                color: #fff;
                text-align: center;
                width: 3em;
                text-decoration: none;
                font-size: 3.4vw;
                line-height: 6.3vw;
                height:6.4vw;
                border-radius: 5px;
            }

            /*---------------ヘッダーここまで---------------*/






            /*---------------フッターここから---------------*/
            .footer{
                /*margin-top: 60px;*/
                /*color: #fff;*/
            }
            .footer .top_foot{
                /*background: #556989;*/
                padding: 12px 0;
            }
            .footer .top_foot img{
                display: block;
                width: 45%;
                margin: 0 auto;
            }
            .footer .top_foot .link_block{
                display: block;
                width: 100%;
                /*box-sizing: border-box;*/
                /*vertical-align: middle;*/
                text-align: center;
                margin-top: 14px;
            }
            .footer .top_foot .link_block a{
                /*color: #fff;*/
                /*text-decoration: none;*/
                /*display: inline-block;*/
                margin: 10px 0.9vw;
                font-size: 3.3vw;
            }
            .footer .top_foot .link_block a .only_text{
                /*display: inline-block;*/
                font-size: 3vw;
                /*background: #999;*/
                /*color: #fff;*/
                border-radius: 100px;
                /*padding: 0 10px;*/
                line-height: inherit;
                margin-top: 5px;
            }
            .footer .top_foot .link_block a:nth-child(1){margin-left: 0;}
            .footer .top_foot .link_block a:nth-child(4){margin-right: 0;}

            .footer .black_foot{
                /*background: #303030;*/
                /*text-align: center;*/
                font-size: 3vw;
                padding: 5px 0;
            }

            .footer .pagetop{
                width: 16%;
                /*display: none;*/
                /*position: fixed;*/
                /*z-index: 900;*/
                bottom: 100px;
                /*right: 10px;*/
                /*cursor: pointer;*/
                opacity: 0.9;
            }
            /*---------------フッターここまで---------------*/
}