@charset "utf-8";
/* CSS Document */

/****************************************
clearfix
*****************************************/
.cf:before,
.cf:after {
display: table;
content: "";
}
.cf:after {
clear: both;
}
.cf {
zoom: 1;
}
.section .component:after,
.section .item:after,
.cols:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
.section .component,
.section .item,
.cols {
zoom: 1;
}

.Noto_Sans {
font-family: 'Noto Sans JP', sans-serif;
}
.Noto_Serif {
font-family: 'Noto Serif JP', serif;
}
.shippori_mincho {
font-family: "Shippori Mincho", serif;
}
.Lato {
font-family: 'Lato', sans-serif;
}
.inter {
font-family: 'Inter', sans-serif;
}

#contents {
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;
zoom: 100%;
overflow: hidden;
}
#yutubeMASK {
position: fixed;
left: 0;
top: 0;
background-color: rgba(0,0,0,0.7);
width: 100%;
height: 100%;
z-index: 1000;
display: none;
}
#yutubeCONT {
transform: translateY(-50%);
position: fixed;
left: 0;
top: 50%;
padding-top: 56.25%;
width: 100%;
z-index: 1001;
display: none;
}
#yutubeCONT iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

/* #mainVisual
================================================== */
#mainVisual {
position: relative;
margin: 0 auto 0 auto;
width: 375px;
font-size: 0;
line-height: 0;
}
#mainVisual .visual {
position: relative;
background: url("../img/title.jpg") no-repeat center center;
background-size: 375px auto;
height: 520px;
text-align: left;
}
#mainVisual h1 {
position: absolute;
left: 0;
top: 40px;
width: 100%;
text-align: center;
color: #000;
}
#mainVisual h1 strong {
background: url("../img/vis_line.png") no-repeat center bottom;
background-size: contain;
font-weight: 500;
font-size: 24px;
line-height: 1.52;
}
#mainVisual h1 span {
font-family: 'Shippori Mincho', serif;
font-weight: 500;
font-size: 26px;
line-height: 1.52;
}
#mainVisual .btn img {
display: block;
width: 100%;
height: auto;
}

/* mainContents section
================================================== */
#contents .banner a:hover img,
#mainVisual a:hover img {
filter: alpha(opacity=100);
-moz-opacity:1.0;
opacity:1.0;
}

#WORRIES {
padding-bottom: 44px;
}
#WORRIES .cont {
margin: 0 auto;
width: 375px;
}
#WORRIES .image {
position: relative;
background: url("../img/wor_img1.png") no-repeat center center;
background-size: cover;
margin-top: -8px;
width: 375px;
height: 799px;
}
#WORRIES .worries3,
#WORRIES .worries2,
#WORRIES .worries1 {
position: absolute;
font-weight: 500;
font-size: 18px;
line-height: 2.14;
text-align: left;
}
#WORRIES .worries1 {
left: 148px;
top: 148px;
}
#WORRIES .worries2 {
left: 75px;
top: 285px;
}
#WORRIES .worries3 {
left: 148px;
top: 423px;
}
#WORRIES .worries4 {
position: absolute;
left: 69px;
top: 641px;
font-weight: 500;
font-size: 20px;
line-height: 1.93;
text-align: left;
}
#WORRIES .worries4 li:first-child {
width: 473px;
}
#WORRIES .cth p {
transform: translateX(-50%);
position: absolute;
left: 50%;
top: 576px;
white-space: nowrap;
font-size: 15px;
line-height: 1.6;
text-align: center;
}
#WORRIES .cth p::before {
transform: translateY(-50%) rotate(25deg); 
content: '';
display: block;
position: absolute;
right: -25px;
top: 50%;
margin-top: 2px;
background-color: #000;
width: 1px;
height: 40px;
}
#WORRIES .cth p::after {
transform: translateY(-50%) rotate(-25deg); 
content: '';
display: block;
position: absolute;
left: -25px;
top: 50%;
margin-top: 2px;
background-color: #000;
width: 1px;
height: 40px;
}
#WORRIES .bln p {
transform: rotate(-5deg); 
position: absolute;
left: 95px;
top: 40px;
font-size: 18px;
line-height: 1.4;
text-align: center;
}
#WORRIES .catch {
padding: 30px 0 23px 0;
text-align: center;
}
#WORRIES .catch p {
position: relative;
display: inline-block;
font-size: 19px;
line-height: 1;
}
#WORRIES .catch p::before {
transform: translateY(-50%) rotate(22deg); 
content: '';
display: block;
position: absolute;
right: -10px;
top: 50%;
margin-top: 4px;
background-color: #000;
width: 1px;
height: 27px;
}
#WORRIES .catch p::after {
transform: translateY(-50%) rotate(-22deg); 
content: '';
display: block;
position: absolute;
left: -10px;
top: 50%;
margin-top: 4px;
background-color: #000;
width: 1px;
height: 27px;
}
#WORRIES h2 {
margin-bottom: 42px;
font-family: 'Shippori Mincho', serif;
font-weight: 500;
font-size: 24px;
line-height: 1.59;
text-align: center;
}
#WORRIES h2 sup {
font-size: 12px;
}
#WORRIES ul.direction {
margin-bottom: 33px;
font-weight: 500;
font-size: 36px;
line-height: 1;
text-align: center;
}
#WORRIES .direction li {
position: relative;
display: inline-block;
margin: 0 20px;
}
#WORRIES .direction li:last-child {
margin-top: 54px;
}
#WORRIES .direction li::before {
transform: translateX(-50%) translateY(-50%); 
content: '';
display: block;
position: absolute;
left: 50%;
top: 50%;
background: url("../img/wor_bg1.png") no-repeat center center;
background-size: cover;
width: 147px;
height: 78px;
}
#WORRIES .direction li strong {
background: linear-gradient(transparent 75%, #eee677 75%);
}
#WORRIES .lead {
margin-bottom: 28px;
font-weight: 500;
font-size: 25px;
text-align: center;
}
#WORRIES .lead span {
display: inline-block;
padding-top: 10px;
font-size: 10px;
}
#WORRIES .movie {
margin: 0 auto;
width: 330px;
}
#WORRIES .movie img {
display: block;
width: 100%;
height: auto;
}
#WORRIES .movie div {
position: relative;
width: 100%;
padding-top: 56.25%;
}
#WORRIES .movie iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#WORRIES .note {
margin: 33px auto 0 auto;
width: 330px;
font-weight: 400;
font-size: 14px;
line-height: 1.93;
text-align: left;
}

