@charset "UTF-8";
/* CSS Document */

/*----------------------------------
	index用のCSSです
----------------------------------*/
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.contents {
	margin: 0 auto 50px;
	width: 960px;
}

.contents h3 {
	font-size: 19px;
	line-height: 1.6;
	margin: 10px 0 30px;
    border-bottom: none;
}

.contents .a_nav{
	position: relative;
	margin-bottom: 30px;
}

.contents .a_nav ul{
	list-style: none;
/*	float:left;*/
/*	left:50%;*/
	position:relative;
    display: table;
    width: 100%;
}

.contents .a_nav li{
/*	float:left;*/
/*	left:-50%;*/
	position:relative;
	margin: 0px 8px;
    display: table-cell;
    min-width: 33.3%;
    text-align: center;
}

.coupon-wrap {
	margin: 0 auto;
	box-shadow: 3px 3px 0px 0px rgba(0, 0, 0, 0.2);
	margin-bottom: 30px;
	/*width: 800px;*/
}

#kokunai{
	border: 3px solid #e5004f;
}

#kaigai{
	border: 3px solid #00a0e9;
}

#allarea{
	border: 3px solid #d7b230;
}

.coupon-wrap#kokunai h2.coupon-header{
	font-size: 18px;
	color: #fff;
	height: 32px;
	padding-top: 8px;
	padding-left: 10px;
	background-color: #e5004f;
	margin-bottom: 15px;
    font-weight: 700;
}

.coupon-wrap#kaigai h2.coupon-header{
	font-size: 18px;
	color: #fff;
	height: 32px;
	padding-top: 8px;
	padding-left: 10px;
	background-color: #00a0e9;
	margin-bottom: 15px;
}

.coupon-wrap#allarea h2.coupon-header{
	font-size: 18px;
	color: #fff;
	height: 32px;
	padding-top: 8px;
	padding-left: 10px;
	background-color: #d7b230;
	margin-bottom: 15px;
    font-weight: 700;
}

.coupon-inner{
	margin: 0 auto;
	width: 800px;	
}

