@charset "utf-8";
/*
Theme Name: ヴィヴィアンダイアナ
Description: ヴィヴィアンダイアナ様専用テーマ
*/

/* CSS reset */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,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%;background:transparent}
img{vertical-align: middle;}
body{line-height:1}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
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}
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:15px;border:0;border-bottom: 1px dotted #593e21;margin: 0;padding: 0;}
input,select{vertical-align:middle}
nav>p{display:none;}footer>p{display:none;}

.cf{ zoom: 1;}
.cf:before{ content: ""; display: table;}
.cf:after{ content: ""; display: block; clear: both;}
.clear{clear: both;height:10px;background-color: #eee;margin:0;padding: 0;}
.clear::before{content: '－－－－－回り込みを解除する－－－－－';font-size:8px;color:#666;}
.la_wrapper .clear{clear: both;height: 0;background: none;overflow: hidden;}
.la_wrapper .clear::before{content: '';}

/*///////////////////////////////////////////////

基礎・レイアウト（.la_xxxxx）
------------------------------------------------*/
body{
    font-size: 16px;
    line-height: 1.6;
    color: #000000;
    background-color: #FFFFFF;
}
.fontsize_16px{
    font-size: 16px;
}
@media screen and (max-width: 767px) {
    body{
        font-size: 13px;
    }
    .fontsize_10px{
        font-size: 8.125px !important;
    }
    .fontsize_12px{
        font-size: 9.75px !important;
    }
    .fontsize_14px{
        font-size: 11.375px !important;
    }
    .fontsize_16px{
        font-size: 13px !important;
    }
    .fontsize_20px{
        font-size: 16.25px !important;
    }
    .fontsize_24px{
        font-size: 19.5px !important;
    }
    .fontsize_28px{
        font-size: 22.75px !important;
    }
    .fontsize_32px{
        font-size: 26px !important;
    }
    .fontsize_36px{
        font-size: 29.25px !important;
    }
    .fontsize_40px{
        font-size: 32.5px !important;
    }
    .fontsize_48px{
        font-size: 39px !important;
    }
    .fontsize_56px{
        font-size: 45.5px !important;
    }
    .fontsize_64px{
        font-size: 52px !important;
    }
    
}


/* フォント */
body,.t_goc,.widgettitle{
    font-family: "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , Verdana , Roboto , "メイリオ" , Meiryo ,"ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" ,  "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
    font-weight: 500;
}
@media all and (-ms-high-contrast:none){
    body,.t_goc,.widgettitle{
        font-family: Verdana , Roboto , "メイリオ" , Meiryo ,"ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" ,  "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
        font-weight: 500;
    }
}
.t_min,h1,h2,h3,.la_title h1 ~ p,.mo_linkbox em,.mo_linkbox strong{
    font-family: "Sawarabi Mincho", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝" , "HG明朝B", serif;
    -webkit-transform-origin: 0 0;
    -webkit-transform: scale(1, 1.01);
    -moz-transform-origin: 0 0;
    -moz-transform: scale(1, 1.01);
    -ms-transform-origin: 0 0;
    -ms-transform: scale(1, 1.02); /* IE9だけ1.02 */
    -o-transform-origin: 0 0;
    -o-transform: scale(1, 1.01);
}
@media all and (-ms-high-contrast:none){
    .t_min,h1,h2,h3,.la_title h1 ~ p,.mo_linkbox em,.mo_linkbox strong{
        font-family: "ＭＳ Ｐ明朝", "ＭＳ 明朝", "HG明朝B", serif;
    }
}
.t_mgoc{
    font-family: 'ヒラギノ丸ゴ Pro W4' , 'ヒラギノ丸ゴ ProN W4' , "メイリオ" , Meiryo ,"ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" ,  "ＭＳ Ｐゴシック" , "MS PGothic" , Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , sans-serif;
}
.t_hands,.ft_phone{
    font-family: 'Segoe Print','Segoe Script','Bradley Hand','Chalkduster','Comic Sans MS','ヒラギノ丸ゴ Pro W4' , 'ヒラギノ丸ゴ ProN W4' , "メイリオ" , Meiryo ,"ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" ,  "ＭＳ Ｐゴシック" , "MS PGothic" , Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , sans-serif;
}


/* wordpress初期設定 */
p{
    margin: 0 0 1em 0;
}
.p,
.clear,
p:last-child{
    margin-bottom: 0;
}
strong { font-weight: bold; }
em { font-style: italic; }
blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40px;
    -webkit-margin-end: 40px;
    background-size: contain;
}


.aligncenter,.wp-caption.aligncenter {display: block;margin: 0 auto;}
.alignright,.wp-caption.alignright { float: right;margin-top: 0;margin-bottom: 15px;margin-left: 4.347826086956522%;}
.alignleft,.wp-caption.alignleft { float: left;margin-top: 0;margin-right: 4.347826086956522%;margin-bottom: 15px}
.w_pw{margin: 0 auto;}
.wp-caption{
    display: inline-block;
    margin-right: auto;
    margin-left: auto;
}
.wp-caption-text{
    line-height: 1.45;
}
.wp-caption-text strong.t_price{
    float: right;
    padding-left: 1em;
}

.w_p,.w_pw,
.wp-caption.w_p,.wp-caption.w_pw{
    display: inline-block;
    margin-right: auto;
    margin-left: auto;
    float: none;
}
@media screen and (max-width: 860px) {
    .wp-caption.w_pw{
        width: auto !important;
    }
}
@media screen and (max-width: 520px) {
    .wp-caption.w_p{
        width: auto !important;
    }
}
@media screen and (max-width: 479px) {
    .w_spw,
    .wp-caption.w_spw{
        float: none;
        max-width: 480px;
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }
}
@media screen and (max-width: 362px) {
    .w_spt,
    .wp-caption.w_spt{
        display: inline-block;
        margin-right: auto;
        margin-left: auto;
        float: none;
    }
}
@media screen and (max-width: 400px) {
    .wp-caption.w_spw{
        width: auto;
    }
}
@media screen and (max-width: 300px) {
    .wp-caption.w_spt{
        width: auto;
    }
}

.j_img_single.alignright,
.j_img_single.alignleft{
    display: table;
    table-layout: fixed;
    float: none;
    margin: 0 auto 1rem;
}

img.at_inline,
h1 > img,
h2 > img,
h3 > img{
    display: inline !important;
    vertical-align: middle;
}
body.editor-area{
    padding: 0.5em 35px !important;
    min-width: 0;
}
img{
    max-width: 100%;
    height: auto;
}
.la_wrapper .hide{
    display: none;
}
.hide{
    display: block;
    text-align: center;
    font-size: 10px;
    color: #999;
}
body > p > .hide{
    font-size: 11px;
    opacity: 0.8;
}
body > div .hide{
    font-size: 9px;
    opacity: 0.7;
}
.hide img{
    display: none;
}
.edit{
    font-size: 12px;
    text-align: right;
    height: 0;
    position: relative;
    top:-28px;
    z-index: 200;
}
h1 + .edit{
    top:-30px;
}
.edit a{
    display: inline-block;
    padding: 2px 10px;
    background-color: #dddddd;
    opacity: 0.7;
}
.edit a:hover{
    opacity: 1;
}
br.brake{
    display: none;
}
@media screen and (max-width: 479px) {
    br.brake{
        display: inline-block;
    }
}
.la_wrapper_in{
    overflow: hidden;
}
.j_img_bg_parent{
    background-size: cover;
    background-position: center;
}
.j_display_none{
    display: none;
}
.j_img_bg{
    position: absolute;
}


/* ヘッダー　　la_header　************************/

.la_header{
    padding: 13px 0 0;
}
.la_header_in{
    max-width: 1200px;
    padding: 0 10px;
    margin: 0 auto;
    position: relative;
    z-index: 300;
    font-size: 0;
}
.la_header_in::after{
    content: '';
    display: block;
    clear: both;
}
.la_header_in > h1,
.la_header_in > h1:first-child{
    float: left;
    /*
    width: 23.58333333333333%;
    margin: 0 2% 0 11.66666666666667%;
    */
    width: 281px;
    margin: 11px 10px 6px 0;
    position: absolute;
    top:0;
    left: 50%;
    margin-left: -460px;
}
.la_header_in > h1 img{
    max-width: 281px;
}
.la_header_in_in{
    float: right;
}
.cm_phone{
    display: inline-block;
    text-align: center;
    font-size: 10px;
    color: #666;
}
.cm_phone a{
    display: block;
    margin-bottom: 6px;
}
@media screen and (max-width: 940px) {
    .la_header_in > h1,
    .la_header_in > h1:first-child{
        float: left;
        position: static;
        margin-left: 0;
    }
}
@media screen and (max-width: 767px) {
    .la_header_in_in{
        display: none;
    }
    .la_header_in > h1,
    .la_header_in > h1:first-child{
        float: none;
        margin-right: auto;
        margin-left: auto;
    }
}

/* ページタイトル部分 */


/* メインビジュアル */
.la_header + .la_visual{
    clear: both;
}
.la_visual{
    padding-bottom: 20px;
    background-color: #000;
    background-image: url(img/hd_bg.jpg);
    background-repeat: repeat-x;
    background-position: bottom center;
}
.pgtop_mo_visual{
    margin: 0 auto;
    position: relative;
    max-width: 1920px;
}
.pgtop_mo_visual ul{
    list-style: none;
    margin: 0;
}
.pgtop_mo_visual li{
    margin: 0;
}
.pgtop_mo_visual .bx-wrapper{
    overflow: hidden;
}
.pgtop_mo_visual img{
    display: inline-block;
}
@media screen and (max-width: 479px) {
    .la_visual{
        list-style: none;
        margin: 0 -15%;
        width: 130%;
        padding-bottom: 10px;
        background-size: auto 10px;
    }
}




/* ナビゲーション　　lahd_navlist　************************/

.lahd_navlist{
    clear: both;
}
.menu_btn{
    display: none;
}
.lahd_navlist{
    background-color: #B21A2D;
}
.lahd_navlist > nav{
    margin: 15px auto 0;
}
.lahd_navlist > nav > ul{
    margin: 0;
    text-align: center;
}
.lahd_navlist > nav > ul > li{
    display: inline-block;
    vertical-align: middle;
    margin: 0;
    position: relative;
}
.lahd_navlist > nav > ul > li > a{
    display: block;
    font-size: 14px;
    line-height: 1.2;
    padding: 7px 2.5em;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    transition: 0.3s ease;
}
.lahd_navlist > nav > ul > li > a:hover{
    background-color: rgba(253, 240, 135, 0.53);
}
.lahd_navlist li > a > strong{
    display: block;
    font-size: 106.25%;
}
.lahd_navlist li > a > span{
    display: block;
    color: #E1C03B;
    font-size: 68.75%;
}
.lahd_navlist li li > a > span{
    display: none;
}

.lahd_navlist ul ul{
    display: none;
}
.lahd_navlist > nav > ul > li > ul{
    display: block;
    position: absolute;
    z-index: 111;
    top:100%;
    left:0;
    width: 100%; 
    margin: 0;
    overflow: hidden;
    background-color: #931424;
    background-color: rgba(147, 20, 36, 0.87);
    opacity: 0;
    transition: 0.3s ease;
}
.lahd_navlist > nav > ul > li:hover > ul{
    opacity: 1;
}
.lahd_navlist > nav > ul > li > ul > li{
    margin: 0;
}
.lahd_navlist > nav > ul > li > ul > li > a{
    display: block;
    font-size: 13px;
    line-height: 20px;
    color: #fff;
    padding: 8px 6px;
    transition: 0.3s;
    text-decoration: none;
    border-top:rgba(255, 255, 255, 0.17) solid 1px;
    text-align: center;
}
.lahd_navlist > nav > ul > li > ul > li > a:hover{
    background-color: rgba(250, 255, 119, 0.36);
}
.lahd_navlist > .menu_btn{
    display: none;
    cursor: pointer;
    text-align: center;
    font-size: 13px;
    font-weight: bold;
    color: #ffffff;
    padding: 8px 0 6px;
    margin-top: 20px;
}
.lahd_navlist > .menu_btn::before{
    display: inline-block;
    content: '　';
    font-size: 10px;
    line-height: 2px;
    color: #ffffff;
    border-bottom: #ffffff double 6px;
    border-top: #ffffff solid 2px;
    margin: 5px auto 5px;
    overflow: hidden;
    width: 16px;
    margin:3px 10px 0 0;
}
@media screen and (max-width: 999px) {
    .lahd_navlist > nav > ul > li > a{
        font-size: 14px;
        padding-right: 1.5em;
        padding-left: 1.5em;
    }
    .lahd_navlist > nav > ul > li > ul{
        margin-left: -10%;
        margin-right: -10%;
        width: 120%;
    }
}
@media screen and (max-width: 800px) {
    .lahd_navlist > nav > ul > li > a{
        font-size: 14px;
        padding-right: 0.8em;
        padding-left: 0.8em;
    }
}
@media screen and (max-width: 767px) {
    .lahd_navlist{
        width: auto;
    }
    .lahd_navlist > nav{
        display: none;
        margin: 0 auto 0;
    }
    .lahd_navlist > nav > ul,
    .lahd_navlist > nav > ul > li{
        display: block;
        width: auto;
    }
    .lahd_navlist > nav > ul > li > a{
        display: block;
        padding: 8px;
        background-size: auto 100%;
        border-top: rgba(255, 255, 255, 0.25) solid 1px;
    }
    .lahd_navlist > nav > ul > li > a::before{
        display:none;
    }
    .lahd_navlist{
    position: static;
    }
    .lahd_navlist > .menu_btn{
        display: block;
    }
    .lahd_navlist > nav > ul > li > ul{
        position: static;
        opacity: 1;
    }
}

/* フッター　　la_footer　************************/
.la_footer{
    background-color: #F8F5F4;
    position: relative;
    text-align: center;
    padding: 10px 0 0 0;
}
.la_footer_in{
    display: inline-block;
    vertical-align: middle;
}
.la_footer_in > *{
    display: inline-block;
    vertical-align: middle;
    margin: 0 35px 0 0;
    padding: 10px 0;
}
.laft_navlist{
    display: inline-block;
    vertical-align: middle;
    max-width: 360px;
    padding: 10px 0;
    text-align: left;
    color: #000;
    text-shadow: none;
}
.laft_navlist li,
.laft_navlist li ul{
    display: inline-block;
    vertical-align: middle;
    font-size: 14px;
    margin: 0.1em 0;
}
.laft_navlist li::before{
    content: '　≫ ';
    font-size: 11px;
}
.laft_navlist li ul li{
    font-size: 11px;
}
.laft_navlist li ul li::before{
    content: '・';
}
.laft_navlist a{
    color: #666;
    text-decoration: none;
}
.ft_copy{
    clear: both;
    background-color: #B21A2D;
    color: #ffffff;
    font-weight: bold;
    font-size: 11px;
    text-align: center;
    padding: 6px;
    letter-spacing: 2px;
    margin-top: 10px;
}
.ft_logo{
    max-width: 206px;
}
.ft_logo img{
    width: 100%;
}


/* メインエリア・他 la_main　************************/
.la_container{
    max-width: 1200px;
    margin: 0 auto;
    overflow: hidden;
}
.la_main{
    width: 74.16666666666667%;
    float: right;
    padding: 20px 0 40px;
}
.la_side{
    width: 21.66666666666667%;
    float: left;
    padding: 20px 0 0;
}
.w_middle{
    max-width: 640px;
    margin: 0 auto;
}
.la_container.at_vlong{
    max-width: none;
}
.la_container.at_vlong .la_main{
    width: auto;
    float: none;
    padding: 20px 0 0;
}
@media screen and (max-width: 767px) {
    .la_main,
    .la_side{
        width: auto;
        float: none;
        padding: 20px 15px;
    }
}

/* サイドバーの内容 */
.widget_nav_menu ul{
    margin: 0 auto;
    font-size: 0;
}
.widget_nav_menu li{
    margin: 0 auto 10px;
    list-style: none;
}
.widget_nav_menu li.at_harf{
    display: inline-block;
    width: 48%;
    margin-right: 2%;
}
.widget_nav_menu li.at_harf + li.at_harf{
    margin-right: 0;
    margin-left: 2%;
}
.widget_nav_menu li a{
    display: block;
    background-color: #F0EBE8;
    background-image: url(img/sd_mn_icon.png);
    background-repeat: no-repeat;
    background-size: 4px auto;
    background-position: 7px 50%;
    line-height: 1.4;
    font-size: 14px;
    text-decoration: none;
    color: #000000;
    padding: 10px 5px 10px 22px;
    transition: 0.3s ease;
}
.widget_nav_menu li a:hover{
    background-color: #efddda;
    background-position: 10px 50%;
    color: #931424;
}

/*　タイトルエリア la_title　************************/
.la_title.at_n{
    padding:0 0 30px;
    margin-bottom: 34px;
    text-align: center;
    overflow: hidden;
    border-bottom: #F9F7F4 solid 3px;
}
.la_title h1,
.la_title h1:first-child{
    margin: 40px 0 30px;
    font-size: 250%;
    font-weight: 500;
    text-align: center;
}
.la_title h1 ~ p{
    margin-top: -30px;
    font-size: 87.5%;
    color: #a2a2a2;
}
@media screen and (max-width: 767px) {
    .la_title h1{
        font-size: 225%;
    }
}
@media screen and (max-width: 479px) {
    .la_title h1{
        font-size: 200%;
    }
}

.mo_bg_title{
    height: 340px;
    background-size: cover;
    margin-bottom: -20px;
    display: table;
    width: 100%;
}
.in_mo_bg_title{
    display: table-cell;
    vertical-align: middle;
    padding: 20px 20px 30px;
}
.mo_bg_title h1,
.mo_bg_title h1:first-child,
.mo_bg_title p{
    max-width: 940px;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}
.mo_bg_title h1,
.mo_bg_title h1:first-child{
    text-shadow: 2px 2px 0 #fff;
}
.mo_bg_title p{
    text-shadow:0 1px 0 #fff,1px 0 0 #fff,0 -1px 0 #fff,-1px 0 0 #fff,-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff;
}
@media screen and (max-width: 767px) {
    .mo_bg_title{
        background-position: 60% 0;
        height: 210px;
    }
    .in_mo_bg_title{
        padding-right: 37%;
    }
}
@media screen and (max-width: 479px) {
    .in_mo_bg_title{
        padding-right: 32%;
    }
}


/*///////////////////////////////////////////////

共通ボックス（.box_xxxxx）
------------------------------------------------*/

/* .in_boxを横並びにする　************************/
.box_wrap{
    text-align: center;
    margin: -15px -6.1797752809%;
    list-style: none;
    font-size: 0;
}
.box_wrap::after{
    content: '';
    display: block;
    clear: both;
}
.j_left_right + .box_wrap,
.box_wrap + .j_left_right,
.box_wrap + .box_wrap,
.box_wrap_wrap + .box_wrap{
    margin-top: 30px;
}
.box_wrap_wrap .box_wrap + .box_wrap{
    margin-top: 0;
}
.box_wrap > *{
    text-align: left;
    font-size: 16px;
    max-width: 89%;
    list-style: none;
}
.box{
    display: inline-block;
    vertical-align: top;
    margin:20px auto;
    padding: 0;
    list-style: none;
    box-sizing: border-box;
    position: relative;
}
.at_middle .box{
    vertical-align: middle;
}
.box .box_wrap{
    margin-top: -5px;
    margin-bottom: -5px;
}
.box .box_wrap > .box{
    margin-top: 5px;
    margin-bottom: 5px;
}
.box .box_wrap + .box_wrap{
    margin-top: 15px;
}
.box_2c,.box .box_2c{width:43%;margin-left:1.5%;margin-right:1.5%;}
.box_3c,.box .box_3c{width:27.6666666667%;margin-left:1.5%;margin-right:1.5%;}
.box_3cx2,.box .box_3cx2{width:58.3333333333%;margin-left:1.5%;margin-right:1.5%;}
.box_4c,.box .box_4c{width:20%;margin-left:1.5%;margin-right:1.5%;}
.box_4cx3,.box .box_4cx3{width:66%;margin-left:1.5%;margin-right:1.5%;}
.box_5c,.box .box_5c{width:15.4%;margin-left:1.5%;margin-right:1.5%;}
.box_5cx2,.box .box_5cx2{width:33.8%;margin-left:1.5%;margin-right:1.5%;}
.box_5cx3,.box .box_5cx3{width:52.2%;margin-left:1.5%;margin-right:1.5%;}
.box_5cx4,.box .box_5cx4{width:70.6%;margin-left:1.5%;margin-right:1.5%;}
.box_6c,.box .box_6c{width:12.3333333333%;margin-left:1.5%;margin-right:1.5%;}
.box_6cx5,.box .box_6cx5{width:73.6666666667%;margin-left:1.5%;margin-right:1.5%;}
.box_m,.box .box_m{width:61%;margin-left:1.5%;margin-right:1.5%;}
.box_s,.box .box_s{width:25%;margin-left:1.5%;margin-right:1.5%;}


@media screen and (max-width: 767px) {
    .box_wrap{padding: 1px 0;}
    .box_2c,
    .box_3cx2,
    .box_4cx3,
    .box_4cx2,
    .box_5cx3,
    .box_5cx4,
    .box_6cx5,
    .box_m,
    .j_size_middle .j_size_middle,
    .j_size_middle .j_size_short{
        width:89%;
    }
    .box_5cx2,
    .box_s,
    .box_3c{
        width:58.3333333333%;
    }
    .box_4c{
        width:43%;
    }
    .box_5c,
    .box_6c{
        width:27.6666666667%;
    }
}
@media screen and (max-width: 479px) {
    .box_5c{
        width:43%;
    }
}

.box.alignright{
    margin-right: 5.5%;
    margin-left: -2.5%;
}
.box.alignleft{
    margin-right: -2.5%;
    margin-left: 5.5%;
}
@media screen and (max-width: 767px) {
    .box_2c.alignright,
    .box_3cx2.alignright,
    .box_4cx3.alignright,
    .box_4cx2.alignright,
    .box_5cx3.alignright,
    .box_5cx4.alignright,
    .box_6cx5.alignright,
    .box_m.alignright,
    .box_5cx2.alignright,
    .box_s.alignright,
    .box_3c.alignright,
    .box_2c.alignleft,
    .box_3cx2.alignleft,
    .box_4cx3.alignleft,
    .box_4cx2.alignleft,
    .box_5cx3.alignleft,
    .box_5cx4.alignleft,
    .box_6cx5.alignleft,
    .box_m.alignleft,
    .box_5cx2.alignleft,
    .box_s.alignleft,
    .box_3c.alignleft{
        float: none;
        margin-left: 1.5%;
        margin-right: 1.5%;
        margin-bottom: 0;
    }
}

/* .boxのmarginを打ち消す */
.no_margin {margin: 15px 0;}
.box_2c.no_margin {width:44.5%;}
.box_3c.no_margin{width:29.1666666667%;}
.box_3cx2.no_margin{width:59.8333333333%;}
.box_4c.no_margin{width:21.5%;}
.box_4cx3.no_margin{width:67.5%;}
.box_5c.no_margin{width:16.9%;}
.box_5cx2.no_margin{width:35.3%;}
.box_5cx3.no_margin{width:53.7%;}
.box_5cx4.no_margin{width:72.1%;}
.box_6c.no_margin{width:13.8333333333%;}
.box_6cx5.no_margin{width:75.1666666667%;}
.box_m.no_margin{width:58.5%;}
.box_s.no_margin{width:30.5%;}

/*///////////////////////////////////////////////

パーツ（.cm_xxxxx）
------------------------------------------------*/

/* リンク　************************/

a{color:#CC3300;text-decoration: underline;}
a:hover{color:#B0880F;text-decoration: none;}
a img,.over{transition: 0.3s ease;}
a img:hover,.over:hover{
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
}

/* 文字の設定　************************/

em{font-weight:bold; font-style:normal}
small{font-size: 80%}
.big{font-size: 120%;}
.t_b{font-size: 120%;}
.t_b2{font-size: 150%;}
.t_b3{font-size: 200%;}
.t_s,.notes{
    font-size: 80%;
}
.t_price{
    color: #FFCC33;
}
.cm_lead{
    line-height: 2;
}

/* 標準タグ　************************/
ul,ol{
    margin: 0.3em 0 0.3em 1.2em;
}
li ul,li ol{
    margin: 0.2em 0 0.4em 1.2em;
}
li{
    margin: 0.4em 0;
}
nav ul,nav ol{
    list-style:none;
    margin-left: 0;
}
nav li ul,nav li ol{
    margin-left: 1.2em;
}
.j_ol{
    margin-left: 2em;
}
.j_ol > li{
    list-style: none;
}
.j_ol > li > .n:first-child{
    display: inline-block;
    background-color: #E4DBD3;
    border-radius: 50%;
    width: 1.5em;
    line-height: 1.5;
    margin: 0 0.7em 0 -2.2em;
    text-align: center;
    font-weight: 500;
    font-size: 85%;
}
hr{
    border: none;
    height: 0;
    border-top: #E7DFD3 solid 1px;
    margin: 35px auto 35px;
}
hr.no_line{
    border-top: none;
    margin: 0;
}
blockquote{
    border: #846046 solid 5px;
    padding: 18px 20px;
    max-width: 750px;
    margin: 24px auto;
}


/* 見出し　************************/
h1{
    font-size: 50px;
    line-height: 1.35;
    font-weight: 500;
    margin: 30px auto 20px;
}
@media screen and (max-width: 900px) {
    h1{
        font-size: 46px;
    }
}
@media screen and (max-width: 767px) {
    h1{
        font-size: 42px;
    }
}
@media screen and (max-width: 479px) {
    h1{
        font-size: 36px;
    }
}

h2{
    font-size: 150%;
    line-height: 1.35;
    font-weight: 500;
    margin: 60px auto 20px;
}
h2 > em{
    display: inline-block;
    font-size: 58.333333333%;
    font-weight: 500;
    font-style: normal;
    color: #aaa;
    letter-spacing: 1px;
}
h2 > em:first-child{
    color: #663300;
    margin-bottom: 0.3em;
}
header > h2,
*:first-child ~ header > h2:first-child{
    font-size: 200%;
    margin: 60px auto 20px;
}

h3{
    font-size: 125%;
    line-height: 1.35;
    margin: 40px auto 15px;
    padding: 0.5em 0.5em 0.5em 0.7em;
    font-weight: 500;
    background-color: #F9F7F4;
    border-left:#BA3344 solid 4px;
    text-shadow: 1px 1px 0 #fff;
}
h3 > em:first-child{
    display: block;
    font-size: 135%;
    line-height: 1;
    float: left;
    background-color: #BA3344;
    font-weight: 500;
    color: #ffffff;
    margin: -0.38em 0 0 -0.65em;
    padding: 0.36em 0.4em;
    text-shadow: none;
}
@media screen and (max-width: 767px) {
    h3 > em:first-child{
        padding-top: 0.38em;
        padding-bottom: 0.38em;
    }
}

h4{
    font-size: 125%;
    line-height: 1.3;
    color: #BA3344;
    margin: 20px 0 8px;
    text-shadow: none;
}
h4:first-child{
    margin-top: 0;
}


.alignleft + h1,
.alignleft + h2,
.alignleft + h3,
.alignleft + h4,
.alignright + h1,
.alignright + h2,
.alignright + h3,
.alignright + h4,
h1:first-child,
h2:first-child,
h3:first-child,
section:first-child h2:first-child{
    margin-top: 0;
}


/* レスポンシブ・画像変更　************************/
.cm_onry_long{
    display: block;
}
.cm_onry_short{
    display: none;
}
@media screen and (max-width: 767px) {
    .cm_onry_long{
        display: none;
    }
    .cm_onry_short{
        display: block;
    }
}


/* フレーム　***********************
.cm_fl img{
    display: inline-block;
    background-color: #D9B284;
    padding: 2.27272727272727%;
    max-width: 95.45454545454546%;
    margin-bottom: 8px;
}
.alignleft.cm_fl img,
.alignright.cm_fl img,
.aligncenter.cm_fl img{
    margin-bottom: 0;
}
.box_2c .cm_fl,
.box_3c .cm_fl,
.box_4c .cm_fl{
    max-width: 440px;
    margin: 0 auto;
}*/

/* ボタン　************************/
.cm_btn{
    text-align: center;
}
.cm_btn a,a.cm_btn{
    display: inline-block;
    background-color: #F0EBE8;
    background-image: url(img/cm_btn_icon.png);
    background-repeat: no-repeat;
    background-size: 4px auto;
    background-position: 0.9em 50%;
    color: #000000;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.35;
    text-decoration: none;
    padding: 0.7em 1em 0.7em 2.1em;
    transition: 0.3s ease;
}
.cm_btn a:hover,a.cm_btn:hover{
    background-color: #F4DBDE;
    background-position: 1.1em 50%;
}
.cm_btn a{
    margin: 0 auto;
    min-width: 180px;
}
.cm_btn2{
    text-align: center;
}
.cm_btn2 a,a.cm_btn2{
    display: inline-block;
    background-color: #BA3344;
    background-image: url(img/cm_btn2_icon.png);
    background-repeat: no-repeat;
    background-size: 4px auto;
    background-position: 0.6em 50%;
    color: #ffffff;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.35;
    text-decoration: none;
    padding: 0.5em 1em 0.5em 1.8em;
    transition: 0.3s ease;
}
.cm_btn2 a,a.cm_btn2:hover{
    background-color: #d93a4e;
    background-position: 0.8em 50%;
}


/* 写真　************************/

/* 画像を背景へ変換 必要CSS */
.j_img_bg_parent{
    background-size:cover;
    background-position: center center;
}
.j_img_bg_parent.atla_bottom{
    background-position: 50% 80%;
}
.j_img_bg_parent.atla_top{
    background-position: 50% 20%;
}
.j_img_bg_parent.atla_left{
    background-position: 20% 50%;
}
.j_img_bg_parent.atla_right{
    background-position: 80% 50%;
}
.j_img_bg_parent.atla_bottom.j_img_bg_parent.atla_left{
    background-position: 20% 80%;
}
.j_img_bg_parent.atla_top.j_img_bg_parent.atla_left{
    background-position: 20% 20%;
}
.j_img_bg_parent.atla_bottom.j_img_bg_parent.atla_right{
    background-position: 80% 80%;
}
.j_img_bg_parent.atla_top.j_img_bg_parent.atla_right{
    background-position: 80% 20%;
}
.j_display_none,
.la_wrapper .j_display_none{
    display: none;
}
.j_img_bg{
    position: absolute;
}


/* ページナビゲーション　************************/
.cm_page_nav{
    text-align: left;
    margin: 50px 30px 10px;
    max-width: 1050px;
    min-height: 20px;
}
.cm_page_nav p{
    display: inline-block;
    font-size: 13px;
    margin: 0;
}
.cm_page_nav a{
    color: #000;
    text-decoration: none;
}
.cm_page_nav p:after{
    content: '　＞　';
}
.cm_page_nav a:hover{
    text-decoration: underline;
    color: #666666;
}
.cm_page_nav h1{
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    border: 0;
    margin: 0;
    padding: 0;
}
.cm_page_nav h1:before{
    display: none;
}
/*.cm_page_nav p:first-child{
    margin-left: 30px;
}
.cm_page_nav h1{
    margin-right: 30px;
}*/
@media screen and (max-width: 767px) {
    .cm_page_nav{
        margin-left: 10px;
        margin-right: 10px;
    }
}


/* テーブル　************************/
@media screen and (min-width: 768px) {
    .alignright + table,
    .alignright + * + table,
    .alignright + * table,
    .alignright + * + * table,
    .alignleft + table,
    .alignleft + * + table,
    .alignleft + * table,
    .alignleft + * + * table{
        width: auto;
    }
}

table th, table td{
    padding: 0.5em 0.6em;
    border: #F2EDEC solid 1px;
    line-height: 1.4;
}
table.no_border th,
table.no_border td{
    padding: 0;
    border: none;
    line-height: 1.6;
}

.cm_dl + .cm_dl,
.cm_tb + .cm_tb{
    margin-top: 0;
}
h2 + .cm_dl,
h2 + .cm_tb{
    margin-top: -25px;
}
.cm_dl,
.cm_dt{
    margin-top: -10px;
}
.cm_dl table,
.cm_tb table{
    width: 100%;
}
.cm_dl th,.cm_dl td,
.cm_tb th,.cm_tb td{
    padding: 0.8em 0;
    border-width: 1px 0;
}
.cm_dl tr > * ~ th,.cm_dl tr > * ~ td,
.cm_tb tr > * ~ th,.cm_tb tr > * ~ td{
    padding-left: 0.8em;
}
/*.cm_dl tr:first-child *,.cm_tb tr:first-child *{
    border-top-width: 0;
}*/
@media screen and (max-width: 767px) {
    .cm_dl table{
        margin-top: 1em;
    }
    .cm_dl table th,
    .cm_dl table td{
        display: block;
        width: auto;
        border-width: 0;
    }
    .cm_dl table tr > *{
        padding-top: 0;
    }
    .cm_dl table tr ~ tr > *:first-child{
        background: none;
        padding-top: 1.2em;
        margin-top: 0.6em;
        border-top-width: 1px;
    }
}
@media screen and (max-width: 479px) {
    .cm_tb th,.cm_tb td{
        font-size: 85%;
    }
}



/* フォーム　************************/
.cm_form{
    margin: 30px auto;
}
.cm_form:first-child{
    margin-top: 0;
}
.cm_form:last-child{
    margin-bottom: 0;
}
.cm_form table{
    width: 100%;
    border-collapse: collapse;
    border-top: #CCCCCC solid 1px;
}
.cm_form table th,
.cm_form table td{
    border-bottom: #CCCCCC solid 1px;
    padding: 12px;
    font-size: 15px;
}
.cm_form table td{
    padding-right: 0;
}
.cm_form table th{
    background-color: #F3F3F3;
    vertical-align: top;
    text-align: left;
    font-size: 16px;
    padding: 18px 12px;
}
.cm_form table th em{
    display: inline-block;
    background-color: #FF3333;
    color: #ffffff;
    font-size: 13px;
    line-height: 21px;
    font-style: normal;
    padding: 0 8px;
    margin-top: 3px;
    border-radius: 5px;
    font-weight: bold;
    float: right;
}
.cm_form table .t_s{
    color: #666666;
}
.cm_form .wpcf7-radio .wpcf7-list-item{
    display: block;
}

/* フォームの標準　************************/
input[type="submit"],input[type="button"],input[type="reset"] {
    display: inline-block;
    padding: 0.5em 0.8em;
    margin: 1px 3px;
    background-color: #F0EBE8;
    color: #000000;
    border: #e6dad2 solid 1px;
    cursor: pointer;
    transition: 0.3s ease;
}
input[type="submit"]:hover,input[type="button"]:hover,input[type="reset"]:hover{
    background-color: #F4DBDE;
}

input[type="submit"]{
    display: inline-block;
    background-color: #BA3344;
    background-image: url(img/cm_btn2_icon.png);
    background-repeat: no-repeat;
    background-size: 4px auto;
    background-position: 0.9em 50%;
    color: #ffffff;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.35;
    text-decoration: none;
    padding: 0.7em 1em 0.7em 2.1em;
    transition: 0.3s ease;
}
input[type="submit"]:hover{
    background-color: #d93a4e;
    background-position: 1.1em 50%;
}

input.at_big{
    font-size: 20px;
    line-height: 25px;
    padding: 13px 40px;
    letter-spacing: 2px;
    border-radius: 8px;
    text-shadow: 3px 3px 0 #000;
}
textarea{
    width: 100%;    
}
input[type="text"],input[type="tel"],input[type="email"],input[type="password"],textarea,.wpcf7c-conf{
    padding: 2px 6px;
    margin: 1px 3px;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.6;
    color: #000;
    box-sizing: border-box;
    max-width: 450px;
    border: #DACAC7 solid 1px;
    background-color: #fff;
    box-shadow:none;
    box-sizing: border-box;
}
input[type="text"]:focus,input[type="tel"]:focus,input[type="email"]:focus,input[type="password"]:focus,textarea:focus{
    border: #db998c solid 1px;
}
input.w_min,textarea.w_min{
    max-width: 160px;
}
input.w_middle,textarea.w_middle{
    max-width: 290px;
}
input.w_max,textarea.w_max{
    width: 100%;
    max-width: none;
}
input[type="radio"],input[type="checkbox"]{
    vertical-align: top;
}
@media screen and (max-width: 767px) {
    input[type="text"]{
        width: 100%;
    }
}
@media screen and (max-width: 479px) {
    input[type="text"],input[type="tel"],input[type="email"],input[type="password"],textarea,.wpcf7c-conf{
        max-width: 300spx;
    }
}
.cm_tate .wpcf7-list-item{
    display: block;
}




/* ページの先頭へ　************************/
.cm_totop{
    position:fixed;
    bottom:0;
    right:20px;
    z-index: 3;
}
.cm_totop a{
    font-family: "メイリオ",メイリオ,Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",sans-serif;
    display: block;
    margin-bottom: 20px;
    background-color: #F0EBE8;
    background-image: url(./img/totop.png);
    background-position: 50% 17px;
    background-size:30px auto;
    background-repeat:  no-repeat;
    border-radius: 50%;
    width: 70px;
    height: 35px;
    overflow: hidden;
    color: #333;
    font-size: 10px;
    text-decoration: none;
    text-align: center;
    line-height: 35px;
    padding-top: 35px;
    transition-duration:0.3s;
    transition-timing-function:ease-out;
    opacity: 0.6;
    position: relative;
    top:0;
}
.cm_totop a:hover{
    opacity: 1;
    top:-12px;
}

/*///////////////////////////////////////////////

モジュール（.mo_xxxxx）
------------------------------------------------*/

/* コラムボックス　************************/
.mo_column{
    background-color: #F8F5F4;
    padding: 25px;
    margin: 30px auto;
    max-width: 600px;
}
.la_side .mo_column{
    padding: 12px;
    margin: 0;
    font-size: 13px;
}


/* 画像と文章のリンクボックス　************************/
.mo_linkbox a{
    display: block;
    text-decoration: none;
    color: #000000;
}
.mo_linkbox em{
    display: block;
    text-align: center;
    font-style: normal;
    font-weight: 500;
    color: #663300;
    padding: 0.6em 0 0.3em;
}
.mo_linkbox strong{
    display: block;
    font-weight: 500;
    font-size: 125%;
    padding: 0 0 0.2em;
}
@media screen and (max-width: 999px) {
    .box .mo_linkbox{
        font-size: 87.5%;
    }
}
@media screen and (max-width: 479px) {
    .box .mo_linkbox{
        font-size: 75%;
    }
}


/* 名前ボックス　************************/
.mo_name{
    background-color: #F9F7F4;
    margin: 32px auto;
    max-width: 490px;
    text-align: center;
    line-height: 1.3;
}
.mo_name p{
    display: inline-block;
    vertical-align: middle;
    text-align: right;
    padding: 15px 18px;
    margin: 0;
}
@media screen and (max-width: 530px) {
    .mo_name p{
        display: block;
        text-align: center;
    }
    .mo_name p ~ p{
        padding-top: 0;
    }
}


/* フロー　************************/
.j_flow,.j_flow ol,.j_flow li,.j_flow > div{
    margin: 0;
    list-style: none;
}
.mo_flow{
    margin: 25px auto;
}
.mo_flow li,
.mo_flow > div{
    background-color: #F9F7F4;
    padding: 15px;
    margin: 0;
    position: relative;
}
.mo_flow li ~ li,
.mo_flow > div ~ div{
    margin-top: 40px;
}
.mo_flow li ~ li::before,
.mo_flow > div ~ div::before{
    content: '';
    display: block;
    position: absolute;
    top:-30px;
    left: 50%;
    width: 0;
    height: 0;
    border-top: 15px solid #B21A2D;
    border-right: 15px solid transparent;
    border-bottom: 0 solid transparent;
    border-left: 15px solid transparent;
}
.mo_flow li > .in,
.mo_flow > div > .in{
    display: inline-block;
    vertical-align: middle;
}
.mo_flow li > .n,
.mo_flow > div > .n{
    display: inline-block;
    vertical-align: middle;
    font-size: 150%;
    color: #B21A2D;
    padding: 0.5em 2em 0.5em 1em;
}
@media screen and (max-width: 767px) {
    .mo_flow li > .n,
    .mo_flow > div > .n{
        display: block;
        padding: 0 0 0.5em;
    }
}


/* MENU　************************/
h2.at_menu{
    font-size: 150%;
    line-height: 1;
    padding: 0.8em 0.5em;
    font-weight: 500;
    text-align: center;
    background-color: #F9F7F4;
    border-top:#BA3344 solid 2px;
    text-shadow: 1px 1px 0 #fff;
    margin: 60px auto 20px;
}
h2.at_menu > em{
    display: inline-block;
    font-size: 58.333333333%;
    font-weight: 500;
    font-style: normal;
    color: #aaa;
    letter-spacing: 1px;
}
h2.at_menu > em:first-child{
    color: #663300;
    margin-bottom: 0.3em;
}

h3.at_menu{
    font-size: 125%;
    line-height: 1.35;
    margin: 50px auto 15px;
    padding: 0.2em 45% 0.2em 0.4em;
    font-weight: 500;
    color: #ffffff;
    background-color: #BA3344;
    background: -moz-linear-gradient(left, #ba3344 50%, #da959c 50%);
    background: -webkit-linear-gradient(left, #ba3344 50%,#da959c 50%);
    background: linear-gradient(to right, #ba3344 50%,#da959c 50%);
    text-shadow: none;
    letter-spacing: 1px;
}
h2 + h3.at_menu{
    margin-top: 20px;
}
@media screen and (max-width: 999px) {
    h3.at_menu{
        background-size: 120% 100%;
    }
}
@media screen and (max-width: 479px) {
    h3.at_menu{
        background-size: 180% 100%;
        padding-right: 15%;
    }
    
}

.mo_menu{
    background-color: #F9F7F4;
    margin: 20px auto;
    padding: 1px 0;
}
.mo_menu > .box_wrap{
    margin-top: -11px;
    margin-bottom: -11px;
}
.mo_menu > .box_wrap > .box{
    margin: 30px 2% 30px 1%;
}
.mo_menu > .box_wrap > .box:first-child{
    margin: 10px 1.5%;
}
.mo_menu,
.mo_menu .box > *{
    font-size: 87.5%;
}
.mo_menu h4{
    font-size: 100%;
    line-height: 1.3;
    color: #999999;
    margin: 0;
    text-shadow: none;
    letter-spacing: -1px;
}
.mo_menu .box > h4{
    font-size: 114.2857142857143%;
}
.mo_menu h5{
    font-size: 125%;
    line-height: 1.3;
    font-weight: 500;
    margin: 0.3em 0;
    letter-spacing: -1px;
}
.mo_menu h5:first-child{
    margin-top: -5px;
}
.mo_menu .box > h5{
    font-size: 142.8571428571429%;
}

.mo_colorlist,.mo_colorlist ul{
    margin: 0;
}
.mo_colorlist li{
    margin: 0;
    list-style: none;
    display: inline-block;
    font-size: 12px;
    line-height: 1.35;
    padding: 0.1em 0.7em 0.1em 0;
}
.mo_colorlist li > a,
.mo_colorlist li > img,
.mo_colorlist li > em{
    display: inline-block;
    vertical-align: middle;
}
.mo_colorlist li > em{
    padding-left: 0.5em;
    font-weight: 500;
    font-style: normal;
}




/* 動画・レスポンシブ対応　************************/
.w_iframe {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.w_iframe.at_vlong{
    padding-top: 120%;
}
.w_iframe iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}


/* 地図　************************/
.mo_map{
    position: relative;
    text-shadow: none;
}
.mo_map .in_btn{
    position: absolute;
    display:block;
    background: #DB0B0B;
    color:#ffffff;
    padding:5px 25px;
    top:10px;
    right:10px;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
    letter-spacing: 1px;
}
.mo_map .in_btn:hover{
    background-color: #f73526;
}




/* ページネーション ************************/
.def_sin_pager{
    margin: 10px 20px 30px;
    padding-top: 50px;
}
.def_sin_pager li:first-child{
    float: right;
}
.def_sin_pager li{
    float: left;
    list-style: none;
    border-bottom: none;
}
.def_sin_pager li.back{
    float: none;
    text-align: center;
}
.pagination{
    text-align: center;
    padding:20px 0 40px 0;
    clear:both;
}
a.page-numbers,
.pagination .current{
    display:inline-block;
    background-color: #F0EBE8;
    color: #333;
    padding:0px;
    width:30px;
    line-height:30px;
    font-size:13px;
    font-weight:bold;
    text-align:center;
    margin:0 2px;
    text-decoration: none;
}
a.page-numbers:hover{
    background-color: #d14f5f;
    color: #fff;
}
.pagination .current{
    background-color: #BA3344;
    color: #fff;
}




/* イメージギャラリー ***********************/
.fotorama .gallery-item{
    display: none;
}
.fotorama .gallery-item.at_show{
    display: block;
}

.gallery{
    margin: 0 -6.1797752809% -15px;
    list-style: none;
    font-size: 0;
    text-align: center;
}
.gallery > *{
    text-align: left;
    font-size: 15px;
    max-width: 89%;
    list-style: none;
}
 .gallery-item{
    display: inline-block;
    vertical-align: top;
    margin:0 auto 4px;
    list-style: none;
    box-sizing: border-box;
    position: relative;
    font-size: 14px;
     list-style: none;
     transition: 0.3s;
 }
.gallery-item:hover{
    opacity: 0.7;
}
.gallery-item + br{
    display: none;
    clear: none;
}
.gallery-item .gallery-icon{
}
.gallery-item .gallery-icon a{
    display:block;
}
.gallery-item .gallery-icon a:hover img{
    top:0;
    left: 0;
    opacity: 1;
}
.gallery-item .gallery-icon img{
    display: inline-block;
    height:auto;
}
.gallery-item .gallery-icon img:hover,
.gallery-item a:hover .gallery-icon img{
    opacity: 0.75;
}
.gallery + .gallery{
    margin-top: 20px;
}
.gallery-columns-2 .gallery-item,.box .gallery-columns-2 .gallery-item{width:44%;margin-left:0.5%;margin-right:0.5%;}
.gallery-columns-3 .gallery-item,.box .gallery-columns-3 .gallery-item{width:29%;margin-left:0.5%;margin-right:0.5%;}
.gallery-columns-4 .gallery-item,.box .gallery-columns-4 .gallery-item{width:21.5%;margin-left:0.5%;margin-right:0.5%;}

.gallery-columns-5 .gallery-item,.box .gallery-columns-5 .gallery-item{width:17%;margin-left:0.5%;margin-right:0.5%;}
.gallery-columns-6 .gallery-item,.box .gallery-columns-6 .gallery-item{width:14%;margin-left:0.5%;margin-right:0.5%;}
.gallery-columns-7 .gallery-item,.box .gallery-columns-7 .gallery-item{width:12%;margin-left:0.5%;margin-right:0.5%;}
.gallery-columns-8 .gallery-item,.box .gallery-columns-8 .gallery-item{width:11.8571428571%;margin-left:0.5%;margin-right:0.5%;}
.gallery-columns-9 .gallery-item,.box .gallery-columns-9 .gallery-item{width:9%;margin-left:0.5%;margin-right:0.5%;}
@media screen and (max-width: 767px) {
    .gallery{padding: 1px 0;}
    .gallery-columns-2 .gallery-item{
        width:89%;
    }
    .gallery-columns-3 .gallery-item{
        width:59%;
    }
    .gallery-columns-4 .gallery-item,
    .gallery-columns-5 .gallery-item{
        width:44%;
    }
    .gallery-columns-6 .gallery-item,
    .gallery-columns-7 .gallery-item{
        width:29%;
    }
    .gallery-columns-8 .gallery-item,
    .gallery-columns-9 .gallery-item{
        width:21.5%;
    }
}

/* 共通 */
.gallery-item{
    font-size: 10px;
    list-style: none;
    overflow: hidden;
    position:relative;
    top:0;
    transition: 0.3s;
    text-align: left;
}
.gallery-item .gallery-icon{
    overflow: hidden;
    margin:0 auto;
}
.gallery-item .gallery-icon a{
    display:block;
}
.gallery-item .gallery-icon a:hover img{
    top:0;
    left: 0;
    opacity: 1;
}
.gallery-item:hover{
    opacity: 0.7;
}
.gallery-item .gallery-icon a img{
    display:block;
    width:100%;
    height:auto;
}
.gallery-item .gallery-icon img:hover,
.gallery-item a:hover .gallery-icon img{
    opacity: 0.75;
}
.gallery-item .gallery-caption{
    position: absolute;
    bottom:0;
    left:0;
    width: 96%;
    background-color: rgba(0, 0, 0, 0.62);
    line-height: 1.4;
    font-weight: bold;
    font-size: 14px;
    padding: 6px 2%;
    max-height: 2.5em;
    transition: 0.3s;
}
.gallery-columns-1  .gallery-item .gallery-caption,
.gallery-columns-2  .gallery-item .gallery-caption{
    max-height: 1.28em;
}
.gallery-item:hover .gallery-caption{
    max-height: 92%;
}
.gallery-columns-6 .gallery-item .gallery-caption,
.gallery-columns-7 .gallery-item .gallery-caption{
    font-size: 12px;
    padding: 4px 2%;
}
.gallery-columns-8 .gallery-item .gallery-caption,
.gallery-columns-9 .gallery-item .gallery-caption{
    font-size: 11px;
    padding: 3px 2%;
}
.box .gallery-item .gallery-caption{
    font-size: 12px;
    padding: 4px 2%;
}
.gallery-columns-6 .gallery-item .gallery-caption,
.gallery-columns-7 .gallery-item .gallery-caption{
    font-size: 11px;
    padding: 3px 2%;
}
.gallery-columns-8 .gallery-item .gallery-caption,
.gallery-columns-9 .gallery-item .gallery-caption{
    font-size: 10px;
    padding: 2px 2%;
}
.gallery-item .gallery-caption a{
    color: #fff;
    text-decoration: none;
}
.gallery .in_plice{
    text-align: right;
    display: block;
}
.gallery .in_plice .in_menu{
    float: left;
    display: block;
    text-align: left;
    max-width: 75%;
}


/* ウィジェット ************************/
.widget{
    font-size: 14px;
    margin: 0 0 30px;
}
.widgettitle,.widgettitle:first-child{
    margin: 20px 0 8px 0;
    padding: 0;
    background: none;
    font-size: 16px;
    text-align: left;
    letter-spacing: normal;
    position: static;
}
.widget:first-child .widgettitle:first-child{
    margin-top: 0;
}
.widget > ul{
    margin: 0;
    list-style: none;
}
.widget li{
    line-height: 1.5;
}

/* エントリー ************************/
.mo_entry{
    border-top: #F9F7F4 solid 3px;
    background-repeat: repeat-x;
    padding-bottom: 40px;
}

.mo_entry .in_data{
    float: right;
    width: 100px;
    text-align: right;
    font-size: 14px;
    margin-left: 20px;
}
.mo_entry .in_date{
    display: block;
    background-color: #F0EBE8;
    padding: 15px 5px;
    color: #333333;
    font-weight: bold;
    font-size: 12px;
    line-height: 1.35;
    text-align: center;
}
.mo_entry .in_date strong{
    font-weight: 500;
    font-size: 175%;
}
.mo_entry .in_category{
    font-size: 0;
    margin-bottom: 6px;
}
.mo_entry .in_category a{
    display: block;
    background-color: #BA3344;
    color: #ffffff;
    font-weight: bold;
    line-height: 18px;
    font-size: 12px;
    text-align: center;
    width: auto;
    text-decoration: none;
    padding: 4px 0 3px;
    margin: 5px 0 0;
    text-align: center;
}
.mo_entry .in_category a:hover{
    background-color: #db5767;
}
.mo_entry h1{
    font-weight: 500;
    font-size: 150%;
    line-height: 1.35;
    color: #000000;
    padding: 30px 0 18px;
    margin: 0;
}
.mo_entry h1 a{
    color: #000000;
    text-decoration: none;
}
.la_comments{
    clear: both;
    margin-top: 80px;
    font-size: 14px;
    padding: 15px;
    background-color: #F9F7F4;
}
.la_comments h3{
    background-color: #FFF;
}
.la_comments .comment-respond{
    margin: 30px 10px;
}
.la_comments .comment{
    list-style: none;
}
.la_comments .comment ~ .comment{
    margin-top: 15px；
}
.la_comments .comment-author{
    background-color: rgba(250, 250, 250, 0.25);
    padding: 3px 5px;
    font-size: 120%;
    font-weight: bold;
}
.la_comments .comment-meta{
    text-align: right;
}


/*///////////////////////////////////////////////

ページ別コンテンツ .pg_xxx_xxxx
------------------------------------------------*/
.pg_top_title{
    margin: 35px 0 45px;
    font-size: 0;
}
.pg_top_title > li{
    display: inline-block;
    vertical-align: top;
    margin: 0;
    list-style: none;
    width: 34.16666666666667%;
}
.pg_top_title > li.at_min{
    width: 31.66666666666667%;
}
.pg_top_title > li > a,
.pg_top_title > li > img,
.pg_top_title > li > span{
    display: inline-block;
    vertical-align: top;
    margin-bottom: 10px;
    margin-right: 2.439024390243902%;
}
.pg_top_title > li > a > img,
.pg_top_title > li > span > img,
.pg_top_title > li > img{
    width: 100%;
}
.pg_top_title > li:first-child > img,
.pg_top_title > li:first-child > span{
    width: 47.5609756097561%;
}
.pg_top_title > li.at_min > a,
.pg_top_title > li.at_min > img,
.pg_top_title > li.at_min > span{
    margin-right: 0;
}
@media screen and (max-width: 1050px) {
    .pg_top_title > li > a,
    .pg_top_title > li > img,
    .pg_top_title > li > span{
        margin-bottom: 9px;
    }
}
@media screen and (max-width: 980px) {
    .pg_top_title > li > a,
    .pg_top_title > li > img,
    .pg_top_title > li > span{
        margin-bottom: 8px;
    }
}
@media screen and (max-width: 860px) {
    .pg_top_title > li > a,
    .pg_top_title > li > img,
    .pg_top_title > li > span{
        margin-bottom: 7px;
    }
}
/* 
@media screen and (max-width: 760px) {
    .pg_top_title > li > a,
    .pg_top_title > li > img{
        margin-bottom: 6px;
    }
}
@media screen and (max-width: 650px) {
    .pg_top_title > li > a,
    .pg_top_title > li > img{
        margin-bottom: 5px;
    }
}　*/
@media screen and (max-width: 1220px) {
    .pg_top_title{
        margin: 10px 10px 35px;
        font-size: 0;
    }
}
@media screen and (min-width: 480px) and (max-width: 767px) {
    .pg_top_title > li:first-child{
        display: block;
        width: auto;
    }
    .pg_top_title > li:first-child > a{
        width: 59.52380952380952%;
        margin-right: 1.42%;
        float: left;
    }
    .pg_top_title > li:first-child > img,
    .pg_top_title > li:first-child > span{
        width: 38.98809523809524%;
        margin-right: 0;
        padding-bottom: 0.56%;
    }
    .pg_top_title > li{
        width: 51.89873417721519%;
    }
    .pg_top_title > li.at_min{
        width: 48.10126582278481%;
    }
}
@media screen and (max-width: 479px) {
    .pg_top_title > li,
    .pg_top_title > li.at_min{
        display: block;
        width: auto;
    }
    .pg_top_title > li.at_min{
        margin-right: 0;
    }
    .pg_top_title > li > a,
    .pg_top_title > li > img,
    .pg_top_title > li > span{
        margin-bottom: 10px;
    }
    .pg_top_title > li{
        margin-right: -2.4%;
    }
}

.pg_news_widget_area{
    background-color: #F9F7F4;
    font-size: 87.5%;
    font-weight: bold;
    color: #333;
    text-align: center;
}
.news_widget{
    display: inline-block;
    padding: 15px 12px 12px;
}
.pg_news_widget_area .widgettitle, .pg_news_widget_area .widgettitle:first-child{
    display: none;
}
.screen-reader-text{
    margin-right: 10px;
}


/*///////////////////////////////////////////////

調整
------------------------------------------------*/



/*///////////////////////////////////////////////

JS用
------------------------------------------------*/


.bx-pager{
    position: absolute;
    bottom: 0;
    margin: 0 auto 0;
    z-index:100;
    width:100%;
    text-align: center;
    height: 30px;
    z-index: 150;
}
.bx-pager .bx-pager-item{
    display: inline;
    padding:0 6px;
}
.bx-pager .bx-pager-item .bx-pager-link{
    display: inline-block;
    text-indent:-9999px;
    background:#ffffff;
    box-shadow: #492C0F 0 0 3px;
    width:7px;
    height:7px;
    margin:0 auto;
    border-radius:8px;
    filter:alpha(opacity=60);-moz-opacity: 0.6;opacity: 0.6;
}
.bx-pager .bx-pager-item .bx-pager-link.active,
.bx-pager .bx-pager-item .bx-pager-link:hover{
    filter:alpha(opacity=95);-moz-opacity: 0.95;opacity: 0.95;
}

.bx-controls-auto {
    display: none;
}

.bx-controls-direction .bx-prev,
.bx-controls-direction .bx-next {
    position: absolute;
    top:50%;
    margin-top:-30px;
    z-index: 100;
    width: 40px;
    height: 60px;
    overflow: hidden;
    text-indent: -9999px;
    background: url(null) no-repeat left top;
    background-size: 100% auto;
    transition:background 0s ease-out;
}

.bx-controls-direction .bx-prev:hover,
.bx-controls-direction .bx-next:hover {
    background-position: left bottom;
}

.bx-controls-direction .bx-prev {
    left: -40px;
    background-image: url(./files/bxslider/sl_l.png);
}

.bx-controls-direction .bx-next {
    right: -40px;
    background-image: url(./files/bxslider/sl_r.png);
}


/*! Swipebox v1.3.0 | Constantin Saguin csag.co | MIT License | github.com/brutaldesign/swipebox */
html.swipebox-html.swipebox-touch {
    overflow: hidden !important;
}

#swipebox-overlay img {
    border: none !important;
}

#swipebox-overlay {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999 !important;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#swipebox-container {
    position: relative;
    width: 100%;
    height: 100%;
}

#swipebox-slider {
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    white-space: nowrap;
    position: absolute;
    display: none;
    cursor: pointer;
}
#swipebox-slider .slide {
    height: 100%;
    width: 100%;
    line-height: 1px;
    text-align: center;
    display: inline-block;
}
#swipebox-slider .slide:before {
    content: "";
    display: inline-block;
    height: 50%;
    width: 1px;
    margin-right: -1px;
}
#swipebox-slider .slide img,
#swipebox-slider .slide .swipebox-video-container,
#swipebox-slider .slide .swipebox-inline-container {
    display: inline-block;
    max-height: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    width: auto;
    height: auto;
    vertical-align: middle;
}
#swipebox-slider .slide .swipebox-video-container {
    background: none;
    max-width: 1140px;
    max-height: 100%;
    width: 100%;
    padding: 5%;
    box-sizing: border-box;
}
#swipebox-slider .slide .swipebox-video-container .swipebox-video {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    position: relative;
}
#swipebox-slider .slide .swipebox-video-container .swipebox-video iframe {
    width: 100% !important;
    height: 100% !important;
    position: absolute;
    top: 0;
    left: 0;
}
#swipebox-slider .slide-loading {
    background: url(./files/sb_loader.gif) no-repeat center center;
}

