﻿.wrapper{
	width:1200px;
	margin: 0 auto;
	padding: 170px 0 50px;	}
.page{
	width:100%;
	margin: 0 auto;
	position: relative;	}
.top_h{
	height:85px;}
.header{
	width:100%;
	background:#ffffff;
	border-bottom:1px solid #F1F1F4;
	position:fixed;
	top:0;
	left:0;
	z-index:1000;}
.top{
	margin:0 auto;
	width: 1600px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content: flex-start;
	flex-wrap:wrap;
	padding-left: 50px;
    padding-top: 10px;
    padding-bottom: 10px;}

a.logo01{
	width: 350px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content: center;}
a.logo01 p{
	display:block;
	width:100%;
	height:0;
	line-height:normal;
	padding-bottom: 26%;
	background-image:url(../images/logo.jpg);
	background-position:center;
	background-repeat:no-repeat;
	background-size:contain;
	overflow:hidden;
	text-indent:-9999999px;	}
.nav,
.nav li,
.m_nav,
.m_nav li{
	list-style:none;
	padding:0;
	margin:0;}
.nav,
.m_nav{
	/*flex: 1;*/
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	justify-content: flex-end;
	letter-spacing: 0.1em;	}
.nav li,
.m_nav li{
	position:relative;
	display:block;
	margin: 0 0 0 3vw;	}
.nav li a.nav_b01,
.nav li p.nav_b01,
.m_nav li a.nav_b01,
.m_nav li p.nav_b01{
	color: #002345;
	padding: 30px 0;
	cursor:pointer;
	position:relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content: flex-end;	}
.nav li a.nav_b01 span,
.nav li p.nav_b01 span,
.m_nav li a.nav_b01 span,
.m_nav li p.nav_b01 span{
	color: #689db6;
	display:inline-block;
	margin:0 0 0 0.5em;}
.nav li a.nav_b01:before,
.nav li p.nav_b01:before,
.m_nav li a.nav_b01:before,
.m_nav li p.nav_b01:before {
    content: "";
    opacity: 0;
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 4px;
    border-radius: 2px;
    background-color: #ecc545;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;}
.nav li:hover a.nav_b01:before,
.nav li:hover p.nav_b01:before,
.m_nav li:hover a.nav_b01:before,
.m_nav li:hover p.nav_b01:before {
    opacity: 1;}
.btn_box01{
	width: 300px;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: 20px;
	left: 50%;
	z-index: 100;
	margin-top: 25px;
	padding-top: 35px;
	-webkit-transition: opacity .3s,visibility .3s;
	transition: opacity .3s,visibility .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);}
.nav li:hover .btn_box01{
    opacity: 1;
    visibility:visible;}
.btn_box01a{
    position: relative;
    padding: 15px 20px;
    border-radius: 8px;
    background-color: #fff;
    -webkit-box-shadow: 0 20px 68px rgb(0,0,0,27%);
    box-shadow: 0 20px 68px rgb(0,0,0,27%);
    }
.btn_box01a:before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 100%;
    left: 0;
    width: 0;
    height: 0;
    margin: auto;
    border-color: transparent transparent #fff;
    border-style: solid;
    border-width: 0 15px 13px;}
.btn_box01a a{
	display:block;
	margin: 8px 0;	}
.search{
	position:relative;
	display:block;
	margin: 0 0 0 3vw;}
.search_b01{
	width: 48px;
	height: 48px;
	display: block;
	position:relative;
	z-index:0;
	cursor:pointer;
	border-radius: 2em;
	box-shadow: 0 0 5px rgba(255 255 255);
	padding: 4px;	}
.search_b01a,
a.search_b01b{
	background: #689db6;
	float: right;
	position: relative;
	z-index: 1;
	color: #FFF;
	border-radius: 100%;
	width: 2em;
	height: 2em;
	text-align: center;
	font-size: 20px;
	/* box-shadow: 0 -1px 1px rgba(255, 255, 255, 0.25), 0 1px 1px rgba(0, 0, 0, 0.25); */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;









	justify-content: center;
	transition-property:all 0.3s;
	-moz-transition:all 0.3s; /* Firefox 4 */
	-webkit-transition:all 0.3s; /* Safari and Chrome */
	-o-transition:all 0.3s; /* Opera */}
