html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
}
html {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
caption, th, td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}
q, blockquote {
    quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none;
}
a img {
    border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    /*line-height: normal;*/
    line-height: 1.7;
    box-sizing: border-box;
    color: #302f2f;
}
/*! based on html5doctor.com Reset Stylesheet v1.6.1 Author: Richard Clark - http://richclarkdesign.com */
html {
    box-sizing: border-box;
}
*, ::before, ::after {
    box-sizing: inherit;
}
body {
    background: transparent;
    color: #000;
    line-height: 1;
    -webkit-text-size-adjust: 100%;
}
html[lang="ja"] body {
    font-family: 'Kiwi Maru', "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
}
/* main elements group */
audio, canvas, progress, video {
    display: -moz-inline-stack;
    display: inline-block;
    vertical-align: middle;
 *vertical-align: auto;
    zoom: 1;
 *display: inline;
    vertical-align: baseline;
}
audio:not([controls]) {
    display: none;
    height: 0;
}
/* a */
* {
    box-sizing: border-box;
}
html, body {
    width: 100%;
    height: 100%;

}
body {
    -webkit-text-size-adjust: 100%;
    -webkit-appearance: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

::-moz-selection {
 background: rgba(48, 47, 47, .8);
  /* Safari */
  color: #fff;
}
::selection {
    background: rgba(48, 47, 47, .8);
    /* Safari */
    color: #fff;
}

::-moz-selection {
 background: rgba(48, 47, 47, .8);
  /* Firefox */
  color: #fff;
}
img {
    vertical-align: bottom;
    -ms-interpolation-mode: bicubic;
}
/** ---------------- font/_default.scss - */
/*default_comp*/
.center {
    text-align: center !important;
}
.left {
    text-align: left !important;
}
.right {
    text-align: right !important;
}
.top0 {
    margin-top: 0 !important;
}
.top5 {
    margin-top: 0.3125rem !important;
}
.top10 {
    margin-top: 0.625rem !important;
}
.top15 {
    margin-top: 0.9375rem !important;
}
.top20 {
    margin-top: 1.25rem !important;
}
.top25 {
    margin-top: 1.5625rem !important;
}
.top30 {
    margin-top: 1.875rem !important;
}
.top35 {
    margin-top: 2.1875rem !important;
}
.top40 {
    margin-top: 2.5rem !important;
}
.btm0 {
    margin-bottom: 0 !important;
}
.btm5 {
    margin-bottom: 0.3125rem !important;
}
.btm10 {
    margin-bottom: 0.625rem !important;
}
.btm15 {
    margin-bottom: 0.9375rem !important;
}
.btm20 {
    margin-bottom: 1.25rem !important;
}
.btm25 {
    margin-bottom: 1.5625rem !important;
}
.btm30 {
    margin-bottom: 1.875rem !important;
}
.btm35 {
    margin-bottom: 2.1875rem !important;
}
.btm40 {
    margin-bottom: 2.5rem !important;
}
.btm45 {
    margin-bottom: 2.8125rem !important;
}
.btm50 {
    margin-bottom: 3.125rem !important;
}
.btm55 {
    margin-bottom: 3.4375rem !important;
}
.btm60 {
    margin-bottom: 3.75rem !important;
}
.btm65 {
    margin-bottom: 4.0625rem !important;
}
.btm70 {
    margin-bottom: 4.375rem !important;
}
.btm75 {
    margin-bottom: 4.6875rem !important;
}
.btm80 {
    margin-bottom: 5rem !important;
}
.btm85 {
    margin-bottom: 5.3125rem !important;
}
.btm90 {
    margin-bottom: 5.625rem !important;
}
.btm95 {
    margin-bottom: 5.9375rem !important;
}
.pT0 {
    padding-top: 0 !important;
}
.pT5 {
    padding-top: 0.3125rem !important;
}
.pT10 {
    padding-top: 0.625rem !important;
}
.pT15 {
    padding-top: 0.9375rem !important;
}
.pT20 {
    padding-top: 1.25rem !important;
}
.pT25 {
    padding-top: 1.5625rem !important;
}
.pT30 {
    padding-top: 1.875rem !important;
}
.pT35 {
    padding-top: 2.1875rem !important;
}
.pT40 {
    padding-top: 2.5rem !important;
}
.pT45 {
    padding-top: 2.8125rem !important;
}
.pT80 {
    padding-top: 5rem !important;
}
.pT90 {
    padding-top: 5.625rem !important;
}
.pT100 {
    padding-top: 6.25rem !important;
}
.pB0 {
    padding-bottom: 0 !important;
}
.pB5 {
    padding-bottom: 0.3125rem !important;
}
.pB10 {
    padding-bottom: 0.625rem !important;
}
.pB15 {
    padding-bottom: 0.9375rem !important;
}
.pB20 {
    padding-bottom: 1.25rem !important;
}
.pL10 {
    padding-left: 0.625rem !important;
}
.lm5 {
    margin-left: 0.3125rem !important;
}
.lm10 {
    margin-left: 0.625rem !important;
}
.lm15 {
    margin-left: 0.9375rem !important;
}
.lm20 {
    margin-left: 1.25rem !important;
}
.lm50 {
    margin-left: 3.125rem !important;
}
.lm60 {
    margin-left: 3.75rem !important;
}
.lm70 {
    margin-left: 4.375rem !important;
}
.rm5 {
    margin-right: 0.3125rem !important;
}
.rm10 {
    margin-right: 0.625rem !important;
}
.rm15 {
    margin-right: 0.9375rem !important;
}
.rm20 {
    margin-right: 1.25rem !important;
}
.vAT {
    vertical-align: top !important;
}
.vAM {
    vertical-align: middle !important;
}
.vAB {
    vertical-align: bottom !important;
}
.size10 {
    font-size: 57% !important;
    line-height: 1.3 !important;
}
.size11 {
    font-size: 65% !important;
    line-height: 1.3 !important;
}
.size12 {
    font-size: 70% !important;
    line-height: 1.3 !important;
}
.size13 {
    font-size: 77% !important;
    line-height: 1.3 !important;
}
.size14 {
    font-size: 85% !important;
}
.size15 {
    font-size: 93% !important;
}
.size16 {
    font-size: 100% !important;
}
.size17 {
    font-size: 116% !important;
}
.size18 {
    font-size: 123.1% !important;
}
.size19 {
    font-size: 131% !important;
}
.size20 {
    font-size: 138.5% !important;
}
.size21 {
    font-size: 146.5% !important;
}
.size22 {
    font-size: 153.9% !important;
}
.size23 {
    font-size: 161.6% !important;
}
.size24 {
    font-size: 167% !important;
}
.w10 {
    width: 10% !important;
}
.w20 {
    width: 20% !important;
}
.w30 {
    width: 30% !important;
}
.w40 {
    width: 40% !important;
}
.w50 {
    width: 50% !important;
}
.w60 {
    width: 60% !important;
}
.w70 {
    width: 70% !important;
}
.w80 {
    width: 80% !important;
}
.w100 {
    width: 100% !important;
}
.red {
    color: #ce3838 !important;
}
.pink {
    color: #e3365f !important;
}
.bold {
    font-weight: bold;
}
.normal {
    font-weight: normal;
}
.icon {
    margin-right: 0.1875rem;
    vertical-align: middle;
    margin-top: -0.0625rem;
}
.f_l {
    float: left !important;
}
.f_r {
    float: right !important;
}
.mr {
    margin-right: 1.875rem !important;
}
.ml {
    margin-left: 1.875rem !important;
}
.clearfix:after {
    content: ".";
    height: 0;
    clear: both;
    display: block;
    font-size: 0.1em;
    line-height: 0;
    visibility: hidden;
}
.clearfix {
    display: inline-block;
    min-height: 1%;
    clear: both;
}
/* Hides from IE-mac \*/
* html .clearfix {
    height: 1%;
}
a {
    text-decoration: none;
    color: #000;
}
a.link01 {
    background: url(../image/sub_yajirushi02.gif) no-repeat left 0.3125rem;
    text-decoration: underline;
    padding-left: 0.75rem;
}
a.link01:hover {
    text-decoration: none;
}
ol.num01 {
    margin-bottom: 0.4375rem;
}
ol.num01 li {
    list-style: inside decimal;
    text-indent: -1.0em;
    padding-left: 1.0em;
    line-height: 150%;
    margin-bottom: 0.1875rem;
}
ol.num01 li.last {
    margin-bottom: 0;
}
ol.num01 li p {
    text-indent: 0;
}
/*num01*/
ul.num01 {
    margin-bottom: 0.4375rem;
}
ul.num01 li {
    list-style: inside disc;
    text-indent: -1.0em;
    padding-left: 1.0em;
    line-height: 150%;
    margin-bottom: 0.1875rem;
}
ul.num01 li.last {
    margin-bottom: 0;
}
ul.num02 {
    margin-bottom: 0.4375rem;
}
ul.num02 li {
    list-style: inside square;
    text-indent: -1.0em;
    padding-left: 1.0em;
    line-height: 150%;
    margin-bottom: 0.1875rem;
}
ul.num02 li.last {
    margin-bottom: 0;
}
ul.num03 {
    margin-bottom: 0.4375rem;
}
ul.num04 {
    margin-bottom: 0;
}
ul.num04 li {
    margin-bottom: 0.1875rem;
}
ul.num04 li.last {
    margin-bottom: 0;
}
ul.num05 {
    margin-bottom: 0px;
}
ul.num05 li {
    margin-bottom: 0.375rem;
    text-indent: -1.0em;
    padding-left: 1.0em;
}
ul.num05 li.last {
    margin-bottom: 0;
}
.hide {
    display: none;
}
input {
    vertical-align: middle;
}

/*************************** setting end */
/*************************** comp */
html {
    font-size: 92%;
}
body{
    background-image: url(../../common/images/bg01.jpg);
    background-repeat: repeat-y;
    background-size: cover;
}
body::before{
    background-image: url(../../common/images/kazari02.jpg);
    background-size: cover;
    background-repeat: repeat-x;
    position: absolute;
    content: '';
    height: 16px;
    width: 100%;
}
/* header */
#sp_menu{
    display: block;
}
#spHeader{
    padding: 12px 3%;
    display: block;
    width: 100%;
    position: relative;
    z-index: 980;
