@charset "utf-8";

/* common
================================================== */
.Noto_Sans {
font-family: 'Noto Sans JP', sans-serif;
}
.Lato {
font-family: 'Lato', sans-serif;
}
#contents {
font-family: 'Lato','Noto Sans JP', sans-serif;
font-weight: 400;
font-feature-settings: "palt";
-webkit-font-feature-settings: "palt";
letter-spacing: 0.0em;
text-align: center;
}
#pageBody {
background: none;
zoom: 100%;
overflow: hidden;
}
#contents a:hover,
#contents a:hover img {
filter: alpha(opacity=100);
-moz-opacity:1.0;
opacity:1.0;
}

/* #mainVisual
================================================== */
#mainVisual {
text-align: center;
}
#mainVisual .vis {
position: relative;
background: url(../img/title_bg.jpg) no-repeat center top;
background-size: 375px 520px;
margin: 0 auto;
width: 375px;
height: 520px;
overflow: hidden;
}
#mainVisual h1 {
transform: translateX(-50%);
position: absolute;
left: 50%;
top: 0;
padding: 34px 0 0 0;
white-space: nowrap;
font-weight: 700;
font-size: 32px;
line-height: 1.4;
text-align: left;
letter-spacing: 0.35em;
text-shadow: 0 0 15px rgba(0,0,0,0.45);
color: #fff;
}

/* #catchSCT
================================================== */
#catchSCT {
position: relative;
padding: 30px 0 0 0;
}
#catchSCT h2 {
margin-bottom: 23px;
}
#catchSCT h2 img {
display: block;
margin: 0 auto 3px auto;
}
#catchSCT p {
margin-bottom: 50px;
font-size: 15px;
line-height: 2.14;
letter-spacing: 0.1em;
text-align: center;
}

.sectionList {
position: relative;
background: url("../img/sct_bg.png") repeat center center;
background-size: 75px auto;
}
.sectionList::before {
content: '';
position: absolute;
left: 0;
top: 0;
background: url("../img/sct_bg_t.png") repeat center center;
background-size: 75px auto;
width: 100%;
height: 5px;
}

/* #targetNavi
================================================== */
#targetSCT {
position: relative;
}
#targetSCT .cont {
margin: 0 auto;
padding: 50px 0 65px 0;
width: 330px;
}
#targetSCT .explan {
text-align: left;
}
#targetSCT .block {
margin-bottom: 35px;
}
#targetSCT .set {
margin-bottom: 35px;
}
#targetSCT h2 {
margin-bottom: 28px;
}
#targetSCT h3 {
margin-bottom: 6px;
font-weight: 600;
font-size: 20px;
line-height: 1.6;
}
#targetSCT p {
font-size: 15px;
line-height: 2.14;
}
#TAR_BLK1 ul {
column-count: 2;
margin-top: 21px;
font-weight: 500;
font-size: 15px;
line-height: 2.14;
}
#targetSCT .image img {
display: block;
border: solid 5px #fff;
box-shadow: 3px 3px 5px rgba(0,0,0,0.15);
margin: 34px auto 0 auto;
width: 290px;
height: auto;
}
#TAR_BLK1 .image img {
transform: rotate(3deg);
}
#TAR_BLK2 .image img {
transform: rotate(-3deg);
}
#targetSCT .target {
margin: 0 auto;
width: 330px;
}
#targetSCT .target ul {
display: flex;
flex-wrap: wrap;
flex-direction: row;
gap: 35px;
}
#targetSCT .target li {
border-radius: 10px;
font-weight: 600;
font-size: 24px;
line-height: 1.2;
text-align: left;
}
#targetSCT .target a {
display: flex;
align-items: center;
box-sizing: border-box;
position: relative;
background-color: #fff;
border-radius: 5px;
padding: 0 0 4px 85px;
width: 330px;
height: 90px;
color: #222;
}
#targetSCT .target a::before {
transform: translateX(-50%);
content: '';
display: block;
position: absolute;
left: 50%;
bottom: -15px;
background-color: #44aa44;
border-radius: 50%;
width: 30px;
height: 30px;
}
#targetSCT .target a::after {
transform: rotate(45deg) translateX(-50%);
content: '';
display: block;
position: absolute;
left: 50%;
bottom: -6px;
margin-left: -1px;
border-right: solid 2px #fff;
border-bottom: solid 2px #fff;
width: 8px;
height: 8px;
}
#targetSCT .target li:nth-of-type(1) .img {
position: absolute;
left: 22px;
top: 15px
}
#targetSCT .target li:nth-of-type(2) .img {
position: absolute;
left: 9px;
top: -10px;
}
#targetSCT .target .txt {
display: block;
margin: 0 0 5px 0;
}

