@charset "shift_jis";

/* common
================================================== */
.Noto_Sans {
font-family: 'Noto Sans JP', sans-serif;
}
.Noto_Serif {
font-family: 'Noto Serif JP', serif;
}
.Lato {
font-family: 'Lato', sans-serif;
}
.inter {
font-family: 'Inter', sans-serif;
}

#contents {
padding: 60px 0 100px 0;
font-family: 'Inter','Noto Sans JP', sans-serif;
font-weight: 400;
width: auto;
font-feature-settings: "palt";
-webkit-font-feature-settings: "palt";
letter-spacing: 0.1em;
}

#pageBody {
background: none;
margin: 0 auto 0 auto;
width: 600px;
overflow: hidden;
text-align: left;
}

#pageBody a {
transition: all .2s linear;
text-decoration: none;
}

.section .itm .list,
.section .item .list {
margin: 0 auto;
width: 528px;
}
.section .itm .block,
.section .item .block {
margin-bottom: 64px;
}
.section .itm .block:last-child,
.section .item .block:last-child {
margin-bottom: 0;
}
.section .itm h4,
.section .item h4 {
margin-bottom: 3.2px;
font-size: 25.6px;
font-weight: 500;
line-height: 1.38;
}
.section .itm h4:first-child,
.section .item h4:first-child {
margin-bottom: 27.2px;
}
.section .itm h4 span,
.section .item h4 span {
display: inline-block;
margin: 11.2px 0 -4.8px 0;
font-size: 20.8px;
}
.section .itm .bonus,
.section .item .bonus {
margin: 11.2px 0 4.8px 0;
font-size: 20.8px;
}
.section .itm .bonus span,
.section .item .bonus span {
display: inline-block;
background-color: #fff;
padding: 1px 8px;
}
.section .itm .cnt,
.section .item .cnt {
font-size: 20.8px;
line-height: 1.85;
}
.section .itm .price,
.section .item .price {
font-size: 22.4px;
line-height: 1.35;
font-weight: bold;
}
.section .itm .price strong,
.section .item .price strong {
font-size: 28.8px !important;
font-weight: bold;
}
.section .itm .price span,
.section .item .price span {
font-size: 22.4px;
font-weight: bold;
}
.section .itm .special,
.section .item .special {
position: relative;
}
.section .itm .special .price,
.section .item .special .price {
margin-bottom: 1px;
font-size: 24px;
line-height: 1.35;
font-weight: bold;
color: #ee0000;
}
.section .itm .special .price strong,
.section .item .special .price strong {
font-size: 38.4px !important;
font-weight: 600;
}
.section .itm .special .price span,
.section .item .special .price span {
font-size: 24px;
font-weight: bold;
}
.section .itm .special .normal,
.section .item .special .normal {
margin-top: 1px;
font-size: 20.8px;
}
.section .itm .more,
.section .item .more {
display: flex;
flex-wrap: wrap;
align-items: center;
margin-top: 19.2px;
}
.section .itm .lnk,
.section .item .lnk {
font-family: dnp-shuei-mgothic-std, sans-serif;
font-weight: 600;
font-style: normal;
font-size: 20.8px;
line-height: 48px;
letter-spacing: 0;
text-align: center;
}
.section .itm .lnk a,
.section .item .lnk a {
box-sizing: border-box;
display: block;
position: relative;
background-color: #ffcc33;
border-radius: 24px;
padding-right: 14.4px;
width: 224px;
height: 48px;
color: #000;
}
.section .itm .lnk a::after,
.section .item .lnk a::after {
transform: translateY(-50%);
content: "\f054";
position: absolute;
right: 16px;
top: 50%;
font-family: "Font Awesome 5 Free";
font-weight: 900;
font-size: 16px;
color: #ff6600;
}
.section .itm .lnk a:hover,
.section .item .lnk a:hover {
background-color: #ff8800;
color: #fff;
text-decoration: none;
}
.section .itm .lnk a:hover::after,
.section .item .lnk a:hover::after {
color: #fff;
}
.section .itm .number,
.section .item .number {
display: flex;
flex-wrap: wrap;
margin: 0 0 14.4px 0;
line-height: 33.6px;
letter-spacing: 0;
text-align: center;
}
.section .itm h4:first-child,
.section .item h4:first-child {
margin: 0 0 19.2px 0;
}
.section .itm .number dt,
.section .item .number dt {
background-color: #000;
border-right: none;
border: solid 1px #000;
border-radius: 4.8px 0 0 4.8px;
width: 96px;
font-size: 17.6px;
color: #fff;
}
.section .itm .number dd,
.section .item .number dd {
background-color: #fff;
border: solid 1px #000;
border-radius: 0 4.8px 4.8px 0;
border-left: none;
padding: 0 6.4px;
min-width: 67.2px;
font-size: 19.2px;
}