/*    box-shadow: 2px 5px 6px rgba(0,0,0,0.03);*/
}
#spHeader .logo{
    position: relative;
    text-align: center;
    color: #182d3a;
    font-size: 1.3em;
    }
#spHeader ul{
    overflow: hidden;
    zoom: 1;
    position: absolute;
    right: 56px;
    top: 9px;
}
#spHeader li{
    float: left;
    margin: 0 5px;
    text-align: center;
}
#spHeader li a{
    color: #333;
    font-size:1.0rem;
    line-height: 1;
}
#spHeader li a i{
    font-size:2.4rem;
    display: block;
    color: #333333;
    margin-bottom: 3px;
}
.spMenu{
    cursor: pointer;
    display: block;
    height: 70px;
    width: 70px;
    position: fixed;
    right: 15px;
    top: 35px;
    z-index: 1010;
    border-radius: 50%;
    background-color: #9b4837;
}
.spMenu span {
    background-color: #fff;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    zoom: 1; /* Fix for IE7 */
    *display: inline; /* Fix for IE7 */
    height: 2px;
    width: 26px;
    position: absolute;
    left: 20px;
    -webkit-transition: all 600ms cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 600ms cubic-bezier(0.19, 1, 0.22, 1);
}
.spMenu span:nth-of-type(1) { top: 18px; }
.spMenu span:nth-of-type(2) { top: 26px; width: 20px; }
.spMenu span:nth-of-type(3) { top: 34px; width: 10px; }
.spMenu span:nth-of-type(4) { top: 42px; border: none; width: 100%;
font-size: 0.7em; background-color: transparent; color: #fff; left: 12px;}
.spMenu.active{
    height:70px;
    width: 70px;
    background-color: transparent;
    right: 50px;
    top: 45px;
}
.spMenu.active span{
    background-color: #9b4837;
}
.spMenu.active span:nth-of-type(1) {
    -webkit-transform: translateY(8px) rotate(-45deg);
    transform: translateY(8px) rotate(-45deg);
    width: 60px;
}
.spMenu.active span:nth-of-type(2) {
    opacity: 0;
}
.spMenu.active span:nth-of-type(3) {
    -webkit-transform: translateY(-8px) rotate(45deg);
    transform: translateY(-8px) rotate(45deg);
    width: 60px;
}
.spMenu.active span:nth-of-type(4){
    display: none;
}
/*spNav*/
#spNav{
    height: 100%;
    display: block;
/*    transition: all 550ms ease 0.25s;*/
    visibility: hidden;
    width: 100%;
    position: fixed;
    right: -100%;
    top: 0;
    z-index: 990;
}
#spNav.active{
    visibility: visible;
    right: 0;
}
#spNav #spBg{
    background: #ece8e0;
    height: 100%;
    width: 100%;
    position: fixed;
    right: -50%;
    top: 0;
    z-index: -1;
    opacity: 0;
