@import url(//use.fontawesome.com/releases/v5.0.11/css/all.css);
/*@import url(//fonts.googleapis.com/css?family=Sawarabi+Mincho);*/
/*@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');*/
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,500;0,700;0,900;1,300;1,400;1,500;1,700;1,900&display=swap');

@charset "utf-8";
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, 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, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    font-weight: normal;
}
strong {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    font-weight: bold;
}
strong > span{
    font-weight: bold;
}
@font-face {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    src:url("https://use.fontawesome.com/releases/v5.6.3/webfonts/fa-solid-900.woff2") format("woff2");
    font-display: swap;
}
@font-face {
    font-family: 'Font Awesome 5 Free';
    font-weight: 400;
    src:url("https://use.fontawesome.com/releases/v5.6.3/webfonts/fa-regular-400.woff2") format("woff2");
    font-display: swap;
}

/*paddingによる幅を無くします*/
*{
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    -o-box-sizing:border-box;
    -ms-box-sizing:border-box;
    box-sizing:border-box;
}
html{
    overflow-x: hidden;
    scroll-behavior: smooth;
}
body {
    font-size: 15px;
    font-family: "Open Sans","游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    line-height: 1.8;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    overflow: hidden;
    /*文字のカーニング*/
    -ms-font-feature-settings: "palt";
    -moz-font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    word-break: break-word;
    /*フォントのレンダリング*/
    /*    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;*/
}
.fixed {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 80000;
}
article,aside,details,figcaption,figure, footer,header,hgroup,menu,nav,section,main {
    display: block;
}
h1, h2, h3, h4, h5, h6, th {
    font-weight: normal;
}
ol,ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: none;
}
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
}
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}
img {
    vertical-align: middle;
}
input{
    vertical-align: middle;
    width:  100%;
    padding: 15px;
    -webkit-appearance: none;
    border: none;
    border-radius: 0;
    -webkit-border-radius: 0;
}

input::placeholder {
    color: #cacaca;
}
/* IE */
input:-ms-input-placeholder {
    color: #cacaca;
}
/* Edge */
input::-ms-input-placeholder {
    color: #cacaca;
}

select {
    vertical-align: middle;
    width:  100%;
    padding: 15px;
    -webkit-appearance: none;
    border: none;
    border-radius: 0;
}
/*フロート用のアフター要素*/
.flort_plus:after{
    height: 0;
    content: "";
    display: block;
    clear: both;
}
button,
input[type="button"],
input[type="submit"] {
    -webkit-appearance: none;
}
/*ここまでリセットcss*/
body {
    color: #3c3c3c;
    background: #000 url(../images/bg.jpg) 0 0;
}
body#imp_frame{
    background: none;
}
main{
    width: 100%;
    min-height: 750px;
    overflow: hidden;
    content-visibility:auto;
}

