@charset "UTF-8";


/* emergency
==============================*/
#emergency p.lead{
    font-size: 3.6rem;
    line-height: 1.4;
    margin: -20px 0 30px;
}

#emergency h2.icn.hospital{
    background: url("../image/hurry/icn_hospital.png") no-repeat center top;
}

#emergency h2.icn.home{
    background: url("../image/hurry/icn_home.png") no-repeat center top;
}

#emergency h2.icn.police{
    background: url("../image/hurry/icn_police.png") no-repeat center top;
}

#emergency .contactBl{
    padding: 50px 0;
    background: url(../image/hurry/bg_flower.jpg) no-repeat right bottom #fff;
    width: 100%;
    margin-bottom: 100px;
}

#emergency .contactBl .txtArea{
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 60px;
}

#emergency .contactBl .txtArea > *{
    max-width: 695px;
}

#emergency .contactBl .borderArea{
    border: 1px solid #b69b51;
    background: #fff;
    padding: 0;
}

#emergency .contactBl ul{
    padding: 15px 20px;
    font-size: 2.0rem;
    color: #000;
    line-height: 2;
}

#emergency .contactBl ul .fontS{
    font-size: 1.6rem;
}

#emergency .contactBl .borderArea p{
    width: 100%;
    font-size: 2.8rem;
    color: #fff;
    padding: 7px 0;
    text-align: center;
    background: #dfc788;
    background: -moz-linear-gradient( #a98d40 0%, #dfc788 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#a98d40), to(#dfc788));
    background: -webkit-linear-gradient( #a98d40 0%, #dfc788 100%);
    background: -o-linear-gradient( #a98d40 0%, #dfc788 100%);
    background: linear-gradient( #a98d40 0%, #dfc788 100%);
}

#emergency .contactBl a.telBtn{
    display: block;
    height: 100%;
    width: 100%; 
    margin-bottom: 30px;
    cursor: default;
    opacity: 1;
    pointer-events: none;
}

#emergency .contactBl a.telBtn .txt{
    color: #b09548;
    background:url(../image/contact_icn_tel.png) no-repeat 27px center;
    background-size: 80px auto;
    font-size: 4.1rem;
    text-align: center;
    line-height: 1.1;
    font-weight: 900;
    display: inline-block;
    padding-left: 150px;
    max-width: 1500px;
    margin: 0 auto;
}

#emergency .contactBl a.telBtn .number{
    font-size: 8.7rem;
}

#emergency .contactBl a.telBtn .flex{
    display: flex;
    justify-content: space-between;
}

#emergency .bl05 .contactBl{
    margin-bottom: 0;
}

#emergency .bl05 .contactBl .note{
    font-size: 1.8rem;
    line-height: 1.4;
    font-weight: 900;
	color: #000;
    margin: -30px 0 30px 0;
    text-indent: -20px;
    display: inline-block;
    text-align: left;
	padding: 0 10px 0 170px;
}

#emergency .tableBl{
    display: table;
    width: 100%;
    margin-bottom: 20px;
}

#emergency .tableBl > div{
    font-size: 3.0rem;
    display: table-cell;
    vertical-align: middle;
}

#emergency .tableBl.contact div{
    font-size: 2.4rem;
}

#emergency .tableBl.contact .arrow{
    font-size: 4.4rem;
    color: #d4bc7a;
    font-weight: bold;
    padding-left: 30px;
    width: 650px;
    text-align: left;
    background: url("../common/image/arrow_right_gold.png") no-repeat left center;
}

#emergency .tableBl .btn a{
    padding: 20px 80px;
    font-size: 3.0rem;
    border-radius: 50px;
    border: 1px solid #d2ba77;
    display: block;
/*    cursor: default;
    opacity: 1;
    pointer-events: none;*/
}

#emergency .tableBl .btn.sp{
    display: none;
}

#emergency .tableBl .btn a span{
    min-height: 48px;
    color: #d2ba77;
    padding-left: 55px;
    display: inline-block;
    background: url(../image/hurry/icn_tel.png) no-repeat left center; 
}

#emergency .borderArea{
    border: 1px solid #d2ba77;
    padding: 20px;
}

#emergency .borderArea p.tit{
    font-size: 3.0rem;
    color: #d2ba77;
    text-align: center;
}

#emergency .borderArea ul li{
    text-indent: -1em;
    padding-left: 1em;
}

#emergency .circleArea{
    background: url(../image/hurry/circle_img.png) no-repeat left center;
    padding-left: 200px;
}

#emergency .circleArea p{
    font-size: 3.0rem;
    color: #000;
    font-weight: bold;
    margin-right: -50%;
}

#emergency .flowArea p.tit{
    color: #d2ba77;
    font-size: 3.0rem;
    text-align: center;
    margin-bottom: 10px;
}

#emergency .flowArea dl{
    min-height: 146px;
    display: table;
    width: 100%;
    border: 1px solid #d2ba77;
    position: relative;
    margin-bottom: 70px;
    position: relative;
}

#emergency .flowArea dl:last-child{
    margin-bottom: 20px;
}

#emergency .flowArea dl:last-child:after{
    display: none;
    margin-bottom: 0;
}

#emergency .flowArea dl:after{
    content: "";
    position: absolute;
    width: 100%;
    display: block;
    background: url(../common/image/arrow_bottom_gold.png) no-repeat center center;
    height: 35px;
    left: 0;
    top: calc(100% + 15px);
}

#emergency .flowArea dl dt{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 3.0rem;
    border-right: 1px solid #d2ba77;
    font-weight: bold;
    width: 200px;
    line-height: 1.2;
    background: #866611;
    background: -moz-linear-gradient(left, #cfc770 0%, #866611 100%);
    background: -webkit-gradient(linear, left center, right center, from(#cfc770), to(#866611));
    background: -webkit-linear-gradient(left, #cfc770 0%, #866611 100%);
    background: -o-linear-gradient(left, #cfc770 0%, #866611 100%);
    background: linear-gradient(to right, #cfc770 0%, #866611 100%);
}

#emergency .flowArea dl dt:before{
    display: table-cell;
    content: "01";
    font-style: italic;
    font-size: 5.0rem;
    display: block;
}

#emergency .flowArea dl.flow02 dt:before{
    content: "02";
}

#emergency .flowArea dl.flow03 dt:before{
    content: "03";
}

#emergency .flowArea dl.flow04 dt:before{
    content: "04";
}
#emergency .flowArea dl.flow05 dt:before{
    content: "05";
}

#emergency .flowArea dl dd{
    vertical-align: middle;
    display: table-cell;
    padding: 0 20px;
}

@media only screen and (max-width: 1380px) {
    #emergency .contactBl {
        background: url(../image/hurry/bg_flower.jpg) no-repeat 150% bottom #fff;
    }
}

@media only screen and (max-width: 1000px) {
    #emergency .contactBl {
        background: url(../image/hurry/bg_flower.jpg) no-repeat 180% bottom #fff;
    }
}

@media only screen and (max-width: 768px) {

    #emergency p.lead{
        font-size: 3.5vw;
        margin: -5vw 0 0;
    }

    #emergency h2.icn.hospital{
        background: url("../image/hurry/icn_hospital.png") no-repeat center top;
        background-size: 40px auto;
    }

    #emergency h2.icn.home{
        background: url("../image/hurry/icn_home.png") no-repeat center top;
        background-size: 40px auto;
    }

    #emergency h2.icn.police{
        background: url("../image/hurry/icn_police.png") no-repeat center top;
        background-size: 40px auto;
    }

    #emergency .contactBl{
        background: url(../image/hurry/bg_flower.jpg) no-repeat right bottom #fff;
        background-size: 50% auto;
        padding: 10vw 0;
        width: 100%;
        margin-bottom: 15vw;
        overflow: hidden;
    }

    #emergency .contactBl .txtArea{
        padding: 0 6%;
        width: auto;
    }

    #emergency .contactBl ul{
        padding: 10px;
        font-size: 3.5vw;
    }

    #emergency .contactBl ul .fontS{
        font-size: 3vw;
    }

    #emergency .contactBl .borderArea p{
        font-size: 3.5vw;
        padding: 3px 0;
    }

    #emergency .contactBl a.telBtn{
        margin-bottom: 3vw;
        text-align: center;
        pointer-events: inherit;
    }

    #emergency .contactBl a.telBtn .txt{
        background: url(../image/contact_icn_tel.png) no-repeat left center;
        background-size: 13% auto;
        font-size: 5vw;
        padding-left: 15%;
    }

    #emergency .contactBl a.telBtn .sp{
        color: #000;
        font-size: 3vw;
        font-weight: bold;
        letter-spacing: 0.1em;
    }
    
    #emergency .contactBl a.telBtn .number{
        font-size: 11vw;
        display: block;
    }
    
    #emergency .contactBl .circleArea{
        background: url(../image/hurry/circle_img.png) no-repeat left center;
        background-size: 80px auto;
        padding-left: 90px;
    }

    #emergency .contactBl .circleArea p{
        font-size: 4vw;
        margin-right: 0;
    }    
	
    #emergency .bl05 .contactBl .note{
        font-size: 2.2vw;
        margin: -2vw 0 3vw 0;
        padding: 0;
		display: block;
    }

    #emergency .tableBl{
        margin-bottom: 5vw;
        display: block;
        text-align: center;
    }

    #emergency .tableBl > div{
        font-size: 4vw;
        display: block;
        line-height: 1.6;
    }

    #emergency .tableBl.contact{
        text-align: left;
    }

    #emergency .tableBl.contact + .tableBl{
        margin-top: 3vw;
    }
    
    #emergency .tableBl.contact div{
        font-size: 3.5vw;
    }

    #emergency .tableBl.contact .arrow{
        font-size: 4.5vw;
        padding-left: 20px;
        background: url("../common/image/arrow_right_gold.png") no-repeat left center;
        background-size: 10px auto;
        width: inherit;
    }

    #emergency .tableBl .btn{
        margin: 3vw auto 0 auto;
        width: 60%;
    }
    
    #emergency .tableBl .btn a{
        padding: 3vw 10%;
        font-size: 4.5vw;
        pointer-events: inherit;
    }

    #emergency .tableBl .btn.sp{
        display: block;
    }
    
    #emergency .tableBl .btn.pc{
        display: none;
    }
    
    #emergency .tableBl .btn a span{
        min-height: 25px;
        padding-left: 25px;
        background: url(../image/hurry/icn_tel.png) no-repeat left center; 
        background-size: 18px auto;
    }

    #emergency .borderArea{
        padding: 10px;
    }

    #emergency .borderArea p.tit{
        font-size: 4.5vw;
    }

    #emergency .flowArea p.tit{
        font-size: 4.5vw;
        margin-bottom: 2vw;
    }

    #emergency .flowArea dl{
        min-height: inherit;
        display: block;
        width: 100%;
        margin-bottom: 10vw;
    }

    #emergency .flowArea dl:last-child{
        margin-bottom: 20px;
    }

    #emergency .flowArea dl:after{
        content: "";
        background: url(../common/image/arrow_bottom_gold.png) no-repeat center center;
        background-size: 31px auto;
        height: 18px;
        top: calc(100% + 3.3vw);
    }

    #emergency .flowArea dl dt{
        display: block;
        font-size: 4.5vw;
        width: 100%;
        border: none;
        padding: 5px;
    }

    #emergency .flowArea dl dt:before{
        display: block;
        font-size: 4.5vw;
        display: inline-block;
    }

    #emergency .flowArea dl dd{
        padding: 10px;
    }
    
    #emergency .bl01 .w1000,
    #emergency .bl05 .w1000{
        padding-bottom: 3vw !important;
    }

}