.section .itm .off,
.section .item .off {
box-sizing: border-box;
position: absolute;
left: 372.8px;
top: -19.2px;
background-color: #ee0000;
border-radius: 50%;
padding-top: 30.4px;
width: 128px;
height: 128px;
letter-spacing: 0;
line-height: 1.1;
font-size: 25.6px;
text-align: center;
color: #fff;
}
.section .itm .off strong,
.section .item .off strong {
font-weight: 600;
font-size: 43.2px;
letter-spacing: 0.05em;
}
.section .itm .off span,
.section .item .off span {
font-size: 22.4px;
}

.section .item .btn {
box-sizing: border-box;
background-color: #f58811;
border-radius: 19.2px;
margin: 57.6px auto 0 auto;
padding: 28.8px 24px 28.8px 24px;
width: 528px;
text-align: center;
}
.section .item .btn a {
display: block;
background-color: #fff588;
border-radius: 12.8px;
margin-top: 24px;
font-size: 38.4px;
font-weight: bold;
line-height: 96px;
color: #664444;
}

/* #mainVisual
================================================== */
#mainVisual {
position: relative;
margin: 0 auto 0 auto;
width: 600px;
font-size: 0;
line-height: 0;
}

.campaignBanner {
box-sizing: border-box;
display: flex;
flex-direction: column;
align-items: center;
background: linear-gradient(to right, #f9dda8, #f7bb97);
margin: 0;
padding: 40px 0 0 0;
width: 600px;
height: 296px;
text-align: left;
}
.campaignBanner h3 {
display: flex;
flex-wrap: wrap;
align-items: center;
margin-bottom: 17.6px;
font-weight: 400;
font-size: 32px;
line-height: 1;
letter-spacing: 0;
color: #553322;
}
.campaignBanner .period {
display: flex;
flex-wrap: wrap;
align-items: center;
margin-bottom: 27.2px;
font-weight: 400;
font-size: 57.6px;
line-height: 1;
color: #553322;
}
.campaignBanner .period strong {
font-weight: 400;
margin-right: 24px;
}
.campaignBanner .period i {
display: flex;
justify-content: center;
align-items: center;
background-color: #553322;
border-radius: 50%;
margin: 0 8px;
width: 48px;
height: 48px;
font-weight: 400;
font-style: normal;
font-size: 25.6px;
color: #fff;
}
.campaignBanner .button {
display: block;
}
.campaignBanner .button a {
position: relative;
box-sizing: border-box;
display: flex;
justify-content: center;
align-items: center;
background-color: #ffee77;
border-radius: 9.6px;
padding-right: 25.6px;
width: 448px;
height: 80px;
font-weight: 500;
font-size: 32px;
letter-spacing: 0;
text-decoration: none;
color: #664433;
}
.campaignBanner .button a:hover {
background-color: #ff8800;
color: #fff;
}
.campaignBanner .button a img {
position: absolute;
left: -51.2px;
top: -22.4px;
}
.campaignBanner .button a span {
transform: translateY(-50%);
position: absolute;
right: 25.6px;
top: 50%;
}

/* mainContents section
================================================== */
#contents .banner a:hover img,
#mainVisual a:hover img {
filter: alpha(opacity=100);
-moz-opacity:1.0;
opacity:1.0;
}

