@charset "UTF-8";
/* =====================================
	index
===================================== */

.visual{
    width: 100%;
}

.visual .slick-slide{
    width: 100%;
    height: 710px;
    position: relative;
}

.visual .slick-slide h1{
    position: absolute;
    top: 13%;
    left: 50%;
    transform: translateX(-50%);
}

.visual .slick-dots {
    bottom: -38px;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}

.visual .slick-dots li {
    width: 14px;
    height: 14px;
    margin: 0 6px;
}

.visual .slick-dots li button {
    width: 14px;
    height: 14px;
}

.visual .slick-dots li button::before {
    width: 14px;
    height: 14px;
    background: #dbdad9;
    border-radius: 50%;
}

.visual .slick-dots li.slick-active button::before {
    background: #686661;
    border: none;
    margin-top: 0;
}

.lead{
    width: 100%;
    padding: 118px 40px 90px;
    text-align: center;
}

.lead h2{
    line-height: 1;
    margin-bottom: 55px;
    font-size: 2.8rem;
}

.lead img{
    width: 260px;
    margin: 0 auto 48px;
}

.product{
    width: 100%;
    padding: 100px 40px 120px;
    background: #f5f7ed;
}

.product .flexbox{
    width: 100%;
    max-width: 1030px;
    margin: 0 auto;
    padding: 85px 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.product .flexbox .imgArea{
    width: 50%;
}

.product .flexbox .imgArea img{
    width: 100%;
}

.product .flexbox .txtArea{
    width: 50%;
}

.product .flexbox .txtArea h3{
    line-height: 1.77;
    font-weight: bold;
    margin-bottom: 17px;
}

.product .flexbox .txtArea p{
    line-height: 1.714;
    font-size: 1.4rem;
    margin-bottom: 22px;
}

.product02{
    background: #f1efed;
}

.insta{
    padding: 98px 40px 0;
    width: 100%;
}

.insta ul{
    width: 100%;
    max-width: 860px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 auto;
}

.insta ul li{
    width: calc(50% - 60px);
    margin: 0 30px;
}

.insta ul li:last-child{
    margin-bottom: 0;
}

.insta ul li .instagram-media{
    width: 100%;
}

.slick-prev, .slick-next {
    width: 84px;
    height: 84px;
    background:rgba(154,165,143,0.75);
    border-radius: 50%;
    transition: 0.3s opacity ease;
    z-index: 9999;
}

.slick-disabled{
    opacity: 0.4;
    cursor: default;
}

.slick-prev {
    left: -100px;
}

.slick-next {
    right: -100px;
}

.slick-prev::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-30%, -54%) rotate(45deg);
    border-bottom: solid 2px #fff;
    border-left: solid 2px #fff;
    width: 33px;
    height: 33px;
}

.slick-next::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-70%, -54%) rotate(-135deg);
    border-bottom: solid 2px #fff;
    border-left: solid 2px #fff;
    width: 33px;
    height: 33px;
}

.info{
    padding: 98px 40px 120px;
    width: 100%;
}

.info dl{
  width: 100%;
  max-width: 800px;
  margin: 60px auto 30px;
  font-size: 1.6rem;
  line-height: 1.7;
  background: #fafaf3;
  padding: 30px 40px;
}

.info dt{
  font-size: 1.8rem;
  text-align: center;
  margin: 0 0 25px;
  line-height: 1.5;
}

.info ul{
    margin: 60px auto 0;
    width: 100%;
    max-width: 800px;
    border-top: 1px solid #2f2725;
}

.info ul li{
    padding: 30px 30px 25px;
    border-bottom: 1px solid #dbdad9;
    line-height: 1.5;
}

.info ul li strong{
    font-weight: bold;
    display: block;
    margin-bottom: 8px;
}

.info a{
    text-decoration: underline;
}

/*.info a{
    display: table;
    margin: 60px auto 0;
}*/

