@charset "shift_jis";
@import url("./css/tables.css");
@import url("./css/commonstyles.css");

/* 基本スタイル */
body {
	margin: 0px;
	padding: 0px;
	text-align: center;
	color: #333333;
	font-size: 0.9em;
	line-height: 180%;
	background-color: #F5F5F5;
	font-size: 16px;
}
div, p, h1, h2, h3, h4, h5, h6 {
	margin: 0px;
	padding: 0px;
	display: block;
	text-align: left;
}
h1, h2, h3, h4, .title ,.menutitle{
	font-family: 'HGP創英角ｺﾞｼｯｸUB', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W6', sans-serif;
	font-weight:normal;
}
h1,h2,h3,h4{
	clear:both;
}
/*
//見出しを通常のフォントにする場合は／* と *／ を削除
h3, h4 ,h5 ,h6{
	font-family: sans-serif;
	font-weight:bold;
}
*/
.FloatEnd {
	clear: both;
	display: block;
	height: 1px;
}
/* -------- リンク */
a,a:visited{
	color:#006699;
}
a:hover{
	color:#cc0000;
}
a img {
  border: none;
  text-decoration: none;
}
.txt-img img{
	margin-top: 0px;
	margin-right: 10px;
	margin-bottom: 10px;
	margin-left: 10px;
}

/* 文字装飾 */
strong {
  margin: 0 0.2em;
  padding: 0;
  font-weight: bold;
}
em {
  margin: 0 0.2em;
  padding: 0;
  font-weight: normal;
  text-decoration: underline;
}

/* ---------------- リスト */
ul, ol {
  display: block;
  _margin-left:0;
  _margin-right:0;
}
dl{
	margin:0;
	padding:0;
}
ul {
	margin-top: 10px;
	margin-bottom: 10px;
	_margin-left: 20px;
	_padding-left: 20px;
}
ol {
	list-style-type: decimal;
	margin-top: 10px;
	margin-right: 0;
	margin-bottom: 10px;
	margin-left: 0;
	_margin-left: 30px;
	_padding-left: 20px;
}
*:first-child+html ol{
	margin-left: 30px;
	padding-left: 20px;
}
li {
	display: list-item;
	margin: 0;
}
ul li {
	list-style-type: none;
	list-style-image: url(./img/li.gif);
}

p {
	width: auto;
	margin-right: auto;
	margin-left: auto;
	margin-top: 0px;
	margin-bottom: 0px;
}

/* 基本レイアウト */
#container {
	width: 900px;
	_width: 910px;
	padding-top: 0px;
	padding-right: 5px;
	padding-bottom: 0px;
	padding-left: 5px;
	margin-right: auto;
	margin-left: auto;
	background-image: url(./img/cnt_bg.png);
	background-repeat: repeat-y;
}
#header {
	height: 148px;
	background-image: url(img/header.jpg);
	overflow:hidden;
	background-repeat: no-repeat;
	background-position: left top;
	width: auto;
	border-bottom:solid 1px #EBEBEB;
}
#header h2 ,#header .title {
	width: 550px;
	font-size: 36px;
	line-height: 36px;
	position: relative;
	left: 30px;
	top: 50px;
}
#header h2  a, #header  h2  a:visited,#header  .title  a,#header  .title  a:visited {
	color: #043863;
	text-decoration: none;
	color: #FFFFFF;
}
#headertext {
	text-align: left;
	font-size: 11px;
	line-height: 130%;
	width: 550px;
	position: relative;
	left: 30px;
	top: 60px;
	color: #FFFFFF;
}
/* コンテンツ */
#text1, #text2, #text3, #text4, #text5, #text6, #text7, #text8, #text9, #text10, #space1 ,#space2 {
	margin-bottom: 25px;
	padding: 10px 14px;
}

/* グローバルメニュー */
#topmenu {
	background-repeat: repeat-x;
	height: 40px;
	line-height: 42px;
	width: 900px;
	position: absolute;
	top: 148px;
	margin: 0px;
	padding: 0px;
	background:#264c73;
	background-position: left top;
	font-size: 13px;
	height:46px;
}
#topmenu span a {
	overflow: hidden;
	width: 20%;
	_width:19.6%;
	width: 20%;
	_width: 19.6%;
	text-align: center;
	color: #FFFFFF;
	font-size: 16px;
/*	font-weight: bold;*/
	text-decoration: none;
	float: left;
	height: 45px;
	_height:47px;
	background-image: url(img/menu_item.jpg);
	background-repeat: repeat-x;
	margin: 0px;
	padding: 3px 0px 0px 0px;
	padding-bottom:3px;
	display: block;
}
#topmenu span a:hover {
	background-image: url(img/menu_item_hover.jpg);
	background-position: right top;
	color: #FFFFFF;
}
#topmenu span a.last {
	background-image: url(img/menu_item_01.jpg);
}
#topmenu span a.last:hover {
	background-image: url(img/menu_item_hover_01.jpg);
	}

#siteNavi {
	font-size: 0.775em;
	line-height: 1.5em;
	margin-bottom:15px;
}
#contents {
	_height:10px;
	padding-top: 20px;
	padding-bottom: 20px;
	min-height:400px;
	margin-top:50px;
	/*background-image: url(./img/contents_bg_right.jpg);*/
	background-repeat: repeat-y;
	background-position: right;
	margin-top:47px;
	position:relative;/*広告エリア設置のため追加*/
}
#menu:after,#contents:after{
	height: 1px;
	overflow: hidden;
	content: "";
	display: block;
	clear: both;
}
.news_box{
border:1px solid #ddd;
margin-left:15px;
margin-bottom:10px;
}
.news_box_title{
font-size:13.5px;
padding-left:10px;
padding-top:2px;
font-weight:bold;
border-bottom:1px solid #ddd;
background: -moz-linear-gradient(top, #ffffff 75%, #f4f4f4 100%); /
background: -webkit-linear-gradient(top, #ffffff 75%,#f4f4f4 100%); 
background: linear-gradient(to bottom, #ffffff 75%,#f4f4f4 100%); 
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f4f4f4',GradientType=0 ); 
letter-spacing:0.05em;
}
.news_box ul{
padding:10px 15px;
margin:0;
}
.news_box ul li{
list-style:none;
font-size:11.5px;
line-height:200%;
background:url(./img/arrow_left.png) no-repeat left;
background-size:5px 7px;
padding-left:12px;
}

/* フッター */
#footer {
	text-align: center;
	color: #FFFFFF;
	line-height: 64px;
	height: 64px;
	background-color: #264c73;
/*	background-image: url(./img/footer.gif);*/
	background-repeat: repeat-x;
	background-position: left top;
}
#footer a{
	color: #FFFFFF;
	text-decoration: none;
}
#footermenu{
	text-align:center;
	padding:5px;
}
#footlink {
	text-align: center;
	padding-top: 8px;
	padding-bottom: 8px;
	color: #666666;
	font-size: 12px;
	background-color: #E5E5E5;
}
#footlink a {
	color: #666666;
	margin-left:5px;
	margin-right:5px;
}
/* フリースペース */
#space3, #space4, #space5, #space6 {
	background-color: #FFFFFF;
	text-align: center;
	line-height: 120%;
	font-size: 12px;
	padding: 8px;
}
/* レイアウト差分 */
#contents {
	padding-right: 10px;
	padding-left: 15px;
}
#main {
	float: left;
	width: 650px;
}
#menu {
	float: right;
	width: 200px;
	padding-top: 10px;
	padding-bottom: 10px;
}
.login_area{
border:5px solid #d6d6d6;
margin-bottom:10px;
padding:5px 0;
}
.login_area .login_area_box_01{
border:1px solid #ddd;
border-radius:5px;
margin:5px;
padding-top:8px;
}
.login_area .txt_service{
text-align:center;
font-size:12px;
line-height:140%;
font-weight:bold;
letter-spacing:0.025em;
}
.login_area .btn_login{
background:url(./img/arrow_orange_login.png) no-repeat center right, #ff6600;
border-radius:5px;
width:170px;
margin:5px auto 10px;
display:block;
text-align:center;
color:#fff;
font-size:13px;
font-weight:bold;
letter-spacing:0.025em;
text-decoration:none;
padding-top:8px;
}
.login_area .login_area_box_02{
margin:6px;
border:2px solid #ff9900;
text-align:center;
padding-bottom:3px;
border-radius:5px;
}
.login_area .login_area_box_02 p.txt_moushikomi,.login_area .login_area_box_02 p.txt_moushikomi_02{
font-size:12.5px;
text-align:center;
font-weight:bold;
letter-spacing:0.025em;
line-height:22px;
}
.login_area .login_area_box_02 p.txt_moushikomi img{
position:relative;
top:7px;
}
#text1 h3,#text2 h3,#text3 h3,#text4 h3,#text5 h3,#text6 h3,#text6 h3,#text7 h3,#text8 h3,#text9 h3,#text10 h3{
	position: relative;
	left: -12px;
	width: 610px;
	width:670px;
	margin-top: 15px;
	margin-bottom: 15px;
}
#searchbox {
	position: absolute;
	top: 0px;
	width: 920px;
	padding-right: 10px;
	padding-left: 10px;
	text-align: right;
	line-height: 30px;
	height: 30px;
	font-size:12px;
	padding-top: 6px;
}
#searchbox input {
	vertical-align: middle;
	margin-right: 2px;
	margin-left: 2px;
}
#searchbox form {
	padding: 0px;
	margin: 0px;
}
form input {
	vertical-align: middle;
}
/* 各種見出し */
h1 {
	font-weight: normal;
	font-size: 12px;
	color: #666666;
	line-height: 16px;
	background-repeat: no-repeat;
	position: absolute;
	top: 5px;
	padding-right: 10px;
	padding-left: 10px;
	font-family: sans-serif;
}
#main h2,#main h3,.blog .title {
	font-size: 24px;
	line-height: 20px;
	background-repeat: no-repeat;
	background-position: left top;
	margin-bottom: 30px;
	margin-top: 30px;
	color: #333333;
	border-top: 3px solid #333333;
	border-bottom: 3px solid #333333;
	padding-left: 15px;
	overflow: hidden;
	padding-top: 17px;
	padding-bottom: 17px;