a{
    color: #3c3c3c;
}
a:hover, a:active {
    color: #d6d6d6;
}
section {
    text-align: center;
    padding: 40px 0 40px;
    margin: 0 auto;
}
main section:last-child{
    padding: 40px 0 40px 0;
}
main section:first-child{
    padding: 55px 0 30px;
}
main .other_page section:last-child{
    padding: 40px 0;
}
main .other_page section:first-child{
    padding: 0 0 40px;
}
/*---------------------
ローディングアニメーション
---------------------*/
.loader-wrap {
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: #000 url(../images/bg.jpg);
    z-index: 99999;
}
.loader-wrap.other {
    background: #fff;
}
.loader-wrap img{
    max-width: 100%;
}
/*---------------------
アニメーション
---------------------*/
.link_act_01 {
    opacity: 1;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
.link_act_01:hover {
    opacity: 0.7;
    filter: alpha(opacity=80);
}
.link_act_02 {
    -moz-transition: -moz-transform 0.7s ease-in-out;
    -webkit-transition: -webkit-transform 0.7s ease-in-out;
    -o-transition: -o-transform 0.7s ease-in-out;
    -ms-transition: -ms-transform 0.7s ease-in-out;
    transition: transform 0.7s ease-in-out;
}
.link_act_02:hover {
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);
}
.link_act_03 {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}
.link_act_03:hover {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);

}
.link_act_04 {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

/*拡大縮小*/
.link_act_05{
    animation: anime 2s ease-in-out infinite;
    transform-origin: 50% 50%;
}

@keyframes anime {
    0% {transform:scale(0.9);}
    30% {transform:scale(0.9);}
    40% { transform:scale(1.1);}
    50% { transform:scale(0.9);}
    60% { transform:scale(1.1);}
    70% { transform:scale(0.9);}
    100% { transform:scale(0.9);}
}

.link_act_06{
  -webkit-filter: grayscale(0) blur(0);
  filter: grayscale(0) blur(0);
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}
.link_act_06:hover{
  -webkit-filter: grayscale(100%) blur(3px);
  filter: grayscale(100%) blur(3px);
}

/* フェードイン*/
.list-mv02 {
    transition: 2s;
    opacity: 0;
}
.mv02 {
    opacity: 1.0;
}
.list-mv03 {
    opacity: 0;
    transition: 2s;
    transform: translate(0,5px);
    -webkit-transform: translate(0,5px);
    -ms-transform: translate(0,5px);
    -moz-transform: translate(0,5px);
}
.mv03 {
    opacity: 1.0;
    transform: translate(0,0);
    -webkit-transform: translate(0,0);
    -ms-transform: translate(0,0);
    -moz-transform: translate(0,0);
}
.list-mv04 {
    transition: 3s;
    opacity: 0;
}
.mv04 {
    opacity: 1.0;
}

/*--------------------------
blockrevealer
--------------------------*/
.block-revealer__element {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  pointer-events: none;
  opacity: 0;
}
.contents .sample-img{
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 20px;
}
.contents .text-area{
  margin-bottom: 20px;
}

/*--------------------------
タイトルアニメーション
--------------------------*/
.text-move {
  opacity: 0;
  display: inline-block;
  transform: scale(1.15) translate(0px, 0px);
  filter: grayscale(100);
}
.text-move:nth-child(1) {
  transition: opacity 1.6s ease 0.1s, transform 2s ease 0.2s;
}
.text-move:nth-child(2) {
  transition: opacity 1.6s ease 0.2s, transform 2s ease 0.25s;
}
.text-move:nth-child(3) {
  transition: opacity 1.6s ease 0.25s, transform 2s ease 0.3s;
}
.text-move:nth-child(4) {
  transition: opacity 1.6s ease 0.3s, transform 2s ease 0.35s;
}
.text-move:nth-child(5) {
  transition: opacity 1.6s ease 0.35s, transform 2s ease 0.4s;
}
.text-move:nth-child(6) {
  transition: opacity 1.6s ease 0.4s, transform 2s ease 0.45s;
}
.text-move:nth-child(7) {
  transition: opacity 1.6s ease 0.45s, transform 2s ease 0.5s;
}
.text-move:nth-child(8) {
  transition: opacity 1.6s ease 0.5s, transform 2s ease 0.55s;
}
.text-move:nth-child(9) {
  transition: opacity 1.6s ease 0.55s, transform 2s ease 0.6s;
}
.text-move:nth-child(10) {
  transition: opacity 1.6s ease 0.6s, transform 2s ease 0.65s;
}
.text-move:nth-child(11) {
  transition: opacity 1.6s ease 0.65s, transform 2s ease 0.7s;
}
.text-move:nth-child(12) {
  transition: opacity 1.6s ease 0.7s, transform 2s ease 0.75s;
}
.text-move:nth-child(13) {
  transition: opacity 1.6s ease 0.75s, transform 2s ease 0.8s;
}
.text-move:nth-child(14) {
  transition: opacity 1.6s ease 0.8s, transform 2s ease 0.85s;
}
.text-move:nth-child(15) {
  transition: opacity 1.6s ease 0.85s, transform 2s ease 0.9s;
}
.text-move:nth-child(16) {
  transition: opacity 1.6s ease 0.9s, transform 2s ease 0.95s;
}

.move_area.t_active {
  opacity: 1;
}

.move_area.t_active .text-move {
  opacity: 1;
  transform: scale(1) translate(0);
  filter: grayscale(0) blur(0);
}

/*---------------------
共通
---------------------*/
.title_bnr{
    line-height: 1em;
    font-size: 35px;
    letter-spacing: 1.2px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    align-items: center;
    margin-bottom: 25px;
}
.title_bnr .large_txt{
    font-size: 1.35em;
}
.title_bnr span.kana{
    font-size: 0.6em;
    margin-left: 5px;
}

.subtitle{
    width: 100%;
    margin: 0 0 20px 0;
    text-align: center;
    -moz-osx-font-smoothing: grayscale;
    position:relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    background-size: 150px;
    font-family: "Roboto" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
}
.subtitle .en{
    width: 100%;
    display: block;
    font-size: 28px;
    line-height: 35px;
    color: #fff;
    text-shadow: 0 0 5px #30928f, 0 0 10px #30928f;
}
.subtitle .en:first-letter{
    font-size: 38px;
}
.subtitle .ja{
    font-size: 16px;
    line-height: 20px;
    text-align: center;
    display: flex;
    /* flex-wrap: wrap; */
    align-items: center;
    color: #fff;
    position:relative;
    text-shadow: 0 0 5px #30928f, 0 0 10px #30928f;
}
.subtitle > .template_box > .content_borderbox {
    padding: 0 10px;
}

.subtitle_02{
    margin: auto auto 10px;
    text-align: center;
    -moz-osx-font-smoothing: grayscale;
    position:relative;
    position: relative;
    max-width: 1024px;
    /* margin: auto; */
    display: flex;
    justify-content: center;
    align-items: center;
    text-shadow: 0 0 5px #90310b, 0 0 5px #90310b, 0 0 5px #90310b;
    font-family: "Roboto", "Garamond", "Times New Roman", 游明朝, "Yu Mincho", 游明朝体, YuMincho, "ヒラギノ明朝 Pro W3", "Noto Serif JP", "Hiragino Mincho Pro", HiraMinProN-W3, HGS明朝E, "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.subtitle_02 .en{
    color: #fff;
    display: inline;
    font-size: 30px;
    /*    letter-spacing: 0.1em;*/
    -webkit-font-smoothing: antialiased;
}
/*.subtitle_02 .en:first-letter{
    font-size: 38px;
    }*/
    .subtitle_02 .ja{
        color: #fff;
        font-size: 20px;
        margin-left: 10px;
        margin-top: 3px;
    }
    .subtitle_02:after{ content: ""; flex-grow: 1; height: 1px; background: #fff; display: block; }
    .subtitle_02:after {margin-left: 10px;}

    .subtitle_03 {
        background: #610000;
        color: #fff;
        padding: 10px 0;
        margin-bottom: 20px;
        text-align: center;
        font-size: 20px;
        font-family: "Roboto" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
    }

    .subtitle_04 {
        background: #1e1e1e;
        color: #fff;
        padding: 10px 0;
        margin-bottom: 10px;
        text-align: center;
        font-family: "Roboto" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
    }

    .subtitle_05{
        width: 100%;
        min-height: 50px;
        margin: 0 0 20px 0;
        text-align: center;
        position:relative;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        font-family: "Roboto" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
    }
    .subtitle_05 .en{
        width: 100%;
        display: block;
        font-size: 20px;
        line-height: 30px;
        color: #2d2d2d;
        text-shadow: 0 0 5px #fff, 0 0 10px #fff;
    }
    .subtitle_05 .en:first-letter{
        font-size: 38px;
    }
    .subtitle_05 .ja{
        font-size: 16px;
        line-height: 20px;
        text-align: center;
        display: flex;
        /* flex-wrap: wrap; */
        align-items: center;
        color: #2d2d2d;
        position:relative;
        text-shadow: 0 0 5px #fff, 0 0 10px #fff;
    }
    .subtitle_05 > .template_box > .content_borderbox {
        padding: 0 10px;
    }

    .subtitle_06 {
        /* background: #3c3c3c; */
        color: #fff;
        padding: 12px 0 7px;
        margin-bottom: 20px;
        text-align: center;
        font-size: 25px;
        font-family: "Roboto" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
        ackground-image: -moz-linear-gradient( 145deg, rgb(113,147,250) 0%, rgb(114,155,248) 49%, rgb(24,206,233) 100%);
        background-image: -webkit-linear-gradient( 145deg, rgb(113,147,250) 0%, rgb(114,155,248) 49%, rgb(24,206,233) 100%);
        background-image: -ms-linear-gradient( 145deg, rgb(113,147,250) 0%, rgb(114,155,248) 49%, rgb(24,206,233) 100%);
    }

    .subtitle_10{
        margin: auto auto 5px;
        text-align: center;
        -moz-osx-font-smoothing: grayscale;
        position:relative;
        position: relative;
        max-width: 1024px;
        /* margin: auto; */
        display: flex;
        justify-content: center;
        align-items: center;
        color: #90310b;
        /* text-shadow: 0 0 5px #90310b, 0 0 5px #90310b, 0 0 5px #90310b; */
        /* font-family: "Roboto", "Garamond", "Times New Roman", 角ゴシック, "Yu Mincho", 游明朝体, YuMincho, "ヒラギノ明朝 Pro W3", "Noto Serif JP", "Hiragino Mincho Pro", HiraMinProN-W3, HGS明朝E, "ＭＳ Ｐ明朝", "MS PMincho", serif; */
        font-family: "Open Sans","ヒラギノ角ゴ ProN W6", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    }
    .subtitle_10 .en{
        /* color: #fff; */
        display: inline;
        font-size: 22px;
        /*    letter-spacing: 0.1em;*/
        -webkit-font-smoothing: antialiased;
    }
/*.subtitle_10 .en:first-letter{
    font-size: 38px;
    }*/
    .subtitle_10 .ja{
        color: #fff;
        font-size: 20px;
        margin-left: 10px;
        margin-top: 3px;
    }
    .subtitle_10:after{content: "";flex-grow: 1;height: 1px;background: #90310b;display: block;}
    .subtitle_10:after {margin-left: 10px;}

    .inner {
        margin: 0 auto;
        max-width: 1024px;
        width: 100%;
        padding: 0 20px;
    }
    .width_1024{
        width: 100%;
        max-width: 1024px;
        margin: auto;
    }
    .width_940{
        width: 100%;
        max-width: 940px;
        margin: auto;
    }
    .width_560{
        width: 100%;
        max-width: 560px;
        margin: auto;
        text-align: center;
    }
    .width_700{
        width: 100%;
        max-width: 700px;
        margin: auto;
        text-align: center;
    }
    .width_768{
        width: 100%;
        max-width: 768px!important;
        margin: auto;
        text-align: center;
    }
    .width_480{
        width: 100%;
        max-width: 480px;
        margin: auto;
    }
    .width_320{
        width: 100%;
        max-width: 320px;
        margin: auto;
    }
    .width_250{
        width: 100%;
        max-width: 250px;
        margin: auto;
    }
    .text_center {
        text-align: center;
    }
    .center_100{
        width: 100%;
        margin: auto;
        text-align: center;
    }
    .text_left {
        text-align: left;
    }
    .mb_10 {
        margin-bottom: 10px;
    }
    .mb_20 {
        margin-bottom: 20px;
    }
    .mb_30 {
        margin-bottom: 30px;
    }
    .pb_30 {
        padding-bottom: 30px;
    }
    .red {
        color: #f24b6f;
    }
    .yellow{
        color: #c6982d;
        font-weight: bold;
    }
    .blue_h{
        color: #444885;
    }
    .red_h{
        color: #ba3b68
    }
    .orange_red_h{
        color: #ec6767
    }
    .pink_h{
        color: #e14277
    }
    .purple_h{
        color: #5b2cae;
    }
    .orange_h{
        color: #f6634a
    }
    .atten {
        font-size:18px;
        /* font-weight: bold; */
        color: #d04356;
    }
    .atten_01, a.atten_01 {
        color: #ca1f36;
    }
    .atten_03 {
        color: #ccbbff;
    }
    .atten_04 {
        color: #ff0e14;
    }
    .atten_line{
        background: linear-gradient(transparent 70%, #fdbdc5 70%);
    }
    .atten_line02{
        background: linear-gradient(transparent 70%, #fde9bd 70%);
    }
    .atten_line03{
        background: linear-gradient(transparent 70%, #bec6ff 70%);
    }
    .atten_line04{
        background: linear-gradient(transparent 70%, #bec6ff 70%);
    }
    .link_act_01 {
        opacity: 1;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    .link_act_01:hover {
        opacity: 0.7;
        filter: alpha(opacity=80);
    }
    /*パソコンサイズのみ表示*/
    .pc_none{
        display: block;
    }
    .sp_none{
        display: none;
    }
    .wb {
        font-weight: bold;
    }
    .fs_14{
        font-size: 14px;
    }
    .fs_16{
        font-size: 16px;
    }
    .fs_18{
        font-size: 18px;
    }
    .fs_20{
        font-size: 20px;
    }
    .fs_23{
        font-size: 23px;
    }
    .fs_25{
        font-size: 25px;
    }
    /*リスト*/
    .dl_type_01 {
        width: 100%;
        border-spacing: 0;
        text-align: left;
        color: #fff;
        box-sizing: border-box;
        margin: auto;
    }
    .dl_type_01 dt, .dl_type_01 dd {
        vertical-align: top;
        box-sizing: border-box;
    }
    .dl_type_01 dt {
        padding: 0 0 0 8px;
        border-left: 4px solid #fff;
        color: #fff;
        font-weight: bold;
        font-size: 1.2em;
        letter-spacing: 4px;
        margin-bottom: 10px;
    }
    .dl_type_01 dd {
        margin-bottom: 20px;
        padding: 20px;
        font-size: 15px;
        border-bottom: 1px solid #fff;
        color: #fff;
    }
    /*テーブルパターン*/
    .table_collum_01 tbody tr th {
        border-bottom: dashed 1px rgba(0, 0, 0, 0.17);
    }
    .table_collum_01 {
        width: 100%;
        margin: 0 auto 20px;
        padding: 10px;
        box-shadow: 1px 1px 4px 1px rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 1px 1px 4px 1px rgba(0, 0, 0, 0.1);
        -webkit-box-shadow: 1px 1px 4px 1px rgba(0, 0, 0, 0.1);
    }
    .table_collum_01 tr {
        display: block;
        margin: 10px 0;
    }
    .table_collum_01 th {
        padding: 15px 0 15px 0;
        text-align: center;
        font-size: 20px;
    }
    .table_collum_01 td {
        padding: 15px 30px;
        text-align: center;
        border-top: none;
        border-bottom: none;
    }
    .table_collum_01 td,
    .table_collum_01 th {
        width: 100%;
        display: block;
    }
    .table_collum_02 {
        width: 100%;
        margin: 0 auto 20px;
        text-align: center;
        table-layout: fixed;
    }
    .table_collum_02 input{
        border: 1px solid #e0e0e0;
    }
    .table_collum_02 tr {
        margin-bottom: 10px;
    }
    .table_collum_02 tr.check_list input{
        width: auto;
    }
    .table_collum_02 th,
    .table_collum_02 td {
        padding: 20px;
        vertical-align: middle;
        border-bottom: 1px dashed #1c1c1c;
    }
    .table_collum_02 th {
        font-size: 15px;
        padding: 20px;
        color: #4d4d4d;
        vertical-align: middle;
        width: 30%;
        background: #fbfbfb;
        background: #710c05;
        color: #fff;
        font-family: "Roboto", "Garamond", "Times New Roman", 游明朝, "Yu Mincho", 游明朝体, YuMincho, "ヒラギノ明朝 Pro W3", "Noto Serif JP", "Hiragino Mincho Pro", HiraMinProN-W3, HGS明朝E, "ＭＳ Ｐ明朝", "MS PMincho", serif;
    }
    .table_collum_02 td {
        text-align: left;
        font-size: 16px;
        background: #fff;
    }
    .table_collum_02 th span,
    .table_collum_02 td span{
        font-size: 21px;
    }
    .table_collum_02 th span.large,
    .table_collum_02 td span.large{
        font-size: 30px;
    }
    .table_collum_02 td a{
        color: #000;
    }
    .table_collum_02 .requier {
        border-radius: 2px;
        background: #bd0101;
        color: #fff;
        font-size: 0.6em;
        letter-spacing: 1px;
        padding: 4px 12px;
    }
    .table_collum_02.osaka th{
        background: #64c975;
    }
    .table_collum_02.osaka th, .table_collum_02.osaka td {
        border: 1px solid #64c975;
    }

    .at_fierd td{
        padding: 5px;
    }

    .table_collum_03 {
        width: 100%;
        max-width:1024px;
        margin: 0 auto 40px;
        text-align: center;
        table-layout: fixed;
    }
    .table_collum_03 th,
    .table_collum_03 td {
        padding: 20px;
        vertical-align: middle;
        font-size: 30px;
    }
    .table_collum_03 th span,
    .table_collum_03 td span{
        font-size: 16px;
    }
    .table_collum_03 th {
        text-align: center;
        padding: 20px;
        vertical-align: top;
        background: #fbfbfb;
        color: #4d4d4d;
        -webkit-font-smoothing: antialiased;
    }
    .table_collum_03 td {
        text-align: center;
        border-top: 1px dotted #cccccc;
    }
    .table_collum_03 td.center {
        text-align: center;
    }
    .table_collum_03 .txt {
        font-size: 21px;
    }
    .table_collum_04 {
        width: 100%;
        margin: 0 auto;
        text-align: center;
        table-layout: fixed;
        border: 1px solid #333333;
    }
    .table_collum_04 input{
        border: 1px solid #e0e0e0;
    }
    .table_collum_04 tr {
        margin-bottom: 30px;
    }
    .table_collum_04 tr.check_list input{
        width: auto;
    }
    .table_collum_04 th,
    .table_collum_04 td {
        padding: 20px;
        vertical-align: middle;
    }
    .table_collum_04 th {
        text-align: center;
        padding: 20px;
        vertical-align: top;
        width: 30%;
        background: #151515;
    }
    .table_collum_04 td {
        text-align: center;
        background: #2f3131;
    }
    .table_collum_04 .requier {
        border-radius: 2px;
        background: #bd0101;
        color: #fff;
        font-size: 0.6em;
        letter-spacing: 1px;
        padding: 4px 12px;
    }
/*--------------------------------------
パンくず
--------------------------------------*/
.pankuzu {
    padding: 0;
    margin: auto;
    text-align: center;
    font-size: 10px;
    letter-spacing: 0;
    position:  relative;
    text-shadow: 0 0 5px #602417, 0 0 5px #602417, 0 0 5px #602417;
    padding: 10px;
}
.pankuzu ol li {
    display: inline-block;
    list-style-type: none;
    padding-right: 5px;
    color: #fff;
}
.pankuzu ol li:first-child:before {
    content: "\f015";
    font-family: "Font Awesome 5 Free";
    color: #fff;
    font-weight: 900;
}
.pankuzu ol li:before {
    content: " > ";
}
.pankuzu ol li:first-child {
    color: #fff;
}
.pankuzu ol li a {
    color: #fff;
    padding-left: 5px;
}
/*--------------------------------------
ドロワー
--------------------------------------*/
.btn_menu{
    position: fixed;
    top: 12px;
    right: 8px;
    /* width: 30px; */
    /* height: 30px; */
    z-index: 99000;
    font-family: "Roboto" , "futura PT" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
    padding: 7px 10px 20px;
    /* background: #2365fa; */
    /* outline: 3px solid #28b5e6; */
    /* border: 1px solid #fff; */
    background-image: -moz-linear-gradient( 145deg, rgb(113,147,250) 0%, rgb(114,155,248) 49%, rgb(24,206,233) 100%);
    /* background: #fff; */
    background-image: -ms-linear-gradient( 145deg, rgb(113,147,250) 0%, rgb(114,155,248) 49%, rgb(24,206,233) 100%);
}
.btn_menu .txt{
    /* width: 46px; */
    position: absolute;
    bottom: -20px;
    left: 0;
    height: auto;
    background: none;
    font-size: 10px;
    letter-spacing: 0;
    max-height: 100%;
    white-space: nowrap;
    display: inline;
    word-break: normal;
    color: #fff;
    box-shadow: none;
    /* text-shadow: 0 0 5px #000, 0 0 5px #000, 0 0 5px #000; */
    text-shadow: 0 0 5px #38003a, 0 0 5px #38003a, 0 0 5px #38003a;
}
.btn_trigger {
  position: relative;
  width: 30px;
  height: 20px;
  cursor: pointer;
}
.btn_trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  box-shadow: 0 0 5px #38003a, 0 0 5px #38003a, 0 0 5px #38003a;
  /* box-shadow: 0 0 5px #000, 0 0 5px #000, 0 0 5px #000; */
}
.btn_trigger, .btn_trigger span {
  display: inline-block;
  transition: all .1s;
  box-sizing: border-box;
}
.btn_trigger span:nth-of-type(1) {
  top: 0;
}
.btn_trigger span:nth-of-type(2) {
  top: 50%;
  width: 80%;
}
.btn_trigger span:nth-of-type(3) {
  bottom: 0px;
}
.open .btn_trigger span:nth-of-type(1),
.open .btn_trigger span:nth-of-type(2),
.open .btn_trigger span:nth-of-type(3) {
    /*  background-color: #3c3c3c;*/
}
.open .btn_trigger {
  color: #3c3c3c;
}
#btn_top span:nth-of-type(1) {
  -webkit-animation: btn_trigger_01 .1s forwards;
  animation: btn_trigger_01 .1s forwards;
}
@-webkit-keyframes btn_trigger_01 {
  0% {-webkit-transform: translateY(13px) rotate(-45deg);}
  100% {-webkit-transform: translateY(0) rotate(0);}
}
@keyframes btn_trigger_01 {
  0% {
    transform: translateY(13px) rotate(-45deg);}
    100% {transform: translateY(0) rotate(0);}
}
#btn_top span:nth-of-type(2) {
  -webkit-animation: btn_trigger02 .1s forwards;
  animation: btn_trigger02 .1s forwards;
}
@-webkit-keyframes btn_trigger02 {
  0% {opacity: 0;}
  100% {opacity: 1;}
}
@keyframes btn_trigger02 {
  0% {
    opacity: 0;
}
100% {
    opacity: 1;
}
}
#btn_top span:nth-of-type(3) {
  -webkit-animation: btn_trigger03 .1s forwards;
  animation: btn_trigger03 .1s forwards;
}
@-webkit-keyframes btn_trigger03 {
  0% {-webkit-transform: translateY(-13px) rotate(45deg);}
  100% {-webkit-transform: translateY(0) rotate(0);}
}
@keyframes btn_trigger03 {
  0% {transform: translateY(-13px) rotate(45deg);}
  100% {transform: translateY(0) rotate(0);}
}
#btn_top::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  content: '';
  width: 30px;
  height: 30px;
  margin: -16px 0 0 -16px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.3);
  transition: all .1s;
  opacity: 0;
}
#btn_top.active span:nth-of-type(1) {
  -webkit-animation: active_btn_top_bar01 .1s .1s forwards;
  animation: active_btn_top_bar01 .1s .1s forwards;
  top: 0px;
}
@-webkit-keyframes active_btn_top_bar01 {
  0% {-webkit-transform: translateY(0) rotate(0);}
  100% {-webkit-transform: translateY(6px) rotate(-45deg);}
}
@keyframes active_btn_top_bar01 {
  0% {transform: translateY(0) rotate(0);}
  100% {transform: translateY(6px) rotate(-45deg);}
}
#btn_top.active span:nth-of-type(2) {
  -webkit-animation: active_btn_top_bar02 .1s .1s forwards;
  animation: active_btn_top_bar02 .1s .1s forwards;
}
@-webkit-keyframes active_btn_top_bar02 {
  0% {opacity: 1;}
  100% {opacity: 0;}
}
@keyframes active_btn_top_bar02 {
  0% {opacity: 1;}
  100% {opacity: 0;}
}
#btn_top.active span:nth-of-type(3) {
  -webkit-animation: active_btn_top_bar03 .1s .1s forwards;
  animation: active_btn_top_bar03 .1s .1s forwards;
}
@-webkit-keyframes active_btn_top_bar03 {
  0% {-webkit-transform: translateY(0) rotate(0);}
  100% {-webkit-transform: translateY(-13px) rotate(45deg);}
}
@keyframes active_btn_top_bar03 {
  0% {transform: translateY(0) rotate(0);}
  100% {transform: translateY(-13px) rotate(45deg);}
}
#nav_bg {
  position: fixed;
  width: 100%;
  height: 100vh;
  right: 0;
  top: 100px;
  opacity: 0;
  -webkit-transition: 0.1s ease-in-out;
  -moz-transition: 0.1s ease-in-out;
  -o-transition: 0.1s ease-in-out;
  -ms-transition: 0.1s ease-in-out;
  transition: 0.1s ease-in-out;
  z-index: -99999;
}
.open #nav_bg {
  opacity: 1;
  top: 0px;
  /* transition-delay: 0.1s; */
  z-index: 90000;
  /* background: url(../images/bg.jpg); */
  background-size: cover;
}
#nav_drawer {
    font-size: 18px;
    width: 100%;
    max-width: 500px;
    min-width: 420px;
    height: 100%;
    display: flex;
    /* align-items: center; */
    align-items: center;
    /* padding: 80px 50px 0 50px; */
    margin: 0 0 0 auto;
    font-family: "Roboto" , "futura PT" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
    background: url(../images/bg_block.jpg);
}
#nav_drawer > ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
#nav_drawer li {
  margin: 0 auto;
  width: 44%;
  padding: 0 6px;
  text-align: left;
  opacity: 0;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-transform: translate(0px,3px);
  transform: translate(0px,3px);
  /*  -webkit-filter: blur(7px);
  filter: blur(7px);*/
  line-height: 15px;
  font-size: 15px;
  text-align: center;
  /* border-bottom: 1px solid #fff; */
  text-shadow: 0 0 5px #38003a, 0 0 5px #38003a, 0 0 5px #38003a;
}
#nav_drawer li.info{
  width: 100%;
  font-size:20px;
  text-align: center;
  margin-top: 20px;
}
#nav_drawer li.info_open{
  width: 100%;
  /* font-size: 14px; */
  text-align: center;
  color: #fff;
  width: 100%;
  display: block;
  padding: 15px 0;
}
#nav_drawer a {
    width: 100%;
    display: block;
    padding: 15px 0;
    color: #fff;
    text-shadow: 0 0 5px #38003a, 0 0 5px #38003a, 0 0 5px #38003a;
    font-family: "Roboto" , "futura PT" , "Times New Roman" , "Garamond" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
}
#nav_drawer a.current {
    color: #c3c3c3;
}
.open #nav_drawer li {
    opacity: 1;
    -webkit-transform: translate(0px,0px);
    transform: translate(0px,0px);
    transition-delay: .3s;
    /*    -webkit-filter: blur(0);
    filter: blur(0);*/
    /* border-bottom: 1px solid; */
}
/*.open #nav_drawer li:nth-child(1){
    transition-delay: 0s;
}
.open #nav_drawer li:nth-child(2){
    transition-delay: .1s;
}
.open #nav_drawer li:nth-child(3){
    transition-delay: .2s;
}
.open #nav_drawer li:nth-child(4){
    transition-delay: .3s;
}
.open #nav_drawer li:nth-child(5) {
    transition-delay: .4s;
}
.open #nav_drawer li:nth-child(6) {
    transition-delay: .5s;
}
.open #nav_drawer li:nth-child(7) {
    transition-delay: .6s;
}
.open #nav_drawer li:nth-child(8) {
    transition-delay: .7s;
}
.open #nav_drawer li:nth-child(9) {
    transition-delay: .8s;
}
.open #nav_drawer li:nth-child(10) {
    transition-delay: .9s;
}
.open #nav_drawer li:nth-child(11) {
    transition-delay: 1s;
}
.open #nav_drawer li:nth-child(12) {
    transition-delay: 1.1s;
}
.open #nav_drawer li:nth-child(13) {
    transition-delay: 1.2s;
}
.open #nav_drawer li:nth-child(14) {
    transition-delay: 1.3s;
    }*/


    /*ヘッダーナビ*/
    ul.nav_sp{
        color: #f1e07c;
        display: flex;
        flex-wrap: wrap;
        /* justify-content: stretch; */
        align-items: center;
        letter-spacing: 0;
        font-size: 10px;
        text-align: center;
        position: absolute;
        right: 70px;
        top: 14px;
        display: none;
    }
    ul.nav_sp li{
        width: 55px;
        margin: auto 5px;
        padding: 8px 3px 3px 3px;
        background: #000;
    }
    ul.nav_sp li a{
        color: #f1e07c;
    }
    ul.nav_sp li a i {
        width: 27px;
        font-size: 20px;
        margin: auto;
        display: block;
        color: #f1e07c;
        text-align: center;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

/*----------------------------------
テンプレートボックス
----------------------------------*/
.subtitle_02 > .content_borderbox{
    padding: 0 20px 20px 20px;
}
.content_borderbox{
    width: 100%;
    padding: 20px;
    margin: 0 auto 40px;
    color: #3c3c3c;
}
.content_borderbox:last-child{
    margin-bottom: 0;
}
.content_borderbox p{
    font-size: 1.1em;
    border-bottom: 1px dotted #3c3c3c;
    padding: 10px 0;
    text-align: left;
}
.content_borderbox p:last-child{
    border-bottom: none;
}
.content_borderbox a{
    color: #3c3c3c;
}

.content_colorbox{
    width: 100%;
    padding: 20px;
    margin: 0 auto 40px;
    border: 3px double #310a01;
    background: #fff;
    color: #1c1c1c;
}
.subttile > .content_colorbox{
    padding: 0 30px;
}
.content_colorbox:last-child{
    margin-bottom: 0;
}
.content_colorbox p{
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px dashed #1c1c1c;
    text-align:left;
}
.content_colorbox p.vect{
    border-bottom: none;
}
.content_colorbox p:last-child{
    margin-bottom:0;
    padding-bottom: 0;
    border-bottom: none;
}

.content_colorbox_02{
    padding: 20px;
    margin: 0 auto 30px;
    background: #fbf5ea;
    border-radius: 4px;
    color: #3c3c3c;
}
.content_colorbox_02 p{
    margin-bottom:20px;
}
.content_colorbox_02 p:last-child{
    margin-bottom:0;
}

.template_box{
    max-width: 1024px;
    margin: 0 auto 20px;
    display: flex;
    text-align: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    align-items: center;
}

.template_box.fcd{
    margin: 0 auto 10px;
}
.template_box .table_collum_02{
    /* margin: 0; */
}

.template_box:last-child{
    margin: 0 auto 20px;
}
.template_box > div:first-child{
    margin-right: 10px;
}
.template_box div.content_borderbox:first-child{
    margin-right: 0;
}
.template_box div.content_colorbox:first-child{
    margin-right: 0;
}

.template_box > div.col_1:first-child,
.template_box > div.col_3:first-child,
.template_box > div.col_4:first-child,
.template_box > div.col_5:first-child{
    margin-right: 0
}
.template_photo .content_colorbox,
.template_photo .content_borderbox,
.template_text .content_colorbox,
.template_text .content_borderbox{
    margin-bottom: 0;
}
.template_photo{
    width:27%;
}
.template_photo img{
    width:100%;
    max-width: 300px;
}
.template_photo.min img{
    width:100%;
    max-width: 150px;
}
.template_text{
    width:71%;
}
.template_btn{
    width: 100%;
    order: 3;
    width: 100%;
    max-width: 768px;
    background: none;
    text-align: center;
    margin: 0 auto 10px;
    border: 1px solid #610000;
    position:relative;
}
.template_btn a{
    color: #610000;
    display: block;
    padding: 10px 20px;
    background: #fff;
    border-radius: 2px;
}
.template_btn span{
    position: absolute;
    background: #2365fa;
    padding: 10px 15px;
    top: 0;
    right: 0;
    color: #fff;
    background-image: -moz-linear-gradient( 145deg, rgb(113,147,250) 0%, rgb(114,155,248) 49%, rgb(24,206,233) 100%);
    background-image: -webkit-linear-gradient( 145deg, rgb(113,147,250) 0%, rgb(114,155,248) 49%, rgb(24,206,233) 100%);
    background-image: -ms-linear-gradient( 145deg, rgb(113,147,250) 0%, rgb(114,155,248) 49%, rgb(24,206,233) 100%);
}
.template_box:last-child table.table_collum_03{
    margin: 0 auto 0;
}

.template_bnr_btn {
    width: 100%;
    order: 3;
    width: 100%;
    max-width: 768px;
    padding: 10px 20px;
    text-align: center;
    margin: 0 auto;
    position:relative;
    padding:10px;
    border: 1px solid;
}
.template_bnr_btn span{
    position:absolute;
    top: 0;
    right: 0;
    background: #3c3c3c;
    color: #fff;
    padding: 10px 15px;
}

/*1列*/
.col_1{
    width:100%;
}
/*2列*/
.col_2{
    width: 49%;
    text-align:center;
}
.col_2 img,
.col_3 img,
.col_4 img,
.col_5 img{
    max-width: 100%;
}
.col_2.lg img,
.col_3.lg img,
.col_4.lg img,
.col_5.lg img{
    max-width: 100%;
}
/*3列*/
.col_3{
    width:32%;
    text-align:center;
}
/*4列*/
.col_4{
    width:24%;
    text-align:center;
}
/*5列*/
.col_5{
    width:19%;
    text-align:center;
}
ul.list-check{
    margin: 0 auto 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
}
ul.list-check:last-child{
    margin: 0 auto 0;
}
ul.list-check li{
    margin-bottom: 10px;
    padding: 10px 5px;
    display: block;
    -moz-border-radius: 4px;
    color: #ffffff;
    font-size: 13px;
    border: dotted 1px #fff;
    text-align: center;
}
ul.list-check li:nth-child(odd){
    background: #ffae62;
    box-shadow: 0px 0px 0px 3px #ffae62;
}
ul.list-check li:nth-child(even){
    background: #66ccba;
    box-shadow: 0px 0px 0px 3px #66ccba;
}
ul.list-check li:last-child{
    margin-bottom: 0;
}

/*----------------------------------
求人用
----------------------------------*/
.recruit_box{
    position: relative;
}
.recruit_box p{
    border-bottom: 1px solid #d6d6d6;
    padding-bottom: 5px;
    margin-bottom: 5px;
}
.recruit_box p:last-child{
    border-bottom: none;
    padding-bottom: 0px;
    margin-bottom: 0px;
}
.recruit_title{
    width: 100%;
    color: #bf0101;
    font-size: 1.7em;
    margin-bottom: 20px;
    border-bottom: 1px solid #b5b5b5;
    padding: 10px 0;
    text-align: center;
}
.recruit_box.no_01{
    margin-bottom: 20px;
}
.recruit_box.no_02{
    margin-bottom: 20px;
}
.recruit_box.no_03{
    margin-bottom: 160px;
}

.recruit_photo{
    width:100%;
    max-width: 610px;
    margin-left: auto;
    position: absolute;
    top: -150px;
}
.recruit_txt{
    width: 100%;
    max-width: 530px;
    position:relative;
    text-align: justify;
    padding: 40px;
    margin: 0 auto 40px;
    background: rgba(255,255,255,1);
    border: 3px double #3c3c3c3c;
    text-align: justify;
    padding: 40px;
    margin: 150px 0 0 auto;
    color: #3c3c3c;
    text-shadow: #fff 1px 1px 5px, #fff -1px 1px 5px, #fff 1px -1px 5px, #fff -1px -1px 5px;
}
.recruit_photo02{
    width:100%;
    max-width: 610px;
    margin-right: auto;
    position: absolute;
    right: 0;
    top: -150px;
}
.recruit_txt02{
    width: 100%;
    max-width: 530px;
    margin-top: 150px;
    /* position: absolute; */
    background: rgba(255,255,255,1);
    text-align: justify;
    padding: 40px;
    /* margin: 0 auto 40px; */
    border: 3px double #3c3c3c3c;
    color: #3c3c3c;
    text-shadow: #fff 1px 1px 5px, #fff -1px 1px 5px, #fff 1px -1px 5px, #fff -1px -1px 5px;
}

.inner_link{
    max-width: 600px;
    margin: 20px auto 0;
    display: flex;
    text-align: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    align-items: center;
}
.inner_link a{
    color: #3c3c3c;
}
/*----------------------------------
form
----------------------------------*/
#form select{
    -webkit-appearance: none;
    background: #fff;
}
#form .btn_lg label {
    line-height: 2.8;
    padding: 8px;
    background: rgba(169, 169, 169, 0.49);
    border-radius: 4px;
    white-space: nowrap;
    color: #000;
    font-weight: 600;
    font-size: 12px;
}
#form .form_ttl {
    margin: 20px 0 10px;
    padding: 0 10px 0;
    border-bottom: 1px solid #362107;
    font-weight: bold;
    display: inline-block;
}
#form .form_txt {
    color: #684332;
}
#form .btn_color {
    margin-bottom: 40px;
    padding-top: 20px;
    border-top: 1px solid #362107;
}
#form .btn_color a {
    width: 200px;
}
#form .btn_color .i_tel {
    width: 380px;
    margin-bottom: 20px;
    padding: 14px 10px 14px 90px;
    font-size: 13px;
}
#form .btn_color .i_tel .fr {
    padding-top: 15px;
}
#form .btn_color .i_line {
    padding: 25px 10px 26px 20px;
}
#form .form_comment {
    color: #be9d8e;
    font-weight: bold;
}
#form .form_box form select,
#form .form_box form textarea {
    padding: 8px 4px;
    border-radius: 2px;
    border: 1px solid #be9d8e;
}
#form .form_box form button {
    color: #be9d8e;
    text-decoration: underline;
}
#form .btn_g{
    color: #656565;
    font-size: 17px;
    margin-top: 12px;
    border: 3px solid;
    padding: 10px 60px;
}
#form .btn_lg label {
    line-height: 2.8;
    padding: 8px;
    background: rgba(169, 169, 169, 0.49);
    border-radius: 4px;
    white-space: nowrap;
    color: #000;
    font-weight: 600;
}
#form .form_box ul li {
    border-bottom: 3px dotted #d6d6d6;
    padding: 30px 0 25px;
    margin-bottom: 5px;
}
#form .form_box ul li p {
    margin-bottom: 4px;
    font-weight: bold;
    color: #5a512e;
    line-height: 1.4;
    font-size: 17px;
    border-bottom: darkblue;
}
#form .form_box ul li p span {
    font-size: 0.75em;
}
#form .form_box ul li .req {
    margin-left: 2px;
    padding: 2px 4px;
    border: 1px solid #dd6969;
    border-radius: 2px;
    color: #dd6969;
    font-size: 0.75em;
}
#form .confirm_box li {
    margin-bottom: 20px !important;
    padding-bottom: 4px;
    border-bottom: 1px dotted #be9d8e;
}
#form .form_ttl {
    margin: 20px 0 10px;
    padding: 0 10px 0;
    border-bottom: 1px solid #362107;
    font-weight: bold;
    display: inline-block;
}
#form .form_txt {
    color: #684332;
}
#form .btn_color {
    margin-bottom: 40px;
    padding-top: 20px;
    border-top: 1px solid #362107;
}
#form .btn_color a {
    width: 200px;
}
#form .btn_color .i_tel {
    width: 380px;
    margin-bottom: 20px;
    padding: 14px 10px 14px 90px;
    font-size: 13px;
}
#form .btn_color .i_tel .fr {
    padding-top: 15px;
}
#form .btn_color .i_line {
    padding: 25px 10px 26px 20px;
}
#form .form_comment {
    color: #be9d8e;
    font-weight: bold;
}
#form .form_box form button {
    color: #be9d8e;
    text-decoration: underline;
}
#form .form_box ul li {
    border-bottom: 1px dotted #d6d6d6;
    padding: 30px 0 25px;
    margin-bottom: 5px;
}
.form_reset {
    -webkit-appearance: none;
    border: none;
    background:none;
}
.btn_type_01 {
    max-width: 300px;
    -webkit-transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, -webkit-transform 0.3s;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
    width: 100%;
    padding: 11px 10px 8px;
    display: block;
    background: #ff93aa;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    box-shadow: 0 2px 0 #e66983, 0 4px 0 rgba(0,0,0,0.2);
    color: #fff;
    text-align: center;
    position: relative;
    margin: 0 auto 10px;
}
.btn_type_01:hover {
    box-shadow: 0 2px 0 #ff6095, 0 4px 0px rgba(0,0,0,0.2);
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px);
    background: #ffabbd;
}
.btn_type_01:after {
    content: " \f101";
    font-family: FontAwesome;
    position: absolute;
    right: 20px;
}

