@charset "UTF-8";

body {
	margin: 0 auto;
	color: #333333;
	background-color: #ffffff;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, Arial;
	font-size: 14px;
	font-style: normal;
	line-height: 1.5;
	font-weight: normal;
	font-variant: normal;
	-webkit-text-size-adjust: none;
	word-wrap: break-word;
}

/* =========================================================
　◆LINK
========================================================= */

a:link {
	color: #004187;
	text-decoration: underline;
}
a:visited {
	color: #004187;
	text-decoration: underline;
}
a:hover {
	color: #004187;
	text-decoration: none;
}
a:active {
	color: #004187;
	text-decoration: none;
}
a:hover, input:hover , select:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
}
/* =========================================================
　◆下層レイアウト
========================================================= */

#wrapper {
	margin: 0 auto;
	width: 100%;
	max-width: 768px;
}
#wrapper h1 {
	padding: 15px;
	background-color: #efefef;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.3;
}
#wrapper #contents {
	background-color: #ffffff;
}
#wrapper #contents .page_title {
	background-color: #ffffff;
}
#wrapper #contents .page_title h2 {
	font-size: 16px;
	background: #231816;
	color: #ffffff;
	font-weight: normal;
	text-align: center;
	height: 40px;
	line-height: 40px;
}
#wrapper #contents .page_inner {
	padding: 30px;
	background-color: #ffffff;
	min-width: 768px;
}
#wrapper #contents .page_inner .inner {
	padding: 0%;
	background-color: #ffffff;
}
@media screen and (max-width: 640px) {
#wrapper {

}
#wrapper h1 {
	padding: 10px;
}
#wrapper #contents {

}
#wrapper #contents .page_title {

}
#wrapper #contents .page_title h2 {
	height: 35px;
	line-height: 35px;
}
#wrapper #contents .page_inner {
	padding: 15px;
	min-width: auto;
	min-width: initial;
}
#wrapper #contents .page_inner .inner {

}
}
/* =========================================================
　◆応募フォーム
========================================================= */
#wrapper #contents .page_nav nav {
	padding: 20px 20px 0;
	background-color: #ffffff;
}
#wrapper #contents .page_nav nav ul {
	text-align: center;
	margin: 0 auto;
}
#wrapper #contents .page_nav nav li {
	padding: 3px 5px;
	display: inline-table;
}
#wrapper #contents .page_nav nav li.on {
	background: #eec329;
	color: #ffffff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
#wrapper #contents .page_nav nav li.off {
	background: #efefef;
	color: #cccccc;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
#wrapper #contents .page_nav nav li.arrow {
	color: #cccccc;
}
#wrapper #contents .page_inner .inner .form {
	margin: 20px 0;
	border: 1px solid #e2dbbf;
	border-bottom: none;
}
#wrapper #contents .page_inner .inner .form-noborder {
	margin: 20px 0;
	border-bottom: none;
}
#wrapper #contents .page_inner .inner .form th {
	padding: 15px 10px;
	background: #f5f2e9;
	border-bottom: 1px solid #e2dbbf;
	text-align: left;
	width: 230px;
}
#wrapper #contents .page_inner .inner .form table th:first-child {
	border-top: none;
}
#wrapper #contents .page_inner .inner .form td {
	padding: 15px 10px;
	border-bottom: 1px solid #e2dbbf;
}
#wrapper #contents .page_inner .inner .course_name {
	border-bottom: 1px solid #231816;
	text-align: center;
	margin-bottom: 30px;
	padding-bottom: 5px;
	font-size: 16px;
}
#wrapper #contents .page_inner .inner .pp_text {
	font-size: 12px;
	margin-top: 10px;
}
#wrapper #contents .page_inner .inner .form td li {
	margin-left:2em;
	text-indent:-2em;
}

@media screen and (max-width: 640px) {
#wrapper #contents .page_nav nav {
	padding: 20px 0 10px 0;
}
#wrapper #contents .page_nav nav ul {

}
#wrapper #contents .page_nav nav li {

}
#wrapper #contents .page_nav nav li.on {

}
#wrapper #contents .page_nav nav li.off {

}
#wrapper #contents .page_nav nav li.arrow {

}
#wrapper #contents .page_inner .inner .form {
	margin: 20px 0;
}
#wrapper #contents .page_inner .inner .form th {
	padding: 10px 10px;
	width: 100%;
	display: block;
}
#wrapper #contents .page_inner .inner .form table th:first-child {
	border-top: none;
}
#wrapper #contents .page_inner .inner .form td {
	padding: 10px 10px;
	width: 100%;
	display: block;
}
#wrapper #contents .page_inner .inner .course_name {
	text-align: left;
	margin-bottom: 30px;
	padding-bottom: 5px;
	font-size: 14px;
	line-height: 1.3;
}
#wrapper #contents .page_inner .inner .pp_text {

}
#wrapper #contents .page_inner .inner .form td li {
	margin-bottom: 10px;
}
}

