@charset "utf-8";

/* main */
main{
  padding-top:0;
}
@media screen and (max-width:768px){
  main{
    padding-top:58px;
  }
}


/* #mv */
#mv{
  padding:min(calc(2.5vw + 58px),88px) 0 min(26%,320px);
  background:url(../images/top/top_bg.webp)no-repeat center bottom;
  position:relative;
}
#mv .slider_wrapper{
  max-width:1200px;
  margin:auto;
  position:relative;

}
#mv .slider_wrapper h1{
  width:57.8%;
  position:absolute;
  left:3%;
  bottom:9%;
  z-index:99;
}

@media screen and (max-width:1200px){
  #mv{
    background-size:138% auto;
  }
}

@media screen and (max-width:768px){
  #mv{
    padding:0;
    background-image:none;
  }
  #mv .slider_wrapper{
    width:100%;
    padding-top:5%;
  }
  #mv .slider_wrapper .slick{
    margin:0;
  }
  #mv .slider_wrapper h1{
    width:94%;
    position:absolute;
    left:50%;
    bottom:50%;
    transform:translate(-50%,58%);
  }
}



/* #cont1 */
#cont1{
  margin-top:-22%;
  background:url(../images/top/cont1_bg.webp) no-repeat center bottom;
}
#cont1 .cont_wrapper{
  margin-top:min(5%,50px);
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#cont1 .cont_wrapper figure{
  width:min(44%,480px);
}
#cont1 .cont_wrapper section{
  width:min(50%,544px);
  text-align:left;
}
#cont1 .cont_wrapper section h3{
  margin-bottom:1.3em;
  line-height:1.3;
  font-size:min(3.2vw,32px);
}
#cont1 .cont_wrapper section p{
  margin-top:1em;
}

#cont1 .bottom_sec{
  margin-top:min(7%,70px);
}
#cont1 .bottom_sec h3{
  font-size:min(2.4vw,24px);
}
#cont1 .bottom_sec .lead{
  margin-top:min(4%,40px);
}
#cont1 .bottom_sec .point{
  width:min(100%,972px);
  margin:min(4%,40px) auto 0;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#cont1 .bottom_sec .point li{
  width:31.6%;
  padding:1%;
  background-color:#fff;
}
#cont1 .bottom_sec .point li figure figcaption{
  margin:0.5em 2% 0;
  font-size:min(2vw,20px);
  font-weight:bold;
  border-bottom:1px dotted;
}
#cont1 .bottom_sec .point li p{
  margin-top:1em;
  padding:0 2%;
  font-size:min(1.4vw,14px);
  text-align:left;
}
#cont1 .bottom_sec .pr{
  margin-top:min(5%,50px);
}
#cont1 .bottom_sec .pr p:nth-child(n+2){
  margin-top:1em;
}

@media screen and (max-width:1080px){
  #cont1{
    background-size:180% auto;
  }
}

@media screen and (max-width:768px){
  #cont1{
    margin-top:0;
    background:url(../images/top/cont1_bg_s.jpg)no-repeat center bottom;
    background-size:cover;
  }
  #cont1 .cont_wrapper{
    margin-top:9%;
    display: block;
  }
  #cont1 .cont_wrapper figure{
    width:auto;
  }
  #cont1 .cont_wrapper section{
    width:auto;
    margin-top:9%;
  }
  #cont1 .cont_wrapper section h3{
    margin-bottom:1.3em;
    font-size:8vw;
  }
  #cont1 .cont_wrapper section p{
    margin-top:1em;
  }

  #cont1 .bottom_sec{
    margin-top:15%;
  }
  #cont1 .bottom_sec h3{
    line-height:1.3;
    padding:0 0.8em;
    font-size:6vw;
    text-align:left;
    position:relative;
  }
  #cont1 .bottom_sec h3:before{
    position:absolute;
    left:0;
    top:50%;
    transform:translateY(-50%);
  }
  #cont1 .bottom_sec h3:after{
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
  }
  #cont1 .bottom_sec .lead{
    margin-top:7%;
    text-align:left;
  }
  #cont1 .bottom_sec .point{
    width:auto;
    margin-top:7%;
    display: block;
  }
  #cont1 .bottom_sec .point li{
    width:auto;
    margin-top:5%;
    padding:3% 3% 7%;
  }
  #cont1 .bottom_sec .point li figure figcaption{
    margin:0.5em 2% 0;
    font-size:5vw;
    font-weight:bold;
    border-bottom:1px dotted;
  }
  #cont1 .bottom_sec .point li p{
    padding:0 2%;
    font-size:3.5vw;
  }
  #cont1 .bottom_sec .pr{
    margin-top:9%;
    text-align:left;
  }
}


