@charset "utf-8";

/* CSS Document */


/*---------------------------------------------------------------------

	 共通

---------------------------------------------------------------------*/

body {
    -webkit-text-size-adjust: 100%;
}

.marginAuto {
    margin: auto;
}

ul.table_footerBnr a:hover img {
    filter: alpha(opacity=60);
    -moz-opacity: 0.60;
    opacity: 0.60;
}

ul.table_footerBnr a img {
    -webkit-transition: opacity 0.5s ease-out;
    -moz-transition: opacity 0.5s ease-out;
    -ms-transition: opacity 0.5s ease-out;
    transition: opacity 0.5s ease-out;
}

.mincho {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

body {
    font-family: "Lucida Grande", "segoe UI", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Meiryo, Verdana, Arial, sans-serif;
    border-top: solid 4px #F7948E;
    padding-top: 10px !important;
}

body#white {
    background: #fff;
}

.bg_gray {
    background: #eeecde;
    background: #fff;
    width: 1000px;
    margin: 0 auto;
    box-sizing: border-box;
}

h2 {
    font-size: 16px;
    font-weight: bold;
}

h3.h3style01 {
    font-size: 19px;
    font-weight: bold;
    border-left: solid 7px #f7948e;
    height: 23px;
    line-height: 23px;
    padding-left: 10px;
}

h3.h3style02 {
    font-size: 21px;
    line-height: 32px;
    height: 30px;
    color: #333;
    display: inline-block;
}

h3.h3style03 {
    font-size: 24px;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    background: url(../images/double_line.jpg) repeat-x 0 45px;
    height: 60px;
    line-height: 50px;
    width: 960px;
    margin: 0 auto;
}

ul.table {
    display: table;
    table-layout: fixed;
    text-align: center;
    width: 1000px;
}

ul.table li {
    display: table-cell;
}

ul.table li p {
    text-align: left;
    padding: 10px 10px 0;
    box-sizing: border-box;
    margin-left: 20px;
}

ul.table li img {
    vertical-align: bottom;
}

ul.table_footerBnr {
    display: table;
    max-width: 1315px;
    width: 100%;
    table-layout: fixed;
    text-align: center;
    margin: 0 auto;
}

ul.table_footerBnr li {
    display: table-cell;
    width: 315px;
}

ul.table_footerBnr li p {
    text-align: left;
    box-sizing: border-box;
    margin-left: 10px;
    padding-top: 10px;
}

ul.table_footerBnr li img {
    vertical-align: bottom;
}

ul.table_footerBnr2 {
    max-width: 1315px;
    margin: 0 auto;
    overflow: hidden;
}

ul.table_footerBnr2 li {
    float: left;
    max-width: 24%;
    height: auto;
}

ul.table_footerBnr2 li p {
    max-width: 98%;
    text-align: left;
    box-sizing: border-box;
    margin: 6px 1% 0 1%;
}

ul.table_footerBnr2 li img {
    vertical-align: bottom;
    max-width: 100%;
    height: auto;
}

.mr1_3 {
    margin-right: 1.3%
}

ul.table p.tableText {
    width: 294px;
    height: 120px;
    background: #fff;
    line-height: 20px;
}

span.pink {
    display: inline-block;
    color: #F79C97;
    font-weight: bold;
    padding-bottom: 5px;
}

span.purple {
    color: #793d73;
    font-weight: bold;
}

span.red {
    color: #cb3b6a;
}

.h200 {
    height: 200px !important;
}

.h250 {
    height: 250px !important;
}

.h260 {
    height: 260px !important;
}

.h320 {
    height: 320px !important;
}

.h380 {
    height: 380px !important;
}


/* ドロワーメニューSTART */

p.sb-toggle-right {
    position: absolute;
    right: 15px;
    top: 5px;
    cursor: pointer;
}

p.sb-toggle-right:hover {
    opacity: 0.8;
}

.sb-slidebar ul {
    background: #f3f3f3;
    border-left: solid 1px #434343;
    height: 100%;
}

.sb-slidebar ul li.sideTtl {
    height: 40px;
    line-height: 40px;
    background: #e2d8bb;
    background: #001842;
    color: #fff;
    font-weight: bold;
    padding-left: 20px;
    border: none;
}

.sb-slidebar ul li {
    color: #fff;
    height: 45px;
    line-height: 45px;
    border-bottom: solid 1px #434343;
    padding-left: 20px;
    background: url(../images/sidemenu_list.png) no-repeat 10px 50%;
    background: none;
    box-sizing: border-box;
}

.sb-slidebar ul li a {
    text-decoration: none;
    color: #000;
    display: inline-block;
    width: 100%;
    height: 40px;
}

.sb-slidebar ul li a:hover {
    color: #f79691;
}


/* ドロワーメニューEND */


/* スクロールトップSTART */

#page-top {
    position: fixed;
    bottom: 20px;
    right: 10px;
    z-index: 9999;
}

#page-top a {
    width: 76px;
    text-align: center;
    display: block;
}

#page-top a:hover {
    opacity: 0.8;
}


/* スクロールトップEND */

a.hover:hover {
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

a:hover {
    color: #f79691;
}

body {
    font-family: "Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro", "Meiryo", "メイリオ", "MS PGothic", "MS Pゴシック", "Round M+ Font Regular", sans-serif;
    color: #666;
    margin: 0;
    padding: 0;
}

#headerArea {
    width: 100%;
    /*height:91px;*/
    background: #fff;
    position: relative;
}

header {
    width: 1000px;
    margin: 0 auto;
    padding: 10px 0;
    overflow: hidden;
    box-sizing: border-box;
}

p.header_request {
    float: left;
    margin-right: 78px;
}

p.header_request a:hover img {
    filter: alpha(opacity=60);
    -moz-opacity: 0.60;
    opacity: 0.60;
}

p.header_request a img {
    -webkit-transition: opacity 0.5s ease-out;
    -moz-transition: opacity 0.5s ease-out;
    -ms-transition: opacity 0.5s ease-out;
    transition: opacity 0.5s ease-out;
}

h1.header_logo {
    float: left;
    margin-right: 66px;
}

.header_telf {
    float: right;
}

p.header_tel {
    float: right;
    margin-right: 5px;
}

p.header_facebook {
    float: right;
}

nav#gnav {
    width: 100%;
    background: #fff;
}

ul.navi {
    display: block;
    position: relative;
    list-style: none;
    padding: 0;
    text-align: center;
    width: 1200px;
    overflow: hidden;
    margin: 0 auto;
}

ul.navi li {
    display: inline-block;
    border-bottom: none;
    padding: 0;
    margin: 0;
    text-align: center;
}

ul.navi li img {
    vertical-align: bottom;
}

.main_size {
    width: 1200px;
    margin: 0 auto;
}

footer#pc_footer {
    width: 100%;
    min-width: 1000px;
    background: #011842;
    position: relative;
    color: #fff;
}

#footerInner {
    width: 1000px;
    margin: 0 auto;
    background: url(../images/footer_lotus2.png) no-repeat left 0 top 50%, url(../images/footer_lotus2.png) no-repeat right 0 top 50%;
}

footer a {
    color: #fff;
}

ul.footer_center {
    padding: 38px 0;
    text-align: center;
}

ul.footer_center .footer_label {
    font-size: 140%;
}

ul.footer_left {
    float: left;
    width: 300px;
}

ul.footer_navi1,
ul.footer_navi2 {
    float: left;
    width: 220px;
}

ul.footer_navi1 li {
    background: url(../images/list_lotus.png) no-repeat 0 50%;
    padding-left: 30px;
    display: inline-block;
}

ul.footer_navi2 li {
    background: url(../images/list_lotus.png) no-repeat 0 50%;
    padding-left: 30px;
    display: inline-block;
}

small.copyright {
    color: #fff;
    text-align: center;
    display: inline-block;
    float: none;
    width: 100%;
    font-size: 12px;
}

.teikyu {
    font-size: 19px;
}


/* 問い合わせバナー */

.requestBnrArea {
    width: 960px;
    height: 220px;
    border: solid 1px #c8c8c8;
    padding: 3px;
    box-sizing: border-box;
    margin: 0 auto;
}

.requestBnrInner {
    width: 952px;
    height: 212px;
    border: solid 3px #fff;
    background: #f5f5f5;
    box-sizing: border-box;
    margin: 0 auto;
    position: relative;
}

.requestBnrImg {
    position: absolute;
    top: 19px;
    left: 19px;
}

.requestRightTop {
    position: absolute;
    top: 24px;
    left: 300px;
    font-size: 17px;
    line-height: 39px;
    height: 39px;
    color: #001842;
    font-weight: bold;
    padding-left: 32px;
}

