@charset "utf-8";
/* CSS Document */
body{
	margin: 0;
	padding: 0;
	color: #FBFBFB;
	background: linear-gradient(70deg, #354065, #06101d);
}
.effect i {
  height: 120px;
  padding: 20px;
  font-size: 100px;
  transition: .8s;
}
.effect div {
  margin: auto;
  transition: .8s;
  transition-delay: .8s;
}

.company_img {
	margin:auto 20px;
}
.flex {
	display: flex;
	justify-content: center;
	position: relative;
}

iframe {
	margin:auto;
}

.top_img {
	background-image: url("../image/top_img.jpg");
	background-repeat: no-repeat;
	height: 700px;
	background-position: center;
	background-size: cover;
	position: relative;
}

.h2_bl {
  	position: relative;
 	display: inline-block;
 	padding: 0 55px;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	text-align: center;
	font-size: 1.8em;
	margin: 50px auto 0;
	left: 50%;
	transform: translateX(-50%);
}

.h2_bl:before, .h2_bl:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: #06101d;
}

.h2_bl:before {
  left:0;
}
.h2_bl:after {
  right: 0;
}

.h2_bl_sp {
  	position: relative;
 	display: inline-block;
 	padding: 0 55px;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	text-align: center;
	margin: 10px auto 0;
	left: 50%;
	transform: translateX(-50%);
}

.h2_bl_sp:before, .h2_bl_sp:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: #06101d;
}

.h2_bl_sp:before {
  left:0;
}
.h2_bl_sp:after {
  right: 0;
}


.h2_2 {
  	position: relative;
 	display: inline-block;
 	padding: 0 55px;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	text-align: center;
	font-size: 1.8em;
	margin: 50px auto 0;
	left: 50%;
	transform: translateX(-50%);
}

.h2_2:before, .h2_2:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: #fff;
}

.h2_2:before {
  left:0;
}
.h2_2:after {
  right: 0;
}



.h2_2_sp {
  	position: relative;
 	display: inline-block;
 	padding: 0 55px;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	text-align: center;
	margin: 35px auto 35px;
	left: 50%;
	transform: translateX(-50%);
}

.h2_2_sp:before, .h2_2_sp:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: #fff;
}

.h2_2_sp:before {
  left:0;
}
.h2_2_sp:after {
  right: 0;
}




.works_img {
	width: 300px;
	margin: auto 10px;
}

.works_title {
	text-align: center;
	margin: 0;
}

.works_flex {
	display: flex;
	justify-content: center;
	margin: 30px auto 60px;
}

.box1 {
	background-image: url("../image/bg1.jpg");
	color: #354065;
}





.top_bg {
	background-image: url("../image/top-bg.png");
	background-size: cover;
	background-position: center;
	height: 500px;
	padding: 50px 0 100px 0;
}

.top_bg2 {
	background-image: url("../image/top-bg2.png");
	background-size: cover;
	background-position: center;
}



