

* {
  margin: 0;
  padding: 0;
}

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

html{
	margin:0px;
	padding:0px;
}
body{
	background:#fff;
	text-align:center;
	color:#333333;
	font-weight:300;
	font-size: 14px;
	line-height:1.5;
	letter-spacing:1px;
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}
img{
	border-style:none;
	display:block;
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
}

a {
	color:#000;
	text-decoration:none;
}
a:hover {
	text-decoration: none;
}

li{list-style:none;}


.bg_ca0505{background-color:#ca0505;}
.bg_ededed{background-color:#ededed;}

.box_in{
	width:90%;
	padding: 40px 0 40px 0;
	margin: 0px auto;
	text-align: left;
}


/* ---Header----*/

#header {
width:100%;
margin:0 auto;
}

.header_top{
background-color:#fff;
width:100%;
height:70px;
}

#header_low {
width:100%;
margin:0 auto;
}
.header_in_low{
width:100%;
margin: 0px auto;
padding:0px 0px 0px 0px;
}

/* サイトロゴ */
.h_logo{
text-align:left;
height:70px;
margin:0px;
padding:0px 0px;
}
.h_logo a{
margin: 0px;
}
.h_logo img{
height:100%;
margin: 0px 0px 0px 0px;
}

.s-fade-wrap{
width:100%;
background-image:url("../images/mv_bg.jpg");
background-repeat:no-repeat;
background-size:cover;
background-position:center center;
position:relative;
}
.mv_view{
padding: 38% 0;
width: 75%;
margin: 0 auto;
}
.mv_view img{

width:100%;
margin: 0 auto;
}

.mv_none{
padding:70px 0 0 0;}



/* ここから下がハンバーガーメニューに関するCSS */
  
/* チェックボックスを非表示にする */
.drawer_hidden {
  display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer_open {
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  position:fixed;
  top:5px;
  right:0;
  z-index: 100;/* 重なり順を一番上にする */
  cursor: pointer;
}

/* ハンバーガーメニューのアイコン */
.drawer_open span,
.drawer_open span:before,
.drawer_open span:after {
  content: '';
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #ea0607;
  transition: 0.5s;
  position: absolute;
}

/* 三本線の一番上の棒の位置調整 */
.drawer_open span:before {
  bottom: 8px;
}
/* 三本線の一番下の棒の位置調整 */
.drawer_open span:after {
  top: 8px;
}
/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer_input:checked ~ .drawer_open span {
  background: rgba(255, 255, 255, 0);
}
/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer_input:checked ~ .drawer_open span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#drawer_input:checked ~ .drawer_open span::after {
  top: 0;
  transform: rotate(-45deg);
}
  
/* メニューのデザイン*/
.nav_content {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0px;
  left: 100%; /* メニューを画面の外に飛ばす */
  z-index: 99;
  background: #fff;
  transition: .5s;
}

/* メニュー黒ポチを消す */
.nav_list {
padding:0 10%;
list-style: none;
margin: 40px auto 20px;
}

.nav_list li{
font-size:18px;
font-weight: 500;
text-align:center;
margin:0 0 0px 0;
padding:15px 0 15px 0;
letter-spacing:1px;
border-bottom: 1px solid #ea0606;
}
.nav_list li:last-child{
border-bottom: none;
}
.nav_list li a{display:block;color:#111;}

/* アイコンがクリックされたらメニューを表示 */
#drawer_input:checked ~ .nav_content {
  left: 0;/* メニューを画面に入れる */
}
/* メニュー開いているときは背景スクロール禁止 */
body.is-drawer-open {
  overflow: hidden;
}



.h_tel{
width: 80%;
margin: 20px auto;
border: 2px solid #ea0606;
padding: 2.5%;
box-sizing: border-box;
align-items:center;
border-radius: 5px;
}
.h_tel p span{
text-align: center;
font-size:12px;
line-height:12px;
font-weight:500;
color:#000000;

}
.h_tel div{
line-height:36px;
display:flex;
align-items:center;
justify-content: center;
font-size:36px;
font-family: 'arial',sans-serif;
font-weight:600;
color:#ea0606;
margin: 0 auto;
}
.h_tel div img{
width: 30px;
margin: 0px 5px 0px 0px;
}

/* ---title---*/

.title_text_c{
text-align:center;
padding:0px 0 0 0;
}
.title_text_c h2 {
position: relative;
display: inline-block;
padding:0px 0px;
text-align:center;
font-size:20px;
line-height:20px;
letter-spacing: 5px;
font-weight:600;
color:#000000;
}
.title_text_c p{
margin:0px auto 10px auto;
text-align:center;
font-size:12px;
font-weight:400;
letter-spacing: 1px;
color:#444444;
}
.title_text_c span{
width: 10%;
display: block;
margin: 15px auto 0px auto;
}
.title_text_c span img{
width: 100%;
}