/* first_time
==============================*/
#first_time .unchorArea{
    border: 1px solid #d2ba77;
    padding: 20px 30px;
    margin-top: 30px;
}

#first_time .unchorArea a{
    color: #fdebbd;
    font-size: 2.4rem;
}

#first_time .unchorArea a:before{
    content: "";
    background: url(../common/image/arrow_bottom_lightgold.png) no-repeat left center;
    background-size: 12px auto;
    padding-left: 22px;
}

#first_time .unchorArea ul{
    border-bottom: 1px solid #d2ba77;
    width: 100%;
    justify-content: space-between;
    display: flex;
    margin-bottom: 20px;
    padding-bottom: 10px;
    flex-wrap: wrap;
}

#first_time .unchorArea ul li{
    margin: 5px 40px 5px 0;
}

#first_time .unchorArea ul li:nth-child(1),
#first_time .unchorArea ul li:nth-child(4){
    min-width: 35%;
}

#first_time .unchorArea ul li:nth-child(2),
#first_time .unchorArea ul li:nth-child(5){
    min-width: 28%;
}

#first_time .unchorArea ul li:nth-child(3),
#first_time .unchorArea ul li:nth-child(6){
    margin-right: 0;
}

#first_time h2{
    text-align: center;
    background: url("../image/first_time/icn_01.png") no-repeat center top;
    padding-top: 90px;
    margin-bottom: 50px;
}

#first_time h2.no02{
    background: url("../image/first_time/icn_02.png") no-repeat center top;
}

#first_time h2.no03{
    background: url("../image/first_time/icn_03.png") no-repeat center top;
}

#first_time h2.no04{
    background: url("../image/first_time/icn_04.png") no-repeat center top;
}

#first_time h2.no05{
    background: url("../image/first_time/icn_05.png") no-repeat center top;
}

#first_time h2.no06{
    background: url("../image/first_time/icn_06.png") no-repeat center top;
}


#first_time .column02{
    overflow: hidden;
}

#first_time .column02 > div{
    width: 47%;
}

#first_time .column02 > div.floatL{
    float: left;
}

#first_time .column02 > div.floatR{
    float: right;
}

#first_time .column02 > div.txt p + p{
    margin-top: 1em;
}

#first_time .obi{
    margin-bottom: 30px;
    font-size: 3.0rem;
    text-align: center;
    background: #dfc788;
    background: -moz-linear-gradient( #866611 0%, #cfc770 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#866611), to(#cfc770));
    background: -webkit-linear-gradient( #866611 0%, #cfc770 100%);
    background: -o-linear-gradient( #866611 0%, #cfc770 100%);
    background: linear-gradient( #866611 0%, #cfc770 100%);
}

#first_time .borderArea{
    border: 1px solid #d2ba77;
    padding: 20px 25px;
    clear: both;
}

#first_time .borderArea span{
    min-width: 200px;
    display: inline-block;
}

#first_time .column02 + .borderArea{
    margin-top: 50px;
}

#first_time .borderArea dt,
#first_time .txt dt{
    font-weight: bold;
    font-size: 2.4rem;
}

#first_time .borderArea dd + dt,
#first_time .txt dd + dt{
    margin-top: 1em;
}

#first_time .exampleList{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

#first_time .exampleList article{
    width: 47%;
    position: relative;
}

#first_time .exampleList article:last-child{
    margin-bottom: 55px;
}

#first_time .exampleList article .plan{
    margin-bottom: 10px;
    display: flex;
    justify-content: space-between;
}

#first_time .exampleList article .plan .planname{
    font-size: 5rem;
    vertical-align: bottom;
    margin-top: auto;
    line-height: 1.2;
}

#first_time .exampleList article .plan .planname span.fontS{
    font-size: 2.5rem;
}

#first_time .exampleList article .plan .planplice{
    line-height: 1;
    font-size: 4rem;
    vertical-align: bottom;
    margin-top: auto;
}

#first_time .exampleList article .plan .planplice:after{
    content: "万円";
    font-size: 2.5rem;
}

#first_time .exampleList article .pic{
    margin: 20px 0 30px;
}

#first_time .exampleList article .flow {
    margin-bottom: 50px;
}

#first_time .exampleList article .flow .tit,
#first_time .exampleList article .list .tit{
    font-size: 2.6rem;
    color: #d2ba77;
    border: 1px solid #bba76e;
    text-align: center;
    margin-bottom: 20px;
    font-weight: bold;
}

#first_time .exampleList article .flow ul,
#first_time .exampleList article .list ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#first_time .exampleList article .flow ul li,
#first_time .exampleList article .list ul li{
    display: flex;
    flex-direction: column;
    border: 1px solid #fff;
    text-align: center;
    font-size: 2.0rem;
    line-height: 1;
    font-weight: bold;
    letter-spacing: 0.3em;
}

#first_time .exampleList article .flow ul li{
    writing-mode: vertical-rl;
    padding: 20px 3%;
    position: relative;
}

#first_time .exampleList article ul li.exclusion{
    background: #707070;
    opacity: 0.5;
}

#first_time .exampleList article .flow ul li:after{
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    background: url("../common/image/arrow_right_white.png") no-repeat center center;
    background-size: 12px auto;
    top: 0;
    right: -3.4vw;
}

#first_time .exampleList article .flow ul li:last-child:after{
    display: none;
}

#first_time .exampleList article .list ul li{
    width: 22%;
    padding: 10px 0;
}

#first_time .exampleList article .list ul li:nth-child(1),
#first_time .exampleList article .list ul li:nth-child(2),
#first_time .exampleList article .list ul li:nth-child(3),
#first_time .exampleList article .list ul li:nth-child(4){
    margin: 0 0 20px 0;
}

#first_time .bgWhite{
    text-align: center;
    padding: 50px 0;
    margin: 25px 0 45px 0;
}

#first_time .bl07{
    margin: 0 0 100px 0;
    background: url("../image/first_time/bg_07.jpg") no-repeat center center;
    background-size: 100%;
    height:677px;
    padding: 100px 0 0 0;
}

#first_time .bl07 .txtArea p{
    width: 47%;
}

#first_time .bl07 .txtArea p + p{
    margin-top: 1em;
}

#first_time .bl08 .flow{
    margin-bottom: 20px;
}

#first_time .bl08 .flow ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 715px;
    margin: 0 auto 30px;
}

#first_time .bl08 .flow ul li{
    display: flex;
    flex-direction: column;
    text-align: center;
    line-height: 1;
    font-weight: bold;
    letter-spacing: 0.3em;
    writing-mode: vertical-rl;
    height: 125px;
    position: relative;
    background: #535571;
    border-radius: 30px;
    padding: 0 15px;

}

#first_time .bl08 .flow ul li.kara{
    border: none;
    background: none;
}

#first_time .bl08 .flow ul li.ls1{
    letter-spacing: 0.1em;
}

#first_time .bl08 .flow ul li:after{
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    background: url("../common/image/arrow_right_white.png") no-repeat center center;
    top: 0;
    right: -110%;
}

#first_time .bl08 .flow ul li.noArrow:after,
#first_time .bl08 .flow ul li:last-child:after{
    display: none;
}

#first_time .bl08 dt{
    margin-bottom: 5px;
    font-weight: normal;
}

#first_time .bl08 dt:before{
    content: "■ ";
    color: #d2ba77;
}

#first_time .bl08 dd + dt{
    margin-top: 50px;
}

@media only screen and (max-width: 768px) {
    #first_time .unchorArea{
        padding: 15px;
        margin-top: 5vw;
    }

    #first_time .unchorArea a{
        font-size: 3.5vw;
    }

    #first_time .unchorArea ul{
        display: block;
        margin-bottom: 10px;
        padding-bottom: 10px;
    }

    #first_time .unchorArea ul li{
        margin: 0;
        width: 100% !important;
        display: block;
    }

    #first_time h2{
        background: url("../image/first_time/icn_01.png") no-repeat center top;
        background-size: 40px auto;
        padding-top: 50px;
        margin: 0 0 5px 0;
    }

    #first_time h2.no02{
        background: url("../image/first_time/icn_02.png") no-repeat center top;
        background-size: 40px auto;
    }

    #first_time h2.no03{
        background: url("../image/first_time/icn_03.png") no-repeat center top;
        background-size: 40px auto;
    }

    #first_time h2.no04{
        background: url("../image/first_time/icn_04.png") no-repeat center top;
        background-size: 40px auto;
    }

    #first_time h2.no05{
        background: url("../image/first_time/icn_05.png") no-repeat center top;
        background-size: 40px auto;
    }

    #first_time h2.no06{
        background: url("../image/first_time/icn_06.png") no-repeat center top;
        background-size: 40px auto;
    }

    #first_time .column02{
        overflow: hidden;
    }

    #first_time .column02 > div{
        width: 100%;
        float: inherit !important;
    }

    #first_time .column02 > div + div {
      margin-top: 5vw;
    }

    #first_time .obi{
        margin-bottom: 3vw;
        font-size: 5vw;
        line-height: 1.4;
        padding: 5px 0;
    }

    #first_time .borderArea{
        padding: 15px;
    }

    #first_time .borderArea span{
        display: block;
    }
    
    #first_time .column02 + .borderArea{
        margin-top: 5vw;
    }

    #first_time .borderArea dt,
    #first_time .txt dt{
        font-size: 4vw;
    }

    #first_time .exampleList{
        display: block;
        width: 100%;
        padding-bottom: 0;
    }

    #first_time .exampleList article{
        width: 100%;
        margin-top: 12vw;
    }

    #first_time .exampleList article:last-child{
        margin-bottom: 0;
    }

    #first_time .exampleList article .plan{
        margin-bottom: 10px;
        font-size: 3.5vw;
    }

    #first_time .exampleList article .plan .planname{
        font-size: 7vw;
    }

    #first_time .exampleList article .plan .planname span.fontS,
    #first_time .exampleList article .plan .planplice:after{
        font-size: 3.5vw;
    }

    #first_time .exampleList article .plan .planplice{
        font-size: 5vw;
    }

    #first_time .exampleList article .pic{
        margin-bottom: 3vw;
        margin-top: 10px;
    }

    #first_time .exampleList article .flow {
        margin-bottom: 8vw;
    }

    #first_time .exampleList article .flow .tit,
    #first_time .exampleList article .list .tit{
        font-size: 5vw;
        margin-bottom: 3vw;
    }

    #first_time .exampleList article .flow ul li,
    #first_time .exampleList article .list ul li{
        font-size: 3.5vw;
        letter-spacing: 0.3em;
    }

    #first_time .exampleList article .flow ul li{
        padding: 3vw 4%;
    }
    
    #first_time .exampleList article .flow ul li:after{
        content: "";
        background: url("../common/image/arrow_right_white.png") no-repeat center center;
        background-size:7px auto;
        right: -9.5vw;
    }
    
    #first_time .exampleList article .list ul li{
        padding: 2.5vw 0;
    }

    #first_time .bgWhite{
        padding: 5vw 5%;
        margin: 5vw 0 3vw 0;
    }

    #first_time .bl06 dl.txt{
        margin-top:1em;
    }
    
    #first_time .bl07{
        margin: 0 0 15vw 0;
        background: url("../image/first_time/bg_07.jpg") no-repeat 68% center;
        background-size: cover;
        padding: 15vw 0;
        height: inherit;
    }

    #first_time .bl07 .txtArea{
        margin: 0;
        padding-bottom: 0 !important;
    }

    #first_time .bl07 .txtArea p{
        width: 75%;
    }

    #first_time .bl08 .flow{
        margin-bottom: 20px;
    }

    #first_time .bl08 .flow ul{
        padding: 0;
        margin-bottom: 3vw;
    }

    #first_time .bl08 .flow ul li{
        font-size: 3vw;
        letter-spacing: 0.2em;
        height: 19vw;
        width: inherit;
        padding: 0 2%;
    }

    #first_time .bl08 .flow ul li:after{
        background: url("../common/image/arrow_right_white.png") no-repeat center center;
        background-size: 7px auto;
        right: -6.5vw;
    }

    #first_time .bl08 dt{
        margin-bottom: 0;
    }

    #first_time .bl08 dd + dt{
        margin-top: 3vw;
    }
    
    
}    
/* price
==============================*/
#price h2{
    text-align: center;
    background: url("../image/price/icn_h2.png") no-repeat center top;
    padding-top: 90px;
}

