﻿@charset "utf-8";

/* -----------------------------------------------
CSS file
FileName:common.css
Author:fancs&co.
UpdatedBy:hirata
----------------------------------------------- */

/*----------------------------------------------------
	layout[共通]
----------------------------------------------------*/

/*----------------------------------------------------
	layout[PC（デスクトップ）]
----------------------------------------------------*/

/* body
----------------------------------------------------*/
body{
	text-align:center;
	width:100%;
	overflow:auto;
}

/* header
----------------------------------------------------*/
header {
	width:100%;
	max-height:100vh;
	background:#FFF;
	padding-bottom:0;
	overflow:auto;
	z-index:13;
	position:fixed;
}

header::after{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:50px;
	z-index:-1;
	background:;
}

#header_content{
	margin:0px auto;
	text-align:left;
	width: calc(100% - 60px);
	min-width: 900px;
}

header::after{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:50px;
	z-index:-1;
	background:;
}

#header_content{
	padding:0;
	position:relative;
	width:100%;
	min-width:inherit;
	max-width:inherit;
	min-height:70px;
}

#header_content p#logo_header{
	float:none;
	width:16%;
	max-width:200px;
	min-width:inherit;
	padding:0;
	position:absolute;
	top:20px;
	left:20px;
	z-index:11;
}

#header_content p#logo_header img{
	width:100%;
}

#header_content p#star_header{
	position:absolute;
	top:7px;
	right:calc(60px + 3%);
	width:36px;
	padding:0;
	z-index:11;
	cursor:pointer;
}

#header_content p#star_header img{
	display:none;
}

#header_content p#star_header img.on{
	display:block;
}

/* g_nav
----------------------------------------------------*/
#g_nav{
	width:100%;
	padding:0;
	clear:both;
	float:none;
}

#g_nav #g_nav_content{
	padding-top:0;
}

#g_nav #btn_menu_header{
	width:40px;
	float:right;
	padding:10px 30px 10px;
}

#g_nav #btn_menu_header #txt_menu_header{
	margin-top:-5px;
}

#g_nav a.ico_menu_header,
#g_nav a.ico_menu_header span {
 	transition: all .4s;
 	box-sizing: border-box;
}

#g_nav a.ico_menu_header {
	display: block;
	position: relative;
	width: 40px;
	height: 34px;
}

#g_nav a.ico_menu_header span {
	display: inline-block;
 	position: absolute;
 	left: 0;
 	width: 100%;
 	height: 6px;
 	background-color: #313131;
}

#g_nav a.ico_menu_header span:nth-of-type(1) {
 	top: 0;
}

#g_nav a.ico_menu_header span:nth-of-type(2) {
 	top: 14px;
}

#g_nav a.ico_menu_header span:nth-of-type(3) {
 	bottom: 0;
}

#g_nav a.ico_menu_header.active span:nth-of-type(1) {
 	-webkit-transform: translateY(15px) rotate(-315deg);
 	transform: translateY(15px) rotate(-315deg);
}

#g_nav a.ico_menu_header.active span:nth-of-type(2) {
 	opacity: 0;
}

#g_nav a.ico_menu_header.active span:nth-of-type(3) {
 	-webkit-transform: translateY(-15px) rotate(315deg);
 	transform: translateY(-15px) rotate(315deg);
}

#g_nav_content{
	display:none;
	clear:both;
	background:rgba(0,104,181,0.95);
	width:100%;
	min-width:inherit;
	max-width:inherit;
	overflow:scroll;
}

#g_nav_content > li{
	display:block;
	float:none;
	width:100%;
	padding:0;
	border-bottom:#00508c solid 1px;
	border-top:#1c83d0 solid 1px;
	font-size:1em;
}

#g_nav_content > li:first-child{
	width:100%;
}

#g_nav_content > li:first-child{
	border-top:none;
}

#g_nav_content > li a{
	display:block;
	width:94%;
	text-align:center;
	font-weight:900;
	font-size:1em;
	height:70px;
	line-height:70px;
	background:none;
	border-left:none;
	padding:0 3%;
	cursor:pointer;
	pointer-events:auto;
}

#g_nav_content > li a:link,
#g_nav_content > li a:hover,
#g_nav_content > li a:visited{
	color:#FFF;
}

#g_nav_content > li dl dt{
	border-left:none;
	border-bottom:none;
}

/* footernav
----------------------------------------------------*/
#footernav{
	padding-bottom:0;
}

.footernav{
	position:fixed;
	left:0;
	bottom:0;
	width:100%;
	background:#FFF;
	overflow:auto;
	display:none;
	z-index:6;
}

.section .footernav h2{
	background:#375573;
	font-weight:700;
	font-size:1em;
	color:#FFF;
	padding:10px;
}

.footernav nav.list_footernav{
	max-height:calc(100vh - 220px);
	overflow:scroll;
}

