@charset "UTF-8";
/*------------------------------------------------------------
	トップページ
------------------------------------------------------------*/
#main #mainVisual {
	background: url("../img/bg.png") repeat-y;
}

#main #mainVisual:before {
	background: url("../img/bg_top.png") no-repeat;
	width: 942px;
	height: 20px;
	display: block;
	content: "";
}

#main #mainVisual:after {
	background: url("../img/bg_bottom.png") no-repeat;
	width: 942px;
	height: 16px;
	display: block;
	content: "";
}

#main #mainVisual .ttlArea {
	padding-top: 60px;
	position: relative;
}

#main #mainVisual .ttlArea .logo {
	position: absolute;
	top: 13px;
	left: 25px;
	z-index: 100;
}

#main #mainVisual .ttlArea .ttl01 {
	margin-right: 37px;
	text-align: right;
}

#main #mainVisual .newsBox {
	position: relative;
	z-index: 100;
}

#main #mainVisual .newsBox .positionImg {
	position: absolute;
	top: 140px;
	left: 48px;
}

#main #mainVisual .newsBox .ttl02 {
	padding-left: 310px;
}

#main #mainVisual .newsBox .newsTable {
	margin-top: 10px;
	padding: 0 0 0 310px;
	display: table;
}

#main #mainVisual .newsBox .newsTable .newsList {
	display: table-row;
}

#main #mainVisual .newsBox .newsTable .newsList dt, #main #mainVisual .newsBox .newsTable .newsList dd {
	padding-bottom: 8px;
	display: table-cell;
	vertical-align: middle;
}

#main #mainVisual .newsBox .newsTable .newsList dd {
	margin-top: -25px;
	padding-left: 25px;
}

#main #mainVisual .newsBox .newsTable01 {
	margin: 60px 0 20px 0;
	padding-left: 130px;
}

#main #mainVisual .characterBox {
	margin-bottom: 33px;
}

#main #mainVisual .characterBox .price {
	padding-left: 75px;
	float: left;
}

#main #mainVisual .characterBox .price .priceText {
	margin: 4px 0 0 15px;
	display: inline-block;
}

#main #mainVisual .characterBox .character {
	float: right;
	position: relative;
}

#main #mainVisual .characterBox .character img {
	position: absolute;
	top: -235px;
	right: 20px;
}

#main #conts {
	padding-bottom: 100px;
}

#main #conts .soldout01 {
	margin: 55px 0 88px 0;
	text-align: center;
}

#main #conts .otherNavi {
	margin-bottom: 45px;
	padding-top: 25px;
}

#main #conts .otherNavi li {
	float: right;
}

#main #conts .otherNavi li img:hover {
	opacity: 0.7;
	-ms-filter: "alpha(opacity=70)";
}

#main #conts #premiumGift, #main #conts #giftShop, #main #conts #handlingStore, #main #conts #notes {
	padding-top: 42px;
}

#main #conts #earlyUse {
	padding: 10px 0 48px;
}

#main #conts .earlyBox {
	padding-top: 13px;
	background-color: #FFF000;
}

#main #conts .earlyBox .subBox {
	margin: 0 0 6px 22px;
}

#main #conts .earlyBox .lBox {
	float: left;
}

#main #conts .earlyBox .rBox {
	position: relative;
	width: 540px;
	float: right;
}

#main #conts .earlyBox .rBox .arrowTxt {
	position: absolute;
	left: -5px;
	top: -18px;
}

#main #conts .earlyBox .rBox .text01 {
	margin: 0 0 108px 43px;
}

#main #conts .earlyBox .rBox li:first-child {
	margin-bottom: 5px;
}

#main #conts .earlyBox .text02 {
	padding: 7px 31px;
	background-color: #0068B5;
}

#main #conts .giftBox .detailTxt {
	margin-left: 174px;
}

#main #conts .giftBox .supplement {
	margin: 12px 41px 0 0;
	text-align: right;
}

#main #conts .giftBox .price {
	margin: 41px 0 30px 190px;
}

