@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700;900&display=block');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=block');

* {
	margin:0;
	padding:0;
	text-shadow:none;
	letter-spacing:-0.01px;
	font-weight:normal;
	line-height:1.6;
	-webkit-text-size-adjust:100%;
	font-size:12px;
	font-family:"Roboto","Noto Sans JP","Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体",arial,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3",Osaka,"CI",Meiryo,"メイリオ","lroSVbN","ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#232323;
    outline : none;
	font-feature-settings: "palt";
	text-align:left;
	vertical-align: baseline;
}

html {
	position:relative;
}

body {
	position:relative;
	background:url(../img/bg.png) top center #ffffff;
	background-size:1000px auto;
}

body.lock {
	overflow:hidden;
}

a {
	outline:0;
	border:0;
	color:#0099ff;
	text-decoration:underline;
}

a img {
	transition:1.0s;
}

a img:hover {
	opacity:0.5;
}

img {
	vertical-align:top;
	border:0;
    outline : none;
}

ul,ol {
	list-style:none;
}

/* コンテント */

.content {
	width:1000px;
	margin:0 auto;
}

/* ヘッダー */

#first {
	position:relative;
	background:url(../img/bg_main_pc.jpg) no-repeat top center;
}

#first .content {
	position:relative;
}

#first h1 {
	width:1200px;
	margin:0 auto;
}

#first h1 img {
	width:100%;
}

#first p {
	margin:40px 0 0 0;
	font-size:24px;
	text-align:center;
	font-weight:700;
	color:#ffffff;
	background:#f08200;
	border-radius:15px;
	padding:20px;
}

#first p span {
	font-size:18px;
	font-weight:700;
	color:#ffffff;
}

#first p span.large {
	font-size:30px;
	color:#fcf304;
	display:block;
	text-align:center;
}

/* toForm */

.toForm {
	text-align:center;
	margin:30px 0 50px 0;
}

.toForm a {
}

.toForm .toform_h {
	font-size:24px;
	text-align:center;
	margin:0 0 5px 0;
	font-weight:700;
	color:#ffffff;
}

.toForm .toform_s {
	font-size:16px;
	text-align:center;
	font-weight:500;
	margin:0 0 20px 0;
	color:#ffffff;
}

.toForm .toform_p {
	font-size:30px;
	text-align:center;
	margin:20px 0 0 0;
	font-weight:700;
	color:#ffffff;
}

.toForm .toform_p span {
	font-size:48px;
	font-weight:700;
	opacity:1;
	color:#ffffff;
}

.toForm a.die {
	opacity:0.25;
	pointer-events:none;
}

.toForm a img {
	margin:0 auto;
}

/* 見出し */

h3 {
	text-align:center;
}

/* schedule */

#schedule {
	padding:40px 0 0 0;
}

#schedule p {
	margin:30px 0 0 0;
}

#schedule p img {
	width:100%;
}

/* present */

#wchance ,
#present {
	padding:40px 0 0 0;
}

#wchance h3,
#present h3 {
	color:#29a7e1;
}

#wchance .present_text,
#present .present_text {
	font-size:16px;
	color:#232323;
	text-align:center;
}

#wchance .present_item,
#present .present_item {
	overflow:hidden;
	clear:both;
	margin:20px 0 0 0;
}

#present .present_item_in {
	float:left;
	background:#fff0de;
	border-radius:15px;
	margin:0 0 20px 0;
	padding:5px 0 0 0;
}

#present .present_item_in:nth-child(even) {
	float:right;
}

#wchance .present_item_in {
	float:left;
	background:#fff0de;
	border-radius:15px;
	margin:0 0 20px 0;
	padding:10px 0 0 0;
}

#wchance .present_item_in:nth-child(even) {
	float:right;
}

/* step */

#step {
	padding:30px 0 50px 0;
}

#step h4 {
	width:70px;
	margin:0 auto;
}