#POINT {
background: url("../img/poi_bg.png") repeat center center;
background-size: 100px auto;
}
#POINT .cont {
margin: 0 auto;
padding-bottom: 25px;
width: 375px;
}
#POINT .block {
margin: 0 auto;
padding: 45px 0 0 0;
width: 330px;
}
#POINT h2 {
display: block;
position: relative;
margin-bottom: 22px;
font-family: 'Shippori Mincho', serif;
font-weight: 500;
font-size: 24px;
line-height: 1.59;
text-align: center;
}
#POINT h2::before {
content: '';
display: block;
margin: 0 auto 24px auto;
width: 56px;
height: 68px;
}
#POINT .block:nth-of-type(1) h2::before {
background: url("../img/poi_blk1_icn.png") no-repeat center center;
background-size: 56px auto;
}
#POINT .block:nth-of-type(2) h2::before {
background: url("../img/poi_blk2_icn.png") no-repeat center center;
background-size: 56px auto;
}
#POINT .block:nth-of-type(3) h2::before {
background: url("../img/poi_blk3_icn.png") no-repeat center center;
background-size: 56px auto;
}
#POINT h2 span {
display: inline-block;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 500;
font-size: 16px;
line-height: 1.56;
letter-spacing: 0.05em;
text-align: left;
}
#POINT h2 strong {
background: linear-gradient(transparent 75%, #ddcb65 75%);
font-family: 'Noto Sans JP', sans-serif;
font-weight: 700;
letter-spacing: 0.05em;
}
#POINT h2 sup {
font-size: 10px;
}
#POINT h3 strong {
background: linear-gradient(transparent 75%, #ddcb65 75%);
font-family: 'Noto Sans JP', sans-serif;
letter-spacing: 0.05em;
}
#POINT .pack {
position: relative;
text-align: left;
}
#POINT .pack h3 {
margin-bottom: 12px;
font-weight: 700;
font-size: 18px;
line-height: 1.56;
}
#POINT .pack p {
font-size: 14px;
line-height: 2;
}
#POINT .pack p span {
display: inline-block;
padding-top: 7px;
font-size: 10px;
}
#POINT p.lead {
margin-bottom: 23px;
font-size: 14px;
line-height: 2;
}
#POINT .pack figcaption {
margin-top: 20px;
font-size: 12px;
line-height: 1.68;
}
#POINT #POI_BLK1_P1 {
padding-bottom: 36px;
}
#POINT #POI_BLK1_P1 p {
margin-bottom: 33px;
}
#POINT #POI_BLK1_P1 .image {
position: relative;
}
#POINT #POI_BLK1_P1 .image img:nth-of-type(2) {
position: absolute;
right: 0;
top: 0;
}
#POINT #POI_BLK1_P1 .image img:nth-of-type(3) {
position: absolute;
right: 0;
top: 97px;
}
#POINT #POI_BLK1_P2 {
padding-bottom: 31px;
}
#POINT #POI_BLK1_P2 .box {
background-color: rgba(255,255,255,0.5);
margin: 0 0 25px 0;
padding: 23px 20px 25px 20px;
}
#POINT #POI_BLK1_P2 p {
margin-bottom: 18px;
padding-top: 5px;
font-size: 14px;
line-height: 2;
}
#POINT #POI_BLK1_P2 li {
margin-top: 10px;
background-color: rgba(189,169,0,0.5);
font-weight: 700;
font-size: 16px;
line-height: 40px;
text-align: center;
}
#POINT #POI_BLK1_P2 li::before {
content: '';
display: inline-block;
position: relative;
top: 2px;
background: url("../img/square-check-solid.svg") no-repeat center center;
background-size: cover;
margin-right: 7px;
height: 16px;
width: 16px;
}
#POINT #POI_BLK2_P1 {
position: relative;
}
#POINT #POI_BLK2_P1 p {
padding: 0 0 20px 0;
}
#POINT #POI_BLK2_P1 dl {
position: relative;
background: url("../img/poi_blk2_bg1.png") no-repeat center bottom;
background-size: 308px auto;
margin: 0 auto;
width: 308px;
height: 359px;
}
#POINT #POI_BLK2_P1 dt {
position: absolute;
left: 0;
top: 15px;
width: 100%;
font-size: 18px;
font-weight: 700;
line-height: 1.56;
text-align: center;
}
#POINT #POI_BLK2_P1 dd {
position: absolute;
width: 153px;
font-weight: 400;
font-size: 14px;
line-height: 1.5;
text-align: center;
}
#POINT #POI_BLK2_P1 dd:nth-of-type(1) {
left: 80px;
top: 108px;
}
#POINT #POI_BLK2_P1 dd:nth-of-type(2) {
left: 3px;
top: 234px;
}
#POINT #POI_BLK2_P1 dd:nth-of-type(3) {
left: 154px;
top: 246px;
}
#POINT #POI_BLK2_P1 dd strong {
display: inline-block;
padding: 2px 0 4px 0;
font-family: 'Shippori Mincho', serif;
font-weight: 500;
font-size: 20px;
line-height: 1.28;
color: #aa8800;
}
#POINT #POI_BLK2_P1 .note {
margin-top: 15px;
padding: 0;
font-size: 10px;
text-align: center;
}
#POINT #POI_BLK3_P2,
#POINT #POI_BLK3_P1 {
padding-bottom: 18px;
}
#POINT .block:nth-of-type(3) .hed {
position: relative;
margin-bottom: 20px;
margin-left: -8px;
width: 338px;
height: 150px;
}
#POINT #POI_BLK3_P1 .hed {
background: url("../img/poi_blk3_bg1.png") no-repeat right bottom;
background-size: contain;
}
#POINT #POI_BLK3_P2 .hed {
background: url("../img/poi_blk3_bg2.png") no-repeat right bottom;
background-size: contain;
}
#POINT #POI_BLK3_P3 .hed {
background: url("../img/poi_blk3_bg3.png") no-repeat right bottom;
background-size: contain;
}
#POINT .block:nth-of-type(3) .hed .cth {
position: absolute;
left: 0;
font-size: 12px;
line-height: 1.5;
text-align: center;
}
#POINT #POI_BLK3_P1 .hed .cth {
top: 15px;
width: 210px;
}
#POINT #POI_BLK3_P2 .hed .cth {
top: 16px;
width: 206px;
}
#POINT #POI_BLK3_P3 .hed .cth {
top: 16px;
width: 214px;
}
#POINT .block:nth-of-type(3) .hed h3 {
box-sizing: border-box;
position: absolute;
left: 0;
bottom: 33px;
padding-left: 32px;
width: 100%;
font-family: 'Shippori Mincho', serif;
font-weight: 500;
font-size: 27px;
line-height: 1.34;
text-align: center;
}
#POINT .block:nth-of-type(3) .hed .en {
box-sizing: border-box;
position: absolute;
left: 0;
bottom: 20px;
padding-left: 32px;
width: 100%;
font-family: 'Cormorant Garamond', serif;
font-size: 15px;
line-height: 1.56;
text-align: center;
}
#POINT .block:nth-of-type(3) .cnt {
margin: 0 -14px 0 -10px;
display: flex;
flex-wrap: wrap;
}
#POINT .block:nth-of-type(3) .cnt dl {}
#POINT .block:nth-of-type(3) .cnt dl img {
display: block;
margin-bottom: 12px;
}
#POINT .block:nth-of-type(3) .cnt dt {
background-color: #fff;
border: solid 1px #000;
margin: 0 10px 10px 10px;
font-family: 'Shippori Mincho', serif;
font-weight: 500;
font-size: 13px;
line-height: 27px;
text-align: center;
}
#POINT .block:nth-of-type(3) .cnt dd {
display: inline-block;
box-sizing: border-box;
position: relative;
padding: 0 10px 21px 10px;
width: 175px;
font-weight: 400;
font-size: 12px;
line-height: 1.34;
text-align: center;
}
#POINT .block:nth-of-type(3) .cnt dd strong {
display: inline-block;
padding-bottom: 2px;
font-weight: 700;
font-size: 13px;
}
#POINT .block:nth-of-type(3) .cnt dd span {
box-sizing: border-box;
position: absolute;
left: 6px;
top: 51px;
background-color: #ee6677;
border-radius: 50%;
padding-top: 10px;
width: 50px;
height: 50px;
font-weight: 400;
font-size: 9px;
line-height: 1.34;
text-align: center;
color: #fff;
}
#POINT #POI_BLK3_P3 .cnt dd {
text-align: left;
font-size: 12px;
line-height: 1.5;
}
#POINT #POI_BLK3_P3 .cnt dd strong {
display: flex;
justify-content: center;
align-items: center;
background-color: rgba(189,169,0,0.5);
margin-bottom: 11px;
padding-bottom: 0;
width: 155px;
height: 75px;
font-size: 13px;
line-height: 1.39;
}


