@charset "utf-8";
/* CSS Document */

/* =========================
	body
========================= */

body {
	line-height: 2em;
	letter-spacing: 1px;
	font-size: 13px;
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	color: #000;
}

p {
	color: #000;
}

img {
	margin: 0;
	padding: 0;
	max-width: 100%;
	border: none;
}

a:link,
a:visited {
	text-decoration: underline;
	word-break: break-all;
	color: #690;
}

a:focus {
	outline: none;
}

table {
	width: 100%;
	/*border-collapse: collapse;*/
	border-spacing: 5px;
	word-break: break-all;
	font-size: 12px;
	color: #000;
}

table span {
	display: inline-block;
}

th {
	padding: 5px 2%;
	background: #f7f8f8;
}

td {
	width: auto;
	padding: 5px 2%;
}

ul {
	margin: 0 2%;
	padding: 0 20px;
	color: #000;
}

dl {
	margin: 0 2%;
	padding: 0;
	color: #000;
}

dl:after {
	content: "";
	display: block;
	clear: both;
}

dt {
	clear: both;
	float: left;
	width: 8%;
	max-width: 20px;
	margin: 0;
}

dd {
	float: left;
	width: 92%;
	margin: 0;
}

.img_shadow img {
	box-shadow: 1px 1px 10px rgba(0,0,0,0.3);
	-webkit-box-shadow:  1px 1px 10px rgba(0,0,0,0.3);
	-moz-box-shadow:  1px 1px 10px rgba(0,0,0,0.3);
	-o-box-shadow: 1px 1px 10px rgba(0,0,0,0.3);
}


/* =========================
	body_back
========================= */

.body_back {
	background: url(../img/base/body_back.jpg) no-repeat 50% 50%;
	background-size: cover;
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding-bottom: 8px;
	content: "";
	z-index: -1;
}


/* =========================
	header
========================= */

.header {
	padding: 0 0 20px;
	background: #fff;
	line-height: 0;
}

.header_inner {
	max-width: 880px;
	margin: 0 auto;
	padding: 0 2%;
}

.header_inner:after {
	content: "";
	display: block;
	clear: both;
}

.header_img {
	display: inline-block;
	float: right;
}

h1 {
	display: inline-block;
	float: left;
	margin: 20px 0;
}

.menu_pc ul {
	clear: both;
	margin: 0;
	padding: 20px 0 0;
	text-align: center;
	list-style: none;
}

.menu_pc ul:after {
	content: "";
	display: block;
	clear: both;
}

.menu_pc li {
	display: inline-block;
	margin: 0;
	padding: 5px 20px;
	border-right: 1px solid #231851;
}

.menu_pc li:last-child {
	border-right: none;
}

.menu_pc ul img {
	max-width: 120px;
}

.menu_sp {
	display: none;
}	

@media screen and (max-width: 600px) {
	.header_inner {
		padding: 0 5%;
	}
	
	.header_img {
		float: none;
		display: block;
		padding: 0 0 20px;
		text-align: center;
	}
	
	h1 {
		margin: 0;
	}
	
	.menu_pc {
		display: none;
	}
	
	.menu_sp {
		float: right;
		display: inline-block;
		margin: 15px 0 0;
	}
}


/* =========================
	title
========================= */

.title_back {
	padding: 0 5%;
	background: #f8b62d;
}

@media screen and (max-width: 420px) {
	.title_back {
		padding: 0;
	}
}

.title {
	max-width: 900px;
	margin: 0 auto;
	background: url(../img/base/title.png) no-repeat center center,
	url(../img/base/title_back.jpg) no-repeat 10% 50%;
}

@media screen and (max-width: 420px) {
	.title {
		background-size: 90% auto,
		auto;
	}
}


/* =========================
	midashi
========================= */

.midashi {
	margin: 0;
	padding: 20px 2%;
	background: url(../img/base/midashi.png) repeat-x center center;
	line-height: 0;
	text-align: center;
}


/* =========================
	menu
========================= */

