@charset "utf-8";

/* サイト共通基本設定
---------------------------------------------- */
html {}

body {
margin: 0 auto;
line-height:1.6;
padding: 0;
font-size: 12px;
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif ,Osaka;
background: #fff;
color: #000;
text-align: center;
background:url(../img/wrap_bg.gif) repeat-y center;
}

h1, h2, h3, h4, h5, h6, ul, ol, li, dl, form{
margin:0;
padding:0;
line-height:1.6;
font-size:12px;
}

p{
font-size:100%;
margin:0;
padding:0;
line-height:1.6;
}

ul, li{
margin: 0;
padding: 0;
}

li{list-style: none;}

table, th, td {
line-height:1.6;
font-size:12px;
border:none;
}

img{border:none;}

address{
font-style: normal;
line-height:1.6;
}

a{
text-decoration:underline;
color: #000000;
}

a:hover {
text-decoration:none;
color:#3366CC;
}

.goTop {
text-align:right;
}

.goTop p a{
color:#999;
text-decoration:underline;
}

.goTop p a:hover{text-decoration:none;}

#method .goTop {
margin-bottom:10px;
}

.none{display:none;}

.img_Left, .Left_box{float: left;}
.img_Right, .Right_box{float:right;}

.A_Right{text-align:right; }
.A_Center{text-align:center; }
.A_Left{text-align:left }

.clear{clear: both;}

.mt10{margin-top: 10px;}
.mt15{margin-top: 15px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.mt50{margin-top: 50px;}
.mb0{margin-bottom: 0 !important;}
.mb10{margin-bottom: 10px;}
.mb15{margin-bottom: 15px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px;}
.mb40{margin-bottom: 40px;}
.mb50{margin-bottom: 50px;}

p.cap{
padding-left: 1em;
text-indent: -1em;
}

/* フォントサイズ */
.small_01 { font-size: 95%; }
.text01{ line-height:1.4;}

.red{
	color: #f00;
}
/* clearfix */
.clearfix:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}

.clearfix { display: inline-block; }
/* Hides from IE-Mac \*/
*html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */


/* 基本レイアウト
------------------------------------------*/
#container {
margin:0 auto;
text-align:left;
width:960px;
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
color:#000;
overflow:hidden;
zoom:1;
}

#wrapper{
	background:url(../img/shadow.gif) no-repeat top left;
	overflow:hidden;
	zoom:1;
  min-height: 841px;
}

/* 明朝 */
.tt_min{
	font-family: "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝",serif;
}
.about_copy {
	color: #f00000;
	font-size: 16px;
	font-weight: bold;
	line-height: 140%;
	font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
}
/* サイドメニュー
------------------------------------------*/
#sidemenu{
width:240px;
height:820px;
background:url(../img/sab_bg.gif) repeat-x;
float:left;
}

h1{
width:216px;
height:44px;
background:url(../img/logo.png) no-repeat;
text-indent:-9999px;
font-size: 20px;
font-weight: bold;
margin:28px auto;
}

/* グローバルナビゲーション-----*/
#gNavi_a dt{
	padding-left: 15px;
	font-size: 12px;
	line-height: 25px;
}
#gNavi_a dt#m_ttl1{
	height:25px;
	width:240px;
	display:block;
	color: #fff;
	background:url(../img/gnavi_m_ttl1.jpg) no-repeat;
}
#gNavi_a dt#m_ttl2{
	height:25px;
	width:240px;
	display:block;
	color: #fff;
	background:url(../img/gnavi_m_ttl2.jpg) no-repeat;
}
#gNavi_a dt#m_ttl3{
	height:25px;
	width:240px;
	display:block;
	color: #fff;
	background:url(../img/gnavi_m_ttl3.jpg) no-repeat;
}
/* #gNavi_a dt#m_ttl5{
	height:25px;
	width:240px;
	display:block; */
	/* color: #fff; */
	/* background:url(../img/gnavi_m_ttl5.jpg) no-repeat;
} */
/* #gNavi_a dt#m_ttl5 a {
	color: white;
	text-decoration: none;
} */

#gNavi_a dd{
	background-color: #000;
}
#gNavi_a dd.title {
	background:url(../img/gnav_m_ttl1_01.jpg) no-repeat;
	height:40px;
	width:240px;
	display:block;
	color: #000;
	font-size: 14px;
	line-height: 40px;
	text-decoration: none;
	padding-left: 10px;
}
#gNavi_a dd a{
	height:40px;
	width:240px;
	display:block;
	color: #000;
	font-size: 14px;
	line-height: 40px;
	background:url(../img/gnav_m_list.jpg) no-repeat;
	text-decoration: none;
	padding-left: 10px;
}

#gNavi_a dd a:hover{
	opacity: 0.8;
}

#gNavi_a dd.indent a {
	padding-left: 20px;
}

/* 下層ページタイトル-----*/
h2.mttl{
	font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
	font-size: 30px;
	color: #fff;
	text-shadow: 5px 5px 10px #808080;
	padding-left: 20px;
	position: relative;
}