/* =========================================================
　◆input
========================================================= */
input , select {

}
.form input , .form select , .form textarea , button {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, Arial;
}
.b_year {
	width: 30%!important;
}
.b_month {
	width: 15%!important;
}
.b_day {
	width: 15%!important;
}
.name {
	width: 38%;
}
.name_kana {
	width: 38%;
}
.w100 {
	width: 100%;
}
.w50 {
	width: 50%;
}
input[type="text"] , input[type="tel"] , input[type="email"] , textarea , input[type="password"] {
	height: 40px;
	border: 1px solid #e2dbbf;
	text-indent: .5em;
	background: #ffffff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	padding: 5px 0;
	font-size: 16px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
#form_login input[type="text"] , #form_login input[type="password"] {
    border: none;
}
textarea {
	height: 50px;
}
select {
	width: 100%;
    height: 40px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #e2dbbf;
	background: #fff;
	background: url(../img/arrow_select.png) 98% 50% no-repeat, -webkit-linear-gradient(top, #fff 0%,#fff 100%);
	background: url(../img/arrow_select.png) 98% 50% no-repeat, linear-gradient(to bottom, #fff 0%,#fff 100%);
	background-size: 18px 7px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	cursor: pointer;
	color: #333333;
	font-size: 16px;
}
select::-ms-expand {
    display: none;
}

#wrapper #contents .page_inner .inner .form .zipcall {
	width: 40%;
	padding: 10px;
	margin: 0 auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	text-decoration: none;
	color: #e9e9e9;
	border: solid 1px #555;
	background: #6e6e6e;
	background: -webkit-gradient(linear, left top, left bottom, from(#888), to(#575757));
	background: -moz-linear-gradient(top, #888, #575757);
 filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#888888', endColorstr='#575757');
	cursor: pointer;
	text-align: center;
	font-size: 13px;
}

input[type="radio"] , input[type="checkbox"] {
    display:none;
}
input[type="radio"] + label {
    padding:3px 0 3px 30px;
    background:url(../img/radio_off.png) no-repeat left center;
    background-size:18px 18px;
    cursor:pointer;
}
input[type="radio"]:checked + label {
    background:url(../img/radio_on.png) no-repeat left center;
    background-size:18px 18px;
    cursor:pointer;
}
input[type="checkbox"] + label {
    padding:3px 0 3px 30px;
    background:url(../img/check_off.png) no-repeat left center;
    background-size:18px 18px;
    cursor:pointer;
}
input[type="checkbox"]:checked + label {
    background:url(../img/check_on.png) no-repeat left center;
    background-size:18px 18px;
    cursor:pointer;
}
input::placeholder {
  color: #999999;
  font-size: 14px;
}
input:-ms-input-placeholder {
  color: #999999;
  font-size: 14px;
}
input::-ms-input-placeholder {
  color: #999999;
  font-size: 14px;
}

/* =========================================================
　◆履歴
========================================================= */
#wrapper #contents .page_inner .inner .pager {
	width: 100%;
	display: table;
}

#wrapper #contents .page_inner .inner .pager .th {
	display: table-cell;
	text-align: left;
}
#wrapper #contents .page_inner .inner .pager .td {
	display: table-cell;
	text-align: right;
	color: #666;
}

#wrapper #contents .page_inner .pager .td ul {
	text-align: right;
}
#wrapper #contents .page_inner .pager .td li {
	display: inline-block;
	width: 90px;
}
#wrapper #contents .page_inner .pager a.btn_on {
	width: 100%;
	margin: 0 auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-size: 12px;
	padding: 7px 0;
	text-decoration: none !important;
	color: #FFFFFF !important;
	background-color: #999999;
	font-weight: bold;
	display: block;
	line-height: 1em;
	text-align: center;
}
#wrapper #contents .page_inner .inner .histry_list {
	margin: 20px 0;
}
#wrapper #contents .page_inner .inner .histry_list table {
	border-left: 1px solid #e2dbbf;
}
#wrapper #contents .page_inner .inner .histry_list th {
	padding: 15px 10px;
	background: #f5f2e9;
	border-bottom: 1px solid #e2dbbf;
	border-top: 1px solid #e2dbbf;
	text-align: left;
	border-right: 1px solid #e2dbbf;
	width: 50%;
}
#wrapper #contents .page_inner .inner .histry_list td {
	padding: 15px 10px;
	border-bottom: 1px solid #e2dbbf;
	border-right: 1px solid #e2dbbf;
}
#wrapper #contents .page_inner .inner .histry_list th.date {
	width: 24%;
}
#wrapper #contents .page_inner .inner .histry_list th.course {
	width: 30%;
}
#wrapper #contents .page_inner .inner .histry_list th.usedpoint {
	width: 16%;
}
#wrapper #contents .page_inner .inner .histry_list th.result {
	width: 30%;
}


