/*--------------------
top.css
--------------------*/

.slide-animation{
  animation: fadeslide 8s 0s forwards;
}
@keyframes fadeslide {
  0% {
    transform: scale(1.05) translateX(2%);
  }
  100% {
    transform: scale(1.05) translateX(0%);
  }
}

.l-mv00-slick-wrapper{
  /*background:#000000;*/
  overflow: hidden;
  height:76.8rem;
}
.l-mv00-slick{
  overflow: hidden;
  position: relative;
  z-index: 1;  
  display:none;
  height:76.8rem;
}
.l-mv00-slick.slick-initialized {
  display:block;
}
.l-mv00-slick-list{
  background: url("../images/top/mv-bg01_pc.png") top center no-repeat transparent;
  background-size: cover;
  height:76.8rem;
}
.l-mv00-slick-list.bg00{
  background: url("../images/top/mv-bg00_pc.png") top center no-repeat transparent;
  background: #FFFFFF;
  background-size: cover;
  height:76.8rem;
}
.l-mv00-slick-list.bg01{
  background: url("../images/top/mv-bg01_pc.png") top center no-repeat transparent;
  background-size: cover;
  height:76.8rem;
}
.l-mv00-slick-list.bg02{
  background: url("../images/top/mv-bg02_pc.png") top center no-repeat transparent;
  background-size: cover;
  height:76.8rem;
}
.l-mv00-slick-list.bg03{
  background: url("../images/top/mv-bg03_pc.png") top center no-repeat transparent;
  background-size: cover;
  height:76.8rem;
}
    

