@charset "utf-8";
* {
	margin:0;
	padding:0;
	box-sizing: border-box;
}

body,td,th { 
	font-family: "游明朝" , "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", "メイリオ", Meiryo, serif;
	font-weight:500;
	font-size:15px;
	line-height:1.5;
	color: #1a1a1a;
	letter-spacing:0.1em;
}

body {
/*	background:#fff; */
	background:url(../img/bk.png);
}

input,select,textarea {

}

ul{
	list-style-type: none;
}

img {
	border:0px;
	margin: 0px;
}

table {
	border-collapse:collapse;
	border-spacing:0;
	text-align: left;
}
th,td {
	text-align: left;
	vertical-align:top;
	padding:8px;
	word-break: break-all;
}

h1,h2,h3,h4,h5,h6,td,th,p,ul,li,dt,dd {
	font-weight:normal;
	word-break: break-all;
}

a {
	color:#000;
	text-decoration:none;
}

a:hover {

}

hr {
	border: 0;
	height:1px;
	background: #B3B3B3;
	margin:4px 0;
}

h1,h2,h3,h4 {
	font-weight:normal;
}

h3,h4,h5 {
/*	color:#009245; */
}

.font_sans_serif {
	font-family: "游ゴシック" , "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "HGSゴシックE", "メイリオ", Meiryo, sans-serif;
}


section {
	position: relative;
	width: 100%;
	overflow:hidden;
/*	transform : translate(0, 50px); */
/*	transform : translate(0, 20px); */
	transition : all 500ms;
}

.top_section {
	position: relative;
	overflow:hidden;
	width: 100%;
	margin-bottom:10px;
	transform : translate(0, 0);
}

.scrollin {
	transform : translate(0, 0);
}

.content {
	position: relative;
/*	max-width: 1488px; */
	margin:0 auto;
	padding:0 10px;
	box-sizing: border-box;
}

header {
	position: fixed;
	top:0;
	left:0;
	width: 100%;
	height:82px;
	padding:6px 50px;
	background:rgba(0,0,0, .8);
	box-sizing: border-box;
	overflow:hidden;
	z-index:9000;
}
header,
nav,
nav li,
nav .sub_navi,
#logo_top,
#h_twitter,
#h_facebook,
#h_inquiry,
#h_recruit
{
	transition : all 300ms;
}

#logo_top {
	position:absolute;
	top:20px;
	left:50px;
	width:250px
}

nav {
	position:absolute;
	top:14px;
	left:336px;
	z-index:9000;

}

nav > ul {
	display:flex;
	flex-wrap: nowrap;
	padding:10px 0;
}

nav > ul > li {
	position:relative;
	border-left:1px solid #fff;

}

nav > ul > li:last-child{
	border-right:1px solid #fff;
}

nav > ul > li > a {
	display:inline-block;
	width:100%;
	text-align:center;
	padding:0px 15px;
	color:#fff;
	font-size:16px;
}

nav > ul > li:hover > a{

}

#gnavi_mobile li .f_s,
#gnavi li .f_s {
	font-size:12px;
}

#gnavi_mobile li a,
#gnavi li a {
	display:block;
	width:100%;
	height:100%;
	color:#fff;
	text-decoration:none;
	box-sizing: border-box;
}


.sub_navi {
	position:absolute;
	top:100%;
	left:0;
	box-sizing: border-box;
	box-shadow: 0px 1px 1px 0px rgba(0,0,0,0.3);
	display:none;
}


#gnavi_btn {
	position:fixed;
	top:10px;
	right:0;
	width:60px;
	height:50px;
	color:#fff;
	font-size:32px;
	text-align:center;
	box-sizing: border-box;
	cursor: pointer;
	z-index:10000;
}

.main_section {
	position:relative;
	width:100%;
	margin:0 auto;
	min-height:1500px;
	padding:10px;
	padding-top:100px;
	padding-left:50px;
	padding-right:50px;
}


.mobile_on {
	display:none;
}

#sub_gnavi {
	position:fixed;
	top:0;
	right:-320px;
	width:320px;
	padding-top:10px;
	height:100%;
	background-color:#000;
	background-image:url("../img/side_bk.png");
	background-size:320px auto;

	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	z-index:9000;
}

#sub_gnavi li *{
	vertical-align:middle;
}
#sub_gnavi li#sns_row a{
	display:inline-block;
	width:auto;
}

#sub_gnavi h4 {
	position:relative;
	color#00B7ED;
}


#sub_gnavi h4 a {
	display:block;
	width:100%;
	padding:10px 15px;
	color:#00b8ee;
	text-decoration:none;
	font-size:16px;

	background:rgba(255,255,255,0);
}

#sub_gnavi h4 a span {
	font-size:12px;
	color:#fff;
}

#sub_gnavi ul {
	padding-bottom:30px;
}