.btn_2 {
	color: #FBFBFB;
	background: linear-gradient(70deg, #354065, #06101d);
	text-align: center;
	width: 80%;
	margin: auto;
	border-radius: 8px;
}
.btn_2 a{
	padding: 5px;
	color: #fbfbfb;
	text-decoration: none;
	display: block;
	
}



.box1_img {
	width: 70%;
	margin: auto auto 50px;
}

.box1_p {
	width: 40%;
	margin: 30px auto;
}



.information {
	margin-bottom: 50px;
}

.map {
	width: 50%;
}

.box4 {
	width: 50%;
	background-image: url("../image/bg1.jpg");
	color: #06101d;

}

.btn {
	position: relative;
	text-align: center;
	background: linear-gradient(70deg, #81632d, #e1c083, #c09a53);
	text-decoration: none;
	border-radius: 4px;
	box-shadow: 0 3px 0 #5f4921;
	display: block;
	letter-spacing:2px;
	margin: 10px;
	line-height: 1.8em;
	font-weight: bold;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size: 1.5em;
	padding: 0 10px;
	white-space: nowrap;
	min-width: 40%;
}
.btn:hover{
	top:3px;
	box-shadow: none;
}
.btn a{
	text-decoration: none;
	color: #fff;
	display: inline-block;
	width: 100%;
	padding: 15px 0;
}


.btn_sp {
	position: relative;
	text-align: center;
	background: linear-gradient(70deg, #81632d, #e1c083, #c09a53);
	text-decoration: none;
	border-radius: 4px;
	box-shadow: 0 3px 0 #5f4921;
	display: block;
	letter-spacing:2px;
	width: 35%;
	margin: auto;
	line-height: 1.8em;
	font-weight: bold;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size: 1.5em;
	padding: 10px;
	white-space: nowrap;
}
.btn_sp:hover{
	top:3px;
	box-shadow: none;
}
.btn_sp a{
	text-decoration: none;
	color: #fff;
	display: inline-block;
	width: 100%;
	padding: 15px 0;
}




.box4_img {
	background-image: url("../image/box4.png");
	background-size: 70%;
	background-repeat: no-repeat;
	background-position: right;
	height: 390px;
}



.box4_p {
	text-align: center;
	width: 70%;
	margin: 20px auto;
}

.footer_flex {
	display: flex;
	justify-content: center;
	
}
.footer_flex a{
	text-decoration: none;
	color: #fff;
}



.small {
	font-weight: 400;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

.case_img {
	width: 50%;
}

.case_flex {
	display:flex;
}

.case_box {
	width: 60%;
	margin: 30px auto;
	padding: 30px;
	background-image: url("../image/bg1.jpg");
	background-size: 100%;
	color: #06101d;
}

.case_h3 {
	text-align: center;
}

.main_p {
	text-align: center;
}

.case_box_p {
	width: 50%;
	margin: auto 20px;
}

.map_flex {
	display: flex;
	justify-content: center;
	margin: 50px auto;
}

.company_table {
	 width: 40%;
  border-collapse: collapse;
	margin: 0 0 auto 10px;
}

.company_tr {
	border-bottom: solid 2px white;
}
.company_tr tr:last-child{
  border-bottom: none;
}

.company_th {
	position: relative;
  width: 30%;
  background-color: #fce710;
  color: #06101d;
  text-align: center;
  padding: 10px 0;
}
.company_th:after{
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  position: absolute;
  top:calc(50% - 10px);
  right:-10px;
  border-left: 10px solid #fce710;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

.company_td {
	text-align: left;
  width: 70%;
  background-color: #eee;
  padding: 0 0 0 50px;
	color: #06101d;
}

.information_table {
	margin: 50px auto;
}

.required {
	background-color: red;
	display: block;
	padding: 5px;
	border-radius: 5px;
	margin: auto 10px;
	color: #fff;
}

.information_th {
	text-align: left;
	border-right: solid 1px;
	display: inline-flex;
	width: 100%;
	justify-content: space-between;
	padding: 7px 0;
}



.button {
	text-align: center;
}



.information_td {
	padding: 0 10px;
}

.top_img5 {
	background-image: url("../image/top_img5.jpg");
	background-repeat: no-repeat;
	height: 500px;
	background-position: top;
	background-size: cover;
	position: relative;
}

.top_img2 {
	background-image: url("../image/top_img2.jpg");
	background-repeat: no-repeat;
	height: 500px;
	background-position: center;
	background-size: cover;
	position: relative;
}

.top_img3 {
	background-image: url("../image/top_img3.jpg");
	background-repeat: no-repeat;
	height: 500px;
	background-position: center;
	background-size: cover;
	position: relative;
}

.top_img4 {
	background-image: url("../image/top_img.jpg");
	background-repeat: no-repeat;
	height: 500px;
	background-position: center;
	background-size: cover;
	position: relative;
}

.information_frame {
	background-color: #fff;
	width: 60%;
	margin: 20px auto;
	border-radius: 8px;
	padding: 20px;
	color: #06101d;
	overflow-y: scroll;
	height: 120px;
}

.information_flex {
	display: flex;
	border-bottom: #E9E9E9 solid 1px;
}

.information_day {
	padding-right: 10px;
	border-right: solid 1px;
	margin-right: 10px;
}

.step_box {
	width: 60%;
	margin: 30px auto;
	padding: 30px;
	background-image: url("../image/bg1.jpg");
	background-size: 100%;
	color: #06101d;
}

.step_img {
	width: 30%;
}

.step {
	margin-bottom: 80px;
}

.form_bg {
	background-color: #F0F0F0;
	width: 50%;
	margin: 30px auto 100px;
	color: #06101d;
	padding: 30px;
}

.box2 {
	background-color: #fff;
	padding: 50px 0 100px 0;
	color: #06101d;
}

/*ふわっと*/
.scroll-up {
  opacity: 0; 
  visibility: hidden;
  transform: translateY(50px);
  transition: all 1s;
}
.scroll-up.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}

.pc{
	display: block;
}
.sp{
	display: none;
}
@media (max-width:599px){
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}
}



.top_bg_sp {
	background-image: url("../image/top-bg_sp.png");
	background-size: cover;
	background-position: center;
	padding: 50px 0 100px 0;
}

.box1_p_sp {
	width: 80%;
	margin: 30px auto;
}

.box1_img_sp {
	width: 100%;
	margin: auto auto 50px;
}

.works_img_sp {
	width: 95%;
	margin: 30px auto;
}

.works_title_sp {
	text-align: center;
}

.box2_sp {
	background-color: #fff;
	padding: 50px 0;
	color: #06101d;
}

.information_frame_sp {
	background-color: #fff;
	width: 80%;
	margin: 20px auto;
	border-radius: 8px;
	padding: 0 20px;
	color: #06101d;
	overflow-y: scroll;
	height: 70px;
}

.box4_sp {
	background-image: url("../image/bg1.jpg");
	color: #06101d;
	padding-top: 30px;
}

.box4_img_sp {
	background-image: url("../image/box4.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right;
	padding-bottom: 50px; 
}



.btn_2_sp {
	color: #FBFBFB;
	background: linear-gradient(70deg, #354065, #06101d);
	text-align: center;
	width: 60%;
	margin: auto;
	border-radius: 8px;
	padding: 5px 0;
}
.btn_2_sp a{
	padding: 5px;
	color: #fbfbfb;
	text-decoration: none;
	display: block;
	
}

.box1_p2_sp {
	width: 80%;
	margin: 15px auto 30px;
	text-align: center;
	font-size: 1.5em;
}



.case_img_sp {
	width: 95%;
	margin: auto;
}

.case_box_p_sp {
	width: 95%;
	margin: auto;
}

.top_img2_sp {
	background-image: url("../image/top_img2_sp.jpg");
	background-repeat: no-repeat;
	height: 100vh;
	background-position: bottom;
	background-size: cover;
	position: relative;
}



.step_img_sp {
	width: 80%;
	margin: auto;
}

.top_img3_sp {
	background-image: url("../image/top_img3_sp.jpg");
	background-repeat: no-repeat;
	height: 100vh;
	background-position: bottom;
	background-size: cover;
	position: relative;
}

.company_table_sp {
	 width: 90%;
  border-collapse: collapse;
	margin: 30px auto;
}

.company_img_sp {
	width: 90%;
	margin: auto auto 30px;
}

.top_title_sp {
	background-color: #373737;
}

.form_bg_sp {
	background-color: #F0F0F0;
	width: 90%;
	margin: 30px auto 50px;
	color: #06101d;
	padding: 20px;
}
