
  @font-face {
    font-family: NotoSansJP;
    src: url(fonts/NotoSansJP-min.woff) format("woff");
  }
  @font-face {
    font-family: Akira Expand;
    src: url(fonts/Akira\ Expanded\ Demo.otf);
  }
  @font-face {
    font-family: HK Grotesk;
    src: url(fonts/HKGrotesk-Black.otf);
  }

  body{
    font-family:"NotoSansJP","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 1.317vw;
    background-position: 50% 50%;
    background-size: cover;
    -webkit-appearance: none;
    -webkit-text-size-adjust: 100%;
    padding: 0;
    margin: 0;
    background: #313131;
  }


  html{
    overflow-x: hidden;
    resize: horizontal;
    background-color: #ececec;
    width: 100vw;
  }

  a{
    cursor: pointer;
  }

p{
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

h1{
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

h2{
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

h3{
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}



  .waki1,.waki2,.scroll{
    background-size: cover;
   }

   .two-kikan{
     padding-top: 150px;
   }

   header{
    position: fixed;
    top: 0;
    width:100vw;
    z-index: 1000;
    font-family: a-otf-ryumin-pr6n,serif;
  }

  header p{
    font-size: 0.56vw;
    width: 2.304vw;
    text-align: left;
    box-sizing: border-box;
    /*ヘッダー文字サイズ*/
  }


.top{
    width: 100vw;
    overflow-x: hidden;
    height: 100vh;
    top: 0;
    position:relative;
    background-image: repeating-linear-gradient(0deg, transparent, transparent 6px, rgba(255,255,255,0.1) 4px,rgba(255,255,255,0.1) 4px),url("top-photos/top_01.png");
    border-radius: 0px 0px 0px 5vw;
    background-size: cover;
    color: white;
    /*TOPの背景*/
  }

  .hello{
    top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      width: 15vw;
    position: absolute;
    font-size: 3vw;
    text-align: left;
    color: white;
  }

  .tate::after{
    content: "";
      /*描画位置*/
    position: absolute;
    margin-left: 5vw;
    top: 90vh;
    height: 15vh;
    width: 0.039vw;
    background: white;
    position: absolute;
      /*線の形状*/
    width: 0.066vw;
    height: 6.583vw;
    background: black;
      /*線の動き1.4秒かけて動く。永遠にループ*/
    animation: pathmove 1.4s ease-in-out infinite;
    opacity:0;
    z-index: 100;
  }

  /*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
    0%{
      height:0;
      top:42vw;
      opacity: 0;
    }
    30%{
      height:6.583vw;
      opacity: 1;
    }
    100%{
      height:0;
      top:60vw;
      opacity: 0;
    }
  }

  .footer-sp{
    display: none;
  }

  footer{
    color: black;
    background-color: white;
    width: 100vw;
    bottom: 0; /*下に固定*/
    font-family: a-otf-ryumin-pr6n,serif;
    overflow: hidden;
    padding-top: 12vh;
    padding-bottom: 4vh;
  }

  .icons{
    display: flex;
    gap: 2.633vw;
    flex-wrap: nowrap;
    height: 5.267vw;
    margin-bottom: 3.95vw;
    padding-left: 10vw;
  }
  .icons img{
    width: 2.633vw;
  }
  .icons a:last-child{
    padding-top: 0.461vw;
  }
  .icons a:first-child{
    padding-top: 0.132vw;
  }

  .mokuzi{
    display: flex;
    gap: 5.267vw;
    margin-bottom: 1.975vw;
    padding-left: 10vw;
  }
  .mokuzi-hello{
    margin-bottom: 25vh;
    display: flex;
    gap: 1.975vw;
    padding-left: 10vw;
  }
  .mokuzi-hello a{
    text-decoration: none;
    color: black;
    font-size: 1.975vw;
    cursor: pointer;
  }
  .mokuzi-sp{
    display: none;
  }
  .mokuzi a{
    text-decoration: none;
    color: black;
    letter-spacing: 0.263vw;
    font-size: 1.975vw;
    width: auto;
    cursor: pointer;
  }
  .mokuzi a:hover{
    color: #cacaca;
  }
  .mokuzi-hello a:hover{
    color: #cacaca;
  }

  .footer-line{
    width: 80vw;
    height: 0.066vw;
    margin: 0;
    margin-left: 10vw;
    margin-bottom: 10px;
  }

  .footer-p{
    display: inline-block;
    margin-right: 0vw;
    padding-left: 10vw;
    width: 50vw;
    vertical-align: top;
  }

  .footer-p p a{
    text-decoration: none;
    color: black;
    font-size: 5px;
  }

  .footer-p p{
    font-size: 5px;
  }

  .top_svg{
    width: 20vw;
    margin-top: 3.621vw;
    margin-left: 5vw;
  }
  .top_svg image{
    width: 20vw;
  }

  .pc-menu{
    display: flex;
    gap: 3vw;
    margin-top: 4.279vw;
    margin-left: 60vw;
    color: #ececec;
  }
  .pc-menu a{
    text-decoration: none;
    color: #ececec;
  }
  .pc-menu-hello{
    display: flex;
    gap: 3vw;
    margin-top: 6vh;
    margin-left: 65vw;
  }
  .pc-menu-hello a{
    text-decoration: none;
    color: black;
  }

  .h-menu{
    margin-top: 3vh;
    position: relative;
    margin-left: 95vw;
    display: none;
  }

  /*inputのcheckboxは非表示に*/
  .h-menuCheckbox {
    display:none;
  }

  /*ハンバーガーメニュー*/
  header p{
      font-weight: bold;
  }

  .h-menu{
    border-radius: 50%;
    width: 3.292vw;
    height: 3.292vw;
    text-align: center;
  }

  .h-menu_icon {
      display: inline-block;
      width: 10vw;
      height: 10vw;
      vertical-align: middle;
      text-align: center;
      cursor: pointer;
      background-color: white;
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
  }

  .hamburger-icon p{margin-top: 1.646vw;}

  /*3本線*/
  .hamburger-icon, .hamburger-icon::before, .hamburger-icon::after {
      content: '';
      display: inline-block;
      position: absolute;
      z-index: 100;
      top: 2.7vw;
      width: 4vw;
      height: 0.6vw;
      padding-left: 2vw;
      background: black;
      cursor: pointer;
      text-align: center;
      left: 2.0vw;
  }
  .hamburger-icon:before {
      top: 1.8vw;
      left: 0;
  }
  .hamburger-icon:after {
      top: 3.8vw;
      left: 0;
  }

  /*メニュー以外を暗くする*/
  #h-menu_black {
      display: none;
      position: fixed;
      z-index: 98;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: black;
      opacity: 0;
      transition: .7s ease-in-out;
  }

  /*中身*/
  #h-menu_content {
      position: fixed;
      top: 0;
      left: 0;
      background: white;
      color: black;
      z-index: 99;
      /*width: 100%;
      max-width: 21.066vw;*/
      width: 100vw;
      height: 100vh;
      padding: 1.053vw 1.053vw 1.053vw;
      overflow: auto;
      transition: .3s ease-in-out;
      -webkit-transform: translateX(-105%);
      transform: translateX(-105%);
  }

  .first{
    margin-top: 10vh;
    margin-left: -2vw;
    text-align: left;
  }

  .first li{
    font-size: 6vw;
    letter-spacing: 1vw;
    margin-top: 3.4vw;
    margin-bottom: 0.987vw;
    list-style: none;
    cursor: pointer;
  }

  .first a{
    text-decoration: none;
    color: black;
  }

  .second{
    margin-top: 15vh;
    margin-left: -2vw;
    text-align: left;
  }

  .second li{
    font-size: 4vw;
    margin-top: 0.987vw;
    margin-bottom: 0.987vw;
    list-style: none;
    cursor: pointer;
  }

  .second a{
    text-decoration: none;
    color: black;
  }

  .kaisei p{
    padding-top: 0.329vw;
    font-size: 1.975vw;
    height: 3.292vw;
    width: 26.333vw;
  }

  /*チェックボックスにチェックが入ったら表示*/
