@charset "UTF-8";
/* CSS Document */

.sp,.spnavi{
	display:none !important;
}
.anchor{
    display: block;
    width: 100%;
    height: 0px;
    float: left;
    clear: both;
}

/*アニメーション要素のスタイル*/
.fade{
	opacity : 0;
	visibility: hidden;
    transition: 1.0s;
    transition-delay: 0.35s;
	transform: translateY(70px);
}

/*アニメーション要素までスクロールした時のスタイル*/
.active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
@keyframes fadeIn {
    0% {opacity: 0}g
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

*{
	margin:0;
	padding:0;
}

img{
	display: block;
	border:0;
	border-style:none;
}

a{
	word-break: break-all !important;
}

a img {
	border:0;
    border-style:none;
}

html{
	height:100%;
}

body{
    font-family: a-otf-ud-reimin-pr6n, sans-serif;
    font-weight:normal;
    font-style: normal;
	width:100%;
	height:100%;
	margin:0;
    animation: fadeIn 1.2s ease 0s 1 normal;
    -webkit-animation: fadeIn 1.2s ease 0s 1 normal;
}

#topimg{
	display: block;
	min-width: 100%;
	width: 100% !important;
    background-color: #000;
	animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
	z-index: 1;
    overflow-x: hidden;
}
#topimg img{
	display: block;
	width: 100% !important;
	height: auto;
}

header{
	display: block;
	position: fixed;
	width: 100%;
	height: 165px;
	background-color: #fff;
	margin: 0 !important;
    border-top: solid 10px #000;
    filter: drop-shadow(0 2px 20px rgba(0,0,0,0.10));
	top:0;
	z-index: 10;
}

 main{
    margin-top: 175px;
}
footer{
	display: block;
	width: 100%;
    background-color: #1a1a1a;
    padding: 0 0 0 0;
	margin: 0 0 0 0;
	float: left;
	clear: both;
}

.footer_logo a{
    display: inline-block;
    width: 140px;
    height: auto;
    margin: 0 auto;
}
.copyright{
	display: block;
	width:100%;
    text-align: center;
	font-size:12px;
    color: #fff !important;
    background-color: #000;
	padding: 18px 0;
	margin:25px 0 0 0;
	float: left;
	clear: both;
}

nav .gnavi{
    list-style: none;
}

header nav .gnavi{
    display: block;
    position: absolute;
    -webkit-writing-mode: vertical-lr;
    -moz-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    -ms-writing-mode: vertical-lr;
    writing-mode: vertical-lr;
    top:15px;
    right: 30px;
}

header nav .gnavi li{
    display: block;
    margin: 0 7px;
    float: left;
    clear: both;
}

header nav .gnavi li a{
    text-decoration: none;
    color: #000;
    font-size: 13px;
    text-align: left;
    transition: 0.5s;
}
header nav .gnavi li a:hover{
    color: #D90000;
    transition: 0.2s;
}
header nav .gnavi li span{
    display: inline-block;
    height: 100% !important;
    padding: 0 2px 0 0 !important;
}

_::-webkit-full-page-media, _:future, :root header nav .gnavi li span {
    padding: 0 0 0 1px !important;
}

header nav .gnavi li ruby rt{
    display: block;
    width: 10px !important;
    height: 100% !important;
    color: #000;
    font-size: 9px;
    font-feature-settings: "palt";
    letter-spacing: 1.2px;
    text-align: left !important;
    clear: both !important;
}

#logo a{
    display: block;
    position: relative;
    width: 240px;
    height: 50px;
    margin: 52px 0 0 50px;
    transition: 0.5s;
    float: left;
}
#logo a:hover{
    filter:alpha(opacity=45);
    -moz-opacity: 0.45;
    opacity: 0.45;
    transition: 0.3s;
}
.address{
    display: block;
    position: relative;
    width: 240px;
    height: 50px;
    font-size: 14px;
    line-height: 180%;
    margin: 40px 0 0 35px;
    float: left;
}
.address strong{
    font-size: 21px;
    line-height: 170%;
    font-weight: 400 !important;
}

@media screen and (max-width:1000px) {
    header nav .gnavi{
        display: block;
        position: absolute;
        -webkit-writing-mode: vertical-lr;
        -moz-writing-mode: vertical-lr;
        -ms-writing-mode: tb-lr;
        -ms-writing-mode: vertical-lr;
        writing-mode: vertical-lr;
        top:15px;
        right: 15px;
    }

    header nav .gnavi li{
        display: block;
        margin: 0 8px;
        float: left;
        clear: both;
    }

    header nav .gnavi li a{
        text-decoration: none;
        color: #000;
        font-size: 13px;
        text-align: left;
        transition: 0.5s;
    }
    header nav .gnavi li a:hover{
        color: #D90000;
        transition: 0.2s;
    }
    header nav .gnavi li span{
        padding: 0 0 0 1px;
    }
    header nav .gnavi li ruby rt{
        display: block;
        color: #000;
        font-size: 9px;
        font-feature-settings: "palt";
        text-align: left !important;
    }

    #logo a{
        display: block;
        position: relative;
        width: 200px;
        height: 50px;
        margin: 55px 0 0 20px;
        transition: 0.5s;
        float: left;
    }
    #logo a:hover{
        filter:alpha(opacity=45);
        -moz-opacity: 0.45;
        opacity: 0.45;
        transition: 0.3s;
    }
    .address{
        fdisplay: block;
        position: relative;
        width: 240px;
        height: 50px;
        font-size: 12px;
        line-height: 180%;
        margin: 45px 0 0 30px;
        float: left;
    }
    .address strong{
        font-size: 21px;
        line-height: 170%;
        font-weight: 400 !important;
    }
}

