







@charset "utf-8";
main{
	padding:0
}
p{
	margin:0
}
article.feature .prize-section {
  padding: 0;
  background-size: auto 100%;
  background: rgb(255,244,244);
  background: linear-gradient(180deg, rgb(255 243 243) 0%, rgb(255 237 239) 100%);
  position:relative;
}
article.feature img {
    width: 100%;
}
article.feature .prize-section .inner-header {
  padding: 50px 30px;
  margin: 0;
  max-width: 100%;
  position:relative;
}
article.feature .prize-section .inner-header::before {
  content:"";
  display:block;
  height:100%;
  aspect-ratio: 225/751;
  position:absolute;
  top:0;
  left:0;
  background: url(/lottery/image/sougyou-bg01.webp) repeat top right/150px;
  max-width: 100%;
  opacity:0.6;
}
article.feature .prize-section .inner-header::after {
  content:"";
  display:block;
  height:100%;
  aspect-ratio: 107/377;
  position:absolute;
  top:0;
  right:0;
  background: url(/lottery/image/sougyou-bg02.webp) repeat top right/150px;
  max-width: 100%;
  opacity:0.6;
  visibility:visible
}
article.feature .prize-section .inner-header h2{
  max-width:600px;
  width:90%;
  margin: 0 auto;
  position:relative;
  z-index: 0;
}
article.feature .prize-section .inner-header h2 img {
  width: 100%;
}
article.feature .prize-section .inner-header .page-tab {
  display: none;
}
@media screen and (max-width: 768px) {
	article.feature .prize-section .inner-header{
		padding:20px 20px
	}
  article.feature .prize-section {
  padding: 0 0px 50px;
  }
	article.feature .prize-section .inner-header::before {
  height:100%;
		width:10%;
  background: url(/lottery/image/sougyou-bg01.webp) repeat-y top left/150px;
}
article.feature .prize-section .inner-header::after {
	width:10%;
  background: url(/lottery/image/sougyou-bg02.webp) repeat top left/150px;
}
  article.feature .prize-section .inner-header .page-tab {
    display: block;
    padding-top: 30px;
    padding-left: 38px;
    padding-right: 38px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
  }
  article.feature .prize-section .inner-header .page-tab a {
    background-color: #C69A68;
    height: 46px;
    width: calc(50% - 5px);
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 2px 2px 5px 0px #666;
  }
}
article.feature .prize-section .detail-area {
  padding: 0 30px;
  margin: 60px auto 0;
  max-width: 700px;
  position: relative;
  font-size: 18px;
  display: grid;
  gap: 30px;
  font-weight: 500;
}
article.feature .prize-section .detail-area::after{
	display:none
}
article.feature .prize-section .detail-area .detail p{
	margin:20px 0 0
}
article.feature .prize-section .detail-area .detail h3 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  border-bottom: 2px solid #C69A68;
  padding-bottom: 10px;
  margin-bottom: 10px;
  gap: 8px;
}
article.feature .prize-section .detail-area .detail h3 span {
  font-size: 14px;
  position: relative;
  bottom: -1px;
}
article.feature .prize-section .date {max-width: 400px;margin: 24px auto 0;position: relative;}
article.feature .prize-section .detail-area .detail p.top {
  font-size:20px;
  text-align: justify;
}
article.feature .prize-section .detail-area .detail small {
  font-size: 12px;
  padding-top: 5px;
  display: block;
}
@media screen and (max-width:768px){
	article.feature .prize-section .detail-area .detail h3{
		font-size:16px;
	}
  article.feature .prize-section .detail-area .detail p{
	  font-size:15px
  }
	article.feature .prize-section .detail-area{
		margin: 27px 0 0;
		padding:0 10px
	}
}



