@charset "utf-8";
/*	ヘッダーa
---------------------------------*/
.hd-h1{
    display: none;
}
.header{
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
}
.hd-inr{
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0) 100%);
    padding: 30px 0;
    position: relative;
}
.hd-logo{
    padding-left: 40px;
}
.hd-right{
    margin-right: 140px;
}
.hd-right-open{
    display: none;
    max-width: 780px;
    margin:  0 auto;
}
.gjs-dashed .hd-right-open{
    display: block;
}
.hd-hum.open .hd-right-open{
    display: block;
}
.hd-right-open .hd-item{
    color: #333333;
}
.hd-right-open .hd-item-p01{
    border: solid 1px #333333;
}
.hd-reserve{
    color: #fff;
    margin-bottom: 15px;
}
.hd-reserve-p01{
    background-color: #960e0e;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 50px;
    padding: 0 20px;
    margin-right: 30px;
}
.hd-reserve-p02{
    display: inline-block;
    font-family: 'Oswald', sans-serif;
    font-size: 3.6rem;
    letter-spacing: 0.05em;
    padding-left: 35px;
    margin-right: 35px;
    position: relative;
}
.hd-reserve-p02:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_phone.png);
    width: 24px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.hd-item{
    color: #fff;
    margin-right: 30px;
}
.hd-item:last-of-type{
    margin-right: 0;
}
.hd-item-p01{
    border: solid 1px #fff;
    width: 100px;
    letter-spacing: 0.05em;
    line-height: 35px;
    text-align: center;
    margin-right: 10px;
}
.hd-item-p02{
    letter-spacing: 0.05em;
}
.hd-nav .li{
    padding-left: 20px;
    position: relative;
}
.hd-nav .li:first-of-type{
    padding-left: 0;
}
.hd-nav .li a{
    display: block;
    text-align: center;
}
.hd-nav .li a p{
    font-family: 'Oswald', sans-serif;
    font-size: 2.1rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #fff;
}
.nav-reserve-p{
    font-size: 2.4rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-align: center;
    margin-bottom: 30px;
}
.hd-right-open-btn-list{
    margin-bottom: 30px;
}
.hd-right-open-btn{
    max-width: 370px;
    width: calc((100% - 40px) / 2);
    text-align: center;
}
.hd-right-open-btn a{
    display: block;
}
.hd-right-open-btn p{
    line-height: 100px;
}
.hd-right-open-btn01{
    background-color: #102942;
}
.hd-right-open-btn01 p{
    display: inline;
    font-family: 'Oswald', sans-serif;
    font-size: 3rem;
    letter-spacing: 0.1em;
    color: #fff;
    padding-left: 30px;
    position: relative;
}
.hd-right-open-btn01 p:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_phone.png);
    width: 20px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.hd-right-open-btn02{
    background-color: #960e0e;
}
.hd-right-open-btn02 p{
    display: inline;
    font-size: 2.4rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #fff;
    padding-left: 55px;
    position: relative;
}
.hd-right-open-btn02 p:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_calendar.png);
    width: 35px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
@media screen and (max-width: 1200px){
    .hd-logo{
        padding-left: 20px;
    }
    .hd-reserve-p01{
        margin-right: 20px;
    }
    .hd-reserve-p02{
        margin-right: 20px;
    }
}
/*SPmenuお問い合わせ*/
@media screen and (max-width: 1079px){
    .hd-inr{
        height: 90px;
        padding: 22.5px 15px;
    }
    .hd-logo{
        padding-left: 0;
    }
}
@media screen and (max-width: 1023px){
    .hd-logo{
    }
    .hd-right-open-btn-list.flex-btw{
        display: block;
    }
    .hd-right-open-btn{
        width: 100%;
        margin: 0 auto 20px;
    }
    .hd-right-open-btn:last-of-type{
        margin-bottom: 0;
    }
    .hd-right-open .hd-item{
        max-width: 370px;
        width: 100%;
    }
}

/*	グローバナビ（スマホ用）
---------------------------------*/
.hd-nav-bg{
    background-color: transparent;
    padding: 0;
}
.hd-nav .ul {
    height: auto;
}
.hd-nav{
	display: none;
}
.hd-nav a *{
	transition: 0s;
}
.hd-nav .ul.flex-cnt{
    display: block;
}
.hd-nav{
    color: #333;
}
.hd-nav .ul {
    margin-bottom:35px;
}
.hd-nav .li {
    width: 100%;
    border-bottom: 1px solid #333333;
    padding: 0;
}
.hd-nav .li a{
    display: block;
    height: auto;
    padding: 0 20px;
}
.hd-nav .li a p {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    color: #333333;
    line-height: 50px;
}

/* ナビゲーション アニメーション */
.gjs-dashed  .hd-nav,.open .sp-nav{
    visibility: visible;
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.4s, opacity 0.4s;
    transition: transform 0.4s, opacity 0.4s;
}
/*ハンバーガーボタン*/
.navToggle {
	display: block;
	position: absolute;
	right: 0px;
	top: 0px;
	margin: auto;
	width: 50px;
	height: 50px;
	cursor: pointer;
    z-index: 9999;
}
.navToggle div {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	width: 25px;
	height: 16px;
}
.navToggle span {
	display: block;
	position: absolute;
	height:2px;
	width:100%;
	background: #ffffff;
	left:0;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}
