/* IMPORT RESET */
@import url("reset.css");

/* UTILITY */
@import url("../css/utility.css");

/* IMPORT 12 COLUMN RESPONSIVE GS */
@import url("responsive.gs.12col.css");

/* top.css */
@import url("top.css");

/* content.css */
@import url("content.css");

/* Font Awesome */
@import url("https://use.fontawesome.com/releases/v5.6.1/css/all.css");
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css");
@import url("https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css");


/*	EXAMPLE STYLES */
body {
	font-family: Meiryo,"メイリオ","ＭＳ Ｐゴシック",Osaka,sans-serif;
	color: #333;
	font-size: 14px;
	background-color:#fff;
}

/* ----------   header  --------------------- */
header {
	padding-bottom:20px;
	background-position: 0 0;
}


/* ----------   article  --------------------- */

article {
	margin:0px 0 10px;
}

main{
padding:0px 0px 30px 0px ;
}

@media only screen and (max-width: 768px) {
main{
padding:10px 8px 30px 8px ;
}
}

/* ----------   section  --------------------- */
section {

}

aside {
	margin:0px 0 30px;
}



/* ----------   footer  --------------------- */
footer {
	padding:20px 0px 0px;
}

#link_area{
text-align:center;
margin:10px 0;
}


#link_area img{
margin:5px 0;
}


/* ----------   メインイメージ系  --------------------- */



.nak_tt{
background:url(../images/main02.png) no-repeat center bottom,url(../images/main03.png) repeat-x center bottom;
background-size:1600px,708px;
border-top:5px solid #a5cd5a;
border-bottom:5px solid #a5cd5a;
}

.nak_tt h2{
font-weight:bold;
padding:6% 2% 6%;
font-size:180%;
color:#fff;
text-shadow:1px 1px 1px #333,-1px -1px 1px #333,1px 1px 1px #333,-1px -1px 1px #333,1px 1px 1px #333,-1px -1px 1px #333;
}


@media only screen and (max-width: 959px) {

.nak_tt{
margin:0px 0px 0px ;
background-size:160%;
}

.nak_tt h2{
font-weight:bold;
padding:6% 2% 6%;
font-size:140%;
text-shadow:1px 1px 1px #333,-1px -1px 1px #333,1px 1px 1px #333,-1px -1px 1px #333,1px 1px 1px #333,-1px -1px 1px #333;
}


}



/* ----------   menu  --------------------- */

#menu-box{
  margin:0px 0px 0px 0px ;
  padding:0px 0px 0px 0px ;
  position: relative;
  background:url(../common_img/bg.png) repeat;
}

#menu{
  margin: 0px 0 0px;
  padding: 0;
  font-size:100%;
}
#menu li{
  float: left;
  text-align:center;
  line-height:1.2;
  width: 20%;
  border-right:solid 1px #8aa5de;
  margin: 0;
  }

#menu li:first-child{border-left:solid 1px #8aa5de;}

#menu li a{
  display: block;
  padding: 12px 0px 12px;
  color: #fff;
  text-align: center;
  font-weight:bold;
  text-decoration: none;
}
#menu li a:before{font-size:200%;vertical-align:middle;color:#fff;display:block;}

.menu_01 a:before{content:'\f009';margin-right:10px;font-family:'Font Awesome 5 Free';}
.menu_02 a:before{content:'\f54f';margin-right:10px;font-family:'Font Awesome 5 Free';}
.menu_03 a:before{content:'\f31e';margin-right:10px;font-family:'Font Awesome 5 Free';}
.menu_04 a:before{content:'\f508';margin-right:10px;font-family:'Font Awesome 5 Free';}
.menu_05 a:before{content:'\f2b5';margin-right:10px;font-family:'Font Awesome 5 Free';}

#menu li a:hover{
  background:#06459c;
  color:#fff;
}
#menu li a:hover:before{background:#06459c;color:#fff;}

#toggle{ 
 display: none;
}




@media only screen and (max-width: 1000px) {
  #menu{
    display: none;
  }

#menu-box{
  background:none;
  margin:0px 0px 0px 0px ;
  padding:0px 0px 0px 0px ;
}

  #menu li{
    width: 100%;
    background:#fff;
    border-bottom:dotted 1px #ccc;
  }

#menu li:first-child{width: 100%;border-left:none;}
#menu li:last-child{width: 100%;}

#menu li a{
  color: #005bab;
  background:none;
  padding: 15px 0px 15px;
}

#menu li a:hover{
  color: #fff;
  background:#0072ff;
  border-bottom:none;
}

#menu li a:before{font-size:100%;color:#fff;display:inline;margin-right:10px;color:#15446d;}


  #toggle{
    display: block;
    position: relative;
    width: 100%;
    background:#005bab;
    border-bottom:solid 1px #fff;
  }

  #toggle a{
    display: block;
    position: relative;
    padding: 10px 0 8px;
    color: #fff;
    text-align: center;
    text-decoration: none;
  }
  #toggle:before{
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: #fff;
  }
  #toggle a:before, #toggle a:after{
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
    width: 20px;
    height: 4px;
    background: #005bab;
  }
  #toggle a:before{
    margin-top: -6px;
  }
  #toggle a:after{
    margin-top: 2px;
  }

}

