/*
 * CSS整理版
 * 構成：共通設定 → PC用CSS → スマートフォン用CSS
 * 各ブロック内：配置 → サイズ → 余白 → 文字 → 背景 → 枠線 → その他
 * セレクター順・メディアクエリ条件を維持。body直後の余分な文字と罫線の単位漏れを修正。
 */

/* reset */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
    vertical-align: baseline;
    margin: 0;
    padding: 0;
    outline: 0;
    border: 0;
}

#pcan {
    margin-bottom: 2px;
    color: #f6ac00;
    border-bottom: 1px #f6ac00 solid;
}

body {
    color: #000000;
    line-height: 2;
    font-size: 17px;
    -webkit-text-size-adjust: 100%;
    font-family: 'Avenir','Helvetica Neue','Helvetica','Arial', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro','メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', 'ＭＳ Ｐゴシック', sans-serif;
    background-color: #f8f6f3;
}

article, aside, dialog, figure, footer, header, hgroup, nav, section {
    display: block;
}

iframe {
    width: 100%;
    height: 600px;
    border-radius: 14px;
}

ul, ol {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}

a {
    vertical-align: baseline;
    margin: 0;
    padding: 0;
    color: #000000;
    font-size: 100%;
    text-decoration: none;
    background: transparent;
    border: 0;
}

img {
    max-width: 100%;
    height: auto;
}

ins {
    color: #000000;
    text-decoration: none;
    background: #ff9;
}

mark {
    color: #000000;
    font-style: italic;
    font-weight: bold;
    background: #ff9;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom: 1px dotted #000;
    cursor: help;
}

input, select {
    vertical-align: middle;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

ul {
    list-style-type: none;
}

li img {
    vertical-align: bottom;
    max-width: 100%;
    width: auto;
}

.tagcloud a {
    font-size: 95%!important;
}

#maincontents .wp-pagenavi a {
    text-decoration: none;
}

/* clearfix */
.clearfix:after {
    display: block;
    visibility: hidden;
    clear: both;
    height: 0.1px;
    content: " ";
    font-size: 0.1em;
    line-height: 0;
}

/* 中央寄せ */
.center {
    display: block;
    width: 100%;
    margin: auto;
    text-align: center;
}

/* 左寄せ */
.left {
    float: left;
}

/* 右寄せ */
.right {
    float: right;
}

/* スライダー画像 */
/* コンテンツテーブル */
.mta table, .mta2 table {
    width: 100%;
    margin-top: 0px;
    padding-top: 2px;
    padding-bottom: 2px;
    border-style: solid;
    border-color: #f9f8ec;
    border-width: 1px 0px 0px 0px;
}

.mta2 table {
    margin-top: 20px;
    margin-bottom: 20px;
}

.mta th, .mta2 th {
    vertical-align: middle;
    width: 30%;
    padding-top: 2px;
    padding-right: 8px;
    font-size: 117%;
    font-weight: normal;
    border-bottom: 1px solid #f9f8ec;
}

.mta td, .mta2 td {
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 8px;
    padding-bottom: 8px;
    text-align: left;
    border-style: solid;
    border-color: #f9f8ec;
    border-width: 0px 0px 1px 1px;
}

.mta .form {
    margin-bottom: 20px;
    margin-top: 20px;
}

header {
    background-color: #f8f6f3;
}

/* ヘッダー */
#today a {
    display: block;
    font-weight: bolder;
    color: #000000 !important;
    background-color: #FCCA00;
}

.commentlist {
    padding-top: 30px;
    padding-right: 30px;
    padding-bottom: 30px;
    padding-left: 30px;
    margin-top: 30px;
    color: #fff;
    border: 1px solid #f9f8ec;
}

/* コメント入力欄 */
#respond {
    padding-top: 30px;
    padding-right: 30px;
    padding-bottom: 30px;
    padding-left: 30px;
    margin-top: 30px;
    color: #000000;
    background-color: #F1EEEA;
}

#comment {
    width: 100%;
    margin-bottom: 10px;
}

.mw_wp_form {
    padding-top: 3%;
    padding-right: 3%;
    padding-bottom: 10%;
    padding-left: 3%;
    margin-top: 20px;
    text-align: center;
    background-color: #ebdcd0;
    border-radius: 14px;
}

.formwrap td {
    background-color: transparent!important;
}
.mw_wp_form p {
    color: #000000;
}

.mw_wp_form textarea {
    width: 100%;
    padding: 8px;
    border: 1px solid #ffe100;
    border-radius: 6px;
}

.mw_wp_form input {
    vertical-align: middle;
    margin-right: 5px;
    padding: 8px;
    text-align: left;
    color: #000000;
    background: #fff;
    border: 1px solid #ffe100;
    border-radius: 0;
    border-radius: 6px;
}

.comments-link {
    clear: both;
    display: inline-block;
    width: auto;
    margin-top: 20px;
    padding: 6px;
    color: #000000;
    text-align: right;
    border: 1px solid #000000;
}

/* 編集ボタン */
.edit {
    clear: both;
    margin-top: 20px;
}

.post-edit-link {
    display: inline-block;
    box-sizing: content-box !important;
    padding: 3px 10px;
    font-size: 12px;
    color: #333;
    font-weight: bolder;
    background: #eee;
    border: 1px solid #ccc;
    border-radius: 6px;
}

/* パンくず */
#bread ul li {
    color: #000000;
    font-size: 12px;
}

#inwrap {
    padding-top: 5%;
    padding-right: 5%;
    padding-bottom: 5%;
    padding-left: 5%;
    border: 1px solid #ccc;
}

.mc3 {
    overflow: hidden;
    clear: both;
    padding: 3%;
    margin-bottom: 50px;
}

#maincontents p {
    margin-bottom: 20px;
}

#maincontents table tr td p {
    margin-bottom: 0;
}

#searchform {
    padding-top: 10px;
    padding-right: 5px;
    padding-bottom: 10px;
    padding-left: 5px;
    margin-bottom: 20px;
    text-align: center;
    border: 1px solid #f9f8ec;
}

#comments {
    padding-top: 10px;
    padding-bottom: 10px;
    margin-top: 10px;
    margin-bottom: 20px;
}

#menuwrap section .accordion_tree table tr th a img {
    margin-top: 12px;
    margin-right: 10px;
}

iframe, embed, object {
    max-width: 100%;
}

.module_title {
    color: #fff;
    text-align: center;
}

