

* {
  margin: 0;
  padding: 0;
}
html{
	scroll-behavior: smooth;
	margin:0px;
	padding:0px;
}
body{
	background:#ffffff;
	text-align:center;
	color:#000;
    font-size: 16px;
	line-height:2;
	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%;
  max-width:1100px;
	padding: 70px 0 70px 0;
	margin: 0px auto;
	text-align: left;
}

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

.bg_view01{
background-image: url(../images/bg_view01.jpg);
}
.bg_f7f7f7{background-color: #f7f7f7;}
.bg_fcefe2{background-color: #fcefe2;}


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

#header {
	width:100%;

}
.header_in{
	width:98%;
    max-width:2000px;
	margin: 0px auto;
	padding:0px 0px 0px 0px;
}

.header_top{
	width:100%;
	margin: 0px auto 0px auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.header_top_low{
	width:100%;
	margin: 0px auto 0px auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.h_logo{
width: 400px;
margin:0px 0 0 0.5%;
}
.h_logo img{
width: 100%;
margin:0px;
}

.h_links02{
	display: flex;
	align-items: center;
	height:55px;
	margin:0px 0.5% 0px 0;

}

.h_links02 p{
font-size: 50px;
line-height: 50px;
margin:0px 0px 0px 0;
color:#000;
font-family: "Roboto", "Helvetica Neue", Arial, sans-serif;
font-variant-numeric: tabular-nums;
font-weight:600;
letter-spacing:0px;
}

.h_links02 img{
	height: 94%;
	margin:0px 15px 0px 0;
}


.s-fade-wrap{
background-image: url(../images/mv_bg.png);
background-position:bottom center;
background-repeat: no-repeat;
background-size:cover;
width:100%;
max-width:2000px;
overflow: hidden;
margin:0 auto;
}

.s-fade-wrap_in{
width:86%;
margin:0 auto;
}
.mv_view_box01{
width:100%;
margin:0 auto;
padding:5% 0 8.5% 0;
}

.mv_view01{width:80%;margin:0 auto;}
.mv_view01 img{width:100%;}


/* ---title---*/

.title_text_c {
width:100%;
max-width: 1100px;
margin:0px auto;
text-align: center;
display: flex;
align-items: center;
justify-content: center;
}

.title_text_c h2{
font-size:40px;
color:#000;
text-align:center;
font-weight:700;
line-height: 1.5;
letter-spacing:3px;
display: inline-block;
}
.title_text_c h2 span{
color:#ff6600;
}
.title_text_c img{
height: 85px;
margin: 0 20px;
display: inline-block;
}


/* ---t_text---*/
.t_text{
border: 5px solid #ff6600;
box-sizing: border-box;
border-radius: 30px;
max-width: 1100px;
padding:3.5%;
margin: 0 auto;
}

.title_t_text{
width: 45%;
margin:-7.5% auto 0 auto;
background-color: #fff;
}
.title_t_text img{
width: 100%;
}
.t_text_body p{
font-size:20px;
}
.t_text_body p span{
font-size:14px;
color:red;
}


/* ---t_six---*/
.t_six{
max-width: 1100px;
padding:50px 0px;
margin:0 auto;
text-align: center;
}

.t_six ul{
width:100%;
display: flex;
justify-content:space-between;
flex-wrap: wrap;
}

.t_six ul li{
width: 23.5%;
background-color: #fff;
border-radius: 20px;
padding: 15px;
box-sizing: border-box;
margin: 0 0 2% 0;
}
.t_six ul li img{width: 100%;}
.t_six ul li h3{
font-size: 14px;
font-weight: 600;
}


/* ---t_one---*/
.t_one{
	max-width: 1100px;
	padding:50px 0px 0px 0px;
	margin:0 auto;
	text-align: center;
}
.t_one p{
margin:0px 0 20px 0;
font-size: 20px;
font-weight:500;
line-height: 2;
letter-spacing:1px;
text-align:left;
}
.t_one p span{
font-size: 16px;
color:red;
}
.t_one h3{
display: inline-block;
letter-spacing:2px;
font-size:30px;
padding:20px 0px;
margin:0 auto;
line-height:2;
color:#ff6f00;
text-align:left;
font-weight:700;
}

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

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


/* ---t_two---*/
.t_two{
	max-width: 1100px;
	padding:0px 0px 0px 0px;
	margin:0 auto;
}

.t_two_in{
display: flex;
align-items:top;
justify-content:space-between;
flex-wrap: wrap;
margin:0px 0 0 0;
}

.t_two_in_box{
width:47%;
position: relative;
background-color: #fff;
border: 5px solid #f5f1dc;
border-radius: 50px;
margin:50px 0 0px 0;
}
.t_two_in_icon{
width:25%;
position: absolute;
top:25px;
left: 50%;
transform: translateX(-50%);
}
.t_two_in_icon img{width:100%;}
.t_two_in_view{width:100%;}
.t_two_in_view img{width:88%;margin: 60px auto 0px auto;border-radius:30px;}

.t_two_in_text{
padding: 25px 0;
text-align: center;
}

.t_two_in_text h3{
letter-spacing:1px;
line-height: 1.5;
font-size: 24px;
font-weight: 600;
text-align: center;
margin: 0 auto;
display: block;
}
.t_two_in_text h3 span{
color:red;
}
.t_two_in_text p{
line-height: 1.5;
font-size: 18px;
font-weight: 400;
text-align: center;
margin: 10px auto;
display: block;
}


/* ---t_three---*/
.t_three{
	max-width: 900px;
	padding:40px 0px 0px 0px;
	margin:0 auto;
}
.t_three_top_text{
text-align: center;
font-size: 20px;
padding:0px 0px 30px 0px;
}
.t_three_in{
padding:50px 20px;
margin: 0px 0 0px 0;
display: flex;
align-items:center;
box-sizing: border-box;
background-image: url(../images/t_three_bg.png);
background-size: 20px;
border: 5px solid #e7d56f;
border-radius: 50px;
}

.t_three_in_view{
width:35%;
}
.t_three_in_view img{width:70%;margin: 0 auto;}
.t_three_in_text{width:75%;}

.t_three_in_text h3{
font-size: 28px;
line-height: 28px;
letter-spacing:1px;
font-weight:600;
padding:20px 0; 
}
.t_three_in_text p{
font-size:16px;
letter-spacing:0px;
line-height:1.8;
margin: 5px 0;

}

.t_three_arrow{width:5%; margin:0px auto 0 auto;}
.t_three_arrow img{width: 100%;margin: 0 auto;}


/* ---t_four---*/
.t_four{
max-width: 1100px;
padding:0px 0px 0px 0px;
margin:0 auto;
}
.t_four_in{
width:100%;
background-color: #f7f7f7;
border-radius:50px;
margin: 50px 0 0px 0;
padding:0px;
display: flex;
align-items: center;
justify-content: space-between;
overflow: hidden;
}
.t_four_view{
  width: 35%;

}
.t_four_view img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  }

.t_four_in_box{
width:65%;
padding:4% 5%;
box-sizing: border-box;
margin:0px 0 0 0;
}

.t_four_in_box div{
background-color: #ff6600;
padding: 10px 20px;
font-size: 13px;
line-height: 13px;
color:#fff;
font-weight: 600;
display: inline-block;
border-radius: 5px;
}
.t_four_in_box h3{
font-size: 24px;
line-height: 24px;
letter-spacing:1px;
font-weight:600;
padding:20px 0; 
text-align:left;
border-bottom: 3px solid #eae6e6;
}
.t_four_in_box p{
font-size: 14px;
line-height:2;
letter-spacing:1px;
padding:20px 0 0px 0;
}

/* ---t_five---*/
.t_five{
	max-width: 950px;
	padding:50px 0px 0px 0px;
	margin:0 auto;
	list-style:none;
}
.t_five dl+dl {
    margin-top:30px;
}

.t_five 
dt,
dd {
    padding: 20px;
}

.t_five dl {
    position: relative;
    overflow: hidden;
}

.t_five dl>input {
    display: none;
}

.t_five dt {
    position: relative;
    z-index: 1;
    padding-right:50px;
    background: #ff6600;
	color:#fff;
	font-size: 20px;
	font-weight:500;
	letter-spacing: 2px;
}

.t_five dd {
    position: absolute;
    visibility: hidden;
    transform: translateY(-100%);
    transition: .4s;
    background: #fff;
	font-size: 18px;
	font-weight:500;
	letter-spacing: 2px;
}

.t_five dl>input:checked+label+dd {
    position: relative;
    visibility: visible;
    transform: translateY(0);
}

.t_five dt::before {
    content: '';
    position: absolute;
    width: 20px;
    height: 3px;
    top: 50%;
    right: 30px;
    background: #fff;
    transform: translateY(-50%);
}

.t_five dt::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 30px;
    width: 20px;
    height: 3px;
    background: #fff;
    transition: .4s;
    transform: translateY(-50%) rotate(90deg);
}

.t_five dl>input:checked+label>dt::after {
    transform: translateY(-50%) rotate(180deg);
}


/* ---form---*/

.form_top_text{
padding:40px 0px 25px 0px;
text-align:center;
font-size:18px;
letter-spacing:1px;
}


.form_box{
max-width: 950px;
margin:0 auto;
padding:20px 0px 0px 0px;
}
.form_box table {
width: 100%;
border-collapse:collapse;
border-spacing:0;
}
.form_box th {
font-size:20px;
font-weight:600;
width: 30%;
padding:30px;
text-align: left;
vertical-align:top;
border-bottom: 2px solid #fdc89e;
}
.form_box th span{
background-color: red;
color:#fff;
font-size:14px;
border-radius:5px;
line-height:14px;
padding: 5px;
display: inline-block;
margin: 0 0 0 15px;
vertical-align: middle;
}
.form_box td  {
padding:30px 0px 30px 0px;
text-align: left;
vertical-align:top;
border-bottom: 2px solid #fdc89e;
}
 
.form_box td p{
padding:10px 0px 5px 0px;
margin:0px 0 0 0px;
}
.form_box p span{color:red;font-size:13px;}


/* ---service---*/
.service{
width:70%;
margin: 30px auto;
}

.service li{
display: flex;
align-items:center;
justify-content:space-between;
border-bottom: 1px solid #5aaf00;
padding:40px 0;
}
.service li:last-child{
border-bottom: none;
}

.service_box_right{width:100%;}
.service_box_right h3{
letter-spacing:1.5px;
font-size:24px;
font-weight:600;
color:#5aaf00;
}
.service_box_right p{
letter-spacing:1.5px;
font-size:16px;
font-weight:400;
}

/* ---company---*/

.company{
width: 70%;
margin:0 auto;
padding:40px 0px 0px 0px;
}

.company li{
display: flex;
align-items:center;
border-bottom: 1px solid #ccc;
padding:40px 0;
}
.company li:last-child{
border-bottom: none;
}
.company h3{width: 30%;}
.company p{

}


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


/* ---footer---*/

.f_navi{
width:100%;
background-color: #333333;
text-align:center;
color:#fff;
letter-spacing:2px;
font-size:15px;
font-weight:500;
margin:0px auto 0px auto;
padding:20px 0;
}

.f_navi a:hover{color:#fff;}
.f_navi a {
margin:0 20px;
-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;
color:#eee;
}

.footer{
width:100%;
background-color: #000;
text-align:center;
padding:30px 0 150px 0;
overflow: hidden;
}
.f_logo{
width:30%;
max-width: 400px;
margin: 0 auto 15px auto;
}
.f_logo img{
width:100%;
}
.footer_in{
margin:0 auto;
}




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

    #pageTop {
	position:fixed;
	bottom:20px;
	right:30px;
	width:50px;	
	margin:0px auto 0px auto;
	z-index:10;
    border-radius: 10px;
    overflow: hidden;
    }
    #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;
    }



