/*
	LAYOUT
*/

ul.listmark li,
dl.listmark dd {
	display: block;
	padding-left: 1em;
}

ul.listmark li::before,
dl.listmark dd::before {
	content: "・";
	display: block;
	float: left;
	margin-left: -1em;
	width: 1em;
	text-align: center;
}

ul.listmark.type-circle li::before,
dl.listmark.type-circle dd::before {
	content: "●";
}

ul.listmark.type-circle-outline li::before,
dl.listmark.type-circle-outline dd::before {
	content: "○";
}

ul.listmark.type-square li::before,
dl.listmark.type-square dd::before {
	content: "■";
}

ul.listmark.type-square-outline li::before,
dl.listmark.type-square-outline dd::before {
	content: "□";
}

ul.listmark.type-diamond li::before,
dl.listmark.type-diamond dd::before {
	content: "◆";
}

ul.listmark.type-diamond-outline li::before,
dl.listmark.type-diamond-outline dd::before {
	content: "◇";
}

ol li {
	list-style: outside decimal;
	margin-left: 2em;
}

dl.dl-li dt {
	font-weight: bold;
}

table {
	margin-bottom: 10px;
}

table caption {
	font-weight: bold;
	margin-bottom: 5px;
}

table.table-fit {
	width: 100%;
}

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

table.table1 th,
table.table1 td {
	border: 1px solid #BBBBBB;		
}

table.table1 th {
	background: #EEEEEE;
	padding: 4px 12px;
}

table.table1 td {
	padding: 6px 12px;
}

table.table1 th.pale {
	background: #EEEEEE;
}

table.table2 th,
table.table2 td {
	border: 1px solid #BBBBBB;		
}

table.table2 th {
	background: #EEEEEE;
	padding: 4px 12px;
}

table.table2 th.pale {
	background: #EEEEEE;
}

table.table2 td {
	padding: 6px 12px;
}

table.table2 tr th:first-child,
table.table2 td:first-child {
	border-left: none;		
}

table.table2 tr th:last-child,
table.table2 td:last-child {
	border-right: none;		
}

.caution {
	display: block;
	padding-left: 1em;
}

.caution::before {
	content: "※";
	display: block;
	float: left;
	margin-left: -1em;
	width: 1em;
	text-align: center;
}

.layout-column {
	background: #EEEEEE;
	margin-bottom: 20px;
	border: 1px solid #DDDDDD;
	border-radius: 10px;
}	

dl.dl-fl dt {
	color: #666666;
}

dl.dl-list dt {
	font-weight: bold;
	color: #666666;
}

dl.dl-list dd {
	border-bottom: 1px dotted #DDDDDD;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

dl.dl-list dd:last-child {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}



/* PC */

@media all and (min-width: 641px) {

span.caption {
	display: block;
	font-size: .857em;
}
	
.layout1-1 .box-l {
	float: left;
	width: 340px;
}

.layout1-1 .box-r {
	float: right;
	width: 340px;
}

.layout2-1 .box-l,
.layout1-2 .box-l {
	float: left;
	width: 460px;
}

.layout2-1 .box-r,
.layout1-2 .box-r {
	float: right;
	width: 220px;
}

.layout2-1 .box-1,
.layout1-2 .box-1 {
	width: 220px;
}

.layout2-1 .box-2,
.layout1-2 .box-2 {
	width: 460px;
}

.layout3-1 .box-l,
.layout1-3 .box-l {
	float: left;
	width: 520px;
}

.layout3-1 .box-r,
.layout1-3 .box-r {
	float: right;
	width: 160px;
}

.layout3-1 .box-1,
.layout1-3 .box-1 {
	width: 160px;
}

.layout3-1 .box-2,
.layout1-3 .box-2 {
	width: 520px;
}

.layout1-1-1 .box-1,
.layout1-1-1 .box-2,
.layout1-1-1 .box-3 {
	float: left;
	width: 220px;
}

.layout1-1-1 .box-2 {
	margin-left: 20px;
}

.layout1-1-1 .box-3 {
	float: right;
}

.layout1-1-1-1 .box-1,
.layout1-1-1-1 .box-2,
.layout1-1-1-1 .box-3,
.layout1-1-1-1 .box-4 {
	float: left;
	width: 160px;
}

.layout1-1-1-1 .box-2,
.layout1-1-1-1 .box-3 {
	margin-left: 20px;
}

.layout1-1-1-1 .box-4 {
	float: right;
}

.layout-fl .fl-r {
	margin: 0 0 15px 30px;
}

.layout-fl .fl-l {
	margin: 0 30px 15px 0;
}	


.layout-column {
	padding: 30px 30px 20px;
}	

.layout-column .fl-r {
	margin: 0 0 10px 20px;
}

.layout-column .fl-l {
	margin: 0 20px 10px 0;
}

dl.dl-fl dt {
	float: left;
	width: -6em;
	padding-right: 2em;
	padding-top: 10px;
	margin-bottom: 10px;
}

dl.dl-fl dd {
	margin-left: 8em;
	padding-top: 10px;
	margin-bottom: 10px;
}

}



/* SP */

@media only screen and (max-width: 640px) {

span.caption {
	display: block;
	font-size: 12px;
}

.box-img {
	text-align: center;
}

.layout1-1,
.layout2-1,
.layout1-2,
.layout3-1,
.layout1-3,
.layout1-1-1,
.layout1-1-1-1,
.layout-fl {
	margin-bottom: 20px;
}

.layout-column {
	padding: 20px 20px 10px;
}	

.layout-column .fl-r,
.layout-column .fl-l {
	margin-bottom: 10px;
}

dl.dl-fl dd {
	margin-bottom: 10px;
}

}