

* {
  margin: 0;
  padding: 0;
}
html{
	margin:0px;
	padding:0px;
}
body{
	background:#fff;
	text-align:center;
	color:#000;
	font-size: 14px;
	line-height:1.5;
	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 {
cursor:pointer;
	color:#333;
	text-decoration:none;
}
a:hover, a:focus {
	text-decoration: none;
	color:#ddd;
}

li{list-style:none;}



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


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

#header {
	background-color:#fff;
	position:fixed;
	z-index:999;
	overflow:hidden;
	width: 100%;
	height:70px;
	box-shadow: 10px 10px 10px 10px rgba(0,0,0,0.05);
}

.header_top{
display: flex;
justify-content: space-between;
align-items: center;
text-align:left;
}

.header_top_low{
	width:100%;
	margin: 0px auto 0px auto;
}

.h_logo_low{
	width:100%; 
	height:70px;
	margin:0px;

}
.h_logo_low a{
height:70px;
margin:0px;

}
.h_logo_low img{
display:inline;
height:50px;
margin:10px auto 0 auto;
}

.h_logo{
	width:100%; 
	height:70px;
	margin:0px;

}
.h_logo a{
height:70px;
margin:0px;

}
.h_logo img{
display:inline;
height:50px;
margin:10px auto 0 auto;
}


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

/* ハンバーガーアイコンの設置スペース */
.drawer_open {
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  position: relative;
  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: #5aaf00;
  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: 70px;
  left: 100%; /* メニューを画面の外に飛ばす */
  z-index: 99;
  background: #beea90;
  transition: .5s;
}

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

.nav_list li{
border-bottom:1px solid #000;
color:#fff;
font-size:18px;
font-weight: 600;
text-align:left;
margin:0 0 0px 0;

letter-spacing:3px;
}
.nav_list li:last-child{border-bottom:none;}
.nav_list li a{color:#000;display: block;padding:15px 0 15px 0;}

/* アイコンがクリックされたらメニューを表示 */
#drawer_input:checked ~ .nav_content {
  left: 0;/* メニューを画面に入れる */
}


.h_links02{
	width: 86%;
	margin:0px auto;
}

.h_nav02_btn01{
text-align: center;
margin:0px 0px 10px 0px;
font-size:18px;
letter-spacing:3px;
line-height:18px;
padding:20px 0 20px 0;
border-radius: 200px;
border-bottom:3px solid #9a011b;
font-weight: bold !important;
color:#fff;
background-color:#ff0000;
display:block;
box-sizing: border-box;
}


.h_nav02_btn02{
text-align: center;
margin:0px 0px 10px 0px;
font-size:18px;
letter-spacing:3px;
line-height:18px;
padding:20px 0 20px 0;
border-radius: 200px;
border-bottom:3px solid #3b7003;
font-weight: bold !important;
color:#fff;
background-color:#5aaf00;
display:block;
box-sizing: border-box;
}


.s-fade-wrap{
margin:0px 0 0 0;
padding:70px 0 0 0;
}

.mv_view{
	width:100%;
	margin:0 auto;
	padding:0px 0;
}
.mv_view img{
width:100%;
}

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

/* ---t_cv---*/

.t_cv_box{
	width: 100%;
	margin:0px 0 0 0;
	background-image: url(../images/cv_bg.jpg);
	background-size: 20px;
}
.t_cv_box_in{
  width:90%;
max-width: 600px;
margin:0px auto;
text-align:center;
	padding: 10px 0 30px 0;
}

.t_cv_view{
width:100%;
}
.t_cv_view p img{
width:80%;
margin: 10px auto 0 auto;
}
.t_cv_view p{
font-size: 22px;
font-weight:500;
line-height: 1.5;
letter-spacing: 2px;
}

.t_cv_view a img{
width:100%;
margin: 0px 0 0 0;
}


/* ---title---*/

.title_text_c {
width:100%;
margin:0px auto;
text-align: center;
}

.title_text_c h2 img{
max-width:100%;
max-height:35px;
margin:0px auto 0px auto;
}