/* .sec_wrapper */
.sec_wrapper{
  background:url(../images/top/sec_wrapper_bg.jpg)no-repeat center bottom;
}

@media screen and (max-width:1080px){
  .sec_wrapper{
    background-size:200% auto;
  }
}

@media screen and (max-width:768px){
  .sec_wrapper{
    background:url(../images/top/sec_wrapper_bg_s.jpg)no-repeat center bottom;
    background-size:100% auto;
  }
}


/* #cont2 */
#cont2{
}
#cont2 .sec{
  max-width:960px;
}
#cont2 .sec .cont_wrapper{
  margin-top:min(5%,50px);
  padding:3%;
  border:2px solid;
  border-image: linear-gradient(to right bottom, #CCE8FE, #E5B8C7) 1;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#cont2 .sec .cont_wrapper .cont_left{
  width:48%;
  text-align:left;
}
#cont2 .sec .cont_wrapper .cont_right{
  width:48%;
  text-align:left;
}
#cont2 .sec .cont_wrapper .cont_left .info_list,
#cont2 .sec .cont_wrapper .cont_right .column_list{
  height:260px;
  padding:0 3%;
  overflow:auto;
  border:1px solid #F3EDED;
}

/* Firefox スクロールバーデザイン */
@supports (-moz-appearance: none) {
  #cont2 .sec .cont_wrapper .cont_left .info_list,
  #cont2 .sec .cont_wrapper .cont_right .column_list{
    scrollbar-width: auto;
    scrollbar-color: #DB7E7E #F3EDED;
  }
}

/* Chrome / Safari　スクロールバーデザイン */
#cont2 .sec .cont_wrapper .cont_left .info_list::-webkit-scrollbar,
#cont2 .sec .cont_wrapper .cont_right .column_list::-webkit-scrollbar{
  width: 6px;
}
#cont2 .sec .cont_wrapper .cont_left .info_list::-webkit-scrollbar-track,
#cont2 .sec .cont_wrapper .cont_right .column_list::-webkit-scrollbar-track{
  background: #F3EDED;
}
#cont2 .sec .cont_wrapper .cont_left .info_list::-webkit-scrollbar-thumb,
#cont2 .sec .cont_wrapper .cont_right .column_list::-webkit-scrollbar-thumb{
  background: #DB7E7E;
}

#cont2 .sec .cont_wrapper .cont_left .info_list > li,
#cont2 .sec .cont_wrapper .cont_right .column_list > li{
  padding:4% 0;
}
#cont2 .sec .cont_wrapper .cont_left .info_list > li:nth-child(n+2),
#cont2 .sec .cont_wrapper .cont_right .column_list > li:nth-child(n+2){
  border-top:1px solid;
  border-image: linear-gradient(to right, #CCE8FE, #E5B8C7) 1;
}

#cont2 .sec .cont_wrapper .cont_left .info_list > li dl{
  display: -webkit-flex;
  display: flex;
}
#cont2 .sec .cont_wrapper .cont_left .info_list > li dl .date{
  width:7em;
}
#cont2 .sec .cont_wrapper .cont_left .info_list > li dl .title{
  flex:1;
}
#cont2 .sec .cont_wrapper .cont_right .column_list > li a{
  display: -webkit-flex;
  display: flex;
}
#cont2 .sec .cont_wrapper .cont_right .column_list > li a figure{
  width:47%;
}
#cont2 .sec .cont_wrapper .cont_right .column_list > li a figure img{
  aspect-ratio:180 / 105;
  object-fit:cover;
}
#cont2 .sec .cont_wrapper .cont_right .column_list > li a dl{
  flex:1;
  margin-left:0.5em;
}
#cont2 .sec .cont_wrapper .cont_right .column_list > li a dl .cat{
  margin-top:0.3em;
}
#cont2 .sec .cont_wrapper .cont_right .column_list > li a dl .cat .cat_list{
  display: -webkit-flex;
  display: flex;
}
#cont2 .sec .cont_wrapper .cont_right .column_list > li a dl .cat .cat_list li{
  font-size:min(1.4vw,14px);
  padding:0 0.5em;
  border-radius:100px;
}
#cont2 .sec .cont_wrapper .cont_right .column_list > li a dl .cat .cat_list li:nth-child(n+2){
  margin-left:0.3em;
}
#cont2 .sec .cont_wrapper .cont_left .list_link,
#cont2 .sec .cont_wrapper .cont_right .list_link{
  margin-top:5%;
  padding-right:5%;
}