.btn_type_02 {
    max-width: 300px;
    -webkit-transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, -webkit-transform 0.3s;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
    width: 100%;
    padding: 11px 10px 8px;
    display: block;
    background: #ff701a;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    box-shadow: 0 2px 0 #e45600, 0 4px 0 rgba(0,0,0,0.2);
    color: #fff;
    text-align: center;
    position: relative;
    margin: 0 auto 10px;
}
.btn_type_02:hover {
    box-shadow: 0 2px 0 #e45600, 0 4px 0px rgba(0,0,0,0.2);
    -webkit-transform: translateY(-1px);
    transform: translateY(-1px);
    background: #ff9656;
}
.btn_type_02:after {
    content: " \f101";
    font-family: FontAwesome;
    position: absolute;
    right: 20px;
}
#form_top .label_custom label {
    display: block;
    text-align: left;
    background: #dadada;
    padding: 10px;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    margin-bottom: 10px;
}
#form_top .label_custom input {
    width:25px;
    float: left;
}
.btn_entry_tel {
    width: 100%;
    max-width: 400px;
    line-height: 35px;
    font-size: 14px;
    letter-spacing: 0.10em;
    display: block;
    border-radius: 2px;
    font-weight: bold;
    position: relative;
    text-align: left;
    padding-left: 55px;
    border: 1px solid #bdbdbd;
    color: #3c3c3c;
}
.btn_entry_tel i {
    font-size: 16px;
    left: 0;
    position: absolute;
    top: 0;
    bottom: auto;
    line-height: 35px;
    width: 40px;
    background: #414443;
    color: #fff;
}