#swipebox-bottom-bar,
#swipebox-top-bar {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    position: absolute;
    left: 0;
    z-index: 999;
    height: 50px;
    width: 100%;
}

#swipebox-bottom-bar {
    bottom: -50px;
}
#swipebox-bottom-bar.visible-bars {
    -webkit-transform: translate3d(0, -50px, 0);
    transform: translate3d(0, -50px, 0);
}

#swipebox-top-bar {
    top: -50px;
}
#swipebox-top-bar.visible-bars {
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0);
}

#swipebox-title {
    display: block;
    width: 100%;
    text-align: center;
}

#swipebox-prev,
#swipebox-next,
#swipebox-close {
    background-image: url(./files/sb_icons.png);
    background-repeat: no-repeat;
    border: none !important;
    text-decoration: none !important;
    cursor: pointer;
    width: 50px;
    height: 50px;
    top: 0;
}

#swipebox-arrows {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: 50px;
}

#swipebox-prev {
    background-position: -32px 13px;
    float: left;
}

#swipebox-next {
    background-position: -78px 13px;
    float: right;
}

#swipebox-close {
    top: 0;
    right: 0;
    position: absolute;
    z-index: 9999;
    background-position: 15px 12px;
}

.swipebox-no-close-button #swipebox-close {
    display: none;
}