/*    transition: all 550ms ease 0.25s;*/
    pointer-events: none;
}
#spNav #spBg::after{
    content: '';
    background-image: url(../../common/images/modal_bg.jpg);
    background-repeat: repeat;
    background-size: contain;
    width: calc(100% - 50px);
    height: calc(100% - 50px);
    position: absolute;
    left: 25px;
    top: 25px;
    border-radius: 30px;
}
#spNav.active #spBg{
    right: 0;
    opacity: 1;
    pointer-events: auto;
}
#spNav::after {
/*  background: #b9e0e7;
    background: #000;*/
/*    background: rgba(0, 0, 0, .4);*/
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1;
    opacity: 0.8;
}
#spNav::before,
#spNav::after {
    opacity: 0;
/*    transition: all 550ms ease 0.25s;*/
}
#spNav.active::before,
#spNav.active::after {
    opacity: 1;
}
#spNav .closeBtn{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 3%;
    text-align: right;
}
#spNav nav{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 95%;
    max-width: 852px;
}
#spNav nav ul.menu{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    background-image: url(../../common/images/modal_menu_bg.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    padding: 0 50px;
}
#spNav nav ul.menu li{
    margin-right: 50px;
    position: relative;
}
#spNav nav ul.menu li:last-child{
    margin-right: 0;
}
#spNav nav ul.menu li a{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    color: #2d2521;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    display: block;
    padding: 50px 0;
    text-align: center;
    letter-spacing: 2px;
    transition: all .3s;
    position: relative;
    text-decoration: none;
}
#spNav nav ul.menu li a::before{
    transition: all .3s;
}
#spNav nav ul.menu li a:hover::before{
    position: absolute;
    content: '';
    background-image: url(../../common/images/ttl_l.png);
    width: 24px;
    height: 22px;
    background-size: contain;
    background-repeat: no-repeat;
    left: -27px;
    top: 55px;
}

