@charset "utf-8";

html {
	margin: 0;
	padding: 0;
}
body {
	background-color: #FFF;
	margin: 0 auto;
	padding: 0;
	font-size: 15px;
	line-height: 1.6;
	font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
	font-weight: 500;	/* 游ゴシックはウェイトに幅があり、chromeで見ると400では汚いため */
}
table {
	border-spacing: 0;
}
fieldset, img, abbr, acronym {
	border: 0;
}
caption, th {
	text-align: left;
}
q:before, q:after {
	content: '';
}
hr {
	border: 0;
	height: 1px;
	background-color: #000;
	color: #000;
}
address {
	font-style: normal;
	display: inline;
}
p {
	margin-top: 1em;
	margin-bottom: 0;
}
img {
	padding: 0;
	margin: 0;
	border: 0;
	vertical-align: bottom;
}
a {
	-webkit-transition: all 0.15s; /* Android4.3用 */
	transition: all 0.15s;
	margin: 0;
	padding: 0;
}
ul, ol, li {
	margin: 0;
	padding: 0;
}
.asset-body {
	clear: both;
}
.asset {
	overflow: hidden;
	width: 100%;
	position: static;
	clear: both;
	margin-bottom: 1.5em;
}
.clear {
	clear: both;
}
.clear:after {
	display: block;
	content: "";
	clear: both;
}

.sp { display: none; }

/*--------------------------------------------------
	レイアウト
		各パーツの幅を指定しています。
		.containerはヘッダー、メイン、フッターに共通で使用。
		レイアウトの枠組み部分となりますので、サイズを変更する場合は慎重に！
----------------------------------------------------*/
.container {
	margin: 0 auto;
	max-width: 1040px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.container:after {
	display: block;
	content: "";
	clear: both;
}
#header {
	width: 100%;
	height: 80px;
	background-color: rgba(255,255,255,0.8);
	/*position:absolute;*/
	border-top: 2px solid #37D078;
	position: relative;
	z-index: 200;
}
#header h1 {
	float:left;
}

#mpwrap {
	background-color: #FFF;
}
#mpwrap-subpage {
	background-image: url(../img2/mpbg.gif);
	background-repeat: no-repeat;
	background-position: center;
	background-color: #37D078;
	height: 140px;
}
.mainpic p {
	background: url(../img2/mainpic_general.jpg) left center no-repeat;
	border-left: 3px solid #FFF;
	width: 1040px;
	margin: 0 auto;
	padding: 0 0 0 20px;
	font-size: 24px;
	color: #FFF;
	line-height: 140px;
	text-shadow: #042037 0 0 10px, #042037 0 0 5px, #042037 0 0 2px;
	box-sizing: border-box;
}
.mainpic-news p {	background: url(../img2/mainpic_news.jpg) left center no-repeat; }
.mainpic-ir p {	background: url(../img2/mainpic_ir.jpg) left center no-repeat; }
.mainpic-services p {	background: url(../img2/mainpic_services.jpg) left center no-repeat; }
.mainpic-corporate p { background: url(../img2/mainpic_corporate.jpg) left center no-repeat; }
.mainpic-consul p { background: url(../img2/mainpic_consul.jpg) left center no-repeat; }


/*-----------------------
	各パーツデザイン
		レイアウト用のものと同名で、デザイン部分のみ指定するセレクタには接頭辞(d-)を付けています。
		テーマカラーの設定に関するものには接頭辞(th-)を付けています。カラー変更の際参考にしてください。
-----------------------*/

/* header
-----------------------*/
.header-top > .container {
	height: 80px;
}
.header-top-logo-pc {
	margin: 0;
	padding: 4px 0 0 0;
	display: inline-block;
}
.header-top-logo-sp { display: none; }
.header-top-logo-name {
	margin: 0;
	padding: 6px 0 0 0;
}
.header-top__right {
	width:89%;
	height:80px;
	float:right;
	position:relative;/* menu用 */
}


