@charset "shift_jis";

/* *** common *** */

body {
	/* font size??????? */
	-webkit-text-size-adjust: 100%;
}

#contents_area {
	font-family: Meiryo, メイリオ, 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

#contents_area .clearfix::after {
	content: '';
	clear: both;
	display: block;
}

.pageTop {
	text-align: right;
	color: #88B7B2;
	font-size: 9px;
	margin: 3em auto;
	max-width: 1130px;
	clear: both;
	min-width: 970px;
	width: 100%;
}
.pageTop a {
	font-size: 12px;
	padding-left: 5px;
	text-decoration: none;
}
#reserve_area {
    font-size: 95%;
}

h1 {
    margin: -5px auto 25px;
    font-weight: bold;
    font-size: 18px;
    max-width: 1120px;
}

/*********************
    contents_area
*********************/

#contents_area {
	
}
#contents_area img {
	vertical-align: bottom;
	
}
#contents_area a:hover {
	opacity: 0.8;
}

#contents_area img {
	width: 100%;
	height: auto;
}

#contents_area .text {
    text-align: justify;
    text-justify: inter-ideograph;
}

#contents_area label input{
	margin-right: 3px;
}

/*
#contents_area .gift_list {
	width: 91%;
	margin: 5em auto 0;
	display: flex;
	justify-content: space-between;
	flex-flow: row wrap;	
}
#contents_area .gift_list li {
	width: 48%;
	margin: 0 1% 3em;
	padding: 15px;
	border-radius: 10px;
	position: relative;
}
#contents_area .gift_list li .gift_image {
	width: 100%;
	max-width: 439px;
	margin: 0 auto 1em;
}
*/
#contents_area #requirements {
	width: 90%;
	margin: 0 auto 4em;
	max-width: 650px;
}
#contents_area #requirements h3 {
	color: #d7b36e;
	font-size: 245%;
	font-weight: bold;
	padding: 0 0 0.5em;
}
#contents_area #requirements p {

}
#contents_area #requirements .table_wrap {
	padding: 5%;
}
#contents_area #requirements table {
	background: #fff;
	width: 100% !important;
	border: solid 2px #F9D3E9;
	border-collapse: collapse;
    border-spacing: 0;
}
#contents_area #requirements table tr {

}
#contents_area #requirements table tr th {
	border: solid 1px #666;
	padding: 2%;
	text-align: center;
	width: 16%;
	font-size: 110%;
	font-weight: bold;
}
#contents_area #requirements table tr td {
	border: solid 1px #666;
	padding: 5%;
}
#contents_area #requirements table tr td a {
	display: block;
	margin: 0.5em 0;
	max-width: 242px;
	width: 40%;
}
#contents_area #requirements table tr td a img {
	width: 100%;
	height: auto;
}

#contents_area .attention{
	text-align: center;
	margin: 30px auto;
	font-size:16px;
	line-height:30px;
	width: 98%;
	color: #333;
}


#contents_area .attention{
	text-align: center;
	margin: 30px auto;
	font-size:16px;
	line-height:30px;
	width: 98%;
	color: #333;
}

#contents_area .provisional{
	width: 950px;
}
#contents_area #privacy_policy {
	border:1px solid #000;
    width: 90%;
    margin: 20px auto 0;
    background-color: #fff;
}
#contents_area #policy_list {
	display: none;
	font-size: 13px;
	color: #333;
	line-height: 1.6em;
	background: #FFF;
    padding: 5px 0;
}
#contents_area #btn_privacy_policy {
	padding: 25px 0 30px;
	text-align: center;
	font-size:18px;
	background:#fff;
	cursor:pointer;
    position: relative;
}
#contents_area #btn_privacy_policy:after {
    content: "";
    display: block;
    position: absolute;
    left: calc(50% - 10px);
    bottom: 15px;
    z-index: 10;
    width: 15px;
    height: 15px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    transform: rotate(135deg);
}
#contents_area #privacy_policy dl{
	margin: 25px auto;
	width: 95%;
}
#contents_area #privacy_policy .exception{
	margin-bottom: 0;
}
#contents_area #privacy_policy .admin{
	margin-top: 25px;
	font-weight: bold;
}
#contents_area #privacy_policy a{
	color: #333;
	text-decoration: underline;
}



#bg_form{
	background-color:#E4F2FB;
}
#bg_form h3 {
	background: #183A86;
	text-align: center;
	font-size: 200%;
	padding: 3% 0;
	font-weight: bold;
	color: #fff;
}

