

* {
margin: 0;
padding: 0;
}
html{
margin:0px;
padding:0px;
}
body{
background:#ffffff;
text-align:center;
color:#000;
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;}


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


.c_h_top_w{
width: 100%;
margin:0px auto 0px auto;
padding: 0px 0 0 0 ;
position: relative;
z-index: 2;
}
.c_h_top_w img{width:100%;}

.c_h_bottom_w{
width: 100%;
margin:0% auto 0px auto;
position: relative;
z-index: 2;
}
.c_h_bottom_w img{width:100%;}


.bg_f8f5e6{
width: 100%;
background-color:#f8f5e6;
position: relative;
z-index: 2;
margin:-2px auto 0px auto;
padding: 0px 0 0 0;
}

.bg_e5f2fb{
width: 100%;
background-color:#e5f2fb;
position: relative;
z-index: 2;
margin:-2px auto 0px auto;
padding:0px 0 0 0;
}
.c_under_arrow_b{width: 100%;padding: 0px 0 0 0;}
.c_under_arrow_b img{width:10%;margin:-1px auto 0px auto;}


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

#header {
text-align:left;
width:100%;
background-image:url("../images/h_bg.png");
background-repeat:no-repeat;
background-size:100%;
background-position:top center;
height:70px;
position:fixed;
z-index:999;
background-color: #fff;
}

.header_top{
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 0px;
}

.h_logo{
height:40px;
margin:0px 0px 0px 10px ;

}
.h_logo a{
display:inline-block;
height:40px;
margin:0px;
}
.h_logo img{
height:40px;
margin:0px 0 0px 0px;
}



/* ここから下がハンバーガーメニューに関するCSS */