.footernav nav.list_footernav > ul{
	font-size:0;
}

.footernav nav.list_footernav > ul > li{
	display:block;
	float:none;
	width:100%;
	padding:0;
	font-size:16px;
	color:#484848;
}

.footernav nav.list_footernav > ul.list_footernav01 > li{
	border-bottom:#cfcfcf solid 1px;
}

.footernav nav.list_footernav > ul.list_footernav02 > li dl dt{
	text-align:left;
	font-weight:700;
	padding:1.5em 30px;
	border-bottom:#cfcfcf solid 1px;
	cursor:pointer;
	position:relative;
}

.footernav nav.list_footernav > ul.list_footernav02 > li dl dt::after{
	content:"";
	background:url(../img/common/ico_arrow02_off.png) no-repeat top right / 100%;
	width:23px;
	height:9px;
	position:absolute;
	top:22px;
	right:20px;
}

.footernav nav.list_footernav > ul.list_footernav02 > li dl dt.active::after{
	background:url(../img/common/ico_arrow02_on.png) no-repeat top right / 100%;
}

.footernav nav.list_footernav > ul.list_footernav02 > li dl dd{
	display:none;
}

.footernav nav.list_footernav > ul.list_footernav02 > li dl dd ul li{
	border-bottom:#cfcfcf solid 1px;
}

.footernav nav.list_footernav > ul > li label{
	display:block;
	width:94%;
	text-align:left;
	font-size:1em;
	height:70px;
	line-height:70px;
	background:none;
	border-left:none;
	padding:0 20px;
}

.footernav nav.list_footernav > ul.list_footernav01 > li label{
	font-weight:900;
}

.footernav nav.list_footernav > ul.list_footernav02 > li label{
	padding-left:40px;
}

.footernav nav.list_footernav > ul > li label span{
	padding-left:0.5em;
}

.footernav nav.btn_footernav{
	background:#272727;
}

.footernav nav.btn_footernav ul{
	width:94%;
	margin:0 auto;
	padding:15px 0;
	text-align:center;
	overflow:hidden;
	font-size:0;
}

.footernav nav.btn_footernav ul li{
	width:calc(50% - 10px);
	max-width:300px;
	display:inline-block;
	font-size:16px;
}

.footernav nav.btn_footernav ul li a{
	border-radius:10px;
	display:block;
	padding:10px;
}

.footernav nav.btn_footernav ul li.btn_footernav_others{
	margin-right:20px;
}

.footernav nav.btn_footernav ul li.btn_footernav_others a{
	background:#ffffff;
	color:#3853a1;
}

.footernav nav.btn_footernav ul li.btn_footernav_this a{
	background:#599e12;
	color:#FFF;	
}

/* btn_tohome
----------------------------------------------------*/
p#btn_tohome a{
	display:block;
	background:url(../img/common/ico_arrow01.png) no-repeat right 10px top 20px / 15px , #FFF;
	border:#707070 solid 2px;
	height:40px;
	line-height:40px;
	padding:10px 10px 10px 1em;
	margin:0 auto 60px;
	width:calc(100% - 14px - 1em);
	text-align:left;
	max-width:900px;
	font-size:1.2em;
	font-weight:700;
	position:relative;
}

p#btn_tohome a:link,
p#btn_tohome a:visited{
	color:#707070;
}

p#btn_tohome a:hover{
	border:#006ed9 solid 2px;
	color:#006ed9;
	transition:0.3s ease;
}

/* list_nav
----------------------------------------------------*/
nav#list_nav > ul{
	text-align:center;
	width:100%;
	max-width:960px;
	margin:0 auto;
	font-size:0;
}

nav#list_nav > ul > li{
	display:inline-block;
	width:calc(33.3% - 20px);
	margin:0 30px 30px 0;
	padding-bottom:10px;
	font-size:1em;
	position:relative;
	cursor:pointer;
}

nav#list_nav > ul > li:nth-child(3n){
	margin-right:0;
}

nav#list_nav > ul > li:after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:50px;
	border-radius:10px;
	background:#e0e0e0;
	z-index:-1;
}

nav#list_nav > ul > li p{
	width:calc(100% - 6px);
	border:#707070 solid 3px;
	border-radius:10px;
	padding:30px 0;
	background:#FFF;
	position:relative;
}

nav#list_nav > ul > li p::before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	border-radius:10px;
	pointer-events:none;
	background-blend-mode: screen;
	transition:0.3s ease;
}


nav#list_nav > ul > li p:hover:before{
	background:rgba(255,255,160,0.3);
}

nav#list_nav > ul > li img{
	height:148px;
	width:auto;
}

/*mini_nav*/
/* mini_nav
----------------------------------------------------*/
nav#mini_nav > ul{
	text-align:center;
	width:100%;
	max-width:960px;
	margin:0 auto;
	font-size:10px;
}

