@charset "Shift_JIS";

h1,
h2,
h3,
h4 {
	padding: 0;
	margin: 0;
	border: none;
	background: none;
	color: inherit;
}

h2 {
	height: auto;
}

a:hover img.Aover {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

body {
	min-width: 860px;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	body {
		min-width: 100%;
	}
}

/* ================================================

   biteki 260901 / home freezing (PC)

================================================ */
#contentWrap {
	width: 100%;
	min-width: 800px;
	margin: 0 auto;
	overflow: hidden;
	background: #ffffff;
	text-align: left;
	font-family: 'Noto Sans JP', sans-serif;
	color: #000000;
	font-feature-settings: "palt" 1;
}

#contentWrap img,
#presentWrap img {
	vertical-align: bottom;
}

#contentWrap p {
	margin: 0;
	padding: 0;
}

#contentWrap ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* ================================================

   .main_block

================================================ */
#contentWrap .main_block {
	position: relative;
}

#contentWrap .main_ttl img {
	width: 100%;
	height: auto;
}

#contentWrap .logo_biteki {
	position: absolute;
	top: 4.7%;
	left: 4.5%;
	width: 20.3%;
	z-index: 1;
}

#contentWrap .logo_biteki a {
	display: block;
}

#contentWrap .logo_biteki img {
	width: 100%;
	height: auto;
}

/* ================================================

   .sec01

================================================ */
#contentWrap .sec01 {
	padding: 142px 0 138px;
}

#contentWrap .sec01_inner {
	width: 740px;
	margin: 0 auto;
}

#contentWrap .sec01_ttl {
	margin-bottom: 29px;
}

#contentWrap .sec01_ttl img {
	width: 100%;
	height: auto;
}

#contentWrap .sec01_lead {
	font-size: 15px;
	line-height: 2.13;
	letter-spacing: 0.1em;
	text-align: center;
	margin-bottom: 64px;
}

/* --- merit --- */
#contentWrap .merit {
	position: relative;
	margin-bottom: 24px;
}

#contentWrap .merit_box {
	display: flex;
	align-items: center;
	min-height: 60px;
	padding: 40px 0 40px 94px;
	box-sizing: border-box;
	-webkit-clip-path: polygon(33px 0, calc(100% - 33px) 0, 100% 33px, 100% calc(100% - 33px), calc(100% - 33px) 100%, 33px 100%, 0 calc(100% - 33px), 0 33px);
	clip-path: polygon(33px 0, calc(100% - 33px) 0, 100% 33px, 100% calc(100% - 33px), calc(100% - 33px) 100%, 33px 100%, 0 calc(100% - 33px), 0 33px);
}

#contentWrap .merit01 .merit_box {
	background: #F1F9FF;
}

#contentWrap .merit02 .merit_box {
	background: #E6F4FF;
}

#contentWrap .merit03 .merit_box {
	background: #D2ECFF;
	    padding: 36px 0 40px 94px;
}

#contentWrap .merit04 .merit_box {
	background: #BBE2FF;
}

#contentWrap .merit .num {
	position: absolute;
	top: -25px;
	left: 35px;
	width: 60px;
	z-index: 1;
}
#contentWrap .merit.merit01 .num{
	top: -29px;
}
#contentWrap .merit.merit02 .num{
    top: -21px;
}
#contentWrap .merit.merit03 .num{
    top: -21px;
}
#contentWrap .merit .num img {
	width: 100%;
	height: auto;
}

#contentWrap .merit .ttl {
	width: 184px;
	flex: none;
}

#contentWrap .merit .ttl img {
	width: 100%;
	height: auto;
}

#contentWrap .merit .txt {
	width: 358px;
	margin-left: 42px;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 0.04em;
	text-align: justify;
}

/* --- memo --- */
/* bg01.svg is a 30% opacity facet overlay only.
   The blue base gradient underneath is reproduced with CSS. */
#contentWrap .memo {
    position: relative;
    width: 740px;
    height: 264px;
    margin-top: 17px;
    padding: 98px 0 0 56px;
	box-sizing: border-box;
}