#USE .cont {
margin: 0 auto;
padding: 22px 0 0 0;
width: 330px;
}
#USE h2 {
position: relative;
margin-bottom: 27px;
font-weight: 700;
font-size: 24px;
line-height: 1.34;
text-align: center;
}

#USE #USE_BLK1 {
position: relative;
padding-bottom: 54px;
}
#USE #USE_BLK1 ul {
position: relative;
}
#USE #USE_BLK1 li {
box-sizing: border-box;
background-color: #f1e4d9;
margin-bottom: 10px;
padding: 18px 20px;
font-size: 14px;
line-height: 2;
text-align: left;
}
#USE #USE_BLK1 p {
padding-top: 3px;
font-size: 10px;
text-align: right;
}

#USE #USE_BLK2 {
padding-bottom: 32px;
}
#USE #USE_BLK2 p {
background-color: #ddcb65;
margin-bottom: 20px;
font-family: 'Shippori Mincho', serif;
font-weight: 500;
font-size: 21px;
line-height: 40px;
text-align: center;
}
#USE #USE_BLK2 li {
margin-bottom: 33px;
}
#USE #USE_BLK2 li img {
display: block;
width: 100%;
height: auto;
}
#USE #USE_BLK2 li:nth-of-type(2) img,
#USE #USE_BLK2 li:nth-of-type(6) img {
margin-top: -10px;
}
#USE #USE_BLK2 figcaption {
margin-top: 13px;
font-size: 14px;
line-height: 1.72;
text-align: left;
}