#wp-calendar tbody tr td a {
    display: block;
    color: #000000;
    background-color: #ffed2e;
}

#prev a, #next a {
    display: block;
    border: 1px dashed #000000;
}

.heightLine img {
    margin-bottom: 10px;
}

/* グローバルナビゲーション */
#main_nav ul {
    overflow: hidden;
    margin-bottom: 5px;
    padding-left: 5px;
}

#main_nav ul li {
    float: left;
    margin-right: 5px;
}

#main_nav ul li:last-child {
    margin-right: 0;
}

/* サブナビゲーション（スマホ用） */
#sub_nav li a {
    --line: #000;
    --bg: #fff;

    position: relative;
    float: left;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46%;
    margin-left: 2%;
    margin-right: 2%;
    margin-bottom: 3%;
    min-height: 60px;
    padding: 0 12px;
    text-decoration: none;
    color: #000;
    font-weight: 900;
    border: none;
    border-radius: 0;
    overflow: hidden;
    isolation: isolate;
}

/* 外側の黒枠 */
#sub_nav li a::before,
#sub_nav li a::after {
    content: "";
    position: absolute;
    clip-path: polygon(7% 0, 93% 0, 100% 50%, 93% 100%, 7% 100%, 0 50%);
}

#sub_nav li a::before {
    inset: 0;
    background: var(--line);
    z-index: -2;
}

#sub_nav li a::after {
    inset: 8px;
    background: var(--bg);
    z-index: -1;
}

/* 文字をしっかり中央に */
#sub_nav li a span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 1.4;
    font-weight: 900;
}

#sub_nav li a:nth-child(2n) {
    margin-right: 0px;
}

#sub_nav {
    overflow: hidden;
    clear: both;
    padding: 10% 2% 1%;
}

/* アコーディオン */
.accordion_tree, .accordion_tree2 {
    padding: 0 10px 6%;
    background-color: #fbfbfb;
}

.accordion_tree table, .accordion_tree2 table {
    width: 100%;
    margin-top: 0px;
    margin-bottom: 8px;
    padding-top: 2px;
    padding-bottom: 2px;
}

.accordion_tree th, .accordion_tree2 th {
    width: 70%;
    padding-top: 2px;
    padding-left: 10px;
    font-weight: normal;
    text-align: left;
    background-color: #fff;
    border-left-width: medium;
}

.accordion_tree td, .accordion_tree2 td {
    padding: 8px 10px;
    text-align: right;
    background-color: #fff;
    border-left: 1px dashed #D2C5BB;
}

.trigger {
    padding-top: 20px;
    padding-right: 40px;
    padding-bottom: 20px;
    font-size: 16px;
    font-weight: bolder;
    line-height: 1.8;
    background: url(../img/down.png);
    background-repeat: no-repeat;
    background-position: 95% center;
    background-size: 17px, 17px;
    border-top: 1px solid #ffe100;
}

.trigger2 {
    padding: 15px;
    color: #000000;
    font-size: 130%;
    font-weight: bolder;
    line-height: 1.8;
    border-top: 1px solid #ffe100;
}

#menuwrap .active {
    background: url(../img/up.png);
    background-repeat: no-repeat;
    background-position: 95% center;
    background-size: 17px 17px;
}

/* フッター */
footer {
    text-align: center;
    background-image: url(../img/back.jpg);
    background-size: 100%;
    background-position: top;
}

/* フッター店舗情報 */
#shopinfo {
    clear: both;
    color: #000000;
}

#shopinfo table {
    width: 100%;
    margin-top: 0px;
    padding: 2px 0;
    border-top: 1px solid #ffe100;
}

#shopinfo th {
    vertical-align: middle;
    width: 20%;
    padding: 17px 10px;
    font-weight: bolder;
    color: #000;
    background-color: #f6ac00;
    border-bottom: 1px solid #ffe100;
}

#shopinfo td {
    padding: 17px 10px;
    text-align: left;
    background-color: #FFFFFF;
    border-bottom: 1px solid #ffe100;
}

.btn2 {
    display: block;
    position: relative;
    min-height: 30px;
    padding-right: 35px;
    color: #000000;
    line-height: 30px;
    text-decoration: none;
    background: url(../img/tel2.png) no-repeat;
    background-size: 20px 20px;
    background-position: right 50%;
    border: none;
}

.btn2-2 {
    display: none;
}

.btn3 {
    display: block;
    position: relative;
    padding-right: 35px;
    text-decoration: none;
    background: url(../img/map.png) no-repeat;
    background-size: 20px 20px;
    background-position: right 50%;
    border: none;
}

/* トップページお知らせ欄 */
#tnav a {
    position: relative;
    display: block;
    margin-bottom: 3px;
    padding: 10px;
    line-height: 1.3;
    text-decoration: none;
    background-color: #FFFFFF;
    border-color: #f6ac00;
    border-style: solid;
}

#tnav dt span {
    text-align: left;
    color: #f6ac00;
}

#tnav dd {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: bolder;
    font-size: 110%;
}

#tnav a:after {
    position: absolute;
    top: 44%;
    left: 95%;
    content: "";
    border: 4px solid transparent;
    border-left-color: #f6ac00;
}

#tnav dt {
    font-size: 72%;
}

.tel1 {
    color: #000000;
    font-size: 12px;
    line-height: 1.5;
}

.tel2 {
    font-size: 18px;
    line-height: 1.5;
    color: #000000;
}

.copy {
    padding-top: 40px;
    padding-bottom: 20px;
    font-size: 84%;
    letter-spacing: 0.1em;
}

/* パンくず */
#bread {
    overflow: hidden;
    margin-bottom: 3%;
    padding-top: 10px;
    padding-bottom: 10px;
    color: #FFFFFF;
    font-size: 14px;
}

#bread ul li a {
    display: block;
    float: left;
    position: relative;
    padding-right: 20px;
    margin-right: 18px;
}

/* パンくず 矢印 */
#bread ul li a:after {
    position: absolute;
    bottom: 9px;
    left: 95%;
    content: "";
    border: 4px solid transparent;
    border-left-color: #f6ac00;
}

/* ページタイトル */
#maintitle {
    padding: 3% 0 10%;
    font-weight: bolder;
    font-size: 240%;
    text-align: center;
    color: #000;
    background-image: url(../img/headback.png);
    background-position: center bottom;
    background-size: cover;
}

