/* ============================================================================================== */
/* common overwrite
/* ============================================================================================== */
#main {
  padding: 0;
  /*background-color: #000;
  color: #fff;*/
}

#main h1,
#main h2,
#main h3,
#main h4,
#main h5 {
  /*color: #fff;*/
  border: 0 none;
  padding: 0;
  margin: 0;
}

#main .row {
  max-width: none;
  width: 100%;
}

#main .column {
  padding: 0;
}

#main figure,
#main p,
#main dl,
#main dt,
#main dd {
  margin: 0;
  float: none;
  padding: 0;
}
/* ============================================================================================== */
/* common
/* ============================================================================================== */
.lp_wrapper {
  margin: 0 auto;
}
.lp_wrapper .content_inner {
  margin: 0 auto;
}
.lp_wrapper .sp {
  display: none;
}
@media screen and (max-width: 750px) {
  .lp_wrapper .pc {
    display: none;
  }
  .lp_wrapper .sp {
    display: block;
  }
}
/*--#lafilletourdefer common--*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
#lafilletourdefer {
  font-family: "Noto Sans JP", sans-serif;
}
#lafilletourdefer .content_inner {
  width: 90vw;
  max-width: 960px;
}
@media screen and (max-width: 750px) {
  #lafilletourdefer .content_inner {
    max-width: 89.33vw;
  }
}
#lafilletourdefer .content_inner p {
  font-size: 16px;
  line-height: 1.9;
}
@media screen and (max-width: 750px) {
  #lafilletourdefer .content_inner p {
    font-size: 3.2vw;
  }
}
/* ============================================================================================== */
/* lp_header
/* ============================================================================================== */
#lafilletourdefer .lp_header img {
  width: 100%;
}
/* ============================================================================================== */
/* lp_main
/* ============================================================================================== */
#lafilletourdefer .lp_main {
  padding: 0 0 70px;
}
#lafilletourdefer .lp_main .alink {
  display: table;
  padding: 55px 0;
  margin: 0 auto;
}
#lafilletourdefer .lp_main .alink a {
  position: relative;
  color: #662483;
  font-size: clamp(19px, calc(2.235294117647058px + 2.235294117647059vw), 38px);
  font-weight: 700;
  padding-right: 55px;
  transition: all 1s;
}
#lafilletourdefer .lp_main .alink a:hover {
  color: #000;
}
#lafilletourdefer .lp_main .alink a .icon-arrow {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 24px;
  height: 24px;
  margin: auto 0;
  transform: translateX(-25%) rotate(135deg);
}
#lafilletourdefer .lp_main .alink a .icon-arrow::before,
#lafilletourdefer .lp_main .alink a .icon-arrow::after {
  position: absolute;
  content: "";
  margin: auto 0;
  background: #662483;
  border-radius: 0.1em;
  transition: all 1s;
}
#lafilletourdefer .lp_main .alink a .icon-arrow::before {
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
}
#lafilletourdefer .lp_main .alink a .icon-arrow::after {
  top: 0;
  bottom: 0;
  right: 0;
  width: 4px;
}
#lafilletourdefer .lp_main .alink a:hover .icon-arrow::before,
#lafilletourdefer .lp_main .alink a:hover .icon-arrow::after {
  background: #000;
}
@media screen and (max-width: 750px) {
  #lafilletourdefer .lp_main {
    padding: 0 0 15.333vw;
  }
  #lafilletourdefer .lp_main .alink {
    padding: 4.4vw 0;
  }
  #lafilletourdefer .lp_main .alink a {
    display: block;
    text-align: center;
    padding-right: 0;
    padding-bottom: 6.4vw;
  }
  #lafilletourdefer .lp_main .alink a .icon-arrow {
    top: initial;
    bottom: 9px;
    left: 0;
    right: 0;
    width: 4.2vw;
    height: 4.2vw;
    margin: 0 auto;
  }
  #lafilletourdefer .lp_main .alink a .icon-arrow::before {
    height: 0.533vw;
  }
  #lafilletourdefer .lp_main .alink a .icon-arrow::after {
    width: 0.533vw;
  }
}
/* ============================================================================================== */
/* description
/* ============================================================================================== */
#lafilletourdefer .description {
  padding: 114px 0;
  background: #ecebf3 url("../images/lafilletourdefer/lftdf_texture.png") top right no-repeat;
}
#lafilletourdefer .description .content_inner {
  position: relative;
}
#lafilletourdefer .description h2 {
  font-size: clamp(19px, calc(4px + 2vw), 36px);
  font-weight: 700;
  text-align: center;
  margin-top: 28px;
}
#lafilletourdefer .description h3 {
  font-size: clamp(14px, calc(4.294117647058824px + 1.2941176470588236vw), 25px);
  font-weight: 700;
  text-align: center;
  margin: 32px 0 19px;
}
#lafilletourdefer .description p {
  font-size: clamp(14px, calc(10.470588235294118px + 0.4705882352941176vw), 18px);
  text-align: center;
}
#lafilletourdefer .description p.catch {
  font-size: clamp(16px, calc(8.058823529411764px + 1.0588235294117647vw), 25px);
}
#lafilletourdefer .description p.aroma {
  font-weight: 700;
  margin-bottom: 20px;
}
#lafilletourdefer .description p.price {
  display: table;
  font-size: clamp(16px, calc(12.470588235294118px + 0.4705882352941176vw), 20px);
  text-align: right;
  margin: 0 auto;
}
#lafilletourdefer .description p.sale {
  color: #662483;
  font-size: clamp(19px, calc(4px + 2vw), 36px);
  margin-bottom: 16px;
}
#lafilletourdefer .description p.notes {
  display: table;
  font-size: clamp(12px, calc(8.470588235294118px + 0.4705882352941176vw), 16px);
  text-align: left;
  margin: 0 auto;
}
#lafilletourdefer .description picture {
  display: table;
  margin: 48px auto 18px;
}
#lafilletourdefer .description .btn {
  margin: 47px auto 35px;
}
#lafilletourdefer .description .btn a {
  position: relative;
  display: block;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  padding: 18px 0;
  background: #000000;
  transition: all 1s;
}
#lafilletourdefer .description .btn a::before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 23px;
  content: "";
  width: 9px;
  height: 9px;
  margin: auto 0;
  border-top: #fff 2px solid;
  border-right: #fff 2px solid;
  transform: rotate(45deg);
  transition: all 1s;
}
#lafilletourdefer .description .btn a:hover {
  color: #000;
  background: #c9c9c9;
}
#lafilletourdefer .description .btn a:hover::before {
  border-top: #000 2px solid;
  border-right: #000 2px solid;
}
#lafilletourdefer .description .left {
  position: absolute;
  top: 0;
  left: -158px;
}
#lafilletourdefer .description .right {
  position: absolute;
  bottom: 374px;
  right: -220px;
}
@media screen and (max-width: 750px) {
  #lafilletourdefer .description {
    padding: 12vw 0 5.2vw;
    background: #ecebf3 url("../images/lafilletourdefer/lftdf_texture.png") top right no-repeat;
    background-size: contain;
  }
  #lafilletourdefer .description h2 {
    margin-top: 3.6vw;
  }
  #lafilletourdefer .description h3 {
    margin: 6.133vw 0 3.067vw;
  }
  #lafilletourdefer .description p.notes span {
    display: inline-block;
    margin-left: 0.6em;
  }
  #lafilletourdefer .description picture {
    margin: 4.533vw auto 3.6vw;
  }
  #lafilletourdefer .description .btn {
    width: 100%;
    margin: 8vw auto 7.2vw;
  }
  #lafilletourdefer .description .btn a {
    font-size: 4.66vw;
    padding: 3.93vw 0 3.53vw;
    transition: unset;
  }
  #lafilletourdefer .description .btn a::before {
    right: 4.93vw;
    width: 2vw;
    height: 2vw;
    transition: unset;
  }
  #lafilletourdefer .description .right,
  #lafilletourdefer .description .left {
    display: none;
  }
}
/* ============================================================================================== */
/* concept
/* ============================================================================================== */
#lafilletourdefer .concept {
  padding: 88px 0 70px;
}
#lafilletourdefer .concept p {
  font-size: clamp(14px, calc(12.235294117647058px + 0.2352941176470588vw), 16px);
  text-align: center;
  margin-bottom: 50px;
}
#lafilletourdefer .concept .more_cont {
  display: none;
}
#lafilletourdefer .concept .more {
  position: relative;
  display: table;
  font-size: clamp(14px, calc(10.470588235294118px + 0.4705882352941176vw), 18px);
  padding-right: 20px;
  margin: auto;
  transition: all 1s;
  cursor: pointer;
}
#lafilletourdefer .concept .more:hover {
  color: #662483;
}
#lafilletourdefer .concept .more::before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  content: "";
  width: 9px;
  height: 9px;
  margin: auto 0;
  border-top: #000 2px solid;
  border-right: #000 2px solid;
  transform: rotate(135deg);
  transition: all 1s;
}
#lafilletourdefer .concept .more:hover::before {
  border-top: #662483 2px solid;
  border-right: #662483 2px solid;
}
#lafilletourdefer .concept .more.close::before {
  top: 11px;
  transform: rotate(315deg);
}
@media screen and (max-width: 750px) {
  #lafilletourdefer .concept {
    padding: 9.867vw 0 12vw;
  }
  #lafilletourdefer .concept p {
    margin-bottom: 10.8vw;
  }
}
/* ============================================================================================== */
/* adsale
/* ============================================================================================== */
#lafilletourdefer .adsale {
  padding: 114px 0;
  background: #ecebf3;
}
#lafilletourdefer .adsale .txt_cont {
  display: table;
  color: #662483;
  font-size: clamp(19px, calc(9.294117647058824px + 1.2941176470588236vw), 30px);
  padding: 0 30px;
  margin: 0 auto 37px;
  border: #662483 2px solid;
}
#lafilletourdefer .adsale h2 {
  color: #662483;
  font-size: clamp(19px, calc(0.47058823529411953px + 2.4705882352941173vw), 40px);
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 24px;
}
#lafilletourdefer .adsale h3 {
  font-size: clamp(19px, calc(0.47058823529411953px + 2.4705882352941173vw), 40px);
  text-align: center;
  margin-top: 42px;
}
#lafilletourdefer .adsale h3::after {
  display: block;
  content: "";
  width: 60px;
  height: 2px;
  margin: 2.5rem auto 2rem;
  background: #000;
}
#lafilletourdefer .adsale p.day {
  font-size: clamp(14px, calc(4.294117647058824px + 1.2941176470588236vw), 25px);
  text-align: center;
  margin-bottom: 30px;
}
#lafilletourdefer .adsale p.copy {
  font-size: clamp(14px, calc(8.705882352941178px + 0.7058823529411765vw), 20px);
  font-weight: 700;
  text-align: center;
  margin-bottom: 62px;
}
#lafilletourdefer .adsale dl {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  font-size: clamp(14px, calc(8.705882352941178px + 0.7058823529411765vw), 20px);
  padding: 38px 44px;
  margin-bottom: 70px !important;
  border: #707070 1px solid;
}
#lafilletourdefer .adsale dl dt {
  width: 30%;
  font-weight: 700;
  margin-bottom: 1rem;
  border-right: #707070 1px solid;
}
#lafilletourdefer .adsale dl dd {
  width: 70%;
  padding-left: 40px;
  margin-bottom: 1.5rem;
}
#lafilletourdefer .adsale .btn {
  position: relative;
  max-width: 565px;
  width: 35.313vw;
  margin: 0 auto 75px;
}
#lafilletourdefer .adsale .btn a {
  position: relative;
  display: block;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  padding: 18px 0;
  background: #662483;
  transition: all 1s;
}
#lafilletourdefer .adsale .btn a:hover {
  color: #000;
  background: #c9c9c9;
}
#lafilletourdefer .adsale .btn svg {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 27px;
  margin: auto 0;
  transition: all 1s;
}
#lafilletourdefer .adsale .btn a:hover svg {
  color: #707070;
}
#lafilletourdefer .adsale .map {
  display: flex;
  justify-content: space-between;
  max-width: 755px;
  width: 90vw;
  margin: 0 auto;
}
#lafilletourdefer .adsale .map .access h4 {
  display: table;
  font-size: clamp(14px, calc(10.470588235294118px + 0.4705882352941176vw), 18px);
  padding-bottom: 10px;
  margin-bottom: 15px;
  border-bottom: #707070 1px solid;
}
#lafilletourdefer .adsale .map .access p {
  font-size: clamp(14px, calc(10.470588235294118px + 0.4705882352941176vw), 18px);
}
#lafilletourdefer .adsale .map .access p span {
  font-size: clamp(14px, calc(8.705882352941178px + 0.7058823529411765vw), 20px);
}
#lafilletourdefer .adsale .google {
  width: 60%;
}
#lafilletourdefer .adsale .google iframe {
  width: 100%;
}
@media screen and (max-width: 750px) {
  #lafilletourdefer .adsale {
    padding: 9.73vw 0 11.73vw;
  }
  #lafilletourdefer .adsale .txt_cont {
    margin: 0 auto 4vw;
  }
  #lafilletourdefer .adsale h2 {
    margin-bottom: 4.8vw;
  }
  #lafilletourdefer .adsale h3 {
    margin-top: 6vw;
  }
  #lafilletourdefer .adsale h3::after {
    width: 8vw;
    margin: 2vw auto 6vw;
  }
  #lafilletourdefer .adsale p.day {
    margin-bottom: 6.4vw;
  }
  #lafilletourdefer .adsale p.copy {
    margin-bottom: 9vw;
  }
  #lafilletourdefer .adsale dl {
    padding: 8vw 5.467vw;
    margin-bottom: 12.8vw !important;
  }
  #lafilletourdefer .adsale dl dt {
    width: 100%;
    margin-bottom: 0.5vw;
    border-right: none;
  }
  #lafilletourdefer .adsale dl dd {
    width: 100%;
    padding-left: 0;
  }
  #lafilletourdefer .adsale .btn {
    max-width: initial;
    width: 100%;
    margin-bottom: 9.86vw;
  }
  #lafilletourdefer .adsale .btn a {
    font-size: 4.66vw;
    padding: 4.93vw 0;
    transition: unset;
  }
  #lafilletourdefer .adsale .map {
    display: block;
    max-width: initial;
    width: 100%;
  }
  #lafilletourdefer .adsale .map .access h4 {
    display: block;
  }
  #lafilletourdefer .adsale .google {
    width: 100%;
    margin-top: 7.2vw;
  }
}
/* ============================================================================================== */
/* product
/* ============================================================================================== */
#lafilletourdefer .product {
  padding-top: 75px;
}
#lafilletourdefer .product .content_inner {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
#lafilletourdefer .product picture {
  max-width: 350px;
}
#lafilletourdefer .product h2 {
  font-size: clamp(16px, calc(10.705882352941178px + 0.7058823529411765vw), 22px);
  font-weight: 500;
  margin-bottom: 24px;
}
#lafilletourdefer .product p {
  display: table;
  font-size: clamp(14px, calc(10.470588235294118px + 0.4705882352941176vw), 18px);
  text-align: right;
  margin-bottom: 95px;
}
#lafilletourdefer .product .btn {
  width: 450px;
}
#lafilletourdefer .product .btn a {
  position: relative;
  display: block;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  padding: 9px 0 8px;
  background: #000000;
  transition: all 1s;
}
#lafilletourdefer .product .btn a::before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 23px;
  content: "";
  width: 9px;
  height: 9px;
  margin: auto 0;
  border-top: #fff 2px solid;
  border-right: #fff 2px solid;
  transform: rotate(45deg);
  transition: all 1s;
}
#lafilletourdefer .product .btn a:hover {
  color: #000;
  background: #c9c9c9;
}
#lafilletourdefer .product .btn a:hover::before {
  border-top: #000 2px solid;
  border-right: #000 2px solid;
}
@media screen and (max-width: 768px) {
  #lafilletourdefer .product .product_txt {
    padding-right: 30px;
  }
}
@media screen and (max-width: 750px) {
  #lafilletourdefer .product {
    padding-top: 13vw;
  }
  #lafilletourdefer .product .content_inner {
    display: block;
    padding-left: 0;
  }
  #lafilletourdefer .product picture {
    display: block;
    width: 70vw;
    margin: 0 auto 5.73vw;
  }
  #lafilletourdefer .product .product_txt {
    padding-right: 0;
  }
  #lafilletourdefer .product h2 {
    text-align: center;
    margin-bottom: 5.73vw;
  }
  #lafilletourdefer .product p {
    margin: 0 auto 6.4vw;
  }
  #lafilletourdefer .product .btn {
    width: 100%;
  }
  #lafilletourdefer .product .btn a {
    font-size: 4.66vw;
    padding: 3.93vw 0 3.53vw;
    transition: unset;
  }
  #lafilletourdefer .product .btn a::before {
    right: 4.93vw;
    width: 2vw;
    height: 2vw;
    transition: unset;
  }
}