a.search_b01b{
	display:none;
	z-index:0;
	position:absolute;
	top:4px;
	right:4px;}
.search_b01:hover a.search_b01b{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content: center;}
.search_b01 input{
	position:absolute;
	left: 100%;

	top: -5px;
	z-index: 0;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 0em;
	height: 58px;
	background: #f5f5f5;
	color: #666;
	font-size: 14px;
	padding: 5px 0px 5px 0px;
	border: 0;
	border-radius: 5px;
	-moz-transition: all 0.25s;
	-webkit-transition: all 0.25s;	}
.search:hover input, .search:focus input, .search:focus-within input {
    display: inline-block;
    width: 19em;
    padding: 5px 58px 5px 15px;}
.search:hover, .search:focus, .search:focus-within {
    border-radius: 5px 2em 2em 5px;}
.search:focus a.search_b01b, .search:focus-within a.search_b01b{
	z-index: 3;}
.search:hover .search_b01, .search:focus .search_b01, .search:focus-within .search_b01 {
    box-shadow:none;}
.swiper-container {
	width: 90%;
	height: 40vw;}
.swiper-slide {}
a.ad_box01{}
a.ad_box01 img{
	width:100%;
	height:50vw;}
.social_b01{
	width: 56px;
	position:fixed;
	bottom:20px;
	right: 20px;
	z-index:1000;	}
.social_b01 a{
	display:block;
	height: 0;
	width: 100%;
	padding-bottom: 100%;
	border-radius: 100%;
	line-height: normal;
	background-position:center;
	background-repeat:no-repeat;
	margin:10px 0 0;
	position:relative;
	overflow: hidden;	}
.social_b01 a:after{
	width:50px;
	height:50px;
	content:"";
	display:block;
	position:absolute;
	right:100%;
	top:0;
	border-radius: 100%;
	background: rgba(255,255,255,0.15);
	transition-property:right 0.3s;
	-moz-transition:right 0.3s; /* Firefox 4 */
	-webkit-transition:right 0.3s; /* Safari and Chrome */
	-o-transition:right 0.3s; /* Opera */	}
.social_b01 a:hover:after{
	right:0%;}

.social_b01a{
	background-color:#00B900;
	background-image:url(../images/symbol/line.svg);
	background-size: auto 55%;	}
.social_b01b{
	background-color:#4267B2;
	background-image:url(../images/symbol/fb.svg);
	background-size: auto 50%;	}
.in_news{
	width:1200px;
	margin:56px auto -230px;
	background:#6692b2;
	padding:31px 46px 31px 51px;
	-webkit-box-shadow: 0 9px 31px rgb(0,0,0,0.2);
	box-shadow: 0 9px 31px rgb(0,0,0,0.2);
	border-radius: 12px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: wrap;
	position: relative;	}
.in_t01{
	margin: 0 40px 0 0;
	padding: 5px 40px 5px 0;
	border-right: 1px solid #eaeaea;
	font-size: 19px;
	line-height: 1.4;
	width: 64px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content: center;	}
.in_box01{
    overflow: hidden;
    flex: 1;    }