#step h4 img {
	width:100%;
}

#step .step_item {
	margin:30px 0 0 0;
	padding:10px 20px 50px 20px;
	background:#ffffff;
	border-radius:15px;
}

#step .step_item_in {
	padding:20px 20px 10px 20px;
}

#step .step_item_in .text_normal {
	font-size:16px;
	text-align:center;
	margin:10px auto 0 auto;
}

#step .step_item_in .text {
	padding:15px 0 0 0;
}

#step .step_item_in .text p {
	font-size:26px;
	font-weight:800;
	text-align:center;
	color:#f08200;
}

#step .step_item_in .text p span {
	font-size:18px;
	font-weight:800;
	color:#f08200;
}

#step .step_item_in .text_list {
}

#step .step_item_in .text_list ul {
	margin:30px 15px 0 15px;
}

#step .step_item_in .text_list li {
	padding-left:14px;
	font-size:14px;
	position:relative;
}

#step .step_item_in .text_list li:before {
	display: inline;
	position: absolute;
	top:3px;
	left:0;
	content: "■";
	font-size:10px;
	color:#a0c364;
}

#step .step_item_in .text_list li span {
	font-size:14px;
}

#step .step_item_in .text_list li a {
	font-size:14px;
	color: #232323;
}

/* ボタン */

.support {
	padding:50px 0 20px 0;
	overflow:hidden;
	clear:both;
}

.link {
	padding:40px 0 0 0;
	overflow:hidden;
	clear:both;
}

.support .support_in,
.link .link_in {
	padding:0 0 10px 0;
	width:calc( 50% - 10px );
}

.support .support_in:nth-child(2n+1),
.link .link_in:nth-child(2n+1) {
	float:left;
}

.support .support_in:nth-child(2n),
.link .link_in:nth-child(2n) {
	float:right;
}

.support .support_in a {
	display:block;
	line-height:65px;
	height:65px;
	text-align:center;
	color:#ffffff;
	font-size:20px;
	font-weight:500;
	text-decoration: none;
	background:#f08200;
	position: relative;
	border-radius:100px;
}

.link .link_in a {
	display:block;
	line-height:65px;
	height:65px;
	text-align:center;
	color:#ffffff;
	font-size:20px;
	font-weight:500;
	text-decoration: none;
	position: relative;
	background:#e85a98;
	border-radius:100px;
}

.support .support_in a .dli-plus,
.link .link_in a .dli-plus {
	display: inline-block;
	vertical-align: middle;
	color: #ffffff;
	line-height: 1;
	width: 1em;
	height: 0.1em;
	background: currentColor;
	border-radius: 0.1em;
	position: absolute;
	top:32.5px;
	right:32.5px;
	margin:0 0 0 15px;
}

.support .support_in a .dli-plus::before,
.link .link_in a .dli-plus::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: inherit;
	border-radius: inherit;
	transform: rotate(90deg);
}

/* 対象期間 */

.ticket_end_out {
	text-align:center;
}

.ticket_end {
	text-align:center;
	color:#29a7e1;
	font-size:28px;
	font-weight:700;
	margin:20px 0 0 0;
	padding:0 30px;
	background:#ffffff;
	display:inline-block;
}

.ticket_end span {
	color:#29a7e1;
	font-size:42px;
	font-weight:700;
}

.ticket_end span.small {
	font-size:14px;
	font-weight:500;
	display:inline-block;
	margin:0 0 0 5px;
}

/* 応募締切 */

.campaign_end {
	text-align:center;
	color:#ffffff;
	font-size:24px;
	font-weight:700;
	margin:10px 0 0 0;
}

.campaign_end span {
	color:#ffffff;
	font-size:36px;
	font-weight:700;
}

/* ポップアップ */

.kiyaku_box {
	display:none;
}

.kiyaku_box_in {
	position:fixed;
	background:rgba(0,0,0,0.85);
	top:0;
	left:0;
	bottom:0;
	right:0;
	z-index:10010 !important;
}