#sub_gnavi li {
	position:relative;
	border-bottom:1px solid #fff;
	min-height:40px;
/*	padding-right:40px; */
}

#sub_gnavi li a{
	display:block;
	width:100%;
	height:100%;
	color:#fff;
	text-decoration:none;
	padding:5px 15px;
	font-size:16px;
	background:rgba(255,255,255,0);

	transition : all 100ms;
}

#sub_gnavi h4 a:hover,
#sub_gnavi li a:hover {
	background:rgba(255,255,255,.2);
}

#sub_gnavi .mobile_on li span {
	position:absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%) translateX(0%);
	-webkit- transform: translateY(-50%) translateX(0%);

	color:#00b8ee;
}

#sub_gnavi li .inquiry_mob {
	font-size:16px;
	color:#fff;
}

#sub_gnavi .contents_menu {
	padding-top:20px;
}

#sub_gnavi .contents_menu li {
	padding:10px;
	padding-left:20px;
	cursor:pointer;
}
#sub_gnavi .contents_menu li:hover {
	background: rgba(255,255,255,.1);
}


#sub_gnavi .contents_menu li h4 {
	font-size:18px;
	color:#00B7ED;
}
#sub_gnavi .contents_menu li h4 span {
	position:relative;
	display:block;
	font-size:12px;
	color:#B2B3B3;
}
#sub_gnavi .contents_menu li p {
	font-size:12px;
	color:#fff;
}

#sub_gnavi li .contents_arrow_r {
	position:absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%) translateX(0%);
	-webkit- transform: translateY(-50%) translateX(0%);
	height:24px;
}

#sub_gnavi .menu_arrow_r {
	position:relative;
	width:100%;
	padding:10px;
	padding-left:40px;
	border-bottom:1px solid #fff;
}
#sub_gnavi .menu_arrow_r:hover {
	background: rgba(255,255,255,.1);
}
#sub_gnavi .menu_arrow_r img {
	height:30px;
}


#pankuzu,
#pankzu {
	margin-bottom:20px;
}

#paginator {
	margin-top:10px;
}

#paginator .current{
	color:#03A9F4;
	font-weight:600;
}

/* footer */
footer {
	position: relative;
	width: 100%;
	background:#1a1a1a;
	margin-top:50px;
	padding-bottom:30px;
}

footer #link_menu {
	position: relative;
	width:100%;
	background:#cfcfcf;
	padding:20px 80px;

	display:flex;
	flex-wrap:nowrap;

  -webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
}

footer #link_menu li {
	width:14%;
	border-left:1px solid #1a1a1a;
}
footer #link_menu li:last-child {
	border-right:1px solid #1a1a1a;
}

footer #link_menu li a{
	display:block;
	width:100%;
	text-align:center;
}

footer #footer_info_wrap
{
/*
	display:flex;
	flex-wrap:nowrap;
*/
	width:90%;
	margin:0 auto;
	padding-top:30px;
}

footer #footer_info_wrap #footer_logo {
	display:inline-block;
	width:25%;
	padding:10px;
	vertical-align:top;
}

footer #footer_info_wrap .footer_info  {
	display:inline-block;
/*	width:30%; */
	color:#fff;
	padding:10px 10px 10px 20px;
}

footer #footer_info_wrap .footer_info h5 {
	font-size:16px;
	color:#fff;
}

footer #footer_copy_wrap {
	width:100%;
	text-align:right;
	padding-right:50px;
}

footer #footer_copy_wrap #footer_copy {
	display:inline-block;
	width:350px;
	padding:0 50px;
	text-align:center;
}

footer #footer_copy_wrap #footer_copy p {
	font-size:10px;
	color:#fff;
}

/**/

#pagetop {
	position:fixed;
	bottom:10px;
	right:10px;
	background:rgba(255,255,255,.5);
	cursor: pointer;
	display:none;

	padding:5px;
	width:50px;

}

#pagetop img {
	width:100%;
}

#menu_overlayer {
	position:fixed;
	top:0;
	left:0;
	opacity:0;
	width:100%;
	height:100%;
	z-index:1000;

}

.menu_float {
	position:fixed;
	width:80%;
	height:90%;
	top:3%;
	left:10%;
	padding:30px;
	box-sizing: border-box;
	overflow-y: auto;
	border:1px solid #3aae36;
	border-radius:8px;
	background:rgba(255,255,255,.90);
	z-index:9000;
	-webkit-overflow-scrolling: touch;
	display:none;
}

.menu_float_close {
	position:absolute;
	top:2px;
	right:2px;
	width:40px;
	height:40px;
	font-size:40px;
	line-height:40px;
	color:#fff;
	text-align:center;
	cursor: pointer;
}

.over_layer {
	position:fixed;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background:rgba(0,0,0,.15);
	z-index:8000;
	display:none;
}


