@charset "utf-8";


/* メインエリア大枠 共通設定 */
body#present .content {
  background:none;
}
body#present form {
  display:block;
  margin:0;
  padding:0;
}
.present--main {
  background:#fff url(../../img/present/ptn_1.png) left top repeat;
  padding:28px 32px 80px;
  word-break:break-all;
}
.present--main_wchance {
  background:#fff url(../../img/present/ptn_2.png) left top repeat;
  padding:45px 32px 80px;
  word-break:break-all;
}
.present--main a:hover,
.present--main_wchance a:hover {
  text-decoration:none;
}
.present--main > *:last-child,
.present--main_wchance > *:last-child {
  margin-bottom:0;
}
.present--main > *[style="display:none;"]:last-child,
.present--main > *[style="display: none;"]:last-child,
.present--main_wchance > *[style="display:none;"]:last-child,
.present--main_wchance > *[style="display: none;"]:last-child {
  margin-top:-60px;
  height:0;
  visibility:hidden;
  display:block !important;
}

/* KEYエリア */
.present-key {
  height:348px;
  background:url(../../img/present/bg_key.png) top center no-repeat;
  position:relative;
  padding:33px 0 0;
  box-sizing:border-box;
}
.present-key_title {
}
.present-key_txt {
  position:relative;
  top:-22px;
  left:150px;
}
.present-key_nav {
  position:absolute;
  bottom:0;
  left:0;
  border-bottom:#600707 3px solid;
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:flex-end;
  align-content:flex-end;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:flex-end;
  -webkit-align-content:flex-end;
}
.present-key_nav li {
  margin-left:-4px;
  position:relative;
}
.present-key_nav li.active {
  margin-left:-1px;
  margin-right:4px;
  margin-bottom:-3px;
}
.present-key_nav li:nth-child(1) {
  margin-left:13px;
}
.present-key_nav li.active:nth-child(1) {
  margin-left:16px;
}
.present-key_nav li a {
  display:block;
}
.present-key_nav li img[alt="近日公開！"] {
  cursor:pointer;
}
.present-key_nav li img[alt="近日公開！"] + img {
  display:none;
  position:absolute;
  top:-5px;
  left:37px;
}
.present-key_nav li img[alt="近日公開！"]:hover + img {
  display:block;
}
.present-key_nav li span {
  display: block;
  width: 100%;
  position: absolute;
  top: -4px;
  padding: 0 0 0 3px;
  text-align: center;
}
.present-key_nav li.active span {
  top:-9px;
}
.present-key_nav li span img {
}



/* KEYエリア SNSボタン */
.present-key_sns {
  position:absolute;
  right:14px;
  top:14px;
  background:rgba(255,255,255,.9);
  border-radius:6px;
  padding:12px 10px 11px;
  line-height:1;
}
.present-key_sns p {
  text-align:center;
  margin:0 0 8px;
}
.present-key_sns ul {
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:space-between;
  align-items:center;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:space-between;
  -webkit-align-items:center;
  -webkit-align-content:flex-start;
}
.present-key_sns li {
  flex-grow:1;
  -webkit-flex-grow:1;
  text-align:center;
  margin:0px 3px 0px 2px;
  border-radius:3px;
  min-width:52px;
}
.present-key_sns li:hover {
  opacity:0.8;
}
.present-key_sns li:nth-child(1) {
  background-color:#3b5998;
}
.present-key_sns li:nth-child(2) {
  background-color:#000000;
}
.present-key_sns li:nth-child(3) {
  background-color:#dd4b39;
  display: none;
}
.present-key_sns li:nth-child(4) {
  flex-grow:0;
  -webkit-flex-grow:0;
  padding:0;
  margin:0 0 0 2px;
}
.present-key_sns li:nth-child(4):hover {
  opacity:1;
}
.present-key_sns li a {
  display:block;
  padding:5px 0;
}

/* 商品 */
.present-campaign_title {
  font-size:36px;
  font-weight:bold;
  line-height:1.2;
  color:#e60012;
  text-align:center;
  margin:0 0 15px !important;
}
.present-item_block {
  text-align:center;
  margin:0 0 45px;
}
.present-item {
  display:-webkit-flex;
  display:flex;
  flex-wrap:wrap;
  flex-direction:row;
  justify-content:center;
  align-items:stretch;
  align-content:flex-start;
  -webkit-flex-wrap:wrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:center;
  -webkit-align-items:stretch;
  -webkit-align-content:flex-start;
  background:#e60012;
  padding:1px;
}
#present-item_num_1 {
  display:-webkit-inline-flex;
  display:inline-flex;
  min-width:500px;
}
#present-item_num_2,
#present-item_num_4 {
}
#present-item_num_3,
#present-item_num_5,
#present-item_num_6 {
}