input:checked ~ .h-menu_icon .hamburger-icon{
    background: transparent;
    height: 1.975vw;
}
input:checked ~ .h-menu_icon .hamburger-icon::before{
    -webkit-transform: rotate(-45deg);

    transform: rotate(-45deg);
    top:0.658vw;
    z-index:999;
}
input:checked ~ .h-menu_icon .hamburger-icon::after{
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top:0.658vw;
    z-index:999;
}
input:checked ~ #h-menu_black {
    display: block;
    opacity: .8;
}
#h-menu_checkbox:checked ~ #h-menu_content {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    box-shadow: 6px 0 25px rgba(0,0,0,.15);
}
.h-menu_icon .hamburger-icon,
.h-menu_icon .hamburger-icon::before,
.h-menu_icon .hamburger-icon::after,
#h-menu_black,
#h-menu_content{
    -webkit-transition: all .3s;
    transition: all .3s;
}

#h-menu_content li a:hover {
    background: #cacaca;
}

.scroll{
    width: 50vw;
    height: 20vh;
    background-image: url("top-photos/top_06.jpg");
    background-size: cover;
    position: absolute;
    color: white;
    bottom: 0%;
    text-align: center;
    letter-spacing: 0.132vw;
    left: 25%;
    border-top-right-radius:1.975vw;
    border-top-left-radius:1.975vw;
  }

  .scroll p{
    position: absolute;
    bottom: 0;
    width: 50vw;
    text-align: center;
  }

  .waki1{
    width: 15vw;
    background-image: url("hello-photos/hello_01.jpg");
    position: absolute;
    bottom: 0;
    height: 40vh;
    margin-right: 15vw;
    left: 0;
    border-top-right-radius:1.975vw;
    z-index: 10;
  }

  .waki2{
    width: 15vw;
    height: 40vh;
    background-image: url("hello-photos/hello_03.jpg");
    position: absolute;
    bottom: 0;
    right: 0;
    border-top-left-radius:1.975vw;
  }

  .principal{
    display: flex;
    gap: 5vw;
    width: 95vw;
    padding-right: 5vw;
    padding-top: 10vh;
    padding-bottom: 18vh;
    background-color: #eeeeee;
  }

  /*いわ*/
  .kotyo{
    width: 45vw;
    letter-spacing: 0.1vw;
    line-height: 5vh;
    font-size: 1.15vw;
  }

  .kotyo h2{
    margin-top: 16vh;
    margin-bottom: 5vh;
    font-family: Noto sans JP;
    font-size: 1.5vw;
  }

  .sp-kotyo{
    display: none;
  }

  .ima{
    margin-right: 5vw;
    width: 40vw;
  }

  .ima img{
    width: 40vw;
    border-radius: 0 4vw 4vw 0;
    margin-top: 8vh;
  }

  .ima h1{
    font-size: 3vw;
    text-align: center;
    margin-bottom: 5vh;
  }
  .ima h1 img{
    width: 18vw;
    margin-left: -10vw; /*禁断*/
    margin-top: 14vh;
    margin-bottom: -8vh; /*禁断*/
  }

  .two-kikan{
    text-align: center;
    height: 100vh;
    padding-bottom: 10vw;
    padding-top: 20vh;
    background: #eeeeee;
  }

  .two-top{
    width: 60vw;
    margin: auto;
    margin-bottom: 3.292vw;
  }

  .two-top h2{
    font-family: noto sans jp;
    margin-bottom: 3vh;
    letter-spacing: 4px;
  }

  .two-top p{
    letter-spacing: 2px;
  }

  .unzyun{
    display: inline-block;
    width: 35vw;
    height: 35vw;
    border: solid 1px black;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, 0);
    position: absolute;
    left: 17%;
  }

  .unzyun h3{
    font-family: noto sans jp;
    letter-spacing: 4px;
  }

  .unzyun p{
    letter-spacing: 1px;
    margin-top: 4vh;
  }

  .unzyun div{
    margin: auto;
    width: 25vw;
    height: 15vw;
    margin-top: 10vw;
  }

  .judge{
    display: inline-block;
    width: 35vw;
    border: solid 1px black;
    border-radius: 50%;
    height: 35vw;
    background-color: rgba(0, 0, 0, 0);
    position: absolute;
    right: 17%;
  }

  .judge h3{
    font-family: noto sans jp;
    letter-spacing: 4px;
  }

  .judge p{
    letter-spacing: 1px;
    margin-top: 4vh;
  }

  .judge div{
    margin: auto;
    width: 25vw;
    height: 15vw;
    margin-top: 10vw;
  }


  .unzyun-hello{
    width: 93vw;
    padding-left: 7vw;
    padding-bottom: 9.875vw;
    background: #eeeeee;
    overflow-x: hidden;
  }

  .unzyun-hello div img{
    width: 40vw;
    border-radius: 3.292vw;
    margin-right: -16vw;/*禁断*/
    margin-top: -5vh;
  }

  .unzyun-hello p{
    margin-top: -6vh; /*禁断*/
  }

  .unzyun-hello h1 img,.judge-hello h1 img{
    width: 20vw;
  }


  .unzyun-hello img{
    margin-left: -40; /*禁断、注意*/
    overflow-x: hidden;
  }

  .judge-hello{
    background: #eeeeee;
    padding-right: 7vw;
    padding-bottom: 9.875vw;
  }
  .unzyun-hello h1,.judge-hello h1{
    padding-bottom: 4.608vw;
    padding-left: 0vw;/*禁断*/
  }
  .judge-hello h1{
     margin-left: 38vw;
  }
  .judge-hello div img{
    width: 40vw;
    border-radius: 3.292vw;
    margin-left: -8vw;/*禁断*/
    margin-top: -5vh;
  }
  .unzyun-hello div,.judge-hello div{
    display: flex;
    flex-wrap: nowrap;
    gap: 7vw;
  }
  .judge-hello p{
    margin-top: -6vh; /*禁断*/
  }
  .unzyun-hello div p,.judge-hello div p{
    width: 55vw;
  }


  .hoka-kikan{
    text-align: center;
    background: #eeeeee;
    color: black;
    height: 300vh;
    padding-top: 15vh;
    padding-bottom: 80vh;
    padding-left: 10vw;
    padding-right: 8vw;
  }

  .hoka-kikan h2{
    font-family: noto sans jp;
    margin-bottom: 4vh;
    margin: 0;
    letter-spacing: normal;
  }

  .hoka-kikan p{
    margin-bottom: 6.583vw;
    margin-top: 3vh;
    text-align: center;
    vertical-align: middle;
    margin-left: -9vw; /*禁断*/
  }

  .flex{
    display: flex;
    flex-wrap: wrap;
    height: 300vh;
    color: black;
  }

  .gityo,.gityo2{
    height: 150vh;
    width: 32vw;
  }
  .gityo{
    padding-right: 8vw;
  }


  .gityo h2{
    background-image: url(/hello-photos/shingi.svg);
    color: white;
    width: 30vw;
    height: 30vw;
    border-radius: 4.937vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 20vw;
    margin-bottom: 3vw;
  }

  .gityo2 h2{
    background-image: url(/hello-photos/kiroku.svg);
    color: white;
    background-size:cover;
    background-color:rgba(0,0,0,0.6);
    background-blend-mode:darken;
    width: 30vw;
    height: 30vw;
    border-radius: 4.937vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 20vw;
    margin-bottom: 3vw;
  }

  .gityo p,.gityo2 p{
    width: 30vw;
    margin-left: 0vw;
    padding-top: 0vw;
    margin-bottom: 4.937vw;
    text-align: left;
  }

  .red,.blue,.white,.yellow,.black,.purple,.orange,.green{
    width: 16vw;
    height: 45vh;
  }
  .red,.white,.black,.purple,.orange,.green{
    margin-right: 8vw;
  }

  .red h2,.blue h2,.white h2,.yellow h2,.black h2,.purple h2,.orange h2,.green h2{
    width: 18vw;
    height: 18vw;
    font-size: 1.317vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 10vw;
    color: white;
    border-radius: 2.304vw;
    margin-bottom: 4.937vw;
  }

  .red h2{
    background-image: url(/hello-photos/purple.svg);
    background-color:rgba(0,0,0,0.6);
    background-blend-mode:darken;
    width: 18vw;
    height: 18vw;
    font-size: 1.317vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 10vw;
    color: white;
    border-radius: 2.304vw;
    margin-bottom: 4.937vw;
  }

  .blue h2{
    background-image: url(/hello-photos/white.svg);
    background-color:rgba(0,0,0,0.6);
    background-size: cover;
    background-blend-mode:darken;
    width: 18vw;
    height: 18vw;
    font-size: 1.317vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 10vw;
    color: white;
    border-radius: 2.304vw;
    margin-bottom: 4.937vw;
  }

  .white h2{
    background-image: url(/hello-photos/blue.jpg);
    background-color:rgba(0,0,0,0.6);
    background-blend-mode:darken;
    background-size: cover;
    width: 18vw;
    height: 18vw;
    font-size: 1.317vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 10vw;
    color: white;
    border-radius: 2.304vw;
    margin-bottom: 4.937vw;
  }

  .yellow h2{
    background-image: url(/hello-photos/green.png);
    background-size: cover;
    background-color:rgba(0,0,0,0.6);
    background-blend-mode:darken;
    width: 18vw;
    height: 18vw;
    font-size: 1.317vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 10vw;
    color: white;
    border-radius: 2.304vw;
    margin-bottom: 4.937vw;
  }

  .green h2{
    background-image: url(/hello-photos/orange.jpg);
    background-size: cover;
    background-color:rgba(0,0,0,0.6);
    background-blend-mode:darken;
    width: 18vw;
    height: 18vw;
    font-size: 1.317vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 10vw;
    color: white;
    border-radius: 2.304vw;
    margin-bottom: 4.937vw;
  }

  .black h2{
    background-image: url(/hello-photos/yellow.jpg);
    background-size: cover;
    background-color:rgba(0,0,0,0.6);
    background-blend-mode:darken;
    width: 18vw;
    height: 18vw;
    font-size: 1.317vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 10vw;
    color: white;
    border-radius: 2.304vw;
    margin-bottom: 4.937vw;
  }

  .purple h2{
    background-image: url(/hello-photos/red.jpg);
    background-size: cover;
    background-color:rgba(0,0,0,0.6);
    background-blend-mode:darken;
    width: 18vw;
    height: 18vw;
    font-size: 1.317vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 10vw;
    color: white;
    border-radius: 2.304vw;
    margin-bottom: 4.937vw;
  }

  .orange h2{
    background-image: url(/hello-photos/black.jpg);
    background-size: cover;
    background-color:rgba(0,0,0,0.6);
    background-blend-mode:darken;
    width: 18vw;
    height: 18vw;
    font-size: 1.317vw;
    text-align: left;
    padding-left: 2vw;
    padding-top: 10vw;
    color: white;
    border-radius: 2.304vw;
    margin-bottom: 4.937vw;
  }

  .red p,.blue p,.white p,.yellow p,.black p,.purple p,.orange p,.green p{
    width: 18vw;
    height: 18vw;
    margin-left: 0vw;
    font-size: 60px;
  }

  .flex2{
    display: flex;
    flex-wrap: wrap;
    height: 150vh;
    width: 40vw;
  }
  .flex3{
    display: flex;
    flex-wrap: wrap;
    height: 150vh;
    width: 48vw;
  }