.navToggle span:nth-child(1) {
	top: 0;
}
.navToggle span:nth-child(2) {
	top: 7px;
}
.navToggle span:nth-child(3) {
	top: 14px;
}
/* ハンバーガーボタン 切り替えアニメーション */
.open .navToggle {
	position: fixed;
    z-index: 10002;
}
.open .navToggle span{
    background: #333333;
}
.open .navToggle span:nth-child(1) {
	top: 7px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open .navToggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open .navToggle span:nth-child(3) {
	top: 7px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}

/*---------- ハンバーガーメニュー ----------*/
.bg-hum-blue{
    background-color: #0863b8;
    position: absolute;
    top: 0;
    right: 0;
    width: 90px;
    height: 90px;
}
.gjs-dashed .hd-hum{
    background-color: #f2f2f2;
    max-width: 100%;
    top: 200px;
    right: 0;
}
.hd-hum{
    max-width: 90px;
    width: 100%;
    position: absolute;
    top: 0;
    right: 15px;
}
.hd-hum.open{
    background-color: #f2f2f2;
    max-width: 100%;
    height: 100vh;
    overflow: scroll;
    right: 0;
}
.gjs-dashed .hd-hum-left{
    display: block;
}
.hd-hum-inr{
    max-width: 780px;
    margin: 0 auto 30px;
}
.hd-hum-left{
    display: none;
    text-align: center;
    position: relative;
}
.hd-hum.open .hd-hum-left{
    display: block;
    padding-top: 20px;
}
.gjs-dashed .navbar{
    max-width: 100%;
    width: 100%;
}
.navbar{
    background: transparent;
    padding: 50px 15px;
    max-width: 90px;
    width: 100%;
    margin-left: auto;
    z-index: 100;
}
.navbar.open{
    max-width: 100%;
}
.gjs-dashed .navbar .navbar-right{
    display: block;
}
.navbar .navbar-right{
    display: none;
}
.navbar.open .navbar-right{
    display: block;
}
.navbar-right{
    padding-left: 5vw;
}
.gjs-dashed .navbar-dark .navbar-toggler{
    margin-right: 0;
}
.navbar-dark .navbar-toggler {
    color: rgba(0, 0, 0, 0.5);
    border: none;
    padding: 0px;
    width: 70px;
    height: 45px;
    margin: auto;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}
.hd-hum.open .navbar-dark .navbar-toggler{
    width: 35px;
    margin-right: 10px;
}

.navbar-dark .navbar-toggler-icon {
    background-image:none;
    background-color: #fff;
    width: 100%;
    height: 3px;
    display: block;
    position: absolute;
    transition: ease .5s;
}

.navbar-toggler-icon:nth-of-type(1) {
    top: 0px;
}

.navbar-toggler-icon:nth-of-type(2) {
    top: 13px;
}

.navbar-toggler-icon:nth-of-type(3) {
    display: none;
    bottom: 0;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon{
    background-color: #000;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1) {
    top:13px;
    transform: rotate(45deg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(2) {
    opacity: 0;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3) {
    display: block;
    top: 13px;
    transform: rotate(-45deg);
}
button:focus{
    outline: none;
}
.navbar-collapse{
    padding-top: 30px;
}
.hum-menu-p{
    font-size: 2.1rem;
    font-weight: 700;
    color: #fff;
    position: absolute;
    top: 65px;
    right: 16.5px;
}
.hd-hum.open .hum-menu-p{
    color: #000;
    top: 80px;
}
.navbar-nav{
}
.nav-item{
    padding: 0 15px;
}
.nav-item:first-of-type{
}
.nav-item p{
    font-size: 2.1rem;
    letter-spacing: 0.05em;
    color: #000;
    line-height: 60px;
}
.hd-menu.nav-item{
    border-bottom: none;
}
.hd-menu.nav-item p{
    line-height: 1;
    padding: 17px 0 10px 0;
}
.hd-menu-down{
    display: block;
    background-color: transparent;
    width: 100%;
    padding: 0 5px 12px 15px;
    border-top: none;
    border-bottom: solid 1px #999999;
    position: relative;
    top: 0;
    left: 0;
}
.hd-menu-down p{
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #000;
    padding-left: 13px;
    margin-bottom: 5px;
    position: relative;
}
.hd-menu-down a:last-of-type p{
    margin-bottom: 0;
}
.sp-hd-phone{
    text-align: center;
    margin-bottom: 30px;
}
.sp-hd-phone .hd-phone-txt{
    max-width: 300px;
    width: 100%;
    font-size: 1.6rem;
    line-height: 30px;
    margin: 0 auto 30px;
}
.sp-hd-phone .hd-phone-num{
    line-height: 1;
    padding: 5px 0 0 30px;
    margin: 0;
}
.sp-hd-phone .hd-phone-num:before{
    width: 20px;
}
.sp-hd-phone .hd-phone-time{
    font-size: 1.6rem;
    margin: 0;
}
.hd-btn-sp{
    max-width: 320px;
    width: 100%;
    background-color: #f1f405;
    margin: 0 auto 20px;
}
.hd-btn-sp a{
    display: block;
    text-align: center;
}
.hd-btn-sp a p{
    display: inline;
    font-family: 'Oswald', sans-serif;
    font-size: 1.8rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 80px;
    position: relative;
    color: #0863b8;
    padding-left: 40px;
}
.hd-btn-sp a p:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_recruit01.png);
    width: 20px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.hd-btn-sp02{
    background-color: #0863b8;
    margin-bottom: 0;
}
.hd-btn-sp.hd-btn-sp02 a p{
    color: #fff;
}
.hd-btn-sp.hd-btn-sp02 a p:before{
    background-image: url(/system_panel/uploads/images/icon_mail.png);
    width: 25px;
}
@media screen and (max-width: 1079px){
    .navbar{
        padding: 25px 15px;
    }
    .hum-menu-p{
        top: 40px;
    }
    .hd-hum.open .hum-menu-p{
        top: 50px;
    }
}
@media screen and (max-width: 1023px){
    .hd-hum{
        right: 0;
    }
    .hd-hum.open{
        max-width: 500px;
    }
    .flex-cnt.hd-hum-inr{
        display: block;
    }
    .hd-hum.open .hd-hum-left{
        display: none;
    }
    .navbar-right{
        padding-left: 0;
    }
    .nav-item p{
        line-height: 50px;
    }
    .hd-reserve.flex-nml{
        display: block;
    }
    .hd-reserve{
        text-align: center;
    }
    .hd-reserve-p01{
        border-right: none;
        border-bottom: solid 1px #fff;
        padding-right: 0;
        padding-bottom: 10px;
        margin-right: 0;
    }
    .hd-reserve-p02{
        padding: 10px 0 10px 30px;
        margin-right: 0;
    }
    .hd-right-open .hd-item{
        margin-right: 0;
        margin-bottom: 15px;
    }
    .hd-right-open .hd-item:last-of-type{
        margin-bottom: 0;
    }
}
@media screen and (max-width: 767px){
    .hd-inr{
        height: 50px;
        padding: 10px;
    }
    .hd-logo{
        width: 200px;
    }
    .navToggle{
        height: 50px;
    }
    .hd-nav {
        height: 100vh;
    }
    .navbar{
        padding: 12.5px 10px;
    }
    .navbar-dark .navbar-toggler{
        width: 25px;
        height: 25px;
        margin-right: 5px;
    }
    .navbar-dark .navbar-toggler-icon{
        height: 2px;
    }
    .nav-item p{
        font-size: 1.8rem;
    }
    .hd-reserve{
        padding: 15px 30px;
    }
    .hd-reserve-p01{
        font-size: 1.8rem;
    }
    .hd-reserve-p02{
        font-size: 2.6rem;
    }
    .bg-hum-blue{
        width: 50px;
        height: 50px;
    }
    .hd-hum.open .navbar-dark .navbar-toggler{
        width: 25px;
        margin-right: 5px;
    }
    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1){
        top: 8px;
    }
    .navbar-toggler-icon:nth-of-type(2){
        top: 8px;
        transform: translateY(0);
    }
    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3){
        top: 8px;
    }
    .hum-menu-p{
        font-size: 1.4rem;
        top: 22px;
        right: 8px;
    }
    .hd-hum.open .hum-menu-p{
        top: 30px;
    }
    .nav-reserve-p{
        font-size: 2.1rem;
        margin-bottom: 20px;
    }
    .hd-right-open-btn p{
        line-height: 80px;
    }
    .hd-right-open-btn01 p{
        font-size: 2.4rem;
        padding-left: 25px;
    }
    .hd-right-open-btn01 p:before{
        width: 15px;
    }
    .hd-right-open-btn02 p{
        font-size: 2.1rem;
        padding-left: 45px;
    }
    .hd-right-open-btn02 p:before{
        width: 30px;
    }
}

/*	フッター共通コンテンツ
---------------------------------*/
.ft-contact{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
    text-align: center;
}
.ft-contact-cmn{
    border: solid 1px #102942;
    padding: 70px 10px;
    text-align: center;
}
.ft-contact-cmn .top-ttl{
    margin-bottom: 30px;
}
.ft-contact-cmn-p{
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.025em;
    margin-bottom: 30px;
}
.ft-contact-cmn-p02{
    letter-spacing: 0.05em;
}
.ft-contact-cmn-btn{
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
}
.ft-contact-cmn-btn a{
    display: block;
    text-align: center;
}
.ft-contact-cmn-btn p{
    line-height: 100px;
}
.ft-contact-cmn-btn01{
    background-color: #aa010e;
}
.ft-contact-cmn-btn01 p{
    display: inline;
    font-family: 'Oswald', sans-serif;
    font-size: 3.6rem;
    letter-spacing: 0.05em;
    color: #fff;
    padding-left: 40px;
    position: relative;
}
.ft-contact-cmn-btn01 p:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_phone.png);
    width: 25px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.ft-contact-cmn-btn02{
    border: solid 1px #102942;
    position: relative;
}
.ft-contact-cmn-btn02:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_arrow02.png);
    width: 100px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 30px;
}
.ft-contact-cmn-btn02 a{
    display: block;
    text-align: center;
}
.ft-contact-cmn-btn02 p{
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #102942;
}
@media screen and (max-width: 1023px){
}
@media screen and (max-width: 767px){
    .ft-contact-cmn{
        padding: 40px 10px;
    }
    .ft-contact-cmn .top-ttl{
        margin-bottom: 20px;
    }
    .ft-contact-cmn-p{
        font-size: 1.6rem;
        margin-bottom: 20px;
    }
    .ft-contact-cmn-btn p{
        line-height: 80px;
    }
    .ft-contact-cmn-btn01 p{
        font-size: 3rem;
        padding-left: 30px;
    }
    .ft-contact-cmn-btn01 p:before{
        width: 20px;
    }
    .ft-contact-cmn-btn02:before{
        width: 70px;
        right: 10px;
    }
}
/*	フッター
---------------------------------*/
.ft-logo{
    text-align: center;
    margin-bottom: 15px;
}
.ft-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 70px;
}
.ft-nav .li{
    border-right: solid 1px #fff;
    margin-bottom: 10px;
}
.ft-nav .li:last-of-type{
    border-right: none;
}
.ft-nav .li p{
    letter-spacing: 0.025em;
    line-height: 16px;
    color: #fff;
    padding: 0 15px;
}
.ft-nav .li:first-of-type p{
    padding-left: 0;
}
.ft-nav .li:last-of-type p{
    padding-right: 0;
}
.ft-insta{
    text-align: center;
    margin-bottom: 30px;
}
.ft-add{
    letter-spacing: 0.025em;
    color: #fff;
    text-align: center;
}
.bortop {
    border-top: solid 1px #fff;
}
@media screen and (max-width:1023px){
    .ft-nav{
        display: none;
    }
}
@media screen and (max-width:767px){
    .ft-logo{
        width: 80px;
        margin: 0 auto 15px;
    }
    .ft-insta{
        width: 30px;
        margin: 0 auto 20px;
    }
  .ft-add{
    font-size:1.3rem
  }
}
/*ページトップへ戻るボタン*/
.btn-pagetop {
    width: 50px;
    cursor: pointer;
}
.pagetop-sp {
    display: none;
}
/*コピーライト（ｐタグ）*/
.copyright {
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-align: center;
    color: #fff;
}
@media screen and (max-width:1023px) {
    .btn-pagetop{
        display: none !important;
    }
    .pagetop-sp{
        display: block;
    }
    .pagetop-sp a {
        display: block;
        height: 67.5px;
        background-color: #000;
        text-align: center;
        position: relative;
    }
    .pagetop-sp a div {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        width: 25px;
        height: 25px;
    }
    .pagetop-sp a div:before {
        content: '';
        border-top: solid 1px #ffffff;
        border-left: solid 1px #ffffff;
        width: 25px;
        height: 25px;
        transform: rotate(45deg);
        position: absolute;
        top: 10px;
        left: 0;
    }
}
@media screen and (max-width:767px) {
    .copyright {
        font-size: 1rem;
    }
}

