@charset "UTF-8";


/* 共通 */
body {
	background: #ffffff;
	font-family: 'M PLUS 1p', sans-serif;
	margin:0;
	padding:0;
	width: 100%;
	height: 100vh;
	color:#333333;
	font-size:15px;
}
a{color:#333;}

/*ヘッダー*/
header{padding:10px 0 10px 1em;}

/*フッター*/
footer{
	background: #ae8f4c;
	font-size:11px;
	color:#fff;
	text-align:center;
	padding:10px 0;
}
#footerCntWrap{}
#footerCnt{}
/*ボタン*/
button{
	background-color:#666666;
	color:#fff;
	border:#cccccc;
	border-radius:5px;
	width:100%;
	padding:18px 0;
	text-align:center;
	margin:20px auto 10px auto;
	font-size:1em;
}
button.formBtn{
	opacity: 0.5;
}
button.hvBtn:hover{opacity: 1; !important;}
button:hover{background-color:#666666;}
.submitBtn, .backBtn{text-align:center;}
.submitBtn button{background-color:#666666;max-width:330px;margin:20px auto 10px auto;}
.inquiryBtn button{border-radius:30px !important;width:85%;max-width:260px;}
.backBtn button{
	background-color:#fff;
	border:1px solid #666666 !important;
	color:#666666 !important;
	padding:11px 0;
	width:80%;
/*	font-size:14px;*/
	max-width:220px;
	margin:20px auto 10px auto;
}
/*フォーム*/
input{
	border:1px solid #cccccc;
	border-radius:5px;
	padding:10px 0;
	text-align:center;
	color:#333333;
	font-size:14px;
	margin:10px auto;
	width:100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
::placeholder {
  color: #c6c6c6;
}
.telForm{/*width:25%;*/display: -webkit-flex;display: flex;-webkit-justify-content: center;
justify-content: center;-webkit-align-items: center;align-items: center;}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input[type="number"] {
	-moz-appearance:textfield;
}
input[type=tel] {
	width:80px;
	margin-right:10px;
}

@media screen and (min-width: 670px) {
	input[type=tel] {
		width:100px;
	}
	.zipcode{
		width:48.5%;
	}
	.nameForm{
		width:49.5%;
	}
}

/*チェックボックス*/
input[type=checkbox]{
    display: none;
}
.chBoxWrap{
	position: relative;
	line-height:40px;
	width:320px;
/*	margin:15px auto;*/
	margin:15px 0;
}
input[type=checkbox] + label {
    box-sizing: border-box;
    cursor: pointer;
    padding: 5px 0 5px 35px;
    width: auto;
}
input[type=checkbox] + label::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    /*margin-top: -8px;*/
    width:40px;
    height:40px;
/*    width: 14px;*/
/*    height: 14px;*/
    content: '';
    background: #ffffff;
    border-radius: 4px;
    border:1px solid #666;
}
input[type=checkbox] + label::after {
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    content: '';
    display: block;
    height: 18px;
    left: 15px;
    margin-top: -7px;
    position: absolute;
    top: 35%;
    transform: rotate(45deg);
    width: 10px;
}
input[type=checkbox] + label::after {
    opacity: 0;
}
input[type=checkbox]:checked + label::after {
    opacity: 1;
}
input[type=checkbox]:checked + label::before {
    background: #d43526;
    border:0;
}

/*コンテンツ*/
#wrapper {
	width: 100%;
	height: 100%;
	margin:0;
	padding:0;
}
#contentsWrap {
	width: 92%;
	margin:20px auto 40px auto;
	max-width:670px;
}
.mincho{font-family: 'Noto Serif JP', serif;}
.pageDesc{text-align:center;}
.f14{font-size:14px;}
.errmsg{color:red;}
.Arrow-Bottom {
  border-bottom: solid 4px #333;
  border-right: solid 4px #333;
  width: 18px;
  height: 18px;
  transform: rotate(45deg);
  margin:0 auto;
}
/*見出し*/
.head-border {
    display: flex;
    align-items: center;
}
 
.head-border:before,
.head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #dcdcdc;
}
 
.head-border:before {
    margin-right: 1rem;
}
 
.head-border:after {
    margin-left: 1rem;
}
/*コード入力画面*/
#CodeInput{
	position: relative;
}
#CodeInput #wrapper{
	background-image: url("../images/bg_codeinput_3.jpg");
	background-position: center bottom;
	background-repeat: no-repeat;
	width:100%;
}

#CodeInput #contentsWrap{
/*	background: url("../images/bg_codeinput_2.jpg") center / cover;*/
/*	background: url("../images/bg_codeinput_3.jpg") center / cover;*/
	width:100%;
	max-width:560px !important;
	margin:0 auto;
}

#CodeInput footer{
	position: absolute;/*←絶対位置*/
    bottom: 0; /*下に固定*/
    width:100%;
}
#CodeInput .mainCnt{
	margin:0 auto;
	max-width:330px;
}
#CodeInput .mainCnt{color:#ae8f4c;text-align:center;}
#CodeInput .mincho{font-size:24px;margin:80px auto 40px auto;}
/*ギフト選択画面*/
.headline{font-size:20px;}
.navWrap{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	height:32px;
	margin:20px auto;
}
.navCircle{
	width: 32px;
	height: 32px;
	line-height: 32px;
	border-radius: 50%;
	color: #fff;
	text-align: center;
	margin:0 5px;
}
.CircleOn{background-color:#000;}
.CircleOff{background-color:#ccc;}
.giftWrap{
	border:1px solid #dcdcdc;
	border-radius:5px;
	margin:20px 0;
}
.giftBox{
	width:92%;
	margin:20px auto;
	position:relative;
}
.giftBox .img{margin:0 auto;text-align:center;padding:10px 0 0 0;}
.giftNum{
	top:0;
	left:0;
	position:absolute;
	width: 44px;
	height: 44px;
	line-height: 44px;
	border-radius: 50%;
	color: #fff;
	text-align: center;
	margin:0 5px;
	background-color:#d43526;
	font-size:18px;
}
.giftName, .giftQty{text-align:center;margin:5px 0;}
#SelectGift .giftName{font-size:18px;}
#SelectGift .giftName , #SelectGift .giftQty{color:#000;}
#SelectGift .giftTxt{font-size:14px;color:#656565;margin-top:10px;}
/*入力画面*/
.infoDesc{border-bottom:1px solid #000;}
#applicationForm input{text-align:left;padding-left:10px;margin:5px auto;}
.formSection{margin-top:20px;}
#applicationForm .col{padding-bottom:20px;border-bottom:1px solid #dcdcdc;}
.req{
	background:#c52a1d;
	color:#fff;
	border-radius:5px;
	padding:2px 5px;
	margin-left:10px;
	font-size:12px;
}
/*完了画面*/
.m40{margin:40px auto;max-width:330px;}
.infoBox{
	padding:20px 15px;border:1px solid #dcdcdc;font-size:13px;color:#656565;
}