/*	background-color: #333;
	background-image: url(./img/h3.jpg);*/
}
.blog .title a{
	color:#043762;
}

#main h4  {
	font-size: 22px;
	line-height: 34px;
/*	background-image: url(img/h4.jpg);*/
	background-color: #f4f4f473;
	border-left: 5px solid #333333;
	background-repeat: no-repeat;
	margin-top: 15px;
	margin-bottom: 15px;
	background-position: left bottom;
	padding-right: 8px;
	padding-left: 30px;
	padding-top: 10px;
	padding-bottom: 8px;
	color: #333333;
}
#main  h5{
  font-size: 18px;
  border-bottom: solid 3px #cce4ff;
  position: relative;
  margin-bottom: 16px;
}
h5:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #5472cd;
  bottom: -3px;
  width: 20%;
}
#main  h6{
	background-image: url(img/h6.jpg);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 20px;
	font-size: 15px;
	line-height: 20px;
	margin-top: 6px;
	margin-bottom: 6px;
}

/* サイトマップ */
#sitemaps{
	padding-top: 0px;
	padding-right: 10px;
	padding-bottom: 0px;
	padding-left: 10px;
}
#sitemaps ul{
	margin:0;
	padding:0;
}
#sitemaps li{
	list-style-type: none;
	list-style-image: none;
}
#sitemaps .sbox1, #sitemaps .sbox2 {
	width: 47%;
	margin-top: 5px;
	margin-bottom: 5px;
	padding: 5px;
}
#sitemaps .sbox1 {
	float: left;
	clear: left;
}
#sitemaps .sbox2 {
	float: right;
	clear: right;
}
#sitemaps .l1 {
	background-image: url(./img/sitemap_l1.jpg);
	line-height: 26px;
	height: 26px;
	/*font-weight: bold;*/
	font-size: 14px;
	margin-bottom: 2px;
	margin-top:0px;
	background-repeat: no-repeat;
	background-position: 5px center;
	padding-left: 35px;
	overflow: hidden;
}
#sitemaps .l2 {
	background-image: url(img/sitemap_l2.jpg);
	background-repeat: no-repeat;
	background-position: left 4px;
	line-height: 20px;
	text-indent: 15px;
	margin-left: 22px;
	margin-bottom: 6px;
	font-size: 14px;
}
#sitemaps .l3 {
	background-image: url(img/sitemap_l3.jpg);
	background-repeat: no-repeat;
	background-position: left 4px;
	line-height: 20px;
	text-indent: 15px;
	margin-left: 38px;
	margin-bottom: 3px;
}
#whatsnew {
	border: 1px solid #CCCCCC;
	background-image: url(img/whats_top.jpg);
	background-repeat: no-repeat;
	background-position: left top;
	padding-top: 45px;
	padding-bottom: 10px;
	padding-right: 10px;
	padding-left: 10px;
}
#whatsnew  li  {
	line-height: 25px;
	list-style-image: url(img/whats_li.jpg);
	margin-right: 10px;
	margin-left: 10px;
}
/* カテゴリーリスト */
#categorylist {
	padding: 10px;
	margin-top: 10px;
	margin-bottom: 10px;
}
#categorylist .cbox{
	margin-bottom:15px;
	font-size:13px;
}
#categorylist .cbox:after {
	clear: both;
}
#categorylist h4 {
	clear: none;
/*	background-image: url(img/categorylist.jpg);*/
	background-repeat: no-repeat;
	font-size: 18px;
	height: 30px;
	padding-left: 15px;
	padding-bottom: 5px;
	padding-top: 5px;
	padding-right: 0px;
	line-height: 30px;
	background-position: left top;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 20px;
	margin-left: 0px;
	overflow: hidden;
}
#categorylist h4 a{
	color: #032D4E;
}
#categorylist .desc {
	font-size: 12px;
	line-height: 130%;
	color: #505050;
	padding: 10px;
}
#categorylist  .more {
	text-align: right;
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 5px;
}
#categorylist .bottom {
	background-image: url(img/categorylist_bottom.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;
}