#main #conts .giftBox .sample {
	text-align: center;
}

#main #conts .giftBox .listBox {
	margin: 25px 0 0 55px;
}

#main #conts .giftBox .listBox .list dd {
	margin: 5px 0 0 0;
}

#main #conts .giftBox .listBox .list dd.priceTable {
	margin: 20px 0 0 100px;
}

#main #conts .giftBox .listBox .list .firstChild {
	margin-left: 5px;
}

#main #conts .giftBox .priceText {
	margin: 15px 0 0 95px;
}

#main #conts .giftBox.construction .ttlArea {
	margin-bottom: 100px;
}

#main #conts .giftBox.construction .img {
	margin-bottom: 55px;
}

#main #conts .giftBox#giftShop .giftTtl {
	margin: -31px 0 43px 176px;
}

#main #conts .giftBox#giftShop #primarySale {
	padding-top: 16px;
}

#main #conts .giftBox#giftShop .once {
	margin-left: 120px;
	padding: 52px 0 80px 25px;
	background: url("../img/schedule_bg01.png") no-repeat;
	width: 757px;
	height: 482px;
	position: relative;
}

#main #conts .giftBox#giftShop .once .giftTtl02 {
	position: absolute;
	top: -17px;
	left: 43px;
}

#main #conts .giftBox#giftShop p {
	margin: -10px 0 20px 30px;
}

#main #conts .giftBox#giftShop .detailBox01 {
	float: left;
}

#main #conts .giftBox#giftShop .detailBox01 .mapTtl {
	display: inline-block;
}

#main #conts .giftBox#giftShop .detailBox01 .mapLink img {
	margin: 40px 0 0 15px;
}

#main #conts .giftBox#giftShop .detailBox02 {
	margin-right: 30px;
	float: right;
}

#main #conts .giftBox#giftShop .detailBox02 .mapTtl {
	display: inline-block;
}

#main #conts .giftBox#giftShop .detailBox02 .mapLink img {
	margin-top: 40px;
}

#main #conts .giftBox#giftShop .map {
	margin: 20px 0 25px 0;
}

#main #conts .giftBox#giftShop .address {
	margin: 0;
}

#main #conts .giftBox#giftShop .address02 {
	margin: -15px 25px 0 0;
}

#main #conts .giftBox#giftShop .secondary {
	margin-left: 110px;
	padding: 52px 0 0 25px;
	background: url("../img/schedule_bg02.png") no-repeat;
	width: 757px;
	height: 303px;
	position: relative;
}

#main #conts .giftBox#giftShop .secondary .giftTtl02 {
	position: absolute;
	top: -17px;
	left: 43px;
}

#main #conts .giftBox#giftShop .secondary p {
	margin-left: 40px;
}

#main #conts .giftBox#giftShop .secondary .text {
	margin: 40px 0 35px 65px;
}

#main #conts .giftBox#giftShop .secondary .lastText {
	margin-right: 90px;
	text-align: right;
}

#main #conts .giftBox#giftShop .secondary .soldText {
	position: absolute;
	top: 129px;
	left: -40px;
}

#main #conts .giftBox#giftShop .soldOut {
	margin-left: 140px;
	display: block;
}

#main #conts .giftBox#giftShop .soldOut .text {
	display: inline-block;
	margin: 55px 20px 0 0;
}

#main #conts .giftBox#giftShop .pageTop {
	margin-top: -55px;
	margin-bottom: 12px;
}

#main #conts .giftBox#handlingStore .ttlArea {
	margin-bottom: 80px;
}

#main #conts .giftBox#handlingStore .linkBox {
	margin-top: 123px;
	position: relative;
}

#main #conts .giftBox#handlingStore .linkBox .linkList {
	margin-left: 150px;
	position: relative;
	z-index: 100;
}

#main #conts .giftBox#handlingStore .linkBox .linkList img:hover {
	opacity: 0.7;
	-ms-filter: "alpha(opacity=70)";
}