/* ---t_one---*/
.t_one{
padding:20px 0px 0px 0px;
width:100%;
max-width: 600px;
margin:0px auto;
text-align:center;
}

.t_one h3{
display: inline-block;
letter-spacing:2px;
font-size:16px;
padding:0px 0px 5px 0px ;
margin:0 auto;
line-height:1.5;
color:red;
text-align:center;
font-weight:500;
}

.t_one_in{
width:100%;
padding:0px 0px;
margin: 0px auto 0 auto;
}
.t_one_in img{
width: 100%;
margin:20px 0;
}
.t_one_in div{
width: 100%;

}
.t_one_in div p{
margin:0px 0;
font-size: 14px;
font-weight: 600;
line-height:1.7;
letter-spacing:1px;
text-align:left;
}


/* ---t_two---*/
.t_two{
padding:20px 0px 0px 0px;
width:100%;
max-width: 600px;
margin:0px auto;
}

.t_two_in{

margin:20px 0 0 0;
}

.t_two h3{
letter-spacing:1px;
line-height: 1.5;
font-size: 14px;
font-weight: 500;
text-align:left;
}

.t_two_in_left{width:100%;}
.t_two_in_right{width:100%;}
.t_two_in div img{width: 100%;margin:20px 0 0 0;}


/* ---t_three---*/
.t_three{
width:100%;
max-width: 600px;
margin:0px auto;
}
.t_three_in{
width:100%;
margin:20px auto 0 auto;
background-color: #fff;
border: 10px solid #beea90;
overflow: hidden;
border-radius: 20px;
box-sizing: border-box;
position: relative;
}
.t_three_over{
position: absolute;
top:0;
bottom:0;
left:0;
right:0;
width:16%;
margin: auto;
}

@media screen and (max-width:600px){
.t_three_over{
position: absolute;
top:0;
bottom:0;
left:0;
right:0;
width:28%;
margin: auto;
}
}

.t_three_in_text{
width:100%;
}
.t_three_in_text_in{margin: 0 0 0 0px;}
.t_three_in_text_in h3{
font-size: 20px;
line-height: 20px;
letter-spacing: 1px;
font-weight:600;
padding: 20px 10px; 
text-align: center;
}
.t_three_in_text_in h3 span{color:red;}
.t_three_in_box{
background-color:#beea90;
padding: 20px; 
}
.t_three_in_text_in p{
font-size:14px;
letter-spacing: 1px;
line-height:1.7;

}
.t_three_in_text_in p span{
font-size:14px;
color:red;
}


/* ---t_four---*/
.t_four{
width:100%;
max-width: 600px;
margin:0px auto;
padding:20px 0px 0px 0px;
}

.t_four h3{
letter-spacing:1px;
font-size:16px;
padding:0px 0px 0px 0px ;
margin:0 auto;
line-height:1.7;
text-align:left;
font-weight:500;
}
.t_four_in{
width:100%;
max-width: 600px;
margin:0px auto;
display: flex;
align-items: center;
justify-content:space-between;
flex-wrap: wrap;

}
.t_four_in_box{
width:48%;
box-sizing: border-box;
margin:20px 0 0px 0;
}
.t_four_in_box div img{width:100%;}



/* ---t_five---*/
.t_five{
width:100%;
max-width: 600px;
margin:0px auto;
padding:0px 0px 0px 0px;
list-style:none;
}
.t_five li{
padding:0px 0px 0px 0px;
border:10px solid #5aaf00;
border-radius: 20px;
margin:20px 0 0px 0;
overflow: hidden;
box-sizing: border-box;
}
.t_five_in_view{
width:100%;
overflow: hidden;
margin:0px auto;
}
.t_five_in_view img{ width:100%;margin: -14% 0 -14% 0;}

.t_five_in_text{
width:100%;
margin:0px 0;
padding: 5%;
box-sizing: border-box;
text-align: center;
}
.t_five_in_text div{
background-color: #5aaf00;
padding:1% 10%;
border-radius:5px;
color:#fff;
display: inline-block;
margin:0px auto;
}