.fnavi_area{
    display: block;
    width: 90%;
    max-width: 920px;
    font-weight: normal !important;
    color: #fff;
    margin: 0 auto;
}
.fnavi_area .info{
    display: block;
    letter-spacing: 1px;
    float: left;
}
.fnavi_area .info p{
    font-size: 14px;
    line-height: 180%;
    margin-bottom: 20px;
}
.fnavi_area .info .logo2{
    display: block;
    width: 220px;
    height: 50px;
    margin: 0 0 20px -5px !important;
    clear: both;
}

footer nav .gnavi{
    display: block;
    -webkit-writing-mode: vertical-lr;
    -moz-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    -ms-writing-mode: vertical-lr;
    writing-mode: vertical-lr;
    margin-top: 35px;
    float: right;
}

footer nav .gnavi li{
    display: block;
    margin: 0 8px;
    float: left;
    clear: both;
}

footer nav .gnavi li a{
    text-decoration: none;
    color: #fff;
    font-size: 14px;
    text-align: left;
    transition: 0.5s;
}
footer nav .gnavi li a:hover{
    color: #D90000;
    transition: 0.2s;
}


.lead_area{
    /*background-image: url("../images/lead_bg.jpg");
    background-attachment: fixed;
    background-size: cover;
    background-position: top center;
    padding: 60px 0 30px 0;*/
}
.lead_area article{
    display: block;
    width: 90%;
    max-width: 1000px;
    padding: 60px 0 30px 0;
    margin: 0 auto;
}
.lead_area article h2{
    display: block;
    width: 80px;
    margin: 0 auto;
}

.lead_area article h2 span{
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    font-size: 30px;
    font-weight: 400 !important;
    font-feature-settings: "palt";
    letter-spacing: 2px;
    text-align: center;
}

.lead_area article p{
    text-align: center;
    font-size: 18px;
    line-height: 200%;
    font-feature-settings: "palt";
    letter-spacing: 3px;
    margin: 30px 0;
}

.info_area{
    display: block;
    width: 100%;
    background-color: #f5f3f1;
    padding: 80px 0 0 0;
    margin-top: -5px;
    float: left;
    clear: both;
}
.info_area article{
    display: block;
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 80px auto;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
}

.subtitle {
    display: block;
    width: 530px;
    height: 50px;
    margin: 0 auto;
}
.subtitle h2{
    display: flex;
    align-items: center;
    font-size: 16px;
    line-height: 120%;
    text-align: center !important;
    letter-spacing: 0;
}
.subtitle h2 span{
    display: inline-block !important;
    margin: 0 0 0 0 !important;
    text-align: center !important;
    float: none !important;
    clear: both !important;
}
.subtitle h2 rt{
    display: block;
    width: 100% !important;
    font-size: 30px !important;
    text-align: center !important;
    letter-spacing: 2px;
    padding: 0 0 -30px 0 !important;
    clear: both !important;
}
.subtitle h2::before,
.subtitle h2::after {
    content:"";
    height: 1px;
    width: 150px;
    background-color: #000;
    margin: -15px auto 0 auto;
}

.topics_area{
    display: flex;
    margin: 0 auto 0 auto !important;
    text-align: center;
}
.topics{
    display: inline-block;
    max-width: 800px;
    margin: 70px auto 20px auto !important;
    text-align: left;
}
.topics dt{
    display: block;
    width: 100%;
    font-size: 20px;
    margin-bottom: 10px;
    float: left;
    clear: both;
}
.topics dt a{
    color: #000;
}
.topics dt a:hover{
    text-decoration: none;
}
.topics dd{
    display: block;
    width: 100%;
    font-size: 18px;
    line-height: 200%;
    font-feature-settings: "palt";
    letter-spacing: 1px;
    margin-bottom: 40px;
    float: left;
    clear: both;
}
.to_topics{
    list-style: none;
}
.to_topics li a{
    display: block;
    width: 400px;
    font-size: 16px;
    text-decoration: none;
    letter-spacing: 2px;
    color: #000;
    border: solid 1px #4d4d4d;
    text-align: center;
    background-image: url("../images/arrow.svg");
    background-position: center right;
    background-repeat: no-repeat;
    background-size: auto 20px;
    padding: 10px 0;
    margin: 0 auto 0 auto;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
    transition: 0.3s;
    clear: both;
}
.to_topics li a:hover{
    background-color: #FFDCDC;
    transition: 0.2s;
}
.to_topics_list li a{
    margin: 150px auto 0 auto !important;
}

.new_menu{
    display: table !important;
    width: calc(90% - 42px) !important;
    max-width: 980px !important;
    border: solid 1px #4d4d4d;
    padding: 20px 20px;
    margin: 0 auto;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
}
.new_menu h3{
    display: table-cell !important;
    width: 31% !important;
    font-size: 16px;
    text-align: center !important;
    font-weight: 300 !important;
    vertical-align: middle;
    margin-top: -10px !important;
    padding-top: 0;
    padding-right: 2%;
}
.new_menu h3 rt{
    display: block;
    width: 100%;
    font-size: 30px !important;
    text-align: center !important;
    letter-spacing: 2px;
    float: left;
    clear: both;
}
.new_menu h3 span{
    margin-left: 7px;
    text-align: center !important;
    clear: both;
}

