#main{
    box-sizing: border-box;
    font-family: 'Noto Serif JP', serif;
    background: url("../images/bg_im03.webp") no-repeat;
    background-position: bottom;
}

.tocrs-btn {
  width: 100%;
  font-size: 2rem;
  position: fixed;
  right: 0;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  text-align: center;
  transition: .5s bottom ease-out;
  z-index: 100;
}
.tocrs-btn a {
  display: block;
  padding: 15px 0;
  color: #ffffff
}
.tocrs-btn a::after {
  content: '';
  width: 10px;
  height: 10px;
  display: inline-block;
  border-top: solid 2px #ffffff;
  border-right: solid 2px #ffffff;
  transform: rotate(135deg);
  margin-left: 1rem;
  margin-bottom: 0.5rem
}
.tocrs-btn a:hover {
  text-decoration: underline;
}
.tocrs-btn.active {
  bottom: 0;
  transition: .5s bottom ease-out;
}
/*.is-hidden {
  visibility: hidden;
  opacity: 0;
  transition:all 0.3s;
}*/

.Footer {
    margin-top:0;
}


#main img{
	vertical-align:top;
}
h4,h3,h2,h1{
  margin: 0;
}
.noto-serif jp-regular {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-style: normal;
}

.noto-serif jp-medium {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-style: normal;
}

.noto-serif jp-bold {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  font-style: normal;
}

@media only screen and (max-width: 767.98px){
  .pcOnly{
    display: none;
  }
  
}
@media only screen and (min-width: 768px){
  .spOnly{
    display: none;
  }
}
.scroll_up {
  transition: 1.5s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
  fadeInfadeIn
}
.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
}
.fadeIn{animation-name:fadeInAnime;animation-duration:3s;animation-fill-mode:forwards;opacity:0;}
@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

main .imgAnnotation{
  color: #535353;
  text-align: right;
  margin-right: 5px;
  padding: 5px;
}




.kv_container div{
  border-radius: 50% / 0% 0% 25% 25%;
}
.kv_bgslider{
  width: 100%;
	height: 630px;
	background-position:center center;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: right;
}
.kv_bgslider__title{
  margin-right: 22%;
  width: 280px;
  height: auto;
  pointer-events: none;
}

/*---------scroll animation----------*/
.scroll-down{
    width: 1.5px;
    height: 50px;
    background: #5fcdf1;
    animation: scrollDown 3s ease infinite;
    margin: 20px auto; /*//---you can romove this line---*/
}

@keyframes scrollDown{
    0%{
        transform-origin: top;
        transform: scaleY(0);
    }
    45%{
        transform-origin: top;
        transform: scaleY(1);
    }
    55%{
        transform-origin: bottom;
        transform: scaleY(1);
    }
    100%{
        transform-origin: bottom;
        transform: scaleY(0);
    }
}
/*---------scroll animation----------*/

.blue_tit{
  font-size: 3.0rem;
  color: #3ab1d8;
}
.lead_txt{
  line-height: 1.8;
  display: flex;
  justify-content: center;
  padding: 30px 0 90px;
}
.lead_txt span{
  line-height: 2;
  letter-spacing: 2px;
}
.lead_txt p {
  color: #535353;
  font-size: 1.9rem;
  display: inline-block;
  text-align:center;
}
.contents01{
  color: #333333;
  width: 100%;
  margin: 0 auto;
  background: url("../images/bg_im.webp")no-repeat center /cover;
  background-position: center top, center bottom;
  background-size: cover;
  background-attachment: fixed;
}
.antarctic_map{
  max-width: 1250px;
  margin: 0 auto;
  padding: 60px 40px;
}
.antarctic_map h2{
  display: inline-block;
  font-size: 4.5rem;
  line-height:1.3;
  margin: 0;
  background: #fff;
  border-radius: 10px;
  padding: 6px 20px 8px 15px;
  color:#4a76dd;
}
.antarctic_map h2:before{
  position: relative;
  display: inline-block;
  background: url("../images/map_ic.png") no-repeat;
  content: "";
  width: 50px;
  height: 50px;
  margin: -8px 5px 0 0;
  vertical-align: middle;
}
.pcMap img{
  max-width: 100%;
  margin: -160px 0 0;
}
.mapPoint_list{
  margin-top: 28px;
  display: flex;
}
.mapPoint_list_body{
  flex: 1;
  background: #FFFFFF;
  border-radius: 10px;
  padding: 15px 20px 16px 20px;
}
.mapPoint_list_body:not(:first-child){
  margin-left: 36px;
}
.mapPoint_list_body_tit{
  color: #4a76dd;
  font-size: 2.2rem;
  margin-bottom: 6px;
}
.mapPoint_list_body_tit:before{
  position: relative;
  display: inline-block;
  background: url("../images/point_ic.png") no-repeat;
  content: "";
  width: 16px;
  height: 22px;
  margin: -5px 5px 0 0;
  vertical-align: middle;
}

