@charset "UTF-8";

/* ========================================
 * スマートフォンビュー（デフォルト）
 * ======================================== */

/*
 * 要素デフォルト
 */
ul{
	margin: 0;
	padding-left: 0;
}
ul>li{
	list-style: none;
}
img{
	max-width: 100%;
}

/*
 * ヘッダー・メイン・フッター共通
 */
body>header>.inner,
#contents>.inner,
body>footer>.inner{
	position: relative;
}


/*
 * ヘッダー領域
 */
body>header{
	background: url("../img/header-bg.jpg") repeat-x 0 0;
	background-size: 228px 148px;
	border-bottom: 3px solid #004097;
	height: 50px;
}
body>header>.inner>#logo{
	left: 9px;
	margin: 0;
	position: absolute;
	top: 14px;
}
body>header>.inner>#logo>a{
	background: url("../img/logo.png") no-repeat 0 0;
	background-size: 125px 25px;
	display: block;
	height: 25px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	width: 125px;
}
body>header>.inner>#global-nav{
	position: relative;
}
body>header>.inner>#global-nav>.opener{
	background: #004097 url("../img/icon-hamburger.png") no-repeat 50% 50%;
	background-size: 14px 13px;
	border-radius: 3px;
	height: 29px;
	margin: 0;
	overflow: hidden;
	position: absolute;
	right: 10px;
	text-indent: 100%;
	top: 11px;
	white-space: nowrap;
	width: 37px;
}
body>header>.inner>#global-nav.open>.opener{
}
body>header>.inner>#global-nav>ul{
	display: none;
}
body>header>.inner>#global-nav.open>ul{
	background-color: rgba(0, 64, 151, 0.95);
	display: block;
	left: 0;
	position: absolute;
	top: 50px;
	width: 100%;
	z-index: 10;
}
body>header>.inner>#global-nav>ul>li{
	border-top: 1px solid rgba(255, 255, 255, 0.22);
}
body>header>.inner>#global-nav>ul>li.ac_menu{
	display:none;
}
body>header>.inner>#global-nav>ul>li:first-child{
	border-top: none;
}
body>header>.inner>#global-nav>ul>li>a, body>header>.inner>#global-nav>ul>li>span{
	color: #fff;
	display: block;
	font-size: 18px;
	height: 57px;
	line-height: 57px;
	text-align: center;
	text-decoration: none;
	width: 100%;

}
body>header>.inner>#shoulder-nav{
	display: none;
}
body>header>.inner>#sns-nav{
	display: none;
}


/*
 * メイン領域
 */
#contents{
	background: #e5dfdc url("../img/contents-bg-sp.png") 0 0;
	background-size: 5px 5px;
	overflow: hidden;
}
#contents>header{
	background: url("../img/contents-header-bg-sp.jpg") no-repeat 50% 0;
	background-size: 100%;
	height: 54px;
}
#contents>header>h1{
	color: #fff;
	font-weight: normal;
	font-size: 15px;
	line-height: 54px;
	margin: 0;
	padding:0 15px;
}
#contents>header>h1 small{
	font-size: 12px;
}
#contents>#breadcrumbs{
	font-size: 10px;
	line-height: 1.4em;
	margin: 10px;
}
#contents>#breadcrumbs>ol{
	overflow: hidden;
	position: relative;
}
#contents>#breadcrumbs>ol>li{
	display: inline;
}
#contents>#breadcrumbs>ol>li>a,
#contents>#breadcrumbs>ol>li>a:hover{
	color: #000;
}
#contents>#breadcrumbs>ol>li>a>span{

}
#contents>#breadcrumbs>ol>li>span{

}
#contents>.inner{
	background: #fff;
	border-radius: 3px;
	color: #4d4d4d;
	margin: 10px;
	padding: 12px;
}
#contents>.inner iframe{
	max-width: 100%;
}


/*
 * フッター領域
 */