/* 商品（アイテム枠） */
.present-item li {
  flex-grow:1;
  -webkit-flex-grow:1;
  margin:1px;
  background:#fff;
  box-sizing:border-box;
  position:relative;
}
#present-item_num_1 li {
  width:934px;
  width:calc((100% - 2px) / 1);
}
#present-item_num_2 li,
#present-item_num_4 li {
  width:466px;
  width:calc((100% - 4px) / 2);
}
#present-item_num_3 li,
#present-item_num_5 li,
#present-item_num_6 li {
  width:310px;
  width:calc((100% - 6px) / 3);
}

/* 商品（アイテム内） */
.present-item li div:nth-of-type(1) {
  position:relative;
  border-bottom:#d9d9d9 1px solid;
  /*background:#d9d9d9;*/
  text-align:center;
}
.present-item li div:nth-of-type(1) > img:nth-of-type(1) {
  max-width:100%;
}
.present-item li div:nth-of-type(1) > img:nth-of-type(2) {
  position:absolute;
  top:0;
  left:0;
}
.present-item li div:nth-of-type(1) > p:nth-of-type(1) {
  position:absolute;
  bottom:7px;
  right:7px;
  background:#000;
  color:#fad43d;
  font-size:22px;
  line-height:1;
  padding:6px 11px 2px;
  border-radius:1em;
  font-weight:bold;
}
.present-item li div:nth-of-type(1) > p:nth-of-type(1):after {
  content:"名様";
  font-size:16px;
}
.present-item li div:nth-of-type(2) {
  padding:12px 10px 70px;
}
.present-item li div:nth-of-type(2) > h3 {
  font-size:18px;
  line-height:1.3;
  margin:0 0 4px;
  font-weight:bold;
  text-align:left;
}
.present-item li div:nth-of-type(2) > p:nth-of-type(1) {
  font-size:12px;
  line-height:1.3;
  color:#808080;
  text-align:left;
}
.present-item li div:nth-of-type(2) > p:nth-of-type(2) {
  text-align:center;
  width:calc(100% - 20px);
  position:absolute;
  bottom:22px;
}
.present-item li div:nth-of-type(2) > p:nth-of-type(2) img {
  box-shadow:1px 1px 3px rgba(0,0,0,0.1);
  border-radius:4px;
}

/* ボタン */
.present-btn {
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:center;
  align-items:flex-start;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:center;
  -webkit-align-items:flex-start;
  -webkit-align-content:flex-start;
  margin:0 0 60px;
}
.present-btn li {
}
.present-btn li + li {
  margin-left:30px;
}
.present-btn li img {
  box-shadow:3px 3px 4px rgba(0,0,0,0.2);
  border-radius:10px;
}
.present-btn li a {
  display:block;
}

/* 申し込み済みエリア */
.present-applied {
  margin:0 auto 60px;
  padding:26px 15px 21px;
  background:#e60012;
  color:#fff;
  width:75%;
  border-radius:6px;
}
.present-applied h5 {
  font-size:24px;
  font-weight:bold;
  text-align:center;
  line-height:1.3;
  margin:0 0 5px;
}
.present-applied p {
  line-height:1.5;
  font-size:14px;
  text-align:center;
}

/* 表 */
.present-headline {
  padding:3px 0 0 9px;
  font-size:32px;
  font-weight:bold;
  line-height:1;
  margin:0 0 15px;
  border-left:#e60012 8px solid;
}
.present-headline_addtxt {
  margin:-5px 0 6px;
  font-size:13px;
  color:#707070;
}
.present-headline_addtxt a {
  padding:0 1px;
}
.present-table {
	border:#ccc 1px solid;
	margin:0 auto;
	background:#fff;
	width:100%;
  border-collapse:collapse;
  margin:0 0 60px;
}
.present-table tr {
}
.present-table th,
.present-table td {
	padding:16px 17px 15px;
  height:35px;
	border:#b4a996 1px solid;
}
.present-table th {
	font-weight:bold;
  width:25%;
  line-height:1.3;
  text-align:center;
  background:#fff1af;
  font-size:15px;
}
.present-table td {
  text-align:left;
  line-height:1.7;
  font-size:14px;
}