/*	メイン画像
---------------------------------*/
.main-img-otr{
    position: relative;
}
.main-img{
    height: 1000px;
}
.main-img.ojf:before{
    content: none;
}
.main-catch{
    position: absolute;
    top: 54%;
    left: 50%;
    transform: translate(-50%, -50%);
}
@media screen and (max-width:1079px){
    .main-img{
        height: 700px;
    }
    .main-catch{
        width: 60%;
    }
}
@media screen and (max-width:1023px){
    .main-img{
        height: 60vw;
    }
    .main-catch{
        width: 50%;
    }
}
@media screen and (max-width:767px){
    .main-img{
        height: 90vw;
    }
    .main-catch{
        width: 65%;
    }
}

/*	トップページ
---------------------------------*/
.top-ttl{
    text-align: center;
    margin-bottom: 50px;
}
.ttl-jap{
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #102942;
}
.por{
    position: relative;
}
.bg-blue{
    background-color: #102942;
}
.bg-gray{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
}
.top-news{
    background-color: #fff;
    box-shadow: 0px 0px 19px 1px rgba(119, 119, 119, 0.25);
    padding: 60px 70px;
}
.top-news-left{
    width: 23.6%;
}
.top-news-left .top-ttl{
    text-align: left;
}
.top-news-left .btn-cmn01{
    margin-left: 0;
}
.top-news-right{
    width: 70.7%;
}
.top-news-right .webgene-item{
    border-top: solid 1px #999999;
}
.top-news-right .webgene-item a{
    display: block;
    padding: 20px 0;
}
.top-news-right .webgene-item:last-of-type{
    border-bottom: solid 1px #999999;
}
.top-news-right .webgene-item .blogdate{
    font-weight: 700;
    color: #102942;
    padding-left: 15px;
}
.top-news-right .webgene-item .cate-box{
    text-align: center;
    margin-left: 15px;
    margin-top: 3px;
}
.top-news-right .webgene-item .blogcate{
    background-color: #102942;
    color: #fff;
    width: 100px;
    font-size: 1.4rem;
    line-height: 23px;
}
.top-news-right .webgene-item .blogttl{
    width: calc(100% - 220px);
    letter-spacing: 0.05em;
    padding-left: 30px;
}
.covid-btn{
    max-width: 800px;
    width: 100%;
    border: solid 1px #960e0e;
    margin: 0 auto;
    position: relative;
}
.covid-btn a{
    display: block;
    text-align: center;
}
.covid-btn a p{
    font-size: 2.1rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #960e0e;
    line-height: 120px;
}
.covid-btn:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_arrow01.png);
    width: 100px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 50px;
}
.bg-top-concept{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
    width: 100%;
    height: 73%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.top-concept{
    position: relative;
}
.top-concept-left{
    width: 45.8%;
    min-height: 32.5vw;
    position: relative;
}
.top-concept-left:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/logo02.png);
    width: 200px;
    height: 326px;
    position: absolute;
    bottom: 0;
    right: 0;
}
.top-concept-left .top-ttl{
    text-align: left;
}
.top-concept-left .ttl-cmn03{
    margin-bottom: 40px;
}
.top-concept-left-p{
    letter-spacing: 0.025em;
    line-height: 2.5;
    position: relative;
}
.top-concept-img{
    width: 47.5%;
    position: absolute;
    top: 0;
    right: 0;
}
.top-kodawari-item{
    margin-bottom: 70px;
    position: relative;
}
.top-kodawari-item:before{
    content: '';
    background-color: #102942;
    width: calc((100% - 600px) / 2);
    height: 2px;
    position: absolute;
    top: 84px;
    left: 0;
}
.top-kodawari-item-inr{
    width: 50%;
    min-height: calc(30vw + 70px);
    padding-top: 60px;
}
.top-kodawari-num{
    font-family: 'Oswald', sans-serif;
    font-size: 4.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #102942;
    line-height: 1;
    padding-left: 60%;
    margin-bottom: 50px;
}
.top-kodawari-item-txt{
    max-width: 600px;
    width: 100%;
    background-color: #102942;
    text-align: center;
    padding: 80px 10px;
    position: relative;
    z-index: 3;
}
.top-kodawari-item-img{
    width: calc(52.5vw + 70px);
    position: absolute;
    top: 0;
    right: 0;
}
.top-kodawari-item-img-inr{
    padding: 0 70px 70px 0;
    position: relative;
}
.top-kodawari-item-img01{
    position: relative;
    z-index: 2;
}
.top-kodawari-item-img02{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
    width: calc(100% - 30px);
    height: calc(100% - 40px);
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
}
.top-kodawari-item:nth-of-type(even):before{
    left: auto;
    right: 0;
}
.top-kodawari-item:nth-of-type(even) .top-kodawari-item-inr{
    margin-left: auto;
}
.top-kodawari-item:nth-of-type(even) .top-kodawari-num{
    text-align: right;
    padding-left: 0;
    padding-right: 60%;
}
.top-kodawari-item:nth-of-type(even) .top-kodawari-item-txt{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
}
.top-kodawari-item:nth-of-type(even) .top-kodawari-item-txt .ttl-cmn04,
.top-kodawari-item:nth-of-type(even) .top-kodawari-item-txt .ttl-cmn05{
    color: #102942;
}
.top-kodawari-item:nth-of-type(even) .top-kodawari-item-img{
    left: 0;
    right: auto;
}
.top-kodawari-item:nth-of-type(even) .top-kodawari-item-img-inr{
    padding: 0 0 70px 70px;
}
.top-kodawari-item:nth-of-type(even) .top-kodawari-item-img02{
    background: #102942;
    left: 0;
    right: auto;
}
.bg-top-menu{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
    width: 100%;
    height: 92.5%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.top-menu-item{
    position: relative;
}
.top-menu-item-txt{
    width: 54.17%;
    padding: 70px 0 70px 100px;
}
.top-menu-item-txt-ttl{
    padding-bottom: 25px;
    margin-bottom: 30px;
    border-bottom: solid 2px #000;
}
.top-menu-item-txt-ttl .ttl-cmn06,
.top-menu-item-txt-ttl .ttl-jap{
    line-height: 1;
}
.top-menu-item-txt-ttl .ttl-jap{
    padding-left: 15px;
}
.top-menu-item-txt-p{
    letter-spacing: 0.025em;
    padding-right: 50px;
    margin-bottom: 40px;
}
.top-menu-item-txt .btn-cmn01{
    margin-left: 0;
}
.top-menu-item-img{
    width: 45.8%;
    position: absolute;
    bottom: 0;
    right: 0;
}
.top-menu-item:nth-of-type(odd) .top-menu-item-txt{
    padding: 70px 100px 70px 0;
    margin-left: auto;
    margin-bottom: 70px;
}
.top-menu-item:nth-of-type(odd) .top-menu-item-txt-ttl{
    padding-left: 50px;
}
.top-menu-item:nth-of-type(odd) .top-menu-item-txt-p{
    padding: 0 0 0 50px;
}
.top-menu-item:nth-of-type(odd) .top-menu-item-txt .btn-cmn01{
    margin-left: 50px;
}
.top-menu-item:nth-of-type(odd) .top-menu-item-img{
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
}
.top-recommend-item{
    margin: 0 30px 70px;
}
.top-recommend-item-img.ojf:before{
    padding-top: 62.5%;
}
.top-recommend-item-txt{
    background-color: #181818;
    text-align: center;
    padding: 60px 10px;
}
.top-shop{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top_shop.jpg);
    color: #fff;
    text-align: center;
}
.top-shop-item{
    width: calc(100% / 4);
    border-right: solid 2px rgba(255, 255, 255, .6);
    padding: 6.5vw 10px 7.5vw;
}
.top-shop-item:last-of-type{
    border-right: none;
}
.top-shop-item .ttl-cmn09{
    padding-bottom: 25px;
    margin-bottom: 30px;
    position: relative;
}
.top-shop-item .ttl-cmn09:before{
    content: '';
    background-color: #fff;
    width: 40px;
    height: 4px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}
