/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
*,
::before,
::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-style: solid;
  border-width: 0
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

body {
  margin: 0
}

main {
  display: block
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none
}

dt {
  font-weight: 700
}

dd {
  margin-left: 0
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit
}

pre {
  font-family: monospace, monospace;
  font-size: inherit
}

address {
  font-style: inherit
}

a {
  background-color: rgba(0, 0, 0, 0);
  text-decoration: none;
  color: inherit
}

abbr[title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: inherit
}

small {
  font-size: 80%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -.25em
}

sup {
  top: -.5em
}

svg,
img,
embed,
object,
iframe {
  vertical-align: bottom
}

button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: rgba(0, 0, 0, 0);
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit
}

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default
}

:-moz-focusring {
  outline: auto
}

select:disabled {
  opacity: inherit
}

option {
  padding: 0
}

fieldset {
  margin: 0;
  padding: 0;
  min-width: 0
}

legend {
  padding: 0
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

[type=number] {
  -moz-appearance: textfield
}

label[for] {
  cursor: pointer
}

details {
  display: block
}

summary {
  display: list-item
}

[contenteditable]:focus {
  outline: auto
}

table {
  border-color: inherit;
  border-collapse: collapse
}

caption {
  text-align: left
}

td,
th {
  vertical-align: top;
  padding: 0
}

th {
  text-align: left;
  font-weight: 700
}
/* ------------------------------------ */
/* common */
html {
  font-size: 62.5%;
  color: #222;
  font-family: "Noto Serif JP", serif;
  /* font-weight: 400; */
  font-weight: 500;
  line-height: 1.5
}

@media(min-width:768px) {
  html {
    font-size: 50%
  }
}

@media(min-width:1101px) {
  html {
    font-size: 62.5%
  }
}

body {
  font-size: 1.4rem;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

body.-is-fixed {
  overflow: hidden
}

:focus-visible {
  outline-color: red;
  outline-offset: 3px
}

img {
  display: block;
  vertical-align: bottom;
  width: 100%;
  height: auto
}

.-d-ib {
  display: inline-block
}

@media(min-width:768px) {
  .-sp-only {
    display: none
  }
}

.-pc-only {
  display: none
}

@media(min-width:768px) {
  .-pc-only {
    display: block
  }
}

.-pc-only-i {
  display: none
}

@media(min-width:768px) {
  .-pc-only-i {
    display: inline
  }
}

.wrap {
  width: 100%;
  overflow-x: hidden;
  overflow-x: clip;
  background: url(../img/bg1.jpg) repeat center top/250px auto
}

@media(min-width:768px) {
  .wrap {
    background-size: 500px auto
  }
}

.-inner-s {
  display: block;
  width: 90%;
  margin-inline: auto
}

@media(min-width:768px) {
  .-inner-s {
    width: 96%;
    max-width: 1100px
  }
}

.-inner-l {
  display: block;
  width: 90%;
  margin-inline: auto
}

@media(min-width:768px) {
  .-inner-l {
    width: 96%;
    max-width: 1280px
  }
}

.-c-gold {
  color: #856322
}

/* ------------------------------------ */
/* KV */
.kv {
  position: relative
}

@media(min-width:768px) {
  .kv {
    max-width: 1920px;
    margin: auto
  }
}

.kv__logo {
  display: block;
  width: 32%;
  position: absolute;
  top: 5vw;
  left: 5vw
}

@media(min-width:768px) {
  .kv__logo {
    width: 15.625%;
    position: absolute;
    top: 5.7142857143%;
    left: 2.0833333333%
  }
}

.kv__bottom {
  background: #a08653;
  color: #fff;
  padding: 18px 0
}

.kv__text {
  font-size: 1.5rem;
  width: fit-content;
  margin: 0 auto;
  padding: 0 5%;
}

@media(min-width:768px) {
  .kv__text {
    font-size: 1.9rem;
    letter-spacing: -.015em;
    padding: 0 2%;
  }
}

/* ------------------------------------ */
/* lead */
.lead {
  padding: 45px 0;
  font-size: 1.5rem;
  line-height: 1.66
}

@media(min-width:768px) {
  .lead {
    padding: 60px 0;
    font-size: 1.8rem
  }
}
.lead .-color {
  color: #57122A;
  font-weight: 600;
}
/* ------------------------------------ */
/* about：どうしよう */
.about {
  position: relative;
  padding: 45px 0;
  background: url(../img/bg-glass1-sp.jpg) no-repeat center/cover
}

@media(min-width:768px) {
  .about {
    /* padding: 70px 0 90px; */
    padding: 70px 0;
    background-image: url(../img/bg-glass1-pc.jpg)
  }
}

.about::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#af8e3e), color-stop(#fff9c4), to(#b79a60));
  background: linear-gradient(to right, #af8e3e, #fff9c4, #b79a60);
  mix-blend-mode: multiply;
  position: absolute;
  left: 0;
  top: 0
}

.about__border {
  height: 5px;
  background: -webkit-gradient(linear, left top, right top, from(#BA892A), color-stop(#F1D872), to(#BA892A));
  background: linear-gradient(to right, #BA892A, #F1D872, #BA892A)
}

@media(min-width:768px) {
  .about__border {
    height: 10px
  }
}
.about__border.-margin {
  margin-top: 45px;
}

@media(min-width:768px) {
  .about__border.-margin {
    margin-top: 90px;
  }
}
/* ------------------------------------ */
/* タイトル：学び、飲み、応援する～様々なイベントを開催！ */
.about__title {
  position: relative;
  color: #fff;
  text-align: center;
  font-family:"Shippori Mincho", serif; /*スペース入れない？*/
  padding: 0 3%
}

@media(min-width:768px) {
  .about__title {
    padding: 0 10px;
    margin-inline: auto;
    width: 96%;
    max-width: 1280px
  }
}

.about__title::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #856322;
  mix-blend-mode: multiply;
  position: absolute;
  left: 0;
  top: 0
}

.about__titleInner {
  position: relative;
  display: inline-block;
  padding: 10px 34px 15px;
  padding: 10px 0 15px;
  /* background: url(../img/icon-wine.svg) no-repeat left bottom 15px/24px auto, url(../img/icon-wine.svg) no-repeat right bottom 15px/24px auto */
}

@media(min-width:768px) {
  .about__titleInner {
    padding: 12px 5vw;
    background: url(../img/icon-wine.svg) no-repeat left center/3.5vw auto, url(../img/icon-wine.svg) no-repeat right center/3.5vw auto;
  }
}

@media(min-width:1101px) {
  .about__titleInner {
    padding: 12px 66px;
    background: url(../img/icon-wine.svg) no-repeat left center/36px auto, url(../img/icon-wine.svg) no-repeat right center/36px auto;
  }
}
.about__titleSub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 1.9rem;
  font-weight: 600;
  letter-spacing: -.015em;
  margin-bottom: 0.4em;
}

@media(min-width:768px) {
  .about__titleSub {
    font-size: 3rem;
    margin-bottom: 0;
  }
}

.about__titleSub::before,
.about__titleSub::after {
  content: "";
  display: block;
  height: 1.4em;
  aspect-ratio: 1;
  background: url(../img/icon-wine.svg) no-repeat center/contain;
  flex-shrink: 0;
}
.about__titleSub::before {
  background-position: left center;
}
.about__titleSub::after {
  background-position: right center;
}
@media(min-width:768px) {
  .about__titleSub::before,
  .about__titleSub::after {
    width: 1.4em;
    height: 2px;
    aspect-ratio: auto;
    background: currentColor;
  }
  
  .about__titleSub::before {
    -webkit-transform: rotate(56deg);
    transform: rotate(56deg);
    margin-right: 10px
  }
  
  .about__titleSub::after {
    -webkit-transform: rotate(123deg);
    transform: rotate(123deg);
    margin-left: 10px
  }
}

.about__titleMain {
  display: block;
  font-size: 2.3rem;
  font-size: 1.9rem;
  line-height: 1.4;
  font-weight: 700
}

@media(min-width:768px) {
  .about__titleMain {
    font-size: 3.2rem;
    font-size: 3rem;
  }
}
.about__titleMain .-thin{
  font-weight: 400;
}
/* ------------------------------------ */
/* about：コンテンツ */
.about__inner {
  position: relative;
  margin-top: 18px
}

.aboutBox {
  background: rgba(255, 255, 255, .9);
  -webkit-box-shadow: 3px 3px 3px rgba(0, 0, 0, .2);
  box-shadow: 3px 3px 3px rgba(0, 0, 0, .2);
  padding: 4px
}

@media(min-width:768px) {
  .aboutBox {
    -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, .2);
    box-shadow: 5px 5px 5px rgba(0, 0, 0, .2);
    padding: 10px
  }
}

.aboutBox:not(:first-child) {
  margin-top: 45px
}

@media(min-width:768px) {
  .aboutBox:not(:first-child) {
    margin-top: 70px
  }
}

.aboutBox__Border {
  padding: 3px;
  border: 2px solid #a08653
}

@media(min-width:768px) {
  .aboutBox__Border {
    padding: 5px
  }
}

.aboutBox__Border--in {
  border: 1px solid #a08653;
  padding: 26px 0
}

@media(min-width:768px) {
  .aboutBox__Border--in {
    padding: 42px 0
  }
}

.aboutBox__inner.-inner-s {
  width: 95%
}

.aboutBox__inner.--02 {
  margin-top: 45px
}

@media(min-width:768px) {
  .aboutBox__inner.--02 {
    margin-top: 70px
  }
}

/* .aboutBox__inner.--03 {
  border-top: 1px solid #a08653;
  padding-top: 36px;
  margin-top: 36px
}

@media(min-width:768px) {
  .aboutBox__inner.--03 {
    margin-top: 50px
  }
} */

.aboutBox__title {
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  letter-spacing: -.015em;
  color: #856322;
  text-align: center;
  font-size: 2.1rem;
  margin-bottom: 10px
}

@media(min-width:768px) {
  .aboutBox__title {
    font-size: 3.2rem;
    margin-bottom: 28px
  }
}

.aboutBox__title .-ls-s {
  letter-spacing: -.04em
}

.aboutBox__title .-q {
  letter-spacing: -.4em
}

.aboutBox__title.--04::after {
  content: "";
  display: inline-block;
  aspect-ratio: 1;
  height: 1em;
  background: url(../img/icon-recycle.svg) no-repeat center/contain;
  -webkit-transform: translate(25%, 12%);
  transform: translate(25%, 12%)
}

.aboutBox__text {
  font-size: 1.5rem;
  line-height: 1.66;
  /* word-break: break-all */
}

.aboutBox__text01 {
  font-size: 1.4rem;
  margin-bottom: 20px;
  font-weight: 500
}

@media(min-width:768px) {
  .aboutBox__text {
    font-size: 1.8rem
  }

  .aboutBox__text01 {
    font-size: 2.4rem;
    margin-bottom: 20px;
    font-weight: 500
  }
}

.aboutBox__text a {
  text-decoration: underline;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}

@media(hover:hover) {
  .aboutBox__text a:hover {
    opacity: .7
  }
}

.aboutBox__text .-c-gold {
  font-weight: 600
}

.aboutBox__text .-ls-s {
  letter-spacing: -.04em
}
.aboutBox__text .-txt-s {
  font-size: 0.9em;
}
.aboutBox__text .-mt {
  display: inline-block;
  margin-top: 1em;
}

@media(min-width:768px) {
  .aboutBox__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

@media(min-width:768px) {
  .aboutBox__flex .aboutBox__left {
    margin-right: 20px
  }
}

@media(min-width:1101px) {
  .aboutBox__flex .aboutBox__left {
    margin-right: 70px
  }
}

.aboutBox__img {
  margin-top: 18px
}

@media(min-width:768px) {
  .aboutBox__img {
    margin-top: 0;
    max-width: 420px;
    width: 50%;
    -ms-flex-negative: 0;
    flex-shrink: 0
  }
}

.aboutBox__img p {
  font-size: 1.4rem;
  letter-spacing: -.015em;
  padding-top: .5em
}
/* ------------------------------------ */
/* 共通ボタン */
.button {}
@media(min-width:768px) {
  .button {
    text-align: center
  }
}

.button a.-linkbtn,
.button button {
  width: 100%;
  font-size: 1.4rem;
  line-height: 1.3;
  font-weight: 600;
  min-height: 48px;
  padding: 3px 29px 3px 16px;
  /* word-break: break-all; */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  -webkit-box-shadow: 3px 3px 3px rgba(0, 0, 0, .3);
  box-shadow: 3px 3px 3px rgba(0, 0, 0, .3);
  background: #692137 url(../img/button-arrow.svg) no-repeat right 16px center/9px auto;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
  letter-spacing: 0.04em;
}
.button a.-linkbtn:where(.-wine *),
.button button:where(.-wine *) {
  background-image: url(../img/icon-wine.svg);
  /* background-position: right 16px center; */
  /* background-size: 9px auto */
}
.button a.-linkbtn.-nolink {
  pointer-events: none;
}
@media(hover:hover) {

  .button a.-linkbtn:hover,
  .button button:hover {
    background-color: #a08653
  }
}

@media(min-width:768px) {

  .button a.-linkbtn,
  .button button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: auto;
    font-size: 2.3rem;
    min-height: 3.2em;
    padding: 3px 2.1em 3px 1.3em;
    -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, .3);
    box-shadow: 5px 5px 5px rgba(0, 0, 0, .3);
    background-position: right 0.86em center;
    background-size: 0.52em auto
  }
  .button a.-linkbtn:where(.-wine *),
  .button button:where(.-wine *) {
    background-position: right 1.13em center;
    background-size: 0.65em auto;
  }
}

.button__note {
  margin-bottom: 10px;
  font-size: 1.3rem;
  text-align: center;
}

@media(min-width:768px) {
  .button__note {
    font-size: 1.5rem;
    line-height: 1.66
  }
}

.button a.-linkbtn+.button__note {
  margin-bottom: 0;
  margin-top: 10px
}
.button__note a {
  text-decoration: underline;
  color: #57122A;
  font-weight: 600;
}
/* モーダル表示ボタン：エリア内レストラン提供ワインリスト */
.button.-wine {
  margin-top: 10px
}

@media(min-width:768px) {
  .button.-wine {
    margin-top: 20px
  }
}

@media(min-width:768px) {
  .button.-wine button {
    min-width: 50rem
  }
}

/* 各セクションボタン */
.button.-sec {
  margin-top: 36px
}
.button.-sec + .button.-sec {
  margin-top: 20px;
}
@media(min-width:768px) {
  .button.-sec {
    margin-top: 6rem
  }
}
.button.-sec a {

}
@media(min-width:768px) {
  .button.-sec a {
    min-width: 40rem;
  }
}
/* aboutボタン */
.button.-about {
  margin-top: 36px
}
@media(min-width:768px) {
  .button.-about {
    /* margin-top: 70px */
    margin-top: 2rem;
  }
}
/* ------------------------------------ */
/* アンカーリンク */
.headline {
  padding-top: 30px
}

@media(min-width:768px) {
  .headline {
    padding-top: 60px
  }
}
.headline__list {
  /* padding-top: 10px */
  margin-top: -20px;
}

@media(min-width:768px) {
  .headline__list {
    /* padding-top: 20px; */
    /* margin-inline: -20px; */
    margin-top: -40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}

.headline__item {
  margin-top: 20px
}

@media(min-width:768px) {
  .headline__item {
    margin-top: 40px;
    margin-inline: 1%;
    width: fit-content;
    max-width: 100%;
  }
}

.headline__link {
  border: 1px solid;
  display: block;
  color: #57122a;
  font-size: 1.3rem;
  letter-spacing: -.015em;
  font-weight: 600;
  line-height: 1.2;
  -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, .3);
  box-shadow: 2px 2px 2px rgba(0, 0, 0, .3);
  background: -webkit-gradient(linear, left top, right top, from(#f8eb8c), color-stop(50%, #f8eb8c), to(#c89d47));
  background: linear-gradient(to right, #f8eb8c, #f8eb8c 50%, #c89d47);
  height: 100%;
}
@media(min-width:768px) {
  .headline__link {
    font-size: 2rem;
    -webkit-box-shadow: 3px 3px 3px rgba(0, 0, 0, .3);
    box-shadow: 3px 3px 3px rgba(0, 0, 0, .3);
  }
}
@media(min-width:1101px) {
  .headline__link {
    font-size: 2.1rem;
  }
}

.headline__link div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  background-color: #fff;
  padding: 3px 18px 3px 40px; /* icon-map-bg のtranslateX */
  min-height: 46px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
  position: relative;
  overflow: hidden;
  height: 100%;
}

@media(hover:hover) {
  .headline__link div:hover {
    background-color: rgba(0, 0, 0, 0)
  }
}

@media(min-width:768px) {
  .headline__link div {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: left;
    padding-left: 60px; /* icon-map-bg のtranslateX */
    padding-right: 3em;
    min-height: 3.5em
  }
  /* .headline__link div:where(.-wide *) {
    padding-right: 20px;
  } */
}
@media(min-width:1101px) {
  .headline__link div {
    padding-left: 85px; /* icon-map-bg のtranslateX */
  }
}
.headline__link div::after {
  content: "";
  display: block;
  width: 9px;
  aspect-ratio: 1;
  border-right: 1px solid;
  border-bottom: 1px solid;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-60%) rotate(45deg);
}
@media(min-width:768px) {
  .headline__link div::after {
    width: 0.65em;
    border-right: 2px solid;
    border-bottom: 2px solid;
    right: 0.8em;
  }
}
.headline__link .-num {
  font-size: 1.8rem;
  line-height: 1;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translate(0,-50%);
}
@media(min-width:768px) {
  .headline__link .-num {
    font-size: 3.6rem;
    left: 14px;
  }
}
@media(min-width:1101px) {
  .headline__link .-num {
    font-size: 3.6rem;
    left: 24px;
  }
}
.headline__link div::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 100%;
  transform: translate(40px,-50%);
  height: calc(100% + 4px);
  background: url(../img/icon-map-bg.svg) no-repeat right center/auto 100%;
  aspect-ratio: 85/75;/* icon-map-bg.svg */
}
@media(min-width:768px) {
  .headline__link div::before {
    transform: translate(60px,-50%);
  }
}
@media(min-width:1101px) {
  .headline__link div::before {
    transform: translate(80px,-50%);
  }
}

.headline__link .-tag {
  /* 完売しました、応募受付終了 */
  display: inline-block;
  background: #57122a;
  color: #fff;
  padding: 2px 4px;
  transform: translateY(-4px);
  font-size: 1.1rem;
  letter-spacing: .1em
}

@media(min-width:768px) {
  .headline__link .-tag {
    font-size: .8em
  }
}
.headline__link .-small {
  font-size: 0.9em;
}
/* ------------------------------------ */
.anchor {
  height: 1px;
}
/* セクション */
.sec {
  position: relative;
  background: rgba(255, 255, 255, .7);
  margin-top: 45px
}

@media(min-width:768px) {
  .sec {
    margin-top: 90px
  }
}

.sec::before,
.sec::after {
  content: "";
  display: block;
  width: 100%;
  height: 4px;
  background: -webkit-gradient(linear, left top, right top, from(#BA892A), color-stop(#F1D872), to(#BA892A));
  background: linear-gradient(to right, #BA892A, #F1D872, #BA892A)
}

@media(min-width:768px) {

  .sec::before,
  .sec::after {
    height: 7px
  }
}

.sec::before {
  margin-bottom: 50px
}

@media(min-width:768px) {
  .sec::before {
    margin-bottom: 70px
  }
}

.sec::after {
  margin-top: 45px
}

@media(min-width:768px) {
  .sec::after {
    margin-top: 70px
  }
}

.sec__number {
  width: 40px;
  position: absolute;
  top: 0;
  left: 2.9673590504%
}

@media(min-width:768px) {
  .sec__number {
    min-width: 40px;
    width: 7.03125%;
    max-width: 100px;
    left: 20px
  }
}

/* セクション：タイトル前の塗りつぶし */
.sec__tag {
  text-align: center;
  margin-bottom: 10px
}

@media(min-width:768px) {
  .sec__tag {
    margin-bottom: 20px
  }
}
.sec__tag.-subTitle {
  margin-top: 30px;
}
@media(min-width:768px) {
.sec__tag.-subTitle {
  margin-top: 50px;
}
}
.sec__tag span {
  color: #fff;
  background: #692137;
  font-size: 1.4rem;
  letter-spacing: .04em;
  display: inline-block;
  padding: 5px 20px
}

@media(min-width:768px) {
  .sec__tag span {
    font-size: 2rem;
    padding: 5px 40px
  }
}

/* セクション：タイトル */
.sec__title {
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  text-align: center;
  color: #856322;
  font-size: 2.1rem;
  letter-spacing: -.015em;
  line-height: 1.3;
}

@media(min-width:768px) {
  .sec__title {
    font-size: 3.2rem
  }
}
/* セクション：一部のサブタイトル */
.sec__subTitle {
  position: relative;
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  text-align: center;
  color: #fff;
  background: #A08653;
  font-size: 1.6rem;
  letter-spacing: -.015em;
  line-height: 1.46;
  margin-top: 30px;
  padding: 0.25em 0.5em;
}
@media(min-width:768px) {
  .sec__subTitle {
    font-size: 2.8rem;
    margin-top: 40px;
    padding: 0.44em calc(80/28 * 1em + 0.7em);
  }
  .sec__subTitle::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0.7em,-50%);
    display: block;
    width: calc(80/28 * 1em);
    aspect-ratio: 1;
    background: no-repeat center/contain;
  }
  .sec__subTitle.--01::before {
    background-image: url(../img/icon-sealingwax-1.svg);
  }
  .sec__subTitle.--02::before {
    background-image: url(../img/icon-sealingwax-2.svg);
  }
  .sec__subTitle.--03::before {
    background-image: url(../img/icon-sealingwax-3.svg);
  }
}
.sec__subTitle:where(.sec__tag + *) {
  margin-top: 0;
}
/* セクション：一部の区切り線・余白用 */
.sec__line--margin {
  color: transparent;
}
@media(min-width:768px) {
  .sec__line--margin {
    margin-bottom: 70px;
  }
}
/* セクション：概要の表 */
.sec__info {
  margin: 18px auto 0;
  border-bottom: 1px solid #a08653;
  width: 100%;
}

@media(min-width:768px) {
  .sec__info {
    margin-top: 25px;
    width: auto
  }
}

.sec__info tr {
  border-top: 1px solid #a08653;
  line-height: 1.3;
  font-size: 1.4rem
}

@media(min-width:768px) {
  .sec__info tr {
    font-size: 2rem
  }
}

.sec__info th {
  /* word-break: break-all; */
  background: #e5ded0;
  font-weight: 500;
  letter-spacing: -.04em;
  text-align: center;
  vertical-align: middle;
  padding: 2px 4px;
  width: 5em
}

@media(min-width:768px) {
  .sec__info th {
    padding: 6px 10px
  }
}

.sec__info td {
  /* word-break: break-all; */
  padding: 2px 8px;
  vertical-align: middle
}

@media(min-width:768px) {
  .sec__info td {
    padding: 6px 12px
  }
}
.sec__info td .-flex {
  display: flex;
  flex-wrap: wrap;
}
@media(min-width:768px) {
  .sec__info td .-pc-nowrap {
    flex-wrap: nowrap;
  }
}
.sec__info td .-shrink0 {
  flex-shrink: 0;
}
.sec__info a {
  text-decoration: underline;
}
.sec__info a:hover {
  opacity: 0.7;
}
/* セクション：本文 */
.sec__text {
  margin-top: 30px;
  font-size: 1.5rem;
  line-height: 1.66;
  letter-spacing: -.015em;
  /* word-break: break-all; */
}

@media(min-width:768px) {
  .sec__text {
    margin-top: 40px;
    font-size: 1.8rem;
    max-width: 900px;
    margin-inline: auto;
  }
  .sec__text.-full {
    max-width: none;
  }
  .sec__text.-ta-c {
    text-align: center;
  }
}

.sec__text a {
  text-decoration: underline;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}

@media(hover:hover) {
  .sec__text a:hover {
    opacity: .7
  }
}

.sec__text .-c-gold {
  font-weight: 600
}
.sec__text b {
  font-weight: 700
}
.sec__text .-flex {
  display: flex;
  flex-wrap: wrap;
}
.sec__text .-flex.-nowrap {
  flex-wrap: nowrap;
}
.sec__text .-shrink0 {
  flex-shrink: 0;
}
/* セクション：画像 */
.sec__flex {
  margin-top: 30px;
}
.sec__flex + .sec__flex {
  margin-top: 10px;
}
@media(min-width:768px) {
  .sec__flex {
    margin-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 900px;
    margin-inline: auto
  }
  .sec__flex + .sec__flex {
    margin-top: 40px;
  }
  .sec__flex.-col1 {
    max-width: 560px;
  }
  .sec__flex.-col3 {
    max-width: none
  }
}

@media(min-width:768px) {
  .sec__flex.-col2>* {
    max-width: 430px;
    width: 47.7777777778%
  }

  .sec__flex.-col3>* {
    width: 31.777778%
  }
}

.sec__flex>*:not(:first-child) {
  margin-top: 10px
}

@media(min-width:768px) {
  .sec__flex>*:not(:first-child) {
    margin-top: 0
  }
  .sec__flex.-col2>*:nth-child(n+3) {
    margin-top: 40px;
  }
  .sec__flex.-col3>*:nth-child(n+4) {
    margin-top: 30px;
  }
}

/* セクション：リストの表 */
.sec__scrollArea {
  width: 100%;
  overflow: auto;
  margin-top: 30px
}

@media(min-width:768px) {
  .sec__scrollArea {
    margin-top: 40px
  }
}

.sec__table {
  width: auto;
  border: 1px solid #a08653;
  background: #fff;
  min-width: 100%;
}

.sec__table tr {
  line-height: 1.2
}

.sec__table tr:not(:first-child) {
  border-top: 1px solid #a08653
}

.sec__table tr:nth-child(2n-1) {
  background: #f4f2ec
}

.sec__table tr::before {
  content: "";
  display: block;
  float: left;
  height: 30px
}

@media(min-width:768px) {
  .sec__table tr::before {
    height: 36px
  }
}

.sec__table th,
.sec__table td {
  white-space: nowrap;
  vertical-align: middle;
  padding: 2px 10px
}

@media(min-width:768px) {

  .sec__table th,
  .sec__table td {
    padding: 2px 12px
  }
}

.sec__table th {
  color: #fff;
  background: #a08653;
  text-align: center;
  font-weight: 600;
  font-size: 1.3rem
}

@media(min-width:768px) {
  .sec__table th {
    font-size: 1.5rem
  }
}

.sec__table th:not(:first-child) {
  border-left: 1px solid #fff
}

.sec__table td {
  font-size: 1.3rem;
  font-weight: 500
}

@media(min-width:768px) {
  .sec__table td {
    font-size: 1.5rem
  }
}

.sec__table td:not(:first-child) {
  border-left: 1px solid #a08653
}

.sec__table a {
  text-decoration: underline;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}

@media(hover:hover) {
  .sec__table a:hover {
    opacity: .7
  }
}

.sec__table .-tac {
  text-align: center
}

/* ------------------------------------ */
/* セクション：スライド */
.thumbnail__slideArea {
  position: relative;
}

.thumbnail__slideArea .swiper-button-prev,
.thumbnail__slideArea .swiper-button-next {
  position: absolute;
  top: 0;
  width: 18px;
  height: 100%;
  margin-top: 0
}

@media(min-width:1101px) {

  .thumbnail__slideArea .swiper-button-prev,
  .thumbnail__slideArea .swiper-button-next {
    width: 42px
  }
}

.thumbnail__slideArea .swiper-button-prev::after,
.thumbnail__slideArea .swiper-button-next::after {
  content: none
}

.thumbnail__slideArea .swiper-button-prev::before,
.thumbnail__slideArea .swiper-button-next::before {
  content: "";
  display: block;
  width: 18px;
  height: 18px
}

@media(min-width:1101px) {

  .thumbnail__slideArea .swiper-button-prev::before,
  .thumbnail__slideArea .swiper-button-next::before {
    width: 42px;
    height: 42px
  }
}

.thumbnail__slideArea .swiper-button-prev {
  left: 0;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%)
}

.thumbnail__slideArea .swiper-button-prev::before {
  border-top: 2px solid #856322;
  border-left: 2px solid #856322;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.thumbnail__slideArea .swiper-button-next {
  right: 0;
  -webkit-transform: translateX(100%);
  transform: translateX(100%)
}

.thumbnail__slideArea .swiper-button-next::before {
  border-top: 2px solid #856322;
  border-right: 2px solid #856322;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.thumbnail__slide {
  margin-top: 30px
}

@media(min-width:768px) {
  .thumbnail__slide {
    margin-top: 40px
  }
}

/* .thumbnail__slide .swiper-slide {
  cursor: pointer
}
.thumbnail__slide .swiper-slide:hover {
  opacity: 0.7;
} */
/* ------------------------------------ */
/* 登壇者 */
.speakerTitle {
  margin-top: 45px;
  text-align: center;
  font-size: 2.4rem;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
  color: #856322;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

@media(min-width:768px) {
  .speakerTitle {
    margin-top: 70px;
    font-size: 3.2rem
  }
}

.speakerTitle::before,
.speakerTitle::after {
  content: "";
  display: block;
  width: 50%;
  height: 1px;
  background: currentColor
}

@media(min-width:768px) {

  .speakerTitle::before,
  .speakerTitle::after {
    max-width: 130px
  }
}

.speakerTitle span {
  display: inline-block;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 0 15px
}

@media(min-width:768px) {
  .speakerTitle span {
    padding: 0 20px
  }
}

.speakerFlex {
  margin-top: 30px;
}

@media(min-width:768px) {
  .speakerFlex {
    margin-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
  }
  .speakerFlex.-col1 {
    justify-content: center;
  }
  .speakerFlex.-col2 {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
}
.speakerBox  + .speakerBox {
  margin-top: 20px;
}
@media(min-width:768px) {
  .speakerBox  + .speakerBox {
    margin-top: 0;
  }
  .speakerBox:where(.-col1 *) {
    width: 100%;
    max-width: 900px;
  }
  .speakerBox:where(.-col2 *) {
    width: 48%;
    max-width: 515px
  }
  .speakerBox:where(.-col2 *):nth-child(n+3) {
    margin-top: 40px;
  }
}

@media(min-width:1101px) {
  .speakerBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .speakerBox:where(.-col1 *) {
    justify-content: center;
  }
}

.speaker:not(:first-child) {
  margin-top: 45px
}

@media(min-width:768px) {
  .speaker:not(:first-child) {
    margin-top: 0
  }
}

.speakerImg {
  max-width: 200px;
  margin: 0 auto
}

@media(min-width:1101px) {
  .speakerImg {
    margin: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 38.8349514563%
  }
}

.speakerProfile {
  margin-top: 10px;
  font-size: 1.5rem;
  line-height: 1.66;
  letter-spacing: -.015em;
  /* word-break: break-all */
  min-width: 0;
}

@media(min-width:768px) {
  .speakerProfile {
    font-size: 1.8rem
  }
}

@media(min-width:1101px) {
  .speakerProfile {
    padding-left: 5%;
    margin-top: 0
  }
}

.speakername {
  display: block;
  margin-bottom: 10px;
  font-size: 2.5rem;
  text-align: center;
  font-weight: 600;
  color: #57122a;
  line-height: 1.5;
}

@media(min-width:1101px) {
  .speakername {
    text-align: left
  }
}
.speakername .-small {
  font-size: 0.7em;
  display: block;
}
.sec__scrollArea {
  max-height: 380px
}

/* ------------------------------------ */
/* イベント開催概要 */
.outline {
  background: url(../img/bg-glass2-sp.jpg) no-repeat center/cover;
  position: relative;
  padding: 45px 0;
  /* margin-top: 45px */
}

@media(min-width:768px) {
  .outline {
    background-image: url(../img/bg-glass2-pc.jpg);
    padding: 70px 0;
    /* margin-top: 90px */
  }
}

.outline__inner {
  position: relative;
  background: rgba(255, 255, 255, .9);
  padding: 45px 5%
}

@media(min-width:768px) {
  .outline__inner {
    padding: 40px 2%
  }
}

.outline__title {
  text-align: center;
  color: #856322;
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  font-size: 2.1rem
}

@media(min-width:768px) {
  .outline__title {
    font-size: 3.2rem
  }
}

.outline__table {
  margin: 30px auto 0;
  border-bottom: 1px solid #a08653;
  width: 100%
}

@media(min-width:768px) {
  .outline__table {
    margin-top: 40px;
    width: auto;
    max-width: 1100px
  }
}

.outline__table tr {
  border-top: 1px solid #a08653;
  line-height: 1.3;
  font-size: 1.5rem;
  font-weight: 500
}

@media(min-width:768px) {
  .outline__table tr {
    font-size: 2rem
  }
}

.outline__table th {
  /* word-break: break-all; */
  background: #e5ded0;
  letter-spacing: -.04em;
  text-align: center;
  vertical-align: middle;
  padding: 8px 5px;
  width: 4em
}

@media(min-width:768px) {
  .outline__table th {
    min-width: 160px;
    padding: 15px 5px
  }
}

@media(min-width:768px) {
  .outline__table th span {
    display: inline-block;
    min-width: 3em;
    text-align: justify;
    -moz-text-align-last: justify;
    text-align-last: justify
  }
}

.outline__table td {
  /* word-break: break-all; */
  padding: 8px 8px;
  letter-spacing: -.04em;
  vertical-align: middle
}

@media(min-width:768px) {
  .outline__table td {
    padding: 15px 20px;
    line-height: 1.66
  }
}

/* ------------------------------------ */
/* フッター */
.footer {
  padding: 56px 5%;
  position: relative;
  background: url(../img/bg2.jpg) repeat center top/250px auto
}

@media(min-width:768px) {
  .footer {
    padding: 90px 10px;
    background-size: 500px auto
  }
}

.footer::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: -webkit-gradient(linear, left top, right top, from(#BA892A), color-stop(#F1D872), to(#BA892A));
  background: linear-gradient(to right, #BA892A, #F1D872, #BA892A);
  position: absolute;
  top: 0;
  left: 0
}

@media(min-width:768px) {
  .footer::before {
    height: 10px
  }
}

.footer__links {
  margin-inline: auto
}

@media(min-width:768px) {
  .footer__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    align-items: center
  }
}

.footer__links li {
  margin-inline: auto;
  width: 100%;
}

@media(min-width:768px) {
  .footer__links li {
    margin-inline: clamp(10px, 32/1920 * 100vw, 32px);
  }
}

.footer__links li {
  max-width: 210px
}

.footer__links li:not(:first-child) {
  margin-top: 30px
}

@media(min-width:768px) {
  .footer__links li:not(:first-child) {
    margin-top: 0
  }
}

.footer__links li.-maru {
  margin-top: 30px;
  max-width: 300px
}

@media(min-width:768px) {
  .footer__links li.-maru {
    margin-top: 0
  }
}

.footer__links a {
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}

@media(hover:hover) {
  .footer__links a:hover {
    opacity: .7
  }
}

.pagetop {
  position: fixed;
  z-index: 1001;
  overflow: hidden;
  border-radius: 50%;
  width: 45px;
  height: 45px;
  right: 10px;
  bottom: 68px;
  background: url(../img/return-sp.svg) no-repeat center/contain;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
  opacity: 0;
  pointer-events: none
}

@media(min-width:768px) {
  .pagetop {
    width: 70px;
    height: 70px;
    right: 30px;
    bottom: 88px;
    background-image: url(../img/return-pc.svg);
    -webkit-transition: opacity .3s, bottom .3s;
    transition: opacity .3s, bottom .3s
  }
}

.pagetop::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/return-pc-hover.svg) no-repeat center/contain;
  opacity: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}

@media(min-width:768px) {
  .pagetop:hover::after {
    opacity: 1
  }
}

.pagetop.-is-show {
  opacity: 1;
  pointer-events: auto
}

.pagetop.-is-bottom {
  position: absolute;
  bottom: 20px
}
.copyright {
  font-weight: 200;
  letter-spacing: .04em;
  text-align: center;
  color: #fff;
  background: #1a1a1a;
  font-size: 1.4rem;
  padding: 30px 5%
}

@media(min-width:768px) {
  .copyright {
    padding: 25px 10px
  }
}
/* ------------------------------------ */
/* グラスアイコン */
.sec__text .-glass {
  display: inline-block;
  background: url(../img/icon-wine-gold.svg) no-repeat left .2em center / auto 1.2em;
  padding-left: 1.2em;
  color: #856322;
  font-weight: 600
}

.sec__table td.-glass {
  background: url(../img/icon-wine-gold.svg) no-repeat right .8em center / auto 1.2em;
  padding-right: 2em
}
/* ------------------------------------ */
/* 追加：各所注釈 */
.others__note {
  font-size: 1.3rem;
}

@media(min-width:768px) {
  .others__note {
    font-size: 1.5rem;
    line-height: 1.66
  }
}