@media screen and (max-width:768px){
  #cont2 .sec .cont_wrapper{
    margin-top:12%;
    padding:5%;
    display: block;
  }
  #cont2 .sec .cont_wrapper .cont_left{
    width:auto;
  }
  #cont2 .sec .cont_wrapper .cont_right{
    width:auto;
    margin-top:9%;
  }
  
  #cont2 .sec .cont_wrapper .cont_left .info_list{
    height:auto;
    aspect-ratio:280 / 220;
  }
  #cont2 .sec .cont_wrapper .cont_right .column_list{
    height:auto;
    aspect-ratio:280 / 280;
  }

  #cont2 .sec .cont_wrapper .cont_left .info_list > li dl{
    display: block;
  }
  #cont2 .sec .cont_wrapper .cont_right .column_list > li a{
    display: -webkit-flex;
    display: flex;
  }
  #cont2 .sec .cont_wrapper .cont_right .column_list > li a figure img{
    aspect-ratio:1 / 1;
    object-fit:cover;
  }
  #cont2 .sec .cont_wrapper .cont_right .column_list > li a dl .cat{
    margin-top:0.3em;
  }
  #cont2 .sec .cont_wrapper .cont_right .column_list > li a dl .cat .cat_list li{
    font-size:3.5vw;
  }
}


/* #cont3 */
#cont3{
  padding-top:0;
}
#cont3 .menu_list{
  margin-top:min(3%,30px);
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
#cont3 .menu_list > li{
  width:32%;
  margin:2% 2% 0 0;
  padding:1% 1% 2%;
  background-color:#fff;
  border-radius:3em;
}
#cont3 .menu_list > li:nth-child(3n+3){
  margin-right:0;
}
#cont3 .menu_list > li figure figcaption{
  margin-top:0.5em;
  font-size:min(2.4vw,24px);
}
#cont3 .menu_list > li:nth-child(even) figure figcaption:before,
#cont3 .menu_list > li:nth-child(even) figure figcaption:after{
  color:#589DD8;
}
#cont3 .menu_list > li .link_list{
  padding:0 3%;
}
#cont3 .menu_list > li .link_list li{
  margin-top:3%;
}
#cont3 .menu_list > li .link_list li .btn{
  width:100%;
  margin-top:0;
}
#cont3 .banner_list{
  margin-top:min(7%,70px);
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
}
#cont3 .banner_list li{
  width:min(45%,456px);
  margin: 0 0.7em;
}

@media screen and (max-width:768px){
  #cont3 .menu_list{
    margin-top:12%;
    display: block;
  }
  #cont3 .menu_list > li{
    width:auto;
    margin:7% 0 0;
    padding:3% 3% 7%;
  }
  #cont3 .menu_list > li figure figcaption{
    margin-top:0.3em;
    font-size:6vw;
  }
  #cont3 .menu_list > li .link_list{
    padding:0 4%;
  }
  #cont3 .banner_list{
    margin-top:12%;
    display: block;
  }
  #cont3 .banner_list li{
    width:auto;
    margin: 5% 0;
  }
}


/* #cont4 */
#cont4{
  padding-bottom:0;
}
#cont4 .cont_wrapper{
  max-width:960px;
  margin-top:min(5%,50px);
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#cont4 .cont_wrapper .tbl_wrapper{
  width:min(64%,618px);
  padding:1% 3%;
  border:2px solid;
  border-image: linear-gradient(to right bottom, #CCE8FE, #E5B8C7) 1;
}
#cont4 .cont_wrapper .caution{
  width:min(32%,300px);
}
#cont4 .cont_wrapper .caution li{
  text-align:left;
  white-space:nowrap;
}
#cont4 .cont_wrapper .caution li:nth-child(n+2){
  margin-top:1em;
}
#cont4 .cont_wrapper .caution li .btn{
  width:100%;
  text-align:center;
}