body>footer{
	background: #004097;
	color: #fff;
	padding-top: 25px;
}
body>footer>.inner{
}
body>footer>.inner>#shoulder-nav,
body>footer>.inner>#sns-nav{
	text-align: center;
}
body>footer>.inner>#shoulder-nav>li,
body>footer>.inner>#sns-nav>li{
	display: inline-block;
}
body>footer>.inner>#shoulder-nav>li{
	margin: 0 6px;
}
body>footer>.inner>#shoulder-nav>li.onlineshop{
	display: none;
}
body>footer>.inner>#shoulder-nav>li>a{
	color: #fff;
	display: block;
	font-size: 14px;
	line-height: 16px;
	text-decoration: none;
}
body>footer>.inner>#shoulder-nav>li.access>a{
	background: url("../img/icon-access-sp.png") no-repeat 0 50%;
	background-size: 11px 16px;
	padding-left: 15px;
}
body>footer>.inner>#shoulder-nav>li.inquiry>a{
	background: url("../img/icon-mail-sp.png") no-repeat 0 50%;
	background-size: 16px 12px;
	padding-left: 20px;
}
body>footer>.inner>#shoulder-nav>li.recruit>a{
	background: url("../img/icon-human-sp.png") no-repeat 0 0;
	background-size: 9px 14px;
	padding-left: 15px;
}
body>footer>.inner>#shoulder-nav>li.about>a{
	background: url("../img/icon-about-sp.png") no-repeat 0 0;
	background-size: 11px 15px;
	padding-left: 15px;
}
body>footer>.inner>#sns-nav{
	margin-top: 12px;
}
body>footer>.inner>#sns-nav>li{
	margin: 0 6px;
}
body>footer>.inner>#sns-nav>li>a{
	display: block;
	height: 53px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	width: 53px;
}
body>footer>.inner>#sns-nav>li.facebook>a{
	background: url("../img/icon-facebook-sp.png") no-repeat 0 0;
	background-size: 53px 53px;
}
body>footer>.inner>#sns-nav>li.twitter>a{
	background: url("../img/icon-twitter-sp.png") no-repeat 0 0;
	background-size: 53px 53px;
}
body>footer>.inner>#footer-nav{
	display: none;
	margin: 20px 0 10px 0;
	z-index: 10;
}
body>footer>.inner>#foot-banners{
	margin-bottom: 10px;
}
body>footer>.inner>#foot-banners>strong{
	display: none;
}
body>footer>.inner>#foot-banners>ul>li{
	text-align: center;
}
body>footer>.inner>.copyright{
	font-size: 9px;
	margin: 0;
	text-align: center;
	padding-bottom: 15px;
	width: 100%;
}
body>#page-top{
	background: rgba(0,0,0,0.4) url("../img/icon-pagetop.png") no-repeat 50% 50%;
	background-size: 29px 20px;
	border-radius: 3px;
	bottom: 10px;
	display: none;
	height: 50px;
	right: 10px;
	overflow: hidden;
	position: fixed;
	text-indent: 100%;
	white-space: nowrap;
	width: 50px;
}


/*
 * 各種パーツ
 */

/* 汎用系クラス */
.center{
	text-align: center;
}
.comingsoon a{
	cursor: default;
	opacity: 0.3;
}
hr{
	border-top: 1px solid #4d4d4d;
}
.pc-block{
	display: none !important;
}

/* 見出し系クラス */
h1.plain{
	font-size: 20px;
	font-weight: bold;
	margin: 25px 0;
}
h2.plain{
	font-size: 16px;
	font-weight: bold;
}
/* 見出し系クラス：旗の形のセクション見出し */
.flag-heading{
	border-top: 1px solid #004097;
	font-size: 11px;
	line-height: 1.5em;
	margin: 13px 0 0 0;
	padding: 20px 0 10px 0;
	position: relative;
}
.flag-heading>em{
	background: #004097 url("../img/flag-heading-bg.png") no-repeat right 0;
	color: #fff;
	display: block;
	font-size: 16px;
	font-style: normal;
	font-weight: normal;
	height: 30px;
	letter-spacing: 1px;
	line-height: 30px;
	padding: 0 20px 0 10px;
	position: absolute;
	top: -16px;
	left: 0;
	z-index: 1;
}
.flag-heading>em>small{
	display: none;
	/*
	font-size: 10px;
	letter-spacing: 0;
	margin-left: 5px;
	*/
}


