@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;500;600&family=Mochiy+Pop+One&family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@700&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@500;600;700&family=Dancing+Script:wght@400;500;600&family=Mochiy+Pop+One&family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@700&family=Zen+Kaku+Gothic+Antique:wght@400;500;700&family=Zen+Kurenaido&display=swap');
/*===============================================
●PCレイアウト設定 
===============================================*/
@media print, screen and  (min-width: 651px){
/*メイン画像ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.index{
position: relative;
font-family: 'Noto Sans JP';
}

.index .main{
position: relative;
height: 98vh
}
.index .main img{
width: 100%
}
.index .main .box_catch{
line-height: 1.8;
width: 100%;
position: absolute;
top: 50%;
left:50%;
width: 10vw;
transform: translateY(-40%) translateX(-50%);
}
.index .main .text_catch1{
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size: clamp(2.0rem, 22vw, 3.5rem);
color: #FFF;
font-weight: 600;

padding-top: 1vw;
font-family: 'Noto Serif JP';
}
.index .box1{
background-color: #f4f4f4;
position: relative
}
.index .box1 img{
width: 100%
}
.index .box1 .com{
position: absolute;
width: 40%;
top: 20%;
left: 10%;
 transform: translateY(-50%);
 line-height: 200%;
font-size: clamp(1.1rem ,1.2vw, 1.8rem);
}
.index .box1 .com .catch2{
font-size: clamp(1.4rem, 1.5vw, 3.0rem);
font-weight: 600;
padding-bottom: 2.0vw
}
.index .box1 .com a{
display: block;
width: 70%;
padding-top: 0.8vw
}
.index .box1 .com a img{
width: 100%
}
.index .box2{
background-color: #fff;
padding: 100px 0;
}
.index .box2 .subtitle{
font-size: 3.5rem;
font-weight: 600;
text-align: center;
margin-bottom: 100px;
}
.index .box2 .subtitle .text16{
padding-top: 30px;
font-size: 1.8rem
}
.index .flex_box2{
width: 1300px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .flex_box2 a{
display: block;
width: 23%;
padding: 1%;
transition: 0.8s;
margin-bottom: 30px;
}
.index .flex_box2 a:hover{
background-color: #EEE
}
.index .flex_box2 a .photo{
margin-bottom: 4px;
overflow: hidden
}
.index .flex_box2 a .photo img{
width: 100%;
height: 200px;
object-fit: cover
}
.index .flex_box2 a .name{
font-size: 1.6rem;
font-weight: 500;
padding-bottom: 2px;
border-bottom: 2px solid #333;
}
.index .flex_box2 a .price{
font-size: 1.6rem;
color: #900;
font-weight: 600
}
.index .box2 .right .flex_right a .bt{
width: 70%;
font-size: 1.4rem;
color: #069;
padding-bottom: 2px;
border-bottom: #069 1px solid;
margin: 10px 0 0 auto;
text-align: right
}
.index .box2 .bt{
width: 900px;
max-width: 90%;
margin: 50px auto
}
.index .box2 .bt a{
display: block;
border: #850029 1px solid;
color: #850029;
text-align: center;
font-size: 2.0rem;
font-weight: 500;
padding: 20px 0;
transition: 0.5s
}
.index .box2 .bt a:hover{
background-color: #850029;
color: #FFF
}
.index .box2 .box2_b{
margin: 0 auto;
font-size: 2.0rem;
width: 900px;
max-width: 90%;
border-bottom: #999 4px solid;
border-top: #999 4px solid;
padding: 30px 0
}
.index .box3{

}
.index .box3 img{
width: 100%
}
.index .box_blog{
background-color: #f4f4f4;
padding: 100px 0;
}
.index .box_blog .subtitle{
font-size: 3.5rem;
font-weight: 600;
text-align: center;
margin-bottom: 100px;
}
.index .flex_blog{
width: 1300px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .flex_blog a{
display: block;
width: 22%;
transition: 0.8s;
margin-bottom: 30px;
font-size: 1.3rem;
padding: 1%;
border: #CCC 1px solid
}
.index .flex_blog a .photo{
margin-bottom: 4px;
overflow: hidden
}
.index .flex_blog a .photo img{
width: 100%;
height: 250px;
object-fit: cover
}
.index .flex_blog a .blogtitle{
font-size: 1.6rem;
font-weight: 600;
color: #666;
padding:0 2% 2px 2%
}
.index .flex_blog a .date{
font-size: 1.2rem;
padding: 0 2%
}
.index .flex_blog a .com{
padding: 2%;
font-size: 1.3rem;
}
.index .flex_blog a .com img{
display: none
}
.index .box_blog .bt{
width: 900px;
max-width: 90%;
margin: 50px auto
}
.index .box_blog .bt a{
display: block;
border: #850029 1px solid;
color: #850029;
text-align: center;
font-size: 2.0rem;
font-weight: 500;
padding: 20px 0;
transition: 0.5s
}
.index .box_blog .bt a:hover{
background-color: #850029;
color: #FFF
}
.index .box4{
background-color: #f4f4f4;
padding: 100px 0;
background-image:url("../images/index/bg_box4.jpg")
}
.index .box4 .flex_box4{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1500px;
max-width: 90%;
margin: 0 auto
}
.index .box4 .flex_box4 .left{
width: 35%;
line-height: 180%;
padding-top: 50px;
color: #000
}
.index .box4 .flex_box4 .left .subtitle{
font-size: 3.5rem;
font-weight: 600;
text-align: center;
margin-bottom: 30px;
}
.index .box4 .flex_box4 .left .text_left{
width: 95%;
margin: 0 auto
}
.index .box4 .com{
width: 63%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
color: #000
}
.index .box4 .com a{
display: block;
width: 50%;
color: #000
}
.index .box4 .com a img{
width: 100%
}
.index .box5{
background-color: #000;
padding: 50px 0;
}
.index .box5 .subtitle{
font-size: 2.7rem;
font-weight: 600;
text-align: center;
margin-bottom: 30px;
color: #FFF
}
.index .box5 .bt a:hover{
background-color: #850029;
color: #FFF
}
.index .box5 .flex_movie{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1500px;
max-width: 90%;
margin: 0 auto;
}
.index .box5 .flex_movie .inner{
width: 23%;
margin-bottom: 20px;
}
.index .box5 .bt a{
display: block;
border: #850029 1px solid;
color: #850029;
background-color: #FFF;
text-align: center;
font-size: 1.6rem;
font-weight: 500;
padding: 20px 0;
width: 650px;
margin: 15px auto;
transition: 0.5s
}
.index .box5 .bt a:hover{
background-color:#850029;
color: #FFF
}
.index .box6{
padding: 50px 0;
background-color: #FFF
}
.index .box6 .flex_box6{
width: 1200px;
max-width: 90%;
margin: 0 auto;
border-top: 4px solid #850029;
padding-top: 30px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .box6 .flex_box6 .inner{
width: 48%;
}
.index .box6 .flex_box6 .inner .compname{
font-size: 2.2rem;
font-weight: 600;
padding-bottom: 20px
}
.index .box6 .flex_box6 .inner .tel{
font-size: 3.5rem;
font-weight: 600;
color: #850029;
padding: 30px 0
}
.index .box6 .flex_box6 .inner .mail{
padding-top: 20px;
}
.index .box6 .flex_box6 .inner .mail a{
display: block;
border: #850029 1px solid;
color: #850029;
text-align: center;
font-size: 2.0rem;
font-weight: 500;
padding: 20px 0;
transition: 0.5s
}
.index .box6 .flex_box6 .inner .mail a:hover{
background-color:#850029;
color: #FFF
}
.index .box6 .flex_box6 .inner .sns{
padding-top: 30px;
}
.index .box6 .flex_box6 .inner .sns a{
display: inline-block;
border: #CCC 1px solid;
padding: 2%;margin-right: 10px
}
.index .box6 .flex_box6 .inner .sns .line{
color: #70B069
}
.index .box6 .flex_box6 .inner .sns .insta{
color:#F9751B
}
.index .box6 .flex_box6 .inner .sns .yutube{
color:#D9060A
}
.index .box6 .flex_box6 .inner .sns i{
font-size: 4.5rem
}

.flex_box6 .inner .map{
border: #999 1px solid;
padding: 2%
}
.index .box7 img{
width: 100%
}
/*早野石材店についてーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.about{
padding: 0 0 100px 0;
font-family: 'Noto Sans JP';
line-height: 180%
}
.about .box1{
background-image: url("../images/about/bg_box1.png");
background-position: top center;
padding-top: 200px;
padding-bottom: 200px;
margin-bottom: 100px;
}
.about .box1 .flex_box1{
width: 1300px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.about .box1 .flex_box1 .com{
width: 50%;
padding: 2%;
font-size: clamp(1.3rem,1.2vw,2.2rem);
font-weight: 500;
line-height: 200%;
}
.about .box1 .flex_box1 .photo{
width: 40%;
}
.about .box1 .flex_box1 .photo img{
width: 100%;
border-radius: 15px;
}
.about .box2{
width: 1300px;
max-width: 90%;
margin: 0 auto;
}
.about .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 400;
  margin-bottom: 50px
  }
.about .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.about .flex_point{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.about .flex_point .inner{
width: 42%;
margin-bottom: 30px;
background-color: #FFF;
padding: 2%;
padding-right: 4%
}
.about .box2 .flex_point .inner .subtitle2 {
  color: #505050;/*文字色*/
  padding: 0.5em;/*文字周りの余白*/
  display: inline-block;/*おまじない*/
  line-height: 1.3;/*行高*/
  background: #dbebf8;/*背景色*/
  vertical-align: middle;
  border-radius: 25px 0px 0px 25px;/*左側の角を丸く*/
  font-size: clamp(1.3rem,1.3vw,2.0rem);
  font-weight: 600;
  margin-bottom: 20px;
  width: 100%;
}

.about .box2 .flex_point .inner .subtitle2:before {
  content: '●';
  color: white;
  margin-right: 8px;
}
.about .box2 .flex_point .inner .subtitle2 .num{
display: inline-block;
 font-size: clamp(1.5rem,1.5vw,2.5rem);
 color: #069;
 padding-right: 10px
}
.about .box2 .flex_point .inner a{
display: block;
padding-top: 20px;
color: #C00;
font-weight: 600;
text-decoration: underline
}

