@charset "utf-8";
/* ---------------------------------------

			初期設定

--------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font: inherit;
}

html {line-height: 1;}

/* img 要素
-------------------------------------- */
img {
width: 100%;
height: auto;
vertical-align: bottom;
}

/* a 要素
-------------------------------------- */
a, a:hover {
text-decoration: none;
-webkit-animation: headerBtnWebAnime .2s ease;
animation: headerBtnWebAnime .2s ease;
-webkit-transition: .2s ease-in-out;
-moz-transition: .2s ease-in-out;
-o-transition: .2s ease-in-out;
transition: .2s ease-in-out;
}

/* ---------------------------------------

	トップスライダー

--------------------------------------- */
.swiper-container {}
.s-three-wrap {
position: relative;
max-width: 1200px;
margin: 0 auto;
}
.s-three-text, .s-three-sub, .s-three-button {
position: absolute;
width: 100%;
left: 15%;
color: #fff;
}
/* メインコピー
-------------------------------------- */
.s-three-text {
top: 24%;
/**font-size: 5vw;**/
font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
font-size: 2.5vw;
color: #000;
}
/* サブコピー
-------------------------------------- */
.s-three-sub {
font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
top: 60%;
font-size: 2vw;
color: #000;
}
.s-three-sub-sub {
    font-size: 1.2vw;
}
/* ボタン
-------------------------------------- */
.s-three-button {
top: 80%;
/**left: calc( 50% - 75px );**/
display: block;
width: 242px;
padding: 12px 10px;
box-sizing: border-box;
border: #292929 1px solid;
color: #292929;
text-align: center;
text-decoration: none;
transition: all .25s ease;
}
.s-three-button:hover {
background: rgba(41, 41, 41, .8);
border: rgba(41, 41, 41, .6) 1px solid;
color: #fff;
}
.swiper-slide-active .s-three-text {
animation: slideFromRight 1.5s ease 0s 1 normal;
    line-height: 2.8rem;
}
.swiper-slide-active .s-three-sub {animation: slideFromRightSub 2.0s ease 0s 1 normal;line-height: 1.8rem;}
.swiper-slide-active .s-three-button {
animation: slideFromRightBtn 2.5s ease 0s 1 normal;
}
 @keyframes slideFromRight {
     0%, 25% {
     transform: translateX(50px);
     opacity: 0;
    }
     100% {
     transform: translateX(0px);
     opacity: 1;
    }
}
 @keyframes slideFromRightSub {
     0%, 45% {
     transform: translateX(50px);
     opacity: 0;
    }
     100% {
     transform: translateX(0px);
     opacity: 1;
    }
}
@keyframes slideFromRightBtn {
     0%, 65% {
     transform: translateY(50px);
     opacity: 0;
    }
     100% {
     transform: translateY(0px);
     opacity: 1;
    }
}
/* 前へ・次へ
-------------------------------------- */
.swiper-button-prev {background-image: url("../images/svg/arrow-pre.svg");}
.swiper-button-next {background-image: url("../images/svg/arrow-next.svg");}
/* ---------------------------------------

	コンテンツ

--------------------------------------- */
.contents {
min-height: 50vh;
position: relative;
padding-bottom: 160px;
}
.container {
width: 1200px;
background: #fff;
margin: 0 auto;
padding: 0;
}
section {
width: 100%;
padding: 40px 0;
}
section .wrapper {
width: 960px;
margin: 0 auto;
position: relative;
padding: 10px 0;
}
/* 商品ブロック
-------------------------------------- */
.pkBlock {
-js-display: flex;
display: flex;
-webkit-justify-content: space-between;/* Safari */
justify-content: space-between;
flex-wrap: wrap;
}
.pkBlock::after {
content:"";
display:block;
width: 240px;
min-width: 33%;
height:0;
}
.package {
width: 240px;
text-align: center;
min-width: 33%;
}
.package img {max-width: 240px;}
.package a:hover img {
opacity: .8;
-webkit-transition: .2s ease-in-out;
-moz-transition: .2s ease-in-out;
-o-transition: .2s ease-in-out;
transition: .2s ease-in-out;
}
.package a.btn {
display: block;
text-align: center;
color: #f00a00;
border: #f00a00 1px solid;
padding: 14px 0;
max-width: 240px;
margin: 24px auto;
position: relative;
}
.package a.btn::after {
content: "";
background: url("../images/svg/btn_arrow.svg") no-repeat;
background-size: contain;
width: 8px;
height: 15px;
position: absolute;
right: 10%;
top: 50%;
-moz-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
}
.package a.btn:hover {
background: #f00a00;
color: #fff;
}
.package a.btn:hover::after {
background: url("../images/svg/btn_arrow_wh.svg") no-repeat;
background-size: contain;
}
/* ---------------------------------------

フッター

--------------------------------------- */
footer {
position: absolute;
bottom: 0;
width: 100%;
text-align: center;
background: #b59a9a;
color: #fff;
font-size: 75%;
padding: 22px 0;
}
footer.footer.free {
padding-top: 0;
padding-bottom: 0;
background: #fff;
}

footer a {
color: #fff;
text-decoration: none;
}
footer a:hover {color: #9e5f74;}

.copyright {
font-size: 75%;
margin-top: 20px;
}
.section--address p.copyright {
color: #000;
}

.infoBlock {
-js-display: flex;
display: flex;
-webkit-justify-content: center; /* Safari */
justify-content: center;
margin: 0 auto 18px;
}
img.flogo {width: 168px;}
p.add {
display: block;
text-align: left;
line-height: 1.0rem;
padding: 8px 0 0 8px;
}

