@charset "utf-8";
/*======================================================================================
style.css
======================================================================================*/
/*-------------------------------------------
レイアウト
-------------------------------------------*/
body {
	width: 100%;
	height: 100%;
	position: relative;
	overflow-x: hidden!important;
}
header {
	width: 100%;
	margin: 0 auto;
 	padding: 0;
}
#content {
	width: 100%;
 	height: auto;
	margin: 0 auto;
}
#content .inner{
	width: 100%;
 	height: auto;
	margin: 0 auto;
	max-width: 1020px;
}
#wrapper {
	width: 100%;
	height: auto;
 	padding: 15px 1% 15px 1%;
	overflow: hidden;
	min-height: 600px;
}
#left,#left_bottom {
 	width: 75%;
	height: auto;
	float: left;
	padding: 0 2% 0 0%;
}
#right {
	width: 25%;
	height: auto;
	float: right;
	padding: 0 0 0 1.4%;
}
footer {
	width: 100%;
	font-size: 11px;
	text-align: center;
	background-color: #0038b6;
}
footer a, footer a span {
	color: #fff;
}
#left_wrap {
    width: 18%;
    float: left;
}
#right_wrap {
    width: 80%;
    float: right;
}
/*-------------------------------------------
各共通設定
-------------------------------------------*/
.art_box {
	width: 100%;
	height: auto;
	padding: 0;
	float: left;
}
.titlebox {
	width: 100%;
}
.namebox {
	width: 100%;
	overflow: hidden;
}
.tbox {
	width: 100%;
}
ul {
	overflow: hidden;
}

/*-------------------------------------------
ヘッダー
-------------------------------------------*/
header #newssites {
	position: absolute;
	top: 5px;
	right: 2%;
	text-align: right;
}
header #newssites img {
	width: 35%;
}
header #site_ban {
	position: absolute;
	top: 36px;
	right: 2%;
	text-align: right;
	width: 200px;
}
header #site_ban img {
	margin: 0 0 6px;
}
header .inner {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	padding: 11px 0 0;
	max-width: 1020px;
	position: relative;
}
header .inner h1 {
	position: absolute;
	 bottom: 10px;
	 left: -20%;
	 padding: 0;
	 margin: 0px 0 0 0px;
	 float: left;
	 height: 10px;
	 font-size: 10px;
	 font-weight: normal;
	 color: #fff;
	 overflow: hidden;
	 width: 10%;
	 height: 10px;
}
header .inner .h_box {
	float: left;
	position: absolute;
	top: 50px;
	left: 50px;
	width: 76%;
	height: 28px;
	overflow: hidden;
}
header .inner .h_box h2 {
	font-size: 11px;
	line-height: 15px;
	color: #999;
	margin-right: 5px;
}
header .inner .h_box p {
	font-size: 10px;
	margin: 0 0 16px 0;
	line-height: 14px;
	color: #999;
}
header .inner .logo_area .sitename {
	font-size: 12px;
	color: #2abafb;
}
header .inner h3.pc {
	width: 30%;
	margin: 4px 0 10px;
	display: block;
}
header .inner ul.menu {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
margin: 12px 0 0;
	padding: 1.5% 0;
}
header .inner ul.menu li {
	font-size: 14px;
	font-weight: bold;
	line-height: 18px;
	margin: 0 3%;
	height: 24px;
	text-align: center;
}

header .inner ul.menu li.current {
	text-align: center;
}
header .inner ul.menu li a span {

}
header .inner ul.menu li.current span {

}
header .inner ul.menu li a {
	text-decoration: none;
	display: block;
}

header .inner ul.menu li span {
	font-weight: bold;
}
header .image1 {
	display:  none;
}
header .image2 {
	display: none;
}
header .image3 {
	display: none;
}
header .inner .logo_area .car,
.sp,
.drawer-hamburger,
nav.drawer-nav {
	display: none;
}

#top_menu {

}