.maintiba2 {
    background-image: url(../img/headback2.jpg)!important;
}

.maintiba3 {
    background-image: url(../img/headback3.jpg)!important;
}

.maintiba4 {
    background-image: url(../img/headback4.jpg)!important;
}

.maintiba5 {
    background-image: url(../img/headback5.jpg)!important;
}

.maintiba6 {
    background-image: url(../img/headback6.jpg)!important;
}

.mc1 img, .mc2 img, .mc3 img {
    float: right;
    height: auto;
    width: 50%;
    margin-bottom: 8%;
    margin-left: 40px;
    border-radius: 14px;
}

.mc1, .mc2 {
    overflow: hidden;
    padding-top: 0px;
    padding-right: 15px;
    padding-left: 15px;
    padding-bottom: 15px;
    margin-bottom: 20px;
}

#maincontents h2 {
    margin: 20px 0 34px;
    padding: 6px 0;
    font-size: clamp(1.8rem, 3vw, 2.6rem);
    line-height: 1.4;
    color: #000;
    border-bottom: none;
}

#maincontents h2 span {
    padding: 0 0.12em;
    background: linear-gradient(
        transparent 52%,
        #ffe100 52%,
        #ffe100 88%,
        transparent 88%
    );
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

/* トップページ */
#top {
    max-width: 2400px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 70px;
}

/* トップページ リード 見出し */
#main .text #lead {
    font-size: 184%;
    font-weight: bolder;
}

/* トップページ リード 本文 */
#main .text #lead2 {
    font-size: 109%;
    line-height: 2;
}

#pointwrap {
    clear: both;
    position: relative;
    background-image:
        url(../img/back3.png),
        url(../img/back.jpg);
    background-repeat:
        no-repeat,
        repeat;
    background-position:
        bottom center,
        bottom center;
    background-size:
        100% auto,
        cover;
}

#point {
    clear: both;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding: 3% 4% 2%;
    margin-left: auto;
    margin-right: auto;
}

/* メインコンテンツ（メニューページ） */
#menutop {
    padding-top: 50px;
    padding-bottom: 40px;
}

#menuwrap {
    margin-bottom: 40px;
    border-bottom: 1px solid #ffe100;
}

.date span {
    padding: 0px 10px 0px 10px;
    color: #FFFFFF;
    background-color: #ffe100;
}

/* コンテンツテーブル */
.mb, .mta {
    margin-bottom: 50px;
}

.mta2 {
    margin-bottom: 4%;
    padding: 3% 5%;
    border: 5px solid #F0F8FB;
}

#container table {
    width: 100%;
    margin-top: 20px;
    padding: 2px 0;
    margin-bottom: 20px;
}

#maincontents table tr td ul {
    overflow: hidden;
    padding-top: 8px;
}

#maincontents table tr td ul li {
    display: block;
    float: left;
    width: 23%;
    margin-right: 2%;
    margin-bottom: 8px;
    text-align: center;
    color: rgba(255,255,255,1.00);
    background-color: rgba(255,179,61,1.00);
}

.youkou th,.form th {
    vertical-align: middle;
    width: 30%;
    padding: 10px;
    color: #000;
    text-align: center;
    font-size: 22px;
    font-weight: bolder;
    background-color: #ffe100;
}

#container td {
    padding-top: 15px;
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 15px;
    text-align: left;
    background: #fff;
}

.inner {
    overflow: hidden;
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
    padding-left: 4%;
    padding-right: 4%;
}

.text-right {
    text-align: right;
}

hr {
    height: 0;
    border: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.heightLine {
    margin-bottom: 40px;
}

.mc {
    overflow: hidden;
    padding-top: 0px;
    margin-bottom: 20px;
}

#maincontents {
    overflow: hidden;
    padding-bottom: 5%;
    margin-bottom: 5%;
    line-height: 2;
}

#maincontents a {
    text-decoration: underline;
}

.textbox {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 40px;
}

/*グーグルマップ*/
.gmap {
    padding: 3%;
}

#ecal {
    float: left;
    width: 26%;
    text-align: left;
}

.widgettitle {
    color: #333;
}

/** ページナビ
===================================*/

.wp-pagenavi a, .wp-pagenavi span {
    padding: 8px 10px;
    margin: 2px;
    text-decoration: none;
    border: 1px solid #000000;
}

.wp-pagenavi a:hover, .wp-pagenavi span.current {
    color: #fff;
    background-color: #000000;
}

.wp-pagenavi span.current {
    font-weight: bold;
}

.wp-pagenavi {
    clear: both;
}

/** テンプレート：イベント情報 共通
===================================*/
/* イベント情報ラッパー */
.event_post {
    width: 100%;
}

/* イベント名 */
.event_title {
    margin: 0 0 20px;
    padding: 10px;
    color: #a9d4f1;
    font-weight: bolder;
    text-align: center;
    line-height: 1.8;
    background: #fdf0f3;
}

/* イベント詳細情報テーブル */
.event_table {
    padding: 10px;
    background: #000000;
}

.event_table table {
    width: 100%;
    color: #513b13;
    border-top: 1px solid #000000;
}

.event_table th {
    vertical-align: middle;
    width: 30%;
    font-weight: bolder;
    text-align: center;
    background: #fffcf2;
    border-bottom: 1px solid #000000;
}

.event_table td {
    vertical-align: middle;
    font-weight: bolder;
    text-align: left;
    line-height: 1.8;
    background: #fff;
    border-bottom: 1px solid #000000;
}

/* イベントフリーテキストエリア1 */
.event_text_01 {
    margin-bottom: 20px;
}

.event_text_01 p {
    margin-bottom: 1em;
}

/* イベントフリーテキストエリア2 */
.event_text_02 {
    margin-bottom: 30px;
    font-size: 86%;
    color: #666;
}

/* イベントエントリーボタン */
.event_btn_entry {
    display: block;
    width: 100%;
    color: #fff;
    line-height: 1;
    text-align: center;
    background: #a9d4f1;
    border-bottom: 4px solid #7d0000;
}

.event_btn_entry:hover {
    background: #7d0000;
}

.col {
    display: inline-block;
    width: 46%;
}

/* イベント一覧 */
.event_list {
    width: 100%;
}

.event_list dd {
    padding: 0 0 15px;
    margin: 0 0 15px;
    font-size: 150%;
    border-bottom: 1px dotted #000000;
}

.event_list dd a {
    color: #a9d4f1;
    text-decoration: underline;
}