/*---------------------------
ヘッダー
----------------------------*/
header {
    width: 100%;
    position: fixed;
    z-index: 10999;
    background: url(../images/bg_block.jpg);
}
header.sticky{
    opacity: 1;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    /* background: rgba(255,255,255,1); */
}
header h1{
    width: auto;
    /* margin: auto; */
}
header .inner {
    padding: 0;
    position:relative;
}
header .area{
    /* height: 80px; */
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
header .inner ul.header_nav li,
header .inner ul.header_nav{
    width: auto;
    margin: auto 80px auto auto;
    /* color: #f99ba0; */
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    letter-spacing: 0;
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    text-shadow: 0 0 5px #38003a, 0 0 5px #38003a, 0 0 5px #38003a;
    font-family: "Roboto" , "futura PT" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
}

.header_nav a{
    width: 80px;
    display: block;
    position:relative;
    color: #fff;
}
.header_nav a.active{
    /* opacity: 0.7; */
    color: #c3c3c3;
}
.header_nav a span.en{
  display: block;
}
/*.header_nav a span.en{
  display: inline;
}
/*.header_nav a span.en{
  display: inline;
}
.header_nav a:hover span.en{
  display: none;
}
.header_nav a span.jp {
  display: none;
}
.header_nav a:hover span.jp{
  display: inline;
  }*/

  header .inner .logo{
    display: flex;
    align-items: flex-start;
    /* visibility: hidden; */
    margin: 10px 10px 15px;
}
header.sticky .inner .logo{
    /* visibility: inherit; */
}
header .inner .logo img{
    max-width: 180px;
}
header .inner ul.header_nav{
    /* display: none; */
}
header.sticky .inner ul.header_nav{
    /* display: inherit; */
}
header .inner ul.header_nav li{
    margin: auto 10px;
}
header a{
    color: #fff;
}
header a:hover{
    opacity: 0.8
}
/*---------------------------
ヘッドライン
----------------------------*/
.slick_headline{
  background: #fff;
  text-align: center;
  padding: 10px;
  font-size: 16px;
  border-bottom: 1px solid #d2d2d2;
}
/*---------------------------
営業・受付時間
----------------------------*/
.middle_info{
  margin: 0 auto;
  padding: 10px;
  text-align: justify;
  color: #000;
  background: #4e1a0e;
  text-shadow: 0 0 5px #50170b, 0 0 5px #50170b, 0 0 5px #50170b;
}
.middle_info a{
  color: #fff;
}
.middle_info .middle_info_area{
  line-height: 24px;
  font-size: 28px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  align-items: center;
  margin: 0 auto;
  max-width: 1024px;
  width: 100%;
  font-family: "Roboto", Garamond, "Times New Roman", 游明朝, "Yu Mincho", 游明朝体, YuMincho, "ヒラギノ明朝 Pro W3", "Noto Serif JP", "Hiragino Mincho Pro", HiraMinProN-W3, HGS明朝E, "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.middle_info .middle_info_area p{
  margin: 5px;
  /* flex-grow: 1; */
  text-align: center;
  /* background: #fff; */
  padding: 10px;
  position:relative;
}
.middle_info .middle_info_area p span {
    font-size:14px;
}

/*---------------------------
電話番号 web予約
----------------------------*/
.middle_nav{
    background: #151515;
    padding: 10px 0;
    margin-bottom: 20px;
}
.middle_nav ul{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    text-align: justify;
    justify-content: center;
    align-items: center;
    text-align: center;
    text-shadow: black 1px 1px 10px, black -1px 1px 10px, black 1px -1px 10px, black -1px -1px 10px;
    text-shadow: black 1px 1px 10px, black -1px 1px 10px, black 1px -1px 10px, black -1px -1px 10px;
}
.middle_nav ul li{
    width: 50%;
    font-size: 20px;
    padding: 8px 5px;
}
.middle_nav ul li:first-child{
    border-right: 1px solid #555555;
}

/*---------------------------
メイン画像
----------------------------*/
.mainvisual_wrap{
    background: #fff;
    position: relative;
    z-index: 10000;
}
.mainvisual_inner{
    padding:0;
}
#mainvisual{
    width: 100%;
    margin: 0 auto 0;
    /* position: relative; */
    /* z-index: 9000; */
}
#mainvisual li.no01 .mainvisual_photo{
    background: url(../images/mainvisual01.jpg) center 70px no-repeat;
    background-size: cover;
    height: 100vh;
}
#mainvisual li.no02 .mainvisual_photo{
    background: url(../images/mainvisual02.jpg) left bottom no-repeat;
    background-size: cover;
    height: 100vh;
}