/* #Target
================================================== */
#Target  {
margin-bottom: 80px;
}
#Target .cont {
background: url("../img/tar_bg.png") no-repeat center top;
background-size: 600px auto;
padding-top: 96px;
text-align: center;
}
#Target h2 {
margin-bottom: 56px;
}
#Target p {
margin-bottom: 64px;
font-size: 24px;
line-height: 1.6;
}
#Target ul {
display: flex;
flex-wrap: wrap;
gap: 32px;
margin: 0 auto;
width: 528px;
}
#Target ul li {
width: 528px;
}
#Target ul li a {
box-sizing: border-box;
display: block;
position: relative;
background-color: #644734;
border-radius: 12.8px;
padding: 17.6px 0 0 112px;
height: 112px;
font-size: 25.6px;
line-height: 1.32;
color: #fff;
text-decoration: none;
text-align: left;
}
#Target ul li a::before {
transform: translateY(-50%) rotate(45deg);
content: '';
display: block;
box-sizing: border-box;
position: absolute;
right: 19.2px;
top: 50%;
background-color: #fff;
border-radius: 50%;
width: 48px;
height: 48px;
}
#Target ul li a::after {
transform: translateY(-50%) rotate(45deg);
content: '';
display: block;
box-sizing: border-box;
position: absolute;
right: 36.8px;
top: 50%;
margin-top: -3.2px;
border-right: solid 1px #ff7700;
border-bottom: solid 1px #ff7700;
width: 12.8px;
height: 12.8px;
}
#Target ul li span {
display: block;
padding: 3.2px 0 4.8px 0;
font-size: 20.8px;
}
#Target ul li span::before {
content: '';
display: block;
position: absolute;
left: 0;
bottom: 9.6px;
}
#Target ul li:nth-child(1) span::before {
background: url("../img/tar_img1.png") no-repeat center center;
background-size: auto 108.8px;
width: 112px;
height: 113.6px;
}
#Target ul li:nth-child(2) span::before {
background: url("../img/tar_img2.png") no-repeat center center;
background-size: auto 105.6px;
width: 112px;
height: 113.6px;
}

/* .itemSCT
================================================== */
#Item1 {
background: linear-gradient(to top, #f7bb97, #f9dda8);
padding: 211.2px 0 160px 0;
}
#Item2 {
background: linear-gradient(to top, #f7bb97, #f9dda8);
padding: 211.2px 0 48px 0;
}
#Item3 {
background: linear-gradient(to top, #f7bb97, #f9dda8);
padding: 64px 0 163.2px 0;
}
.section .hed {
margin: 0 auto 64px auto;
width: 528px;
}
.section .shoulder {
margin-bottom: 20.8px;
}
.section .item .image {
position: relative;
margin: 0 auto 56px auto;
width: 528px;
}
.section .item .image p {
position: absolute;
right: 32px;
bottom: 32px;
font-size: 16px;
color: #664433;
}
.section .item .image .bln {
position: absolute;
left: 32px;
top: -32px;
}
.section .item .recommend {
position: relative;
background: url("../img/rec_bg.png") no-repeat bottom center;
background-size: 528px auto;
margin: 118.4px auto 0 auto;
width: 528px;
}
.section .item .recommend dl {
padding: 49.6px 0 41.6px 36.8px;
}
.section .item .recommend dt {
transform: translate(-50%,-50%);
display: flex;
justify-content: center;
align-items: center;
position: absolute;
left: 50%;
top: 0;
background-color: #e57353;
border-radius: 159998.4px;
width: 352px;
height: 48px;
font-size: 25.6px;
color: #fff;
}
.section .item .recommend dd {
position: relative;
margin-bottom: 19.2px;
padding-left: 30.4px;
font-size: 24px;
line-height: 1.34;
color: #553322;
}
.section .item .recommend dd::before {
content: '';
display: block;
position: absolute;
left: 0;
top: 4.8px;
background-color: #e57353;
border-radius: 159998.4px;
margin-right: 11.2px;
width: 22.4px;
height: 22.4px;
}
.section .explan .list {
margin: 0 auto;
padding: 40px 0 0 0;
width: 528px;
}
.section .explan .block {
position: relative;
box-sizing: border-box;
padding: 48px 0 48px 0;
}
.section .explan .block h3 {
white-space: nowrap;
margin-bottom: 19.2px;
font-weight: 600;
font-size: 38.4px;
line-height: 1.34;
text-align: center;
color: #553322;
}
.section .explan .component {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 36.8px 28.8px;
margin: 0 auto;
padding: 11.2px 0 0 0;
width: 528px;
}
.section .explan .component::after {
display: none;
}
.section .explan .component li {
width: 248px;
font-weight: 700;
font-size: 22.4px;
line-height: 28.8px;
text-align: center;
}
.section .explan .component li img {
display: block;
border-radius: 159998.4px;
margin: 0 auto 14.4px auto;
}
.section .explan .component li span {
font-weight: 400;
font-size: 19.2px;
}
.section .explan .component li span.note {
font-weight: 700;
font-size: 17.6px;
}
.section .explan h4 {
margin: 0 auto;
width: 528px;
font-size: 28.8px;
line-height: 1.38;
}
.section .explan p {
margin: 0 auto 44.8px auto;
width: 528px;
font-size: 22.4px;
line-height: 2;
}
.section .explan p.note {
margin-top: -35.2px;
font-size: 19.2px;
line-height: 1.67;
}
.section .explan .image img {
display: block;
margin: 0 auto;
}