/* 応募の流れ よくある質問 nav 大枠 */
.present-explain {
  margin:0 0 60px;
}
.present-explain_nav {
  border-bottom:#e60012 5px solid;
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:flex-start;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:flex-start;
  -webkit-align-content:flex-start;
  margin:0 0 25px;
}
.present-explain_nav li {
  background:#4d4d4d;
  line-height:1;
  min-width:210px;
  text-align:center;
  box-sizing:border-box;
}
.present-explain_nav li:hover {
  background:#616161;
}
.present-explain_nav li + li {
  margin-left:10px;
}
.present-explain_nav li.active {
  background:#e60012;
}
.present-explain_nav li.active:hover {
  background:#f70015;
}
.present-explain_nav li a {
  display:block;
  padding:14px 15px 11px;
}
.present-explain_content {
}

/* 応募の流れ content */
.present-explain_flow {
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:space-between;
  align-items:stretch;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:space-between;
  -webkit-align-items:stretch;
  -webkit-align-content:flex-start;
}
.present-explain_flow li {
  width:294px;
  box-sizing:border-box;
  border:#969696 1px solid;
  background:#fff;
  position:relative;
}
.present-explain_flow li + li:after {
  content:url(../../img/present/icon_arw.png);
  position:absolute;
  top:80px;
  left:-30px;
  z-index:10;
}
.present-explain_flow p:nth-of-type(1) {
  margin:0 0 17px;
}
.present-explain_flow p:nth-of-type(1) img {
  width:100%;
}
.present-explain_flow h5 {
  margin:0 16px 10px;
  line-height:1;
}
.present-explain_flow p:nth-of-type(2) {
  margin:0 13px 20px;
}

/* よくある質問 content */
.present-explain_faq {
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:wrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:flex-start;
  align-content:flex-start;
  -webkit-flex-wrap:wrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:flex-start;
  -webkit-align-content:flex-start;
}
.present-explain_faq li {
  width:100%;
  box-sizing:border-box;
  border:#969696 1px solid;
  background:#fff;
  position:relative;
  margin:0 0 10px;
  padding:21px 16px 21px;
}
.present-explain_faq li:last-child {
  margin-bottom:0;
}
.present-explain_faq h5 {
  margin:-5px 0 10px;
  padding:7px 0 0 39px;
  line-height:1.2;
  font-size:20px;
  font-weight:bold;
  background:url(../../img/present/icon_quiz.png) left top no-repeat;
  min-height:25px;
}
.present-explain_faq p {
  line-height:1.5;
  margin:0 9px 0; 
}

/* バナースライド */
.present-bnr {
	width:1002px;
  margin:35px auto 5px !important;
}
.present-bnr .slick-slide img {
	box-shadow:7px 6px 7px -3px rgba(0,0,0,.3);
  width:320px;
  height:150px;
}
.present-bnr .slick-slide img:hover {
	 opacity: 0.8;
}
.present-bnr .slick-slide {
	width:320px;
  height:160px;
  margin:0 10px; 
  outline:none;
}
.present-bnr .slick-prev,
.present-bnr .slick-next {
	height:65px;
	width:27px;
	z-index:999;
}
.present-bnr .slick-prev {
  left:-10px;
}
.present-bnr .slick-next {
  right:-10px;
}

/* クイズ メイン画像 */
.present-mainimg_quiz {
  margin:0 0 32px;
  text-align:center;
}
.present-mainimg_quiz img {
  max-width:100%;
}

/* クイズ 商品 */
.present-item_quiz {
  margin:0 0 45px;
}
.present-item_quiz_title {
  font-size:22px;
  font-weight:bold;
  color:#fff;
  line-height:1;
  background:#e60012;
  padding:13px 10px 7px;
  text-align:center;
}
.present-item_quiz_content {
  border:#e60012 2px solid;
  padding:20px;
  background:#fff;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:center;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:center;
  -webkit-align-content:flex-start;
}