.kiyaku_text {
	position:fixed;
	top:15%;
	left:20%;
	bottom:15%;
	right:20%;
	background:#ffffff;
	overflow:hidden;
	z-index:10011 !important;
}

.kiyaku_text_in_out {
	overflow-y:scroll;
	scrollbar-width:10px;
	margin:auto;
	height:100%;
}

.kiyaku_text_in {
	position:relative;
	padding:50px 50px;
	z-index:10012 !important;
	margin:auto;
}

.kiyaku_text_in_out::-webkit-scrollbar {
	width:10px;
}

.kiyaku_text_in_out::-webkit-scrollbar-track {
	background:#ffffff;
}

.kiyaku_text_in_out::-webkit-scrollbar-thumb {
	background-color: rgba(0, 0, 0, 0.5);
	box-shadow:0 0 0 1px rgba(255, 255, 255, 0.5);
}

.kiyaku_text_in_out::-webkit-scrollbar-corner {
	display: none;
}

.kiyaku_close {
	display:block;
	position:fixed;
	top:20px;
	right:20px;
	width:60px;
	height:60px;
	transition:0.35s;
	cursor: pointer;
	z-index:10013 !important;
}

.kiyaku_close:hover {
	opacity:0.5;
}

.kiyaku_close::before,
.kiyaku_close::after {
	content: "";
	position: absolute;
	top:50%;
	left:50%;
	width:2px;
	height:60px;
	background:#ffffff;
}
 
.kiyaku_close::before {
	transform: translate(-50%,-50%) rotate(45deg);
}
 
.kiyaku_close::after {
	transform: translate(-50%,-50%) rotate(-45deg);
}

/* ポップアップ - インナー */

.kiyaku_box {
	padding:90px 0 20px 0;
	position:relative;
}

/* ポップアップ - 見出し */

.kiyaku_box h2 {
	text-align:center;
	margin:0 0 5px 0;
}

.kiyaku_box h2 span {
	display:inline-block;
	border-bottom:2px solid #000000;
	font-size:30px;
	font-weight:600;
	color:#000000;
	margin:0 0 10px 0;
}

.kiyaku_box h2 span.small {
	display:inline;
	font-size:24px;
	font-weight:600;
	color:#000000;
	border-bottom:0;
	margin:0;
}

.kiyaku_box h2 span.big {
	display:inline;
	font-size:36px;
	font-weight:700;
	color:#000000;
	border-bottom:0;
	margin:0;
}

/* ポップアップ - 規約 */

.kiyaku_box .kiyaku {
}

.kiyaku_box .kiyaku h3 {
	font-size:18px;
	color:#000000;
	font-weight:600;
	text-align:center;
	margin:0 0 10px 0;
}

.kiyaku_box .kiyaku ul {
	margin:5px auto 20px auto;
}

.kiyaku_box .kiyaku li {
	color:#000000;
	padding-left:14px;
	font-size:14px;
	position:relative;
	font-weight:500;
}

.kiyaku_box .kiyaku li:before {
	display: inline;
	position: absolute;
	top:3px;
	left:0;
	content: "●";
	font-size:10px;
	color:#a0c364;
}

.kiyaku_box .kiyaku li a {
	color:#000000;
	font-size:14px;
	font-weight:500;
}

/* ポップアップ - 共通（注意事項） */

.kiyaku_box .kiyaku_list ul {
	margin:10px auto 20px auto;
}

.kiyaku_box .kiyaku_list li {
	list-style-type: none;
	padding:0 0 0 16px;
	font-size:14px;
	font-weight:500;
	color:#000000;
	position:relative;
}

.kiyaku_box .kiyaku_list li a {
	font-size:14px;
	color:#000000;
	font-weight:500;
	text-decoration:underline;
}