/* テキスト系クラス */
.txt{
	font-size: 12px;
	line-height: 1.8em;
}
p.txt{
	margin: 0 0 1.5em 0;
}
.note{
	font-size: 10px;
}

/* リンク系クラス */
a{
	word-wrap: break-word;
}
a.map-link{
	color: #fff !important;
	display: inline-block;
	background: url("../img/icon-map-link.png") no-repeat 0 0;
	font-size: 11px;
	height: 16px;
	letter-spacing: 0 !important;
	line-height: 16px;
	padding-left: 13px;
	text-decoration: none;
	width: 30px;
}

/* ボタン系クラス */
.linkbtn{
	display: inline-block;
	border-radius: 5px;
	color: #fff !important;
	overflow: hidden;
	padding: 7px 40px 7px 20px;
	position: relative;
	text-shadow: 1px 1px #787878;
	text-decoration: none;
}
.linkbtn.blue{
	background: #004097;
}
.linkbtn.gray{
	background: #919797;
}
.linkbtn>i{
	display: block;
	padding: 7px 5px;
	position: absolute;
	top: 0;
	right: 0;
}
.linkbtn.blue>i{
	background: #88a7d7;
}
.linkbtn.gray>i{
	background: #7E7E7B;
}

/* リスト系クラス */
.notes-list{
	border: 1px solid #4d4d4d;
	padding: 10px;
}
.notes-list>li{
	list-style: disc;
	margin-left: 20px;
}

/* プロフィール系クラス */
.prof.kana{
	color: #004097;
}
.prof.name{
	color: #004097;
	font-size: 30px;
	margin: 0;
}
.prof.name small{
	display: block;
	font-size: 12px;
	margin-top: -1em;
}
.prof.name em{
	font-size: 17px;
	font-style: normal;
}
.prof.profile{
	margin: 0 0 10px 0;
}
.prof.list{
	overflow: hidden;
	position: relative;
}
.prof.list>dt,
.prof.list>dd{
	margin-bottom: 10px;
}
.prof.list>dt{
	background: #004097;
	color: #fff;
	font-weight: bold;
	text-align: center;
	width: 50px;
}
.prof.list>dd{
	margin-left: 0;
}
.prof.title{
	border: 1px solid #ff0000;
	color: #ff0000;
	letter-spacing: 0.1em;
	margin-bottom: 5px;
	padding: 0 10px;
	text-align: center;
	width: 3.5em;
}
.prof.title-areamngr{
	border: 1px solid #ff0000;
	color: #ff0000;
	font-size: 1.2rem;
	letter-spacing: 0;
	margin-bottom: 5px;
	padding: 0 10px;
	text-align: center;
	width: 9em;
}


.eo-fullcalendar div,
.eo-fullcalendar td{
	position: static;
}


/* ========================================
 * タブレットビュー（768px～959px）
 * ======================================== */