.menu {
	width: 96%;
	max-width: 800px;
	margin: 70px auto;
	background: rgba(255,255,255,0.7);
	box-shadow: 1px 1px 10px rgba(0,0,0,0.3);
	-webkit-box-shadow:  1px 1px 10px rgba(0,0,0,0.3);
	-moz-box-shadow:  1px 1px 10px rgba(0,0,0,0.3);
	-o-box-shadow: 1px 1px 10px rgba(0,0,0,0.3);
	line-height: 0;
	text-align: center;
}

.menu ul {
	width: 90%;
	max-width: 500px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

.menu li {
	border-bottom: 1px solid rgba(0,0,0,0.3);
}

.menu li:last-child {
	border-bottom: none;
}

.menu a {
	display: block;
	padding: 25px 0;
	background: url(../img/menu/arrow.png) no-repeat 95% 50%;
	background-size: auto 10px;
	font-size: 16px;
	text-decoration: none;
}


/* =========================
	f_menu
========================= */

.f_menu {
	padding: 5px 0;
	border-bottom: 1px solid #f8b62d;
	text-align: center;
}

.f_menu:after {
	content: "";
	display: block;
	clear: both;
}

.f_menu a {
	display: inline-block;
}

.f_menu ul {
	max-width: 480px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

.f_menu li:first-child {
	float: left;
	width: 50%;	
}

.f_menu li:last-child {
	float: right;
	width: 50%;
}

.f_menu img {
	max-width: 80px;
}


/* =========================
	footer
========================= */

.footer {
	padding: 15px 2% 10px;
	background: url(../img/base/footer.png) repeat-x top center,
	#fff;
}

.footer_inner {
	max-width: 320px;
	margin: 30px auto 0;
}

.footer_inner p {
	margin: 5px auto 0;
	color: #000;
}

.footer span {
	display: inline-block;
}

.copyright {
	margin: 30px 0 0;
	text-align: right;
}

.copyright p {
	margin: 5px 0 0;
	line-height: 20px;
	font-size: 11px;
}


/* =========================
	Contents
========================= */

.contents {
	width: 96%;
	max-width: 700px;
	margin: 0 auto;
}

.contents p {
	padding: 0 2%;
}

.link_button {
	text-align: center;
}

.link_button a {
	display: block;
	max-width: 200px;
	margin: 0 auto;
	padding: 15px 15px 13px;
	background: rgba(0,0,0,0.3);
	border: 3px double rgba(255,255,255,0.6);
	font-size: 13px;
	color: #fff;
	text-decoration: none;
}

.lightbox_info {
	text-align: center;
}

.lightbox_info p {
	display: inline-block;
	margin: 5px 0;
	padding: 5px 0 5px 25px;
	background: url(../img/base/lightbox_info.png) no-repeat center left;
	font-size: 11px;
}

.inner span,
.inner strong {
	display: inline-block;
	font-weight: normal;
}

.contact a {
	display: block;
	width: 70%;
	max-width: 400px;
	margin: 0 auto;
	padding: 30px 5%;
	background: url(../img/howto/howto_tel.png) repeat top center;
	border: 1px solid #999;
	line-height: 0;
	text-align: center;
}


/* =========================
	page
========================= */

/*------------------ index ------------------*/

.index_contents {
	padding: 10px 0 50px;
	background: url(../img/index/index_contents.jpg) no-repeat 55% 0,
	#fff;
}

@media screen and (max-width: 580px) {
	.index_contents {
		background: url(../img/index/index_contents.jpg) no-repeat 20% 25%,
		#fff;
	}
}

.index_contents h3 {
	line-height: 40px;
}

.index_text {
	max-width: 490px;
	margin: 10px auto 0;
}

.index_info {
	width: 80%;
	max-width: 560px;
	margin: 50px auto 0;
	padding: 10px 5% 5px;
	background: rgba(255,255,255,0.8);
	border: 1px dashed #000;
}

.index_appeal {
	margin: 50px 0 30px;
	text-align: center;
}

.index_appeal img {
	display: inline-block;
	width: 50%;
	max-width: 180px;
	margin: 10px 0;
}


/*------------------ list ------------------*/

.list_contents {
	width: 80%;
	max-width: 700px;
	margin: 0 auto;
	padding: 10px 5% 50px;
	background: #fff;
}

.list_contents h3 {
	margin: 20px 0 0;
	padding: 0 0 0 10px;
	border-left: 10px solid #f8b62d;
	font-size: 16px;
	color: #604c3f;
}

.list_contents p {
	padding: 0;
}

.list_contents span {
	display: inline-block;
	margin: 0 10px 10px 0;
	padding: 2px 10px;
	background: #c2edff;
	color: #1b364a;
}

.book {
	margin: 40px 0 0;
	padding: 40px 0 0;
	border-top: 1px dashed #000;
	text-align: center;
}

.osusume {
	padding: 5px 2%;
	background: url(../img/list/osusume.png) repeat-x;
	text-align: center;
}

.osusume p {
	margin: 0;
	padding: 0;
	font-weight: bold;
	color: #604c3f;
}

.list_info {
	margin: 40px 0 0;
	padding: 40px 0 0;
	border-top: 1px dashed #000;
}

.list_link {
	margin: 40px 0 0;
	text-align: center;
}

.list_link a {
	display: inline-block;
	padding: 10px 15px 10px 30px;
	background: url(../img/list/list_link.png) no-repeat center left,
	#f3ffdb;
	box-shadow: 1px 1px 5px rgba(0,0,0,0.3);
	-webkit-box-shadow:  1px 1px 5px rgba(0,0,0,0.3);
	-moz-box-shadow:  1px 1px 5px rgba(0,0,0,0.3);
	-o-box-shadow: 1px 1px 5px rgba(0,0,0,0.3);
	text-decoration: none;
	font-weight: bold;
	color: #604c3f;
}


/*------------------ howto ------------------*/

.howto_contents {
	padding: 100px 5% 100px;
	background: url(../img/howto/howto.png) no-repeat top center,
	url(../img/howto/howto_bottom.png) repeat-x bottom center,
	#fff;
}

@media screen and (max-width: 600px) {
	.howto_contents {
		background: url(../img/howto/howto.png) no-repeat top center,
		url(../img/howto/howto_bottom.png) repeat-x bottom center,
		#fff;
		background-size: 140% auto,
		auto,
		auto;
	}
}

.howto_text {
	max-width: 490px;
	margin: 0 auto;
}

.howto_tel a {
	display: block;
	margin: 30px 0 0;
	padding: 10px 5%;
	background: url(../img/howto/howto_tel.png) repeat top center;
	border: 1px solid #999;
	line-height: 0;
	text-align: center;
}

.howto_tel img {
	margin: 10px 0;
}

.howto_midashi {
	margin: 50px 0 0;
	padding: 10px 15px;
	border: 1px solid #000;
	text-align: center;
	font-size: 14px;
}

.howto2 div {
	padding: 20px 0 60px;
	background: url(../img/howto/arrow.png) no-repeat bottom center;
	text-align:center;
}

.howto2 div:last-child {
	background: none;
}

.howto2 div p {
	margin: 0;
}

.howto2_info {
	margin: -30px 0 0;
	padding: 10px 2% 15px;
	background: url(../img/howto/check.png) no-repeat 50% 20px;
	border: 1px dotted #000;
}

.howto2_info p {
	max-width: 350px;
	margin: 80px auto 0;
}


/*------------------ qa ------------------*/

.qa_contents {
	padding: 10px 5% 50px;
	background: #fff;
}

.qa {
	margin: 40px 0 0;
	padding: 10px 2% 15px;
	border: 1px dotted #000;
}

.qa p {
	padding: 0 0 0 20px;
	background: url(../img/qa/arrow.png) no-repeat 0 5px;
	font-weight: bold;
}

.qa span {
	font-size: 15px;
	color: #f8b62d;
}


/*------------------ buy ------------------*/

.buy_contents {
	padding: 10px 0 50px;
	background: #fff;
}

.buy_contents h3 {
	margin: 50px 0 0;
	padding: 5px 2%;
	background: url(../img/list/osusume.png) repeat-x;
	color: #604c3f;
}

.buy_table p {
	margin: 10px 0 5px;
}

.buy_table strong {
	color: #c30d23;
}

.buy_table th {
	width: 35%;
	text-align: left;
}

.buy_table input {
	display: inline-block;
	margin: 5px 0;
	font-size: 12px;
}

.buy_table label {
	display: inline-block;
	margin: 3px 0 3px 28px;
	font-size: 12px;
}

.buy_table .ui-btn {
	font-size: 12px;
}

.buy_table .td_width .ui-input-text {
	display: inline-block;
	width: 85%;
	margin: 0 5% 0 0;
}

.buy_table2 th {
	width: 100%;
	padding: 10px 2%;
	text-align: left;
}

.buy_table2 strong {
	color: #c30d23;
}

.buy_table2 span {
	font-weight: normal;
}

.buy_table2 .pb30 td {
	padding-bottom: 30px;
}

.buy_table3 p {
	margin: 10px 0 5px;
}

.buy_table3 strong {
	color: #c30d23;
}

.buy_table3 th {
	width: 30%;
	text-align: left;
}

.buy_table3 .td_width2 .ui-input-text {
	display: inline-block;
	width: 18%;
}

.buy_table3 input {
	display: inline-block;
	margin: 5px 0;
	font-size: 12px;
}

.buy_table3 label {
	display: inline-block;
	margin: 3px 0 3px 28px;
	font-size: 12px;
}

.buy_table3 .ui-btn {
	font-size: 12px;
}

.submit_btn {
	width: 80%;
	max-width: 250px;
	margin: 50px auto 0;
}

.submit_btn .ui-btn {
	padding: 20px 10px;
	background: #f8b62d;
	border: none;
	font-size: 15px;
	color:#fff;
}


/* =========================
	dialog
========================= */

.ui-header {
	padding: 10px 0 0 !important;
	text-shadow: none;
}

.ui-dialog {
	background: none !important;
}

.ui-dialog-contain {
	width: 96%;
	max-width: 700px;
	margin: 10% auto;
	padding: 0 0 40px;
	background: rgba(255,255,215,0.90); !important;
	position: relative;
	top: -1em;
}

.dialog {
	padding: 0 2% ;
}

.dialog h3 {
	margin: 30px 0;
	text-align: center;
	font-size: 18px;
	color: #001843;
	text-shadow: none;
}

.dialog p {
	margin: 20px 0 -30px;
	text-align: center;
	color: #001843;
	text-shadow: none;
}

.dialog span {
	display: inline-block;
}

.dialog table {
	text-shadow: none;
}

.close {
	max-width: 120px;
	margin: 30px auto 0;
	fon-size: 15px;
}


/* =========================
	others
========================= */

/*------------------ float ------------------*/

.center {
	text-align: center !important;
}

.left {
	text-align: left !important;
}

.right {
	text-align: right;
}

.clear {
	clear: both;
}

.float_clear:after {
	content: "";
	display: block;
	clear: both;
}

.float_left {
	float: left;
}

.float_right {
	float: right;
}

.img_left {
	width: 49%;
	float: left;
	margin: 1% 0;
	line-height: 0;
	text-align: left;
}

.img_right {
	width: 49%;
	float: right;
	margin: 1% 0;
	line-height: 0;
	text-align: right;
}


/*------------------ margin ------------------*/

.m0 {
	margin: 0;
}

.mt10 {
	margin-top: 10px;
}

.mt20 {
	margin-top: 20px;
}

.mt30 {
	margin-top: 30px;
}

.mt40 {
	margin-top: 40px;
}

.mt50 {
	margin-top: 50px;
}

.mt70 {
	margin-top: 70px;
}

.mt80 {
	margin-top: 80px;
}


/*------------------ line_height ------------------*/

.line_height {
	margin: 0;
	line-height: 0;
	text-align: center;
}