.event_list dd:last-child {
    border-bottom: 0;
}

/* お問い合わせフォーム */
.form_btn {
    overflow: hidden;
    _zoom: 1;
}

.form_btn li {
    margin-bottom: 20px;
    text-align: center;
}

.form_btn li:last-child {
    margin-bottom: 0;
}

.mw_wp_form_input .btn input {
    overflow: hidden;
    color: #fff;
    font-size: 120%;
    font-weight: bolder;
    background: #a9d4f1;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.mw_wp_form_confirm .btn input {
    overflow: hidden;
    /*送信ボタン用*/
    color: #fff;
    font-size: 120%;
    font-weight: bolder;
    background: #a9d4f1;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

#submitback input {
    overflow: hidden;
    /*戻るボタン用*/
    color: #a9d4f1;
    font-size: 120%;
    font-weight: bolder;
    background: #fad1da;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.formin input {
    width: 60%;
    padding: 14px;
    margin: auto;
    text-align: center;
    color: #000;
    border-radius: 100px;
    border: #ffe100 solid 2px;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #ffe100;
}

#maincontents .formwrap p {
    margin: 0px;
}

div.wpcf7 .wpcf7-spinner {
    display: none !important;
}

/** テンプレート：プライバシーポリシー・利用規約
===================================*/
#policy p, #kiyaku p {
    margin-bottom: 1em;
}

#pcan h5 {
    color: #FFFFFF;
}

.copy h5 {
    color: #FFFFFF;
}

#menuwrap section .accordion_tree table {
    margin-top: 0;
}

#maincontents .bigphoto {
    width: 100%;
    max-width: 100%;
    text-align: center;
}

#maincontents .bigphoto img {
    float: none;
    clear: both;
    width: 100%;
    max-width: 100%;
    margin: 0 0 20px 0;
}

#maincontents #menuwrap .accordion_tree table tr th {
    width: 70%;
    padding: 10px;
    line-height: 1.4;
    font-weight: bolder;
    text-align: left;
    background-color: #FFFFFF;
}

.setsumei {
    margin-top: 10px;
    font-weight: normal;
    font-size: 13px;
    color: #ffe100;
}

#maincontents #menuwrap .accordion_tree table tr td {
    padding: 10px;
    text-align: right;
}

.st2 {
    font-size: 12px;
    font-weight: normal;
}

.st3 {
    padding: 20px;
    margin-bottom: 40px;
    margin-top: 20px;
    background-color: #FFFFFF;
}

/** ギャラリー
===================================*/
#gallerywrap {
    overflow: hidden;
    clear: both;
    padding: 4%;
    background-color: #f4eee7;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ede4d7+0,f9f3ed+100 */
    background: rgb(237,228,215);
    /* Old browsers */
    background: -moz-linear-gradient(top, rgba(237,228,215,1) 0%, rgba(249,243,237,1) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(237,228,215,1) 0%, rgba(249,243,237,1) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(237,228,215,1) 0%, rgba(249,243,237,1) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ede4d7', endColorstr='#f9f3ed', GradientType=0 );
    /* IE6-9 */
}

.gallwrap {
    clear: both;
    overflow: hidden;
    padding-top: 6%;
}

.gallery p {
    margin-bottom: 10px !important;
    color: #261305;
}

.box {
    clear: both;
    padding-left: 8%;
    padding-right: 8%;
    margin-bottom: 40px;
    padding-top: 30px;
}

/** フッター
===================================*/
.foottel {
    padding: 0px !important;
}

.top-contact ul li {
    float: left;
    width: 50%;
    text-align: center;
}

.form span {
    margin-right: 10px;
}

#foottel {
    max-width: 1100px;
    width: 100%;
    padding: 3%;
    margin-left: auto;
    margin-right: auto;
    background-color: rgba(255,255,255,1.00);
}

#foottel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    color: #000000;
    line-height: 1.4;
}

#foottel a {
    display: block;
    padding: 15px;
    margin-top: 10px;
    color: rgba(0,117,193,1.00);
    font-weight: bolder;
    font-size: 18px;
    background-color: rgba(232,232,232,1.00);
}

#foottel a:nth-of-type(1) {
    width: 40%;
    padding: 0;
    background-color: #FFFFFF;
}

#foottel a:nth-of-type(2) {
    width: 28%;
    margin-left: auto;
}

#foottel a:nth-of-type(3) {
    width: 28%;
    margin-left: auto;
}

.telbox {
    margin: 0 auto 30px;
}

.telwide {
    max-width: 300px;
    height: auto;
}

/** ブログ
===================================*/
.blog,.blog2 {
    overflow: hidden;
    padding-top: 36px;
    padding-right: 36px;
    padding-bottom: 50px;
    padding-left: 36px;
    margin-right: 2%;
    margin-bottom: 6%;
    background-color: #fff;
}

#maincontents .blog2  h2 {
    font-size: clamp(1.2rem, 2vw, 1.6rem);
}

.blog img,.blog2 img {
    margin-top: 20px;
    margin-bottom: 20px;
}

.blog2 img {
    width: 100%;
}

.blog2 {
    width: 48%;
}

#blogright table {
    width: 100%;
    padding: 0;
    margin-bottom: 30px;
    text-align: center;
    border: 0;
}

#blogright th {
    width: auto;
    padding: 1%;
    text-align: center;
    border: 0;
}

#blogright td {
    width: auto;
    padding: 1%!important;
    margin-top: 20px;
    text-align: center;
    border: 0;
}

.jan ul {
    overflow: hidden;
}

.jan ul li a {
    float: left;
    display: block;
    width: 18%;
    padding: 7px;
    margin-left: 1%;
    margin-right: 1%;
    margin-bottom: 1%;
    text-align: center;
    color: #000000;
    background-color: #FFFFFF;
    border: 1px solid #000000;
}

.jan ul li a:hover, .jan ul .current-cat a {
    color: #ffffff;
    background-color: #000000;
}

.jan {
    padding: 1% 1% 0 1%;
}

#blogleft .tagu a {
    margin-left: 10px;
}

.tagu {
    display: block;
    clear: both;
}

#blogleft .top-contact ul li a {
    color: #FFFFFF;
}

#blog-sidebar {
    margin-top: 30px;
}

#blog-sidebar .children li {
    position: relative;
    padding-left: 12px;
}

#blog-sidebar .children li:before {
    position: absolute;
    left: 0;
    top: 0;
    content: "-";
}

