/* TOPメインコンテンツ */

main{
	position: relative;
	padding-top: 40px;
}

.main_contents{
	max-width: 1100px;
	margin: auto;
}

.top_logo .top_logo_inner {
height: 100px;
width: 100px;
border: 3px solid #000;
border-radius: 50%;
position: absolute;
top: 48px;
left: 50%;
transform: translate(-50%, 0);
text-align: center;
box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, .5);

}
.top_logo .top_logo_inner .top_logo_txt{
	position: absolute;
	top: 55%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100px;
	height: 60px;
	line-height: 1.4;
	letter-spacing: 0;
}
.top_logo .top_logo_inner .top_logo_txt span{
	font-weight: bold;
	font-size: 2.3rem;
}
.present_sec01{
	margin-bottom: 6rem;
}
.present_sec01 h2{
	text-align: center;
}
.present_sec01 h2 img{
	max-width: 160px;
	margin: auto;
}
.present_sec01 .present_txt{
	text-align: center;
	border-top: 3px dotted #000;
	border-bottom: 3px dotted #000;
	padding: 1em 0;
	max-width: 284px;
	margin: auto;
	margin-bottom: 3em;
}
.present_sec01 .present_txt p{
	margin: 0;
}

/* .present_sec01 .present_box a{
	padding-top: 50%;
	background: #ccc;
} */
.present_sec01 .present_box{
	text-align: center;
}
.present_sec01 .present_box img{
	max-width: 760px;
	margin: auto;
	/* border: 2px solid #000; */
}
.present_sec01 .bunner_title{
	font-weight: bold;
	font-size: 1.2em;
}
.present_sec01 .bunner_text{
	max-width: 794px;
    display: block;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.present_sec01 .present_box a{
	transition: 0.5s;
	max-width: none;
	opacity: 1;
}
.present_sec01 .present_box a:hover{
	opacity: 0.8;
}
.present_sec01 a{
	color: #8A2786;
	max-width: 150px;
    margin: auto;
	cursor: pointer;
}
.present_sec01 .container .row:not(:last-child){
	margin-bottom: 7%;
}

@media(max-width: 768px){
.present_sec01 .container .row:not(:last-child){
	margin-bottom: 12%;
}	
}


.present_sec02{
	background: #f0eaf4;
	padding: 3rem 10px;
}
.present_sec02 .container .row:first-child{
	text-align: center;
}
.present_sec02 .container .row:first-child h2{
	margin-bottom: 2rem;
}
.present_sec02 .container .row:first-child h2 img{
	max-width: 220px;
	width: 100%;
	display: block;
	margin: auto;
}

.present_sec02 .container .row:first-child .form_text{
	margin-bottom: 3rem;
}

.present_sec02 .container .row:last-child table{
	width: 100%;
	margin-bottom: 2rem;
}
.present_sec02 .container .row:last-child .col .form_box{
	width: 100%;
	max-width: 800px;
	margin: auto;
}

.present_sec02 .container .row:last-child table td{
	width: 100%;
	display: block;
}
.present_sec02 .container .row:last-child table td input{
	width: 100%;
	font-size: 1.5rem;
	padding: 0.5rem 10px;
}
.present_sec02 .container .row:last-child table tr:not(:last-child) td:last-child{
	margin-bottom: 1rem;
}

.present_sec02 .container .row:last-child table td input{
	width: 100%;
	font-size: 1.5rem;
	padding: 0.5rem 10px;
}

.present_sec02 .container .row:last-child .form_box div{
	text-align: center;
}
.present_sec02 .container .row:last-child .form_box .button_box{
	text-align: center;
}
.present_sec02 .container .row:last-child .form_box .policy_box{
	margin-bottom: 2rem;
}
.present_sec02 .container .row:last-child .form_box .button_box button{
	background: #fff;
	font-size: 1rem;
	padding: 1rem 10px;
	letter-spacing: 0.5rem;
	text-align: center;
	border-radius: 10px;
	max-width: 250px;
	width: 100%;
	border: 1px solid #000;
	cursor: pointer;
	transition: 0.5s;
}
.present_sec02 .container .row:last-child .form_box .button_box button:hover{
	background: #e1c6f3;
}
.top_logo{
	text-align: center;
	margin-top: 20px;
}
.top_logo .txt_box{
	font-weight: bold;
	font-size: 2rem;
}
.top_logo .img_box{
	max-width: 80px;
	margin: auto;
}

.attention{
	color: #686868;
	font-size: 0.8rem;
}
.required{
	color: #f00;
}

@media(max-width: 768px){
	.main_contents{
		padding: 0 10px;
	}
}

input[type="checkbox"]#policy{
	transform: scale(1.8);
	width: 60px;
}
@media(max-width: 768px){
	input[type="checkbox"]#policy{
		transform: scale(1.5);
		width: 30px;
	}
}
.sended_present_box{
	text-align: center;
	margin-bottom: 0.8em;
}
.sended_present_box h3{
	margin-bottom: 0em;
	margin-top: 0.5em;
}
.sended_present_box .present_content{
	margin-top: 0;
}
.sended_present_box .winner{
	margin-top: 0;
}

.info_sec .container .row .span_12 > p{
	margin-bottom: 0;
}
.present_sec02 .container .row:last-child table tr:first-child td div{
	text-align: left;
}
.present_sec02 .container .row:last-child table tr:first-child td label input{
	display: inline-block;
	width: 20px;
	height: 20px;
}
.present_sec02 .container .row:last-child table tr:first-child td label{
	text-align: left;
	display: block;
}

.present_page_bunner_box{
    max-width: 500px;
    margin: auto;
}

.present_page_bunner_box .present_page_inner .img_link.not_post{
    /* margin-top: 10px; */
}