/* .itemSCT
================================================== */
.itemSCT {
text-align: left;
}
.itemSCT .item {
position: relative;
margin: 0 auto;
width: 375px;
}
#HADAMORI .item {
background: url("../img/had_bg.jpg") no-repeat left top;
background-size: 375px auto;
}
#HADAMORI2 .item {
background: url("../img/had2_bg.jpg") no-repeat left top;
background-size: 375px auto;
}
#HADAMORI .item .hed {
box-sizing: border-box;
padding: 30px 0 0 0;
height: 683px;
}
#HADAMORI2 .item .hed {
box-sizing: border-box;
padding: 37px 0 0 0;
height: 690px;
}
.itemSCT .item .hed img {
display: block;
margin: 0 auto;
}
.itemSCT .item .hed ul {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
#HADAMORI .item .hed ul {
margin: 20px auto 0 auto;
width: 281px;
}
#HADAMORI2 .item .hed ul {
margin: 19px auto 0 auto;
width: 330px;
}
.itemSCT .item .hed li {
padding: 0 10px;
font-weight: 500;
font-size: 13px;
line-height: 26px;
color: #fff;
}
#HADAMORI .item .hed li {
background-color: #000;
}
#HADAMORI2 .item .hed li {
background-color: #881b00;
}
#HADAMORI .item .hed li:nth-of-type(2),
#HADAMORI .item .hed li:nth-of-type(1) {
font-family: 'Lato', sans-serif;
font-weight: 700;
}
.itemSCT .item .hed ul span {
font-size: 12px;
}
#HADAMORI .item .hed ul span {
position: relative;
top: -5px;
font-size: 12px;
}
.itemSCT .item .list {
margin: 0 auto;
padding: 40px 0 0 0;
width: 330px;
}
#HADAMORI2 .item .list {
display: flex;
flex-wrap: wrap;
}
#HADAMORI2 .item .list h4 {
margin-bottom: 12px;
width: 100%;
}
#HADAMORI2 .item .list .block {
flex: 1;
}
#HADAMORI .item .note {
margin: 0 auto 55px auto;
width: 330px;
font-size: 12px;
line-height: 1.67;
color: #000;
}
#HADAMORI2 .item .note {
margin: 0 auto 50px auto;
width: 330px;
font-size: 12px;
line-height: 1.67;
color: #000;
}
#HADAMORI .item .scene {
position: relative;
box-shadow: 3px 3px 5px rgba(0,0,0,0.15);
background: url("../img/had_sce_bg.png") no-repeat center center;
background-size: 330px auto;
margin: 0 auto 45px auto;
padding: 28px 20px 0 20px;
width: 330px;
height: 190px;
}
#HADAMORI .item .scene dt {
transform: translateX(-50%);
position: absolute;
left: 50%;
top: -17px;
}
#HADAMORI .item .scene dd {
position: relative;
padding-left: 25px;
font-size: 15px;
line-height: 1.87;
}
#HADAMORI .item .scene dd::before {
content: '';
box-sizing: border-box;
position: absolute;
left: 0;
top: 8px;
border: solid 1px #000;
width: 14px;
height: 14px;
}
.itemSCT .explan {
margin: 0 auto;
width: 330px;
}
#HADAMORI .explan {
margin-bottom: 144px;
}
#HADAMORI2 .explan {
margin-bottom: 144px;
}
.itemSCT .explan .block {
position: relative;
margin-bottom: 43px;
}
.itemSCT .explan .block:last-child {
margin-bottom: 0;
}
.itemSCT .explan .block .ctg {
box-sizing: border-box;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
position: absolute;
left: -5px;
top: 0;
padding-top: 6px;
width: 93px;
height: 90px;
font-weight: 600px;
font-size: 14px;
line-height: 1.34;
text-align: center;
color: #fff;
}
.itemSCT .explan .pack h3 {
display: flex;
align-items: center;
margin: 0 0 12px 103px;
min-height: 90px;
font-weight: 500px;
font-size: 22px;
line-height: 1.37;
}
.itemSCT .explan .pack p {
font-size: 15px;
line-height: 2;
}
#HAD_BLK1 .ctg {
background: url("../img/had_exp_bln1.png") no-repeat center center;
background-size: 93px 90px;
}
#HAD_BLK1 .image {
position: absolute;
right: 33px;
top: -35px;
}
#HAD_BLK2 .ctg {
background: url("../img/had_exp_bln2.png") no-repeat center center;
background-size: 93px 90px;
}
#HAD_BLK2 .pack:nth-of-type(1) p .note {
display: inline-block;
padding-top: 5px;
font-size: 12px;
}
#HAD_BLK2 .pack:nth-of-type(2) {
padding-top: 40px;
}
#HAD_BLK2 .pack:nth-of-type(2) h3 {
margin: 0 0 9px 0;
min-height: auto;
}
#HAD_BLK2 .image {
padding: 28px 0 0 0;
}
#HAD_BLK2 .image h4 {
background-color: #44aa44;
margin: 0 0 20px 0;
height: 33px;
font-weight: 500;
font-size: 16px;
line-height: 34px;
text-align: center;
color: #fff;
}
#HAD_BLK2 .image p {
margin-top: 22px;
font-size: 15px;
line-height: 2;
}
#HAD_BLK3 .ctg {
background: url("../img/had_exp_bln3.png") no-repeat center center;
background-size: 93px 90px;
}
#HAD_BLK3 .image {
padding: 28px 0 0 0;
}
#HAD_BLK3 .image ul {
display: flex;
justify-content: space-between;
gap: 26px;
margin-bottom: 21px;
}
#HAD_BLK3 .image li {
font-size: 13px;
text-align: center;
}
#HAD_BLK3 .image li:last-child {
color: #44aa44;
}
#HAD_BLK3 .image img {
display: block;
margin-bottom: 9px;
}
#HAD_BLK3 .image h4 {
position: absolute;
right: 10px;
bottom: 5px;
background: url("../img/had_exp_bln5.png") no-repeat center center;
background-size: 117px auto;
padding-top: 26px;
width: 117px;
height: 81px;
font-weight: 500;
font-size: 16px;
line-height: 1.38;
text-align: center;
}
#HAD_BLK3 .image p {
width: 190px;
font-size: 15px;
line-height: 2;
}
#HAD_BLK4 .ctg {
background: url("../img/had_exp_bln4.png") no-repeat center center;
background-size: 93px 90px;
}
#HAD_BLK4 .pack p {
margin-bottom: 24px;
}
#HAD_BLK4 ul {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 15px;
}
#HAD_BLK4 li {
text-align: center;
font-size: 13px;
line-height: 1.39;
}
#HAD_BLK4 ul img {
display: block;
margin-bottom: 13px;
}