.btn01 {margin:30px auto 20px;width:80%;max-width:260px;}


.btn01 a{
	color:#006ea6;
	font-weight:normal;
	text-decoration:none;
	font-size:100%;
	display:block;
	padding:10px 0px;
	background:#f2f2f2;
	text-align:center;
	-webkit-border-radius:80px; -moz-border-radius:80px; border-radius:80px;
	border:solid 2px #006ea6;
}

.btn01 a:hover{
	background:#006ea6;
	color:#fff;
}


@media only screen and (max-width: 680px) {

.btn01 a span{
display:none;
}

}
.link_box{
-webkit-transition: opacity linear 0.4s; -moz-transition: opacity linear 0.4s; transition: opacity linear 0.4s;
}

.bl-hover{
	opacity:0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
	background: #fff;
	-webkit-transition: opacity linear 0.4s; -moz-transition: opacity linear 0.4s; transition: opacity linear 0.4s;
}


/* ----------   フッターナビ  --------------------- */

#page-top {
    position: fixed;
    bottom: 60px;
    right: 40px;
    z-index:1000;
	animation-name: SlideUp;
	animation-duration: 2s;
}
#page-top a {
    padding: 30px 0px;
    display: block;
}
#page-top a img:hover {
    text-decoration: none;
    opacity: 0.8;
}

@media only screen and (max-width: 480px) {

#page-top {
    position: fixed;
    bottom: 60px;
    right: 5px;
    z-index:1000;
    width:50px;
}

}


.fotter_bg{
background:url(../common_img/fotter_bg.png) no-repeat center 0;
background-size:cover;
border-top:solid 10px #725923;
}

.fnav {
width:100%;
margin:0 0 0 20px;
}

.fnav li{
float:left;
margin:0 20px 5px 0;
color:#fff;
}

.fnav li a:before  { content:'>'; float:left;margin-right:5px;font-size:80%;padding:0px 3px;}

.fnav li a{
display:block;
color:#fff;
}

.fnav li a:hover{
text-decoration:none;
}


.f_info{
border:dotted 1px #fff;
padding:15px 20px 25px 20px ;
}


.f_info p{
text-align:center;
color:#fff;
font-weight:bold;
padding:0px 0px 10px 0px ;
font-size:130%;
}

.f_info dt{
text-align:center;
padding:0px 0px 10px 0px ;
}

.f_info dt span{
color:#fff;
display:block;
text-align:center;
}

.f_info dd{
text-align:center;
font-size:130%;
padding:0px 0px 10px 0px ;
color:#fff;
}
.f_info dd li{
text-align:center;
}
.f_tel{font-weight:bold;}
.f_tel span{display:block;text-align:center;font-size:100%;background:#004f8c;font-weight:normal;margin:10px 0;}

.ei{font-size:80%;}

#site_copy{
text-align:center;
margin:40px 0 0 0;
padding:10px;
color:#fff;
background:#004f8c;
}

.link_f{
text-align:center;
margin:15px 0;
}

.link_f img{
margin:10px;
width:45%;
}

@media only screen and (max-width: 768px) {
.f_info{
border:solid 1px #fff;
padding:15px 20px 25px 20px ;
width:90%;
margin:20px auto 0;
}

.fnav {
width:95%;
margin:0 auto 0px;
}

.fnav li{
float:none;
margin:5px 0px 5px 0;
color:#fff;

}

.fnav li a{
display:block;
color:#fff;
border:solid 1px #b5ccd4;
padding:5px 0px 5px 0;
}

footer {
	padding:0px 0px 0px;
}

.f_tel span{font-size:75%;padding:10px 0;font-weight:normal;}

}

/* ----------   デバイス毎の振り分け  --------------------- */


/*PC960px以上 */


h1{
font-size:80%;
padding:0px 0 0px;
line-height:50px;
font-weight:normal;
color:#333;
text-align:left;
width:730px;
float:left;
}

.c_info{
float:right;
width:258px;
line-height:30px;
margin:8px 0px 0px 0px ;
}

.c_info li{
float:left;
text-align:center;
width:50%;
}

.c_info li a{
display:block;
color:#fff;
text-decoration:none;
text-align:center;
background:#6cae48;
}

.c_info li:last-child a{
background:#2f9544;
}

.c_info li a:before { content:'\f151'; margin-right:10px;font-family:'Font Awesome 5 Free';}
.c_info li:last-child a:before { content:'\f2bb'; margin-right:10px;font-family:'Font Awesome 5 Free';}