/*----------------
    form_common
----------------*/
#application_form .required {
    color: red;
}
form{
	padding-bottom: 50px;
	width: 100%;
}
form h3{
	margin-bottom: 24px;
}
form #contents828{
	width: 96%;
	margin: 0 auto;
}
form #contents828 label {
	vertical-align: middle;
}
form .period{
	font-size: 16px;
	margin-bottom: 18px;
}
form .period dl {
	display: flex;
}
form .period dt{
	white-space: nowrap;
}
form .period dd{
	line-height: 22px;
	padding: 4px 0;
}
form .period span{
	display: inline-block;
	margin-right: 10px;
	padding: 4px 15px;
	background-color: #183A85;
	font-size: 120%;
	color: #fff;
	font-weight: bold;
	vertical-align: middle;
	line-height: 22px;
	text-align: center;
}

form table{
	width: 100%;
	background-color: #FFF;
	font-size: 15px;
	margin-bottom: 30px;
}
form .red_color{
	color: #FF0000;
	font-weight: normal;
}
form .left_space{
	margin-left: 1em;
}
form table th{
	box-sizing: border-box;
	width: 40%;
	border-right: 1px solid #DDD;
	border-bottom: 1px solid #DDD;
	padding: 2%;
	vertical-align: top;
	text-align:left;
	line-height: 1.4em;
}
form table th p{
	font-weight:normal;
	font-size:13px;
	line-height:1.2
}

form table td{
	box-sizing: border-box;
	width: 60%;
	border-bottom: 1px solid #DDD;
	padding: 10px 25px;
	text-align: left;
}
form table input{
	height: 25px;
	padding-left: 5px;
}
form table .clearfix input{
	height: auto;
	margin-right: 0.5em;
}

form table .clearfix li {
	margin-bottom: 10px;
	padding-left: 4em;
	text-indent: -4em;
}

#contents_area a.link_popup {
	text-decoration: underline;
	display: inline-block;
	margin-top: 0.5em;
}


/*---------------------
    form_indivisual
---------------------*/
#contents_area form #consent{
	margin-top:37px;
	padding-bottom: 30px;
}
#contents_area form #contents630{
	width: 90%;
	margin: 0 auto;
	background-color: #EDD97E;
	padding: 30px 0;
	font-weight:bold;
}
#contents_area form #contents630 .check{
	font-size: 19px;
	text-align: center;
	margin-bottom: 10px;
}

#contents_area form #contents630 .check label {
	cursor: pointer;
}

#contents_area form #contents630 .check label.no_check{
	cursor: auto;
	color:#888;
}

#contents_area form #contents630 .check input{
	margin-right: 10px;
}
#contents_area form #contents630 .terms{
	font-size: 14px;
	padding: 0 5%;
	text-align: center;
}
#contents_area form table input[type="text"]{
	/*width: 90%;*/
}
#contents_area form table .name input[type="text"],
#contents_area form table .mailAddress input[type="text"],
#contents_area form table .mailAddress_c input[type="text"]{
	width: 80%;
}

#contents_area form table .radio_btn input{
	height: auto;
	margin: 0 40px 0 10px;
}
#contents_area form table .age input{
	width: 87px;
	margin-right: 15px;
}
#contents_area form table .postalCode input{
	width: 203px;
	margin-right: 15px;
}
#contents_area form table .address input{
	width: 520px;
}

#contents_area form table .code_num em{
	font-style:normal
}
#contents_area form table .code_num p{
	padding-top:10px;
}

#contents_area form table .code_num .red_color li{
	position: relative;
	margin-left: 1em;
}

#contents_area form table .code_num .red_color li:before{
	content: "※";
	position: absolute;
	z-index: 1;
	left: -1em;
}

#contents_area form table .mailAddress input{
	margin-bottom: 15px;
}

#contents_area form table .code_num em,
#contents_area form table .code_num p,
#contents_area form table .mailAddress p,
#contents_area form table .mailAddress ul,
#contents_area form table p.kome{
	font-size: 100%;
	line-height: 1.4em;
}

#contents_area form table .last input{
	width: 290px;
	margin-bottom: 10px;
}
#contents_area form table .last th,
#contents_area form table .last td{
	border-bottom: none;
}