@media screen and (max-width: 640px) {
#wrapper #contents .page_inner .inner .pager {
	display: block;
}
#wrapper #contents .page_inner .inner .pager .th {
	display: block;
	width: 100%;
	margin-bottom: 20px;
}
#wrapper #contents .page_inner .inner .pager .td {
	display: block;
	width: 100%;
}

#wrapper #contents .page_inner .inner .histry_list {
	margin: 20px 0;
}
#wrapper #contents .page_inner .inner .histry_list table {
	border-left: 1px solid #e2dbbf;
}
#wrapper #contents .page_inner .inner .histry_list th {
	padding: 10px;
	display: block;
	border-bottom: 1px solid #e2dbbf;
	border-top: 1px solid #e2dbbf;
	text-align: left;
	border-right: 1px solid #e2dbbf;
	width: 100%;
}
#wrapper #contents .page_inner .inner .histry_list tr th:first-child {
	border-bottom: none;
	padding-bottom: 0;
}
#wrapper #contents .page_inner .inner .histry_list tr th:nth-of-type(n+2) {
	border-bottom: none;
	padding-bottom: 0;
	border-top: none;
	padding-top: 0;
}
#wrapper #contents .page_inner .inner .histry_list tr th:last-child {
	border-bottom: 1px solid #e2dbbf;
	padding-bottom: 10px;
}

#wrapper #contents .page_inner .inner .histry_list td {
	padding: 10px;
	display: block;
	border-bottom: 1px solid #e2dbbf;
	border-right: 1px solid #e2dbbf;
	width: 100%;
}
#wrapper #contents .page_inner .inner .histry_list tr td:first-child {
	border-bottom: none;
	padding-bottom: 0;
}
#wrapper #contents .page_inner .inner .histry_list tr td:nth-of-type(n+2) {
	border-bottom: none;
	padding-bottom: 0;
	padding-top: 0;
}
#wrapper #contents .page_inner .inner .histry_list tr td:last-child {
	padding-bottom: 10px;
	border-bottom: 1px solid #e2dbbf;
}

