@charset "utf-8";
body {
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}


/* contents
-------------------------------------------------------------------*/
.wrap {
	min-width:1024px;
	overflow:hidden;
	position:relative;
}

.fix:after{
    content: " ";
    display: block;
    clear: both;
}

h2.tit,
h1.tit{
	text-align:center;
	font-size:35px;
	line-height:1.3em;
	font-weight:bold;
	padding:20px 0;
	letter-spacing:0.1em;
}

h2.tit span,
h1.tit span{
	font-size:18px;
	display:block;
	letter-spacing:0;
}

.home h2.tit span{
	color:#3676e1;
}

.wd{
	max-width:960px;
	margin:0 auto;
	box-sizing:border-box;
}

.scale{
	width:100%;
	height:auto;
}

.sp{
	display:none;
}

.left{
	float:left;
}

.right{
	float:right;
}

.link_ad{
	margin-top:-66px;
	padding-top:66px;
}

img{
	max-width:100%;
	height:auto;
}

.video .inner {
	padding-top: 56.25%;
	position: relative;
	height: 0;
	overflow: hidden;
}

.video .inner iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border:none;
}


@media screen and (max-width: 800px) {
h2.tit,
h1.tit{
	font-size:24px;
	padding:10px 0;
}

h2.tit span,
h1.tit span{
	font-size:16px;
}	
	
.wrap {
	min-width:100%;
	overflow:hidden;
	margin:60px 0 0 0;
}

.wd{
	width:100%;
	margin:0 auto;
}

.spleft{
	float:left;
}

.spright{
	float:right;
}

.spscale{
	width:100%;
	height:auto;
}

.contents{
	overflow:hidden;
	width:100%;
	box-sizing:border-box;
	margin:0;
}

.spscale{
	width:100%;
	height:auto;
}

.link_ad{
	margin-top:-60px;
	padding-top:60px;
}

img{
	max-width:100%;
	height:auto;
	margin:0 auto;
}

.pc{
	display:none;
}

.sp{
	display:block;
}

.spleft{
	float:left;
}

.spright{
	float:right;
}

input{
	font-size:16px;
}
}



/* header
-------------------------------------------------------------------*/
header{
	z-index:999;
	width:100%;
	background:#fff;
}

header .titbox{
	padding:20px 0;
	display:flex;
	justify-content:space-between;
	align-items: center;
	position:relative;
}

header .titbox dl{
	position:absolute;
    right: 300px;
    bottom: 18px;
}

header .titbox dl dt{
	font-size:22px;
	color:#005bac;
	line-height:1.3em;
}

header .titbox dl dd a{
	font-size:16px;
	font-weight:bold;
	letter-spacing: -0.1em;
}

header .titbox .txt{
	line-height:1.6em;
	font-size:14px;
}

header .gnav,
nav.clone_gnav{
	background:#f75400;
}

header .gnav ul.nav,
.clone_gnav ul.nav{
	display:flex;
	justify-content:center;
	position:relative;
	z-index: 7;
}

header .gnav ul.nav li,
.clone_gnav ul.nav li{
	position:relative;
	cursor:pointer;
	transition: all 0.3s;
}

header .gnav ul.nav span,
.clone_gnav ul.nav span{
	display:block;
	padding:20px 15px;
}

header .gnav ul.nav li a,
.clone_gnav ul.nav li a{
	padding:20px 15px;
	transition: all 0.3s;
	cursor:pointer;
}

header ul.nav .has-sub.on,
.clone_gnav ul.nav .has-sub.on{
	background:#f78b00;
}

header .gnav ul.nav li .sub li,
.clone_gnav ul.nav li .sub li{
	padding:0
}

header .gnav ul.nav li a,
header .gnav ul.nav span,
.clone_gnav ul.nav span,
.clone_gnav ul.nav li a{
	font-size:14px;
	color:#fff;
	transition: all 0.3s;
	display:block;
}

header .sub,
.clone_gnav .sub{
	display:none;
	position:absolute;
	top:65px;
	left:0;
	width:100%;
	background:rgba(247,84,0,0.8);
}

header ul.nav li .sub li,
.clone_gnav ul.nav li .sub li{
	padding:0;
	text-align:center;
}

header ul.nav li .sub li a:hover,
.clone_gnav ul.nav li .sub li a:hover{
	background:rgba(247,139,0,0.8);
}

header ul.nav li .sub li a,
.clone_gnav ul.nav li .sub li a{
	background:rgba(247,139,0,0);
	padding:15px;
	display:block;
}

.clone_gnav {
	position: fixed;
	top: 0;
	left: 0;
	right:0;
	margin:0 auto;
	z-index: 999;
	width: 100%;
	transition: .3s;
	transform: translateY(-250px);
	background:#fff;
	z-index:999;
	box-sizing:border-box;
}

.is-show {
	transform: translateY(0);
	top: 0;
}

.spgnav{
	display:none;
}

@media screen and (max-width: 820px) {
header .gnav ul.nav li a,
header .gnav ul.nav span,
.clone_gnav ul.nav span,
.clone_gnav ul.nav li a{
	font-size:13px;
}
}

