@charset "utf-8";
/*------------------------------------------------------------
	Reset
------------------------------------------------------------*/
*{
	box-sizing: border-box
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,figure {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 1em;
	box-sizing: border-box;
	font-family: sans-serif;
}
html {
	font-size: 62.5%;
}
body{
	color: #333;
	background: #F3FAFC
}
ol, ul {
	list-style: none;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
}
input[type=text],
select,
input[type=email],
input[type=tel],
textarea{
	border: 1px solid #ccc;
	padding: 12px;
	border-radius: 4px;
	width: 100%;
	outline: none;
	font-size: 1.6rem
	
}
/*------------------------------------------------------------
	Stracture
------------------------------------------------------------*/
.inner{
	width:1100px;
	padding: 30px 0;
	margin: 0 auto;
}

.inner2{
	width:1100px;
	padding: 50px;
	margin: 0 auto;
	background: #FFF;
	border-radius: 15px;
	border:1px solid #ccc;
	position: relative;
	margin-bottom: 30px;
}
/*------------------------------------------------------------
	Header
------------------------------------------------------------*/
header{
	z-index: 1;
	position: relative;
	width: 100%;
	height: 70px;
	background: #FFF;
	border-bottom: 1px solid #ccc;
}
#header_inner{
	width: 100%;
	margin: 0 auto;
	position: relative
}
#hdr_logo{
	position: absolute;
	width: 260px;

	top:10px;
	left: 10px;
}
#hdr_logo img{
	width: 100%;
	height: auto
}
#hdr_description{
	position: absolute;
	width: 445px;
	top:23px;
	left: 290px;
	font-size: 1.6rem;
	font-weight: bold;
	color: #666;
}
#hdr_tel{
	position: absolute;
	display: block;
	width: 220px;
	top:15px;
	right: 230px;
	font-size: 25px;
	font-weight: bold;
	padding-left: 27px;
	line-height: 1;
	text-decoration:none;
	color:#333
}
#hdr_tel img{
	display: block;
	width: 20px;
	height: auto;
	position: absolute;
	top:4px;
	left: 0px;
}
#hdr_tel span{
	font-size: 1.1rem;
	font-weight: bold;
	display: block;
	padding-top: 3px;
}
#hdr_entry{
	display: block;
	position: absolute;
	width: 220px;
	height: 70px;
    background: #5DBAD6;
	color: #FFF;
	font-size: 2rem;
	line-height: 1;
	text-decoration: none;
	padding-left: 0px;
	right: 0;
	top:0;
	font-weight: bold;
	padding-top: 22px;
	text-align: center
}
#hdr_entry img{
	display: inline-block;
	width: 27px;
	height: auto;
	margin-right: 0.3rem;
	vertical-align: middle
}
#hdr_entry:hover{
	opacity: 0.95;
}
#confirm #hdr_entry,#thanks #hdr_entry{
	display: none
}
/*------------------------------------------------------------
	Footer
------------------------------------------------------------*/
#contact{
	text-align: center;
	background:#F3FAFC;
	padding: 40px 0;
}
#contact .inner{
	overflow: hidden;
	background: #FFF;
	border-radius: 6px;
	width: 1100px;
	margin: 0 auto;
	padding: 30px 0;
	border: 1px solid #5DBAD6
}
#contact .item{
	width: 50%;
	padding: 50px 0;
}
#contact .item h2{
	font-size: 3rem;
	padding-bottom: 5px;
}