#swipebox-prev.disabled,
#swipebox-next.disabled {
    opacity: 0.3;
}

.swipebox-no-touch #swipebox-overlay.rightSpring #swipebox-slider {
    -webkit-animation: rightSpring 0.3s;
    animation: rightSpring 0.3s;
}
.swipebox-no-touch #swipebox-overlay.leftSpring #swipebox-slider {
    -webkit-animation: leftSpring 0.3s;
    animation: leftSpring 0.3s;
}

.swipebox-touch #swipebox-container:before, .swipebox-touch #swipebox-container:after {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    content: ' ';
    position: absolute;
    z-index: 999;
    top: 0;
    height: 100%;
    width: 20px;
    opacity: 0;
}
.swipebox-touch #swipebox-container:before {
    left: 0;
    box-shadow: inset 10px 0px 10px -8px #656565;
}
.swipebox-touch #swipebox-container:after {
    right: 0;
    box-shadow: inset -10px 0px 10px -8px #656565;
}
.swipebox-touch #swipebox-overlay.leftSpringTouch #swipebox-container:before {
    opacity: 1;
}
.swipebox-touch #swipebox-overlay.rightSpringTouch #swipebox-container:after {
    opacity: 1;
}

@-webkit-keyframes rightSpring {
    0% {
        left: 0;
    }
    50% {
        left: -30px;
    }
    100% {
        left: 0;
    }
}