.pc-none{
display:none !important;
}
.sp-br{
display:none !important;
}
.link_sp{
display:none !important;
}
.contact_btn_sp{
display:none !important;
}
#navToggle{
display:none !important;
}

.mt80{margin-top:80px;}


/* ---t_cv---*/

.t_cv_box{
position: fixed;
bottom: 0;
z-index: 99;
width: 100%;

}
.t_cv_box_in{
width:90%;
max-width:1000px;
margin: 0px auto;
display: flex;
align-items: center;
justify-content:space-between;
}

.t_cv_view01{
width:48%;
padding:0px 0 20px 0;
position: relative;
}
.t_cv_view01 div img{width:100%;}
.t_cv_view01 p{
font-size: 42px;
line-height: 42px;
font-family: "Roboto", "Helvetica Neue", Arial, sans-serif;
font-variant-numeric: tabular-nums;
font-weight:600;
letter-spacing:0px;
bottom:30px;
right:30px;
color:#fff;
position: absolute;
}
.t_cv_view01 a{
	-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 ; 
}
.t_cv_view01 a:hover{opacity: 0.7;}

.t_cv_view02{
width:48%;
padding:0px 0 20px 0;
position: relative;
}
.t_cv_view02 div img{width:100%;}
.t_cv_view02 p{
width: 60%;
bottom:30px;
right:20px;
position: absolute;
}
.t_cv_view02 p img{
width:100%;
}
.t_cv_view02 a{
	-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 ; 
}
.t_cv_view02 a:hover{opacity: 0.7;}