#contact .item h2 div{
	font-size: 1.5rem;
	display: block;
	padding-bottom: 5px;
}
#contact .item:first-child{
	float: left;
	border-right: 3px solid #eee;
}
#contact .item:first-child p{
	padding-top: 12px
}
#contact .item:last-child{
	float: right;
}
#contact .item p{
	font-size: 1.6rem;
	margin-bottom: 20px
}
#contact .bdr{
	width: 80px;
}
.btn_contact{
}
footer{
	text-align: center;
	font-size: 1.6rem;
	padding: 30px 0;
	background:#FFF;

}
#ftr_logo{
	width:213px;
	margin: 0 auto
}
#ftr_logo img{
	width:100%;
	height: auto;
}
#ftr_address{
	padding-top: 10px;
}
#copyright{
	padding-top: 10px;
}

	
/*------------------------------------------------------------
	Common
------------------------------------------------------------*/
.btn1{
	display: inline-block;
    background: #5DBAD6;
	color: #FFF;
	border: none;
	border-radius: 7px;

	text-decoration: none;
	line-height: 1;
	text-align: center;
	width: 265px;
	padding: 21px 10px 18px 10px;
	font-size: 1.8rem;
	position: relative;
	font-weight: bold
}
.btn1:hover{
	opacity: 0.9;
}
.btn1 span,.btn2 span{
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	display: block;
	width: 8px;
	height: 20px;
	position: absolute;
	top:18px;
	right: 15px;
	background-image: url("../img/arrow_wh.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.bdr{
	display: block;
	width: 200px;
	height: 3px;
	background: #5DBAD6;
	margin: 5px auto 0 auto
}
.h1{
	font-size: 3rem;
	text-align: center;
	padding: 20px;
}
.h2{
	font-size: 2rem;
    background:#5DBAD6;
	line-height: 1;
	color: #FFF;
	padding: 15px;
	margin-bottom: 10px;
	text-align: center
}
.h3{
	font-size: 17px;

	line-height: 1;

	padding: 5px 15px 15px 15px;
	margin-bottom: 10px;
	text-align: center
}
.ta1{
	width: 100%;
	margin-bottom: 20px;
}
.ta1 td,.ta1 th{
	font-size: 1.6rem;
	padding: 10px;
	border-bottom: 1px solid #ccc;
}
.ta1 th{
	background: #eeee;
	width: 25%
}
.ta1 td{
	background: #FFF;

}


.w100{
	width: 100%;
	height: auto
}
.edit_btn{ font-size: 1.6rem; }
.center{ text-align: center }
.txt1{font-size: 1.6rem}
.sp{ display: none; }
.pc{ display: block; }
.mb50{ margin-bottom: 50px; }
.mb40{ margin-bottom: 40px; }
.mb30{ margin-bottom: 30px; }
.mb20{ margin-bottom: 20px; }
.mb10{ margin-bottom: 10px; }
.mb5{ margin-bottom: 5px; }
.error{ color: red; }
/*------------------------------------------------------------
	MV
------------------------------------------------------------*/
#mv{
	text-align: center;
	background:#F3FAFC;
}
#mv img{
	width: 100%;
	height: auto
}
#about{

}
#about p{
	font-size: 1.6rem;
	line-height: 200%;
	text-align: center;
	margin-bottom: 40px;
}
#about figure{
	display: block;
	text-align: center;
	margin-bottom: 40px;
}

.exp{
	font-size: 1.7rem;
	line-height: 150%;
	padding-top: 0px;
	padding-bottom: 20px;
	margin-bottom: 0px;
	text-align: center;
	color: #333;

}
.exp2{
	font-size: 1.8rem;
	line-height: 150%;
	margin-bottom: 10px;
	text-align: center;
	color: #333;
}
#work_info{
	background:#F3FAFC;;
	padding-bottom: 10px;
}

.tit1{
	text-align: center;
	margin-bottom: 20px;
}
.tit1 img{

	margin: 0 auto
}
.wbox{
	display:table;
	width: 950px;
	margin: 0 auto;
	padding-bottom: 0px;
}
.wbox .row{
	display: table-row;
	width: 100%;
}
.wbox .item1{
	width: 43%;
	display: table-cell;
	vertical-align: top;
	padding-bottom: 30px;
	padding-top: 30px;
	border-bottom: 2px dashed #ccc;
}
.wbox .item2{
	display: table-cell;
	padding-bottom: 30px;
	padding-top: 30px;
	border-bottom: 2px dashed #ccc;
}
.no_bdr{
	border: none !important
}
.wbox h2{
	font-size: 2.4rem;
	color: #5DBAD6;
	border-left: 4px solid #5DBAD6;
	padding-left: 15px;
	margin-bottom: 20px;
	line-height: 130%
}
.wbox h3{
	font-size: 2rem;
	color: #5DBAD6;
	margin-bottom: 10px;
}
.wbox .item2 p{
	font-size: 1.8rem;
	line-height: 180%
}
#work_info .person{
	position: absolute;
	width: 120px;
	right: -20px;
	bottom: 20px;
}
/*------------------------------------------------------------
	FAQ
------------------------------------------------------------*/