.requestRightTop:before {
    content: url(../images/mailmark.jpg);
    position: absolute;
    top: 2px;
    left: 0px;
}

.requestRightCenter {
    position: absolute;
    top: 74px;
    left: 300px;
    font-size: 17px;
    line-height: 39px;
    height: 39px;
    color: #001842;
    font-weight: bold;
    padding-left: 32px;
    padding-bottom: 15px;
    border-bottom: solid 1px #e3e3e3;
    width: 580px;
}

.requestRightCenter:before {
    content: url(../images/telmark.jpg);
    position: absolute;
    top: 3px;
    left: 0px;
}

span.tel {
    font-size: 24px;
    font-weight: bold;
    padding-left: 30px;
    position: absolute;
    top: 0px;
    color: #F79C97;
}

.requestRightBnr img {
    position: absolute;
    top: 0px;
    left: 285px;
}

.requestRightBottom {
    position: absolute;
    top: 75px;
    left: 300px;
    font-size: 17px;
    line-height: 39px;
    height: 39px;
    color: #001842;
    font-weight: bold;
    padding-left: 32px;
    padding-top: 15px;
    border-bottom: solid 1px #fff;
    width: 580px;
}

h1.requestName {
    position: absolute;
    top: 62px;
    left: 0;
    font-size: 17px;
    font-weight: bold;
    color: #000;
}

p.address {
    position: absolute;
    top: 87px;
    left: 0;
    font-size: 13px;
    color: #000;
}

.floatArea {
    width: 1000px;
    margin: 0 auto;
    overflow: hidden;
}

.floatL {
    float: left;
}

.floatR {
    float: right;
}

p.floatNon {
    float: none;
}


/*---------------------------------------------------------------------

	 スライダー

---------------------------------------------------------------------*/

.slider {
    /*width:100%;
	height:560px;
	overflow:hidden;
	position: relative;*/
}

.slider img {
    /*min-width:100%;
	min-height: 100%;*/
    max-width: 100%;
    vertical-align: bottom;
    /*-webkit-transform:translate(-50%,-50%);
	-moz-transform:translate(-50%,-50%);
	-ms-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);*/
    /*position: absolute;
	top:50%;
	left:50%;*/
}


/*---------------------------------------------------------------------

	 bxSlider サムネイル

---------------------------------------------------------------------*/

.bottom_border {
    border-bottom: solid 4px #f3aca8;
}

.bx-wrapper {
    position: relative;
    margin: 0 auto;
    padding: 0;
    *zoom: 1;
    z-index: 10;
}


/** THEME
===================================*/

.bx-wrapper .bx-viewport {
    background: #fff;
    /*fix other elements on the page moving (on Chrome)*/
    -webkit-transform: translatez(0);
    -moz-transform: translatez(0);
    -ms-transform: translatez(0);
    -o-transform: translatez(0);
    transform: translatez(0);
    overflow: hidden;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
    position: absolute;
    bottom: -25px;
    width: 100%;
}


/* LOADER */

.bx-wrapper .bx-loading {
    min-height: 50px;
    background: url(../images/bx_loader.gif) center center no-repeat #fff;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2000;
}


/* PAGER */

.bx-wrapper .bx-pager {
    text-align: center;
    font-size: .85em;
    font-family: Arial;
    font-weight: bold;
    color: #f076ae;
    z-index: 200;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
    display: inline-block;
    *zoom: 1;
    *display: inline;
}

.bx-wrapper .bx-pager.bx-default-pager a {
    background: #f89791;
    text-indent: -9999px;
    display: block;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    outline: 0;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #fbe9e9;
}


/* DIRECTION CONTROLS (NEXT / PREV) */

.bx-wrapper .bx-prev {
    left: 10px;
    background: url(../images/controls.png) no-repeat 0 -32px;
    z-index: 300;
}

.bx-wrapper .bx-next {
    right: 10px;
    background: url(../images/controls.png) no-repeat -43px -32px;
}

.bx-wrapper .bx-prev:hover {
    background-position: 0 0;
}

.bx-wrapper .bx-next:hover {
    background-position: -43px 0;
}

.bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: 50%;
    margin-top: 130px;
    outline: 0;
    width: 32px;
    height: 32px;
    text-indent: -9999px;
    z-index: 400;
}

.bx-wrapper .bx-controls-direction a.disabled {
    display: none;
}


/* AUTO CONTROLS (START / STOP) */

.bx-wrapper .bx-controls-auto {
    text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
    display: block;
    text-indent: -9999px;
    width: 10px;
    height: 11px;
    outline: 0;
    background: url(../images/controls.png) -86px -11px no-repeat;
    margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
    background-position: -86px 0;
}

.bx-wrapper .bx-controls-auto .bx-stop {
    display: block;
    text-indent: -9999px;
    width: 9px;
    height: 11px;
    outline: 0;
    background: url(../images/controls.png) -86px -44px no-repeat;
    margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
    background-position: -86px -33px;
}


/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
    text-align: left;
    width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
    right: 0;
    width: 35px;
}


/* IMAGE CAPTIONS */

.bx-wrapper .bx-caption {
    position: absolute;
    bottom: -30px;
    left: 0;
    width: 100%;
    background: url(../images/more.png) no-repeat;
}

#slideWrapper {
    position: relative;
    /*border-bottom:4px solid #f3aca8;*/
}

.cont2 {
    background-clip: padding-box;
    background-color: white;
    border: 10px solid rgba(242, 216, 223, 0.7);
    border-radius: 6px;
    bottom: 10px;
    height: 192px;
    position: absolute;
    right: 10px;
    width: 300px;
    z-index: 300;
}

.bx-caption span {
    color: #090 !important;
    font-size: 12px !important;
}

.thumb1,
.thumb2,
.thumb3,
.thumb4 {
    position: relative;
}

.thumb1_more,
.thumb2_more,
.thumb3_more,
.thumb4_more,
.thumb5_more {
    position: absolute;
    bottom: 0px;
    right: 0;
    z-index: 9999;
}

.cont2 a:hover img {
    filter: alpha(opacity=70);
    -moz-opacity: 0.70;
    opacity: 0.70;
}

.cont2 a img {
    -webkit-transition: opacity 0.5s ease-out;
    -moz-transition: opacity 0.5s ease-out;
    -ms-transition: opacity 0.5s ease-out;
    transition: opacity 0.5s ease-out;
    max-width: 100%;
}


/*---------------------------------------------------------------------

	 トップコンテンツ部分

---------------------------------------------------------------------*/

.frontText {
    background: url(../images/top_text.jpg) no-repeat;
    width: 700px;
    height: 232px;
    margin: 0 auto;
}

.frontText p {
    font-size: 16px;
    color: #6a6a6a;
    line-height: 23px;
    padding: 90px 0 0 48px;
}

.main_contentsBg {
    background: #E4E4E4;
    width: 100%;
    padding-bottom: 50px;
}

.main_contents {
    width: 1000px;
    margin: 0 auto;
}

.pdfArea {
    float: right;
    margin-top: 29px;
}

.sakura {
    text-align: center;
    margin-top: 10px;
}

.flex {
    max-width: 800px;
    margin: 0 auto;
}

.flex li {
    margin: 0 10px;
}

@media screen and (min-width: 424px) {
    .flex li.item {
        width: 50%;
    }
}

.sakuragroup {
    max-width: 100%;
    display: block;
    margin: 0 auto;
}

@media screen and (min-width:600px) {
    .flex {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
    }
}

.item {}

.text {
    display: block;
    margin: 25px 0;
    padding: 0px 30px;
    background-color: #e48379;
    border-radius: 20px;
    color: #fff;
    font-size: 170%;
    text-align: center;
}


/*---------------------------------------------------------------------

	 下層

---------------------------------------------------------------------*/

.mainImage {
    width: 1000px;
    margin: 0 auto;
}

.wideImage {
    width: 100%;
    max-width: 1920px;
    overflow: hidden;
    position: relative;
    text-align: center;
}

.wideImage img {
    /*position:absolute;
	left:0;
	top:0;*/
    width: 100%;
}

@media (max-width: 499px) {
    .wideImage img.sm {
        display: inline;
    }

    .wideImage img.lg,
    .wideImage img.md {
        display: none;
    }
}

@media (min-width: 500px) and (max-width: 999px) {
    .wideImage img.md {
        display: inline;
    }

    .wideImage img.lg,
    .wideImage img.sm {
        display: none;
    }
}

@media (min-width: 1000px) {
    .wideImage img {
        width: auto;
        min-height: 146px;
        left: -5%;
        position: relative;
    }

    .wideImage img.lg {
        display: inline;
    }

    .wideImage img.md,
    .wideImage img.sm {
        display: none;
    }
}