.contents02{
  border-radius: 50% / 0% 0% 25% 25%;
  background: rgb(108,143,223);
  background: linear-gradient(350deg, rgba(108,143,223,1) 0%, rgba(126,219,227,1) 100%);
}
.animal{
  max-width: 1250px;
  margin: 0 auto;
  padding: 50px 40px 100px;
}
.contents02 h2{
  color: #FFFFFF;
  font-size: 3.6rem;
  text-align:center;
  font-weight: 500
}
.contents02 h2:before{
  position: relative;
  display: inline-block;
  background: url("../images/light_ic01.png") no-repeat;
  content: "";
  width: 90px;
  height: 72px;
  margin: -5px 15px 0 0;
  vertical-align: middle;
}
.contents02 h2:after{
  position: relative;
  display: inline-block;
  background: url("../images/light_ic02.png") no-repeat;
  content: "";
  width: 90px;
  height: 72px;
  margin: -5px 0 0 15px;
  vertical-align: middle;
}
.animal_list{
  margin-top:40px;
  display: flex;
}
.animal_list_body{
  flex: 1;
}
.animal_list_body:not(:first-child){
  margin-left: 18px;
}
.animal_list_body_img img{
  border-radius: 50%;
  border:solid 4px #FFFFFF;
}
.animal_list_body_tit{
  padding: 6px;
  background: rgb(255,255,255);
  background: linear-gradient(267deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 10%, rgba(255,255,255,1) 90%, rgba(255,255,255,0) 100%);
  color: #4a76dd;
  margin-top: 20px;
  text-align:center;
}
.courseBnr{
  max-width: 1070px;
  margin: 70px auto;
}
.courseBnr img{
  box-shadow: 0 3px 3px 1px rgba(0, 0, 0, .13);
  border-radius: 10px;
  /*アニメーションの指定*/
  transition: all .4s;
}
@media only screen and (min-width: 768px){
.courseBnr img:hover{
  box-shadow: 0 0 0 0 rgba(0, 0, 0,0);
  opacity: 0.6;
  }
}
 /*----------sticky----------*/

