@charset "utf-8";

.f16{
	font-size: 16px;
}
.right{
	text-align: right;
}
/* ------------------------------
 下層
------------------------------ */
main {
	box-shadow: 0px 3px 3px rgba(0,0,0,0.2) inset;
	-webkit-box-shadow: 0px 3px 3px rgba(0,0,0,0.2) inset;
	-moz-box-shadow: 0px 3px 3px rgba(0,0,0,0.2) inset;
	background:#fff url(/sp/shared/img/h1_bg.jpg) no-repeat right top;
	background-size: 225px 52px;
	display: block;
	box-sizing: border-box;
	padding: 0 5%;
}
/*article {
	width: 90%;
	margin: 0 auto;
}*/
main h1 {
	padding-top: 15px;
	font-size: 20px;
	font-weight: bold;
	color: #0E3294;
	margin-bottom: 30px;
}
/*
main h2 {
	font-size: 16px;
	color: #0E3294;
	margin: 0 0 20px 0;
	display: block;
}
*/
main .cms_block h2 {
	font-size: 15px;
	position: relative;
	font-weight: bold;
	color: #0E3294;
	border-bottom: solid 2px #0E3294;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

main .cms_block h3 {
	font-size: 15px;
	color: #0b38a2;
	font-weight: bold;
	padding-bottom: 3px;
	margin-bottom: 0.8em;
}

main .cms_block h4 {
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 0;
}

main .cms_block div.top {
	font-size: 16px;
	color: #0E3294;
	margin-bottom: 20px;
}

main .cms_block p {
	margin-bottom: 1em;
}

main > *:last-child:not(article) {
	margin-bottom: 1.6em;
}

.w70L{
	width: 65%;
	float: left;
	margin-right: 5%;
}
.w30R{
	width: 30%;
	float: right;
	text-align: right;
}
.linkblock a{
	width: 100% !important;
	font-size: 14px;
	font-weight: bold;
	color: #333333;
	display: block;
	background:url(/sp/shared/img/arrow.png) no-repeat right center;
	background-size: 23px 23px ;
	padding: 10px 0 ;
	border-bottom: dotted 1px #999999;
}
/* 下部メニュー */
.btmenu p {
	font-size: 15px;
	font-weight: bold;
	padding-bottom: 10px;
	border-bottom: solid 2px #0E3294;
	margin-top: 15px;
}
.btmenu ul li {
	text-align: left;
	border-bottom: dotted 1px #999999;
	font-size: 14px;
	font-weight: bold;
}
.btmenu ul li:last-child {
	border-bottom: none;
}
.btmenu a {
	display: block;
	color: #333333;
	background: url(/sp/shared/img/arrow.png) no-repeat right center;
	background-size: 23px 23px;
	line-height: 23px;
}

.btmenu ul li a {
	font-weight: bold;
	padding: 15px 0;
}


/* ごあいさつ */
.w271{
	width: 271px;
	margin: 0 auto 15px auto;
}

/* お問合せ */
/*
.form p{
	font-size: 13px;
	padding: 10px 0;
	border-top: solid 1px #CCCCCC;
	margin: 7px 0;
	background: #F7F8F9 url(/sp/img/required.jpg) no-repeat 10px center;
	background-size:37px 19px;
	padding-left: 56px;
}
.form p.noreq{
	background: #F7F8F9;
	padding-left: 7px;
}
.form input, .form textarea{
	width: 94%;
	border: solid 1px #CCCCCC;
	padding: 5px 0;
	box-sizing: border-box;
	margin: 0 3%;
}
.form input.c{
	width: auto;
	vertical-align: middle;
	line-height: 0;
}
.status{
	margin: 40px 0 17px 0;
	text-align: center;
}
.status img{
	width: 210px;
}
.confirm{
	text-align: center;
	padding: 20px 0 40px 0;
}
.confirm img{
	width: 168px;
}
.send{
	width: 239px;
	margin: 0 auto;
	padding: 30px 0;
}
.send .backimg{
	width: 64px;
}
.send .sendimg{
	width: 168px;
}
*/

/* ------------------------------
 表組み
------------------------------ */
main .cms_block table {
	width: 100%;
}

main .cms_block table th,
main .cms_block table td {
	display: block;
	padding: 10px;
}

main .cms_block table th {
	font-size: 13px;
	/*border-top: solid 1px #ccc;*/
	/*margin: 7px 0;*/
	background: #F7F8F9;
}

main .cms_block table td {
	border-bottom: solid 1px #ccc;
}

main .cms_block table ul li {
	padding: 10px 0;
	border-bottom: 1px solid #dedede;
}
main .cms_block table ul li:first-child {
	padding-top: 0;
}
main .cms_block table ul li:last-child {
	padding-bottom: 0;
	border: none;
}

main .cms_block table ol li {
	counter-increment: cnt;
}
main .cms_block table ol li:before {
	display: marker;
	content: "(" counter(cnt) ") ";
}

/* ------------------------------
 表組み囲み
------------------------------ */
main .cms_block table.lineBox {
	width: 100%;
	border-collapse: collapse;
}
main .cms_block table.lineBox th,
main .cms_block table.lineBox td {
	display: table-cell;
	padding: 5px;
	border: 1px solid #c9c9c9;
	font-size: 16px;
}
main .cms_block table.lineBox th {
	background-color: #F7F8F9;
}
main .cms_block table.lineBox th.tac,
main .cms_block table.lineBox td.tac {
	text-align: center;
}

/* ------------------------------
 ボックス
------------------------------ */
/* グレーボックス */
main .graybox {
	background: #F7F8F9;
	padding: 15px;
	margin-top: 25px;
}
main .graybox strong {
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 5px;
}

/* ブルーボックス */
main .bluebox {
	padding: 15px;
	background: #ebeff5;
	border-radius: 5px
}

/* メニューボックス */
main .menubox > h2 a {
	color: #0e3294;
	display: block;
	background: url(/sp/shared/img/arrow.png) no-repeat right center;
	background-size: 23px 23px ;
	padding: 0;
	line-height: 23px;
}

/*main .menubox {
	padding: 16px 0;
	border: 1px solid #dcdcdc;
	border-radius: 3px;
}*/

/*main .menubox > h3 {
	color: #313131;
}

main .menubox > h3:before {
	content: url("/shared/img/arrow_c.gif");
	display: inline-block;
	margin-right: 5px;
	vertical-align: middle;
}

main .menubox > h3 a {
	background: none;
	padding-left: 0;
}*/
/*
main .menubox > div {
	width: 400px;
	min-height: 80px;
	border-left: 1px solid #dcdcdc;
}*/

main .csr_btn {
	text-align: center;
}

.w337l,
.w337r {
	text-align: center;
}


/* リンク */
main .cms_link a,
main .menubox .cms_text a {
	width: 100% !important;
	box-sizing: border-box;
	font-size: 14px;
	font-weight: bold;
	color: #333333;
	display: block;
	background: url(/sp/shared/img/arrow.png) no-repeat right center;
	background-size: 23px 23px ;
	padding: 10px 23px 10px 0;
	border-bottom: dotted 1px #999999;
}

/* YouTube*/
main .youtube iframe {
	width: auto;
	height: auto;
}


/* ------------------------------
 新着情報
------------------------------ */
main .cms_block.news h2 a {
	display: block;
	position: absolute;
	top: 0;
	right: 0.5em;
	height: 1.6em;
	font-size: 90%;
	color: #fff;
	background: #0e3294;
	border: none;
	letter-spacing: 0.1em;
	text-decoration: none;
	border-radius: 15px;
	line-height: 1.5;
	padding: 0.1em 1em 0;
}