nav#mini_nav > ul > li{
	display:inline-block;
	width:calc(49% - 10px);
	margin:0 10px 10px 0;
	padding-bottom:10px;
	font-size:1.8em;
	position:relative;
	cursor:pointer;
}

nav#mini_nav > ul > li:nth-child(3n){
	margin-right:0;
}

nav#mini_nav > ul > li:after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:50px;
	border-radius:10px;
	background:#e0e0e0;
	z-index:-1;
}

nav#mini_nav > ul > li p{
	height:calc(100% - 6px);
	width:calc(100% - 6px);
	border:#707070 solid 3px;
	border-radius:10px;
	padding:30px 0;
	background:#FFF;
	position:relative;
}

nav#mini_nav > ul > li p::before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	border-radius:10px;
	pointer-events:none;
	background-blend-mode: screen;
	transition:0.3s ease;
}


nav#mini_nav > ul > li p:hover:before{
	background:rgba(255,255,160,0.3);
}

nav#mini_nav > ul > li img{
	height:148px;
	width:auto;
}


/* section_search
----------------------------------------------------*/
.section_search .search_box{
	background:#eeeeee;
	padding:30px 0;
	margin-bottom:20px;
	overflow:hidden;
}

.section_search .search_box input{
	background:url(../img/common/ico_arrow01.png) no-repeat right 10px top 20px / 15px , #FFF;
	border:#707070 solid 2px;
	height:40px;
	padding:10px;
	width:calc(100% - 24px);
	max-width:900px;
	font-size:1em;
	position:relative;
}

.section_search p.btn_search{
	padding-bottom:5px;
	margin:0 auto;
	position:relative;
	max-width:280px;
}

.section_search p.btn_search:after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:50px;
	border-radius:20px;
	background:#e0e0e0;
	z-index:-1;
}

.section_search p.btn_search a{
	display:block;
	background:#046da6;
	border:#005681 solid 2px;
	border-radius:20px;
	color:#FFF;
	text-align:center;
	font-weight:700;
	font-size:1.1em;
}

.section_search p.btn_search a::before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	border-radius:20px;
	pointer-events:none;
	background-blend-mode: screen;
	transition:0.3s ease;
	z-index:4;
}

.section_search p.btn_search a:hover:before{
	background:rgba(50,255,255,0.3);
}

.section_search p.btn_search span{
	display:inline-block;
	padding:10px 10px 10px 33px;
	position:relative;
}

.section_search p.btn_search span:before{
	content:"";
	width:25px;
	height:30px;
	background:url(../img/common/ico_search.png) no-repeat top left / 100%;
	position:absolute;
	top:8px;
	left:0;
	z-index:2;
}

.section_search p.btn_recommand{
	padding-top:30px;
	padding-bottom:5px;
	margin:0 auto;
	position:relative;
	max-width:280px;
}

.section_search p.btn_recommand:after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:50px;
	border-radius:20px;
	background:#e0e0e0;
	z-index:-1;
}

.section_search p.btn_recommand a{
	display:block;
	background:#f5a442;
	border:#005681 solid 2px;
	border-radius:20px;
	color:#FFF;
	text-align:center;
	font-weight:700;
	font-size:1.1em;
}

.section_search p.btn_recommand a::before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	border-radius:20px;
	pointer-events:none;
	background-blend-mode: screen;
	transition:0.3s ease;
	z-index:4;
}

.section_search p.btn_recommand a:hover:before{
	background:rgba(50,255,255,0.3);
}

.section_search p.btn_recommand span{
	display:inline-block;
	padding:10px 10px 10px 33px;
	position:relative;
}

.section_search p.btn_recommand span:before{
	content:"";
	width:25px;
	height:30px;
	position:absolute;
	top:8px;
	left:0;
	z-index:2;
}

/* main
----------------------------------------------------*/
main{
	text-align:center;
	width:100%;
	padding-top:80px;
	padding-bottom:100px;
	clear:both;
}

/* section
----------------------------------------------------*/
.section{
	width:100%;
	clear:both;
	padding-bottom:60px;
	overflow:hidden;
}

.section .section_content{
	margin:0px auto;
	text-align:left;
	width: calc(100% - 60px);
	min-width: 900px;
	max-width: 1000px;
	padding:0;
	overflow:hidden;
}

h1{
	background:#365573;
	color:#FFF;
	text-align:center;
	padding:0.5em 1em;
	font-size:1.2em;
}

.section h2{

}

.section h3{

}

.section h4{

}

.section p.txt_com{
	padding-bottom:2em;
	line-height:1.8;
}

.section p.txt_body{
	line-height:2;
	clear:both;
	padding-bottom:5em;
}

.section .txt_list li{
	margin-bottom:6em;
}

.section .txt_list li:last-child{
	margin-bottom:0;
}

.section .txt_list li dl dt{
	font-weight:700;
	padding-bottom:1em;
}