.head_text {
    position: absolute;
    left: 50%;
    margin-left: -500px;
    top: 50%;
    color: #fff;
    font-size: 20px;
}

.head_text1w {
    position: absolute;
    left: 50%;
    margin-left: -500px;
    top: 50%;
    color: #ffffff;
    font-size: 20px;
    margin-top: -15px;
}

.head_text1b {
    position: absolute;
    left: 50%;
    margin-left: -500px;
    top: 50%;
    color: #333;
    font-size: 20px;
    margin-top: -20px;
}

.head_text {
    position: absolute;
    left: 50%;
    margin-left: -500px;
    top: 50%;
    color: #fff;
    font-size: 20px;
}

.head_text {
    position: absolute;
    left: 50%;
    margin-left: -500px;
    top: 50%;
    color: #fff;
    font-size: 20px;
}


/*---------------------------------------------------------------------

	 霊園の特徴・施設

---------------------------------------------------------------------*/


/*div.facility ul.table p.tableText{
	width:294px;
	height:120px;
	background:#fff;
	line-height:25px;
}*/

.facility_image04 {
    width: 417px;
    height: 273px;
    background: #e5e5e5;
    position: relative;
}

p.facility_text01 {
    width: 417px;
    height: 40px;
    line-height: 40px;
    position: absolute;
    bottom: 0px;
    left: 0;
    background: #000;
    opacity: 0.7;
}

span.facility_span04 {
    color: #fff;
    opacity: 1.0;
}

td.verticalText {
    background: #000;
    color: #fff;
    opacity: 0.8;
    writing-mode: tb-rl;
    /* IE独自仕様 */
    writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: tb-rl;
    width: 55px;
    height: 117px;
    margin: 0 auto;
    -webkit-text-orientation: upright;
    display: block;
    padding: 9px 6px 0 0;
    box-sizing: border-box;
    font-size: 12px;
}

.facility_image09 {
    width: 417px;
    height: 273px;
    background: #e5e5e5;
    position: relative;
}

p.facility_text09 {
    width: 417px;
    height: 40px;
    line-height: 40px;
    position: absolute;
    bottom: 0px;
    left: 0;
    background: #000;
    opacity: 0.7;
}

span.facility_span09 {
    color: #fff;
    opacity: 1.0;
}

.facility_image11 {
    width: 292px;
    height: 207px;
    background: #e5e5e5;
    position: relative;
}

p.facility_text11 {
    width: 292px;
    height: 40px;
    line-height: 40px;
    position: absolute;
    bottom: 0px;
    left: 0;
    background: #000;
    opacity: 0.7;
}

span.facility_span11 {
    color: #fff;
    opacity: 1.0;
}

.frame {
    width: 680px;
    height: 173px;
    margin: 0 auto;
    background: url(../images/frame.png) no-repeat;
}

.product-list {
    width: 1000px;
    margin: 100px auto 70px;
    text-align: center;
}

.product-list ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    flex-wrap: wrap;
}

.product-list ul li {
    width: 465px;
    padding-bottom: 30px;
}

.product-list ul li:nth-child(odd) {
    padding-right: 25px;
}

.product-list img {
    max-width: 100%;
}


/*---------------------------------------------------------------------

	 永代供養樹木葬　さくらの碑

---------------------------------------------------------------------*/

.jumokuso_topImage {
    width: 1000px;
    height: 360px;
    background: #fff9f9;
    border: solid 1px #d2d2d2;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
}

.jumokuso_main {
    width: 1000px;
    margin: 0 auto;
}

.jumokuso_main img {
    border: solid 1px #c8c8c8;
    box-sizing: border-box;
}

.jumokuso_topImage h3.jumokusoH3 {
    font-size: 23px;
    line-height: 38px;
    position: absolute;
    left: 50px;
    top: 50px;
    color: #333;
}

.jumokuso_topImage p.jumokusoP {
    font-size: 16px;
    line-height: 24px;
    position: absolute;
    left: 50px;
    top: 150px;
    color: #333;
}

.recommendBox {
    width: 800px;
    height: auto;
    background: #fff;
    border: solid 4px #f79c97;
    margin: 50px auto 70px auto;
    padding: 30px 0;
}

h4.recommendTtl {
    width: 438px;
    height: 40px;
    line-height: 40px;
    font-size: 19px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    background: #f79c97;
    margin: 0 auto;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}

ul.recommendList {
    font-size: 16px;
    line-height: 28px;
    padding-left: 90px;
    margin-top: 30px;
}

ul.recommendList li {
    background: url(../images/checkmark.png) no-repeat left 0px top 8px;
    padding-left: 20px;
}

ul.recommendList li p {
    margin-left: 20px;
}

.main_bnr {
    width: 728px;
    height: 90px;
    background: url(../images/main_bnr.jpg) no-repeat;
    margin: 0 auto;
    position: relative;
}

.main_bnr img {
    position: absolute;
    top: 40px;
    left: 454px;
}

h4.flowTtl {
    width: 590px;
    height: 54px;
    line-height: 54px;
    font-size: 19px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    background: #f79c97;
    margin: 0 auto;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}

.flowImageArea {
    width: 897px;
    margin: 0 auto;
}

table.carveTable {
    width: 1000px;
    margin: 0 auto;
    padding-right: 10px;
}

table.carveTable td {
    border: solid 1px #ccc;
    text-align: center;
    height: 50px;
    line-height: 50px;
    color: #333;
    font-size: 17px;
}

table.carveTable tr:first-child img {
    width: 455px;
}

.carvePrice {
    color: #a8003e;
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 1px;
}

table.carveTable td.even {
    background: #f7f7f7;
    font-size: 17px;
}

.carveArea {
    width: 1020px;
    margin: 0 auto;
    padding-bottom: 65px;
    position: relative;
}

table.carveTable td small {
    display: block;
    text-align: right;
    line-height: 1.5em;
    margin: -10px 10px 10px 0;
}

ul.carveTable {
    width: 1020px;
    margin: 0 auto;
    display: table;
}

ul.carveTable li {
    display: table-cell;
}

ul.carveList {
    width: 1020px;
    margin: 0 auto;
}

table.carveSA {
    width: 1020px;
    margin: 0 auto;
    text-align: center;
}

table.carveSA td {
    padding: 10px;
}

td.carveListTypeA {
    height: 37px;
    line-height: 37px;
    color: #333;
    font-size: 15.4px;
    font-weight: bold;
    text-align: center;
}

td.carveListTypeB {
    height: 37px;
    line-height: 37px;
    color: #333;
    font-size: 15.4px;
    font-weight: bold;
    text-align: center;
}

h1.type {
    position: relative;
    text-align: center;
    margin-bottom: 40px;
}

h1.type .wrap {
    background: #fff;
    color: #000000;
    display: inline-block;
    line-height: 100%;
    margin: 0 auto;
    padding: 0 18px;
    position: relative;
    text-align: center;
    z-index: 2;
}

h1.type .wrap .carveType {
    display: inline-block;
    font-size: 20px;
    letter-spacing: 0.06em;
    line-height: 100%;
}

h1.type::after {
    background: #666;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    top: 49%;
    width: 100%;
    z-index: 1;
}

.priceInfo {
    width: 1000px;
    margin: 0 auto;
}

.pc-dsp {
    display: block;
    text-align: center;
    font-size: 15px;
}

.sp-dsp {
    display: none;
}

@media only screen and (max-width: 1000px) {
    .pc-dsp {
        display: none;
    }

    .sp-dsp {
        display: block;
        text-align: center;
        font-size: 15px;
    }
}


/*---------------------------------------------------------------------

	 voice

---------------------------------------------------------------------*/

.voiceL {
    width: 472px;
    height: 351px;
    background: url(../images/voiceL.jpg) no-repeat;
    float: left;
    position: relative;
}

h4.voiceTitle {
    font-size: 17px;
    font-weight: bold;
    position: relative;
    top: 38px;
    left: 35px;
}

p.voiceText {
    font-size: 14px;
    line-height: 34px;
    width: 384px;
    padding: 0 10px;
    box-sizing: border-box;
    position: absolute;
    top: 72px;
    left: 27px;
}

.voiceR {
    width: 472px;
    height: 351px;
    background: url(../images/voiceR.jpg) no-repeat;
    float: right;
    position: relative;
}

.voiceL {
    width: 472px;
    height: 351px;
    background: url(../images/voiceL.jpg) no-repeat;
    float: left;
    position: relative;
}

.visitArea {
    width: 1000px;
    background: #e4d7a3;
    padding-bottom: 50px;
    box-sizing: border-box;
    margin: 0 auto;
}

h1.visitTtl {
    text-align: center;
}

