
main a:link, main a:active, main a:hover, main a:visited {
  color:#6d8fb5;
}

.about {
  padding:4.45rem 0 0;
}

h1 a {
  pointer-events : none;
}

h2 {
  color:#d66549;
  text-align:center;
}
.about h2 > * {
  display:block;
}
.about h2 img {
  width:7.8rem;
  margin:0 auto 1rem;
}

.about h2 > span:first-of-type {
  font-size:1.94rem;
  text-indent:.35em;
  letter-spacing:.35em;
  line-height: 1.5;
}
.about h2 > span:last-of-type {
  font-size:1rem;
}
.about p {
  text-align:center;
}

h3 {
  color:#d66549;
  letter-spacing:.35em;
  text-align:left;
}
.info {
  border:solid 5px #d66549;
  text-align:center;
}
.info dl {
  border-top:dotted 1px #555;
  text-align:left;
}  
.info dd {
  border-bottom:dotted 1px #555;
}  
.info > a {
  display:inline-block;
  color:#6d8fb5;
  line-height:1em;
  font-weight: bold;
  border:solid 1.5px #6d8fb5;
  padding: .8em 1.75em;
}  

.hito_machi h3 {
  text-align: left;
  line-height: 1.6;
}
.hito_machi h3 span {
  display:block;
}
.hito_machi .person {
  line-height:1.4;
}
section.hito_machi  a {
  display:table;
  color:#6d8fb5;
  line-height:1em;
  font-weight: bold;
  border:solid 2px #6d8fb5;
  padding: .8em 1.75em;
  margin:0 0 0 auto;
}  


section.kaiin  > a {
  display:inline-block;
  color:#6d8fb5;
  line-height:1em;
  font-weight: bold;
  border:solid 2px #6d8fb5;
  padding: .8em 1.75em;
}  
section.story  {
  background:#6d8fb5;
}
section.story  h3, section.story  p, section.story .story_movie {
  color:#fff;
  text-align:left;
}

@media screen and (min-width: 500px) {
  .top_movie {
    display:block;
    margin-left:auto;
    margin-right:auto;
    margin-bottom: 0;
    width:100%;
    position:relative;
    z-index:0;
  }
  .top_movie video {
    width:100%;
  }
  
  .about p {
    line-height:2.25;
  }
  .about p br.sp {
    display:none;
  }
  
  h3 {
    font-size:1.35rem;
  }
  .inquiry {
    box-sizing:border-box;
    width:1030px;
    margin:2.7rem auto 0;
    display:flex;
    justify-content:space-between;
  }
  .inquiry a {
    width:488px;
    display:block;
  }
  .info {
    box-sizing:border-box;
    width:1030px;
    margin:2.7rem auto 0;
    padding:2.88rem 5.5rem 1.6rem ;
    border-radius:1.75rem;
  }
  .info dl {
    font-size:.85rem;
    margin-bottom:2em;
  }
  .info dt {
    width:135px;
    letter-spacing:0.3em;
    padding-top:1em;
  }
  .info dd {
    margin:0;
    padding-left:135px;
    padding-bottom:1em;
  }
  .info dt + dd {
    margin-top:-1.65em;
  }  
  .info > a {
    font-size:.85rem;
  } 
  
  .hito_machi .flx {
    display:flex;
    justify-content:space-between;
    max-width:1030px;
    margin:0 auto;
    align-items:flex-start;
    padding-top:11rem;
  }
  .hito_machi .flx > img {
    width:55%;
  }
  /*
  .hito_machi .flx a  {
    max-width:100%;
  }
  */
  .hito_machi h3 {
    margin: 0 auto 9rem;
  }
  .hito_machi h3 span:first-of-type {
    letter-spacing: .05em;
  }
  .hito_machi h3 span:last-of-type {
    font-size: 32px;
    letter-spacing: .3em;
  }
  .hito_machi .person {
    margin-bottom:0;
  }
  section.hito_machi  a {
    font-size:.85rem;
    margin-top:2rem;
  } 
  
  section.kaiin {
    box-sizing:border-box;
    width:1030px;
    margin:0 auto;
    padding:11rem 0;
    text-align:right
  }
  section.kaiin h3 {
    margin-bottom:4.3rem;
    text-align:left;
  }
  section.kaiin  > a {
    font-size:.85rem;
    margin-top:2rem;
  } 
  section.story  {
    background:#6d8fb5;
    padding:4rem 0 4rem;
  }
  section.story  h3, section.story  p, section.story .story_movie {
    max-width:1030px;
  }
  section.story  h3{
    margin:0 auto 3rem;
  }
  section.story  p{
    margin:0 auto 1em;
  }
  section.story  .story_movie {
    width:100%;
    height:580px;
    margin:0 auto 0em;
    display:block;
  }
  
  section.map {
    width:1030px;
    margin:0 auto;
    padding:5rem 0 10rem;
    text-align:right;
  }
  section.map  h3{
    margin:0 auto 2rem;
  }
  section.map iframe {
    width:100%;
  }
}   


@media screen and (max-width: 499px) {
  .top_movie {
    width:100vw;
  }
  .top_movie video {
    width: 100%;
  }
  .about  {
    padding:9vw 0 0 ;
  }
  .about h2 img {
    width:21.3vw;
    margin:0 auto 1rem;
  }

  .about h2 > span:first-of-type {
    font-size:5vw;
    text-indent:.35em;
    letter-spacing:.35em;
    line-height: 1.5;
  }
  .about h2 > span:last-of-type {
    font-size:3.7vw;
  }
  .about p {
    font-size:3.7vw;
  }
  h3 {
    font-size: 4.2vw;
    letter-spacing: .2em;
  }
  .inquiry {
    margin:2.7rem 4.8vw 0;
  }
  .inquiry a:first-of-type{
    display:block;
    margin-bottom:.5rem;
  }
  
  .info {
    margin:2.7rem 4.8vw 0;
    padding:6vw 5.7vw 1.6rem ;
    border-radius:1.5rem;
    border-width:3px;
  }
  
  .info > a:last-of-type {
    font-size: 3.7vw;
    padding:.3em 0.5em;
    border-width: .5px
  }
  .info dl {
    font-size: 3.7vw;
  }
  
  .info dd {
    margin:0;
    padding-bottom: .5em;
  }
  .info dt {
    padding-top: .5em;
  }
  
  .hito_machi  {
    margin: 2.7rem 4.8vw 0;
  }
  section.hito_machi h3 span:last-of-type {
    font-size:5vw;
  }
  section.hito_machi a {
    margin:2rem auto 0;
    font-size: 3.7vw;
    padding: .3em 0.5em;
    border-width: .5px;
    
  }
  
  section.kaiin  {
    width:100vw;
    overflow:hidden;
    margin:2.7rem 0 0 ;
    text-align:center;
  }
  section.kaiin h3 {
    margin:0 5.7vw 2rem;
    text-align:left;
  }
  section.kaiin > a {
    margin-top:2rem;
    font-size: 3.7vw;
    padding: .3em 0.5em;
    border-width: .5px;
  }
  section.story  {
    margin:2.7rem 0 0;
    padding:2rem 0 2rem;
  }
  section.story  h3{
    margin:0 5.7vw 3rem;
  }
  section.story  p{
    margin:0 5.7vw 1em;
  }
  section.story  .story_movie {
    margin:0 0 0em;
    display:block;
    width:100vw;
    height:56vw;
  }
  section.map  {
    margin:0 0 0;
    padding:2rem 5.7vw 2rem;
  }
  section.map  h3 {
    margin-bottom:2rem;
  }
  section.map  iframe {
    width:100%;
  }
}