/* section_first
----------------------------------------------------*/
#section_first{
	text-align:center;
	width:100%;
	overflow:hidden;
}

#section_first .section_content{
	margin:0px auto;
	text-align:left;
	width: calc(100% - 60px);
	min-width: 900px;
	max-width: 1600px;
}

/* news
----------------------------------------------------*/
.news ul li{
	clear:both;
	padding:2em 0;
	overflow:hidden;
	border-bottom:#e1e1e1 solid 1px;
}

.news ul li:first-child{
	padding-top:0;
}

.news ul li a:hover{
	text-decoration:underline;
}

.news dl dt{
	float:left;
	width:calc(100% - 150px);
}

.news dl dd{
	float:left;
	width:150px;
	color:#347a36;
}

/* list
----------------------------------------------------*/
.section .list{
	width:100%;
}

.section .list li{
	clear:both;
	padding:1.5em 2em;
	overflow:hidden;
	border-bottom:#cfcfcf dotted 1px;
}

.section .list li:first-child{
	border-top:#cfcfcf dotted 1px;
}

.section .list li dl dt{
	font-weight:700;
	float:left;
	width:6em;
	padding-right:20px;
}

.section .list li dl dd{
	float:left;
	width:calc(100% - 6em - 20px);
}

.section .list li dl dd p{
	padding-bottom:1em;
}

.section .list li dl dd p:last-child{
	padding-bottom:0;
}

/* list_row2
----------------------------------------------------*/
.section .list_row2 {
	width: 100%;
}
.section .list_row2 li {
	float: left;
	width:calc(50% - 10px);
	margin-right:20px;
	margin-bottom: 20px;
}
.section .list_row2 li:nth-child(2n) {
	margin-right: 0;
}

/* list_row3
----------------------------------------------------*/
.section .list_row3 {
	width: 100%;
}

.section .list_row3 li {
	float: left;
	margin-right:18px;
	margin-bottom: 18px;
	overflow:hidden;
	width:calc(33.3% - 12px);
}

.section .list_row3 li:nth-child(3n) {
	margin-right: 0;
}

.section .list_row3 li:nth-child(3n + 1) {
	clear:both;
}

/* list_row4
----------------------------------------------------*/
.section .list_row4 {
	width: 100%;
}

.section .list_row4 li {
	float: left;
	margin-right:16px;
	margin-bottom: 16px;
	overflow:hidden;
	width:calc(25% - 12px);
}

.section .list_row4 li:nth-child(4n + 1) {
	clear:both;
}

.section .list_row4 li:nth-child(4n) {
	margin-right: 0;
}

/* chart
----------------------------------------------------*/
.section .chart{
	width:100%;
}

.section .chart tr:first-child th,
.section .chart tr:first-child td{
	border-top:#000000 solid 4px;
}

.section .chart tr th{
	font-weight:700;
}

.section .chart tr th,
.section .chart tr td{
	border-bottom:#c8c8c8 solid 1px;
	padding:30px 0;
	vertical-align:middle;
}

.section .chart01 tr th{
	padding-right:30px;
}

.section .chart02 tr th{
	padding-right:15px;
	padding-left:15px;
	text-align:center;
}

.section .chart03 tr th,
.section .chart03 tr td{
	text-align:center;
}

.section .chart03 tr th:first-child{
	text-align:left;
}

.section .chart02 tr:first-child th,
.section .chart03 tr:first-child th{
	border-bottom:#000000 solid 4px;
}

/* btn
----------------------------------------------------*/
.btn01{
	padding:3em 0;
	clear:both;
}

.btn01 a{
	padding:10px 15px;
	border-radius:25px;
	min-width:200px;
	display:inline-block;
	text-align:center;
	position:relative;
	background:#017ab9;
	color:#FFF;
	border:#017ab9 solid 1px;
}

.btn01 a::after{
	content:url(../img/common/ico_arrow01.png);
	position:absolute;
	top:10px;
	right:15px;
}

.btn01 a:hover,
a:hover .btn01{
	color:#017ab9;
	background:#FFF;
	transition: 0.3s ease-out;
}

.btn01 a:hover:after{
	content:url(../img/common/ico_arrow02.png);
}

/* paging
----------------------------------------------------*/
ol.paging{
	padding:50px 0 0;
	text-align:center;
	font-size:0.8em;
}

ol.paging li{
	display:inline-block;
	margin:0 0.2em;
}

ol.paging li a{
	display:block;
	width:22px;
	height:20px;
	padding-top:2px;
	border-radius:12px;
	transition:0.3s ease;
}

ol.paging li.paging01 a:link,
ol.paging li.paging01 a:visited{
	background:#FFF;
	color:#101325;
	border:#101325 solid 1px;
}

ol.paging li.paging01 a:hover{
	background:#101325;
	color:#FFF;
	border:#101325 solid 1px;
}

