@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Prompt:ital,wght@0,300;0,400;0,500;0,600;1,500&display=swap');



/* 1: Base Style Setting
----------------------------------------------------------------------------------------------*/

/* Base Setting
==========================================================*/
body { font-family: 'Noto Serif JP',serif,"Avenir Next", "游ゴシック", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; margin:0; padding: 0; -webkit-text-size-adjust: 100%; letter-spacing: 0.15em; font-weight: 400; overflow-x: hidden; line-height: 1.75; font-feature-settings: "palt" 1; color: #000;}
html{font-size: 16px;}

@media screen and (max-width: 768px){
	html{font-size: 14px;}
}

a{ text-decoration: none; color: #fff; outline:none; }
a.underline{ text-decoration: underline; }
a.underline--b{ color: #000; text-decoration: underline;}
a:focus,a:hover { text-decoration: none; cursor: pointer;}
:focus { outline: 0; }
::selection { background: #000; color: #ebebeb;}

.imgwrap{line-height: 0;}

body{width: 100vw; height: auto;}

@media(min-width: 768px){
	a[href^="tel:"]{ pointer-events: none;}
}

/* ハック
==========================================================*/
@media screen and (min-width: 1001px){
	.show1000{display: none;}
	.hide1000{display: block;}
	.show1000-inline{display: none;}
	.hide1000-inline{display: inline;}
}
@media screen and (max-width: 1000px){
	.show1000{display: block;}
	.hide1000{display: none;}
	.show1000-inline{display: inline;}
	.hide1000-inline{display: none;}
}
@media screen and (min-width: 861px){
	.show860{display: none!important;}
	.hide860{display: block;}
	.show860-inline-b{display: none;}
	.hide860-inline{display: inline;}
	.hide860-table{display: table-cell;}
}
@media screen and (max-width: 860px){
	.show860{display: block!important;}
	.hide860{display: none!important;}
	.show860-inline-b{display: inline-block!important;}
	.show860-inline{display: inline;}
	.hide860-inline{display: none;}
	.hide860-table{display: none;}
}
@media screen and (min-width: 601px){
	.show600{display: none;}
	.hide600{display: block;}
	.show600-inline{display: none;}
	.hide600-inline{display: inline;}
}
@media screen and (max-width: 600px){
	.show600{display: block;}
	.hide600{display: none;}
	.show600-inline{display: inline;}
	.hide600-inline{display: none;}
}


/* カラーパレッド
==========================================================*/
.c_w{color: #fff}


/* font
==========================================================*/
.fn_size10{font-size: 0.714em}
.fn_size12{font-size: 0.857em;}
.fn_size13{font-size: 0.929em;}
.fn_size15{font-size: 1.071em;}
.fn_size18{font-size: 1.286em;}
.fn_size20{font-size: 1.429em}
.fn_size21{font-size: 1.5em;}
.fn_size22{font-size: 1.57em;}
.fn_size24{font-size: 1.714em;}
.fn_size25{font-size: 1.786em;}
.fn_size27{font-size: 1.929em;}
.fn_size28{font-size: 2em;}
.fn_size32{font-size: 2.286em;}


@media screen and (max-width: 768px){
	.fn_size22{font-size: 1.5em;}
}


/* その他
==========================================================*/
.w90{width: 90%;margin: 0 auto;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.w80{width: 80%;margin: 0 auto;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.w75{width: 75%;margin: 0 auto;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.w70{width: 70%;margin: 0 auto;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.w60{width: 60%;margin: 0 auto;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.w45{width: 45%;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.inline-b{display: inline-block;}
.lesp-005{letter-spacing: .05em;}
.kasouInner {
    width: 86%;
    max-width: 1050px;
    margin: 0 auto;
	align-items: flex-start;
}

@media screen and (max-width: 1300px){
	.w90,.w60,.w80,.w75,.w70,.w60{width: calc(100% - 10%);}
}
@media screen and (max-width: 1000px){
	.w90,.w60,.w80,.w75,.w70,.w60{width: calc(100% - 40px);}
	.mt130{margin-top: 75px!important;}
	.mt190{margin-top: 150px!important;}
}
@media screen and (max-width: 860px){
	.mb50{margin-bottom: 10px!important;}
	.kasouInner {
		width: 90%;
	}

}


/*ボタン
==========================================================*/
.btn{padding: 15px 70px;box-sizing: border-box;font-size: 1.071em;color: #fff; border: 1px solid #000;background-color: #222228;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.btn:hover{color: #000;background-color: #fff;}

@media screen and (max-width: 860px){
	.btn:hover{color: #fff;background-color: #222228;}
}
@media screen and (max-width: 600px){
	.btn{width: 100%;text-align: center;}
}


/* menu
==========================================================*/
.main_h {position: fixed;z-index: 999;width: 100%;background: none;overflow: hidden;-webkit-transition: all 0.4s;transition: all 0.4s;opacity: 0;top: -100px;}
.main_h a{;-webkit-transition: all 0.4s;transition: all 0.4s;}
.main_h_sp-show{display: none;}
.main_h a:hover{opacity: .6;}
.active{-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.active .menu-trigger span:nth-of-type(1){-webkit-transform:translateY(9px) rotate(-45deg);transform:translateY(9px) rotate(-45deg);}
.active .menu-trigger span:nth-of-type(2){opacity:0}
.active .menu-trigger span:nth-of-type(3){-webkit-transform:translateY(-10px) rotate(45deg);transform:translateY(-10px) rotate(45deg);}
.sticky {opacity: 1;top: 0px;}
.logo {width: 150px;float: left;display: flex;margin-top: 0;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s}
nav {width: 100%;padding-right: 70px; float: right;}
nav ul {overflow: hidden;text-align: right;float: right;}
nav ul li {margin-left: 35px;display: inline-block;line-height: 1.5;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s}
nav ul a {color: #000;text-transform: uppercase;font-size: .93em;}
.menu-trigger {display: none;cursor: pointer;position: absolute;top: 35px;right: 40px; width: 30px;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s}
.menu-trigger span {width: 30px;height: 2px;margin-bottom: 7.5px;background: #000;display: block;transition: all 0.4s;}
.row {width: 100%;margin: 0 auto; position: relative;display: flex;background-color: rgba(255, 255, 255, 0.98);}
* {box-sizing: border-box;align-items: center;}
.navber{padding: 20px 0 20px 70px;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}

@media only screen and (max-width: 1450px) {
	nav ul li {margin-left: 25px;}
}
@media only screen and (max-width: 1200px) {
	.row{display: block;}
	.logo {width: 130px; float: none;}
	nav {height: calc(100vh - 59px);padding: 0; opacity: 0;position: relative;background-color: rgba(255, 255, 255, 0.98);}
	nav ul {padding-top: 10px;margin-bottom: 22px;float: left;text-align: center;width: 100%;position: absolute;top: 40%;transform: translateY(-40%);}
	nav ul li {width: 100%;padding: 7px 0;margin: 0;}
	.active nav {opacity: 1;position: relative;}
	.menu-trigger {display: block;top: 20px;}
	.navber{padding: 10px 0 10px 40px;}
	.main_h_sp-show{display: block;}
}
@media only screen and (max-width: 860px) {
	.main_h a:hover{opacity:1;}
}
@media only screen and (max-width: 600px) {
	.menu-trigger {right: 25px;}
	.navber{padding-left: 25px;}
}


/* footer
==========================================================*/
#footerContainer{padding: 70px 0 50px; background-color: #222228;}
.footerlogo{max-width: 280px;margin: 0 auto 50px;}
.footerlogo a{-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s}
.footerlogo a:hover{opacity: .6;}
.footermenu ul{display: flex;justify-content: center;}
.footermenu ul li{margin-right: 30px;}
.footermenu ul li:last-child{margin-right: 0;}
.footermenu ul li::after{content: '';margin-left: 30px; font-size: .5em; border-right: 1px solid #fff;position: relative;bottom: 3px;}
.footermenu ul li:last-child::after{border: none;margin: 0;}
.footermenu a{-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s}
.footermenu a:hover{opacity: .6;}
.f_snslogo {margin: 45px 0 30px; display: flex;justify-content: center;}
.f_snslogo div{margin-right: 20px;}
.f_snslogo div:last-child{margin-right: 0;}
.f_snslogo a{-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.f_snslogo a:hover{opacity: 0.6;}

@media screen and (max-width: 1300px){
	.footermenu ul{flex-flow: column;}
	.footermenu ul li{margin-right: 0;margin-bottom: 10px;}
	.footermenu ul li::after{margin-left: 0; border-right: none;}
}
@media screen and (max-width: 1000px){
	.footermenu ul{font-size: 1.2em;}
}
@media screen and (max-width: 860px){
	#footerContainer a:hover{opacity: 1;}
	.footermenu{margin: 0 auto 4%;padding-bottom: 0; text-align: center;flex-flow: column; border-bottom: none;}
	.footermenu ul li{margin-left: 0;}
}
@media screen and (max-width: 600px){
	#footerContainer .flex{padding: 65px 40px 55px;}
	.footerlogo{margin-bottom: 30px; max-width: 240px;}
	.f_snslogo {margin-top: 35px;}
}


/*topへ戻るボタン*/
/*==========================================================*/
#page_top{ width: 50px; height: 50px; position: fixed; right: 3%; bottom: 4%; background: #000; border-radius: 50%;z-index: 100;}
#page_top a{ position: relative; display: block; width: 50px; height: 50px; text-decoration: none;}
#page_top a::before{ position: absolute; width: 30px; height: 25px; top: -37%; bottom: 0; right: -5%; left: 0; margin: auto;z-index: 9999;}
.ptar{width: 14px; position: absolute; top: 11px; right: 36%;}


/*index_mainvisual
==========================================================*/
ul.slick li{ height: 100vh; height: 100svh;background-size: cover;background-position: center;background-repeat: no-repeat; position: relative;}
ul.slick li:nth-of-type(3){background-position:100%; background-position-y: top;}
ul.slick li:nth-of-type(4){background-position:70%;}
ul.slick li::after{content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: #000; opacity: .15;}
.slick-slide img{width: 100%;display: block;}
.mainvisual-ttl{position: absolute; width: 100%; max-width: 230px; height: 100vh; left: 50%; top: calc(50% + 50px); transform: translate(-50%,-50%); display: flex; align-items: center; padding-block: 50px;}
.mainvisual-ttl img{width: 100%; height: 100%; object-fit: contain;}
@media screen and (max-width: 768px){
	.mainvisual-ttl{max-width: 120px;}
	ul.slick li{height: 130vw;}
	ul.slick li:nth-of-type(2){background-image:url('/assets/images/index/main_02_sp.jpg?25070111a') !important; background-position: center;}
	ul.slick li:nth-of-type(3){background-image:url('/assets/images/index/main_03_sp.jpg?25070111a') !important; background-position: center; background-position-y: top;}
	ul.slick li:nth-of-type(4){background-position: 30%;}
	ul.slick li:nth-of-type(5){background-position: 30%;}
}


/*index_news
==========================================================*/
.ind_news{max-width: 1000px;}
.ind_news ul li a{color: #000;padding: 10px 20px; border-top: 1px solid #000;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.ind_news ul li:last-child a{border-bottom: 1px solid #000;}
.ind_news ul li a:hover{color: #fff;background-color: #222228;}
.ind_news ul li a p{padding-left: 20px;}

@media(max-width:860px) {
	.ind_news ul li a{padding: 10px 0;}
	.ind_news ul li a:hover{color: #000;background-color: #fff;}
}
@media(max-width:600px) {
	.ind_news h2{font-size: 1.6em;}
	.ind_news .flex{flex-wrap: wrap;}
	.ind_news ul li{width: 100%;}
	.ind_news ul li a time{width: 100%;}
	.ind_news ul li a p{width: 100%;padding-top: 0; padding-left: 0;}
}


/*index_banner
==========================================================*/
.kasou_banner.flex{flex-wrap: wrap;}
.kasou_banner div::after{content: '';width: 95%;height: 91%;max-height: 270px; top: 4.5%;left: 2.6%; position: absolute;display: block;outline: 1px solid #fff; z-index: 2;}
.kasou_banner div img{vertical-align: top;-webkit-transition: all 0.8s;-moz-transition: all 0.8s;transition: all 0.8s;}
.kasou_banner a{width: 50%;max-height: 300px; position: relative;overflow: hidden;}
.kasou_banner a:nth-child(n + 3) {
    width: calc(100% / 3);
}
.kasou_banner a:hover img{transform:scale(1.1);}
.kasou_banner a::before{content: ""; display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: #000; opacity: .2; z-index: 1;}
.banner_txt{position: absolute;top: 50%;left: 50%;display: block;font-size: 2em; z-index: 99;transform: translateX(-50%) translateY(-50%);color: #fff; text-align: center;}

@media(max-width:860px) {
	.kasou_banner div{width: 100%;}
	.kasou_banner div::after{width: 96%;max-height: 230px; height: 86%;top: 7.5%;left: 2%;}
	.kasou_banner a{width: 100% !important;max-height: 230px;}
	.kasou_banner a:hover img{transform:none;}
	.banner_txt{font-size: 1.6em;}
	
}


/*index_access
==========================================================*/
.ind_access{max-width: 1200px}
.ind_access .flex{flex-wrap: wrap-reverse;justify-content: space-between; align-items: stretch;}
.ind_access h1{border-bottom: 1px solid #000;padding-bottom: 10px;box-sizing: border-box;}

@media(max-width:1000px) {
	.ind_access .w45{width: 100%;margin-top: 40px;}
	.ind_access iframe{width: 100%;}
}


/* Kasou_common
==========================================================*/
#kasou_wrapper{background-color: #EBEBEB;}
.kasou_main{max-width: 1400px; width: 90%; margin-bottom: 150px; padding: 120px 0;box-sizing: border-box; background-color: #fff; position: relative; z-index: 2; margin-inline: auto;}
.kasou_ttl{width: 75%;margin: 0 auto;font-size:  2.143em;font-weight: bold;text-align: center;letter-spacing: 0.2em;line-height:1.3em;}
.kasou_container{margin-top: 90px;}
.kasou_subttl{margin-bottom: 50px;border-bottom: 1px solid #000;padding-bottom: 5px;}
.kasou_subttl span{font-size: .7em;}
.news_subttl{margin-bottom: 50px; border-bottom: 1px solid #000;padding-bottom: 5px;}
.kasou_txt{margin-bottom: 30px;}
.kasou_txt:last-child{margin-bottom: 0;}
h2{font-size:1.57em;}
h3{margin-bottom: 15px; font-size:1.286em;}

@media screen and (max-width: 860px){
	.kasou_main{margin-bottom: 100px; padding: 60px 0 80px;}
	.kasou_ttl{width: calc(100% - 40px);}
	.kasou_container{margin-top: 60px;}
	.kasou_subttl{margin-bottom: 30px;}
	.news_subttl{margin-bottom: 30px;}
	h3{margin-bottom: 5px;}
}
@media screen and (max-width: 600px){
	h2{font-size:1.37em;}
	/* h3{font-size:1.086em;} */
	.kasou_ttl{font-size: 1.65em;}
}


/* Kasou_flex
==========================================================*/
.kasou_flex{margin-bottom: 25px; align-items: stretch;}
.kasou_flex:last-child{margin-bottom: 0;}
.kasou_fleximg{width: 45%;}
.kasou_flextxt{width: 50%;}
.kasou_flex_list{margin-bottom: 30px;align-items: flex-start;}
.kasou_flex_list:last-child{margin-bottom: 0;}
.kasou_flex_listimg{width: 40%;}
.kasou_flex_listimg img{vertical-align: top;}
.kasou_flex_listtxt{width: 54%;}

@media screen and (max-width: 860px){
	.kasou_flex{margin-bottom: 40px;}
	.kasou_fleximg{width: 100%;}
	.kasou_flextxt{width: 100%;margin-top: 15px;}
	.kasou_flex_list{margin-bottom: 40px;}
	.kasou_flex_listimg{width: 100%;}
	.kasou_flex_listtxt{width: 100%;margin-top: 15px;}
}


/* Kasou_mainvisual
==========================================================*/
.kasou_mainvisual{height: 420px;margin-bottom: -110px;background-size: cover;background-repeat: no-repeat;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;background-position:center; position: relative; z-index: 1;}
.kasou_mainvisual::before{content: ""; display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: #000; opacity: .25;}
#about .kasou_mainvisual{ background-image: url("../images/about/kasou_mainvisual.jpg?250624");}
#memorial .kasou_mainvisual{ background-image: url("../images/memorial/kasou_mainvisual.jpg?250624");}
#mizukokuyou .kasou_mainvisual{ background-image: url("../images/mizukokuyou/kasou_mainvisual.jpg?250624");}
#service .kasou_mainvisual{ background-image: url("../images/service/kasou_mainvisual.jpg?250624");}
#event .kasou_mainvisual{ background-image: url("../images/event/kasou_mainvisual.jpg?250624");}
#news .kasou_mainvisual{ background-image: url("../images/news/kasou_mainvisual.jpg?250624");}
#access .kasou_mainvisual{ background-image: url("../images/access/kasou_mainvisual.jpg?250624");}
#contact .kasou_mainvisual{ background-image: url("../images/contact/kasou_mainvisual.jpg?250624");}

@media screen and (max-width: 860px){
	.kasou_mainvisual{height: 280px;margin-bottom: -60px;}
}


/* Kasou_about
==========================================================*/
.about_DL_wrap { margin-top: 50px; padding: 40px 40px 30px; box-sizing: border-box; background: #f7f5f1; border-radius: 5px; font-size: 1.05em;}
.about_DL{align-items: flex-start;}
.about_DL dt { width: 120px; margin-bottom: 15px;color: #52432f;}
.about_DL dd { width: -webkit-calc(100% - 120px); width: -moz-calc(100% - 120px); width: calc(100% - 120px); margin-bottom: 15px;}
@media screen and (max-width: 768px){
  .about_logo { margin: 0 auto 40px;}

  .about_DL_wrap { margin-top: 40px; padding: 20px 20px 15px; border-radius: 3px; font-size: 1em;}
  .about_DL dt { width: 90px; margin-bottom: 10px;}
  .about_DL dd { width: -webkit-calc(100% - 90px); width: -moz-calc(100% - 90px); width: calc(100% - 90px); margin-bottom: 10px;}
}
@media screen and (max-width: 450px){
  .about_DL_wrap { margin-top: 30px; padding: 20px 15px 15px; font-size: .95em; letter-spacing: .1em;}
  .about_DL dt { width: 80px;}
  .about_DL dd { width: -webkit-calc(100% - 80px); width: -moz-calc(100% - 80px); width: calc(100% - 80px);}
}

/* Kasou_news
==========================================================*/
#news .w75.flex-jcs{align-items:stretch;}
.news_main{width:75%;}
.news_main .kasou_container .news_img{margin-bottom:25px;}
.pagination{margin-top: 100px;}
.pagination span{padding: 5px 10px 5px 12px;border: 1px solid #000;background-color: #000;color: #fff; margin-inline-end: 10px;}
.pagination a{padding: 5px 10px 5px 12px;border: 1px solid #000;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s; margin-inline-end: 10px;}
.pagination a:hover{background-color: #ccc;}
.news_category_wrapper{width: 20%;margin-top:90px;padding: 4% 3%;background-color: #F0F0F0; position: sticky; top: 120px;}
.news_category_wrapper .news_category p{margin: 0 0 5px 10px;position: relative;font-size: 1.2em;}
.news_category_wrapper .news_category p::before{content: ''; width: 5px;height: 2px; position: absolute;top: 15px;left: -10px;background-color: #000;}
.news_category{margin-bottom: 25px;}
.news_category:last-child{margin-bottom: 0;}
.news_category ul li a{color: #5A5A5A;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.news_category ul li a:hover{opacity: 0.6;}

@media screen and (max-width: 860px){
	.news_main{width: 100%;}
	.pagination{margin-top: 80px;}
	.pagination a:hover{background-color: #fff;}
	.news_category_wrapper{width: 100%;margin-top:50px;padding: 5% 8%;display: flex;}
	.news_category_wrapper .news_category{width: auto;margin-right: 30px;margin-bottom: 0;}
	.news_category_wrapper .news_category:last-child{margin-right: 0;}
	.news_category ul li a:hover{opacity: 1;}
}
@media screen and (max-width: 600px){
	.news_category_wrapper .news_category p::before{top: 11px;}
}


/* Kasou_event
==========================================================*/
.eventtable{border: 1px solid #A9A9A9; width: 100%;}
.eventtable tbody{width: 100%;}
.eventtable tr{width: 100%; border-bottom: 1px solid #A9A9A9;}
.eventtable tr span{display: block;}
.eventtable th{width: 30%;padding: 10px; border-bottom: 1px solid #A9A9A9;}
.eventtable td{padding: 10px; border-right: 1px solid #A9A9A9;border-bottom: 1px solid #A9A9A9;border-left: 1px solid #A9A9A9;}
.eventtable td:last-child{width: 70%;border-right: none;border-bottom:none;}
.eventtable td a{text-decoration: underline;color: #000;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.eventtable td a:hover{text-decoration: none;opacity: .6;}

@media screen and (max-width: 750px){
	.eventtable{border-collapse: separate;}
	.eventtable tbody{display: flex; flex-flow: column;}
	.eventtable,.eventtable tr{display: block;}
	.eventtable tr:last-child{border-bottom: none;}
	.eventtable th{width: 120px; border-bottom:none;}
	.eventtable td{width: calc(100% - 120px);border-right: none;}
	.eventtable td:last-child{width: calc(100% - 120px);}
	/* .eventtable td:last-child{ width:calc(100% - 60px);margin-left: 60px; display: inherit;border-left: 1px solid #A9A9A9;} */

}


/* Kasou_access
==========================================================*/
#access iframe{margin-bottom: 25px;}



/* Kasou_contact
==========================================================*/
.message-notice{color: #C1272D;}
.contact-message{margin: 50px auto 0; text-align: center; line-height: 1.6em;}
.contact-area {margin: 50px auto 0;}

input, button, textarea, select { margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; }

.contactwrap select,
.contactwrap input[type=text],
.contactwrap input[type=email],
.contactwrap input[type=date],
.contactwrap textarea{ font-size: 17px;}


.contactwrap { padding-bottom: 100px;}
.contactform { }
.contactul-application{flex-flow: wrap;}
.contactul { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: flex-start;}
.contactul > li { margin-bottom: 40px; }
.contactul > li span{display: block; line-height: 1.6;}
.contactul > li.w1 { width: 100%; }
.contactul > li.w2 { width: calc(50% - 5px); }
.contactul > li.w2-02 { width: calc(50% - 5px); margin-inline-end: 30px; }
.contactmid { margin-bottom: 10px; display: inline-block; position: relative;}
.contactmid.hissu:after { content: "※"; color: #C1272D; position: absolute; top: 0; right: -1.5em;  }
.contactul > li input { height: 50px; padding: 0 15px; font-size: 17px; box-sizing: border-box; background: #f9f9f9; border: none; width: 100%; border: 1px solid #eee; }
.contactform ::placeholder {color: #999; font-family: 'Noto Serif JP','游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;}
.contactform textarea { width: 100%; height: 5em; padding: 15px; font-size: 17px; line-height: 2; box-sizing: border-box; border: none; background: #f9f9f9; border: 1px solid #eee; resize:vertical;}
.error_box { padding: 30px; margin-bottom: 30px; line-height: 2; display: none; color: #f00; border: 1px solid #f00;}
.submitwrap { text-align: center; margin: auto;}
input[type="submit"] { -webkit-appearance: none; border-radius: 0; }
.submitbtn { width: 200px; height: 50px; line-height: 50px; cursor: pointer; display: inline-block; border: none; text-align: center; background: #000; color: #fff; font-weight: bold; border: 1px solid #000;} 
.submitbtn:hover { opacity: -webkit-opacity:.6;opacity:.6;}


@media screen and (max-width: 750px){
.contactul > li.w2-02{width: 100%; margin-inline-end: 0;}
}

/* SELECT */
select:disabled { color: #999 !important;}
select:disabled::-ms-value,
select:disabled::-ms-expand {color: #999;}
select{
    width: 100%; background: transparent; box-sizing: border-box; height: 50px; padding: 0 15px;  position: relative; z-index: 1; font-size: 16px;
}
select::-ms-expand {display: none;}
.selectWrap{position: relative; width: 100%; background-color: #f9f9f9; display: inline-block; border: 1px solid #eee;}

.selectWrap::after{
    content: '';
    position: absolute;
    z-index: 0;
    top: calc(50% - 5px);
    bottom: auto;
    margin: auto 0;
    right: 10px;
    width: 10px;
    height: 10px;
    border-bottom:2px solid #000; border-right:2px solid #000;transform:rotate(45deg)
    
}


/* checkbox radio */
input[type=checkbox] {
    display: none;
}
.checkbox { font-size: 1.1em;
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
}
.checkbox::before {
    background: #fff;
    border: 1px solid #d7d7d7;
    border-radius: 3px;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px;
    
}
.checkbox::after {
    border-right: 3px solid #000;
    border-bottom: 3px solid #000;
    content: '';
    display: block;
    height: 20px;
    left: 7px;
    margin-top: -16px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg) translate3d(0,2px,0) scale3d(.7,.7,1);
    transition: transform .2s ease-in-out, opacity .2s ease-in-out;
    width: 9px;
}
input[type=checkbox]:checked + .checkbox::before {
    border-color: #666;
}
input[type=checkbox]:checked + .checkbox::after {
    opacity: 1;
    transform: rotate(45deg) scale3d(1,1,1);
}

/* ラジオボタン03 */
input[type=radio] {
    display: none;
}
.radio {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
}
.radio::before {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 50%;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px;
}
.radio::after {
    background: #000;
    border-radius: 50%;
    content: '';
    display: block;
    height: 10px;
    left: 9px;
    margin-top: -4px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: scale3d(.3,.3,1);
    transition: transform .2s ease-in-out, opacity .2s ease-in-out;
    width: 10px;
}
input[type=radio]:checked + .radio::before {
    border-color: #666;
}
input[type=radio]:checked + .radio::after {
    opacity: 1;
    transform: scale3d(1,1,1);
}
   










.thankswrap { padding-bottom: 100px;}
.thankswrap h2 { margin-bottom: 30px;}
.thankswrap p { margin-bottom: 15px;}
@media screen and (max-width: 750px){
    .contactwrap { padding-bottom: 50px;}
    .contactform textarea { width: 100%; height: 4em; }
    .thankswrap { padding-bottom: 50px;}
    .thankswrap h2 { margin-bottom: 20px;}
    .thankswrap p br { display: none;} 
}
    
/* .fp-section, .fp-slides{height: 100vh !important;} */



#formWrap{ padding: 70px 0;}
#formWrap table{ width: 100%; margin-bottom: 40px;}
#formWrap table tbody{width: 100%; display: flex; flex-flow: column;}
#formWrap table tr{margin: 0 auto 20px; display: flex; width: 100%;}
#formWrap table th{ width: 40%; padding: 15px 0.6em 15px 0;}
#formWrap table td{ width: 60%; padding: 15px; background:#f9f9f9; border: 1px solid #eee; min-height: 60px;}

.submitwrap p{margin: 0 10px; order:2;}
.submitwrap p.pageback{ order:1;}
.submitwrap p.pageback .submitbtn{background: none; color: #000; border: 1px solid #000;}

@media screen and (max-width: 750px) {
    #formWrap{ padding: 50px 0;}

    .submitwrap.kakunin.flex-jcc{ flex-direction: column;}
    .submitwrap p.pageback{ order:3; margin-top: 10px;}
  }
  


/* Kasou_memorial
==========================================================*/
table.year-update { width: 900px; letter-spacing: 0.1em; margin: 30px auto 0;}
table.year-update th, table.year-update td { border: solid 1px #d4d4d4; text-align: center; padding: 10px;}
table.year-update th { font-size: 1.2em; vertical-align: middle;}
table.year-update th span{display: block; font-size: .85em; letter-spacing: .05em;}
table.year-update th ul{justify-content: space-between; width: 350px; margin: 0 auto;}
.c_red { color: #ca4444;}
.c_b { color: #000;}
.wishWrap{overflow: scroll;}
.wish{border: 1px solid #d4d4d4; max-width: 900px; margin-inline: auto; min-width: 670px;}
.table-wrapper-scroll {
width: 100%;
overflow-x: scroll;
-webkit-overflow-scrolling: touch;
}
.kasou_dl{flex-flow: wrap; justify-content: space-between; align-items: flex-start; margin-block: 20px 40px;}
.kasou_dl dt{width: 75px;}
.kasou_dl dd{width: calc(100% - calc(75px + 30px));}
.kasou_dl dt:not(:first-of-type),.kasou_dl dd:not(:first-of-type){margin-block-start: 10px;}
.kasou_dl dd span{position: absolute; left: 0;}
.kasou_dl dd p{padding-inline-start: 20px; position: relative;}

::-webkit-scrollbar {
  display: none;
}

@media screen and (max-width: 768px){
	.kasou_dl{margin-block-end: 0;}
	.kasou_dl dt{width: 65px;}
	.kasou_dl dd{width: calc(100% - calc(65px + 15px)); letter-spacing: .08em;}
	table.year-update { width: 750px;}
	table.year-update th { font-size: 1.2em;}
	table.year-update th ul{width: 300px;}
}


.treeburial_link { margin-top: 70px; padding: 55px 5%; box-sizing: border-box; background: #f7f5f1; border-radius: 5px;}
  @media screen and (max-width: 768px){
    .treeburial_link { margin-top: 50px; padding: 30px 5%;}
    .treeburial_link p { font-size: 1.05em;}
  }
  


/* Kasou_service
==========================================================*/
#service .fn_size22{font-size: 1.25em; letter-spacing: .08em;}
.serviceFlexImg{display: flex; box-sizing: border-box; justify-content: space-between;}
.serviceFlexImg img{width: calc(50% - 10px);}

.service_numList li{background-color: #f7f5f1; padding: 20px; margin-block-start: 20px;}
.servicetabbleWrap{ margin-block-start: 40px; margin-inline: auto;}
.servicetabble{border: 1px solid #A9A9A9; width: 100%;}
.servicetabble tbody{width: 100%;}
.servicetabble tr{width: 100%; border-bottom: 1px solid #A9A9A9;}
.servicetabble tr span{display: block;}
.servicetabble th{width: 30%;padding: 10px; border-bottom: 1px solid #A9A9A9; text-align:center;}
.servicetabble td{padding: 10px; border-right: 1px solid #A9A9A9;border-bottom: 1px solid #A9A9A9;border-left: 1px solid #A9A9A9; text-align:center;}
.servicetabble td:last-child{width: 70%;border-right: none;border-bottom:none;}
.servicetabble td a{text-decoration: underline;color: #000;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.servicetabble td a:hover{text-decoration: none;opacity: .6;}

@media screen and (max-width: 750px){
	.servicetabble{border-collapse: separate;}
	.servicetabble tbody{display: flex; flex-flow: column;}
	.servicetabble,.servicetabble tr{display: flex;}
	.servicetabble tr:last-child{border-bottom: none;}
	.servicetabble th{border-bottom:none; width: 100%;}
	.servicetabble tr:not(:first-of-type) th{width: 150px; }
	.servicetabble td{width: calc(100% - 150px);border-right: none;}
	.servicetabble td:last-child{width: calc(100% - 150px); display: flex; justify-content: center;}
}

.syasen{background-image: linear-gradient(to right top, transparent calc(50% - 0.5px), #A9A9A9 50%, #A9A9A9 calc(50% + 0.5px), transparent calc(50% + 1px))}

.godobotableWrap{ margin-block-start: 40px; margin-inline: auto;}
/* .godobotableWrap >p{min-width: 600px;} */
.godobotable{border: 1px solid #A9A9A9; width: 100%;}
.godobotable tbody{width: 100%;}
.godobotable tr{width: 100%; border-bottom: 1px solid #A9A9A9;}
/* .godobotable tr span{display: block;} */
.godobotable th{padding: 10px; border-bottom: 1px solid #A9A9A9; text-align:center; vertical-align: middle;}
.godobotable tr:not(:first-of-type) th{width: 26%;}
.godobotable tr:not(:first-of-type) td{width: 37%;}
.godobotable td{padding: 10px; border-right: 1px solid #A9A9A9;border-bottom: 1px solid #A9A9A9;border-left: 1px solid #A9A9A9; text-align:center; vertical-align: middle;}
.godobotable td:last-child{border-right: none;border-bottom:none;}
.godobotable td a{text-decoration: underline;color: #000;-webkit-transition: all 0.4s;-moz-transition: all 0.4s;transition: all 0.4s;}
.godobotable td a:hover{text-decoration: none;opacity: .6;}

@media screen and (max-width: 768px){
	.godobotable tr:not(:first-of-type) th{width: 30%;}
	.godobotable tr:not(:first-of-type) td{width: 35%;}
}