#HAD2_BLK1 {
padding-bottom: 6px;
}
#HAD2_BLK1 .icon {
position: absolute;
left: -11px;
top: -9px;
z-index: 2;
}
#HAD2_BLK1 .ctg {
background: url("../img/had_exp_bln1.png") no-repeat center center;
background-size: 93px 90px;
}
#HAD2_BLK1 .image {
padding-top: 28px;
}
#HAD2_BLK1 .image h4 {
background-color: #44aa44;
margin: 0 0 16px 0;
height: 33px;
font-weight: 500;
font-size: 16px;
line-height: 34px;
text-align: center;
color: #fff;
}
#HAD2_BLK1 .image h4 span {
font-size: 11px;
}
#HAD2_BLK1 .image ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#HAD2_BLK1 .image li {
font-weight: 500;
font-size: 14px;
text-align: center;
}
#HAD2_BLK1 .image li:last-child {
color: #44aa44;
}
#HAD2_BLK1 .image img {
display: block;
margin-bottom: 11px;
}
#HAD2_BLK1 .image li span {
display: inline-block;
padding-top: 4px;
font-weight: 400;
font-size: 12px;
line-height: 1.39;
color: #000;
}
#HAD2_BLK1 .power {
position: relative;
background: url("../img/had2_exp_box_bg.png") repeat;
background-size: 40px auto;
margin-top: 42px;
padding: 23px 20px 20px 20px;
}
#HAD2_BLK1 .power .icon {
position: absolute;
left: 14px;
top: -10px;
z-index: 2;
}
#HAD2_BLK1 .power h3 {
margin-bottom: 12px;
font-weight: 500;
font-size: 24px;
line-height: 1.3;
text-align: center;
color: #fff;
}
#HAD2_BLK1 .power h3 span {
font-size: 15px;
}
#HAD2_BLK1 .power h3 strong {
font-weight: 500;
font-size: 24px;
color: #ffee00;
}
#HAD2_BLK1 .power p {
font-size: 15px;
line-height: 1.67;
color: #fff;
}
#HAD2_BLK2 {
padding-bottom: 10px;
}
#HAD2_BLK2 .ctg {
background: url("../img/had2_exp_bln2.png") no-repeat center center;
background-size: 93px 90px;
}
#HAD2_BLK2 .pack p {
margin-bottom: 26px;
}
#HAD2_BLK2 .image p {
font-size: 15px;
line-height: 2;
}
#HAD2_BLK2 .image img {
margin: 0 0 26px 43px;
}
#HAD2_BLK3 .icon {
position: absolute;
left: -11px;
top: -9px;
z-index: 2;
}
#HAD2_BLK3 .ctg {
background: url("../img/had2_exp_bln3.png") no-repeat center center;
background-size: 93px 90px;
}
#HAD2_BLK3 .image ul {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 20px;
margin-top: 27px;
}
#HAD2_BLK3 .image li {
font-weight: 500;
font-size: 14px;
text-align: center;
}
#HAD2_BLK3 .image li:last-child {
color: #44aa44;
}
#HAD2_BLK3 .image img {
display: block;
margin-bottom: 5px;
}