@media screen and (max-width:768px){
  #cont4 .cont_wrapper{
    margin-top:12%;
    display: block;
  }
  #cont4 .cont_wrapper .tbl_wrapper{
    width:auto;
    padding:1.5% 5%;
  }
  #cont4 .cont_wrapper .caution{
    width:auto;
    margin-top:1em;
  }
  #cont4 .cont_wrapper .caution li{
    text-align:left;
    white-space:nowrap;
  }
  #cont4 .cont_wrapper .caution li:nth-child(n+2){
    margin-top:1em;
  }
  #cont4 .cont_wrapper .caution li .btn{
    width:90%;
    margin-top:1.5em;
    text-align:center;
  }
}


/* #cont5 */
#cont5{
  background:url(../images/top/cont5_bg.jpg)no-repeat center -5%;
}
#cont5 .cont_wrapper{
  margin-top:min(5%,50px);
  display: -webkit-flex;
  display: flex;
  background-color:#FEF2F3;
}
#cont5 .cont_wrapper .map{
  width:min(48%,515px);
  padding-top:38.67%;
  padding-top:min(45%,415px);
  position:relative;
}
#cont5 .cont_wrapper .map iframe{
  width:100%;
  height:100%;
  position:absolute;
  left:0;
  top:0;
}
#cont5 .cont_wrapper .sec{
  padding:3% 0 0 3%;
  flex:1;
}
#cont5 .cont_wrapper .sec h3{
  font-size:min(3.2vw,32px);
  text-align:left;
}
#cont5 .cont_wrapper .sec .tbl{
  margin-top:5%;
  text-align:left;
}
#cont5 .cont_wrapper .sec .tbl th{
  width:5em;
  padding:0.3em 0;
  border-right:2px solid #E5B8C7;
  font-weight:normal;
  vertical-align:top;
}
#cont5 .cont_wrapper .sec .tbl td{
  padding:0.3em 0 0.3em 1em;
}
#cont5 .cont_wrapper .sec .tbl td ul li{
  padding-left:1em;
  text-indent:-1em;
}
#cont5 .cont_wrapper .sec .tbl td ul li:before{
  content:'・';
}
#cont5 .cont_wrapper .sec .btn{
  margin-top:5%;
}

#cont5 .bottom_sec{
  margin-top:min(7%,70px);
  text-align:left;
}
#cont5 .bottom_sec .square_tit{
  font-size:min(2.4vw,24px);
}
#cont5 .bottom_sec .square_tit:after{
  content:none;
}
#cont5 .bottom_sec p{
  margin-top:1em;
}

@media screen and (max-width:768px){
  #cont5{
    background-image:none;
  }
  #cont5 .cont_wrapper{
    margin-top:12%;
    display: block;
  }
  #cont5 .cont_wrapper .map{
    width:auto;
    padding-top:82%;
  }
  #cont5 .cont_wrapper .sec{
    padding:5% 5% 9%;
  }
  #cont5 .cont_wrapper .sec h3{
    font-size:6vw;
  }
  #cont5 .cont_wrapper .sec .tbl{
    margin-top:5%;
  }
  #cont5 .cont_wrapper .sec .tbl th{
    width:4.5em;
  }
  #cont5 .cont_wrapper .sec .tbl td{
    padding:0.3em;
  }
  #cont5 .cont_wrapper .sec .btn{
    width:100%;
    margin-top:5%;
  }

  #cont5 .bottom_sec{
    margin-top:12%;
  }
  #cont5 .bottom_sec .square_tit{
    font-size:6vw;
    white-space:nowrap;
  }
}


/* .bottom_slider */
.bottom_slider{
  width:100%;
  display: -webkit-flex;
  display: flex;
  width: max-content;
  overflow:hidden;
}
.bottom_slider img{
  height:22vw;
  display:block;
}
.bottom_slider.animation img{
  animation: lr 80s linear infinite;
  animation-delay: -3s
}
@keyframes lr {
  from{
    transform: translateX(0%);
  }
  to {
    transform: translateX(-100%);
  }
}

@media screen and (max-width:750px){
  .bottom_slider img{
    height:60vw;
  }
}


