@charset "utf-8";

/* 共通部分
============================================================================== */
* { -webkit-box-sizing: border-box; box-sizing: border-box; }
*:before,
*:after { -webkit-box-sizing: border-box; box-sizing: border-box; }
html, body {
    /*background: #f7f3f2 url("../img/cmn/bg_paper.png") left top repeat;*/
    background-color:#FFF;
    overflow-x: hidden;
    font-size: 14px;
    line-height: 1.8;
    font-weight:400;
    font-style: normal;
    letter-spacing: 0.0em;
    color: #333333;
    /* 源ノ角ゴシック(sans)と源ノ明朝(serif) */
    font-family:  Meiryo, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
}
#content, footer { min-width: 0; }
.inner,
.inner2 {
    width:100%;
    max-width: 1075px;
    padding:0 0;
    margin: 0 auto;
    position: relative;
}
#content.low .inner { max-width:800px; font-size: 14px; }
#content.low .inner2 { max-width:600px; font-size: 14px; }
table { table-layout: fixed; border-collapse: collapse; }
td input { max-width: 100%; }
i, em { font-style: normal; }
ul { padding:0; margin:0; }
li { list-style: none; }
img { max-width:100%; height:auto; }
video { width:100%; height:auto; }
a, a:hover, a:active, a:focus { outline: none; text-decoration:none; }
a:hover {
    -o-transition:.3s ease-out, background .3s ease-in;
    -ms-transition:.3s ease-out, background .3s ease-in;
    -moz-transition:.3s ease-out, background .3s ease-in;
    -webkit-transition:.3s ease-out, background .3s ease-in;
    transition:.3s ease-out, background .3s ease-in;
    opacity: 0.6;
}
figure { margin:0; }
.pc-only { /*display: none;*/ }
.sp-only { display: none; }

/* page top button */
#page-top {
    position: fixed; bottom: 20px; right: 50px;
    font-size:0; line-height:0; z-index:9999;
}
#page-top a {
    width:60px;
    height:120px;
    background:url("../img/cmn/pagetop_icn.png") center center / 80px auto no-repeat;
}
#page-top a:before {
    content:"";
    display:block;
    width:60px;
    height:120px;
    margin:0;
}
#page-top a:hover { opacity:0.9; }
#page-top a:after { display:none; }
/*#page-top a {
    display: block; width: 50px; padding: 10px 0;
    text-align: center; text-decoration: none; border-radius: 5px;
    background: #c29040; color: #fff; border:1px solid transparent;
}*/
/*#page-top a:hover { background: #c29040; color:#352711; border:1px solid #c29040; opacity:1; }*/

.font_gen { font-family:  serif; }