#wrapper #contents .page_inner .inner .histry_list th.date {
	width: 100%;
}
#wrapper #contents .page_inner .inner .histry_list th.course {
	width: 100%;
}
#wrapper #contents .page_inner .inner .histry_list th.usedpoint {
	width: 100%;
}
#wrapper #contents .page_inner .inner .histry_list th.result {
	width: 100%;
}
}
/* =========================================================
　◆btn
========================================================= */
.btn {
	margin: 30px 0;
	text-align: center;
}
a.btn_next, input.btn_next {
	width: 100%;
	max-width: 350px;
	margin: 0 auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-size: 16px;
	text-decoration: none !important;
	color: #ffffff !important;
	border: solid 1px #da7c0c;
	background: #f78d1d;
	background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
	background: -moz-linear-gradient(top, #faa51a, #f47a20);
 	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
	font-weight: bold;
	cursor: pointer;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, Arial;
	text-align: center;
	height: 50px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	line-height: 1;
}
a.btn_next_2_line, input.btn_next_2_line {
	width: 100%;
	max-width: 350px;
	margin: 0 auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-size: 16px;
	text-decoration: none !important;
	color: #ffffff !important;
	border: solid 1px #da7c0c;
	background: #f78d1d;
	background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
	background: -moz-linear-gradient(top, #faa51a, #f47a20);
 	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
	font-weight: bold;
	cursor: pointer;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, Arial;
	text-align: center;
	height: 50px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	line-height: 1.1;
}
a.btn_back, input.btn_back {
	width: 80%;
	max-width: 250px;
	margin: 0 auto;
	border: 1px solid #cccccc;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-size: 14px;
	text-decoration: none !important;
	color: #606060 !important;
	border: solid 1px #b7b7b7;
	background: #fff;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ededed));
	background: -moz-linear-gradient(top, #fff, #ededed);
 filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed');
	font-weight: bold;
	cursor: pointer;
	text-align: center;
	height: 45px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	line-height: 1;
}
.histry_list a.btn_next {
	width: 100%;
	margin: 0 auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-size: 14px;
	text-decoration: none !important;
	color: #ffffff !important;
	border: solid 1px #da7c0c;
	background: #f78d1d;
	background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
	background: -moz-linear-gradient(top, #faa51a, #f47a20);
 	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
	font-weight: bold;
	cursor: pointer;
	text-align: center;
	height: 40px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	line-height: 1;
}
.mypage a.btn_next {
	width: 100%;
	margin: 0 auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-size: 16px;
	text-decoration: none !important;
	color: #ffffff !important;
	border: solid 1px #da7c0c;
	background: #f78d1d;
	background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
	background: -moz-linear-gradient(top, #faa51a, #f47a20);
 	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
	font-weight: bold;
	cursor: pointer;
	text-align: center;
	height: 50px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	line-height: 1;
}
.mypage .btn_next {
	width: 100%;
    max-width: 350px;
	margin: 0 auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-size: 16px;
	text-decoration: none !important;
	color: #ffffff !important;
	border: solid 1px #da7c0c;
	background: #f78d1d;
	background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
	background: -moz-linear-gradient(top, #faa51a, #f47a20);
 	filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
	font-weight: bold;
	text-align: center;
	height: 50px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	line-height: 1;
}
.mypage .btn_next.disable {
	opacity: 0.3;
}


/* =========================================================
　◆利用規約
========================================================= */
#wrapper #contents .page_inner .inner .rule {

}
#wrapper #contents .page_inner .inner .rule h3 {
	font-weight: bold;
	font-size: 14px;
	margin-top: 25px;
	margin-bottom: 6px;
}
#wrapper #contents .page_inner .inner .rule > h3:first-child {
	margin-top: 0px;
}

/* =========================================================
　◆事前告知 / 事後告知
========================================================= */
#index_bf, #index_af {
	margin: 0 auto;
	width: 100%;
	max-width: 768px;
}
.info {
	border: 1px solid #e5004f;
	padding: 20px;
	margin: 30px;
	text-align: center;
}
@media screen and (max-width: 640px) {
#index_bf, #index_af {

}
.info, .info {
	padding: 15px;
	margin: 15px;
}
}
/* =========================================================
　◆マイページ
========================================================= */
.mypage h3 {
	font-size: 16px;
	border-bottom: 1px solid #e2dbbf;
	margin-bottom: 20px;
	padding-bottom: 5px;
}
.mypage .menu_block {
	border: 1px solid #e2dbbf;
	width: 200px;
	padding: 0 15px 20px 15px;
	float: left;
	margin-right: 15px;
}
.mypage .point_show_box {
	border-bottom: 1px dashed #e2dbbf;
	line-height: 1;
	padding: 20px 0;
	font-size: 12px;
}
.mypage .point_show_box p:first-child {
	margin-bottom: 10px;
}
.mypage .point_show_box p:last-child {
	text-align: right;
}
.point_text {
	font-size: 50px;
	font-weight: bold;
	padding-right: 5px;
}
.mypage .point_add_box {
	border-bottom: 1px solid #e2dbbf;
	padding: 20px 0;
	line-height: 1.3;
}
.mypage .menu_list {
	margin-top: 20px;
	line-height: 1.7;
}
.mypage .btn {
	margin: 10px 0;
}
.mypage .entry_block {
	width: 493px;
	float: right;
}
.mypage .course_box {
	position: relative;
	margin-top: 10px;
	border-bottom: 1px solid #e2dbbf;
	padding-bottom: 10px;
}
.mypage .course_box figure {
	float: left;
	width: 180px;
	margin-right: 10px;
}
.mypage .course_box .entry_box {
	float: left;
	width: 303px;
}
.mypage .course_box .entry_box .point_need_text {
	font-size: 12px;
}
.mypage .course_box .entry_box .point_need_text span {
	font-size: 20px;
	font-weight: bold;
	color: #e92433;
	margin-right: 5px;
}
.mypage .course_box .entry_box .course_text {
	margin-top: 5px;
	padding-left: 5px;
	font-size: 16px;
}
.mypage .course_box .entry_box .btn {
	margin: 0;
	position: absolute;
	bottom: 10px;
	display: block;
	width: 303px;
	left: 190px;
}
.mypage h4 {
	font-weight: bold;
}
.mypage .entry_block h4 {
	background-color: #f5f2e9;
	padding: 6px 15px;
}
@media screen and (max-width: 640px) {
.mypage h3 {
	margin-bottom: 20px;
}

.mypage h4 {
	margin-bottom: 20px;
}

.mypage .menu_block {
	width: 100%;
	padding: 0 10px 15px 10px;
	float: none;
	margin-right: 0;
}
.mypage .point_show_box {
	padding: 15px 0;
}
.mypage .point_show_box p:first-child {
	margin-bottom: 10px;
}
.mypage .point_show_box p:last-child {

}
.point_text {

}
.mypage .point_add_box {
	padding: 15px 0;
}
.mypage .menu_list {
	margin-top: 15px;
}
.mypage .btn {
	margin: 10px 0;
}
.mypage .entry_block {
	width: 100%;
	float: none;
	margin-top: 20px;
}
.mypage .course_box {

}
.mypage .course_box figure {
	width: 100%;
	margin-right: 0;
	float: none;
}
.mypage .course_box .entry_box {
	width: 100%;
	float: none;
}
.mypage .course_box .entry_box .point_need_text {

}
.mypage .course_box .entry_box .point_need_text span {

}
.mypage .course_box .entry_box .course_text {

}
.mypage .course_box .entry_box .btn {
	margin: 0;
	position: static;
	bottom: 10px;
	display: block;
	width: 100%;
	left: 0;
}
.mypage h4 {

}
.mypage .entry_block h4 {

}
}
/* =========================================================
　◆モーダル
========================================================= */
#modal {
	position:fixed;
	top:0;
	left:0;
	height:100%;
	width:100%;
	background-color: rgba(51,51,51,0.6);
	z-index:999;
}
#modal .inner {
	margin: 30px 15px;
}
#modal .bg_w {
    padding: 20px;
    text-align: center;
}
#modal .modal-inner {
	position: relative;
}
#modal .serial_done_block {
	margin: 20px auto;
}
#modal .serial_done_block .point_show_box {
	border-bottom: none;
    padding: 0;
}