/* エントリーリスト */
#entrylist {
	padding: 10px;
}
#entrylist dl {
	padding: 6px;
	display: block;
}
#main #entrylist h4 {
/*	background-image: url(./img/entlist_title.jpg);:*/
	background-repeat: no-repeat;
	background-position: left bottom;
	padding-left: 30px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 8px;
	margin-left: 0px;
}
#entrylist dt {
	font-weight: bold;
	font-size: 16px;
	background-image: url(./img/entlist.jpg);
	background-repeat: no-repeat;
	background-position: left 5px;
	line-height: 20px;
	padding-left: 15px;
	padding-bottom: 8px;
	margin: 5px;
}
#entrylist dd {
	margin-left: 15px;
	margin-bottom: 8px;
	font-size: 11px;
	color: #757575;
	line-height: 120%;
}
/* 記事スタイル */
.txt-border {
	background-image: url(img/dott.gif);
	line-height: 22px;
	font-size: 13px;
	margin: 10px;
	padding: 0px;
	background-position: 0px 5px;
}
.txt-border p {
	line-height: 22px;
	font-size: 13px;
}
.txt-line  {
	border: 2px solid #CCCCCC;
}
.txt-yellowback {
	background-color: #FFF9DF;
	border: 2px solid #CC0000;
}
.txt-grayback {
	border: 1px solid #D9D9D9;
	background-color: #F5F5F5;
}
.txt-colorback {
	border:solid 1px #FFB380;
	background-color: #FFF2DF;
}
.txt-frame{
	border:solid 2px #CCCCCC;	
}
.txt-colorframe{
	border:solid 2px #CC0000;
}
.txt-rndbox .top{
	height:15px;
	background-image: url(./img/round.gif);
	background-repeat: no-repeat;
	background-position: left top;
}
.txt-rndbox .body{
	border-left:solid 1px #B4B4B4;
	border-right:solid 1px #B4B4B4;
	padding:10px 30px;
}
.txt-rndbox .bottom{
	height:15px;
	background-image: url(./img/round.gif);
	background-repeat: no-repeat;
	background-position: left bottom;
}
.txt-decbox1 {
	background-image: url(./img/dec1_body.gif);
	background-repeat: repeat-y;
}
.txt-decbox1  .top{
	height:50px;
	background-position: left top;
	background-image: url(./img/decbox1.gif);
	background-repeat: no-repeat;
	padding-top: 30px;
	padding-right: 50px;
	padding-left: 50px;
	font-size: 30px;
}
.txt-decbox1  .body{
	padding-top: 5px;
	padding-right: 50px;
	padding-bottom: 0px;
	padding-left: 50px;
}
.txt-decbox1  .bottom{
	height:70px;
	background-image: url(./img/decbox1.gif);
	background-repeat: no-repeat;
	background-position: left bottom;
}
.txt-decbox2 {
	background-image: url(./img/dec2_body.gif);
	background-repeat: repeat-y;
}
.txt-decbox2  .top{
	height:40px;
	background-image: url(./img/decbox2.gif);
	background-repeat: no-repeat;
	background-position: left top;
	padding-top: 40px;
	padding-right: 50px;
	padding-left: 50px;
	font-size: 30px;
}
.txt-decbox2  .body{
	padding-top: 5px;
	padding-right: 50px;
	padding-bottom: 0px;
	padding-left: 50px;
}
.txt-decbox2  .bottom{
	height:65px;
	background-image: url(./img/decbox2.gif);
	background-repeat: no-repeat;
	background-position: left bottom;
}
#main .txt-grayback,#main  .txt-colorback,#main .txt-line, #main .txt-frame,#main .txt-colorframe{
	margin-top: 10px;
	margin-bottom: 10px;
	padding: 30px;
}
#main .txt-rndbox, #main .txt-decbox1, #main .txt-decbox2{
	padding:0px;	
}
#main .txt-decbox1 h3,#main .txt-decbox2 h3 ,#main .txt-decbox1 h2,#main .txt-decbox2 h2{
	width: auto;
	padding: 0px;
	position: static;
	background-image: none;
	border: none;
	font-size: 26px;
	text-align: center;
}
#main .txt-decbox1 h3 span, #main .txt-decbox2 h3 span {
	background-image: none;
}
/* 記事スタイル - 色差分 */
.txt-colorback {
	border:solid 1px #FFB380;
	background-color: #FFF2DF;
}
.txt-colorframe{
	border:solid 2px #CC0000;
}
#main .txt-decbox1 h3,#main .txt-decbox2 h3 ,#main .txt-decbox1 h2,#main .txt-decbox2 h2{
	color:#333;
	background-color:#FFF;
	line-height:140%;
}

.hd{
	color: #333;
	text-decoration:none;
}
/* サイドメニュー */
#menu ul,#rmenu ul {
	list-style-type: none;
	list-style-image: none;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0px;
	margin-left: 0;
	padding: 0px;
	border: 1px solid #FFFFFF;
}
#menu  li,#rmenu li {
	list-style-type: none;
	list-style-image: none;
	margin: 0px;
	display: block;
	_display:inline;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFFFFF;
	padding: 0px;
}
#menu h4 ,#rmenu h4 ,.menutitle {
	line-height: 35px;
	background-color:#ffffff;
/*	background-image: url(img/menu_h4.jpg); */
	height: 35px;
	border: 1px solid #000;
	font-size:14px;
	color: #000;
	text-align: center;
	text-align: leftr;
	padding: 6px 0px 6px 0px;
	overflow: hidden;
}
#menu .menubox, #rmenu .menubox {
	margin-bottom: 15px;
	background-color: #FFFFFF;
	padding: 4px;
	_padding: 4px;
}
#menu li a ,#rmenu li a{
	line-height: 14px;
	display: block;
	font-size: 13px;
	text-decoration: none;
	background-image: url(img/menu_bg.gif);
	background-repeat: no-repeat;
	background-position: 5px center;
	background-color: #FFFFFF;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0px;
	margin-left: 0;
	padding-top: 6px;
	padding-right: 6px;
	padding-bottom: 6px;
	padding-left: 20px;
	_padding-top: 2px;
	_padding-bottom: 2px;
	color: #454545;
}
*:first-child+html #menu .menubox,*:first-child+html #rmenu .menubox {
	padding:4px;
}
*:first-child+html #menu li a,*:first-child+html #rmenu li a{ 
	padding-top: 2px;
	padding-bottom: 2px;
}
#menu li a:hover ,#rmenu li a:hover{
	background-color: #A7C9E4;
	color: #cc0000;
}
#menu li.l2 a ,#rmenu li.l2 a {
	padding-left: 32px;
	background-image: url(./img/menu_l2.gif);
	background-position: 18px center;
	font-size: 11px;
}
#menu li.l2, #menu li.l3,#rmenu li.l2, #rmenu li.l3 {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 1px;
	padding-left: 0px;
	background-image: url(img/menu_line.gif);
	background-position: left bottom;
	font-size: 11px;
}
#menu li.l3 a ,#rmenu li.l3 a {
	background-position: 40px 10px;
	padding-left: 55px;
	background-image: url(./img/menu_l2.gif);
	font-size: 11px;
}
#newEntry   li   a,#newEntry  li a:hover {
	background-image: url(img/newtext.gif);
	padding-left: 30px;
	background-position: 10px center;
}
#menu #newEntry li, #rmenu #newEntry li {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	padding-bottom: 1px;
	background-image: url(./img/menu_line.gif);
	background-position: left bottom;
}
.menubox {
	width: auto;
	background-color: #EFEFEF;
}
.menubox2 {
	margin-bottom:15px;
}
#submenu span{
	display:block;
	margin:2px 0;
}
#submenu span img{
	display:block;
	margin:0;
	padding:0;
}