#spNav nav ul.menu li:nth-child(2) a{
    padding-bottom: 10px;
}
#spNav nav ul.menu li a span.en{
        margin-left: 12px;
        font-size: 12px;
        font-family: 'Abel', sans-serif;
        font-weight: normal;
        line-height: 2.5em;
    }   
#spNav nav ul.menu li .cat_menu{
    margin-bottom: 20px;
}
#spNav nav ul.menu li .cat_menu li a{
    font-size: 0.9em;
    color: #fff;
    padding: 8px 0;
}

/*footer*/
.footer{
    padding: 75px 3% 60px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    font-size: 0.8em;
    letter-spacing: 0.05em;
    position: relative;
    background-image: url(../../common/images/f_bg.png);
    background-repeat: repeat-x;
    background-size: cover;
}
.nav_foot{
    position: absolute;
    bottom: 60px;
    text-align: center;
    left: 50%;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);
}
.footer p,
.nav_foot p{
    color: #9b4837;
}
.footer p a,
.nav_foot p a{
    color: #9b4837;
}
.footer .f_ttl,
.nav_foot .f_ttl{
    width: 100%;
    max-width: 260px;
    margin: 0 auto 20px;
}
.footer .f_ttl img,
.nav_foot .f_ttl img{
    width: 100%;
}
.footer .f_address,
.nav_foot .f_address{
    margin-bottom: 10px;
}
.footer .f_tel,
.nav_foot .f_tel{
    width: 360px;
    margin: 0 auto;
    position: relative;
    padding: 15px;
    font-size: 2em;
}
.footer .f_tel::before,
.footer .f_tel::after,
.nav_foot .f_tel::before,
.nav_foot .f_tel::after{
    content: '';
    position: absolute;
    background-image: url(../../common/images/f_kazari.png);
    height: 10px;
    width: 360px;
    background-size: contain;
    left: 0;
    top: 0;
}
.footer .f_tel::after,
.nav_foot .f_tel::after{
    bottom: 0;
    top: auto;
}
/*back to top*/
.qs_back_to_top{
	width: 60px!important;
    height: 93px!important;
    background-color: transparent!important;
    position: fixed;
    right: 100px!important;
    bottom: 100px!important;
    z-index: 900;
    cursor: pointer;
    display: none;
    background-image: url(../../common/images/backtotop.png)!important;
    background-size: contain!important;
    background-repeat: no-repeat!important;
}
.qs_back_to_top:before{
	border: none!important;
}
/*common*/
.bnr_box{
    position: fixed;
    top: 0;
    left: 0;
    background-image: url(../../common/images/kazari01.png);
    width: 138px;
    height: 129px;
    background-size: cover;
    padding: 30px 0 0 20px;
    z-index: 1000;
    letter-spacing: 0.1em;
    transition: all .3s;
}
.bnr_box:hover{
    background-image: url(../../common/images/kazari01_on.png);
}
.bnr_box a{
    color: #fff;
}
.logo_img{
    padding-bottom: 8px;
}
.site_ttl{
    text-align: center;
    display: block;
    padding: 55px 0 85px;
}
.site_ttl a{
    display: inline-block;
    max-width: 285px;
}
.site_ttl a img{
    width: 100%;
}
.icon_list{
    position: fixed;
    top: 30px;
    left: 160px;
    z-index: 1;
}
.icon_list li,
.icon_list02 li{
    display: inline-block;
    margin-right: 15px;
}
.icon_list li a,
.icon_list02 li a{
    display: flex;
    align-items: center;
}
.icon_list li .icon_img,
.icon_list02 li .icon_img{
    width: 25px;
    margin-right: 10px;
}
.icon_list02 li .icon_img{
    width: 23px;
}
.icon_list li .icon_img02,
.icon_list02 li .icon_img02{
    margin-right: 10px;
    height: 25px;
}
.icon_list02 li .icon_img02{
    height: 23px;
}
.icon_list li .icon_img img,
.icon_list02 li .icon_img img{
    width: 100%;
}
.icon_list li .icon_img02 img,
.icon_list02 li .icon_img02 img{
    height: 100%;
}
.icon_list li .icon_txt{
    color: #9b4837;
}
.icon_list02 li .icon_txt{
    color: #2c2c2d;
    transition: all .3s;
    font-size: 0.9em;
}
.icon_list02 li .icon_txt:hover{
    opacity: 0.7;
}
.nav_box{
    display: flex;
    justify-content: flex-end;
    padding-top: 25px;
}
.link_list{
    display: flex;
}
.link_list li{
    margin-right: 25px;
}
.link_list li:last-child{
    margin-right: 0;
}
.link_list li a{
    font-size: 0.9em;
    transition: all .3s;
    color: #4f4e4e;
    letter-spacing: 0.1em;
}
.link_list li a:hover{
    opacity: 0.7;
}
/*common*/
.flex_box{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.btn01{
    background-image: url(../../common/images/btn_bg01.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    width: 200px;
    height: 56px;
    transition: all .3s;
}
.btn01:hover{
    opacity: 0.7;
}
.btn01 a{
    padding: 15px 0;
    display: block;
    text-align: center;
    font-size: 1.1em;
    color: #fff;
}
.head02{
    font-size: 1.5em;
    position: relative;
    padding-left: 20px;
    letter-spacing: 0.1em;
    margin-bottom: 50px;
}
.head02::before{
   content:"";
   display:inline-block;
   width:15px;
   height:1.4em;
   background-color:#ebc7cd;
   position:absolute;
   top:5px;
   left:-5px;
}
.news_box{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 50px;
}
.news_box .box_in{
    width: 22%;
    margin-right: 4%;
    letter-spacing: 0.05em;
}
.news_box .box_in:last-child{
    margin-right: 0;
}
.news_box .box_in .img{
    overflow: hidden;
    border-radius: 50px;
    margin-bottom: 25px;
}
.news_box .box_in .img .img_in{
    width: 100%;
    padding-top: 87%;
    height: auto;
    background-size: cover;
    position: relative;
    transition: all .3s;
}
.news_box .box_in .img:hover .img_in{
    opacity: .8;
    -moz-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}
.news_box .news_date{
    color: #6d6460;
    font-size: 0.8em;
    margin-bottom: 5px;
}
.news_box .news_ttl{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    letter-spacing: 0.1em;
}
.box_img {
  -webkit-mask-image: url('../../common/images/top/mask.png');
  mask-image: url('../../common/images/top/mask.png');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
.slick01 img{
    width: 100%;
}
@media screen and (max-width: 1200px) {
.flex_box{
  width: 95%;
  margin:  0 auto;
}
}
@media screen and (max-width: 960px) {
#spNav nav ul.menu{
    padding: 0 30px;
}
#spNav nav ul.menu li{
    margin-right: 0;
}
#spNav nav ul.menu li a{
    font-size: 1.1em;
}
}
@media screen and (max-width: 850px) {
.logo{
    width: 200px;
}
.logo a{
    padding: 10px 5px;
    display: block;
}
.logo a img{
    width: 100%;
}
#main_contents{
    margin-top: 60px;
    padding-top: 30px;
}
#wmenu_area{
    display: none;
}
.site_ttl span{
  display: block;
  line-height: 1.5;
  }