h2.mttl > span{
	position: absolute;
	bottom: 35%;
}

h2.mttl > span span.subttl{
	font-size: 20px;
	padding-left: 20px;
}



body#info h2,body#news-list h2.mttl{
	height:180px;
	width:720px;
	display:block;
	background:url(../img/ttl_bg01.jpg) no-repeat;
}
body#member h2.mttl{
	height:180px;
	width:720px;
	display:block;
	background:url(../img/ttl_bg02.jpg) no-repeat;
}
body#about-index h2.mttl{
	height:180px;
	width:720px;
	display:block;
	background:url(../img/ttl_bg03.jpg) no-repeat;
}
body#tpnet h2.mttl{
	height:180px;
	width:720px;
	display:block;
	color: #fff;
	background:url(../img/ttl_bg04.jpg) no-repeat;
}
body#fudo h2.mttl{
	height:180px;
	width:720px;
	display:block;
	background:url(../img/ttl_bg05.jpg) no-repeat;
}



/* お問い合わせ-----*/

#address{
	width:240px;
	height:144px;
	background:url(../img/info_02.jpg) no-repeat;
	background-position:center bottom;
}

#address dl{
margin:auto;
}

#address dt{
	background:url(../img/gnavi_m_ttl4.jpg) no-repeat;
	height:25px;
	width:240px;
	display:block;
	color: #fff;
	padding-left: 15px;
	font-size: 12px;
	line-height: 25px;
}

#address dd{
	width: 220px;
	font-size:11px;
	padding-top: 10px;
	margin:auto;
	height:119px;
}
#address dd span{
	font-size: 12px;
}
#sidemenu img{vertical-align:bottom;}

#contact a{
height:41px;
width:240px;
display:block;
background:url(../img/contact.gif) no-repeat;
text-indent:-9999px;
}

/* off-----*/
#contact a:hover{background-position:0 0;}

/* hover-----*/
#contact a:hover{background-position:-240px 0;}


/* パンくず
------------------------------------------*/
#bread{
width:680px;
margin:10px auto 0;
}



/* フッター
------------------------------------------*/
#footer{
background:url(../img/footer_bg.gif) repeat-x;
height:120px;
width:960px;
margin:0 auto;
}

#footer p,
#footer p a{
text-align:center;
padding-top:7px;
color:#CCC;
}

#footer p a{text-decoration:none;}
#footer p a:hover{text-decoration:underline;}

#copy{text-align:right;color: #ccc;font-size:  6px;margin:15px 10px 0 0;}



/* 解除
------------------------------------------*/
#last{border:none;}
#first{margin-top:0;}

/* flex
------------------------------------------*/
.flex {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

/* テーブル
------------------------------------------*/
table {
	border-collapse: collapse;
	border-spacing: 0;
}
th, td{
	vertical-align: top;
	font-weight: normal;
	text-align: left;
	font-size: 100%;
}
table.tb{
	width: 100%;
	background: #fff;
}

table.tb th, table.tb td{
	padding: 10px;
	border: 1px solid #b9bbc2;
}

table.tb th{
	width: 18%;
	white-space: nowrap;
	font-weight: bold;
	background: #ecf0ff;
}

table.tb th a{
	color: #3b1e87;
	text-decoration: underline;
	-webkit-transition: all .3s;
	transition: all .3s;
}

table.tb th a:hover{
	text-decoration: none;
}

/* 	tab
----------------------------*/
ul.tab {
    list-style: none;
    margin-bottom: 30px;
    font-size: 0;
    width: 100%;
}
ul.tab li {
	box-sizing: border-box;
    display: inline-block;
    width: 50%;
    padding: 10px;
    font-size: 16px;
    text-align: center;
    background-color: #f2f2f2;
    color: #666;
    cursor: pointer;
}
ul.tab li:hover {
    color: #999;
}
ul.tab li.active {
    background-color: #999;
    color: #fff;
}
div.tabContent {
    display: none;
}
div.tabContent.active {
    display: block;
}


/* add_20210526
========================================== */

/* side
========================================== */

#gNavi_a dt#m_ttl5 {
	height: 56px;
	width:215px;
	display:flex;
	position: relative;
	margin-bottom: 10px;
	background:url(../img/gnavi_m_ttl5.jpg) no-repeat;
	background-size: cover;
	align-items: center;
	transition: 0.4s;
	opacity: 1;
}
#gNavi_a dt#m_ttl5::after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 6px solid #ffffff;
	top: calc(50% - 3px);
	right: 7px;
}
#gNavi_a dt#m_ttl5:hover {
	opacity: 0.5;
}
#gNavi_a dt#m_ttl5 a {
	padding: 15px 30px;
	color: #ffffff;
	font-size: 16px;
	letter-spacing: 3px;
	background:url(../img/gnavi_m_ttl5_icon.png) no-repeat;
	background-position: left center;
	text-decoration: none;
}