.list02{
    border-top: 1px dashed #ddd;}
.in_box01 a,
.list02 a{
	width:100%;
	letter-spacing: 0.05em;
	margin:10px 0 0 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: wrap;	}
.list02 a{
    border-bottom: 1px dashed #ddd;
    padding: 0 0 10px 0;}
.in_box01 a time,
.list02 a time{
	width: auto;
	margin-right: 40px;
	font-size: 14px;
	line-height: 30px;
	font-weight: 700;
	color: #BDBDBD;	}
.in_box01 a p,
.list02 a p{
	flex:1;
	line-height: 2;
	font-size: 16px;
	color: #fff;
	overflow: hidden;
	text-overflow : ellipsis;
	white-space : nowrap;	}
.new_title a p{
    flex: 1;
    line-height: 2;
    font-size: 16px;
    color: #002345;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


.in_box01 a:hover p,
.list02 a:hover p{
	color:#ecc545}
.section02{
	padding:185px 0 112px;
	width:100%;


	background:linear-gradient(-156.56deg,#ebebeb -15.59%,hsla(0,0%,100%,0) 58.91%);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;	}
.in_box02{
	width: 440px;
	padding:0 80px;	}
.in_box02 h2{
    font-weight: bold;
    font-size: 32px;
    line-height: 1;    }
.in_box02 h2 span{
	display:block;
	font-size:20px;
	margin: 0 0 12px;
	color: #ecc545;
	letter-spacing: 0.015em;	}
.in_box02 h3{
    margin: 2em 0;
    line-height: 1.75;}
.in_box03{
	flex:1;
	overflow:hidden;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;}
.btn01{}
.btn01 a{
	display:inline-block;
	padding: 14px 35px;
	margin: 0 7px;
	position:relative;
	letter-spacing: 0.05em;
	font-size: 17px;
	color: #FFF;
	line-height: 1;	}
.btn01 a:after{
	content:"";
	display:block;
	transform: skewX(-15deg);
	background:#434343;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	border-radius: 3px;
	transition-property:all 0.3s;
	-moz-transition:all 0.3s; /* Firefox 4 */
	-webkit-transition:all 0.3s; /* Safari and Chrome */
	-o-transition:all 0.3s; /* Opera */	}
.btn01 a span{
	position:relative;
	z-index:1;
	font-weight: 500;	}
.btn01 a:hover:after{
	transform: skewX(0deg);
	background: #45687c;}



.btn02{}
.btn02 a{
	display:inline-block;
	padding: 14px 35px;
	margin: 0 7px;
	position:relative;
	letter-spacing: 0.05em;
	font-size: 17px;
	color: #21283d;
	line-height: 1;
	text-shadow: none;}
.btn02 a:after{
	content:"";
	display:block;
	transform: skewX(-15deg);
	background: #FFF;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	border-radius: 3px;
	transition-property:all 0.3s;
	-moz-transition:all 0.3s; /* Firefox 4 */
	-webkit-transition:all 0.3s; /* Safari and Chrome */
	-o-transition:all 0.3s; /* Opera */}
.btn02 a span{
	position:relative;
	z-index:1;
	font-weight: 500;	}
.btn02 a:hover:after{
	transform: skewX(0deg);
	background: #ecc545;}
.btn02 a:hover{
	color: #FFFFFF;}


.pro_box01{
	display:block;
	margin: 0 80px 0 0;
	width: calc(100% / 3 - 80px);	}
.pro_box02{
	display:block;
	margin: 0 15px 30px;
	width: calc(100% / 3 - 30px);}
.pro_box01a{
	display:block;
	width:100%;
	height:0;
	padding-bottom:68%;
	border-radius: 6px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	transition-property:all 0.3s;
	-moz-transition:all 0.3s; /* Firefox 4 */
	-webkit-transition:all 0.3s; /* Safari and Chrome */
	-o-transition:all 0.3s; /* Opera */	}
.pro_box01b{
	padding: 15px 0;	}
.pro_box01b h4{
	font-size: 22px;
	font-weight: bold;	}
.pro_box01c{
	padding: 7px 0;	}
.pro_box01c h2{
	font-size: 16px;
	font-weight: 500;
	text-align: center;}
.pro_box01:hover .pro_box01a{
	opacity:0.75;}
.section01{padding: 0 0 192px 0;}
.section03{
	padding: 100px calc(80px + 10%);
	background-position:center;
	background-repeat:no-repeat;
	background-attachment:fixed;
	background-image:url(../images/index002.jpg);
	background-size:cover;	}
.in_box04{
	width:100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;	}
.in_box04a{
	flex:1;
	color:#FFF;
	letter-spacing: 0.1em;
	overflow:hidden;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.95);	}
.in_box04b{
	width:600px;
	margin:0 0 0 80px;}
.in_box04b img{
	width:100%;
	height:	auto}
.in_box04a h3{
	line-height:1.1;
	font-size:28px;
	display:block;
	margin:0 0 0.5em 0;}
.in_box04a h4{
	font-size: 16px;
	line-height:1.7;
	margin:0 0 1.65em 0;}
.footer{
	width:100%;
	font-size: 15px;
	line-height: 1.75;
	padding:100px calc(80px + 10%);
	color: #FFFFFF;
	background-position: center;
	/*background-image:url(../images/bg.jpg);*/
	 background-color: #3f6a89;
	background-size:cover;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;	}
.footer a{
	color:#FFF;}
.footer a:hover{
	color: #ecc545;	}
.down_box01{
	width:calc(100% / 3);	}
.down_box02{
	flex: 1;	}
.down_box03{	}
.footer h2{
	font-size: 24px;
	font-weight:bold;

	margin: 0 0 25px 0;	}
.down_b01,
.down_b01 li{
	list-style:none;
	padding:0;
	margin:0;}
.down_b01{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;}
.down_b01 li{
	width:50%;
	margin: 0 0 15px 0;	}
.down_b01 a{
	font-weight: 300;	}
.footer .copyright{
	margin: 25px 0 0 0;
	font-size: 13px;	}
.down_logo{
	padding: 73px 0 0 0;
	width: calc(100% / 3);	}
.down_logo img{
	width: 150px;
	height:auto;	}
.social_b02{
	display: flex;
    justify-content: center;
}
.social_b02 a{
	display:inline-block;
	font-size: 35px;
	line-height: 1.2;	}
.social_b02 a.social_b02a{
	margin: 0 0.5em 0 0;}
.social_b02 a.social_b02a:hover{
    color: #00b900;}
.social_b02 a.social_b02b:hover{
    color: #4267b2;}
.page_top{
	width:100%;
	padding:100px calc(80px + 10%);
	position:relative;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;}
.page_top01a{
    letter-spacing: 0.1em;
    color:#FFF;
    text-shadow: 0.05em 0.05em 0.2em rgba(0,0,0,0.75);    }
.page_top01a h1{
	font-size: 24px;
	display:block;
	font-weight: bold;}
.page_top01a p{
	font-size:80px;	
	line-height: 1;}
.page_top01a p span{
	font-weight: bold;
	display:block;}
.page_top01b{
    width: 520px;
    height: 402px;
    overflow: hidden;
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    transition: clip-path .75s cubic-bezier(0.190, 1.000, 0.220, 1.000) .2s;
    position:absolute;
    right: calc(80px + 10% + 180px);
    bottom: -100px;
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: skew(-25deg,0);
    transform: skew(-25deg,0);    }
.page_top01b span{
	display:block;
	width: 707px;
	height:100%;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	-webkit-transform-origin: bottom left;
	transform-origin: bottom left;
	-webkit-transform: skew(25deg,0);
	transform: skew(25deg,0);
	max-width: none;}
.edit{
	font-size:16px;
	font-weight:400;
	line-height:2;
	overflow:hidden;}
.edit img{
	max-width:100%;
	height:auto;}
.route{}
.route b{
	display:inline-block;	}
.route span{}
.contact{
	width: calc(100% - 25px);
	margin: 0 auto 131px;
	padding: 32px 32px 0;
	-webkit-box-shadow: 0 23px 45px rgb(120 2 2 / 21%);
	box-shadow: 0 23px 45px rgb(120 2 2 / 21%);
	border-radius: 12px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 20px;}

.contact_row{
width:100%;
display: flex;
margin-left: 20px;}

.contact_box{
width:50%;display: flex;
}
.contact_box_l{width:15%;}

.contact_t01{
    width: 100%;
    text-align: center;
    font-size: 15px;
    color: #777;
    margin: 0 0 20px 0;}
.re_b01{
    color: #f00;
    display: inline-block;
    width: 1em;}
.contact01{
    width: calc(50% - 15px);
    margin: 0 0 15px;}
.contact02{
    width: 100%;
    margin: 0 0 15px;}
.contact01 label,
.contact02 label{
    font-size: 15px;
    display: block;
    margin: 0 0 7px;
    color: #828282;}
.contact01 p,
.contact02 p{}
.contact01 p input,
.contact02 p input{
    width: 100%;
    border: 2px solid #b5b5b5;
    padding: 0 12px;
    height: 50px;
    border-radius: 6px;}
.contact02 p textarea{
    width: 100%;
    border: 2px solid #b5b5b5;
    padding: 12px;
    border-radius: 6px;}

.code_i01{
	width:100%;
	display: -webkit-box;

	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;}
.code_i01 p{
    flex: 1;}
.code_i01 img{
    margin: 0 0 0 0.5em;}


.cont_b01{
	width:100%;
	text-align:right;}
.cont_b01 a{
	display:inline-block;
	padding: 14px 35px;
	margin: 0 7px;
	position:relative;
	letter-spacing: 0.05em;
	font-size: 17px;
	color: #FFF;
	line-height: 1;
	transform: translateY(50%);}
.cont_b01 a:after{
	content:"";
	display:block;
	transform: skewX(-15deg);
	background:#434343;

	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	border-radius: 3px;
	transition-property:all 0.3s;
	-moz-transition:all 0.3s; /* Firefox 4 */
	-webkit-transition:all 0.3s; /* Safari and Chrome */
	-o-transition:all 0.3s; /* Opera */	}
.cont_b01 a span{
	position:relative;
	z-index:1;
	font-weight: 500;	}
.cont_b01 a:hover:after{
	transform: skewX(0deg);
	background: #ecc545;}
.list01{
	width:100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;}
.product{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;}
.pro_left{
	width:250px;}
.pro_right{
	width:calc(100% - 250px);
	padding:0 0 0 30px;}
.cag_box01,
.cag_box01 li{
	list-style:none;
	padding:0;
	margin:0;}
.cag_box01{}
.cag_box01 li{}
.cag_box01 a{
	display:block;
	padding: 10px 0 10px 17px;
	border-bottom: 1px solid #ddd;
	background-image:url(../images/symbol/icon01.svg);
	background-position: left top 16px;
	background-repeat:no-repeat;
	background-size: 8px;
	font-size: 16px;
	font-weight: 500;	}
.cag_box01 a:hover,
.cag_box01 a.cag_box01y{
	color:#ecc545;
	background-image:url(../images/symbol/icon01y.svg);}
.cag_box01 h3{
    padding: 0px 0 0px 1em;
    margin: 0 0 30px;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 24px;
    position: relative;
    line-height: 1;    }
.cag_box01 h3::before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0.5em;
    width: 0.5em;
    height: 0;
    border-top: 3px solid #ecc545;    }
.pro_box03{
	width:100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;}
.pro_box03a{
	width:400px;}
.pro_box03b{
	width:calc(100% - 400px);
	overflow:hidden;
	padding: 0 0 0 60px;}
.pro_t01{
    display: block;
    margin: 0 0 30px;
    font-weight: bold;
    padding: 0 0 0 22px;
    font-size: 24px;
    background-image: url(../images/symbol/icon01y.svg);
    background-position: left top 11px;
    background-repeat: no-repeat;
    background-size: 12px;
    }
.photo01{
	display:block;
	width:100%;
	height:0;
	padding-bottom: 100%;
	background-color:#f2f2f2;
	background-position:center;
	background-repeat:no-repeat;
	background-size:contain;}
	
.service_box{
	width:100%;
	padding:0 0 0 0px;
}
.back01{
    margin: 30px 0 0 0;
    text-align: right;}
.time01{
	font-size: 14px;
	line-height: 30px;
	color: #858585;
	display: block;
	margin: 0 0 10px;}
.menu{
	display:none;
	position: fixed;
	right: 15px;
	top: 20px;
	z-index: 9999;}
#nav-icon2 {
  width: 40px;
  height: 30px;
  position: relative;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
  margin-top: 45px;
  margin-right: 20px;
  }
#nav-icon2 {}

#nav-icon2 span {
  display: block;
  position: absolute;
  height: 4px;
  width: 50%;
  background: #ecc545;
  opacity: 1;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;}

#nav-icon2 span:nth-child(even) {
  left: 50%;
  border-radius: 0 9px 9px 0;}

#nav-icon2 span:nth-child(odd) {
  left:0px;
  border-radius: 9px 0 0 9px;}

#nav-icon2 span:nth-child(1), #nav-icon2 span:nth-child(2) {
  top: 0px;}

#nav-icon2 span:nth-child(3), #nav-icon2 span:nth-child(4) {
  top: 13px;}

#nav-icon2 span:nth-child(5), #nav-icon2 span:nth-child(6) {
  top: 26px;}

#nav-icon2.open span:nth-child(1),#nav-icon2.open span:nth-child(6) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);}

#nav-icon2.open span:nth-child(2),#nav-icon2.open span:nth-child(5) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);}

#nav-icon2.open span:nth-child(1) {
  left: 5px;
  top: 6px;}

#nav-icon2.open span:nth-child(2) {
  left: calc(50% - 4px);
  top: 6px;}

#nav-icon2.open span:nth-child(3) {
  left: -50%;
  opacity: 0;}

#nav-icon2.open span:nth-child(4) {
  left: 100%;
  opacity: 0;}

#nav-icon2.open span:nth-child(5) {
  left: 5px;
  top: 18px;}

#nav-icon2.open span:nth-child(6) {
  left: calc(50% - 4px);
  top: 18px;}
.m_nav{
    width: 100%;
    display: block;}
.mobile{
	display:none;}
.mobile{
	width: 0%;
	max-height: 100%;
	height: 100%;
	overflow: hidden;
	overflow-y: scroll;
	-webkit-transform: translate(0,0px);
	transform: translate(0,0px);
	visibility: visible;
	opacity: 1;
	position: fixed;
	z-index: 1100;
	top: 0;
	background: #333;
	color: #FFF;
	left: auto;
	right: 0px;
	padding: 0;
	transition: width .75s cubic-bezier(0.190, 1.000, 0.220, 1.000) 0s;}
.mobileOn{
	padding: 80px 15px 15px;
    width: 100%;
    left: 0px;
    right: auto;
    transition: width .75s cubic-bezier(0.190, 1.000, 0.220, 1.000) 0s;}
.body_off{
	overflow-y:inherit;}
.search_box01{
	width:100%;
	width:100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
	justify-content: flex-start;}
.search_box01 p{
	flex:1;}
.search_box01 p input{
    width: 100%;
    height: 50px;
    padding: 0 1em;
    border: none;
    font-size: 18px;
    background: rgba(255,255,255,0.20);
    color: #FFF;
    border-radius: 3px 0 0 3px;
}
.search_box01 p input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color:rgba(255,255,255,0.7);
  opacity: 1; /* Firefox */
}