/*-------------------------------------------
メインビジュアル
-------------------------------------------*/
#banner {
	margin: 0 0 20px;
	text-align: center;
}

/*-------------------------------------------
左カラム
-------------------------------------------*/
.center_banner_block {
	margin: 0 ;
}

h2.s01, h2.s02 {
	font-size: 18px;
	padding: 4px 0;
	position: relative;
	font-weight: bold;
	line-height: 24px;
	margin: 0 0 12px;
}
.disp,
.dis01 {
	display: none;
}



/*-------------------------------------------
カーソル
-------------------------------------------*/
li.links {
	cursor: pointer;
}
li.blank_links {
	cursor: pointer;
}
a {
	cursor: pointer;
}
/*-------------------------------------------
もっとみる
-------------------------------------------*/
a.more {
	display: block;
	color: #666;
	font-size: 10px;
	padding: 10px 10px 6px 5px;
	max-width: 50%;
	text-align: center;
	text-decoration: none;
	float: right;
	background: none;
	font-weight: bold;
}
a.more::after {
	content: ">";
}
a.more img {
	max-width: 100px;
	max-height: 20px;
}
a.more:hover {
	text-decoration: none;
	color: #399fd8;
	filter: alpha(opacity=80);
  	-moz-opacity:0.80;
  	opacity:0.80;
}

#right a.more {
	padding: 10px 5px 6px 5px;
}

/*-------------------------------------------
バナー
-------------------------------------------*/
.mobile_disp_banner{
	display: none;
}

.pc_disp_banner{
	display: inline;
}

/*-------------------------------------------
フッター
-------------------------------------------*/
#footer_bg {
	width: 100%;
	position: relative;
	margin: 0 auto;
	max-width: 1020px;
	font-size: 12px;
	text-align: right;
}
footer #footer_menu {
	width: 100%;
	margin: 0 auto;
	padding: 20px 0;
}
footer #footer_menu ul {
	overflow: hidden;
	max-width: 1020px;
	margin: 0 auto;
	text-align: center;
}
footer #footer_menu ul li {
	display: inline-block;
	font-size: 12px;
	padding: 0 16px;
	margin: 16px;
}
footer #footer_menu ul li.last {
	border-right: 0;
}
footer #footer_menu ul li:hover {
	color: #999;
}
footer .copyright {
	letter-spacing: 0.1rem;
	padding: 16px 0;
	background:#000;
	color: #d3d3d3;
}
footer .footer_bottom {
	position: relative;
	margin: 0 auto;
}

/*--------------------------------------------------------------------------------------
記事見出しアイコン
--------------------------------------------------------------------------------------*/
.title_icon {
	width: auto;
	height: 32px;
	position: relative;
	top: 0px;
	left: 4px;
	display: inline-block;
	z-index: 100;
	padding: 2px 12px 0 0;
	float: left;
	display: none;
}
.notice_art_block .title_icon::before {
  margin:0 0 0 0;
  content:" ";
  display:inline-block;
  width:28px;
  height:28px;
  background: url(img/design/icon_news.png) 0 0 no-repeat;
  background-size:28px 28px;
  vertical-align:middle;
}
.general_art_block .title_icon::before {
  margin:0 0 0 0;
  content:" ";
  display:inline-block;
  width:28px;
  height:28px;

  background-size:28px 28px;
  vertical-align:middle;
}
.next_art_block .title_icon::before {
  margin:0 0 0 0;
  content:" ";
  display:inline-block;
  width:28px;
  height:28px;

  background-size:28px 28px;
  vertical-align:middle;
}
.camp_art_block .title_icon::before {
  margin:0 0 0 0;
  content:" ";
  display:inline-block;
  width:28px;
  height:28px;

  background-size:28px 28px;
  vertical-align:middle;
}
.corporate_promo_block .title_icon::before {
  margin:0 0 0 0;
  content:" ";
  display:inline-block;
  width:28px;
  height:28px;

  background-size:28px 28px;
  vertical-align:middle;
}
.personal_promo_block .title_icon::before {
  margin:0 0 0 0;
  content:" ";
  display:inline-block;
  width:28px;
  height:28px;

  background-size:28px 28px;
  vertical-align:middle;
}