.stickyBar {
  position: sticky;
  /*top: 92px;*/
  top: 0;
  z-index: 100;
  background: #2b3e8f;
  height: 90px;
  margin-bottom: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.stickyBar ul {
  display: flex;
  align-items: center;
}

.stickyBar ul li a {
  color: #ffffff;
  display: block;
  font-size: 2.5rem;
  text-align: center;
  padding: 10px 0;
  border: 5px solid #c21500;
  border-image: linear-gradient(to right, #7edbe3 0%, #6d93df 100%);
  border-image-slice: 1;
  width: 350px;
  position: relative;
  transition: all 0.4s ease-out;
}
.stickyBar ul li a::before {
  content: "";
  position: absolute;
  top: 41%;
  left: 20px;
  display: inline-block;
  border-style: solid;
  border-width: 14px 8px 0 8px;
  border-color: #7edbe3 transparent transparent transparent;
}
@media only screen and (min-width: 768px){
.stickyBar ul li a:hover {
  text-decoration: none;
  background: rgba(255, 255, 255, 0.2);
  border-image: linear-gradient(to right, #6d93df 0%, #7edbe3 100%);
  border-image-slice: 1;
  }
.stickyBar ul li:not(:first-child){
  margin-left: 30px;
  }
}
 /*----------slide----------*/
.slide-container {
  width: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.slide-wrapper {
  display: flex;
  animation: slide-flow 30s infinite linear 1s both;
}
main *{
  min-width: auto;
}
.slide{
  min-width: 360px;
  object-fit:cover;
  border: 1px solid #ddd;
}
@keyframes slide-flow {
  0% {transform: translateX(0);}
 100% {transform: translateX(-100%);}
}
#recommend{
  color: #333333;
  width: 100%;
  margin: 0 auto;
  background: url("../images/bg_im02.webp")no-repeat center /cover;
  background-position: center top, center bottom;
  background-attachment: fixed;
}
#recommend h2{
  position:relative;
  z-index: 99;
  margin: -70px 0 0;
  text-align: center;
}
#recommend h2 img{
  max-width: 100%;
  border-radius: 10px;
}
.recommendPoint{
  max-width: 1810px;
  padding: 0 10px 60px; 
  margin: 40px auto;
}
.recommendPoint h3 span {
  background: linear-gradient(transparent 70%, #fef1bb 0);
}

.recommendPoint_point01{
  padding: 50px 30px;
  background-color: rgba(255,255,255,0.7);
  border-radius: 10px;
  box-shadow: 0px 0px 9px #7edbe3;
}
.recommendPoint_point01 .pointTit{
  /*max-width: 1150px;*/
  margin:0 auto;
  display: flex;
  align-items: center;
}

 .recommendPoint_point04{
  /*width: 100%;*/
   /*width: 50%;*/
  background-color: rgba(255,255,255,0.7);
  border-radius: 10px;
  box-shadow: 0px 0px 9px #7edbe3;
  padding: 50px 40px;
  margin-top: 40px;
}
.recommendPoint_point04 .pointTit{
  /*max-width: 1150px;*/
  margin:0 auto;
  display: flex;
}
.recommendPoint_point04 .pointTit h3{
  margin-left: 30px;
  color: #4a76dd;
  line-height: 1.4;
  font-size: 3.3rem;
}
.recommendPOint_point04 .point_txt img {
  padding: 30px;
}

.pt06 {
  width: 50%;
}

.pointTit .pointNumber{
  color: #91d6e3;
  line-height: 1;
  width: 110px;
  font-size: 9.3rem;
}
@media screen and (max-width: 1789px){
  .pointTit .pointNumber{
  width: 150px;
  }
}
.recommendPoint_point01 .pointTit h3{
  margin-left: 30px;
  color: #4a76dd;
  line-height: 1.4;
  font-size: 3.3rem;
}
.recommendPoint_point01_inner{
  display: flex;
  margin-top: 50px;
}
.recommendPoint_point01_inner_left{
  max-width: 720px;
  margin-right: 40px;
}
.recommendPoint_point01_inner_left img{
  border-radius: 10px;
  box-shadow: 0 3px 3px 1px rgba(0, 0, 0, .15);
}
@media screen and (max-width: 1789px){
  .recommendPoint_point01_inner{
  display: block;
  }
  .recommendPoint_point01_inner_left {
    max-width: 100%;
    margin-right: 0;
  }
  .recommendPoint_point01_inner_left img{
     width: 850px;
  }
}
.recommendPoint_point01_inner_left p{
  margin-top:10px; 
}
.recommendPoint_point01_inner_right h4{
  line-height: 1.4;
  font-size: 2.7rem;
}
.recommendPoint_point01_inner_right h4 span{
  font-size: 5.5rem;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, ヒラギノ角ゴ Pro, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, Arial, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
  font-weight: 700;
  color: #f2443d;
}
.recommendPoint_point01_inner_right_facility{
  margin-top:20px; 
  display: flex;
}
.pt07 {
  width: 100%;
  margin-top: 40px;
}
.facility_body{
  flex: 1; 
}
.facility_body:not(:first-of-type){
  margin-left:30px;
}
.facility_body img{
  border-radius: 50%;
  box-shadow: 0 3px 3px 1px rgba(0, 0, 0, .15);
}
.facility_body p{
  line-height: 1.4;
  font-size: 2.2rem;
  text-align: center;
  margin-top: 18px;
}
.recommendPoint_2columns{
  display: flex;
  justify-content: space-between;
      
  flex-wrap: wrap;
  margin: 0 auto;
}
@media screen and (max-width: 1789px){
  .recommendPoint_2columns{
      justify-content: space-around;
  }
  .pt07 {
    margin-top: 15px;
  }
}
.recommendPoint_point{
  display: flex;
  max-width: 875px;
  margin-top: 40px;
  padding: 50px 30px;
  background-color: rgba(255,255,255,0.7);
  border-radius: 10px;
  box-shadow: 0px 0px 9px #7edbe3;
}
.recommendPoint_point .pointTit h3{
  margin-top:10px; 
  color: #4a76dd;
  line-height: 1.4;
  font-size: 3.1rem;
}
.point_txt{
  font-size: 1.8rem;
  margin-top: 40px;
}
.recommendPoint_point_inner_right img{
  max-width:420px;
  margin-left: 40px;
  border-radius: 10px;
  box-shadow: 0 3px 3px 1px rgba(0, 0, 0, .15);
}
.contents03{
  display: flex;
  max-width: 1810px;
  margin: 0 auto;
  padding: 0 10px 15px; 
}
.contents03 h2{
  max-width: 600px;
  background: rgb(74,118,221);
  background: linear-gradient(90deg, rgba(74,118,221,1) 50%, rgba(255,255,255,0) 100%);
  color: #fff;
  font-size: 3.6rem;
  font-weight: 500;
  padding: 1px 0 3px 32px;
  margin-bottom: 40px;
}
#info{
  flex: 1;
  margin-right: 50px;
}
#question{
  flex: 1;
}
.info_body{
  text-align: left;
  display: flex;
}
.info_left{
  margin-right: 60px;
  order: 1;
  max-width: 540px;
}
.info_left h4{
  font-size: 22px;
  background: #ffd200;
  padding: 1px 0 3px 32px;
}
.info_left div{
  margin: 0 0 30px;
  border: solid 2px #ffd200;
  border-radius: 10px;
}
.info_left ul{
  padding: 10px 26px 10px 32px;
}
.info_right{
  padding-top: 30px;
  order: 2;
}
.info_right .pcOnly{
  min-width: 150px;
}
 /*----------acd----------*/