#contentWrap .memo::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	background: url(../images/bg01.svg) no-repeat 0 0 / 740px 264px,
		linear-gradient(180deg, #89dcf2 0%, #2ea4dc 50%, #0089d3 100%);
	-webkit-clip-path: polygon(30px 0, calc(100% - 30px) 0, 100% 30px, 100% calc(100% - 30px), calc(100% - 30px) 100%, 30px 100%, 0 calc(100% - 30px), 0 30px);
	clip-path: polygon(30px 0, calc(100% - 30px) 0, 100% 30px, 100% calc(100% - 30px), calc(100% - 30px) 100%, 30px 100%, 0 calc(100% - 30px), 0 30px);
}

#contentWrap .memo_ribbon {
	position: absolute;
    top: 18px;
    left: -22px;
    width: 197px;
	z-index: 2;
}

#contentWrap .memo_ribbon img {
	width: 100%;
	height: auto;
}

#contentWrap .memo_img {
	position: absolute;
	top: 37px;
	right: 47px;
	width: 260px;
	z-index: 2;
}

/* photo is supplied as a plain rectangle - corners are cut with CSS */
#contentWrap .memo_img img {
	width: 100%;
	height: auto;
	-webkit-clip-path: polygon(23px 0, calc(100% - 23px) 0, 100% 23px, 100% calc(100% - 23px), calc(100% - 23px) 100%, 23px 100%, 0 calc(100% - 23px), 0 23px);
	clip-path: polygon(23px 0, calc(100% - 23px) 0, 100% 23px, 100% calc(100% - 23px), calc(100% - 23px) 100%, 23px 100%, 0 calc(100% - 23px), 0 23px);
}

#contentWrap .memo_txt {
	position: relative;
	z-index: 1;
	width: 340px;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 0.04em;
	text-align: justify;
	color: #ffffff;
}

/* ================================================

   .sec02

================================================ */
#contentWrap .sec02 {
	position: relative;
    padding: 158px 0 157px;
	background: #eaf6ff url(../images/sec02_bg01.png) repeat-y center top;
	background-size: 100% auto;
}

#contentWrap .sec02::before,
#contentWrap .sec02::after {
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	padding-top: 9.8%;
	background: url(../images/sec02_eff01.png) no-repeat center top;
	background-size: 100% auto;
}

#contentWrap .sec02::before {
	top: 0;
}

#contentWrap .sec02::after {
	top: 100%;
}

#contentWrap .sec02_inner {
	position: relative;
	z-index: 1;
	width: 740px;
	margin: 0 auto;
}

#contentWrap .sec02_ttl {
    margin-bottom: 16px;
}

#contentWrap .sec02_ttl img {
	width: 100%;
	height: auto;
}

#contentWrap .sec02_lead {
	font-size: 15px;
	line-height: 2.13;
	letter-spacing: 0.15em;
	text-align: center;
}

/* --- rule --- */
#contentWrap .rule {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

#contentWrap .rule.is-rev {
	flex-direction: row-reverse;
}

#contentWrap .rule_img {
	position: relative;
	width: 356px;
	flex: none;
}

#contentWrap .rule_img img {
	width: 100%;
	height: auto;
}

#contentWrap .rule_body {
	width: 314px;
	flex: none;
}

#contentWrap .rule_body .ttl img {
	width: 100%;
	height: auto;
}

#contentWrap .rule_body .txt {
    margin-top: 17px;
    font-size: 15px;
    line-height: 2;
    letter-spacing: -0.01em;
    text-align: justify;
}

#contentWrap .rule01 {
	margin-top: 68px;
}

#contentWrap .rule01 .rule_body {
padding-top: 45px;
}

#contentWrap .rule02 {
	margin-top: 70px;
}

#contentWrap .rule02 .rule_body {
    padding-top: 35px;
}

#contentWrap .rule03 {
	margin-top: 68px;
}