.top-shop-item-p{
    height: 60px;
    letter-spacing: 0.05em;
    margin-bottom: 20px;
}
.top-shop-item .btn-cmn01{
    border: solid 1px #fff;
}
.top-shop-item .btn-cmn01 p{
    color: #fff;
}
@media screen and (max-width:1079px){
    .top-kodawari-item-img{
        width: calc(52.5vw + 40px);
    }
    .top-kodawari-item-img-inr{
        padding: 0 40px 40px 0;
    }
    .top-kodawari-item:nth-of-type(even) .top-kodawari-item-img-inr{
        padding: 0 0 40px 40px;
    }
    .top-recommend-item{
        margin: 0 15px 70px;
    }
    .top-shop-item{
        width: calc(100% / 2);
        border-bottom: solid 2px rgba(255, 255, 255, .6);
    }
    .top-shop-item:nth-of-type(even){
        border-right: none;
    }
}
@media screen and (max-width:1023px){
    .top-news.flex-btw{
        display: block;
    }
    .top-news{
        padding: 40px 30px;
    }
    .top-news-left{
        width: 100%;
    }
    .top-news-left .top-ttl{
        text-align: center;
    }
    .top-news-right{
        width: 100%;
        margin-bottom: 50px;
    }
    .top-news-right{
        margin-bottom: 30px;
    }
    .top-news-right .webgene-item a{
        padding: 10px 0;
    }
    .top-news-right .webgene-item .blogdate{
        padding-left: 10px;
    }
    .top-news-right .webgene-item .cate-box{
        margin-top: 0;
        margin-left: 10px;
    }
    .top-news-right .webgene-item .blogttl{
        width: 100%;
        padding-left: 10px;
    }
    .top-concept-left{
        max-width: 1000px;
        width: 100%;
        margin-bottom: 50px;
    }
    .top-concept-img{
        width: 100%;
        margin: 0 auto;
        position: relative;
    }
    .top-kodawari-item:before{
        width: 18%;
        top: 145px;
    }
    .top-kodawari-item-inr{
        width: 80%;
        min-height: auto;
        padding-top: 120px;
    }
    .top-kodawari-num{
        padding-left: 25%;
        margin-bottom: 30px;
    }
    .top-kodawari-item-txt{
        padding: 30px 10px;
    }
    .top-kodawari-item-img{
        width: 65%;
    }
    .top-kodawari-item:nth-of-type(even) .top-kodawari-num{
        padding-right: 25%;
    }
    .top-menu-item:nth-of-type(odd) .top-menu-item-txt{
        padding: 40px 0;
        margin-bottom: 0;
    }
    .top-menu-item:nth-of-type(even) .top-menu-item-txt{
        padding: 60px 0 40px;
    }
    .top-menu-item:nth-of-type(even) .top-menu-item-img{
        bottom: auto;
        top: 0;
    }
}
@media screen and (max-width:767px){
    .top-ttl{
        margin-bottom: 30px;
    }
    .top-news{
        padding: 30px 15px;
    }
    .covid-btn{
        max-width: 320px;
    }
    .covid-btn a p{
        font-size: 1.6rem;
        line-height: 80px;
    }
    .covid-btn:before{
        width: 40px;
        right: -25px;
    }
    .top-concept-left .ttl-cmn03{
        margin-bottom: 20px;
    }
    .top-concept-left{
        margin-bottom: 30px;
    }
    .top-concept-left:before{
        width: 100px;
        height: 163px;
    }
    .top-kodawari-item{
        margin-bottom: 40px;
    }
    .top-kodawari-item:before{
        width: 6%;
        top: 90px;
    }
    .top-kodawari-item-inr{
        width: 90%;
        min-height: 43.7vw;
        padding-top: 70px;
    }
    .top-kodawari-item-img{
        width: 75%;
    }
    .top-kodawari-item-img-inr{
        padding: 0 15px 15px 0;
    }
    .top-kodawari-num{
        font-size: 3.6rem;
        padding-left: 5%;
        margin-bottom: 20px;
    }
    .top-kodawari-item-txt{
        padding: 20px 10px;
    }
    .top-kodawari-item-txt .ttl-cmn04{
        font-size: 1.4rem;
    }
    .top-kodawari-item-txt .ttl-cmn05{
        font-size: 2rem;
    }
    .top-kodawari-item:nth-of-type(even) .top-kodawari-item-img-inr{
        padding: 0 0 15px 15px;
    }
    .top-kodawari-item:nth-of-type(even) .top-kodawari-num{
        padding-right: 5%;
    }
    .bg-top-menu{
        height: 96%;
    }
    .top-menu-item{
        margin-bottom: 40px;
    }
    .top-menu-item:last-of-type{
        margin-bottom: 0;
    }
    .top-menu-item-txt{
        width: 100%;
    }
    .top-menu-item-txt-ttl{
        padding-bottom: 15px;
        margin-bottom: 20px;
    }
    .top-menu-item-txt-p{
        padding: 0;
        margin-bottom: 20px;
    }
    .top-menu-item-txt .btn-cmn01{
        margin: 0 auto;
    }
    .top-menu-item-img{
        max-width: 550px;
        width: 100%;
        margin: 0 auto;
        position: relative;
    }
    .top-menu-item:nth-of-type(odd) .top-menu-item-txt{
        padding: 0 0 30px;
    }
    .top-menu-item:nth-of-type(odd) .top-menu-item-txt-ttl{
        padding-left: 0;
    }
    .top-menu-item:nth-of-type(odd) .top-menu-item-txt-p{
        padding-left: 0;
    }
    .top-menu-item:nth-of-type(odd) .top-menu-item-txt .btn-cmn01{
        margin: 0 auto;
    }
    .top-menu-item:nth-of-type(even) .top-menu-item-txt{
        padding: 0 0 30px;
    }
    .top-recommend-item{
        margin: 0 10px 40px;
    }
    .top-recommend-item-txt{
        padding: 30px 10px;
    }
    .top-recommend-item-txt .ttl-cmn08{
        font-size: 1.8rem;
    }
    .top-shop-item{
        width: 100%;
        border-right: none;
    }
    .top-shop-item .ttl-cmn09{
        padding-bottom: 15px;
        margin-bottom: 20px;
    }
    .top-shop-item-p{
        height: auto;
    }
}
/*	下層ヘッダー
---------------------------------*/
.bg-subhd{
    height: 650px;
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/img_sub01.jpg);
    position: relative;
}
.sub-ttl-otr{
    position: relative;
    height: 650px;
}
.subhd-ttl{
    width: 100%;
    position: absolute;
    top: 56%;
    left: 0;
    transform: translate(0, -50%);
}
.subttl{
    font-family: 'Oswald', sans-serif;
    font-size: 6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #fff;
}
.subttl02{
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #fff;
}
@media screen and (max-width:1023px){
    .bg-subhd{
        height: 400px;
    }
    .sub-ttl-otr{
        height: 400px;
    }
}
@media screen and (max-width:767px){
    .bg-subhd{
        height: 300px;
    }
    .sub-ttl-otr{
        height: 300px;
    }
    .subhd-ttl{
        
    }
    .subttl{
        font-size: 4rem;
    }
    .subttl02{
        font-size: 1.6rem;
    }
}