.coupon-outer:not(:last-child) {
	background-image: url(../images/inner_bottom.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	padding-bottom: 15px;
	margin-bottom: 15px;
	/*border-right: 1px solid #000;*/
}  

.coupon-box {
	margin: 0 auto 20px;
}


.btn a:hover {
	opacity: 0.7;
	-webkit-transition: 0.3s;
	   -moz-transition: 0.3s;
	    -ms-transition: 0.3s;
	     -o-transition: 0.3s;
	        transition: 0.3s;
}

.btn-get{
	float:right;
}

.btn_close{
	display: none;
}

.btn_detail{
	margin-bottom: 15px;
}

.description-box{
	display: none;
	margin-bottom: 15px;
}

/*----------------------------------
	クーポン
----------------------------------*/
/*クーポン内 明朝体*/
.table_coupon td,
.table_coupon p,
.table_coupon span {
	font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

/*----------coupon----------*/
div.coupon {
	width: 374px;
	height: 150px;
	background-image: url(../images/coupon.gif);
	background-size: cover;
	position: relative;
}

div.limited{
	background-image: url(../images/coupon_limited.gif);
}

div.mask_used{
		position: absolute;
		top: 41px;
		left: 1px;
		width: 374px;
		height: 150px;
		background-image: url(../images/coupon_mask_used_l.png);
		z-index: 1;
}

div.pr {
	position:relative;
}

div.mask_over{
		position: absolute;
		top: 1px;
		left: 1px;
		width: 374px;
		height: 150px;
		background-image: url(../images/coupon_mask_over_l.png);
		z-index: 1;
}

div.coupon table{
vertical-align: top;
}

p.coupon_title{
font-size: 19px;
line-height:26px;
vertical-align: middle;
padding-top: 9px;
margin-bottom:5px;
}

td.coupon_left{
padding-left: 15px;
padding-top: 30px;
width: 130px;
vertical-align: top;
}

td.coupon_left p{
font-size: 16px;
line-height: 1.5;
}

td.coupon_left .number{
font-size: 28px;
color:#9f8a44;
line-height: 1.2; 
vertical-align:bottom;
}

td.coupon_right{
text-align: center;
font-size: 40px;
padding-top: 30px;
width: 244px;
vertical-align: top;
}

td.coupon_right p{
font-size: 28px;
line-height: 1.2; 
text-shadow: white 1px 1px 0px, white -1px 1px 0px,white 1px -1px 0px, white -1px -1px 0px;
}

td.coupon_right .number{
font-size: 51px;
color:#9f8a44;
line-height: 1; 
vertical-align:bottom;
}

td.coupon_right .small{
font-size: 22px;
margin-top: 5px;
}
/*----------coupon----------*/


.table_coupon {
	float: left;
}

.list-box dl {
	display: table;
	margin-bottom: 5px;
}
.list-box dt,
.list-box dd {
	display: table-cell;
	font-size: 14px;
	line-height: 1.2;
    font-weight: 400;
}

.simple-list {
	float: left;
	margin-left: 20px;
	letter-spacing: 0;
}

.dsp-list {
	margin-bottom: 30px;
}

.dsp-list dd ul li{
	font-size: 14px;
	line-height: 1.4;
	margin-bottom: 3px;
}

.attention {
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 50px;
	letter-spacing: 0;
}
.attention li{
	font-size: 14px;
	line-height: 1.6;
}


p.texBoxr {
	border:1px solid hsla(359,100%,45%,1.00);
	padding:10px;
	font-size:16px;
	line-height:20px;
	margin-bottom:20px;
}

p.texBoxr a {
	font-size:16px;
	line-height:20px;
	text-decoration: revert;
    color: revert;
}

.noAllCp {
    text-align: center;
    padding: 10px;
    font-size: 16px;
    line-height: 20px;
}


/*---------- use ----------*/

#use.use{
	border: 3px solid #4dafa7;
	box-shadow: 3px 3px 0px 0px rgb(0 0 0 / 20%);
}
#use.use .useInner {
	background: #fff;
	width: 954px;
	border-radius: 6px;
	margin: 0 auto;
	position: relative;
}
#use .useInner > h3{
	padding: 28px 0 40px;
}
#use .useInner > h3 > img{
	margin: 0 auto;
	display: block;
}

#use h2.use-header{
	display:block;
	font-size: 24px;
    font-weight: 700;
    color: #fff;
    height: 80px;
    background-color: #4dafa7;
	position:relative;
	text-align:center;
	line-height:80px;
}

#use h2.use-header .kuma img {
	position: absolute;
	top: 16px;
	left: 240px;
	width: 80px;
}

#use .stepBoxUpper{
	width: 954px;
	display: flex;
  flex-wrap: wrap;
}
#use .stepBoxUpper > li{
	/* width: calc((100% / 2) - 1px); */
	width: calc((100% / 2) - 40px);
	padding: 20px;
}

#use .stepBoxUpper > li::before{
	/* width: calc((100% / 2) - 1px); */
	width: calc((100% / 2) - 40px);
}

#use .useInner li .step img{
	width: 100%;
	margin-right: 10px;
}

#use .useInner .stepBoxUpper li .step .step_ttl{
	color: #4dafa7;
	font-size: 24px;
	font-weight: bold;
	display: flex;
	align-items: center;
	margin-bottom: 10px;
	line-height: 28px;
}

#use .useInner .stepBoxUpper li .step .step_ttl img {
	width: 78px;
}

#use .stepBoxMiddle{
	width: 954px;
	display: flex;
  flex-wrap: wrap;
}
#use .stepBoxMiddle > li{
	/* width: calc((100% / 2) - 1px); */
	width: calc((100% / 2) - 40px);
	padding: 20px;
}

#use .useInner .stepBoxMiddle li .step .step_ttl{
	color: #4dafa7;
	font-size: 24px;
	font-weight: bold;
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

#use .useInner .stepBoxMiddle li .step .step_ttl img {
	width: 78px;
}


#use .useInner .stepBoxLower li .step .step_ttl{
	color: #4dafa7;
	font-size: 24px;
	font-weight: bold;
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

#use .useInner .stepBoxLower li .step .step_ttl img {
	width: 78px;
}