#modal .btn_close {
	position: relative;
    margin-top: 20px;
}
#modal .close-button {
	font-size: 20px;
	position: relative;
	z-index: 2;
	border: none;
	background-color: #ffffff;
	cursor: pointer;
}
/* =========================================================
　◆シリアル完了
========================================================= */
.serial_done_block {
	margin: 30px auto;
	text-align: center;
}
.serial_done_block ul {
	display: inline-block;
	border: 1px solid #e2dbbf;
	min-width: 400px;
	padding: 15px 0;
}
.serial_done_block li {
	display: inline-block;
	width: 49%;
	text-align: left;
	border-right: solid 1px #e2dbbf;
	padding: 0 15px;
}
.serial_done_block li:last-child {
	border-right: none;
}
.serial_done_block .point_show_box {
	line-height: 1;
	font-size: 12px;
}
.serial_done_block .point_show_box p:first-child {
	margin-bottom: 10px;
}
.serial_done_block .point_show_box p:last-child {
	text-align: right;
}
.serial_done_list {
	margin: 30px auto;
	width: 400px;
	text-align: center;
	border: 1px solid #e2dbbf;
	padding: 15px 20px;
	font-weight: bold;
}
@media screen and (max-width: 640px) {
.serial_done_block {
	margin: 20px auto 30px auto;
}
.serial_done_block ul {
	display: block;
	border: 1px solid #e2dbbf;
	min-width: auto;
	min-width: initial;
	padding: 0 15px;
}
.serial_done_block li {
	display: block;
	width: 100%;
	text-align: left;
	border-right: 0;
	border-bottom: 1px solid #e2dbbf;
	padding: 15px 0;
}
.serial_done_block li:last-child {
	border-right: none;
	border-bottom: none;
}
.serial_done_block .point_show_box {
	line-height: 1;
	font-size: 12px;
}
.serial_done_block .point_show_box p:first-child {
	margin-bottom: 10px;
}
.serial_done_block .point_show_box p:last-child {
	text-align: right;
}
.serial_done_list {
	margin: 20px auto;
	width: 100%;
	padding: 15px 20px;
}
}

/* =========================================================
　◆JANコード完了
========================================================= */
table.jancode{

	margin-left: auto;
    margin-right: auto;
}

table.jancode th{
	border:solid;
	border-color: #e2dbbf;
	border-collapse: collapse;
	background: #f5f2e9;
	padding: 15px 10px;
	text-align: center;
}

table.jancode td{
	border:solid;
	border-color: #e2dbbf;
	border-collapse: collapse;
	padding: 15px 10px;
	text-align: center;
}

/* =========================================================
　◆TOP
========================================================= */
#index {
	margin: 0 auto;
	width: 100%;
	max-width: 768px;
}
#index .btn {
	margin: 50px 0 70px;
	text-align: center;
}
#index .btn ul {
	width: 100%;
}
#index .btn li {
	width: 45%;
	display: inline-table;
	line-height: 1;
	margin: 0 1%;
}
#index a.btn_entry {
	width: 100%;
	margin: 5px auto 0 auto;
	border: 1px solid #cccccc;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	font-size: 20px;
	text-decoration: none !important;
	color: #ffffff !important;
	border: solid 1px #da7c0c;
	background: #f78d1d;
	background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
	background: -moz-linear-gradient(top, #faa51a, #f47a20);
 filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
	font-weight: bold;
	cursor: pointer;
	padding: 15px 0;
	display: block;
}
#index h2 {
	margin-top: 40px;
	text-align: center;
	font-size: 18px;
}
#index .step_block {
	display:flex;
	margin: 40px auto 0 auto;
	text-align: center;
}
#index .step_box {
	width: 31.3%;
	text-align: center;
	border: solid 1px #e92433;
	position: relative;
	padding: 0 15px 15px 15px;
	margin: 0 1%;
	background: #ffffff;
	min-height: 150px;
}
#index .circle {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 60px;
	/* [disabled]border-radius: 50%; */
	background: #fff;
	margin-top: -30px;
	color: #e92433;
}
#index .circle span {
  position: absolute;
  display: inline-block;
  left: 0;
  top: 33%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width :60px;
  text-align:center;
  font-size: 10px;
}
#index .circle span.num {
  font-size: 20px;
  font-weight: bold;
  top: 160%;
}
#index .ttl {
  font-weight: bold;
  font-size: 16px;
}
#index .text {
  font-size: 12px;
  margin-top: 15px;
}