.acd-check{
	display: none;
}
.acd-label{
	color: #333;
	display: block;
  border-top: solid 1px #A8A8A8;
	margin-bottom: 1px;
	padding: 13px 32px 15px;
  position: relative;
}
.acd{
  color: #333333;
  font-size: 1.8rem;
  border-bottom: solid 1px #A8A8A8;
}
.acd-label:after{
  content: "+";
  font-size: 1.8em; /* 記号のサイズ */
  position: absolute;
  right: 32px;
  top: 50%;
  transform: translateY(-50%);
}
.acd-content{
	height: 0;
	opacity: 0;
	padding: 0 32px;
	transition: .2s;
	visibility: hidden;
}
.acd-check:checked + .acd-label:after{
   content: "−";
}
.acd-check:checked + .acd-label + .acd-content{
	height: auto;
	opacity: 1;
	padding: 5px 32px 15px;
	visibility: visible;
}
.blue_Q{
  margin-right: 10px;
  font-size: 2.6rem;
  color: #4a76dd;
  font-weight: 700;
}
.red_A{
  margin-right: 10px;
  font-size: 26px;
  color: #f2443d;
  font-weight: 700;
}

.tourBtn{
  padding-bottom: 220px;
  width: 600px;
  margin:0 auto;
}

.tourBtn a{
    text-align: center;
    display: block;
    font-size: 3.6rem;
    padding: 15px 40px;  
    border-radius:10px;
    text-decoration: none;
    background: linear-gradient(to right, #53cbd6 0%, #4a74d5 100%);
    color: #fff;
    outline: none;
    box-shadow: 0 3px 3px 1px rgba(0, 0, 0, .13);
    /*アニメーションの指定*/ 
    transition: all 0.4s ease-out;
}
@media only screen and (min-width: 768px){
.tourBtn a:hover {
    /*ボタンの形状*/
    border-color:transparent;
    color: #fff;
    /*背景の色と形状*/
    background: linear-gradient(270deg, #53cbd6 0%, #4a74d5 50%, #53cbd6 100%);
    background-size: 200% auto;
    background-position: right center;
    /*ボックスの影*/   
    box-shadow: 0 3px 3px 1px rgba(0, 0, 0, 0);
  }
}

/*リンクの形状*/
#page-top a{
  display: flex;
  box-shadow: 0 3px 3px 1px rgba(0, 0, 0, .13);
  justify-content:center;
  align-items:center;
  background:#4a76dd;
  border-radius: 5px;
  width: 60px;
  height: 60px;
  color: #fff;
  text-align: center;
  text-transform: uppercase; 
  text-decoration: none;
  font-size:0.6rem;
  transition:all 0.3s;
  font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, ヒラギノ角ゴ Pro, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, Arial, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
}
.is-hidden {
  visibility: hidden;
  opacity: 0;
  transition:all 0.3s;
}
.courseBtn_wrap {
    margin:auto;
    padding: 30px 0;
    width: 1070px;
    /*heignt: 230px;*/
    text-align: center;
    font-size: 2.5rem;
    font-weight: 700;
  }
  .courseBtn_wrap p {
    color: #db1626;
    display: inline;
    background: linear-gradient(transparent 70%, #fef1bb 0);
    font-weight: 500;
  }
.courseBtn_wrap p span {
  font-weight: 700;
}
  #page-top a {
    font-size: 1.4rem;
  }
  

@media only screen and (min-width: 768px){
  #page-top a:hover{
  border: solid 1px #4a76dd;
  background: #fff;
  color: #4a76dd;
  opacity: 0.8;
  }
  .courseBtn {
    display: flex;
  }
  .courseBtn li {
   margin: 60px auto;
  }
  .courseBtn li a {
  color: #fff;
  padding: 30px 100px 30px 70px;
  position: relative;
  border: 3px solid ;
  border-radius: 50px;
  background: linear-gradient(to right, #53cbd6 0%, #4a74d5 100%);
  transition: all .2s ease-in-out;
  width: 200px;
  box-shadow: 0px 5px 2px 0px rgba(0, 0, 0, 0.25);
  }
  .courseBtn li a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateY(-50%);
  border: 10px solid transparent;
  border-left: 20px solid #fff;
  }
  .courseBtn li a:hover {
    box-shadow: none;
    /*opacity: 0.6;*/
  }
  .pt04_img {
    text-align: center;
  }
  .Btn_bottom {
    padding: 20px 0;
  }
}