.search_box01 p input:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color:rgba(255,255,255,0.7);
}

.search_box01 p input::-ms-input-placeholder { /* Microsoft Edge */
  color:rgba(255,255,255,0.7);
}

.search_box01 a{
	display:block;
	width: 55px;
	height: 50px;
	color: #FFF;
	background: #ecc545;
	line-height: 1;
	font-size: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: center;
	justify-content: center;
	border-radius: 0 3px 3px 0;
	}
.download {
	user-select: none;
	cursor: pointer;
    padding: 15px;
    width: 100%;
	background: #f2f2f2;
	border-radius: 5px;
}
.download .pic_box {
	width: 100%;
    height: 0;
	padding-bottom: 75%;
	position: relative;
}
.download .title {
	text-align: center;
    font-size: 15px;
    word-break: break-all;
    overflow: hidden;
    height: 42px;
}
.download img {
	transition: all .3s;
	position: absolute;
	width: 60px;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
.download:hover img {
	width: 80px;
}
.download:active img {
	width: 60px;
}
.download_box {
	display: flex;
	flex-wrap: wrap;
}
.download_box a {
	width: calc( 20% - 30px );
	margin: 15px;
}
@media only screen and (max-width: 1430px) {
.pro_box01{
	margin: 0 40px 0 0;
	width: calc(100% / 3 - 40px);	}
.in_box02{
	width: 360px;
	padding:0 40px;	}
.section03{
	padding:50px 40px;	}
.in_box04b{
	margin:0 0 0 40px;}
.footer{
	padding:50px 40px;}
.page_top{
	padding:100px 40px;}
.page_top01b{
    right:calc(40px + 180px)}
	
	
}

@media only screen and (max-width: 1350px) {
	.search_b01 input{
	position:absolute;
	left: auto;
	right:0;
	top: -5px;
	z-index: 0;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 0em;
	height: 58px;
	background: #f5f5f5;
	color: #666;
	font-size: 14px;
	padding: 5px 0px 5px 0px;
	border: 0;
	border-radius: 5px;
	-moz-transition: all 0.25s;
	-webkit-transition: all 0.25s;	}
	

	
	
}
@media only screen and (max-width: 1280px) {
.top{
	width:100%;
	padding: 15px;}
.top_h{
	height: 115px;	}
.in_news{
	width:95%;}
.footer {
    padding: 25px 15px;}
.down_box03{
	display:none;}
.in_box04a h3 {
    font-size: 30px;}
.wrapper {
    width: 100%;
	padding:50px 15px 50px;}
}

@media only screen and (max-width: 1200px) {
	
	.nav{
	display:none;}
	.search{
	display:none;}	
	.menu{
	display:block;}
	.mobile{
	display:block;}
	
	.m_nav li{
		margin:0;
		width: 100%;}
	.m_nav li a.nav_b01, .m_nav li p.nav_b01 {
		color: #FFF;
		padding: 10px 0;
		font-size: 22px;
		justify-content: space-between;}
	.m_nav li a.nav_b01:before, .m_nav li p.nav_b01:before,
	.btn_box01a:before {
	display:none;}
	.m_nav li{
	margin:0;
	width: 100%;}
	.m_nav li a.nav_b01, .m_nav li p.nav_b01 {
	color: #FFF;
	padding: 10px 0;
	font-size: 22px;
    justify-content: space-between;}
	#nav-icon2 {
	margin-top: 27px;
	margin-right: 15px;}
	.btn_box01a a{
	color:#FFF;
	font-size:18px;
	margin: 0;
	padding: 10px 0;
	border-bottom: 1px solid rgba(255,255,255,0.25);}
	
.btn_box01 {
    width: 100%;
    position: relative;
    top: inherit;
    left: inherit;
    margin-top: 0;
    padding-top: 0;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    visibility: inherit;
    display: none;}

.btn_box01a {
    padding: 10px 22px;
    border-radius: 0;
    background-color: #606060;
    -webkit-box-shadow: none;
    box-shadow: 0 5px 10px rgb(0,0,0,27%) inset;}

}
@media only screen and (max-width: 1024px) {
.in_news{
	margin:0px auto;}
.in_box03 {
    flex: none;
    width: 100%;
    padding: 0;
    justify-content: flex-start;
    }
.in_box02 {
    width: 100%;
    padding: 0 209px 0 15px;
    margin: 0 0 30px;
    position: relative;
    }
.in_box02 h3 {
	display:none;}
.in_box02 .btn01{position: absolute;right: 15px;top: 50%;margin: -22.5px 0 0 0;}
.pro_box01 {
    margin: 0 15px;
    width: calc(100% / 3 - 30px);
    }
.pro_box01b {
    padding: 7px 0 0;}
.pro_box01b h4 {
    font-size: 18px;
    text-align: center;
    }
.section02,
.section01{
    padding: 50px 0;}
.section03 {
    padding: 50px 15px;}
.page_top01b {
    width: 260px;
    height: 201px;
    right: calc(15px + 104px);
    bottom: -50px;}
.page_top01a h1 {
    font-size: 20px;}
.page_top01a p {
    font-size: 50px;}
.page_top01b span {
    width: 353px;}
.wrapper {
    padding: 65px 15px 50px 15px;
    }
.page_top {
    padding: 50px 15px;}
.pro_left{
	display:none;}
.pro_right {
    width: 100%;
    padding: 0;}

}
@media only screen and (max-width: 992px) {
.top_h{
	height: 100px;
	}
a.logo01{
    width: 285px;}
#nav-icon2 {
	margin-top: 15px;
	margin-right: 15px;}