@media screen and (max-width: 640px) {
#index {
}
#index .btn {
	margin: 40px 15px 40px;
}
#index .btn ul {
}
#index .btn li {
	width: 100%;
	display: block;
	margin: 0 0 15px 0;
}
#index a.btn_entry {

}
#index h2 {
	margin-top: 30px;
}
#index .step_block {
	display:block;
	margin: 40px 15px 0 15px;
}
#index .step_box {
	width: 100%;
	padding: 0 15px 15px 15px;
	margin: 0 0 30px 0;
	min-height: 50px;
}
#index .circle {
	height: 40px;
	margin-top: -30px;
}
#index .circle span {
}
#index .circle span.num {
}
#index .ttl {
}
#index .text {
  margin-top: 10px;
}
}
/* =========================================================
　◆退会
========================================================= */
#accordion {
	margin: 30px 0;
	border: 1px solid #333333;
}
#accordion .accordion_box {
	padding: 15px;
	text-align: center;
	background: url(../img/arrow_open.png) no-repeat 95% 35%;
	-moz-background-size: 19px 10px; /* Firefox */
	-webkit-background-size: 19px 10px; /* Safari,Chromeなど */
	-o-background-size: 19px 10px; /* Opera */
	-ms-background-size: 19px 10px; /* ie */
	background-size: 19px 10px;
}
#accordion .accordion_box:hover {
	cursor: pointer;
	background: #efefef url(../img/arrow_open.png) no-repeat 95% 35%;
	-moz-background-size: 19px 10px; /* Firefox */
	-webkit-background-size: 19px 10px; /* Safari,Chromeなど */
	-o-background-size: 19px 10px; /* Opera */
	-ms-background-size: 19px 10px; /* ie */
	background-size: 19px 10px;
}
#accordion .accordion_box.active {
	cursor: pointer;
	background: #efefef url(../img/arrow_close.png) no-repeat 95% 35%;
	-moz-background-size: 19px 10px; /* Firefox */
	-webkit-background-size: 19px 10px; /* Safari,Chromeなど */
	-o-background-size: 19px 10px; /* Opera */
	-ms-background-size: 19px 10px; /* ie */
	background-size: 19px 10px;
}
@media screen and (max-width: 640px) {
#accordion {
	margin: 15px;
}
#accordion .accordion_box {
	padding: 15px;
}
#accordion .accordion_box:hover {

}
#accordion .accordion_box.active {

}
}
/* =========================================================
　◆ナビ
========================================================= */
.gl_navi_2 {
	margin: 20px 30px;
}
.gl_navi_2 li {
	width: 49%;
	float: left;
}
.gl_navi_2 li a {
	display: block;
	border: 1px solid #004187;
	text-align: center;
	padding: 10px 0;
	background-color: #fff;
	text-decoration: none;
	background-image: url(../img/icon_gnavi_arrow.svg);
	background-position: 98% 50%;
	background-repeat: no-repeat;
}
.gl_navi_2 li:nth-child(odd) {
	margin-right: 1%;
}
.gl_navi_2 li:nth-child(even) {
	margin-left: 1%;
}
.gl_navi {
	background-color: #efefef;
	padding: 10px 30px;
	text-align: right;
}
.gl_navi li {
	background-image: url(../img/icon_gnavi_link.svg);
	background-position: left center;
	background-repeat: no-repeat;
	padding-left: 24px;
	display: inline-block;
	font-size: 13px;
}
.gl_navi li a {
	color: #4d4d4d;
	text-decoration: none;
}
@media screen and (max-width: 640px) {
.gl_navi_2 {
	margin: 20px 15px;
}
.gl_navi_2 li {
	width: 49%;
	float: left;
}
.gl_navi_2 li a {
	display: block;
	border: 1px solid #004187;
	text-align: center;
	padding: 10px 0;
	background-color: #fff;
	text-decoration: none;
	background-image: url(../img/icon_gnavi_arrow.svg);
	background-position: 98% 50%;
	background-repeat: no-repeat;
}
.gl_navi_2 li:nth-child(odd) {
	margin-right: 1%;
}
.gl_navi_2 li:nth-child(even) {
	margin-left: 1%;
}
.gl_navi {
	padding: 15px;
}
.gl_navi li {

}
.gl_navi li:last-child {

}
}
/* =========================================================
　◆ゲーム
========================================================= */
.result_text_area {
	margin: 30px auto;
	text-align: center;
	font-size: 16px;
}
.omedeto {
	font-size: 24px;
	margin: 0 0 10px 0;
	text-align: center;
}
.result_text_area .lead {
	margin-top: 10px;
}
.result_text_area .note {
	margin: 10px 0 0 0;
	font-size: 14px;
}
.game_image {
	margin: 0 auto;
	width: 76%;
}
.game_lead {
	text-align:center;
	color: #e92433;
	margin-top: 14px;
	margin-bottom: 10px;
}