#price .bl02 ul.total{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 40px;
    margin: 40px 0 50px;
}

#price .bl02 ul.total li{
    width: 29%;
    font-size: 2.4rem;
    border: 2px solid #bece64;
    color: #bece64;
    text-align: center;
    padding: 7px;
    font-weight: bold;
    position: relative;
}

#price .bl02 ul.total li:after{
    content: "+";
    color:#d2ba77;
    font-size: 5.5rem;
    font-weight: normal;
    position: absolute;
    top: -40%;
    right: -55px;
}

#price .bl02 ul.total li:nth-child(3):after{
    display: none;
}

#price .bl02 ul.total li:nth-child(2){
    color:#66b675;
    border-color:#66b675 ;
}

#price .bl02 ul.total li:nth-child(3){
    color: #dc7b61;
    border-color: #dc7b61;
}

#price .bl02 .column02{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

#price .bl02 .column02 + .column02{
    margin-top: 40px;
}

#price .bl02 .column02 .floatL{
    width: 29%;
}

#price .bl02 .column02 .floatL .tit{
    width: 100%;
    font-size: 2.4rem;
    border: 2px solid #bece64;
    color: #bece64;
    text-align: center;
    padding: 7px;
    font-weight: bold;
    position: relative;
    margin-bottom: 10px;
}

#price .bl02 .column02.option .floatL .tit{
    color:#66b675;
    border-color:#66b675 ;
}

#price .bl02 .column02.direct .floatL .tit{
    color: #dc7b61;
    border-color: #dc7b61;
}

#price .bl02 .column02 .floatL .tit{
    width: 100%;
    font-size: 2.4rem;
    border: 2px solid #bece64;
    color: #bece64;
    text-align: center;
    padding: 7px;
    font-weight: bold;
    position: relative;
    margin-bottom: 10px;
}

#price .bl02 .column02 .floatR{
    width: 67.5%;
}

#price .bl02 .column02 .floatR p{
    font-size: 2.4rem;
    margin-bottom: 10px;
}

#price .bl02 .column02 .floatR ul{
    border: 1px solid #535571;
    padding: 15px 25px;
}

#price .bl02 .column02 .floatR ul li{
    width: 33%;
    display: inline-block;
    margin: 3px 0;
}

#price .bl03 p +.fontS{
    font-size: 1.6rem;
    margin: 25px auto 50px auto;
    display: table;
}

#price .exampleList{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

#price .exampleList article{
    width: 47%;
    margin-bottom: 100px;
    position: relative;
}

#price .exampleList article:last-child{
    margin-bottom: 55px;
}

#price .exampleList article.contactBl .borderBl{
    margin-top: 72px;
    border: 1px solid #d2ba77;
    padding: 80px 10%;
}

#price .exampleList article.contactBl .borderBl p{
    font-size: 1.8rem;
    margin-bottom: 20px;
    text-indent: -1em;
    padding-left: 1em;
}

#price .exampleList article.contactBl .borderBl .telArea {
    color: #d9ba63;
    font-weight: bold;
    text-align: center;
}

#price .exampleList article.contactBl .borderBl a.tel{
    cursor: default;
    opacity: 1;
    pointer-events: none;
    background: url(../funeral_hall/image/tel_icn_tel.png) no-repeat left center;
    background-size: 35px;
    padding-left: 45px;
    display: inline-block;
    text-align:justify ;
    text-justify: inter-ideograph;
    vertical-align: middle;
    line-height: 1.1;
    font-size: 2rem;
    color: #d9ba63;
}

#price .exampleList article.contactBl .borderBl .flex{
    display: flex;
    justify-content: space-between;
}

#price .exampleList article.contactBl .borderBl .number{
    font-size: 5.2rem;
    white-space: nowrap;
}

#price .exampleList article .plan{
    margin-bottom: 10px;
    display: flex;
    justify-content: space-between;
}

#price .exampleList article .plan .planname{
    font-size: 5rem;
    vertical-align: bottom;
    margin-top: auto;
    line-height: 1.2;
}

#price .exampleList article .plan .planname span.fontS{
    font-size: 2.5rem;
}

#price .exampleList article .plan .planplice{
    line-height: 1;
    font-size: 4rem;
    vertical-align: bottom;
    margin-top: auto;
}

#price .exampleList article .plan .planplice:after{
    content: "万円";
    font-size: 2.5rem;
}

#price .exampleList article .pic{
    margin-bottom: 30px;
}

#price .exampleList article .flow {
    margin-bottom: 50px;
}

#price .exampleList article .flow .tit,
#price .exampleList article .list .tit{
    font-size: 2.6rem;
    color: #d2ba77;
    border: 1px solid #bba76e;
    text-align: center;
    margin-bottom: 20px;
    font-weight: bold;
}

#price .exampleList article .flow ul,
#price .exampleList article .list ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#price .exampleList article .flow ul li,
#price .exampleList article .list ul li{
    display: flex;
    flex-direction: column;
    border: 1px solid #fff;
    text-align: center;
    font-size: 2.0rem;
    line-height: 1;
    font-weight: bold;
    letter-spacing: 0.3em;
}

#price .exampleList article .flow ul li{
    writing-mode: vertical-rl;
    padding: 20px 3%;
    position: relative;
}

#price .exampleList article ul li.exclusion{
    background: #707070;
    opacity: 0.5;
}

#price .exampleList article .flow ul li:after{
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    background: url("../common/image/arrow_right_white.png") no-repeat center center;
    background-size: 12px auto;
    top: 0;
    right: -3.4vw;
}

#price .exampleList article .flow ul li:last-child:after{
    display: none;
}

#price .exampleList article .list ul li{
    width: 22%;
    margin: 0 0 20px 0;
    padding: 10px 0;
}

#price .exampleList article .txt01{
    font-size: 2.0rem;
    font-weight: bold;
}

#price .exampleList article .txt02{
    font-size: 1.8rem;
}

#price .bl04 .planBl + .planBl{
    margin-top: 80px;
}

#price .bl04 .planBl .obi{
    margin-bottom: 30px;
    font-size: 3.0rem;
    text-align: center;
    background: #dfc788;
    background: -moz-linear-gradient( #866611 0%, #cfc770 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#866611), to(#cfc770));
    background: -webkit-linear-gradient( #866611 0%, #cfc770 100%);
    background: -o-linear-gradient( #866611 0%, #cfc770 100%);
    background: linear-gradient( #866611 0%, #cfc770 100%);
}

#price .bl04 .planBl .txt{
    margin-bottom: 30px;
}

#price .bl04 .planBl .column02{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 20px;
}

#price .bl04 .planBl .column02 > div{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    width: 47%;
}

#price .bl04 .planBl .column02 .data{
    font-size: 3.0rem;
    display: block;
}

#price .bl04 .planBl .column02 .data span{
    font-size: 2.0rem;
}

#price .bl04 .planBl .column02 + p{
    margin-bottom: 20px;
}

#price .bl04 .planBl dl{
    border: 1px solid #cbaf62;
}

#price .bl04 .planBl dl dt{
    border-bottom: 1px solid #cbaf62;
    text-align: center;
    font-weight: bold;
    font-size: 2.4rem;
    color: #d2ba77;
}

#price .bl04 .planBl dl dd{
    padding: 15px 30px;
    font-size: 1.6rem;
    margin-bottom: 0 !important;
}

#price .bl04 .planBl dl dd > div{
    width: initial !important;
    margin-bottom: 0;
}

@media only screen and (max-width: 1300px) {
    #price .exampleList article.contactBl .borderBl p{
        font-size: 1.6rem;
    }
    
    #price .exampleList article.contactBl .borderBl p br{
        display: none;
    }
    
    #price .exampleList article.contactBl .borderBl{
        padding: 50px 5%;
        width: 90%;
        box-sizing: content-box;
    }
    
    #price .exampleList article.contactBl .borderBl a.tel{
        font-size: 1.5rem;
    }

    #price .exampleList article.contactBl .borderBl .number{
        font-size: 4rem;
    }
}

@media only screen and (max-width: 768px) {
    #price h2{
        background: url("../image/price/icn_h2.png") no-repeat center top;
        background-size: 40px auto;
        padding-top: 50px;
    }

    #price .bl02 ul.total{
        width: 100%;
        margin: 5vw 0 10vw;
    }

    #price .bl02 ul.total li{
        width: 30%;
        font-size: 3vw;
        border-width: 1px;
        padding: 4px;
    }

    #price .bl02 ul.total li:after{
        font-size: 4vw;
        top: 0;
        right: -16%;
    }

    #price .bl02 .column02{
        display: block;
    }

    #price .bl02 .column02 + .column02{
        margin-top: 12vw;
    }

    #price .bl02 .column02 > div{
        width: 100% !important;
    }

    #price .bl02 .column02 .floatL .tit{
        width: 80%;
        margin: 0 auto;
        font-size: 3.5vw;
        padding: 5px;
        margin-bottom: 3vw;
    }

    #price .bl02 .column02 .floatL .img{
        float: left;
        margin: 0 10px 10px 0;
        width: 145px;
    }
    
    #price .bl02 .column02 .floatR p{
        font-size: 3.5vw;
        margin-bottom: 3vw;
    }

    #price .bl02 .column02 .floatR ul{
        padding: 5px 10px;
        font-size: 3vw;
        clear: both;
    }

    #price .bl02 .column02 .floatR ul li{
        width: inherit;
        margin-right: 10px;
    }
    
    #price .bl03 p +.fontS{
        font-size: 3vw;
        margin: 5vw auto 10vw auto;
    }

    #price .exampleList{
        display: block;
        width: 100%;
        padding-bottom: 0;
    }

    #price .exampleList article{
        width: 100%;
        margin-bottom: 12vw;
    }

    #price .exampleList article:last-child{
        margin-bottom: 0;
    }

    #price .exampleList article .plan{
        margin-bottom: 10px;
        font-size: 3.5vw;
    }

    #price .exampleList article .plan .planname{
        font-size: 7vw;
    }

    #price .exampleList article .plan .planname span.fontS,
    #price .exampleList article .plan .planplice:after{
        font-size: 3.5vw;
    }

    #price .exampleList article .plan .planplice{
        font-size: 5vw;
    }

    #price .exampleList article .pic{
        margin-bottom: 3vw;
    }

    #price .exampleList article .flow {
        margin-bottom: 8vw;
    }

    #price .exampleList article .list {
        margin-bottom: 2vw;
    }

    #price .exampleList article .flow .tit,
    #price .exampleList article .list .tit{
        font-size: 5vw;
        margin-bottom: 3vw;
    }

    #price .exampleList article .flow ul li,
    #price .exampleList article .list ul li{
        font-size: 3.5vw;
        letter-spacing: 0.3em;
    }

    #price .exampleList article .flow ul li{
        padding: 3vw 4%;
    }
    
    #price .exampleList article .flow ul li:after{
        content: "";
        background: url("../common/image/arrow_right_white.png") no-repeat center center;
        background-size:7px auto;
        right: -9.5vw;
    }
    
    #price .exampleList article .list ul li{
        margin: 0 0 3vw 0;
        padding: 2.5vw 0;
    }

    #price .exampleList article .txt01{
        font-size: 4.5vw;
    }

    #price .exampleList article .txt02{
        font-size: 3.5vw;
    }

    #price .exampleList article.contactBl .borderBl{
        margin-top: 0;
        padding: 5vw 5%;
    }

    #price .exampleList article.contactBl .borderBl p{
        font-size: 3.5vw;
        margin-bottom: 3vw;
    }

    #price .exampleList article.contactBl .borderBl a.tel{
        background: url(../funeral_hall/image/tel_icn_tel.png) no-repeat left center;
        background-size: auto;
        background-size: 10% auto;
        min-height: 30px;
        font-size: 3.5vw;
        padding: 1vw 0 1vw 12%;
        pointer-events: inherit;
    }

    #price .exampleList article.contactBl .borderBl .flex{
        text-align: center;
    }

    #price .exampleList article.contactBl .borderBl .number{
        font-size: 8vw;
    }

    #price .bl04 .planBl + .planBl{
        margin-top: 12vw;
    }

    #price .bl04 .planBl .obi{
        margin-bottom: 3vw;
        font-size: 5vw;
        line-height: 1.4;
        padding: 5px 0;
    }

    #price .bl04 .planBl .txt{
        margin-bottom: 5vw;
    }

    #price .bl04 .planBl .column02{
        display: block;
        margin-bottom: 5vw;
    }

    #price .bl04 .planBl .column02 > div{
        width: 100%;
        display: block;
    }

    #price .bl04 .planBl .column02 .data{
        font-size: 4.5vw;
        margin-top: 3vw;
    }

    #price .bl04 .planBl .column02 .data span{
        font-size: 3vw;
    }

    #price .bl04 .planBl .column02 + p{
        margin-bottom: 5vw;
    }

    #price .bl04 .planBl dl dt{
        font-size: 4.5vw;
    }

    #price .bl04 .planBl dl dd{
        padding: 15px;
        font-size: 3vw;
    }

    #price .bl04 .planBl dl dd > div{
        display: block;
        width: 100%;
    }
    
}    
    