@media screen and (max-width: 800px) {
header{
	display:none;
}

.gnav{
	display:none;
}

.spgnav{
	display:block;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	background:#fff;
	z-index:999;
	height:60px;
}
	
.spgnav ul li ul{
	display:none;
}

.spgnav .h_box{
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.spgnav .logo{
	padding:9px 0 0 10px;
	width:120px;
}

.spgnav .btn{
	width:180px;
	padding:3px 5px 0 0;
}

.topmenu {
    display: block;
    height: 60px;
    position: fixed;
	left:0;
	margin:0 auto;
    top: 60px;
	background:#f75400;
    width: 60px;
    z-index: 9999;
    cursor: pointer;
}

.sptrigger,
.sptrigger span {
	display: block;
	transition: all .4s;
	box-sizing: border-box;
    z-index: 99999;
}
.sptrigger {
    position: relative;
    width: 100%;
    height: 100%;
	cursor: pointer;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.sptrigger span {
	position: absolute;
	left: 50%;
	width: 30px;
	margin-top:-10px;
	margin-left: -17px;
	height: 3px;
	background-color: #fff;
	border-radius: 4px;
    z-index: 99999;
}
.sptrigger.active span {
	background-color: #fff;
}
.sptrigger span:nth-of-type(1) {
    top: 29px;
}
.sptrigger span:nth-of-type(2) {
    top: 38px;
}
.sptrigger span:nth-of-type(3) {
    top: 47px;
}
.spmenu {
    top: 60px;
    left: 0;
    z-index: 1000;
    display: none;
    position: fixed;
    width: 100%;
	padding:60px 0 0 0;
    background:#f75400;
}
.spmenu .box_in{
    width: 100%;
	text-align:center;
}

.spmenu ul{
	text-align:center;
}

.spmenu ul li{
	border-bottom:1px solid #fff;
}
	
.spmenu ul li:last-child{
}

.spmenu ul li a,
.spmenu ul li span{
	font-size:14px;
	letter-spacing:0.1em;
	font-weight:bold;
	color:#fff;
	padding:10px 0;
	display:block;
	transition: .3s;
	position:relative;
}

.spmenu ul li ul li{
	border-bottom:none;
	background:rgba(247,139,0,0.8);
}
	
.spmenu ul li ul li a{
	font-size:12px;
	border-top:1px solid #f75400;
}

.spmenu ul li span:after{
	content: "";
	position: absolute;
    right: 20px;
    top: 35%;
	transition: all 0.2s ease-in-out;
	display: block;
	width: 8px;
	height: 8px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
	
.spmenu ul li span.on:after{
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 45%;
}
	
.spmenu dl{
	background:#005bac;
	color:#fff;
	font-size:16px;
	padding:20px 0;
}
	
.spmenu dl a{
	display:inline-block;
	margin:5px 0 0 0;
	color:#fff;
}

.movmobb1 .active span:nth-of-type(1) {
	-webkit-transform: translateY(9px) rotate(-45deg);
	    transform: translateY(9px) rotate(-45deg);
}
.movmobb1 .active span:nth-of-type(2) {
	opacity:0;
}
.movmobb1 .active span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
}

.top-trigger{
	position:relative;
}

.top-trigger p{
	transition: all .4s;
	box-sizing: border-box;
    z-index: 999;
	position:fixed;
	right:0;
	top:0;
	background:#222222;
	color:#fff;
	width:130px;
	text-align:center;
	padding:15px 0;
	font-family: 'Roboto', sans-serif;
}

.top-trigger .arrow {
	position:fixed;
	right:65px;
	top:52px;
	transition: all 0.3s;
	opacity:0;
	z-index:1000;
}

.top-trigger.active .arrow {
	opacity:1;
}

.top-trigger .arrow::before {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	left: 50%;
	width: 0;
	bottom:-10px;
	height: 0;
	transform: translateX(-50%);
	border: 10px solid transparent;
	border-top: 10px solid #222222;
	border-bottom-width: 0;
}

.mobilenav{
    top: 52px;
    right: 0;
    z-index: 999;
    display: none;
    position:fixed;
    width: 130px;
	bottom:0;
	overflow: auto;
}
}

/* footer
-------------------------------------------------------------------*/
footer{
	background:#36b7e1;
	color:#fff;
	font-size:14px;
}


footer .box{
	padding:30px 0 75px 0;
	display:flex;
	justify-content:space-between;
}

footer .box a{
	color:#fff;
}

footer .box ul{
	order:1;
}

footer .box ul li{
	padding:0 0 10px 0;
}

footer .box ul li a{
	font-size:16px;
}

footer .copy{
	text-align:center;
	font-size:16px;
	padding:15px 0;
	background:#72d1f0;
}
 
@media screen and (max-width: 800px) {
footer{
	font-size:14px;
}


footer .box{
	padding:30px 20px 20px 20px;
	box-sizing:border-box;
	display:block;
	text-align:center;
}

footer .box ul{
	padding:0 0 20px 0;
}

footer .box ul li{
	padding:0 0 3px 0;
}

footer .box ul li a{
	font-size:14px;
}

footer .copy{
	font-size:14px;
	padding:15px 0;
}

}