/*	コース
---------------------------------*/
.enkai-p.ttl-cmn10{
    text-align: center;
    margin-bottom: 60px;
}
.enkai-p strong{
    color: #960e0e;
}
.enkai-img{
    text-align: center;
    margin-bottom: 50px;
}
.enkai-item{
    max-width: 1000px;
    width: 100%;
    border-top: solid 1px #000;
    border-bottom: solid 1px #000;
    text-align: center;
    padding: 40px 0;
    margin: 0 auto 50px;
}
.enkai-item .ttl-cmn10{
    font-weight: 700;
    margin-bottom: 30px;
}
.enkai-box{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
    border: solid 1px #000;
    padding: 50px 0;
}
.enkai-box-p01{
    width: calc(50% - 1px);
    text-align: center;
    padding-top: 25px;
}
.enkai-box-p01 .ttl-cmn10{
    font-weight: 700;
}
.enkai-box-p02{
    width: calc(50% - 1px);
    padding: 25px 10px 0 50px;
}
.enkai-box-p03{
    letter-spacing: 0.05em;
    padding-left: 20px;
    position: relative;
}
.enkai-box-p03:before{
    content: '※';
    position: absolute;
    top: 0;
    left: 0;
}
.enkai-box-border{
    background-color: #000;
    width: 1px;
    height: 120px;
}
@media screen and (max-width:1023px){
    .enkai-box.flex-btw{
        display: block;
    }
    .enkai-box{
        padding: 50px 10px;
    }
    .enkai-box-p01{
        width: 100%;
        padding: 0 0 20px;
    }
    .enkai-box-p02{
        width: 75%;
        padding: 20px 0 0;
        margin: 0 auto;
    }
    .enkai-box-border{
        width: 80%;
        height: 1px;
        margin: 0 auto;
    }
}
@media screen and (max-width:767px){
    .enkai-p.ttl-cmn10{
        margin-bottom: 40px;
    }
    .enkai-img{
        margin-bottom: 30px;
    }
    .enkai-item{
        padding: 30px 5px;
    }
    .enkai-item .ttl-cmn10{
        margin-bottom: 20px;
    }
    .enkai-box{
        padding: 30px 10px;
    }
    .enkai-box-p02{
        width: 90%;
    }
    .enkai-box-border{
        width: 100%;
    }
}