.body_off{
	overflow-y:hidden;}
.down_box01{
	display:none;}
.down_box02 {
    flex: none;
    width: 100%;
    text-align: center;}
.footer h2 {
    font-size: 18px;
    margin: 0 0 9px 0;}
.footer {
    font-size: 13px;}
.down_logo {
    padding: 0;
    width: 100%;
    margin: 0 auto;
    text-align: center;}
.footer .copyright {
    margin: 15px 0 15px 0;
    font-size: 13px;}
.social_b01 {
    width: 46px;}
.in_t01 {
    margin: 0 0px 15px 0;
    padding: 0px 0px 15px 0;
    border-right: 0px solid #eaeaea;
    border-bottom: 1px solid #eaeaea;
    width: 100%}
.in_box01 {
    flex: none;
    width: 100%;}
.in_news {
    padding: 20px;}
.in_box01 a p, .list02 a p {
    font-size: 14px;}
.in_box01 a time, .list02 a time {
    margin-right: 15px;
    font-size: 12px;}
.in_box04a {
    flex: none;
    width: 100%;
    order: 1;}
.in_box04b {
    margin: 0 auto 20px;
    width: 100%;
    max-width: 600px;}
.in_box04a h4{
	}
	.download_box a {
		width: calc( 25% - 30px );
	}
}


