@charset "UTF-8";

/*================================================
      共通項目
================================================*/
html {
	overflow-y: scroll;
	font-family: 'Yu Gothic', YuGo, YuGothic, sans-serif;
	font-feature-settings: "pkna";
	text-align: justify;
	font-size: 10px;
    -webkit-tap-highlight-color: transparent;
} 
  
body {
	margin: 0;
	background-color:#ffffff;
	font-family: 'Yu Gothic', YuGo, YuGothic, sans-serif;
	font-size: 16px;
    line-height: 1.5;
    color: #000000;
    background-color: #FFFFFF;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: 'Yu Gothic', YuGo, YuGothic, sans-serif;
	font-weight: 400;
}

.bold {
	font-weight: bold;
}

h2 {
	font-size: 2vw;
}
.bgtx {
	font-size: 3.1vw;
}
@media only screen and (max-width: 767px) {
  h2 {
	font-size: 3vw;
  }
  .bgtx {
	font-size: 4.1vw;
  }
}

/*header================*/
header {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	color: #26323F;
}
header .container img.logo {
	padding: 10px 0;
	float: left;
}
header .container div.link {
	text-align: right;
	height: 78px;
	line-height: 78px;
}
@media only screen and (max-width: 767px) {
  header .container img.logo {
	float: none;
  }
  header .container div.link {
	height: 30px;
	line-height: 30px;
  }
}
header .container div.link a {
	color: #26323F;
	text-decoration: none;
}
header .container div.link a img {
	vertical-align: middle;
	margin-top: -5px;
	margin-left: 5px;
}

/*mainVisual================*/
#main-visual .row {
	width: 100%;
	max-width: 1926px;
	margin-left: auto;
	margin-right: auto;
}
#main-visual.container-fluid {
	margin-left: 0;
	margin-right: 0;
	padding: 0;
}
#main-visual .main_img {
	overflow: hidden;
}
#main-visual img {
	width: 100%;
	height: auto;
}
@media only screen and (max-width: 767px) {
  #main-visual img {
	width: 140%;
	margin-left: -25%;
	margin-right: 25%;
  }
}

/*container================*/
.container {
	max-width: 1200px;
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
}
@media only screen and (max-width: 960px) {
  .container {
	width: 90%;
  }
}
.container:after {
	clear: both;
}
.container .red {
	color: #F00;
}
.container .tx {
	line-height: 1.8;
}
.container .bold {
	font-weight: bold;
}
.container .row {
	padding-top: 10px;
	padding-bottom: 10px;
}
.container .row:after {
	clear: both;
}
.container .text-center {
	text-align: center;
}

/*説明================*/
.container .title_img {
	position: relative;
	margin: auto 0;
}
.container .title_img img {
	width: 60%;
	height: auto;
}
.container .title_img img.sp_img {
	display: none;
}
.container .setsumei_text {
	width: 70%;
	margin: 0 auto;
	margin-bottom: 30px;
}
.container .setsumei_text dl {
    display: flex;
	margin: 0;
	padding: 0;
	margin-bottom: 20px;
}
@media only screen and (max-width: 960px) {
  .container .title_img img {
	width: 80%;
  }
  .container .setsumei_text {
	width: 95%;
  }
  .container .setsumei_text dl {
	margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .container .title_img img.pc_img {
	display: none;
  }
  .container .title_img img.sp_img {
	display: block;
	margin: 0 auto;
  }
  .container .setsumei_text {
	margin-bottom: 0;
  }
}
.container .setsumei_text dl dt {
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-size: 25px;
	color: #26323F;
	font-weight: bold;
}
.container .setsumei_text dl dd {
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #26323F;
	line-height: 25px;
	font-weight: bold;
	margin-left: 10px;
}
.container .setsumei_text dl dd .comment {
	font-size: 12px;
}

/*ボタン枠================*/
.over_container {
	max-width: 1926px;
	margin-left: auto;
	margin-right: auto;
	margin-left: 0;
	margin-right: 0;
	padding: 0;
}
.over_container .but_img {
	position: relative;
	max-width: 1926px;
	padding-bottom: 30px;
	overflow: hidden;
}
.over_container .but_img .but_bk_img {
	width: 100%;
	height: auto;
}
.over_container .but_img div.shop_but {
	position: absolute;
	top: 5.7vw;
	left: 17.5vw;
	margin: auto 0;
}
.over_container .but_img div.shop_but img {
	width: 32vw;
}

}
.over_container .but_img div.shop_but_comment{
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.over_container .but_img div.site_but {
	position: absolute;
	top: 5.7vw;
	left: 50vw;
	margin: auto 0;
}
.over_container .but_img div.site_but img {
	width: 32vw;
}
.over_container .but_img div.site_but .but_comment {
	width: 30vw;
	font-size: 0.7vw;
}
.over_container .but_img div.site_but .but_comment ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}
.over_container .but_img div.site_but .but_comment ul li {
	margin: 1px 20px 1px 0;
}
.over_container .but_img div.shop_but .but_comment {
	width: 30vw;
	font-size: 0.7vw;
}