#contentWrap .rule03 .rule_body {
    padding-top: 13px;
}
#contentWrap .rule03 .txt {
    margin-top: 23px;
}

#contentWrap .rule04 {
	margin-top: 105px;
}

#contentWrap .rule04 .rule_body {
    padding-top: 45px;
}
#contentWrap .rule04 .txt {
    margin-top: 23px;
}
#contentWrap .rule .balloon {
	position: absolute;
	top: -47px;
	right: -35px;
	width: 145px;
	z-index: 1;
}

/* --- thaw --- */
/* sec02_bg02.png is a 30% opacity facet overlay only.
   The blue base gradient underneath is reproduced with CSS. */
#contentWrap .thaw {
	position: relative;
	width: 740px;
	height: 750px;
	margin-top: 123px;
    padding-top: 81px;
	box-sizing: border-box;
	color: #ffffff;
}

#contentWrap .thaw::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	background: url(../images/sec02_bg02.png) no-repeat 0 0 / 740px 750px,
		linear-gradient(135deg, #6bd6ed 0%, #3cbae8 10%, #148fda 45%, #0683d7 60%, #0075ce 100%);
	-webkit-clip-path: polygon(30px 0, calc(100% - 30px) 0, 100% 30px, 100% calc(100% - 30px), calc(100% - 30px) 100%, 10px 100%, 0 calc(100% - 10px), 0 30px);
	clip-path: polygon(30px 0, calc(100% - 30px) 0, 100% 30px, 100% calc(100% - 30px), calc(100% - 30px) 100%, 10px 100%, 0 calc(100% - 10px), 0 30px);
}

#contentWrap .thaw_ttl {
	position: relative;
	z-index: 1;
	text-align: center;
}

#contentWrap .thaw_ttl img {
	width: 620px;
	height: auto;
}

#contentWrap .thaw_lead {
	position: relative;
	z-index: 1;
    margin-top: 22px;
	font-size: 15px;
	line-height: 2.13;
	letter-spacing: 0.1em;
	text-align: center;
}

#contentWrap .thaw_list {
	position: relative;
	z-index: 1;
    margin-top: 65px;
    padding-left: 61px;
}

#contentWrap .thaw_list > * {
	margin-bottom: 75px;
}

#contentWrap .thaw_list > *:last-child {
	margin-bottom: 0;
}

#contentWrap .thaw_row {
	display: flex;
}

#contentWrap .thaw_row .thaw_item + .thaw_item {
	margin-left: 36px;
}
#contentWrap .thaw_item.thaw03{
	width: 612px;
}
#contentWrap .thaw_item.thaw04{
	width: 613px;
}
#contentWrap .thaw_item img {
	width: 100%;
	height: auto;
}

#contentWrap .thaw_row .thaw_item:nth-child(1) {
	width: 295px;
}

#contentWrap .thaw_row .thaw_item:nth-child(2) {
	width: 287px;
}

/* ================================================

   .product

================================================ */
#contentWrap .product {
	padding: 195px 0 105px;
}

#contentWrap .product_inner {
	width: 740px;
	margin: 0 auto;
}

#contentWrap .product_ttl {
	margin-bottom: 64px;
}

#contentWrap .product_ttl img {
	width: 100%;
	height: auto;
}

#contentWrap .product_flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

#contentWrap .product_box-L {
	width: 410px;
	flex: none;
}

#contentWrap .product_box-L .img01 {
	width: 390px;
}

/* photo is supplied as a plain rectangle - corners are cut with CSS */
#contentWrap .product_box-L .img01 img {
	width: 100%;
	height: auto;
	-webkit-clip-path: polygon(23px 0, 100% 0, 100% calc(100% - 23px), calc(100% - 23px) 100%, 0 100%, 0 23px);
	clip-path: polygon(23px 0, 100% 0, 100% calc(100% - 23px), calc(100% - 23px) 100%, 0 100%, 0 23px);
}

#contentWrap .product_box-L .ttl {
	margin-top: 44px;
}

#contentWrap .product_box-L .ttl img {
	width: 411px;
	height: auto;
}