/* funeral
==============================*/
#funeral.index .bl01{
    text-align: center;
}

#funeral.index .bl01 h1{
    margin-bottom: 100px;
}

#funeral.index .bl01 .logo{
    margin-bottom: 50px;
}

#funeral.index .bl01 .txt01{
    font-size: 3.0rem;
    margin-bottom: 20px;
}

#funeral.index .bl01 .txt02{
    font-size: 2.2rem;
}

#funeral .omotenashiBl{
    position: relative;
    color: #000;
/*    margin: 0 calc(50% - 50vw) 0;*/
    padding: 100px 0;
    background: url(../funeral/image/omotenashi_bg.png) no-repeat left center;
    background-size: cover;
}

#funeral .omotenashiBl .w1000{
    margin-bottom: 0;
}

#funeral .omotenashiBl > *{
    filter: drop-shadow(0 1px 8px rgb(255, 255, 255));
}

#funeral .omotenashiBl .txt01{
    font-size: 2.4rem;
    line-height: 2.5;
    font-weight: 600;
}

#funeral .omotenashiBl ul{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 50px 0 60px ;
    }

#funeral .omotenashiBl ul li{
    width: 23%;
    border: 1px solid #e0d7bc;
    font-size: 2.4rem;
    font-weight: 900;
    background: #fff;
    text-align: center;
    line-height: 1.6;
    padding: 20px 0;
    
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;    
}

#funeral .omotenashiBl .txt02{
    font-size: 3rem;
    font-weight: 600;
}

#funeral .omotenashiBl .txt03{
    font-weight: 600;
    font-size: 2.2rem;
}

#funeral .featureBl{
    padding-top: 100px;
    line-height: 1.6;
}

#funeral .featurePoint{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;    
    width: 100%;
}

#funeral .featurePoint article{
    width: 47.827%;
    margin-bottom: 85px;
    position: relative;
}

#funeral .featurePoint article:nth-child(5),
#funeral .featurePoint article:nth-child(6){
    margin-bottom: 0;
}

#funeral .featurePoint article:before{
    content: "";
    display: inline-block;
    position: absolute;
    width: 110px;
    height: 161px;
    background: url(../image/feature_label_premium.png) no-repeat left top;
    left: 10px;
    top: -30px;
}

#funeral .featurePoint article dl{
    padding: 25px 10px;
}

#funeral .featurePoint article dt{
    margin-bottom: 5px;
    font-size: 3.0rem;
}

#funeral .featurePoint article dd{
    font-size: 1.8rem;
    line-height: 2;
}

#funeral .featurePoint .btnDesign span{
    letter-spacing: -0.05em;
}

#funeral .featurePoint .btnDesign:hover span{
    letter-spacing: 0em !important;
}

@media only screen and (max-width: 768px) {
    #funeral.index .bl01{
        padding-bottom: 10vw;
    }

    #funeral.index .bl01 h1{
        margin-bottom: 10vw;
    }

    #funeral.index .bl01 .logo{
        width: 65%;
        margin: 0 auto 5vw auto;
    }

    #funeral.index .bl01 .txt01{
        font-size: 4vw;
        margin-bottom: 3vw;
    }

    #funeral.index .bl01 .txt02{
        font-size: 3.5vw;
    }

    #funeral .omotenashiBl{
        margin: 0 -6.8% 0;
        padding: 10vw 6% 15vw;
        background: url(../funeral/image/omotenashi_bg.png) no-repeat left center;
        background-size: cover;
    }

    #funeral .omotenashiBl .txt01{
        font-size: 3.5vw;
        line-height: 2.2;
    }

    #funeral .omotenashiBl .txt01 br{
        display: none;
    }
    
    #funeral .omotenashiBl ul{
        margin:2vw 0 5vw;
        }

    #funeral .omotenashiBl ul li{
        width: 48%;
        font-size: 3.5vw;
        padding: 15px 0;
        margin: 3vw 0; 
    }

    #funeral .omotenashiBl .txt02{
        font-size: 4.5vw;
    }

    #funeral .omotenashiBl .txt03{
        font-size: 3.5vw;
    }
    
    #funeral .featurePoint{
        display: block;
        padding-bottom: 0;
    }

    #funeral .featurePoint article,
    #funeral .featurePoint article:nth-child(5){
        width: 100%;
        margin-bottom: 15vw;
    }

    #funeral .featurePoint article:last-child{
        margin-bottom: 0;
    }
    
    #funeral .featurePoint article:before{
        width: 55px;
        height: 81px;
        background: url(../image/feature_label_premium.png) no-repeat left top;
        background-size: 55px auto;
        top: -20px;
    }

    #funeral .featurePoint article dl{
        padding: 3vw 0 8vw ;
    }

    #funeral .featurePoint article dt{
        font-size: 4.5vw;
        line-height: 1.4;
    }

    #funeral .featurePoint article dd{
        font-size: 3.5vw;
    }
    
}

/* funeral-下層
==============================*/
#funeral #kv{
    margin: 0 auto;
    position: relative;
}

#funeral #kv .img img{
    width: 100%;
    height: 677px;
    object-fit: cover;
}

#funeral #kv .txtArea{
    max-width: 1380px;
    margin: 0 auto;
    display: table;
    vertical-align: middle;
    padding: 0 60px;
    position: absolute;
    top: 0;
    height: 100%;
}

#funeral #kv .txtArea div{
    display: table-cell;
    vertical-align: middle;
}

#funeral #kv .txtArea .catch{
    text-align: left;
    font-size: 4.0rem;
    margin-bottom: 70px;
    position: relative;
}

#funeral #kv .txtArea h1{
    font-size: 5.6rem;
    text-align: left;
    margin: 0;
    position: relative;
}

#funeral .column02{
    overflow: hidden;
}

#funeral .column02 > div{
    width: 47%;
}

#funeral .column02 p.note{
    font-size: 1.6rem;
	margin-top: 1em;
}

#funeral .column02 > div.floatL{
    float: left;
}

#funeral .column02 > div.floatR{
    float: right;
}

#funeral .column03{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
}

#funeral .column03 li{
    width: 31.3%;
}

#funeral .column03 .plan{
    text-align: center;
    font-size: 2.0rem;
    margin-bottom: 10px;
}

#funeral .column03 .hall{
    text-align: center;
    font-size: 2.0rem;
}

#funeral .column03 .pic{
    margin-bottom: 10px;
}

#funeral .column03 img{
    margin-bottom: 0;
}

#funeral .column03 p{
    font-size: 1.8rem;
}

#funeral .column03 p.link{
    text-align: right;
}

#funeral .column03 p.link a{
    padding-left: 15px;
    background: url("../common/image/arrow_right_gold.png") no-repeat left center;
    background-size: 7px auto;
}

/* professional */
#funeral.professional h2.icn {
  background: url("../funeral/image/professional/icn_h2.png") no-repeat center top;
}

#funeral.professional table{
    background: #d2ba77;
    border-spacing: revert-layer;
    border-collapse: inherit;
    width: 100%;
    text-align: center;
}

#funeral.professional table th,
#funeral.professional table td{
    background: #272835;
    text-align: center;
    padding: 20px;
}

#funeral.professional table th{
    color: #d2ba77;
    vertical-align: middle;
    font-size: 2.4rem;
}

#funeral.professional table td{
    vertical-align: middle;
    font-size: 2rem;
    text-align: left;
}

#funeral.professional .staffBl .visual{
    color: #000;
    position: relative;
    background: #fff;
    text-align: center;
    margin-bottom: 50px;
}

#funeral.professional .staffBl .visual img {
    width: 100%;
    height: 450px;
    object-fit: cover;
}

#funeral.professional .staffBl .visual .txtArea{
    text-align: left;
    position: absolute;
    top: 3vw;
    left:50px;
}

#funeral.professional .staffBl .visual .catch{
    font-size: 5rem;
    margin-bottom: 150px;
    text-shadow: 0 0 30px rgba(255,255,255,1),0 0 30px rgba(255,255,255,1),0 0 30px rgba(255,255,255,1),0 0 30px rgba(255,255,255,1);
}

#funeral.professional .staffBl .visual .name{
    text-shadow: 0 0 30px rgba(255,255,255,1),0 0 30px rgba(255,255,255,1),0 0 30px rgba(255,255,255,1),0 0 30px rgba(255,255,255,1);
    font-size: 3rem;
}

/* order */
#funeral.order #kv .txtArea .catch,
#funeral.order #kv .txtArea h1{
    text-shadow: 0 0 30px rgba(72,109,140,1),0 0 30px rgba(72,109,140,1),0 0 30px rgba(72,109,140,1),0 0 30px rgba(72,109,140,1);
}

#funeral.order #kv .txtArea .gradation{
    z-index: 10;
    color: #386387;
    position: relative;
}

#funeral.order #kv .txtArea .gradation:before{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    color: rgba(0,0,0,0);
    color: #cbaf62;
    background: -webkit-linear-gradient(90deg, #cbaf62, #f6eaaa);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none;    
}

#funeral.order #kv .txtArea .gradation.parts01::before{
    content:"故人やご遺族の想いを、";
}

#funeral.order #kv .txtArea .gradation.parts02::before{
    content:"しっかりとカタチにしていきます。";
}

#funeral.order #kv .txtArea .gradation.parts03::before{
    content:"想いに応える";
}

#funeral.order #kv .txtArea .gradation.parts04::before{
    content:"オーダーメードのお葬式";
}

#funeral.order .borderArea{
    overflow: hidden;
    border: 1px solid #d2ba77;
    padding: 20px;
    margin-top: 20px;
}

#funeral.order .borderArea p.tit{
    text-align: center;
    font-size: 3.0rem;
    color: #d2ba77;
}