/*	ドリンク
---------------------------------*/
.tax-p{
    letter-spacing: 0.05em;
    text-align: right;
    margin-bottom: 40px;
}
.drink-img{
    text-align: center;
    margin-bottom: 50px;
}
.drink-item{
    margin-bottom: 100px;
}
.drink-item-h{
    background-color: #000;
    padding: 30px 10px 30px 40px;
    margin-bottom: 50px;
}
.drink-item-h .ttl-cmn08{
    font-weight: 700;
    line-height: 1;
}
.drink-item-h .ttl-cmn07{
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #fff;
    padding-left: 25px;
}
.drink-table{
    width: 47.5%;
    margin-bottom: 50px;
}
.drink-table-h{
    background-color: #e6e5e3;
    padding: 20px 0 20px 40px;
    margin-bottom: 30px;
}
.drink-table-h.opn{
    opacity: 0;
}
.drink-table-h .ttl-cmn04{
    letter-spacing: 0.05em;
    color: #010101;
}
.drink-table-h .ttl-cmn07{
    font-weight: 400;
    letter-spacing: 0.05em;
    color: #000;
    padding-top: 10px;
    padding-left: 25px;
}
.drink-table-tr{
    border-top: solid 1px #000;
    padding: 20px 30px 20px 10px;
}
.drink-table-tr:last-of-type{
    border-bottom: solid 1px #000;
}
.drink-table-th{
    letter-spacing: 0.05em;
    color: #010101;
}
.drink-table-td{
    letter-spacing: 0.05em;
    color: #000;
    margin-left: auto;
}
.drink-table02{
    width: 100%;
}
@media screen and (max-width:1023px){
    .drink-table-list.flex-btw{
        display: block;
    }
    .drink-table{
        width: 100%;
    }
    .drink-table-h.opn{
        display: none;
    }
    .drink-item:last-of-type{
        margin-bottom: 0;
    }
    .drink-table:last-of-type{
        margin-bottom: 0;
    }
}
@media screen and (max-width:1023px){
    .drink-item{
        margin-bottom: 60px;
    }
    .drink-item-h{
        padding: 20px 10px 20px 20px;
        margin-bottom: 30px;
    }
    .drink-table-h{
        padding: 10px 0 10px 20px;
        margin-bottom: 20px;
    }
    .drink-table-h .ttl-cmn07{
        padding-top: 6px;
        padding-left: 15px;
    }
    .drink-item-h .ttl-cmn07{
        padding-left: 15px;
    }
    .drink-table{
        margin-bottom: 30px;
    }
    .drink-table-tr{
        padding: 10px;
    }
    .drink-table-h .ttl-cmn07.drink-table-h02{
        width: 100%;
        padding-top: 0;
        padding-left: 0;
    }
    .drink-table02{
        margin-bottom: 30px;
    }
}

/*	グランドメニュー
---------------------------------*/
.osusume-item{
    width: calc((100% - 90px) / 3);
    margin-right: 45px;
    margin-bottom: 50px;
}
.osusume-item:nth-of-type(3n){
    margin-right: 0;
}
.osusume-item-num{
    font-family: 'Oswald', sans-serif;
    font-size: 4.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1;
    color: #000;
    text-align: center;
    padding-bottom: 20px;
    margin-bottom: 30px;
    position: relative;
}
.osusume-item-num:before{
    content: '';
    background-color: #010101;
    width: 40px;
    height: 4px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}
.osusume-item-img{
    border: solid 1px #000;
    margin-bottom: 20px;
}
.osusume-item-img.ojf:before{
    padding-top: 81%;
}
.osusume-item-h.ttl-cmn10{
    font-weight: 700;
    color: #102942;
    text-align: center;
    margin-bottom: 20px;
}
.osusume-item-price{
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #102942;
    text-align: right;
    margin-bottom: 20px;
}
.osusume-item-p{
    letter-spacing: 0.05em;
}
.menu-list .drink-item{
    margin-bottom: 50px;
}
.menu-list .drink-item:last-of-type{
    margin-bottom: 0;
}
.menu-list .drink-table{
    margin-bottom: 0;
}
.menu-table-tr{
    margin-bottom: 30px;
}
.menu-table-img{
    width: 47.5%;
}
@media screen and (max-width:1200px){
    .drink-item-h .ttl-cmn07.drink-item-h02{
        width: 100%;
        padding-top: 10px;
        padding-left: 0;
    }
}
@media screen and (max-width:1079px){
    .osusume-item{
        width: calc((100% - 40px) / 3);
        margin-right: 20px;
    }
}
@media screen and (max-width:1023px){
    .osusume-item{
        width: calc((100% - 30px) / 2);
        margin-right: 30px;
    }
    .osusume-item:nth-of-type(3n){
        margin-right: 30px;
    }
    .osusume-item:nth-of-type(2n){
        margin-right: 0;
    }
    .menu-list .drink-table{
        margin-bottom: 30px;
    }
    .menu-table-img{
        max-width: 570px;
        width: 100%;
        margin: 0 auto;
    }
}
@media screen and (max-width:767px){
    .osusume-item{
        width: 100%;
        margin: 0 auto 40px;
    }
    .osusume-item:nth-of-type(3n){
        margin: 0 auto 40px;
    }
    .osusume-item:nth-of-type(2n){
        margin: 0 auto 40px;
    }
    .osusume-item:last-of-type{
        margin: 0 auto;
    }
    .osusume-item-num{
        font-size: 3.6rem;
        padding-bottom: 15px;
        margin-bottom: 20px;
    }
    .osusume-item-img{
        max-width: 370px;
        width: 100%;
        margin: 0 auto 15px;
    }
    .menu-table-tr{
        margin-bottom: 20px;
    }
}