#searchresult{
	padding:15px;
}
#searchresult dt{
	background-image: url(img/entlist.jpg);
	background-repeat: no-repeat;
	background-position: left center;
	margin-top:15px;
	font-size:14px;
	padding-left:16px;
}
#searchresult dd{
	margin:0px;
	line-height:130%;
	font-size:13px;
}
#linklist {
	padding: 15px;
}
#linklist dt {
	font-size: 14px;
	font-weight: bold;
	background-image: url(./img/entlist.jpg);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 18px;
}
#linklist dd {
	padding-left: 18px;
	margin-left: 0px;
	margin-bottom: 10px;
}
/* フリースペース */
.grayline{
	border: 1px solid #CCCCCC;
}
#main .grayline{
	padding:10px;
	margin-bottom:15px;
}
#menu .grayline{
	font-size:90%;
	padding:8px;
	margin-bottom:15px;
}
/* ブログモード */
.blog {
	margin-bottom: 30px;
}
.blog .text {
	padding: 15px;
}
.blog  .title  a{
	color:#FFF;
	text-decoration:none;
}
.blog  .title  a:hover {
	color: #CC0000;
	text-decoration: underline;
}
.blog  .detail {
	font-size: 15px;
	text-align: left;
	padding-right: 15px;
	padding-left: 15px;
	color: #666666;
	line-height: 30px;
	padding-top: 10px;
	border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #CCC;
}
.blog  .more  {
	float: right;
	padding-left: 15px;
	background-image: url(img/entlist.jpg);
	background-repeat: no-repeat;
	background-position: left center;
	font-weight: bold;
}
.blog .date {
	background-image: url(img/calender.jpg);
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 22px;
	padding-left: 30px;
	height: 22px;
	font-weight: bold;
}
.blog .plist {
	margin-right: 3px;
	margin-left: 3px;
}
#container{
	width:960px;
	background-image:none;
	background-color:#FFFFFF;
	padding:0px;
}
#topmenu{
	width:100%;
	_width:100%;
}
.topmenu_inner{
width:960px;
margin:0 auto;
}
#main{
	width:710px;
}
#menu{
	width:200px;
}
#contents.pcol1 {
	padding-right: 40px;
	padding-left: 40px;
	padding-bottom: 0px;
	background-image:none;
}
#main.pcol1 ,#threebox.pcol1,#menu.pcol1,#rmenu.pcol1{
	float:none;
	width: auto;
}
#menu.pcol1 ul,#rmenu.pcol1 ul {
	list-style-type: none;
	list-style-image: none;
	margin:0px;
	padding: 0px;
	border:none;
}
#menu.pcol1 li,#rmenu.pcol1 li {
	list-style-type: none;
	list-style-image: none;
	margin: 0px;
	display: inline;
	background-image: url(img/line.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 6px;
	border:none;
}
#menu.pcol1  #newEntry,#rmenu.pcol1 #newEntry {
	padding-top: 10px;
	padding-right: 15px;
	padding-bottom: 10px;
	padding-left: 15px;
	margin: 0px;
}
#menu.pcol1 h4 ,#rmenu.pcol1 h4 ,#menu.pcol1 .menutitle ,#rmenu.pcol1 .menutitle {
	line-height: 120%;
	font-size:14px;
	color: #333333;
	text-align: left;
	background-image:none;
	margin-bottom:5px;
}
#menu.pcol1 .menubox, #rmenu.pcol1 .menubox {
	margin-bottom: 5px;
	background-color:none;
	background-color: #FFF;
}
#menu.pcol1 li a ,#rmenu.pcol1 li a{
	line-height: 16px;
	font-size: 12px;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0px;
	margin-left: 0;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	padding-left: 5px;
	color: #484848;
	background-image:none;
	display:inline;
}
#menu.pcol1 li a:hover ,#rmenu.pcol1 li a:hover{
	color: #cc0000;
	background-color:#FFF;
}
#menu.pcol1 div{
	background-image:none;
}

body{font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana,Arial, Helvetica, sans-serif;font-weight:normal;}
h1,h2,h3,h4,h5,h6{font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana,Arial, Helvetica, sans-serif;font-weight:bold;}
.rank1,.rank2,.rank3,.rank4,.rank5,.point,.point1,.point2,.point3,.point4,.point5{font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana,Arial, Helvetica, sans-serif;font-weight:bold;}
#text1,#text2,#text3,#text4,#text5,#text6,#text7,#text8,#text9,#text10{font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana,Arial, Helvetica, sans-serif;font-weight:normal;}

/*サイド広告バナー*/
#ad_left{
width:200px;
position:absolute;
top:0;
left:-200px;
background:#00aff1;/*広告エリア背景色*/
text-align:center;
}
#ad_right{
width:200px;
position:absolute;
top:0;
right:-200px;
background:#00aff1;/*広告エリア背景色*/
text-align:center;
}
.ad_close {
position: absolute;
top: 10px;
right: 10px;
font-size: 18px;
padding: 4px 0;
line-height: 1;
z-index: 9999999;
background:#888;
color:#fff;
width: 26px;
height: 26px;
box-sizing: border-box;
text-align: center;
border-radius:50%;
}
.ad_open {
position: absolute;
top: 10px;
right: 10px;
font-size: 12px;
padding: 6px 10px;
line-height: 1;
z-index: 9999999;
background:#fff;
border:1px solid #888;
color:#888;
width: 90%;
box-sizing: border-box;
text-align: center;
display:none;
}
.btn a{
display:block;
background:#ffae00;/*ボタンの色*/
color:#fff;
text-decoration:none;
padding:10px;
text-align:center;
border-radius:6px;
margin:10px 10px 50px;
font-size: 13px;
}
/*サイドエリア バナー固定*/
#menu .fixed {
  position: fixed;
  top: 20px;
}
body,footer,#footer,#footer > div{font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana,Arial, Helvetica, sans-serif;font-weight:normal;}
h1,h2,h3,h4,h5,h6,.title,dt,h3 > span,h4 > span,h5 > span,h6 > span,.title > span,div[id$="menu"] h4,div[id$="menu"] .title,#indexlist .title{font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana,Arial, Helvetica, sans-serif !important;font-weight:bold;}
#entrylist h4,#entrylist h4::before{font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana,Arial, Helvetica, sans-serif;font-weight:normal;}
.rank1,.rank2,.rank3,.rank4,.rank5,.rank6,.rank7,.rank8,.rank9,.rank10,.point,.point1,.point2,.point3,.point4,.point5,.point6,.point7,.point8,.point9,.point10{font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana,Arial, Helvetica, sans-serif !important;font-weight:bold;}
#text1,#text2,#text3,#text4,#text5,#text6,#text7,#text8,#text9,#text10,#space1,#space2{font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka", Verdana,Arial, Helvetica, sans-serif;font-weight:normal;}

table.ebnzrs {
  table-layout: fixed;
  border-collapse: collapse;
  width: 100%; height: 133px
}

table.ebnzrs td {
  padding: 10px;
  background-color: #FFFFFF;
  text-align: center;
}

table.ebnzrs th.colh {
  padding: 10px;
  background-color: #D2D2D2;
  color: #000;
}

table.ebnzrs,
table.ebnzrs td,
table.ebnzrs th {
  border: solid 2px #828282;
}

#main h4.w_cal_header {
  padding: 0.5em;
  color: white;
  background: #528cf7;
  border-left: solid 12px #073866;
  line-height: 24px;
  padding-left: 16px;
  padding-top:12px;
}

.w_cal_readonly{
  background-color: lightgray;
}

.w_cal_input_head {
  display: inline-block;
  text-align: center;
  background-color:#4DAEE9;
  color:white;
  width:100px;
  margin: 6px;
  vertical-align: middle;
}

.w_cal_input_value {
  height: 22px;
  vertical-align: middle;
  margin-right: 4px;
  text-align: center;
  font-size: 16px;
}

.w_cal_weight_head {
  display: inline-block;
  text-align: center;
  background-color:#FF9900;
  width:100px;
  margin: 6px;
  vertical-align: middle;
}

.w_cal_big {
  height:50px;
  line-height: 50px;
  max-width: 260px;
  font-size: 16px;
}

.w_cal_big_value {
  height:44px;
  vertical-align: middle;
  margin-right: 4px;
  text-align: center;
  font-size: 16px;
}

.w_cal_material_image {
  margin-top:15px;
  float: right;
  width:50%;
}

.w_cal_float {
  float: left;
}

.w_cal_clear {
  clear:both;
}

.w_cal_right {
  text-align: right;
}

.hidden {
  display:none;
}