/* ---login---*/
.login_box{
width: 40%;
margin:0 auto;
padding:65px 0px 0px 0px;
}
.login_box table {
width: 100%;
border-collapse:collapse;
border-spacing:0;
}
.login_box th {
display: block;
font-weight:400;
padding:0px 0px;
}
.login_box th span{color:red;font-size:12px;}
.login_box td  {display: block;padding:0px 0px 20px 0px;}
 
.login_box th  {text-align: left; vertical-align:top;}
.login_box td  {text-align: left; vertical-align:top; }
.login_box p{display:inline;padding:0px 0px 0px 0px;}

.login_forget_pass a{
text-decoration: underline;
}


/* ---register---*/
.register_box{
width: 60%;
margin:0 auto;
padding:40px 0px 0px 0px;
}
.register_box table {
width: 100%;
border-collapse:collapse;
border-spacing:0;
}
.register_box th {
font-weight:400;
width: 30%;
padding:0px 0px 25px 0px;
text-align: left;
vertical-align:top;
}
.register_box th span{color:red;font-size:12px;}
.register_box td  {
padding:0px 0px 25px 0px;
text-align: left;
vertical-align:top;
}
 
.register_box p{display:inline;padding:0px 0px 0px 0px;}

.policy_tit{
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;
font-size: 14px;
line-height: 1.7;
}

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

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