/* 汎用パーツ
============================================================================== */
/* link effect */
a.noeffect::after { content: ''; background-color: transparent; }
a.noeffect:hover::after { width:0; }
/* default effect */
a, a img {
    color: #333333;
    -webkit-transition: 0.3s; transition: 0.3s;
    display: inline-block; position: relative;
}
a:hover, a:active, a:focus { color: #c29040; }
a::after {
    content: ''; width:100%; height: 1px;
    position: absolute; bottom: .3em; left: 0;
    background-color: #c29040; opacity: 0; transition: .3s;
}
a:hover::after { bottom:-.3em; opacity:1; }
a img:hover { opacity:0.7; }
/* img effect */
a.imgWrap { line-height:0; overflow:hidden; background: #000; opacity:1; z-index:3; position:relative; }
a.imgWrap::after, a.imgWrap:hover::after, a.imgWrap img::after { display:none; line-height:0; }
a.imgWrap.white { background: #FFF; }
a.imgWrap.white figcaption.fadetitle { color:rgba(0,0,0,0.9); }
a.imgWrap:hover img { display:block; transform: scale(1.02); transition-duration: 0.3s; opacity: 0.6; z-index:2; }
a.imgWrap.white:hover img { opacity: 0.8; transform: scale(1.03); }
a.imgWrap figcaption.fadetitle {
    position:absolute; bottom:1em; left:0; z-index:2; transition: .3s; opacity:0;
    width:calc(100% - 4em); margin:auto 2em; padding:0;
    color:rgba(255,255,255,0.9); transition-duration:.6s; transition: .3s;
}
a.imgWrap:hover figcaption.fadetitle {
    bottom:1.5em; left:0; opacity:1;
}
a.imgWrap figcaption.fadetitle .atitle {
    display:block; text-align:left;
    font-size:1.5rem; line-height:1.5; font-weight:400; letter-spacing:0;
}
a.imgWrap figcaption.fadetitle .atxt {
    display:block; text-align:left; border-top:1px solid #FFF;
    font-size:1rem; line-height:1.5; font-weight:400; letter-spacing:0;
    margin-top:0.5em; padding-top:0.5em;
}
/* other type link 1 */
a.dotted_link { border-bottom:2px solid #c29040; }
a.dotted_link:hover { border-bottom:2px solid transparent; }
a.dotted_link::after { height: 2px; }
/* other type link 2 */
a.bordered_link { border-bottom:1px solid #c29040; }
a.bordered_link:hover { border-bottom:1px solid transparent; }
/* other type link 3 */
a.underef { position:relative; }
a.underef::after {
    content: ''; width:100%; height: 1px;
    position: absolute; bottom: .1em; left: 0;
    background-color: #c29040; opacity: 0; transition: .3s;
}
a.underef:hover::after { bottom:-.1em; opacity:1; }
/* button base */
.btnc, .btnc a {
    display:-webkit-box; display:-ms-flexbox; display: -webkit-flex; display:flex;
    -webkit-box-pack:center; -ms-flex-pack:center;
    -webkit-justify-content: center; justify-content: center;
    -webkit-align-items: flex-start; align-items: flex-start;
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
    text-align:center;
}
.btnc > span,
.btnc a {
    padding:10px 0;
    display:inline-block; position:relative; vertical-align:middle;
    color:#FFF; line-height:1.25; font-weight:600;
    background-color:#c29040; border:1px solid transparent;
}
.btnc a > span { display:inline-block; vertical-align: middle; }
.btnc a:hover { color:#333333; background-color:#FFF; border-color:#333333; }
.btnc a:hover:after { background-color:transparent; }
/* button width setting */
.btnc a.w170 {
    width:170px; padding:10px 40px;
    font-size:1rem; font-weight:400;
}
/* fade button */
.btnc.arw a {}
.btnc.arw a:after {
    content:"\f054"; font-family: "Font Awesome 5 Free";
    font-size:inherit; font-weight:600;
    height:auto; width:auto;
    position:absolute; right: 0; left:auto; top: 50%; bottom:auto;
    transform: translateY(-50%) translateX(-50%); -webkit- transform: translateY(-50%) translateX(-50%);
}
.btnc.arw.brawn a { color:#FFF; background:#c29040; border:1px solid transparent; }
.btnc.arw.brawn a:hover { color:#c29040; background:#FFF; border:1px solid #c29040; }
/* open button */
.btnc.opn a { z-index: 2; }
.btnc.opn a:hover { background-color: #fff; border-color: #484848; color: #484848; }
.btnc.opn a::before,
.btnc.opn a::after {
    content:""; position: absolute; opacity:0; top: 0; left: 0;
    width: 50%; height: 100%; transition: .3s; background-color: #333;
}
.btnc.opn a::before { right: 0; left: auto; }
.btnc.opn a:hover::before,
.btnc.opn a:hover::after { bottom: auto; opacity: 1; width: 0; background-color: #484848; }
.btnc.opn.brawn a { color:#FFF; background:#c29040; border:1px solid transparent; }
.btnc.opn.brawn a:hover { color:#c29040; background:#FAFAFA; border:1px solid #c29040; }
.btnc.opn.brawn a::before,
.btnc.opn.brawn a::after { background-color: #333; }
.btnc.opn.brawn a:hover::before,
.btnc.opn.brawn a:hover::after { background:#c29040; }

/* parts */
.dl-list { margin:0; line-height:1.3; word-break:break-all; }
.dl-list > dt {
    float:left; min-width:0;
    padding-left:1em;
    border-left:5px solid #c29040;
}
.dl-list > dd { margin-left:0; }
.dl-list > dt:not(:last-of-type),
.dl-list > dd:not(:last-of-type) { margin-bottom: 5px; }
.dl-list > dt.lh18 { line-height:1.8; }

.dl-list.normal > dt { float:none; }
.dl-list.normal > dd { margin-top:0.8em; }

.ul-list li {
    line-height: 1.35;
    letter-spacing: 0.1em;
    padding-left: 1.2em;
    position: relative;
}
.ul-list li:before {
    content: "";
    width: 5px; height: 5px;
    border-radius: 50%;
    background: #FFF;
    position: absolute; left: 0; top: calc(0.65em - 2px);
}
.ul-list li:not(:last-child) { margin-bottom: 10px; }

.tbl_01 { width:100%; }
.tbl_01 th,
.tbl_01 td { padding:35px 25px; text-align:left; background-color:#FFF; word-break:break-all; }
.tbl_01 th {
    width:240px;
    color:#333;
    vertical-align:middle;
    background-color:#f7f7f7;
    border-top:1px solid #e2e2e2;
    border-bottom:1px solid #e2e2e2;
}
.tbl_01 td { border-top:1px solid #e2e2e2;  }
.tbl_01 tr:last-child { border-bottom:1px solid #e2e2e2; }
.tbl_01.col-3 th { width:33%; }

/* default */
.clearfix { zoom: 1; }
.clearfix:after { content: ""; display: block; clear: both; }

.block { display:block; }
.center-block { display:block; margin-left:auto; margin-right:auto; }

.flexbox {
    display:-webkit-box; display:-ms-flexbox; display: -webkit-flex; display:flex;
    -webkit-box-pack:center; -ms-flex-pack:center;
    -webkit-justify-content: center; justify-content: center;
    -webkit-align-items: flex-start; align-items: flex-start;
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
}
.flexbox.start { -webkit-justify-content: flex-start; justify-content: flex-start; }
.flexbox.around { -webkit-justify-content: space-around; justify-content: space-around; }
.flexbox.between { -webkit-justify-content: space-between; justify-content: space-between; }
.flexbox.stretch { -webkit-align-items: stretch; align-items: stretch; }
.flexbox.nowrap { -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
.mt5  { margin-top:5px; }
.mt10 { margin-top:10px; }
.mt15 { margin-top:15px; }
.mt20 { margin-top:20px; }
.mt25 { margin-top:25px; }
.mt30 { margin-top:30px; }
.mt35 { margin-top:35px; }
.mt40 { margin-top:40px; }
.mt45 { margin-top:45px; }
.mt50 { margin-top:50px; }
.mt55 { margin-top:55px; }
.mt60 { margin-top:60px; }
.mt65 { margin-top:65px; }
.mt70 { margin-top:70px; }
.mt75 { margin-top:75px; }
.mt80 { margin-top:80px; }
.mt85 { margin-top:85px; }
.mt90 { margin-top:90px; }
.mt95 { margin-top:95px; }
.mt100 { margin-top:100px; }
.mt105 { margin-top:105px; }
.mt110 { margin-top:110px; }
.mt115 { margin-top:115px; }
.mt120 { margin-top:120px; }
.mt125 { margin-top:125px; }
.mt130 { margin-top:130px; }
.mt135 { margin-top:135px; }
.mt140 { margin-top:140px; }
.mt145 { margin-top:145px; }
.mt150 { margin-top:150px; }
.mt180 { margin-top:180px; }

.w10per  { width:10%; }
.w20per  { width:20%; }
.w30per  { width:30%; }
.w40per  { width:40%; }
.w50per  { width:50%; }
.w60per  { width:60%; }
.w70per  { width:70%; }
.w80per  { width:80%; }
.w90per  { width:90%; }
.w100per { width:100%; }

.w200 { width:200px; }


/* font */
.mincho {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: 500; }
.bold { font-weight:bold; }
.nobold { font-weight:normal; }
.uchikeshi { text-decoration:line-through; }
.underline { text-decoration: underline; }
.tategaki1 { writing-mode: tb-rl; /* IE独自仕様 */ writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; }
.tategaki2 { writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; }

/* color */
.error { color:#d51518; }
.blue { color:#4664d4; }
.red { color:#ff3f3f; }
.enji { color:#b00000; }
.brown { color:#c29040; }

/* layout */
.text-center { text-align:center; }
.vtop { vertical-align:top; }
.vmid { vertical-align:middle; }
.flr{ float:right; }
.fll{ float:left; }

/* column */
ul.five { width:100%; column-count: 5; -moz-column-count: 5; -webkit-column-count: 5; }
ul.quad { width:100%; column-count: 4; -moz-column-count: 4; -webkit-column-count: 4; }
ul.triple { width:100%; column-count: 3; -moz-column-count: 3; -webkit-column-count: 3; }
ul.double { width:100%; column-count: 2; -moz-column-count: 2; -webkit-column-count: 2; }
ul.single { width:100%; }
@media screen and (max-width: 768px) {
    ul.five, ul.quad, ul.triple, ul.double { column-count: 1; -moz-column-count: 1; -webkit-column-count: 1; }
}

/* contact form 7 */
.contact_web_entry .contact2 td .wpcf7-not-valid-tip { border-radius: 0 0 4px 4px / 0 0 4px 4px; }
.contact_web_entry .wpcf7-validation-errors { color:#333333; border-color:#333333; }
.contact_web_entry .wpcf7-not-valid-tip { color: #de0000; }
.contact_web_entry .wpcf7-response-output { color:#333333; }
.contact_web_entry .wpcf7c-conf { background-color: #333333; color:#FFF; border: 1px solid #333333; }
.sendarea { margin-top:30px; text-align:center; }
.sendarea p input { display:inline-block; margin:0 20px; }


/* style
================================================================================= */
/* header */
header { width: 100%; margin: 0px auto; padding:0; }
header .inner {
    margin:0 auto; padding: 0; position: relative;
    flex-flow: row wrap; justify-content: center; align-items: center;
    display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
}
header .inner #mobile-head {
    width:100%; text-align:left;
    display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
    flex-flow: row wrap; justify-content: space-between; align-items: flex-start;
}
header .inner #mobile-head .logo {
    width:100%; margin:15px 0 0 0; text-align:left; padding:0; display:block; font-weight:normal;
    display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
    flex-flow: row wrap; justify-content: space-between; align-items: center;
}
header .inner #mobile-head .logo a { color:#000; font-size:1rem; letter-spacing:1px; position:relative; }
header .inner #mobile-head .logo a img { width:100%; max-width:250px; height:auto; margin:0; padding:0; }
header .inner #mobile-head .logo > div > span { margin-left:20px; }
header .inner #mobile-head .head_tel {
    -webkit-align-items: center;
    align-items: center;
}
header .inner #mobile-head .head_tel p >a { font-size:1rem; letter-spacing:0.2em; }
header .inner #mobile-head .head_tel p > span { margin:0 1em; font-size:0.9rem; letter-spacing:0.2em; }
header .inner #mobile-head .head_tel li:not(:first-child) { margin-left:10px; }
header .inner #mobile-head .head_tel li a i { font-size:1.8rem; }
.home header,
.page header {
    z-index:9;
    padding:0 0 10px;
    position:fixed; top:0;
    background:rgba(255,255,255,0.95);
    /*box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);*/
}

/* gnav */
#mobile-head #nav-toggle { display: none; }
header #global-nav > ul .navinfo { display:none; }
header #global-nav {
    width:100%; max-width:1075px; margin:15px auto 10px; padding:0;
    flex-flow: row wrap; justify-content: center; align-items: center;
    display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
}
header #global-nav ul { font-family:  serif; width:100%; padding:0; margin:0; list-style: none; flex-flow: row nowrap; justify-content: space-between; align-items: center; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
header #global-nav ul li {
    padding:0 0 0 calc(10 / 1075 * 100vw); line-height:1.2rem; word-break:break-all;
    position: relative; text-align:center;
    border-bottom:5px solid transparent;
}
header #global-nav ul li.active { padding-top:0; }
header #global-nav ul li.active a,
footer .links ul li.active a { color:#c29040; }
header #global-nav ul li {  }
header #global-nav ul li:last-child { padding-right:0; }
header #global-nav ul li a { font-size:1rem; font-weight:500; letter-spacing:-0.05em; }
header #global-nav ul li a span { font-size:0.6rem; font-weight:100; display:block; color:#c29040; }

/* header hover */
header #global-nav {
    height:0;
    margin:0;
    overflow:hidden;
    transition-duration:.5s; transition: .5s;
}
header #global-nav.open,
header #mobile-head:hover #global-nav { height:auto; margin: 15px auto 10px; transition-duration:.5s; }


/* footer */
footer { width:100%; }
footer .container { width:100%; margin:0 auto; padding:0; }
footer .container .inner { margin:0 auto; width:1075px; }
footer .container.bg01 { background: #f7f3f2 url("../img/cmn/foot_mv03.jpg") center center / 100% auto no-repeat; }
@media (max-width: 1500px) {
    footer .container.bg01 { background-size: 1500px auto; /* Force the image to its minimum width */ }
}
footer .container.bg01 { height:341px; }
footer .container.bg01 .inner{ padding:0; margin:0; }

footer .container.bg01 { align-items:stretch; }
footer .container.bg01 .inner {
    -webkit-align-items: center; align-items: center;
}
footer .container.bg01 .inner li a {
    font-family:  serif;
    color:#FFF;
    font-size:15px; line-height:1.5; font-weight:400; letter-spacing:0.26em;
}

footer .container.bg02 { padding:35px 0 55px; }
footer .container.bg02 h3 {
    font-family:  serif;
    font-size:1.7rem; line-height:1; font-weight:500; letter-spacing:0.26em;
}
footer .container.bg02 .addr {
    font-family:  serif;
    margin-top:25px;
    font-size:0.95rem; line-height:2; font-weight:400; letter-spacing:0.26em;
}
footer .container.bg02 .addr span { display:block; font-size:1rem; }
footer .container.bg02 .addr .email { display:inline-block; margin-top:5px; }
footer .container.bg02 .addr .email i { font-size:20px; }
footer .container.bg03 { background-color:#645a54; color:#000; }

footer .logo { max-width:300px; padding:80px 0 30px; display:block; font-weight:normal; }
footer .logo a { width:100%; color:#FFF; font-size:0.9rem; letter-spacing:1px; position:relative; }
footer .logo a img { max-width:100%; height:auto; margin:0; padding:0; }
footer .logo a span { padding:0; position:absolute; top:1px; left:45px; color:#FFF; line-height:1rem; font-size:0.8rem; font-weight:300; display:inline-block; overflow:hidden; text-overflow: ellipsis; white-space: nowrap; }
footer .company p { font-size:0.9rem; font-weight:300; letter-spacing:1px; }
footer .company p strong { font-size:1rem; }

footer .links ul { margin:0; padding:0; list-style:none; }
footer .links ul li { margin-bottom:10px; }
footer .links .list_ul li { margin-bottom:10px; }

footer .icons > ul {
    margin:0; padding:0; list-style:none;
    justify-content: center;
}
footer .icons li { width:60px; margin:5px; }
footer .icons li img { width:75%; height:auto; }

footer .copyright .block { padding:20px 0; display: block; font-weight:300; color:#FFF; }

/* 下層ビジュアル */
.low .lowervisual { margin:0 auto; }
.low .lowervisual .bg {
    background: url(../img/cmn/low_mv01.jpg) center top no-repeat;
    background-color: rgba(0,0,0,.9);
}
.low .lowervisual .bg.blessing , .low .lowervisual .bg.spiritual , .low .lowervisual .bg.health , 
.low .lowervisual .bg.relation , .low .lowervisual .bg.beauty , .low .lowervisual .bg.income {
    background: url(../img/blessing/bg_blessing.jpg) center top no-repeat !important;
}
.low .lowervisual .bg.about , .low .lowervisual .bg.arahabaki , .low .lowervisual .bg.hokkaido ,
.low .lowervisual .bg.tokyo , .low .lowervisual .bg.mascot {
    background: url(../img/about/bg_about.jpg) center top no-repeat !important;
}
.low .lowervisual .bg.festival , .low .lowervisual .bg.annual , .low .lowervisual .bg.monthly {
    background: url(../img/festival/bg_festival.jpg) center top no-repeat !important;
}
.low .lowervisual .bg.worship , .low .lowervisual .bg.praying , .low .lowervisual .bg.life_ceremony , 
.low .lowervisual .bg.dispatching_ceremony , .low .lowervisual .bg.prevent_evil , .low .lowervisual .bg.naming ,  
.low .lowervisual .bg.wedding , .low .lowervisual .bg.funeral , .low .lowervisual .bg.consulting
{
    background: url(../img/worship/bg.jpg) center top no-repeat !important;
}
.low .lowervisual .bg.ancient_shinto , .low .lowervisual .bg.seminar , .low .lowervisual .bg.oracle , .low .lowervisual .bg.healing {
    background: url(../img/ancient_shinto/bg.jpg) center top no-repeat !important;
}


.low .reconstruction  .lowervisual .bg { background-image: url(../img/cmn/low_mv02.png); }
.low .access .lowervisual .bg { background-image: url(../img/cmn/low_mv03.png); }
.low .goods  .lowervisual .bg { background-image: url(../img/cmn/low_mv04.png); }
.low .lowervisual .inner {
    height: 400px;
    position:relative;
    display: -ms-flexbox; display: -webkit-flex; display: flex;
    -ms-flex-pack: center; -ms-flex-line-pack: center;
    -webkit-justify-content: center; justify-content: center;
    -webkit-align-items: center; align-items: center;
    -webkit-flex-wrap: wrap;  flex-wrap: wrap;
}
.low .lowervisual .h1_title {
    font-family:  serif;
    margin-top:150px;
    font-size: 2.2rem;
    color: #FFF;
    line-height: 1.5;
    font-weight: 200;
    letter-spacing:0.2em;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.5), -1px 1px 2px rgba(0,0,0,0.5), 1px -1px 2px rgba(0,0,0,0.5), -1px -1px 2px rgba(0,0,0,0.5);
}
.low .lowervisual .h1_title strong {
    font-weight:300;
}
.low .lowervisual .h1_title small {
    display:block;
}

/* パンくずリスト */
footer .inner.breadwrap {
    height:auto; margin:20px auto;
    -webkit-justify-content: flex-start; justify-content: flex-start;
}
footer .breadcrumb {  }
footer .breadcrumb li {
    position:relative;
    display:inline-block;
    padding-right:10px;
}
footer .breadcrumb li:not(:first-child) { padding-left:10px; }
footer .breadcrumb li a { color:inherit; }

/* 下層共通部品 */
.col_img_l {
    width:auto; margin-right: 40px; flex-shrink:0;
    -webkit-box-ordinal-group:0; -ms-flex-order:0; -webkit-order:0; order:0;
}
.col_img_r {
    width:auto; margin-left: 40px; flex-shrink:0;
    -webkit-box-ordinal-group:2; -ms-flex-order:2; -webkit-order:2; order:2;
}
.col_txt_l,
.col_txt_r { -webkit-box-ordinal-group:1; -ms-flex-order:1; -webkit-order:1; order:1; }

.row_page_common {
    display:-webkit-box; display:-ms-flexbox; display: -webkit-flex; display:flex;
    -webkit-box-pack:center; -ms-flex-pack:center;
    -webkit-justify-content: space-between; justify-content: space-between;
    -webkit-align-items: stretch; align-items: stretch;
    -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
/*.row_page_common:not(:last-child) { margin-bottom: 45px; }*/
.row_page_common.wrap { -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.row_page_common .col_sub_row {
    width:100%;
    -webkit-box-ordinal-group:2; -ms-flex-order:2; -webkit-order:2; order:2;
}

.low h2 {
    text-align:center;
    font-family:  serif;
}
.low h2 span {
    display:inline-block;
    font-size: 2.2rem;
    font-style: normal;
    line-height: 1.5;
    font-weight:600;
    letter-spacing:0em;
    text-align:center;
    padding:0 0 0 0px;
    position:relative;
    vertical-align:bottom;
}

.low .row_page_common .col_txt_l h2,
.low .row_page_common .col_txt_r h2 {
    width:50%;
    margin:0;
    padding:30px 0 0;
}
.low .row_page_common .col_txt_r h2 {
    width:auto;
}
.low .row_page_common .col_txt_l h2 span,
.low .row_page_common .col_txt_r h2 span {
    font-size: 2.1rem;
}

.low h3 {
    text-align:center;
    font-family:  serif;
}
.low h3 span {
    display:inline-block;
    font-size: 1.7rem;
    font-style: normal;
    font-weight:600;
    letter-spacing:0.1em;
    color:#333;
    text-align:center;
    position:relative;
    vertical-align:bottom;
}
.low h4 {
    font-family:  serif;
}
.low h4 span {
    display:inline-block;
    font-size: 1.3rem;
    font-style: normal;
    line-height: 1.5;
    font-weight:500;
    letter-spacing:0.1em;
    color:#333;
    text-align:left;
    position:relative;
    vertical-align:bottom;
}

#content.low .content_echo { margin-bottom:150px;  }

#content.low .notfound { margin-top:150px; }
#content.low .notfound h1 { text-align:center; }

/* sns-シェアボタン */
.sns-list { margin:5px 0 5px; width:100%; justify-content: flex-end; align-items: center; }
.sns-list li { font-size:1.5rem; line-height:1; }
.sns-list li:not(:first-child) { margin-left:10px; }
.sns-list li.facebook a { color:#3b5898; }
.sns-list li.twitter a { color:#55aced; }
.sns-list li.googleplus a { color:#d34b3b; }
.sns-list li.line a { color:#00b900; }
.sns-list li.instagram a { color:#000; }

/* ページ内リンク */
.internal_link_list {}
.internal_link_list li { min-width:30%; }
.internal_link_list.w50p li { min-width:48%; }
.internal_link_list li:nth-of-type(n + 4) { margin-top:25px; }
.internal_link_list.w50p li:nth-of-type(n + 3) { margin-top:15px; }
.internal_link_list li a {
    width:100%;
    padding:5px 20px;
    border:1px solid transparent;
    border:1px solid #000;
    text-align:center;
}
.internal_link_list.sub {
    -webkit-justify-content: space-between; justify-content: space-between;
}
.internal_link_list.sub li { min-width:30%; }
.internal_link_list.sub li:nth-of-type(n + 4) { margin-top:10px; }
.internal_link_list.sub li a {
    padding:5px 10px;
    border:none;
    border-bottom:1px solid #999;
}

/*.internal_link_list li a.current,*/
.internal_link_list li a:hover {}

/* / top
==============================================================================*/
/* slider */
.home .title_area {
    margin-top:0px;
    position:relative; width:100%;
}
.home .main_img { width:100%; height: 700px; margin:0 auto; }
.home .main_img .vegas-slide .vegas-slide-inner {
    background-position: center 50% !important;
}
.home .main_img .inner {
    position:relative;
    width:auto; height:100%; margin:0 auto;
}
.home .main_img .inner .logo_index {
    position:absolute; top:57%; left:0; right:0; margin:auto;
    width:100%; height:auto; transition: .3s;
    transform: translateY(-50%); -webkit- transform: translateY(-50%);
    text-align:center;
}
.home .main_img .inner .logo_index span {
    display:block;
    /*text-shadow: 1px 1px 1px rgba(255,255,255,.6), -1px 1px 1px rgba(255,255,255,.6), 1px -1px 1px rgba(255,255,255,.6), -1px -1px 0px rgba(255,255,255,.6);*/
    color:#FFF;
    text-align:right;
    font-size:1.5rem;
    line-height:2.3;
    font-weight:400;
    letter-spacing:0.2em;
    text-shadow: 2px 2px 2px rgba(0,0,0,0.7);
}

.home h2 { text-align:center; }
.home h2 span { font-size:1.4rem; line-height:1; font-family:  serif; }
.home h2 small { display:block; font-size:0.8rem; letter-spacing:0.02em; color:#90650c; }

.home .menues .inner .content_inner { margin-top:130px; }
.home .menues .flexbox {
    margin-top:45px;
    flex-flow: row wrap; justify-content: space-between; align-items: flex-start;
}
.home .menues .ind { max-width:33%; width:330px; text-align:center; }
.home .menues .ind:nth-of-type(n + 4) { margin-top:75px; }
.home .menues .ind a img { width:100%; height:auto; }
.home .menues .ind h3 { font-size:1.6rem; font-weight:500; color:#c27240; text-align:center; font-family:  serif; }
.home .menues .ind p { text-align:left; }
.home .menues a.imgWrap figcaption.tatetitle {
    position:absolute; top:0; left:0; z-index:2;
    width:45px; height:100%; margin:auto;
    background:rgba(228,184,121,.8);
}
.home .menues a.imgWrap figcaption.tatetitle h3 {
    color:#FFF; line-height:1;
    padding-left:0.5em; padding-top:20px;
}

.home .accessbox h2 { position:absolute; top:55px; left:calc(50% - 1.5em); z-index:4; margin:auto; text-align:center; color:#FFF; }
.home .accessbox h2 span { margin-left:0.5em; display:block; font-size:31px; line-height:1; }
.home .accessbox h2 small { color:#FFF; margin-top:15px; display:block; font-size:18px; line-height:1; letter-spacing:0; font-weight:300; }
.home .accessbox .row_page_common .col_img_l { margin-right:0; }
.home .accessbox .row_page_common .col_img_l,
.home .accessbox .row_page_common .col_txt_r { width:50%; }
.home .accessbox .row_page_common .col_img_l a,
.home .accessbox .row_page_common .col_txt_r a,
.home .accessbox .row_page_common .col_img_l a img,
.home .accessbox .row_page_common .col_txt_r a img { width:100%; }
.home .accessbox .row_page_common h3 {
    position:absolute; top:40px; left:40px; z-index:4;
    margin:auto; text-align:left;
    color:#FFF; line-height:1.5;
}
.home .accessbox .row_page_common .col_txt_r h3 { left:auto; right:40px; text-align:right; }
.home .accessbox .row_page_common h3 span { display:block; font-size:21px; }
.home .accessbox .row_page_common h3 small { margin-top:5px; display:block; font-size:18px; font-weight:300; }

.home .imgrow { margin:0 auto; text-align:center; }
.home .imgrow {
    z-index:2; background-repeat:no-repeat; background-size:cover;
    position: relative; width:100%; height:0; overflow: hidden;
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 43.5%; background-color:#c29040;
}

.home .content_inner > .flexbox { align-items:flex-start; }

.home .shuines { margin-top:60px; }
.home .shuines .title { text-align:center; background-color:#000; }
.home .shuines .title h2 { padding:15px 0; font-size:2.1rem; font-weight:500; color:#FFF; text-align:center; }
.home .shuines .flexbox {
    flex-flow: row wrap; justify-content: flex-start; align-items: flex-start;
}
.home .shuines .shuin { width:100%; padding:0; list-style:none; background-color:#000; }
.home .shuines .shuin li { width:25%; line-height:0; }
.home .shuines .shuin li a { width:100%; height:auto; }
.home .shuines .shuin li img { width:auto; max-width:100%; height:auto; }
.home .shuines .shuin li:nth-of-type(1) a { animation-delay: .1s; }
.home .shuines .shuin li:nth-of-type(2) a { animation-delay: .2s; }
.home .shuines .shuin li:nth-of-type(3) a { animation-delay: .3s; }
.home .shuines .shuin li:nth-of-type(4) a { animation-delay: .4s; }
.home .shuines .shuin li:nth-of-type(5) a { animation-delay: .4s; }
.home .shuines .shuin li:nth-of-type(6) a { animation-delay: .3s; }
.home .shuines .shuin li:nth-of-type(7) a { animation-delay: .2s; }
.home .shuines .shuin li:nth-of-type(8) a { animation-delay: .1s; }

.home .youtubes { margin-top:60px; }
.home .youtubes iframe {  width:100%; height:auto; }
.home .youtubes .youtube { width:100%; height:700px; position: relative; }
.home .youtubes .player { height:600px; position: absolute; top: 0; left: 0; z-index: 1; }
.home .youtubes .thumb  { position: absolute; top: 0; left: 0; z-index: 2; }

.home .infos { margin-top: 80px; }
.home .infos .col_txt_r { width:50%; }
.home .infos .newsbox h2 { padding:0;  text-align:left;}
.home .infos .newsbox h2 span { font-size:1.2rem; }
.home .infos .newsbox h2 small { display:inline; padding:0 6px; }
.home .infos .newsbox .ichiran { width:100%; margin:-1.5em auto 0; text-align:right; }
.home .infos .newsbox ul {
    -webkit-justify-content: flex-start; justify-content: flex-start;
}
.home .infos .newsbox ul li {
    -webkit-justify-content: flex-start; justify-content: flex-start;
    align-items: center;
    width:100%; padding:14px 5px;
    font-size:0.8rem; line-height:1.5;
    border-bottom:1px solid #ebebeb;
}
.home .infos .newsbox ul li:first-of-type { margin-top:10px; border-top:1px solid #ebebeb; }
.home .infos .newsbox ul li .date {
    font-weight:600;
    letter-spacing:0;
    min-width:6em;
}
.home .infos .newsbox ul li .cat { margin-left:1em; }
.home .infos .newsbox ul li .cat a {
    font-family:  serif;
    font-weight:600;
    letter-spacing:0;
    color:#FFF;
    background:#000;
    padding:3px 0em;
    min-width:5em;
    text-align:center;
}
.home .infos .newsbox ul li .cat.自然 a { background:#963634; }
.home .infos .newsbox ul li .cat.募集 a { background:#005572; }
.home .infos .newsbox ul li .cat.お知らせ a { background:#005572; }
.home .infos .newsbox ul li .cat.お祭り・催し a { background:#963634; }
.home .infos .newsbox ul li .cat.御朱印 a { background:#b3a276; }
.home .infos .newsbox ul li .title { margin-left:1.5em; }
.home .infos .newsbox ul li .title,
.home .infos .newsbox ul li .title a {
    font-size:0.8rem;
    font-weight:400;
}

.home .infos .col_img_l { width:50%; margin:0.5em 45px 0 0; }
.home .infos .col_img_l figure { width:100%; }
.home .infos .col_img_l figure a { max-width:100%; }
.home .infos .col_img_l figure a img { max-width:100%; }
.home .infos .col_img_l > figure:not(:first-child) { margin-top:20px; font-family:  serif; }
.home .infos .col_img_l figcaption {
    text-align:center;
    font-size:1.2rem;
    font-weight:600;
    font-family:  serif;
}

.home .infoboxes { margin-top:130px; }
.home .infoboxes .row_page_common .col_img_r { margin-left:0; }
.home .infoboxes .row_page_common .col_img_l { margin-right:0; }
.home .infoboxes .row_page_common .col_txt_r { margin-left:-330px; }
.home .infoboxes .row_page_common .col_txt_l { margin-right:-330px; }
.home .infoboxes .row_page_common .col_txt_r,
.home .infoboxes .row_page_common .col_txt_l { -webkit-align-items: center; align-items: center; z-index:4; }
.home .infoboxes .row_page_common .bg {
    -webkit-align-items: center; align-items: center;
    position:relative;
    width:330px; padding:60px 35px 55px; margin-top:30px;
    background:#FFF; box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.4);
}
.home .infoboxes .row_page_common .bg .icn { position:absolute; top:-40px; }
.home .infoboxes .row_page_common .bg h2 { width:100%; line-height:1; font-weight:600; text-align:left; }
.home .infoboxes .row_page_common .bg h2 > span { display:block; font-size:1.2rem; letter-spacing:0; margin-top: 20px;
    text-align: center;
    font-size: 90%; }
.home .infoboxes .row_page_common .bg h2 > small { margin-top:15px; text-align: center; font-size:1.25rem; font-weight:300; display:block; color:#000; }
.home .infoboxes .row_page_common .bg p { width:100%; }
.home .infoboxes .row_page_common .bg .txt { line-height:2; }
.home .infoboxes .row_page_common .bg .link a { font-size:1.1rem; }
.home .infoboxes .row_page_common .bg .link a::after { bottom:-.05em; background-color: #000; opacity:1; }

.home .bannerarea ul li {
    max-width:50%;
    width:525px;
    background:#f7f7f7; border:1px solid #e4e4e4; box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
}
.home .bannerarea ul li:nth-of-type(n + 3) { margin-top:25px; }
.home .bannerarea ul li a {
    width:100%;
    -webkit-align-items: center; align-items: center;
}
.home .bannerarea ul li figcaption { padding-left:50px; }
.home .bannerarea ul li figcaption span,
.home .bannerarea ul li figcaption small {
    display:block;
    font-size:21px; line-height:1; font-weight:900;
}
.home .bannerarea ul li figcaption small { margin-top:10px; font-size:18px; font-weight:400; }

.home .medias ul li:nth-of-type(n + 2) { margin-left:30px; }
.home .medias ul li a.imgWrap figcaption.fadetitle,
.home .medias ul li a.imgWrap:hover figcaption.fadetitle {
    width:100%; margin:auto auto; padding:0.5em;
    background:rgba(255,255,255,0.8);
}
.home .medias ul li a.imgWrap:hover figcaption.fadetitle { bottom:0; }
.home .medias ul li a.imgWrap figcaption.fadetitle .atitle {
    font-size:1rem; letter-spacing:0; font-weight:600;
}

.home .snses .sns-list { justify-content: center; align-items: center; }
.home .snses .sns-list li { font-size:3rem; }
.home .snses .sns-list li:not(:first-child) { margin-left:30px; }
.home .snses .sns-list li a { color:#000; }

/* /sub 下層ページ
==============================================================================*/
.page .photo > img { margin:0 1%; max-width:48%; }
.page .photo.full > img { margin:0; max-width:100%; }

.page .row_page_common figure.col_img_l,
.page .row_page_common figure.col_i.mg_r {
    max-width:50%;
}
.page .row_page_common figure figcaption {
    text-align:center;
    color:#c29040;
    font-weight:600;
}
.page .row_page_common.bg01 {
    padding:40px 40px;
    background: linear-gradient(to top, rgba(150,85,57,.1) 0%, rgba(0,0,0,0.01) 100%);
    /*background-image: url(../img/cmn/bg01.png);
    background-repeat:repeat;*/
}
.page .dl-list.dd100 > dd { margin-left:5em; }
.page .dl-list.dd100 > dd > dl > dd { margin-left:1.5em; }
.page .dl-list.dd120 > dd { margin-left:6em; }
.page .dl-list.dd150 > dd { margin-left:13em; }
.page .dl-list.dd-em1 > dd { margin-left:1.2em; }

.page .panel-list { flex-flow: row wrap; justify-content: flex-start; align-items: flex-start; }
.page .panel-list .ind { width:32%; margin:0; text-align:left; }
.page .panel-list .ind:nth-of-type(3n - 1) { margin-left:2%; margin-right:2%; }
.page .panel-list .ind:nth-of-type(n + 4) { margin-top:40px; }
.page .panel-list .ind a img { width:100%; height:auto; }
.page .panel-list .ind h3,
.page .panel-list .ind h3 a,
.page .panel-list .ind .cat {
    margin-bottom:0;
    font-size:1.2rem; line-height:1.5; font-weight:400; color:#c29040; text-align:left;
    letter-spacing:-0.05em;
}
.page .panel-list .ind .cat { color:#CCC; }
.page .panel-list .ind h3 dt { color:#000; }
.page .panel-list .ind p { line-height:1.5; letter-spacing:0; text-align:left; }
.page .panel-list .ind .readmore { color:#c29040; }
.page .panel-list .ind .date { display:block; text-align:right; font-size:0.9rem; font-weight:400; }

.page.blog .panel-list .ind { width:100%; margin:0; text-align:left; }
.page.blog .panel-list .ind:nth-of-type(3n - 1) { margin-left:0; margin-right:0; }
.page.blog .panel-list .ind:nth-of-type(n + 4) { margin-top:0; }
.page.blog .panel-list .ind:not(:first-of-type) { margin-top:20px; padding-top:25px; border-top:1px solid #645a54; }
.page.blog .panel-list .ind .row_page_common { -webkit-justify-content: flex-start; justify-content: flex-start; }
.page.blog .panel-list .ind .row_page_common .col_img_l { max-width:30%; }
.page.blog .panel-list .ind .row_page_common .col_txt_r {
    flex-flow: column nowrap;  -webkit-align-items: center; align-items: center;
}
.page.blog .panel-list .ind .row_page_common .col_txt_r h3 a { color:#c29040; }
.page.blog .panel-list .ind .row_page_common .col_txt_r .date {
    display:block; text-align:left;
    margin-bottom: 10px;
}
.page.blog .panel-list .ind .row_page_common .col_txt_r h3,
.page.blog .panel-list .ind .row_page_common .col_txt_r em,
.page.blog .panel-list .ind .row_page_common .col_txt_r p { width:100%; }

.page .panel-list .ind .cat a {
    display:inline-block;
    padding:5px 10px 3px;
    color:#FFF;
    background:#645a54;
    border-radius:4px;
    line-height:1;
    font-size: 80%;
    left: 15px;
}

/* goods */
.low .goods.stamps h2 { display:none; }
.low .goods.limited_stamps h2 { display:none; }

/* 交通・アクセス */
.access .map > iframe {}
.access #hokkaido_in,
.access #tokyo_in { margin-top:-90px; padding-top:90px; }
.page.access .photo.keirozu > img { max-width:98%; }
.page.access .photo.keiro > figure { margin:0 0.5%; max-width:49%; }
.page.access .photo.keiro > figure h4 { line-height:1.6; }
.page.access .photo.keiro.tokyo > figure { margin:0 0.5%; max-width:49%; }
.page.access .photo.keiro.tokyo > figure h4 span { font-size: 1rem; }

.page.access .keiro.row_page_common {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

/* 金吾龍神社について */
.about .tbl_01 th { text-align:center; }
.about .row_page_common {
    -webkit-justify-content: flex-start; justify-content: flex-start;
}
.about .pareaul { width:100%; }
.about .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.about .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.about .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.about .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.about .pareaul li figure img {}
.about .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.about .pareaul li .txt {
    display:block;
}
.about .pareaul li .arwbtn { text-align:right; }
.about .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 13px;
}

.about .tbl_01 th { text-align:center; }
.about .row_page_common {
    -webkit-justify-content: flex-start; justify-content: flex-start;
}
.blessing .pareaul { width:100%; }
.blessing .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.blessing .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.blessing .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.blessing .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.blessing .pareaul li figure img {}
.blessing .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.blessing .pareaul li .txt {
    display:block;
}
.blessing .pareaul li .arwbtn { text-align:right; }
.blessing .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}


.worship .pareaul { width:100%; }
.worship .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.worship .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.worship .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.worship .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.worship .pareaul li figure img {}
.worship .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.worship .pareaul li .txt {
    display:block;
}
.worship .pareaul li .arwbtn { text-align:right; }
.worship .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}


.praying .pareaul { width:100%; }
.praying .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.praying .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.praying .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.praying .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.praying .pareaul li figure img {}
.praying .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.praying .pareaul li .txt {
    display:block;
}
.praying .pareaul li .arwbtn { text-align:right; }
.praying .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}


.life_ceremony .pareaul { width:100%; }
.life_ceremony .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.life_ceremony .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.life_ceremony .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.life_ceremony .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.life_ceremony .pareaul li figure img {}
.life_ceremony .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.life_ceremony .pareaul li .txt {
    display:block;
}
.life_ceremony .pareaul li .arwbtn { text-align:right; }
.life_ceremony .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}


.wedding .pareaul { width:100%; }
.wedding .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.wedding .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.wedding .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.wedding .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.wedding .pareaul li figure img {}
.wedding .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.wedding .pareaul li .txt {
    display:block;
}
.wedding .pareaul li .arwbtn { text-align:right; }
.wedding .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}


.naming .pareaul { width:100%; }
.naming .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.naming .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.naming .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.naming .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.naming .pareaul li figure img {}
.naming .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.naming .pareaul li .txt {
    display:block;
}
.naming .pareaul li .arwbtn { text-align:right; }
.naming .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}

.funeral .pareaul { width:100%; }
.funeral .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.funeral .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.funeral .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.funeral .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.funeral .pareaul li figure img {}
.funeral .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.funeral .pareaul li .txt {
    display:block;
}
.funeral .pareaul li .arwbtn { text-align:right; }
.funeral .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}



.dispatching_ceremony .pareaul { width:100%; }
.dispatching_ceremony .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.dispatching_ceremony .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.dispatching_ceremony .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.dispatching_ceremony .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.dispatching_ceremony .pareaul li figure img {}
.dispatching_ceremony .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.dispatching_ceremony .pareaul li .txt {
    display:block;
}
.dispatching_ceremony .pareaul li .arwbtn { text-align:right; }
.dispatching_ceremony .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}


.consulting .pareaul { width:100%; }
.consulting .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.consulting .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.consulting .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.consulting .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.consulting .pareaul li figure img {}
.consulting .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.consulting .pareaul li .txt {
    display:block;
}
.consulting .pareaul li .arwbtn { text-align:right; }
.consulting .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}


.ancient_shinto .pareaul { width:100%; }
.ancient_shinto .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.ancient_shinto .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.ancient_shinto .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.ancient_shinto .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.ancient_shinto .pareaul li figure img {}
.ancient_shinto .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.ancient_shinto .pareaul li .txt {
    display:block;
}
.ancient_shinto .pareaul li .arwbtn { text-align:right; }
.ancient_shinto .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}


.prevent_evil .pareaul { width:100%; }
.prevent_evil .pareaul li {
    width:31.5%;
    padding:10px 10px 20px;
    box-shadow:0px 0px 5px 0px #cccccc;
}
.prevent_evil .pareaul li:nth-of-type(3n - 1) { margin-left:2.5%; margin-right:2.5%; }
.prevent_evil .pareaul li:nth-of-type(n + 4) { margin-top:25px; }
.prevent_evil .pareaul li figure {
    padding-bottom:0.5em;
    border-bottom:1px solid #CCC;
}
.prevent_evil .pareaul li figure img {}
.prevent_evil .pareaul li figure figcaption {
    margin-top:0.5em;
    text-align:center;
    font-size:14px;
}
.prevent_evil .pareaul li .txt {
    display:block;
}
.prevent_evil .pareaul li .arwbtn { text-align:right; }
.prevent_evil .pareaul li .arwbtn a {
    color:#c29040;
    font-size: 14px;
}



/* 祭典行事 */
.festival .tbl_01 th { text-align:center; }
.festival #a1_in,
.festival #a2_in,
.festival #a3_in,
.festival #a4_in,
.festival #a5_in,
.festival #a6_in,
.festival #a7_in { margin-top:-90px; padding-top:90px; }

/* 参拝・ご祈祷 */
.worship .tbl_01 th { width:170px; padding-left:10px; text-align:center; vertical-align:top; }
.worship .tbl_01.col-4 td { border-left: 1px solid #c29040; }
.worship .tbl_01.col-4 td.text-center { text-align:center; }
.worship .tbl_01.col-4 th strong,
.worship .tbl_01.col-4 td strong { padding:0 5px; font-size:1.2rem; }
.kigan td span:before{
    content:"\f00c";
    font-family: "Font Awesome 5 Free";
    font-weight:bold;
    margin-right:0.5em;
}
.yakudoshi .sex th,
.yakudoshi .timing th {
    text-align:center;
    padding: 15px 25px;
}
.yakudoshi .age td {
    text-align:center;
}
.toshiiwai .col1 { width:30%; }
.toshiiwai .col2 { width:70%; }
.toshiiwai td span { display:block; }

/* 復興支援・ご寄付のお願い */

/* お問い合わせ */
article.contact { margin-top:220px; }
.contact .telstrong {
    display:block;
    font-size:1.2rem;
}
.contact .telstrong a {
    font-size:1.3rem;
    font-weight:600;
    letter-spacing:0.1em;
}
.contact .hosoku p {}
.contact div.wpcf7-response-output { border-color:#333; }
.contact .tblwrap {
    width:100%;
    padding:0;
    /*background: linear-gradient(to top, rgba(150,85,57,.1) 0%, rgba(0,0,0,0.01) 100%);*/
}
.contact .tblwrap .tbl_form { margin:0 auto; }
.contact .tblwrap .required {
    position:relative;
    display:block;
}
.contact .tblwrap .required:after {
    content:"※";
    font-size:0.9rem;
    line-height:1;
    font-weight:400;
    color:#c81a1c;
    margin-left:0.5em;
}
.contact .tblwrap .tbl_form th,
.contact .tblwrap .tbl_form td { padding:20px 30px; vertical-align:middle; }
.contact .tblwrap .tbl_form th {}
.contact .tblwrap .tbl_form td {}
.contact .tblwrap .tbl_form td input,
.contact .tblwrap .tbl_form td textarea,
.contact .tblwrap .tbl_form td select {
    border:1px solid #949494;
    border-radius:6px;
    padding:10px 10px;
    font-size:1.2rem;
}
.contact .tblwrap .tbl_form td .contact .tblwrap-list-item.first { margin-left:0; }
.contact .tblwrap .tbl_form td input.text1 { width:280px; }
.contact .tblwrap .tbl_form td input.text2 { width:100%; }
.contact .tblwrap .tbl_form td textarea { width:500px; padding:4px; }

.contact .tblwrap .form-check { margin:30px auto 0; text-align:center; }
.contact .tblwrap .form-submit { margin:10px auto 0; text-align:center; }
.contact .tblwrap .form-submit input {
    width:100%;
    height:100%;
}
.contact .tblwrap .form-submit .btn {
    width:210px;
    height:60px;
    display: inline-block;
    color:#FFF;
    background: #bfbfbf;
    margin:0;

    border: 1px solid #a7a7a7;
    border-radius:8px;
    position: relative;
    transition: all 0.3s ease-in-out;

    font-size:1.3rem;
    font-weight:400;
}
.contact .tblwrap .form-submit .btn:after {
    content:"\f105";
    font-family: "FontAwesome";
    font-weight:bold;
    position:absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
}
/* （選択できないときは色を薄く表示する） */
.contact .tblwrap input[type="submit"][disabled]{}
/* （確認チェックが入っている時のみカーソルが変わる ※SPのときは消す） */
.contact .tblwrap input[type="submit"]:not([disabled]) {}
.contact .tblwrap input[type="submit"]:not([disabled]):hover {
    cursor: pointer;
    opacity: 1;
    background-color:#FFF;
    color:#a7a7a7;
    transition: all 0.3s ease-in-out;
}
/* （ajax-loaderを消す 送信ボタンの→） */
.contact .tblwrap .ajax-loader { display: none !important; }
/* contactform7のチェックボックスをデザイン変更 */
.contact .tblwrap input[type="checkbox"]{ display: none; }
.contact .tblwrap input[type="radio"]{ display: none; }
.contact .tblwrap label{ cursor: pointer; }
.contact .tblwrap .wpcf7-radio .wpcf7-list-item-label,
.contact .tblwrap .wpcf7-checkbox .wpcf7-list-item-label,
.contact .tblwrap .wpcf7-acceptance .wpcf7-list-item-label { position: relative; padding-left: 33px; }
.contact .tblwrap .wpcf7-checkbox .wpcf7-list-item-label:before{
    width: 18px;
    height: 18px;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    background: #fff;
    border: 1px solid #dddddd;
}
.contact .tblwrap .wpcf7-checkbox .wpcf7-list-item-label:after{
    width: 10px;
    height: 5px;
    border: 2px solid #717171;
    content: '';
    position: absolute;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: 5px;
    top: 5px;
    border-top: none;
    border-right: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0;
}
.contact .tblwrap .wpcf7-radio .wpcf7-list-item-label:before {
    width: 18px;
    height: 18px;
    content: '';
    background: #fff;
    border: 1px solid #dddddd;
    border-radius:50%;
    position: absolute;
    left: 0;
    top: 0.25em;
}
.contact .tblwrap .wpcf7-radio .wpcf7-list-item-label:after {
    width: 10px;
    height: 5px;
    border: 2px solid #949494;
    content: '';
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-top: none;
    border-right: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0;
    position: absolute;
    left: 5px;
    top:calc(0.25em + 5px);
}
.contact .tblwrap .wpcf7-radio span.wpcf7-list-item,
.contact .tblwrap .wpcf7-checkbox span.wpcf7-list-item{ margin-left: 0; margin-right: 20px; }
.contact .tblwrap input[type="checkbox"]:checked + .wpcf7-list-item-label:after { opacity: 1; }
.contact .tblwrap input[type="radio"]:checked + .wpcf7-list-item-label:after { opacity: 1; }

/* WPのblogの記事スタイル */
.low.single .blog .content_echo .inner2 > p {
    margin-top:2em;
}
@media screen and (min-width: 768px) {
    .nonestyle2 {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .nonestyle {
        display: none;
    }
    .open {
        display: inline-block;
    }
}

.bg_gosintoku {
	background: #f7f7f7;
	padding: 20px 0 !important;
}
.ul_gosintoku {
	letter-spacing: -.4em;
	padding-top: 20px !important;
}
.ul_gosintoku li {
	display: inline-block;
	width: 50%;
	text-align: center;
	font-size: 120%;
	letter-spacing: normal;
}