.cylinder_cal p {
  margin-top:7px;
  margin-bottom:7px;
}

.cylinder_cal sub {
  vertical-align: baseline;
}

.cylinder_cal form {
  margin-left:80px;
}

.cylinder_cal .step_header {
  margin-top: 25px;
}

.cylinder_cal .radio_group {
  padding: 0 8px 0 8px;
  background-color: white;
  display: inline-block;
}

.cylinder_cal .radio {
  margin-right: 15px;
  white-space: nowrap;
}

.cylinder_cal .radio span {
  vertical-align: middle;
}

.cylinder_cal .radio input {
  margin: 0;
}

.cylinder_cal .formula {
  display: inline-block;
  border:1px dashed;
  background-color:#FFFFCC;
  padding: 5px 20px 5px 20px;
  margin: 6px;
}

.cylinder_cal .p_input {
  margin: 6px;
}

.cylinder_cal .error {
  margin: 6px;
  color:red;
}

.cylinder_cal .readonly{
  background-color: lightgray;
}

.cylinder_cal .formula_head {
  width:7em;
  display: inline-block;
}

.cylinder_cal .input_head {
  display: inline-block;
  text-align: center;
  background-color:#4DAEE9;
  color:white;
  width:12em;
  margin: 6px;
  vertical-align: middle;
}

.cylinder_cal .input_value {
  height: 22px;
  vertical-align: middle;
  margin-right: 4px;
  text-align: center;
  font-size: 16px;
}

.cylinder_cal .output_head {
  display: inline-block;
  text-align: center;
  background-color:#FF9900;
  width:12em;
  margin: 6px;
  vertical-align: middle;
}

.cylinder_cal .output_big {
  width:13.5em;
}


/* 複合形状の断面２次モーメントツールスタイル */

.sec_tool1 .readonly{
  background-color: lightgray;
}

.sec_tool1 table {
  border-collapse: collapse;
}

.sec_tool1 table th,
.sec_tool1 table td {
  border: 1px solid #000;
}

.sec_tool1 th,
.sec_tool1 td {
  text-align: center;
}

.sec_tool1 .p_button {
  margin-top:10px;
  margin-bottom: 15px;
}

.sec_tool1 .div_output {
  margin-top:15px;
  margin-bottom: 15px;
}

.sec_tool1 .output_head {
  font-style: italic;
  display: inline-block;
  text-align: center;
  background-color:#FF9900;
  width:4em;
  margin: 6px;
  vertical-align: middle;
  height:30px;
  line-height:30px;
}

.sec_tool1 .output_value {
  height: 24px;
  vertical-align: middle;
  margin-right: 4px;
  text-align: center;
  font-size: 16px;
}

.sec_tool1 .scroll_x {
  overflow-x: auto;
  white-space: nowrap;
}

.sec_tool1 .scroll_x table {
  width:auto;
}

.sec_tool1 .head_th {
  min-width: 50px;
}

.sec_tool1 .small_th {
  min-width: 70px;
}

.sec_tool1 .big_th {
  min-width: 110px;
}

.sec_tool1 .colh {
  color:white;
  background-color: #44546a;
}

.sec_tool1 .rowh1 {
  background-color: #00b050;
}

.sec_tool1 .rowh2 {
  background-color: #ffc000;
}

.sec_tool1 .rowh3 {
  background-color: #00b0f0;
}

.sec_tool1 .rowh {
  background-color: #fff2cc;
}


/* はりのたわみ計算ツールスタイル */

.haritawami .hidden {
  display:none !important;
}

.haritawami .step_header {
  margin-top: 25px;
}

.haritawami .step {
  color: #FF0000
}

.haritawami .text_center {
  text-align : center;
}

.haritawami .strong {
  font-weight : bold;
}

.haritawami .float_left {
  float: left;
}

.haritawami .clear {
  clear: both;
}

.haritawami .clickable {
  cursor: pointer;
}

.haritawami .formula1 {
  display: inline-block;
  border:1px dashed;
  background-color:#FFFFCC;
  padding: 5px 20px 5px 20px;
  margin: 6px 6px 6px 12px;
}

.haritawami .formula2 {
  display: inline-block;
  border:1px dashed;
  background-color:#FFFFCC;
  padding: 5px 20px 5px 20px;
  width: 90%;
}

.haritawami .readonly {
  background-color: lightgray;
}

.haritawami .formula_head {
  width:7em;
  display: inline-block;
}

.haritawami .input_head_m {
  display: inline-block;
  text-align: center;
  width: 12em;
  margin: 6px 6px 6px 0;
  vertical-align: middle;
}

.haritawami .input_head {
  display: inline-block;
  text-align: center;
  width:12em;
  margin: 6px 6px 6px 0;
  vertical-align: middle;
}

.haritawami .head_color_1 {
  background-color:#C65911;
  color:white;
}

.haritawami .head_color_2 {
  background-color:#4DAEE9;
  color:white;
}

.haritawami .head_color_3 {
  background-color:#00FF00;
}

.haritawami .head_color_4 {
  background-color:#FF9900;
}

.haritawami .head_color_5 {
  background-color:#D9D9D9;
}

.haritawami .input_value {
  height: 22px;
  vertical-align: middle;
  margin-right: 4px;
  text-align: center;
  font-size: 16px;
}

.haritawami .f_mr {
  margin-right: 15px;
}

.haritawami .step2_left{
  height : 400px;
}

.haritawami .step2_right{
  height : 400px;
}

.haritawami .step2_right table{
  width : 50%;
}

.haritawami select {
  height:28px;
}

.haritawami .danmen {
  table-layout: auto;
  border-collapse: collapse;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border: none;
}

.haritawami .danmen img {
  cursor: pointer;
}

.haritawami .danmen td {
  text-align: center;
  border: none;
  width: 33%;
}

.haritawami .danmen .color_any {
  background-color: #FFCCFF;
}

.haritawami .any_image {
  margin-left: 9px;
}

.haritawami .any_description {
  vertical-align: middle;
  margin-top: 10px;
}

.haritawami .text_small{
  font-size:10px;
  line-height: 16px;
}

.haritawami .img_center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.haritawami .error {
  margin: 6px;
  color:#FF0000;
}

.haritawami table.tbl_swht {
  table-layout: auto;
  border-collapse: collapse;
}

.haritawami table.tbl_swht {
  width: 100%;
}

.haritawami table.tbl_swht td {
  padding: 5px;
  background-color: #FFFFFF;
}

.haritawami table.tbl_swht,
.haritawami table.tbl_swht td,
.haritawami table.tbl_swht th {
  border: solid 1px #C0C0C0;
}

.haritawami table.tbl_swht th {
  text-align: center;
}

.haritawami table.tbl_swht th:nth-child(1) {
  width: 24px;
  line-height: 20px;
}

.haritawami .border {
  border: solid 1px #C0C0C0;
}

.haritawami table.tbl_foyj {
  table-layout: auto;
  border-collapse: collapse;
}

.haritawami table.tbl_foyj {
  width: 100%;
}

.haritawami table.tbl_foyj td {
  padding: 5px;
  background-color: #FFFFFF;
}

.haritawami table.tbl_foyj,
.haritawami table.tbl_foyj td,
.haritawami table.tbl_foyj th {
  border: solid 1px #C0C0C0;
}

#ad_rondom{
width: 200px;
text-align: center;
}

/* 座屈計算ツールスタイル */

.zakutsu .hidden {
  display:none !important;
}

.zakutsu .step_header {
  margin-top: 25px;
}

.zakutsu .step {
  color: #FF0000
}

.zakutsu .text_center {
  text-align : center;
}

.zakutsu .strong {
  font-weight : bold;
}