/* チェックボックスを非表示にする */
.drawer_hidden {
display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer_open {
display: flex;
height: 70px;
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: #0057a4;
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: #ffffff;
transition: .5s;
}

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

.nav_list li{
border-bottom:1px dotted #333;
color:#000;
font-size:14px;
font-weight:500;
text-align:left;
margin:0 0 15px 0;
padding:0 0 15px 0;
letter-spacing:3px;
}
.nav_list li a{color:#000;}

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

.h_content02{
padding:0 10% 0% 10% ;
}

.h_links01{
margin: 30px 0px 0px 0px;
}
.h_links01 a{
text-align: center;
width: 100%;
max-width: 420px;
display:flex;
align-items:center;
padding: 15px;
height: 100%;
background-color: #0057a4;
border-radius:200px;
box-sizing: border-box;
color:#fff;
font-size: 16px;
letter-spacing: 1px;
box-sizing: border-box;
margin: 0 auto;
}

.h_links01 div{
display:flex;
align-items:center;
margin: 0 auto;
}
.h_links01 div img{
width: 35px;
margin: 0 15px 0 0;
}



.s-fade-wrap{
margin:0 0 -50px 0;
padding:70px 0 0px 0;
width:100%;
}
.mv_view{
width:100%;
margin:0px auto;
padding:25px 0 0px 0;
overflow: hidden;
}

.mv_view-01{
width:100%;
margin:0 auto;
}
.mv_view-01 img{
width:100%;
margin:0 auto;
}

.mv_view-02{
width:90%;
margin:-20px auto 0 auto;
}
.mv_view-02 img{width:100%;margin:0% auto;}


.mv_none{
height: 70px;
width:100%;
}


/* ---title---*/
.title_text_c{
width: 100%;
padding: 20px 0 0 0;
text-align:center;
}
.title_text_c h2 {
font-weight:600;
font-style: normal;
letter-spacing:1px;
font-size:22px;
line-height:1.5;
text-align:center;
color: #000;
padding:0px 0 10px 0 ;
position: relative;
}
.title_text_c h2:before{
position: absolute;
border-bottom: 3px solid #000;
top: 100%;
left: 50%;
transform: translateX(-50%);
width: 70px;
content: '';
}
.title_text_c h2 span{
font-size:28px;
color:#0057a4;
}

/* ---t_cv---*/

.btn_cv{
width:100%;
text-align: center;
margin:0px auto 0px auto;
padding:0px 0;
}
.cv_btn_text{
width:100%;
margin: 20px auto 0px auto;
}
.cv_btn_text img{
width: 100%;
}
.cv_btn_text 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;
}
.cv_btn_text a:hover{
opacity: 0.7;
}


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

.c01_box{
width:90%;
padding:30px 0;
margin:0px auto 0px auto;
}
.c01_box div{
width: 100%;
}
.c01_box div img{
width: 100%;
}



/* ---c02---*/
.bg_anime{
width: 100%;
background-image:url("../images/c02_bg.png");
background-repeat:no-repeat;
background-size: cover;
background-position: center center;
margin: -2.5% 0 0 0;
padding: 2.5% 0 0 0;
}

.c02{
width:100%;
padding:30px 0px 0px 0px;
margin:0 auto;
}
.c02 p{
text-align: left;
font-size: 14px;
font-weight:500;
}
@media screen and (min-width:580px) { /*　画面サイズが580pxからはここを読み込む　*/
 .c02 p{
text-align:center;
font-size: 14px;
font-weight:500;
}   
}
.c02 p span{background: linear-gradient(transparent 60%, #FFFE03 60%);}

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



/* ---c03---*/
.c03{
color:#000;
text-align:center;
width:100%;
padding:0px 0px 0px 0px;
margin:0 auto;
}
.c03_box{
width: 100%;
background-color: #fff;
border-radius: 30px;
margin:30px auto 0 auto;
padding:30px;
box-sizing: border-box;
position: relative;
}

.c03_box img{
width:18%;
position: absolute;
top:-20px;
left:-10px;
}

.c03_box h3{
display: inline-block;
font-size:18px;
line-height:18px;
font-weight: 600;
margin:0 auto 10px auto;
padding: 0 0px 5px;
background: linear-gradient(transparent 60%, #FFFE03 60%);
}
.c03_box p{
text-align: left;
font-size:14px;
line-height:1.5;
}


@media screen and (min-width:580px) { /*　画面サイズが580pxからはここを読み込む　*/
.c03_box img{
width:80px;
position: absolute;
top:-20px;
left:-15px;
}
.c03_box p{
text-align:center;
font-size:14px;
line-height:1.5;
}
}


/* ---c04_box---*/
.c04{
width:100%;
padding:0px 0px 0px 0px;
margin:0 auto;

}
.c04_box{
width: 100%;
margin: 20px 0 20px 0;
padding: 0px;
}
.c04_box img{
width: 100%;
margin: 0 0 0px 0;
padding: 0px;
}

.c04_text{
text-align:left;
}
.c04 p{
line-height:1.8;
padding: 5px 0 5px 0;
text-align:left;
display: inline;
font-size:14px;
background: linear-gradient(transparent 60%, #FFFE03 60%);
}
.c04 p span{
font-size:18px;
color:#0057a4;
font-weight: 600;
}

/* ---c05---*/
.c05{
width:90%;
padding:0px 0px 30px 0px;
margin:0 auto;

}
.c05_box{
width:100%;
margin:30px auto 0px auto;
padding: 30px 25px;
box-sizing: border-box;
background-color: #fff;
border-radius: 30px;
position: relative;
}
.c05_icon{
position: absolute;
width:20%;
top:-25px;
right: 10px;
z-index: 2;
}
.c05_icon img{width:100%;}

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

.c05_box h3{
letter-spacing:2px;
font-size:18px;
line-height:1.5;
color:#0057a4;
text-align:center;
font-weight:600;
margin: 10px 0 10px 0;
}
.c05_box p{
line-height: 1.5;
font-size:14px;
text-align:left;
}

@media screen and (min-width:580px) { /*　画面サイズが580pxからはここを読み込む　*/
.c05_icon{
position: absolute;
width:100px;
top:-25px;
right: 20px;
z-index: 2;
}
.c05_view{width:50%;margin:0 auto;}
.c05_view img{width:100%;}

}


/* ---c06---*/
.c06{
width:100%;
padding:10px 0px 0px 0px;
margin:0 auto;
}
.c06_box{
width: 100%;
margin:20px 0 0 0;
}
.c06_box img{width: 100%;}

@media screen and (min-width:580px) { /*　画面サイズが580pxからはここを読み込む　*/
.c06{
width:100%;
padding:10px 0px 0px 0px;
margin:0 auto;
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
}
.c06_box{
width: 48%;
margin:20px 0 0 0;
}
.c06_box img{width: 100%;}
}

/* ---c07---*/
.c07{
width:100%;
padding:10px 0px 0px 0px;
margin:0 auto;
}
.c07_box{
width:100%;
margin:20px 0 0 0;
background-color: #fff;
border: 5px solid #033c81;
border-radius: 30px;
box-sizing: border-box;
overflow: hidden;
text-align: center;
padding: 0 0 30px 0;
}
.c07_box h3{
text-align: center;
font-size: 18px;
font-weight: 500;
color:#fff;
background-color: #033c81;
padding: 15px 0;
}

.c07_view{width:45%;max-width:200px; margin:30px auto 20px auto;}
.c07_view img{width: 100%;}

.c07_box h4{
letter-spacing: 3px;
font-size:24px;
text-align: center;
font-weight: 500;
line-height: 1.3;
}
.c07_box h4 span{
font-size:40px;
color:red;
font-family: 'Anton', sans-serif;
}

.c07_box p{
font-size: 14px;
line-height: 14px;
font-weight: 600;
display: inline-block;
color:#000;
border: 2px solid #000;
background-color: #ffff00;
text-align: center;
margin:20px auto 0px auto;
border-radius: 200px;
padding: 15px 30px;
}
.c07_box p span{
font-size: 18px;
}

.c07_text{
width:100%;
margin:20px auto 0px auto;
}
.c07_text p{
font-size:14px;
line-height:1.5;
font-weight:500;
text-align:left;
}

/* ---c08---*/
.c08{
width:100%;
padding:30px 0px 0px 0px;
margin:0 auto;
}

.c08_box{
width:100%;
overflow: hidden;
border-radius: 30px;
}
.c08_box img{width:115%;margin: 0 0 0 -15%;}

.c08 p{
font-size: 14px;
text-align:left;
font-weight:500;
margin:20px auto 0px auto;
}


/* ---c09---*/
.c09{
width:100%;
padding:10px 0px 0px 0px;
margin:0 auto;
}
.c09_box{
width:100%;
padding:20px 25px;
margin:20px 0 0 0;
box-sizing: border-box;
background-color: #fff;
border: solid 5px #0057a4;
border-radius: 30px;
}
.c09_box h3{
font-size:18px;
font-weight:600;
text-align: center;
color:#0057a4;
}

.c09_h3_01{
background-image:url("../images/c09_bg01.png");
background-repeat:no-repeat;
background-size:30%;
background-position:center center;
padding:10% 0;
}
.c09_h3_02{
background-image:url("../images/c09_bg02.png");
background-repeat:no-repeat;
background-size:30%;
background-position:center center;
padding:10% 0;
}
.c09_h3_03{
background-image:url("../images/c09_bg03.png");
background-repeat:no-repeat;
background-size:30%;
background-position:center center;
padding:10% 0;
}

.c09_view{width:50%;max-width: 150px; margin:15px auto;}
.c09_view img{width:100%;}
.c09_box p{
font-size: 14px;
line-height: 1.5;
text-align: left;
}


@media screen and (min-width:580px) { /*　画面サイズが580pxからはここを読み込む　*/
.c09_h3_01{
background-image:url("../images/c09_bg01.png");
background-repeat:no-repeat;
background-size:20%;
background-position:center center;
padding:8% 0;
}
.c09_h3_02{
background-image:url("../images/c09_bg02.png");
background-repeat:no-repeat;
background-size:20%;
background-position:center center;
padding:8% 0;
}
.c09_h3_03{
background-image:url("../images/c09_bg03.png");
background-repeat:no-repeat;
background-size:20%;
background-position:center center;
padding:8% 0;
}
.c09_box p{
font-size: 14px;
line-height: 1.5;
text-align: left;
margin: 30px 0;
}
}

/* ---c10---*/
.c10{
width:100%;
padding:30px 0px 0px 0px;
margin:0 auto;
}

.c10_q{
background-color: #fff;
border-radius: 200px;
padding: 15px 20px;
display: flex;
align-items: center;

}
.c10_q span{
padding: 0 10px 0 0;
font-size: 14px;
font-weight: 500;
color:#0057a4;
}
.c10_q h3{
text-align: left;
font-size: 14px;
font-weight: 500;
}

.c10_a{
padding: 15px 20px 25px 20px;
display: flex;
align-items:top;
text-align: left;
font-size: 14px;
font-weight: 500;
}
.c10_a span{
padding: 0 10px 0 0;
font-size: 14px;
font-weight: 500;
color:red;
}
.c10_a p{
text-align: left;
font-size: 14px;
font-weight:500;
}

/* ---pp---*/
.pp{
width:90%;
padding:30px 0px 30px 0px;
margin:0 auto;
list-style:none;
}
.pp h3{
font-size:16px;
line-height:16px;
color:#fff;
font-weight:500;
background-color: #0057a4;
border-radius: 200px;
padding:15px;
margin:15px 0 15px 0;
}
.pp p{
font-size:14px;
line-height:1.7;
padding:0px 15px ;
}

/* ---company---*/
.company{
width:90%;
padding:30px 0px 30px 0px;
margin:0 auto;
list-style:none;
}
.company li{
border-bottom: 3px solid #0057a4;
padding:20px 0px 20px 0px;
}
.company li h3{
letter-spacing:2px;
font-size:16px;
line-height:1.5;
color:#0057a4;
text-align:left;
font-weight:500;
padding: 0 0 10px 0;
}
.company li p{
font-size:14px;
line-height:14px;
color:#000;
}
.company li:last-child{
border-bottom:none;
}


/* ---contact---*/

.contact_box {
width: 90%;
margin: 30px 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{
font-weight:400;
color:#fff;
background-color: red;
font-size:12px;
line-height: 12px;
display: inline-block;
border-radius: 2px;
padding: 3px 6px;
margin: 0 0 0 5px;
}
.contact_box td{
	padding: 5px 0px 20px 0px; 
    display: block;
    border: none;
	text-align:left;
	border-bottom:1px solid #0057a4;
    }
.contact_box p{padding:0px 0px 20px 0px;}

.form_01{
width: 96%;
padding:10px 2% 10px 2%;
font-size:16px;
border:solid 1px #ccc;
margin:0 auto;
}
.form_02{
width: 96%;
padding:10px 2% 10px 2%;
font-size:16px;
border:solid 1px #ccc;
margin:0 auto;
}
.form_03{
padding:10px 2% 10px 2%;
font-size:16px;
border:solid 1px #ccc;
margin:0 auto;
width: 96%;
height:200px;
resize: vertical;
}
input.btn_f1{
	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:#ff0000;
	border: 3px solid #ff0000;
	-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 {

}
input.btn_f2{
	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: 3px solid #dddddd;
	-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 {

}

.btn_f3{
	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:#ea5425;
	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:#f67b54;
	border:none;
}

/* ---footer---*/
.footer{
width:100%;
padding:0px 0 100px 0;
margin:0 auto;
text-align:center;
background-image:url("../images/f_bg.png");
background-repeat:no-repeat;
background-size:100%;
background-position:bottom center;
}
.footer_in{
width:90%;
margin:0 auto;
padding:30px 0 30px 0 ;
box-sizing: border-box;
}

@media screen and (min-width:580px) { /*　画面サイズが580pxからはここを読み込む　*/
.footer_in{
width:90%;
margin:0 auto;
padding:30px 0 70px 0 ;
box-sizing: border-box;
}

}

.f_company{
text-align:left;
width:100%;
}
.f_logo{
width:50%;
margin:0 auto;
padding:0px 0 20px 0;
}
.f_logo a{
display:inline-block;
margin: 0px;
}
.f_logo img{
width:100%;
margin:0 auto;
}
.f_company p{
font-size: 14px;
font-weight: 500;
}


.f_navi{
border-top: 1px solid #ccc;
text-align:left;
font-size: 14px;
color:#000;
font-weight:500;
margin:20px 0 0px 0;
padding:20px 0 0px 0;
}

.f_copy{
text-align:center;
padding:0px 0 20px 0 ;
}
.copy{
text-align:center;
font-size:12px;
font-weight: 600;
letter-spacing:1px;
color:#000;
margin:0px 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;}




/* ---コンテンツ表示アニメーション---*/
.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); /* 元の位置に */
}

.t_cv_btn{
-webkit-transition: all 0.6s ease;
-moz-transition: all 0.6s ease;
-ms-transition: all 0.6s ease;
-o-transition: all 0.6s ease;
transition: all  0.6s ease;
cursor: pointer;
animation: bounce 1.5s ease-in-out forwards;
animation-iteration-count: infinite;
}

@keyframes bounce {
0% {
transform: scale(1);
-webkit-transform: scale(1);
}
50% {
transform: scale(1.05);
-webkit-transform: scale(1.05);
}
}




div.sp_fixd_foot{
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:100%;
	background:rgba(255, 255, 255, 0.7);
	position:fixed;
	bottom:0;
	z-index:10000;
}
div.sp_fixd_foot div{
	width:50%;
	padding:3px;
	text-align: center;
	box-sizing:border-box;
}
div.sp_fixd_foot div img{
	width:100%;
}

.foot_mail_btn{
	text-align: center;
	width: 95%;
	display:block;
	align-items:center;
	background-color: #0057a4;
	box-sizing: border-box;
	color:#fff;
	font-size: 14px;
	letter-spacing: 1px;
	margin: 0 auto;
	padding:10px 0;
	border-radius:5px;
}


.error_box{
  display: none;
  width: 90%;
  padding: 15px;
  text-align: left;
  margin: 10px auto;
  /*border: 2px solid red;*/
  background:#efefef;
  font-size: 14px;
  color: red;
}

.error_box p{
	display:block;
	padding:0 0 5px 0 !important;
}