/*お墓の作り方ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.ohakacontents{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1300px;
max-width: 90%;
margin: 0 auto;
line-height: 180%
}
.ohakamenu{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-bottom: 100px;
}
.ohakamenu .inner{
width: 31%;
margin-bottom: 35px;
}
.ohakamenu a{
display: block;
position: relative;
padding: 0.6em;
background: #9AC3F9;
color:#FFF;
transition: 0.5s
}
.ohakamenu a:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #9AC3F9;
  width: 0;
  height: 0;
}
.ohakamenu a:hover{
background: #850029;
}
.ohakamenu a:hover:after {
  border-top: 15px solid #850029;
}
.ohakamenu .active a{
background: #850029;
}
.ohakamenu .active a:after {
  border-top: 15px solid #850029;
}

.ohakacontents .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 400;
  margin-bottom: 50px
  }
.ohakacontents .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.ohakacontents .flex_ohaka{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-bottom: 100px;
}
.ohakacontents .flex_ohaka .com{
width: 70%;
}
.ohakacontents .flex_ohaka .photo{
width: 28%;
}
.ohakacontents .flex_ohaka .photo img{
width: 100%;
display: block;
border-radius: 8px;
border: 2px #FFF solid
}
.ohakacontents .box1{
border: #D8CCE7 1px solid;
padding: 2%;
border-radius: 5px;
font-size: 1.8rem;
 font-weight: 500;
line-height: 200%;
margin-bottom: 50px
}
.ohakacontents .subtitle2{
font-size: 2.0rem;
 font-weight: 600;
 color: #850029;
 margin-bottom: 30px
}
.ohakacontents .box3{
font-size: 2.2rem;
font-weight: 600;
line-height: 180%;
width: 1100px;
max-width: 100%;
margin: 0 auto 100px auto
}
.ohakacontents .box_price{
margin-bottom: 100px;
}
.ohakacontents .box_price table{
width: 100%;
border-collapse: collapse
}
.ohakacontents .box_price table td{
padding: 1%;border: #666 1px solid
}
.ohakacontents .box_price table td:nth-child(1){
background-color: #DDD;
font-weight: 600;
width: 20%;
vertical-align: middle
}
.ohakacontents .box_price table td:nth-child(2){
background-color: #FFF
}
.ohakacontents .box_price table td .text1{
font-size: 1.8rem;
font-weight: 600;
color: #850029;
padding: 10px 0
}
.ohakacontents .flex_ohaka2{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 100px
}
.ohakacontents .flex_ohaka2::after{
  content:"";
  display: block;
  width:30%;
}
.ohakacontents .flex_ohaka2 .inner{
width: 30%;
border-radius: 5px;
margin-bottom: 30px;
overflow: hidden
}
.ohakacontents .flex_ohaka2 .inner .subtitle2{
text-align: center;
background-color:#FFF;
color: #850029;
padding: 10px 0;
margin: 15px;
}
.ohakacontents .flex_ohaka2 .inner .photo{
width: 90%;
margin: 0 auto
}
.ohakacontents .flex_ohaka2 .inner .photo img{
width: 100%;
}
.ohakacontents .flex_ohaka2 .inner .com{
padding: 2%;
font-size: 1.4rem
}
.ohakacontents .flex_ohaka3{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 50px
}
.ohakacontents .flex_ohaka3 .merit{
width: 38%;
padding: 2%;
background-color: #E0E8D6;
border-radius: 10px;

}
.ohakacontents .flex_ohaka3 .merit p{
color: #5A933A;
font-size: 2.0rem;
font-weight: 600;
text-align: center;
padding-bottom: 20px;
margin: 0
}
.ohakacontents .flex_ohaka3 .demerit{
width: 38%;
padding: 4%;
background-color:#EBD7B8;
border-radius: 10px;

}
.ohakacontents .flex_ohaka3 .demerit p{
color:#DC8126;
font-size: 2.0rem;
font-weight: 600;
text-align: center;
padding-bottom: 20px;
margin: 0
}
.ohakacontents .flex_ohaka3 li{
display: block;
padding-bottom: 3px;
border-bottom: #333 1px dashed;
margin-bottom: 15px
}
.ohakacontents .box_taishin{
border-bottom: #850029 1px solid;
margin-bottom: 100px;
}
.ohakacontents .flex_ohaka dt {
  position: relative;
  padding-left: 1.2em;/*アイコン分のスペース*/
  line-height: 1.4;
  font-size: 2.0rem;
  font-weight: 600
}

.ohakacontents .flex_ohaka dt:before {
  font-family: FontAwesome;
  content: '\f058'; /* アイコンのunicode */
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1em;/*サイズ*/
  left: 0;/*アイコンの位置*/
  top: 0;/*アイコンの位置*/
  color: #5ab9ff; /*アイコン色*/
  font-weight: 900;
}
.ohakacontents .flex_ohaka dd{
margin-bottom: 30px
}
.ohakacontents .box_taishin .title_taishin{
 position: relative;
  padding: 1.5rem;
  text-align: center;
  font-size: 2.5rem;
  font-weight: 600;
  margin-bottom: 50px
}