.new_menu dl{
    display: table-cell !important;
    width: 34% !important;
    text-align: left;
}
.new_menu dt{
    font-size: 20px;
    line-height: 130%;
    font-weight: 500;
    margin-bottom: 5px;
}
.new_menu dd{
    text-align: justify;
    font-size: 16px;
    line-height: 180%;
}
.new_menu dt img{
    display: block;
    width: 100%;
    max-width: 250px;
    height: auto;
    margin-bottom: 15px;
}

.to_more{
    display: table-cell;
    width: 100%;
    list-style: none;
    vertical-align: middle;
}
.to_more li a{
    display: block;
    width: 80%;
    max-width: 180px;
    font-size: 16px;
    text-decoration: none;
    letter-spacing: 2px;
    color: #000;
    border: solid 1px #4d4d4d;
    text-align: center;
    background-image: url("../images/arrow.svg");
    background-position: center right;
    background-repeat: no-repeat;
    background-size: auto 20px;
    padding: 10px 40px 10px 0;
    margin: 0 auto 0 auto;
    overflow: auto;
    transition: 0.3s;
    float: right;
}
.to_more li a:hover{
    background-color: #FFDCDC;
    transition: 0.2s;
}
.contact_area{
    display: table;
    width: 100%;
    height: auto;
    max-height: 450px;
    margin: 0 0 50px 0;
    float: left;
    clear: both;
}
.contact_area img{
    display: table-cell;
    width: 100%;
    height: auto;
    max-height: 450px;
    object-fit: cover !important;
    object-position: top center !important;
}
.contact_area ul{
    display: table-cell;
    width: 44%;
    font-size: 18px;
    line-height: 140%;
    list-style: none;
    color: #fff;
    padding-left: 6%;
    vertical-align: middle;
    font-feature-settings: "palt";
    letter-spacing: 2px;
}
.cnavi01{
    margin-bottom: 50px;
}
.cnavi01 strong{
    font-size: 32px !important;
    line-height: 220%;
}
.cnavi01 span{
    font-size: 14px !important;
}

.cnavi02 a{
    display: block;
    width: 250px;
    font-size: 12px;
    text-decoration: none;
    letter-spacing: 1px;
    color: #fff;
    text-align: center;
    background-color: #b8272d;
    padding: 15px 0;
    margin: 10px 0 0 0;
    transition: 0.3s;
    float: left;
    clear: both;
}
.cnavi02 a:hover{
    background-color: #FF757B;
    transition: 0.2s;
}

#secondary .ec_navi{
    display: none !important;
}
.ec_navi{
    position: absolute;
    top:260px;
    right: 0;
}
.ec_navi li{
    display: block;
    margin-bottom: 15px;
    clear: both;
}
.ec_navi01 a{
    display: block;
    width: 50px;
    height: 250px;
}
.ec_navi02 a{
    display: block;
    width: 50px;
    height: 250px;
}
.ec_navi li a{
	background-color: #b8272d;
    transition-duration: 0.3s;
}
.ec_navi li a:hover{
    background-color: #D4A505;
	transition-duration: 0.2s;
}

.contents_area{
    display: block;
    width: 100%;
    background-color: #f5f3f1 !important;
    padding: 50px 0 0 0;
    margin-top: -5px;
    float: left;
    clear: both;
}
.contents_area article{
    display: table;
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 80px auto;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
}
.contents_area article p{
    line-height: 180%;
    text-align: justify;
    margin-bottom: 25px;
}
.contents_area article h3{
    font-size: 24px;
    line-height: 150%;
    margin-top: 50px;
    margin-bottom: 15px;
}
.contents_area article a:hover{
    text-decoration: none;
}

.title_area{
    display: table;
    width: 100%;
    text-align: center;
    vertical-align: middle;
}
.title_area .title{
    display: block;
    width: 100%;
    min-height: 420px !important;
    color: #fff;
    text-align: center;
    padding: 100px 0 0 0;
    animation: fadeIn 4s ease 0s 1 normal;
    -webkit-animation: fadeIn 4s ease 0s 1 normal;
    clear: both;
}
.title_area .title h2{
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    font-size: 30px;
    font-weight: 300 !important;
    font-feature-settings:normal !important;
    letter-spacing: normal !important;
    text-align: center;
    margin: 0 auto 20px auto;
    text-shadow: 2px 2px 10px #000 ,
    -2px 2px 10px #000 ,
    2px -2px 10px #000 ,
    -2px -2px 10px #000;
}
.title_area .title p{
    font-size: 16px;
    font-weight: 300 !important;
    font-feature-settings: "palt";
    text-align: center;
    text-shadow: 1px 1px 8px #333 ,
    -1px 1px 8px #333 ,
    1px -1px 8px #333 ,
    -1px -1px 8px #333;
}

.title_area .title2{
    animation: none !important;
    -webkit-animation: none !important;
}
.listmenu{
    display: block;
    width: 90%;
    height: 50px;
    font-size: 14px;
    margin: 0 5%;
}
.listmenu a{
    color: #000;
}
.listmenu a:hover{
    text-decoration: none;
}


.commitment_area{
    background-color: #f5f3f1 !important;
}
.commitment_area article{
    display: block !important;
    width: 90%;
    max-width: 1100px;
    height: auto;
}
.commitment_area .block_right,
.commitment_area .block_left{
    display: table !important;
    width: 100%;
    height: auto;
    margin-bottom: 100px;
    vertical-align: middle !important;
    float: left;
    clear: both;
}
.commitment_area .block_right .text{
    display: table-cell;
    vertical-align: middle;
}
.commitment_area .block_left .text{
    display: table-cell;
    vertical-align: middle;
}
.commitment_area .block_right img{
    display: table-cell;
    width: 100%;
    max-width: 480px;
    height: auto;
}
.commitment_area .block_left img{
    display: table-cell;
    width: 100%;
    max-width: 480px;
    height: auto;
}