#contentWrap .product_box-L .txt {
	margin-top: 24px;
	font-size: 15px;
	line-height: 2.27;
    letter-spacing: 0.08em;
	text-align: justify;
}

#contentWrap .product_box-L .txt sup {
	top: -.3em !important;
	font-size: 80%;
}

#contentWrap .product_box-L .note {
	margin-top: 5px;
	font-size: 12px;
	line-height: 2;
	letter-spacing: 0.04em;
}

#contentWrap .product_box-R {
	width: 262px;
	flex: none;
	padding-top: 23px;
}

#contentWrap .product_box-R .img02 {
	width: 261px;
}

#contentWrap .product_box-R .img02 img {
	width: 100%;
	height: auto;
}

#contentWrap .product_box-R .btn-wrap {
	margin-top: 3px;
}

#contentWrap .product_box-R .btn-wrap li {
    margin-top: 18px;
}

#contentWrap .product_box-R .btn-wrap li:first-child {
	margin-top: 0;
}

#contentWrap .product_box-R .btn-wrap a {
	display: block;
	width: 261px;
}

#contentWrap .product_box-R .btn-wrap img {
	width: 100%;
	height: auto;
}


#headerWrap_sp,
#contentWrap_sp,
#presentWrap_sp {
	display: none;
}
/* ================================================

   SP版

================================================ */
@media screen and (max-width: 767px) {

	#contentWrap,
	#presentWrap {
		display: none;
	}

	#contentWrap_sp,
	#presentWrap_sp {
		display: block;

	}

	#contentWrap_sp {
		overflow-x: clip;

		text-align: left;
		font-family: 'Noto Sans JP', sans-serif;
		color: #363636;
	}

	#contentWrap_sp img,
	#presentWrap_sp img {
		width: 100%;
		height: auto;
		vertical-align: bottom;
	}

	#contentWrap_sp ul,
	#contentWrap_sp p {
		margin: 0;
		padding: 0;
		list-style: none;
	}
	#contentWrap_sp{

	}
	#contentWrap_sp .main_block {
		position: relative;
	}

	#contentWrap_sp .logo_biteki {
		width: 37.33vw;
		position: absolute;
		top: 4vw;
		left: 5.3vw;
		z-index: 2;
	}

	#contentWrap_sp .logo_biteki a {
		display: block;
	}

	/* ================================================

   .sec01 SP版

================================================ */
	#contentWrap_sp .sec01 {
		padding: 18vw 0 14vw;
		width: 100%;
	}

	#contentWrap_sp .sec01_inner {
		width: 86.6%;
		margin: 0 auto;
		text-align: center;
	}

	#contentWrap_sp .sec01_ttl {
        margin-bottom: 8.5vw;
	}

	#contentWrap_sp .sec01_lead {
        font-size: 4vw;
        line-height: 2.13;
        letter-spacing: 0.15em;
        margin-bottom: 11vw;
        text-align: left;
        width: 101%;
        margin: 0 auto 20vw;
	}

	#contentWrap_sp .merit {
		position: relative;
margin: 0 auto 12vw;
           padding: 23vw 8vw 10vw;
		box-sizing: border-box;
		text-align: center;
	}

	#contentWrap_sp .merit::before {
		content: '';
		position: absolute;
		z-index: 0;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		-webkit-clip-path: polygon(4vw 0, calc(100% - 4vw) 0, 100% 4vw, 100% calc(100% - 4vw), calc(100% - 4vw) 100%, 4vw 100%, 0 calc(100% - 4vw), 0 4vw);
		clip-path: polygon(4vw 0, calc(100% - 4vw) 0, 100% 4vw, 100% calc(100% - 4vw), calc(100% - 4vw) 100%, 4vw 100%, 0 calc(100% - 4vw), 0 4vw);
	}

	#contentWrap_sp .merit01::before {
		background: #F1F9FF;
	}

	#contentWrap_sp .merit02::before {
		background: #E6F4FF;
	}

	#contentWrap_sp .merit03::before {
		background: #D2ECFF;
	}

	#contentWrap_sp .merit04::before {
		background: #BBE2FF;
	}

	#contentWrap_sp .merit .num {
		position: absolute;
		z-index: 2;
        top: -6vw;
		left: 50%;
		transform: translateX(-50%);
		width: 19vw;
	}

	#contentWrap_sp .merit .ttl {
		position: relative;
		z-index: 1;
		width: 68vw;