#main #conts .giftBox#handlingStore .linkBox span {
	display: block;
	position: absolute;
	top: -55px;
	right: 124px;
	z-index: 0;
}

#main #conts .giftBox#handlingStore .linkBox .borderBox {
	margin: 115px 0 0 70px;
}

#main #conts .giftBox .shop .guideTxt {
	margin: 5px 0 45px 70px;
}

#main #conts .giftBox .shop .ttl04, #main #conts .giftBox .shop .shopText {
	margin-left: 210px;
}

#main #conts .giftBox .shop .shopText {
	margin: 25px 0 0 210px;
}

#main #conts .giftBox .shop .documentBox {
	margin: -75px 0 53px 207px;
	position: relative;
}

#main #conts .giftBox .shop .documentBox .positionLink {
	position: absolute;
	left: -155px;
	top: 85px;
}

#main #conts .giftBox .shop .documentBox .linkBox {
	margin-left: 100px;
	float: left;
}

#main #conts .giftBox .shop .documentBox .linkBox:first-child {
	margin-left: 0;
}

#main #conts .giftBox .shop .documentBox .linkBox .link {
	margin-top: 15px;
}

#main #conts .giftBox .shop .documentBox .linkBox .link.sign {
	margin: 21px 0 0 -7px;
}

#main #conts .giftBox .shop .flowTtl {
	margin-left: 65px;
}

#main #conts .giftBox .shop .flowTtl:after {
	content: "";
	display: block;
	width: 841px;
	height: 10px;
	background: url("../img/flow_border.png") no-repeat;
	margin-top: 15px;
}

#main #conts .giftBox .shop .flowList {
	margin: 15px 0 0 65px;
}

#main #conts .giftBox .shop .flowList li {
	margin-top: 10px;
}

#main #conts .giftBox .shop .flowList li:first-child {
	margin-top: 0;
}

#main #conts .giftBox .shop .flowLink {
	margin: -50px -20px 10px 0;
	text-align: right;
}

#main #conts .giftBox .shop .flowBox {
	margin-left: 40px;
}

#main #conts .giftBox .shop .pageTop02 {
	margin: 50px 40px 60px 0;
}

#main #conts .giftBox .questionArea {
	margin-bottom: 15px;
}

#main #conts .giftBox .questionList {
	margin-left: 75px;
}

#main #conts .giftBox .questionList dt {
	margin-top: 33px;
}

#main #conts .giftBox .questionList dt:first-child {
	margin-top: 0;
}

#main #conts .giftBox .questionList dd {
	margin-top: 6px;
}

#main #conts .giftBox .useTtl {
	margin: 135px 0 35px 65px;
}

#main #conts .giftBox .useList {
	margin: 40px 0 0 65px;
}

#main #conts .giftBox .useList dt {
	margin-top: 60px;
}

#main #conts .giftBox .useList dt:first-child {
	margin-top: 0;
}

#main #conts .giftBox .useList dd {
	margin-top: 5px;
}

#main #conts .giftBox .pageTop03 {
	margin: 120px 40px 46px 0;
}

#main #conts .giftBox .caution {
	padding-left: 60px;
}

#main #conts .giftBox .caution .cautionTtl {
	margin: 126px 0 42px 0;
}

#main #conts .giftBox .caution .cautionList01 li {
	margin-top: 30px;
}

#main #conts .giftBox .caution .cautionList01 li:first-child {
	margin-top: 40px;
}

#main #conts .giftBox .caution .cautionList01 li .cautionList02 {
	margin-left: 40px;
}

#main #conts .giftBox .caution .cautionList01 li .cautionList02 li {
	margin-top: 2px;
	margin-bottom: 2px;
}

#main #conts .giftBox .caution .cautionList01 li .cautionList02 li.other {
	margin: 35px 0 25px 0;
}

#main #conts .giftBox .caution .cautionList01 li .cautionList02 li.other a {
	margin: 6px 0 0 -235px;
	display: inline-block;
}