.ohakacontents .box_taishin .title_taishin:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 8px;
  content: '';
  border-radius: 3px;
  background: #850029;
}
.ohakacontents .box_taishin .flex_taishin{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 40px 0 20px 0
}
.ohakacontents .box_taishin .flex_taishin .photo{
width: 31%;
}
.ohakacontents .box_taishin .flex_taishin .photo img{
width: 100%;
display: block;
border-radius: 8px;
border: 2px #FFF solid;
}
.ohakacontents ol li{
font-weight: 600;
border-bottom: #333 1px dotted;
margin-bottom: 30px
}
.ohakacontents .rorne{
padding: 30px 0;
}
.ohakacontents .rorne table{
width: 100%;
}
.ohakacontents .rorne td{
padding: 1%;
border: #666 1px solid;
}
.ohakacontents .rorne td:nth-child(1){
width: 20%;
background-color: #FFF;
color:#DC8126;
text-align: center
}
.ohakacontents .joken dt{
background-color: #850029;
color: #FFF;
font-size: 2.0rem;
font-weight: 600;
padding: 3px 3px 3px 15px;
width: 200px;
max-width: 100%
}
.ohakacontents .joken dd{
padding: 2%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 100px;
margin-left: 0;
border:#850029 1px solid
}
.ohakacontents .joken dd .com{
width: 70%
}
.ohakacontents .joken dd .photo{
width: 15%;
border: none
}
.ohakacontents .joken dd .photo img{
width: 100%
}
/*墓石販売ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.forsale{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1300px;
max-width: 90%;
margin: 0 auto;
line-height: 180%
}
.forsale .nav_term{
width: 1000px;
max-width: 90%;
margin: 0 auto 100px auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.forsale .nav_term a{
display: block;
width: 25%;
box-sizing: border-box;
border: #850029 1px solid;
color: #850029;
font-size: 1.8rem;
text-align: center;
padding: 5px 0;
transition: 0.5s
}
.forsale .nav_term a:hover{
background-color: #850029;
color: #FFF
}
.forsale .box1{
max-width: 90%;
margin: 0 auto 100px auto;
}
.forsale .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 500;
  margin-bottom: 50px;
  color:#A668C1
  }
.forsale .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.forsale .flex_sale{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.forsale .flex_sale::before{
  content:"";
  display: block;
  width:23%;
  order:1;
}
.forsale .flex_sale::after{
  content:"";
  display: block;
  width:23%;
}
.forsale .flex_sale a{
display: block;
width: 21%;
padding: 1%;
margin-bottom: 30px;
font-size: 1.5rem;
transition: 0.5s
}
.forsale .flex_sale a:hover{
background-color: #FFF
}
.forsale .flex_sale a .photo{
width: 100%;
margin-bottom: 10px;
border: #FFF 2px solid;
box-sizing: border-box
}
.forsale .flex_sale a .photo img{
width: 100%;
height: 180px;
object-fit: cover
}
.forsale .flex_sale a .saletitle{
font-weight: 600;
padding-bottom: 3px;
border-bottom: #666 3px solid;
margin-bottom: 10px;
}
.forsale .flex_sale a .saletitle .menseki{
font-size: 1.3rem
}
.forsale .flex_sale a .price{
font-size: 1.8rem;
font-weight: 600;
color: #D04A0E;
border-bottom:#D04A0E 4px double
}
.forsale .bt_all a{
display: block;
width: 650px;
margin: 0 auto;
border: #850029 1px solid;
color: #850029;
font-size: 1.8rem;
text-align: center;
padding: 5px 0;
transition: 0.5s
}
.forsale .bt_all a:hover{
background-color:#850029;
color: #FFF
}

.forsale .saletitle2{
background: #999;
text-align: center;
padding: 5px 0;
font-size: 1.8rem;
font-weight: 500;
margin-bottom: 10px;
color: #FFF
}
.forsale .saletitle2 .type{
background-color: #FFF;
color: #333;
display: inline-block;
padding: 2px 10px;
border-radius: 15px;
font-size: 1.4rem;
font-weight: 600;
text-align: center;
margin-right: 20px
}
.forsale .sale_detail{
padding-top: 50px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
font-size: 1.4rem;
}
.forsale .sale_detail .photo{
width: 30%;
}
.forsale .sale_detail .photo img{
width: 100%;
border: #FFF 4px solid;
box-sizing: border-box
}
.forsale .sale_detail .com{
width: 68%;
}
.forsale .sale_detail .com .box_price{
padding-top: 50px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
border-bottom:#D04A0E 4px double
}
.forsale .sale_detail .com .box_price .price{
font-size: 2.5rem;
font-weight: 600;
color: #D04A0E;
width: 60%;
text-align: right;
}
.forsale .sale_detail .com .box_price .menseki{
font-size: 1.8rem;
font-weight: 600;
width: 40%
}
.forsale .sale_detail .com .gaiyo{
padding: 30px 0;
}
.forsale .sale_detail table{
width: 100%;
margin-bottom: 50px;
}
.forsale .sale_detail td{
border-bottom: #666 1px dotted;
padding: 20px 0 3px 0
}
.forsale .sale_detail td:nth-child(1){
width: 20%
}
.forsale .singlepager{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 50px;
width: 80%;
margin: 0 auto
}
.forsale .singlepager a{
display: block;
background-color: #999;
color: #FFF;
text-align: center;
width: 250px;
max-width: 40%;
padding: 5px 0;
font-weight: 500
}
.forsale .bt_list{
padding-top: 30px;
}
.forsale .bt_list a{
width: 350px;
display: block;
margin: 0 auto;
border-bottom: #666 1px solid;
text-align: center
}
/*メンテナンスーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.maintenanse{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1300px;
max-width: 90%;
margin: 0 auto;
line-height: 180%
}
.maintenanse .box_lead{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1200px;
max-width: 90%;
margin: 0 auto 100px auto;
}
.maintenanse .box_lead .com{
width: 65%;
}
.maintenanse .box_lead .com a{
display: block;
width: 70%;
border: #850029 1px solid;
text-align: center;
color: #850029;
padding: 10px 0;
transition: 0.5s;
margin: 30px auto
}
.maintenanse .box_lead .com a:hover{
color: #FFF;
background-color:#850029 
}
.maintenanse .box_lead .photo{
width: 35%;
border-radius: 10px;
overflow: hidden
}
.maintenanse .box_lead .photo img{
width: 100%;
}
.maintenanse .box1{
width: 1200px;
max-width: 90%;
margin: 0 auto 100px auto;
}
.maintenanse .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 500;
  margin-bottom: 50px;
  color:#A668C1
  }
.maintenanse .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.maintenanse .flex_mainte{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.maintenanse .flex_mainte::after{
  content:"";
  display: block;
  width:28%;
}
.maintenanse .flex_mainte a{
width: 28%;
display: block;
border: #CCC 1px solid;
padding: 2%
}
.maintenanse .maintetitle{
font-weight: 600;
padding-bottom: 3px;
border-bottom: #666 3px solid;
margin-bottom: 10px;
}
.maintenanse .flex_mainte a .photo{
width: 100%;
padding-bottom: 10px
}
.maintenanse .flex_mainte a .photo img{
width: 100%;
height: 250px;
object-fit: cover
}
.maintenanse .flex_mainte a .bt{
text-align: center;
font-weight: 500
}
.maintenanse .mainte_detail .flex_photo{
width: 1000px;
max-width: 100%;
margin: 0 auto 50px auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 50px
}
.maintenanse .mainte_detail .flex_photo .photo{
width: 43%;
border: #FFF 3px solid;
text-align: center;
font-size: 2.2rem;
font-weight: bold;
padding: 2%
}
.maintenanse .mainte_detail .flex_photo .photo img{
width: 100%;
display: block;
margin-bottom: 20px
}
.maintenanse .mainte_detail .text1{
padding: 2%;
background-color: #FFF
}
.maintenanse .mainte_detail .text1 img{
max-width: 100%
}
.maintenanse .bt_list{
padding-top: 30px;
}
.maintenanse .bt_list a{
width: 350px;
display: block;
margin: 0 auto;
border-bottom: #666 1px solid;
text-align: center
}
/*納骨業務ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.nokotsu{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1300px;
max-width: 90%;
margin: 0 auto;
line-height: 180%
}
.nokotsu .catch{
font-family: 'Noto Serif JP';
font-size: 2.3rem;
font-weight: 600;
width: 900px;
margin: 0 auto;
line-height: 200%;
letter-spacing: 0.2rem
}
.nokotsu dl{
padding-top: 150px;
}
.nokotsu dt {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 400;
  margin-bottom: 50px
  }
.nokotsu dt:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.nokotsu dd{
margin-left: 0;
margin-bottom: 100px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.nokotsu dd .com{
width: 63%;
}
.nokotsu dd .com .price{
border-left: 5px solid #850029;
margin: 20px 0;
padding-left: 15px;
color: #850029;
font-weight: 500
}
.nokotsu dd .com .subtitle{

}
.nokotsu dd .com .subtitle {
  position: relative;
  padding-left: 25px;
  font-weight: 600;
  padding-top: 50px;
  width: 300px;
  max-width: 90%;
  margin-bottom: 20px
}

.nokotsu dd .com .subtitle:before {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 0;
  width: 0;
  height: 0;
  border: none;
  border-left: solid 15px transparent;
  border-bottom: solid 15px rgb(000, 000, 000);
}
.nokotsu dd .com .subtitle:after {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 10px;
  width: 100%;
  border-bottom: solid 3px rgb(000, 000, 000);
}
.nokotsu dd .com .caution{
font-size: 1.4rem;
font-weight: 500
}
.nokotsu dd  .photo{
width: 30%;
border-radius: 10px;
overflow: hidden;
}
.nokotsu dd  .photo img{
width: 100%;
display: block
}
.nokotsu .box_shop{
border:#850029 1px solid;
padding: 3%;
}
.nokotsu .box_shop .title_shop{
color: #850029;
font-size: 2.5rem;
font-weight: 600;
padding-bottom: 50px;
text-align: center
}
.nokotsu .box_shop .flex_shop{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.nokotsu .box_shop .flex_shop .inner{
width: 45%;
border: #CCC 1px solid;
border-radius: 15px;
line-height: 200%;
padding: 2%;
background-color: #FFF;
font-size: 1.4rem
}
.nokotsu .box_shop .flex_shop .inner .shopname{
 position: relative;
 font-size: 2.0rem;
 font-weight: 600;
 padding-bottom: 10px
} 

.nokotsu .box_shop .flex_shop .inner .shopname:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 7px;
  background: -webkit-repeating-linear-gradient(-45deg, #850029, #850029 2px, #fff 2px, #fff 4px);
  background: repeating-linear-gradient(-45deg, #850029, #850029 2px, #fff 2px, #fff 4px);
}
.nokotsu .box_shop .flex_shop .inner a{
display: block;
color: #069;
font-weight: 500;
padding-top: 20px
}
/*墓じまいーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.hakajimai{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1300px;
max-width: 90%;
margin: 0 auto;
line-height: 180%
}
.hakajimai .catch{
font-family: 'Noto Serif JP';
font-size: 2.3rem;
font-weight: 600;
width: 900px;
margin: 0 auto;
line-height: 200%;
letter-spacing: 0.2rem
}
.hakajimai dl{
padding-top: 150px;
}
.hakajimai dt {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 400;
  margin-bottom: 50px
  }
.hakajimai dt:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.hakajimai dd{
margin-left: 0;
margin-bottom: 100px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.hakajimai dd .com{
width: 63%;
}
.hakajimai dd .com .price{
border-left: 5px solid #850029;
margin: 20px 0;
padding-left: 15px;
color: #850029;
font-weight: 500
}
.hakajimai dd .com li{
font-size: 1.6rem;
font-weight: 500;
display: block;
padding-bottom: 3px;
border-bottom: #666 1px dashed;
margin-bottom: 30px;
}
.hakajimai dd  .photo{
width: 30%;
border-radius: 10px;
overflow: hidden;
}
.hakajimai dd  .photo img{
width: 100%;
display: block
}
.hakajimai .text1{
font-size: 2.0rem;
font-weight: 600;
text-align: center;
padding: 50px 0;
}
.hakajimai .box_toiawase{
width: 850px;
max-width: 90%;
margin: 0 auto;
border-bottom: #850029 4px solid;
border-top: #850029 4px solid;
padding: 50px 0
}
.hakajimai .box_toiawase .bt a{
display: block;
background-color: #069;
color: #FFF;
font-size: 2.0rem;
font-weight: 600;
text-align: center;
padding: 15px 0;
width: 650px;
margin: 0 auto 50px auto;
transition: 0.5s
}
.hakajimai .box_toiawase .bt a:hover{
background-color: #850029
}
.hakajimai .box_toiawase .tel{
font-size: 3.5rem;
font-weight: 600;
text-align: center;
color: #069
}
.hakajimai .box_toiawase .tel a{
color: #069
}
/*施工事例ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.case{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1300px;
max-width: 90%;
margin: 0 auto;
line-height: 180%
}
.case .flex_case{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.case .flex_case::before{
  content:"";
  display: block;
  width:23%;
  order:1;
}
.case .flex_case::after{
  content:"";
  display: block;
  width:23%;
}
.case .flex_case a{
display: block;
width: 23%;
margin-bottom: 50px;
}
.case .casetitle{
background: #999;
text-align: center;
padding: 5px 0;
font-size: clamp(1.3rem,1.0rem,1.8rem);
font-weight: 500;
margin-bottom: 10px;
color: #FFF
}
.case .flex_case a .photo{
border-radius: 10px;
overflow: hidden;
margin-bottom: 15px;
border: #FFF 3px solid
}
.case .flex_case a .photo img{
width: 100%
}
.case .flex_case a .bt{
border: #666 1px solid;
font-size: 1.4rem;
text-align: center;
border-radius: 20px;
padding: 5px 0;
width: 80%;
margin: 0 auto
}
.case .flex_case a:hover .bt{
background-color:  #850029;
color: #FFF
}
.case .casetitle2{
background: #999;
text-align: center;
padding: 5px 0;
font-size: 1.8rem;
font-weight: 500;
margin-bottom: 10px;
color: #FFF
}
.case .casetitle2 .type{
background-color: #FFF;
color: #333;
display: inline-block;
padding: 2px 10px;
border-radius: 15px;
font-size: 1.4rem;
font-weight: 600;
text-align: center;
margin-right: 20px
}
.case .case_detail{
padding-top: 50px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
font-size: 1.4rem;
}
.case .case_detail .photo{
width: 30%;
}
.case .case_detail .photo img{
width: 100%;
border: #FFF 4px solid;
box-sizing: border-box
}
.case .case_detail .com{
width: 68%;
}
.case .case_detail .com .bosho{
font-size: 1.6rem;
font-weight: 600;
padding-bottom: 2px;
border-bottom: #666 1px solid
}
.case .case_detail .com .gaiyo{
padding: 30px 0;
}
.case .case_detail .subtitle {
  color: #010079;
  font-size: 1.6rem;
  font-weight: 600;
  text-shadow: 0 0 5px white;
  padding: 0.3em 0.5em;
  background: -webkit-repeating-linear-gradient(-45deg, #FFFFFF, #FFFFFF 3px,#e9f4ff 3px, #e9f4ff 7px);
  background: repeating-linear-gradient(-45deg, #FFFFFF, #FFFFFF 3px,#e9f4ff 3px, #e9f4ff 7px);
  margin-bottom: 20px
}
.case .case_detail table{
width: 100%;
margin-bottom: 50px;
}
.case .case_detail td{
border-bottom: #666 1px dotted;
padding: 20px 0 3px 0
}
.case .case_detail td:nth-child(1){
width: 20%
}
.case .singlepager{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 100px;
width: 80%;
margin: 0 auto
}
.case .singlepager a{
display: block;
background-color: #850029;
color: #FFF;
text-align: center;
width: 250px;
max-width: 40%;
padding: 5px 0;
font-weight: 500
}
/*墓地募集情報ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.bochi_cat{
width: 1200px;
max-width: 100%;
margin: 0 auto
}
.bochi_cat img{
width: 100%
}
.bochi{
padding: 100px 0;
font-family: 'Noto Sans JP';
line-height: 180%
}
.bochi .box1{
width: 1200px;
max-width: 90%;
margin: 0 auto 50px auto
}
.bochi .box1 .flex_bochi{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.bochi .box1 .flex_bochi a{
width: 46%;
margin-bottom: 50px;
border: #CCC 1px solid;
padding: 1%;
box-sizing: border-box;
transition: 0.5s
}
.bochi .box1 .flex_bochi a:hover{
background-color: #FFF
}
.bochi .box1 .bochicat{
background-color: #E5D9F1;
color: #7F5398;
font-size: 1.8rem;
font-weight: 500;
text-align: center;
padding: 10px 0
}
.bochi .box1 .bochititle{
font-size: 1.8rem;
 font-weight: 600;
 border-bottom: #666 2px solid;
 margin-bottom: 5px;
 text-align: center;
 padding: 5px 0
}
.bochi .box1 .flex_bochi a .photo{
width: 100%;
}
.bochi .box1 .flex_bochi a .photo img{
width: 100%;
height: 250px;
object-fit: cover;
}
.bochi .box1 .flex_bochi a .bt{
text-align: center;
font-weight: 500;
padding-top: 20px;
}
.bochi .box1 .entry{
background-color: #FFF;
border:#F5A76C 1px solid;
padding: 15px 60px;
font-size: 2.0rem;
font-weight: 500;
width: 600px;
margin-bottom: 50px;
color: #F5A76C;
margin: 0 auto 50px auto;
text-align: center
}
.bochi .box1 .text1{
padding-bottom: 50px
}
.bochi .box1 .bochi_detail .photo{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 50px
}
.bochi .box1 .bochi_detail .photo a{
width: 32%;
display: block
}
.bochi .box1 .bochi_detail .photo a img{
width: 100%
}
.bochi .box1 .bochi_detail table{
width: 100%;
border-collapse: collapse;
}
.bochi .box1 .bochi_detail table td{
border: #CCC 1px solid;
padding: 1%;
font-size: 1.5rem
}
.bochi .box1 .bochi_detail table td:nth-child(1){
width: 20%
}
.bochi .box1 .bochi_detail table td .bosyunaiyo{
background-color: #FFF;
padding: 2%;
margin-bottom: 30px
}
.bochi .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 500;
  margin-bottom: 50px;
  color:#A668C1;
  padding-top: 100px;
  }
.bochi .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
/*ユーチューブ動画ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.movie{
padding: 100px 0;
font-family: 'Noto Sans JP';
margin: 0 auto;
line-height: 180%
}
.movie .flex_movie{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1400px;
max-width: 90%;
background-color: #000;
padding: 3%;
margin: 0 auto;
}
.movie .flex_movie .inner{
width: 23%;
margin-bottom: 30px;
}
/*会社案内ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.company{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.company .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 400;
  margin-bottom: 50px
  }
.company .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.company .gaiyo{
width: 1000px;
max-width: 100%;
margin: 0 auto;
padding-bottom: 100px
}
.company .gaiyo table{
width: 100%;
border-collapse: collapse
}
.company .gaiyo table td{
padding: 1%;
border-bottom: #999 1px dotted;
font-size: 1.5rem;
padding-top: 20px
}
.company .gaiyo table td:nth-child(1){
width: 25%
}
.company .gaiyo table td a{
padding-top: 20px;
font-size: 1.8rem;
font-weight: 500;
color: #00C;
}
.company .gaiyo table td a img{
width: 400px;
max-width: 100%;
padding: 5px 0
}

/*よくある質問-----------------------------------------*/
.faq{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.faq .box_faq{
width: 1100px;
max-width: 90%;
margin: 0 auto 100px auto

}
.faq .box_faq .inner{
border-bottom: 1px #999 dashed;
margin-bottom: 50px;
}
.faq .box_faq .inner .question{
  position: relative;
  padding: 0.6em;
  background: #FFF;
  font-size: 1.6rem;
  font-weight: 600
}

.faq .box_faq .inner .question:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #FFF;
  width: 0;
  height: 0;
}
.faq .box_faq .inner .answer{
font-size: 1.4rem;
line-height: 180%;
padding-top: 20px
}
.faq .pager{
text-align: center;
font-size: 2.2rem;
font-weight: 600
}
.faq .pager a{
display: inline-block;
border: #81512c 1px solid;
color: #850029;
padding: 2px 5px;
margin: 0 2px
}
.faq .pager .current{
display: inline-block;
background-color: #850029;
color: #FFF;
padding: 2px 5px;
margin: 0 2px
}
/*ブログーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.blog{
padding: 0 0 100px 0;
font-family: 'Noto Sans JP';
line-height: 180%
}
.blog .article{
width: 68%;
}
.blog .box_blog{
width: 1300px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 100px
}
.blog .flex_blog{
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.blog .flex_blog::after{
  content:"";
  display: block;
  width:30%;
}
.blog .flex_blog .inner{
display: block;
width: 30%;
transition: 0.8s;
margin-bottom: 30px;
font-size: 1.3rem;
padding: 1%;
border: #CCC 1px solid
}
.blog .flex_blog .inner .photo{
margin-bottom: 4px;
overflow: hidden
}
.blog .flex_blog .inner .photo img{
width: 100%;
height: 180px;
object-fit: cover
}
.blog .flex_blog .inner .blogtitle{
font-size: 1.6rem;
font-weight: 600;
color: #666;
padding:0 2% 2px 2%
}
.blog .flex_blog .inner .date{
font-size: 1.2rem;
padding: 0 2%
}
.blog .flex_blog .inner .com{
padding: 2%;
font-size: 1.3rem;
}
.blog .flex_blog .inner .com img{
display: none
}
.blog .flex_blog .inner a{
display: block;
color: #069;
font-weight: 500;
font-size: 1.6rem
}
.blog .pager a{
display: inline-block;
border: #069 1px solid;
padding: 2px 10px;
margin-right: 3px;
}
.blog .pager .current{
display: inline-block;
background-color: #069;
color: #FFF;
padding: 2px 10px;
margin-right: 3px;
}
.blog .termname{
font-size: 2.0rem;
font-weight: 500;
padding-bottom: 3px;
border-bottom: #CCC 3px solid;
margin-bottom: 50px
}
.blog .blog_detail{
width: 1300px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 100px
}
.blog .article{
width: 68%;
font-size: 1.4rem;
}
.blog .blog_detail .article .blogtitle{
font-size: 1.8rem;
padding-bottom: 3px;
border-bottom: 3px #999 solid;
margin-bottom: 50px
}
.blog .blog_detail .article .date{
font-size: 1.3rem;
margin-bottom: 40px
}
.blog .blog_detail .article img{
max-width: 90%
}
.blog .blog_detail .article .singlepager{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 100px;
width: 80%;
margin: 0 auto
}
.blog .blog_detail .article .singlepager a{
display: block;
background-color: #850029;
color: #FFF;
text-align: center;
width: 250px;
max-width: 40%;
padding: 5px 0;
font-weight: 500
}
.blog .aside{
width: 28%;
}
.blog .aside .category li{
display: block;
margin-bottom: 20px;
}
.blog .aside .category li a{
display: block;
background-color: #069;
color: #FFF;
font-size: 1.6rem;
padding: 3px 0;
text-align: center;
transition: 0.5s;
}
.blog .aside .category li a:hover{
background-color: #036
}
.blog .blog_detail .aside .newe{

}
.blog .blog_detail .aside a{
font-size: 1.4rem;
display: block;
border-bottom: #069 1px solid;
margin-bottom: 20px;
color: #069;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.blog .blog_detail .aside a .com{
width: 65%
}
.blog .blog_detail .aside a .photo{
width: 30%;
padding-bottom: 10px
}
.blog .blog_detail .aside a .photo img{
width: 100%;
height: 80px;
object-fit: cover
}
.blog .blog_detail .aside a .date{
font-size: 1.2rem
}
/*お問い合わせ-----------------------------------------*/
.contact{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.contact .box1{
	width:800px;
	max-width: 90%;
	margin-left:auto;
	margin-right:auto;
	font-size:2.0rem; 
    font-weight: 600;
	padding:20px 0 100px 0; 
	line-height:160%;
	text-align: center;
    line-height: 180%
}
.contact .box_form{
font-size: 1.5rem
}
.contact table{
	width:100%;
	border-collapse:collapse;
	margin:0;
}

.contact table td{
	border-bottom:#999 1px dotted;
	padding:30px 1% 2% 1%;
    margin-bottom: 20px;
    font-weight: 400
}
.contact table td:nth-child(1){
width: 25%
}

.contact table textarea {
width: 80%;
height: 10em;
	border:#CCC 1px solid;
}
.contact table select{
height: 25px;
}
.contact table label{
	display:block;
}
.contact table input[type="email"]{
	width:60%;
	border:#CCC 1px solid;
	height: 25px;
}
.contact table input[type="text"]{
	width:60%;
	border:#CCC 1px solid;
	height: 25px;
}

.contact a{
display: block;
font-size: 1.8rem;
color: #900;
font-weight: 600;
text-decoration: underline;
margin: 20px 0;
padding: 0 20px
}
.contact input[type="submit"]{
	width:400px;
	border:#FFF 1px solid;
	background-color:#069;
	text-align:center;
	font-weight:bold;
	font-size:16px;
	color:#FFF;;
	padding:10px 0;
	margin-top:30px;
	margin-bottom:30px;
	display:block;
	cursor:pointer;
	margin-left:auto;
	margin-right:auto;
}
.contact input[type="submit"]:hover{
	background-color:#4284c0;
}

/*個人情報-----------------------------------------*/
.privacy{
padding: 100px 0 0 0;
font-family: 'Noto Serif JP';
width: 1000px;
max-width: 90%;
margin: 0 auto
}

.privacy dl{
margin-bottom: 100px;
border: #666 1px solid;
padding: 2%
}
.privacy dt{
font-size: 1.8rem;
font-weight: 600;
margin: 30px 0;
position: relative;
}
.privacy dd{
margin-left: 0;
font-size: 1.6rem;
margin-bottom: 50px;
padding-bottom: 2px;
border-bottom: #666 1px dashed
}


}
/*===============================================
●スマホれいあうと設定 画面の横幅が650px以下
===============================================*/
@media screen and  (max-width: 650px){
/*メイン画像ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.index{
position: relative;
font-family: 'Noto Sans JP';
}

.index .main{
position: relative;
height: 98vh
}
.index .main img{
width: 100%
}
.index .main .box_catch{
width: 100%;
position: absolute;
top: 17%;
left: 35%;
width: 10vw;
}
.index .main .text_catch1{
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size: 2.8rem;
color: #FFF;
font-weight: 600;
  text-shadow:2px 2px 0 #000, -2px -2px 0 #000,
              -2px 2px 0 #000, 2px -2px 0 #000,
              0px 2px 0 #000,  0-2px 0 #000,
              -2px 0 0 #000, 2px 0 0 #000;
padding-top: 1vw;
font-family: 'Noto Serif JP';
}
.index .box1{
background-color: #f4f4f4;
position: relative
}
.index .box1 img{
width: 100%
}
.index .box1 .com{
width: 90%;
margin: 0 auto;
padding: 50px 0;
 line-height: 200%;
font-size: 1.6rem;
}
.index .box1 .com .catch2{
font-size: 2.5rem;
font-weight: 600;
padding-bottom: 2.0vw
}
.index .box1 .com a{
display: block;
width: 100%;
padding-top: 30px
}
.index .box1 .com a img{
width: 100%
}
.index .box2{
background-color: #FFF;
padding: 50px 0;
}
.index .box2 .subtitle{
font-size: 2.5rem;
font-weight: 600;
text-align: center;
margin-bottom: 100px;
}
.index .box2 .subtitle .text16{
padding-top: 30px;
font-size: 1.8rem
}
.index .box2 .flex_box2{
width:80%;
margin: 0 auto;
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .flex_box2 a{
display: block;
width: 100%;
margin-bottom: 30px;
font-size: 1.2rem;

}
.index .flex_box2 a .photo{
margin-bottom: 4px;
overflow: hidden
}
.index .flex_box2 a .photo img{
width: 100%;
height: 220px;
object-fit: cover
}
.index .flex_box2 a .name{
font-size: 1.8rem;
font-weight: 500;
padding-bottom: 2px;
border-bottom: 2px solid #333;
}
.index .flex_box2 a .price{
font-size: 2.0rem;
color: #900;
font-weight: 600
}
.index .box2 .right .flex_right a .bt{
width: 70%;
font-size: 1.4rem;
color: #069;
padding-bottom: 2px;
border-bottom: #069 1px solid;
margin: 10px 0 0 auto;
text-align: right
}
.index .box2 .bt{
width: 900px;
max-width: 90%;
margin: 50px auto
}
.index .box2 .bt a{
display: block;
border: #850029 1px solid;
color: #850029;
text-align: center;
font-size: 2.0rem;
font-weight: 500;
padding: 20px 0;
transition: 0.5s
}
.index .box2 .bt a:hover{
background-color: #850029;
color: #FFF
}
.index .box2 .box2_b{
margin: 0 auto;
font-size: 2.0rem;
width: 900px;
max-width: 90%;
border-bottom: #999 4px solid;
border-top: #999 4px solid;
padding: 30px 0
}
.index .box3{

}
.index .box3 img{
width: 100%
}
.index .box_blog{
background-color: #f4f4f4;
padding: 50px 0;
}
.index .box_blog .subtitle{
font-size: 2.8rem;
font-weight: 600;
text-align: center;
margin-bottom: 30px;
}
.index .flex_blog{
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.index .flex_blog a{
display: block;
transition: 0.8s;
margin-bottom: 30px;
}
.index .flex_blog a .photo{
margin-bottom: 4px;
overflow: hidden
}
.index .flex_blog a .photo img{
width: 100%;
height: 200px;
object-fit: cover
}
.index .flex_blog a .blogtitle{
font-size: 1.6rem;
font-weight: 600;
color: #666;
padding:0 2% 2px 2%
}
.index .flex_blog a .date{
font-size: 1.2rem;
padding: 0 2%
}
.index .flex_blog a .com{
padding: 2%;
font-size: 1.4rem;
}
.index .box_blog .bt{
width: 900px;
max-width: 90%;
margin: 50px auto
}
.index .box_blog .bt a{
display: block;
border: #850029 1px solid;
color: #850029;
text-align: center;
font-size: 2.0rem;
font-weight: 500;
padding: 20px 0;
transition: 0.5s
}
.index .box4{
background-color: #f4f4f4;
padding: 50px 0;
background-image:url("../images/index/bg_box4.jpg")
}
.index .box4 .flex_box4{
width: 90%;
margin: 0 auto
}
.index .box4 .flex_box4 .left{
line-height: 180%;
margin-bottom: 30px
}
.index .box4 .flex_box4 .left .subtitle{
font-size: 2.0rem;
font-weight: 600;
text-align: center;
margin-bottom: 30px;
}
.index .box4 .flex_box4 .left .text_left{

}
.index .box4 .com{

}
.index .box4 .com a{
display: block;
margin-bottom: 15px
}
.index .box4 .com a img{
width: 100%
}
.index .box5{
background-color: #000;
padding: 50px 0;
}
.index .box5 .subtitle{
font-size: 2.5rem;
font-weight: 600;
text-align: center;
margin-bottom: 30px;
color: #FFF
}
.index .box5 .flex_movie{
width: 80%;
margin: 0 auto
}
.index .box5 .flex_movie .inner{
margin-bottom: 20px;
}
.index .box5 .bt a{
display: block;
border: #850029 1px solid;
color: #850029;
text-align: center;
font-size: 2.0rem;
font-weight: 500;
padding: 20px 0;
width: 80%;
margin: 15px auto;
transition: 0.5s;
background-color: #FFF
}
.index .box5 .bt a:hover{
background-color:#850029;
color: #FFF
}
.index .box6{
padding: 50px 0;
background-color: #FFF
}
.index .box6 .flex_box6{
width: 90%;
margin: 0 auto;
border-top: 4px solid #850029;
padding-top: 30px;
}
.index .box6 .flex_box6 .inner{
margin-bottom: 50px
}
.index .box6 .flex_box6 .inner .compname{
font-size: 2.2rem;
font-weight: 600;
padding-bottom: 20px
}
.index .box6 .flex_box6 .inner .tel{
font-size: 3.5rem;
font-weight: 600;
color: #850029;
padding: 30px 0;
text-align: center
}
.index .box6 .flex_box6 .inner .mail{
padding-top: 20px;
}
.index .box6 .flex_box6 .inner .mail a{
display: block;
border: #850029 1px solid;
color: #850029;
text-align: center;
font-size: 2.0rem;
font-weight: 500;
padding: 20px 0;
transition: 0.5s
}
.index .box6 .flex_box6 .inner .mail a:hover{
background-color:#850029;
color: #FFF
}
.index .box6 .flex_box6 .inner .sns{
padding-top: 30px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.index .box6 .flex_box6 .inner .sns a{
display: block;
width: 33%;
text-align: center
}
.index .box6 .flex_box6 .inner .sns .line{
color: #70B069
}
.index .box6 .flex_box6 .inner .sns .insta{
color:#F9751B
}
.index .box6 .flex_box6 .inner .sns .yutube{
color:#D9060A
}
.index .box6 .flex_box6 .inner .sns i{
font-size: 18vw
}

.flex_box6 .inner .map{
padding-top: 20px
}
.index .box7 img{
width: 100%
}
/*早野石材店についてーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.about{
padding: 0 0 100px 0;
font-family: 'Noto Sans JP';
line-height: 180%
}
.about .box1{
background-image: url("../images/about/bg_box1.png");
background-position: top center;
padding-top: 50px;
padding-bottom: 50px;
margin-bottom: 50px;
}
.about .box1 .flex_box1{
width: 1300px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.about .box1 .flex_box1 .com{
width: 90%;
padding: 2%;
font-size: 1.6rem;
font-weight: 500;
line-height: 200%;
margin-bottom: 30px
}
.about .box1 .flex_box1 .photo{
width: 80%;
margin: 0 auto;
}
.about .box1 .flex_box1 .photo img{
width: 100%;
border-radius: 15px;
}
.about .box2{
width: 1300px;
max-width: 90%;
margin: 0 auto;
}
.about .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 400;
  margin-bottom: 50px
  }
.about .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.about .flex_point{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.about .flex_point .inner{
width: 100%;
box-sizing: border-box;
margin-bottom: 30px;
background-color: #FFF;
padding: 2%;
}
.about .box2 .flex_point .inner .subtitle2 {
  color: #505050;/*文字色*/
  padding: 0.5em;/*文字周りの余白*/
  background: #dbebf8;/*背景色*/
  vertical-align: middle;
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: 20px;
}

