/*
Theme Name: Cocoon Child
Theme URI: https://wp-cocoon.com/
Template: cocoon-master
Author: わいひら
Author URI: https://nelog.jp/
Description: SEO・高速化・モバイルファースト最適化済みの無料テーマ。
Tags: two-columns,left-sidebar,right-sidebar
Version: 2.8.7.1754599831
Updated: 2025-08-08 05:50:31

*/

/*----------------------------共通----------------------------*/
.center {
    text-align: center;
}

a:hover {
    color: unset;
}

.contact_fix a:hover {
    opacity: 1;
}

body {
    font-family: "Noto Serif JP", serif !important;
    letter-spacing: 0.3em;
}

.home .entry-header,
.entry-footer,
.date-tags,
.admin-pv,
.admin-panel {
    display: none;
}

.article,
.footer {
    margin: 0 !important;
}

.flex {
    display: flex;
}

.flex img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.content,
.main,
.entry-content {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.main {
    background: transparent !important;
}

.main_title {
    display: none;
}

.wrap {
    width: 100%;
}

img {
    width: 100%;
}

.red {
    font-weight: bold;
    color: #c9020f;
}

.video-container,
.instagram-container,
.facebook-container {
    max-width: none !important;
}

.center {
    text-align: center;
}

.article h2,
.article h3,
.article h4,
.article h5,
.article h6 {
    background: transparent;
    border: 0;
}

.single .article-header {
    display: none;
}

.single .content {
    margin: 80px auto !important;
    padding: 10px 20px !important;
    max-width: 1000px;
}

.sp_on {
    display: none;
}

.md_on {
    display: none;
}

@media screen and (max-width: 600px) {
	.md_on {
    display: block;
}
}
@media screen and (max-width: 480px) {
    .sp_on {
        display: block;
    }

    .pc_on,
    .pc_off {
        display: none;
    }
}

.mt-50 {
    margin-top: 50px !important;
}

.mb-50 {
    margin-bottom: 50px !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.go-to-top {
    bottom: 10%;
    right: 15px;
}

.go-to-top-button {
    width: 50px;
    height: 50px;
    border-radius: 50%;
}

/*------------------------------header------------------------*/
.logo-header {
    display: none;
}

.header_lang {
    position: fixed;
    top: 35px;
    right: 35px;
    list-style: none;
    display: flex;
    gap: 20px;
    z-index: 999;
}

.header_lang li a {
    text-decoration: none;
    color: #fff;
}

/*-----------------------------main-----------------------*/
.page_content {
    padding: 50px 0;
    max-width: 1200px;
    margin: 0 auto;
}

.page_content_inner {
	padding: 0 20px;
}
.top_kv {
    position: relative;
}

.top_logo {
    position: absolute;
    top: -50px;
    right: 0;
    width: 27%;
    opacity: 0.48;
}

.top_text {
    position: absolute;
    top: 8%;
    left: 30px;
    writing-mode: vertical-rl;
    letter-spacing: 0.3em;
    font-size: 38px;
}

.content01 {
    margin: 80px auto;
}

.content01 h1 {
    margin: 10px auto;
}

.main_text {
    margin: 0 auto !important;
    padding: 14px;
}

.content01_flex {
    display: flex;
    margin: 50px auto;
    justify-content: center;
    gap: 20px;
}

.flex_left {
    width: 50%;
}

.flex_left h2 {
    font-size: 20px;
    margin: 20px auto 0;
    padding: 5px;
}

.flex_right {
    width: 50%;
}

.sub_title {
    font-size: 30px !important;
    border-bottom: 1px solid #fff !important;
}

.content02 {
    border-bottom: 1px solid #fff;
    padding-bottom: 20px;
}

.content02_flex {
    display: flex;
    align-items: center;
}

.content02_flex .flex_left,
.content02_flex .flex_right {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
	margin: 0 0 30px;
}

.hour_hiru {
    display: inline-block;
    padding: 15px 25px;
    background: #fff;
    color: #000;
    font-size: 20px;
    text-align: center;
	margin: 0 !important;
}

.hour_yoru {
    display: inline-block;
    padding: 15px 25px;
    background: #000;
    color: #fff;
    font-size: 20px;
    border: 1px solid #fff;
    text-align: center;
	margin: 0 !important;
}

.time {
    font-size: 22px;
    margin: 0 !important;
}

.time_after {
    font-size: 14px;
    text-align: end;
	margin: 0 !important;
}

.content03 {
    margin: 50px auto;
}

.mid_title {
    font-size: 24px !important;
    margin: 0 !important;
	padding: 0 0 10px !important;
	    line-height: 1.5 !important;
}

.tel {
    font-size: 60px;
}

.content03_flex {
    display: flex;
    align-items: center;
    gap: 30px;
}

.content03_flex .tel {
    margin: 0 !important;
    display: inline-block;
    line-height: 1;
}

.content03_flex .tel_after {
    display: inline-block;
    font-size: 16px;
    margin: 0 !important;
}

.content05 {
    margin: 50px auto;
}

.content05 h3 {
    font-size: 50px !important;
    font-weight: 400 !important;
    margin: 0 auto !important;
    padding: 0 0 10px 0 !important;
}

.content05 iframe {
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
}

.sushi {
    font-size: 20px;
}

.qr {
    width: 15%;
    min-width: 250px;
    position: fixed;
    bottom: 20px;
    right: 20px;
    text-align: center;
    font-size: 12px;
	    background: rgba(0, 0, 0, 0.8);
    padding: 5px;
}

.qr a {
    text-decoration: none;
    color: #fff;
}

.qr p {
    margin-bottom: 0 !important;
}

/*-----------------------------en-----------------------*/
html[lang="en-US"] body {
    font-family: "shippori-mincho", sans-serif;
    font-weight: 400;
}

.content01 h1.en {
    margin: 10px auto;
    font-style: italic;
    font-size: 28px;
    font-family: "address-sans-pro-condensed", sans-serif !important;
}

.top_text.en {
    writing-mode: unset;
    top: auto;
    bottom: -10px;
    left: 80px;
    letter-spacing: 0.1em;
    font-size: 50px;
    font-family: "address-sans-pro-condensed", sans-serif !important;
}

.main_text.en {
    margin: 0 auto !important;
    padding: 0px;
    font-size: 20px;
    letter-spacing: 0.1em;
    font-family: "address-sans-pro-condensed", sans-serif !important;
}

.main_text.en span {
    font-style: italic;
    font-size: 26px;
}

.sub_title.en {
    font-weight: 400 !important;
}

.content02_flex .flex_left.en,
.content02_flex .flex_right.en {
    justify-content: start;
    width: 100%;
}

.time.en {
    font-size: 22px;
}
/*-----------------------------レスポンシブ-----------------------*/
@media screen and (max-width: 980px) {
	.top_text {
		font-size: 30px;
	}
	.content03_flex {
		    flex-direction: column;
    align-items: baseline;
	}
	.content02_flex {
				    flex-direction: column;
    align-items: baseline;
	}
	.flex_left,.flex_right {
		width: 100%;
	}
	.content02_flex .flex_left, .content02_flex .flex_right {
		    justify-content: start;
	}
}
@media screen and (max-width: 820px) {
	.content01_flex {
		    flex-direction: column;
	}
		.top_text.en {
		font-size: 9vw;
		    bottom: 20px;
    left: 20px;
			        line-height: 1.2;
	}
}
@media screen and (max-width: 650px) {
	    .top_text {
                font-size: 5vw;
			margin: 0 !important;
    }
	.tel {
           font-size: 8vw;
}
	.qr {
		min-width: 190px;
		    font-size: 11px;
	}
	.content05.en h3 {
		        font-size: 6vw !important;
	}
}
@media screen and (max-width: 550px) {
	.content02_flex .flex_left, .content02_flex .flex_right {
		flex-direction: column;
    align-items: baseline;
    gap: 0;
	}
	.flex_left,.flex_right {
		margin: 0 auto;
	}
	.content05 {
    margin: 50px auto 120px;
}
	.time_after {
    text-align: left;
}
	.hour_hiru,.hour_yoru {
		font-size: 14px;
	}
}
@media screen and (max-width: 380px) {
	    .tel {
        font-size: 7vw;
    }
	.mid_title {
    font-size: 20px !important;
}
}