/* nav */
.menu-sp,
.drawr {display:none;}

.mini-nav {
	margin:0;
	text-align:right;
}
.mini-nav li{
	list-style-type:none;
	background:url(../img2/maru.png) no-repeat 0 5px;
	padding-left:10px;
	margin-left:10px;
	display:inline-block;
	font-size:12px;
}


/*	#menu スタイル
-------------------------------------- */
dl#menu{
	margin: 0px;
	padding: 0px;
	float: right;
	position:absolute;
	bottom:0;
	width:100%;
}
dl#menu ul{
	margin: 0px;
	padding: 0px;
	width:100%;
	list-style: none;
	font-size:11px;
	text-align:left;
}
dl#menu li {
	border-top:1px solid #EEE;
}
dl#menu li:first-child {border:none;}

.menu-child a {
	padding:5px!important;
	box-sizing:border-box;
	line-height:inherit !important;
	background-color:#FFF;
	-webkit-opacity: 0.8;
	-o-opacity: 0.8;
	-ms-opacity: 0.8;
	opacity: 0.8;
}


dl#menu dd{
	margin: 0px;
	padding: 0px;
	display:inline-block;
	position: relative;
	background:url(../img2/kugirisen.png) no-repeat right;
	z-index:200;/* slideのz-indexが最大100なのでそれ以上にしないと隠れてしまう */
	text-align:center;
}

dl#menu dd a{
	margin: 0px;
	padding:0px;
	box-sizing:border-box;
	height: 36px;
	line-height:36px;
	display: block;
	width:100%;
}
/*
.dd01{width: 130px;}
.dd02{width: 162px;}
.dd03{width: 212px;}
.dd04{width: 162px;}
.dd05{width: 162px;}
.dd06{width: 142px;}/*合計972px*/
/*
.dd01{width: 13.3%;}
.dd02{width: 16.6%;}
.dd03{width: 21.8%;}
.dd04{width: 16.6%;}
.dd05{width: 16.6%;}
.dd06{width: 14.6%;}/*合計972px*/


#menu dd:nth-child(1){width: 13.3%;}
#menu dd:nth-child(2){width: 16.6%;}
#menu dd:nth-child(3){width: 21.8%;}
#menu dd:nth-child(4){width: 16.6%;}
#menu dd:nth-child(5){width: 16.6%;}
#menu dd:nth-child(6){width: 14.6%;}



/* pulldown */
dl#menu dd ul{
	display: none;
	position: absolute;
	top: 36px;
	left: 0;
	z-index: 30;
}
dl#menu dd ul a{height: auto;}
/* pulldown */
dl#menu dd ul li.rollOver{
	background-color:#FFF;
	-webkit-opacity: 1.0;
	-o-opacity: 1.0;
	-ms-opacity: 1.0;
	opacity: 1.0;
}
dl#menu dd ul li{position: relative;}

dl#menu dd ul li ul{
	display: none;
	position: absolute;
	top: 0px;
	left: 135px;
	z-index: 30;
}


/* メイン
-----------------------*/

/* コンテンツバナー（menubna） */
.menubana .container {
	padding:20px 0 0 0;
}