.mainvisual_txt{
    bottom: 20%;
    left: 5%;
    /* right: 0; */
    z-index: 89999;
    margin: auto;
    position: absolute;
    width: 100%;
    max-width: 500px;
    display: flex;
    background: #fff;
    padding: 10px;
}
.mainvisual_txt02{
    bottom: 0;
    left: 0;
    right: 0;
    /* top: 0; */
    z-index: 89999;
    margin: auto;
    position: absolute;
    width: 100%;
    max-width: 700px;
    height: 170px;
    display: flex;
    padding: 10px;
}
.mainvisual_txt03{
    display: none;
}

/*下層ページ*/
.other_page_top{
 top: 38%;
 bottom: 0;
 right: 0;
 z-index: 999;
 position: absolute;
 left: 0;
 height: 80px;
}
.other_page_title {
 /* margin: auto; */
 width: 100%;
 margin-left: 15px;
 height: 50px;
 padding: 0;
 text-align: center;
 font-size: 50px;
 font-weight: bold;
 letter-spacing: 0.7em;
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 text-shadow: 0 0 5px #602417, 0 0 5px #602417, 0 0 5px #602417;
 font-family: "Roboto" , "futura PT" , "Garamond" , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
}
.other_page_title:first-letter {
    font-size: 41px;
}
.other_page_title p.t_bottom span{
    font-size: 15px;
    margin-left: 5px;
}
.other_page .inner{
    padding: 0 20px;
    max-width: 768px;
}
.other_page.other_page_top{
    padding: 0 0 10px 0;
}
.page_top_outer {
    position: relative;
    padding: 0;
    margin: 70px 0 0 0;
}
.page_top {
    padding: 0;
    -moz-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    text-align: center;
    height: 300px;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 1;
    left: 0;
    top: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center 50%;
    /* background: rgba(24,0,0,0.4); */
}
.page_top img {
    margin: 0 auto;
    width: 100%;
}
/*------------------------------
バナー
-------------------------------*/
.bnr_area{
    padding:40px 0!important;
    background-size: cover;
    background-attachment: fixed;
}
.bnr_box a{
    display: block;
}
.bnr_box{
    text-align:center;
    display: flex;
    flex-wrap:wrap;
    text-align: justify;
    justify-content: space-between;
    align-items: center;
}
.bnr_box_inner{
    max-width: 1024px;
    margin: auto;
}
/*1列*/
.bnr_col_1{
    width:100%;
}
/*2列*/
.bnr_col_2{
    width: 48.5%;
    text-align:center;
}
.bnr_col_2 img,
.bnr_col_3 img,
.bnr_col_4 img{
    max-width: 100%;
}
.bnr_col_2.lg img,
.bnr_col_3.lg img,
.bnr_col_4.lg img{
    max-width: 100%;
}
.bnr_col_2:nth-last-child(-n+2){
}
/*3列*/
.bnr_col_3{
    width: 32%;
}