/* クイズ 商品（アイテム内） */
.present-item_quiz_content div:nth-of-type(1) {
  flex-grow:0;
  -webkit-flex-grow:0;
  margin:0 20px 0 0;
  -webkit-flex-shrink:0;
  flex-shrink:0;
}
.present-item_quiz_content div:nth-of-type(1) > img {
  max-width:320px;
  border:#d9d9d9 1px solid;
  box-sizing:content-box;
}
.present-item_quiz_content div:nth-of-type(2) {
  flex-grow:1;
  -webkit-flex-grow:1;
}
.present-item_quiz_content div:nth-of-type(2) > h3 {
  font-size:22px;
  line-height:1.3;
  margin:0 0 4px;
  font-weight:bold;
}
.present-item_quiz_content div:nth-of-type(2) > p:nth-of-type(1) {
  font-size:12px;
  line-height:1.4;
  color:#808080;
  margin:0 0 13px;
}
.present-item_quiz_content div:nth-of-type(2) > p:nth-of-type(2) {
  background:#000;
  color:#fad43d;
  font-size:22px;
  line-height:1;
  padding:6px 14px 2px;
  border-radius:1em;
  font-weight:bold;
  display:inline-block;
  margin:0 0 16px;
}
.present-item_quiz_content div:nth-of-type(2) > p:nth-of-type(2):after {
  content:"名様";
  font-size:16px;
}
.present-item_quiz_content div:nth-of-type(2) > p:nth-of-type(3) {
  margin:0 0 15px;
}
.present-item_quiz_content div:nth-of-type(2) > p:nth-of-type(3) img {
  box-shadow:1px 1px 3px rgba(0,0,0,0.1);
  border-radius:4px;
}

/* クイズ 商品 申し込みページ */
.present-item_quiz_small {
  margin:-10px 0 60px;
}
.present-item_quiz_title_small {
  font-size:20px;
  font-weight:bold;
  color:#fff;
  line-height:1;
  background:#e60012;
  padding:12px 10px 6px;
  text-align:center;
}
.present-item_quiz_content_small {
  border:#e60012 2px solid;
  padding:20px;
  background:#fff;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:center;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:center;
  -webkit-align-content:flex-start;
}

/* クイズ 商品（アイテム内）申し込みページ */
.present-item_quiz_content_small div:nth-of-type(1) {
  flex-grow:0;
  -webkit-flex-grow:0;
  margin:0 20px 0 0;
}
.present-item_quiz_content_small div:nth-of-type(1) > img {
  max-width:160px;
  border:#d9d9d9 1px solid;
  box-sizing:content-box;
}
.present-item_quiz_content_small div:nth-of-type(2) {
  flex-grow:1;
  -webkit-flex-grow:1;
}
.present-item_quiz_content_small div:nth-of-type(2) > h3 {
  font-size:22px;
  line-height:1.3;
  margin:0 0 4px;
  font-weight:bold;
}
.present-item_quiz_content_small div:nth-of-type(2) > p:nth-of-type(1) {
  font-size:12px;
  line-height:1.4;
  color:#808080;
  margin:0 0 10px;
}
.present-item_quiz_content_small div:nth-of-type(2) > p:nth-of-type(2) {
  background:#000;
  color:#fad43d;
  font-size:22px;
  line-height:1;
  padding:6px 14px 2px;
  border-radius:1em;
  font-weight:bold;
  display:inline-block;
}
.present-item_quiz_content_small div:nth-of-type(2) > p:nth-of-type(2):after {
  content:"名様";
  font-size:16px;
}

/* クイズ ヒントボタン */
.present-btn_quiz {
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:center;
  align-items:flex-start;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:center;
  -webkit-align-items:flex-start;
  -webkit-align-content:flex-start;
  margin:-25px 0 60px;
}
.present-btn_quiz li {
}
.present-btn_quiz li img {
}
.present-btn_quiz li a {
  display:block;
}

/* ページ説明タイトル */
.present-campaign_subtitle {
  margin:20px 0 26px;
  text-align:center;
}
.present-campaign_subtitle span {
  background:#000;
  color:#fff;
  font-weight:bold;
  font-size:18px;
  border-radius:3px;
  padding:6px 21px 5px 10px;
}

/* キャンペーンタイトル 上下線あり */
.present-campaign_title_ans {
  font-size:38px;
  font-weight:bold;
  line-height:1.2;
  color:#e60012;
  text-align:center;
  margin:0 0 40px !important;
  padding:28px 0 21px;
  position:relative;
  border-top:#e60012 4px solid;
  border-bottom:#e60012 4px solid;
}
.present-campaign_title_ans:before {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  top:3px;
  left:0;
  background:#e60012;
}
.present-campaign_title_ans:after {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  bottom:3px;
  left:0;
  background:#e60012;
}