.faq_list{
	
}
.faq_list .item{
	padding-bottom: 25px;
	margin-bottom: 25px;
	border-bottom: 2px dashed #ccc;
	font-size: 1.6rem;
}
.faq_list .item:last-child{
	border: none;
}
.faq_list h2{
	font-size: 2.3rem;
	margin-bottom: 15px;
}
.qbox,.abox{
	padding-left: 46px;
	position: relative;
}
.qbox{
	padding-top: 3px;
}
.abox{
	padding-top: 6px;
}
.q,.a{
	font-size: 20px;
	font-family: Arial, Helvetica, "sans-serif";
	color: #FFF;
	border-radius: 100px;
	background: #5DBAD6;
	display: inline-block;
	font-weight: bold;
	padding: 8px 0 0 0;
	width: 3.5rem;
	height: 3.5rem;
	text-align: center;
	line-height: 1;
	position: absolute;
	top:0px;
	left: 0px;
}
.q{
	background: #5DBAD6;
}
.a{
	background: #ccc;
}
/*------------------------------------------------------------
	Form
------------------------------------------------------------*/
#form{

}
#privacy{
	font-size: 1.4rem;
	height: 300px;
	overflow-y: auto;
	width: 100%;
	padding: 15px;
	border: 1px solid #ccc;
	margin-bottom: 30px
}
#privacy p{
	padding-bottom: 15px;
}


/*------------------------------------------------------------
	Work
------------------------------------------------------------*/
#work{

	background-image: url("../img/bg2.jpg");

}
#work .inner{
	padding: 0;
}
.box_about{
	display: flex;
	width: 100%;
	padding: 0;
	margin: 0;
	color: #FFF;
}
.box_about .item:first-child{
	width: 40%;
	position: relative
}
.box_about .item:first-child img{
	position: absolute;
	bottom: 0;
	right: 30px;
}
.box_about .item:last-child{
	width: 60%;
	padding: 42px 0 60px 0;
}
.box_about h1{
	font-size: 2.7rem;
	border-bottom: 1px solid #FFF;
	margin-bottom: 15px;
	padding-bottom: 5px;
}
.box_about p{
	font-size: 1.6rem;
	line-height: 200%;
}
.work_detail{
	background: #FDFFD5;
	padding: 15px;
}
.work_detail p,.work_detail h2{
	color: #333
}
.work_detail h2{
	font-size: 2rem;
}
.box_about ul{
	padding: 15px 0 10px 0;
	display: flex;
}
.box_about li{
	width: 50%;
	padding: 0 3px;
}
/*------------------------------------------------------------
	Access
------------------------------------------------------------*/
#access{

}

.map_box{
	display: flex
}
.map_box .item1,
.map_box .item2{
	width:50%;
}
.map_box .item1{
	padding: 0 10px 0 0;
}
.map_box .item2{
	padding: 0 0 0 10px;
}
/*------------------------------------------------------------
	Reason
------------------------------------------------------------*/