@media screen and (max-width: 640px) {
.result_text_area {
	margin: 20px auto;
	font-size: 14px;
}
.omedeto {
	font-size: 20px;
	margin: 0 0 10px 0;
	text-align: center;
}
.result_text_area .lead {
	margin-top: 10px;
}
.result_text_area .note {
	margin: 10px 0 0 0;
	font-size: 12px;
}
.game_image {
	margin: 0 auto;
	width: 100%;
}
.game_lead {
	text-align:center;
	color: #e92433;
	margin-top: 14px;
}
.result_text_area .wc {
	font-size: 20px;
}
}
/* =========================================================
　◆ギフトコード表示
========================================================= */
.gift_code_area {
	text-align: center;
	border: 3px solid #e2dbbf;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	padding: 18px 15px 15px 15px;
	margin: 25px auto 0 auto;
	width: 80%;
	max-width: 500px;
}
.gift_code_area dt {
	margin: 0 auto 0 auto;
}
.gift_code_show {
	font-size: 24px;
}
.gift_code_att {
	font-size: 12px;
	max-width: 500px;
	margin: 10px auto 0 auto;
	text-align: center;
}
.gift_code_info_area {
	margin: 40px auto 0 auto;
}
.gift_code_info_area h3 {
	margin: 30px 0 5px 0;
	font-size: 16px;
}
@media screen and (max-width: 640px) {
.gift_code_area {
	border: 2px solid #e2dbbf;
	padding: 18px 0 15px 0;
	margin: 15px auto 0 auto;
	width: 100%;
	max-width: 500px;
}
.gift_code_area dt {

}
.gift_code_show {
	font-size: 22px;
}
.gift_code_att {

}
.gift_code_info_area {
	margin: 30px auto 0 auto;
}
.gift_code_info_area h3 {
	margin: 30px 0 5px 0;
	font-size: 16px;
}
}

/* =========================================================
　◆ギフトコード選択
========================================================= */
#wrapper #contents .page_inner .inner .gift_select_box {
	margin: 30px 0;
}
#wrapper #contents .page_inner .inner .gift_select_box li {
	margin: 20px 0;
	border: 1px solid #e2dbbf;
	padding: 20px 15px;
	display: table;
	table-layout: fixed;
	width: 100%;
}
#wrapper #contents .page_inner .inner .gift_select_box li .leftbox {
	display: table-cell;
	vertical-align: middle;
	width: 50%;
	font-size: 16px;
	font-weight: bold;
    padding-right: 2%;
}
#wrapper #contents .page_inner .inner .gift_select_box li .rightbox {
	width: 48%;
	display: table-cell;
	vertical-align: middle;
}
#wrapper #contents .page_inner .inner .gift_select_box li .rightbox .btn_next {
	width: 100%;
	text-align: center;
}
@media screen and (max-width: 640px) {
#wrapper #contents .page_inner .inner .gift_select_box {
	margin: 20px 0;
}
#wrapper #contents .page_inner .inner .gift_select_box li {
	margin: 10px 0;
	padding: 15px 10px;
	display: block;
	table-layout: fixed;
	width: 100%;
}
#wrapper #contents .page_inner .inner .gift_select_box li .leftbox {
	display: block;
	width: 100%;
	margin-bottom: 10px;
	font-size: 14px;
}
#wrapper #contents .page_inner .inner .gift_select_box li .rightbox {
	width: 100%;
	display: block;
}
#wrapper #contents .page_inner .inner .gift_select_box li .rightbox .btn_next {
	width: 100%;
	text-align: center;
}
}