h2.visitSubTtl {
    font-size: 42px;
    text-align: center;
    margin-top: 50px;
    margin-bottom: 50px;
    color: #000;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

p.visitDay {
    font-size: 28px;
    text-align: center;
    /*background:url(../images/doublet.png) no-repeat bottom -7px left 50%;*/
    color: #000;
}

h3.info {
    font-size: 22px;
    text-align: center;
    color: #F06603;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

p.soldout {
    width: 362px;
    height: 45px;
    line-height: 45px;
    background: #011842;
    background: #81B20C;
    text-align: center;
    color: #fff;
    font-size: 22px;
    font-weight: bold;
    margin: 20px auto;
}

.exhibitionBox {
    width: 700px;
    border: solid 2px #f06603;
    background: #fff;
    margin: 50px auto;
    padding: 20px 0;
}

h2.exhibitionTtl {
    color: #000;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin: 15px auto;
    width: 96%;
    height: 37px;
    line-height: 37px;
    background: #eee;
}

table.exhibitionTable {
    width: 90%;
    margin: 0 auto;
    font-size: 18px;
    font-weight: bold;
    color: #000;
}

table.exhibitionTable td {
    vertical-align: top;
}

p.exhibitionNote {
    font-size: 21px;
    font-weight: bold;
    text-align: center;
    color: #000;
    display: block;
}

.reserveArea {
    width: 800px;
    margin: 50px auto 0 auto;
    /*
	border-top:solid 2px #f06603;
	border-bottom:solid 2px #f06603;
	border-top:solid 2px #011842;
	border:solid 2px #333;
	*/
    background: #fff;
    font-size: 15px;
    padding: 20px;
}

p.reserveTtl {
    text-align: center;
    background: #f06603;
    background: #011842;
    background: #baac72;
    background: #7F7B6B;
    color: #fff;
    height: 60px;
    line-height: 60px;
    width: 780px;
    margin: 10px auto 0px auto;
    font-size: 19px;
}

table.reserve {
    color: #333;
    width: 780px;
    padding: 10px;
    margin: 0 auto 10px auto;
    box-sizing: border-box;
}

table.reserve td {
    height: 65px;
    line-height: 65px;
    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    border: solid 1px #ccc;
}

table.reserve td.reserveList {
    text-align: center;
    width: 150px;
    background: #666;
    background: #a7985a;
    color: #fff;
}

table.reserve td.reserveContents {
    text-align: left;
    padding-left: 20px;
    background: #fff;
}

.arrow {
    width: 110px;
    margin: 0 auto;
}

p.arrowBox {
    width: 1000px;
    height: 80px;
    line-height: 80px;
    font-size: 18px;
    font-weight: bold;
    color: #001842;
    text-align: center;
    background: #e4d7a3;
    background: #81B20C;
    color: #fff;
    margin: 0 auto;
    box-sizing: border-box;
}

p.arrowBox2 {
    width: 1000px;
    padding: 25px 0;
    font-size: 18px;
    font-weight: bold;
    color: #001842;
    text-align: center;
    background: #e4d7a3;
    background: #81B20C;
    color: #fff;
    margin: 0 auto;
    box-sizing: border-box;
}

.arrow_css {
    width: 0;
    height: 0;
    border: 50px solid transparent;
    border-top: 50px solid #81B20C;
    margin: 0 auto;
}


/*---------------------------------------------------------------------

	 永代供養墓　桜さくら霊廟

---------------------------------------------------------------------*/

h3.eitaikuyouH3 {
    font-size: 23px;
    color: #000;
}

p.eitaikuyouTopText {
    width: 100%;
    font-size: 16px;
    margin: 0 auto;
    line-height: 27px;
    box-sizing: border-box;
}

p.eitaikuyouP {
    font-size: 16px;
    line-height: 29px;
    position: absolute;
    left: 20px;
    top: 90px;
}

.systemBox {
    width: 800px;
    height: 220px;
    margin: 0 auto;
    border: solid 3px #ffd2cf;
    border: solid 3px #80bd9b;
    border: solid 3px #81b20c;
    position: relative;
}

h3.systemTtl {
    font-size: 24px;
    color: #ef7972;
    color: #44b98e;
    color: #81b20c;
    position: relative;
    top: 30px;
    left: 30px;
}

p.systemText {
    font-size: 17px;
    position: absolute;
    top: 75px;
    left: 30px;
}

.systemImage {
    position: absolute;
    top: 50%;
    right: 30px;
    margin-top: -79px;
}

.arrow2 {
    width: 43px;
    margin: 0 auto;
}

.eitaikuyou_mainImage {
    width: 801px;
    height: 376px;
    margin: 0 auto;
}

.eitaikuyou_topImage img {
    border: solid 1px #c8c8c8;
    box-sizing: border-box;
}

p.wideText {
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    color: #e9635b;
    width: 820px;
    height: 80px;
    line-height: 70px;
    background: #fff;
    margin: 0 auto;
    border: solid 6px #ccc;
    box-sizing: border-box;
}

h4.reliableTtl {
    text-align: center;
    background: #fae4f0;
    margin: 10px;
}


/*---------------------------------------------------------------------

	 永代供養改葬プラン

---------------------------------------------------------------------*/

.planTopArea {
    width: 1000px;
    height: 300px;
    margin: 0 auto;
    position: relative;
}

h3.planH3 {
    font-size: 23px;
    color: #333;
    position: absolute;
    top: 75px;
    left: 50px;
}

p.planTopText {
    width: 510px;
    position: absolute;
    top: 125px;
    left: 50px;
    font-size: 16px;
    line-height: 27px;
}

.planTopArea img {
    position: absolute;
    top: 100px;
    right: 10px;
}

.plan_ttl {
    width: 838px;
    height: 72px;
    margin: auto;
    background: url(../images/plan_flowBg.png) no-repeat;
    position: relative;
}

.plan_ttl p {
    color: #fff;
    font-size: 17px;
    line-height: 25px;
    position: absolute;
    left: 320px;
    top: 13px;
}

.flow01 {
    width: 852px;
    height: 236px;
    background: url(../images/plan_flow01.jpg) no-repeat;
    position: relative;
    margin: 0 auto;
}

.flow02 {
    width: 852px;
    height: 236px;
    background: url(../images/plan_flow02.jpg) no-repeat;
    position: relative;
    margin: 0 auto;
}

.flow03 {
    width: 852px;
    height: 236px;
    background: url(../images/plan_flow03.jpg) no-repeat;
    position: relative;
    margin: 0 auto;
}

.flow04 {
    width: 852px;
    height: 236px;
    background: url(../images/plan_flow04.jpg) no-repeat;
    position: relative;
    margin: 0 auto;
}

.flow05 {
    width: 852px;
    height: 236px;
    background: url(../images/plan_flow05.jpg) no-repeat;
    position: relative;
    margin: 0 auto;
}

.flow06 {
    width: 852px;
    height: 236px;
    background: url(../images/plan_flow06.jpg) no-repeat;
    position: relative;
    margin: 0 auto;
}

.flow07 {
    width: 852px;
    height: 236px;
    background: url(../images/plan_flow07.jpg) no-repeat;
    position: relative;
    margin: 0 auto;
}

.flow08 {
    width: 852px;
    height: 236px;
    background: url(../images/plan_flow08.jpg) no-repeat;
    position: relative;
    margin: 0 auto;
}


/*
.flow05{
	width:852px;
	height:236px;
	background:url(../images/plan_option.jpg) no-repeat;
	position:relative;
	margin:0 auto;}

*/

h2.flow_h201 {
    font-size: 24px;
    color: #373737;
    position: absolute;
    top: 23px;
    left: 410px;
}

p.flow_p01 {
    font-size: 15px;
    color: #373737;
    position: absolute;
    top: 74px;
    left: 412px;
}

h2.flow_h202 {
    font-size: 24px;
    color: #373737;
    position: absolute;
    top: 23px;
    left: 410px;
}

p.flow_p02 {
    font-size: 15px;
    color: #373737;
    position: absolute;
    top: 74px;
    left: 412px;
}

h2.flow_h203 {
    font-size: 24px;
    color: #373737;
    position: absolute;
    top: 23px;
    left: 410px;
}

p.flow_p03 {
    font-size: 15px;
    color: #373737;
    position: absolute;
    top: 74px;
    left: 412px;
}

h2.flow_h204 {
    font-size: 24px;
    color: #373737;
    position: absolute;
    top: 23px;
    left: 410px;
}

p.flow_p04 {
    font-size: 15px;
    color: #373737;
    position: absolute;
    top: 74px;
    left: 412px;
}

h2.flow_h204-2 {
    font-size: 24px;
    color: #373737;
    position: absolute;
    top: 23px;
    left: 410px;
}

p.flow_p04-2 {
    font-size: 15px;
    color: #373737;
    position: absolute;
    top: 74px;
    left: 412px;
}

h2.flow_h204-3 {
    font-size: 24px;
    color: #373737;
    position: absolute;
    top: 23px;
    left: 410px;
}

p.flow_p04-3 {
    font-size: 15px;
    color: #373737;
    position: absolute;
    top: 74px;
    left: 412px;
}

h2.flow_h204-4 {
    font-size: 24px;
    color: #373737;
    position: absolute;
    top: 23px;
    left: 410px;
}

p.flow_p04-4 {
    font-size: 15px;
    color: #373737;
    position: absolute;
    top: 74px;
    left: 412px;
}


/*

p.flow_p05-1{
	font-size:19px;
	color:#333;
	position:absolute;
	top:27px;
	left:33px;}


h2.flow_h205{
	font-size:24px;
	color:#373737;
	position:absolute;
	top:67px;
	left:31px;}


p.flow_p05-2{
	font-size:17px;
	color:#333;
	position:absolute;
	top:103px;
	left:31px;}


p.flow_p05-3{
	font-size:14px;
	color:#f3746d;
	position:absolute;
	top:162px;
	left:31px;}

*/

.copyImage {
    width: 937px;
    margin: 0 auto;
}

.arrowGray_css {
    width: 0;
    height: 0;
    border: 50px solid transparent;
    border-top: 50px solid #e4e4e4;
    margin: 0 auto;
}


/*日程表*/

.yotei {
    width: 806px;
    margin: 0 auto;
    padding: 20px 0
}

.yotei table {
    width: 100%;
    border: solid 1px #999;
    font-size: 1.1rem;
}

.yotei table th {
    font-weight: bold;
    background: #999;
    color: #fff;
}

.yotei table th span {
    margin-left: 10px;
}

.yotei table td,
.yotei table th {
    text-align: center;
    padding: 10px;
    border-bottom: solid 1px #ccc;
    border-right: solid 1px #ccc;
}

.yotei table .last {
    border-right: none;
}

.yotei table .last_tr th,
.yotei table .last_tr td {
    border-bottom: none;
}

.sp_only {
    display: none;
}


/*---------------------------------------------------------------------

	 アクセス・地図

---------------------------------------------------------------------*/

.accessArea {
    width: 1100px;
    min-height: 900px;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
}

.accessArea .floatL {
    width: 260px;
    margin-top: 15px;
}

.access_train {
    position: relative;
    margin-bottom: 40px;
    padding: 30px 15px 20px;
    border: 1px solid #c9c9c9;
    font-size: 14px;
}

.access_train h2 {
    position: absolute;
    top: -15px;
    left: 30px;
}

p.train {
    line-height: 22px;
}

.access_car {
    position: relative;
    padding: 20px 15px 0px;
    border: 1px solid #c9c9c9;
    font-size: 17px;
}

.access_car h2 {
    position: absolute;
    top: -15px;
    left: 30px;
}

p.carTtl {
    font-weight: bold;
    line-height: 25px;
}

p.catText {
    font-size: 15px;
    line-height: 22px;
    margin-bottom: 30px;
}

.map {
    width: 530px;
    margin-left: 280px;
}

.map img {
    max-width: 100%;
}

.accessArea .route {
    font-size: 12px;
}

.accessArea .route li {
    position: absolute;
    background-repeat: no-repeat;
}

.accessArea #route00 {
    top: 410px;
    right: 205px;
    width: 200px;
}

.accessArea #route00 img {
    width: 100%;
}