/*リンクを右下に固定*/
#page-top {
  position: fixed;
  right: 20px;
  z-index: 110;
    /*はじめは非表示*/
  /*opacity: 0;
  transform: translateY(100px);*/
}


/*　上に上がる動き　*/

#page-top.UpMove{
  animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
  animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
    opacity: 1;
  transform: translateY(0);
  }
  to {
    opacity: 1;
  transform: translateY(100px);
  }
}

@media only screen and (max-width: 767.98px){
.kv_bgslider {
    width: 100%;
    height: 400px;
    align-items:baseline;
    justify-content: center; 
  }
  .kv_bgslider__title{
  margin-right:0%;
  width: 160px;
  }
  .scroll-down {
    width: 1.5px;
    height: 35px;
    margin: 10px auto;
  }
  .lead_txt {
    line-height: 1.7;
    display: flex;
    justify-content: center;
    padding: 10px 15px 40px;
  }
  .blue_tit {
    font-size: 2.0rem;
  }
  .lead_txt p {
    text-align: left;
    font-size: 1.5rem;
  }
  .antarctic_map {
    width: 100%;
    margin: 0 auto;
    padding: 40px 0;
  }
  .pcMap img {
    width: 100%;
    margin: 20px 0 0 0;
  }
  .antarctic_map h2 {
    font-size: 2.8rem;
    border-radius:  0  5px 5px 0;
    padding: 4px 18px 6px 15px;
  }
  .antarctic_map h2:before {
    background-size:cover;
    width: 30px;
    height: 30px;
    margin: -6px 5px 0 0;
  }
  .mapPoint_list {
    padding: 0 15px;
    margin-top: 20px;
    display: block;
  }
  .mapPoint_list_body:not(:first-child) {
    margin-left: 0;
    margin-top: 10px;
  }
  .mapPoint_list_body_tit {
    font-size: 2rem;
    margin-bottom: 2px;
  }
  .animal {
    max-width: 100%;
    padding: 40px 15px 60px;
  }
  .contents02 h2 {
    font-size: 2.3rem;
    text-align: center;
    font-weight: 500;
  }
  .contents02 h2:before {
    background-size: cover;
    content: "";
    width: 40px;
    height: 30px;
    margin: -5px 5px 0 0;
  }
  .contents02 h2:after {
    background-size: cover;
    width: 40px;
    height: 30px;
    margin: -5px 0 0 5px;
    vertical-align: middle;
  }
  .animal_list {
    margin-top: 0;
    flex-wrap: wrap;
     justify-content: center;
  }
  .animal_list_body {
    margin-top:15px; 
    flex:none;
    width: 32%
  }
  .animal_list_body:not(:first-child) {
    margin-left: 6px;
  }
  .animal_list_body_img img {
    border: solid 2px #FFFFFF;
  }
  .animal_list_body_tit {
    font-size: 1.1rem;
    padding: 3px;
    margin-top: 10px;
  }
  .courseBnr {
    padding: 0 15px;
    max-width: 100%;
    margin: 40px auto;
  }
  
  .stickyBar ul li a {
    color: #ffffff;
    display: block;
    font-size: 1.4rem;
    text-align: center;
    padding: 4px 20px;
    border: 3px solid #c21500;
    border-image: linear-gradient(to right, #7edbe3 0%, #6d93df 100%);
    border-image-slice: 1;
    width: 100%;
    position: relative;
    transition: all 0.4s ease-out;
  }
  .stickyBar ul li a::before {
    content: "";
    position: absolute;
    top: 40%;
    left: 4px;
    display: inline-block;
    border-style: solid;
    border-width: 8px 5px 0 5px;
    border-color: #7edbe3 transparent transparent transparent;
  }
  /*.stickyBar ul li:not(:first-child) {
    margin-left: 15px;
  }*/
  .stickyBar {
    /*top: 50px;*/
    top: 0;
    /*margin-bottom: 20px;*/
    padding: 0 10px;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }
  .stickyBar ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 5px 0;
  }
  .qa_anc {
    margin-left: 15px;
  }
  .crs_anc {
   /* width: 95%;*/
    margin: 10px auto 0;
  }
  
  
  .slide {
    min-width: 180px;
    object-fit: cover;
    border: 1px solid #ddd;
  }
  #recommend h2 {
    margin: -40px 0 0;
    padding: 0 15px;
  }
  .recommendPoint {
    max-width: 100%;
    padding: 0 15px 40px;
    margin: 30px auto;
  }
  .recommendPoint_point01 {
    padding: 15px;
  }
  .recommendPoint_point01 .pointTit {
    max-width: 100%;
  }
  .pointTit .pointNumber {
    min-width: 43px;
    font-size: 3.5rem;
  }
  .recommendPoint_point01 .pointTit h3 {
    margin-left: 8px;
    color: #4a76dd;
    font-size: 1.6rem;
  }
  .recommendPoint_point01_inner {
    display: block;
    margin-top: 15px;
  }
  .recommendPoint_point01_inner_left {
    width: 100%;
    margin-right: 0;
  }
  .recommendPoint_point01_inner_left p {
    margin-top: 10px;
    font-size: 1.0rem;
  }
  .recommendPoint_point01_inner_right h4 {
    margin-top: 10px;
    line-height: 1.4;
    font-size: 1.7rem;
  }
  .recommendPoint_point01_inner_right h4 span {
    font-size: 2.6rem;
    font-weight: 700;
  }
  .recommendPoint_point01_inner_right_facility {
    justify-content: center;
    margin-top: 20px;
    flex-wrap:wrap;
  }
  
  .recommendPoint_point04 {
    padding: 15px;
    margin-top: 15px;
  }
  .recommendPoint_point04 .pointTit {
    max-width: 100%;
  }
  .recommendPoint_point04 .pointTit h3 {
    margin-left: 8px;
    color: #4a76dd;
    font-size: 1.6rem;
  }
  
  
  
  .facility_body {    
    width: 45%;
    flex: none;
  }
  .facility_body:not(:first-of-type) {
    margin-left: 30px;
  }
  .facility_body p {
    font-size: 1.4rem;
    margin-top: 10px;
  }
  .facility_body:last-of-type {
    margin-left: 0px;
  }
  .recommendPoint_point {
    display: block;
    width: 100%;
    max-width: 100%;
    margin-top: 15px;
    padding: 15px;
  }
  .recommendPoint_point .pointTit{
    display:flex;
  }
  .recommendPoint_point .pointTit h3 {
    margin-left: 8px;
    margin-top: 0;
    line-height: 1.4;
    font-size: 1.6rem;
  }
  .pointTit .pointNumber {
    width: 0;
  }
  .point_txt {
    font-size: 1.4rem;
    margin-top: 10px;
  }
  .recommendPoint_point_inner_right img {
    max-width: 100%;
    margin-left: 0;
    margin: 15px auto 0;
    display: inherit;
    width: 100%;
   height: 200px;
   object-fit:cover;
    object-position: 55% 45%;
  }
  .contents03 {
    display: block;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 10px 20px;
  }
  .contents03 h2 {
    max-width: 100%;
    font-size: 2rem;
    font-weight: 500;
    padding: 1px 0 3px 20px;
    margin-bottom: 20px;
  }
  .info_body {
    display: block;
  }
  