.commitment_area .text{
    width: 56%;
    height: auto;
    padding: 0 3%;
}
.commitment_area .text h3{
    display: block;
    width: 100%;
    font-size: 24px !important;
    margin-top: 0 !important;
    margin-bottom: 15px !important;
}
.commitment_area .text h3 .caption{ 
    font-size: 14px;
    margin-left: 10px;
}
.commitment_area .text p{
    font-size: 14px !important;
    line-height: 180% !important;
    font-feature-settings: "palt" !important;
    letter-spacing: 2px !important;
    margin-bottom: 20px !important;
}
.map{
    display: block;
    width: 55%;
    max-width: 550px;
    margin-top: -130px;
    float: right;
}
.credit{
    display: block;
    width: 100%;
    max-width: 400px;
    height: auto;
}

.topics_loop_area article{
    min-height: 200px;
}

/* pager */
.pager{
	display:block;
	width:100%;
	height:20px;
	text-align:center;
	font-size:16px;
    font-weight: 400;
	margin:0 0 0 0;
	float:left;
	clear:both;
}

a.page-numbers,
.pager .current{
	color: #333;
	text-decoration: none;
	margin:0 10px;
}
.pager .current{
	color:#D90000;
    font-weight: 600;
}

.newmenu_area{
    display: block;
    width: 90% !important;
    max-width: 1000px;
    background-color: #fff;
    padding: 5%;
    margin-bottom: 50px;
    border-radius:8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
    float: left;
    clear: both;
}
.newmenu_title strong{
    font-size: 24px;
    font-weight: 400;
}
.newmenu_area img{
    width: auto;
    height: auto;
}

.wp-caption{
    width: 100% !important;
    max-width: 1000px !important;
}
.wp-caption-text{
    display: none;
    width: auto !important;
    max-width: 1000px !important;
    color: #222;
    font-size: 12px;
    margin: 0 0 10px 0 !important;
    text-align: left !important;
}

/* メディアファイルレイアウト */
.alignleft,.alignnone{
	display: inline-block;
    max-width: 100% !important;
	float:left !important;
	margin:0 20px 20px 0;
}

.alignright{
	display: inline-block;
    max-width: 100% !important;
	float:right !important; 
	margin:0 0 20px 20px;
    clear: right;
    
}
.aligncenter{
	display:block;
    max-width: 100% !important;
	margin:0 auto 20px auto;
	float:none;
	clear:both;
}



/*-----------------------------
ギャラリー
------------------------------*/
.gallery { /** ギャラリーを囲むボックス **/
    display: flex;
	width: 100%;
	margin-bottom: 20px !important;
    overflow: hidden;
    justify-content: space-between; 
    flex-wrap: wrap;
}

.gallery img {
    border: none !important;
}

.gallery br {display: none;} /** 自動で挿入される clearfix の余白解除 **/

.gallery-item { /** 画像共通のスタイル **/
    float: left;
	margin-bottom: 0 !important;
}
.gallery-icon { /** 画像を囲む dt のスタイル **/
    text-align: left;
}
.gallery-caption{
    text-align: left !important;
}

.gallery-icon img {
	width: 100%;
	height: auto;
}

.gallery-caption { /** キャプション **/
    display: inline-block;
    color: #222;
    font-size: 12px;
    margin: 0 0 10px;
    text-align: left !important;
}

.gallery-columns-1 .gallery-item { /** カラムなし **/
    width: 100%;
    margin-right: 0;
}
.gallery-columns-2 .gallery-item { /** 2カラム **/
	width: 49% !important;
	margin: 0;
}
.gallery-columns-3 .gallery-item { /** 3カラム **/
    width: 32% !important;
	margin: 0;
}
.gallery-columns-4 .gallery-item { /** 4カラム **/
    width: 24% !important;
    margin: 0;
}
.gallery-columns-5 .gallery-item { /** 5カラム **/
    width: 19% !important;
    margin: 0;
}

#secondary .slides li .caption{
    font-size: 15px !important;
    line-height: 120%;
    font-feature-settings: "palt" !important;
    font-weight: bolder !important;
    color: #fff !important;
    text-align: center;
    padding: 10px 5px 10px 5px !important;
    background-color: #000 !important;
}

#topimg .slides li .caption{
    display: none !important;
}

.menu_subtitle strong{
    display: block;
    width: 100%;
    max-width: 1000px;
    font-size: 32px;
    font-weight: 400;
    font-feature-settings: "palt";
     letter-spacing: 3px;
    border-bottom: solid 1px #000;
    padding-bottom: 15px;
    margin: 20px auto 30px auto !important;
    float: none;
    clear: both;
}
.menu_subtitle .small{
    display: block;
    width: 100% !important;
    max-width: 1000px !important;
    font-size: 14px !important;
    font-weight: 600;
    color: #666 !important;
    font-feature-settings: "palt";
    letter-spacing: 0;
    padding-bottom: 15px;
    margin: -30px auto -30px auto !important;
    float: none;
    clear: both;
}
.menu_subtitle2 strong{
    display: block;
    width: 100%;
    max-width: 1000px;
    color: #fff;
    font-size: 25px;
    font-weight: 400;
    font-feature-settings: "palt";
     letter-spacing: 3px;
    border-bottom: solid 2px #000;
    padding-bottom: 15px;
    margin-top: 30px !important;
    margin: 20px auto 30px auto !important;
    float: none;
    clear: both;
}
.menu_lead{
    display: block;
    width: calc(100% - 50px);
    font-size: 19px;
    font-weight: 400;
    text-align: center !important;
    padding: 0 25px;
    margin-bottom: 60px !important;
    float: left;
    clear: both;
}
.menu_lead2{
    display: block;
    width: calc(100% - 50px);
    font-size: 14px;
    font-weight: 400;
    text-align: center !important;
    padding: 0 25px;
    margin-top: -45px !important;
    margin-bottom: 60px !important;
    float: left;
    clear: both;
}
.tax{
    display: block;
    width: 100%;
    max-width: 1000px;
    font-size: 12px;
    text-align: right !important;
    color: #333;
    margin: 0 auto 30px auto !important;
    float: none;
    clear: both;
}

