/* CSS Document */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■   　デフォルト   　■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

html, body, div, span, iframe,article,figure,
p, a, img, small, dl, dt, dd, ol, ul, li,
h1, h2, h3, h4, h5,h6,header,footer{
  border: 0;
  margin: 0;
  padding: 0;
  vertical-align: top;
  font-family: "heisei-kaku-gothic-std", sans-serif;
  font-size: 18px;
  font-weight: 700;
  letter-spacing:0.04em;
  line-height:36px;
  font-style: normal;
  font-feature-settings: "palt";
  color: #FFF;
}
html {
    scroll-behavior: smooth;
}


::selection {
  background:#FFF;
  color:#3c5935;
}

::-moz-selection {
  background:#FFF;
  color:#3c5935;
}


html,body {
  line-height:0;
  width: 100%;
  height: 100%;
  position: relative;
  min-width: 1280px;
  overflow-x: hidden;
}
ol, ul {
  list-style: none;
}
a{
  outline:none;
  text-decoration:none;
  cursor: pointer;
  display: block;
  }
a img {
  border: none;
  border-style:none;
}

img{
  width: 100%;
  height: auto;
}

li{
  list-style:none;
}
.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: '';
  display: table;
  clear: both;
}

.br_sp,
.sp_block{
  display: none;
}

@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}

body{
  background: url(../images/bg.jpg) repeat;
  background-size: 600px;
}


.mv{
  width: 100%;
  height: 572px;
  background: url(../images/mv_bg.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}
.mv h1{
  width: 496px;
  position: absolute;
  bottom:40px;
  left: 50%;
  transform: translateX(-50%);
}
.mv h2{
  width:257px;
  position: absolute;
  top:20px;
  left:20px;
}

.sec01{
  padding-top: 50px;
}
.sec01 .icon{
  display: none;
}
.sec01 h2{
  width: 638px;
  margin: 0 auto;
}

.sec01 .wrap{
  width: 1200px;
  margin: 0 auto;
}
.sec01 .wrap .inner{
  display: flex;
  flex-wrap: wrap;
}
.sec01 .wrap .left{
  width: 587px;
  padding-top:78px;
  margin-right: 80px;
}
.sec01 .wrap .left p{
  padding-bottom:25px;
}
.sec01 .wrap .right{
  width:532px;
  position: relative;
}
.sec01 .wrap .right img{
  width:732px;
  position: absolute;
  top: 0;
  left: 0;
}
.sec02{
  padding-top:200px;
}
.sec02 .inner{
  width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}

.sec02 .inner .left{
  width:650px;
  display: block;
  position: relative;
  margin-right:40px;
}
.sec02 .inner .left img{
  width:650px;
  position: absolute;
  top: 0;
  left: -14px;
}
.sec02 .inner .right{
  width:510px;
  display:flex;
  flex-wrap: wrap;
}
.sec02 .inner .right dl.komorebi{
  display:flex;
  flex-wrap: wrap;
}
.sec02 .inner .right dl.komorebi dt{
  width:265px;
  margin-right: 25px;
}
.sec02 .inner .right dl.komorebi dt h3{
  margin-bottom: 20px;
}
.sec02 .inner .right dl.komorebi dt p{
  font-size: 16px;
  line-height: 30px;
}
.sec02 .inner .right dl.komorebi dd{
  width:220px;
  padding-top: 30px;
}
.sec02 .inner .right .explanation{
  width:100%;
  padding-top:65px;
  padding-bottom:35px;
  border-bottom: 2px solid #FFF;
}
.sec02 .inner .right .explanation dl dt{
  padding-bottom: 35px;
}
.sec02 .inner .right .explanation dl dd{
  display: flex;
  flex-wrap: wrap;
}
.sec02 .inner .right .explanation dl dd figure{
  width:215px;
  margin-right:40px;
}
.sec02 .inner .right .explanation dl dd p{
  width:255px;
  font-size: 16px;
  line-height: 30px;
  text-align: justify;
}

.sec03{
  width: 1200px;
  margin: 150px auto 0;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 66px;
  margin-bottom: 150px;
}
.sec03 .wrap{
  width: 1100px;
  margin: 0 auto;
  padding: 40px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.sec03 .wrap h3{
  width:505px;
  font-size: 24px;
  line-height: 46px;
  letter-spacing: 0.1em;
}
.sec03 .wrap .tokyo_newspaper{
  width:210px;
  margin-right: 50px;
}
.sec03 .wrap .okinawa_times{
  width:335px;
}

.sec03 .wrap .newspaper a{
  display: block;
  background: url(../images/zoom_icon.png) no-repeat right bottom 5px;
  background-size: 60px;
}

.sec03 .wrap .newspaper a dl dt{
  margin-bottom: 15px;
}
.sec03 .wrap .newspaper a dl dd{
  font-size: 16px;
  line-height:30px;
  margin-bottom: 15px;
}

.sec04 .wrap{
  width: 1000px;
  margin: 0 auto 180px;
}

.sec04 .wrap h3{
  width: 236px;
  margin: 0 auto 40px;
}

.sec04 .wrap p{
  text-align: center;
  margin-bottom: 40px;
}

.sec04 .wrap .youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.sec04 .wrap .youtube iframe {
  width: 100%;
  height: 100%;
}



.sec05 .wrap{
  width:880px;
  margin: 0 auto 180px;
}

.sec05 .wrap h3{
  width: 660px;
  margin: 0 auto 50px;
}
.sec05 .wrap ul li{
  margin-bottom: 70px;
}

.sec05 .wrap ul li h4{
  font-size: 24px;
  text-align: center;
  line-height: 42px;
  margin-bottom: 20px;
}
.sec05 .wrap ul li dl dt{
  margin-bottom:30px;
  position: relative;
}
.sec05 .wrap ul li dl dt{
  text-align:justify;
}

.sec05 .wrap ul li dl dt span{
  width: 170px;
  display: block;
  position: absolute;
  top:-85px;
  left:-85px;
}



.sec06 .wrap{
  width:1000px;
  margin: 0 auto 150px;
}

.sec06 .wrap h3{
  width:160px;
  margin: 0 auto 50px;
}

.sec06 .wrap .map {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 20px;
}
.sec06 .wrap .map iframe {
  width: 100%;
  height: 100%;
}




.sec07{
  width:100%;
  height: 534px;
  background: url(../images/sec08_bg.jpg) no-repeat center;
  background-size: cover;
  position: relative;
}

.sec07 .wrap{
  width:480px;
  position: absolute;
  top: 50%;
  left:13%;
  transform: translateY(-50%);

}

.sec07 .wrap h3{
  font-size: 20px;
  line-height: 36px;
  text-align: center;
  margin-bottom: 15px;
}
.sec07 .wrap p{
  font-size: 20px;
  line-height: 36px;
  text-align: center;
  margin-bottom: 20px;
}
.sec07 .wrap .btn a{
  width: 240px;
  margin: 0 auto;
  font-size: 20px;
  line-height: 50px;
  display: block;
  background: #FFF;
  color: #47653F;
  text-align: center;
  border-radius:50px;
}


footer{
  width: 275px;
  margin:0 auto;
  padding-top: 100px;
  padding-bottom: 25px;
}