ol.paging li.paging02 a:link,
ol.paging li.paging02 a:visited{
	background:#101325;
	color:#FFF;
	border:#101325 solid 1px;
}

ol.paging li.paging02 a:hover{
	background:#FFF;
	color:#101325;
	border:#101325 solid 1px;
}

/* googlemap
----------------------------------------------------*/
.googlemap{
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.googlemap iframe,
.googlemap object,
.googlemap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
}

/* map_contents
----------------------------------------------------*/
.map_contents{
	width:100%;
	position:relative;
}

.map_contents .map-embed, 
.map_contents .map-embed > div {
    height: 540px;
}

.map_contents .map-embed > div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.map_contents .map_info{
	padding-top:3em;
}

.map_contents .map_info dl{
	padding-bottom:2em;
}

.map_contents .map_info dl:last-child{
	padding-bottom:0;
}

.map_contents .map_info dl dt{
	font-weight:700;
	padding-bottom:0.5em;
}

.map_contents .map_info dl dd{
	padding-bottom:0.3em;
}

.map_contents .map_info dl.tel_map_info address{
	font-weight:700;
	font-size:1.5em;
}

.map_contents .map_info dl.tel_map_info address a:link,
.map_contents .map_info dl.tel_map_info address a:visited{
	color:#2e8c2e;
}

.map_contents .map_info dl.tel_map_info span{
	font-size:0.7em;
}

.map_contents .map_info dl dd.tel_map_info_time{
	font-size:0.85em;
}

/* youtube
----------------------------------------------------*/
.youtube{
  position:relative;
  width:100%;
  padding-top:56.25%;
}
.youtube iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}

ul.dot-class{
	text-align:center;
	padding-top:20px;
}

ul.dot-class li{
	display:inline-block;
	margin:0 10px;
}

ul.dot-class li button{
	display:inline-block;
	background:#445bcd;
	color:#445bcd;
	border: none;
	cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
	height:12px;
	width:12px;
	border-radius:6px;
}

ul.dot-class li.slick-active button{
	background:#EFF943;
	color:#EFF943;
}

/* btn_footer
----------------------------------------------------*/
nav#btn_footer{
	overflow:hidden;
	width:100%;
	background:rgba(30,120,30,0.9);
	position: fixed;
	left: 0;
	bottom:-100;
}

.fixed{
	bottom:0;
	z-index:15;
}

nav#btn_footer ul li{
	float:left;
	display:table;
}

nav#btn_footer ul li a{
	display:table-cell;
	text-align:center;
	width:100%;
	height:7vh;
	vertical-align: middle;
}

nav#btn_footer ul li.btn_footer_tel{
	width:34%;
}

nav#btn_footer ul li.btn_footer_tel a img{
	width:15%;
}

nav#btn_footer ul li.btn_footer_mail{
	width:33%;
}

nav#btn_footer ul li.btn_footer_mail a img{
	width:20%;
}

nav#btn_footer ul li.btn_footer_line{
	width:33%;
}

nav#btn_footer ul li.btn_footer_line a img{
	width:20%;
}

/* #footer02
----------------------------------------------------*/
#footer02{
	clear:both;
	text-align:center;
	width:100%;
	padding:20px 0;
	overflow:hidden;
	position:fixed;
	bottom:0;
	left:0;
	background:#FFF;
	z-index:4;
}

#footer02 .footer_content{
	margin:0px auto;
	overflow:hidden;
	width: calc(100% - 60px);
	min-width: 900px;
	text-align:center;
}

#footer02 #star_footer{
	width:36px;
	float:left;
	cursor:pointer;
}

#footer02 #star_footer img{
	display:none;
}

#footer02 #star_footer img.on{
	display:block;
}

#footer02 p#btn_tel_footer{
	width:calc(50% - 25px);
	float:right;
	padding-bottom:5px;
	position:relative;
}

#footer02 p#btn_tel_footer:after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:50px;
	border-radius:10px;
	background:#e0e0e0;
	z-index:-1;
}

#footer02 p#btn_tel_footer a{
	display:block;
	background:#eb910e;
	border:#707070 solid 2px;
	border-radius:10px;
	color:#FFF;
	text-align:center;
	font-weight:700;
	font-size:0.8em;
}

#footer02 p#btn_tel_footer span{
	display:inline-block;
	padding:10px 10px 10px 33px;
	position:relative;
}

#footer02 p#btn_tel_footer span:before{
	content:"";
	width:22px;
	height:45px;
	background:url(../img/common/ico_tel.png) no-repeat top left / 100%;
	position:absolute;
	top:12px;
	left:0;
	z-index:2;
}

#footer02 p#btn_contact_footer{
	width:400px;
	padding-bottom:5px;
	display:inline-block !important;
}

#footer02 p#btn_contact_footer a{
	display:block;
	background:#d33c3c;
	color:#FFF;
	text-align:center;
	font-weight:700;
	min-height:65px;
	line-height:65px;
	margin-left:20px;
}