.info_left {
    margin-right: 0;
    max-width: 100%;
  }
  #info {
    flex: 1;
    margin-right: 0;
  }
  .info_left ul {
    margin: 0;
    padding: 10px 15px 10px 15px;
  }
  .info_left h4 {
    font-size: 1.6rem;
    background: #ffd200;
    padding: 1px 15px 3px 15px;
  }
  .info_right {
    padding-top: 0;
    margin-bottom: 15px
  }
  .info_right img{
    border: solid 2px #ffd200;
    border-radius: 10px;
    width: 100%;
  }
  .info_left div {
    margin: 0 0 15px;
  }
  .acd {
    font-size: 1.5rem;
  }
  .acd-label {
    margin-bottom: 1px;
    padding: 7px 15px 9px;
  }
  .blue_Q {
    margin-right: 10px;
    font-size: 1.8rem;
  }
  .acd-label:after {
    content: "+";
    font-size: 1.8em;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
  }
  .acd-content{
	padding: 0 15px;
}
  .acd-check:checked + .acd-label + .acd-content {
    height: auto;
    opacity: 1;
    padding: 0 15px 10px;
    visibility: visible;
  }
  .red_A {
    font-size: 1.8rem;
  }
  .tourBtn a {
    font-size: 2.0rem;
    padding: 10px 25px;
  }
  .tourBtn {
    width: 310px;
    padding-bottom: 110px;
  }
  #main {
    background: url(../images/bg_im03.webp) no-repeat;
    background-size:200%;
    background-position: bottom;
  }
  .contents01{
  background-size: 500%;
  }
  .contents01 {
    background: url(../images/bg_im_sp.webp)no-repeat center /cover;
  }
  #recommend {
    background: url(../images/bg_im02_sp.webp)no-repeat center /cover;
  }
  #page-top a {
    font-size: 1.2rem;
  }
  .is-hidden {
  visibility: hidden;
  opacity: 0;
}
  .courseBtn_wrap {
    margin: auto;
    padding: 20px 0 50px;
    /*padding: 20px 0 90px;*/
    max-width: 345px;
    width: 95%;
    heignt: 160px;
    font-size: 1.6rem;
    font-weight: 700;
  }
  .courseBtn li a {
   color: #fff;
   border: 2px solid;
   border-radius: 50px;
   padding: 15px 60px 15px 30px;
   position: relative;
   background: linear-gradient(to right, #53cbd6 0%, #4a74d5 100%);
  }
  .courseBtn li a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  border: 8px solid transparent;
  border-left: 16px solid #fff;
  }
  .courseBtn li:nth-child(n+1) {
  margin-top: 40px;
  }
  .Btn_bottom {
    padding-bottom: 20px;
  }
  .Btnwrap_bottom {
    padding-bottom: 90px;
  }
  
  .tocrs-btn a {
    font-size: 14px;
    bottom: 10px;
  }
  .tocrs-btn {
    bottom: -10px;
  }
}


