/*
Theme Name: kankoku yataimura child
Template: lightning
Author: Child Theme Configurator
Version: 15.33.1.1773202861
Updated: 2026-03-11 04:21:01

*/

html {
  scroll-behavior: smooth;
}
body {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

p {
	font-size: 18px;
}
.P80 {
    padding: 80px 0;
}
.MT50 { margin-top: 50px; }
.flex {
    display: flex;
}
.between {
    justify-content: space-between;
}
.flex.set2 > * {
    width: calc(100% / 2 - 10px) !important;
}
.flex.set3 > * {
    width: calc(100% / 3 - 10px) !important;
}
.row-reverse {
  flex-direction: row-reverse; 
}
.center { text-align: center; }
.right { text-align: right; }
.left { text-align: left; }

li { list-style: none; }
table {
    border: 1px solid #fff;
}
table td, table th {
	padding: 15px;
	font-size: 17px !important;
}
table th {
    width: 30%;
}
section.access h3 {
    border-bottom: 1px solid #be000f;
    text-align: center;
}
h2.ttl {
    border: none;
    font-size: 42px;
}
h2.ttl span {
    display: block;
    font-size: 20px;
    line-height: 1.5;
}
a:hover { color: #be000f; }

header#site-header {
    background: #be000f;
}
.container {
	max-width: 87.75rem;
	margin-left: auto;
	margin-right: auto;
}
nav#global-nav li a {
    color: #fff;
}
.global-nav-list > li .global-nav-name {
	font-size: 18px;
}
.device-pc .global-nav-list > li > a {
	padding: 6px 1.2em;
}
li#menu-item-48 a .global-nav-name {
	background: #fff;
	color: #be000f !important;
	border-radius: 30px;
	font-size: 20px;
		padding: 14px 1.5em;
}
.global-nav-list > li.menu_tel a .global-nav-name {
	font-size: 20px !important;
	font-weight: bold;
	background: #be000f;
	color: #fff !important;
	border-radius: 30px;
	padding: 14px 1.5em;
	border: 3px solid #fff;
}
.global-nav-list > li.menu_tel a .global-nav-name::before {
	font-family: "Font Awesome 5 Free";
	content: "\f3cd";
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
	font-size: 20px;
	padding-right: 7px;
}

.menu-image-title-after.menu-image-title {
	display: block;
}
.global-nav-list li {
	font-size: 17px;
}
.global-nav-list > li > ul.sub-menu {
	background-color: var(--vk-color-primary);
	box-shadow: 1px 1px 3px rgba(0,0,0,.2);
	left: 50%;
	margin-left: -120px;
	width: 1000px;
	display: flex;
	flex-wrap: wrap;
}
.global-nav-list li img {
	width: 150px;
}
.vk-menu-acc .acc-btn {
	border: 1px solid #fff!important;
	background: var(--vk-menu-acc-icon-open-white-bg-src) center 50% no-repeat;
}

section.front_message h1 {
    margin: auto;
    padding: 0;
    text-align: center;
    line-height: 2;
    font-size: 2.5rem;
}
.menu_box {
    border: 1px solid #fff;
    margin: 0 0 50px;
    padding: 50px;
	color: #fff;
}
a.wht_btn {
    background: #fff;
    color: #333;
    border-radius: 50px;
    padding: 8px 20px;
    font-weight: bold;
}

.front_post_list .container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.post-item {
    width: calc(33.333% - 20px); /* 3列配置の場合 */
    border: 1px solid #ddd;
    padding: 10px;
}
.post-thumbnail img {
    width: 100%;
    height: auto;
}
.post-title {
    font-size: 16px;
    margin: 10px 0;
}
.access_txt {
    background: url(images/front_shop02.jpg)no-repeat;
    background-size: cover;
    padding: 80px 50px;
	color: #fff;
	width: 50%;
}
a.button {
    background: #be000f;
    text-align: center;
    display: block;
    width: 450px;
    margin: 50px auto 0;
    padding: 20px;
    font-size: 21px;
    color: #fff;
    border-radius: 50px;
    font-weight: bold;
    letter-spacing: 2px;
	border: 2px solid #fff;
}
a.button:hover {
    color: #be000f;
    background: #fff;
    border: 2px solid #be000f;
	transition : 1s;
}


.tab-container {
    background: #333;
}
.tab-container_in {
    width: 87.75rem;
    display: flex;
    margin: 0 auto;
}
.tab-btn {
    padding: 30px 30px;
    cursor: pointer;
    background: #333;
    color: white;
    border: none;
    outline: none;
    width: 33.333%;
    font-size: 20px;
    /* border: 1px solid #fff; */
}
.tab-content {
  padding: 20px;
}