.h1_2{
	text-align: center;
	font-size: 4.1rem;
	border: 2px solid #5DBAD6;
	padding: 30px 0 28px 0;
	border-radius: 100px;
	line-height: 1;
	color: #5DBAD6;
	background: #FFF
}
ul.list1{

}
ul.list1 li{
	margin-bottom: 15px;
	background: #FFF;
	border-radius: 8px;
	padding: 20px 40px;
	overflow: hidden;
	border: 1px solid #5DBAD6;
	border-radius: 10px;
	margin-bottom: 10px;
}
ul.list1 .point{
	width: 6%;
	float: left;
}
ul.list1 .point_r{
	width: 94%;
	float: right;
	overflow: hidden;
	vertical-align: middle
}
ul.list1 h2{
	font-size: 2.1rem;
	width: 24%;
	padding: 12px 0 0 20px;
	float: left;
	color: #5DBAD6;
	text-align: center
}
ul.list1 p{
	font-size: 1.7rem;
	width: 76%;
	float: right;
	padding-top: 5px;
	display: table-cell;
	vertical-align: middle;
	padding-left: 30px;
	border-left: 1px dashed #ccc;
	min-height: 70px;
}
.mj{
	padding-top: 1.5rem	 !important
}
ul.list1 .maru{
	font-size: 3.5rem;
	background: #5DBAD6;
	font-weight: bold;
	text-align: center;
	width: 72px;
	height: 72px;
	line-height: 1;
	border-radius: 72px;
	color: #FFF
}
ul.list1 span{
	font-size: 1rem;
	display: block;
	padding-top: 15px;
	padding-bottom: 4px
}
.triangle {
  width: 0;
  height: 0;
	display: block;
	margin: 0 auto 20px auto;
  border-style: solid;
  border-right: 25px solid transparent;
  border-left: 25px solid transparent;
  border-top: 25px solid #5DBAD6;
  border-bottom: 0;
}

.waku{

	background: #FFF;
	padding: 40px;
	border-radius: 15px;
	border: 3px solid #5DBAD6;
	box-shadow: 5px 5px 0 #ccc;
}
ul.list2{
	overflow: hidden;
	margin-bottom: 0px;
	background: #FFF;
	padding: 40px;
	border-radius: 15px;
	border: 3px solid #5DBAD6;
	box-shadow: 5px 5px 0 #ccc;
}
ul.list2 li{
	float: left;
	width: 33%;
	padding: 0 5px 25px 5px;
}
ul.list2 h3{
	font-size: 2.1rem;
	margin-bottom: 6px;
	text-align: center
}
ul.list2 figure{
	padding-bottom: 10px;
}
ul.list2 p{
	font-size: 1.7rem
}
#boshu{

}
.dummy{
	text-align: center;
	padding: 150px 0;
	background: #eee;
	font-weight: 3rem
}
.shiaku{
	font-size: 1.6rem;
	background:#E9FCF3;
	padding: 2rem;
	text-align: center
}
.shiaku h3{
	padding-bottom: 0.8rem;
	font-size: 1.7rem;
}
.box1{
	display: flex
}
.box1 .item1{
	font-size: 1.7rem;
	line-height: 200%;
	width: 80%;
	padding-right: 40px;
	margin-top: 20px;
}
.box1 .item2{
	width: 20%;
	text-align: right
}
.box1 .item2 img{
	margin-top: -15px;
}
.swiper {
  width: 100%;
  height: auto;
}
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.box3{
	display: flex;
	flex-wrap: wrap;
	gap:10px;
}
.box3 .item1{
	width: 49%;
}
@media screen and (max-width: 768px) {

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

/*------------------------------------------------------------
	Stracture
------------------------------------------------------------*/
.inner{
	width: 90%;
	padding: 30px 0;
	margin: 0 auto;
}
.inner2{
	width: 96%;
	margin: 0 auto 30px auto;
	padding: 15px;
}
/*------------------------------------------------------------
	Header
------------------------------------------------------------*/
header{
	min-width: 100%
}
#hdr_logo{
	position: relative;
	width: 240px;
	float: left;
	left: 7px;
	top:13px
}
#hdr_logo img{
	width: 100%;
	height: auto
}
#hdr_description,#hdr_tel{
	display: none
}
#hdr_entry{
	width: 135px;
	font-size: 1.7rem;
	right: 0;
	top:0;
	padding-top: 24px;
}
#header_inner{
	width: 100%;

}
/*------------------------------------------------------------
	Footer
------------------------------------------------------------*/
#contact .inner{
	width: 90%;
	padding: 20px 0;
}
#contact .item{
	width: 100%;
	padding: 10px 0;
}
#contact .item:first-child{
	padding: 0px 0 0px 0;
	border: none
}
#contact .item:last-child{
	padding: 0px 0 15px 0;
}
#contact .item h2{
	font-size: 2.3rem;
	padding-bottom: 5px;
}
/*------------------------------------------------------------
	Common
------------------------------------------------------------*/
.h1{
	font-size: 2.2rem;
	text-align: center;
	padding: 15px;
	margin-bottom: 10px
}