#funeral.order .borderArea ul li{
    text-indent: -1em;
    padding-left: 1em;
}

/* responsiveness */
#funeral.responsiveness #kv .txtArea div{
    padding-top: 17%;
    vertical-align: top;
}

#funeral.responsiveness #kv .txtArea .catch,
#funeral.responsiveness #kv .txtArea h1{
    text-shadow: 0 0 30px rgba(26,50,4,1),0 0 30px rgba(26,50,4,1),0 0 30px rgba(26,50,4,1),0 0 30px rgba(26,50,4,1),0 0 30px rgba(26,50,4,1);
}

#funeral.responsiveness #kv .txtArea .gradation{
    z-index: 10;
    color: #386387;
    position: relative;
}

#funeral.responsiveness #kv .txtArea .gradation:before{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    color: rgba(0,0,0,0);
    color: #cbaf62;
    background: -webkit-linear-gradient(90deg, #cbaf62, #f6eaaa);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none;    
}

#funeral.responsiveness #kv .txtArea .gradation.parts01::before{
    content:"仏式・神式・キリスト教・無宗教など";
}

#funeral.responsiveness #kv .txtArea .gradation.parts02::before{
    content:"あらゆる宗派に対応しています。";
}

#funeral.responsiveness #kv .txtArea .gradation.parts03::before{
    content:"宗教・宗派や規模を問わず対応";
}

#funeral.responsiveness .denominationList{
    border: 1px solid #d2ba77;
}

#funeral.responsiveness .denominationList + .denominationList{
    margin-top: 45px;
}

#funeral.responsiveness .denominationList dt{
    font-size: 2.4rem;
    color: #d2ba77;
    text-align: center;
    border-bottom: 1px solid #d2ba77;
    padding: 5px;
}

#funeral.responsiveness .denominationList dd{
    font-size: 2.0rem;
    padding: 25px;
}

#funeral.responsiveness .denominationList ul li{
    display: inline-block;
    margin-right: 25px;
}

#funeral.responsiveness table{
    background: #d2ba77;
    border-spacing: revert-layer;
    border-collapse: inherit;
    width: 100%;
    text-align: center;
}

#funeral.responsiveness table th,
#funeral.responsiveness table td{
    background: #272835;
    text-align: center;
    padding: 3px;
}

#funeral.responsiveness table th{
    color: #d2ba77;
    font-size: 2.4rem;
}

#funeral.responsiveness table td{
    font-size: 1.8rem;
}

#funeral.responsiveness table td.price{
    font-size: 3.0rem;
}

#funeral.responsiveness table td.price span:not(.gradation){
    font-size: 6.0rem;
}

#funeral.responsiveness .columnBl{
    border: 1px solid #d2ba77;
}

#funeral.responsiveness .columnBl .tit{
    text-align: center;
    color: #d2ba77;
    font-size: 2.4rem;
    padding: 5px;
    border-bottom: 1px solid #d2ba77;
    font-weight: bold;
}

#funeral.responsiveness .columnBl .inner{
    padding: 30px;
}

#funeral.responsiveness .columnBl .inner ul{
    display: table;
    margin: 0 auto;
}

#funeral.responsiveness .columnBl .inner ul li{
    clear: both;
    line-height: 1.2;
    margin-top: 25px;
}

#funeral.responsiveness .columnBl .inner ul li span{
    color: #d2ba77;
}

#funeral.responsiveness .columnBl .inner ul li span:last-child{
    font-size: 2.6rem;
    margin-left: 40px;
    float: right;
    font-weight: bold;
    line-height: 1.1;
}


/* reflect_thought */
#funeral.reflect_thought #kv .txtArea .catch,
#funeral.reflect_thought #kv .txtArea h1{
    text-shadow: 0 0 30px rgba(0,0,0,1),0 0 30px rgba(0,0,0,1),0 0 30px rgba(0,0,0,1),0 0 30px rgba(0,0,0,1);
}

#funeral.reflect_thought #kv .txtArea .gradation{
    z-index: 10;
    color: #386387;
    position: relative;
}

#funeral.reflect_thought #kv .txtArea .gradation:before{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    color: rgba(0,0,0,0);
    color: #cbaf62;
    background: -webkit-linear-gradient(90deg, #cbaf62, #f6eaaa);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none;    
}

#funeral.reflect_thought #kv .txtArea .gradation.parts01::before{
    content:"葬儀の場所も、お出しするお料理や返礼品も";
}

#funeral.reflect_thought #kv .txtArea .gradation.parts02::before{
    content:"故人や家族のこだわりを反映させていきます。";
}

#funeral.reflect_thought #kv .txtArea .gradation.parts03::before{
    content:"想いを反映する";
}

#funeral.reflect_thought #kv .txtArea .gradation.parts04::before{
    content:"斎場、料理、返礼品";
}

#funeral.reflect_thought .column03 li{
    margin-bottom: 20px;
}

#funeral.reflect_thought .column03 li:nth-child(7){
    margin-bottom: 0;
}

/* total_support */
#funeral.total_support #kv .txtArea .catch,
#funeral.total_support #kv .txtArea h1{
    text-shadow: 0 0 30px rgba(0,0,0,1),0 0 30px rgba(0,0,0,1),0 0 30px rgba(0,0,0,1),0 0 30px rgba(0,0,0,1);
}

#funeral.total_support #kv .txtArea .gradation{
    z-index: 10;
    color: #386387;
    position: relative;
}

#funeral.total_support #kv .txtArea .gradation:before{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    color: rgba(0,0,0,0);
    color: #cbaf62;
    background: -webkit-linear-gradient(90deg, #cbaf62, #f6eaaa);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none;    
}

#funeral.total_support #kv .txtArea .gradation.parts01::before{
    content:"事前相談からお葬式までにとどまらず、";
}

#funeral.total_support #kv .txtArea .gradation.parts02::before{
    content:"葬儀を終えたお客様がその後に必要となる";
}

#funeral.total_support #kv .txtArea .gradation.parts03::before{
    content:"各種のサービスについても一貫してお手伝いいたします。";
}

#funeral.total_support #kv .txtArea .gradation.parts04::before{
    content:"事前相談から葬儀後まで";
}

#funeral.total_support #kv .txtArea .gradation.parts05::before{
    content:"トータルサポート";
}

#funeral.total_support .borderArea{
    border: 1px solid #d2ba77;
    width: 100%;
    padding: 25px;
    display: flex;
    margin-top: 60px;
    flex-wrap: wrap;
}

#funeral.total_support .borderArea li{
    width: 33.333%;
}

@media only screen and (max-width: 768px) {

    #funeral #kv{
        height: 80vw;
    }
    
    #funeral #kv .img img {
        width: 100%;
        height: auto;
        object-fit: cover;
        height: 80vw;
    }

    #funeral #kv .txtArea{
        padding: 0 6%;
    }

    #funeral #kv .txtArea .catch{
        font-size: 4.5vw;
        margin-bottom: 8vw;
    }

    #funeral #kv .txtArea h1{
        font-size: 6vw;
    }

    #funeral .column02 > div{
        width: 100%;
        float: inherit;
    }
	
   #funeral .column02 p.note{
        font-size: 2.8vw;
    }

    #funeral .column02 > div + div{
        margin-top: 5vw;
    }

    #funeral .column03{
        margin: 10vw 0 0 0;
    }

    #funeral .column03 li{
        width: 100%;
    }    

    #funeral .column03 li + li{
        margin-top: 8vw;
    }
    
    #funeral .column03 .plan{
        font-size: 4.5vw;
        margin-bottom: 0;
    }
    
    #funeral .column03 .pic{
        margin-bottom: 1vw;
    }

    #funeral .column03 p,
    #funeral .column03 .hall{
        font-size: 3.5vw;
    }

    #funeral .column03 p.link{
        margin-top: 1vw;
    }
    
    #funeral .column03 p.link a{
        padding-left: 15px;
        background: url("../common/image/arrow_right_gold.png") no-repeat left center;
        background-size: 7px auto;
    }
    
    /* professional */
    #funeral.professional h2.icn {
        background: url("../funeral/image/professional/icn_h2.png") no-repeat center top;
        background-size: 40px auto;
    }
    
    #funeral.professional table th,
    #funeral.professional table td{
        padding: 10px;
    }

    #funeral.professional table th{
        font-size: 4.5vw;
        width: 20%;
    }

    #funeral.professional table td{
        font-size: 3.5vw;
    }

    #funeral.professional .staffBl .visual{
        margin-bottom: 8vw;
        height: 35vw;
        overflow: hidden;
    }

    #funeral.professional .staffBl .visual img {
        width: 100%;
        height: 47vw;
    }

    #funeral.professional .staffBl .visual .txtArea{
        top: 5vw;
        left:6%;
    }

    #funeral.professional .staffBl .visual .catch{
        font-size: 4.5vw;
        margin-bottom: 5vw;
    }

    #funeral.professional .staffBl .visual .name{
        font-size: 3vw;
    }

    
    /* order */
    #funeral.order .column03{
        margin-top: 3vw !important;
    }
    
    #funeral.order .column03 li{
        width: 31.3%;
        margin-top: 0 !important;
    }
    
    #funeral.order .borderArea{
        padding: 15px;
        margin-top: 3vw;
    }

    #funeral.order .borderArea p.tit{
        font-size: 4.5vw;
    }

    #funeral.order p + h3 {
      margin-top: 10vw;
    }
    
    /* responsiveness */
    #funeral.responsiveness #kv .txtArea div{
        padding-top: 0; 
        vertical-align: middle;
    }

    #funeral.responsiveness .denominationList + .denominationList{
        margin-top: 3vw;
    }

    #funeral.responsiveness .denominationList dt{
        font-size: 4vw;
        padding: 3px;
    }

    #funeral.responsiveness .denominationList dd{
        font-size: 3.5vw;
        padding: 15px;
    }

    #funeral.responsiveness .denominationList ul li{
        margin-right: 10px;
    }

    #funeral.responsiveness table th{
        font-size: 3.5vw;
        padding: 5px;
    }

    #funeral.responsiveness table td{
        font-size: 3vw;
        padding: 5px;
    }

    #funeral.responsiveness table td.price{
        font-size: 3.5vw;
    }

    #funeral.responsiveness table td.price span:not(.gradation){
        font-size: 6vw;
    }

    #funeral.responsiveness .columnBl .tit{
        font-size: 4vw;
        padding: 3px;
    }

    #funeral.responsiveness .columnBl .inner{
        font-size: 3.5vw;
        padding: 15px;
    }

    #funeral.responsiveness .columnBl .inner ul li{
        margin-top: 3vw;
    }

    #funeral.responsiveness .columnBl .inner ul li span:last-child{
        font-size: 4.5vw;
        margin-left: 40px;
    }
    
    #funeral.reflect_thought .catch {
        font-size: 4vw;
    }
    
    #funeral.reflect_thought li {
        width: 47%;
        margin: 0 0 5vw 0 !important;
    }

    #funeral.reflect_thought li:nth-child(7){
        margin: 0 !important;
    }

    #funeral.total_support .borderArea{
        padding: 25px;
        margin-top: 5vw;
    }

    #funeral.total_support .borderArea li{
        width: 40%;
    }

    #funeral.total_support .borderArea li:nth-child(odd){
        width: 60%;
    }
    
    #funeral.total_support .borderArea li:nth-child(even){
        padding-right: 0;
    }
    
    #funeral .column03{
        margin-top: 0;
    }
    
}

/* funeral_hall
==============================*/
/* index */
#funeral_hall.index .w1380{
    max-width: 1380px;
    margin: 0 auto;
}

#funeral_hall.index h3.w1200{
    margin: 0 auto;
}