/*	テイクアウト
---------------------------------*/
.gift-item .top-menu-item-img{
    width: 50%;
}
.gift-item .top-menu-item-txt{
    min-height: 600px;
}
.gift-item .top-menu-item-txt-ttl{
    margin-bottom: 70px;
}
.gift-item.top-menu-item:nth-of-type(odd) .top-menu-item-txt{
    padding: 60px 0 0 0;
    margin-bottom: 0;
}
.gift-item.top-menu-item:nth-of-type(odd) .top-menu-item-txt-ttl{
    padding-left: 100px;
}
.gift-item-box{
    max-width: 650px;
    width: 100%;
    background-color: #102942;
    padding: 50px 15px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
.gift-item-box-inr{
    max-width: 450px;
    width: 100%;
    margin: 0 auto;
}
.gift-item-box-p{
    letter-spacing: 0.05em;
    color: #fff;
    margin-bottom: 30px;
}
.gift-item-box-white{
    background-color: #fff;
    padding: 20px 10px 20px 40px;
}
.gift-item-box-white-p{
    letter-spacing: 0.05em;
}
.gift-item-box-white-p strong{
    color: #960e0e;
}
@media screen and (max-width:1230px){
    .gift-item .top-menu-item-txt{
        min-height: 48.8vw;
    }
}
@media screen and (max-width:1023px){
    .gift-item .top-menu-item-txt{
        width: 100%;
        min-height: auto;
    }
    .gift-item.top-menu-item:nth-of-type(odd) .top-menu-item-txt{
        padding: 0;
        margin-bottom: 50px;
    }
    .gift-item .top-menu-item-txt-ttl{
        margin-bottom: 40px;
    }
    .gift-item.top-menu-item:nth-of-type(odd) .top-menu-item-txt-ttl{
        padding-left: 50px;
    }
    .gift-item .top-menu-item-img{
        max-width: 600px;
        width: 100%;
        margin: 0 auto;
        position: relative;
    }
}
@media screen and (max-width:767px){
    .gift-item.top-menu-item:nth-of-type(odd) .top-menu-item-txt{
        margin-bottom: 30px;
    }
    .gift-item .top-menu-item-txt-ttl{
        margin-bottom: 20px;
    }
    .gift-item.top-menu-item:nth-of-type(odd) .top-menu-item-txt-ttl{
        padding-left: 0;
    }
    .gift-item-box{
        padding: 30px 15px;
    }
    .gift-item-box-p{
        margin-bottom: 20px;
    }
    .gift-item-box-white{
        padding: 20px 15px;
    }
}

/*	２Qのこだわり
---------------------------------*/
.kodawari-item{
    margin-bottom: 100px;
    position: relative;
}
.kodawari-item:last-of-type{
    margin-bottom: 0;
}
.kodawari-item-txt{
    width: 50%;
    min-height: calc(30vw + 50px);
    padding-top: 40px;
    position: relative;
    z-index: 2;
}
.kodawari-item-txt-ttl{
    border-bottom: solid 2px #000;
    padding-bottom: 30px;
    margin-bottom: 60px;
}
.kodawari-item-txt-ttl-num{
    font-family: 'Oswald', sans-serif;
    font-size: 10rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #000;
    line-height: 1;
}
.kodawari-item-txt-ttl .ttl-cmn07{
    letter-spacing: 0.1em;
    color: #102942;
    line-height: 1;
    padding-left: 20px;
}
.kodawari-item-txt .ttl-cmn03{
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-bottom: 40px;
}
.kodawari-item-txt-inr{
    width: 83%;
}
.kodawari-item-txt-p{
    letter-spacing: 0.05em;
}
.kodawari-item-img{
    width: calc(50% + 50px);
    position: absolute;
    top: 0;
    right: 0;
}
.kodawari-item-img-inr{
    padding: 0 0 50px 50px;
    position: relative;
}
.kodawari-item-img01{
    width: 100%;
    position: relative;
    z-index: 3;
}
.kodawari-item-img02{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
    width: 100%;
    height: calc(100% - 100px);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.kodawari-item:nth-of-type(even) .kodawari-item-txt{
    margin-left: auto;
}
.kodawari-item:nth-of-type(even) .kodawari-item-txt-ttl.flex-nml{
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.kodawari-item:nth-of-type(even) .kodawari-item-txt-inr{
    margin-left: auto;
}
.kodawari-item:nth-of-type(even) .kodawari-item-img{
    left: 0;
    right: auto;
}
.kodawari-item:nth-of-type(even) .kodawari-item-img-inr{
    padding: 0 50px 50px 0;
}
.kodawari-item:nth-of-type(even) .kodawari-item-img02{
    background: #102942;
}
@media screen and (max-width:1023px){
    .kodawari-item-txt{
        width: 100%;
        min-height: auto;
        padding: 0;
        margin-bottom: 50px;
    }
    .kodawari-item-txt-inr{
        width: 100%;
    }
    .kodawari-item-img{
        width: 100%;
        position: relative;
    }
    .kodawari-item:nth-of-type(even) .kodawari-item-txt-ttl.flex-nml{
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
}
@media screen and (max-width:767px){
    .kodawari-item{
        margin-bottom: 60px;
    }
    .kodawari-item-txt{
        margin-bottom: 40px;
    }
    .kodawari-item-txt-ttl{
        padding-bottom: 20px;
        margin-bottom: 30px;
    }
    .kodawari-item-txt-ttl-num{
        font-size: 6rem;
    }
    .kodawari-item-txt-ttl .ttl-cmn07{
        padding-left: 15px;
    }
    .kodawari-item-txt .ttl-cmn03{
        margin-bottom: 20px;
    }
    .kodawari-item-img-inr{
        padding: 0 0 30px 30px;
    }
    .kodawari-item-img02{
        height: calc(100% - 50px);
    }
    .kodawari-item:nth-of-type(even) .kodawari-item-img-inr{
        padding: 0 30px 30px 0;
    }
}

/*	お席のご案内 / Q&A
---------------------------------*/
.rooom-item{
    padding-bottom: 100px;
    margin-bottom: 150px;
    position: relative;
}
.rooom-item:last-of-type{
    margin-bottom: 0;
}
.rooom-item-inr{
    padding-bottom: 75px;
    position: relative;
}
.rooom-item-inr:before{
    content: '';
    background-color: #000;
    width: calc((100% - 800px) / 2);
    height: 2px;
    position: absolute;
    top: 100px;
    left: 0;
}
.bg-rooom-item{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
    width: 87.5%;
    height: calc(100% - 100px);
    position: absolute;
    top: 100px;
    left: 0;
    z-index: -2;
}
.rooom-item-txt{
    width: 62%;
    min-height: 450px;
    height: 27.5vw;
    padding-top: 80px;
    padding-left: 20%;
    position: relative;
}
.rooom-item-txt:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/logo02.png);
    width: 200px;
    height: 326px;
    position: absolute;
    bottom: -30px;
    right: 110px;
    z-index: -1;
}
.rooom-item-txt-ttl{
    margin-bottom: 70px;
}
.rooom-item-txt-ttl .ttl-cmn06{
    line-height: 1;
}
.rooom-item-txt-ttl .ttl-jap{
    color: #000;
    line-height: 1;
    padding-left: 20px;
}
.rooom-item-txt-p{
    letter-spacing: 0.05em;
}
.rooom-item-img01{
    width: 40%;
    position: absolute;
    top: 0;
    right: 0;
}
.rooom-item-img02{
    width: 26%;
    position: absolute;
    bottom: 0;
    left: 9%;
}
.rooom-item:nth-of-type(2n) .bg-rooom-item{
    left: auto;
    right: 0;
}
.rooom-item:nth-of-type(2n) .rooom-item-inr:before{
    left: auto;
    right: 0;
}
.rooom-item:nth-of-type(2n) .rooom-item-txt{
    margin-left: auto;
    padding-left: 0;
    padding-right: 20%;
}
.rooom-item:nth-of-type(2n) .rooom-item-txt:before{
    left: 110px;
    right: auto;
}
.rooom-item:nth-of-type(2n) .rooom-item-img01{
    left: 0;
    right: auto;
}
.rooom-item:nth-of-type(2n) .rooom-item-img02{
    left: auto;
    right: 9%;
}
.faq{
    margin-bottom: 50px;
}
.faq:last-of-type{
    margin-bottom: 0;
}
.faq-q{
    padding-left: 100px;
    margin-bottom: 20px;
    position: relative;
}
.faq-q p{
    font-size: 1.8rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    min-height: 70px;
}
.faq-q:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_Q.png);
    width: 70px;
    height: 70px;
    position: absolute;
    top: 0;
    left: 0;
}
.faq-a{
    max-width: 1100px;
    width: 92%;
    margin-left: auto;
    background-color: #f3f3f3;
    padding: 30px 40px 30px 150px;
    position: relative;
}
.faq-a p{
    min-height: 70px;
}
.faq-a:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_A.png);
    width: 70px;
    height: 70px;
    position: absolute;
    top: 30px;
    left: 50px;
}
@media screen and (max-width:1450px){
    .rooom-item-txt{
        width: 59%;
    }
}
@media screen and (max-width:1079px){
    .rooom-item-txt{
        width: 55%;
        padding-left: 15%;
    }
    .rooom-item-inr:before{
        width: 13%;
    }
    .rooom-item:nth-of-type(2n) .rooom-item-txt{
        padding-right: 15%;
    }
}
@media screen and (max-width:1023px){
    .rooom-item{
        padding-bottom: 0;
        margin-bottom: 100px;
    }
    .bg-rooom-item{
        width: 95%;
        height: calc(100% - 20px);
        top: 20px;
    }
    .rooom-item-inr{
        padding-bottom: 0;
        margin-bottom: 50px;
    }
    .rooom-item-inr:before{
        width: 50%;
        top: 20px;
        left: auto;
        right: 0;
    }
    .rooom-item-txt{
        width: 90%;
        height: auto;
        min-height: auto;
        padding: 0 0 50px 0;
    }
    .rooom-item-txt:before{
        width: 120px;
        height: 196px;
        bottom: 10px;
        right: 0;
    }
    .rooom-item-txt-ttl{
        margin-bottom: 40px;
    }
    .rooom-item-img01{
        max-width: 800px;
        width: 70%;
        margin-left: auto;
        margin-bottom: 30px;
        position: relative;
    }
    .rooom-item-img02{
        max-width: 520px;
        width: 45%;
        position: relative;
        left: 0;
    }
    .rooom-item:nth-of-type(2n) .bg-rooom-item{
        left: 0;
        right: auto;
    }
    .rooom-item:nth-of-type(2n) .rooom-item-txt{
        padding-right: 0;
        margin-left: 0;
    }
    .rooom-item:nth-of-type(2n) .rooom-item-txt:before{
        bottom: 10px;
        left: auto;
        right: 0;
    }
    .rooom-item:nth-of-type(2n) .rooom-item-img01{
        margin-left: 0;
        margin-right: auto;
    }
    .rooom-item:nth-of-type(2n) .rooom-item-img02{
        margin-left: auto;
        margin-right: 0;
        right: auto;
    }
}
@media screen and (max-width:767px){
    .rooom-item{
        margin-bottom: 60px;
    }
    .rooom-item-inr{
        margin-bottom: 30px;
    }
    .rooom-item-inr:before{
        width: 30%;
    }
    .rooom-item-txt{
        padding-bottom: 30px;
    }
    .rooom-item-txt-ttl{
        margin-bottom: 20px;
    }
    .rooom-item-txt:before{
        width: 100px;
        height: 163px;
    }
    .rooom-item-img01{
        width: 80%;
    }
    .rooom-item-img02{
        width: 60%;
    }
    .faq{
        margin-bottom: 30px;
    }
    .faq-q{
        padding-left: 50px;
    }
    .faq-q p{
        font-size: 1.4rem;
        min-height: 35px;
    }
    .faq-q:before{
        width: 35px;
        height: 35px;
    }
    .faq-a{
        width: 100%;
        padding: 15px 10px 10px 60px;
    }
    .faq-a p{
        min-height: 35px;
    }
    .faq-a:before{
        width: 35px;
        height: 35px;
        top: 15px;
        left: 10px;
    }
}