@media (min-width: 527px) and (max-width: 767px) {
  .stickyBar ul li:not(:first-child) {
    margin-left: 15px;
    }
  .crs_anc {
    margin: auto;
  }
}

@media (max-width: 369px) {
  .stickyBar ul li a {
    padding: 4px 7px 4px 16px;
    font-size: 1.3rem;
  }
  .stickyBar ul li a::before {
    left: 3px;
  }
}

/*footer
============================*/
.area_button {
    background: #FFFFFF;
    text-align: center;
    margin-top: 40px;
}
.area_button__titbox__tit {
    font-size: 26px;
    color: #333333;
    margin: 10px 0 20px;
}
.redtext {
    color: #cc0d21;
}
.area_button__link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 760px;
}
.area_button__link li {
    width: 100%;
    max-width: 138px;
}
.area_button__link li a {
    text-align: center;
    position: relative;
    display: block;
    font-size: 17px;
    font-weight: bold;
    border: 2px solid #cc0d20;
    border-radius: 5px;
    padding: 10px 36px 9px 9px;
    width: 100%;
    color: #333333;
    box-shadow: 0 1px 1px 1px rgb(0 0 0 / 10%);
}
.area_button__link li a:before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    background: #cc0d21;
    content: "";
    width: 27px;
}
.area_button__link li a:after {
    -webkit-transform: rotate(45deg);
    display: block;
    position: absolute;
    transform: rotate(45deg);
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    content: "";
    top: calc(50% - 4px);
    right: 10px;
    width: 8px;
    height: 8px;
}
@media print, screen and (min-width: 768px){
	.area_button__link li a:hover {
			opacity: 0.7;
	}
}
@media screen and (max-width: 767.98px) {
  .area_button {
    margin-top: 0;
    padding: 20px 0;
	}
	.area_button__titbox__tit {
    font-size: 2.4rem;
    margin: 15px 5px;
	}
	.area_button__link {
    margin: 0 10px 0;
    max-width: 100%;
	}
	.area_button__link li {
    max-width: 100%;
	}
	.area_button__link li a {
    text-align: center;
    position: relative;
    display: block;
    font-size: 1.8rem;
    font-weight: bold;
    border: 2px solid #cc0d20;
    border-radius: 5px;
    padding: 10px 36px 9px 9px;
    margin-bottom: 5px;
    width: 100%;
    color: #333333;
    box-shadow: 0 1px 1px 1px rgb(0 0 0 / 10%);
	}
	.area_button__link li a:before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    background: #cc0d21;
    content: "";
    width: 27px;
	}
	.area_button__link li a:after {
    -webkit-transform: rotate(45deg);
    display: block;
    position: absolute;
    transform: rotate(45deg);
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    content: "";
    top: calc(50% - 4px);
    right: 10px;
    width: 8px;
    height: 8px;
	}
}