.zakutsu .float_left {
  float: left;
}

.zakutsu .clear {
  clear: both;
}

.zakutsu .clickable {
  cursor: pointer;
}

.zakutsu .formula1 {
  display: inline-block;
  border:1px dashed;
  background-color:#FFFFCC;
  padding: 5px 20px 5px 20px;
  margin: 6px 6px 6px 12px;
}

.zakutsu .formula2 {
  display: inline-block;
  border:1px dashed;
  background-color:#FFFFCC;
  padding: 5px 20px 5px 20px;
  width: 90%;
}

.zakutsu .readonly {
  background-color: lightgray;
}

.zakutsu .formula_head {
  width:7em;
  display: inline-block;
}

.zakutsu .input_head_m {
  display: inline-block;
  text-align: center;
  width: 12em;
  margin: 6px 6px 6px 0;
  vertical-align: middle;
}

.zakutsu .input_head {
  display: inline-block;
  text-align: center;
  width:12em;
  margin: 6px 6px 6px 0;
  vertical-align: middle;
}

.zakutsu .head_color_1 {
  background-color:#C65911;
  color:white;
}

.zakutsu .head_color_2 {
  background-color:#4DAEE9;
  color:white;
}

.zakutsu .head_color_3 {
  background-color:#00FF00;
}

.zakutsu .head_color_4 {
  background-color:#FF9900;
}

.zakutsu .head_color_5 {
  background-color:#D9D9D9;
}

.zakutsu .input_value {
  height: 22px;
  vertical-align: middle;
  margin-right: 4px;
  text-align: center;
  font-size: 16px;
}

.zakutsu .f_mr {
  margin-right: 15px;
}

.zakutsu .step2_left{
  height : 400px;
}

.zakutsu .step2_right{
  height : 400px;
}

.zakutsu .step2_right table{
  width : 50%;
}

.zakutsu select {
  height:28px;
}

.zakutsu .danmen {
  table-layout: auto;
  border-collapse: collapse;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border: none;
}

.zakutsu .danmen img {
  cursor: pointer;
}

.zakutsu .danmen td {
  text-align: center;
  border: none;
  width: 33%;
}

.zakutsu .danmen .color_any {
  background-color: #FFCCFF;
}

.zakutsu .any_image {
  margin-left: 9px;
}

.zakutsu .any_description {
  vertical-align: middle;
  margin-top: 10px;
}

.zakutsu .text_small{
  font-size:10px;
  line-height: 16px;
}

.zakutsu .img_center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.zakutsu .error {
  margin: 6px;
  color:#FF0000;
}

.zakutsu table.tbl_swht {
  table-layout: auto;
  border-collapse: collapse;
}

.zakutsu table.tbl_swht {
  width: 100%;
}

.zakutsu table.tbl_swht td {
  padding: 5px;
  background-color: #FFFFFF;
}

.zakutsu table.tbl_swht,
.zakutsu table.tbl_swht td,
.zakutsu table.tbl_swht th {
  border: solid 1px #C0C0C0;
}

.zakutsu table.tbl_swht th {
  text-align: center;
}

.zakutsu table.tbl_swht th:nth-child(1) {
  width: 24px;
  line-height: 20px;
}

.zakutsu .border {
  border: solid 1px #C0C0C0;
}

.zakutsu table.tbl_foyj {
  table-layout: auto;
  border-collapse: collapse;
}

.zakutsu table.tbl_foyj {
  width: 100%;
}

.zakutsu table.tbl_foyj td {
  padding: 5px;
  background-color: #FFFFFF;
}

.zakutsu table.tbl_foyj,
.zakutsu table.tbl_foyj td,
.zakutsu table.tbl_foyj th {
  border: solid 1px #C0C0C0;
}

/* 断面二次モーメント計算ツールスタイル */

.moment .hidden {
  display:none !important;
}

.moment .step_header {
  margin-top: 25px;
}

.moment .step {
  color: #FF0000
}

.moment .text_center {
  text-align : center;
}

.moment .strong {
  font-weight : bold;
}

.moment .float_left {
  float: left;
}

.moment .clear {
  clear: both;
}

.moment .clickable {
  cursor: pointer;
}

.moment .formula {
  display: inline-block;
  border:1px dashed;
  background-color:#FFFFCC;
  padding: 5px 20px 5px 20px;
  margin: 6px 6px 6px 12px;
}

.moment .readonly {
  background-color: lightgray;
}

.moment .formula_head {
  width:7em;
  display: inline-block;
}

.moment .input_head_m {
  display: inline-block;
  text-align: center;
  width: 12em;
  margin: 6px 6px 6px 0;
  vertical-align: middle;
}

.moment .input_head {
  display: inline-block;
  text-align: center;
  width:12em;
  margin: 6px 6px 6px 0;
  vertical-align: middle;
}

.moment .head_color_1 {
  background-color:#C65911;
  color:white;
}

.moment .head_color_2 {
  background-color:#4DAEE9;
  color:white;
}

.moment .head_color_3 {
  background-color:#00FF00;
}

.moment .head_color_4 {
  background-color:#FF9900;
}

.moment .head_color_5 {
  background-color:#D9D9D9;
}

.moment .input_value {
  height: 22px;
  vertical-align: middle;
  margin-right: 4px;
  text-align: center;
  font-size: 16px;
}

.moment .text_small{
  font-size:10px;
  line-height: 16px;
}

.moment .img_center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.moment .error {
  margin: 6px;
  color:#FF0000;
}

.moment .middle {
  vertical-align: middle;
  display: inline-block;
}

.moment .danmen {
  text-align: center;
  border-collapse:separate;
  border-spacing: 8px;
  border: none;
}

.moment .danmen td {
  width: 25%;
}

.moment .color_any img {
  max-width: 40%;
}

.moment .color_any span {
  max-width: 55%;
  text-align: left;
}


#searchbox input {
  border-radius: 15px;
  margin: 0;
}

/* 角度計算ツールスタイル */

/* まずは .triangle-tool 内の基本レイアウト */
.triangle-tool {
  /* bodyタグに当てていたような基本設定 */
  margin: 20px;
  background-color: #f9f9f9;
  line-height: 1.6;

  /* フォント設定などはお好みで */
  font-family: sans-serif;
}

/* 3つのセクションを横並びにする */
.triangle-tool .triangle-container {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;  /* 均等配置 */
  width: 690px;                    /* 横幅690px */
  margin: 0 auto;                  /* 中央寄せ */
}

/* 各セクションのカード風デザイン */
.triangle-tool .formula-section {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 10px;
  box-shadow: 0 2px 3px rgba(0,0,0,0.1);

  /* 幅を固定（3つ横並びに収まるように） */
  width: 200px;
}

/* 画像のスタイル */
.triangle-tool .triangle-img {
  width: 70%;
  height: auto;
  display: block;
  margin: 0 auto 10px;
}

/* 入力欄 */
.triangle-tool .input-section {
  text-align: center;
  margin-bottom: 10px;
}

.triangle-tool .input-section label {
  display: inline-block;
  margin: 5px 10px;
}

.triangle-tool .input-section input {
  width: 80px;
  padding: 5px;
  text-align: right;
}

.triangle-tool .input-section button {
  margin: 10px 0;
  padding: 5px 15px;
  cursor: pointer;
  background: #f0f0f0;
  border: 1px solid #ccc;
  border-radius: 3px;
}

/* = の位置を揃えるためのテーブルレイアウト */
.triangle-tool .theta-table {
  margin: 0 auto;
  border-collapse: collapse;
  text-align: left;
  /* ★ 罫線を非表示に ★ */
  border: none;
}