/* 商品選択 */
.present-item_select {
  background:#e60012;
  padding:1px;
  width:100%;
  margin:0 0 60px;
  display:-webkit-flex;
  display:flex;
  flex-wrap:wrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:center;
  align-content:flex-start;
  -webkit-flex-wrap:wrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:center;
  -webkit-align-content:flex-start;
  box-sizing:border-box;
}
.present-item_select li {
  background:#fff;
  margin:1px;
  flex-grow:1;
  -webkit-flex-grow:1;
  width:936px;
  width:calc(100% - 2px);
}
.present-item_select li:hover {
  box-shadow:0 0 0 3px rgba(0,0,0,.08) inset;
}
.present-item_select li.present-item_select_ed {
  background:#fff7cc;
}
.present-item_select li label {
  cursor:pointer;
}
.present-item_select li label > div {
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:center;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:center;
  -webkit-align-content:flex-start;
  position:relative;
  min-height:100px;
}
.present-item_select li label > div > img {
  position:absolute;
  top:0;
  left:0;
  z-index:10;
}
.present-item_select li label > div > div {
}
.present-item_select li label > div > div:nth-of-type(1) {
  position:relative;
  padding:14px 0px 14px 14px;
  -webkit-flex-shrink:0;
  flex-shrink:0;
}
.present-item_select li label > div > div:nth-of-type(1) > img:nth-of-type(1) {
  width:150px;
  border:#d9d9d9 1px solid;
  background:#d9d9d9;
}
.present-item_select li label > div > div:nth-of-type(2) {
  margin:10px 9px 10px 15px;
  -webkit-flex-shrink:0;
  flex-shrink:0;
}
.present-item_select li label > div > div:nth-of-type(2) input {
}

.present-item_select li label > div > div:nth-of-type(3) {
  flex-grow:1;
  -webkit-flex-grow:1;
  padding:10px 0;
}
.present-item_select li label > div > div:nth-of-type(3) h3 {
  font-size:20px;
  font-weight:bold;
  line-height:1.3;
  margin:10px 0 4px;
}
.present-item_select li label > div > div:nth-of-type(3) p {
  font-size:12px;
  line-height:1.3;
  color:#808080;
  margin:0 0 10px;
}
.present-item_select li label > div > div:nth-of-type(4) {
  margin:0 17px 0 20px;
  -webkit-flex-shrink:0;
  flex-shrink:0;
}
.present-item_select li label > div > div:nth-of-type(4) p {
  background:#000;
  color:#fad43d;
  font-size:20px;
  line-height:1;
  padding:6px 11px 2px;
  border-radius:1em;
  font-weight:bold;
  white-space:nowrap;
}
.present-item_select li label > div > div:nth-of-type(4) p:after {
  content:"名様";
  font-size:14px;
}

/* クイズやアンケートの問題文 */
.present-headline_ask_req,
.present-headline_ask_opt {
  padding:3px 0 0 9px;
  font-size:32px;
  font-weight:bold;
  line-height:1.2;
  margin:0 0 15px;
  border-left:#000 8px solid;
}
.present-headline_ask_req {
  border-left-color:#e60012;
}
.present-headline_ask_opt {
  border-left-color:#138f00;
}
.present-headline_ask_req:after,
.present-headline_ask_opt:after {
  color:#fff;
  padding:8px 7px 5px;
  font-size:20px;
  line-height:1;
  border-radius:4px;
  display:inline-block;
  vertical-align:top;
  margin:0 0 0 10px;
}
.present-headline_ask_req:after {
  content:"必須";
  background:#e60012;
}
.present-headline_ask_opt:after {
  content:"任意";
  background:#138f00;
}