#funeral_hall.index .mapIllust{
    position: relative;
    margin: 0 auto 120px;
}

#funeral_hall.index .mapIllust .pin{
    position: absolute;
    max-width:70px;
    width: 5.0725%;
    left: 0;
    top: 0;
}

#funeral_hall.index .mapIllust .pin:hover{
    animation: bound 2.5s ease-in-out 0.1s infinite;
}

@keyframes bound {
    0% {
        transform:translate(0,0);
    }
    8% {
        transform:translate(0,-25px);
    }
    16% {
        transform:translate(0,0);
    }
    24% {
        transform:translate(0,-18px);
    }
    32% {
        transform:translate(0,0);
    }
    40% {
        transform:translate(0,-10px);
    }
    48% {
        transform:translate(0,0);
    }
    56% {
        transform:translate(0,-5px);
    }
    64% {
        transform:translate(0,0);
    }
}

#funeral_hall.index .mapIllust .map01{left:56.6%;top:21.5%;}
#funeral_hall.index .mapIllust .map02{left:29.45%;top:28.6%;}
#funeral_hall.index .mapIllust .map03{left:28%;top:47.92%;}
#funeral_hall.index .mapIllust .map04{left:67.3%;top: 10.3%;}
#funeral_hall.index .mapIllust .map05{left:73.8%;top: 10.3%;}
#funeral_hall.index .mapIllust .map06{left:36.9%;top:57%;}
#funeral_hall.index .mapIllust .map07{left: 18.5%;top: 32.7%;}

#funeral_hall.index .hallList > div + div{
    margin-top: 80px;
}

#funeral_hall.index .hallList h3{
    position: relative;
    border-bottom: 1px solid #d2ba77;
    padding: 0 10px 10px 20px;
    margin-bottom: 30px;
}

#funeral_hall.index .hallList h3 p{
    font-size: 2.0rem;
    display: inline-block;
    vertical-align: middle;
    margin: 0 20px;
    vertical-align: middle;
}

#funeral_hall.index .hallList h3 .floatR{
    float: right;
    font-size: 1.6rem;
    line-height: 1.5;
    margin-top: -10px;
}

#funeral_hall.index .hallList h3 .floatR .address{
    padding-left: 23px;
    background: url(../image/map_pin.png) no-repeat 1px center;
    background-size: 13px auto;
}

#funeral_hall.index .hallList h3 .floatR .tel{
    cursor: default;
    opacity: 1;
    pointer-events: none;
    padding-left: 23px;
    background: url(../funeral_hall/image/tel_icn_tel.png) no-repeat left center;
    background-size: 15px auto;
}

#funeral_hall.index .hallList .column02{
    margin-bottom: 10px;
}

#funeral_hall.index .hallList .access{
    padding-left: 20px;
}

#funeral_hall.index .hallList .btnDesign{
    margin-top: 50px;
}

/* 共通 */
#funeral_hall #kv{
    margin: 0 auto;
    position: relative;
}

#funeral_hall #kv img{
    width: 100%;
    height: auto;
}

#funeral_hall #kv .txtArea{
    position: absolute;
    top: 33%;
    width: 100%;
    text-align: center;
}

#funeral_hall #kv .txtArea.shadow{
    text-shadow: 0 0 30px rgba(0,0,0,1),0 0 30px rgba(0,0,0,1);
}

#funeral_hall #kv .txtArea h1{
    margin: 0;
    font-size: 8.0rem;
}

#funeral_hall #kv .txtArea p{
    font-size: 3.0rem;
    letter-spacing: 0.1em;
}

#funeral_hall #kv .telArea{
    position: absolute;
    top: 20px;
    right: 90px;
    margin-bottom: 0;
}

#funeral_hall #kv .telArea a p{
    font-size: 1.65rem;
    margin-bottom: 5px;    
}

#funeral_hall.ohanajaya #kv .telArea a p{
    font-size: 1.55rem;
    margin-bottom: 5px;    
}

#funeral_hall #kv .telArea .column02 +  p{
    font-size: 1.5rem;
    margin: 0;
}

#funeral_hall #kv .telArea a{
    font-size: 1.45rem;
    display: block;
    background: rgba(0,0,0,0.75);
    color: #d9ba63;
    padding: 10px ;
}

#funeral_hall #kv .telArea .column02{
    margin-bottom: 0;
}

#funeral_hall #kv .telArea .column02 > div {
    width:auto;
}

#funeral_hall #kv .telArea .column02 > div:first-child{
    line-height: 1.4;
    padding-right: 10px;
}

#funeral_hall #kv .telArea .number{
    font-size: 4.28rem;
    background: url("../funeral_hall/image/tel_icn_tel.png") no-repeat left center;
    background-size: 28px auto;
    padding-left: 32px;
}

#funeral_hall #picSlideArea{
/*    max-width: 1500px;*/
    margin: 0 auto 100px auto;
    width: 100%;
}

#funeral_hall #picSlideArea li.slick-slide{
    text-align: center;
    margin: 0 50px;
}

#funeral_hall #picSlideArea li p{
    margin-top: 15px;
    font-size: 1.8rem;
}

#funeral_hall #picSlideArea .slick-active{
    opacity: 0.5;
}

#funeral_hall #picSlideArea .slick-active p{
    opacity: 0;
}

#funeral_hall #picSlideArea .slick-center,
#funeral_hall #picSlideArea .slick-center p{
    opacity: 1 !important;
}

#funeral_hall #picSlideArea .slick-dots {
    display: block;
    position: inherit;
    bottom: inherit;
    text-align: center;
    padding: 0;
    margin-top: 20px;
}

#funeral_hall #picSlideArea li.slick-active button{
    color: #e3bf5d;
    background: #e3bf5d;
}

#funeral_hall .obi{
    margin: 0 auto 40px;
}

#funeral_hall .obi img{
    width: 100%;
    height: 258px;
    object-fit: cover;
}

#funeral_hall #specBl{
}

#funeral_hall #specBl .txt{
    margin-bottom: 50px;
}

#funeral_hall .column02{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 30px;
    clear: both;
    overflow: hidden;
}

#funeral_hall .column02 > div{
    width: 47.5%;
}

#funeral_hall #specBl .column02 dl{
}

#funeral_hall #specBl .column02 dl dt{
    font-size: 2.4rem;
    border-bottom: 1px solid #8c7536;
    padding: 0 5px;
}

#funeral_hall #specBl .column02 dl dd{
    font-size: 1.8rem;
    padding: 15px;
}

#funeral_hall #specBl .feature{
    border: 1px solid #8c7536;
    padding: 15px 20px;
    width: 100%;
    font-size: 1.8rem;
    margin-bottom: 30px;

}

#funeral_hall #specBl .feature ul:before{
    content: "施設の特徴";
    width: 140px;
    display: inline-block;
}

#funeral_hall #specBl .feature li{
    background: url("../funeral_hall/image/icn_check.png") no-repeat left center;
    padding-left: 28px;
    display: inline-block;
}

#funeral_hall #specBl .feature li + li{
    margin-left: 75px;
}

#funeral_hall .telArea{
    color: #d9ba63;
    font-weight: bold;
    text-align: center;
    margin: 0 0 30px 0;
}

#funeral_hall .telArea p{
    font-size: 2rem;
    margin-bottom: 10px;
    letter-spacing: -0.05em;
    text-align: center;
}

#funeral_hall #tabBl{
    margin: 0 auto 100px auto;
    max-width: 1380px;
    padding: 0 60px;
}

#funeral_hall .tabBox{
    margin: 0 auto;
    border:1px solid #c9a951;
    padding: 55px 95px;
}


#funeral_hall .tabLabel{
    padding: 0 90px;
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
}

#funeral_hall .tabLabel li{
    width: 33%;
    border:1px solid #c9a951;
    border-bottom: 0;
    text-align: center;
    font-size: 4.0rem;
    border-radius: 5px 5px 0 0;
    line-height: 1;
    padding: 18px 0;
    transition: all 0.2s ease 0s;
    cursor: pointer;
    letter-spacing: 0.1em;
}

#funeral_hall .tabLabel li span{
    font-weight: normal;
}

#funeral_hall .tabLabel li.active{
    background: #c9a951;
}

#funeral_hall .tabLabel li.active span{
    background: rgba(0,0,0,0.00);
    -webkit-text-fill-color:initial !important;
    color: #fff;
}

#funeral_hall .tabBox > div{
    transition: all 0.2s ease 0s;
    display: none;
}

#funeral_hall .tabBox > div.active{
    display: block;
}

#funeral_hall .tabBox .column02{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
}

#funeral_hall .tabBox .column02{
    margin-bottom: 50px;
}

#funeral_hall .tabBox .column02:last-child{
    margin-bottom: 0;
}

#funeral_hall .tabBox h3{
    font-size: 4.5rem;
}

#funeral_hall .tabBox p{
    font-size: 2.6rem;
}

#funeral_hall .tabBox p.fontS{
    font-size: 1.7rem;
    line-height: 2;
}

#funeral_hall .tabBox .example .btnDesign + .taC{
    color: #b09548;
    letter-spacing: 0.2em;
    font-size: 2.4rem;
    margin: 50px 0 0 0;
    font-weight: bold;
}

#funeral_hall .tabBox .planprice{
    line-height: 1;
    font-size: 5rem;
    margin-top: 6%;
    float: right;
}

#funeral_hall .tabBox .planprice:before{
    content: "「総額費用」の目安：";
    font-size: 2rem;
}

#funeral_hall .tabBox .planprice:after{
    font-size: 2rem;
    content: "万円～";
}

#funeral_hall .tabBox .flow .tit{
    font-size: 3.6rem;
    color: #d2ba77;
    border: 1px solid #bba76e;
    text-align: center;
    margin-bottom: 60px;
    font-weight: bold;
}

#funeral_hall .tabBox .flow ul{
    padding: 0 60px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 70px;
}

#funeral_hall .tabBox .flow ul li{
    display: flex;
    flex-direction: column;
    border: 1px solid #fff;
    text-align: center;
    font-size: 2.8rem;
    line-height: 1;
    font-weight: bold;
    letter-spacing: 0.3em;
    writing-mode: vertical-rl;
    height: 170px;
    width: 70px;
    position: relative;
    padding: 0 20px;    
}

#funeral_hall .tabBox .flow ul li.kara{
    border: none;
}

#funeral_hall .tabBox .flow ul li.ls1{
    letter-spacing: 0.1em;
}

#funeral_hall .tabBox .flow ul li:after{
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    background: url("../common/image/arrow_right_white.png") no-repeat center center;
    top: 0;
    right: -100%;
}

#funeral_hall .tabBox .flow ul li.noArrow:after,
#funeral_hall .tabBox .flow ul li:last-child:after{
    display: none;
}

#funeral_hall .tabBox .flow .btnDesign{
    margin-bottom: 70px;
}

#funeral_hall .tabBox .flow .telArea{
    margin-bottom: 0;
}

#funeral_hall .tabBox .flow .telArea p{
    font-size: 2rem;
}

#funeral_hall .tabBox .voice h3{
    font-size: 2.6rem;
}

#funeral_hall .telArea a.tel{
    cursor: default;
    opacity: 1;
    pointer-events: none;
    background: url(../funeral_hall/image/tel_icn_tel.png) no-repeat left center;
    padding-left: 80px;
    display: inline-block;
    text-align:justify ;
    text-justify: inter-ideograph;
    vertical-align: middle;
    line-height: 1.1;
    font-size: 2.7rem;
}

#funeral_hall .telArea .flex{
    display: flex;
    justify-content: space-between;
}

#funeral_hall .telArea > div{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    line-height: 1.1;
    padding: 17px 0;
}