#ez-toc-container {
    display: table;
    position: relative;
    width: 90% !important;
    margin: 0 auto 8% !important;
    padding: 4% 8% !important;
    background: #f7f7f7 !important;
    border-top: 3px double #ded7cb !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 3px double #ded7cb !important;
    border-radius: 0;
    -webkit-box-shadow: 0 0px 0px transparent !important;
    box-shadow: 0 0px 0px transparent !important;
}

.blog h3,.blog2 h3 {
    position: relative;
    padding: 4px 0;
    margin: 20px 0 10px;
    font-size: 1.2rem;
    font-weight: bolder;
    border-bottom: 1px solid #f7f7f7;
}

.blog h3:before,.blog2 h3:before {
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 20%;
    height: 1px;
    content: '';
    background: #ffe100;
}

.bmore {
    text-align: center;
}

.bmore a {
    display: inline-block;
    padding: 6px 50px;
    margin: 30px auto 0;
    color: #ffe100;
    text-decoration: none!important;
    background-color: #fff;
    border-radius: 50px;
    border: 1px #ffe100 solid;
}

.bltag {
    display: block;
    margin-top: 40px;
}

#blog-sidebar ul {
    border-top: 1px dashed #ffe100;
}

.cat-item a {
    display: block;
    position: relative;
    padding: 10px 0;
    text-decoration: none!important;
    border-bottom: 1px dashed #ffe100;
}

.cat-item a:after {
    position: absolute;
    bottom: 20px;
    left: 95%;
    content: "";
    border: 4px solid transparent;
    border-left-color: #ffe100;
}

#wp-calendar caption {
    margin-bottom: 10px;
    font-size: 150%;
}

.widget_recent_entries, .recent_comments {
    margin-bottom: 4%;
    margin-bottom: 40px;
    padding: 1%;
    background-color: #ffe100;
    border-top: 0;
}

#maincontents .widget_recent_entries .widgettitle {
    height: 25px;
    padding: 0;
    margin: 0;
    font-size: 88%;
    line-height: 25px;
    text-align: center;
    color: hsla(0,0%,100%,1.00);
    background-color: #ffe100;
    border: none;
}

.widget_recent_entries ul {
    background-color: #fff;
}

.widget_recent_entries ul li a, .recent_comments ul li a {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    padding: 15px;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-decoration: none!important;
    color: #251204;
    background-color: #fff;
    border-top: 1px solid #ffe100;
}

.widget_recent_entries ul li a:after, .recent_comments ul li a:after {
    position: absolute;
    bottom: 25px;
    left: 95%;
    content: "";
    border: 4px solid transparent;
    border-left-color: #000000;
}

.text_right {
    margin-top: -36px;
    padding-bottom: 10px;
    text-align: right;
    font-size: 14px;
}

#nav .inner li a span {
    display: block;
    font: normal 12px Tahoma, Geneva, sans-serif;
    color: #000000;
    letter-spacing: 2px;
}

.nav-collapse .active a, .nav-collapse a:hover {
    color: #000;
    background-color: #f6ac00;
}

#shopinfo tr:last-child th,#shopinfo tr:last-child td {
    border-bottom: none;
}

input[type="submit"] {
    font-size: 16px;
    appearance: none;
    -webkit-appearance: none;
}

.inputin input {
    padding: 14px;
    color: #fff;
    background-color: #48574e;
    border-radius: 100px;
    border: none;
}

.youkou {
    overflow: hidden;
    width: 100%;
    padding: 8px 40px;
    margin-bottom: 20px;
    background-color: #ebdcd0;
    border-radius: 14px;
}

#container table {
    border-collapse: separate;
    border-spacing: 0 10px;
}

/* SNS */
.lineb {
    width: 140px;
    margin: auto!important;
}

.instab {
    width: 40px;
    margin: 0 auto -16px 10px!important;
}

.libo a {
    display: block;
}

.libo .lineb {
    float: none;
    width: 150px;
}

.libo .instab {
    float: none;
    width: 60px;
}

.sns ul {
    display: flex;
    justify-content: space-between;
    align-content: center;
    align-items: center;
    padding: 20px 24% 0;
}

.sns ul li {
    width: 18%;
}

.shiryou a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    max-width: 900px;
    margin: 0 auto;
    padding: 15px 25px;
    color: #000;
    font-size: 110%;
    font-weight: 600;
    text-decoration: none!important;
    background-color: #fff;
    background-image: url(../img/pdf.png);
    background-repeat: no-repeat;
    background-position: 96%;
    background-size: 30px;
    border: #ffe100 solid 2px;
    border-radius: 100px;
    transition: 0.3s ease-in-out;
}

#formtab {
    margin: 10% auto 40px;
    padding: 0 20px;
    text-align: center;
    border-bottom: 2px solid #ffe100;
}

#formtab ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    max-width: 900px;
    margin: auto;
    margin-bottom: -2px;
}

#formtab ul li {
    width: 48%;
}

#formtab .formtab-on a {
    color: #ffe100;
    background-color: #faf9f5;
    border-bottom: 2px #faf9f5 solid;
}

#formtab ul li a {
    display: block;
    padding: 20px 10px;
    font-size: 18px;
    font-weight: bolder;
    color: #fff;
    line-height: 1.4;
    background-color: #ffe100;
    border: 2px #ffe100 solid;
    border-radius: 10px 10px 0 0;
}

.smote {
    font-size: 12px;
    line-height: 1.4;
}

.beaf {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 4%;
}

.beaf li {
    position: relative;
    width: 48%;
    margin: 0;
}

.beaf li img {
    position: relative;
    width: 100%;
    margin: 0;
}

.beaf1:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    z-index: 2;
    padding: 0.2em 20px;
    content: 'BEFORE';
    color: #000;
    background: #f6ac00;
    border-radius: 10px;
}

.beaf1:after {
    position: absolute;
    top: 0;
    right: -5%;
    bottom: 0;
    width: 30px;
    height: 30px;
    margin: auto;
    content: '';
    border: 0;
    border-top: solid 3px #ffe100;
    border-right: solid 3px #ffe100;
    transform: rotate(45deg);
}

.beaf2:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    z-index: 2;
    padding: 0.2em 20px;
    content: 'AFTER';
    color: #000;
    background: #ffe100;
    border-radius: 10px;
}