.accessArea #route01 {
    top: 98px;
    right: 60px;
    width: 410px;
    height: 300px;
    background-image: url(../images/access/route01.png);
    background-size: 410px;
}

.accessArea #route01 .route-box {
    width: 195px;
    margin-left: 200px;
    padding-top: 5px;
}

.accessArea #route02 {
    bottom: 130px;
    right: 140px;
    width: 400px;
    height: 150px;
    background-image: url(../images/access/route02.png);
    background-size: 400px;
}

.accessArea #route02 .route-box {
    display: inline-block;
    width: 185px;
    padding: 22px 0 0 9px;
}

.accessArea #route03 {
    bottom: 114px;
    left: 230px;
    width: 220px;
    height: 170px;
    background-image: url(../images/access/route03.png);
    background-size: 220px;
}

.accessArea #route03 .route-box {
    display: inline-block;
    width: 185px;
    padding: 42px 0 0 15px;
}

.accessArea #route04 {
    bottom: 19px;
    left: 220px;
    width: 500px;
    height: 400px;
    background-image: url(../images/access/route04.png);
    background-size: 250px;
}

.accessArea #route04 .route-box {
    width: 195px;
    margin-right: 200px;
    padding: 146px 0 0 13px;
}

.accessArea .route img {
    max-width: 100%;
    vertical-align: bottom;
    z-index: 1;
}

.accessArea .route-box strong {
    color: #c3332a;
}

.accessArea .route-box a {
    display: block;
    text-align: right;
    color: #666;
}

.gmapArea {
    float: none;
    border: solid 1px #c9c9c9;
    box-sizing: border-box;
    width: 950px;
    margin: 0 auto;
    padding: 0;
}

.gmapLink {
    width: 200px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background: #000;
    float: right;
    margin: 20px 23px 70px 0;
}

.gmapLink a {
    display: inline-block;
    width: 200px;
    height: 40px;
    color: #fff;
}

.gmapLink a:hover {
    background: #333;
}

iframe {
    margin-bottom: -7px !important;
    padding: 0 !important;
}


/*---------------------------------------------------------------------

	 資料請求・お問い合わせ

---------------------------------------------------------------------*/

.contactBox {
    width: 1000px;
    margin: 0 auto;
    border: solid 1px #aaa;
}

.contactBox2 {
    width: 1000px;
    height: 300px;
    overflow: scroll;
    margin: 0 auto;
    border: solid 1px #aaa;
}

.space {
    height: 50px;
}

h2.contactTtl {
    font-size: 17px;
    text-align: center;
    width: 970px;
    /*background:#f3f3f3;*/
    color: #333;
    margin: 0 15px;
    box-sizing: border-box;
    line-height: 24px;
}

span.contactTtlBg {
    background: #f3f3f3;
    display: inline-block;
    background: url(../images/contactTtlBg.png) no-repeat;
    width: 352px;
    height: 77px;
    margin: 0 auto;
}

.requestTel {
    text-align: center;
    font-size: 16px;
    color: #001842;
    font-weight: bold;
    padding-bottom: 4px;
}

span.tel2 {
    font-size: 33px;
    font-weight: bold;
    padding-left: 45px;
    position: relative;
    top: 6px;
    color: #02328D;
}

span.tel2:before {
    content: url(../images/telmark.jpg);
    position: absolute;
    top: -7px;
    left: 0px;
    margin-left: 15px;
}

.requestBox {
    width: 1000px;
    height: 300px;
    position: relative;
    background: url(../images/requestImage.png) no-repeat 30px 50%;
}

.requestTime {
    position: absolute;
    left: 238px;
    top: 160px;
    font-size: 15px;
    color: #000;
}

.requestNote {
    position: absolute;
    right: 40px;
    top: 200px;
    color: #cb3b6a;
    font-size: 14px;
    font-weight: bold;
}

.requestImage {}


/*---------------------------------------------------------------------

	 フォーム

---------------------------------------------------------------------*/

span.required {
    background: #ee6f6f;
    font-size: 12px;
    padding: 2px 8px 4px 8px;
    color: #fff;
}

.h50 {
    height: 50px;
}

.h80 {
    height: 80px;
}

.h100 {
    height: 100px;
}

.h130 {
    height: 130px;
}

.h200 {
    height: 200px;
}

.h250 {
    height: 250px;
}

.h300 {
    height: 300px;
}

.h400 {
    height: 400px;
}

.formNote1 {
    width: 100%;
    height: 100px;
    margin: 40px 0 0 0;
    padding-left: 10px;
    line-height: 24px;
    box-sizing: border-box;
}

p.formNote2 {
    width: 100%;
    height: 50px;
    line-height: 50px;
    margin: 40px 0 0 0;
    padding-left: 10px;
    box-sizing: border-box;
}

p.formNote3 {
    width: 100%;
    height: 50px;
    line-height: 50px;
    margin: 40px 0 0 0;
    padding-left: 10px;
    box-sizing: border-box;
}

.formList {
    width: 970px;
    margin: 0 auto;
    overflow: hidden;
    font-size: 14px;
    letter-spacing: 1px;
}

ul.formLeft {
    float: left;
    width: 250px;
    display: table;
    text-align: center;
    border-top: solid 1px #a9a9a9;
    box-sizing: border-box;
    background: #f8f8f8;
}