#funeral_hall .telArea .number{
    font-size: 5.7rem;
    white-space: nowrap;
}

#funeral_hall #contactBl{
    height:400px;
    background: url(../image/contact_bg.jpg) no-repeat right bottom #fff;
    background-size: 45% auto;
    width: 100vw;
    display: table;
    position: relative;
    margin: 0 0 100px 0;
}

#funeral_hall #contactBl p{
    width: 100%;
    font-size: 3.0rem;
    letter-spacing: 0.1em;
    color: #fff;
    padding: 7px 0;
    text-align: center;
    background: #dfc788;
    background: -moz-linear-gradient( #a98d40 0%, #dfc788 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(#a98d40), to(#dfc788));
    background: -webkit-linear-gradient( #a98d40 0%, #dfc788 100%);
    background: -o-linear-gradient( #a98d40 0%, #dfc788 100%);
    background: linear-gradient( #a98d40 0%, #dfc788 100%);
}

#funeral_hall #contactBl .btnArea{
    position: absolute;
    top: 40%;
    right: calc(100vw - 50%);
}

#funeral_hall #contactBl a.telBtn{
    display: block;
    height: 100%;
    width: 100%; 
/*    margin-bottom: 8%;*/
}

#funeral_hall #contactBl a.telBtn .txt{
    color: #b09548;
    background:url(../image/contact_icn_tel.png) no-repeat left center;
    background-size: 72px auto;
    font-size: 3.8rem;
    text-align: center;
    line-height: 1.1;
    font-weight: 900;
    display: inline-block;
    padding-left: 95px;
    max-width: 1500px;
    margin: 0 auto;
}

#funeral_hall #contactBl a.telBtn .number{
    font-size: 8.2rem;
}

#funeral_hall #contactBl a.telBtn .flex{
    display: flex;
    justify-content: space-between;
}

#funeral_hall #googlemapBl{
    margin: 0 0 100px 0;
}

#funeral_hall #googlemapBl h2{
    margin-bottom: 30px;
}

#funeral_hall #googlemapBl .map{
    height: 500px;
    margin-bottom: 30px;
}

#funeral_hall #googlemapBl .map iframe{
    width: 100%;
}

#funeral_hall #googlemapBl .btn{
    max-width: 900px;
    margin: 0 auto;
    overflow: inherit;
}

#funeral_hall #googlemapBl .btn > div{
    margin: inherit;
}

#funeral_hall #requestBl .borderArea{
    margin: inherit;
    text-align: center;
    border: 1px solid #bf9d3e;
    padding: 25px ;
    line-height: 1.2;
}

#funeral_hall #requestBl .borderArea p.tit{
    font-size: 4.0rem;
    margin-bottom: 15px;
}

#funeral_hall #requestBl .borderArea p.sub{
    margin-bottom: 15px;
    font-size: 3.0rem;
}


@media only screen and (max-width: 1500px) {
    #funeral_hall #contactBl {    
        background: url(../image/contact_bg.jpg) no-repeat right bottom #fff;
        background-size: auto 100%;
    }
    
    #funeral_hall #contactBl .btnArea {
        right: inherit;
        left: 60px;
    }
}

@media only screen and (max-width: 1380px) {
    #funeral_hall #specBl .feature li,
    #funeral_hall #specBl .feature li + li {
        margin:  0 3% !important;
    }

    #funeral_hall .tabLabel {
        padding: 0;
    }
    
    #funeral_hall .tabBox {
        padding: 55px 60px;
    }
    
    #funeral_hall .tabBox .flow ul {
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: 70px;
    }
    
    #funeral_hall .tabBox .flow ul li::after {
        right: -110%;
    }    
}

@media only screen and (max-width: 1200px) {
    #funeral_hall #contactBl {    
        background: url(../image/contact_bg.jpg) no-repeat 150% bottom #fff;
        background-size: auto 100%;
    }
}

@media only screen and (max-width: 1000px) {
    #funeral_hall #contactBl {    
        background: url(../image/contact_bg.jpg) no-repeat 350% bottom #fff;
        background-size: auto 100%;
    }
    
    #funeral_hall .tabLabel li {
        font-size: 3.5rem;
    }
    
    #funeral_hall .tabBox .flow ul li{
        width: 50px;
        padding: 0 10px;
    }
    
    #funeral_hall .tabBox .flow ul li::after {
        right: -5.5vw;
    }
}


@media only screen and (max-width: 768px) {
    /* index */
    #funeral_hall.index .w1380 .w1200{
        padding-bottom: 5vw;
    }
    
    #funeral_hall.index .mapIllust{
        margin: 0 0 15vw;
    }

    #funeral_hall.index .mapIllust .pin{
         width: 5.5%;
    }

    #funeral_hall.index .mapIllust .pin:hover{
        animation: none;
    }

    #funeral_hall.index .mapIllust .map01{left:58.5%;top:25.3vw;}
    #funeral_hall.index .mapIllust .map02{left:28.4%;top:31.75vw;}
    #funeral_hall.index .mapIllust .map03{left:26.8%;top:49.7vw;}
    #funeral_hall.index .mapIllust .map04{left:70.4%;top:15vw;}
    #funeral_hall.index .mapIllust .map05{left:77.4%;top:15vw;}
    #funeral_hall.index .mapIllust .map06{left:36.5%;top:58.1vw;}
    #funeral_hall.index .mapIllust .map07{left: 16.3%;top: 35.7vw;}
    
    #funeral_hall.index .hallList > div + div{
        margin-top: 15vw;
    }

    #funeral_hall.index .hallList h3{
        padding: 0 0 3px 0;
        border: none;
    }

    #funeral_hall.index .hallList h3 p{
        position: inherit;
        font-size: 3.5vw;
        border-top: 1px solid #d2ba77;
        text-align:right;
        padding-top: 5px;
        margin: 5px 0 0 0;
        display: block;
    }

    #funeral_hall.index .hallList h3 .floatR{
        font-size: 3vw;
        margin: 5px 0 5vw 0 ;
    }
    
    #funeral_hall.index .hallList h3 .floatR .address{
        padding-left: 20px;
        background: url(../image/map_pin.png) no-repeat 1px center;
        background-size: 10px auto;
    }

    #funeral_hall.index .hallList h3 .floatR .tel{
        pointer-events: inherit;
        padding-left: 20px;
        background: url(../funeral_hall/image/tel_icn_tel.png) no-repeat left center;
        background-size: 12px auto;
    }
    
    #funeral_hall.index .hallList .column02{
        margin-bottom: 1vw;
        display: flex;
    }
    
    #funeral_hall.index .hallList .column02 > div{
        width: 47.5%;
        margin-top: 0;
    }
    
    #funeral_hall.index .hallList .access{
        padding-left: 0;
        font-size: 3vw;
    }

    #funeral_hall.index .hallList .btnDesign{
        margin-top: 8vw;
    }    
    
    /* 共通 */
    #funeral_hall #kv {
        position: relative;
    }

    #funeral_hall #kv img{
        object-fit: cover;
        width: inherit;
        height: 80vw;
    }
    
    #funeral_hall #kv .txtArea{
        top: 40%;
    }

    #funeral_hall #kv .txtArea h1{
        font-size: 7vw;
    }

    #funeral_hall #kv .txtArea p{
        font-size: 4vw;
    }

    #funeral_hall #kv .telArea{
        bottom: 0;
        right: 0;
        top: inherit;
        width: 100%;
        display: none;
    }

/*    #funeral_hall #kv .telArea a p{
        font-size: 3vw;
    }

    #funeral_hall #kv .telArea a{
        font-size: 3vw;
        padding: 10px 10px 5px 10px;
    }

    
    #funeral_hall #kv .telArea .column02 > div{
        display: table-cell;
    }

    #funeral_hall #kv .telArea .column02 > div:first-child{
        line-height: 1.4;
        padding-right: 10px;
    }

    #funeral_hall #kv .telArea .number{
        font-size: 4.28rem;
        background: url("../funeral_hall/image/tel_icn_tel.png") no-repeat left center;
        background-size: 28px auto;
        padding-left: 32px;
    }*/

    #funeral_hall #picSlideArea{
        margin: 0 auto 15vw auto;
        width: 80%;
    }

    #funeral_hall #picSlideArea li.slick-slide{
        margin: 0;
    }
    
    #funeral_hall #picSlideArea li.slick-slide img{
        width: 100%;
        height: auto;
    }

    #funeral_hall #picSlideArea li p{
        margin-top: 2vw;
        font-size: 3vw;
    }
    
    #funeral_hall #picSlideArea .slick-dots {
        display: block;
        position: inherit;
        bottom: inherit;
        text-align: center;
        padding: 0;
        margin-top: 3vw;
    }
    
    #funeral_hall #picSlideArea .slick-active,
    #funeral_hall #picSlideArea .slick-active p{
        opacity: 1 !important;
    }

    #funeral_hall .obi{
        margin: 0 auto 5vw;
    }

    #funeral_hall .obi img{
        height: 30vw;
    }

    #funeral_hall #specBl{
    }

    #funeral_hall #specBl .txt{
        margin-bottom: 8vw;
    }

    #funeral_hall .column02{
        display: block;
        margin-bottom: 10vw;
    }

    #funeral_hall .column02 > div{
        width: 100%;
    }

    #funeral_hall .column02 > div + div{
        margin-top: 8vw;
    }

    #funeral_hall #specBl .column02 dl dt{
        font-size: 4.5vw;
    }

    #funeral_hall #specBl .column02 dl dd{
        font-size: 3.5vw;
        padding: 5px;
    }

    #funeral_hall #specBl .feature{
        padding: 10px 5px;
        font-size: 3.5vw;
        margin-bottom: 10vw;
    }

    #funeral_hall #specBl .feature ul:before{
        content: "施設の特徴";
        width: 100%;
        text-align: center;
        display: block;
        font-size: 4.5vw;
    }

    #funeral_hall #specBl .feature li{
        background: url("../funeral_hall/image/icn_check.png") no-repeat left center;
        background-size: 12px auto;;
        padding-left: 20px;
        display: inline-block;
        margin: 0 0 10px 0;
    }
    
    #funeral_hall .telArea{
        margin: 0 0 8vw 0;
    }
    
    #funeral_hall .telArea p {
        font-size: 3.1vw;
        margin-bottom: 0;
    }

    #funeral_hall .telArea a.tel{
        background: url(../funeral_hall/image/tel_icn_tel.png) no-repeat left center;
        background-size: 30px auto;
        min-height: 30px;
        font-size: 3.5vw;
        padding: 1vw 0 1vw 40px;
        pointer-events: inherit;
    }

    #funeral_hall .telArea .flex{
        text-align: center;
    }

    #funeral_hall .telArea .number{
        font-size: 8vw;
    }

    #funeral_hall #tabBl{
        margin: 0 auto 15vw auto;
        padding: 0 6%;
    }

    #funeral_hall .tabBox{
        padding: 10vw 8%;
    }

    #funeral_hall .tabLabel li{
        font-size: 3.5vw;
        width: auto;
        min-width: 32.5%;
        padding: 2vw 0;
    }

    #funeral_hall .tabBox .column02{
        display: block;
        margin-bottom: 10vw;
    }
    
    #funeral_hall .tabBox .column02 > div + div{
        margin-top: 3vw;
    }
    
    #funeral_hall .tabBox .column02{
        margin-bottom: 10vw;
    }

    #funeral_hall .tabBox h3{
        font-size: 4.5vw;
    }

    #funeral_hall .tabBox p{
        font-size: 3.5vw;
    }

    #funeral_hall .tabBox p.fontS{
        font-size: 3vw;
        line-height: 1.6;
    }
    
    #funeral_hall .tabBox .example .btnDesign + .taC{
        letter-spacing: 0.1em;
        font-size: 4.5vw;
        margin: 8vw 0 0 0;
    }

    #funeral_hall .tabBox .planprice{
        font-size: 6vw;
        margin-top: 2vw;
    }
    
    #funeral_hall .tabBox .planprice:before{
        font-size: 2.5vw;
    }

    #funeral_hall .tabBox .planprice:after{
        font-size: 3vw;
    }

    #funeral_hall .tabBox .flow .tit{
        font-size: 5vw;
        margin-bottom: 3vw;
    }

    #funeral_hall .tabBox .flow ul{
        padding: 0;
        margin-bottom: 3vw;
    }
    
    #funeral_hall .tabBox .flow ul + ul{
        padding: 0;
        margin-bottom: 8vw;
    }
    
    #funeral_hall .tabBox .flow ul li{
        font-size: 3vw;
        letter-spacing: 0.2em;
        height: 19vw;
        width: inherit;
        padding: 0 2%;    
    }

    #funeral_hall .tabBox .flow ul li:after{
        background: url("../common/image/arrow_right_white.png") no-repeat center center;
        background-size: 7px auto;
        right: -5.5vw;
    }

    #funeral_hall .tabBox .flow .btnDesign{
        margin-bottom: 10vw;
    }
    
    #funeral_hall .tabBox .flow .telArea p{
        font-size: 3vw;
    }

    #funeral_hall .tabBox .voice h3{
        font-size: 4.5vw;
    }
    
    #funeral_hall #contactBl{
        height: inherit;
        background: url(../image/contact_bg.jpg) no-repeat 1200% bottom #fff;
        background-size: 95% auto;
        margin: 0 0 15vw 0;
        overflow: hidden;
    }

    #funeral_hall #contactBl p{
        font-size: 4vw;
    }

    #funeral_hall #contactBl .btnArea{
        position: inherit;
        top: inherit;
        right: inherit;
        padding: 5vw 0;
        left: 2.4%;
        display: block;