.theme_area span{
	padding: 5px;
}

/*--------------------------------------------------------------------------------------
	modal
--------------------------------------------------------------------------------------*/
#lean_overlay {
    position: fixed;
    z-index:100;
    top: 0px;
    left: 0px;
    height:100%;
    width:100%;
    background: #000;
    display: none;
}

.modalwindow{
	background: none repeat scroll 0 0 #FFFFFF;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.7);
  display: none;
  padding: 30px;
  width:782px;
  max-width: 80%;
  max-height:80%;
  overflow:scroll;
}

span.access{
	float: left;
	font-size: 14px;
	display:none;
}
.fix_box{
	margin-bottom: 2ex;
}

.file_area, .download_file, .download_file a{
	float:left;
}
.file_area{
	display: block;
    width: 100%;
    margin-bottom: 15px;
}
.download_file{

}
.download_file a{
	position: relative;
	    position: relative;
    border: 5px solid;
    padding: 15px;
    padding-right: 40px;
}
.download_file a:after{
    content: url(img/style/download.png);
    top: 6px;
    position: absolute;
    right: 3px;
}

/*-------------------------------------------
tag
-------------------------------------------*/

.tag a {
    padding: 5px 1% 5px 1%;
    border-radius: 5px;
    text-decoration: none;
    font-weight: 700;
    border: 2px solid;
    display: inline-flex;
    margin-bottom: 1ex;
}

/*--------------------------------------------------------------------------------------
各画像・スマホ用非表示
--------------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------------
レスポンシブ用(959px)
--------------------------------------------------------------------------------------*/
@media only screen and (max-width: 959px){
header .inner {
	padding: 11px 1% 0;
}
header .inner .h_box {
	left: 1%;
}
header #site_ban {
	position: absolute;
	top: 36px;
	right: 2%;
	text-align: right;
	width: 20%;
}
header #site_ban img {
	width: 100%;
	margin: 0 0 6px;
}

}
/*--------------------------------------------------------------------------------------
レスポンシブ用(640px)
--------------------------------------------------------------------------------------*/
@media only screen and (max-width: 640px){
body {
	background: none;
}
header {
	background: none;
}
#content {
	width: 100%;
	margin: 0;
	padding: 0;
}
#wrapper {
	width: 100%;
	height: auto;
 	padding: 10px 1% 10px 1%;
	overflow: hidden;
	min-height: 200px;
}
#left,#left_bottom {
	width: 100%;
	padding: 0;
}
#right {
	width: 100%;
	padding: 0;
}
header #newssites {

}
header .inner h1 {
	font-size: 1.0rem;
}
header .inner .logo_area .sitename {
	font-size: 0.75rem;
}
header .inner .logo_area .car,
header .inner h3.pc,
.pc
{
	display: none;
}
header .inner .logo_area .car,
.sp
{
	width: 60%;
	display: block;
	margin: 0 0 10px;
}
header .inner .h_box {
	display: none;
}
.drawer-hamburger,
nav.drawer-nav {
	display: none;
}
header .inner .logo_area {
	padding: 0 2%;
}
header .inner ul.menu {
	width: 98%;
  margin: 48px auto 16px;
	text-align: center;
}
header .inner ul.menu li {
	margin: 0 16px 0 0;
	font-size: 0.75rem;
}
header .inner ul.menu li:last-child {
	margin: 0;
}
header #site_ban {
	width: 26%;
	top: 28px;
}
header #site_ban img {
	width: 100%;
	margin: 0 0 7%;
}
a.more {
	display: block;
	color: #fff;
	font-size: 10px;
	padding: 9px 10px 3px 5px;
	max-width: 30%;
	height: 25px;

}

/*-----  もっと見る背景追加　ここから -----*/