/* クイズやアンケートの選択肢 */
.present-select_ask_req,
.present-select_ask_opt {
  background:#e60012;
  padding:1px;
  width:100%;
  margin:0 0 60px;
  display:-webkit-flex;
  display:flex;
  flex-wrap:wrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:center;
  align-content:flex-start;
  -webkit-flex-wrap:wrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:center;
  -webkit-align-content:flex-start;
  box-sizing:border-box;
}
.present-select_ask_req li,
.present-select_ask_opt li {
  background:#fff;
  margin:1px;
  flex-grow:1;
  -webkit-flex-grow:1;
  width:936px;
  width:calc(100% - 2px);
}
.present-select_ask_req li:hover,
.present-select_ask_opt li:hover {
  box-shadow:0 0 0 3px rgba(0,0,0,.08) inset;
}

.present-select_ask_req li.present-select_ask_req_ed,
.present-select_ask_opt li.present-select_ask_opt_ed {
  background:#fff7cc;
}
.present-select_ask_req li label,
.present-select_ask_opt li label {
  cursor:pointer;
}
.present-select_ask_req li label > div,
.present-select_ask_opt li label > div {
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:center;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:center;
  -webkit-align-content:flex-start;
  position:relative;
}
.present-select_ask_req li label > div > div,
.present-select_ask_opt li label > div > div {
}
.present-select_ask_req li label > div > div:nth-of-type(1),
.present-select_ask_opt li label > div > div:nth-of-type(1) {
  margin:13px 9px 7px 15px;
  -webkit-flex-shrink:0;
  flex-shrink:0;
}
.present-select_ask_req li label > div > div:nth-of-type(1) input,
.present-select_ask_opt li label > div > div:nth-of-type(1) input {
}
.present-select_ask_req li label > div > div:nth-of-type(2),
.present-select_ask_opt li label > div > div:nth-of-type(2) {
  flex-grow:1;
  -webkit-flex-grow:1;
  padding:10px 17px 10px 0;
}
.present-select_ask_req li label > div > div:nth-of-type(2) p,
.present-select_ask_opt li label > div > div:nth-of-type(2) p {
  font-size:20px;
  font-weight:bold;
  line-height:1.3;
  margin:13px 0 9px;
}
.present-select_ask_opt {
  background:#138f00;
}

/* サンクスタイトル 上下線あり */
.present-campaign_title_thx {
  margin:0 0 40px;
  padding:38px 0 32px;
  position:relative;
  border-top:#e60012 4px solid;
  border-bottom:#e60012 4px solid;
}
.present-campaign_title_thx:before {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  top:3px;
  left:0;
  background:#e60012;
}
.present-campaign_title_thx:after {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  bottom:3px;
  left:0;
  background:#e60012;
}
.present-campaign_title_thx h2 {
  font-size:38px;
  font-weight:bold;
  line-height:1.2;
  color:#e60012;
  text-align:center;
  margin:0 0 8px !important;
}
.present-campaign_title_thx p {
  font-size:16px;
  line-height:1.5;
  color:#000;
  text-align:center;
}
.present-campaign_title_thx p em {
  font-style:normal;
  font-weight:bold;
  font-size:inherit;
}

/* サンクスページの応募した商品 */
.present-thx_item {
  width:100%;
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:flex-start;
  align-items:center; 
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:flex-start;
  -webkit-align-items:center; 
  -webkit-align-content:flex-start;
  margin:8px 0;
}
.present-thx_item > div:nth-of-type(1) {
  position:relative;
  margin:0 15px 0 0;
  align-self:flex-start;
  -webkit-flex-shrink:0;
  flex-shrink:0;
}
.present-thx_item > div:nth-of-type(1) > img:nth-of-type(1) {
  width:160px;
  border:#d9d9d9 1px solid;
  background:#d9d9d9;
}
.present-thx_item > div:nth-of-type(1) > img:nth-of-type(2) {
  position:absolute;
  top:0;
  left:0;
}
.present-thx_item > div:nth-of-type(2) {
  flex-grow:1;
  -webkit-flex-grow:1;
}
.present-thx_item > div:nth-of-type(2) > h3 {
  font-size:20px;
  line-height:1.3;
  margin:0 0 4px;
  font-weight:bold;
}
.present-thx_item > div:nth-of-type(2) > p:nth-of-type(1) {
  font-size:12px;
  line-height:1.3;
  color:#808080;
  margin:0 0 8px;
}
.present-thx_item > div:nth-of-type(2) > p:nth-of-type(2) {
  background:#000;
  color:#fad43d;
  font-size:20px;
  line-height:1;
  padding:5px 11px 2px;
  border-radius:1em;
  font-weight:bold;
  display:inline-block;
}
.present-thx_item > div:nth-of-type(2) > p:nth-of-type(2):after {
  content:"名様";
  font-size:14px;
}