.triangle-tool .theta-table td {
  padding: 2px 5px;
  vertical-align: middle;
  /* ★ 罫線を非表示に ★ */
  border: none;
}

/* 出力欄のデザイン */
.triangle-tool .output {
  display: inline-block;
  min-width: 70px;
  padding: 5px;
  margin: 3px 0;
  background-color: #e7f7ff;
  border: 1px solid #ccc;
  border-radius: 5px;
  text-align: right;
}

/* 計算式の説明ボックス */
.triangle-tool .formula-explanation-box {
  margin-top: 15px;
  padding: 10px 15px;
  background: #FFFFCC;
  border: 1px dashed #ccc;
  border-radius: 5px;
}

.triangle-tool .explanation-title {
  font-weight: bold;
  color: #666;
  margin-bottom: 8px;
  display: inline-block;
}

.triangle-tool .formula-explanation-box p {
  margin: 8px 0;
  line-height: 1.4;
}

/* 強調表示用の枠 */
.triangle-tool .formula-value {
  display: inline-block;
  margin: 2px 4px;
  padding: 3px 6px;
  background-color: #eef2f2;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-weight: bold;
  color: #333;
  min-width: 60px;
  text-align: right;
}

/* 円板たわみ計算ツールスタイル */

.disc_tawami img {
    max-width: 100%;
    height: auto;
}

.disc_tawami .hidden {
  display:none !important;
}

.disc_tawami .step_header {
  margin-top: 25px;
}

.disc_tawami .step {
  color: #FF0000
}

.disc_tawami .text_center {
  text-align : center;
}

.disc_tawami .strong {
  font-weight : bold;
}

.disc_tawami .float_left {
  float: left;
}

.disc_tawami .clear {
  clear: both;
}

.disc_tawami .clickable {
  cursor: pointer;
}

.disc_tawami .formula1 {
  display: inline-block;
  border:1px dashed;
  background-color:#FFFFCC;
  padding: 5px 20px 5px 20px;
  margin: 6px 6px 6px 12px;
}

.disc_tawami .formula2 {
  display: inline-block;
  border:1px dashed;
  background-color:#FFFFCC;
  padding: 5px 20px 5px 20px;
  width: 90%;
}

.disc_tawami .readonly {
  background-color: lightgray;
}

.disc_tawami .formula_head {
  width:7em;
  display: inline-block;
}

.disc_tawami .input_head_m {
  display: inline-block;
  text-align: center;
  width: 12em;
  margin: 6px 6px 6px 0;
  vertical-align: middle;
}

.disc_tawami .input_head {
  display: inline-block;
  text-align: center;
  width:12em;
  margin: 6px 6px 6px 0;
  vertical-align: middle;
}

.disc_tawami .head_color_1 {
  background-color:#C65911;
  color:white;
}

.disc_tawami .head_color_2 {
  background-color:#4DAEE9;
  color:white;
}

.disc_tawami .head_color_3 {
  background-color:#00FF00;
}

.disc_tawami .head_color_4 {
  background-color:#FF9900;
}

.disc_tawami .head_color_5 {
  background-color:#D9D9D9;
}

.disc_tawami .input_value {
  height: 22px;
  vertical-align: middle;
  margin-right: 4px;
  text-align: center;
  font-size: 16px;
}

.disc_tawami .f_mr {
  margin-right: 15px;
}

.disc_tawami .step2_left{
  height : 400px;
}

.disc_tawami .step2_right{
  height : 400px;
}

.disc_tawami .step2_right table{
  width : 50%;
}

.disc_tawami select {
  height:28px;
}

.disc_tawami .danmen {
  table-layout: auto;
  border-collapse: collapse;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border: none;
}

.disc_tawami .danmen img {
  cursor: pointer;
}

.disc_tawami .danmen td {
  text-align: center;
  border: none;
  width: 33%;
}

.disc_tawami .danmen .color_any {
  background-color: #FFCCFF;
}

.disc_tawami .any_image {
  margin-left: 9px;
}

.disc_tawami .any_description {
  vertical-align: middle;
  margin-top: 10px;
}

.disc_tawami .text_small{
  font-size:10px;
  line-height: 16px;
}

.disc_tawami .img_center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.disc_tawami .error {
  margin: 6px;
  color:#FF0000;
}

.disc_tawami table.tbl_swht {
  table-layout: auto;
  border-collapse: collapse;
}

.disc_tawami table.tbl_swht {
  width: 100%;
}

.disc_tawami table.tbl_swht td {
  padding: 5px;
  background-color: #FFFFFF;
}

.disc_tawami table.tbl_swht,
.disc_tawami table.tbl_swht td,
.disc_tawami table.tbl_swht th {
  border: solid 1px #C0C0C0;
}

.disc_tawami table.tbl_swht th {
  text-align: center;
}

.disc_tawami table.tbl_swht th:nth-child(1) {
  width: 24px;
  line-height: 20px;
}

.disc_tawami .border {
  border: solid 1px #C0C0C0;
}

.disc_tawami table.tbl_foyj {
  table-layout: auto;
  border-collapse: collapse;
}

.disc_tawami table.tbl_foyj {
  width: 100%;
}

.disc_tawami table.tbl_foyj td {
  padding: 5px;
  background-color: #FFFFFF;
}

.disc_tawami table.tbl_foyj,
.disc_tawami table.tbl_foyj td,
.disc_tawami table.tbl_foyj th {
  border: solid 1px #C0C0C0;
}

.step_2_ttl {
    background: #1870c0;
    color: #fff;
    padding: 2px 5px;
}

.tooltip {
  position: relative;
  display: inline-block;
  cursor: pointer;
}

.tooltip-text {
  visibility: hidden;
  width: 250px;
  background-color: #333;
  color: #fff;
  text-align: left;
  padding: 8px;
  border-radius: 4px;
  
  /* ツールチップの位置 */
  position: absolute;
  bottom: 125%; /* トリガーの上に表示 */
  left: 50%;
  transform: translateX(-50%);
  
  /* アニメーション用 */
  opacity: 0;
  transition: opacity 0.3s;

  line-height: 1.4;
  font-size: 0.9em;
}

.tooltip-text::after {
  content: "";
  position: absolute;
  top: 100%; /* ツールチップの下に配置 */
  left: 50%;
  transform: translateX(-50%);
  border-width: 5px;
  border-style: solid;
  border-color: #333 transparent transparent transparent; /* 矢印を作成 */
}

.tooltip:hover .tooltip-text {
  visibility: visible;
  opacity: 1;
}


.qusion {
  display: inline-flex;
  border-radius: 50%;
  background: #4DAEE9;
  color: #fff;
  height: 1.4em;
  width: 1.4em;
  line-height: 1;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: bold;
  cursor: pointer;
}

.step_main_img {max-width: 500px;}

.step_main_img img {
    max-width: 100%;
    height: auto;
}

 /*連続梁*/
.haritawami .input_head,
.haritawami .input_head_m{
width: 170px;
}

/* =========================================
   ★ ここからレスポンシブ対応を追加 ★
   ========================================= */
@media (max-width: 700px) {
  /* 3つ並べる余裕がなくなるため、折り返しを許可し幅を100%に */
  .triangle-tool .triangle-container {
    width: 100%;
    flex-wrap: wrap;        /* 折り返しを許可 */
    justify-content: center;
  }

  /* それぞれのセクションを横幅いっぱい使う */
  .triangle-tool .formula-section {
    width: 80%;            /* お好みで 80% 等に調整 */
    margin: 10px auto;     /* 中央寄せ */
  }
}






/***************************
  * 2023/03/04 追加スタイル
  **************************/

/* 検索ボックスの調整 */
#searchbox .skwd_wrap {
  display: inline-block;
}