@media only screen and (max-width: 769px) {
.in_box01 a time, .list02 a time {
    width: 100%;
	line-height:1.5;}
.btn01 a,
.btn02 a{
    padding: 14px 20px;
    margin: 0;
    font-size: 13px;}
.btn02 {
    text-align: center;
    }
.in_box02 .btn01 {
    margin: -20.5px 0 0 0;}
.in_box02 h2 {
    font-size: 24px;}
.in_box02 h2 span {
    font-size: 15px;
    margin: 0 0 7px;}
.pro_box01 {
    margin: 0 0 30px;
    width: 100%;}
.in_box03{
	padding:0 15px;}
.in_box04a h4 {
	display:none;}
.in_box04a h3 {
	text-align:center;
    font-size: 18px;}
.pro_box02 {
    margin: 0 0px 30px;
    width: 100%;}
.pro_box03a{
	width:100%;}
.pro_box03b {
    width: 100%;
    padding:30px 0 0 0 ;}
.photo01 {
    padding-bottom: 50%;}
.pro_t01 {
    margin: 0 0 15px;
    padding: 0 0 0 18px;
    font-size: 20px;
    background-position: left top 11px;
    background-size: 8px;}
.contact01{
    width: 100%;}
.contact01 p input, .contact02 p input {
    height: 40px;}

.contact_row{
width:100%;
display: block;
margin-left: 30px;}
.contact_box_l{width:30%;}

.contact_box{
	width:100%;display: flex;
}
.download_box a {
	width: calc( 33% - 30px );
}


}
@media only screen and (max-width: 610px) {
.page_top01b{
	display:none;}
.page_top01a p {
    font-size: 30px;}
.page_top01a h1 {
    font-size: 17px;}
.wrapper {
    padding: 50px 15px}

	.download_box a {
		width: calc( 50% - 30px );
	}
a.logo01 {
    width: 200px;
}
}	
@media only screen and (max-width: 426px) {
.contact {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-radius: 0;}
	.download_box a {
		width: calc( 100% - 30px );
	}

}
/*tag*/
.tag_title{
	text-align:center;
    letter-spacing: 3px;	
}
.tag {
    line-height: 2;
}
.tag a {
    margin-right: 10px;
    line-height: 1;
    color: white;
	  word-break: break-all;
    font-size: 12px;	
    border:1px solid white;
    padding:10px;
    margin-top:10px;
    border-radius:20px;
}
.tag h2 {
	font-size:12px;
	font-weight:300;
	display: inline;
}

.social_btn.ph{
	display: none;
}
@media only screen and (max-width: 760px) {
.social_btn.ph{
	height: 45px;
    width: 45px;
    display: flex;
    background: #ebc445;
    color: #fff;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    padding: 5px;
}	
.social_btn.ph:after{
	display: none;
}
}