#footer02 p#btn_contact_footer a:hover{
	background:#fc2f2f;
	transition:0.3s ease;
}

#footer02 p#btn_entry_footer{
	width:400px;
	max-width:400px;
	display:inline-block;
}

#footer02 p#btn_entry_footer a{
	display:block;
	background:url(../img/common/ico_entry.png) no-repeat left 30px top / 20px , #0f1c97;
	color:#FFF;
	text-align:center;
	font-weight:700;
	font-size:1.1em;
	min-height:65px;
	line-height:65px;
	position:relative;
}

#footer02 p#btn_entry_footer a::before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	pointer-events:none;
	background-blend-mode: screen;
	transition:0.3s ease;
	z-index:4;
}

#footer02 p#btn_entry_footer a:hover:before{
	background:rgba(230,150,255,0.3);
}

/* footer
----------------------------------------------------*/
footer{
	clear:both;
	text-align:left;
	width:100%;
	padding:20px 0 140px;
	overflow:hidden;
	background:#236198;
}

footer .footer_content{
	margin:0px auto;
	overflow:hidden;
	width: calc(100% - 60px);
	min-width: 900px;
}

footer nav ul li,
footer nav ul li a:link,
footer nav ul li a:hover,
footer nav ul li a:visited{
	color:#FFF;
}

footer nav ul li:hover,
footer nav ul li a:hover{
	text-decoration:underline;
	cursor:pointer;
}


footer nav ul li{
	padding-bottom:1em;
}

footer p#pagetop{
	position:fixed;
	bottom:10px;
	right:10px;
	z-index:100;
}

footer p#pagetop a{
	display:block;
	text-align:center;
	width:100px;
	height:50px;
	padding-top:50px;
	cursor:pointer;
	border-radius:50px;
	font-size:0.7em;
	line-height:2;
	color:#FFF;
	background: #0069b5;
	transition:0.3s ease;
}

footer p#pagetop a:hover{
	background: #014577;
}

footer p#pagetop::before{
	content:url(../img/common/ico_arrow_footer.png);
	position:absolute;
	left:50%;
	top:20px;
	margin-left:-10px;
}

footer p#copyright{
	padding-top:2em;
	font-size:0.7em;
	color:#FFF;
	text-align:center;
}

/* none
----------------------------------------------------*/
.pc{
	display:block !important;
}

.pctab{
	display:block !important;
}

.tab{
	display:none !important;
}

.tabsp{
	display:none !important;
}

.sp{
	display:none !important;
}

img.pc{
	display:inline !important;
}

img.pctab{
	display:inline !important;
}

img.tab{
	display:none !important;
}

img.tabsp{
	display:none !important;
}

img.sp{
	display:none !important;
}

.tanto_picture{
	width:90%;
	text-align:right;
}

.tanto{
	width:200px!important;
}

.job-pictures{
  width: 80%;
  max-width: 500px;
  margin: 0 auto;
}
.job-pictures p{
	text-align:center;
}

/*----------------------------------------------------
	layout[PC（ノート）]
----------------------------------------------------*/

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

/* none
----------------------------------------------------*/
.pc{
	display:block !important;
}

.tab{
	display:none !important;
}

.sp{
	display:none !important;
}

img.pc{
	display:inline !important;
}

img.tab{
	display:none !important;
}

img.sp{
	display:none !important;
}

}

/*----------------------------------------------------
	layout[タブレット]
----------------------------------------------------*/

@media screen and ( max-width:1024px) {
	
/* header
----------------------------------------------------*/
#header_content{
	padding:0;
	position:relative;
	width:100%;
	min-width:inherit;
	max-width:inherit;
	min-height:70px;
}

#header_content p#logo_header{
	width:18%;
	max-width:180px;
	min-width:inherit;
	padding:0;
	position:absolute;
	top:20px;
	left:20px;
	z-index:11;
}

/* g_nav
----------------------------------------------------*/
#g_nav #btn_menu_header{
	padding-right:3%;
}

/* footernav
----------------------------------------------------*/
.footernav nav.list_footernav > ul.list_footernav02 > li dl dt{
	padding:1.5em calc(6% + 23px) 1.5em 3%;
}

.footernav nav.list_footernav > ul.list_footernav02 > li dl dt::after{
	top:2em;
	right:3%;
}

.footernav nav.list_footernav > ul > li label{
	padding:0 3%;
}

.footernav nav.list_footernav > ul.list_footernav02 > li label{
	padding-left:calc(3% + 1em);
}

/* main
----------------------------------------------------*/
main{
	padding-top:70px;
	padding-bottom:3em;
}

/* breadcrumbs
----------------------------------------------------*/
#breadcrumbs{
	font-size:0.9em;
	margin-bottom:5vh;
}

#breadcrumbs ol{
	width:94%;
	min-width:94%;
	max-width:94%;
	padding:0.5em 0 0.7em;
}