@keyframes rightSpring {
    0% {
        left: 0;
    }
    50% {
        left: -30px;
    }
    100% {
        left: 0;
    }
}
@-webkit-keyframes leftSpring {
    0% {
        left: 0;
    }
    50% {
        left: 30px;
    }
    100% {
        left: 0;
    }
}
@keyframes leftSpring {
    0% {
        left: 0;
    }
    50% {
        left: 30px;
    }
    100% {
        left: 0;
    }
}
@media screen and (min-width: 801px) {
    #swipebox-close {
        right: 10px;
    }

    #swipebox-arrows {
        width: 92%;
        max-width: 800px;
    }
}
/* Skin 
--------------------------*/
#swipebox-overlay {
    background: #000000;
    background: rgba(0,0,0,0.8);
}

#swipebox-bottom-bar,
#swipebox-top-bar {
    text-shadow: 1px 1px 1px black;
    background: #000000;
    background: rgba(0,0,0,0.5);
}

#swipebox-top-bar {
    color: white !important;
    font-size: 15px;
    line-height: 43px;
    font-family: Helvetica, Arial, sans-serif;
}

.nocomments{
    display:none;
}



/* OWL調整 
--------------------------*/
body .owl-theme .owl-controls .owl-page span{
    width: 10px;
    height: 10px;
    margin: 5px 5px;
    filter: Alpha(Opacity=50);
    opacity: 0.5;
    background: #fafafa;
}