@media only screen and (min-width: 768px) {
	/*
	 * ヘッダー領域
	 */
	body>header{
		background-size: 456px 296px;
		height: 153px;
	}
	body>header>.inner>#logo{
		top: 30px;
	}
	body>header>.inner>#logo>a{
		background-size: 250px 50px;
		height: 50px;
		width: 250px;
	}
	body>header>.inner>#global-nav{
		left: 5px;
		position: absolute;
		top: 116px;
	}

	body>header>.inner>#global-nav>h2{
		display: none;
	}
	body>header>.inner>#global-nav>ul{
		display: block;
	}
	body>header>.inner>#global-nav>ul>li{
		border-right: 1px solid #3b66a3;
		border-top: none;
		float: left;
	}
	body>header>.inner>#global-nav>ul>li.sp_menu{
		display:none;
	}
	body>header>.inner>#global-nav>ul>li.ac_menu{
		display:block;
	}
	body>header>.inner>#global-nav>ul>li>a, body>header>.inner>#global-nav>ul>li>span{
		color: #000;
		display: inline-block;
		font-size: 12px;
		height: 24px;
		letter-spacing: -1px;
		line-height: 24px;
		padding: 0 6px;
		width: auto;
	}
	body>header>.inner>#global-nav>ul>li>span{
		position:relative;
	}
	body>header>.inner>#global-nav>ul>li .frame{
		display:none;
		position:absolute;
		top:22px;
		left:-40px;
		width:125px;
		background: url("../../img/n_menu_arrow.png") no-repeat center top;
		padding:10px 0 0 0;
		z-index:999999;
		opacity: 0;
	}
	body>header>.inner>#global-nav>ul>li .open, 	body>header>.inner>#global-nav>ul>li.ac_menu:hover .frame{
	  display: block;
      opacity: 1;
      animation-duration: 0.5s;
      animation-name: fade-in;
      -moz-animation-duration: 0.5s;
      -moz-animation-name: fade-in;
      -webkit-animation-duration: 0.5s;
      -webkit-animation-name: fade-in;
	}
	body>header>.inner>#global-nav>ul>li .frame a{
		display:block;
		background:rgba(0,62,149,0.8);
		text-align:center;
		text-decoration:none;
		color:#FFFFFF;
		padding:5px 0 4px 0;
		border-bottom:1px solid #FFFFFF;
	}
	    @keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }

      1% {
        display: block;
        opacity: 0;
      }

      100% {
        display: block;
        opacity: 1;
      }
    }

    @-moz-keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }

      1% {
        display: block;
        opacity: 0;
      }

      100% {
        display: block;
        opacity: 1;
      }
    }

    @-webkit-keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }

      1% {
        display: block;
        opacity: 0;
      }

      100% {
        display: block;
        opacity: 1;
      }
    }


	body>header>.inner>#global-nav>ul>li .frame a:hover{
		background:rgba(78,148,219,0.8);
	}
	body>header>.inner>#global-nav>ul>li .frame a:last-child{
		border-bottom:none;
	}

	body>header>.inner>#global-nav>ul>li:first-child{
		border-left: 1px solid #3b66a3;
	}
	body>header>.inner>#global-nav>ul>li.on>a{
		background: rgba(255,255,255,0.5);
		cursor: default;
	}
	body>header>.inner>#btn-onlineshop{
		display: none;
	}
	body>header>.inner>#shoulder-nav{
		display: block;
		margin: 0;
		position: absolute;
		right: 0;
		top: 0;
	}
	body>header>.inner>#shoulder-nav>li{
		background: #fff;
		border-radius: 0 0 10px 10px;
		box-shadow: 1px 1px 4px #999;
		float: left;
		margin-left: 5px;
		overflow: hidden;
	}
	body>header>.inner>#shoulder-nav>li>a{
		color: #959596;
		display: block;
		font-size: 12px;
		height: 43px;
		line-height: 43px;
		text-decoration: none;
	}
	body>header>.inner>#shoulder-nav>li.onlineshop>a{
		background: #fff url("../img/btn-onlineshop-pc.png") no-repeat 50% 50%;
		text-indent: 100%;
		overflow: hidden;
		white-space: nowrap;
		width: 166px;
	}
	body>header>.inner>#shoulder-nav>li.access>a{
		background: #fff url("../img/icon-access-pc.png") no-repeat 10px 50%;
		text-indent: 20px;
		width: 11.5em;
	}
	body>header>.inner>#shoulder-nav>li.inquiry>a{
		background: #fff url("../img/icon-mail-pc.png") no-repeat 10px 50%;
		text-indent: 30px;
		width: 8em;
	}
	body>header>.inner>#shoulder-nav>li.recruit>a{
		background: #fff url("../img/icon-human-pc.png") no-repeat 10px 50%;
		text-indent: 30px;
		width: 7em;
	}
	body>header>.inner>#sns-nav{
		display: block;
		margin: 0;
		position: absolute;
		right: 2px;
		top: 113px;
	}
	body>header>.inner>#sns-nav>li{
		float: left;
		margin: 0;
	}
	body>header>.inner>#sns-nav>li>a{
		display: block;
		height: 26px;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
		width: 28px;
	}
	body>header>.inner>#sns-nav>li.facebook>a{
		background: url("../img/icon-facebook-pc.png") no-repeat 0 0;
	}
	body>header>.inner>#sns-nav>li.twitter>a{
		background: url("../img/icon-twitter-pc.png") no-repeat 0 0;
	}
	/*
	 * メイン領域
	 */
	#contents{
		background-size: 10px 10px;
	}
	#contents>header{
		background: #183f66 url("../img/contents-header-bg-pc.jpg") no-repeat 50% 0;
		height: 165px;
	}
	#contents>header>h1{
		font-size: 28px;
		line-height: 165px;
		padding:0 15px;
	}
	#contents>header>h1 small{
		font-size: 20px;
	}
	#contents>#breadcrumbs{
		font-size: 12px;
		margin: 10px auto 0 auto;
		width: 960px;
	}
	#contents>.inner{
		background: #fff;
		border-radius: 3px;
		margin: 10px;
		padding: 12px;
	}

	/*
	 * フッター領域
	 */
	body>footer{
		padding-top: 0;
	}
	body>footer>.inner{
		margin: 0 10px;
	}
	body>footer>.inner>#footer-nav{
		display: block;
		font-size: 12px;
		margin-bottom: 20px;
		margin-top: 0;
	}
	body>footer>.inner>#footer-nav>ul{
		overflow: hidden;
		padding-top: 20px;
		position: relative;
	}
	body>footer>.inner>#footer-nav>ul>li{
		float: left;
	}
	body>footer>.inner>#footer-nav>ul>li>strong{
		color: #fff;
		display: block;
		margin-bottom: 5px;
	}
	body>footer>.inner>#footer-nav>ul>li>ul{
		overflow: hidden;
		position: relative;
	}
	body>footer>.inner>#footer-nav>ul>li#footnav-tactive>ul{
		width: 330px;
	}
	body>footer>.inner>#footer-nav>ul>li>ul>li{
		width: 140px;
	}
	body>footer>.inner>#footer-nav>ul>li>ul.recruit>li{
		width: 180px;
	}
	body>footer>.inner>#footer-nav>ul>li#footnav-tactive>ul>li{
		float: left;
		overflow: hidden;
	}
	body>footer>.inner>#footer-nav>ul>li>ul>li>a{
		color: #fff;
		text-decoration: none;
	}
	body>footer>.inner>#foot-banners{
		font-size: 12px;
		margin-bottom: 10px;
		position: absolute;
		right: 70px;
		top: 20px;
		z-index: 10;
	}
	body>footer>.inner>#foot-banners>strong{
		color: #fff;
		display: block;
		margin-bottom: 5px;
	}
	body>footer>.inner>#foot-banners>ul>li{
		margin: 0 10px 0 0;
		text-align: left;
	}


	body>footer>.inner>.copyright{
		border-top: 1px solid #4d7ab6;
		font-size: 11px;
		line-height: 40px;
		padding-bottom: 0;
		text-align: left;
	}

	/*
	 * 各種パーツ
	 */

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

	/* 見出し系クラス */
	h1.plain{
		font-size: 28px;
		font-weight: normal;
		margin: 40px 0;
	}
	h2.plain{
		font-size: 24px;
		font-weight: normal;
		margin: 20px 0;
	}
	/* 見出し系クラス：本文冒頭で.inner領域のパディング部分も含めてフルサイズで表示 */
	#contents>.inner>h1.area-full{
		margin: -25px -25px 25px -25px;
	}
	/* 見出し系クラス：旗の形のセクション見出し */
	.flag-heading>em>small{
		display: inline;
		font-size: 12px;
		letter-spacing: 1px;
		margin-left: 10px;
	}


	/* テキスト系クラス */
	.txt{
		font-size: 14px;
	}
	.note{
		font-size: 12px;
	}

	/* エフェクト系クラス */
	.twinshadow{
		position: relative;
	}
	.csstransforms .twinshadow>*{
		position: relative;
		z-index:1;
	}
	.csstransforms .twinshadow:before,
	.csstransforms .twinshadow:after{
		z-index: 0;
		position: absolute;
		content: "";
		bottom: 15px;
		left: 10px;
		width: 50%;
		top: 80%;
		max-width:300px;
		background: #777;
		box-shadow: 0 15px 10px #777;
		-webkit-box-shadow: 0 15px 10px #777;
		-moz-box-shadow: 0 15px 10px #777;
		transform: rotate(-3deg);
		-webkit-transform: rotate(-3deg);
		-moz-transform: rotate(-3deg);
		-o-transform: rotate(-3deg);
		-ms-transform: rotate(-3deg);
	}
	.csstransforms .twinshadow:after{
		transform: rotate(3deg);
		-webkit-transform: rotate(3deg);
		-moz-transform: rotate(3deg);
		-o-transform: rotate(3deg);
		-ms-transform: rotate(3deg);
		right: 10px;
		left: auto;
	}

	/* プロフィール系クラス */
	.prof.kana{
		font-size: 15px;
		letter-spacing: 1px;
	}
	.prof.name{
		font-size: 34px;
	}
	.prof.name small{
		margin-top: -1.5em;
	}
	.prof.profile{
		margin: 0 0 10px 0;
	}

}