.t_five_in_text div span{
letter-spacing:1px;
line-height: 1.5;
font-size:18px;
font-weight: 600;
}
.t_five_in_text h3{
letter-spacing:1px;
font-size:24px;
padding:3% 10px 2% 10px ;
margin:0 auto;
line-height:1.5;
}
.t_five_in_text p{
letter-spacing:1px;
text-align:left;
margin:0 auto;
font-size:14px;
font-weight: 500;
line-height: 1.7;
padding:0px 0px 10px 0px ;
}

/* ---service---*/
.service{
width:100%;
margin:0px auto;
}

.service li{
border-bottom: 1px solid #5aaf00;
padding:30px 0;
}
.service li:last-child{
border-bottom: none;
}
.service_box_left{width:30%;margin:0 auto;}
.service_box_left img{width:100%;}
.service_box_right{width:100%;}
.service_box_right h3{
letter-spacing:1.5px;
font-size:20px;
font-weight:600;
padding:0 0 10px 0;
text-align: center;
color:#5aaf00;
}
.service_box_right p{
letter-spacing:1.5px;
font-size:14px;
font-weight:400;
}


/* ---company---*/

.company{
width:100%;
margin:0 auto;
padding:15px 0px 0px 0px;
}

.company li{
border-bottom: 1px solid #ccc;
padding:20px 0;
}
.company li:last-child{
border-bottom: none;
}
.company h3{width:100%;padding:0 0 10px 0;}
.company p{

}


/* ---pp---*/
.pp{
width:100%;
margin:0 auto;
padding:20px 0px 55px 0px;
}
.pp h3{padding:30px 0 10px 0;}
.pp p{}


/* ---footer---*/

.footer{
	width:100%;
	background-color: #5aaf00;
	text-align:center;
	padding:0px 0 0px 0;
	overflow: hidden;
	}
	.footer_in{
	padding:50px 0 50px 0;
	margin:0 auto;
	}
	
	
	.f_logo{
	width:45%;
	margin: 0 auto;
	}
	.f_logo img{width:100%;}
	
	.f_navi{
	width:100%;
	text-align:center;
	display: flex;
	align-items: center;
	justify-content: center;
		flex-wrap: wrap;
		gap: 10px;
	color:#fff;
	letter-spacing:2px;
	font-size:16px;
	font-weight:500;
	margin:0px auto 0px auto;
	}
	
	.f_navi a:hover{color:#ccc;}
	.f_navi a {color:#fff;}
	
	

.f_copy{
width:100%;
height:40px;
margin:0px auto;
text-align:center;
padding:0px 0 0px 0;
}
.f_copy_in{
	width:100%;
	margin:0 auto;
}
.copy{
letter-spacing:0px;
text-align:center;
font-size:14px;
color:#181818;
margin:20px auto 0px auto;
}

    #pageTop {
	position:fixed;
	bottom:10px;
	right:10px;
	width:40px;	
	margin:0px auto 0px auto;
	z-index:10;
    }
    #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;
    }



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

.mt80{margin-top:80px;}



/* ---login---*/

.login_box {
width: 100%;
margin: 30px auto 30px auto;
}
.login_box table{
width: 100%;
}
.login_box th{
	padding: 0 0px 5px 0px; 
    display: block;
    border: none;
	text-align:left;
	color:#333;
	font-weight:bold;
    }
.login_box th span{color:red;font-size:12px;}
.login_box td{
	padding: 0 0px 20px 0px; 
    display: block;
    border: none;
	text-align:left;
    }
.login_box p{display:inline;padding:0px 0px 0px 0px;}

.login_forget_pass a{
text-decoration: underline;
}

/* ---register---*/

.register_box {
width: 100%;
margin: 30px auto 30px auto;
}
.register_box table{
width: 100%;
}
.register_box th{
	padding: 0 0px 5px 0px; 
    display: block;
    border: none;
	text-align:left;
	color:#333;
	font-weight:bold;
    }
