@charset "utf-8";
@media only screen and (max-width:750px){
body { min-width:375px; font-size:100%;}
body {
	font-family: 'Noto Sans JP', "Yu Gothic", YuGothic, "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
    font-weight: 400;
}
div, p, ul, ul li, h1, h2, h3, h4, h5, dl, dt, dd {
    font-weight: 400;
}
#header {}
#content{ width:100%;}
#footer { width:100%;}
#wrapper {}
#base {}

.pc { display:none;}
.sp { display:block;}

 
/*--------------------------------------------------------
  HEADER
--------------------------------------------------------*/
#header {background:rgba(255,255,255,0.95);}
#header .btn {z-index:999999999;}
#header .nav_box { width:100%; height: 100vh; z-index:99999999;}
#header.active1 #nav_cont { padding-top: 20%; }
#header h1 { display:block; position: relative; z-index: 99999;}
#header h1 a {
	display: block;
	width:150px; height:80px;
	text-indent: -9999px;
	background:url("../img/logo2.svg") no-repeat 15px center;
	background-size:90% auto;
}


/*--------------------------------------------------------
  CONTENT
--------------------------------------------------------*/
#content .more_btn { margin: 0 auto; width: 60%; max-width:inherit; }
#content .more_btn a {  padding:20px 20px 5px;}

    
/*--------------------------------------------------------
  FOOTER
--------------------------------------------------------*/
#footer { padding:10%  0  5%;}
#footer .f_box { display:block;}
#footer .address {
	padding:0;
	width:100%;
	padding-left:0.;
	text-align: center;
}
#footer .sns { margin: auto; max-width:85px;}
#footer .copy { text-align:center;}


/*--------------------------------------------------------
  TOPPAGE
--------------------------------------------------------*/
#toppage { overflow-x: hidden;}
#toppage h2 { padding:10% 0;}

/* MAIN */
#toppage .main { height:60vh; min-height:450px;}

/* NEWS */
#toppage .news { padding-top:25%;}
#toppage .news h2 { float:none; padding: 0 0 20px; width:100%; text-align:center;}
#toppage .news .news_read,
#toppage .news ul li .tit .day,
#toppage .news ul li .tit a:link { display: block; float:none; width:100%;}
#toppage .news::before { width: 200%;}
#toppage .news2 { padding:40px 0 80px;}
#toppage .news2 .cont { max-width:920px;}
#toppage .news2 .news_read { padding:65px 0 0; }
#toppage .news2 ul li { padding:15px 40px;}
#toppage .news2 ul li+li { margin-top: 10px; }
#toppage .news2 ul li .tit .day {  float:none; width:100%; text-align: left;}
#toppage .news2 .more_btn { margin-top:60px;}

/* SERVICE */
#toppage .service { padding:40px 0 80px;}
#toppage .service h2#maincome { text-align:left;}
#toppage .service ul { float:none; margin:60px 0 0; padding:0 0 0 120px; width:100%; text-align:left;}
#toppage .service ul + ul { margin:30px 0 0;}
#toppage .service ul li:nth-child(1) { margin-bottom:0; padding-bottom: 10px; font-size: 112.5%;}
#toppage .service ul li:nth-child(1)::after { display: none;}
#toppage .service ul li:nth-child(2) { font-size: 87.5% !important;}
#toppage .service ul.se1 { background: url("../img/service_icon1.svg") no-repeat left center ;}
#toppage .service ul.se2 { background: url("../img/service_icon2.svg") no-repeat left center ;}
#toppage .service ul.se3 { background: url("../img/service_icon3.svg") no-repeat left center ;}
#toppage .service ul { background-size:100px auto !important; }
#toppage .service ul li:last-child {font-size:100%;}
#toppage .service .more_btn { margin-top:60px;}


/*--------------------------------------------------------
  SUBPAGE
--------------------------------------------------------*/
#subpage .cont { padding:60px 0;}

/* TITLE */
#content h2.sb_tit { padding:150px 0 45px; }
#content h3.sb_tit { margin: 45px 0; padding:45px 0 45px; }
#content h3.mid { line-height: 220%;}
#content h3.mid .en { font-size:150%;}
#content h3.mid .ja { font-size:120%;}
#content .cate { padding:0;}
#content .cate { width: 80%; }
    
/* CATCH COPY */
#subpage .catch {font-size:150%;}

/* COMMON */
#subpage .comment1 {}
#subpage .comment2 {padding:5%;}
#subpage .comment3 {padding:5%;}

/* HYOU */
#subpage table.item_table {  margin:10% auto;}
#subpage table.item_table th,
#subpage table.item_table td { 
	table-layout:auto;
	display:block;
	padding:10px 0;
	width:100%;
	height:auto;
	text-align:left;
	font-weight:normal;
	box-sizing:border-box;
}
#subpage table.item_table th { 
	padding-bottom: 0;
	text-align:left;
	vertical-align: top;
	text-align-last:left;
	font-weight:500;
	border-bottom: none;
}
#subpage table.item_table td { padding-top: 0;}