.galwrap {
    display: flex;
    justify-content: flex-start;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.galw {
    width: 30%;
    padding: 5% 3% 3% 3%;
    margin-right: 5%;
    margin-bottom: 6%;
    text-align: center;
    background-color: #fff;
    border-radius: 20px;
}

.galw:nth-child(3n) {
    margin-right: 0;
}

.galw img,.galsin img {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 4 / 3;
    border-radius: 14px;
}

.galsin img {
    width: 100%;
    margin-bottom: 4%;
}

.galwbo {
    clear: both;
    padding-top: 8%;
}

.galwbo .galw {
    padding: 0;
}

.wp-pagenavi {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px auto;
    font-size: 12px;
    text-align: center;
    color: #ffe100;
}

.wp-pagenavi a {
    color: #ffe100;
}

.wp-pagenavi span.current,
.wp-pagenavi a.page {
    justify-content: center;
    display: flex;
    align-items: center;
    width: 40px;
    height: 40px;
    box-sizing: border-box;
    margin: 0 10px 0 0;
    line-height: 40px;
    text-align: center;
    border: solid 1px #eee;
    transition: .3s;
}

.wp-pagenavi span.current {
    color: #fff;
    background: #ffe100;
    border: none;
}

.wp-pagenavi a.page {
    background: none;
}

.wp-pagenavi a.page:hover {
    color: #fff;
    background: #ffe100;
}

.wp-pagenavi .first,
.wp-pagenavi .extend {
    margin-right: 10px;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
    display: none;
}

.galsin {
    margin-bottom: 8%;
    background-color: transparent!important;
}

.galsin img {
    margin: 0!important;
    padding: 0!important;
}

.workstag {
    margin-bottom: 6%;
    text-align: center;
}

.workstag a {
    display: inline-block;
    width: 22%;
    padding: 10px 5px;
    margin: 10px;
    color: #000;
    text-decoration: none!important;
    border: #000 3px solid;
    border-radius: 100px;
    font-weight: bolder;
}

.taxactive {
    color: #000!important;
    background-color: #ffe100!important;
}

.smote {
    font-size: 12px;
    line-height: 1.4;
}

.youtu {
    width: 70%;
    padding: 2%;
    text-align: center;
    background-position: bottom center,center center;
    background-image: url(../img/footback.png),url(../img/moback.jpg);
    background-size: 96%,cover;
    background-repeat: no-repeat,repeat;
}

video {
    max-width: 100%;
    height: auto;
    border-radius: 20px;
}
.moca {
    display: flex;
    justify-content: space-between;
    padding: 4%;
    background-image: url(../img/fooback.jpg);
    background-size: 100%;
    background-repeat: repeat-y;
}

.calfo {
    width: 30%;
    padding: 2%;
}
.mbo a {
    border: 3px solid #000;
    border-radius: 50px;
    color: #000;
    width: 40%;
    font-size: 18px;
    padding: 8px;
    margin: 2% auto;
    display: block;
    text-align: center;
    text-decoration: none !important;
    font-weight: bolder;
}

/*==================================

■PC用CSS

*==================================*/
@media all and (min-width:640px) {
    #mainmovie iframe {
        height: 600px;
    }

    #point a.sp {
        overflow: visible;
        color: #000;
    }

    #container {
        width: 100%;
    }

    #sub_nav {
        display: none;
    }

    /* トップページお知らせ欄 */
    #tnav {
        float: left;
        width: 48%;
        margin: 0 auto 6%;
        color: #000000;
    }

    #shopinfo table {
        float: right;
        width: 70%;
        font-size: 15px;
    }

    .outline {
        float: left;
        width: 27%;
    }

    .outline img {
        width: 100%;
        height: auto;
    }

    .btn2 {
        display: none;
    }

    .btn2-2 {
        display: block;
        position: relative;
        padding-right: 35px;
        text-decoration: none;
        border: none;
    }

    #tel {
        display: none;
    }

    #logo {
        float: left;
        max-width: 50%;
        min-width: 400px;
    }

    #logo img {
        width: 100%;
        height: auto;
    }

    /* ヘッド電話番号 */
    #telh {
        float: right;
        width: 30%;
    }

    #telh img {
        width: 100%;
        height: auto;
    }

    .nav-collapse {
        overflow: hidden;
        width: 100%;
        background-color: #FFFFFF;
    }

    .nav-collapse ul {
        display: table;
        table-layout: fixed;
        width: 100%;
        max-width: 1600px;
        margin-left: auto;
        margin-right: auto;
    }

    .nav-collapse li {
        display: table-cell;
        text-align: center;
    }

    .nav-collapse a {
        display: block;
        width: 100%;
        padding: 18px 0;
        font-size: 14px;
        font-weight: bolder;
        line-height: 1.2;
    }

    #toggle {
        display: none;
    }

    #main {
        float: right;
        width: 48%;
        margin-bottom: 60px;
        line-height: 2;
    }

    .sp {
        display: block;
        overflow: hidden;
        width: 28%;
        margin-right: 2.6%;
        margin-left: 2.6%;
        margin-bottom: 40px;
        padding-top: 20px;
        text-decoration: none;
    }

    .sp img {
        clear: left;
        max-width: 100%;
        height: auto;
        margin-bottom: 10px;
    }

    #menutop {
        float: left;
        width: 48%;
        padding-left: 0;
        padding-top: 0;
        line-height: 1.6;
    }

    #menuwrap {
        float: right;
        width: 48%;
    }

    .heightLine {
        float: left;
        width: 49%;
        margin-right: 2%;
        margin-bottom: 20px;
        padding-left: 3%;
        padding-right: 3%;
    }

    .heightLine:nth-child(even) {
        margin-right: 0;
    }

    .gallery {
        float: left;
        position: relative;
        width: 22%;
        margin-right: 4%;
        margin-bottom: 4%;
        padding-left: 0;
    }

    #maincontents .gallery img {
        width: 100%;
    }

    .gallery:nth-child(4n) {
        margin-right: 0;
    }

    .gallery:nth-child(4n+1) {
        clear: left;
    }

    #blogleft {
        float: left;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        width: 70%;
        margin-bottom: 20px;
    }

    #blogright {
        float: right;
        width: 26%;
    }

    footer {
        padding: 4% 0;
    }

    /** ページナビ
    ===================================*/
    .wp-pagenavi a, .wp-pagenavi span {
        padding: 12px 14px;
        margin: 2px;
        font-size: 16px;
        color: #251305;
    }

    .wp-pagenavi {
        margin: 20px 0px;
    }

    /** テンプレート：イベント情報 PC
    ===================================*/
    /* イベント名 */
    .event_title {
        font-size: 184%;
    }

    /* イベント写真エリア */
    .event_left {
        float: left;
        width: 38%;
    }

    /* イベントテキストエリア */
    .event_right {
        float: right;
        width: 59%;
    }

    /* イベント詳細情報テーブル */
    .event_table {
        margin: 0 0 30px;
    }

    .event_table th {
        padding: 15px 0;
        font-size: 117%;
        line-height: 1.8;
    }

    .event_table td {
        padding: 15px;
        font-size: 134%;
        line-height: 1.8;
    }

    /* イベントエントリーボタン */
    .event_btn_entry {
        padding: 22px 0 18px;
        font-size: 184%;
    }

    /** テンプレート：フォーム送信ボタン
    ===================================*/
    .mw_wp_form_input .btn input {
        width: 320px;
        height: 58px;
    }

    .mw_wp_form_confirm .btn input {
        /*送信ボタン用*/
        width: 320px;
        height: 58px;
    }

    #submitback input {
        /*戻るボタン用*/
        width: 320px;
        height: 58px;
    }

    #maincontents table tr td a img {
        width: 50%;
        margin-bottom: 10px;
    }

    .galsinwra {
        padding: 0% 0%;
        background-color: #fff;
        border-radius: 20px;
    }

}