margin: 0 auto 6.5vw;
	}

	#contentWrap_sp .merit .txt {
        position: relative;
        z-index: 1;
        font-size: 4vw;
        line-height: 2.13;
        letter-spacing: -0.03em;
        text-align: left;
	}

	#contentWrap_sp .memo {
		position: relative;
        margin: 10vw 0 0;
        padding: 21vw 9vw 14vw;
		box-sizing: border-box;
	}

	#contentWrap_sp .memo::before,
	#contentWrap_sp .memo::after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		-webkit-clip-path: polygon(4vw 0, calc(100% - 4vw) 0, 100% 4vw, 100% calc(100% - 4vw), calc(100% - 4vw) 100%, 4vw 100%, 0 calc(100% - 4vw), 0 4vw);
		clip-path: polygon(4vw 0, calc(100% - 4vw) 0, 100% 4vw, 100% calc(100% - 4vw), calc(100% - 4vw) 100%, 4vw 100%, 0 calc(100% - 4vw), 0 4vw);
	}

	#contentWrap_sp .memo::before {
		z-index: 0;
		background: linear-gradient(155deg, #9EE6F6 0%,  #0089D3 100%);
	}

	#contentWrap_sp .memo::after {
		z-index: 0;
		background: url(../images_sp/sec01_bg.png) repeat-y center top;
		background-size: 100% 100%;

	}

	#contentWrap_sp .memo_ribbon {
		position: absolute;
		z-index: 2;
        top: -6vw;
        left: -4vw;
        width: 57vw;
	}

	#contentWrap_sp .memo_img {
		position: relative;
		z-index: 1;
        margin-bottom: 7vw;
	}

	#contentWrap_sp .memo_img img {
		-webkit-clip-path: polygon(4vw 0, calc(100% - 4vw) 0, 100% 4vw, 100% calc(100% - 4vw), calc(100% - 4vw) 100%, 4vw 100%, 0 calc(100% - 4vw), 0 4vw);
		clip-path: polygon(4vw 0, calc(100% - 4vw) 0, 100% 4vw, 100% calc(100% - 4vw), calc(100% - 4vw) 100%, 4vw 100%, 0 calc(100% - 4vw), 0 4vw);
	}

	#contentWrap_sp .memo_txt {
		position: relative;
		z-index: 1;
		color: #ffffff;
        font-size: 4vw;
        line-height: 2.13;
		text-align: left;
	}

	/* ================================================

   .sec02 SP版

================================================ */
	#contentWrap_sp .sec02 {
		position: relative;
               padding: 36vw 0 28.5vw;
		overflow: hidden;
	}

	#contentWrap_sp .sec02_bg {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 0;
		background: url(../images_sp/sec02_bg.png) repeat-y center top;
		background-size: 100% auto;
		
	}

	#contentWrap_sp .sec02_eff {
		position: absolute;
		left: 0;
		width: 100%;
		z-index: 1;
		line-height: 0;
	}

	#contentWrap_sp .sec02_eff img {
		width: 100%;
		height: auto;
		display: block;
	}

	#contentWrap_sp .sec02_eff-top {
		top: 0;
	}

	#contentWrap_sp .sec02_eff-bottom {
		bottom: 0;
		transform: scaleY(-1);
	}

	#contentWrap_sp .sec02_inner {
		position: relative;
		z-index: 2;
		width: 86.6%;
		margin: 0 auto;
		text-align: center;
	}

	#contentWrap_sp .sec02_ttl {
		width: 86vw;
        margin: 0 auto 8vw;
	}

	#contentWrap_sp .sec02_lead {
        font-size: 4vw;
        line-height: 2.13;
        text-align: left;
        letter-spacing: 0.1em;
	        margin-bottom: 12vw;
	}

	#contentWrap_sp .rule {
		position: relative;
        margin-bottom: 16vw;
	}