/* ---contact---*/

.contact_box{
width: 75%;
margin:0 auto;
padding:45px 0px 0px 0px;
}
.contact_box table {
width: 100%;
border-collapse:collapse;
border-spacing:0;
margin:20px auto 0 auto;
}
.contact_box th {
font-weight:400;
padding:25px;
}
.contact_box th span{color:red;font-size:12px;}
.contact_box td  {padding:25px;}
 
.contact_box th  {border-bottom:1px solid #dddddd;width: 30%; text-align: left; vertical-align:top;}
.contact_box td  {border-bottom:1px solid #dddddd;text-align: left; vertical-align:top; }
.contact_box p{display:inline;padding:0px 20px 0px 5px;}

.form_01{
border:0;
padding:12px;
font-size:16px;
border:solid 1px #ccc;
margin:0 0 0px;
width: calc(100% - 20px);
}
.form_02{
border:0;
padding:12px;
font-size:16px;
border:solid 1px #ccc;
margin:10px 0 10px 0;
width: calc(50% - 20px);
}
.form_03{
border:0;
padding:12px;
font-size:16px;
border:solid 1px #ccc;
margin:0 0 0px;
width: calc(100% - 20px);
height:200px;
resize: vertical;
}
.form_04{
border:0;
padding:12px;
font-size:16px;
border:solid 1px #ccc;
margin:0 0 0px;
width: calc(20% - 20px);
}
.form_01:focus {
	box-shadow: 0 0 7px #ccc;
	border: 1px solid #ff008c;
}
.form_02:focus {
	box-shadow: 0 0 7px #ccc;
	border: 1px solid #ff008c;
}
.form_03:focus {
	box-shadow: 0 0 7px #ccc;
	border: 1px solid #ff008c;
}
.form_04:focus {
	box-shadow: 0 0 7px #ccc;
	border: 1px solid #ff008c;
}
input.btn_f1{
	letter-spacing:5px;
	font-size:18px;
	color:#fff;
	font-weight:600;
	width: 250px;
	text-align: center;
	display: block;
	padding:15px;
	margin: 50px 20px;
	border-radius:3px;
	background-color:#ff6f00;
	border: 3px solid #ff6f00;
	border-bottom: 3px solid #c25603;
	-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 ; 
	}
input.btn_f1:hover {
	cursor:pointer ; 
	color:#fff;
	background-color:#d65f03;
	border: 3px solid #d65f03;
	border-bottom: 3px solid #c25603;
}
input.btn_f2{
	letter-spacing:5px;
	font-size:18px;
	color:#555;
	font-weight:600;
	width: 250px;
	text-align: center;
	display: block;
	padding:15px;
	margin: 50px 20px;
	border-radius:3px;
	background-color:#dddddd;
	border: 3px solid #dddddd;
	border-bottom: 3px solid #ccc;
	-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 ; 
	}
input.btn_f2:hover {
	cursor:pointer ; 
	color:#555;
	background-color:#eeeeee;
	border: 3px solid #eeeeee;
}
.btn_f3{
font-family: "Roboto", "Helvetica Neue", Arial, sans-serif;
font-variant-numeric: tabular-nums;
font-weight:600;
letter-spacing:0px;
	font-size:24px;
	color:#fff;
	max-width: 350px;
	text-align: center;
	display: block;
	padding:10px;
	margin: 30px 0px;
	border-radius:5px;
	background-color:#ff6600;

	}


.form_btn_area{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}


/* ---コンテンツ表示アニメーション---*/
.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(-30px); /* 左から */
}

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

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