/* ========================================
 * PCビュー（800px～）
 * ======================================== */
@media only screen and (min-width: 820px) {
	body>header>.inner>#global-nav>ul>li>a, body>header>.inner>#global-nav>ul>li>span{
		font-size: 12px;
	}
}
/* ========================================
 * PCビュー（860px～）
 * ======================================== */
@media only screen and (min-width: 870px) {
	body>header>.inner>#global-nav>ul>li>a, body>header>.inner>#global-nav>ul>li>span{
		font-size: 13px;
	}
}

/* ========================================
 * PCビュー（960px～）
 * ======================================== */
@media only screen and (min-width: 960px) {

	/*
	 * ヘッダー・メイン・フッター共通
	 */
	body>header>.inner,
	body>footer>.inner{
		margin-left: auto;
		margin-right: auto;
		width: 960px;
	}

	/*
	 * ヘッダー領域
	 */
	body>header{
		height: 163px;
	}
	body>header>.inner>#logo{
		left: 0;
	}
	body>header>.inner>#global-nav {
		left: 0;
	}
	body>header>.inner>#global-nav>ul>li>a{
		font-size: 14px;
		padding: 0 10px;
	}
	body>header>.inner>#shoulder-nav>li{
		margin-left: 10px;
	}
	body>header>.inner>#shoulder-nav>li>a{
		font-size: 15px;
	}
	body>header>.inner>#shoulder-nav>li.onlineshop>a{
		width: 186px;
	}
	body>header>.inner>#shoulder-nav>li.access>a{
		background-position: 15px 50%;
		text-indent: 30px;
		width: 12em;
	}
	body>header>.inner>#sns-nav{
		right: 3px;
	}
	body>header>.inner>#sns-nav>li{
		margin: 0 1px;
	}


	/*
	 * メイン領域
	 */
	#contents>header>h1{
		margin: 0 auto;
		padding: 0;
		width: 960px;
	}
	#contents>.inner{
		margin: 10px auto 25px;
		padding: 25px;
		width: 960px;
	}

	/*
	 * フッター領域
	 */
	body>footer>.inner>#footer-nav>ul{
		left: 0;
	}
	body>footer>.inner>#footer-nav>ul>li>a{
		padding: 0 10px;
	}

	/*
	 * 各種パーツ
	 */
	.prof.list>dt{
		float: left;
	}
	.prof.list>dd{
		margin-left: 60px;
	}


}