/* モーダルウィンドウ
--------------------------*/

body {
    position:relative;
}

/* モーダルウィンドウのスタイル */
.modal_wrap {
    position:fixed;
    width:100%;
    height:100vh;
    z-index:1999;
    top:0;
    left:0;
    display:none;
    overflow: auto;
}
.modal_inner {
    position:absolute;
    z-index:2001;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width: 100%;
}
.modal_inner *{
    border: none;
    background: none;
    padding: 0;
    margin: 0;
    box-shadow: none;
    text-shadow: none;
    border-radius: 0;
}
.modal_inner *::after,
.modal_inner *::before{
    display: none;
}
.modal_inner > .modalClose{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:2002;
}
.modal_inner > table{
    position: relative;
    z-index:2003;
}

/* オーバーレイのスタイル */
.modal_overLay {
    position:absolute;
    top:0;
    left:0;
    background:rgba(0,0,0,0.8);
    width:100%;
    height:100vh;
    z-index:2000;
}

/* タイトル */
.modal_inner p{
    margin: 0;
    font-size: 14px;
    color: #ffffff;
    text-align: left;
}
.modal_inner img + p{
    margin-top: 0.5em;
}

/* iframe設定 */
.modal_fl .modal_inner{
    width: 80%;
    max-width: 560px;
}
.modal_fl .modal_inner iframe{
    width: 100%;
    height: 85vh;
}
.modal_wrap.modal_fl{
    display: block;
    left: 150%;
    opacity: 1;
}