.bnr_col_3:nth-child(1){
  transition-delay: .1s;
}
.bnr_col_3:nth-child(2){
  transition-delay: .3s;
}
.bnr_col_3:nth-child(3){
  transition-delay: .6s;
}
.bnr_col_3:nth-child(4){
  transition-delay: .9s;
}

/*------------------------------
ツイッター
-------------------------------*/
#twitter{
    /* background: #fdf5f8; */
}
#twitter .inner{
    max-width:700px;
}

/*------------------------------
料金面
-------------------------------*/
.system_price{
    padding: 20px;
    background: url(../images/bg_system.jpg) center top no-repeat;
    background-size: cover;
}
.system_price_inner{
    padding: 15px;
    background: #fff;
    outline-offset: 2px;
}

.table_collum_system {
    width: 100%;
    margin: 0 auto 10px;
    text-align: center;
    table-layout: fixed;
    font-family: "Roboto" , "futura PT" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
}
.table_collum_system .atten_txt{
    text-align: center;
    /* border:1px solid #3c3c3c; */
    border: 3px double #610000;
}
.table_collum_system input{
    border: 1px solid #e0e0e0;
}
.table_collum_system tr {
    margin-bottom: 10px;
}
.table_collum_system tr.check_list input{
    width: auto;
}
.table_collum_system .system_top th{
    border-bottom: 1px solid #3c3c3c;
}
.table_collum_system th,
.table_collum_system td {
    padding: 10px;
    vertical-align: middle;
    border-bottom: 1px solid #3c3c3c;
    text-shadow: 0 0 10px #fff;
}
.table_collum_system th {
    font-size: 25px;
    padding: 20px 10px;
    color: #4d4d4d;
    vertical-align: middle;
    color: #3c3c3c;
}
.table_collum_system td {
    font-size: 25px;
    color: #3c3c3c;
}
.table_collum_system tr:last-child th,
.table_collum_system tr:last-child td {
    /* border-bottom: none; */
}
.table_collum_system th span,
.table_collum_system td span{
    font-size: 15px;
}
.table_collum_system td a{
    color: #000;
}
.table_collum_system .table_system_karaoke {
    line-height: 1.2;
    font-size: 22px;
}
.table_collum_system .requier {
    border-radius: 2px;
    background: #bd0101;
    color: #fff;
    font-size: 0.6em;
    letter-spacing: 1px;
    padding: 4px 12px;
}

/*------------------------------
アクセス
-------------------------------*/
.access_swich_btn{
    background: #de970e;
    color: #fff;
    border-radius: 20px;
    max-width: 70%;
    margin: auto auto 20px;
    padding: 8px 4px;
}
/*------------------------------
QA
-------------------------------*/
#qa h4{
    color: #e40029;
    background: #fff6e3;
    font-weight: bold;
    text-align: left;
    border-bottom: 1px solid #deceab;
    margin-bottom: 0;
    padding: 15px 25px 15px 15px;
    font-size: 18px;
    position: relative;
}
#qa article p{
    text-align: left;
    margin-bottom: 20px;
    font-weight: bold;
    color: #4a4a4a;
    padding: 25px 15px;
    background: #fff;
}
#qa p span{
    color: #f6634a;
}
#qa h4:after{
    content: "\f106";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    right: 5%;
}
#qa h4.open:after{
    content: "\f107";
}

/* icon */
#qa h4::before,
#qa h4::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
  height: 2px;
  width: 12px;
  background-color: #715c2e;
  transition: all .1s ease-out;
}

#qa h4::after {
  transform: rotate(90deg);
}

#qa h4.open::after {
  opacity: 0;
  transform: rotate(0);
}

/*--------------------
infomation
---------------------*/
#infomation{
    margin: 0 0 20px;
}
.infomation_inner{
    max-width: 940px;
    margin:auto;
}
#infomation p.open{
    padding: 3px 0;
    border: 1px solid #ec6767;
    border-bottom: none;
}
.btn_base{
    width: 90%;
    max-width: 500px;
    margin-bottom: 10px;
    display: inline-block;
    text-align: left;
}
.btn_base a{
    padding: 10px 20px;
    display: block;
    color: #fff;
    line-height: 20px;
    position: relative;
}
.btn_base a:hover{
    opacity: 0.7;
}
.btn_base a:after{
  position: absolute;
  top: 35%;
  right: 5%;
  font-family: FontAwesome;
  content: "\f0a9";
}
.info_tel{
    background: #f599a1;
    box-shadow: 0 2px 0 #cc6b73;
}
.info_tel{
  position: relative;
  padding-left: 30px;
}
.info_tel:before{
  position: absolute;
  top: 18%;
  left: 20px;
  font-family: FontAwesome;
  content: "\f095";
  color:  #fff;
  font-size: 25px;
}
.info_line{
    background: #57bd57;
    box-shadow: 0 2px 0 #44a044;
}
.info_line{
  position: relative;
  padding-left: 30px;
}
.info_line:before{
  position: absolute;
  top: 24%;
  left: 12px;
  content: url(../images/i_line.png);
}
.info_mail{
    background: #eca055;
    padding: 10px 0;
    box-shadow: 0 2px 0 #dc9753;
}
.info_mail{
  position: relative;
  padding-left: 30px;
}
.info_mail:before{
    position: absolute;
    top: 20%;
    left: 18px;
    font-family: FontAwesome;
    content: "\f0e0";
    color: #fff;
    font-size: 22px;
}
.info_mail_02{
    width: 100%;
    max-width: 940px;
    margin-bottom: 20px;
    display: inline-block;
    text-align: left;
    background: #e78b31;
    padding: 10px 0;
    position: relative;
}
.info_mail_02:after{
    content: "";
    position: absolute;
    background: #e78b31;
    width: 10px;
    height: 10px;
    left: 50%;
    /* right: auto; */
    margin: auto;
    bottom: -5px;
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
}
.info_mail_02 a{
    padding: 10px 20px;
    display: block;
    color: #fff;
    line-height: 20px;
    position: relative;
    text-align: center;
}


/*-------------------------
フッター
-------------------------*/
footer {
    padding: 100px 0;
    color: #3c3c3c;
    position:relative;
    background: url(../images/bg_block.jpg) 0 0;
    font-family: "Roboto" , "futura PT", Garamond, "Times New Roman", 游明朝, "Yu Mincho", 游明朝体, YuMincho, "ヒラギノ明朝 Pro W3", "Noto Serif JP", "Hiragino Mincho Pro", HiraMinProN-W3, HGS明朝E, "ＭＳ Ｐ明朝", "Noto Serif JP", "MS PMincho", serif;
}
footer p {
    text-align: center;
    color: #fff;
    text-shadow: 0 0 10px black;
}
footer a{
  color: #fff;
}
footer a:hover{
    opacity: 0.9;
}
footer a.active{
  color: #d8d8d8;
}

.footer_nav{
    display:none;
}
.footer_link a{
    margin: 1%;
    width: 48%;
    /* color: #3c3c3c; */
    text-shadow: 0 0 10px black;
}
.footer_content{
    height: 200px;
    background: url(../images/footer_content.jpg) center 50%;
    background-size: cover;
}

.seo{
    color: #3c3c3c
}

.copy {
    background: #fff;
    padding: 10px;
    text-align: center;
}


.btn_footer_01 {
    box-sizing: border-box;
    font-size: 12px;
    text-align: center;
    width: 100%;
    border-radius: 2px;
    color: #fff;
    background: #c98f64;
    box-shadow: 0px 3px 0px 0px #b47648;
}
.btn_footer_02 {
    box-sizing: border-box;
    font-size: 12px;
    text-align: center;
    width: 100%;
    color: #fff;
    /* background: #7fa2f8; */
    /* box-shadow: 0px 3px 0px 0px #4f78df; */
}
.btn_footer_03 {
    box-sizing: border-box;
    font-size: 12px;
    text-align: center;
    width: 100%;
    color: #fff;
    background: #64c975;
    box-shadow: 0px 3px 0px 0px #3aa74d;
}
.btn_footer_04 {
    box-sizing: border-box;
    font-size: 12px;
    text-align: center;
    width: 100%;
    color: #fff;
    /* background: #00c300; */
    /* box-shadow: 0px 3px 0px 0px #04a904; */
}
.btn_entry {
    box-sizing: border-box;
    font-size: 14px;
    color: #0035ac;
    text-align: center;
    border-radius: 2px;
}

/*--------------------------------------------
  イベント
  --------------------------------------------*/
  .event_content img{
    width:100%;
    max-width:500px;
}

/*--------------------------------------------
  求人バナー
  --------------------------------------------*/
#section_bnr_recruit .inner{
    max-width:768px;
}
#section_bnr_recruit .inner ul{
    display: flex;
    justify-content: space-between;
    /* flex-wrap: wrap; */
}
#section_bnr_recruit .inner ul li{
    width: 48%;
}

/*--------------------------------------------
  新着情報
  --------------------------------------------*/
  #section_topics{
    background: #fff url(../images/bg_block.jpg) center top repeat;
}

#section_topics .inner{
    max-width:768px;
}