/* LIST */
#subpage ul.list-ul {}

/* LINK */
#subpage .link2,
#subpage .link3,
#subpage .link4 {width:auto;}

/* EMBEDDED */
#subpage .embedded {}
#subpage .embedded iframe { width: 100%; height: 300px;}

/* PHOTO BOX */
#subpage ul.photo_box { clear:none !important; float:none !important; width:96% !important;}
#subpage ul.g1 li,
#subpage ul.g2 li,
#subpage ul.g3 li,
#subpage ul.g4 li,
#subpage ul.g5 li{ width:100%;}
#subpage ul.g1 li.photo img,
#subpage ul.g2 li.photo img,
#subpage ul.g3 li.photo img,
#subpage ul.g4 li.photo img,
#subpage ul.g5 li.photo img { max-width:100% !important; height:auto !important;}
#subpage ul.photo_box li.youtube {position: relative; width: 100%;}
#subpage ul.photo_box li.youtube iframe { width: 100% !important;  height: 100% !important;}

/* BOX */
#subpage .box1,
#subpage .box2 { float:none; width:96%;}
#subpage .photo-c,
#subpage .photo-l,
#subpage .photo-r { float:none !important; padding:0 !important; width:100% !important;}
#subpage .photo-c img,
#subpage .photo-l img,
#subpage .photo-r img { width: 100% !important; max-width:100% !important; height:auto !important; padding:0 0 20px !important;}
#subpage .temple-box {}

/* LINE */
#subpage .line {}

/* BUTTON */
#subpage .btn { float:none;}
#subpage .b1,
#subpage .b2,
#subpage .b3 { width:auto;}


/*--------------------------------------------------------
  NEWS
--------------------------------------------------------*/
#news ul li.news_box { margin: 0; padding: 30px 20px; }

/*--------------------------------------------------------
  ABOUT
--------------------------------------------------------*/
#about .icon { width: 250px;}
#about .company h3.mid { margin: 0; padding:0;}
#about .more_btn { margin: 0 auto;}
#about .map_btn { position: absolute; top:0; right: 10px;}


/*--------------------------------------------------------
  SERVICE
--------------------------------------------------------*/
#service .anchor_link p { padding: 0 5px;}
#service .service_cont .cont { margin: auto; padding:50px 0 50px 8%; width:100%; box-sizing: border-box;}
#service .service_cont .cont + .cont { padding-top: 100px;}
#service h3 { position: relative; padding-bottom:30px; margin-bottom:60px;}
#service h3 small,
#service h3 b { display: block; line-height:150%; text-align:left;}
#service h3 small { font-size:87.5%; }
#service h3 b { font-size:200%;}
#service h3::after { width:130px;}
#service .service_list { margin-top:30px; width: 100%;}
#service .service_list p { display:block; width: 100%; min-width:100%; font-size: 100%; margin: 5px 0; padding: 5px 0; line-height:130%;}
#service .model .service_list { width: 100%;}
#service .model .service_list p:nth-child(1) { width: 100%;}
#service .btn_cont { padding:60px 0;}
#service .model .flow { padding: 35px 0;}
#service .model .model_rei { padding: 20px 0;}
#service .model .model_rei ul { padding-bottom: 20px; overflow: hidden;}
#service .model .model_rei ul li { float: left; margin: 0 2%; padding:20px 0 20px 70px; font-size: 87.5%; line-height: 130%;}
#service .model .model_rei .come { text-align:left;}


/*--------------------------------------------------------
  WORKS
--------------------------------------------------------*/
#works dl dt p:nth-child(1),
#works dl dt p:nth-child(2) { float:none;}
#works dl dt p:nth-child(2) { margin-top: 5px;}
#works dl dd .works_photo li img { margin: auto; width:100%; object-fit: cover;}
#works dl dd .works_photo { float:none; margin-top:0; width: 100%; height: auto; min-height: inherit;}
#works dl dd .come { float:none; margin-top: 20px; width: 100%; height: auto; min-height: inherit;}
#works dl dd .come .gaiyou { margin-top: 20px; position: static; height: auto;}


/*--------------------------------------------------------
  CONTACT
--------------------------------------------------------*/
table.formTable th,
table.formTable td { 
	table-layout:auto;
	display:block;
	padding:10px 0;
	width:100% !important;
	height:auto;
	text-align:left;
	font-weight:normal;
	box-sizing:border-box;
}
#formWrap table.formTable tr th { border-bottom:none;}
#formWrap table.formTable tr td { padding:0 0 10px; }
.b_inqu .btn.b1,
.b_inqu .btn.b2 { margin: 0 auto !important;  width:60% !important;}
.b_inqu .btn input[type="submit"],
.b_inqu .btn input[type="reset"],
.b_inqu .btn input[type="button"]{ padding: 10px 20px; }

}