ul.present-wrap {
	max-width: 1000px;
	margin: 50px auto;
	padding: 50px 37px 50px 82px;
	display: grid;
	gap: 41px 0;
	grid-template-columns:repeat(2,1fr);
	background: #fffbc9;
	border-radius: 30px;
	align-items: center;
	justify-content: center;
	position: relative;
}
ul.present-wrap::after{
	content:"";
	display:block;
	height: 160px;
	aspect-ratio: 157/154;
	background:url(/lottery/image/sougyou-present-total.webp) no-repeat center/contain;
	position:absolute;
	top: -6px;
	left: -10px;
	z-index: 1000;
	visibility: visible;
}
ul.present-wrap li {
	height: 100px;
	width: 100%;
	grid-column:1/3
}
ul.present-wrap li:nth-of-type(2) {
	height: 90px;
}
ul.present-wrap li:nth-of-type(3) {
	height: 85px;
}
ul.present-wrap li:nth-of-type(4){
	grid-column:1/2;
	height: 85px;
}
ul.present-wrap li:nth-of-type(5){
	grid-column:2/3;
	height: 80px;
}
ul.present-wrap li:nth-of-type(6){
	height:auto
}
ul.present-wrap li span {
	display: block;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
ul.present-wrap li img {
	height: 100%;
	object-fit: contain;
	object-position: left;
}
@media screen and (max-width:768px){
	ul.present-wrap {
    padding: 45px 20px 20px;
    margin: 0 20px 80px;
    gap: 10px 20px;
  }
	ul.present-wrap li:nth-of-type(6){
		font-size:13px
	}
	ul.present-wrap::after{
		height: 90px;
	}
	ul.present-wrap li{
		height:auto
	}
	ul.present-wrap li:nth-of-type(2) {
	height: auto
}
ul.present-wrap li:nth-of-type(3) {
	height: auto
}
ul.present-wrap li:nth-of-type(4){
	height: auto
}
ul.present-wrap li:nth-of-type(5){
	height: auto
}
}


section#touroku {
    margin: 0;
    padding: 45px 35px;
    background: #38b256;
}
@media screen and (max-width:768px){
	section#touroku {
    padding: 45px 20px;
  }
}
/*エントリー方法*/
.entry-flow {
    padding: 45px 35px;
    background: #38b256;
    color: #fff;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
}
.entry-flow h3 {
    text-align: center;
    font-size: 29px;
    margin: 0 0 45px;
}
ul.flex-wrap.line-flow {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 50px 20px;
    padding: 0;
    list-style: none;
    margin: 0 auto;
    max-width: 800px;
}
ul.flex-wrap.line-flow::after{
display:none}
ul.flex-wrap.line-flow li{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: column;
	gap: 20px;
	border: 4px solid;
	padding: 30px 10px 10px;
	position: relative;
}
ul.flex-wrap.line-flow li:last-of-type{
	display:flex;
	align-items: center;
	justify-content: center;
	font-size: 27px;
}
ul.flex-wrap.line-flow li:last-of-type .lottery-bt a{
	font-size: 17px;
}
ul.flex-wrap.line-flow li::before{
	content:"01";
	display:block;
	font-size:33px;
	position:absolute;
	top:0;
	transform:translateY(-50%);
	background:#38b256;
	padding:0 20px;
}
ul.flex-wrap.line-flow li:nth-of-type(2)::before{
	content:"02";
}
ul.flex-wrap.line-flow li:nth-of-type(3)::before{
	content:"03";
}
ul.flex-wrap.line-flow li:nth-of-type(4)::before{
	content:"04";
}
ul.flex-wrap.line-flow li:nth-of-type(5)::before{
	content:"05";
}
ul.flex-wrap.line-flow li:nth-of-type(6)::before{
	content:"06";
}
ul.flex-wrap.line-flow li p{
	margin: 0;
	font-size: 20px;
}
ul.flex-wrap.line-flow figure{
    height: 142px;
    width: 100%;
    aspect-ratio:auto;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
}
ul.flex-wrap.line-flow figure img{
    height:100%;
    object-fit:contain;
    object-position: center;
    aspect-ratio: auto;
}
@media screen and (max-width:768px){
	.entry-flow{
		padding: 0 0 60px;
	}
	.entry-flow h3{
		font-size:18px
	}
	ul.flex-wrap.line-flow {
    grid-template-columns: repeat(1,1fr);
    gap: 30px 10px;
  }
	ul.flex-wrap.line-flow li{
		padding:25px 10px 20px
	}
	ul.flex-wrap.line-flow li .text-wrap{
		width:100%
	}
	ul.flex-wrap.line-flow figure{
		height: 157px;
		width: 73%;
	}
	ul.flex-wrap.line-flow li p{
		font-size:17px
	}
}