#USE #USE_BLK3 {
margin-top: 2px;
padding-bottom: 53px;
}
#USE #USE_BLK3 ul {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 15px;
}
#USE #USE_BLK3 li {
background-color: #ddcb65;
border-radius: 5px;
padding: 7px 10px;
font-weight: 400;
font-size: 16px;
line-height: 1.3;
text-align: center;
}
#USE #USE_BLK3 li span {
font-size: 12px;
}
#USE #USE_BLK3 p {
margin-top: 13px;
font-weight: 400;
font-size: 14px;
line-height: 1.84;
text-align: center;
}
#USE #USE_BLK3 p span {
font-size: 12px;
}

#USE #USE_BLK4 {
box-sizing: border-box;
position: relative;
background: url("../img/use_blk4_bg.jpg") repeat top center;
background-size: 375px auto;
margin: 0 -22.5px;
padding-top: 56px;
width: 375px;
height: 1481px;
}
#USE #USE_BLK4 .box {
margin: 0 auto;
padding: 17px 0 0 0;
width: 330px;
}
#USE #USE_BLK4 .blk1 {
height: 278px;
}
#USE #USE_BLK4 .blk2 {
height: 755px;
}
#USE #USE_BLK4 h3 {
margin-bottom: 76px;
padding-top: 4px;
font-weight: 700;
font-size: 18px;
line-height: 1.5;
text-align: center;
}
#USE #USE_BLK4 h4 {
margin-bottom: 7px;
margin-left: 190px;
font-weight: 700;
font-size: 14px;
line-height: 1.85;
letter-spacing: 0.08em;
text-align: left;
}
#USE #USE_BLK4 p {
margin-left: 190px;
font-size: 14px;
line-height: 1.85;
text-align: left;
}
#USE #USE_BLK4 .blk3 h4,
#USE #USE_BLK4 .blk3 p {
margin-left: 130px;
width: auto;
}
#USE #USE_BLK4 p.note {
margin-top: 32px;
margin-left: 0;
width: auto;
font-size: 10px;
}
#USE #USE_BLK4 img {
display: block;
margin: 0 auto;
}
#USE #USE_BLK4 dl {
margin-top: 61px;
}
#USE #USE_BLK4 dt {
margin-bottom: 40px;
font-weight: 500;
font-size: 16px;
text-align: center;
}
#USE #USE_BLK4 dd {
box-sizing: border-box;
margin-left: 185px;
width: 135px;
height: 140px;
font-size: 14px;
line-height: 2;
text-align: left;
}