.about .box2 .flex_point .inner .subtitle2 .num{
display: none
}
.about .box2 .flex_point .inner a{
display: block;
padding-top: 20px;
color: #C00;
font-weight: 600;
text-decoration: underline
}
/*墓石販売ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.forsale{
padding: 50px 0;
font-family: 'Noto Sans JP';
width: 90%;
margin: 0 auto;
line-height: 180%
}
.forsale .nav_term{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 30px
}
.forsale .nav_term a{
display: block;
width: 50%;
box-sizing: border-box;
border: #850029 1px solid;
color: #850029;
font-size: 1.6rem;
text-align: center;
padding: 5px 0;
transition: 0.5s
}
.forsale .nav_term a:hover{
background-color: #850029;
color: #FFF
}
.forsale .box1{
max-width: 90%;
margin: 0 auto 100px auto;
}
.forsale .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 500;
  margin-bottom: 50px;
  color:#A668C1
  }
.forsale .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.forsale .flex_sale{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.forsale .flex_sale::before{
  content:"";
  display: block;
  width:23%;
  order:1;
}
.forsale .flex_sale::after{
  content:"";
  display: block;
  width:23%;
}
.forsale .flex_sale a{
display: block;
width: 95%;
padding: 1%;
margin-bottom: 50px;
font-size: 1.5rem;
transition: 0.5s
}
.forsale .flex_sale a:hover{
background-color: #FFF
}
.forsale .flex_sale a .photo{
width: 100%;
margin-bottom: 10px;
border: #FFF 2px solid;
box-sizing: border-box
}
.forsale .flex_sale a .photo img{
width: 100%;
height: 180px;
object-fit: cover
}
.forsale .flex_sale a .saletitle{
font-weight: 600;
padding-bottom: 3px;
border-bottom: #666 3px solid;
margin-bottom: 10px;
font-size: 2.2rem
}
.forsale .flex_sale a .saletitle .menseki{
font-size: 1.4rem
}
.forsale .flex_sale a .price{
font-size: 2.2rem;
font-weight: 600;
color: #D04A0E;
border-bottom:#D04A0E 4px double
}
.forsale .bt_all a{
display: block;
width: 80%;
margin: 0 auto;
border: #850029 1px solid;
color: #850029;
font-size: 1.6rem;
text-align: center;
padding: 5px 0;
transition: 0.5s
}
.forsale .bt_all a:hover{
background-color:#850029;
color: #FFF
}

.forsale .saletitle2{
background: #999;
text-align: center;
padding: 5px 0;
font-size: 1.8rem;
font-weight: 500;
margin-bottom: 10px;
color: #FFF
}
.forsale .saletitle2 .type{
background-color: #FFF;
color: #333;
display: inline-block;
padding: 2px 10px;
border-radius: 15px;
font-size: 1.4rem;
font-weight: 600;
text-align: center;
margin-right: 20px
}
.forsale .sale_detail{
padding-top: 50px;
display: flex;
flex-wrap: wrap;
justify-content: center;
font-size: 1.4rem;
}
.forsale .sale_detail .photo{
width: 80%;
margin: 0 auto
}
.forsale .sale_detail .photo img{
width: 100%;
border: #FFF 4px solid;
box-sizing: border-box
}
.forsale .sale_detail .com{
padding-top: 30px
}
.forsale .sale_detail .com .box_price{
padding-top: 50px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
border-bottom:#D04A0E 4px double
}
.forsale .sale_detail .com .box_price .price{
font-size: 2.5rem;
font-weight: 600;
color: #D04A0E;
width: 60%;
text-align: right;
}
.forsale .sale_detail .com .box_price .menseki{
font-size: 1.8rem;
font-weight: 600;
width: 40%
}
.forsale .sale_detail .com .gaiyo{
padding: 30px 0;
}
.forsale .sale_detail table{
width: 100%;
margin-bottom: 50px;
}
.forsale .sale_detail td{
display: block;
font-size: 1.8rem
}
.forsale .sale_detail td:nth-child(1){
font-weight: 600;
margin-bottom: 3px;
}
.forsale .sale_detail td:nth-child(2){
border-bottom:#666 1px solid;
margin-bottom: 30px;
}
.forsale .singlepager{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 50px;
}
.forsale .singlepager a{
display: block;
background-color: #999;
color: #FFF;
text-align: center;
width: 250px;
max-width: 40%;
padding: 5px 0;
font-weight: 500
}
.forsale .bt_list{
padding-top: 30px;
}
.forsale .bt_list a{
width: 350px;
display: block;
margin: 0 auto;
border-bottom: #666 1px solid;
text-align: center
}
/*メンテナンスーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.maintenanse{
padding: 50px 0;
font-family: 'Noto Sans JP';
width: 90%;
margin: 0 auto;
line-height: 180%
}
.maintenanse .box_lead{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 90%;
margin: 0 auto 50px auto;
}
.maintenanse .box_lead .com{
width: 100%;
}
.maintenanse .box_lead .com a{
display: block;
width: 90%;
border: #850029 1px solid;
text-align: center;
color: #850029;
padding: 10px 0;
transition: 0.5s;
margin: 30px auto
}
.maintenanse .box_lead .photo{
width: 80%;
margin: 0 auto;
border-radius: 10px;
overflow: hidden
}
.maintenanse .box_lead .photo img{
width: 100%;
}
.maintenanse .box1{
width:90%;
margin: 0 auto 50px auto;
}
.maintenanse .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 500;
  margin-bottom: 50px;
  color:#A668C1
  }
.maintenanse .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.maintenanse .flex_mainte{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.maintenanse .flex_mainte a{
display: block;
border: #CCC 1px solid;
padding: 3%;
width: 100%;
box-sizing: border-box;
margin-bottom: 50px
}
.maintenanse .maintetitle{
font-weight: 600;
padding-bottom: 3px;
border-bottom: #666 3px solid;
margin-bottom: 10px;
font-size: 2.0rem
}
.maintenanse .flex_mainte a .photo{
width: 100%;
padding-bottom: 10px
}
.maintenanse .flex_mainte a .photo img{
width: 100%;
height:350px;
object-fit: cover
}
.maintenanse .flex_mainte a .bt{
text-align: center;
font-weight: 500
}
.maintenanse .mainte_detail .flex_photo{
width: 100%;
margin: 0 auto 50px auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
padding-top: 50px
}
.maintenanse .mainte_detail .flex_photo .photo{
border: #FFF 3px solid;
text-align: center;
font-size: 2.2rem;
font-weight: bold;
padding: 3%;
width: 100%;
box-sizing: border-box;
margin-bottom: 30px
}
.maintenanse .mainte_detail .flex_photo .photo img{
width: 100%;
display: block;
}
.maintenanse .mainte_detail .text1{
width: 100%;
box-sizing: border-box;
font-size: 1.8rem;
}
.maintenanse .mainte_detail .text1 img{
max-width: 100%
}
.maintenanse .bt_list{
padding-top: 30px;
width: 70%;
margin: 0 auto
}
.maintenanse .bt_list a{
display: block;
margin: 0 auto;
border-bottom: #666 1px solid;
text-align: center;
font-size: 2.2rem;
}
/*お墓の作り方ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.ohakacontents{
padding: 50px 0;
font-family: 'Noto Sans JP';
width:  90%;
margin: 0 auto;
line-height: 180%;
font-size: 1.8rem
}
.ohakamenu{
padding-bottom: 100px;
}
.ohakamenu .inner{
margin-bottom: 15px;
}
.ohakamenu a{
display: block;
position: relative;
padding: 0.6em;
background: #9AC3F9;
color:#FFF;
transition: 0.5s;
width: 100%;
box-sizing: border-box;
font-weight: 600
}
.ohakamenu a:hover{
background: #850029;
}
.ohakamenu .active a{
background: #850029;
}

.ohakacontents .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 400;
  margin-bottom: 50px
  }
.ohakacontents .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.ohakacontents .flex_ohaka{
padding-bottom: 50px;
}
.ohakacontents .flex_ohaka .com{
margin-bottom: 20px
}
.ohakacontents .flex_ohaka .photo{
width: 80%;
margin: 0 auto
}
.ohakacontents .flex_ohaka .photo img{
width: 100%;
display: block;
border-radius: 8px;
border: 2px #FFF solid
}
.ohakacontents .box1{
border: #D8CCE7 1px solid;
padding: 2%;
border-radius: 5px;
font-size: 1.6rem;
 font-weight: 500;
line-height: 200%;
margin-bottom: 50px
}
.ohakacontents .subtitle2{
font-size: 2.0rem;
 font-weight: 600;
 color: #850029;
 margin-bottom: 30px
}
.ohakacontents .box3{
font-size: 2.2rem;
font-weight: 600;
line-height: 180%;
width: 1100px;
max-width: 100%;
margin: 0 auto 100px auto
}
.ohakacontents .box_price{
margin-bottom: 100px;
}
.ohakacontents .box_price table{
width: 100%;
border-collapse: collapse
}
.ohakacontents .box_price table td{
padding: 1%;border: #666 1px solid
}
.ohakacontents .box_price table td:nth-child(1){
background-color: #DDD;
font-weight: 600;
width: 20%;
vertical-align: middle
}
.ohakacontents .box_price table td:nth-child(2){
background-color: #FFF
}
.ohakacontents .box_price table td .text1{
font-size: 1.8rem;
font-weight: 600;
color: #850029;
padding: 10px 0
}
.ohakacontents .flex_ohaka2{
margin-bottom: 50px
}
.ohakacontents .flex_ohaka2 .inner{
width: 100%;
border-radius: 5px;
margin-bottom: 30px;
overflow: hidden
}
.ohakacontents .flex_ohaka2 .inner .subtitle2{
text-align: center;
background-color:#FFF;
color: #850029;
padding: 10px 0;
margin: 15px;
}
.ohakacontents .flex_ohaka2 .inner .photo{
width: 90%;
margin: 0 auto
}
.ohakacontents .flex_ohaka2 .inner .photo img{
width: 100%;
}
.ohakacontents .flex_ohaka2 .inner .com{
padding: 2%;
font-size: 1.4rem
}
.ohakacontents .flex_ohaka3{
margin-bottom: 50px
}
.ohakacontents .flex_ohaka3 .merit{
padding: 4%;
background-color: #E0E8D6;
border-radius: 10px;
margin-bottom: 30px

}
.ohakacontents .flex_ohaka3 .merit p{
color: #5A933A;
font-size: 2.0rem;
font-weight: 600;
text-align: center;
padding-bottom: 20px;
margin: 0
}
.ohakacontents .flex_ohaka3 .demerit{
padding: 4%;
background-color:#EBD7B8;
border-radius: 10px;

}
.ohakacontents .flex_ohaka3 .demerit p{
color:#DC8126;
font-size: 2.0rem;
font-weight: 600;
text-align: center;
padding-bottom: 20px;
margin: 0
}
.ohakacontents .flex_ohaka3 li{
display: block;
padding-bottom: 3px;
border-bottom: #333 1px dashed;
margin-bottom: 15px
}
.ohakacontents .box_taishin{
border-bottom: #850029 1px solid;
margin-bottom: 100px;
}
.ohakacontents .flex_ohaka dt {
  position: relative;
  padding-left: 1.2em;/*アイコン分のスペース*/
  line-height: 1.4;
  font-size: 2.0rem;
  font-weight: 600
}