.kiyaku_box .kiyaku_list li:before {
	display: inline;
	content: "※";
	position: absolute;
	top:0;
	left:0;
}

.kiyaku_box .kiyaku_list.kome li:before {
	content: "■";
	font-size:10px;
	display: inline-block;
	margin:3px 0 0 0;
}

.kiyaku_box .kiyaku_list li b {
	font-size:14px;
	color:#000000;
	font-weight:600;
}

/* コピーライト */

#copyright {
	padding:40px 0 40px 0;
}

#copyright .content {
	text-align:center;
	font-size:16px;
}

#copyright .kome {
	font-size:12px;
	margin:5px 0 0 0;
	text-align:center;
}

/* フッター */

#main_fot {
	width:800px;
	margin:30px auto 0 auto;
}

#main_fot img {
	width:100%;
}

/* スマホ */

.only_pc {
	display:block;
}

.only_sp {
	display:none;
}

/* メッセージ */

.msg {
	color:#f08200;
	text-align:center;
	margin:30px 0 0 0;
	font-size:36px;
	font-weight:900;
}

.msg span {
	font-size:48px;
	font-weight:900;
	color:#f08200;
}

/* シーンカット */

.ph_box {
	overflow:hidden;
	position:relative;
	z-index:10;
}

.ph_box * {
	height:160px !important;
}

.ph_box img {
	width:auto !important;
}