.tab-content.active {
  display: block;
}

.tab-btn.active {
  background: #800000;
}
section.campaign {
    background: #f7f3ef;
}
section.reserve {
    background: url(images/bg_yoyaku.jpg);
	color: #fff;
}
footer { background: #be000f; }

/* tab */
section.front_menu_set3 {
	background: #be000f;
	padding: 50px 0;
}
.tab-list {
  display: flex;
	margin: 0;
}
.tab-item.active {
	background-color: #6a050d;
	color: #fff;
	font-weight: bold;
}
:is(ul, ol):where(:not(.wp-block-post-template)) {
	padding-left: 0;
}
.tab-item {
	background-color: #333;
	border: solid 1px #fff;
	padding: 20px 0;
	width: 33.333%;
	text-align: center;
	border-radius: 0;
	margin: 0;
	list-style: none;
	color: #fff;
	font-size: 20px;
}
.tab-content {
  background-color: #fff;
}

.tab-panel {
  display: none;
}

.tab-panel.active {
  display: block;
  padding: 3%;
}
.tab-panel.active h2 {
  font-size: 20px;
  font-weight: bold;
}

.reserve_box {
	background: #fff;
	color: #333;
	padding: 20px;
}
.reserve_box p {
	font-size: 15px;
}

.reserve_box a.tel {
	font-size: 48px;
	text-align: center;
	color: #7a0000;
	display: block;
	font-weight: bold;
}
.reserve_box a.tel::before {
  font-family: "Font Awesome 5 Free";
  content: "\f3cd";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
	font-size: 35px;
	padding-right: 15px;
}

.reserve_box h3 {
	text-align: center;
}
.reserve_box h4 {
	font-size: 16px;
	margin: 15px auto;
	text-align: center;
}
a.btn {
	background: #7a0001;
	color: #fff;
	text-align: center;
	width: 100%;
	margin: 20px 0;
	font-size: 20px;
}
a.btn:hover {
	color: #ccc;
}

.footer-nav ul {
	display: flex;
	justify-content: center;
	border: none !important;
}
.footer-nav ul a {
	color: #fff !important;
	font-size: 15px;
}
.footer-nav-list li {
	border-right: 1px solid #fff;
}
.site-footer-copyright p {
	color: #fff;
}
.footer_sns a {
	color: #fff;
	font-size: 15px;
	padding-right: 15px;
}
.card-img-overlay {
	display: none;
}
a.back-to-top {
    color: rgba(0,0,0,0.5);
    position: fixed;
    right: 0;
    bottom: 0;
    font-size: 50px;
    z-index: 1000;
}


/* 600px以下 */
@media screen and (max-width: 599px) {
section.front_message h1 { font-size: 1.2rem; }
.P80 { padding: 30px 0; }
.tab-item { padding: 13px 5px; font-size: 14px; }
a.button { margin: 30px auto 0; padding: 15px; font-size: 15px; border-radius: 30px; width: 100%; }
.tab-content .flex.set2 { display: block; }
.tab-content .flex.set2 > * { width: 100% !important; }
h2.ttl { font-size: 30px; }
h2.ttl span { font-size: 15px; line-height: 2.5; }
.flex { display: block; }
.flex.set3 > * { width: 100% !important; }
.access_txt { padding: 30px 20px; width: 100%; }
.access iframe { display: block; width: 100%; height: 350px; }
.main-section { margin-bottom: 0; }
.reserve_box a.tel { font-size: 33px; }
.footer-nav ul { display: block; } .footer-nav-list li { border-right: none; }
a.back-to-top { font-size: 30px; }
.footer_sns.sp a { font-size: 20px; }
div#vk-mobile-nav { background: #be000f; }
div#vk-mobile-nav li a { color: #fff; }
.spmenu_yoyaku { display: flex; justify-content: center; }
.spmenu_yoyaku img { padding: 0 10px; width: 100px; }
}

/* 下層ページ */
.menu_list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -10px;
}
.menu_list li {
	list-style: none;
	width: 25%;
}
.menu_list li a {
	text-decoration: none;
	width: 100%;
	height: 100%;
	display: block;
}
.menu_list li span {
	display: block;
	text-align: center;
	background: #333;
	padding: 10px 0;
	color: #fff;
	margin: -5px 0;
	 transition : all 0.5s ease 0s;
}
.menu_list li:hover span {
	background: #be000f;
}
.menu_list li {
	list-style: none;
	width: 20%;
	padding: 0 10px;
}

@media screen and (max-width: 599px) {
.menu_list li { width: 50%; padding: 0 5px; }
}