@charset "utf-8";

/***********
centerLine
************/

@media screen and (min-width:835px) {

  .centerLine{
    position: relative;
  }
  .centerLine::after{
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    left: calc(50% - 1px);
    top: 0;
    background-color: #8C7355;
    transform: scaleY(0);
    transform-origin: top;
    transition: transform 10s linear;
    z-index: 99;
  }
  .centerLine.is-show::after{
    transform: scaleY(1);
  }

}

/***********
conceptVisual
************/

.conceptVisual{
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1;
}

.conceptVisual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/***********
conceptWrapper
************/

.conceptWrapper {
  padding-top: 100vh;
  position: relative;
}
.conceptWrapper-inner {
  background-color: #f8f6ed;
  min-height: 2000px;
  position: relative;
  z-index: 2;
}

/***********
conceptHeader
************/


.conceptHeader {
  display: flex;
}
.conceptHeader-inner {
  width: 50%;
  position: relative;
  padding: 200px 4vw 200px;
}
.conceptHeader-title {
  font-family: futura-pt, sans-serif;
  font-size: 200%;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding-top: 2em;
  padding-bottom: 2em;
  position: absolute;
  left: 4vw;
  top: 0;
}
.conceptHeader-lead {
}
.conceptHeader-lead-subTitle {
  font-size: max(200%, 1.4vw);
  font-weight: 500;
  font-family: futura-pt, sans-serif;
  letter-spacing: 0.05em;
}
.conceptHeader-lead-title {
  font-size: max(200%, 1.8vw);
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  padding-top: 0.2em;
  letter-spacing: 0.05em;
}
.conceptHeader-box {
}

@media screen and (max-width:834px) {

  .conceptHeader {
    display: block;
    padding-bottom: 5em;
  }
  .conceptHeader-inner {
    width: auto;
    padding: 4em 5vw 0;
  }
  .conceptHeader-title {
    font-size: 154%;
    padding-top: 0;
    position: static;
  }
  .conceptHeader-lead-subTitle {
    font-size: max(154%, 1.2vw);
  }
  .conceptHeader-lead-title {
    font-size: max(170%, 4vw);
    padding-top: 0.5em;
  }
  .conceptHeader-box {
  }

}


/***********
conceptSection
************/