#use .stepBoxLower{
	width: 954px;
	display: flex;
}
#use .stepBoxLower > li{
	width: calc(100% / 2);
	padding: 20px;
	
}

/*縦横点線ここから*/
#use .stepBoxUpper{
	position: relative;
}
#use .stepBoxUpper::before{
}
	
#use .stepBoxUpper li{}

#use .stepBoxMiddle{
	position: relative;
}


/*下段の区切り線ここから*/

#use .stepBoxUpper > li:nth-child(1)::before, #use .stepBoxUpper > li:nth-child(-n+1)::before {
    content: "";
    position: absolute;
    background: linear-gradient(to bottom, rgba(215,160,194,1), rgba(215,160,194,1) 66%, rgba(0, 0, 0, 0) 66%, rgba(0, 0, 0, 0) 100%) 0% 0%;
    background-size: 1px 6px;
    width: 1px;
    height: 530%;	
    right: 0;
    z-index: 1;
}


/*#use .stepBoxMiddle > li:nth-child(-n+2)::before, #use .stepBoxMiddle > li:nth-child(-n+1)::before {
    content: "";
    position: absolute;
    background: linear-gradient(to bottom, rgba(77, 175, 167, 1), rgba(77, 175, 167, 1) 66%, rgba(0, 0, 0, 0) 66%, rgba(0, 0, 0, 0) 100%) 0% 0%;
    background-size: 1px 6px;
    width: 1px;
    height: 400%;
    right: 0;
    z-index: 1;
}*/


/*#use .stepBoxLower > li:nth-child(-n+2)::before, #use .stepBoxLower > li:nth-child(-n+1)::before {
    content: "";
    position: absolute;
    background: linear-gradient(to bottom, rgba(77, 175, 167, 1), rgba(77, 175, 167, 1) 66%, rgba(0, 0, 0, 0) 66%, rgba(0, 0, 0, 0) 100%) 0% 0%;
    background-size: 1px 6px;
    width: 1px;
    height: 100%;
    right: 0;
    z-index: 1;
}*/

#use .stepBoxMiddle > li:nth-child(-n+2)::after {
    content: "";
    position: absolute;
    background: linear-gradient(to right, rgba(215,160,194,1), rgba(215,160,194,1) 66%, rgba(0, 0, 0, 0) 66%, rgba(0, 0, 0, 0) 100%) 0% 0%;
    background-size: 6px 1px;
    width: 95%;
    left: calc(5% / 2);
    height: 1px;
    bottom: 0;
    z-index: 1;
}

#use .stepBoxUpper > li{
	position: relative;
}

#use .stepBoxMiddle  li{
	position: relative;
}

#use .stepBoxLower  li{
	position: relative;
}

#use .stepBoxUpper >  li:nth-child(-n+2)::after{
    content: "";
    position: absolute;
    background: linear-gradient(to right, rgba(215,160,194,1), rgba(215,160,194,1) 66%, rgba(0, 0, 0, 0) 66%, rgba(0, 0, 0, 0) 100%) 0% 0%;
    background-size: 6px 1px;
    width: 95%;
    left: calc(5% / 2);
    height: 1px;
    bottom: 0;
    z-index: 1;
}

/*縦横点線ここまで*/


#use .useInner p.txt{
	color: #4c4c4c;
	font-size: 16px;
	line-height: 1.5;
	text-align: left;
	margin-bottom: 20px;
}

.step01_btn a img {
	width: 200px !important;
}

#use .useInner p.note{
	
}

#use .useInner p.link a{
	color: #b10e74;
	font-size: 18px;
	line-height: 1.2;
	font-weight: 600;
}

.line {
  margin: 0 1rem;
  width: 4px;
  background-color: #000;
}

.btn{
	margin-top: 20px;
}

.temp{
    display: flex;
    justify-content: center;
	margin-bottom: 10px;
}

/*start_リニューアル2021対応*/
:where(.containner) *,
:where(.containner)::after,
:where(.containner)::before {
  box-sizing: content-box;
}

:where(.containner) img {
  width: auto;
}
/*end_リニューアル2021対応*/