@media only screen and (max-width: 1200px) {
  .over_container .but_img .but_bk_img {
	margin-top: -30px;
	width: 150%;
	height: 350px;
	margin-left: -30%;
	margin-right: 30%;
  }
}
@media only screen and (max-width: 960px) {
  .over_container .but_img {
	padding-bottom: 0;
  }
  .over_container .but_img .but_bk_img {
	height: 350px;
	margin-left: -25%;
	margin-right: 25%;
  }
  .over_container .but_img div.shop_but {
	top: 5.7vw;
	left: 8vw;
  }
  .over_container .but_img div.shop_but img {
	width: 41vw;
  }
  .over_container .but_img div.site_but {
	top: 5.7vw;
	left: 50vw;
  }
  .over_container .but_img div.site_but img {
	width: 41vw;
  }
  .over_container .but_img div.site_but .but_comment {
	width: 41vw;
  }
}
.over_container .but_img div.shop_but .but_comment {
  width: 41vw;
}
}
@media only screen and (max-width: 767px) {
  .over_container .but_img .but_bk_img {
	margin-top: -10px;
	width: 400%;
	height: 95vw;
  }
  .over_container .but_img div.shop_but {
	top: 9.7vw;
	left: 15vw;
  }
  .over_container .but_img div.shop_but img {
	width: 70vw;
  }
  .over_container .but_img div.site_but {
	top: 34.7vw;
	left: 15vw;
  }
  .over_container .but_img div.site_but img {
	width: 70vw;
  }
  .over_container .but_img div.site_but .but_comment {
	width: 70vw;
  }
  .over_container .but_img div.shop_but .but_comment {
	width: 70vw;
  }
}
@media only screen and (max-width: 550px) {
  .over_container .but_img .but_bk_img {
	margin-top: 0px;
	width: 600%;
	height: 105vw;
  }
}
@media only screen and (max-width: 400px) {
  .over_container .but_img .but_bk_img {
	margin-top: 0px;
	width: 600%;
	height: 450px;
  }
}

/*流れ関連================*/
.container div.nagare {
	margin: 0 auto;
	margin-bottom: 40px;
	width: 100%;
}
.container div.nagare img.nagare {
	width: 395px;
}
@media only screen and (max-width: 960px) {
  .container div.nagare {
	margin-bottom: 30px;
  }
  .container div.nagare img.nagare {
	padding-top: 20px;
	width: 34vw;
  }
}
.container .step_img {
	margin: 0 auto;
}
.container .step_img img.pc_img {
	width: 100%;
	margin: 0 auto;
}
.container .step_img img.sp_img {
	width: 100%;
	margin: 0 auto;
	display: none;
}
.container .step_text {
	margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .container div.nagare {
	margin-top: -110px;
  }
  .container div.nagare img.nagare {
	width: 80%;
	display: block;
	margin: 0 auto;
  }
  .container .step_img img.pc_img {
	display: none;
  }
  .container .step_img img.sp_img {
	display: block;
	width: 100%;
  }
  .container .step_text {
	font-size: 2.5vw;
 }
}