/* #cont6 */
#cont6{
  padding-bottom:0;
  background:url(../images/top/cont6_bg.jpg)no-repeat center 7%;
}
#cont6 .cont_wrapper{
  margin-top:min(5%,50px);
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}
#cont6 .cont_wrapper figure{
  width:min(48%,516px);
  position:relative;
}
#cont6 .cont_wrapper figure figcaption{
  padding:5% 7% 0 0;
  position:absolute;
  left:0;
  bottom:0;
  background-color:#fff;
  border-radius:0 2em 0 0;
  text-align:left;
}
#cont6 .cont_wrapper figure figcaption .position{
  display:block;
  border-bottom:2px solid;
  border-image: linear-gradient(to right, #CCE8FE, #E5B8C7) 1;
}
#cont6 .cont_wrapper figure figcaption .name{
  display:block;
  margin-top:1.5%;
}
#cont6 .cont_wrapper figure figcaption .name .jp{
  font-size:min(2.4vw,24px);
}
#cont6 .cont_wrapper figure figcaption .name .en{
  margin-left:1em;
}
#cont6 .cont_wrapper figure figcaption .small{
  line-height:1;
  font-size:min(1.4vw,14px);
}

#cont6 .cont_wrapper .sec{
  width:min(45%,484px);
}
#cont6 .cont_wrapper .sec h3{
  margin-bottom:1.2em;
  line-height:1.3;
  font-size:min(3.2vw,32px);
  text-align:left;
}
#cont6 .cont_wrapper .sec p{
  line-height:1.8;
  margin-top:1em;
  text-align:left;
}
#cont6 .cont_wrapper .sec .btn{
  margin:min(7%,70px) 0 0;
}

@media screen and (max-width:1080px){
  #cont6{
    background-size:130% auto;
  }
}

@media screen and (max-width:768px){
  #cont6{
    background:url(../images/top/cont6_bg_s.jpg)no-repeat center -3%;
    background-size:100% auto;
  }
  #cont6 .cont_wrapper{
    margin-top:12%;
    display: block;
  }
  #cont6 .cont_wrapper figure{
    width:auto;
    position:relative;
  }
  #cont6 .cont_wrapper figure figcaption{
    padding:5% 9% 0 0;
    position:absolute;
    left:0;
    bottom:-16%;
    background-color:#fff;
    border-radius:0 2em 0 0;
    text-align:left;
  }
  #cont6 .cont_wrapper figure figcaption .name{
    display:block;
    margin-top:1.5%;
  }
  #cont6 .cont_wrapper figure figcaption .name .jp{
    font-size:6vw;
  }
  #cont6 .cont_wrapper figure figcaption .name .en{
    margin-left:1em;
  }
  #cont6 .cont_wrapper figure figcaption .small{
    line-height:1;
    font-size:3.5vw;
  }

  #cont6 .cont_wrapper .sec{
    width:auto;
    margin-top:30%;
  }
  #cont6 .cont_wrapper .sec h3{
    font-size:8vw;
  }
  #cont6 .cont_wrapper .sec .btn{
    margin:12% 0 0;
  }
}


/* #cont7 */
#cont7{
  margin-top:max(-9%,-90px);
  padding-top:min(18%,180px);
  background:url(../images/top/cont7_bg.jpg)no-repeat center bottom -3px;
}
#cont7 .movie{
  margin-top:min(4%,40px);
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#cont7 .movie div{
  width:min(48%,516px);
}
#cont7 .movie div dt{
  font-size:min(2.4vw,24px);
  font-weight:500;
  text-align:left;
}
#cont7 .movie div dt:after{
  content:none;
}
#cont7 .movie div dd{
  margin-top:3%;
  cursor:pointer;
}
#cont7 .movie div dd video{
	width:100%;
}

@media screen and (max-width:1080px){
  #cont7{
    background-size:153% auto;
  }
}

@media screen and (max-width:768px){
  #cont7{
    margin-top:-16%;
    padding-top:40%;
    background:url(../images/top/cont7_bg_s.jpg)no-repeat center bottom;
    background-size:100% auto;
  }
  #cont7 .movie{
    margin-top:min(4%,40px);
    display: block;
  }
  #cont7 .movie div{
    width:auto;
    margin-top:12%;
  }
  #cont7 .movie div dt{
    font-size:6vw;
  }
  #cont7 .movie div dd{
    margin-top:5%;
  }
}