ul.formLeft li {
    display: table-cell;
    vertical-align: middle;
}

ul.formRight {
    float: left;
    width: 690px;
    padding: 10px;
    display: table-cell;
    border-top: solid 1px #d3d3d3;
    box-sizing: border-box;
}

ul.formRight li.formTtl {
    text-align: left;
    font-weight: bold;
}

ul.formRight li.checkList {
    float: left;
    margin-right: 15px;
}

textarea {
    width: 600px !important;
    padding: 6px;
    height: 120px !important;
    float: left;
    border: solid 1px #ccc;
    margin-left: 10px;
}

ul.formLeft2 {
    float: left;
    width: 250px;
    display: table;
    text-align: center;
    border-top: solid 1px #a9a9a9;
    box-sizing: border-box;
    background: #fff0ff;
}

ul.formLeft2 li {
    display: table-cell;
    vertical-align: middle;
}

ul.formLeft2Bd {
    float: left;
    width: 250px;
    display: table;
    text-align: center;
    border-top: solid 1px #a9a9a9;
    border-bottom: solid 1px #a9a9a9;
    box-sizing: border-box;
    background: #fff0ff;
}

ul.formLeft2Bd li {
    display: table-cell;
    vertical-align: middle;
}

ul.formLeftBd {
    float: left;
    width: 250px;
    display: table;
    text-align: center;
    border-top: solid 1px #a9a9a9;
    border-bottom: solid 1px #a9a9a9;
    box-sizing: border-box;
    background: #f8f8f8;
}

ul.formLeftBd li {
    display: table-cell;
    vertical-align: middle;
}

ul.formRightBd {
    float: left;
    width: 690px;
    padding: 10px;
    display: table-cell;
    border-top: solid 1px #d3d3d3;
    border-bottom: solid 1px #d3d3d3;
    box-sizing: border-box;
}

ul.formRightBd li.formTtl {
    text-align: left;
    font-weight: bold;
}

ul.formRightBd li.checkList {
    float: left;
    margin-right: 15px;
}

input.texttype {
    border: solid 1px #ccc;
    padding: 5px;
    margin-top: 14px;
    margin-left: 10px;
    width: 30%;
}

select {
    color: #333;
}

select.selectBox {
    border: solid 1px #ccc;
    padding: 5px;
    margin-top: 14px;
    margin-left: 10px;
}

input.texttype2 {
    border: solid 1px #ccc;
    padding: 5px;
    margin-top: -3px;
    margin-left: 10px;
    width: 80%;
}


select.selectBox2 {
    border: solid 1px #ccc;
    padding: 5px;
    margin-top: 14px;
    margin-left: 10px;
}

select.selectBox3 {
    border: solid 1px #ccc;
    padding: 5px;
    margin-top: -8px;
    margin-left: 10px;
    width: 50%;
}

.checkButtonArea {
    margin: 20px auto 50px;
    text-align: center;
    width: 860px;
}

button.submit {
    background: #32B183;
    color: #fff;
    cursor: pointer;
    font-size: 14px;
    font-weight: bold;
    height: 50px;
    width: 250px;
}

button.submit:hover {
    opacity: 0.8;
}

li.privacyTtl {
    font-weight: bold;
    font-size: 15px;
}

li.privacyText {
    font-size: 12px;
    line-height: 30px;
}


/* チェックボックス/ラジオボックス */

.wpcf7-form-control-wrap{
    margin-left: 25px;
}

.wpcf7-list-item{
    margin-right: 55px;
    margin-bottom: 7px;
    display: inline-block;
}

.wpcf7-list-item label{
    position: relative;
    display: inline-block;
}

.wpcf7-form-control{
    display: block;
    margin-left: 30px;
}

.checkList {
    padding: 6px;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

[type="checkbox"]:checked,
[type="checkbox"]:not(:checked) {
    position: absolute;
    left: 0;
    width: 18px;
    height: 18px;
    margin-left: -25px;
}

[type="checkbox"]:checked+label,
[type="checkbox"]:not(:checked)+label {
    position: relative;
    padding-left: 28px;
    cursor: pointer;
    line-height: 20px;
    display: inline-block;
    color: #666;
}

[type="checkbox"]:checked+label:before,
[type="checkbox"]:not(:checked)+label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px;
    border: 1px solid #c8c8c8;
    background: #fff;
}

[type="checkbox"]:checked+label:after,
[type="checkbox"]:not(:checked)+label:after {
    content: '';
    width: 8px;
    height: 8px;
    background: #00a69c;
    position: absolute;
    top: 6px;
    left: 6px;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

[type="checkbox"]:not(:checked)+label:after {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
}

[type="checkbox"]:checked+label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}

[type="radio"]:checked,
[type="radio"]:not(:checked) {
    position: absolute;
    left: 0;
    width: 18px;
    height: 18px;
    margin-left: -25px;
}

[type="radio"]:checked+label,
[type="radio"]:not(:checked)+label {
    position: relative;
    padding-left: 28px;
    cursor: pointer;
    line-height: 20px;
    display: inline-block;
    color: #666;
}

[type="radio"]:checked+label:before,
[type="radio"]:not(:checked)+label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px;
    border: 1px solid #c8c8c8;
    border-radius: 100%;
    background: #fff;
}

[type="radio"]:checked+label:after,
[type="radio"]:not(:checked)+label:after {
    content: '';
    width: 12px;
    height: 12px;
    background: #F87DA9;
    position: absolute;
    top: 4px;
    left: 4px;
    border-radius: 100%;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

[type="radio"]:not(:checked)+label:after {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
}

[type="radio"]:checked+label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}

.checkList {
    padding: 6px;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}


/*---------------------------------------------------------------------

	 送信完了画面

---------------------------------------------------------------------*/

p.thanksTtl {
    font-size: 16px;
    text-align: center;
    padding: 10px;
}

span.thanksListMark {
    display: block;
    font-size: 16px;
    height: 34px;
    line-height: 36px;
    margin: 20px 0 10px 16px;
    border-bottom: 1px dotted #ccc;
    padding-left: 20px;
    box-sizing: border-box;
}

span.thanksListMark:before {
    content: url(../images/check.png);
    font-size: 20px;
    color: #666;
    position: relative;
    top: 3px;
    left: -4px;
}

span.thanksList {
    display: block;
    font-size: 15px;
    line-height: 30px;
    margin-left: 15px;
}

.thanksBackBtn {
    background: #32b183;
    height: 40px;
    line-height: 40px;
    margin: 50px auto 60px auto;
    text-align: center;
    width: 200px;
}

.thanksBackBtn a {
    color: #fff;
    display: inline-block;
    font-size: 15px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    width: 200px;
}

.thanksBackBtn a:hover {
    background: #6ecaa9;
}


/*---------------------------------------------------------------------

	 一般墓地区画

---------------------------------------------------------------------*/

h3.bochiH3 {
    font-size: 23px;
    color: #000;
}

p.bochiTopText {
    float: left;
    width: 590px;
    font-size: 16px;
    margin: 0 auto;
    line-height: 27px;
    padding: 0 10px 0 0;
    box-sizing: border-box;
}

p.bochiBottomText {
    float: none;
    font-size: 16px;
    margin: 0 auto;
    line-height: 27px;
    padding: 0 10px 0 0;
    box-sizing: border-box;
}

.bochi_topImage {
    float: right;
}

p.bochiP {
    font-size: 16px;
    line-height: 29px;
    position: absolute;
    left: 20px;
    top: 90px;
}

.bochi_mainImage {
    width: 1000px;
    height: 327px;
    margin: 0 auto;
}

.bochi_mainImage img {
    border: solid 1px #c8c8c8;
    box-sizing: border-box;
}

.bochi_floatImage {
    width: 292px;
    height: 218px;
    background: #e5e5e5;
    position: relative;
}

p.bochi_floatText {
    width: 292px;
    height: 40px;
    line-height: 40px;
    position: absolute;
    bottom: 0px;
    left: 0;
    background: #000;
    opacity: 0.7;
}

span.bochi_floatSpan {
    color: #fff;
    opacity: 1.0;
}

.bochiBox1 {
    width: 100%;
    height: 220px;
    margin: 0 auto;
    border: solid 3px #ffd2cf;
    position: relative;
    background: #fff;
}

h3.bochiTtl1 {
    font-size: 24px;
    color: #ef7972;
    position: relative;
    top: 30px;
    left: 30px;
}

p.bochiText1 {
    width: 370px;
    font-size: 15px;
    position: absolute;
    top: 75px;
    left: 30px;
}

.bochiImage1 {
    position: absolute;
    top: 50%;
    right: 30px;
    margin-top: -79px;
}

.bochiBox2 {
    width: 100%;
    height: 350px;
    margin: 0 auto;
    border: solid 3px #81b20c;
    position: relative;
}