.toha{
    padding-left: 15vw;
    padding-right: 0vw;
  }


  .flex3 a{
    color: black;
    text-decoration: none;
    margin-right: 3vw;
  }

  .flex3 p{
    margin-right: 1.317vw;
  }

  .foo{
    display: inline-block;
    width: 30vw;
    text-align: right;
    vertical-align: top;
  }
  .footer-p{
    display: inline-block;
  }

  .kaisei-header{
    width: 55vw;
    height: 8vh;
      margin-top: 8vw;
      margin-left: 6vw;
  }
  .kaisei-header svg{
    width: 55vw;
  }
  .kaisei-header svg image{
    width: 55vw;
  }


  .aisatsu .top{
    margin-top: -15px;
    background-image: url("hello-photos/aisatsu-back.jpg");
    border-radius: 0px 0px 0px 0px;
    width: 100vw;
    overflow-x: hidden;
    height: 100vh;
  }
  .scroll p{
    display: none;
  }

  .sc1{
    font-family: a-otf-ryumin-pr6n,serif;
    writing-mode: vertical-rl;
    margin-left: 4.55vw;
    letter-spacing: 0.263vw;
    box-sizing: border-box;
    position: absolute;
    color: black;
    background-size: cover;
    font-size: 1vw;
    z-index: 100000;
    top: 70%;
    margin-bottom: 20vh;
  }

  .tate::after{
    content: "";
      /*描画位置*/
    position: flex;
    margin-left: 5vw;
    margin-top: -10vh; /*禁断*/
    top: 20vh;
    height: 30vh;
    width: 0.039vw;
    background: white;
    position: inline-block;
      /*線の形状*/
    width: 0.066vw;
    height: 6.583vw;
      /*線の動き1.4秒かけて動く。永遠にループ*/
    animation: pathmove 1.4s ease-in-out infinite;
    opacity:0;
    z-index: 100;
  }

  .waki1,.waki2,.scroll{
   z-index: 10;
  }

  .two-kikan{
    padding-top: 150px;
  }



  .body-hello p,.two-top p,.unzyun p,.judge p,.unzyun-hello div p,.judge-hello div p,.toha,.gityo p,.gityo2 p,.red div p,.white div p,.blue div p,.black div p,.green div p,.orange div p,.purple div p,.yellow div p{
    font-family: a-otf-ryumin-pr6n,serif;
  }
  .unzyun{
    width: 40vw;
    height: 40vw;
    left: 12%;
  }
  .judge{
    width: 40vw;
    height: 40vw;
    right: 12%;
  }
  .unzyun div h3,.judge div h3{
    margin-bottom: 20px;
  }


  .sukasi-left{
    opacity: 0.1;
    color: #313131;
    position: absolute;
    left: -7%;
    top: -15vh;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 18vw;
    height: 60vw;
    font-family: a-otf-ryumin-pr6n,serif;
  }
  .sukasi-right{
    right: 0;
    opacity: 0.1;
    color: #313131;
    position: absolute;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 18vw;
    height: 60vw;
    font-family: a-otf-ryumin-pr6n,serif;
    margin-top: -18vh;/*禁断*/
    white-space: nowrap;
  }
  .sukasi-kiroku{
    opacity: 0.1;
    color: #313131;
    position: absolute;
    left: -7%;
    top: 50%;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 18vw;
    height: 90vw;
    font-family: a-otf-ryumin-pr6n,serif;
    white-space: nowrap;
  }

  .hoka-kikan,.two-kikan{
    position: relative;
  }

  .red  p,.white  p,.blue  p,.black  p,.green p,.orange p,.purple p,.yellow p{
    font-size: 17px;
  }
  .red h2,.blue h2,.white h2,.yellow h2,.black h2,.purple h2,.orange h2,.green h2{
    margin-bottom: 25px;
  }

  .flex{
    height: 350vh;
  }
  .flex2,.flex3,.gityo,.gityo2{
    height: 175vh;
  }

  .english{
    display: none;
  }




