@charset "utf-8";

.f16{
	font-size: 16px;
}
.right{
	text-align: right;
}
/* ------------------------------
 下層
------------------------------ */
/*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;
	padding-bottom: 5px;
	margin-bottom: 10px;
}
main h2.title {
    background: url("/sp/shared/img/family_bg_sp.jpg") no-repeat scroll right center / 119px 70px;
    border-bottom: medium none;
    box-sizing: border-box;
    color: #0a238b;
    font-size: 1.13rem;
    font-weight: bold;
    line-height: 70px;
    margin: 0 0 20px;
    text-shadow: 0 0 4px #ffffff;
    width: 100%;
	padding-left:5%;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}
main .cms_block h3 {
	font-size: 15px;
	border-bottom: 2px solid #00b7ef;
	font-weight: bold;
	padding-bottom: 3px;
	margin-bottom: 15px;
}

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;
}
main .lead {
    font-weight: bold;
    margin: 20px 0 15px;
	font-size: 120%;
}
main .cms_image {
	text-align:center;
}
.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 {
    margin: 0 auto 1em;
    width: 90%;
}
.btmenu p {
	font-size: 15px;
	font-weight: bold;
	padding-bottom: 10px;
	border-bottom: solid 2px #00b7ef;
	margin-top: 15px;
}
.btmenu ul li a {
	font-size: 15px;
	padding-bottom: 10px;
	border-bottom: solid 2px #00b7ef;
}
.btmenu ul li ul li {
	text-align: left;
	border-bottom: dotted 1px #999999;
	font-weight: bold;
}
.btmenu ul li ul li a {
	border-bottom: none;
	font-size: 14px;
}

.btmenu ul li:last-child {
	border-bottom: none;
}
.btmenu a {
	display: block;
	color: #333333;
	background: url(/sp/shared/img/arrow_f.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%;
	margin-bottom: 0.5em;
}


main .cms_block table th {
	font-size: 13px;
	/*border-top: solid 1px #ccc;*/
	/*margin: 7px 0;*/
}

main .cms_block table td {
	font-weight: bold;
}

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 .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;
}*/

.cms_text li {
    background: url("/shared/img/house/dot.gif") no-repeat scroll 0 8px;
    padding-left: 10px;
}
.cms_text .tips_list li {
    background: none;
	padding-left:0;
}
main .csr_btn {
	text-align: center;
}

.w337l,
.w337r {
	text-align: center;
}


.tips_list li a {
    background: url("/shared/img/arrow03.gif") no-repeat scroll 0 7px;
    padding-left: 12px;
}
main .cms_image a[rel="popbox"] {
    display: inline-block;
    position: relative;
}
main .cms_image a[rel="popbox"]::after {
    bottom: 0;
    content: url("/shared/img/icon_zoom.jpg");
    display: block;
    height: 23px;
    position: absolute;
    right: 0;
    width: 25px;
    z-index: 1;
}
/* YouTube*/
main .youtube iframe {
	width: auto;
	height: auto;
}

.right p a.icon01 {
    margin-right: 5%;
}
.cms_pdf a {
    background: rgba(0, 0, 0, 0) url("/shared/img/arrow04.gif") no-repeat scroll 0 center;
    padding-left: 11px;
}
.cms_link a.cms_blank::after {
    content: url("/shared/img/icon_blank.gif");
    padding-left: 5px;
	margin-right: 5px;
}
.cms_text a.cms_inner_blank::after {
    content: url("/shared/img/icon_blank.gif");
    padding-left: 5px;
	margin-right: 5px;
}
/* ------------------------------
 新着情報
------------------------------ */
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;
}
