@charset "utf-8";
/* reset __________________________________ */
@media print {
	.spNav {
		display: none;
	}
}
.user_pc a[href^="tel:"] {
	pointer-events: none !important;
}
.spOnly {
	display: none;
}
.mt0 {
	margin-top: 0 !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.alignR {
	text-align: right;
}
a:hover {
	opacity: 0.7;
}
#main, #main p {
	font-size: 15px;
	line-height: 1.5em;
}
#main h1 {
	box-sizing: border-box;
	width: 100% !important;
	height: auto;
	margin: 0 0 50px !important;
	padding: 2em 0;
	background: linear-gradient(135deg, #33a2c3 0%, #4a63b1 100%);
	color: #fff;
	text-align: center;
	font-size: 30px !important;
	font-weight: normal;
	line-height: 1.2em;
}
#main .inner {
	width: 910px;
	margin: 30px auto;
}
#main h2 {
	border: solid 1px #c4d8e1;
	padding: 5px;
	margin: 60px 0 15px;
}
#main h3 {
	margin: 30px 0 10px;
}
#main ul {
	list-style-type: none;
}
#main ul.attention, #main ul.note {
	margin: 20px 0;
	padding: 0 0 0 13px;
	font-size: 13px;
	line-height: 1.5;
}
#main ul.attention li, #main ul.note li {
	position: relative;
	text-indent: 0;
	padding-left: 0;
	margin-bottom: 5px;
}
#main ul.attention li::before, #main ul.note li::before {
	position: absolute;
	content: '※';
	left: -13px;
	top: 0;
}
#main ul.note li::before {
	content: '・';
}
#main ul.note li ul.attention {
	margin-top: 0;
}
#main ul.note li ul.attention li::before {
	content: '※';
}
span.sup{
	vertical-align: super;
	font-size: 84%;
	margin: 0 3px;
}
.cookie_txt > p{
	margin: 0 0 20px;
}
@media screen and (max-width: 767px) {
	body.spNav_fixed::before {
		z-index: 150;
	}
	.spOnly {
		display: block;
	}
	.pcOnly {
		display: none;
	}
	#main h1 {
		margin-bottom: 20px !important;
		padding: 1em 10px;
		font-size: 22px !important;
		line-height: 1.2em;
	}
	#main .inner {
		width: 93%;
	}
	#main section {
		margin-top: -50px;
		padding-top: 100px;
	}
}
#accordion_area {
	margin: 2em 0 4em;
}
#accordion_area dt {
	position: relative;
	box-sizing: border-box;
	padding: 13px 13px 10px;
	border: 1px solid #222222;
	border-radius: 5px;
	cursor: pointer;
	transition: 0.3s;
	font-weight: bold;
}
#accordion_area dt:before, #accordion_area dt:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 16px;
	transform: translateY(-50%);
	width: 20px;
	height: 2px;
	background: #222222;
	transition: 0.3s;
}
#accordion_area dt:after {
	transform: translateY(-50%) rotate(90deg);
}
#accordion_area dt.open:after {
	opacity: 0;
}
#accordion_area dt:hover {
	color: #1d2088;
	border: 1px solid #1d2088;
	opacity: 0.8;
}
#accordion_area dt:hover:before, #accordion_area dt:hover:after {
	background: #1d2088;
}
#accordion_area dd {
	display: none;
}
#accordion_area dd #online-privacy-notice p._opn_type_name {
	font-weight: bold;
	margin: 2em 0 0.5em;
}
#online-privacy-notice {
	width: 95%;
	margin: 0 auto;
}
._opn_node_title, ._opn_node {
	display: table;
	width: 100%;
	min-height: 2em;
}
span._opn_node_items.name, a._opn_node_items.name {
	border-left: 1px solid #cccccc;
}
span._opn_node_items, a._opn_node_items {
	display: table-cell;
	width: 25%;
	font-size: 90%;
	vertical-align: middle;
	background-color: #F1F9FA;
	border-right: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	border-top: 1px solid #cccccc;
	padding: 0.5em;
	box-sizing: border-box;
}
span._opn_node_items {
	padding: 0.8em 0.5em;
}
a._opn_node_items {
	border-top: 0;
	background: none;
	color: #3273dc;
	text-decoration: none;
}
a._opn_node_items:hover {
	text-decoration: underline;
}
@media screen and (max-width: 767px) {
	#accordion_area {
		margin: 2em 0 3em;
	}
	#ad, #an, #da {
		display: none;
	}
	span._opn_node_items, a._opn_node_items {
		display: block;
	}
	._opn_node_inner_wrap {
		display: flex;
	}
	._opn_node_inner_wrap.name span._opn_node_thead {
		border-top: 1px solid #cccccc;
	}
	span._opn_node_thead {
		width: 42%;
		background-color: #F1F9FA;
		border-left: 1px solid #cccccc;
		border-right: 1px solid #cccccc;
		border-bottom: 1px solid #cccccc;
		padding: 10px 0 10px 5px;
		font-size: 13px;
	}
	a._opn_node_items {
		width: 60%;
		padding: 10px 0 10px 5px;
	}
	a._opn_node_items.name {
		border-top: 1px solid #cccccc;
		border-left: 0;
	}
	._opn_node_title, ._opn_node {
		margin-bottom: 1em;
	}
}