/* 画像設定 */
.modal_img .modal_inner{
    width: 100%;
}
.modal_img .modal_inner img{
    max-height: 90vh;
}

.modal_close{
    display: block;
    position: absolute;
    z-index: 2004;
    right: 0;
    top: 0;
    color: #ffffff;
    font-size: 22px;
    width: 30px;
    height: 30px;
    line-height: 35px;
    background-color: black;
    background-color: rgba(0, 0, 0, 0.3);
    cursor: pointer;
    text-align: center;
}

.modal_inner .cm_btn{
    display:block;
    padding:5px 8px;
    line-height:1.35;
    background:#74A545;
    color:#ffffff;
    text-decoration:none;
}


.laft_phone{
    display: none;
    width: 100%;
    background-color: #B21A2D;
}
.laft_phone > *{
    display: table;
    width: 100%;
}
.laft_phone > * > a,
.laft_phone > * > a:visited{
    display: table-cell;
    padding: 14px 2px;
    text-align: center;
    font-size: 13px;
    line-height: 20px;
    font-weight: 500;
    color: #fff;
    text-decoration: none;
    text-shadow: 0 0 5px rgba(49, 22, 5, 0.85);
}
.laft_phone > * > a:hover{
    color: #fff;
    background-color: rgba(255, 255, 255, 0.35);
}
.laft_phone > * > a > img{
    width: auto;
    height: 20px;
}
.laft_phone > * > a ~ a{
    border-left: 1px solid rgba(255, 255, 255, 0.16);
}
.editor-area .la_footer{
    margin-bottom: 30px;
}
.editor-area .laft_phone{
    display: table;
}
@media screen and (max-width: 767px) {
    .laft_phone{
        position: fixed;
        bottom: 0;
        left: 0;
        display: block;
        z-index: 200;
    }
    .la_footer{
        padding-bottom: 50px;
    }
}