h3.bochiTtl2 {
    font-size: 24px;
    color: #81b20c;
    position: relative;
    top: 30px;
    left: 30px;
}

p.bochiText2 {
    width: 560px;
    font-size: 15px;
    position: absolute;
    top: 75px;
    left: 30px;
}

.bochiImage2 {
    position: absolute;
    top: 50%;
    right: 30px;
    margin-top: -79px;
}

.arrow2 {
    width: 43px;
    margin: 0 auto;
}

h4.flowTtl2 {
    width: 590px;
    height: 54px;
    line-height: 54px;
    font-size: 19px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    background: #81b20c;
    margin: 0 auto;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}

span.telIcon {
    background: url(../images/telmark.jpg) no-repeat 0 10px;
    padding-left: 28px;
    padding-top: 10px;
    line-height: 30px;
}

.bochiBox3 {
    width: 100%;
    height: 540px;
    margin: 0 auto;
    border: solid 3px #ffd2cf;
    background: #fff;
    position: relative;
}

h3.bochiTtl3 {
    font-size: 24px;
    color: #ef7972;
    position: relative;
    top: 30px;
    left: 30px;
}

p.bochiText3 {
    width: 430px;
    font-size: 15px;
    position: absolute;
    top: 75px;
    left: 30px;
}

.bochiImage3 {
    position: absolute;
    right: 30px;
    top: 30px;
}

.bochiImage3-2 {
    position: absolute;
    left: 50px;
    top: 250px;
}

.bochiImage3-3 {
    position: absolute;
    left: 380px;
    top: 250px;
}

.bochiImage3-4 {
    position: absolute;
    right: 50px;
    top: 250px;
}


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

p.pdfText {
    background: url(../images/icon_pdf.png) no-repeat 10px 50%;
    padding-left: 45px;
    padding-top: 6px;
}

p.pdfText a {
    color: #333;
}

p.pdfText a:hover {
    text-decoration: underline;
}

ul.table li p.fs_12 {
    font-size: 120%;
    margin-left: 0;
}

.grid {
    width: 1000px;
    margin: 20px auto;
}

.w50 {
    width: 50%;
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
}

.fl_l {
    float: left;
}

.fl_r {
    float: right;
}

.doga {
    width: 620px;
    float: right;
}

.fbook {
    float: left;
    width: 350px;
}

.ggmap {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

.ggmap iframe,
.ggmapr object,
.ggmap embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

.clearfix {
    min-height: 1px;
}

* html .clearfix {
    height: 1px;
    /*\*/
    /*/
height: auto;
overflow: hidden;
/**/
}

.marquee {
    width: 100%;
    padding: 0.5em 0;
    overflow: hidden;
    background-color: #f6f6f6;
    margin-bottom: 10px;
    position: relative;
}

.marquee p:after {
    content: "";
    white-space: nowrap;
    padding-right: 50px;
}

.marquee p {
    margin: 0;
    padding-left: 100%;
    display: inline-block;
    white-space: nowrap;
    -webkit-animation-name: marquee;
    -webkit-animation-timing-function: linear;
    -webkit-animation-duration: 20s;
    -webkit-animation-iteration-count: infinite;
    -moz-animation-name: marquee;
    -moz-animation-timing-function: linear;
    -moz-animation-duration: 20s;
    -moz-animation-iteration-count: infinite;
    -ms-animation-name: marquee;
    -ms-animation-timing-function: linear;
    -ms-animation-duration: 20s;
    -ms-animation-iteration-count: infinite;
    -o-animation-name: marquee;
    -o-animation-timing-function: linear;
    -o-animation-duration: 20s;
    -o-animation-iteration-count: infinite;
    animation-name: marquee;
    animation-timing-function: linear;
    animation-duration: 20s;
    animation-iteration-count: infinite;
    font-size: 120%;
}

.marquee p span {
    color: #EC1559;
    font-weight: bold;
    margin-right: 2em;
}

.campaign2 {
    text-align: center
}

.campaign img {
    float: left;
}

@-webkit-keyframes marquee {
    from {
        -webkit-transform: translate(0%);
    }

    99%,
    to {
        -webkit-transform: translate(-100%);
    }
}

@-moz-keyframes marquee {
    from {
        -moz-transform: translate(0%);
    }

    99%,
    to {
        -moz-transform: translate(-100%);
    }
}

@-ms-keyframes marquee {
    from {
        -ms-transform: translate(0%);
    }

    99%,
    to {
        -ms-transform: translate(-100%);
    }
}

@-o-keyframes marquee {
    from {
        -o-transform: translate(0%);
    }

    99%,
    to {
        -o-transform: translate(-100%);
    }
}

@keyframes marquee {
    from {
        transform: translate(0%);
    }

    99%,
    to {
        transform: translate(-100%);
    }
}


/* extends */

nav.navigation {
    background-color: #ffedf5;
}

nav.navigation>div {
    position: relative;
}

nav.navigation>div>img {
    position: absolute;
    left: 20px;
    bottom: 13px;
    width: 170px;
}

nav.navigation>div>p {
    position: absolute;
    left: 45px;
    bottom: -2px;
    font-size: 10px;
}

@media screen and (max-width: 768px) {
    nav.navigation>div>p {
        display: none
    }
}

nav.navigation>div>img.access {
    width: 100%;
    left: -60px;
}

nav.navigation ul {
    padding: 30px 0 15px 180px;
}

nav.navigation ul li {
    display: inline-block;
    max-width: 220px;
    margin: 0 5px;
}

nav.navigation ul li img {
    max-width: 100%;
}

.S_service {
    display: flex;
    flex-direction: column;
}

.grid {
    padding: 40px 0;
}

.grid .info {
    width: 520px;
    float: left;
    margin: 0 50px;
    font-size: 140%;
    position: relative;
}

.grid .info h2 {
    color: #fd776d;
    margin-bottom: 20px;
}

.grid .info>a {
    position: absolute;
    top: 0;
    left: 150px;
    display: inline-block;
    background-color: #edecea;
    color: #757575;
    text-align: center;
    padding: 0 10px;
    border-radius: 5px;
    font-size: 90%;
    line-height: 27px;
}

.grid .info>a img {
    /*vertical-align: middle;*/
    height: 10px;
    margin-right: 3px;
}

.grid .info dl {
    border-bottom: 1px solid #666;
}

.grid .info dt,
.grid .info dd {
    padding: 12px 0 3px;
    border-top: 1px solid #666;
}

.grid .info dt:nth-child(1),
.grid .info dd:nth-child(2) {
    border: none;
}

.grid .info dt {
    float: left;
    width: 140px;
}

.grid .info dd {
    margin-left: 140px;
}

.grid .info dd img {
    height: 30px;
    vertical-align: sub;
}

.grid .movie {
    display: none;
}

.grid .fbook h2 a,
.grid .movie h2 a {
    color: #fd776d;
}

div.contact {
    background-color: #f3f3f3;
    text-align: center;
    padding: 30px 0;
    font-size: 160%;
    font-weight: bold;
}

div.contact p {
    color: #000;
    line-height: 140%;
    margin-bottom: 20px;
}

div.contact>div>div {
    display: inline-block;
    border: 3px solid #e48379;
    padding: 3px 10px;
}

div.contact>div>div>a {
    color: #e48379;
    display: block;
    background-image: url(../images/common/icon-contact-right.png);
    background-repeat: no-repeat;
    background-position: center right;
    padding-right: 25px;
}

div.contact>div>a {
    display: inline-block;
    margin: 25px 0;
    padding: 0px 30px;
    background-color: #e48379;
    border-radius: 20px;
    color: #fff;
    font-size: 120%;
}

div.contact span {
    display: block;
    color: #e48379;
}

div.contact span img {
    max-width: 400px;
    vertical-align: bottom;
}

div.contact>div>a br {
    display: none;
}

@media screen and (min-width: 1000px) {
    .header {
        height: auto;
    }

    .header-scroll {
        top: 0;
        left: 0;
        width: 100%;
        height: auto;
        z-index: 500;
    }

    .header-scroll.is-fixed {
        position: fixed;
    }
}

.sidebar-fixed {
    display: none;
}

.main_contents.info {
    font-size: 16px;
}

.main_contents.info dl {
    padding: 30px 10px;
}

.main_contents.info dt,
.main_contents.info dd {
    padding: 15px 0;
    border-top: 1px solid #666;
}

.main_contents.info dt:nth-child(1),
.main_contents.info dd:nth-child(2) {
    border: none;
}

.main_contents.info dt {
    float: left;
    width: 130px;
}

.main_contents.info dd {
    margin-left: 130px;
}

.main_contents.info dd img {
    height: 30px;
    vertical-align: middle;
}

.main_contents.info .pagination {
    text-align: center;
    margin-bottom: 50px;
}

.main_contents.info .pagination a,
.main_contents.info .pagination span {
    display: inline-block;
    padding: 5px 15px;
    text-align: center;
    background: #ccc;
    margin: 0 5px;
    color: inherit;
}

.main_contents.info .pagination a:hover,
.main_contents.info .pagination span {
    background: #fd776d;
    color: #fff;
}


/* faq */

.faq>p {
    margin: 50px 0 70px;
    font-size: 18px;
    font-weight: bold;
}

.faq-box {
    margin-bottom: 100px;
}

.faq-box * {
    box-sizing: border-box;
}

.faq-box:after {
    content: "";
    clear: both;
    display: block;
}

.faq-box>h2 {
    font-size: 22px;
    margin-bottom: 20px;
    padding-top: 5px;
    padding-left: 65px;
    line-height: 55px;
    background: url(../images/faq/icon-title.png);
    background-repeat: no-repeat;
    background-position: left center;
}

.faq-box>ul {
    width: 50%;
}

.faq-box>ul.left {
    float: left;
    padding-right: 1px;
}

.faq-box>ul.right {
    float: right;
    padding-left: 1px;
}

.faq-box>ul li {
    line-height: 220%;
}

.faq-box>ul li span {
    position: relative;
    display: block;
    margin-bottom: 2px;
    padding: 30px 70px;
    background-color: #f59ea2;
    background-image: url(../images/faq/icon-q.png);
    background-repeat: no-repeat;
    background-position: 20px center;
    color: #fff;
    font-size: 18px;
    cursor: pointer;
}

.faq-box>ul li span:after {
    position: absolute;
    display: block;
    background-image: url(../images/faq/icon-close.png);
    background-repeat: no-repeat;
    background-position: 0 center;
    top: 0;
    right: 10px;
    width: 50px;
    height: 100%;
    content: "";
}

.faq-box>ul li p {
    display: none;
    border: 1px solid #f59ea2;
    margin-bottom: 2px;
    padding: 20px 20px 20px 70px;
    background-image: url(../images/faq/icon-a.png);
    background-repeat: no-repeat;
    background-position: 20px 20px;
    font-size: 16px;
}


/* page-voice */

.page-voice.main_contents {
    padding: 60px 0;
}

.voice-box {
    position: relative;
    margin-bottom: 50px;
    padding: 40px 50px 50px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    background: url(../images/voice/box-bg.jpg) left top repeat-y;
}

@media screen and (max-width: 499px) {
    .voice-box {
        width: 320px;
        background: url(../images/voice/box-bg-sm.jpg) left top repeat-y;
        padding: 30px 30px 40px 15px;
        margin: 0 auto 50px;
    }
}

@media screen and (min-width: 500px) and (max-width: 1000px) {
    .voice-box {
        width: 500px;
        background: url(../images/voice/box-bg-md.jpg) left top repeat-y;
        padding: 30px 30px 40px;
        margin: 0 auto 50px;
    }
}

.voice-box:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    height: 30px;
    width: 1000px;
    background: url(../images/voice/box-bg-top.jpg) left top no-repeat;
}