#contentWrap_sp .rule.rule02{
	        margin-bottom: 13vw;
}
#contentWrap_sp .rule.rule03{
        margin-bottom: 26vw;
}

	#contentWrap_sp .rule_img {
		position: relative;
        margin-bottom: 8vw;
	}

	#contentWrap_sp .rule .ttl {
		width: 85vw;
	        margin: 0px auto 8.5vw;
	}
    #contentWrap_sp .rule.rule03 .ttl {
        width: 85vw;
        margin: 0px auto 7vw;
    }
	    #contentWrap_sp .rule.rule04 .ttl {
        width: 85vw;
        margin: 0px auto 7vw;
    }
	#contentWrap_sp .rule .txt {
        font-size: 4vw;
        line-height: 2.13;
        letter-spacing: 0.04em;
		text-align: left;
	}

	#contentWrap_sp .rule04 .balloon {
        position: absolute;
        z-index: 2;
        top: -23vw;
        right: -11vw;
        width: 47vw;
	}

	#contentWrap_sp .thaw {
		position: relative;
		overflow: hidden;
	        margin-top: 28vw;
        padding: 16vw 6vw 8vw;
		border-radius: 5vw;
		background: linear-gradient(180deg, #9EE6F6 0%, #0089D3 100%);
		color: #ffffff;
				-webkit-clip-path: polygon(4vw 0, calc(100% - 4vw) 0, 100% 4vw, 100% calc(100% - 4vw), calc(100% - 4vw) 100%, 4vw 100%, 0 calc(100% - 4vw), 0 4vw);
		clip-path: polygon(4vw 0, calc(100% - 4vw) 0, 100% 4vw, 100% calc(100% - 4vw), calc(100% - 4vw) 100%, 4vw 100%, 0 calc(100% - 4vw), 0 4vw);
	}

	#contentWrap_sp .thaw::before {
		content: '';
		position: absolute;
		z-index: 0;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url(../images_sp/sec02_bg02.png) no-repeat center top;
		background-size: 100% 100%;
	}

	#contentWrap_sp .thaw_ttl,
	#contentWrap_sp .thaw_lead,
	#contentWrap_sp .thaw_list {
		position: relative;
		z-index: 1;
	}

	#contentWrap_sp .thaw_ttl {
		text-align: left;
		font-family: 'Zen Maru Gothic', sans-serif;
		font-weight: 700;
		font-size: 5.6vw;
		line-height: 1.5;
        margin-bottom: 7vw;
	}

	#contentWrap_sp .thaw_ttl::after {
		content: '';
		display: block;
		clear: both;
	}


	#contentWrap_sp .thaw_ttl .accent img {
		position: absolute;
		top: 0;
		left: 0;
		width: 370%;
		height: auto;
	}

	#contentWrap_sp .thaw_lead {
	        width: 93%;
        margin: 0 auto 9vw;
        font-size: 4vw;
        line-height: 2.13;
		letter-spacing: 0.03em;
        margin-bottom: 12vw;
		        text-align: left;
	}