#section_topics .info_box{
    background: #fff;
    color: #3c3c3c;
    padding: 40px;
    margin: auto;
    overflow: hidden;
}
#section_topics .info_box article{
    margin: 0 auto 20px;
    word-break: break-all;
}
#section_topics .info_box article img,
#top_topics article img{
 max-width:100%;
 height: auto!important;
}
#top_topics .top_topics_box article{
    background: #fff;
    padding: 20px;
}
.topics_inner{
    max-height: 590px;
    overflow-y: scroll;
    padding: 10px;
    margin-bottom: 20px;
}
.topicsdata{
    margin-top: 10px;
}
/* icon */
#section_topics h3{
    position:relative;
    padding: 10px 0;
    border-top: 1px solid;
    border-bottom: 1px solid;
    text-align: left;
    padding-left: 20px;
}
/*#section_topics h3::before,
#section_topics h3::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
  height: 2px;
  width: 12px;
  background-color: #610000;
  transition: all .1s ease-out;
}

#section_topics h3::after {
  transform: rotate(90deg);
}

#section_topics h3.open::after {
  opacity: 0;
  transform: rotate(0);
  }*/

/*--------------------------------------------
  リンクページ
  --------------------------------------------*/
  #contents_link {
    position: relative;
}
#contents_link a {
    color: #b29763;
}
.list_link_box {
    padding: 10px;
    font-size: 11px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.list_link_box li {
    margin: 10px;
}
/*--------------------------------------------
  お問い合わせ フォーム系
  --------------------------------------------*/
  button, select {
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #e0e0e0;
    -webkit-appearance: none;
}
textarea{
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    border: none;
    background: #fff;
    border: 1px solid #e0e0e0;
    padding: 20px;
    width: 100%;
}
select {
    border-radius: 0px;
    color: rgba(0, 0, 0, 0.51);
    font-size: 14px;
    text-align: left;
    vertical-align: middle;
    width: 100%;
    padding: 15px;
    background: #fff;
    /* border: none; */
}
input[type=radio], input[type=checkbox] {
    display: none;
}
#contents_form input {
    /* padding: 15px; */
    /* width: 100%; */
    /* border: none; */
    /* border: 1px solid #000; */
    /* color: #000; */
    /* text-shadow: none; */
    /* box-shadow: none; */
    /* border: 1px solid #000; */
    /* background: #fff; */
}
#contents_form .pia input {
    width: 30px;
}
#contents_form input[type=radio], #contents_form input[type=checkbox] {
    display: inline;
    background: #eee;
    padding: 5px 10px;
    margin: 3px;
}
#contents_form .check_list input[type=radio], #contents_form .check_list input[type=checkbox] {
    width: 30px;
    /* float: left; */
}
#contents_form label {
    display: block;
    text-align: left;
    border: 1px solid #e0e0e0;
    padding: 10px;
    line-height: 22px;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    margin-bottom: 10px;
    background: #fff;
}
#contents_form label:hover{
    opacity: 0.8;
}
.btn_positive {
    max-width: 500px;
    width: 100%;
    padding: 15px;
    display: block;
    background: none;
    border: 1px solid #fff;
    color: #fff;
    text-align: center;
    position: relative;
    margin: 0 auto 10px;
    box-shadow: 0 0 5px #400703;
}
.btn_positive:hover {
    transition: .8s;
    opacity: 0.5;
}
.btn_negative {
    max-width: 400px;
    width: 100%;
    padding: 8px 10px 8px;
    display: block;
    background: none;
    border-bottom: 1px solid #fff;
    color: #fff;
    text-align: center;
    position: relative;
    margin: 0 auto 10px;
}
.btn_negative:hover {
    transition: .8s;
    opacity: 0.5;
}

.recruit_label{
    display: flex;
    flex-wrap: wrap;
}
.recruit_label span{
    color: #fff;
    padding: 10px;
    margin: 8px;
    border: 1px solid #ec4d5b;
    padding: 5px 15px;
    letter-spacing: 0.05em;
    color: #ec4d5b;
    margin: 0 4px 10px;
}
.table_collum_recruit {
    width: 100%;
    margin: 0 auto 40px;
    text-align: center;
    table-layout: fixed;
}
.table_collum_recruit input{
    border: 1px solid #e0e0e0;
}
.table_collum_recruit tr {
    margin-bottom: 30px;
}
.table_collum_recruit tr.check_list input{
    width: auto;
}
.table_collum_recruit th,
.table_collum_recruit td {
    padding: 20px;
    vertical-align: middle;
}
.table_collum_recruit th {
    text-align: left;
    padding: 20px;
    color: #fff;
    vertical-align: top;
    width: 30%;
    border-right: 1px dotted #b1b1b1;
    font-size: 18px;
    vertical-align: top;
}
.table_collum_recruit td {
    text-align: left;
    background: rgba(255,255,255,1);
    color: #3c3c3c;
}
.table_collum_recruit .requier {
    border-radius: 2px;
    background: #bd0101;
    color: #fff;
    font-size: 0.6em;
    letter-spacing: 1px;
    padding: 4px 12px;
}

.reruit_btn_tel{
    width: 100%;
    max-width: 450px;
    margin: auto;
    display: block;
    padding: 10px;
    /* border-radius: 50px; */
    text-align: center;
    background: #820000;
    color: #fff!important;
    font-size: 14px;
}
.reruit_btn_tel a{
    color: #fff;
}

.reruit_btn_mail{
    width: 100%;
    max-width: 450px;
    margin: auto;
    display: block;
    padding: 10px;
    /* border-radius: 50px; */
    text-align: center;
    background: #927211;
    font-size: 14px;
    color: #fff!important;
}

.reruit_btn_line{
    width: 100%;
    max-width: 450px;
    margin: auto;
    display: block;
    padding: 10px;
    /* border-radius: 50px; */
    text-align: center;
    background: #00ac36;
    color: #fff!important;
}

/*--------------------------
QA
---------------------------*/
.atten_line {
    background: linear-gradient(transparent 70%, #fdbdc5 70%);
}
.qa h4{
    color: #e14277;
    background:  #ffeff4;
    font-weight: bold;
    text-align: left;
    border-bottom: 1px dotted #e14277;
    margin-bottom: 0;
    padding: 15px;
    position: relative;
}
.qa article p{
    text-align: left;
    margin-bottom: 20px;
    font-weight: bold;
    color: #4a4a4a;
    padding: 15px 15px 0;
}
.qa p span{
    color: #f6634a;
}
.qa h4:after{
    content: "\f106";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    right: 5%;
}
.qa h4.open:after{
    content: "\f107";
}


/*--------------------------
1200px以下の場合
---------------------------*/
@media screen and (max-width:1200px) {
    header .inner ul.header_nav li,
    header .inner ul.header_nav{
        font-size: 12px;
    }
}
/*--------------------------
1024px以下の場合
---------------------------*/
@media screen and (max-width:1024px) {

/*------------------------------
ヘッダー
-------------------------------*/
header .inner ul.header_nav li {
    margin: auto 5px;
    /* font-size:10px; */
}
.header_nav a {
    width: 80px;
}
.shop{
  display: block;
}
footer {
  padding: 99px 0 100px;
}

/*フッターナビ用*/
.footer_nav {
    width: 100%;
    max-width: 1200px;
    margin: 5px auto 0;
    padding: 5px;
    box-sizing: border-box;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    display: none;
    font-family: "Roboto" , "futura PT" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
}
.footer_nav.lock {
    display: flex;
    justify-content: space-around;
    align-items: center;
}
.footer_nav p{
    text-align: center;
    flex-grow: 1;
    margin: 5px;
    padding: 5px 5px  5px;
    background: rgba(109,31,20,1);
    box-shadow: 0px 3px 0px 0px #480000;
}
.footer_nav a{
    display: block;
    line-height: 40px;
    border-radius: 2px;
}
.footer_nav p:last-child{
    border-right: 0;
}
.btn_nav_entry {
    height: 40px;
    line-height: 40px;
    background-color: rgb(192, 27, 70);
    box-sizing: border-box;
    font-size: 14px;
    color: #ffffff;
    text-align: center;
}
.btn_nav_entry_line {
    height: 40px;
    line-height: 40px;
    background-color: rgb(36, 141, 37);
    box-sizing: border-box;
    font-size: 14px;
    color: #ffffff;
    text-align: center;
}
.btn_nav_entry_line img {
    width: 20px;
    margin-bottom: 11px;
}
.btn_nav_tel {
    height: 40px;
    line-height: 40px;
    background-color: rgb(192, 27, 70);
    box-sizing: border-box;
    font-size: 14px;
    color: #ffffff;
    text-align: center;
    width: 100%;
}
.btn_nav_tel img{
    height: 40px;
    line-height: 40px;
    background-color: rgb(192, 27, 70);
    box-sizing: border-box;
    font-size: 14px;
    color: #ffffff;
    text-align: center;
    width: 40%;
    margin-right: 2%;
    border-bottom: 3px solid #b30404;
}

}

/*--------------------------
768px以下の場合
---------------------------*/
@media screen and (max-width:768px) {
    /*--------------------------
    共通スタイル
    ---------------------------*/
    body{
        /* font-size: 12px; */
    }
    header .inner ul.header_nav{
        display: none;
    }
    header.sticky .inner ul.header_nav {
        display: none;
    }
    .btn_menu {
        top: 15px;
    }
    h1{
        text-align:center;
    }
    header h1 {
      margin: 0;
  }
  .inner {
      padding: 0 20px;
  }
  .no_2,.no_3{
      font-size: 16px;
  }
  .page_top {
      max-height: 210px;
  }

  .mb_20_sp {
      margin-bottom: 20px;
  }
  .mb_40_pc{
      margin-bottom: 0;
  }
  #contents_form .table_collum_02 tr{
    display: block;
    width: 100%;
}
#contents_form .table_collum_02 th,
#contents_form .table_collum_02 td{
    display: block;
    width: 100%;
}
#contents_form .table_collum_02 td{
    border-bottom: 0;
}
.footer_link{
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  font-family: "Roboto" , "futura PT" , "Times New Roman" , "Garamond" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Noto Serif JP" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" ,"Noto Serif JP" , "MS PMincho" , "serif";
}
    /*--------------------------
    タイトル
    ---------------------------*/
    .subtitle {
        margin: 0 auto 10px;
        justify-content: start;
        text-align: left;
        border-left: 3px solid #fff;
        padding-left: 10px;
    }
    .subtitle_02 {
        margin: 0 auto 10px;
        justify-content: start;
        text-align: left;
    }

    /*--------------------------
    テンプレートボックス
    ---------------------------*/
    .template_photo{
        width:100%;
        order: 1;
        margin-bottom: 15px;
        text-align: center;
    }
    .template_box{
        margin-right: 0px;
        margin: 0 auto 20px;
    }
    .template_box > div:first-child {
        margin-right: 0px;
    }
    .template_text{
        width:100%;
        order: 2;
    }
    .content_colorbox {
        padding: 10px;
    }
    .col_2 , .col_3 , .col_4 ,.col_5 {
        width: 100%;
    }
    .col_3:last-child{
        margin-bottom: 00px;
    }
    .col_4:nth-last-child(-n+4) {
        margin-bottom: 20px;
    }
    .recruit_txt, .recruit_txt02 {
        position: static;
        padding: 30px 20px;
    }
    .recruit_txt{
        margin: 0 auto 20px;
    }
    .recruit_txt02{
        margin: 0;
    }
    .recruit_photo,.recruit_photo02 {
        margin-bottom: 10px;
        position: static;
    }
    .recruit_box.no_01{
        /* margin-bottom: 0px; */
    }
    .recruit_box.no_02{
        margin-bottom: 0px;
    }
    .recruit_box.no_03{
        margin-bottom: 0px;
    }
    .bnr_box_inner{
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 20px 20px;
    }
    .bnr_box_content {
        width: 100%;
    }
    /*---------------------------
    トップページ
    ---------------------------*/
    .middle_info {
        padding: 5px;
    }
    .middle_info .middle_info_area {
        padding: 0;
        font-size: 20px;
    }

    /*---------------------------
    バナー
    ---------------------------*/
    section.bnr_box{
        max-width: 1200px;
        margin: 0;
        /* padding: 0!important; */
    }
    /*1列*/
    .bnr_col_1{
        width:100%;
    }
    /*2列*/
    .bnr_col_2{
        width:100%;
        text-align:center;
    }
    .bnr_col_2 img,
    .bnr_col_3 img,
    .bnr_col_4 img{
        max-width: 100%;
    }
    .bnr_col_2.lg img,
    .bnr_col_3.lg img,
    .bnr_col_4.lg img{
        max-width: 100%;
    }
    /*3列*/
    .bnr_col_3{
        width:100%;
        text-align:center;
        margin: 0 0 20px;
    }
    .bnr_col_3:last-child{
        margin: 0;
    }
    /*一部分だけ1列にする*/
    .bnr_col_3.width_50{
        width:100%;
    }
    /*一部分だけ2列にする*/
    .bnr_col_3.width_50{
        width:50%;
    }
    /*---------------------------
    料金表
    ---------------------------*/
    .template_system dl {
        width: 100%;
        margin-bottom: 20px;
        padding: 40px 20px;
    }
    .template_system dl:last-child{
        margin-bottom: 0;
    }

}