.ohakacontents .flex_ohaka dt:before {
  font-family: FontAwesome;
  content: '\f058'; /* アイコンのunicode */
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1em;/*サイズ*/
  left: 0;/*アイコンの位置*/
  top: 0;/*アイコンの位置*/
  color: #5ab9ff; /*アイコン色*/
  font-weight: 900;
}
.ohakacontents .flex_ohaka dd{
margin-bottom: 30px
}
.ohakacontents .box_taishin .title_taishin{
 position: relative;
  padding: 1.5rem;
  text-align: center;
  font-size: 2.5rem;
  font-weight: 600;
  margin-bottom: 50px
}

.ohakacontents .box_taishin .title_taishin:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 8px;
  content: '';
  border-radius: 3px;
  background: #850029;
}
.ohakacontents .box_taishin .flex_taishin{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 40px 0 20px 0
}
.ohakacontents .box_taishin .flex_taishin .photo{
width: 31%;
}
.ohakacontents .box_taishin .flex_taishin .photo img{
width: 100%;
display: block;
border-radius: 8px;
border: 2px #FFF solid;
}
.ohakacontents ol li{
font-weight: 600;
border-bottom: #333 1px dotted;
margin-bottom: 30px
}
.ohakacontents .rorne{
padding: 30px 0;
}
.ohakacontents .rorne table{
width: 100%;
}
.ohakacontents .rorne td{
padding: 1%;
border: #666 1px solid;
}
.ohakacontents .rorne td:nth-child(1){
width: 20%;
background-color: #FFF;
color:#DC8126;
text-align: center
}
.ohakacontents .joken dt{
background-color: #850029;
color: #FFF;
font-size: 2.0rem;
font-weight: 600;
padding: 3px 3px 3px 15px;
width: 200px;
max-width: 100%
}
.ohakacontents .joken dd{
margin-bottom: 50px;
margin-left: 0;
border:#850029 1px solid
}
.ohakacontents .joken dd .com{
padding: 4%;
margin-bottom: 20px
}
.ohakacontents .joken dd .photo{
width: 80%;
border: none;
margin: 0 auto
}
.ohakacontents .joken dd .photo img{
width: 100%
}
/*納骨業務ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.nokotsu{
padding: 50px 0;
font-family: 'Noto Sans JP';
width: 90%;
margin: 0 auto;
line-height: 180%
}
.nokotsu .catch{
font-family: 'Noto Serif JP';
font-size: 2.0rem;
font-weight: 600;
line-height: 200%;
}
.nokotsu dl{
padding-top: 100px;
}
.nokotsu dt {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 600;
  margin-bottom: 50px
  }
.nokotsu dt:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.nokotsu dd{
margin-left: 0;
margin-bottom: 100px;
display: flex;
flex-wrap: wrap;
justify-content: center;
font-size: 1.8rem;
}
.nokotsu dd .com{
margin-bottom: 20px
}
.nokotsu dd .com .price{
border-left: 5px solid #850029;
margin: 20px 0;
padding-left: 15px;
color: #850029;
font-weight: 500
}
.nokotsu dd .com .subtitle {
  position: relative;
  padding-left: 25px;
  font-weight: 600;
  padding-top: 50px;
  width: 90%;
  margin-bottom: 20px
}

.nokotsu dd .com .subtitle:before {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 0;
  width: 0;
  height: 0;
  border: none;
  border-left: solid 15px transparent;
  border-bottom: solid 15px rgb(000, 000, 000);
}
.nokotsu dd .com .subtitle:after {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 10px;
  width: 100%;
  border-bottom: solid 3px rgb(000, 000, 000);
}
.nokotsu dd .com .caution{
font-size: 1.4rem;
font-weight: 500
}
.nokotsu dd  .photo{
width: 80%;
margin: 0 auto;
border-radius: 10px;
overflow: hidden;
}
.nokotsu dd  .photo img{
width: 100%;
display: block
}
.nokotsu .box_shop{

}
.nokotsu .box_shop .title_shop{
color: #850029;
font-size: 2.0rem;
font-weight: 600;
padding-bottom: 30px;
text-align: center
}
.nokotsu .box_shop .flex_shop{

}
.nokotsu .box_shop .flex_shop .inner{
margin-bottom: 30px;
border: #CCC 1px solid;
border-radius: 15px;
line-height: 200%;
padding: 5%;
background-color: #FFF;
font-size: 1.4rem
}
.nokotsu .box_shop .flex_shop .inner .shopname{
 position: relative;
 font-size: 1.8rem;
 font-weight: 600;
 padding-bottom: 10px
} 

.nokotsu .box_shop .flex_shop .inner .shopname:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 7px;
  background: -webkit-repeating-linear-gradient(-45deg, #850029, #850029 2px, #fff 2px, #fff 4px);
  background: repeating-linear-gradient(-45deg, #850029, #850029 2px, #fff 2px, #fff 4px);
}
.nokotsu .box_shop .flex_shop .inner a{
display: block;
color: #069;
font-weight: 500;
padding-top: 20px
}
/*墓じまいーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.hakajimai{
padding: 50px 0;
font-family: 'Noto Sans JP';
width: 90%;
margin: 0 auto;
line-height: 180%
}
.hakajimai .catch{
font-family: 'Noto Serif JP';
font-size: 2.0rem;
font-weight: 600;
line-height: 200%;
}
.hakajimai dl{
padding-top: 100px;
}

.hakajimai dt {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 600;
  margin-bottom: 50px
  }
.hakajimai dt:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.hakajimai dd{
margin-left: 0;
margin-bottom: 100px;
display: flex;
flex-wrap: wrap;
justify-content: center;
font-size: 1.8rem
}
.hakajimai dd .com{
margin-top: 20px
}
.hakajimai dd .com .price{
border-left: 5px solid #850029;
margin: 20px 0;
padding-left: 15px;
color: #850029;
font-weight: 500
}
.hakajimai dd .com li{
font-weight: 500;
display: block;
padding-bottom: 3px;
border-bottom: #666 1px dashed;
margin-bottom: 30px;
}
.hakajimai dd  .photo{
width: 80%;
margin: 0 auto;
border-radius: 10px;
overflow: hidden;
}
.hakajimai dd  .photo img{
width: 100%;
display: block
}
.hakajimai .text1{
font-size: 2.0rem;
font-weight: 600;
padding: 50px 0;
}
.hakajimai .box_toiawase{
margin: 0 auto;
border-bottom: #850029 4px solid;
border-top: #850029 4px solid;
padding: 50px 0
}
.hakajimai .box_toiawase .bt a{
display: block;
background-color: #069;
color: #FFF;
font-size: 2.0rem;
font-weight: 600;
text-align: center;
padding: 15px 0;
width: 80%;
margin: 0 auto 50px auto;
transition: 0.5s
}
.hakajimai .box_toiawase .bt a:hover{
background-color: #850029
}
.hakajimai .box_toiawase .tel{
font-size: 3.0rem;
font-weight: 600;
text-align: center;
color: #069
}
.hakajimai .box_toiawase .tel a{
color: #069
}
/*施工事例ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.case{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1300px;
max-width: 90%;
margin: 0 auto;
line-height: 180%
}
.case .flex_case{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.case .flex_case a{
display: block;
width: 90%;
margin-bottom: 50px;
}
.case .casetitle{
background: #999;
text-align: center;
padding: 5px 0;
font-size: 1.8rem;
font-weight: 500;
margin-bottom: 10px;
color: #FFF
}
.case .flex_case a .photo{
border-radius: 10px;
overflow: hidden;
margin-bottom: 15px;
border: #FFF 3px solid
}
.case .flex_case a .photo img{
width: 100%
}
.case .flex_case a .bt{
border: #666 1px solid;
font-size: 1.4rem;
text-align: center;
border-radius: 20px;
padding: 5px 0;
width: 80%;
margin: 0 auto
}
.case .flex_case a:hover .bt{
background-color:  #850029;
color: #FFF
}
.case .casetitle2{
background: #999;
text-align: center;
padding: 5px 0;
font-size: 1.8rem;
font-weight: 500;
margin-bottom: 10px;
color: #FFF
}
.case .casetitle2 .type{
background-color: #FFF;
color: #333;
display: inline-block;
padding: 2px 10px;
border-radius: 15px;
font-size: 1.4rem;
font-weight: 600;
text-align: center;
margin-right: 20px
}
.case .case_detail{
padding-top: 50px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
font-size: 1.4rem;
}
.case .case_detail .photo{
width: 30%;
}
.case .case_detail .photo img{
width: 100%;
border: #FFF 4px solid;
box-sizing: border-box
}
.case .case_detail .com{
width: 68%;
}
.case .case_detail .com .bosho{
font-size: 1.6rem;
font-weight: 600;
padding-bottom: 2px;
border-bottom: #666 1px solid
}
.case .case_detail .com .gaiyo{
padding: 30px 0;
}
.case .case_detail .subtitle {
  color: #010079;
  font-size: 1.6rem;
  font-weight: 600;
  text-shadow: 0 0 5px white;
  padding: 0.3em 0.5em;
  background: -webkit-repeating-linear-gradient(-45deg, #FFFFFF, #FFFFFF 3px,#e9f4ff 3px, #e9f4ff 7px);
  background: repeating-linear-gradient(-45deg, #FFFFFF, #FFFFFF 3px,#e9f4ff 3px, #e9f4ff 7px);
  margin-bottom: 20px
}
.case .case_detail table{
width: 100%;
margin-bottom: 50px;
}
.case .case_detail td{
border-bottom: #666 1px dotted;
padding: 20px 0 3px 0
}
.case .case_detail td:nth-child(1){
width: 20%
}
.case .singlepager{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 100px;
width: 80%;
margin: 0 auto
}
.case .singlepager a{
display: block;
background-color: #850029;
color: #FFF;
text-align: center;
width: 250px;
max-width: 40%;
padding: 5px 0;
font-weight: 500
}
/*ユーチューブ動画ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.movie{
padding: 100px 0;
font-family: 'Noto Sans JP';
margin: 0 auto;
line-height: 180%
}
.movie .flex_movie{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1400px;
max-width: 90%;
background-color: #000;
padding: 3%;
margin: 0 auto;
}
.movie .flex_movie .inner{
width: 23%;
margin-bottom: 30px;
}
/*墓地募集情報ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.bochi_cat{
width: 100%;
margin: 0 auto
}
.bochi_cat img{
width: 100%
}
.bochi{
padding: 50px 0;
font-family: 'Noto Sans JP';
line-height: 180%
}
.bochi .box1{
width: 90%;
margin: 0 auto 50px auto
}
.bochi .box1 .flex_bochi{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.bochi .box1 .flex_bochi a{
width: 100%;
margin-bottom: 50px;
border: #CCC 1px solid;
padding: 4%;
box-sizing: border-box;
transition: 0.5s
}
.bochi .box1 .flex_bochi a:hover{
background-color: #FFF
}
.bochi .box1 .bochicat{
background-color: #E5D9F1;
color: #7F5398;
font-size: 1.6rem;
font-weight: 500;
text-align: center;
padding: 7px 0
}
.bochi .box1 .bochititle{
font-size: 1.6rem;
 font-weight: 600;
 border-bottom: #666 2px solid;
 margin-bottom: 15px;
}
.bochi .box1 .flex_bochi a .photo{
width: 100%; 
margin-bottom: 15px;
}

.bochi .box1 .flex_bochi a .photo img{
width: 100%;
height: 250px;
object-fit: cover;
}
.bochi .box1 .flex_bochi a .bt{
text-align: center;
font-weight: 500;
padding-top: 20px;
}
.bochi .box1 .entry{
background-color: #FFF;
border:#F5A76C 1px solid;
padding: 15px 30px;
font-size: 1.8rem;
font-weight: 500;
margin-bottom: 30px;
color: #F5A76C;
margin: 0 auto 50px auto;
text-align: center
}
.bochi .box1 .text1{
padding-bottom: 50px
}
.bochi .box1 .bochi_detail .photo{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 50px
}
.bochi .box1 .bochi_detail .photo a{
width: 32%;
display: block
}
.bochi .box1 .bochi_detail .photo a img{
width: 100%
}
.bochi .box1 .bochi_detail table{
width: 100%;
border-collapse: collapse;
}
.bochi .box1 .bochi_detail table td{
padding: 1%;
font-size: 1.5rem;
display: block
}
.bochi .box1 .bochi_detail table td:nth-child(2){
border-bottom: #CCC 1px solid;
margin-bottom: 25px
}
.bochi .box1 .bochi_detail table td:nth-child(1){
font-weight: 600;
margin-bottom: 5px
}
.bochi .box1 .bochi_detail table td .bosyunaiyo{
background-color: #FFF;
padding: 2%;
margin-bottom: 30px
}
.bochi .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 500;
  margin-bottom: 50px;
  color:#A668C1;
  padding-top: 100px;
  }
.bochi .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
/*会社案内ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.company{
padding: 100px 0;
font-family: 'Noto Sans JP';
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.company .subtitle {
  border-bottom: solid 3px #ffffff;
  position: relative;
  font-size: 2.2rem;
  font-weight: 400;
  margin-bottom: 50px
  }
.company .subtitle:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #D8CCE7;
  bottom: -3px;
  width: 20%;
}
.company .gaiyo{
width: 1000px;
max-width: 100%;
margin: 0 auto;
padding-bottom: 100px
}
.company .gaiyo table{
width: 100%;
border-collapse: collapse
}
.company .gaiyo table td{
padding: 1%;
display: block;
font-size: 1.5rem;
}
.company .gaiyo table td:nth-child(1){
font-weight: 600;
padding-bottom: 5px
}
.company .gaiyo table td:nth-child(2){
border-bottom: #999 1px dotted;
padding-bottom: 25px
}

.company .gaiyo table td a{
padding-top: 20px;
font-size: 1.8rem;
font-weight: 500;
color: #00C;
}
.company .gaiyo table td a img{
width: 400px;
max-width: 100%;
padding: 5px 0
}

/*よくある質問-----------------------------------------*/
.faq{
padding: 50px 0;
font-family: 'Noto Sans JP';
width: 1000px;
max-width: 90%;
margin: 0 auto
}
.faq .box_faq{
width: 1100px;
max-width: 90%;
margin: 0 auto 100px auto

}
.faq .box_faq .inner{
border-bottom: 1px #999 dashed;
margin-bottom: 50px;
}
.faq .box_faq .inner .question{
  position: relative;
  padding: 0.6em;
  background: #FFF;
  font-size: 1.6rem;
  font-weight: 600
}