/* =========================================================
　◆よくあるご質問
========================================================= */
#faq_accordion {
	
}
#faq_accordion .faq_inn {
	border-top: solid 1px #e2dbbf;
}
#faq_accordion .faq_q {
	padding: 15px 50px 15px 34px;
	background: url(../img/arrow_open.png) no-repeat 98% 50%;
	-moz-background-size: 19px 10px; /* Firefox */
	-webkit-background-size: 19px 10px; /* Safari,Chromeなど */
	-o-background-size: 19px 10px; /* Opera */
	-ms-background-size: 19px 10px; /* ie */
	background-size: 19px 10px;
	border: solid 1px #e2dbbf;
	border-top: none;
	text-indent: -1em;
}
#faq_accordion .faq_q:hover {
	cursor: pointer;
	background: #ffffff url(../img/arrow_open.png) no-repeat 98% 50%;
	-moz-background-size: 19px 10px; /* Firefox */
	-webkit-background-size: 19px 10px; /* Safari,Chromeなど */
	-o-background-size: 19px 10px; /* Opera */
	-ms-background-size: 19px 10px; /* ie */
	background-size: 19px 10px;
}
#faq_accordion .faq_q.active {
	cursor: pointer;
	background: #ffffff url(../img/arrow_close.png) no-repeat 98% 50%;
	-moz-background-size: 19px 10px; /* Firefox */
	-webkit-background-size: 19px 10px; /* Safari,Chromeなど */
	-o-background-size: 19px 10px; /* Opera */
	-ms-background-size: 19px 10px; /* ie */
	background-size: 19px 10px;
}
#faq_accordion .faq_a {
	border: solid 1px #e2dbbf;
	border-top: none;
	padding: 15px 50px 15px 34px;
	text-indent: -1em;
	background-color: #f5f2e9;
}
#faq_accordion .faq_q_ttl {
	color: #da7c0c;
	font-weight: bold;
	margin-right: 5px;
}
#faq_accordion .faq_a_ttl {
	color: #666666;
	font-weight: bold;
	margin-right: 5px;
}

@media screen and (max-width: 640px) {
#accordion {
	margin: 15px;
}
#accordion .accordion_box {
	padding: 15px;
}
#accordion .accordion_box:hover {

}
#accordion .accordion_box.active {

}
}
/* =========================================================
　◆ログイン
========================================================= */
#form_login {
	margin: 30px auto 0 auto;
	padding: 20px 20px 30px 20px;
	background: #f5f2e9;
    border: 1px solid #e2dbbf;
}
#form_login .left_box {
	float: left;
	width: 48%;
	margin-right: 2%;
}
#form_login .right_box {
	float: left;
	width: 48%;
	margin-left: 2%;
}
#form_login h2 {
	font-size: 16px;
}
#form_login dt {
	margin-top: 15px;
}
#form_login .btn {
	margin: 30px auto 0 auto;
}
@media screen and (max-width: 640px) {
#form_login {

}
#form_login .left_box {
	float: none;
	width: 100%;
	margin-right: 0;
}
#form_login .right_box {
	float: none;
	width: 100%;
	margin-left: 0;
	margin-top: 20px;
	border-top: solid 1px #ebe3bd;
	padding-top: 20px;
}
#form_login .btn {
	margin: 20px auto 0 auto;
}
}
/* =========================================================
　◆共通
========================================================= */

.indent {
	text-indent: -1em;
	margin-left: 1em;
}
.indent_num {
	text-indent: -1.5em;
	margin-left: 1.5em;
}
.clear {
	clear: both;
}
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}
img {
	width: 100%;
	height: auto;
}
.main {
}
.main img {
	width: 100%;
	height: auto;
}
.color_st {
	color: #e5004f;
}
.color_mk {
	color: #999999;
}
.ex {
	color: #666666;
	font-size: 12px;
}
.thanks {
	color: #e92433;
}
.att {
	color: #e92433;
}
.alert {
	color: #e92433;
}
.alertmsg {
	border: 2px solid #f27f88;
	background-color: #fff4f2;
	color: #e92433;
	margin-bottom: 20px;
	padding: 15px 10px;
	text-align: center;
}
span.must {
	color: #e92433;
	display: inline-block;
	font-size: 12px;
	margin-left: 5px;
}
.kome {
	font-size: 12px;
}
.align_c {
	text-align: center;
}
.note_box {
	background: #f5f2e9;
	border: 1px solid #e2dbbf;
	margin: 20px 0;
	padding: 15px 10px;
}
.qrmsg {
	margin-bottom: 20px;
	padding: 15px 10px;
	color: #8a6d3b;
	text-align: center;
	border: 2px solid #faebcc;
	background: #fcf8e3;
	font-weight: bold;
}
/* =========================================================
　◆Spacer
========================================================= */

.mb5 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb15 {
	margin-bottom: 15px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb25 {
	margin-bottom: 25px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb35 {
	margin-bottom: 35px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb45 {
	margin-bottom: 45px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb55 {
	margin-bottom: 55px !important;
}
.mt5 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt25 {
	margin-top: 25px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt35 {
	margin-top: 35px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt45 {
	margin-top: 45px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mt55 {
	margin-top: 55px !important;
}


/* =========================================================
　◆表示切替
========================================================= */
.pcn {
	display: none;
}
@media screen and (max-width: 640px) {
.spn {
	display: none;
}
.pcn {
	display: block;
}
}