@media screen and (max-width:640px) {

	.only_pc {
		display:none;
	}

	.only_sp {
		display:block;
	}

	body {
		min-width:320px;
	}

	/* コンテント */

	.content {
		width:auto;
	}

	/* ヘッダー */
	
	#first {
		background:url(../img/bg_main_sp.jpg) no-repeat top center;
		background-size:100% auto;
	}

	#first h1 {
		width:auto;
	}

	#first h1 img {
		width:100%;
	}

	#first p {
		margin:20px 6.5% 0 6.5%;
		font-size:16px;
		text-align:left;
	}

	#first p span {
		font-size:12px;
	}

	#first p span.large {
		font-size:18px;
		display:block;
		text-align:left;
	}

	/* 見出し */

	h3 {
		text-align:center;
	}

	h3 img {
		height:75px;
	}

	/* schedule */

	#schedule {
		padding:20px 6.5% 30px 6.5%;
	}

	#schedule p {
	    margin:15px 0 0 0;
	}

	/* present */

	#wchance ,
	#present {
		padding:20px 6.5% 30px 6.5%;
	}

	#wchance .present_item_in ,
	#present .present_item_in {
		margin:0 0 15px 0;
	}

	#wchance .present_item_in img ,
	#present .present_item_in img {
		width:100%;
	}

	#wchance .present_text ,
	#present .present_text {
		font-size:12px;
	}

	/* step */

	#step {
		padding:0 0 30px 0;
	}

	#step h4 {
	    width:55px;
	}

	#step .step_item {
		margin:15px 5% 0 5%;
		padding:0 0 30px 0;
	}

	#step .step_item_in .text_normal {
		font-size:14px;
		text-align:left;
	}

	#step .step_item_in .text {
		padding:10px 0 0 0;
	}

	#step .step_item_in .text p {
		font-size:20px;
	}

	#step .step_item_in .text p span {
		font-size:12px;
	}

	#step .step_item_in .text_list ul {
		margin:15px auto 0 auto;
	}

	#step .step_item_in .text_list li {
		padding-left:15px;
		font-size:10px;
	}

	#step .step_item_in .text_list li span {
		font-size:10px;
	}

	#step .step_item_in .text_list li a {
		font-size:10px;
	}

	#step .step_item_in .text_list li:before {
		top:0;
	}

	/* 対象期間 */

	.ticket_end_out {
	}

	.ticket_end {
		font-size:16px;
		margin:20px 5% 0 5%;
		padding:15px 0;
		display:block;
		line-height:1.3;
	}

	.ticket_end span {
		font-size:30px;
		line-height:1.3;
	}

	.ticket_end span.small {
		font-size:12px;
		display:block;
		margin:7px 0 0 0;
		line-height:1;
		text-align:center;
	}

	/* 応募締切 */

	.campaign_end {
	    margin:20px 0 0 0;
		font-size:14px;
	}

	.campaign_end span {
		font-size:24px;
	}

	/* soon */

	.soon {
		font-size:30px;
		margin:40px 0 0 0;
	}

	/* toForm */

	.toForm {
		margin:0 0 50px 0;
	}

	.toForm a img {
		width:100%;
	}

	.toForm .toform_h {
		font-size:16px;
	}

	.toForm .toform_s {
		font-size:10px;
	}

	.toForm .toform_p {
		font-size:18px;
		margin:20px 0 0 0;
	}

	.toForm .toform_p span {
		font-size:30px;
	}

	/* ポップアップ */

	.kiyaku_text {
		top:12%;
		left:5%;
		bottom:12%;
		right:5%;
	}

	.kiyaku_text_in {
		padding:30px 20px;
	}

	.kiyaku_close {
		position:fixed;
		top:20px;
		right:20px;
		width:45px;
		height:45px;
	}

	.kiyaku_close:hover {
		opacity:1;
	}

	/* ポップアップ - インナー */

	.kiyaku_box {
		padding:130px 0 20px 0;
	}

	/* ポップアップ - 見出し */

	.kiyaku_box h2 {
		margin:0 0 5px 0;
	}

	.kiyaku_box h2 span {
		display:inline;
		border-bottom:0;
		font-size:18px;
		margin:0 0 10px 0;
	}

	/* ポップアップ - 規約 */

	.kiyaku_box .kiyaku h3 {
		font-size:16px;
	}

	.kiyaku_box .kiyaku li {
		padding-left:14px;
		font-size:12px;
	}

	.kiyaku_box .kiyaku li:before {
		display: inline;
		position: absolute;
		top:1px;
		left:0;
		content: "●";
		font-size:10px;
	}

	.kiyaku_box .kiyaku li a {
		font-size:12px;
	}

	/* ポップアップ - 共通（注意事項） */

	.kiyaku_box .kiyaku_list ul {
		margin:0 auto;
	}

	.kiyaku_box .kiyaku_list li {
		padding:0 0 0 14px;
		font-size:12px;
	}

	.kiyaku_box .kiyaku_list li a {
		font-size:12px;
	}

	.kiyaku_box .kiyaku_list.kome li:before {
		content: "■";
		font-size:10px;
		display: inline-block;
		margin:2px 0 0 0;
	}

	.kiyaku_box .kiyaku_list li b {
		font-size:12px;
	}

	/* コピーライト */

	#copyright {
		padding:20px 0 20px 0;
	}

	#copyright .content {
		font-size:14px;
	}

	#copyright .kome {
		font-size:10px;
	}

	/* ボタン */

	.support {
		padding:30px 5% 0 5%;
	}

	.link {
		padding:25px 5% 0 5%;
	}

	.support .support_in, .link .link_in {
	    width: calc( 50% - 5px );
	}

	.support .support_in a {
		line-height:45px;
		height:45px;
		font-size:12px;
	}

	.link .link_in a {
		line-height:45px;
		height:45px;
		font-size:12px;
	}

	.support .support_in a .dli-plus,
	.link .link_in a .dli-plus {
		top:22px;
		right:15px;
		margin:0 0 0 15px;
		width:0.5em;
		height: 0.05em;
	}

	/* シーンカット */

	.ph_box * {
		height:100px !important;
	}

	/* メッセージ */

	.msg {
		margin:15px 0 0 0;
		font-size:16px;
	}

	.msg span {
		font-size:36px;
	}

	/* フッター */

	#main_fot {
		width:auto;
		margin:30px 11.5% 0 11.5%;
	}

}