.menu_slider_area{
    display: block;
    width: 100%;
    padding: 15px 0 60px 0;
    background-color: #870000;
    float: left;
    clear: both;
}
.menu_slider{
    display: block;
    width: 90%;
    max-width: 1000px;
    margin: 30px auto 0 auto;
    float: none;
    clear: both;
}
.sub_lead{
    display: block !important;
    width: 100%;
    color: #C00000 !important;
    font-size: 25px !important;
    font-weight: 600;
    font-feature-settings: "palt";
    letter-spacing: 2px !important;
    text-align: center !important;
    margin: 0 auto 60px auto !important;
    float: left !important;
    clear: both;
}

.menu_loop_area .small{
    font-size: 9px;
}
.menu_loop_area article{
    max-width: 1200px !important;
}
.menu_block_area{
    display: flex;
    width: 100% !important;
    max-width: 1200px !important;
    text-align: center;
    margin: 0 auto 0 auto !important;
    justify-content: space-between; 
    flex-wrap: wrap !important;
    list-style: none !important;
}
.menu_block_area blockquote{
    display: block;
    width: calc(100% - 30px);
    padding: 15px 15px 0 15px !important;
    margin-bottom: 15px !important;
    font-size: 10px !important;
    background-color: #E2DEDA;
    border-radius:5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
    float: left;
    clear: both;
}
.menu_block_area blockquote p{
    font-size: 10px !important;
    line-height: 160% !important;
    margin: 0 !important;
    margin-bottom: 0 !important;
}
.menu_block_area .block3{
    display: block;
    width: 31% !important;
    margin-bottom: 50px !important;
    float: left;
}
.menu_block_area .block3 img{
    display: block;
    width: 100%;
    height: 280px;
    object-fit: cover !important;
    object-position: center center !important;
    margin-bottom: 5px;
    float: left;
    clear: both;
}

.menu_block_area .block4{
    display: block;
    width: 23% !important;
    margin-bottom: 50px !important;
    float: left;
}
.menu_block_area .block4 img{
    display: block;
    width: 100%;
    height: 220px;
    object-fit: cover !important;
    object-position: center center !important;
    margin-bottom: 5px;
    float: left;
    clear: both;
}
.menu_block_area .block3 .dish_name strong,
.menu_block_area .block4 .dish_name strong{
    display: block;
    width: 100%;
    font-size: 17px !important;
    font-weight: 400 !important;
    font-feature-settings: "palt";
    letter-spacing: 2px;
    margin: 0 !important;
    float: left;
    clear: both;
}
.menu_block_area .block3 .text p,
.menu_block_area .block4 .text p{
    display: block;
    width: 100%;
    text-align: justify;
    font-size: 13px !important;
    line-height: 140% !important;
    font-feature-settings: "palt";
    letter-spacing: 0.5px;
    margin-bottom: 0 !important;
    float: left;
    clear: both;
}
.menu_block_area .block3 .price,
.menu_block_area .block4 .price{
    display: block;
    width: 100%;
    font-size: 14px !important;
    text-align: right;
    border: 0;
    border-bottom: solid 1px #000;
    border-image: linear-gradient(to right, #f5f3f1 0%, #888 100%) 1;
    padding-bottom: 2px;
    margin-bottom: 10px;
    clear: both;
}

.menu_block_area .block3 .english,
.menu_block_area .block4 .english{
    display: block;
    width: 100%;
    font-size: 9px !important;
    text-align: center;
    margin: 3px 0 0 0;
    float: left;
    clear: both;
}

.menu_block_area .block{
    display: block;
    width: 100% !important;
    margin-top: 30px;
    margin-bottom: 70px !important;
    float: left;
    clear: both;
}
.menu_block_area .block .thumbnail img{
    display: block;
    width: 58% !important;
    height: 480px !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin-bottom: 5px;
}
.menu_block_area .block:nth-child(odd) img{
    float: left;
}
.menu_block_area .block:nth-child(even) img{
    float: right;
}
.menu_block_area .block .text_area{
    display: block;
    width: 37%;
    margin: 0 !important;
}
.menu_block_area .block:nth-child(odd) .text_area{
    float: right;
}
.menu_block_area .block:nth-child(even) .text_area{
    float: left;
}
.menu_block_area .block .dish_name strong{
    display: block;
    width: 100%;
    color: #000 !important;
    font-size: 35px !important;
    font-weight: 400 !important;
    font-feature-settings: "palt";
    letter-spacing: 3px;
    border-bottom: solid 2px #356435;
    padding-bottom: 17px !important;
    margin: 10px 0 5px 0 !important;
    float: left;
    clear: both;
}
.menu_block_area .block .en{
    display: block;
    width: 100%;
    color: #666 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    font-feature-settings: "palt";
    letter-spacing: 1px;
    margin: 0 0 20px 0 !important;
    float: left;
    clear: both;
}
.menu_block_area .block .text p{
    display: block;
    width: 100%;
    text-align: justify;
    font-size: 17px;
    line-height: 180%;
    font-feature-settings: "palt";
    letter-spacing: 0.5px;
    margin-bottom: 20px !important;
    float: left;
    clear: both;
}
.menu_block_area .block .price{
    font-size: 19px !important;
}
.menu_block_area .block .small{
    font-size: 13px !important;
}

#topimg .flexslider {
    margin: 0 0 0 0 !important;
    padding:0
}
#secondary .flexslider {
    margin: 0 0 30px 0 !important;
    padding:0
}
.flex-control-paging li a {
	width:7px !important; 
    height:7px !important; 
    margin: 0 4px !important;
}