/* サンクス SNSボタン */
.present-thx_sns {
  line-height:1;
  margin:0 0 60px;
}
.present-thx_sns p {
  text-align:center;
  font-weight:bold;
  font-size:30px;
  line-height:1;  
  margin:0 0 15px;
}
.present-thx_sns ul {
  display:-webkit-flex;
  display:flex;
  flex-wrap:nowrap;
  flex-direction:row;
  justify-content:center;
  align-items:center;
  align-content:flex-start;
  -webkit-flex-wrap:nowrap;
  -webkit-flex-direction:row;
  -webkit-justify-content:center;
  -webkit-align-items:center;
  -webkit-align-content:flex-start;
}
.present-thx_sns li {
  text-align:center;
  margin:0px 3px 0px 2px;
  border-radius:3px;
  min-width:92px;
}
.present-thx_sns li:hover {
  opacity:0.8;
}
.present-thx_sns li:nth-child(1) {
  background-color:#3b5998;
}
.present-thx_sns li:nth-child(2) {
  background-color:#000000;
}
.present-thx_sns li:nth-child(3) {
  background-color:#dd4b39;
  display: none;
}
.present-thx_sns li:nth-child(4) {
  background-color:#e6e6e6;
  padding:13px 7px;
}
.present-thx_sns li:nth-child(4):hover {
  opacity:1;
}
.present-thx_sns li a {
  display:block;
  padding:7px 0;
}

/* Wチャンス バナー */

.present-wchance_bnrnone {
  display:none;
}
.present-wchance_bnr {
  position:fixed;
  bottom:0;
  left:0;
  right:0;
  width:100%;
  background:rgba(0,0,0,.5);
  padding:20px 0;
  box-sizing:border-box;
  z-index:100;
  display:none;
}
.present-wchance_bnr > div {
  width:1002px;
  margin:0 auto;
  position:relative;
  text-align:center;
}
.present-wchance_bnr a {
  display:block;
}
.present-wchance_bnr a img {
  max-width:900px;
}
.present-wchance_bnr a img:hover {
  outline:#fff 2px solid;
}
.present-wchance_bnr_close {
  position:absolute;
  top:0;
  right:0;
  cursor:pointer;
  width:26px;
}
.present-wchance_bnr_close:hover {
  opacity:0.8;
}

/* Wチャンス KEYエリア */
.present-key_wchance {
  box-sizing:border-box;
  background:#fff url(../../img/present/ptn_2.png) left top repeat;
}
.present-key_title_wchance {
  text-align:center;
}
.present-key_title_wchance img {
  max-width:100%;
}

/* Wチャンスキャンペーンタイトル 上下線あり */
.present-campaign_title_ans_wchance {
  font-size:38px;
  font-weight:bold;
  line-height:1.2;
  color:#1d56bf;
  text-align:center;
  margin:0 0 40px !important;
  padding:28px 0 21px;
  position:relative;
  border-top:#1d56bf 4px solid;
  border-bottom:#1d56bf 4px solid;
}
.present-campaign_title_ans_wchance:before {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  top:3px;
  left:0;
  background:#1d56bf;
}
.present-campaign_title_ans_wchance:after {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  bottom:3px;
  left:0;
  background:#1d56bf;
}

/* Wチャンス 見出し */
.present-headline_wchance {
  padding:3px 0 0 9px;
  font-size:32px;
  font-weight:bold;
  line-height:1.2;
  margin:0 0 15px;
  border-left:#1d56bf 8px solid;
}

/* Wチャンス サンクスタイトル 上下線あり */
.present-campaign_title_thx_wchance {
  margin:0 0 40px;
  padding:38px 0 32px;
  position:relative;
  border-top:#1d56bf 4px solid;
  border-bottom:#1d56bf 4px solid;
}
.present-campaign_title_thx_wchance:before {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  top:3px;
  left:0;
  background:#1d56bf;
}
.present-campaign_title_thx_wchance:after {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  bottom:3px;
  left:0;
  background:#1d56bf;
}
.present-campaign_title_thx_wchance h2 {
  font-size:38px;
  font-weight:bold;
  line-height:1.2;
  color:#1d56bf;
  text-align:center;
  margin:0 0 8px !important;
}
.present-campaign_title_thx_wchance p {
  font-size:16px;
  line-height:1.5;
  color:#000;
  text-align:center;
}
.present-campaign_title_thx_wchance p em {
  font-style:normal;
  font-weight:bold;
  font-size:inherit;
}