/*	店舗情報
---------------------------------*/
.bg-greeting{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_top.jpg);
    width: 66%;
    height: 70%;
    position: absolute;
    top: 210px;
    right: 0;
    z-index: -1;
}
.greeting-item-txt{
    width: 45.8%;
    padding-top: 40px;
}
.greeting-item-txt-inr{
    padding-left: 100px;
    margin-bottom: 50px;
}
.greeting-item-txt-inr .top-ttl{
    text-align: left;
}
.greeting-item-txt-inr .ttl-cmn05{
    letter-spacing: 0.05em;
    color: #102942;
    margin-bottom: 40px;
}
.greeting-item-txt-inr-p{
    letter-spacing: 0.05em;
    margin-bottom: 15px;
}
.greeting-item-txt-inr-name{
    letter-spacing: 0.05em;
    text-align: right;
}
.greeting-item-img{
    width: 45.8%;
}
.shop-table-tr{
    border-top: solid 1px #000;
    padding: 20px 0;
}
.shop-table-tr:last-of-type{
    border-bottom: solid 1px #000;
}
.shop-table-th{
    width: 27.5%;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #102942;
    padding-left: 80px;
}
.shop-table-td{
    width: 72.5%;
    letter-spacing: 0.05em;
}
.access-map{
    width: 100%;
    height: 500px;
    margin-bottom: 50px;
}
.access-map iframe{
    width: 100%;
    height: 500px;
}
.access-p{
    border: solid 1px #000;
    letter-spacing: 0.05em;
    color: #000;
    padding: 20px 10px 20px 40px;
}
@media screen and (max-width:1079px){
    .bg-greeting{
        width: 80%;
    }
    .greeting-item-txt-inr{
        padding-left: 0;
    }
}
@media screen and (max-width:1023px){
    .greeting-item-txt{
        width: 50%;
    }
    .shop-table-th{
        padding-left: 20px;
    }
    .access-map{
        height: 400px;
    }
    .access-map iframe{
        height: 400px;
    }
}
@media screen and (max-width:767px){
    .bg-greeting{
        top: 110px;
    }
    .greeting-item.flex-btw{
        display: block;
    }
    .greeting-item-txt{
        width: 100%;
        padding-top: 0;
        margin-bottom: 30px;
    }
    .greeting-item-txt-inr{
        margin-bottom: 30px;
    }
    .greeting-item-txt-inr .ttl-cmn05{
        margin-bottom: 20px;
    }
    .greeting-item-txt-img{
        text-align: center;
    }
    .greeting-item-img{
        max-width: 550px;
        width: 100%;
        margin: 0 auto;
    }
    .shop-table-tr.flex-nml{
        display: block;
    }
    .shop-table-tr{
        padding: 10px 0;
    }
    .shop-table-th{
        width: 100%;
        padding-left: 0;
    }
    .shop-table-td{
        width: 100%;
    }
    .access-map{
        height: 250px;
        margin-bottom: 30px;
    }
    .access-map iframe{
        height: 250px;
    }
    .access-p{
        padding: 15px 10px;
    }
}

/*	お問い合わせ
---------------------------------*/
.tel-box{
    max-width: 800px;
    width: 100%;
    border: solid 1px #102942;
    text-align: center;
    padding: 60px 10px 70px;
    margin: 0 auto;
}
.tel-box-num{
    display: inline;
    font-weight: 400;
    letter-spacing: 0.05em;
    color: #102942;
    padding-left: 35px;
    position: relative;
}
.tel-box-num:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_phone02.png);
    width: 24px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.tel-box-p{
    letter-spacing: 0.05em;
    color: #000;
}
.mail-form-p{
    text-align: center;
    letter-spacing: 0.05em;
    color: #000;
    margin-bottom: 40px;
}
.mail-form-box{
    max-width: 800px;
    width: 100%;
    border: solid 1px #102942;
    text-align: center;
    padding: 40px 10px;
    margin: 0 auto 50px;
}
.mail-form-box .ttl-cmn07{
    letter-spacing: 0.05em;
}

@media screen and (max-width:767px){
    .tel-box{
        padding: 30px 10px;
    }
    .tel-box-num{
        padding-left: 25px;
    }
    .tel-box-num:before{
        width: 18px;
    }
    .mail-form-p{
        text-align: left;
        margin-bottom: 20px;
    }
    .mail-form-box{
        text-align: left;
        padding: 30px 10px;
        margin-bottom: 30px;
    }
}