.menu_navi{
    display: block;
    width: 100%;
    background-color: #870000;
    padding: 25px 0;
    overflow: visible !important;
    float: left;
    clear: both;
}
.menu_navi ul{
    display: flex;
	width: 90%;
    max-width: 1100px;
    text-align: center;
    margin: 0 auto !important;
    justify-content: space-between; 
    flex-wrap: wrap;
    overflow: visible !important;
}
.menu_navi ul li{
    display: inline-block;
    width: calc(15.5% - 4px);
    text-align: center;
    font-size: 14px !important;
    line-height: 130%;
    font-feature-settings: "palt";
    letter-spacing: 2px;
}
.menu_navi ul li .small{
    display: block;
    width: 100%;
    color: #F5CCCC !important;
    font-size: 9px !important;
    line-height: 140% !important;
    font-feature-settings: "palt";
    letter-spacing: 0 !important;
    margin: 5px 0 0 0 !important;
    float: left;
    clear: both;
}

.menu_navi ul li a{
    display: block;
    color: #fff;
    text-decoration: none;
    outline: none !important;
    transition: 0.2s;
}
.menu_navi ul li a:hover > img{
    overflow: hidden;
    transform: scale(1.08);
    outline: none !important;
    border: solid 2px #fff;
    transition: 0.3s;
}
.current a img{
    transform: scale(1.08);
    border: solid 2px #fff !important;
    transition: 0.3s;
}
.menu_navi ul li img{
    display: block;
	width: 100%;
    height: auto;
    border: solid 2px #870000;
    margin-bottom: 10px;
    transition: 0.4s;
}

@media (max-width:868px) {
    .menu_block_area .block img{
       height: 360px !important;
    }
}