.faq .box_faq .inner .question:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #FFF;
  width: 0;
  height: 0;
}
.faq .box_faq .inner .answer{
font-size: 1.6rem;
line-height: 180%;
padding-top: 20px
}
.faq .pager{
text-align: center;
font-size: 2.2rem;
font-weight: 600
}
.faq .pager a{
display: inline-block;
border: #81512c 1px solid;
color: #850029;
padding: 2px 5px;
margin: 0 2px
}
.faq .pager .current{
display: inline-block;
background-color: #850029;
color: #FFF;
padding: 2px 5px;
margin: 0 2px
}
/*ブログーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.blog{
padding: 0 0 50px 0;
font-family: 'Noto Sans JP';
line-height: 180%
}
.blog .article{
margin-bottom: 30px;
width: 100%!important;
}
.blog .box_blog{
width: 90%;
margin: 0 auto;
padding: 0;
padding-top: 50px;
}
.blog .flex_blog{
width: 100%;
padding: 0;
margin: 0
}
.blog .flex_blog .inner{
display: block;
width: 100%;
box-sizing: border-box;
transition: 0.8s;
margin-bottom: 30px;
font-size: 1.5rem;
padding: 1%;
border: #CCC 1px solid
}
.blog .flex_blog .inner .photo{
margin-bottom: 4px;
overflow: hidden
}
.blog .flex_blog .inner .photo img{
width: 100%;
height: 180px;
object-fit: cover
}
.blog .flex_blog .inner .blogtitle{
font-size: 1.8rem;
font-weight: 600;
color: #666;
padding:0 2% 2px 2%
}
.blog .flex_blog .inner .date{
font-size: 1.2rem;
padding: 0 2%
}
.blog .flex_blog .inner .com{
padding: 2%;
font-size: 1.3rem;
}
.blog .flex_blog .inner .com img{
display: none
}
.blog .flex_blog .inner a{
display: block;
color: #069;
font-weight: 500;
font-size: 1.6rem
}
.blog .pager a{
display: inline-block;
border: #069 1px solid;
padding: 2px 10px;
margin-right: 3px;
}
.blog .pager .current{
display: inline-block;
background-color: #069;
color: #FFF;
padding: 2px 10px;
margin-right: 3px;
}
.blog .termname{
font-size: 2.0rem;
font-weight: 500;
padding-bottom: 3px;
border-bottom: #CCC 3px solid;
margin-bottom: 50px
}
.blog .blog_detail{
width: 1300px;
max-width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 100px
}
.blog .blog_detail .article .blogtitle{
font-size: 1.8rem;
padding-bottom: 3px;
border-bottom: 3px #999 solid;
margin-bottom: 20px
}
.blog .blog_detail .article .date{
font-size: 1.3rem;
margin-bottom: 20px
}
.blog .blog_detail .article img{
max-width: 90%
}
.blog .blog_detail .article .singlepager{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 100px;
width: 100%;
margin: 0 auto
}
.blog .blog_detail .article .singlepager a{
display: block;
background-color: #850029;
color: #FFF;
text-align: center;
width: 40%;
padding: 5px 0;
font-weight: 500
}
.blog .aside{
width: 90%;
margin: 0 auto
}
.blog .aside .category li{
display: block;
margin-bottom: 20px;
}
.blog .aside .category li a{
display: block;
background-color: #069;
color: #FFF;
font-size: 1.8rem;
padding: 8px 0;
text-align: center;
transition: 0.5s;
}
.blog .aside .category li a:hover{
background-color: #036
}
.blog .blog_detail .aside .newe{

}
.blog .blog_detail .aside a{
font-size: 1.4rem;
display: block;
border-bottom: #069 1px solid;
margin-bottom: 20px;
color: #069;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.blog .blog_detail .aside a .com{
width: 65%
}
.blog .blog_detail .aside a .photo{
width: 30%;
padding-bottom: 10px
}
.blog .blog_detail .aside a .photo img{
width: 100%;
height: 80px;
object-fit: cover
}
.blog .blog_detail .aside a .date{
font-size: 1.2rem
}
/*お問い合わせ-----------------------------------------*/
.contact{
padding: 50px 0;
font-family: 'Noto Sans JP';
width: 90%;
margin: 0 auto
}
.contact .box1{
	width:90%;
	margin-left:auto;
	margin-right:auto;
	font-size:1.8rem; 
    font-weight: 500;
	line-height:160%;
    margin-bottom: 50px
}
.contact .box_form{
font-size: 1.5rem;
width: 100%
}
.contact table{
	width:100%;
	border-collapse:collapse;
	margin:0;
}