.qs_back_to_top{
    width: 30px!important;
    height: 47px!important;
    right: 20px!important;
    bottom: 20px!important;
}
}
@media screen and (max-width: 768px) {
#spNav nav{
    top: 30%;
}

#spNav nav ul.menu{
    background-image: none;
}
#spNav nav ul.menu li{
    width: 100%;
}
#spNav nav ul.menu li a{
    padding: 5px 0;
}
.bnr_box{
    width: 110px;
    height: 103px;
    padding: 15px 0 0 10px;
}
.nav_box{
    flex-wrap: wrap;
}
.nav_box .nav_in{
    width: 100%;
    text-align: center;
}
.link_list{
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}
.link_list li{
    margin-bottom: 0 10px;
}
.nav_foot{
    bottom: 35px;
}
.footer .f_ttl, .nav_foot .f_ttl{
    max-width: 200px;
}
.footer .f_tel, .nav_foot .f_tel{
    width: 100%;
    padding: 10px;
}
.footer .f_tel::before, .footer .f_tel::after, .nav_foot .f_tel::before, .nav_foot .f_tel::after{
    width: 100%;
}
.footer .f_address, .nav_foot .f_address{
    font-size: 0.85em;
}
.icon_list02{
    margin-bottom: 10px;
}
.nav_foot{
    width: calc(100% - 60px);
}
.site_ttl{
    padding: 55px 0;
}
.site_ttl span{
    max-width: 200px;
}

#main_contents{
    margin-top: 0;
}
}
@media screen and (max-width: 600px) {
.icon_list{
    display: none;
}
}