.drink_area{
    display: flex;
    width: 100%;
    max-width: 1000px !important;
    text-align: center;
    margin: 0 auto 0 auto !important;
    justify-content: space-between; 
    flex-wrap: wrap !important;
    list-style: none !important;
}
.drink_area .block{
    display: block;
    width: 46%;
    text-align: left;
    margin: 0 0 60px 0 !important;
    float: left;
}
.drink_area h4{
    display: block;
    width: 100%;
    color: #000;
    font-size: 24px;
    font-weight: 400;
    text-align: left;
    font-feature-settings: "palt";
    letter-spacing: 1px;
    border-bottom: solid 2px #D90000;
    padding-bottom: 3px;
    margin: 0 0 0 0 !important;
    float: left;
    clear: both;
}
.drink_area .inner{
    display: block;
    width: 100%;
    color: #000;
    font-size: 24px;
    font-weight: 400;
    text-align: left;
    font-feature-settings: "palt";
    letter-spacing: 1px;
    border-bottom: solid 2px #D90000;
    padding-bottom: 3px;
    margin: 60px 0 0 0 !important;
    float: left;
    clear: both;
}
.drink_area h5{
    display: block;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    width: 100%;
    color: #000;
    font-size: 18px !important;
    line-height: 125% !important;
    font-weight: 800;
    text-align: left;
    font-feature-settings: "palt";
    margin: 30px 0 0 0 !important;
    float: left;
    clear: both;
}
.drink_area .jp{
    display: block;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    width: 100%;
    color: #666666;
    font-size: 13px !important;
    line-height: 120% !important;
    font-weight: 600;
    text-align: left;
    font-feature-settings: "palt";
    margin: 6px 0 10px 0 !important;
    float: left;
    clear: both;
}
.drink_area .price{
    display: block;
    width: 100%;
    font-size: 14px !important;
    line-height: 140% !important;
    text-align: right;
    border: 0;
    border-bottom: solid 1px #000;
    border-image: linear-gradient(to right, #f5f3f1 0%, #888 100%) 1;
    padding-bottom: 5px;
    margin: -7px 0 10px 0 !important;
    float: left;
    clear: both;
}
.drink_area .text{
    font-size: 12px !important;
    line-height: 160% !important;
    font-feature-settings: "palt";
}
.drink_area img{
    height: auto;
}

.apli_block{
    display: block;
    width: 100%;
    padding: 50px 0 25px 0;
    margin: 30px 0 70px 0;
    background-color: #fff;
    border-radius:8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
    filter: drop-shadow(0 2px 20px rgba(0,0,0,0.05));
    float: left;
    clear: both;
}
.apli{
    display: table;
    width: 500px;
    margin: 0 auto;
}
.apli_dl{
    display: block;
    width: 100%;
    font-size: 12px !important;
    text-align: center !important;
    margin: 30px 0 15px 0;
    float: left;
    clear: both;
}

.uber,.demaekan{
    display: block;
    width: 450px;
    height: auto;
    margin: 0 auto !important;
}

.takeout_term{
    display: block;
    width: calc(100% - 6px);
    text-align: center;
    font-size: 18px;
    line-height: 200%;
    border: solid 3px #d90000;
    background-color: #fff;
    padding: 20px 0 30px 0;
    margin-bottom: 50px;
    float: left;
    clear: both;
}
.takeout_term .small{
    display: block;
    font-size: 12px;
}
.takeout_term a{
    pointer-events: none;
    text-decoration: none;
    color: #000;
}
.takeout_block2{
    display: block;
    width: calc(100% - 60px);
    padding: 50px 30px;
    margin-bottom: 60px;
    background-color: #fff;
    border-radius:8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
    filter: drop-shadow(0 2px 20px rgba(0,0,0,0.05));
    float: left;
    clear: both;
}
.takeout_block_left{
    display: block;
    width: 62%;
    float: left;
}
.takeout_block_left .block{
    display: block;
    width: calc(50% - 15px);
    font-size: 13px;
    margin-right: 15px;
    float: left;
}
.takeout_block_left .block img{
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 10px;
    float: left;
}
.takeout_block_right{
    display: table;
    width: 35%;
    max-width: 320px;
    font-size: 14px;
    float: right;
}
.takeout_block_right th{
    display: table-cell;
    padding: 0 0 10px 0;
}
.takeout_block_right td{
    display: table-cell;
    padding: 0 0 10px 0;
}

.takeout_block3{
    display: flex;
    text-align: center;
    justify-content: space-between;
    width: calc(100% - 60px);
    padding: 50px 30px;
    margin-bottom: 60px;
    background-color: #fff;
    border-radius:8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
    filter: drop-shadow(0 2px 20px rgba(0,0,0,0.05));
    float: left;
    clear: both;
}
.takeout_block_table{
    display: block;
    font-size: 14px;
}
.takeout_block_table th{
    display: table-cell;
    padding: 0 0 10px 0;
}
.takeout_block_table td{
    display: table-cell;
    padding: 0 0 10px 15px;
}

.takeout_block2 hr{
    display: block;
    border: none;
    border-top: solid 1px #ccc;
    width: 100%;
    margin: 30px 0 !important;
    float: left;
    clear: both !important;
}
.takeout_block_left .block2{
    display: block;
    width: calc(70% - 15px);
    font-size: 13px;
    margin-right: 15px;
    float: left;
}
.takeout_block_left .block2 img{
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 10px;
    float: left;
}
.takeout_block_left .block2b{
    display: block;
    width: calc(30% - 15px);
    font-size: 13px;
    margin-right: 15px;
    float: left;
}
.takeout_block_left .block2b img{
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 10px;
    float: left;
}

.allergy1,.allergy3,.allergy4{
	white-space: nowrap;
	font: 0/0 a;
	text-shadow: none;
	color: transparent;
}
.allergy1 img{
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
    margin: 0 6px 6px 0 !important;
    float: left !important;
    clear: none !important;
}
.allergy1{
    display: block;
    width: 100%;
    margin-bottom: 10px !important;
    float: left;
    clear: both;
}

.allergy3 img,
.allergy4 img{
    display: inline-block !important;
    width: 16px !important;
    height: 16px !important;
    margin: 0 5px 5px 0 !important;
    float: left !important;
    clear: none !important;
}
.allergy3,
.allergy4{
    display: block;
    width: 100%;
    margin-bottom: 10px !important;
    float: left;
    clear: both;
}

.basic{
    display: block;
    width: calc(100% - 10px) !important;
    text-align: center !important;
    background-color: #fff;
    border: double 5px #E6D8AC;
    padding: 25px 0 20px 0;
    margin: 0 auto 60px auto;
    border-radius:8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
    filter: drop-shadow(0 2px 20px rgba(0,0,0,0.05));
    float: left;
    clear: both;
}
.basic_title{
    display: block;
    width: 100%;
    color: #438F59;
    font-size: 25px !important;
    line-height: 125% !important;
    font-weight: 600 !important;
    text-align: center !important;
    margin: 0;
    float: left;
    clear: both;
}
.basic_title span{
    font-size: 13px !important;
    color: #000;
}

.basic_menu{
    display: block;
    width: 100%;
    color: #91710C;
    font-size: 19px !important;
    line-height: 125% !important;
    font-weight: 500 !important;
    text-align: center !important;
    margin: 0;
    float: left;
    clear: both;
}
.basic_menu span{
    display: block;
    width: 100%;
    font-size: 13px !important;
    margin: 10px 0 0 0 !important;
    float: left;
    clear: both;
}
.basic_caution{
    display: block;
    width: 100% !important;
    text-align: center !important;
    font-size: 13px !important;
    margin: 0 !important;
    float: left;
    clear: both;
}

.allergy_area{
    display: block;
    width: calc(100% - 60px);
    padding: 0 30px 20px 30px;
    margin: 30px 0 60px 0;
    background-color: #fff;
    border-radius:8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
    font-feature-settings: "palt";
    letter-spacing: 1px;
    float: left;
    clear: both;
}

.allergy_area h4{
    display: block;
    width: 100%;
    text-align: center;
    font-size: 13px;
    background-color: #ebebeb;
    padding: 5px 0;
    margin: 40px 0 15px 0;
    float: left;
    clear: both;
}

.allergy_area2 h3{
	display: block;
    width: 100%;
    margin: 10px 0 10px 0;
	float: left;
	clear: both;
}
.allergy_area2 table{
	display: table;
	width: 100%;
	font-size: 11px;
	line-height: 160%;
	margin-bottom: 20px;
	border-collapse: collapse;
	border: solid 1px #ccc;/*表全体を線で囲う*/
	background-color: #fff;
	float: left;
	clear: both;
}
.allergy_area2 table th{
	display: table-cell;
    width: 180px;
    text-align: center !important;
	padding: 8px 0;
	margin: 0;
	border: solid 1px #ccc !important;
	background-color: #fff;
}
.allergy_area2 table td{
	display: table-cell;
    text-align: center !important;
	padding: 8px 2px;
	margin: 0;
	border: solid 1px #ccc !important;
    background-color: #ececec;
}

.allergy_icon{
    display: block;
    width: 600px !important;
    height: auto !important;
    margin: 0 auto;
}

.agu{
    display: block;
    width: calc(100% - 20px);
    text-align: center !important;
    color: #000;
    font-size: 14px !important;
    font-weight: 600;
    letter-spacing: 0 !important;
    background-color: #FFC900;
    padding: 5px 10px 5px 5px !important;
    margin: 0 !important;
    text-indent: 0 !important;
    float: left;
    clear: both;
}

.sns_navi{
	display: block;
	position: absolute;
	width: 135px;
	margin: 15px 0 0 0;
	right: 420px;
}

.topsns_line{
    display: block;
    width: 85px !important;
    height: 22px;
    margin: 0 0 0 0 !important;
    float: left !important;
    clear: none !important;
}
.topsns_line img{
    display: inline-block;
    width: auto;
    height: 22px;
}
.topsns_instagram{
    display: inline-block;
    width: 28px;
    height: 28px;
    margin: -2px 0 0 0 !important;
    float: left !important;
    clear: none !important;
}

.sukishabuset_img{
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin: 0 auto 60px auto;
    float: left;
    clear: both;
}
.sukishabuset_img img{
    display: block;
    width: 48.5%;
    height: auto;
}
.basic_block{
    display: flex;
    width: 100%;
    justify-content: space-between !important;
    margin: 50px auto 60px auto !important;
    float: left;
    clear: both;
}
.basic_block .basic{
    display: block !important;
    width: calc(48% - 30px) !important;
    height: auto;
    padding: 30px 15px 0 15px !important;
    margin: 0 !important;
}

/*フリードリンク20260410*/
.menu_lead_free{
	font-size: 1.35rem !important;
	font-weight: 600 !important;
	font-feature-settings: 'palt' !important;
	letter-spacing: 2px !important;
	padding: 20px 0 !important;
}
.menu_subtitle_free strong{
    display: block;
    max-width: 1000px;
    font-size: 32px;
    font-weight: bolder !important;
	color: #184FCF !important;
    font-feature-settings: "palt";
     letter-spacing: 3px;
    border-bottom: solid 1px #000;
    padding-bottom: 15px;
    margin: 20px auto 30px auto !important;
    float: none;
    clear: both;
}
.menu_subtitle_free .small2{
    display: inline !important;
    font-size: 24px !important;
    font-weight: 600;
    color: #666 !important;
    letter-spacing: 0;
}

.free_caution{
	display: inline-block;
	width: auto;
	padding: 25px 30px 15px 30px;
	margin: 50px auto;
	background-color: #fff;
	border-radius: 4px;
}
.free_caution p{
	font-size: 1.0rem !important;
	letter-spacing: 1px !important;
}
.free_caution p strong{
	display: block;
	width: 100%;
	font-size: 1.15rem !important;
	text-align: center;
	color: #D90000 !important;
	margin: 0 0 -15px 0 !important;
}
.free_caution p strong span{
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif" !important;
	font-weight: 200 !important;
	padding: 0 15px !important;
}

.free_drink_menu{
	display: inline-block;
	width: 100% !important;
	max-width: 850px;
	font-size: 1.0rem;
	text-align: left;
	margin: 0 auto !important;
	border-bottom: solid 1px #ccc;
}
.free_drink_menu dt{
	display: block;
	width: 160px;
	font-weight: 600 !important;
	padding: 20px 50px 20px 0;
	margin: 0 !important;
	border-top: solid 1px #ccc;
	float: left !important;
	clear: none;
}
.free_drink_menu dd{
	display: block;
	width: calc(100% - 210px) !important;
	padding: 20px 0 20px 0;
	margin: 0 !important;
	border-top: solid 1px #ccc;
	float: left !important;
	clear: none;
}

.to_drink{
	display: block;
	width: 100%;
	text-align: center !important;
	float: left;
	clear: both;
}
.to_drink a{
	color: #000;
}

.free_drink_link{
	display: block;
	width: 100%;
	margin: 0 auto 150px auto !important;
	float: left;
	clear: bothl
}
.free_drink_link2{
	display: block;
	width: 100%;
	margin: 0 auto 70px auto !important;
	float: left;
	clear: bothl
}
.free_drink_link a,
.free_drink_link2 a{
	display: block;
	width: 320px;
	text-align: center;
	text-decoration: none;
	background-color: #DC6969;
	font-weight: bolder;
	color: #fff;
	padding: 10px 50px;
	margin: 0 auto 0 auto !important;
	border-radius: 30px !important;
	background-image: url("../images/arrow.svg");
    background-position: center right;
    background-repeat: no-repeat;
    background-size: auto 20px;
	float: none !important;
	clear: both;
	overflow: auto;
	overflow-x: hidden;
	overflow-y: hidden;
	transition: 0.2s;
}

.free_drink_link a:hover,
.free_drink_link2 a:hover{
	background-color: #F09292;
	transition: 0.2s;
}