#ITEM .cont {
margin: 0 auto;
padding: 15px 0 0 0;
width: 330px;
}
#ITEM .list {
display: flex;
flex-direction: column;
justify-content: space-between;
}
#ITEM .list::after {
display: none !important;
}
#ITEM .block {
box-sizing: border-box;
display: flex;
justify-content: space-between;
}
#ITEM .block::after {
display: none !important;
}
#ITEM .image {
flex: 1;
}
#ITEM .block:nth-of-type(1) .image img {
display: block;
margin: 20px 0 0 14px;
}
#ITEM .block:nth-of-type(2) .image img {
display: block;
margin: 20px 0 0 -4px;
}
#ITEM .pack {
width: 233px;
}
#ITEM .block:nth-of-type(2) .pack {
padding-top: 37px;
}

.section .itm .block,
.section .item .block {
margin: 0 auto 40px auto;
width: 330px;
}
.section .itm .list,
.section .item .list {
padding-top: 45px;
}
.section .itm h4,
.section .item h4 {
margin-bottom: 1px;
font-weight: 500;
font-size: 16px;
line-height: 1.44;
}
.section .itm h4 span,
.section .item h4 span {
display: inline-block;
margin-bottom: -1px;
padding-top: 2px;
font-weight: 500;
font-size: 13px;
}
.section .itm .cnt,
.section .item .cnt {
margin-bottom: 5px;
font-size: 13px;
line-height: 1.53;
}
.section .itm p.price,
.section .item p.price {
margin-bottom: 13px;
font-size: 13px;
line-height: 1.53;
}
.section .itm div.price,
.section .item div.price {
position: relative;
margin-top: -2px;
margin-bottom: 13px;
}
.section .itm div.price .special,
.section .item div.price .special {
margin-bottom: 5px;
font-size: 15px;
color: #ee0000;
line-height: 1.2;
}
.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 {
font-size: 13px;
}
.section .itm div.price .off,
.section .item div.price .off {
box-sizing: border-box;
position: absolute;
right: 5px;
top: 60px;
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: 27px;
}
.section .itm .lnk,
.section .item .lnk {
font-family: dnp-shuei-mgothic-std, sans-serif;
font-weight: 600;
font-style: normal;
font-size: 14px;
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 .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 11px 0;
line-height: 21px;
text-align: center;
}
.section .itm .number dt,
.section .item .number dt {
background-color: #000;
border-right: none;
border: solid 1px #000;
border-radius: 3px 0 0 3px;
width: 60px;
font-size: 11px;
color: #fff;
}
.section .itm .number dd,
.section .item .number dd {
background-color: #fff;
border: solid 1px #000;
border-radius: 0 3px 3px 0;
border-left: none;
padding: 0 4px;
min-width: 42px;
font-size: 12px;
}
.section .itm .note,
.section .item .note {
margin-top: 16px;
font-size: 10px;
line-height: 1.6;
}