/* 申込み済みタイトル 上下線あり */
.present-campaign_title_applied {
  margin:0 0 70px;
  padding:38px 0 32px;
  position:relative;
  border-top:#e60012 4px solid;
  border-bottom:#e60012 4px solid;
}
.present-campaign_title_applied:before {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  top:3px;
  left:0;
  background:#e60012;
}
.present-campaign_title_applied:after {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  bottom:3px;
  left:0;
  background:#e60012;
}
.present-campaign_title_applied span {
  font-size:20px;
  font-weight:bold;
  line-height:1.2;
  text-align:center;
  margin:0 0 8px;
  display:block;
}
.present-campaign_title_applied h2 {
  font-size:38px;
  font-weight:bold;
  line-height:1.2;
  color:#e60012;
  text-align:center;
  margin:0 0 8px !important;
}
.present-campaign_title_applied p {
  font-size:16px;
  line-height:1.5;
  color:#000;
  text-align:center;
}
.present-campaign_title_applied p em {
  font-style:normal;
  font-weight:bold;
  font-size:inherit;
}

/* Wチャンス 申込み済みタイトル 上下線あり */
.present-campaign_title_applied_wchance {
  margin:0 0 70px;
  padding:38px 0 32px;
  position:relative;
  border-top:#1d56bf 4px solid;
  border-bottom:#1d56bf 4px solid;
}
.present-campaign_title_applied_wchance:before {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  top:3px;
  left:0;
  background:#1d56bf;
}
.present-campaign_title_applied_wchance:after {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  bottom:3px;
  left:0;
  background:#1d56bf;
}
.present-campaign_title_applied_wchance span {
  font-size:20px;
  font-weight:bold;
  line-height:1.2;
  text-align:center;
  margin:0 0 8px;
  display:block;
}
.present-campaign_title_applied_wchance h2 {
  font-size:38px;
  font-weight:bold;
  line-height:1.2;
  color:#1d56bf;
  text-align:center;
  margin:0 0 8px !important;
}
.present-campaign_title_applied_wchance p {
  font-size:16px;
  line-height:1.5;
  color:#000;
  text-align:center;
}
.present-campaign_title_applied_wchance p em {
  font-style:normal;
  font-weight:bold;
  font-size:inherit;
}

/* エラーメッセージ */
.present-error {
  background:#366ff1;
  font-size:16px;
  line-height:1.5;
  color:#fff;
  padding:11px 15px 9px;
  margin:0 auto 30px;
  box-sizing:border-box;
}
.present-error:empty {
  display:none;
}
.present-error:before {
  content:"入力内容に不備があります。";
  display:block;
  font-weight:bold;
  font-size:18px;
}

/* プレゼント準備中 KEYエリア */
.present-key_comingsoon {
  height:290px;
  background:url(../../img/present/bg_key.png) top center no-repeat;
  position:relative;
  padding:69px 0 0;
  box-sizing:border-box;
}

/* プレゼント準備中 タイトル 上下線あり */
.present-campaign_title_comingsoon {
  margin:0 0 70px;
  padding:38px 0 32px;
  position:relative;
  border-top:#e60012 4px solid;
  border-bottom:#e60012 4px solid;
}
.present-campaign_title_comingsoon:before {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  top:3px;
  left:0;
  background:#e60012;
}
.present-campaign_title_comingsoon:after {
  content:"";
  width:100%;
  height:2px;
  position:absolute;
  bottom:3px;
  left:0;
  background:#e60012;
}
.present-campaign_title_comingsoon span {
  font-size:20px;
  font-weight:bold;
  line-height:1.2;
  text-align:center;
  margin:0 0 8px;
  display:block;
}
.present-campaign_title_comingsoon h2 {
  font-size:38px;
  font-weight:bold;
  line-height:1.2;
  color:#e60012;
  text-align:center;
  margin:0 0 8px !important;
}
.present-campaign_title_comingsoon p {
  font-size:16px;
  line-height:1.5;
  color:#000;
  text-align:center;
}
.present-campaign_title_comingsoon p em {
  font-style:normal;
  font-weight:bold;
  font-size:inherit;
}