#HADAMORI .recommend {
margin: 0 auto 50px auto;
width: 330px;
}
#HADAMORI .recommend .block {
box-sizing: border-box;
position: relative;
display: flex;
flex-wrap: wrap;
background-color: #f1eeec;
margin-bottom: 112px;
padding: 25px 20px 25px 20px;
}
#HADAMORI .recommend .block:last-child {
margin-bottom: 0;
}
#HADAMORI .recommend .block::before {
content: '';
display: block;
position: absolute;
right: -8px;
top: -15px;
background: url("../img/had_rec_box_t.png") no-repeat center center;
background-size: 24px 32px;
width: 24px;
height: 32px;
}
#HADAMORI .recommend .catch {
transform: translateX(-50%);
position: absolute;
left: 50%;
top: -70px;
font-weight: 500;
font-size: 20px;
line-height: 1.4;
text-align: center;
white-space: nowrap;
color: #664400;
}
#HADAMORI .recommend .catch::before {
content: '';
display: block;
position: absolute;
left: -35px;
top: 5px;
background: url("../img/had_rec_cat_l.png") no-repeat center center;
background-size: contain;
width: 36px;
height: 48px;
}
#HADAMORI .recommend .catch::after {
content: '';
display: block;
position: absolute;
right: -35px;
top: 5px;
background: url("../img/had_rec_cat_r.png") no-repeat center center;
background-size: contain;
width: 37px;
height: 47px;
}
#HADAMORI .recommend .pack h3 {
margin-bottom: 9px;
font-weight: 500;
font-size: 20px;
line-height: 1.56;
text-align: center;
color: #664400;
}
#HADAMORI .recommend .pack h3 span {
display: inline-block;
margin-bottom: -3px;
padding: 4px 0 0 0;
font-weight: 400;
font-size: 15px;
}
#HADAMORI .recommend .pack p {
margin-bottom: 18px;
font-size: 15px;
line-height: 2;
}
#HADAMORI .recommend .image {
position: relative;
width: 115px;
}
#HADAMORI .recommend .image img {
position: relative;
left: -5px;
}
#HADAMORI .recommend .itm {
padding-top: 15px;
width: 175px;
}
#HADAMORI .recommend .note {
margin-top: 24px;
font-size: 12px;
line-height: 1.67;
}