#contentWrap_sp .thaw_icon {
        margin-bottom: 5vw;
}
	#contentWrap_sp .thaw_item {
	        margin-bottom: 11vw;
	}
	#contentWrap_sp .thaw_item.item02 .thaw_icon{
	        margin-bottom: 3vw;
	}
	#contentWrap_sp .thaw_item:last-child {
		margin-bottom: 0;
	}

	#contentWrap_sp .thaw_txt {
        font-size: 4vw;
        line-height: 2.13;
        letter-spacing: 0.03em;
        text-align: left;
        width: 93%;
        margin: 0 auto;
	}

	/* ================================================

   .product SP版

================================================ */
	#contentWrap_sp .product {
		position: relative;
		padding: 38.3vw 0 20vw;
		        margin-top: -1vw;
	}

	#contentWrap_sp .product_eff {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		line-height: 0;
		z-index: 0;
	}

	#contentWrap_sp .product_eff img {
		width: 100%;
		height: auto;
		display: block;
	}

	#contentWrap_sp .product_inner {
		position: relative;
		z-index: 1;
		width: 85.3%;
		margin: 0 auto;
		box-sizing: border-box;
		text-align: left;
	}

	#contentWrap_sp .product_pickup .ttl {
        margin-bottom: 15vw;
	}

	#contentWrap_sp .product_pickup .img02 {
	        width: 100%;
        margin: 15vw auto 8vw;
		overflow: hidden;
	}

	#contentWrap_sp .product_pickup .img01 {
		width: 100%;
        margin: 8vw auto 12vw;
	}

	#contentWrap_sp .product_pickup .ttl02 {
        margin-bottom: 7vw;
	}

	#contentWrap_sp .product_pickup .txt {
        font-size: 4vw;
        line-height: 2.12;
		letter-spacing: 0.04em;
		text-align: left;
	}

	#contentWrap_sp .product_pickup .txt .note {
		font-size: 80%;
		line-height: 2.1;
	        margin-top: 1vw;
		display: block;
	}

	#contentWrap_sp .product_pickup .txt sup {
		position: relative;
		top: -0.3em;
		font-size: 70%;
	}

	#contentWrap_sp .product_pickup .btn-wrap {
	        width: 93%;
        margin: 14vw auto 0;
	}

	#contentWrap_sp .product_pickup .btn-wrap li:first-child {
		margin-bottom: 4.7vw;
	}

}

/* ================================================

   present

================================================ */
#presentWrap {
	padding: 104px 0 0;
	background: #FFFFFF;
}

#presentWrap .present_box {
	width: 800px;
	padding: 17px;
	box-sizing: border-box;
	background: #FEDE84;
	margin: 0 auto;
}

#presentWrap .present_box_inner {
	position: relative;
	background: #FFFFFF;
	box-shadow: 0 0 3px rgba(0, 0, 0, .2);
}

#presentWrap .present_tag {
	position: absolute;
	top: -23px;
	left: -23px;
	z-index: 1;
}

#presentWrap .present_outline {
	padding: 30px 0 30px 180px;
	position: relative;
}

#presentWrap .present_outline .img {
	position: absolute;
	top: 30px;
	left: 32px;
}

#presentWrap .present_outline .ttl {
	text-align: left;
}

#presentWrap .present_outline .note {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 12px;
	line-height: 1.6;
	color: #4d4d4d;
	text-align: left;
	letter-spacing: -0.04em;
	margin-top: 20px;
}

#presentWrap .present_outline .period {
	width: 222px;
	position: absolute;
	bottom: 88px;
	right: 17px;
	border-top: 1px solid #000000;
	border-bottom: 1px solid #000000;
	padding: 8px 0 10px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	line-height: 1.43;
	color: #000000;
	text-align: center;
	letter-spacing: -0.04em;
	font-feature-settings: 'palt';
}

#presentWrap .present_btn {
	position: absolute;
	bottom: 24px;
	right: 17px;
}