#EXP1_BLK2 p {
text-align: center;
}
#EXP1_BLK5 p {
margin-bottom: 30.4px;
}
#EXP1_BLK5 .image li {
position: relative;
}
#EXP1_BLK5 .image li:nth-of-type(1) {
margin: 0 0 56px 6.4px;
}
#EXP1_BLK5 .image li .bln {
position: absolute;
right: 19.2px;
top: -14.4px;
}
#EXP2_BLK2 p {
margin: 0 auto 28.8px auto;
line-height: 1.63;
text-align: center;
}
#EXP2_BLK5 .image p {
position: relative;
box-sizing: border-box;
background-color: #f4eddb;
margin: 32px auto 0 auto;
padding: 19.2px 32px;
color: #553322;
}
#EXP2_BLK5 .image p::after {
transform: rotate(20deg);
content: '';
position: absolute;
left: 48px;
top: -48px;
border-right: 24px solid transparent;
border-bottom: 80px solid #f4eddb;
border-left: 24px solid transparent; 
}

#EXP3_BLK1 {}
#EXP3_BLK1 ul {
display: flex;
flex-direction: column;
justify-content: center;
gap: 24px;
padding-top: 17.6px;
}
#EXP3_BLK1 li {
position: relative;
box-sizing: border-box;
background: url("../img/itm3_label_bg.png") no-repeat center center;
background-size: 528px auto;
padding-top: 27.2px;
width: 528px;
height: 128px;
font-size: 24px;
line-height: 38.4px;
text-align: center;
}
#EXP3_BLK1 li .bln {
position: absolute;
right: -16px;
top: -8px;
}
#EXP3_BLK1 li strong {
font-weight: 500;
font-size: 28.8px;
}
#EXP3_BLK3 p {
text-align: center;
}
#EXP3_BLK4 p {
margin-bottom: 28.8px;
}
#EXP3_BLK4 ul {
display: flex;
flex-direction: column;
gap: 60.8px;
}
#EXP3_BLK4 ul ul {
display: flex;
flex-direction: row;
justify-content: center;
gap: 48px;
margin-top: 19.2px;
}
#EXP3_BLK4 ul ul li {
width: 240px;
font-size: 22.4px;
line-height: 1.72;
}
#EXP3_BLK4 ul ul strong {
display: inline-block;
width: 100%;
font-weight: 600;
line-height: 1.43;
text-align: center;
}

.campaignBanner.middle {
position: relative;
margin: -148.8px auto;
background: linear-gradient(to right, #fff, #fff);
width: 552px;
}