.voice-box:after {
    position: absolute;
    bottom: 0;
    left: 0;
    background: url(../images/voice/box-bg-bottom.jpg) right bottom no-repeat;
    content: "";
    display: block;
    width: 1000px;
    height: 30px;
}

@media screen and (max-width: 499px) {
    .voice-box:before {
        width: 100%;
        background: url(../images/voice/box-bg-top-sm.jpg) left top no-repeat;
    }

    .voice-box:after {
        width: 100%;
        background: url(../images/voice/box-bg-bottom-sm.jpg) right bottom no-repeat;
    }
}

@media screen and (min-width: 500px) and (max-width: 1000px) {
    .voice-box:before {
        width: 100%;
        background: url(../images/voice/box-bg-top-md.jpg) left top no-repeat;
    }

    .voice-box:after {
        width: 100%;
        background: url(../images/voice/box-bg-bottom-md.jpg) right bottom no-repeat;
    }
}

.voice-box h2 {
    font-size: 20px;
    line-height: 37px;
}

@media screen and (max-width: 1000px) {
    .voice-box h2 {
        font-size: 120%;
    }
}

.voice-box h2:before,
.voice-box h2:after {
    content: url(../images/voice/icon-title.png);
    vertical-align: text-top;
    margin: 0 5px;
}

.voice-box p {
    background: url(../images/voice/content-bg.jpg) left top repeat-y;
    line-height: 35px;
    font-size: 16px;
    padding: 3px 5px;
}

@media screen and (min-width: 500px) and (max-width: 1000px) {
    .voice-box p {
        font-size: 110%;
    }
}


/* index-voice */

.index-voice {
    width: 900px;
    margin: 0 auto;
    position: relative;
    margin-bottom: 60px;
}

@media screen and (max-width: 1000px) {
    .index-voice {
        width: auto;
    }
}

.index-voice h2 {
    color: #fd776d;
    margin-bottom: 20px;
}

@media screen and (max-width: 1000px) {
    .index-voice h2 {
        padding: 0 10px;
    }
}

.index-voice>a {
    position: absolute;
    top: 0;
    left: 100px;
    display: inline-block;
    background-color: #edecea;
    color: #757575;
    text-align: center;
    padding: 0 10px;
    border-radius: 5px;
    font-size: 100%;
    line-height: 27px;
}

.index-voice>a img {
    /*vertical-align: middle;*/
    height: 10px;
    margin-right: 3px;
}

.index-voice ul:after {
    content: "";
    clear: left;
    display: block;
}

.index-voice ul li {
    position: relative;
    box-sizing: border-box;
    float: left;
    width: 290px;
    padding: 25px;
    background: url(../images/index/voice-bg.jpg) left top repeat-y;
}

@media screen and (min-width: 400px) and (max-width: 1000px) {
    .index-voice ul {
        text-align: center;
    }

    .index-voice ul li {
        float: none;
        display: inline-block;
    }
}

@media screen and (max-width: 399px) {
    .index-voice ul li {
        float: none;
        /*background: none;*/
        margin: 0 auto 30px;
    }
}

.index-voice ul li:nth-child(2) {
    margin: 0 15px;
}

@media screen and (max-width: 1000px) {
    .index-voice ul li:nth-child(2) {
        margin: 0 auto 30px;
    }
}

.index-voice ul li:before {
    position: absolute;
    top: 0;
    left: 0;
    background: url(../images/index/voice-bg-top.jpg) left top no-repeat;
    content: "";
    display: block;
    width: 100%;
    height: 30px;
}

.index-voice ul li:after {
    position: absolute;
    bottom: 0;
    left: 0;
    background: url(../images/index/voice-bg-bottom.jpg) right bottom no-repeat;
    content: "";
    display: block;
    width: 100%;
    height: 30px;
}

@media screen and (max-width: 1000px) {
    .index-voice ul li:before {
        background-repeat: repeat-x;
        width: 100%;
        z-index: 120;
    }

    .index-voice ul li:after {
        background-repeat: repeat-x;
        width: 100%;
        z-index: 120;
    }
}

.index-voice ul li h3 {
    font-size: 15px;
    line-height: 37px;
}

@media screen and (max-width: 1000px) {
    .index-voice ul li h3 {
        font-size: 120%;
    }
}

.index-voice ul li h3:before,
.index-voice ul li h3:after {
    content: url(../images/index/icon-voice-title.png);
    vertical-align: middle;
    margin: 0 5px;
}

.index-voice ul li>div {
    background: url(../images/index/voice-content-bg.jpg) left top repeat;
    line-height: 23px;
    font-size: 14px;
    padding: 4px 5px;
}

@media screen and (max-width: 1000px) {
    .index-voice ul li>div {
        font-size: 110%;
    }
}

.index-voice ul li>div a {
    display: block;
    text-align: right;
    color: inherit;
    line-height: inherit;
    font-family: "Lucida Grande", "segoe UI", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Meiryo, Verdana, Arial, sans-serif;
    ;
}

.vertical-align li p label{
    display: inline-block;
}

.vertical-align li p > span{
    display: inline-block;
}

.vertical-align li p br{
    display: none;
}

#wpcf7-f5-p8-o1 > .wpcf7-response-output{
    display: none;
}

.contact_link{
    position: fixed;
    bottom: 20px;
    right: 0;
    background-color: #700028;
    writing-mode: tb-rl;
}

.top_link{
    position: fixed;
    bottom: 20px;
    right: 0;
    background-color: #700028;
    z-index: 10;
}

.top_link a{
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 20px;
}

.top_link a:hover{
    opacity: .8;
    transition: .2s;
}