#contents_area form #source{
	background-color: #FFF;
	padding: 20px 27px 27px;
	margin-bottom: 30px;
	font-size: 17px;
	text-align: left;
}
#contents_area form #source h4 {
	background: #000;
	color: #FFF;
	text-align: center;
	font-size: 110%;
	padding: 10px;
	font-weight: bold;
}
#contents_area form #source .question{
	padding: 20px 0;
}
#contents_area form #source ul{
	padding-bottom:10px;
	text-align: center;
}
#contents_area form #source ul li{
	display: inline-block;
	margin-bottom: 20px;
	margin-right: 30px;
}

#contents_area form #source #question_media ul .li_02{
	width:150px;
}


#contents_area form #source ul li input{
	margin-right: 7px;
}
#contents_area form #source .annotation{
	font-size: 14px;
	margin-bottom: 15px;
}
#contents_area form #source textarea{
	width: 764px;
	height: 90px;
	resize: none;
	padding: 5px;
}


#contents_area form #episode{
	background-color: #FFF;
	padding: 0 27px 27px;
	margin-bottom: 40px;
}
#contents_area form #episode .red_color{
	font-size: 18px;
	padding: 16px 0;
}
#contents_area form #episode textarea{
	width: 764px;
	height: 400px;
	resize: none;
	padding: 5px;
}

#contents_area form #submitBtn input[type="submit"]{
	-webkit-appearance: none;
	display:block;
	margin:0 auto;
	padding:30px 0;
	width:70%;
	background: #D84092;
	text-align:center;
	font-weight:bold;
	font-size:2em;
	color:#fff;
	border:none;
	cursor:pointer;
	box-shadow:2px 2px 2px 0px rgba(0,0,0,0.4);
}

#contents_area form #submitBtn input[type="submit"]:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}
#contents_area form #submitBtn input[type="submit"]:disabled {
	background: #999;
	color: #fff;
	cursor: default;
	box-shadow:0px 0px 0px 0px rgba(0,0,0,0.4);
}
#contents_area form #submitBtn input[type="submit"]:disabled:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
}
form #msg1{
	padding: 5px 0 0 5px;
	font-size: 15px;
	text-align: right;
}

/*---------------------------------------------------*/
#contents_area .planning{
	margin: 30px 0;
}
#contents_area .planning p{
	text-align: center;
}
#contents_area .planning .sponsor{
	font-size: 16px;
	margin-bottom: 15px;
}
#contents_area .planning .mail_contact{
	font-size: 14px;
}
#contents_area .planning .mail_contact span{
	font-size: 16px;
	display: block;
	margin-top: 10px;
}
#contents_area .planning .mail_contact span a{
	color:#0085c4
}
#contents_area .planning .mail_contact img{
	vertical-align: middle;
	margin-right: 5px;
	width: 1.2em;
	height: auto;
}

#contents_area #contact_wrap {
	text-align: center;
    padding: 4em;
    line-height: 2.5;
}
#contents_area #contact_wrap p img {
	vertical-align: initial;
	display: inline-block;
	margin-right: 5px;
	width: 14px;
	height: 11px;
}

/*---------------------------------------------------*/
/* Modal
/*---------------------------------------------------*/
#modal-bg-No {
	display:none;
	width:100%;
	height:100%;
	background-color: rgba(0,0,0,0.8);
	position:fixed;
	top:0;
	left:0;
	z-index: 1000000;
}
#customerNo {
	position:fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 503px;
	margin: auto;
	display: none;
	z-index: 1000005;
}
#customerNo .inner {
	position: relative;
}

#customerNo #close {
	position: absolute;
	top: -4%;
	right: -2%;
	cursor: pointer;
}

/*---------------------------------------------------*/
/* Common Color
/*---------------------------------------------------*/
#contents_area #wrap_gift_list{
	background-color: #fdede7;
	padding: 25px 0;
	margin-bottom: 15px;
}
#contents_area #requirements h3 {
	color: #d7b36e;
}

.question_dl dt{
	color: #d7b36e;
}

.question_dl dt .area_name{
	color: #333;
	font-size: 90%;
}

.question_dl dt .small{
	font-size: 90%;
}

#bg_form{
	background-color: #FFFFF4;
}

#bg_form h3,
form .period span{
	background-color: #d7b36e;
}

#contents_area form #submitBtn input[type="submit"],
#contents_area form #submitBtn input[type="submit"]:disabled,
#contents_area form #submitBtn input[type="submit"]:disabled:hover{
	background-color: #d7b36e;
}

.change_pc,
.change_sp{
	margin-top: 2em;
	text-align: center;
}


/*#contents_area #bg_form{
	display: none;
}*/