/*タブ================*/
.container .tab-wrap {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto;
}
.container .tab-wrap .tab-label {
	display: grid;
	place-items: center;
	text-align: center;
	order: -1;
	flex: 1;
	z-index: 1;
	margin: 0;
	height: 69px;
	cursor: pointer;
	color: #FFFFFF;
	font-size: 1.2vw;
	font-weight: bold;
	border: 1px #26323F solid;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	background-color: #26323F;
	white-space: nowrap;
}
.container .tab-wrap .tab-label:not(:last-of-type) {
	margin-right: 20px;
}
@media only screen and (max-width: 960px) {
  .container .tab-wrap .tab-label:not(:last-of-type) {
	margin-right: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .container .tab-wrap .tab-label:not(:last-of-type) {
	margin-right: 5px;
  }
}
.container .tab-wrap input:not(:checked) + .tab-label:hover {
	opacity: 0.75;
	cursor: pointer;
}
.container .tab-wrap .tab-content {
	width: 100%;
	height: 0;
	overflow: hidden;
	opacity: 0;
}
.container .tab-wrap .tab-switch:checked + .tab-label {
	height: 69px;
	color: #595959;
	border: 1px #26323F solid;
	border-bottom: 1px #FFFFFF solid;
	background-color: #FFFFFF;
	margin-top: 0;
	margin-bottom: -1px;
}
.container .tab-wrap .tab-switch:checked + .tab-label + .tab-content {
	height: auto;
	overflow: auto;
	opacity: 1;
	margin: -1px 0 0 0;
	padding: 30px 7%;
	border: 1px #26323F solid;
	background-color: #FFFFFF;
}
.container .tab-wrap .tab-switch {
	display: none;
}
@media only screen and (max-width: 960px) {
  .container .tab-wrap .tab-switch:checked + .tab-label + .tab-content {
	padding: 30px 3%;
  }
}
/*テーブル================*/
.container .tab-wrap table {
	width: 100%;
	border-top: 2px #26323F solid;
	border-bottom: 2px #26323F solid;
	border-collapse: collapse;
}
.container .tab-wrap table tr.title {
	background-color: #EBEFF2;
	text-align: center;
	color: #26323F;
	font-weight: bold;
	font-size: 18px;
}
.container .tab-wrap table td {
	padding: 10px 20px;
	border-top: 1px #26323F solid;
	color: #26323F;
}
.container .tab-wrap table tr.line2 td {
	border-top: 2px #26323F solid;
}
.container .tab-wrap table tr.title td.item {
	width: 60%;
	text-align: left;
}
.container .tab-wrap table tr.title td.price {
	width: 20%;
}
.container .tab-wrap table tr.title td span {
	font-size: 13px;
}
.container .tab-wrap table tr td.price {
	text-align: center;
}
.container .tab-wrap table tr.title .item {
	position: relative;
}
.container .tab-wrap table tr.title .item small {
	font-weight: normal;
	font-size: 70%;
	display: inline;
}
.container .tab-wrap table td .flex {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
@media (max-width: 970px) {
	.container .tab-wrap table tr.title .item small {
		display: block;
	}
}

/*商品利用期限について================*/
.over_container .c_img {
	position: relative;
	width: 100%;
	max-width: 1926px;
	overflow: hidden;
}
.over_container .c_img img.c_bg {
	width: 100%;
	height: auto;
}
.over_container .c_img div.doc {
	position: absolute;
	top: 5.7vw;
	left: 17.5vw;
	width: 64vw;
	margin: 0 auto;
}
.over_container .c_img div.doc div.title {
	text-align: center;
	margin-top: -20px;
	margin-bottom: 40px;
}
.over_container .c_img div.doc div.sub_title {
	text-align: center;
}
.over_container .c_img div.doc div.sub_title img.line_img {
	position: absolute;
	margin-top: -20px;
	margin-left: -18px;
}
.over_container .c_img div.doc div.text {
	width: 100%;
	display: grid;
	place-items: center;
}
.over_container .c_img div.doc div.textinner {
	margin: 0;
	padding: 0;
}
@media only screen and (max-width: 1500px) {
  .over_container .c_img img.c_bg {
	height: 500px;
	width: 150%;
	margin-left: -30%;
	margin-right: 30%;
  }
  .over_container .c_img div.doc {
	top: 5.5vw;
	left: 10.5vw;
	width: 74vw;
  }
}
@media only screen and (max-width: 960px) {
  .over_container .c_img img.c_bg {
	height: 500px;
	margin-left: -25%;
	margin-right: 25%;
  }
  .over_container .c_img div.doc {
	top: 9.5vw;
	left: 7.5vw;
	width: 84vw;
  }
  .over_container .c_img div.doc div.textinner {
	font-size: 15px;
  }
}
@media only screen and (max-width: 550px) {
  .over_container .c_img img.c_bg {
	width: 200%;
	height: 550px;
  }
  .over_container .c_img div.doc {
	top: 22.5vw;
  }
}
@media only screen and (max-width: 420px) {
  .over_container .c_img div.doc {
	top: 28.5vw;
  }
}

/*プラットフォームについて================*/
.over_container .sp_img {
	position: relative;
	width: 100%;
	max-width: 1926px;
	margin-bottom: 80px;
}
.over_container .sp_img img.sp_icon {
	text-align: left;
	width: 37vw;
}
.over_container .sp_img div.title {
	position: absolute;
	top: 8vw;
	left: 40vw;
	margin: auto 0;
}
.over_container .sp_img div.title img.title_img {
	width: 80%;
}
.over_container .sp_img div.doc {
	position: absolute;
	width: 40vw;
	top: 13vw;
	left: 40vw;
	margin: auto 0;
}
@media only screen and (max-width: 960px) {
  .over_container .sp_img {
	margin-left: -50px;
	margin-bottom: 180px;
  }
  .over_container .sp_img div.title img.title_img {
	width: 105%;
  }
  .over_container .sp_img div.doc {
	width: 50vw;
	top: 16vw;
  }
}
@media only screen and (max-width: 460px) {
  .over_container .sp_img {
	margin-bottom: 290px;
  }
  .over_container .sp_img div.doc {
	width: 60vw;
	top: 19vw;
  }
}

/*footer================*/
footer {
	width: 100%;
	background-color: #EBEFF2;
}
footer .container {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	color: #26323F;
}
footer .container div.copyright {
	height: 58px;
	line-height: 58px;
	margin: auto 0;
	float: left;
}
footer .container div.link {
	text-align: right;
	height: 58px;
	line-height: 58px;
}
footer .container div.link a {
	margin-left: 30px;
	color: #26323F;
	text-decoration: none;
}
footer .container div.link a img {
	vertical-align: middle;
	margin-top: -5px;
	margin-left: 5px;
}
@media only screen and (max-width: 767px) {
  footer .container div.copyright {
	float: none;
	line-height: 35px;
  }
}