#loader {
	position:fixed;
	top:0;
	left:0;
	opacity:1;
	width:100%;
	height:100%;
	z-index:9900;
	background:#fff;
}

#loader img {
	position:absolute;
	top:50%;
	left:50%;
}


/*form*/
input,select,textarea {
	border:0;
	border:solid 1px #999;
	padding:8px;
	box-sizing: border-box;
	border-radius: 3px;
}

.btn_g,
.btn_a,
.btn_b,
.btn_c,
.btn_d,
.btn_n
{
	-webkit-appearance: none;
	-webkit-box-flex: 0;
	display: inline-block;
	padding:8px;
	margin: 2px;
	cursor: pointer;

	white-space: nowrap;
	color: #fff;
	font-weight: nomal;
	text-align: center;
	text-decoration:none;

	border: 1px solid rgba(0, 0, 0, .3);
	border-radius: 3px;

}

.btn_g:hover,
.btn_a:hover,
.btn_b:hover,
.btn_c:hover,
.btn_d:hover
{
	color: #fff;
}

.btn_g
{
	color: #fff;
	background-color: #01579B;
}


.btn_g:hover
{
	background-color: #0277BD;
}




.btn_a
{
	background-color: #E9573F;
}


.btn_a:hover
{
	background-color: #FC6E51;

}

.btn_b
{
	background-color: #8CC152;
}


.btn_b:hover
{
	background-color: #A0D468;
}

.btn_c
{
	background-color: #F6BB42;
}


.btn_c:hover
{
	background-color: #FFCE54;
}

.btn_n {
	background-color: #607D8B;
	color:#fff;
}

.btn_n:hover {
	background-color: #90A4AE;
	color:#fff;
}

/* checkbox, radio */
input[type="radio"],
input[type="checkbox"]
{
	display:none;
}

input[type="radio"] + label,
input[type="checkbox"] + label
{
	display:inline-block;
	cursor: pointer;
	padding:8px;
	margin:1px;
	border-radius:4px;
	text-align:center;
	background-color: #AAB2BD;
}

input[type="radio"]:checked + label,
input[type="checkbox"]:checked + label
{
	background: #3aae36;
	color:#fff;
}

/*
input[type="radio"]:checked + label:before,
input[type="checkbox"]:checked + label:before
{
	content:"✔";
}
*/

input:focus,
select:focus,
textarea:focus
{
	border-color:#01579B;
}


.input_error {
	border-color:#b71c1c;
	background:#ffebee;
}


.error_message {
	color:#f44336;
}

.message {
	color:#01579B;
}




.required {
	color:#da4453;
}

.align_c {
  text-align: center;
}
.align_l {
  text-align: left;
}
.align_r {
  text-align: right;
}

.w30 {
	width:30px;
}
.w60 {
	width:60px;
}
.w80 {
	width:80px;
}
.w100 {
	width:100px;
}
.w120 {
	width:120px;
}
.w150 {
	width:150px;
}
.w200 {
	width:200px;
}

.w230 {
	width:230px;
}

.w250 {
	width:250px;
}

.w300 {
	width:300px;
}

.w100par {
	width:100%;
}

.w90par {
	width:90%;
}

.w50par {
	width:50%;
}

/* font */
.f_min {
	font-family: "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}


/*===============================================
1500px
===============================================*/
@media screen and (max-width:1500px){


}/* @media */

/*===============================================
1200px
===============================================*/
@media screen and (max-width:1200px){
}/* @media */

/*===============================================
1000px
===============================================*/
@media screen and (max-width:1000px){
#logo_top {
	top:22px;
	width:200px
}

nav {
	left:286px;
}

nav > ul > li > a {
	padding:0px 8px;
	font-size:14px;
}
}/* @media */

/*===============================================
900px for mobile
===============================================*/
@media screen and (max-width:900px){

#header {
	border-bottom:0;
}
#logo_top {
	width:200px;
}

nav{
	display:none;
}
.mobile_on {
	display:block;
}

.main_section {
	padding-left:10px;
	padding-right:10px;
}


#pagetop {
	width:60px;
}

footer #link_menu li {
	width:20%;
	font-size:12px;
}
footer #link_menu {
	padding:20px 20px;
}

footer #footer_info_wrap
{
	width:100%;
}

footer #footer_info_wrap #footer_logo {
	width:250px;
	padding-left:20px;
}

footer #footer_info_wrap .footer_info  {
	display:inline-block;
	width:100%;
}

footer #footer_copy_wrap {
	padding-right:30px;
}

}/* @media */

/*===============================================
720px for mobile
===============================================*/
@media screen and (max-width:720px){
footer #link_menu li {
	width:25%;
}
}/* @media */
/*===============================================
600px for mobile
===============================================*/
@media screen and (max-width:600px){
footer #link_menu {
	display:none;
}
}/* @media */