.c_info li a:hover{background:#ff7200;}

.logo{float:left;width:270px;padding:0px 0px 0px 0px ;}


.h_info{float:right;width:470px;padding:10px 0px 0px 0px ;}
.h_info li{float:left;font-weight:bold;font-size:120%;}
.h_info li:last-child{margin:0px 0px 0px 10px ;}
.h_info li a{color:#fff;display:block;text-align:center;text-decoration:none;background:#de9200;width:230px;padding:8px 0px 8px 0px ;}
.h_info li:last-child a{background:#ff3c00;}

.h_info li a:before { font-size:140%;vertical-align:middle;}

.h_info li a:before { content:'\f3cd'; margin-right:20px;font-family:'Font Awesome 5 Free';}
.h_info li:last-child a:before { content:'\f0e0'; margin-right:20px;font-family:'Font Awesome 5 Free';}

.h_info li a:hover { background:#00e4ff;}

@media only screen and (max-width: 1000px) {

header {
	border-top:solid #003aaf 4px;
}

.logo{float:none;width:240px;margin:20px auto 0px ;}

h1{
display:none;
}

.c_info{
float:none;
width:258px;
line-height:30px;
margin:8px auto 0px ;
}


.h_info{float:none;width:410px;margin:0px auto 0px ;}
.h_info li{font-size:100%;}
.h_info li a{width:200px;}

}

@media only screen and (max-width: 768px) {


.h_info{float:none;width:100px;margin:0px auto 0px ;}
.h_info li{font-size:120%;}
.h_info li a{width:45px;}
.h_info li a span{display:none;}
.h_info li a:before { margin-left:10px;vertical-align:middle;}


h1{
font-size:60%;
padding:0px 0 0px;
line-height:1.3;
text-align:center;
}

#pan {display:none;}


}

@media only screen and (max-width: 480px) {

}


/* ロールオーバーで不透明度変更
-------------------------------------------------- */
.hover_img a:hover img,
a.hover_img:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	-webkit-transition: opacity linear 0.4s; -moz-transition: opacity linear 0.4s; transition: opacity linear 0.4s;
}


/* タイトルのスタイル
-------------------------------------------------- */

.tt_style01{
background:url(../common_img/bg.png) repeat;
padding:10px 0px 10px 30px ;
margin:40px 0 25px 0;
font-size:120%;
color:#fff;
font-weight:bold;
}

main section:first-child .tt_style01{
margin:0px 0 25px 0;
}

.tt_style01 span{
padding:0px 0px 0px 30px ;
font-weight:normal;
}

.tt_style02{
font-size: 120%; 
color: #b8972b;
padding:5px 0 5px 0px;
margin:20px 0px 15px;
font-weight:bold;
border-bottom:dotted 2px #999;
text-align:left;
}

.tt_style02 span{
font-size: 90%;
padding:0px 0 0px 20px;
color:#333;
}

.tt_style02:before { content:'\f58e'; margin-right:10px;font-family:'FontAwesome';color:#ff3c00;font-size: 100%; }


.tt_style03 {
    background: url(../common_img/h3_bg02.png) no-repeat center bottom;
    padding: 0px 0px 20px 0px;
    margin: 20px 0 15px 0;
    font-size: 200%;
    color: #000;
    text-align: center;
    font-weight: bold;
}

.tt_style03 span {
    display: block;
    color: #3d9fd3;
    text-align: center;
}

@media only screen and (max-width: 480px) {

.tt_style01{
font-size:100%;
}


.tt_style01 span{
display:none;
}

.tt_style02{
font-size:100%;
}

.tt_style03{
font-size:130%;
}

.tt_style04{
font-size:100%;
}

}

.video{
  position:relative;
  width:90%;
  margin:0 auto;
  padding-top:56.25%;
}
.video iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}
/* 
====================================================================================================
◆表示アニメーション
---------------------------------------------------------------------------------------------------- */

/*右から左*/
@keyframes RightToLeft {
0% {
    opacity: 0;/* 透明 */
    transform: translateX(50px);/* X軸方向に50px */
}
100% {
    opacity: 1;/* 不透明 */
    transform: translateX(0);/* X軸方向に0px */
}
}

@keyframes LeftToRight {
0% {
    opacity: 0;/* 透明 */
    transform: translateX(-50px);/* X軸方向に50px */
}
100% {
    opacity: 1;/* 不透明 */
    transform: translateX(0);/* X軸方向に0px */
}
}

/*上から下*/
@keyframes SlideDown {
0% {
    opacity: 0;/* 透明 */
    transform: translateY(-50px);/* Y軸方向に-50px */
}
100% {
    opacity: 1;/* 不透明 */
    transform: translateY(0);/* Y軸方向に0px */
}
}

/*下から上*/
@keyframes SlideUp {
0% {
    opacity: 0;/* 透明 */
    transform: translateY(50px);/* Y軸方向に50px */
}
100% {
    opacity: 1;/* 不透明 */
    transform: translateY(0);/* Y軸方向に0px */
}
}