#breadcrumbs li{
	float:left;
}

/* section
----------------------------------------------------*/
.section .section_content{
	width:94%;
	min-width:inherit;
	max-width:inherit;
	padding:0 3%;
}

/* section_first
----------------------------------------------------*/
#section_first .section_content{
	width:94%;
	min-width:inherit;
	max-width:inherit;
}

/* news
----------------------------------------------------*/
.news ul li{
	padding-bottom:1em;
}

.news dl dt{
	float:none;
	width:100%;
}

.news dl dd{
	float:none;
	width:100%;
	padding-bottom:0.3em;
}

/* list
----------------------------------------------------*/
.section .list li{
	padding:1em 3%;
}

/* paging
----------------------------------------------------*/
ol.paging{
	padding:50px 0 0;
	text-align:center;
	font-size:0.8em;
}

ol.paging li{
	display:inline-block;
	margin:0 0.2em;
}

ol.paging li a{
	display:block;
	width:22px;
	height:20px;
	padding-top:2px;
	border-radius:12px;
	transition:0.3s ease;
}

ol.paging li.paging01 a,
ol.paging li.paging01 a:link,
ol.paging li.paging01 a:visited{
	background:#FFF;
	color:#101325;
	border:#e1e1e1 solid 1px;
}

ol.paging li.paging01 a:hover{
	background:#101325;
	color:#FFF;
	border:#101325 solid 1px;
}

ol.paging li.paging02 a,
ol.paging li.paging02 a:link,
ol.paging li.paging02 a:visited{
	background:#666;
	color:#FFF;
	border:#101325 solid 1px;
}

ol.paging li.paging02 a:hover{
	background:#FFF;
	color:#101325;
	border:#101325 solid 1px;
}

ol.paging li.paging03 a,
ol.paging li.paging03 a:link,
ol.paging li.paging03 a:visited{
	background:#101325;
	color:#FFF;
	border:#101325 solid 1px;
}

ol.paging li.paging03 a:hover{
	background:#FFF;
	color:#101325;
	border:#101325 solid 1px;
}

/* footer
----------------------------------------------------*/
#footer02 .footer_content{
	width:94%;
	min-width:inherit;
	max-width:inherit;
}

#footer02  #star_footer{
	width:36px;
	float:left;
}

#footer02 p#btn_contact_footer{
	display:none !important;
}

#footer02  p#btn_entry_footer{
	width:calc(45% - 25px);
	float:right;
	margin-left:5%;
}

#footer02  p#btn_entry_footer a{
	display:block;
	color:#FFF;
	text-align:center;
	font-weight:700;
	font-size:1.1em;
	min-height:65px;
	line-height:65px;
	background:url(../img/common/ico_entry.png) no-repeat left 10px top / 15px , #0f1c97;
}

/* footer
----------------------------------------------------*/
footer{
	margin-top:0;
}

footer .footer_content{
	width:94%;
	min-width:inherit;
	max-width:inherit;
}

footer p#pagetop{
	height:65px;
	padding-top:10px;
	border-radius:40px;
	font-size:0.7em;
	bottom:20px;
}

footer p#pagetop a{
	width:60px;
	height:20px;
	padding-top:40px;
	border-radius:40px;
	font-size:0.8em;
	line-height:0.5;
}
footer p#pagetop::before{
	content:url(../img/common/ico_arrow_footer.png);
	position:absolute;
	left:50%;
	top:20px;
	margin-left:-10px;
}
footer p#pagetop{
	bottom:100px;
}

/* none
----------------------------------------------------*/
.pc{
	display:none !important;
}

.pctab{
	display:block !important;
}

.tab{
	display:block !important;
}

.tabsp{
	display:block !important;
}

.sp{
	display:none !important;
}

img.pc{
	display:none !important;
}

img.pctab{
	display:inline !important;
}

img.tab{
	display:inline !important;
}

img.tabsp{
	display:inline !important;
}

img.sp{
	display:none !important;
}


}

/*----------------------------------------------------
	layout[スマートフォン（標準）]
----------------------------------------------------*/

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

/* header
----------------------------------------------------*/
#header_content{
	min-height:60px;
}

#header_content p#logo_header{
	width:35%;
	padding:0;
	top:15px;
	left:3%;
}

#header_content p#star_header{
	top:4px;
}

/* g_nav
----------------------------------------------------*/
#g_nav #btn_menu_header{
	width:30px;
}

#g_nav #btn_menu_header #txt_menu_header{
	margin-top:-10px;
}

#g_nav a.ico_menu_header {
	width: 30px;
	height: 24px;
}

#g_nav a.ico_menu_header span {
 	height: 4px;
}

#g_nav a.ico_menu_header span:nth-of-type(1) {
 	top: 0;
}

#g_nav a.ico_menu_header span:nth-of-type(2) {
 	top: 10px;
}