/*アカウント一覧*/
.box_wide.outline .acount-list p.heading00caption {
    text-align: center;
    font-size: 25px;
    font-weight: 600;
    color: #fff;
    margin: 0 0 30px;
}
.box_wide.outline .acount-list {
	margin: 60px auto 0;
	max-width: 900px;
	padding: 0 20px;
}
.box_wide.outline .acount-list .account_container {
	background-color:transparent;
	margin-top:0;
	display: grid;
	justify-content: space-between;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 10px;
}
.box_wide.outline .acount-list .account_container .inner{
	border-radius: 10px;
	background:#fff;
	display: flex;
	flex-direction: column;
	border-radius: 10px;
	background:#fff;
	padding:10px;
	box-sizing:border-box;
}
.box_wide.outline .account_container .inner .description{
	font-size: 13px;
	border-top: 1px solid;
	margin-top:10px;
	padding: 3px 0 0;
	text-align: center;
	font-weight: 600;
}
.box_wide.outline .account_container .inner > .image{
	text-align:center;
	width: 80%;
	height: 46px;
	margin: 0 auto;
}
.box_wide.outline .account_container img{
	height:100%;
	object-fit:contain;
	width:100%
}
.box_wide.outline .account_container .inner .image p.title{
	text-align:center;
	font-size: 17px!important;
	color:#1fab39;
	line-height:1;
	font-weight:700;
	margin: 0;
}
.box_wide.outline .account_container .inner .qrinfo p:last-child{
	margin-top: 2px;
	text-align: center;
	font-weight: 600;
	font-size: 13px;
}
.box_wide.outline .account_container .inner p.storelist{
	font-size:12px;
}
.box_wide.outline .account_container .inner .qrinfo{
	padding-top: 18px;
}
.box_wide.outline .acount-list .mode_sp{
	display: none
}
@media screen and (max-width:768px){
	.box_wide.outline .acount-list {
	padding: 0;
	margin: 0 auto;
	}
	.box_wide.outline .acount-list p.heading00caption{
		font-size:18px
	}
	.box_wide.outline .acount-list .account_container{
		grid-template-columns:repeat(2,1fr)
	}
	.box_wide.outline .acount-list .mode_sp{
		display: block;
		max-width: 200px;
		margin: 0 auto;
	}
	.box_wide.outline .acount-list .mode_pc{
		display: none
	}
}


/*登録方法*/
section#sphone {
    background: #a21a24;
    padding: 0 20px 60px;
}
section#sphone h4 {
    margin: 0 auto;
    max-width: 650px;
    text-align: center;
    color: #fff;
    font-size: 20px;
}
section#sphone h4 span{
    margin: 20px 0 0;
	display:block
}
.how-to-regislation {
  margin: 28px auto 30px;
  padding: 50px 30px;
  display: flex;
  flex-direction: column;
  gap: 80px;
  width: 90%;
  max-width: 600px;
  background: #fff;
  border-radius: 20px;
  box-sizing: border-box;
}
.how-to-regislation::after{
display:none}
.register-step1 h4 span {
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.line-link-block {
  margin: 0 auto 30px;
  display: grid;
  grid-template-columns: 56% 39%;
  align-items: center;
  justify-content: space-between;
  width: 97%;
}
.lottery-bt {
  max-width: 508px;
  border-radius: 100vh;
  overflow: hidden;
  margin: 11px auto 0;
  width: 80%;
  border: 3px solid #38b256;
  box-shadow: 0 4px 0 #ffffff;
}
.bt-text-wrap .lottery-bt {
  margin: 0 auto 0;
}
.lottery-bt:hover{
	box-shadow:none;
	transform:translateY(4px)
}
.lottery-bt a {
  padding: 15px 10px;
  color: #38b256;
  text-decoration: none;
  background: #ffffff;
  display: block;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
}
.line-link-block .lottery-bt.line{
  width:100%;
  box-shadow: 0 6px 0 #18531d;
  position: relative;
  transition:0.1s;
}
.line-link-block .lottery-bt.line:hover{
  box-shadow:none;
  transform:translateY(3px)
}
.line-link-block .lottery-bt.line::before{
  content:"";
  display:block;
  width:7px;
  height:7px;
  border-top: 2px solid;
  border-left: 2px solid;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%) rotate(135deg);
  color: #fff;
}
.line-link-block .lottery-bt.line a{
  padding: 21px 20px;
  background: #ffffff;
  font-weight: 600;
  font-size: 16px;
}
.how-to-regislation figure{
	margin: 0;
}
@media screen and (max-width:768px){
	section#sphone {
		padding:0 10px
	}
  .how-to-regislation {
  margin: 50px auto 30px;
  gap: 30px;
  width: 100%;
  padding: 20px 3px;
  }
	.line-link-block .lottery-bt.line a{
		padding:10px 15px;
		font-size:13px
	}
}