.general_art_block a.more, .next_art_block a.more, #right a.more {

    max-width: 40%;
    height: 40px;
    padding: 14px 10px 20px;
    margin: 0 auto;
    font-size: 12px;
    border-radius: 50px;
}

.general_art_block a.more, .next_art_block a.more {
    background: #bc002d;
    color: #fff;
    font-size: 12px;
    margin: 0 1.5% 0 0;
    padding: 12px 20px;
    border-radius: 50px;
}


/*-----  もっと見る背景追加　ここまで -----*/

a.more img {
	max-width: 100px;
	max-height: 20px;
}
/*-
/*-----  ハンバーガーメニュー -----*/

/*-----  ハンバーガーメニュー 追加cssここから-----*/
#top_menu {
    display: none;
}

.drawer--right.drawer-open .drawer-nav, .drawer--right .drawer-hamburger, .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
    display: block;
    padding: 8px 0 0 0.75rem;
}

.drawer-hamburger img {
    width: 100%;
}

/*-----  ハンバーガーメニュー 追加cssここまで-----*/

button {
	display: block;
}
.drawer-nav {
	position: fixed;
	z-index: 101;
	top: 0;
	overflow: hidden;
	width: 17rem;
	height: auto;
	color: #222;
	background-color: #fff;
	border: 4px solid #454545;
	display: block!important;
}
.drawer-menu {
	margin: 0;
	padding: 0;
	list-style: none;
}
.drawer-menu li {
	font-size: 16px;
	display: block;
	margin: 0;
	line-height: 70px;
	font-weight: bold;
}
.drawer-menu li a {
	padding: 0 10px 0 30px;
	display: block;
	text-decoration: none;
	color: #fff;
}
.drawer-menu li.menu {
	font-size: 25px;
	margin: 0;
	position: relative;
	letter-spacing: 0.3rem;
	padding: 0 10px 0 30px;
	font-weight: bold;
	color: #111;
}
.drawer-menu li.menu span {
	position: absolute;
	top: 0px;
	right: 0px;
}
.drawer-menu li.menu span button {
	border: none;
	background: none;
	width: 80%;
	position: relative;
	top: 20px;
	right: 0px;
}
.drawer-menu li span {
    display: table-cell;
    margin: auto;
    top: 0;
    bottom: 0;
    vertical-align: middle;
    height: 70px;
    line-height: 28px;
}
.drawer-overlay {
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	display: none;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .2);
}
.drawer-open .drawer-overlay {
	display: none;
}
.drawer--right .drawer-nav {
	right: -17rem;
	-webkit-transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.drawer--right.drawer-open .drawer-nav,
.drawer--right .drawer-hamburger,
.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
	right: 0;

}
.drawer--right.drawer-open .drawer-hamburger {
	right: 17rem;
}
.drawer-hamburger {
	position: fixed;
	z-index: 104;
	top: 0;
	display: block;
	box-sizing: content-box;
	padding: 0;
	padding-top: 4px;
	padding-bottom: 30px;
	padding-left: .75rem;
	-webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	border: 0;
	outline: 0;
	background-color: transparent;
}
.drawer-hamburger:hover {
	cursor: pointer;
	background-color: transparent;
}
.drawer-hamburger-icon {
	position: relative;
	display: block;
	margin-top: 10px;
}

/*-----  フッター -----*/
footer #footer_menu ul li {
	display: block;
	margin: 8% 0;
}


/*-------------------------------------------
バナー
-------------------------------------------*/
.mobile_disp_banner{
	display: inline;
}

.pc_disp_banner{
	display: none;
}

}


/*--------------------------------------------------------------------------------------
iphone用
--------------------------------------------------------------------------------------*/
html.iphone #right {
	width: 100%;
	height: auto;
	margin: 0 auto;
	float: none;
	padding: 0;
}
html.iphone #left {
	width: 100%;
	height: auto;
	margin:0 auto;
	float: none;
	padding: 0;
}