.img1{
	padding: 0;
}

/*------------------------------------------------------------
	About
------------------------------------------------------------*/
#about p{
	font-size: 1.6rem;
	line-height: 200%;
	text-align: left;
	margin-bottom: 40px;
}
#about h1{
	font-size: 19px;
	padding-bottom: 10px;
}
/*------------------------------------------------------------
	Reason
------------------------------------------------------------*/

.h1_2{
	text-align: center;
	font-size: 3rem;
	border: 2px solid #5DBAD6;
	padding: 20px 0 18px 0;
	border-radius: 10px;
	line-height: 1;
	color: #5DBAD6;
	background: #FFF
}
ul.list1{

}

ul.list1 .point{
	width: 23%;
	float: left;
}
ul.list1 li{
	border-radius: 8px;
	padding: 20px 10px;

}
ul.list1 .point_r{
	width: 74%;
	float: right;
	overflow: hidden
}
ul.list1 h2{
	font-size: 2.2rem;
	width: 100%;
	padding:12px 0 12px 0px !important;
	text-align: left;
	float: none;
	line-height: 130%;
}
ul.list1 p{
	font-size: 2rem;
	width: 100%;
	float: none;
	padding: 0px !important;;

}
ul.list1 .maru{
	margin: 0 auto
}
/*------------------------------------------------------------
	FAQ
------------------------------------------------------------*/
#faq .inner{
	padding: 10px 15px;
}
.faq_list h2{
	font-size: 1.8rem;
	margin-bottom: 15px;
}
ul.list1 p{
	border-left: none;
}


.wbox{
	display: block;
	width: 100%;
	margin: 0 auto;
	padding-bottom: 0px;
}
.wbox .row{
	display: block;
	width: 100%;
}
.wbox .item1{
	width: 100%;
	display: block;
	vertical-align: top;
	padding-bottom: 30px;
	padding-top: 0px;
	text-align: center;
	border-bottom:none
}
.wbox .item1 img{
	width: 100%;
	height: auto
	}
.wbox .item2{
	display: block;
	padding-bottom: 30px;
	padding-top: 0px;
	border-bottom:none;
}

.no_bdr{
	border: none !important
}
.wbox h2{
	font-size: 2.4rem;
	color: #5DBAD6;
	border-left: 4px solid #5DBAD6;
	padding-left: 15px;
	margin-bottom: 20px;
}
.wbox h3{
	font-size: 2rem;
	color: #5DBAD6;
	margin-bottom: 10px;
}
.wbox .item2 p{
	font-size: 1.8rem;
	line-height: 180%
}
#work_info .person{
	display: none;
}
.map_box{
	display:block
}
.map_box .item1,
.map_box .item2{
	width:100%;
	padding: 0;
	margin-bottom: 10px
}
.tit1{
	padding-top: 15px;
	margin-bottom: 15px;
}
.box1{
	display: block
}
.box1 .item1{
	width: 100%;
	padding-right: 0px;
	margin-top: 0px;
}
.box1 .item2{
	width: 100%;
	text-align: center;
	display: none;
}
.box1 .item2 img{
	margin-top: 30px;
	width: 70%;
	height: auto
}
.mj{
	padding-top:0!important
}
.swiper {
	width: 90%;
  height: auto;
}
.exp{
	font-size: 1.7rem;
	line-height: 150%;
	padding-bottom: 15px;
	margin-bottom: 0px;
	text-align: center;
	color: #333;
	background-image: url("../img/mari.png");
	background-position: right bottom ;
	background-repeat: no-repeat;
	background-size:80px auto
}
	.ta1 td, .ta1 th{
		display: block;
		width: 100%
	}
	.box3{
	display:block;
;
}
.box3 .item1{
	width: 100%;
	margin-bottom: 15px;
}
}