#g_nav a.ico_menu_header span:nth-of-type(3) {
 	bottom: 0;
}

#g_nav a.ico_menu_header.active span:nth-of-type(1) {
 	-webkit-transform: translateY(10px) rotate(-315deg);
 	transform: translateY(10px) rotate(-315deg);
}

#g_nav a.ico_menu_header.active span:nth-of-type(2) {
 	opacity: 0;
}

#g_nav a.ico_menu_header.active span:nth-of-type(3) {
 	-webkit-transform: translateY(-10px) rotate(315deg);
 	transform: translateY(-10px) rotate(315deg);
}

#g_nav_content > li a{
	font-size:1em;
	height:60px;
	line-height:60px;
}

/* footernav
----------------------------------------------------*/
.footernav nav.list_footernav{
	max-height:calc(100vh - 315px);
}

/* btn_tohome
----------------------------------------------------*/
p#btn_tohome a{
	width:calc(94% - 14px - 1em);
}

/* list_nav
----------------------------------------------------*/
nav#list_nav > ul li{
	width:90px;
	margin:0 5px 20px;
	padding-bottom:5px;
	position:relative;
}

nav#list_nav > ul li p{
	padding:10px 0;
}

nav#list_nav > ul li img{
	height:60px;
	width:auto;
}

/* mini_nav
----------------------------------------------------*/
nav#mini_nav > ul li{
	width:150px;
	margin:0 5px 20px;
	padding-bottom:5px;
	position:relative;
	font-size:1em;
}

nav#mini_nav > ul li p{
	padding:10px 0;
}

nav#mini_nav > ul li img{
	height:60px;
	width:auto;
}

/* section_search
----------------------------------------------------*/
.section_search .search_box{
	padding:2em 0;
	margin-bottom:1em;
}

.section_search .search_box input{
	width:calc(94% - 24px);
}

/* section
----------------------------------------------------*/
.section{
	padding-bottom:2em;
}

/* btn_footer
----------------------------------------------------*/
nav#btn_footer{
	overflow:hidden;
	width:100%;
	background:rgba(30,120,30,0.9);
	position: fixed;
	left: 0;
	bottom:-100;
}

.fixed{
	bottom:0;
	z-index:15;
}

nav#btn_footer ul li{
	float:left;
	display:table;
}

nav#btn_footer ul li a{
	display:table-cell;
	text-align:center;
	width:100%;
	height:7vh;
	vertical-align: middle;
}

nav#btn_footer ul li.btn_footer_tel{
	width:34%;
}

nav#btn_footer ul li.btn_footer_tel a img{
	width:15%;
}

nav#btn_footer ul li.btn_footer_mail{
	width:33%;
}

nav#btn_footer ul li.btn_footer_mail a img{
	width:20%;
}

nav#btn_footer ul li.btn_footer_line{
	width:33%;
}

nav#btn_footer ul li.btn_footer_line a img{
	width:20%;
}

/* footer02
----------------------------------------------------*/
#footer02 p#btn_entry_footer{
	width:calc(45% - 25px);
	float:right;
	margin-left:5%;
}

#footer02 p#btn_entry_footer a{
	display:block;
	color:#FFF;
	text-align:center;
	font-weight:700;
	font-size:1.1em;
	min-height:65px;
	line-height:65px;
	background:url(../img/common/ico_entry.png) no-repeat left 10px top / 15px , #0f1c97;
}

/* none
----------------------------------------------------*/
.pc{
	display:none !important;
}

.pctab{
	display:none !important;
}

.tab{
	display:none !important;
}

.tabsp{
	display:block !important;
}

.sp{
	display:block !important;
}

img.pc{
	display:none !important;
}

img.pctab{
	display:none !important;
}

img.tab{
	display:none !important;
}

img.tabsp{
	display:inline !important;
}

img.sp{
	display:inline !important;
}
	
.tanto{
	width:40%!important;
}

}

/*----------------------------------------------------
	layout[スマートフォン（小）]
----------------------------------------------------*/

@media screen and (max-width:640px){
	
/* footer
----------------------------------------------------*/
#footer02 p#btn_tel_footer{
	width:calc(50% - 25px);
	float:right;
	padding-bottom:5px;
	position:relative;
}

#footer02 p#btn_tel_footer:after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:50px;
	border-radius:10px;
	background:#e0e0e0;
	z-index:-1;
}

#footer02 p#btn_tel_footer a{
	font-size:0.7em;
}

#footer02 p#btn_tel_footer span{
	padding:10px 10px 10px 28px;
}

#footer02 p#btn_tel_footer span:before{
	width:20px;
	height:45px;
	top:10px;
}

#footer02 p#btn_entry_footer a{
	font-size:1em;
	min-height:60px;
	line-height:60px;
	background:url(../img/common/ico_entry.png) no-repeat left 10px top / 10px , #0f1c97;
}

}