@media screen and (max-width: 767px) {
	#presentWrap_sp {
		margin: 21.9vw 0;
		background: #FFFFFF;
	}

	#presentWrap_sp .present_box {
		width: 82.66vw;
		padding: 3vw;
		box-sizing: border-box;
		background: #FEDE84;
		margin: 0 auto;
	}

	#presentWrap_sp .present_box_inner {
		background: #FFFFFF;
		position: relative;
		box-shadow: 0 0 3px rgba(0, 0, 0, .2);
	}

	#presentWrap_sp .present_tag {
		width: 20.9vw;
		height: 20.9vw;
		position: absolute;
		top: -4.5vw;
		left: -4.5vw;
		z-index: 1;
	}

	#presentWrap_sp .present_outline {
		padding: 7.2vw 0 5vw;
	}

	#presentWrap_sp .present_outline .img {
		width: 62.6vw;
		margin: 0 auto;
	}

	#presentWrap_sp .present_outline .ttl {
		width: 63.5vw;
		margin: 4vw auto;
	}

	#presentWrap_sp .present_outline .note {
		width: 62.66vw;
		margin: 0 auto;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 2.6vw;
		line-height: 1.5;
		color: #4d4d4d;
		text-align: left;
		letter-spacing: -0.04em;
	}

	#presentWrap_sp .present_outline .note li {
		text-indent: -1em;
		padding-left: 1em;
	}

	#presentWrap_sp .present_outline .period {
		width: 62.66vw;
		margin: 3vw auto 0;
		padding: 2vw 0;
		border-top: 1px solid #000000;
		border-bottom: 1px solid #000000;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 3.73vw;
		line-height: 1.5;
		color: #000000;
		text-align: center;
		letter-spacing: -0.04em;
		font-feature-settings: 'palt';
	}

	#presentWrap_sp .present_btn {
		width: 62.8vw;
		margin: 0 auto;
		padding-bottom: 6vw;
	}
}

/* wrapFooter

ページ下部のリンク周り
------------------------------------------------ */
#wrapFooter {
	text-align: left;
	width: 800px;
	margin: 90px auto 0;
}

#wrapFooter a:hover {
	color: #eb5a7e;
}

@media screen and (max-width: 767px) {
	#wrapFooter {
		width: 84%;
		margin: 10.6vw auto 0;
	}
}

/* おすすめ記事
------------------------------------------------ */
.recommend>h3 {
	border-top: 2px solid #999;
	position: relative;
	text-align: center;
	font-size: 18px;
	font-weight: normal;
	padding: 30px 0 0;
}

.recommend>h3::after {
	content: "";
	width: 100%;
	height: 1px;
	background: #999;
	position: absolute;
	top: 2px;
	left: 0;
}

.recommend .articles {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.recommend .articles::after {
	content: "";
	width: 250px;
}

.recommend article {
	padding-top: 25px;
}

.recommend article a {
	display: block;
	width: 250px;
	color: #000;
	text-decoration: none;
}

.recommend article h4 {
	font-size: 13px;
	line-height: 1.5;
	font-weight: normal;
	padding-top: 8px;
}

.recommend article h4 .newline {
	display: inline-block;
}

.recommend .toBiteki {
	padding-top: 60px;
}

.recommend .toBiteki a {
	display: block;
	width: 250px;
	font-size: 13px;
	text-align: center;
	line-height: 1;
	padding: 18px 0 18px 10px;
	margin: 0 auto;
	border: 1px solid #999;
	box-sizing: border-box;
	color: #000;
	text-decoration: none;
	position: relative;
}

.recommend .toBiteki a::after {
	content: "";
	width: 16px;
	height: 6px;
	border-top: 6px solid transparent;
	border-left: 8px solid transparent;
	border-bottom: 6px solid transparent;
	border-right: 8px solid #000;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -6px;
	margin-left: -110px;
}

.recommend .toBiteki a:hover::after {
	border-right-color: #eb5a7e;
}

@media screen and (max-width: 767px) {
	.recommend>h3 {
		font-size: 16px;
		padding: 25px 0 5px;
	}

	.recommend .articles {
		-webkit-flex-direction: column;
		flex-direction: column;
		-webkit-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}

	.recommend article a {
		width: 100%;
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		align-items: center;
	}

	.recommend article .img {
		width: 40%;
	}

	.recommend article img {
		width: 100%;
		height: auto;
	}

	.recommend article h4 {
		width: 55%;
		padding: 0 0 0 5%;
	}

	.recommend .toBiteki {
		padding-top: 8%;
	}

	.recommend .toBiteki a {
		width: 100%;
		max-width: 320px;
	}
}

/* footer のマージン調整
------------------------------------------------ */
#footer.clfix {
	margin-bottom: 30px;
}