/*--------------------------
500px以下の場合
---------------------------*/
@media screen and (max-width: 500px) {
     /*---------------------------
    共有
    ---------------------------*/
    .loader-wrap {
        align-items: center;
        justify-content: center;
    }
    h2{
        background-size: 650px;
    }
    h3{
        font-size:16px;
    }
    section {
        padding: 30px 0;
    }
    header.sticky {
        /* background: none; */
    }
    footer {
        padding: 20px 0 20px;
    }
    .footer_content{
        height: 100px;
    }
    main {
        min-height: auto;
        /* padding-top: 70px; */
    }
    main.other{
        min-height: auto;
        padding-top: 90px;
    }
    main section:last-child {
        padding: 30px 0 10px 0;
    }

    .inner {
        /* padding: 0 10px; */
    }
    .pc_none{
        display: none;
    }
    .sp_none{
        display: block;
    }

    .table_collum_02 th span.large, .table_collum_02 td span.large {
        font-size: 20px;
    }

    #nav_drawer {
        min-width: 100%;
    }
    .template_box {
        margin: 0 auto 20px;
    }
    .subtitle_02 .en {
        font-size: 25px;
    }
    .subtitle_02 .ja {
        font-size: 15px;
    }
    .subtitle_03 {
        margin-bottom: 10px;
        font-size: 18px;
        /* line-height: 31px; */
        padding: 5px 15px 3px 15px;
    }
    .table_collum_02 {
        margin: 0 auto 10px;
    }
     /*---------------------------
    下層ページ用
    ---------------------------*/
    .other_page_top {
        top: 30%;
    }
    .other_page_title {
        font-size: 25px;
    }
    .other_page .inner {
        padding: 10px 20px;
    }
     /*---------------------------
    トップページ
    ---------------------------*/

    .pankuzu {
        padding: 0;
    }

    #section_bnr_recruit .inner ul li{
        width: 90%;
        margin: 5px auto;
    }

    #section_topics .info_box {
        padding: 10px;
        /*         max-height: 400px;*/
    }
    #section_topics .info_box article img{
        max-width:100%;
        height: auto;
    }

    #section_event {
        padding: 30px;
    }
    #section_event .inner{
        padding: 0;
    }

    section.middole_bnr{
        padding: 0;
    }
    #section_concept {
        /* padding: 10px 0; */
    }

    #mainvisual li.no01 .mainvisual_photo {
        height: 50vh;
    }

     /*---------------------------
    ヘッダー
    ---------------------------*/
    header .inner .logo img{
    }
    header .area {
        /* height: 70px; */
    }
    .middle_nav ul li{
        font-size: 16px;
    }
    .middle_info .middle_info_area p {
        margin: 5px 0;
        /* font-size: 16px; */
        /* width: 100%; */
    }
    #twitter{
        overflow: hidden;
    }
    #drawer .menu-bg.top {
        left: -23%;
        top: -103px;
        transform: rotate(-45deg) translateY(-152%);
    }
    .mainvisual_txt02 {
        height: 100px;

    }
     /*---------------------------
    フッター
    ---------------------------*/
    .copy {
        background: #fff;
        padding: 30px 10px 80px;
    }
    /*------------------------------
    テンプレート
    -------------------------------*/
    .table_collum_03 th, .table_collum_03 td {
        padding: 10px 5px;
    }
    .table_collum_03 th, .table_collum_03 td {
        padding: 10px 5px;
    }
    .table_collum_03 .txt {
        text-align: left;
    }
    .content_borderbox {
        padding: 20px 0;
        margin: 0 auto 20px;
        padding: 0;
    }
    .bnr_area {
        padding: 0px 0!important;
        background: none;
    }
    .template_bnr_btn {
        padding: 10px;
    }
    .col_2 img, .col_3 img, .col_4 img {
        /* max-width: 300px; */
    }
    /*--------------------------------------------
      システム
      --------------------------------------------*/
      .table_collum_system th,
      .table_collum_system td {
        padding: 10px;
    }
    .table_collum_system th {
        font-size: 17px;
        width: 65%;
        text-align: left;
    }
    .table_collum_system td {
        font-size: 20px;
        text-align:right;
    }
    .system_price_inner .table_system_karaoke {
        font-size: 18px;
    }
    /*--------------------------------------------
      アクセス
      --------------------------------------------*/
      iframe.access_map{
        height: 300px;
    }
    /*--------------------------------------------
      求人
      --------------------------------------------*/
      .table_collum_recruit th,
      .table_collum_recruit td {
        display: block;
        width: 100%;
        border: none;
    }
    .table_collum_recruit th {
        border-left: 3px solid #fff;
        padding: 5px 10px;
    }
    .table_collum_recruit td {
        padding: 10px;
        margin-bottom: 10px;
    }
    .recruit_label span {
        width: 47%;
        display: flex;
        align-items: center;
    }
    /*--------------------------------------------
      リンク
      --------------------------------------------*/
      .link_banner{
        display: none;
    }
}


/*slick.css*/
.slick-next,.slick-prev{/* font-size:0; */line-height: 25px;position:absolute;/* top:50%; */display:block;width:20px;line-height: 40px;padding:0;-webkit-transform:translate(0,-50%);-ms-transform:translate(0,-50%);transform:translate(0,-50%);cursor:pointer;border:0;}.slick-next,.slick-next:focus,.slick-next:hover,.slick-prev,.slick-prev:focus,.slick-prev:hover{/* color:transparent; *//* outline:0; */background:auto;}.slick-next:focus:before,.slick-next:hover:before,.slick-prev:focus:before,.slick-prev:hover:before{opacity:1}.slick-next.slick-disabled:before,.slick-prev.slick-disabled:before{opacity:.25}.slick-next:before,.slick-prev:before{font-family:slick;font-size:20px;line-height: 1;opacity:.75;color: #3c3c3c;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.slick-prev{left: 5px;bottom: -70px;z-index: 9999;width: 45%;background: #f4f4f4;color: #3c3c3c;text-align: center;}[dir='rtl'] .slick-prev{right:-25px;left:auto}.slick-prev:before{content:'←';top: 8px;left: 30px;position: absolute;}[dir='rtl'] .slick-prev:before{content:'→'}.slick-next{right: 5px;bottom: -70px;z-index: 9999;width: 45%;text-align: center;background: #f4f4f4;color: #3c3c3c;}[dir='rtl'] .slick-next{right:auto;left:-25px}.slick-next:before{display:none;content:'→'}[dir='rtl'] .slick-next:before{content:'←'}.slick-dotted.slick-slider{margin-bottom:30px}.slick-dots{position:absolute;bottom: -66px;/* left: -7px; *//* display:block; */width:100%;/* height: 30px; */padding:0;margin:0;list-style:none;text-align:center;display: flex;justify-content: center;align-items: center;}.slick-dots li{position:relative;/* display:inline-block; *//* margin:0 5px; */padding:0;/* width: 20px; *//* height: 20px; */}.slick-dots li,.slick-dots li button{/* width: 20px; *//* height: 20px; */cursor:pointer;}.slick-dots li button{font-size:0;line-height:0;display:block;padding: 10px 15px;color:transparent;border:0;outline:0;background:transparent;/* -webkit-appearance: none; */}.slick-dots li button:focus,.slick-dots li button:hover{outline:0}.slick-dots li button:focus:before,.slick-dots li button:hover:before{opacity:1}.slick-dots li button:before{font-family:slick;font-size:6px;line-height: 20px;position:absolute;top: 5px;left:0;font-size: 50px;width: 20px;height: 20px;content:'•';text-align:center;opacity:.25;color: #5f5f5f;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.slick-dots li.slick-active button:before{opacity:.75;color: #4179c4;}.slick-slider{box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:rgba(0,0,0,0)}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;top:0;left:0;display:block}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir='rtl'] .slick-slide{float:right}.slick-slide img{/* display:block */}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.slick-next:after{content:"→";font-family: slick;font-size: 20px;line-height: 1;opacity: .75;color: #3c3c3c;-webkit-font-smoothing: antialiased;position: absolute;top: 10px;right: 30px;}