#HADAMORI2 .recommend {
position: relative;
margin: 0 auto;
width: 330px;
}
#HADAMORI2 .recommend .catch {
transform: translateX(-50%);
position: absolute;
left: 50%;
top: -70px;
font-weight: 500;
font-size: 22px;
line-height: 1.4;
text-align: center;
white-space: nowrap;
color: #664400;
}
#HADAMORI2 .recommend .catch::before {
content: '';
display: block;
position: absolute;
left: -30px;
top: 5px;
background: url("../img/had2_rec_cat_l.png") no-repeat center center;
background-size: contain;
width: 29px;
height: 37px;
}
#HADAMORI2 .recommend .catch::after {
content: '';
display: block;
position: absolute;
right: -30px;
top: -2px;
background: url("../img/had2_rec_cat_r.png") no-repeat center center;
background-size: contain;
width: 24px;
height: 41px;
}
#HADAMORI2 .recommend li {
margin-bottom: 42px;
}
#HADAMORI2 .recommend li:last-child {
margin-bottom: 0;
}
#HADAMORI2 .recommend img {
display: block;
box-sizing: border-box;
border: solid 5px #fff;
margin: 0 auto;
width: 283px;
height: auto;
}
#HADAMORI2 .recommend li:nth-of-type(1) img {
transform: rotate(-3deg);
}
#HADAMORI2 .recommend li:nth-of-type(2) img {
transform: rotate(4deg);
}
#HADAMORI2 .recommend li:nth-of-type(3) img {
transform: rotate(-3deg);
}
#HADAMORI2 .recommend li:nth-of-type(4) img {
transform: rotate(5deg);
width: 208px;
}
#HADAMORI2 .recommend li p {
margin-top: 16px;
font-size: 15px;
line-height: 2;
}
#HADAMORI2 .recommend .note {
margin-top: 24px;
font-size: 12px;
line-height: 1.67;
text-align: left;
}

.section .btn {
position: relative;
text-align: center;
}
.section .itm .block,
.section .item .block {
margin-bottom: 27px;
}
.section .itm .block h4,
.section .item .block h4 {
margin-bottom: 1px;
}
.section .itm h4,
.section .item h4 {
margin-bottom: 6px;
font-weight: 500;
font-size: 16px;
line-height: 1.38;
}
.section .itm h4 span,
.section .item h4 span {
display: inline-block;
padding-top: 6px;
font-weight: 400;
font-size: 13px;
}
.section .itm .cnt,
.section .item .cnt {
margin-bottom: 2px;
font-size: 13px;
line-height: 1.53;
}
.section .itm p.price,
.section .item p.price {
margin-bottom: 11px;
font-size: 13px;
line-height: 1.53;
}
.section .itm div.price,
.section .item div.price {
position: relative;
margin-top: -4px;
margin-bottom: 11px;
}
.section .itm div.price .special,
.section .item div.price .special {
font-weight: 700;
font-size: 15px;
color: #ee0000;
line-height: 1.38;
}
.section .itm div.price .special span,
.section .item div.price .special span {
font-family: 'Lato', sans-serif;
font-weight: 700;
font-size: 22px;
}
.section .itm div.price .normal,
.section .item div.price .normal {
margin-top: 5px;
font-size: 13px;
}
.section .itm div.price .off,
.section .item div.price .off {
box-sizing: border-box;
position: absolute;
left: 250px;
top: -87px;
width: 80px;
height: 80px;
background-color: #ee0000;
border-radius: 50%;
padding-top: 19px;
font-weight: 500;
font-size: 14px;
line-height: 1.2;
text-align: center;
color: #fff;
}
.section .itm div.price .off span,
.section .item div.price .off span {
font-family: 'Lato', sans-serif;
font-weight: 700;
font-size: 24px;
}
.section .itm .lnk,
.section .item .lnk {
font-family: dnp-shuei-mgothic-std, sans-serif;
font-weight: 600;
font-style: normal;
font-size: 13px;
line-height: 30px;
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: 15px;
padding-right: 9px;
width: 140px;
height: 30px;
color: #000;
}
.section .itm .lnk a::after,
.section .item .lnk a::after {
transform: translateY(-50%);
content: "\f054";
position: absolute;
right: 10px;
top: 50%;
font-family: "Font Awesome 5 Free";
font-weight: 900;
font-size: 10px;
color: #ff6600;
}
.section .itm .number,
.section .item .number {
display: flex;
background-color: #fff;
border: solid 1px #000;
border-radius: 3px;
width: 105px;
margin: 0 0 13px 0;
line-height: 21px;
text-align: center;
}
.section .itm .number dt,
.section .item .number dt {
background-color: #000;
width: 60px;
font-size: 11px;
color: #fff;
}
.section .itm .number dd,
.section .item .number dd {
flex: 1;
font-size: 12px;
}
.section .itm .note,
.section .item .note {
margin-top: 16px;
font-size: 10px;
line-height: 1.6;
}

.banner {
margin-top: 55px;
}