.menubana {
	background: #2DC071 url(../img2/home-bn-bg.png) center top;
	padding-bottom: 30px;
}
.menubana img {box-shadow:#14633C 0 0 10px;}
.menubana__box {
	margin-top: 20px;
	padding-right:10px;
	width: 50%;
	box-sizing: border-box;
	float: left;
}
.menubana__box-right {
	margin-top: 20px;
	width: 50%;
	padding-left:10px;
	box-sizing: border-box;
	float: right;
}



/* メイン部分_背景 */
.main-wrap {
	background-color: #DFE6E6;
	background-image: url(../img2/home-news-bg.png);
	background-repeat: repeat;
	background-position: center bottom;
}
.main-wrap2 {
	background-color: #DFE6E6;
	background-image: url(../img2/contents-bg.png);
	background-repeat: repeat;
	background-position: center top;
}

/* メインコンテンツ ボックス */
.section {
	padding-top: 15px;
	padding-bottom: 20px;
	width: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.section__in {
	margin: 0;
}
.box {
	background: #FFF;
	padding: 1em 2em 2em;
	margin: 1em auto;
}
.double-box {
	border: 3px double #CCC;
	padding: 20px 30px;
	margin: 1em auto;
	width: 680px;
	box-sizing: border-box;
}
.rounded-box {
	border: 1px solid #666;
	border-radius: 1em;
	padding: 1em 2em;
	margin: 1em auto;
}

/*--------------------------------------------------
	2カラム：画像付きのレイアウト
----------------------------------------------------*/
.photo {
	width: 40%;
	float: left;
}
.detail {
	box-sizing: border-box;
	padding-left: 20px;
	width: 60%;
	float: right;
}


/* トップ新着情報 */
.grid01 {
	width: 50%;
	float: left;
	padding: 0 20px;
	box-sizing: border-box;
}

/* 記事タイトル*/
.section-title {
	display: block;
	padding: 11px 20px;
	margin: 0;
	width: 100%;
	font-size: 18px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.th-section-title {
	border-bottom: 2px solid #FFFFFF;
	color: #24B06A;
	font-size: 30px;
	padding: 30px 0 0 0;
}
.section-title__sub { /* サブタイトル */
	font-size: 14px;
	margin-left: 15px;
	font-weight: 400;
}
.th-section-title__sub {
	color: #666666;
}
.section-in-title {
	background: #10ABAB;
	margin-top: 2em;
	padding: 0.305em 0.61em;
	color: #FFF;
}
.section-in-subtitle {
	border-bottom: 2px solid #10ABAB;
	padding: 0.305em 0.61em;
	color: #07375F;
}


/* TOP新着情報_お知らせ */
.news {
	list-style: none;
	padding: 0;
	margin-bottom: 10px;
	height: 200px;
	overflow: auto;
}
.news li {
	border-bottom: 1px solid #FFFFFF;
	padding: 10px 0 5px;
	font-size: 13px;
}
.news .day {
	float: left;
	width: 30%;
	margin:0;
	padding-right:15px;
	box-sizing:border-box;
	color:#333;
}
.news .title {
	float: right;
	width: 70%;
	margin:0;
	padding:0;
}




/* footer
-------------------------------------------------- */
#footer{
	width:100%;
	padding:80px 0 32px;
	position:relative;
	background-color:#052B49;
	background-image:url(../img2/foot-headbg.gif);
	background-repeat:repeat-x;
	background-position:top;
}

.fnavi{
	width:20%;
	box-sizing:border-box;
	padding: 0px 0px 0px 12px;
	line-height: 130%;
	float: left;
}
.fnavi h3 {
	background:url(../img2/maru.png) no-repeat 0 3px;
	padding:0 0 0 10px;
	margin:0 0 5px 0;
	color:#FFF;
	font-weight:normal;
	font-size: 13px;
}
.fnavi a:link{color: #444; text-decoration: none;}
.fnavi a:visited{color: #999; text-decoration: none;}
.fnavi a:hover{color: #000; text-decoration: none;}
.fnavi a:active{color: #ccc; text-decoration: none;}
.fnavi ul{margin: 0px 0px 20px 0px; padding:0 0 0 10px;}
.fnavi li {list-style-type:none; font-size: 11px;}
.fnavi .fli01:before {
	content:" - ";
	color:#FFF;
}
.fnavi .fli02:before {
	content:" - ";
	color:#FFF;
}
.fnaviend{
	width:50%;
	padding: 10px 0;
	float:right;
	text-align: right;
}


/* credit,copy
-------------------------------------------------- */
.copywrap {
	background-color:#FFF;
	border-bottom: 5px solid #07375F;
	padding:0 20px;
}
.copy-left {float:left; width:50%;}
.copy {
	font-size: 14px;
	margin-top: 40px;
}
.copy span { display:block; font-size:70%; color:#DDD;}


/* SCAMPISM
-------------------------------------------------- */
.scampi{
	font-size: 50%;
}

.a_container{display:none;}


/* footer
--------------------------- */
.pagetop-bace {
	position: relative;
}
.pagetop {
	width: 66px;
	height: 66px;
	border-radius: 33px;
	box-shadow: 0px 2px 10px #042037;
	text-align: center;
	position: absolute;
	top: -66px;
	right: 0;
}
.pagetop:hover {
	box-shadow: 0px 2px 10px #042037;
}
.th-pagetop {
	background-color: #FFF;
}
.th-pagetop:hover {
	background-color: #37D078;
}
.pagetop img {
	padding-top: 14px;
}



/*--------------------------------------------------
	汎用パーツ
		ボタンや、リスト項目のデザイン、小見出しのデザインなど、
		サイト内でくり返し使用可能なものをまとめておきます。
----------------------------------------------------*/
/* 1：1のカラムレイアウト */
.colum2sec {
	box-sizing: border-box;
	width: 50%;
	float: left;
	padding-right: 11px;
	padding-bottom: 30px;
}
.colum2sec-r {
	padding-right: 0;
	padding-left: 11px;
}

/* 2：1のカラムレイアウト */
.grid3-wrap {
	clear: both;
	overflow: hidden;
}
.grid,
.grid-r,
.grid-l {
	float: left;
	display: inline;
	box-sizing: border-box;
}
.grid-r { padding-left: 15px; }
.grid-l { padding-right: 15px; }

.grid3_1 { width: 33%; }
.grid3_2 { width: 66%; }


/* ボタン */
.btn-wrap {
	margin: 0;
	padding-top: 10px;
	padding-bottom: 10px;
}
.btn {
	display: block;
	padding: 8px 20px;
	text-align: center;
}
.th-btn {
	border: 1px solid #24B06A;
}
.th-btn:hover {
	border: 1px solid #24B06A;
	background-color:#24B06A;
}
.btn--size-m {
	margin: 0 auto;
	padding: 10px 20px;
	width: 50%;
}

.btn--more-news {
	height: 42px;
	font-size: 0.8em;
}


/* 汎用tableスタイル */
.general_tbl {
	border-collapse: collapse;
	margin: 1em auto;
}
.general_tbl th {
	background-color: #FFF;
	padding: 6px 15px 4px;
	width: 30%;
	border-bottom: 2px solid #10ABAB;
	box-sizing: border-box;
	color: #07375F;
	font-weight: 500;
	text-align: left;
	vertical-align: middle;
}
.general_tbl td {
	background-color: #FFF;
	padding: 6px 15px 5px;
	border-bottom: 1px solid #CCC;
	width: 70%;
	box-sizing: border-box;
	text-align: left;
}
.multi-detail th,
.multi-detail td {
	width: auto;
}

/* パネル式のリンク */
.panel-wrap {
	padding: 2px;
}
.panel {
	display: block;
	padding: 10px;
	background: #FFF;
	width: 100%;
	text-align: center;
	position: relative;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
/* パネル式のリンク_左右の飾り */
.panel:before,
.panel:after {
	content: "";
	border-bottom: 1px solid #37D078;
	width: 14px;
	position: absolute;
	top:50%;
}
.panel:before {
	left: 25px;
}
.panel:after {
	right: 25px;
}

/* バーアイコン付リンク */
.a-bar {
	display: inline-block;
	background: url(../img2/icon_bar.png) left center no-repeat;
	padding: 4px 10px 4px 20px;
}

/* リストデザイン：2カラム */
.colum2list {
	list-style: none;
}
.colum2list li {
	display: block;
	width: 50%;
	float: left;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
/* シンプルなリスト */
.simple-list {
	margin-left: 40px;
}

/* テキストカラー：ポジティブ */
.fc--pogi {
	color: #16A09F;
}


/* 下層ページ　(2カラム構造) */
#breadcrumb {
	padding:15px 0;
}
#breadcrumb ul {
	padding:0;
	margin:0;
	text-align: left;
}
#breadcrumb li {
	display: inline;
	color: #444;
	font-size: 12px;
}
#breadcrumb li:nth-child(n+2):before {
	content:">";
	margin:0 9px 0 5px;
}




#left-column {
	width:240px;
	margin:0 30px 0 0;
	float:left;
}
#right-column {
	width:770px;
	float:right;
}

.rightdetail {
	margin-bottom: 40px;
}

.smenuwrap {
	margin:0 0 20px 0;
	padding:0;
}
.sidetitle {
	margin: 0;
	padding: 8px;
	font-weight: 500;
	background-color: #37D078;
	color: #FFF;
	font-size: 14px;
	border-bottom: 4px solid #99E7BA;
}

.sidemenu {
	margin: 0px;
	padding: 0px;
}
.sidemenu li {
	list-style-type:none;
	padding:0 0 0 10px;
	margin-bottom:1px;
	background-color:#FFF;
	font-size:12px;
}
.sidemenu a {
	background-image:url(../img2/maru.png);
	background-repeat:no-repeat;
	background-position:left;
	display:block;
	padding:8px 8px 8px 10px;
}
.sidemenu li:first-child a {
	border-top:none;
}
.children {
	padding:0;
}
.children a {
	padding:5px 5px 5px 20px;
}
.sidemenu .lnavi02 a {
	background: #FFF url(../img2/icon_bar.png) left 8px center no-repeat;
	padding:8px 8px 8px 20px;
}

.maintitle {
	margin-top:0;
	border-bottom: 1px solid #06375F;
	color: #06375F;
	font-size: 30px;
	line-height: 1.3;
}

.maintitle span {
	font-size: 14px;
	margin-left: 15px;
	font-weight: 400;
	color: #37D078;
}

.asset-body { margin-bottom: 0; }
.asset-body pre {
	overflow: auto;
	font-family: "MS Gothic", monospace, sans-serif;
}

/* お知らせページ */
.news-subpage {
	list-style: none;
	padding: 0;
	margin-bottom: 40px;
}
.news-subpage li {
	border-bottom: 1px solid #FFF;
	padding: 10px 0;
}
.news-subpage .day {
	float: left;
	width: 20%;
	margin:0;
	padding-right:15px;
	box-sizing:border-box;
	color:#333;
}
.news-subpage .title {
	float: right;
	width: 80%;
	margin:0;
	padding:0;
}


/* 投稿記事ページ */
.aligncenter {
	display: block;
	margin: 0 auto 20px;
	text-align: center;
}


/*========================================
	各種お問い合わせ共通
========================================*/
.cnt-message {
	margin: 1em 20px 15px 0;
	padding-left: 25px;
}
.cnt-message li {
	list-style-type:square;
}
sup{
	color: #f00;
	font-size: 80%;
}
.formT{
	padding: 5px 5px 5px 15px;
	border-bottom: 2px solid #10ABAB;
	font-weight: 700;
	color: #07375F;
}
.formP{
	padding: 5px 5px 30px 15px;
}
p.submit {
	text-align:center;
}
/* 送信ボタン */
.btn_form {
	border:none;
	-webkit-border-radius: 4px;     /* Google Chrome・Safari用 */
	border-radius: 4px;     /* 基本形 */
	padding: 8px 30px;
	cursor: pointer;
	display: inline-block;
}
.btn_form--submit {
	background: #999;
	color: #fff;
}
.btn_form--submit:hover {
	background: #37D078;
	color: #fff;
}
.btn_form--back {
	background: #CCC;
	color: #fff;
}
.btn_form--back:hover {
	background: #99E7BA;
	color: #fff;
}
/*--- 個人情報の取り扱い.kojin ---*/

.kojin dt {
	font-weight: 700;
	margin-top: 1em;
}