#searchbox .skwd_wrap::before {
  position: absolute;
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 3px 0 0 5px;
  background-image: url(./img/searchbutton02.png);
  background-size: contain;
  background-repeat: no-repeat ;
  vertical-align: middle;
}

#searchbox .skwd {
  border: 1px solid #333;
  padding-left: 25px;
  font-size: 12px;
  line-height: 16px;
}

#searchbox .skwd:focus {
    outline: none;
}

#searchbox input[type="submit"] {
  border: 1px solid #333;
  background-color: #264c73;
  margin-left: -20px;
  padding: 1px 12px;
  color: #fff;
  font-size: 12px;
  cursor: pointer;
}

/* カラム幅の調整 */
#searchbox {
  width: 1080px;
  box-sizing: border-box;
}

#container {
  width: 1080px;
  background-color: #fff;
}

#header {
  background-color: #F5F5F5;
}

.topmenu_inner {
  width: 1080px;
}

#topmenu span a {
  background-image: none;
  border-left: 1px solid #fff;
  box-sizing: border-box;
}

#topmenu span:last-child a {
  border-right: 1px solid #fff;
}

#menu {
  width: 320px;
}

#menu ul {
  width: 300px;
  margin: 0 auto;
}

/* バナーローテーションの調整 */
.bnr_rotation_top {
  display: flex;
  justify-content: center;
  padding: 0 14px;
}

/* サイドバーの調整 */
#menu .btn_freemember {
  display: block;
  border: 1px solid #ccc;
  background-color: #ff5404;
  width: 300px;
  margin: 0 auto 10px;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  line-height: 3;
}

#menu h4 {
  margin: 15px 0 5px;
}

#menu a {
  font-size: 12px;
  color: #264C73;
}

#menu li a {
  background-image: none;
  background-color: #f2f2f2;
  margin-bottom: 3px;
  padding-left: 10px;
  color: #264C73;
  line-height: 1.5;
}

#menu li a::before {
  content: "\025b6";
  width: 10px;
  height: 10px;
  margin-right: 10px;
}

#menu .rank_elearning li a,
#menu .new_elearning li a {
  text-align: left;
  line-height: 3;
}

#menu .rank_elearning li a::before,
#menu .new_elearning li a::before {
  display: inline-block;
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 10px;
  vertical-align: middle;
}

#menu .rank_elearning li a::before,
#menu .new_elearning li a::before {
  width: 35px;
  height: 35px;
}

#menu .rank_elearning .rank_1 a::before {
  background-image: url(./img/rank1_a.gif);
}

#menu .rank_elearning .rank_2 a::before {
  background-image: url(./img/rank2_a.gif);
}

#menu .rank_elearning .rank_3 a::before {
  background-image: url(./img/rank3_a.gif);
}


#menu .rank_elearning .rank_4 a::before {
  content: "4位";
}

#menu .rank_elearning .rank_5 a::before {
  content: "5位";
}

#menu .rank_elearning .rank_4 a::before,
#menu .rank_elearning .rank_5 a::before {
  color: #cc0000;
  font-weight: bold;
  text-align: center;
}

#menu .rank_elearning .check_all {
  position: relative;
}

#menu .rank_elearning .check_all a {
  padding: 10px 0 5px 55px;
  text-decoration: none;
  line-height: 1.5;
}

#menu .rank_elearning .check_all a::before {
  background-image: url(./img/img_hagumi.png);
  position: absolute;
  top: 12px;
  left: 10px;
}

#menu .rank_elearning .check_all .highlight {
  color: #cc0000;
  font-weight: bold;
}

#menu .rank_elearning .check_all .triangle_right {
  content: "&#x25B6;";
}

#menu .new_elearning li a::before {
  background-image: url(./img/new.png);
  width: 25px;
  height: 25px;
}

#menu .is_fixed {
  position: fixed;
  top: 0;
  width: 320px;
}

#menu .is_absolute {
  position: absolute;
  bottom: 0;
  width: 320px;
}


.ad_area,
.bnr_area {
  width: 300px;
  margin: 0 auto 10px;
}

.ad_area {
  height: 250px;
}

.float-img {
  margin-left: -100px;
}

.float-img img {
  width: 100%;
}

/* フッターの調整 */
.footer_cta {
  background-color: #D9D9D9;
  text-align: center;
}

.footer_cta a {
  color: #000;
}

.free_lesson {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  font-size: 18px;
  color: #000;
  text-align: center;
}

.free_lesson::before {
  position: absolute;
  left: 15px;
  top: 0;
  content: '';
  display: inline-block;
  width: 200px;
  height: 150px;
  background-image: url(./img/mail_ico.svg);
  background-size: contain;
  background-repeat: no-repeat ;
  transform: rotate(-13deg);
}

.free_lesson p {
  padding: 15px 0;
  text-align: center;
  line-height: 2;
}

.btn-detail {
  display: inline-block;
  margin-bottom: 15px;
  padding: 0 20px;
  border: 1px solid #bbb;
  background-color: #fff;
  text-align: center;
  font-size: 14px;
  text-decoration: none;
}

.btn-detail:hover {
  opacity: 70%;
}

.txt-org {
  color: #ff5404;
}

.txt-bold {
  font-weight: bold
}

#footer {
  position: relative;
  height: auto;
  padding: 20px 0 40px;
  text-align: center;
  color: #fff;
  line-height: 40px;
  z-index: 10;
}

#footermenu {
  display: flex;
  width: 1080px;
  margin: 0 auto;
  justify-content: center;
  gap: 30px;
}

.copyright {
  text-align: center;
}

/***************************
  * 2023/03/16 追加スタイル
  **************************/
/* 広告領域01 */
.cta_wrap:hover {
    background: #efefef;
}
.area_link {
    text-decoration: none;
    /* color: #333; */
}
.area_link:hover {
    color: #333;
}
.cta_inner {
    display: flex;
    border: 5px solid #ccc;
    padding: 15px;
    gap: 20px;
}
.cta_img {
    flex-basis: 160px;
}
.cta_txt {
    flex: 1;
}
.cta_title {
    margin-bottom: 10px;
    padding-left: 10px;
    font-size: 18px;
    font-weight: bold;
    color: #0a8fff;
}
.cta_content {
    color: #333;
    font-size: 14px;
}

/* ページャーデザイン調整 */
#relNavigate {
    text-align: center;
}
.prevlink,
.nextlink {
    display: inline-block;
    border: 1px solid #ccc;
    width: 150px;
    padding: 3px 5px;
    color: #000;
    text-decoration: none;
    text-align: center;
    font-weight: bold;
    font-size: 12px;
    box-sizing: border-box;
}

/* ページ下広告 */
.cta_el {
    border: 5px solid #ccc;
    background-color: #f2f2f2;
    padding: 15px;
    font-size: 14px;
}
.cta_el_title {
    margin-bottom: 10px;
    color: #000;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}
.cta_el_txt {
    margin-bottom: 10px;
}
.cta_el_txt span {
    color: #ff5454;
    font-weight: bold;
}
.cta_el_content {
    display: flex;
    gap: 10px;
}
.cta_el_img {
    flex-basis: 220px;
}
.cta_el_img img {
    width: 100%;
}
.cta_el_nav {
    flex: 1;
}
.cta_el_links {
    display: flex;
    flex-wrap: wrap;
    border: 1px dashed #ccc;
    background: #fff;
    margin: 0 0 10px;
    padding: 5px 10px;
    font-size: 13px;
}
.cta_el_links > li {
    list-style-image: none;
}
.cta_el_links li:not(:last-child)::after {
    content: "?";
}
.cta_el_all {
    text-align: center;
}