@media screen and (min-width: 480px){
    .br-pc{display: block;}
    .br-sp{display: none;}
  }

  @media screen and (max-width: 1200px){
    .pc-menu{
      margin-left: 50vw;
    }
    .more-white{
      width: 12vw;
    }
  .top_svg{
    width: 20vw;
  }
  .top_svg image{
    width: 20vw;
  }
    .date-pc{
      display: none;
    }
    .date-sp{
      display: block;
      text-align: center;
    }
}

@media screen and (max-width: 850px){
        .br-pc{display: none;}
        .br-sp{display: block;}

        header{
            position: fixed;
          }


    footer{
        padding-left: 10vw;
        width: 90vw;
      }
      .footer-line{
        margin-left: 0;
      }

      .icons{
        padding-left: 0;
      }
      .icons img{
        width: 10vw;
      }

      .footer-p{
        padding-left: 0;
      }
      .kaisei svg{
        width: 30vw;
      }
      .kaisei svg image{
        width: 30vw;
      }

      html{
        overflow-x: hidden;
        width: 100vw;
      }

      h2{
        font-size: 6.667vw;
      }
      p{
        font-size: 4vw;
      }

      .h-menu{
        margin-left: 85vw;
        display: block;
      }
      .pc-menu{
        display: none;
      }
      .pc-menu-hello{
        display: none;
      }

      .top_svg{
        width: 55vw;
        margin-top: 8vw;
        margin-left: 6vw;
      }
      .top_svg{
        width: 55vw;
      }

      .top h1{
        left: 5%;
        top: 40%;
        width: 90vw;
        font-size: 8vw;
        text-align: center;
        height: 30vh;
      }
      .top h3{
        letter-spacing: 4vw;
        font-size: 3vw;
        margin-left: 1.8vw;
        top: 40vh;
      }


      .tate::after{
        content: "";
          /*描画位置*/
        position: absolute;
        margin-left: 5.7vw;
        top: 150vh;
        height: 30vh;
        width: 0.039vw;
        background: white;
        position: absolute;
          /*線の形状*/
        width: 0.1vw;
        height: 10vw;
        background: black;
          /*線の動き1.4秒かけて動く。永遠にループ*/
        animation: pathmove 1.4s ease-in-out infinite;
        opacity:0;
        z-index: 100;
      }

      /*高さ・位置・透過が変化して線が上から下に動く*/
      @keyframes pathmove{
        0%{
          height:0;
          top:91vh;
          opacity: 0;
        }
        30%{
          height:10vh;
          opacity: 1;
        }
        100%{
          height:0;
          top:110vh;
          opacity: 0;
        }
      }

      .waki1{
        border-top-right-radius: 5vw;
      }

      .waki2{
        border-top-left-radius: 5vw;
      }

      .scroll{
        border-top-left-radius:5vw;
        border-top-right-radius: 5vw;
      }


      .icons{
        height: 26.667vw;
      }

      .mokuzi{
        display: none;
      }
      .mokuzi-hello{
        display: none;
      }
      .mokuzi-sp{
        display: block;
        list-style-type: none;
        padding-left: 0;
        letter-spacing: 1vw;
      }
      .mokuzi-sp li{
        margin-bottom: 2.667vw;
      }
      .mokuzi-sp li a{
        text-decoration: none;
        color: black;
        font-size: 6.667vw;
      }


      .two-kikan{
        height: 100vh;
      }
      .judge{
        top: 115vw;
      }

        /*挨拶*/
    .principal{
        display: block;
        padding-bottom: 0;
        margin-top: -15vh; /*禁断*/
      }
      .ima{
        width: 80vw;
        margin-left: 10vw;
      }
      .ima h1{
        font-size: 25px;
      }
      .ima img{
        width: 100%;
        border-radius: 4vw;
        align-items: center;
        margin-top: 3vh;
      }
      .ima h1 img{
        width: 40vw;
        padding: 0;
        margin-left: -51vw;
      }

      .kotyo{
        width: 90vw;
        margin-left: 5vw;
        padding-bottom: 10vh;
      }

      .sp-kotyo{
        display: flex;
        margin-top: 9vh;
        margin-left: -4vw;
        font-family: noto sans jp bold;
        letter-spacing: 1vw;
        font-size: 2vw;
      }

      .kotyo h2{
        font-size: 4vw;
        margin-top: 6vh;
      }

      .kotyo h2 br{
        display: none;
      }

      .kotyo p{
        font-size: 3.25vw;
        margin-top: -4vh; /*禁断*/
        line-height: 3.5vh;
        letter-spacing: 0.3vw;
      }


      .two-kikan{
        height: 140vh;
        position: relative;
        padding-top: 0vh;
      }

      .two-kikan h2{
        font-size: 4vw;
      }

      .two-kikan p{
        font-size: 3.25vw;
        margin-top: 0vh; /*禁断*/
        line-height: 3.5vh;
        margin-bottom: 5vh;
      }
      .two-top{
        width: 80vw;
      }

      .unzyun{
        display: block;
        width: 90vw;
        height: 90vw;
        left: 5%;
      }

      .two-kikan .unzyun div h3{
        font-size: 3.5vw;
        margin-top: 8vh;
      }

      .two-kikan .unzyun div p{
        font-size: 2.5vw;
        line-height: 2.5vh;
      }

      .judge{
        display: block;
        width: 90vw;
        height: 90vw;
        right: 5%;
        top: 110vw;
        margin-top: -15vh; /*禁断*/
      }

      .two-kikan .judge div h3{
        padding-top: 4vh;
        font-size: 3.5vw;
        margin-top: 3vh;
      }

      .two-kikan .judge div p{
        font-size: 2.5vw;
        line-height: 2.5vh;

      }
      .unzyun div,.judge div{
        width: 60vw;
        margin-top: 20vw;
      }
      .unzyun div h3,.judge div h3{
        font-size: 40px;
      }
      .unzyun div p,.judge div p{
        font-size: 25px;
      }

      .unzyun-hello{
        margin-left: 5vw;
        width: 90vw;
        border-top: -20vh;
        text-align: center;
      }
      .unzyun-hello h1{
        font-size: 25px;
      }
      .unjun-hello h1 img{
        padding-left: -20vw;
      }

      .english{
        display: block;
    font-family: noto sans jp bold !important;
    letter-spacing: 1vw;
    font-size: 2vw;
    text-align: left;
    margin-left: 1.5vw;
    margin-bottom: 30px;
    margin-top: -2vh !important;
      }





      .judge-hello{
        margin-left: 5vw;
        margin-right: 5vw;
        text-align: center;
        background: #eeeeee;
      }
      .judge-hello h1{
        font-size: 25px;
      }

      .unzyun-hello div,.judge-hello div{
        flex-wrap: wrap;
      }
      .unzyun-hello div p,.judge-hello div p{
        width: 90vw;
        font-size: 3.25vw;
        line-height: 3.5vh;
        margin-top: -2vh;
        text-align: left;
        letter-spacing: 0.2vw;
      }



      .unzyun-hello div img,.judge-hello div img{
        width: 80vw;
        margin: auto;
        margin-bottom: 30px;
      }
      .unzyun-hello div img{
        order: 1;
      }
      .unzyun-hello div p{
          order: 2;
      }


      .hoka-kikan{
        padding-left: 5vw;
        padding-right: 5vw;
        padding-bottom: 20vh;
        height: auto;
      }
      .toha{
        padding:0;
      }
      .flex{
        height: auto;
      }

      .gityo,.gityo2{
        width: 80vw;
        margin-left: 5vw;
        margin-right: 5vw;
        padding: 0;
        height: auto;
      }
      .gityo h2,.gityo2 h2{
        margin-left: 10vw;
        margin-right: 10vw;
        width: 60vw;
        height: 60vw;
        padding-top: 40vw;
        margin-bottom: 30px;
        border-radius: 50px;
        font-size: 23px;
        vertical-align: middle;
      }
      .flex2{
        width: 90vw;
        height: auto;
        margin-top: 50px;
        margin-bottom: 50px;
      }
      .flex3{
        width: 90vw;
        height: auto;
        margin-top: 50px;
        margin-bottom: 50px;
      }
      .red,.blue,.white,.yellow,.black,.purple,.orange,.green{
        width: 40vw;
        margin-bottom: 20px;
        height: 75vh;
      }
      .red h2,.blue h2,.white h2,.yellow h2,.black h2,.purple h2,.orange h2,.green h2{
        width: 35vw;
        height: 35vw;
        margin-bottom: 30px;
        margin-left: 2.5vw;
        border-radius: 25px;
        font-size: 23px;
        padding-top: 22vw;
      }
      .gityo h2,.gityo2 h2{
        font-size: 28px;
      }
      .black,.purple,.orange,.green{
        margin-right: 0;
      }
      .black,.orange{
        margin-left: 8vw;
      }
      .flex3 p{
        margin: 0;
      }
      .gityo2{
        -webkit-box-ordinal-group:3;
        -ms-flex-order:3;
        -webkit-order:3;
        order:3;
      }

      .flex4{
        margin-left: 20vw;
      }
      .kiwami{
        width: 70vw;
      }
      .button{
        font-size: 22px;
        margin-left: 0;
      }

      .principal{
        margin-bottom: 0;
      }
      .unzyun-hello,.judge-hello{
        margin-left: 0;
        width: auto;
        margin-right: 0;
        padding-left: 5vw;
        padding-right: 5vw;
      }

      .unzyun-hello h1,.judge-hello h1{
        margin: auto;
      }

      .top svg{
        width: 55vw;
        height: 10vw;
        margin-top: 40px;
      }
      .top svg image{
        width: 55vw;
        height: 10vw;
      }

      .judge{
        top: 130vw;
      }
      .hello{
        width: 30vw;
      }

      .gityo p,.gityo2 p{
        width:80vw;
        align-items: center;
        text-align: left;
        font-size: 3.25vw;
        letter-spacing: 0.3vw;

      }
      .red p,.blue p,.white p,.yellow p,.black p,.purple p,.orange p,.green p{
        width: 38vw;
        text-align: center;
        font-size: 2vw;
        line-height: 3.5vh;
      }

      .unzyun-hello h1 img{
        width: 40vw;
        margin-left: 4vw;
      }
      .judge-hello h1 img{
        width: 40vw;
        margin-left: 0vw;
      }
      .judge-hello{
        padding-top: 5vh;
      }


    .unzyun-hello h1,.judge-hello h1{
      padding-bottom: 30px;
      text-align: left;
    }



  }

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


    .map div iframe{
      margin-right: 0;
    }
    .top_bottom li a{
      font-size: 15px;
    }
    .top h3{
      top: 33vh;
    }

    .pc-menu-hello{
      display: none;
    }
    .top{
      margin-top: -5px;
    }


    .sukasi-right,.sukasi-left,.sukasi-kiroku{
      display: none;
    }

    .unzyun div,.judge div{
      margin-top: 10vw;
      width: 60vw;
    }

    .judge{
      top: 145vw;
    }

    .unzyun-hello h1 img{
      margin-left: 0vw;
    }

    .unzyun-hello p .english{
      margin-left: -10vw;
      margin-top: -5vh;
    }

    .unjun-hello div p{
      margin-top: 10vh !important;
    }

    .hoka-kikan h2{
      font-size: 4vw;
      letter-spacing: 4px;
    }

    .toha{
      font-size: 3.25vw;
      letter-spacing: 0.3vw;
      align-items: center;
    }





    .red, .blue, .white, .yellow, .black, .purple, .orange, .green {
      height: 55vh;
    }

    .red p, .blue p, .white p, .yellow p, .black p, .purple p, .orange p, .green p{
      width: 38vw;
      font-size: 2.75vw;
      text-align: left;
      line-height: 2.5vh;
    }
    .red h2,.blue h2,.white h2,.yellow h2,.black h2,.purple h2,.orange h2,.green h2{
      font-size: 2.75vw;
      padding-left: 2.5vw;

    }
    .gityo h2,.gityo2 h2{
      font-size: 18px;
      padding-left: 4vw;
    }



    .kaisei{
      padding-left: 0;
    }
    .kaisei svg{
      width: 30vw;
      height: 10vw;
    }
    .kaisei svg image{
      width: 30vw;
      height: 10vw;
    }

    .two-kikan{
      height: 120vh;
    }
    .unzyun div,.judge div{
      width: 60vw;
      margin-top: 20vw;
    }
    .unzyun div h3,.judge div h3{
      font-size: 18px;
    }
    .unzyun div p,.judge div p{
      font-size: 13px;
    }




  }