.about{
    width: 100%;
    background: #f7f6ed;
    padding: 100px 40px 120px;
}

.about ul{
    width: 100%;
    max-width: 850px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 60px auto 0;
}

.about ul li{
    width: 29.41176470588235%;
    font-size: 1.6rem;
    line-height: 1.5;
    margin-bottom: 35px;
    text-align: center;
}

.about ul li:nth-last-child(-n+3){
    margin-bottom: 0;
}

.about ul li img{
    width: 100%;
    margin-bottom: 7px;
}

.about .btnType01{
    display: table;
    margin: 55px auto 0;
}



@media screen and (max-width: 768px) {

.visual .slick-slide{
    height: 114.67vw;
}

.visual .slick-slide h1{
    top: 12%;
}

.visual .slick-slide h1 img{
    width: 78.533vw;
}

.visual .slick-dots {
    bottom: -8.533vw;
}

.visual .slick-dots li {
    width: 3.2vw;
    height: 3.2vw;
    margin: 0 1.466vw;
}

.visual .slick-dots li button {
    width: 3.2vw;
    height: 3.2vw;
}

.visual .slick-dots li button::before {
    width: 3.2vw;
    height: 3.2vw;
}

.lead{
    padding: 22vw 0 16.533vw;
}

.lead h2{
    margin-bottom: 10.66vw;
    font-size: 5.33vw;
}

.lead img{
    width: 49.6vw;
    margin: 0 auto 8.533vw;
}

.product{
    padding: 13.33vw 0 16vw;
}

.product .flexbox{
    padding: 8vw 0 0;
    display: block;
}

.product .flexbox .imgArea{
    width: 100%;
}

.product .flexbox .txtArea{
    width: 100%;
}

.product .flexbox .txtArea h3{
    text-align: center;
    margin: 0 0 4vw;
}

.product .flexbox .txtArea p{
    font-size: 2.66vw;
    margin-bottom: 6.933vw;
    padding: 0 5.33vw;
}

.product a{
    display: table;
    margin: 0 auto;
}

.insta{
    padding: 13.33vw 0 0;
}

.insta ul{
    width: 92vw;
    margin: 0 auto;
}

.insta ul li{
    margin: 0;
    width: 100%;
}

.slick-prev, .slick-next {
    width: 10.9375vw;
    height: 10.9375vw;
}

.slick-prev {
    left: -3vw;
}

.slick-next {
    right: -3vw;
}

.slick-prev::before {
    width: 4.296875vw;
    height: 4.296875vw;
}

.slick-next::before {
    width: 4.296875vw;
    height: 4.296875vw;
}

.info{
    padding: 13.33vw 0 16vw;
}

.info dl{
  margin: 6vw auto 12vw;
  width: 92vw;
  font-size: 3.2vw;
  background: #fafaf3;
  padding: 6vw;
}

.info dt{
  font-size: 3.8vw;
  margin: 0 0 4vw;
}

.info ul{
    margin: 4vw auto 0;
    width: 92vw;
    border-top: 0.266vw solid #2f2725;
}

.info ul li{
    padding: 5.33vw 2.66vw 4.533vw;
    border-bottom: 0.266vw solid #dbdad9;
}

.info ul li strong{
    margin-bottom: 1.3vw;
}

/*.info a{
    margin: 8vw auto 0;
}*/

.about{
    padding: 13.33vw 0 16vw;
}

.about ul{
    width: 89.33vw;
    margin: 5.33vw auto 0;
}

.about ul li{
    width: 47.76119402985075%;
    font-size: 3vw;
    margin-bottom: 4vw;
}

.about ul li:nth-last-child(-n+3){
    margin-bottom: 5vw;
}

.about ul li:nth-last-child(-n+2){
    margin-bottom: 0;
}

.about ul li img{
    margin-bottom: 1.8vw;
}

.about .btnType01{
    margin: 7.33vw auto 0;
}

}