@charset "UTF-8";
/* CSS Document */

/*----------------------------------------------------
  #top
----------------------------------------------------*/
.line_gray{width: 100%;height: 30px;background: #ddd;}
.line_blue{width: 100%;height: 5px;background: #1a2e45;margin-bottom: 100px;}
@media (max-width: 768px) {
	.line_blue{margin-bottom: 0px;}
}

.main_top_ttl_area{color: #1a2e45;margin-bottom:50px; }
.main_top_ttl_area h2{
	font-family: "游ゴシック体 Medium", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: bold;line-height: 60px;padding: 90px 0 10px;font-size: 50px;}
.top_sub_ttl_txt{text-align: center;font-size: 20px;margin-bottom: 50px;}
.top_ttl_area{color: #1a2e45;margin-bottom:50px; }
.top_ttl_txt{font-family: 'Oswald', sans-serif;font-weight: normal;font-size: 4rem;letter-spacing: 0.2em;}

@media (max-width: 768px) {
	.main_top_ttl_area{color: #1a2e45;margin-bottom:50px;}
	.main_top_ttl_area h2{line-height: 36px;padding: 60px 0 10px;font-size: 26px;margin-top: 0;}
	.top_sub_ttl_txt{font-size: 16px;margin-bottom: 20px;margin-top: -10px;}
	.top_ttl_txt{font-weight: normal;font-size: 32px;letter-spacing:0.2em;}
	.top_ttl_area{margin-bottom:30px;}
}

/* ----- メインビジュアル ----- */
section#mv{
	position:relative;
	height: 600px;
	width: 100%;
	padding-top:80px;
}
@media (max-width: 768px) {
	section#mv{
	position:relative;
	height: 400px;
	width: 100%;
	padding-top:60px;
	}
}

.mv_item{
	width: 100%;
	position:absolute;
	top:50%;
	left:50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
@media (max-width: 768px) {
	.mv_item{top:55%;}
}

.mv_catch{
	text-align: center;
	margin-top: 40px;
	font-weight: 700;
	color:#fff;
}
@media (max-width: 768px) {
	.mv_catch{
		margin-top: 0px;
	}
}

.cc{
	color:#fff000; 
}
.mv_catch{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
}
p.act_txt {
  margin: 0;
  padding: 0;
  font-size: 5rem;
  text-align: center;
  line-height: 1.2;
  letter-spacing: .3rem;
  color: #005dac;
  text-shadow: 0 0 8px white,0 0 8px white,0 0 8px white;
  margin-bottom:20px;
}
@media (max-width: 768px) {
	p.act_txt {
	  font-size: 2.5rem;
	  letter-spacing: .1rem;
	}
}

.act_txt {
  opacity: 0;
  perspective: 200px;
}

.act_txt span {
  transform: rotateY(-90deg);
  opacity: 0;
}

.solution_ctn{width:90%;max-width: 1000px;margin:120px auto 120px;display: flex; justify-content: space-between; flex-wrap: wrap;}
.solution_img{display: flex;justify-content: space-between;width: 48%;}
.solution_img div{width: 25%;}
.solution_img div:nth-child(2n){margin-top: 50px;}
.solution_img div img{width: 100%;}
.solution_txt{width: 46%;}
.solution_txt h2{text-align: left;margin-top: -15px;}
.solution_line{height: 4px;width: 50px;background: #1a2e45;margin-bottom: 20px;margin-top: 5px;}
.solution_txt h3{font-size: 28px;line-height:36px;margin-bottom: 15px;}
.solution_txt p{font-size: 16px;margin-bottom: 30px;}
.solution_btn{width: 100%;display:flex;justify-content: space-between;flex-wrap: wrap;}

.sol1_btn_wide p,.sol2_btn_wide p{font-size: 1.5rem;letter-spacing: 0.05em;}
.sol1_btn_wide,.sol2_btn_wide{border: 0;position: relative;width: 80%;max-width: 220px;height: 50px;color: #eee;text-align: center;cursor: pointer;}
@media(max-width: 768px){
	.solution_ctn{width:90%;margin:40px auto 60px;}
	.solution_img{width: 100%;}
	.solution_img div:nth-child(2n){margin-top: 30px;}
    .sol1_btn_wide,.sol2_btn_wide{width: 90%;margin:  0 auto;margin-bottom:20px;width: 90%;max-width: 90%;}
    .solution_txt{width: 100%;}
	.solution_txt h2{text-align: left;margin-top: 60px;text-align: center;}
	.solution_line{height: 2px;width: 50px;background: #1a2e45;margin: 0 auto;margin-top: -5px;margin-bottom: 20px;}
	.solution_txt h3{font-size: 20px;line-height:28px;margin-bottom: 15px;text-align: center;}
	.solution_txt p{font-size: 14px;margin-bottom: 30px;}
}

.sol1_btn_slide,.sol2_btn_slide{overflow: hidden;}
.sol1_btn_slide div,.sol2_btn_slide div{
    position: absolute;
    text-align: center;
    width: 100%;
    height: 50px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    padding: 14px;
}
.sol1_btn_slide div:nth-child(1) {color: #fff;background: #1a2e45;}
.sol2_btn_slide div:nth-child(1) {color: #fff;background: #109a6e;}
.sol1_btn_slide div:nth-child(2),.sol2_btn_slide div:nth-child(2) {
    background: #ec881d;
    transition: left 0.3s ease;
    -webkit-transition: left 0.3s ease;
    -moz-transition: left 0.3s ease;
    left: -220px;
}
  @media(max-width: 768px){ 
      .sol1_btn_slide div:nth-child(2),.sol2_btn_slide div:nth-child(2) {left: -100%;}
}
.sol1_btn_slide div:nth-child(3),.sol2_btn_slide div:nth-child(3){color: #ffffff;transition: opacity 0.3s ease;-webkit-transition: opacity 0.3s ease;-moz-transition: opacity 0.3s ease;opacity: 0;}
.sol1_btn_slide:hover div:nth-child(2),.sol2_btn_slide:hover div:nth-child(2){left: 0px;transition: left 0.3s ease;-webkit-transition: left 0.3s ease;-moz-transition: left 0.3s ease;}
.sol1_btn_slide:hover div:nth-child(3),.sol2_btn_slide:hover div:nth-child(3){opacity: 1;transition: opacity 0.3s ease;-webkit-transition: opacity 0.3s ease;-moz-transition: opacity 0.3s ease;}

.meo_ctn{width:90%;max-width: 1000px;margin:60px auto 150px;display: flex; justify-content: space-between; flex-wrap: wrap;}
.meo_img{position:relative;width: 48%;}
.meo_img div{width: 90%;}
.meo_img div:nth-child(1){position: absolute;right: 0;top:0;z-index: 5;}
.meo_img div:nth-child(2){position: absolute;right: 100px;top:160px;}
.meo_img div img{width: 100%;}
.meo_txt{width: 46%;}
.meo_txt h2{letter-spacing: 0.1em;text-align: left;margin-top: -15px;font-weight: bold;font-family: "游ゴシック体 Medium", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
.meo_line{height: 4px;width: 50px;background: #1a2e45;margin-bottom: 20px;margin-top: 5px;}
.meo_txt h3{font-size: 28px;line-height:36px;margin-bottom: 15px;}
.meo_txt p{font-size: 16px;margin-bottom: 30px;}
.meo_txt p.meo_full{font-size: 16px;margin-bottom: 10px;margin-top: -10px;letter-spacing: 0.1rem;}
.meo_btn{width: 100%;display:flex;justify-content: space-between;flex-wrap: wrap;}

.meo_icon_ctn{width: 90%;max-width:700px;margin: 0 auto;display: flex;justify-content: space-between;flex-wrap: wrap;}
.meo_icon{box-sizing: border-box;background: #1a2e45;color:#fff;width: 200px;height: 200px;text-align: center;border-radius: 50%;}
.meo_icon img{width: 80px;padding-top:35px;}
.meo_icon p{font-size: 17px;margin-top: 8px;line-height: 22px}
.tri{color:#1a2e45; font-size: 40px;margin: 10px 0;text-align: center;}
.new{width: 90%;max-width: 700px;margin: 0 auto;text-align: center;padding: 10px;color:#1a2e45; border: 2px solid #1a2e45;font-size: 20px;font-weight: bold;letter-spacing: 0.1rem;margin-bottom: 120px;box-sizing: border-box;}

@media (max-width: 768px) {
	#meo_ttl{margin-top: 20px;font-size: 26px;}
	.meo_ctn{margin:0px auto 30px;}
	.meo_img{position:relative;width: 100%;}
	.meo_img div{width: 100%;}
	.meo_img div:nth-child(1){position: relative;right: 0;top:0;z-index: 5;}
	.meo_img div:nth-child(2){position: relative;right: 0;top:0;}
	.meo_txt{width: 100%;text-align:center;}
	.meo_txt h2{letter-spacing: 0.1em;text-align: left;margin-top: 0px;text-align: center;}
	.meo_txt h3{font-size: 20px;line-height:28px;margin-bottom: 15px;}
	.meo_txt p{font-size: 14px;margin-bottom: 0px;}
	.meo_txt p.meo_full{font-size: 14px;margin-bottom: 20px;margin-top: -15px;letter-spacing: 0.1rem;}
	.tri{font-size: 30px; margin: 0 0 5px;}
	.new{font-size: 16px;width: 80%;}

	.meo_icon{box-sizing: border-box;background: #1a2e45;color:#fff;width: 200px;height: 200px;text-align: center;border-radius: 50%;margin:0 auto;}
	.meo_icon img{width: 80px;padding-top:35px;}
	.meo_icon p{font-size: 14px;margin-top: 8px;line-height: 22px}
}

.spn_bg{width: 100%;background: #eee;padding: 50px 0 50px;}
.spn_ctn{position: relative;width: 90%;max-width: 1000px;margin:0 auto;display: flex;justify-content: space-between;flex-wrap: wrap;}
.spn_img{width: 35%;position: absolute;bottom:-50px;left:0;}
.spn_img img{width: 100%;vertical-align:top;margin-top: -40px;margin-left: 10px;}
.spn_space{width: 35%;}
.spn_txt{width:55%;}
.spn_txt_head{display: flex;align-items: center;}
.spn_txt_head div:nth-child(1){color:#fff;background: #1a2e45;font-size: 16px;padding: 3px 10px 2px;letter-spacing: 0.1em;margin-right: 10px;}
.spn_txt_head div:nth-child(2){color:#1a2e45;font-size: 28px;font-weight: bold;letter-spacing: 0.1em;}
.spn_line{width: 100%;height: 1px;background: #1a2e45;margin:10px 0 20px; }
.spn_txt h3{font-size: 21px;font-weight: normal;margin-bottom: 15px;line-height: 36px;}
.spn_txt p{font-size: 16px;}
@media (max-width: 768px) {
	.spn_img{width: 70%;position: relative;text-align:center;bottom:0;margin: 0 auto;margin-bottom: 30px;}
	.spn_space{display: none;}
	.spn_txt{width:100%;}
	.spn_txt_head{display: block;align-items: center;}
	.spn_txt_head div:nth-child(1){text-align:center;font-size: 12px;padding: 3px 10px 2px;letter-spacing: 0.1em;margin-right: 0;width:50%;margin:0 auto;}
	.spn_txt_head div:nth-child(2){text-align:center;color:#1a2e45;font-size: 24px;font-weight: bold;letter-spacing: normal;margin-top: 8px;}
	.spn_line{width: 100%;height: 1px;background: #1a2e45;margin:10px 0 20px; }

	.spn_txt h3{font-size: 16px;line-height: 22px;}
	.spn_txt p{font-size: 14px;}
	.meo_icon_ctn_sp{width: 80%;margin:0 auto;text-align:center; }
}


#servicies{display: block;padding-top: 100px;margin-top: -100px;}

/* ----- section 対象施設 ----- */
h2.top{
	font-size: 2.6rem;
	width:460px;
	color:#333;
	border:1px solid #333;
	margin: 0 auto;
	padding: 5px 0;
}
@media (max-width: 768px) {
	h2.top{
		width: 80%;
		font-size: 2.2rem;
	}
}
section#content{padding:0 0 120px;}
@media (max-width: 768px) {
	section#content{padding:50px 0 50px;}
}

.lo3_ctn{
	max-width:900px; 
	padding:0 20px;
	margin: 0 auto;
	display:-webkit-box;
	display:flex;
	flex-wrap:wrap;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	margin-top: 20px;
	margin-bottom: 40px;
}
@media (max-width: 768px) {
	.log_ctn{
		display:block;
	}
}
.lo3_box{
	width:calc(100% / 3 - 10px);
    background: #fff;
    border: 1px solid #ccc;
    margin-bottom: 15px;
}
@media (max-width: 768px) {
	.lo3_box{
		max-width: 600px;
		width:100%;
		margin: 0 auto;
		margin-bottom: 10px;
	}
}

.lo3_box div{
	width:100%;
	height: 180px;
	background-color: #333;
}
#li_1{
	background:url(../img/voice2.jpg)no-repeat 0 0;
	background-size: cover;
}
#li_2{
	background:url(../img/voice3.jpg)no-repeat 0 0;
	background-size: cover;
}
#li_3{
	background:url(../img/voice1.jpg)no-repeat 0 0;
	background-size: cover;
}

.lo3_box h4{
	text-align: center;
	font-size:1.6rem;
	font-weight: bold;
	padding:10px 0 10px 0;
	background: #eee;
	color: #1a2e45;

}

/* ----- 見積もりの流れ ----- */

section#flow{
	padding:60px 0 100px;

}
@media (max-width: 768px) {
	section#flow{
	padding:0px 0 50px;
	}
}
h2#flow_ttl{
	font-size: 3rem;
}

.flow_ctn{
	max-width:880px;
	padding:0 20px;
	margin: 0 auto;
	display:-webkit-box;
	display:flex;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	margin-top: 40px;
	margin-bottom: 60px;
}
@media (max-width: 768px) {
	.flow_ctn{
		display:block;
		margin-bottom: 30px;
	}
}
.flow_box{
	width:calc(100% / 3 - 10px);
    max-width: 280px;
    background: #fff;
}
@media (max-width: 768px) {
	.flow_box{
		max-width: 600px;
		width:100%;
		margin: 0 auto;
	}
}
@media (max-width: 768px) {
	.flow_box:not(:nth-child(1)){
		margin-top: 10px;
	}
}

.flow_icon{
	margin: 0 auto;
	text-align: center;
}
.flow_icon img{
	width: 100%;
}
@media (max-width: 768px) {
	.flow_icon img{
	}
}
.flow_ttl{
	text-align: left;
    font-size: 1.8rem;
    font-weight: bold;
}
.flow_ttl_small{
	text-align: left;
    font-size: 1.2rem;
}
.flow_txt_box{
	padding: 10px 20px 20px;
}
p.flow_txt{
	font-size: 1.4rem;
	margin-top: 10px;
}
@media(max-width: 768px){
	.flow_txt_box{padding: 10px 10px 20px;}
}



/* ----- お客様の声 ----- */

section#voice{
	background-color:#eee;
	padding:60px 0 100px;

}
@media (max-width: 768px) {
	section#voice{
	padding:10px 0 70px;
	}
}
h2#voice_ttl{
	font-size: 3rem;
}
.voice_ctn{
	max-width:880px;
	padding:0 20px;
	margin: 0 auto;
	margin-top: 40px;
}
@media (max-width: 768px) {
	.voice_ctn{
		width: 90%;
		display:block;
		padding: 0 0;
	}
}
.voice_box{
	width: 880px;
}
@media (max-width: 768px) {
	.voice_box{
		max-width: 600px;
		width:100%;
		margin: 0 auto;
	}
}
@media (max-width: 768px) {
	.voice_box:not(:nth-child(1)){
		margin-top: 10px;
	}
}
.voice_icon img{
	height: 220px;
	width: 300px;
}
@media (max-width: 768px) {
	.voice_icon img{
		height:auto;
		width: 100%;
	}
}
.voice_txt_box{
	box-sizing: border-box;
	width: 540px;
	font-size: 1.4rem;
}
@media (max-width: 768px) {
	.voice_txt_box{
		width: 100%
	}
}
.voice_ttl{
	color:#1a2e45;
	font-size: 2.6rem;
	font-weight: bold;
	margin-bottom: 10px;
}
@media (max-width: 768px) {
	.voice_ttl{
	color:#1a2e45;
	font-size: 2.3rem;
	margin-top: 10px;
	margin-bottom: 5px;
	}
}
.voice_name{
	text-align: right;
	font-weight: bold;
	margin-top: 10px;
	margin-right: 7px;
}
.voice_line{
	width: 800px;
	height: 1px;
	background: #aaa;
	margin: 0 auto;
	margin-top: 40px;
	margin-bottom: 50px;
}
@media (max-width: 768px) {
	.voice_line{
		width:90%;
	}
}

/* ----- エントリーボタン ----- */
section#links{
	background: #555;
	padding:60px 0 0 0;
}


/* ----- 会社概要ボタン ----- */

.link_ctn {
	display: -webkit-flex;
	display: flex;
	width:860px;
	margin: 0 auto;
}
@media (max-width: 768px) {
	.link_ctn {
		display: block;
		width:90%;
	}
}


.medi_flex{max-width: 1000px;width:90%;margin: 0 auto;display: flex;justify-content: space-between;flex-wrap: wrap;}
.medi_img{width: 51%;}
.medi_img img{width: 100%;}
.medi_txt{width: 44%;}
#medi_ex{font-size: 15px;letter-spacing: 0.1rem;color:#1a2e45;}
.medi_txt img{max-width:360px;width: 75%;margin-top: 10px;}
.medi_txt h3{font-size: 28px;line-height: 36px;margin:30px 0 10px;}
.medi_txt p{font-size: 16px;}
h3.jisseki{text-align: center;font-size: 26px;letter-spacing: 0.1rem;color:#1a2e45;margin-top: 70px;}

@media(max-width: 768px){ 
    .medi_img{width: 100%;margin-bottom: 10px;}
    .medi_txt{width: 100%;}
    #medi_ex{font-size: 14px;letter-spacing: normal;color:#1a2e45;text-align:center; }
    .medi_txt{text-align: center;}
	.medi_txt img{margin: 0 auto;}
	.medi_txt h3{font-size: 20px;line-height: 36px;margin:20px 0 10px;line-height: 28px;}
	.medi_txt p{font-size: 14px;}
	h3.jisseki{font-size: 18px;margin-top: 30px;}
}


.top1_btn_wide p,.top2_btn_wide p{font-size: 1.5rem;letter-spacing: 0.05em;}
.top1_btn_wide,.top2_btn_wide{margin: 0 auto;border: 0;position: relative;width: 80%;max-width: 760px;height: 54px;color: #eee;text-align: center;cursor: pointer;}
@media(max-width: 768px){ 
    .top1_btn_wide,.top2_btn_wide{width: 80%;margin:  0 auto;margin-bottom:30px; }
}
.top1_btn_slide,.top2_btn_slide{overflow: hidden;}
.top1_btn_slide div,.top2_btn_slide div{
    position: absolute;
    text-align: center;
    width: 100%;
    height: 54px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    padding: 17px;
}
.top1_btn_slide div:nth-child(1) {color: #fff;background: #1a2e45;}
.top2_btn_slide div:nth-child(1) {color: #fff;background: #109a6e;}
.top1_btn_slide div:nth-child(2),.top2_btn_slide div:nth-child(2) {
    background: #ec881d;
    transition: left 0.3s ease;
    -webkit-transition: left 0.3s ease;
    -moz-transition: left 0.3s ease;
    left: -760px;
}
  @media(max-width: 768px){ 
      .top1_btn_slide div:nth-child(2),.top2_btn_slide div:nth-child(2) {left: -100%;}
}
.top1_btn_slide div:nth-child(3),.top2_btn_slide div:nth-child(3){color: #ffffff;transition: opacity 0.3s ease;-webkit-transition: opacity 0.3s ease;-moz-transition: opacity 0.3s ease;opacity: 0;}
.top1_btn_slide:hover div:nth-child(2),.top2_btn_slide:hover div:nth-child(2){left: 0px;transition: left 0.3s ease;-webkit-transition: left 0.3s ease;-moz-transition: left 0.3s ease;}
.top1_btn_slide:hover div:nth-child(3),.top2_btn_slide:hover div:nth-child(3){opacity: 1;transition: opacity 0.3s ease;-webkit-transition: opacity 0.3s ease;-moz-transition: opacity 0.3s ease;}