/*        width: 60%;*/
    }
    
    #funeral_hall #contactBl a.telBtn {
/*      margin-bottom: 2vw;*/
        pointer-events: inherit;
    }
    
    #funeral_hall #contactBl a.telBtn .txt {
        background: url(../image/contact_icn_tel.png) no-repeat left center;
        background-size: 13% auto;
        font-size: 3.2vw;
        padding-left: 10%;
    }
    
    #funeral_hall #contactBl .btnArea .txt .number {
      font-size: 7.5vw;
        display: block;
    }
/*
    #funeral_hall #contactBl a.inquiryBtn{
        padding: 5px 10%;
        display: inline-block;
        box-shadow: 0px 0px 12px 2px rgba(227, 191, 93, 0.47);
    }

    #funeral_hall #contactBl a.inquiryBtn span:first-child{
        font-size: 2.5vw;
    }

    #funeral_hall #contactBl a.inquiryBtn span:last-child{
        font-size: 4.5vw;
    }        
    */
    #funeral_hall #googlemapBl{
        margin: 0 0 15vw 0;
    }

    #funeral_hall #googlemapBl h2{
        margin-bottom: 5vw;
    }

    #funeral_hall #googlemapBl .map{
        height: 300px;
        margin-bottom: 8vw;
    }

    #funeral_hall #googlemapBl .map iframe{
        width: 100%;
        height: 100%;
    }

    #funeral_hall #googlemapBl .btn{
         width: 80%;
        overflow: unset;
    }
    
    #funeral_hall #googlemapBl .btn > div + div{
        margin-top: 3vw;
    }
    
    #funeral_hall #requestBl{
        padding: 15px;
        line-height: 1.4;
    }

    #funeral_hall #requestBl .borderArea p.tit{
        font-size: 5.5vw;
        margin-bottom: 10px;
    }

    #funeral_hall #requestBl .borderArea p.sub{
        margin-bottom: 10px;
        font-size: 4.5vw;
    }

    #funeral_hall #requestBl .borderArea .btn{
        width: 160px;
        margin: 0 auto;
    }
    

}    
/* inside */
#funeral_hall.inside .bgWhite{
    background: #fff;
    padding: 60px 50px;
    text-align: center;
    margin-bottom: 60px;
}

@media only screen and (max-width: 768px) {
    #funeral_hall.inside .bgWhite{
        padding: 5vw 5%;
        margin-bottom: 8vw;
    }
}

/* access */
#funeral_hall.access .bgWhite{
    background: #fff;
    color: #000;
    padding: 60px 50px;
    margin-bottom: 60px;
}

#funeral_hall.access .bgWhite .mapImg{
    border-bottom: 1px solid #eeeeee;
    padding-bottom: 60px;
}

#funeral_hall.access .bgWhite .txtArea{
    padding: 30px 30px 0 30px;
    line-height: 1.6;
}

#funeral_hall.access .bgWhite .txtArea .address,
#funeral_hall.access .bgWhite .txtArea .root{
    margin-bottom: 35px;
    width: 100%;
    display: table;
}

#funeral_hall.access .bgWhite .txtArea .address > div,
#funeral_hall.access .bgWhite .txtArea .root > div{
    display: table-cell;
    vertical-align: middle;
    text-align: left;
}

#funeral_hall.access .bgWhite .txtArea .address > div:first-child,
#funeral_hall.access .bgWhite .txtArea .root > div:first-child{
    width: 270px;
}

#funeral_hall.access .bgWhite .txtArea .label span{
    background: #4a346f;
    text-align: center;
    color: #fff;
    width: 255px;
    font-size: 2.6rem;
    display: inline-block;
    padding: 8px 0;
}

#funeral_hall.access .bgWhite .transportation{
    font-size: 1.8rem;
}

#funeral_hall.access .bgWhite .transportation .train{
    background: url("../funeral_hall/image/icn_train.png") no-repeat left top;
    padding: 3px 0 3px 78px;
    margin-bottom: 50px;
    min-height: 63px;
}

#funeral_hall.access .bgWhite .transportation .train .column02{
    width: 100%;
    margin-bottom: 0;
    overflow: hidden;
}

#funeral_hall.access .bgWhite .transportation .train .column02 > div{
    float: left;
}

#funeral_hall.access .bgWhite .transportation .row {
    display:table-row;
}

#funeral_hall.access .bgWhite .transportation .row span{
    padding-right: 30px;
    display: table-cell;
}

#funeral_hall.access .bgWhite .transportation .row span:last-child{
    padding-right: 0 !important; 
}

#funeral_hall.access .bgWhite .transportation .train-bus{
    background: url("../funeral_hall/image/icn_train-bus.png") no-repeat left top;
    padding: 3px 0 3px 78px;
    margin-bottom: 50px;
    min-height: 63px;
}

#funeral_hall.access .bgWhite .transportation .bus{
    background: url("../funeral_hall/image/icn_bus.png") no-repeat left top;
    padding: 3px 0 3px 78px;
    margin-bottom: 50px;
    min-height: 63px;
}

#funeral_hall.access .bgWhite .transportation .tax{
    background: url("../funeral_hall/image/icn_tax.png") no-repeat left top;
    padding: 3px 0 3px 78px;
}

@media only screen and (max-width: 768px) {

    /* access */
    #funeral_hall.access .bgWhite{
        padding: 5vw 5%;
        margin-bottom: 8vw;
    }

    #funeral_hall.access .bgWhite .mapImg{
        padding-bottom: 5vw;
    }

    #funeral_hall.access .bgWhite .txtArea{
        padding: 3vw 0 0 0;
    }

    #funeral_hall.access .bgWhite .txtArea .address,
    #funeral_hall.access .bgWhite .txtArea .root{
        margin-bottom: 5vw;
        display: block;
    }

    #funeral_hall.access .bgWhite .txtArea .address > div,
    #funeral_hall.access .bgWhite .txtArea .root > div{
        display: block;
    }

    #funeral_hall.access .bgWhite .txtArea .address > div:first-child,
    #funeral_hall.access .bgWhite .txtArea .root > div:first-child{
        width: auto;
        display: block;
        margin-bottom: 1vw;
    }

    #funeral_hall.access .bgWhite .txtArea .label span{
        width: 100%;
        width: inherit;
        font-size: 3.5vw;
        padding: 5px 5%;
    }

    #funeral_hall.access .bgWhite .transportation{
        font-size: 3.5vw;
    }

    #funeral_hall.access .bgWhite .transportation .train{
        background: url("../funeral_hall/image/icn_train.png") no-repeat left top;
        background-size: 50px auto;
        padding: 55px 0 0 0;
        margin-bottom: 5vw;
    }

    #funeral_hall.access .bgWhite .transportation .train .column02 > div{
        float: inherit;
   }

    #funeral_hall.access .bgWhite .transportation .train .column02 > div + div{
        padding-left: 0;
        margin-top: 3vw;
    }
    
    #funeral_hall.access .bgWhite .transportation .row span{
        padding-right: 10px;
    }
    
    #funeral_hall.access .bgWhite .transportation .train-bus{
        background: url("../funeral_hall/image/icn_train-bus.png") no-repeat left top;
        background-size: 50px auto;
        padding: 55px 0 0 0;
        margin-bottom: 5vw;
    }

    #funeral_hall.access .bgWhite .transportation .bus{
        background: url("../funeral_hall/image/icn_bus.png") no-repeat left top;
        background-size: 50px auto;
        padding: 55px 0 0 0;
        margin-bottom: 5vw;
    }

    #funeral_hall.access .bgWhite .transportation .tax{
        background: url("../funeral_hall/image/icn_tax.png") no-repeat left top;
        background-size: 50px auto;
        padding: 55px 0 0 0;
    }

    #funeral_hall.access .bgWhite .transportation .row{
        display: block;
    }
    
    #funeral_hall.access .bgWhite .transportation .row + .row{
        margin-top: 3vw;
    }
    
    #funeral_hall.access .bgWhite .transportation .row span:first-child{
        font-weight: bold;
        display: block;
        padding: 0;
        font-weight: 3.5vw;
    }

    #funeral_hall.access .bgWhite .transportation .row span{
        font-weight: normal;
        font-weight: 3vw;
    }
    
}

/* about
==============================*/
#about .tableLayout dd span{
    width: 110px;
    display: inline-block;
    margin-right: 20px;
}

@media only screen and (max-width: 768px) {
    #about .tableLayout dd span{
        width: inherit;
        display: inline;
        margin-right: 10px;
    }
}

/* voice
==============================*/

#voice .voiceList{
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    margin: 100px 0 0 0;
}

#voice .voiceList article{
    width: 47%;
    margin-bottom: 100px;
}

#voice .voiceList article:last-child{
    margin-bottom: 0;
}

#voice .voiceList article .pic{
    margin-bottom: 10px;
}

#voice .voiceList article .catch{
    font-size: 2.4rem;
    margin-bottom: 5px;
}

#voice .voiceList article .person{
    font-size: 1.6rem;
    margin-bottom: 5px;
    text-align: right;
}

#voice .voiceList article .commnet{
    font-size: 1.6rem;
    margin-bottom: 25px;
}

@media only screen and (max-width: 768px) {
    #voice h1 + p{
        text-align: left !important;
    }

    #voice .voiceList{
        margin-top: 15vw;
    }

    #voice .voiceList article{
        width: 100%;
        margin-bottom: 12vw;
    }

    #voice .voiceList article .pic{
        margin-bottom: 3vw;
    }

    #voice .voiceList article .catch{
        font-size: 4.5vw;
        margin-bottom: 1vw;
    }

    #voice .voiceList article .person{
        font-size: 3.5vw;
        margin-bottom: 1vw;
    }

    #voice .voiceList article .commnet{
        font-size: 3.5vw;
    }
}