/*==================================

■スマートフォン用CSS

*==================================*/
@media all and (max-width:640px) {
    body {
        font-size: 15px;
    }

    .inner {
        padding-left: 10px;
        padding-right: 10px;
    }

    iframe {
        width: 100%;
        height: 280px;
    }

    .mw_wp_form input {
        max-width: 100%;
    }

    .mw_wp_form table, .mw_wp_form tbody, .mw_wp_form thead, .mw_wp_form tfoot, .mw_wp_form tr, .mw_wp_form th, .mw_wp_form td {
        display: block;
        border: none;
    }

    table, tbody, tr, th {
        padding: 0 !important;
    }

    .form tr, .form th, .form td, .form tbody {
        display: block !important;
        width: 100% !important;
    }

    .faq {
        padding-top: 8%;
        padding-right: 3%;
        padding-bottom: 8%;
        padding-left: 3%;
    }

    .accordion_tree table tr th a img {
        display: block;
    }

    .accordion_tree td {
        min-width: 80px;
    }

    #video {
        padding: 0;
    }

    header .inner {
        position: relative;
    }

    #logo {
        float: left;
        max-width: 80%;
        height: auto;
        padding-top: 10px;
        padding-right: 0;
        padding-left: 0;
        padding-bottom: 0;
    }

    #logo img {
        width: 100%;
        height: auto;
    }

    /* 右上ナビゲーション */
    .nav-collapse {
        position: relative;
        width: 100%;
        border-top: 1px solid #ffe100;
        border-bottom: 1px solid #ffe100;
    }

    .nav-collapse ul {
        display: block;
        width: 100%;
        list-style: none;
    }

    .nav-collapse li {
        display: block;
        width: 100%;
    }

    .nav-collapse a {
        position: relative;
        display: block;
        width: 100%;
        padding: 15px;
        text-align: center;
        font-weight: bolder;
        font-size: 14px;
        border-top: 1px dashed #ffe100;
    }

    #nav .inner li a span {
        padding-left: 10px;
        font-size: 12px;
        font-weight: normal;
    }

    /* 矢印 */
    .nav-collapse a:after {
        position: absolute;
        bottom: 44%;
        left: 95%;
        content: "";
        border: 4px solid transparent;
        border-left-color: #ffe100;
    }

    /* マウスオーバー時 */
    .nav-collapse a:hover, .nav-collapse .active a {
        background-image: none;
    }

    .nav-collapse li:first-child a {
        border-top: 0;
    }

    .nav-collapse li:last-child a {
        border-bottom: 0;
    }

    .js .nav-collapse {
        clip: rect(0 0 0 0);
        position: absolute;
        display: block;
        overflow: hidden;
        max-height: 0;
    }

    #toggle {
        display: block;
        position: absolute;
        top: 50%;
        right: 12px;
        float: right;
        width: 45px;
        height: 35px;
        margin-top: -22px;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    /* ヘッド電話番号 */
    #telh {
        display: none;
    }

    /* トップページお知らせ欄 */
    #tnav {
        width: 100%;
        margin: 0 auto 4%;
    }

    .sp {
        display: block;
        position: relative;
        overflow: hidden;
        padding-top: 15px;
        padding-bottom: 15px;
        margin-bottom: 14px;
        text-decoration: none;
    }

    .sp img {
        float: none;
        clear: none;
        max-width: 100%;
        height: auto;
        width: 100%;
        margin-bottom: 10px;
    }

    .sp p {
        width: 100%;
        color: #000;
    }

    .coupon {
        padding: 5%;
        background-image: none;
    }

    .kiritori span {
        display: none;
    }

    .print {
        display: none;
    }

    .mc, .mc3 {
        margin-bottom: 30px;
    }

    .mc, .mc3:last-child {
        margin-bottom: 0;
    }

    #maincontents {
        padding: 0;
    }

    #blogleft {
        margin-bottom: 4%;
    }

    .blog,.blog2 {
        padding-top: 14px;
        padding-right: 0;
        padding-bottom: 30px;
        padding-left: 0;
        margin-right: 0;
        margin-bottom: 40px;
        border: none;
    }

    .blog2 {
        width: 100%;
        padding: 6% 10px 10%;
        border: 1px solid #000000;
    }

    #blogright table {
        margin-bottom: 0;
    }

    #maincontents .blog2 h2 {
        font-size: 19px;
    }

    #miseru {
        margin-bottom: 20px;
        text-align: center;
        font-size: 110%;
    }

    /*グーグルマップ*/
    .gmap {
        display: none;
    }

    #ecal {
        clear: both;
        width: 100%;
    }

    footer {
        padding-top: 10px;
        background-size: 300% auto;
    }

    /** テンプレート：流れ
    ===================================*/
    .flowbox .left {
        float: none;
        width: 100%;
    }

    .flowbox .right {
        float: none;
        width: 100%;
        margin-bottom: 1em;
    }

    .flowbox .right img {
        width: 100%;
    }

    /** テンプレート：イベント情報 スマホ
    ===================================*/
    /* イベント名 */
    .event_title {
        font-size: 134%;
    }

    /* イベント写真エリア */
    .event_left {
        width: 100%;
        margin-bottom: 20px;
        text-align: center;
    }

    /* イベントテキストエリア */
    .event_right {
        width: 100%;
    }

    /* イベント詳細情報テーブル */
    .event_table {
        margin: 0 0 20px;
    }

    .event_table th {
        padding: 4%;
        font-size: 109%;
        line-height: 1.5;
    }

    .event_table td {
        padding: 4%;
        font-size: 109%;
        line-height: 1.5;
    }

    /* イベントエントリーボタン */
    .event_btn_entry {
        padding: 6% 0 4%;
        margin: 0 0 20px;
        font-size: 134%;
    }

    /** テンプレート：ご予約フォーム
    ===================================*/
    .mw_wp_form textarea {
        width: 100%;
    }

    /** テンプレート：フォーム送信ボタン
    ===================================*/
    .mw_wp_form_input .btn input {
        width: 80%;
        height: 40px;
    }

    .mw_wp_form_confirm .btn input {
        /*送信ボタン用*/
        width: 80%;
        height: 40px;
    }

    #submitback input {
        /*戻るボタン用*/
        width: 80%;
        height: 40px;
    }

    #bana ul li {
        float: none;
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }

    .box {
        clear: both;
        padding-left: 0;
        padding-right: 0;
        margin-bottom: 10px;
        padding-top: 10px;
    }

    .heightLine {
        margin-bottom: 0;
    }

    .mc1 img, .mc2 img, .mc3 img {
        float: none;
        clear: both;
        width: 100%;
        margin-top: 10px;
        margin-bottom: 10px;
        margin-left: 0;
    }

    h2 {
        float: none;
        clear: both;
        width: 100%;
    }

    .twophoto ul {
        padding: 0;
    }

    .twophoto ul li {
        float: none;
        width: 100%;
        margin-right: 0;
    }

    .top-contact {
        padding: 20px;
        margin-bottom: 30px;
    }

    .top-contact ul li img {
        float: none;
        clear: both;
    }

    .top-contact ul li {
        float: none;
        clear: both;
        display: block;
        width: 100%;
        text-align: center;
    }

    .top-contact ul li a {
        display: block;
        clear: both;
        float: none;
    }

    .top-contact ul li:nth-child(1) a {
        display: block;
        padding: 20px;
        margin-bottom: 20px;
        background-color: #fff;
    }

    #maintitle {
        font-size: 20px;
    }

    #foottel {
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        color: #000000;
        line-height: 1.4;
    }

    #foottel img {
        width: 100%;
        margin-bottom: 6px;
    }

    #foottel p {
        line-height: 1.2;
        text-align: left;
    }

    #foottel a:nth-of-type(1) {
        width: 100%;
        padding: 0;
        background-color: #FFFFFF;
    }

    #foottel a:nth-of-type(2) {
        width: 100%;
    }

    #foottel a:nth-of-type(3) {
        width: 100%;
    }

    .youkou table th, .youkou table td,.youkou table tr,.youkou table tbody,.youkou table {
        display: block;
        width: 100%;
        border-left-style: none;
    }

    .youkou table th {
        display: block;
        width: 100%;
        padding: 5px 10px!important;
        text-align: center;
    }

    #top {
        margin-top: 0;
        margin-bottom: 32px;
    }

    #maincontents table tr td ul li {
        width: 48%;
    }

    .jan ul li a {
        width: 48%;
        margin-left: 1%;
        margin-right: 1%;
        margin-bottom: 1%;
    }

    #maincontents table tr td a img {
        padding: 0;
    }

    #container td {
        padding: 15px 15px 30px;
    }

    #shopinfo table {
        border: none;
    }

    #shopinfo th {
        display: block;
        width: 100%;
        border: none;
    }

    #shopinfo td {
        display: block;
        width: 100%;
        border: none;
    }

    .mc3 {
        padding: 10px;
        border: none;
    }

    #pointwrap {
        margin-top: 20px;
        background-size: 200% auto,300% auto;
    }


    #point {
        padding: 10% 8%;
    }

    .youkou {
        padding: 0 10px;
    }

    .gallery {
        float: left;
        width: 48%;
        margin-right: 4%;
        margin-bottom: 10px;
    }

    .gallery img {
        margin: 0;
    }

    .gallery:nth-child(2n) {
        margin-right: 0;
    }

    .gallery:nth-child(2n+1) {
        clear: left;
    }

    #maincontents h2 {
        margin: 20px 0 16px;
        font-size: 24px;
    }

    .accordion_tree table tr th,.accordion_tree table tr td {
        padding: 10px!important;
    }

    .libo .lineb {
        width: 120px;
    }

    .libo .instab {
        width: 40px;
    }

    #formtab ul li a {
        font-size: 16px;
    }

    .youkou th,.form th {
        padding: 10px;
        line-height: 1.6;
        font-size: 16px;
    }

    .beaf {
        display: block;
    }

    .beaf li {
        width: 100%;
    }

    .beaf1 {
        margin-bottom: 12%!important;
    }

    .beaf1:after {
        position: absolute;
        top: 0;
        right: 46%;
        bottom: -112%;
        width: 20px;
        height: 20px;
        margin: auto;
        content: '';
        border: 0;
        border-top: solid 3px #ffe100;
        border-right: solid 3px #ffe100;
        transform: rotate(135deg);
    }

    .outline {
        padding: 20px 10% 0;
    }

    .sns ul {
        padding: 20px 20%;
    }

    .galw {
        width: 48%;
        padding: 6% 4% 4% 4%;
        margin-right: 4%;
        margin-bottom: 6%;
        text-align: center;
        background-color: #fff;
    }

    .galw:nth-child(3n) {
        margin-right: 4%;
    }

    .galw:nth-child(2n) {
        margin-right: 0;
    }

    .workstag a {
        width: 44%;
        padding: 6px 5px;
        margin: 6px;
        font-size: 12px;
    }

    .youtu {
        width: 100%;
        padding: 0% 0 8%;
    }

    .moca {
        display: block;
        padding: 4%;
        background-size: 200%;
    }

    .calfo {
        width: 100%;
        padding: 0%;
    }
.mbo a {
    margin-top: 30px;
    width: 70%;
    font-size: 14px;
}
}