.title_text_c02{
text-align:center;
padding:0px 0 0 0;
}
.title_text_c02 h2 {
position: relative;
display: inline-block;
padding:0px 0px;
text-align:center;
font-size:20px;
line-height:20px;
letter-spacing: 5px;
font-weight:600;
color:#fff;
}
.title_text_c02 p{
margin:0px auto 10px auto;
text-align:center;
font-size:12px;
font-weight:400;
letter-spacing: 1px;
color:#fff;
}
.title_text_c02 span{
width: 10%;
display: block;
margin: 15px auto 0px auto;
}
.title_text_c02 span img{
width: 100%;
}


/* ---t_cv---*/

.btn_cv{
text-align:center;
width:100%;
margin:20px auto 20px auto;
}
.btn_cv button{
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
width:100%;
margin:0px auto 0px auto;
border: none;
background: none;
}
.btn_img{
	width:100%;
	margin:0px auto;
}
.btn_cv p{font-size:18px;color:#2b5a29;}
.btn_cv p span{color:#fff;}

.btn_cv button:hover{
opacity: 0.8;
}



/* ---t_one---*/

.bg_check{
background-image:url("../images/t_one01_bg.png");
background-size: 30%;
background-position: top -2% right -2%;
background-repeat: no-repeat;
}

.t_one01{
	width:100%;
	margin:30px auto 0px auto;
}
.t_one01_in01 h3{
font-size:18px;
font-weight:600;
color:#ea0606;
line-height:1.6;
margin:0px 0 20px 0;
}
.t_one01_in01{width:100%;}
.t_one01_in01 p{
font-weight:400;
font-size:14px;
line-height:1.7;
margin:15px 0 0 0;
}
.t_one01_in01 p span{font-size:16px;}

.t_one01_in02{width:100%;margin: 0 0 15px 0;}
.t_one01_in02 img{
width:100%;
}



.t_one02{
width:100%;
margin:30px auto 30px auto;
overflow:hidden;
}
.t_one02 h3{
text-align: center;
font-size: 16px;
letter-spacing: 3px;
color:#fff;
}
.t_one02_in{
margin:0px auto 0px auto;
}

.t_one02_in div{
width: 80%;
margin:30px auto 0px auto;
}
.t_one02_in div img{
width: 100%;
}
.t_one02_in div p{
text-align: center;
font-size: 14px;
line-height: 1.7;
letter-spacing: 1px;
color:#fff;
margin:20px auto 0px auto;
}



/* ---t_two---*/
.t_two{
	width:100%;
	padding:20px 0px 290px 0px;
	margin:0 auto;
	background-image:url("../images/two_view02.png");
	background-repeat:no-repeat;
	background-size:200px;
	background-position:bottom center;
}
.t_two h3{
text-align:center;
color:#ff6801;
font-size:18px;
font-weight:500;
}
.t_two_in01{
	max-width:300px;
	text-align:center;
	margin:30px auto 0 auto;
}
.t_two_in01 p{
line-height:1.7;
letter-spacing:-1px;
text-align:left;
font-size:18px;
font-weight:500;
font-family: 'Zen Maru Gothic', sans-serif;
margin:0 auto 15px auto;
}
.t_two p img{
width:25px;
display:inline;
vertical-align:middle;
margin:0 15px 0 0;
}

.t_two_in02{width:30%;
overflow:hidden;}
.t_two img{width:100%;margin:30px 0 0 0;z-index:-2;}

.t_two_in01_color{
color:red;
font-weight:600;}
.t_two_in01_size{display:block;font-size:16px;line-height:1.5;}




/* ---t_three---*/
.t_three{
	max-width:100%;
	margin:30px auto 30px auto;
}
.t_three p{
margin:0px auto 20px auto;
}

.t_three_in{
margin:0px auto 0px auto;
}
.t_three_bu{
width:100%;
background-color:#fff;
border:3px solid #ed950b;
padding:0;
border-radius:5px;
box-sizing: border-box;
overflow: hidden;
margin:0px auto 20px auto;
}
.t_three_or{
width:100%;
background-color:#fff;
border:3px solid #ca0505;
padding:0;
border-radius:5px;
box-sizing: border-box;
overflow: hidden;
margin:0px auto 20px auto;
}
.t_three_in_title01{background-color:#ed950b;color:#fff;text-align:left;padding:15px 0px;}
.t_three_in_title02{background-color:#ca0505;color:#fff;text-align:left;padding:15px 0px;}

.t_three_in_title01 h3{
text-align: center;
font-size:18px;
line-height:18px;
font-weight:500;
}
.t_three_in_title02 h3{
text-align: center;
font-size:18px;
line-height:18px;
font-weight:500;
}
.t_three_view02 img{width:100%;margin:0px auto;}


/* ---t_four---*/
.t_four{
width:100%;
margin:30px auto 0px auto;
text-align:center;
}
.t_four_box{
background-color:#f3f3f3 ;
border-radius:5px;
padding:20px;
margin:0px auto 20px auto;
text-align:left;
}
.t_four_box_in{
width:100%;
border-bottom: 3px solid #ea0607;
padding: 0 0 10px 0;
}

.t_four_box_view{width:30%;margin: 0 auto;}
.t_four_box_view img{width:100%;}

.t_four_box_reed{width:100%;}
.t_four_box_reed p{
font-size:12px;
line-height: 12px;
vertical-align:bottom;
margin: 20px 0 0 0;
}
.t_four_box_price{
font-size:18px;
line-height: 18px;
font-weight:500;
color:#ea0606;
vertical-align:bottom;
}
.t_four_box_job{
font-size:12px;
line-height: 12px;
font-weight:500;
color:#fff;
background-color:#ea0606;
border-radius: 5px;
padding: 5px 10px;
display: inline-block;
margin:0px 0 0 10px;
vertical-align:bottom;
}
.t_four_box_reed h3{
font-size:18px;
font-weight:500;
margin: 5px 0 0 0px;
}


.t_four_box_text{width:100%;}


.t_four_box_text p{
letter-spacing:1px;
line-height:1.8;
font-size:14px;
font-weight:400;
margin:20px 0 0 0
}
.t_four_box_text p span{color:#2b5a29;font-weight:600;}


/* ---t_five---*/
.t_five{
width:100%;
margin:10px auto 0px auto;
list-style:none;

}
.t_five li{
padding:10px 0px 10px 0px;
border-bottom:1px solid #fff;
}
.t_five h3{
display:flex;
align-items:center;
padding:10px 0px;
margin:0 auto;
line-height:1.7;
text-align:left;
font-size:14px;
font-weight:600;
color:#fff;
}
.t_five p{
display:flex;
align-items:center;
text-align:left;
margin:0 auto;
font-size:14px;
line-height:1.7;
padding:10px 0px ;
color:#fff;
}
.t_five h3 img{
width:30px;
margin:0 10px 0 0;
}
.t_five p img{
width:30px;
margin:0 10px 0 0;
}


/* ---t_six---*/
.t_six01{
width:100%;
margin:70px auto 0px auto;
text-align:center;
}
.t_six_box01{
width:90%;
margin: 0 auto;
}

.t_six_box01 div{
  width:100%;      /* 必要に応じて最小幅を設定（任意） */
  margin:-40px 0 0 0;
}
.t_six_box01 div img{width:100%;margin: 0 0 0 ;}


/* ---pp---*/
.pp{
	width:100%;
	padding:0px 0px 0px 0px;
	margin:30px auto 0px auto;
	list-style:none;

}
.pp li{padding:15px 0px 15px 0px;}
.pp h3{
letter-spacing:1px;
font-size:18px;
padding:15px 15px;
margin:15px 0 0 0 ;
line-height:1.5;
text-align:left;
font-weight:500;
font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
background-color:#2b5a29;
border-radius:3px;
color:#fff;
}
.pp p{
text-align:left;
margin:0 auto;
font-size:15px;
line-height:1.7;
padding:15px 0px ;
}


/* ---footer---*/


.footer{
background-color:#f6f7f9;
width:100%;
margin:0px auto 0 auto;
text-align:center;
padding:30px 0 30px 0;
}
.footer_in{
width:90%;
margin:0 auto;
padding:0;
}
.footer_list{
	width:100%;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:10px;
	flex-wrap:wrap;
	margin:10px auto 20px;
	border-bottom:1px solid #ccc;
	padding:0 0 20px 0;
}
.footer_list li{
	text-align:center;
	width:47%;
}
.footer_list li a{
	text-align:center;
	font-size:13px;
	font-weight:bold;
	color:#000;
}
.footer_list li a:hover{
	color:#ccc;
}



.f_logo{
width:30%;
margin:0 auto;
padding:0;
}
.f_logo img{width:100%;}
.f_copy{text-align:center;padding:20px 0 0px 0;}
.f_copy_in{

}
.copy{
text-align:center;
font-size:12px;
color:#000;
margin:0px 0;
}

    #pageTop {
	position:fixed;
	bottom:65px;
	left:0;
	right:0;
	width:20px;	
	margin:0px auto 0px auto;
    }
    #pageTop a img {
	width:100%;
	margin:0px auto 0px auto;
	-webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
	     -o-transition: 0.3s ease-in-out;
	        transition: 0.3s ease-in-out;
    }
    #pageTop a img:hover {
      opacity: 0.7;
    }




.fuwatAnime {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1.5s;
 -ms-animation-duration:1.5s;
 animation-duration:1.5s;
 -webkit-animation-name: fuwatAnime;
 -ms-animation-name: fuwatAnime;
 animation-name: fuwatAnime;
 visibility: visible !important;
}
@-webkit-keyframes fuwatAnime {
 0% { opacity: 0; -webkit-transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fuwatAnime {
 0% { opacity: 0; -webkit-transform: translateY(-20px); -ms-transform: translateY(-20px); transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}


.sp-none{
display:none !important;
}
.pc-br{
display:none !important;
}
.link_pc{
display:none !important;
}
.contact_btn02{
display:none !important;
}

.mt80{margin-top:80px;}



/* ---t_company---*/
.t_company{
width: 100%;
max-width: 1100px;
margin: 30px auto;
border-collapse:collapse;
border-spacing:0;
}

.t_company th{
display: block;
text-align:lrft;
padding: 15px;
background-color: #ededed;
box-sizing: border-box;
}

.t_company td{
display: block;
padding: 15px;
background-color: #fff;
border-bottom: 2px solid #ca0505;
box-sizing: border-box;
}

/* ---contact---*/


.contact_box {
background-color:#ededed;
box-sizing: border-box;
border-radius: 5px;
width:100%;
padding:20px;
margin:30px 0 0 0;
box-sizing: border-box;
}
.contact_box table{width:100%;}

.contact_box th{
padding:20px 0px 0px 0px;
display: block;
border: none;
text-align:left;
font-size:16px;
font-weight:bold;
}
.contact_box th span{color:red;font-size:14px;}
.contact_box td{
padding:10px 0px 20px 0px;
margin:0 0 0px 0;
display: block;
border: none;
text-align:left;
font-size:16px;
border-bottom:solid 1px #dedede;
}

.form_01{
padding:10px 2% 10px 2%;
border:solid 1px #dedede;
margin:0 auto;
width: 96%;
font-size:16px;
}
.form_02{
padding:7px 2% 7px 2%;
border:solid 1px #dedede;
margin:0 auto;
width: 96%;
height:200px;
resize: vertical;
font-size:16px;
}
.form_03 label{
margin:0 20px 0 0;
}
.form_03 label input{
margin:0 5px 0 0;
}


.cp_ipselect {
	overflow: hidden;
	width: 100%;
	margin: 0;
	text-align: center;
}
.cp_ipselect select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	font-size:16px;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.cp_ipselect select::-ms-expand {
    display: none;
}
.cp_ipselect.cp_sl01 {
	position: relative;
	border: 1px solid #bbbbbb;
	border-radius: 2px;
	background: #ffffff;
}
.cp_ipselect.cp_sl01::before {
	position: absolute;
	top: 0.8em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.cp_ipselect.cp_sl01 select {
	padding: 8px 38px 8px 8px;
	color: #666666;
}
.cp_radio_text{
display:inline-block;
margin:0 20px 0 10px;
}
.form-textarea{
	height:180px;
	resize: vertical;
	border:0;
	padding:7px;
	font-size:16px;
	border:solid 1px #dedede;
	margin:0 0 0px;
	width:100%;
	box-sizing:border-box;
}
.btn_r{
	font-size:16px;
	color:#fff;
	width: 100%;
	text-align: center;
	display: block;
	padding:15px 5%;
	margin: 20px auto 20px auto;
	border-radius: 10px;
	background-color:#cb0506;
	border:none;
    box-sizing: border-box;
	-webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
	     -o-transition: 0.3s ease-in-out;
	        transition: 0.3s ease-in-out;
	cursor:pointer ; 
	}
    



.fade-in {
  opacity: 0;
  transition-duration: 500ms;
  transition-property: opacity, transform;
}

.fade-in-up {
  transform: translate(0, 50px);
}

.fade-in-down {
  transform: translate(0, -50px);
}

.fade-in-left {
  transform: translate(-50px, 0);
}

.fade-in-right {
  transform: translate(50px, 0);
}

.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}

.animation{
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 1.5s;
}

.keyframe6 {
  animation-name: poyopoyo;
}

@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}


/* ふわふわアニメーションここから */
/* 縦のふわふわ指定 */
.fuwafuwa01 {
    animation: fuwafuwa01 2s infinite ease-in-out;
}
/* 縦のふわふわの動き */
@keyframes fuwafuwa01 {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(20px);
    }
}




.faq_wrap{
	width:90%;
	margin:20px auto;
	text-align:left;
}
.faq_wrap p{
	text-align:left;
	font-size:13px;
	line-height:1.8;
}

.faq_list dt{
	font-weight:bold;
	padding:5px 0 5px;
}
.faq_list dd{
	padding:5px 0 5px;
}
.error_box{
  display: none;
  width: 90%;
  padding: 15px;
  text-align: left;
  margin: 10px auto;
  /*border: 2px solid red;*/
  background:#faf0e6;
  font-size: 14px;
  color: red;
}