.conceptSection {
  width: 100%;
  padding-top: 3em;
  background-color: #f8f6ed;
  position: sticky;
  left: 0;
  top: 0;
  z-index: 1;
}
.conceptSection-num {
  position: absolute;
  right: 4vw;
  top: 0.2em;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-size: 139%;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
.conceptSection-container {
  display: flex;
  position: relative;
}

.conceptSection-inner {
  width: 50%;
  padding-left: calc(10em + 4vw);
  padding-right: 4vw;
}
.conceptSection-subTitle {
  font-family: futura-pt, sans-serif;
  font-size: 200%;
  font-weight: 500;
  letter-spacing: 0.05em;
  position: absolute;
  left: 4vw;
  top: 0;
  line-height: 1.4;
  white-space: nowrap;
}
.conceptSection-box {
}
.conceptSection-title {
  font-size: 185%;
  padding-bottom: 2em;
}
.conceptSection-lead {
  font-size: 154%;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  font-weight: 600;
  padding-bottom: 2em;
}
.conceptSection-link {
  padding-top: 3em;
}

.conceptSection-visual {
  width: 50%;
  padding: 6em 4vw 5em;
}
.conceptSection-img img {
}

.conceptSection:nth-child(1) { top: 50px;  }
.conceptSection:nth-child(2) { top: calc(0em  + 9em + 50px );  }
.conceptSection:nth-child(3) { top: calc(9em  + 9em + 50px );  }
.conceptSection:nth-child(4) { top: calc(18em + 9em + 50px );  }
.conceptSection:nth-child(5) { top: calc(27em + 9em + 50px );  }

@media screen and (max-width:1280px) {

  .conceptSection {
    padding-top: 2.7em;
  }

  .conceptSection:nth-child(1) { top: 50px;  }
  .conceptSection:nth-child(2) { top: calc(0em  + 8em + 50px );  }
  .conceptSection:nth-child(3) { top: calc(8em  + 8em + 50px );  }
  .conceptSection:nth-child(4) { top: calc(16em + 8em + 50px );  }
  .conceptSection:nth-child(5) { top: calc(24em + 8em + 50px );  }
}


@media screen and (max-width:1024px) {

  .conceptSection {
    padding-top: 2.7em;
    font-size: 93%;
  }
  .conceptSection-container {
    padding-bottom: 2em;
  }

  .conceptSection-inner {
    padding-top: 6em;
    padding-left: 4vw;
    padding-right: 4vw;
  }

}

@media screen and (max-width:834px) {

  .conceptSection {
    padding-top: 1.4em;
  }
  .conceptSection-num {
    right: 5vw;
    font-size: 77%;
  }
  .conceptSection-container {
    display: block;
  }

  .conceptSection-inner {
    width: auto;
    padding: 4em 5vw 0;
  }
  .conceptSection-subTitle {
    font-size: 131%;
    position: absolute;
    left: 5vw;
    top: 0;
  }
  .conceptSection-box {
  }
  .conceptSection-title {
    font-size: 170%;
    padding-bottom: 0.6em;
  }
  .conceptSection-lead {
    font-size: 139%;
    padding-bottom: 1em;
  }
  .conceptSection-visual {
    width: auto;
    padding: 2em 5vw 2em;
  }
  .conceptSection-img img {
    width: 100%;
    height: 40vmin;
    object-fit: cover;
  }

  .conceptSection:nth-child(1) { top: 50px;  }
  .conceptSection:nth-child(2) { top: calc(0em  + 4em + 50px );  }
  .conceptSection:nth-child(3) { top: calc(4em  + 4em + 50px );  }
  .conceptSection:nth-child(4) { top: calc(8em  + 4em + 50px );  }
  .conceptSection:nth-child(5) { top: calc(12em  + 4em + 50px );  }

}

/***********
floorHeader
************/

.floorHeader {
  position: relative;
  padding: 8em 0;
}
.floorHeader-block {
  position: absolute;
  left: 4vw;
  top: 5em;
  max-width: 400px;
  z-index: 2;
}
.floorHeader-title {
  font-family: futura-pt, sans-serif;
  font-size: 124%;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding-bottom: 1.5em;
}
.floorHeader-map {
  text-align: center;
  max-width: 1200px;
  width: 70%;
  margin: 0 auto;
}

@media screen and (max-width:834px) {


  .floorHeader {
    padding: 5em 0;
  }
  .floorHeader-block {
    position: static;
    padding: 0 5vw 3em;
    max-width: 600px;
  }
  .floorHeader-title {
    font-family: futura-pt, sans-serif;
    font-size: 124%;
    font-weight: 500;
    letter-spacing: 0.05em;
    padding-bottom: 1.5em;
  }

  .floorHeader-map {
    width: 100%;
    padding: 0 5vw;
  }

}



/***********
floorUpper
************/


.floorUpper{
  display: flex;
}
.floorUpper-visual {
  width: 50%;
}
.floorUpper-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.floorUpper-inner {
  width: 50%;
  padding: 5%;
}

@media screen and (max-width:834px) {

  .floorUpper{
    display: block;
  }
  .floorUpper-visual {
    width: auto;
    border-bottom: 1px solid #8C7355;
  }
  .floorUpper-inner {
    width: auto;
    padding: 8vw 5%;
  }
}



/***********
floorSection
************/


.floorSection {
  width: 100%;
}
.floorSection-container {
  display: flex;
  position: relative;
}

.floorSection-inner {
  width: 50%;
  padding-left: 4vw;
  padding-right: 4vw;
}
.floorSection-block {
  padding: 3em 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.floorSection-subTitle {
  font-family: futura-pt, sans-serif;
  font-size: 139%;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4;
  white-space: nowrap;
  color: #888;
  padding-bottom: 2em;
}
.floorSection-box {
  max-width: 500px;
}
.floorSection-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-bottom: 2em;
}
.floorSection-heading-subTitle {
  font-size: 200%;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  font-weight: 600;
  letter-spacing: 0.05em;
}
.floorSection-heading-title {
  font-size: 124%;
  padding-left: 3em;
}
.floorSection-link {
  padding-top: 5em;
}

.floorSection-visual {
  width: 50%;
  position: relative;
}
.floorSection-img img {
}


/*
slider
*/

.floorSlider {
  display: flex;
  counter-reset : dot_num;
  opacity: 0;
  transition: 0.1s;
}
.floorSlider.slick-initialized{
  opacity: 1;
}


.floorSlider-dots {
  position: absolute;
  right: 100%;
  bottom: 0;
  padding-right: 2em;
  padding-bottom: 3em;
}
.floorSlider-dots li {
  width: 36px;
  height: 36px;
  position: relative;
  cursor: pointer;
  border-radius: 50%;
  box-shadow: 0 0 0 1px #8c735532 inset;
  position: relative;
  transition: 0.3s;
  margin-top: 5px;
}
body.is-pc .floorSlider-dots li:hover {
  box-shadow: 0 0 0 1px #8C7355 inset;
}

.floorSlider-dots li::before{
  display: inline-block;
  counter-increment:dot_num;
  content: counter(dot_num);
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  color: #8C7355;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-size: 14px;
}

.floorSlider-dots li svg {
  transform: rotate(-90deg);
  position: absolute;
  left: 0;
  top: 0;
  z-index: 9;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: 0.3s;
  pointer-events: none;
  fill: transparent;
  stroke: #8C7355;
  stroke-width: 1;
  stroke-dasharray: 0 377;
  z-index: 99;
}

@keyframes anim-circle {
  0% { stroke-dasharray: 0 120; }
  99.9%,to { stroke-dasharray: 120 120; }
}

.floorSlider-dots .is-current svg {
  opacity: 1;
  animation: anim-circle 6s linear forwards;
}

@media screen and (max-width:1024px) {

  .floorSection-block {
    padding: 2em 0;
  }
  .floorSection-subTitle {
    font-size: 124%;
    padding-bottom: 1em;
  }
  .floorSection-heading {
    padding-bottom: 1em;
  }
  .floorSection-heading-subTitle {
    font-size: 154%;
  }
  .floorSection-heading-title {
    font-size: 100%;
    padding-left: 2em;
  }
  .floorSection-link {
    padding-top: 2em;
  }

}

@media screen and (max-width:834px) {

  .floorSection-container {
    display: block;
  }

  .floorSection-inner {
    width: auto;
    padding-left: 5vw;
    padding-right: 5vw;
  }
  .floorSection-block {
    padding: 4em 0 3em;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .floorSection-subTitle {
    font-size: 100%;
    padding-bottom: 1.5em;
  }
  .floorSection-box {
    max-width: initial;
  }
  .floorSection-heading {
    display: block;
    padding-bottom: 2em;
  }
  .floorSection-heading-subTitle {
    font-size: 154%;
  }
  .floorSection-heading-title {
    font-size: 100%;
    padding-left: 0;
  }
  .floorSection-link {
    padding-top: 2em;
  }

  .floorSection-visual {
    width: auto;
    padding: 0 5vw;
  }

  /*
  slider
  */


  .floorSlider-dots {
    position: static;
    right: 0;
    bottom: 0;
    padding: 0.5em 0 4em;
    display: flex;
    justify-content: center;
  }
  .floorSlider-dots li {
    transform: scale(0.8);
  }
}



/***********
pageHeading
************/

.pageHeading {
  padding-left: 4vw;
  border-bottom: 1px solid #8C7355;
  min-height: 13em;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.pageHeading-title {
  font-family: futura-pt, sans-serif;
  font-size: 200%;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.pageHeading-container{
  display: flex;
}
.pageHeading-heading{
  width: 20em;
}
.pageHeading-inner{
  flex: 1;
}

@media screen and (max-width:834px) {

  .pageHeading {
    padding-left: 5vw;
    min-height: 8.8em;
  }
  .pageHeading.is-separate {
    padding-top: 4em;
    padding-bottom: 4em;

  }
  .pageHeading-title {
    font-size: 170%;
  }

  .pageHeading-container{
    display: block;
  }
  .pageHeading-heading{
    width: auto;
  }
  .pageHeading-inner{
    flex: 1;
    padding-top: 2em;
  }
}

/***********
newsCat
************/

.newsCat{
  padding: 2em 4vw ;
  border-bottom: 1px solid #8C7355;
}

.newsCat-list {
  display: flex;
  flex-wrap: wrap;
}
.newsCat-list li {
  padding-right: 3em;
}
.newsCat-list a {
  font-family: futura-pt, sans-serif;
  font-size: 124%;
  font-weight: 500;
  letter-spacing: 0.05em;
  white-space: nowrap;
  color: inherit;
  text-decoration: none;
  opacity: 0.5;
}
.newsCat-list li.current-cat a,
body.is-pc .newsCat-list a:hover {
  opacity: 1;
}

@media screen and (max-width:834px) {

  .newsCat{
    padding: 1em 2vw 1em 5vw;
  }
  .newsCat-list li {
    padding-right: 1.5em;
  }
  .newsCat-list a {
    display: block;
    font-size: 108%;
    padding: 0.3em 0;
  }

}

/*

@media screen and (max-width:834px) {

  .newsCat{
    padding: 2em 5vw ;
    overflow: auto;
  }

  .newsCat-list {
    display: flex;
    flex-wrap: nowrap;
  }
  .newsCat-list li {
    padding-right: 2em;
  }
  .newsCat-list a {
    font-size: 116%;
  }


}
*/


/***********
newsList
************/

.newsList {
}
.newsList li {
  border-bottom: 1px solid #8C7355;
}
.newsList a {
  display: flex;
  color: inherit;
  text-decoration: none;
  position: relative;
  padding: 3em 10em 3em 4vw;
  position: relative;
    line-height: 1.8;
}
.newsList a::after {
  content: "";
  display: block;
  width: 2.6em;
  height: 1.3em;
  background: url(../../img/icon/arrow.png) no-repeat 0 0 / 100% 100%;
  position: absolute;
  right: 2em;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.4s;
}
.newsList-time {
  display: block;
  font-family: futura-pt, sans-serif;
  font-size: 108%;
  font-weight: 500;
  color: #888;
  width: 10em;
  letter-spacing: 0.05em;
  line-height: 1.8;
}
.newsList-cat {
  display: block;
  font-family: futura-pt, sans-serif;
  font-size: 108%;
  font-weight: 500;
  min-width: 10em;
  letter-spacing: 0.05em;
}
.newsList-title {
  flex: 1;
  font-size: 116%;
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  padding-left: 1em;
}

body.is-pc .newsList a:hover::after {
  right: 1em;
}

@media screen and (max-width:834px) {

  .newsList {
  }
  .newsList li {
  }
  .newsList a {
    display: block;
    padding: 2em 3em 2em 5vw;
  }
  .newsList a::after {
    width: 1.6em;
    height: 0.8em;
    right: 1em;
  }
  .newsList-time {
    display: inline-block;
    font-size: 85%;
    width: auto;
    min-width: initial;
    padding-right: 1em;
  }
  .newsList-cat {
    display: inline-block;
    font-size: 85%;
    min-width: initial;
  }
  .newsList-title {
    font-size: 108%;
    padding-left: 0;
    padding-top: 0.6em;
  }

  body.is-pc .newsList a:hover::after {
    right: 1em;
  }


}


/***********
pagination
************/

.pagination {
  display: flex;
  padding: 4em 4vw;
}

.pagination:empty {
  display: none;
}

.pagination span,
.pagination a {
  display: inline-block;
  width: 2.5em;
  height: 2.5em;
  line-height: 2.4em;
  border: 1px solid transparent;
  color:inherit;
  border-radius: 50%;
  text-decoration: none;
  text-align: center;
  font-family: futura-pt, sans-serif;
  font-size: 116%;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin: 0 5px;
}
.pagination span.dots{
  border-color: transparent;
}
.pagination span:not(.dots),
body.is-pc .pagination a:hover {
  border-color: inherit;
}

@media screen and (max-width:834px) {

  .pagination {
    justify-content: center;
  }

  .pagination span,
  .pagination a {
    font-size: 100%;
    margin: 0 2px;
  }

}


/***********
paging
************/


.paging {
  padding: 4em 0 4em 0;
  position: relative;
  max-width: 800px;
  margin-left: calc(4vw + 24em);
}
.paging a {
  display: inline-block;
  height: 2.5em;
  line-height: 2.4em;
  text-align: center;
  color:inherit;
  font-family: futura-pt, sans-serif;
  font-size: 116%;
  font-weight: 500;
  text-decoration: none;
  letter-spacing: 0.05em;
}
.paging-prev a,
.paging-next a{
  width: 2.5em;
  border: 1px solid transparent;
  border-radius: 50%;
}
body.is-pc .paging-prev a:hover,
body.is-pc .paging-next a:hover{
  border-color: inherit;
}


.paging-prev {
  position: absolute;
  left: 0;
  top: 4em;
}
.paging-next {
  position: absolute;
  right: 1em;
  top: 4em;
}
.paging-back {
  text-align: center;
}

@media screen and (max-width:1280px) {

  .paging {
    max-width: 800px;
    margin-left: calc(4vw + 18em);
  }

}

@media screen and (max-width:834px) {

  .paging {
    margin-left: 4vw;
    margin-right:4vw;
  }

}

/***********
innerBase
************/

.innerBase{
  padding-left: 4vw;
  padding-right: 4vw;
}

.innerBase.is-border{
  border-bottom: 1px solid #8C7355;
}
@media screen and (max-width:834px) {

  .innerBase{
    padding-left: 5vw;
    padding-right: 5vw;
  }
}

/***********
news
************/

.news {
  display: flex;
  padding-bottom: 50px;
}
.news-data {
  width: 24em;
  display: flex;
  padding-top: 0.2em;
  line-height: 1.8;
}
.news-data-time {
  display: block;
  font-family: futura-pt, sans-serif;
  font-size: 108%;
  font-weight: 500;
  color: #888;
  width: 10em;
  letter-spacing: 0.05em;
}
.news-data-cat {
  display: block;
  font-family: futura-pt, sans-serif;
  font-size: 108%;
  font-weight: 500;
  flex: 1;
  letter-spacing: 0.05em;
}
.news-inner {
  flex: 1;
  max-width: 800px;
}
.news-title {
  font-size: 139%;
  line-height: 1.8;
  padding-bottom: 2em;
}

@media screen and (max-width:1024px) {

  .news-data {
    width: 18em;
  }
  .news-data-time {
    width: 8em;
  }
  .news-data-cat {
  }

}


@media screen and (max-width:834px) {

  .news {
    display: block;
    padding-bottom: 30px;
  }
  .news-data {
    width: auto;
    display: flex;
    padding-top: 0;
    padding-bottom: 1.2em;
  }
  .news-data-time {
    display: inline-block;
    font-size: 100%;
    width: auto;
    padding-right: 1em;
  }
  .news-data-cat {
    display: inline-block;
    font-size: 100%;
    width: auto;
  }
  .news-inner {
  }
  .news-title {
    font-size: 124%;
  }

}



/***********
accessTable
************/

.accessTable{
  font-size: 116%;
  line-height: 1.8;
}
.accessTable th{
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  vertical-align: top;
  text-align: left;
  padding: 0 0 0.6em 0;
  width: 8em;
}
.accessTable td{
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  vertical-align: top;
  text-align: left;
  padding: 0 0 0.6em 0;
}

@media screen and (max-width:834px) {

  .accessTable{
    font-size: 93%;
  }
  .accessTable th{
    width: 6em;
  }
  .accessTable td{
    padding: 0 0 0.6em 0;
  }

}

/***********
conduct
************/

.conduct {
  display: flex;
}
.conduct-heading {
  width: 20em;
}
.conduct-heading-title {
  font-size: 124%;
}

.conduct-inner {
  flex: 1;
}

.conduct-table {
  font-size: 116%;
  line-height: 1.8;
}
.conduct-table th {
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  vertical-align: top;
  text-align: left;
  padding: 0 0 1.5em 0;
  width: 10em;
}
.conduct-table td {
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  vertical-align: top;
  text-align: left;
  padding: 0 0 1.5em 0;
}

@media screen and (max-width:834px) {

  .conduct {
    display: block;
  }
  .conduct-heading {
    width: auto;
    padding-bottom: 3em;
  }
  .conduct-heading-title {
    font-size: 116%;
  }

  .conduct-inner {
    flex: 1;
  }

  .conduct-table{
    font-size: 93%;
  }
  .conduct-table th{
    width: 10em;
  }
  .conduct-table td{
    padding: 0 0 1em 0;
  }


}





/***********
pageSummary
************/

.pageSummary {
  max-width: 1000px;
}
.pageSummary-title {
  font-size: 139%;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding-bottom: 0.8em;
}

/***********
magazineList
************/

.magazineList {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
}
.magazineList li {
  width: 25%;
  position: relative;
}
.magazineList a {
  display: block;
  color: inherit;
  text-decoration: none;
}


.magazineList-img {
}
.magazineList-img img {
  width: 100%;
  object-fit: cover;
}

.magazineList-inner {
  padding: 3em 2vw 5em;
  position: relative;
}
.magazineList-inner::after {
  content: "";
  display: block;
  width: 2.6em;
  height: 1.3em;
  background: url(../../img/icon/arrow.png) no-repeat 0 0 / 100% 100%;
  position: absolute;
  right: 2vw;
  bottom: 5em;
  transform: translateY(-50%);
  transition: 0.4s;
}

body.is-pc .magazineList a:hover .magazineList-inner::after {
  right: 1.5vw;
}

.magazineList-data {
  display: flex;
  justify-content: space-between;
  padding-bottom: 1.5em;
}
.magazineList-data-time {
  display: inline-block;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-size: 108%;
  color: #888;
  letter-spacing: 0.05em;
}
.magazineList-data-cat {
  display: inline-block;
  font-weight: 500;
  font-size:  100%;
  letter-spacing: 0.05em;
}
.magazineList-box {
  padding-right: 2.5em;
}
.magazineList-heading {
  display: inline-flex;
  position: relative;
  text-decoration: none;
  border-bottom: 1px dashed transparent;
  transition: 0s;
}
.magazineList-heading-num {
  font-family: futura-pt, sans-serif;
  font-weight: 700;
  font-size: 124%;
  padding-right: 1em;
  padding-top: 0.1em;
  white-space: nowrap;
}
.magazineList-title {
  font-size: 139%;
  letter-spacing: 0.05em;
}


.magazine-info {
  border-top: 1px solid #8C7355;
  margin-top: 8em;
  padding-top: 6em;
  padding-bottom: 8em;
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
}
.magazine-info-title {
  font-size: 116%;
  padding-bottom: 2em;
}

.magazine-info-address {
  font-size: 116%;
  font-style: normal;
  line-height: 2;
}
.magazine-info-address a {
  font-size: 77%;
  font-weight: 600;
  text-decoration: none;
}
body.is-pc .magazine-info-address a:hover{
  text-decoration: underline;
}


.magazine-info-data {
  display: flex;
  line-height: 2;
  font-size: 116%;
}
.magazine-info-data dt {
  width: 6em;
}
.magazine-info-data dd {
}

.magazine-info-link{
  padding-top: 2em;
}
.magazine-info-link a{
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  text-decoration: none;
}
body.is-pc .magazine-info-link a:hover{
  text-decoration: underline;
}




body.is-pc .magazineList-heading:hover {
  border-bottom-color: #8C7355;
}

@media screen and (min-width:1024px) {

  /*
  line
  */
  .magazineList li:nth-child(4n+1):not(:first-child)::before {
    content: "";
    display: block;
    width: 100vw;
    height: 1px;
    position: absolute;
    left: 0;
    top: 0;
    background-color: #8C7355;
    z-index: 9;
    transition: 2s;
    transition-delay: 0.2s;
  }

  .magazineList li:not(:nth-child(4n))::after{
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    background-color: #8C7355;
    z-index: 9;
    transform-origin: top;
    transform: scaleY(0);
    transition: transform 1.5s linear;
    transition-delay: 0.2s;
  }
  .magazineList li {
  }
  .magazineList li.is-show::after{
    transform: scaleY(1);
  }

  .magazineList li:nth-child(4n+1)::after{ transition-delay: 0.3s ;}
  .magazineList li:nth-child(4n+2)::after{ transition-delay: 0.6s ;}
  .magazineList li:nth-child(4n+3)::after{ transition-delay: 0.9s ;}
  .magazineList li:nth-child(4n  )::after{ transition-delay: 1.2s ;}

}
@media screen and (max-width:1024px) {

  .magazineList li {
    width: 50%;
  }
  .magazineList-inner {
    padding: 2em 2vw 4em;
  }
  .magazineList-inner::after {
    width: 2em;
    height: 1em;
    right: 2vw;
    bottom: 4em;
  }
}

@media screen and (min-width:521px) and (max-width:1024px) {

  .magazineList {
    font-size:calc(7px + 0.7vmin);
  }
  /*
  line
  */
  .magazineList li:nth-child(2n+1):not(:first-child)::before {
    content: "";
    display: block;
    width: 100vw;
    height: 1px;
    position: absolute;
    left: 0;
    top: 0;
    background-color: #8C7355;
    z-index: 9;
    transition: 2s;
    transition-delay: 0.2s;
  }

  .magazineList li:not(:nth-child(2n))::after{
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    background-color: #8C7355;
    z-index: 9;
    transform-origin: top;
    transform: scaleY(0);
    transition: transform 1.5s linear;
    transition-delay: 0.2s;
  }
  .magazineList li {
  }
  .magazineList li.is-show::after{
    transform: scaleY(1);
  }

  .magazineList li:nth-child(2n+1)::after{ transition-delay: 0.3s ;}
  .magazineList li:nth-child(2n)::after{ transition-delay: 0.6s ;}

}

@media screen and (max-width:834px) {

  .magazineList {
    display: block;
    margin-bottom: -1px;
  }
  .magazineList li {
    width: auto;
    border-bottom: 1px solid #8C7355;
  }

  .magazineList-inner {
    padding: 2em 5vw 5em;
  }
  .magazineList-inner::after {
    right: 5vw;
    bottom: 5em;
  }


  .magazineList-data {
    padding-bottom: 1.5em;
  }
  .magazineList-data-time {
    font-size: 93%;
  }
  .magazineList-data-cat {
    font-size:  93%;
  }
  .magazineList-box {
    padding-right: 2.5em;
  }
  .magazineList-heading {
    line-height: 1.8;
  }
  .magazineList-heading-num {
    font-size: 100%;
  }
  .magazineList-title {
    font-size: 116%;
  }


  .magazine-info {
    margin-top: 4em;
    padding-top: 4em;
    padding-bottom: 4em;
  }
  .magazine-info-title {
  }

  .magazine-info-address {
    font-size: 85%;
    line-height: 1.8;
  }
  .magazine-info-address a {
    font-size: 100%;
  }

  .magazine-info-data {
    font-size: 85%;
    line-height: 1.8;
  }

  .magazine-info-link{
    padding-top: 1em;
  }
  .magazine-info-link a{
    font-size: 77%;
  }



}


/***********
magazineMap
************/

.magazineMap {
  border-top: 1px solid #1285c5;
  position: relative;
  overflow: hidden;
}
.magazineMap-block {
  margin-top: -70px;
}
.magazineMap iframe {
  width: 100%;
  height: 670px;
  vertical-align: middle;
}

/***********
magazine
************/

.magazine {
}
.magazine-header {
  display: flex;
  max-width: 1650px;
}
.magazine-header-block {
  flex: 1;
  display: flex;
}
.magazine-header-box {
  width: 15em;
}
.magazine-header-time {
  display: inline-block;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-size: 108%;
  color: #888;
  letter-spacing: 0.05em;
}
.magazine-header-inner {
  flex: 1;
}

.magazine-heading {
  display: flex;
  padding-bottom: 2em;
}
.magazine-heading-num {
  font-family: futura-pt, sans-serif;
  font-weight: 700;
  font-size: 154%;
  padding-right: 1em;
  padding-top: 0.1em;
  white-space: nowrap;
}
.magazine-heading-title {
  font-size: 170%;
}
.magazine-data {
  padding-bottom: 3em;
}
.magazine-data-cat {
  display: inline-block;
  font-weight: 500;
  font-size: 108%;
  letter-spacing: 0.05em;
  padding-bottom: 2em;
}
.magazine-data-url {
  padding-bottom: 0.8em;
}
.magazine-data-url a {
  display: inline-block;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.magazine-data-sns {
  display: flex;
  flex-wrap: wrap;
}
.magazine-data-sns li:not(:last-child) {
  margin-right: 1.5em;
}
.magazine-data-sns li a {
  display: inline-block;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.magazine-summary {
  font-size: 116%;
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  line-height: 2;
}

.magazine-header-img {
  width: 50%;
  padding-left: 5%;
}
.magazine-header-img img {
  width: 100%;
  object-fit: cover;
}

.magazine-post {
  padding-left: 15em;
  padding-top: 8em;
  max-width: 1024px;
}

@media screen and (max-width:1280px) {

  .magazine {
  }
  .magazine-header {
  }
  .magazine-header-block {
    display: block;
  }
  .magazine-header-box {
    width: auto;
    padding-bottom: 2em;
  }

  .magazine-post {
    padding-left: 0;
  }

}

@media screen and (max-width:834px) {

  .magazine {
  }
  .magazine-header {
    display: block;
  }
  .magazine-header-block {
    display: block;
  }
  .magazine-header-time {
    font-size: 100%;
  }
  .magazine-header-inner {
    flex: 1;
  }

  .magazine-heading {
    display: flex;
    padding-bottom: 2em;
  }
  .magazine-heading-num {
    font-size: 131%;
    padding-top: 0;
  }
  .magazine-heading-title {
    font-size: 139%;
  }
  .magazine-data {
    padding-bottom: 3em;
  }
  .magazine-data-cat {
    font-size: 108%;
    letter-spacing: 0.05em;
    padding-bottom: 1em;
  }
  .magazine-data-url {
    font-size: 93%;
    padding-bottom: 0.5em;
  }
  .magazine-data-url a {
    display: inline-block;
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
  }

  .magazine-data-sns {
    font-size: 93%;
  }
  .magazine-data-sns li:not(:last-child) {
    margin-right: 1em;
  }
  .magazine-summary {
    font-size: 100%;
  }

  .magazine-header-img {
    width: auto;
    padding: 3em 0 0;
    text-align: center;
  }

  .magazine-post {
    padding-left: 0;
    padding-top: 5em;
  }

}

/***********
magazineLink
************/

.magazineLink {
}
.magazineLink-list {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
}
.magazineLink li {
  width: 50%;
  position: relative;
}
.magazineLink li:first-child {
  border-right: 1px solid #1285c5;
}
.magazineLink a {
  display: flex;
  color: inherit;
  text-decoration: none;
}


.magazineLink-img {
  width: 50%;
}
.magazineLink-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.magazineLink-inner {
  flex: 1;
  padding: 2em 3vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.magazineLink-cell{
  position: relative;
}
.magazineLink-cell::after {
  content: "";
  display: block;
  width: 2.6em;
  height: 1.3em;
  background: url(../../img/icon/arrow.png) no-repeat 0 0 / 100% 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  transform: translateY(-50%);
  transition: 0.4s;
}

body.is-pc .magazineLink a:hover .magazineLink-inner::after {
  right: 1.5vw;
}

.magazineLink-data {
  display: flex;
  justify-content: space-between;
  padding-bottom: 1.5em;
}
.magazineLink-data-time {
  display: inline-block;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-size: 108%;
  color: #888;
  letter-spacing: 0.05em;
}
.magazineLink-data-cat {
  display: inline-block;
  font-weight: 500;
  font-size:  100%;
  letter-spacing: 0.05em;
}
.magazineLink-box {
  padding-right: 2.5em;
}
.magazineLink-heading {
  display: inline-flex;
  position: relative;
  text-decoration: none;
  border-bottom: 1px dashed transparent;
  transition: 0s;
}
.magazineLink-heading-num {
  font-family: futura-pt, sans-serif;
  font-weight: 700;
  font-size: 124%;
  padding-right: 1em;
  padding-top: 0.1em;
  white-space: nowrap;
}
.magazineLink-title {
  font-size: 139%;
  letter-spacing: 0.05em;
}


body.is-pc .magazineLink-heading:hover {
  border-bottom-color: #1285c5;
}


@media screen and (max-width:1280px) {

  .magazineLink-img {
    width: 40%;
  }
}


@media screen and (max-width:834px) {

  .magazineLink {
  }
  .magazineLink-list {
    display: block;
  }
  .magazineLink li {
    width: auto;
  }
  .magazineLink li:first-child {
    border-bottom: 1px solid #1285c5;
    border-right: none;
  }

  .magazineLink-img {
    width: 33%;
  }
  .magazineLink-img img {
    width: 100%;
    height: 100%;
    min-height: 33vw;
  }

  .magazineLink-inner {
    padding: 0.5em 4vw 1em;
  }
  .magazineLink-cell::after {
    width: 2em;
    height: 1em;
  }

  .magazineLink-data {
    padding-bottom: 0.6em;
  }
  .magazineLink-data-time {
    font-size: 77%;
  }
  .magazineLink-data-cat {
    font-size:  77%;
  }
  .magazineLink-box {
    padding-right: 2em;
  }
  .magazineLink-heading-num {
    font-size: 100%;
  }
  .magazineLink-title {
    font-size: 116%;
  }

}


/***********
inquiryNavi
************/

.inquiryNavi {
  display: flex;
  flex-wrap: wrap;
  margin-top: -1em;
}
.inquiryNavi li {
  margin-bottom: 5px;
}
.inquiryNavi li:not(:last-child) {
  margin-right: 1em;
}
.inquiryNavi li a {
  display: inline-block;
  width: auto;
  min-width: 15em;
  padding: 1em 3em;
  font-size: 116%;
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  text-decoration: none !important;
  text-align: center;
  border-radius: 100vw;
  background-color: #fff;
  border: 1.5px solid #1285c5;
  color: inherit;
  position: relative;
}
body.is-pc .inquiryNavi li a:hover,
.inquiryNavi li a.is-active {
  background-color: #1285c5;
  color: #fff;
}

@media screen and (max-width:834px) {

  .inquiryNavi li a {
    font-size: 100%;
  }
}

@media screen and (max-width:520px) {

  .inquiryNavi {
  }
  .inquiryNavi li {
    margin-bottom: 5px;
  }
  .inquiryNavi li:not(:last-child) {
    margin-right: 0.5em;
  }
  .inquiryNavi li a {
    min-width: 11em;
    padding: 1em 2em;
  }

}

/***********
innerOffset
************/

.innerOffset {
  padding-left: 20em;
}

.innerBox{
  max-width: 1000px;
}

@media screen and (max-width:1024px) {

  .innerOffset {
    padding-left: 0;
  }

}

/***********
xxxxx
************/


.inquiryTable {
  font-size: 1.16rem;
  line-height: 1.8;
}
.inquiryTable th {
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  vertical-align: top;
  text-align: left;
  padding: 0 0 2em 0;
  width: 14em;
}
.inquiryTable td {
  font-weight: 600;
  font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  vertical-align: top;
  text-align: left;
  padding: 0 0 2em 0;
}


.inquiryTable-table {
  border-top: 1px solid #1285c5;
}
.inquiryTable-table tr{
  border-bottom: 1px solid #1285c5;
}
.inquiryTable-table th{
  border-right: 1px solid #1285c5;
  padding: 1em 0 1em 0;
}
.inquiryTable-table td{
  padding: 1em 0 1em 2em;
}

@media screen and (max-width:834px) {

  .inquiryTable{
    font-size: 0.93rem;
  }
  .inquiryTable th{
    width: 6.5em;
  }
  .inquiryTable td{
    padding: 0 0 1.5em 0;
  }

  .inquiryTable-table,
  .inquiryTable-table thead,
  .inquiryTable-table tbody,
  .inquiryTable-table tfoot,
  .inquiryTable-table tr,
  .inquiryTable-table th,
  .inquiryTable-table td {
    display: block;
    width: 100%;
  }

  .inquiryTable-table {
  }
  .inquiryTable-table tr{
  }
  .inquiryTable-table th{
    border-right: none;
    padding: 1.5em 0 1em 0;
  }
  .inquiryTable-table td{
    padding: 0 0 1.5em 0;
  }

}

/***********
faq
************/

.faq {
}
.faq + .faq {
  border-top: 1px solid #8c73552b;
}
.faq-heading {
  font-size: 116%;
  line-height: 2;
  padding: 2em 2em 2em 0;
  cursor: pointer;
  transition: 0.3s;
  position: relative;
  color: #8C7355;
}
.faq-heading::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  margin-top: -0.8em;
  border-bottom: 1px solid #8C7355;
  border-right: 1px solid #8C7355;
  position: absolute;
  right: 1em;
  top: 50%;
  transform: rotate(45deg) ;
  transition: 0.4s;
}
.faq-heading.is-active::after {
  transform: rotate(45deg) scale(-1, -1);
  margin-top: -0.4em;
}
.faq-block {
  display: none;
}
.faq-box {
  padding: 0 0 3em 0;
}

@media screen and (max-width:834px) {

  .faq-heading {
    font-size: 100%;
    line-height: 1.8;
    padding: 1.5em 3em 1.5em 0;
  }
  .faq-heading::after {
    width: 0.6em;
    height: 0.6em;
    margin-top: -0.8em;
  }
}


/***********
xxxxx
************/

/***********
xxxxx
************/

/***********
xxxxx
************/

/***********
xxxxx
************/
