.l-mv00{
  padding:0 0 14.0rem;
}
.l-mv00-inner{
  max-width:100%;
  width:100%;
  margin:0 auto;
}
.l-mv00-block{
  margin-top:-13.0rem;
  position: relative;
  z-index: 2;
}
.l-mv00-block-scroll{
  position: absolute;
  left: 5.0rem;
  bottom: -20.0rem;
  writing-mode: vertical-rl;
}
.l-mv00-block-scroll:before{
  animation: scroll 2s infinite;
  background-color: #3aa4bf;
  top: -11.5rem;
  content: "";
  height: 10.0rem;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
}
.l-mv00-block-scroll img{
  width:1.4rem;
}
.l-mv00-block:after{
  content: "";
  display: inline-block;
  right: 7.5rem;
  top:-77.0rem;
  bottom: 0;
  width:7.6rem;
  height: 43.8rem;
  position: absolute;
  z-index: 2;
  background: url("../images/top/mv-img02_pc.svg") left bottom no-repeat transparent;
  background-size: 7.6rem auto;
  min-height:43.8rem;
  margin:auto;
}
.l-mv00-block-wrapper{
  max-width:1700px;
  width:100%;
  margin:0 auto;
  display:flex;
  align-items: center;
  text-align: left;
  height: 100%;
  
  position: relative;
  top:-35.0rem;
  
  flex-direction: column;
  align-items: flex-start;
}
.l-mv00-block-wrapper h2{
  padding-left:5.0rem;
  text-align: left;
  color: #FFFFFF;

  font-size:3.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-mv00-block-wrapper span{
  display:block;
  padding-left:5.0rem;
  text-align: left;
  color: #FFFFFF;

  font-size:2.4rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-mv00-news{
  max-width:calc(1880px + 6.0rem);
  width:100%;
  padding:0 3.0rem;
  margin-top:-6.5rem;
  text-align: right;
  position: relative;
  z-index: 3;
}
.l-mv00-news-link{
  max-width:54.0rem;
  width:100%;
  display:inline-block;
  background:#faf3eb;
  border-radius:0.5rem;
  padding:1.0rem 1.0rem 1.0rem 2.0rem;
}
.l-mv00-news-link:hover{
  opacity:1.0;
}
.l-mv00-news-link-table{
  width:100%;
  display:table;
}
.l-mv00-news-link-table > div{
  display:table-cell;
  vertical-align: middle;
}
.l-mv00-news-link-table-left{
  width:30.7rem;
  padding-right: 2.0rem;
}
.l-mv00-news-link-table-left-title{  
  text-align: left;
  color: #3aa4bf;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
  
  transition: 0.3s;
  
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
}
.l-mv00-news-link:hover .l-mv00-news-link-table-left-title{
  opacity:0.7;
}
.l-mv00-news-link-table-left-date{
  padding-top:1.5rem;
  text-align: left;
  color: #322e21;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
  
  transition: 0.3s;
}
.l-mv00-news-link:hover .l-mv00-news-link-table-left-date{
  opacity:0.7;
}
.l-mv00-news-link-table-right{
  width:20.3rem;
}
.l-mv00-news-link-table-right picture{
  
}
.l-mv00-news-link-table-right picture img{
  width:100%;
  transition: 0.3s;
}
.l-mv00-news-link:hover .l-mv00-news-link-table-right picture img{
  opacity:0.7;
}


@media screen and (max-width: 767.5px) {  
  .l-mv00-slick-wrapper{
    /*background:#000000;*/
    overflow: hidden;
    height:50.0rem;
  }
  .l-mv00-slick{
    overflow: hidden;
    position: relative;
    z-index: 1;
    display:none;
    height:50.0rem;
  }
  .l-mv00-slick.slick-initialized {
    display:block;
  }
  .l-mv00-slick-list{
    background: url("../images/top/mv-bg01_pc.png") center center no-repeat transparent;
    background-size: cover;
    height:50.0rem;
  }
  .l-mv00-slick-list.bg00{
    background: url("../images/top/mv-bg00_pc.png") center center no-repeat transparent;
    background: #FFFFFF;
    background-size: cover;
    height:50.0rem;
  }
  .l-mv00-slick-list.bg01{
    background: url("../images/top/mv-bg01_pc.png") center center no-repeat transparent;
    background-size: cover;
    height:50.0rem;
  }
  .l-mv00-slick-list.bg02{
    background: url("../images/top/mv-bg02_pc.png") center center no-repeat transparent;
    background-size: cover;
    height:50.0rem;
  }
  .l-mv00-slick-list.bg03{
    background: url("../images/top/mv-bg03_pc.png") center center no-repeat transparent;
    background-size: cover;
    height:50.0rem;
  }
  
  .l-mv00{
    padding:0 0 8.0rem;
  }
  .l-mv00-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-mv00-block{
    margin-top:-13.0rem;
    position: relative;
    z-index: 2;
  }
  .l-mv00-block-scroll{
    position: absolute;
    left: 0.8rem;
    bottom: -20.0rem;
    writing-mode: vertical-rl;
  }
  .l-mv00-block-scroll:before{
    animation: scroll 2s infinite;
    background-color: #3aa4bf;
    top: -11.5rem;
    content: "";
    height: 10.0rem;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    width: 1px;
  }
  .l-mv00-block-scroll img{
    width:1.4rem;
  }
  .l-mv00-block:after{
    content: "";
    display: inline-block;
    right: 2.5rem;
    top:-42.0rem;
    bottom: 0;
    width:4.6rem;
    height: 26.6rem;
    position: absolute;
    z-index: 2;
    background: url("../images/top/mv-img02_pc.svg") left bottom no-repeat transparent;
    background-size: 4.6rem auto;
    min-height:26.6rem;
    margin:auto;
  }
  .l-mv00-block-wrapper{
    max-width:100%;
    width:100%;
    margin:0 auto;
    display:flex;
    align-items: center;
    text-align: left;
    height: 100%;
    top:-23.0rem;
  
    flex-direction: column;
    align-items: flex-start;
  }
  .l-mv00-block-wrapper h2{
    padding-left:5.0rem;
    text-align: left;
    color: #FFFFFF;

    font-size: 3.0rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-mv00-block-wrapper span{
    display:block;
    padding-left:5.0rem;
    text-align: left;
    color: #FFFFFF;

    font-size:2.4rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }

  .l-mv00-news{
    margin-top:-6.5rem;
    text-align: right;
    padding-left:5.0rem;
    padding-right:5.0rem;
    position: relative;
    z-index: 3;
  }
  .l-mv00-news-link{
    max-width:100%;
    width:100%;
    display:inline-block;
    background:#faf3eb;
    border-radius:0.5rem;
    padding:1.0rem 1.0rem 1.0rem 2.0rem;
  }
  .l-mv00-news-link:hover{
    opacity:1.0;
  }
  .l-mv00-news-link-table{
    width:100%;
    display:table;
  }
  .l-mv00-news-link-table > div{
    display:table-cell;
    vertical-align: middle;
  }
  .l-mv00-news-link-table-left{
    width:auto;
    padding-right:2.0rem;
  }
  .l-mv00-news-link-table-left-title{  
    text-align: left;
    color: #3aa4bf;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;

    transition: 0.3s;
  
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
  }
  .l-mv00-news-link:hover .l-mv00-news-link-table-left-title{
    opacity:0.7;
  }
  .l-mv00-news-link-table-left-date{
    padding-top:1.0rem;
    text-align: left;
    color: #322e21;

    font-size:2.4rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;

    transition: 0.3s;
  }
  .l-mv00-news-link:hover .l-mv00-news-link-table-left-date{
    opacity:0.7;
  }
  .l-mv00-news-link-table-right{
    width:15.3rem;
  }
  .l-mv00-news-link-table-right picture{

  }
  .l-mv00-news-link-table-right picture img{
    width:100%;
    transition: 0.3s;
  }
  .l-mv00-news-link:hover .l-mv00-news-link-table-right picture img{
    opacity:0.7;
  }
}



.l-mv{
  display:none !important;
  padding:0 0 14.0rem;
}
.l-mv-inner{
  max-width:100%;
  width:100%;
  margin:0 auto;
}
.l-mv-block{
  background: url("../images/top/mv-bg01_pc.png") top center no-repeat transparent;
  background-size: 100% auto;
  height:68.0rem;
  position: relative;
}
.l-mv-block-scroll{
  position: absolute;
  left: 5.0rem;
  bottom: -20.0rem;
  writing-mode: vertical-rl;
}
.l-mv-block-scroll:before{
  animation: scroll 2s infinite;
  background-color: #3aa4bf;
  top: -11.5rem;
  content: "";
  height: 10.0rem;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
}
.l-mv-block-scroll img{
  width:1.4rem;
}
/* 線のアニメーション */
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
.l-mv-block:after{
  content: "";
  display: inline-block;
  right: 7.5rem;
  top:-9.0rem;
  bottom: 0;
  width:7.6rem;
  height: 43.8rem;
  position: absolute;
  z-index: 2;
  background: url("../images/top/mv-img02_pc.svg") left bottom no-repeat transparent;
  background-size: 7.6rem auto;
  min-height:43.8rem;
  margin:auto;
}
.l-mv-block-wrapper{
  max-width:1700px;
  width:100%;
  margin:0 auto;
  display:flex;
  align-items: center;
  text-align: left;
  height: 100%;
}
.l-mv-block-wrapper h2{
  padding-left:5.0rem;
  text-align: left;
  color: #FFFFFF;

  font-size:36px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-mv-news{
  max-width:calc(1880px + 6.0rem);
  width:100%;
  padding:0 3.0rem;
  margin-top:-6.5rem;
  text-align: right;
  position: relative;
  z-index: 3;
}
.l-mv-news-link{
  max-width:49.0rem;
  width:100%;
  display:inline-block;
  background:#faf3eb;
  border-radius:0.5rem;
  padding:1.0rem 1.0rem 1.0rem 2.0rem;
}
.l-mv-news-link:hover{
  opacity:1.0;
}
.l-mv-news-link-table{
  width:100%;
  display:table;
}
.l-mv-news-link-table > div{
  display:table-cell;
  vertical-align: middle;
}
.l-mv-news-link-table-left{
  width:30.7rem;
  padding-right: 2.0rem;
}
.l-mv-news-link-table-left-title{  
  text-align: left;
  color: #3aa4bf;

  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
  
  transition: 0.3s;
  
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
}
.l-mv-news-link:hover .l-mv-news-link-table-left-title{
  opacity:0.7;
}
.l-mv-news-link-table-left-date{
  padding-top:1.5rem;
  text-align: left;
  color: #322e21;

  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
  
  transition: 0.3s;
}
.l-mv-news-link:hover .l-mv-news-link-table-left-date{
  opacity:0.7;
}
.l-mv-news-link-table-right{
  width:15.3rem;
}
.l-mv-news-link-table-right picture{
  
}
.l-mv-news-link-table-right picture img{
  width:100%;
  transition: 0.3s;
}
.l-mv-news-link:hover .l-mv-news-link-table-right picture img{
  opacity:0.7;
}


@media screen and (max-width: 767.5px) {
  .l-mv{
    padding:0 0 8.0rem;
  }
  .l-mv-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-mv-block{
    background: url("../images/top/mv-bg01_pc.png") top center no-repeat transparent;
    background-size: cover;
    height:50.0rem;
    position: relative;
  }
  .l-mv-block-scroll{
    position: absolute;
    left: 0.8rem;
    bottom: -20.0rem;
    writing-mode: vertical-rl;
  }
  .l-mv-block-scroll:before{
    animation: scroll 2s infinite;
    background-color: #3aa4bf;
    top: -11.5rem;
    content: "";
    height: 10.0rem;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    width: 1px;
  }
  .l-mv-block-scroll img{
    width:1.4rem;
  }
  /*
  .l-mv-block:before{
    content: "";
    display: inline-block;
    left: 1.5rem;
    bottom: -10.0rem;
    width:1.4rem;
    height: 26.8rem;
    position: absolute;
    z-index: 2;
    background: url("../images/top/mv-img01_pc.svg") left bottom no-repeat transparent;
    background-size: 1.4rem auto;
    min-height:45.0rem;
    margin:0 auto;
  }
  */
  .l-mv-block:after{
    content: "";
    display: inline-block;
    right: 2.5rem;
    top:-9.0rem;
    bottom: 0;
    width:4.6rem;
    height: 26.6rem;
    position: absolute;
    z-index: 2;
    background: url("../images/top/mv-img02_pc.svg") left bottom no-repeat transparent;
    background-size: 4.6rem auto;
    min-height:26.6rem;
    margin:auto;
  }
  .l-mv-block-wrapper{
    max-width:100%;
    width:100%;
    margin:0 auto;
    display:flex;
    align-items: center;
    text-align: left;
    height: 100%;
  }
  .l-mv-block-wrapper h2{
    padding-left:5.0rem;
    text-align: left;
    color: #FFFFFF;

    font-size: 4.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }

  .l-mv-news{
    margin-top:-6.5rem;
    text-align: right;
    padding-left:5.0rem;
    padding-right:5.0rem;
    position: relative;
    z-index: 3;
  }
  .l-mv-news-link{
    max-width:100%;
    width:100%;
    display:inline-block;
    background:#faf3eb;
    border-radius:0.5rem;
    padding:1.0rem 1.0rem 1.0rem 2.0rem;
  }
  .l-mv-news-link:hover{
    opacity:1.0;
  }
  .l-mv-news-link-table{
    width:100%;
    display:table;
  }
  .l-mv-news-link-table > div{
    display:table-cell;
    vertical-align: middle;
  }
  .l-mv-news-link-table-left{
    width:auto;
    padding-right:2.0rem;
  }
  .l-mv-news-link-table-left-title{  
    text-align: left;
    color: #3aa4bf;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;

    transition: 0.3s;
  
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
  }
  .l-mv-news-link:hover .l-mv-news-link-table-left-title{
    opacity:0.7;
  }
  .l-mv-news-link-table-left-date{
    padding-top:1.0rem;
    text-align: left;
    color: #322e21;

    font-size:2.4rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;

    transition: 0.3s;
  }
  .l-mv-news-link:hover .l-mv-news-link-table-left-date{
    opacity:0.7;
  }
  .l-mv-news-link-table-right{
    width:15.3rem;
  }
  .l-mv-news-link-table-right picture{

  }
  .l-mv-news-link-table-right picture img{
    width:100%;
    transition: 0.3s;
  }
  .l-mv-news-link:hover .l-mv-news-link-table-right picture img{
    opacity:0.7;
  }
}


.l-block01{
  padding:0 0 10.0rem;
}
.l-block01-inner{
  max-width:100%;
  width:100%;
  margin:0 auto;
}
.l-block01-table{
  width:100%;
  display:table;
}
.l-block01-table > div{
  display:table-cell;
  vertical-align: top;
  text-align: left;
}
.l-block01-table-left{
  width:36.0rem;
  padding-top:13.0rem;
}
.l-block01-table-left picture{
  display:block;
}
.l-block01-table-left picture img{
  width:20.0rem;
}
.l-block01-table-center{
  width:53.5rem;
  padding-right:5.0rem;
}
.l-block01-table-center-wrapper{
  
}
.l-block01-table-center-wrapper > span{
  display:block;
  text-align: left;
  color: #3aa4bf;

  font-size:20px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block01-table-center-wrapper > h2{
  display:block;
  text-align: left;
  color: #3aa4bf;

  font-size:30px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block01-table-center-wrapper > h3{
  padding-top:2.5rem;
  padding-bottom:1.5rem;
  display:block;
  text-align: left;
  color: #3aa4bf;

  font-size:30px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block01-table-center-wrapper > p{
  padding-top:3.0rem;
  display:block;
  text-align: justify;
  color: #3aa4bf;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block01-table-center-wrapper > p:last-of-type{
  padding-bottom:7.0rem;
}
.l-block01-table-right{
  width:102.0rem;
  padding-top:1.5rem;
}
.l-block01-table-right h3{
  padding-left:79.0rem;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: right;
  color: #e9e3d1;
  font-size: 70px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  
  position: relative;
  z-index:2;
  margin-top:-2.0rem;
  
  white-space: nowrap;
}
.l-block01-table-right picture{
  display:block;
  position: relative;
  z-index:1;
  margin-top:-30.0rem;
}
.l-block01-table-right picture img{
  width:85.0rem;
}


@media screen and (max-width: 767.5px) {
  .l-block01{
    padding:0 3.0rem 8.0rem;
  }
  .l-block01-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-block01-table{
    width:100%;
    display:block;
    display:-webkit-box;
    display: -webkit-flex;
    display:-ms-flexbox;
    display: flex;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
  }
  .l-block01-table > div{
    width:100%;
    display:block;
    vertical-align: top;
    text-align: left;
  }
  .l-block01-table-left{
    width:100%;
    display:none !important;
    padding-top:0;
  }
  .l-block01-table-left picture{
    display:block;
  }
  .l-block01-table-left picture img{
    width:100%;
  }
  .l-block01-table-center{
    width:100%;
    display:block;
    padding-right:0;
    -webkit-box-ordinal-group:2;
    -ms-flex-order:2;
    -webkit-order:2;
    order:2;
  }
  .l-block01-table-center-wrapper{

  }
  .l-block01-table-center-wrapper > span{
    display:block;
    text-align: left;
    color: #3aa4bf;

    font-size:6.2rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block01-table-center-wrapper > h2{
    display:block;
    text-align: left;
    color: #3aa4bf;

    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block01-table-center-wrapper > h3{
    padding-top:2.5rem;
    padding-bottom:1.5rem;
    display:block;
    text-align: left;
    color: #3aa4bf;

    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block01-table-center-wrapper > p{
    padding-top:3.0rem;
    display:block;
    text-align: justify;
    color: #3aa4bf;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block01-table-center-wrapper > p:last-of-type{
    padding-bottom:7.0rem;
  }
  .l-block01-table-right{
    width:100%;
    display:block;
    padding-top:0;
    -webkit-box-ordinal-group:1;
    -ms-flex-order:1;
    -webkit-order:1;
    order:1;
  }
  .l-block01-table-right h3{
    display:block;
    padding-left:0;
    padding-bottom:5.0rem;
    
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    
    color: #e9e3d1;
    font-size: 6.2rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.05em;

    position: relative;
    z-index:2;
    margin-top:0;
    
    white-space: wrap;
  }
  .l-block01-table-right picture{
    display:block;
    margin-top:0;
  }
  .l-block01-table-right picture img{
    width:100%;
  }
}


.l-block02{
  background:#e9e3d1;
  padding-bottom:13.0rem;
}
.l-block02-back{
  position: relative;
  clip-path: inset(0);
  padding: 30.5rem 0 15.0rem 3.0rem;
}
.l-block02-back:before{
  content: "";
  display: inline-block;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: calc(54.0rem + (-1 * (100vw - 1920px) * 0.2));
  position: absolute;
  z-index: -1;
  background: url(../images/top/block02-bg01_pc.png) top center no-repeat #e9e3d1;
  background-size: cover;
  margin: 0 auto;
  background-attachment: fixed;
}
.l-block02-inner{
  max-width: 100%;
  width: 100%;
  margin: -38.0rem auto 0;
  position: relative;
  z-index: 1;
}
.l-block02-block01{
  padding-bottom:3.0rem;
  max-width: 1920px;
  width: 100%;
  margin: 0 auto;
  padding-right:3.0rem;
}
.l-block02-block01-inner{
  max-width: 1920px;
  width: 100%;
  padding-left:0;
}
.l-block02-block01-table{
  width:100%;
  display:table;
}
.l-block02-block01-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-block02-block01-table-left{
  width:10.0rem;
  text-align: left;
}
.l-block02-block01-table-left h2{
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  color: #FFFFFF;
  
  font-size:70px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  
  position: relative;
  top: 42.0rem;
  
  white-space: nowrap;
}
.l-block02-block01-table-left h2 span{
  position: relative;
  left:10px;
}
.l-block02-block01-table-right{
  width: 172.0rem;
  text-align: center;
  padding-top:5.0rem;
}
.l-block02-block01-table-right h3{
  padding-right:0;
  text-align: center;
  color: #FFFFFF;
  
  font-size: 30px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}

.l-block02-block02{
  padding-left:13.0rem;
  margin-top:-12.0rem;
}
.l-block02-block02-inner{
  max-width: 1760px;
  width: 100%;
  margin-left: auto;
}
.l-block02-block02-slider{
  text-align: left;
  opacity: 0;
}
.l-block02-block02-slider .slick-prev{
  width: 8.0rem;
  height: 4.0rem;
  position: absolute;
  top: auto;
  bottom: -6.0rem;
  margin: auto;
  left: 4.0rem;
  z-index: 100;
  background: url("../images/top/block02-prev_pc.png") left center no-repeat transparent;
  background-size: 8.0rem auto;
  min-height:4.0rem;
  z-index: 50;
}
.l-block02-block02-slider .slick-next{
  width: 8.0rem;
  height: 4.0rem;
  position: absolute;
  top: auto;
  bottom: -6.0rem;
  margin: auto;
  right: auto;
  left: 13.0rem;
  z-index: 100;
  background: url("../images/top/block02-next_pc.png") right center no-repeat transparent;
  background-size: 8.0rem auto;
  min-height:4.0rem;
  z-index: 50;
}
.l-block02-block02-slider.slick-initialized{
  opacity: 1.0;
}
.l-block02-block02-slider .slick-list{
  padding:0 0 0 42.0rem !important;
}
.l-block02-block02-slider-list{
  display:inline-block;
  vertical-align: top;
  padding-right:5.0rem;
}
.l-block02-block02-slider-list-box{
  width:65.0rem;
  display:block;
  background:#fafaf0;
  padding:2.7rem 2.7rem 3.0rem;
}
.l-block02-block02-slider-list-box:hover{
  opacity: 1.0;
}
.l-block02-block02-slider-list-box picture{
  display:block;
}
.l-block02-block02-slider-list-box picture img{
  width:100%;
}
.l-block02-block02-slider-list-box-category{
  margin-top:3.0rem;
  position: relative;
}
.l-block02-block02-slider-list-box-category ul{
  display: block;
  text-align: left;
  font-size:0;
}
.l-block02-block02-slider-list-box-category ul li{
  display:inline-block;
  vertical-align: top;
}
.l-block02-block02-slider-list-box-category ul li.l-block02-block02-slider-list-box-category-cat{
  /*font-family: "Noto Serif JP", serif;*/
  border:1px solid #3aa4bf;
  border-radius:2.0rem;
  background:#FFFFFF;
  margin-right:1.5rem;
  padding:0.2rem 2.5rem;
  min-width:12.0rem;
  text-align: center;
  color: #3aa4bf;

  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block02-block02-slider-list-box-category ul li.l-block02-block02-slider-list-box-category-name{
  /*font-family: "Noto Serif JP", serif;*/
  border:1px solid #cccccc;
  border-radius:2.0rem;
  background:#FFFFFF;
  margin-right:1.5rem;
  padding:0.2rem 2.5rem;
  min-width:12.0rem;
  text-align: center;
  color: #333333;

  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block02 .scrollLineAnime{
  position: absolute;
  width: 20px;
  height: 1px;
  overflow: hidden;
  z-index: 4;
  display: block;
  right:0;
  top:0;
  bottom:0;
  margin:auto 0;
}
.l-block02 .scrollLineAnime:before {
  background: #3aa4bf;
  z-index: 10;
}
.l-block02 .scrollLineAnime:after,
.l-block02 .scrollLineAnime:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 20px;
  height: 1px;
}
.l-block02 .scrollLineAnime:after {
  background: transparent;
}
.l-block02-block02-slider-list-box:hover .scrollLineAnime:before {
  animation: scrollHoverAnime 1.4s infinite normal;
}
.l-block02-block02-slider-list-box dl{
  
}
.l-block02-block02-slider-list-box dl dt{
  /*font-family: "Noto Serif JP", serif;*/
  padding-top:2.0rem;
  text-align: left;
  color: #3aa4bf;

  font-size:20px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block02-block02-slider-list-box dl dd{
  padding-top:1.0rem;
  text-align: justify;
  color: #808080;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
  
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
}
.l-block02-block02-slider-list-box-tag{
  padding-top:1.5rem;
}
.l-block02-block02-slider-list-box-tag ul{
  display: block;
  text-align: left;
  font-size:0;
}
.l-block02-block02-slider-list-box-tag ul li{
  display:inline-block;
  vertical-align: top;
  padding-right:1.5rem;
  text-align: left;
  color: #808080;

  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block02-block03-btn{
  padding-top: 6.0rem;
  padding-left: 4.0rem;
}


@media screen and (max-width: 767.5px) {
  .l-block02{
    background:#e9e3d1;
  }
  .l-block02-back{
    padding:8.0rem 3.0rem 8.0rem 3.0rem;
    position: relative;
    clip-path: inset(0);
    height: 42.0rem;
  }
  .l-block02-back:before {
    content: "";
    display: inline-block;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: -1;
    background: url(../images/top/block02-bg01_pc.png) top center no-repeat #e9e3d1;
    background-size: cover;
    margin: 0 auto;
    background-attachment: unset;
  }
  .l-block02-inner{
    max-width: 100%;
    width: 100%;
    margin: -27.0rem auto 0;
  }
  .l-block02-block01{
    padding-bottom:3.0rem;
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
    padding-right:0;
  }
  .l-block02-block01-inner{
    max-width: 100%;
    width: 100%;
  }
  .l-block02-block01-table{
    width:100%;
    display:block;
  }
  .l-block02-block01-table > div{
    width:100%;
    display:block;
    vertical-align: bottom;
  }
  .l-block02-block01-table-left{
    width:100%;
    display:block;
    text-align: left;
    padding-left:3.0rem;
  }
  .l-block02-block01-table-left h2{
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    
    color: #FFFFFF;
    font-size: 6.2rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.05em;
  
    position: relative;
    top: 0;
    
    white-space: wrap;
  }
  .l-block02-block01-table-left h2 span{
    position: relative;
    left:0;
  }
  .l-block02-block01-table-right{
    width:100%;
    display:block;
    text-align: left;
    padding-top:0;
    padding-left: 3.2rem;
  }
  .l-block02-block01-table-right h3{
    padding-right:0;
    padding-left: 3.2rem;
    text-align: left;
    color: #FFFFFF;

    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }

  .l-block02-block02{
    padding-left:0;
    margin-top:0;
  }
  .l-block02-block02-inner{
    max-width: 100%;
    width: 100%;
    margin-left: auto;
  }
  .l-block02-block02-slider{
    text-align: left;
    opacity: 0;
  }
  .l-block02-block02-slider .slick-prev{
    width: 12.0rem;
    height: 6.0rem;
    position: absolute;
    top: auto;
    bottom: -9.0rem;
    margin: auto;
    left: 1.5rem;
    z-index: 100;
    background: url("../images/top/block02-prev_pc.png") left center no-repeat transparent;
    background-size: 12.0rem auto;
    min-height:6.0rem;
    z-index: 50;
  }
  .l-block02-block02-slider .slick-next{
    width: 12.0rem;
    height: 6.0rem;
    position: absolute;
    top: auto;
    bottom: -9.0rem;
    margin: auto;
    right: auto;
    left: 15.5rem;
    z-index: 100;
    background: url("../images/top/block02-next_pc.png") right center no-repeat transparent;
    background-size: 12.0rem auto;
    min-height:6.0rem;
    z-index: 50;
  }
  .l-block02-block02-slider.slick-initialized{
    opacity: 1.0;
  }
  .l-block02-block02-slider .slick-list{
    padding:0 0 0 0 !important;
  }
  .l-block02-block02-slider-list{
    display:inline-block;
    vertical-align: top;
    padding-left:1.5rem;
    padding-right:1.5rem;
  }
  .l-block02-block02-slider-list-box{
    width:66.0rem;
    display:block;
    background:#fafaf0;
    padding:2.7rem 2.7rem 3.0rem;
  }
  .l-block02-block02-slider-list-box:hover{
    opacity: 1.0;
  }
  .l-block02-block02-slider-list-box picture{
    display:block;
  }
  .l-block02-block02-slider-list-box picture img{
    width:100%;
  }
  .l-block02-block02-slider-list-box-category{
    margin-top:3.0rem;
    position: relative;
  }
  .l-block02-block02-slider-list-box-category ul{
    display: block;
    text-align: left;
    font-size:0;
  }
  .l-block02-block02-slider-list-box-category ul li{
    display:inline-block;
    vertical-align: top;
  }
  .l-block02-block02-slider-list-box-category ul li.l-block02-block02-slider-list-box-category-cat{
    /*font-family: "Noto Serif JP", serif;*/
    border:1px solid #3aa4bf;
    border-radius:2.0rem;
    background:#FFFFFF;
    margin-right:1.5rem;
    padding:0.2rem 4.0rem;
    min-width:12.0rem;
    text-align: center;
    color: #3aa4bf;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block02-block02-slider-list-box-category ul li.l-block02-block02-slider-list-box-category-name{
    /*font-family: "Noto Serif JP", serif;*/
    border:1px solid #cccccc;
    border-radius:2.0rem;
    background:#FFFFFF;
    margin-right:1.5rem;
    padding:0.2rem 4.0rem;
    min-width:12.0rem;
    text-align: center;
    color: #333333;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block02 .scrollLineAnime{
    position: absolute;
    width: 20px;
    height: 1px;
    overflow: hidden;
    z-index: 4;
    display: block;
    right:0;
    top:0;
    bottom:0;
    margin:auto 0;
  }
  .l-block02 .scrollLineAnime:before {
    background: #3aa4bf;
    z-index: 10;
  }
  .l-block02 .scrollLineAnime:after,
  .l-block02 .scrollLineAnime:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 20px;
    height: 1px;
  }
  .l-block02 .scrollLineAnime:after {
    background: transparent;
  }
  .l-block02-block02-slider-list-box:hover .scrollLineAnime:before {
    animation: scrollHoverAnime 1.4s infinite normal;
  }
  .l-block02-block02-slider-list-box dl{

  }
  .l-block02-block02-slider-list-box dl dt{
    /*font-family: "Noto Serif JP", serif;*/
    padding-top:2.0rem;
    text-align: left;
    color: #3aa4bf;

    font-size:3.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block02-block02-slider-list-box dl dd{
    padding-top:1.0rem;
    text-align: justify;
    color: #808080;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
  }
  .l-block02-block02-slider-list-box-tag{
    padding-top:1.5rem;
  }
  .l-block02-block02-slider-list-box-tag ul{
    display: block;
    text-align: left;
    font-size:0;
  }
  .l-block02-block02-slider-list-box-tag ul li{
    display:inline-block;
    vertical-align: top;
    padding-right:1.5rem;
    text-align: left;
    color: #808080;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block02-block03-btn{
    display:block;
    padding:10.0rem 3.0rem 0;
    text-align: left;
  }
}


.l-block034{
  background:#e9e3d1;
  position: relative;
}
.l-block03{
  padding:56.5rem 0 5.0rem;
  clip-path: inset(0);
}
.l-block03:before{
  content: "";
  display: inline-block;
  top: 0;
  left: 0;
  bottom: 0;
  width:100%;
  height: calc(54.0rem + (-1 * (100vw - 1920px) * 0.2));
  position: absolute;
  z-index: -1;
  background: url("../images/top/block03-bg01_pc.png") top center no-repeat #e9e3d1;
  background-size: cover;
  margin:0 auto;
  background-attachment: fixed;
}
@media screen and (min-width: 1920.5px) {
  .l-block03:before{
    height: 54.0rem;
  }  
}
.l-block03-inner{
  max-width: calc(1770px + 6.0rem);
  width: 100%;
  margin: 0 auto;
  padding:0 3.0rem;
}
.l-block03-table{
  width: 100%;
  display: table;
}
.l-block03-table > div{
  display: table-cell;
  vertical-align: top;
}
.l-block03-table-left{
  width: 10.0rem;
  text-align: left;
}
.l-block03-table-left > h2{
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  color: #FFFFFF;
  
  font-size:70px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  
  white-space: nowrap;
}
.l-block03-table-left > h2 span{
  position: relative;
  left:10px;
}
.l-block03-table-right{
  width: 172.0rem;
  text-align: left;
}
.l-block03-table-right-block{
  max-width: 1560px;
  width:100%;
}

.l-block03-table-right-table{
  width:100%;
  display:table;
}
.l-block03-table-right-table.type02{
  margin-top:9.0rem;
}
.l-block03-table-right-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-block03-table-right-table.type02 > div{
  vertical-align: middle;
}
.l-block03-table-right-table-left{
  width:18.3rem;
  padding-right:1.0rem;
}
.l-block03-table-right-table-left h3{
  text-align: left;
  color: #FFFFFF;
  
  font-size:20px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block03-table-right-table-right{
  width:137.7rem;
}
.l-block03-table-right-table-right > ul{
  width:100%;
  display:table;
}
.l-block03-table-right-table-right > ul li{
  width:25%;
  display:table-cell;
  vertical-align: middle;
  border-left:1px dashed #FFFFFF;
  padding:0.5rem 1.5rem;
  text-align: center;
  height:auto;
}
.l-block03-table-right-table-right > ul li:last-of-type{
  border-right:1px dashed #FFFFFF;
}
.l-block03-table-right-table-right > ul li p{
  padding-top:4.0rem;
  text-align: center;
  color: #FFFFFF;
  
  font-size:20px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.l-block03-table-right-table-right > ul.type02 li p{
  padding-top:0;
}


@media screen and (max-width: 767.5px) {
  .l-block034{
    background:#e9e3d1;
  }
  .l-block03{
    padding:10.0rem 0 0;
    clip-path: inset(0);
    position: relative;
    background:#e9e3d1;
    height: 42.0rem;
  }
  .l-block03:before{
    content: "";
    display: inline-block;
    top: 0;
    left: 0;
    bottom: 0;
    width:100%;
    height: 100%;
    position: fixed;
    z-index: -1;
    background: url("../images/top/block03-bg01_pc.png") top center no-repeat #e9e3d1;
    background-size: cover;
    margin:0 auto;
    background-attachment: unset;
  }
  .l-block03-inner{
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
    padding:0 3.0rem;
  }
  .l-block03-table{
    width: 100%;
    display: block;
  }
  .l-block03-table > div{
    width: 100%;
    display: block;
    vertical-align: top;
  }
  .l-block03-table-left{
    width: 100%;
    display: block;
    text-align: left;
  }
  .l-block03-table-left > h2{
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    color: #FFFFFF;
    
    font-size: 6.2rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.05em;
    
    white-space: wrap;
  }
  .l-block03-table-left > h2 span{
    position: relative;
    left:0;
  }
  .l-block03-table-right{
    width: 100%;
    display: block;
    text-align: left;
  }
  .l-block03-table-right-block{
    max-width: 100%;
    width:100%;
  }

  .l-block03-table-right-table{
    width:100%;
    display:block;
    margin-top:6.0rem;
  }
  .l-block03-table-right-table.type02{
    margin-top:9.0rem;
  }
  .l-block03-table-right-table > div{
    width:100%;
    display:block;
    vertical-align: top;
  }
  .l-block03-table-right-table.type02 > div{
    vertical-align: middle;
  }
  .l-block03-table-right-table-left{
    width:100%;
    display:block;
    padding-right:0;
  }
  .l-block03-table-right-table-left h3{
    text-align: left;
    color: #FFFFFF;

    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block03-table-right-table-right{
    width:100%;
    display:block;
  }
  .l-block03-table-right-table-right > ul{
    width:100%;
    display:block;
    text-align:left;
    font-size:0;
  }
  .l-block03-table-right-table-right > ul li{
    width:50%;
    display:inline-block;
    vertical-align: middle;
    border-left:1px dashed #FFFFFF;
    padding:0.5rem 1.5rem;
    text-align: center;
    height:auto;
    margin-top:3.0rem;
  }
  .l-block03-table-right-table-right > ul li:last-of-type{
    border-right:none;
  }
  .l-block03-table-right-table-right > ul li:nth-of-type(even){
    border-right:1px dashed #FFFFFF;
  }
  .l-block03-table-right-table-right > ul li p{
    padding-top:4.0rem;
    text-align: center;
    color: #FFFFFF;

    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.05em;
  }
  .l-block03-table-right-table-right > ul.type02 li p{
    padding-top:0;
  }
}


.l-block04{
  padding-top:0;
  padding-bottom:13.0rem;
  margin-top:-30.0rem;
}
.l-block04-inner{
  max-width:1920px;
  width:100%;
  margin:0 auto;
}
.l-block04-table{
  width:100%;
  display:table;
  margin-bottom:1.5rem;
}
.l-block04-table > div{
  display:table-cell;
  vertical-align: bottom;
  text-align: left;
}
.l-block04-table-left{
  width:20.0rem;
  position: relative;
  padding-left:3.0rem;
}
.l-block04-table-left h2{
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  color: #FFFFFF;
  
  font-size: 70px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  
  position: relative;
  top: 6.0rem;
  
  white-space: nowrap;
}
.l-block04-table-left h2 span {
  position: relative;
  left: 10px;
}
.l-block04-table-right{
  width:172.0rem;
}
.l-block04-table-right-table{
  width:100%;
  display:table;
}
.l-block04-table-right-table > div{
  display:table-cell;
  vertical-align: middle;
}
.l-block04-table-right-table-left{
  width:65.0rem;
  text-align: center;
}
.l-block04-table-right-table-left picture{
  display:block;
  width:100%;
}
.l-block04-table-right-table-left picture img{
  width:100%;
  height:100%;
  object-fit: cover;
}
.l-block04-table-right-table-right{
  width:107.0rem;
  padding:3.0rem 3.0rem;
  text-align: left;
  background:#fafaf0;
}
.l-block04-table-right-table-right-table{
  width:100%;
  display:table;
}
.l-block04-table-right-table-right-table > div{
  display:table-cell;
  vertical-align: bottom;
}
.l-block04-table-right-table-right-table-left{
  
}
.l-block04-table-right-table-right-wrapper{
  max-width:840px;
  width:100%;
  padding-left:16.0rem;
  padding-right:8.0rem;
}
.l-block04-table-right-table-right-wrapper > h3{
  text-align: left;
  color: #3aa4bf;
  
  font-size:20px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block04-table-right-table-right-wrapper > span{
  text-align: left;
  color: #3aa4bf;
  
  font-size:20px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.l-block04-table-right-table-right-wrapper > h4{
  padding-top:4.0rem;
  text-align: left;
  color: #3aa4bf;
  
  font-size:20px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block04-table-right-table-right-wrapper > p{
  padding-top:4.0rem;
  text-align: justify;
  color: #808080;
  
  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block04-table-right-table-right-btn{
  padding-top:3.5rem;
  text-align: left;
  max-width: 860px;
  width: 100%;
  padding-left: 12.0rem;
  padding-right: 12.0rem;
}
.l-block04-table-right-table-right-btn.type01{
  padding-right:0;
}
.l-block04-table-right-table-right-btn.type02{
  padding-right:0;
}
.l-block04-table-right-table-right-table-right{
  text-align: left;
}
.l-block04-table-right-table-right-table-right h2{
  text-align: left;
  color: #e9e3d1;
  font-size: 110px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}


@media screen and (max-width: 767.5px) {
  .l-block04{
    padding:6.0rem 3.0rem 10.0rem;
    margin-top:-35.0rem;
  }
  .l-block04-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-block04-table{
    width:100%;
    display:block;
    margin-top:5.5rem;
    margin-bottom:0;
  }
  .l-block04-table.type02{
    width:100%;
    display:block;
    margin-top:8.5rem;
    margin-bottom:0;
  }
  .l-block04-table > div{
    width:100%;
    display:block;
    vertical-align: middle;
    text-align: left;
  }
  .l-block04-table-left{
    width:100%;
    display:block;
    text-align: left;
    padding-bottom:4.0rem;
    padding-left:0;
  }
  .l-block04-table-left h2{
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    color: #FFFFFF;
    
    font-size: 6.2rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.05em;
    
    position: relative;
    top:0;
    
    white-space: wrap;
  }
  .l-block04-table-left h2 span{
    position: relative;
    left: 0;
  }
  .l-block04-table-right{
    width:100%;
    display:block;
  }
  .l-block04-table-right-table{
    width:100%;
    display:block;
  }
  .l-block04-table-right-table > div{
    width:100%;
    display:block;
    vertical-align: middle;
  }
  .l-block04-table-right-table-left{
    width:100%;
    display:block;
    text-align: center;
  }
  .l-block04-table-right-table-left picture{
    display:block;
    width:100%;
  }
  .l-block04-table-right-table-left picture img{
    width:100%;
    height:100%;
    object-fit: cover;
  }
  .l-block04-table-right-table-right{
    width:100%;
    display:block;
    padding:5.0rem 5.0rem;
    text-align: left;
    background:#FFFFFF;
  }
  .l-block04-table-right-table-right-table{
    width:100%;
    display:flex;
    flex-direction: column-reverse;
  }
  .l-block04-table-right-table-right-table > div{
    width:100%;
    display:block;
    vertical-align: bottom;
  }
  .l-block04-table-right-table-right-table-left{

  }
  .l-block04-table-right-table-right-wrapper{
    max-width:100%;
    width:100%;
    padding:0 0;
  }
  .l-block04-table-right-table-right-wrapper > h3{
    text-align: left;
    color: #3aa4bf;

    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block04-table-right-table-right-wrapper > span{
    text-align: left;
    color: #3aa4bf;

    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.05em;
  }
  .l-block04-table-right-table-right-wrapper > h4{
    padding-top:4.0rem;
    text-align: left;
    color: #3aa4bf;

    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block04-table-right-table-right-wrapper > p{
    padding-top:4.0rem;
    text-align: justify;
    color: #808080;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block04-table-right-table-right-btn{
    padding-top:6.0rem;
    max-width:850px;
    width:100%;
    margin:0 auto;
    text-align: left;
    padding-left:0;
  }
  .l-block04-table-right-table-right-btn.type01{
    padding-right:0;
  }
  .l-block04-table-right-table-right-btn.type02{
    padding-right:0;
  }
  .l-block04-table-right-table-right-table-right{
    text-align: right;
  }
  .l-block04-table-right-table-right-table-right h2{
    text-align: right;
    color: #e9e3d1;
    font-size: 10.0rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0;
  }
}


.l-block05{
  padding-bottom:13.0rem;
  background:#e9e3d1;
}
.l-block05-titile{
  padding:7.0rem 3.0rem 3.0rem;
  clip-path: inset(0);
  position: relative;
  height:56.5rem;
}
.l-block05-titile:before{
  content: "";
  display: inline-block;
  top: 0;
  left: 0;
  bottom: 0;
  width:100%;
  height: 56.6rem;
  /*height: calc(34.7rem + (-1 * (100vw - 1920px) * 0.2));*/
  position: absolute;
  z-index: -1;
  background: url("../images/top/block05-bg01_pc.png") top center no-repeat #fafaf0;
  background-size: cover;
  margin:0 auto;
}
@media screen and (min-width: 1920.5px) {
  .l-block05-titile:before{
    height: 34.7rem;
  }  
}
.l-block05-titile-table{
  max-width: 1770px;
  width: 100%;
  margin: 0 auto;
  width:100%;
  display:table;
}
.l-block05-titile-table > div{
  display:table-cell;
  vertical-align: middle;
}
.l-block05-titile-table-left{
  width:12.0rem;
  text-align: left;
}
.l-block05-titile-table-left h2{
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  color: #FFFFFF;
  
  font-size:70px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  
  white-space: nowrap;
}
.l-block05-titile-table-left h2 span{
  position: relative;
  left:10px;
}
.l-block05-titile-table-right{
  width:150.0rem;
  padding-top:8.5rem;
  text-align: center;
}
.l-block05-titile-table-right h3{
  padding-right:0;
  text-align: center;
  color: #FFFFFF;
  
  font-size: 30px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block05-titile-table-right-btn{
  padding-top:7.0rem;
  text-align: left;
}
.l-block05-inner{
  max-width:1920px;
  width:100%;
  margin:-20.0rem auto 0;
}
.l-block05-table{
  width:100%;
  display:table;
}
.l-block05-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-block05-table-left{
  width:19.2rem;
  padding-left:3.0rem;
  padding-top:25.0rem;
}
.l-block05-table-left h2{
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  color: #FFFFFF;
  
  font-size: 70px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  
  white-space: nowrap;
}
.l-block05-table-left h2 span{
  position: relative;
  left: 10px;
}
.l-block05-table-right{
  width:auto;
}
.l-block05-block{
  width:100%;
  display:block;
  text-align: left;
  font-size:0;
}
.l-block05-block-list{
  width:50%;
  display:inline-block;
  vertical-align: top;
  border-top:1px solid #e9e3d1;
  transition: 0.3s;
  background:#fafaf0;
}
.l-block05-block-list:has(.l-block05-block-list-wrapper:hover){
  background:#f1eee0;
}
.l-block05-block-list:nth-of-type(1),
.l-block05-block-list:nth-of-type(2) {
  border-top: none;
}
.l-block05-block-list:nth-of-type(odd) {
  border-right: 1px solid #e9e3d1;
}
.l-block05-block-list-wrapper{
  display:block;
  width:100%;
  padding:9.0rem 10.0rem 5.5rem 10.0rem;
}
/*
.l-block05-block-list:nth-of-type(odd) .l-block05-block-list-wrapper{
  margin:0 10.0rem 0 10.0rem;
}
.l-block05-block-list:nth-of-type(even) .l-block05-block-list-wrapper{
  margin:0 10.0rem 0 10.0rem;
}
*/
.l-block05-block-list-wrapper:hover{
  opacity:1.0;
}
.l-block05-block-list-wrapper-title{
  /*font-family: "Noto Serif JP", serif;*/
  text-align: left;
  color: #3aa4bf;
  
  font-size:30px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block05-block-list-wrapper picture{
  display: block;
  padding-top: 2.0rem;
}
.l-block05-block-list-wrapper picture img{
  width: 100%;
}
.l-block05-block-list-block{
  padding-top: 2.5rem;
  text-align: left;
  font-size: 0;
  position: relative;
  padding-right: 4.0rem;
}
.l-block05 .scrollLineAnime{
  position: absolute;
  width: 20px;
  height: 1px;
  overflow: hidden;
  z-index: 4;
  display: block;
  right:0;
  top:0;
  bottom:0;
  margin:auto 0;
}
.l-block05 .scrollLineAnime:before {
  background: #3aa4bf;
  z-index: 10;
}
.l-block05 .scrollLineAnime:after,
.l-block05 .scrollLineAnime:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 20px;
  height: 1px;
}
.l-block05 .scrollLineAnime:after {
  background: transparent;
}
.l-block05-block-list-wrapper:hover .scrollLineAnime:before {
  animation: scrollHoverAnime 1.4s infinite normal;
}
.l-block05-block-list-block p{
  padding-right: 2.0rem;
  display: inline-block;
  vertical-align: top;
  /*font-family: "Noto Serif JP", serif;*/
  text-align: left;
  color: #3aa4bf;
  
  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block05-block-list-block p sup{
  vertical-align: super;
  text-align: left;
  color: #3aa4bf;
  
  font-size:10px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block05-block-list-block ul{
  display:inline-block;
  text-align: left;
  font-size:0;
}
.l-block05-block-list-block ul li{
  padding-right:2.0rem;
  display:inline-block;
  vertical-align: top;
  /*font-family: "Noto Serif JP", serif;*/
  text-align: left;
  color: #3aa4bf;

  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block05-block-list-wrapper-message{
  padding-top:2.0rem;
  text-align: justify;
  color: #3aa4bf;

  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block05-block-list-name{
  padding-top:2.0rem;
  text-align: left;
}
.l-block05-block-list-name p{
  display:inline-block;
  background:#FFFFFF;
  border-radius:2.5rem;
  border:1px solid #cccccc;
  padding:1.0rem 2.0rem;
  text-align: left;
  color: #808080;

  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
.l-block05-btn{
  padding-top:5.0rem;
  display:block;
  text-align: left;
}


@media screen and (max-width: 767.5px) {
  .l-block05{
    padding-bottom:13.0rem;
    background:#e9e3d1;
  }
  .l-block05-titile{
    padding:12.0rem 3.0rem 3.0rem;
    clip-path: inset(0);
    position: relative;
    height: 36.0rem;
  }
  .l-block05-titile:before{
    content: "";
    display: inline-block;
    top: 0;
    left: 0;
    bottom: 0;
    width:100%;
    height: calc(34.7rem + (-1 * (100vw - 1920px) * 0.2));
    position: absolute;
    z-index: -1;
    background: url("../images/top/block05-bg01_pc.png") top center no-repeat #fafaf0;
    background-size: cover;
    margin:0 auto;
  }
  .l-block05-titile-table{
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
    width:100%;
    display:block;
  }
  .l-block05-titile-table > div{
    width:100%;
    display:block;
    vertical-align: top;
  }
  .l-block05-titile-table-left{
    text-align: left;
  }
  .l-block05-titile-table-left h2{
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    color: #FFFFFF;
    
    font-size: 6.2rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.05em;
    
    white-space: wrap;
  }
  .l-block05-titile-table-left h2 span{
    position: relative;
    left:0;
  }
  .l-block05-titile-table-right{
    width:100%;
    display:block;
    padding-top:0;
    text-align: left;
  }
  .l-block05-titile-table-right h3{
    padding-right: 0;
    padding-left: 3.2rem;
    text-align: left;
    color: #FFFFFF;

    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block05-titile-table-right-btn{
    display:none;
    padding-top:2.0rem;
    text-align: left;
  }
  .l-block05-inner{
    max-width:100%;
    width:100%;
    margin:-15.0rem auto 0;
    padding:0 3.0rem;
  }
  .l-block05-table{
    width:100%;
    display:block;
  }
  .l-block05-table > div{
    width:100%;
    display:block;
  }
  .l-block05-table-left{
    width:100%;
    display:block;
    padding-left:3.2rem;
    padding-top:0;
    display:none !important;
  }
  .l-block05-table-left h2{
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    color: #FFFFFF;

    font-size: 6.2rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.05em;
    
    white-space: wrap;
  }
  .l-block05-table-left h2 span{
    position: relative;
    left: 0;
  }
  .l-block05-table-right{
    width:100%;
    display:block;
    padding-top:5.0rem;
  }
  .l-block05-block{
    width: 100%;
    display: block;
    text-align: left;
    font-size: 0;
  }
  .l-block05-block-list{
    width: 100%;
    display: block;
    vertical-align: top;
    border-top: 1px solid #e9e3d1;
    border-right: none;
    transition: 0.3s;
  }
  .l-block05-block-list:has(.l-block05-block-list-wrapper:hover){
    background:#f1eee0;
  }
  .l-block05-block-list:nth-of-type(1) {
    border-top:1px solid #e9e3d1;
  }
  .l-block05-block-list:nth-of-type(2) {
    border-top: 1px solid #e9e3d1;
  }
  .l-block05-block-list:nth-of-type(odd) {
    border-right: none;
  }
  .l-block05-block-list:nth-of-type(odd) .l-block05-block-list-wrapper{
    margin:0 auto;
  }
  .l-block05-block-list:nth-of-type(even) .l-block05-block-list-wrapper{
    margin:0 auto;
  }
  .l-block05-block-list-wrapper:hover{
    opacity:1.0;
  }
  .l-block05-block-list-wrapper{
    display:block;
    padding:6.0rem 3.0rem 6.0rem 3.0rem;
  }
  .l-block05-block-list-wrapper-title{
    /*font-family: "Noto Serif JP", serif;*/
    text-align: left;
    color: #3aa4bf;

    font-size: 4.2rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block05-block-list-wrapper picture{
    display: block;
    padding-top: 2.0rem;
  }
  .l-block05-block-list-wrapper picture img{
    width: 100%;
  }
  .l-block05-block-list-block{
    padding-top: 2.5rem;
    text-align: left;
    font-size: 0;
    position: relative;
    padding-right: 7.0rem;
  }
  .l-block05 .scrollLineAnime{
    position: absolute;
    width: 5.0rem;
    height: 1px;
    overflow: hidden;
    z-index: 4;
    display: block;
    right: 0;
    top: auto;
    bottom: 2.5rem;
    margin: auto 0;
  }
  .l-block05 .scrollLineAnime:before {
    background: #3aa4bf;
    z-index: 10;
  }
  .l-block05 .scrollLineAnime:after,
  .l-block05 .scrollLineAnime:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 5.0rem;
    height: 1px;
  }
  .l-block05 .scrollLineAnime:after {
    background: transparent;
  }
  .l-block05-block-list-wrapper:hover .scrollLineAnime:before {
    animation: scrollHoverAnime 1.4s infinite normal;
  }
  .l-block05-block-list-block p{
    padding-right: 2.0rem;
    display: inline-block;
    vertical-align: top;
    /*font-family: "Noto Serif JP", serif;*/
    text-align: left;
    color: #3aa4bf;
    
    font-size: 2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block05-block-list-block p sup{
    vertical-align: super;
    text-align: left;
    color: #3aa4bf;

    font-size:1.5rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block05-block-list-block ul{
    display:inline-block;
    text-align: left;
    font-size:0;
  }
  .l-block05-block-list-block ul li{
    padding-right: 2.0rem;
    display: inline-block;
    vertical-align: top;
    /*font-family: "Noto Serif JP", serif;*/
    text-align: left;
    color: #3aa4bf;
    
    font-size: 2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block05-block-list-wrapper-message{
    padding-top: 2.0rem;
    text-align: justify;
    color: #3aa4bf;
    
    font-size: 2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block05-block-list-name{
    padding-top:2.0rem;
    text-align: left;
  }
  .l-block05-block-list-name p{
    display: inline-block;
    background: #FFFFFF;
    border-radius:3.5rem;
    border:1px solid #cccccc;
    padding: 1.0rem 4.0rem;
    text-align: left;
    color: #808080;
    
    font-size: 2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
  .l-block05-btn{
    display:block;
    text-align: left;
    padding:4.0rem 0 0;
  }
}


.l-block06{
  padding:0 0;
  clip-path: inset(0);
}
.l-block06:before{
  content: "";
  display: inline-block;
  top: 0;
  left: 0;
  bottom: 0;
  width:100%;
  height: 100%;
  position: fixed;
  z-index: -1;
  background: url("../images/top/block06-bg01_pc.png") top center no-repeat transparent;
  background-size: cover;
  margin:0 auto;
}
.l-block06-inner{
  max-width: 1920px;
  width: 100%;
  margin: 0 auto;
  padding:12.0rem 0 15.0rem;
}
.l-block06-inner + .l-block06-inner{
  border-top:1px solid #FFFFFF;
}
.l-block06-table{
  width: 100%;
  display: table;
}
.l-block06-table > div{
  display: table-cell;
  vertical-align: top;
}
.l-block06-table-left{
  width: 17.5rem;
  text-align: left;
  padding-top:12.0rem;
  padding-left:3.0rem;
}
.l-block06-table-left h2{
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  color: #FFFFFF;
  
  font-size:70px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  
  white-space: nowrap;
}
.l-block06-table-left h2 span{
  position: relative;
  left:10px;
}
.l-block06-table-right{
  width:147.5rem;
  text-align: left;
  padding-right:12.0rem;
}
.l-block06-table-right-wrapper{
  width:100%;
}
.l-block06-table-right-wrapper h3{
  padding-bottom:9.0rem;
  text-align: center;
  color: #FFFFFF;
  
  font-size: 30px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block06-table-right-box{
  background:#fafaf0;
  padding:3.0rem 16.0rem 8.5rem 21.5rem;
  width:100%;
}
.l-block06-table-right-block{
  display:block;
  padding:5.0rem 0;
  border-bottom:1px dotted #3aa4bf;
}
.l-block06-table-right-block:last-of-type{
  border-bottom:none;
}
.l-block06-table-right-block-table{
  width:100%;
  display:table;
}
.l-block06-table-right-block-table > div{
  display:table-cell;
  vertical-align: top;
  text-align: left;
}
.l-block06-table-right-block-table-left{
  width:40.0rem;
  padding-right:10.0rem;
}
.l-block06-table-right-block-table-left picture{
  
}
.l-block06-table-right-block-table-left picture img{
  width:100%;
}
.l-block06-table-right-block-table-right{
  width:70.0rem;
}
.l-block06-table-right-block-table-right-wrapper{
  max-width:550px;
  width:100%;
}
.l-block06-table-right-block-table-right-wrapper dl{
  
}
.l-block06-table-right-block-table-right-wrapper dl dt{  
  text-align: left;
  color: #3aa4bf;
  
  font-size:20px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
  
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
}
.l-block06-table-right-block-table-right-wrapper dl dd{
  padding-top:2.5rem;
  text-align: left;
  color: #FFFFFF;
  
  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
  
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
}
.l-block06-table-right-block-table-right-wrapper dl dd *{
  text-align: left;
  color: #808080;
  
  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block06-table-right-block-table-right-wrapper dl dd .toc{
  display:none !important;
}
.l-block06-table-right-block-table-right-wrapper dl dd .downloadshort{
  display:none !important;
}
.l-block06-table-right-block-table-right-wrapper dl dd .l-contents-none{
  display:none !important;
}
.l-block06-table-right-block-table-right-wrapper dl dd img{
  display:none;
}
.l-block06-table-right-block-table-right-wrapper-block{
  padding-top:2.0rem;
  display:block;
  text-align: left;
  font-size:0;
}
.l-block06-table-right-block-table-right-wrapper-block-cat{
  display:inline-block;
  vertical-align: middle;
  margin-right:1.0rem;
  border-radius: 2.5rem;
  background:#FFFFFF;
  border:1px solid #f0f0f0;
  padding:1.0rem 2.0rem;
  min-width:13.0rem;
  text-align: center;
  color: #808080;
  
  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block06-table-right-block-table-right-wrapper-block-date{
  display:inline-block;
  vertical-align: middle;
  text-align: left;
  color: #808080;
  
  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block06-table-right-wrapper-btn{
  text-align: left;
}



@media screen and (max-width: 767.5px) {
  .l-block06{
    padding:0 3.0rem;
    clip-path: inset(0);
  }
  .l-block06:before{
    content: "";
    display: inline-block;
    top: 0;
    left: 0;
    bottom: 0;
    width:100%;
    height: 100%;
    position: fixed;
    z-index: -1;
    background: url("../images/top/block06-bg01_pc.png") top center no-repeat transparent;
    background-size: cover;
    margin:0 auto;
  }
  .l-block06-inner{
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
    padding:10.0rem 0;
  }
  .l-block06-inner + .l-block06-inner{
    border-top:1px solid #FFFFFF;
  }
  .l-block06-table{
    width: 100%;
    display: block;
  }
  .l-block06-table > div{
    width: 100%;
    display: block;
    vertical-align: top;
  }
  .l-block06-table-left{
    width: 100%;
    display: block;
    text-align: left;
    padding-top:0;
    padding-left:0;
  }
  .l-block06-table-left h2{
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    color: #FFFFFF;
    
    font-size: 6.2rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.05em;
    
    white-space: wrap;
  }
  .l-block06-table-left h2 span{
    position: relative;
    left:0;
  }
  .l-block06-table-right{
    width: 100%;
    display: block;
    text-align: left;
    padding-right:0;
  }
  .l-block06-table-right-wrapper{
    max-width:100%;
    width:100%;
  }
  .l-block06-table-right-wrapper h3{
    padding-bottom:9.0rem;
    padding-left: 3.2rem;
    text-align: left;
    color: #FFFFFF;

    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block06-table-right-box{
    background:#fafaf0;
    padding:3.0rem 5.0rem 6.0rem 5.0rem;
    width:100%;
  }
  .l-block06-table-right-block{
    display:block;
    padding:5.0rem 0;
    border-bottom:1px dotted #3aa4bf;
  }
  .l-block06-table-right-block:last-of-type{
    border-bottom:none;
  }
  .l-block06-table-right-block-table{
    width:100%;
    display:block;
  }
  .l-block06-table-right-block-table > div{
    width:100%;
    display:block;
    vertical-align: top;
    text-align: left;
  }
  .l-block06-table-right-block-table-left{
    width:100%;
    display:block;
    padding-right:0;
  }
  .l-block06-table-right-block-table-left picture{

  }
  .l-block06-table-right-block-table-left picture img{
    width:100%;
  }
  .l-block06-table-right-block-table-right{
    width:100%;
    display:block;
    padding-top:4.0rem;
  }
  .l-block06-table-right-block-table-right-wrapper{
    max-width:100%;
    width:100%;
  }
  .l-block06-table-right-block-table-right-wrapper dl{

  }
  .l-block06-table-right-block-table-right-wrapper dl dt{  
    text-align: left;
    color: #3aa4bf;

    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
  }
  .l-block06-table-right-block-table-right-wrapper dl dd{
    padding-top:2.5rem;
    text-align: left;
    color: #FFFFFF;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
  }
  .l-block06-table-right-block-table-right-wrapper dl dd *{
    text-align: left;
    color: #808080;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block06-table-right-block-table-right-wrapper dl dd .toc{
    display:none !important;
  }
  .l-block06-table-right-block-table-right-wrapper dl dd .downloadshort{
    display:none !important;
  }
  .l-block06-table-right-block-table-right-wrapper dl dd .l-contents-none{
    display:none !important;
  }
  .l-block06-table-right-block-table-right-wrapper dl dd img{
    display:none;
  }
  .l-block06-table-right-block-table-right-wrapper-block{
    padding-top:2.0rem;
    display:block;
    text-align: left;
    font-size:0;
  }
  .l-block06-table-right-block-table-right-wrapper-block-cat{
    display:inline-block;
    vertical-align: middle;
    margin-right:3.0rem;
    border-radius: 2.5rem;
    background:#FFFFFF;
    border:1px solid #f0f0f0;
    padding:1.0rem 4.0rem;
    min-width:13.0rem;
    text-align: center;
    color: #808080;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block06-table-right-block-table-right-wrapper-block-date{
    display:inline-block;
    vertical-align: middle;
    text-align: left;
    color: #808080;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block06-table-right-wrapper-btn{
    padding-top:4.0rem;
    text-align: left;
  }
}


.l-block07{
  padding:13.0rem 0 14.0rem;
  background:#e9e3d1;
}
.l-block07-inner{  
  max-width: 1920px;
  width: 100%;
  margin: 0 auto;
}
.l-block07-table{
  width:100%;
  display:table;
}
.l-block07-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-block07-table-left{
  width: 29.0rem;
  text-align: left;
  padding-top:8.5rem;
  padding-left:3.0rem;
}
.l-block07-table-left h2{
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  color: #FFFFFF;
  
  font-size:70px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  
  white-space: nowrap;
}
.l-block07-table-left h2 span{
  position: relative;
  left:10px;
}
.l-block07-table-right{
  width:148.0rem;
  text-align: left;
  padding-right:28.0rem;
}
.l-block07-table-right > h3{
  padding-bottom:5.0rem;
  text-align: center;
  color: #FFFFFF;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block07-table-right-wrapper{
  background:#fafaf0;
  padding:4.0rem 10.0rem 8.0rem;
}
.l-block07-table-right-block{
  display: block;
  padding:4.0rem 0;
  border-bottom:1px solid #e9e3d1;
  position:relative;
}
.l-block07-table-right-block dl{
  
}
.l-block07-table-right-block dl dt{
  text-align: left;
  color: #3aa4bf;
  
  font-size:20px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block07-table-right-block dl dd{
  padding-top:1.2rem;
  text-align: left;
  color: #333333;
  
  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block07-table-right-block .scrollLineAnime{
  position: absolute;
  width: 20px;
  height: 1px;
  overflow: hidden;
  z-index: 4;
  display: block;
  right:4.8rem;
  top:0;
  bottom:0;
  margin:auto 0;
}
.l-block07-table-right-block .scrollLineAnime:before {
  background: #abaeb4;
  z-index: 10;
}
.l-block07-table-right-block .scrollLineAnime:after,
.l-block07-table-right-block .scrollLineAnime:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 20px;
  height: 1px;
}
.l-block07-table-right-block .scrollLineAnime:after {
  background: transparent;
}
.l-block07-table-right-block:hover .scrollLineAnime:before {
  animation: scrollHoverAnime 1.4s infinite normal;
}
.l-block07-table-right-btn{
  padding-top:6.8rem;
  text-align: left;
}


@media screen and (max-width: 767.5px) {
  .l-block07{
    padding:10.0rem 3.0rem 10.0rem;
    background:#e9e3d1;
  }
  .l-block07-inner{  
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
  }
  .l-block07-table{
    width:100%;
    display:block;
  }
  .l-block07-table > div{
    width:100%;
    display:block;
    vertical-align: top;
  }
  .l-block07-table-left{
    width:100%;
    display:block;
    text-align: left;
    padding-top:0;
    padding-left:0;
  }
  .l-block07-table-left h2{
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    color: #FFFFFF;
    
    font-size: 6.2rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.05em;
    
    white-space: wrap;
  }
  .l-block07-table-left h2 span{
    position: relative;
    left:0;
  }
  .l-block07-table-right{
    padding-top:0;
    width:100%;
    display:block;
    text-align: left;
    padding-right:0;
  }
  .l-block07-table-right > h3{
    padding-bottom:5.0rem;
    padding-left: 3.2rem;
    text-align: left;
    color: #FFFFFF;
    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block07-table-right-wrapper{
    background:#fafaf0;
    padding:4.0rem 5.0rem 8.0rem;
  }
  .l-block07-table-right-block{
    display: block;
    padding:4.0rem 0;
    border-bottom:1px solid #e9e3d1;
    position:relative;
  }
  .l-block07-table-right-block dl{

  }
  .l-block07-table-right-block dl dt{
    text-align: left;
    color: #3aa4bf;

    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block07-table-right-block dl dd{
    padding-top:1.2rem;
    text-align: left;
    color: #333333;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block07-table-right-block .scrollLineAnime{
    position: absolute;
    width: 5.0rem;
    height: 1px;
    overflow: hidden;
    z-index: 4;
    display: block;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
  }
  .l-block07-table-right-block .scrollLineAnime:before {
    background: #abaeb4;
    z-index: 10;
  }
  .l-block07-table-right-block .scrollLineAnime:after,
  .l-block07-table-right-block .scrollLineAnime:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 5.0rem;
    height: 1px;
  }
  .l-block07-table-right-block .scrollLineAnime:after {
    background: transparent;
  }
  .l-block07-table-right-block:hover .scrollLineAnime:before {
    animation: scrollHoverAnime 1.4s infinite normal;
  }
  .l-block07-table-right-btn{
    padding-top:6.8rem;
    text-align: left;
  }
}





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


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