.contact table td{
	padding:1%;
    font-weight: 400;
    display: block;
    font-size: 1.6rem
}
.contact table td:nth-child(1){
font-weight: 500
}
.contact table td:nth-child(2){
border-bottom:#999 1px dotted;
margin-bottom: 30px
}
.contact table textarea {
height: 10em;
border:#CCC 1px solid;
width: 80%
}
.contact table select{
height: 25px;
width: 80%
}
.contact table label{
	display:block;
}
.contact table input[type="email"]{
	border:#CCC 1px solid;
	height: 25px;
    width: 80%
}
.contact table input[type="text"]{
	border:#CCC 1px solid;
	height: 25px;
    width: 80%
}

.contact input[type="submit"]{
	width:80%;
	border:#FFF 1px solid;
	background-color:#069;
	text-align:center;
	font-weight:bold;
	font-size:2.0rem;
	color:#FFF;;
	padding:10px 0;
	margin-top:30px;
	margin-bottom:30px;
	display:block;
	cursor:pointer;
	margin-left:auto;
	margin-right:auto;
}
.contact input[type="submit"]:hover{
	background-color:#4284c0;
}

/*個人情報-----------------------------------------*/
.privacy{
padding: 100px 0 0 0;
font-family: 'Noto Serif JP';
width: 1000px;
max-width: 90%;
margin: 0 auto
}

.privacy dl{
margin-bottom: 100px;
border: #666 1px solid;
padding: 2%
}
.privacy dt{
font-size: 1.8rem;
font-weight: 600;
margin: 30px 0;
position: relative;
}
.privacy dd{
margin-left: 0;
font-size: 1.6rem;
margin-bottom: 50px;
padding-bottom: 2px;
border-bottom: #666 1px dashed
}

}
/*==================================================
ふわっ
===================================*/

/* その場で */
.fadeIn{
animation-name:fadeInAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

/* 下から */

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/* 上から */

.fadeDown{
animation-name:fadeDownAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeDownAnime{
  from {
    opacity: 0;
  transform: translateY(-100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/* 左から */

.fadeLeft{
animation-name:fadeLeftAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeLeftAnime{
  from {
    opacity: 0;
  transform: translateX(-100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}

/* 右から */

.fadeRight{
animation-name:fadeRightAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeRightAnime{
  from {
    opacity: 0;
  transform: translateX(100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeInTrigger,
.fadeUpTrigger,
.fadeDownTrigger,
.fadeLeftTrigger,
.fadeRightTrigger{
    opacity: 0;
}