.register_box th span{color:red;font-size:12px;}
.register_box td{
	padding: 0 0px 20px 0px; 
    display: block;
    border: none;
	text-align:left;
    }
.register_box p{display:inline;padding:0px 0px 0px 0px;}

.policy_tit{
font-weight:bold;
padding:0px 0px 5px 0px;
}
.form_policy_box{
border: 1px solid #ccc;
width: 100%;
height: 200px;
padding: 25px;
box-sizing: border-box;
overflow-x:scroll;
}

.privacy_block{
padding:0px 0px 15px 0px;
}

.agree_box{
text-align: center;
margin: 20px auto 0px auto;
}


/* ---contact---*/

.contact_box {
width: 100%;
margin: 20px auto 0px auto;
}
.contact_box table{
width: 100%;
}
.contact_box th{
	padding: 15px 0px 0px 0px; 
    display: block;
    border: none;
	text-align:left;
	color:#333;
	font-weight:bold;
    }
.contact_box th span{color:red;font-size:12px;}
.contact_box td{
	padding: 5px 0px 20px 0px; 
    display: block;
    border: none;
	text-align:left;
	border-bottom:1px solid #beea90;
    }
.contact_box p{padding:0px 0px 20px 0px;}

.form_01{
width: 96%;
padding:10px 2% 10px 2%;
font-size:14px;
border:solid 1px #ccc;
margin:0 auto;
}
.form_02{
width: 96%;
padding:10px 2% 10px 2%;
font-size:14px;
border:solid 1px #ccc;
margin:0 auto;
}
.form_03{
padding:10px 2% 10px 2%;
font-size:14px;
border:solid 1px #ccc;
margin:0 auto;
width: 96%;
height:200px;
resize: vertical;
}
.btn_f1{
	-webkit-appearance: none;
	font-weight:bold;
	letter-spacing:5px;
	font-size:18px;
	color:#fff;
	width: 100%;
	text-align: center;
	display: block;
	padding:20px 0px 20px 0px;
	margin: 20px auto 0px auto;
	border-radius:5px;
	background-color:#ff6801;
	border:none;
	-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 ; 
	}
.btn_f1:hover {
	cursor:pointer ; 
	color:#fff;
	background-color:#ff6801;
	border:none;
}
.btn_f2{
	-webkit-appearance: none;
	font-weight:bold;
	letter-spacing:5px;
	font-size:18px;
	color:#555;
	width: 100%;
	text-align: center;
	display: block;
	padding:20px 0px 20px 0px;
	margin: 20px auto 0px auto;
	border-radius:5px;
	background-color:#dddddd;
	border:none;
	-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 ; 
	}
.btn_f2:hover {
	cursor:pointer ; 
	color:#555;
	background-color:#eeeeee;
	border:none;
}

.btn_f3{
	-webkit-appearance: none;
	font-weight:bold;
	letter-spacing:5px;
	font-size:18px;
	color:#fff;
	width: 100%;
	text-align: center;
	display: block;
	padding:20px 0px 20px 0px;
	margin: 20px auto 0px auto;
	border-radius:100px;
	background-color:#5aaf00;
	border:none;
	-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 ; 
	}
.btn_f3:hover {
	cursor:pointer ; 
	color:#fff;
	background-color:#77e503;
	border:none;
}


/* ---コンテンツ表示アニメーション---*/
.animate {
  opacity: 0;
  transition: opacity 0.8s ease 0.2s, transform 0.8s ease 0.2s; /* 0.5秒の遅延 */
  will-change: opacity, transform;
}

.fade-in-from-bottom {
  transform: translateY(30px); /* 下から */
}

.fade-in-from-top {
  transform: translateY(-30px); /* 上から */
}

.fade-in-from-left {
  transform: translateX(-15px); /* 左から */
}

.fade-in-from-right {
  transform: translateX(15px); /* 右から */
}

.animate.visible {
  opacity: 1;
  transform: translateY(0) translateX(0); /* 元の位置に */
}