@charset "utf-8" ;

@media (min-width: 1200px) {

    html {
        scroll-behavior: smooth;
        font-family: YuGothic;
    }
    #navArea {
        display: none;
    }
    .pc_none {
      display: none;
    }
    .sp_only {
      display: none;
    }

    
    header {
      background-color: #fff;
      border-bottom: 1px solid #ccc;
      left: 0;
      right: 0;
      margin-bottom: 10px;
    }
    header h1 {
      width: 100%;
      padding: 0.5em;
      font-size: 24px;
      text-align: center;
      background-color: #0d1b37;
      color: #fff;
    }
    header .pc-ver{
      justify-content: space-between;
      display: flex;
      align-items: center;
      border-bottom: 1px solid #ccc;
    }
    header .pc-ver h3 {
      padding-top: 40px;
      padding-bottom: 40px;
      padding-left: 15%;
      font-family: serif;
      font-weight: 900;
      font-size: 50px;
      letter-spacing: 2px;
    }
    header .pc-ver h3 span {
      font-size: 26px;
      color: #ff0062;
    }
    header .pc-ver h5 {
      margin-left: 7.5%;
      padding: 0.5em 2em;
      font-size: 16px;
      background-color: rgb(52, 120, 255);
      color: rgb(255, 220, 92);
      border-radius: 10px;
    }
    header .pc-ver h5 span {
      font-size: 22px;
    }
    header .pc-ver h5 span a {
      text-decoration: none;
      color: #fff;
    }
    header .pc-ver p {
      margin-right: 2.5%;
    }
    header .pc-ver p img {
      vertical-align: middle;
    }
    header .pc-ver p a {
      text-decoration: none;
      vertical-align: middle;
      color: #000000;
      border-radius: 5px;
      padding: 1.75em 3em;
      border: 2px solid #000000;
    }
    header .pc-ver p a:hover {
      border: 2px solid #ff5fa2;
    }
    header nav ul {
      display: flex;
      justify-content: center;
      list-style: none;
      background-color: #0d1b37;
    }
    header nav ul li {
      width: 180px;
      font-size: 18px;
      text-align: center;
      border-left: 1px solid #ccc;
    }
    header nav ul li span {
      text-align: center;
      font-size: 12px;
      font-weight: 100;
    }
    header nav ul li:last-child {
      border-right: 1px solid #ccc;
    }
    header nav ul li .menu:hover {
      background: #fff;
      color: #0d1b37;
    }
    header nav ul li .menu {
      color: #fff;
      text-decoration: none;
      display: block;
      padding: 0.75em 0em;
    }
    header nav ul li .home-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .price-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .service-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .contact-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .access-icon::before {
      display: block;
      margin: 0 auto ;
      width: 32px;
      height: 32px;
    }
    header nav ul li .tell-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .mail-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }

    #page_top{
      width: 50px;
      height: 50px;
      position: fixed;
      right: 2%;
      bottom: 3%;
      background: #0d1b37;
      border-radius: 50%;
    }
    #page_top a{
      position: relative;
      display: block;
      width: 50px;
      height: 50px;
      text-decoration: none;
    }
    #page_top a::before{
      font-family: 'Font Awesome 5 Free';
      font-weight: 900;
      content: '\f062';
      font-size: 25px;
      color: #fff;
      position: absolute;
      width: 25px;
      height: 25px;
      top: -5px;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto;
      text-align: center;
    }

    .works-top {
      text-align: center;
      padding-top: 100px;
      padding-bottom: 100px;
      background-image: url(images/works-back.png);
      background-position: center;
      background-size: cover;
      color: #fff;
    }
    .works-top h2 {
      font-size: 60px;
      line-height: 0.75em;
    }
    .works-top h2 span {
      font-size: 20px;
      color: #ff3c3c;
    }
    .works-top h3 {
      margin-top: 40px;
      font-size: 24px;
    }
    .works-top h3 span {
      font-size: 30px;
      color: #ff3c3c;
      border-bottom: 2px solid #fff;
    }

    

    .sozai1 {
      text-align: center;
      padding-bottom: 80px;
      padding-top: 80px;
    }
    .sozai1 h2 {
      font-size: 60px;
      line-height: 0.75em;
      color: #ff0062;
    }
    .sozai1 h2 span {
      font-size: 20px;
      color: #000000;
    }
    .sozai1 h3 {
      margin: 20px 20%;
    }
    .sozai1 h3 span {
      color: #bd1717;
      border-bottom: 2px solid #000000;
    }
    .sozai1 ul {
      margin-top: 60px;
      justify-content: center;
      display: flex;
    }
    .sozai1 ul li {
      list-style: none;
      font-size: 20px;
      font-family: YuMincho;
      font-style: italic;
    }
    #lx-video {
      width: 80%;
      background: url('poster.jpg') no-repeat;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    #n-video {
      width: 80%;
      background: url('poster.jpg') no-repeat;
      border-radius: 10px;
      border: 2px solid #000000;
    }

    #sr-video {
      height: 600px;
      margin-top: 60px;
      background: url('poster.jpg') no-repeat;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    .sozai1 p {
      font-size: 20px;
      margin-top: 18px;
      font-family: YuMincho;
      font-style: italic;
    }
    
    .sozai1 a {
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding: 1em 5em;
      margin-bottom: 40px;
      font-size: 22px;
      border-radius: 10px;
      font-weight: 600;
      margin-top: 80px;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 32px;
    }
    .sozai1 a:last-child{
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding: 1em 4em;
      margin-bottom: 40px;
      font-size: 22px;
      border-radius: 10px;
      font-weight: 600;
      margin-top: 80px;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 32px;
    }
    .sozai1 a:hover {
      opacity: 0.7;
    }

    .sozai2 {
      text-align: center;
      padding-bottom: 80px;
      padding-top: 60px;
      background-color: #e4efff;
    }
    .sozai2 h2 {
      font-size: 60px;
      line-height: 0.75em;
      color: #ff0062;
    }
    .sozai2 h2 span {
      font-size: 20px;
      color: #000000;
    }
    .sozai2 h3 {
      margin: 20px 20%;
    }
    .sozai2 h3 span {
      color: #bd1717;
      border-bottom: 2px solid #000000;
    }
    .sozai2 ul {
      margin-left: 7.5%;
      margin-right: 7.5%;
    }
    .sozai2 ul li {
      list-style: none;
      font-size: 20px;
      font-family: YuMincho;
      font-style: italic;
    }
    .sozai2 ul.no1 {
      justify-content: center;
      display: flex;
    }
    .sozai2 ul.no1 li {
      margin-top: 40px;
    }
    .sozai2 ul.no1 li img {
      width: 65%;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    .sozai2 ul.no2 {
      justify-content: center;
      display: flex;
    }
    .sozai2 ul.no2 li {
      margin-top: 40px;
    }
    .sozai2 ul.no2 li img {
      width: 65%;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    .sozai2 ul.no3 {
      justify-content: center;
      display: flex;
    }
    .sozai2 ul.no3 li {
      margin-top: 40px;
    }
    .sozai2 ul.no3 li img {
      width: 65%;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    .sozai2 a {
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding: 1em 5em;
      margin-bottom: 40px;
      font-size: 22px;
      border-radius: 10px;
      font-weight: 600;
      margin-top: 80px;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 32px;
    }
    .sozai2 a:last-child{
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding: 1em 4em;
      margin-bottom: 40px;
      font-size: 22px;
      border-radius: 10px;
      font-weight: 600;
      margin-top: 80px;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 32px;
    }
    .sozai2 a:hover {
      opacity: 0.7;
    }
    .sozai3 {
      text-align: center;
      padding-bottom: 200px;
      background-color: #ccc;
      padding-top: 64px;
    }
    .sozai3 h2 {
      padding: 128 auto;
      font-size: 40px;
      background:  rgb(52, 120, 255) ;
      color: #fff;
      width: 320px;
      height: 64px;
      margin-left: 5%;
      margin-bottom: 64px;
      border-radius: 10px;
    }
    .sozai3 ul {
      display: flex;
      justify-content: center;
    }
    .sozai3 ul li {
      list-style: none;
    }
    .sozai3 ul li img {
      width: 70%;
    }
    .sozai3 a {
      text-decoration: none;
      color: #fff;
      background-color: rgb(52, 120, 255);
      display: inline-block;
      padding-left: 120px;
      padding-right: 120px;
      padding-top: 15px;
      padding-bottom: 15px;
      font-size: 24px;
      border-radius: 10px;
      font-weight: 600;
      margin-top: 20px;
      margin-left: 20px;
      margin-right: 20px;
    }
    .sozai3 a:last-child{
      text-decoration: none;
      color: #000000;
      background-color: rgb(255, 255, 52);
      display: inline-block;
      padding-left: 130px;
      padding-right: 130px;
      padding-top: 15px;
      padding-bottom: 15px;
      font-size: 24px;
      border-radius: 10px;
      font-weight: 600;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 32px;
    }
    .sozai3 a img {
      vertical-align: middle;
      width: 40px;
      height: 40px;
      margin-right: 20px;
    }

    .access {
      padding-bottom: 80px;
      margin-top: 100px;
      text-align: center;
    }
    .access h2 {
      font-size: 60px;
      line-height: 0.75em;
    }
    .access h2 span {
      font-size: 20px;
      color: #ff00dd;
    }
    
    .map {
      display: flex;
      margin-top: 60px;
    }
    .map iframe {
      width: 45%;
      margin-left: 10%;
      height: 400px;
    }
    .map ul {
      text-align: left;
      font-size: 18px;
      margin-top: 60px;
      margin-left: 5%;
      list-style: none;
    }
    .map h4 {
      margin-top: 60px;
      margin-bottom: 60px;
      font-size: 28px;
    }
    .map h4 span {
      border-bottom: 7px solid #ff00dd;
    }
    .map a  {
      text-align: center;
      background-color: #bd1717;
      display: inline-block;
      padding: 0.5em 3em;
      border-radius: 5px;
      text-decoration: none;
      color: #fff;
      font-size: 20px;
    }
    .map a:hover {
      background-color: #ca5252;
    }
    .map a span {
      font-size: 16px;
    }

    .contact {
      text-align: center;
      margin-top: 50px;
      padding-top: 100px;
      padding-bottom: 100px;
      background: url(images/call.png);
      background-position: center;
      background-size: cover;
    }
    .contact h2 {
      font-size: 60px;
      line-height: 0.75em;
    }
    .contact h2 span {
      font-size: 20px;
      color: #bd1717;
    }
    .contact h3 {
      font-size: 24px;
      margin-top: 32px;
      margin-bottom: 70px;
    }
    .contact .contact-a a {
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding-left: 8em;
      padding-right: 8em;
      padding-top: 1.5em;
      padding-bottom: 1.5em;
      font-size: 20px;
      border-radius: 10px;
      font-weight: 600;
    }
    .contact img {
      width: 490px;
      margin: 50px 50px;
      border-radius: 10px;
      border: 5px solid #fff;
    }
    .contact .contact-a a:hover {
      background-color: #ca5252;
    }
    .contact img:hover {
      border: 5px solid #85fff3;
    }

    .under {
      background-color: #0d1b37;
      padding-top: 60px;
      text-align: center;
      padding-bottom: 120px;
    }
    .under h3 {
      font-size: 30px;
      color: #fff;
      padding-bottom: 24px;
    }
    .under h3 a {
      text-decoration: none;
      color: #fff;
    }
    .under p {
      color: #fff;
    }
    .under p a {
      text-decoration: none;
      color: #fff;
    }

    .under .under01 {
      margin-top: 80px;
      margin-bottom: 20px;
    }
    .under .under01 a {
      text-decoration: none;
      margin: 20px 35px;
      padding: 16px 5px;
      color: #fff;
      font-size: 20px;
      font-weight: 600;
      border-top: 5px solid #fff;
      border-bottom: 5px solid #fff;
    }
    .under .under01 a:hover {
      color: #fff;
      border-top: 5px solid #ff0000;
      border-bottom: 5px solid #ff0000;
    }
    .under h5 {
      padding-top: 80px;
      color: #fff;
    }
}

@media (min-width:768px) and (max-width:1199px) {

    html {
        scroll-behavior: smooth;
        font-family: sans-serif;
    }
    #navArea {
        display: none;
    }
    .pc_none {
      display: none;
    }
    .sp_only {
      display: none;
    }
    

    header {
      background-color: #fff;
      border-bottom: 1px solid #ccc;
      left: 0;
      right: 0;
      margin-bottom: 10px;
    }
    header h1 {
      width: 100%;
      padding: 0.5em;
      font-size: 20px;
      text-align: center;
      background-color: #0d1b37;
      color: #fff;
    }
    header .pc-ver{
      justify-content: space-between;
      display: flex;
      align-items: center;
      border-bottom: 1px solid #ccc;
    }
    header .pc-ver h3 {
      padding-top: 46px;
      padding-bottom: 46px;
      padding-left: 2.5%;
      font-family: serif;
      font-weight: 900;
      font-size: 32px;
      letter-spacing: 1.5px;
    }
    header .pc-ver h3 span {
      font-size: 20px;
      color: #ff0062;
    }
    header .pc-ver h5 {
      margin-left: 2.5%;
      padding: 0.5em 1em;
      font-size: 14px;
      background-color: rgb(52, 120, 255);
      color: rgb(255, 220, 92);
      border-radius: 10px;
    }
    header .pc-ver h5 span {
      font-size: 16px;
    }
    header .pc-ver h5 span a {
      text-decoration: none;
      color: #fff;
    }
    header .pc-ver p {
      margin-right: 2.5%;
    }
    header .pc-ver p img {
      vertical-align: middle;
    }
    header .pc-ver p a {
      text-decoration: none;
      vertical-align: middle;
      color: #000000;
      display: inline-block;
      border-radius: 5px;
      padding: 1em 1em;
      border: 2px solid #000000;
    }
    header .pc-ver p a:hover {
      border: 2px solid #ff5fa2;
    }
    header nav ul {
      display: flex;
      justify-content: center;
      list-style: none;
      background-color: #0d1b37;
    }
    header nav ul li {
      width: 180px;
      font-size: 18px;
      text-align: center;
      border-left: 1px solid #ccc;
    }
    header nav ul li span {
      text-align: center;
      font-size: 12px;
      font-weight: 100;
    }
    header nav ul li:last-child {
      border-right: 1px solid #ccc;
    }
    header nav ul li .menu:hover {
      background: #fff;
      color: #0d1b37;
    }
    header nav ul li .menu {
      color: #fff;
      text-decoration: none;
      display: block;
      padding: 0.75em 0em;
    }
    header nav ul li .home-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .price-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .service-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .contact-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .access-icon::before {
      display: block;
      margin: 0 auto ;
      width: 32px;
      height: 32px;
    }
    header nav ul li .tell-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }
    header nav ul li .mail-icon::before {
      display: block;
      margin: 0 auto;
      width: 32px;
      height: 32px;
    }

    #page_top{
      width: 50px;
      height: 50px;
      position: fixed;
      right: 2%;
      bottom: 3%;
      background: #0d1b37;
      border-radius: 50%;
    }
    #page_top a{
      position: relative;
      display: block;
      width: 50px;
      height: 50px;
      text-decoration: none;
    }
    #page_top a::before{
      font-family: 'Font Awesome 5 Free';
      font-weight: 900;
      content: '\f062';
      font-size: 25px;
      color: #fff;
      position: absolute;
      width: 25px;
      height: 25px;
      top: -5px;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto;
      text-align: center;
    }

    .works-top {
      text-align: center;
      padding-top: 100px;
      padding-bottom: 100px;
      background-image: url(images/works-back.png);
      background-position: center;
      background-size: cover;
      color: #fff;
    }
    .works-top h2 {
      font-size: 45px;
      line-height: 0.75em;
    }
    .works-top h2 span {
      font-size: 20px;
      color: #ff3c3c;
    }
    .works-top h3 {
      margin-top: 40px;
      font-size: 22px;
    }
    .works-top h3 span {
      font-size: 28px;
      color: #ff3c3c;
      border-bottom: 2px solid #fff;
    }

    

    .sozai1 {
      text-align: center;
      padding-bottom: 60px;
      padding-top: 60px;
    }
    .sozai1 h2 {
      font-size: 45px;
      line-height: 0.75em;
      color: #ff0062;
    }
    .sozai1 h2 span {
      font-size: 20px;
      color: #000000;
    }
    .sozai1 h3 {
      margin: 20px 10%;
      font-size: 16px;
    }
    .sozai1 h3 span {
      color: #bd1717;
      border-bottom: 2px solid #000000;
    }
    .sozai1 ul {
      margin-top: 40px;
      justify-content: center;
    }
    .sozai1 ul li {
      list-style: none;
      font-size: 20px;
      font-family: YuMincho;
      font-style: italic;
    }
    #lx-video {
      width: 60%;
      background: url('poster.jpg') no-repeat;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    #n-video {
      width: 60%;
      margin-top: 10px;
      background: url('poster.jpg') no-repeat;
      border-radius: 10px;
      border: 2px solid #000000;
    }

    #sr-video {
      height: 600px;
      margin-top: 10px;
      background: url('poster.jpg') no-repeat;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    .sozai1 p {
      font-size: 18px;
      margin-top: 10px;
      margin-bottom: 20px;
      font-family: YuMincho;
      font-style: italic;
    }
    
    .sozai1 a {
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding: 1em 5em;
      font-size: 22px;
      border-radius: 10px;
      font-weight: 600;
      margin-top: 20px;
      margin-left: 20px;
      margin-right: 20px;
    }
    .sozai1 a:last-child{
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding: 1em 4em;
      font-size: 22px;
      border-radius: 10px;
      font-weight: 600;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 32px;
    }
    .sozai1 a:hover {
      opacity: 0.7;
    }

    .sozai2 {
      text-align: center;
      padding-bottom: 60px;
      padding-top: 60px;
      background-color: #e4efff;
    }
    .sozai2 h2 {
      font-size: 45px;
      line-height: 0.75em;
      color: #ff0062;
    }
    .sozai2 h2 span {
      font-size: 20px;
      color: #000000;
    }
    .sozai2 h3 {
      margin: 20px 10%;
      font-size: 16px;
    }
    .sozai2 h3 span {
      color: #bd1717;
      border-bottom: 2px solid #000000;
    }
    .sozai2 ul {
      margin-left: 5%;
      margin-right: 5%;
    }
    .sozai2 ul li {
      list-style: none;
      font-size: 18px;
      font-family: YuMincho;
      font-style: italic;
    }
    .sozai2 ul.no1 {
      justify-content: center;
      display: flex;
    }
    .sozai2 ul.no1 li {
      margin-top: 40px;
    }
    .sozai2 ul.no1 li img {
      width: 80%;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    .sozai2 ul.no2 {
      justify-content: center;
      display: flex;
    }
    .sozai2 ul.no2 li {
      margin-top: 40px;
    }
    .sozai2 ul.no2 li img {
      width: 80%;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    .sozai2 ul.no3 {
      justify-content: center;
      display: flex;
      margin-bottom: 20px;
    }
    .sozai2 ul.no3 li {
      margin-top: 40px;
    }
    .sozai2 ul.no3 li img {
      width: 80%;
      border-radius: 10px;
      border: 2px solid #000000;
    }
    .sozai2 a {
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding: 1em 5em;
      font-size: 22px;
      border-radius: 10px;
      font-weight: 600;
      margin-top: 20px;
      margin-left: 20px;
      margin-right: 20px;
    }
    .sozai2 a:last-child{
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding: 1em 4em;
      font-size: 22px;
      border-radius: 10px;
      font-weight: 600;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 32px;
    }
    .sozai2 a:hover {
      opacity: 0.7;
    }
    .sozai3 {
      text-align: center;
      padding-bottom: 200px;
      background-color: #ccc;
      padding-top: 64px;
    }
    .sozai3 h2 {
      padding: 128 auto;
      font-size: 40px;
      background:  rgb(52, 120, 255) ;
      color: #fff;
      width: 320px;
      height: 64px;
      margin-left: 5%;
      margin-bottom: 64px;
      border-radius: 10px;
    }
    .sozai3 ul {
      display: flex;
      justify-content: center;
    }
    .sozai3 ul li {
      list-style: none;
    }
    .sozai3 ul li img {
      width: 70%;
    }
    .sozai3 a {
      text-decoration: none;
      color: #fff;
      background-color: rgb(52, 120, 255);
      display: inline-block;
      padding-left: 120px;
      padding-right: 120px;
      padding-top: 15px;
      padding-bottom: 15px;
      margin-bottom: 40px;
      font-size: 24px;
      border-radius: 10px;
      font-weight: 600;
      margin-top: 80px;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 32px;
    }
    .sozai3 a:last-child{
      text-decoration: none;
      color: #000000;
      background-color: rgb(255, 255, 52);
      display: inline-block;
      padding-left: 130px;
      padding-right: 130px;
      padding-top: 15px;
      padding-bottom: 15px;
      margin-bottom: 100px;
      font-size: 24px;
      border-radius: 10px;
      font-weight: 600;
      margin-top: 80px;
      margin-left: 20px;
      margin-right: 20px;
      margin-bottom: 32px;
    }
    .sozai3 a img {
      vertical-align: middle;
      width: 40px;
      height: 40px;
      margin-right: 20px;
    }

    .access {
      padding-bottom: 60px;
      margin-top: 80px;
      text-align: center;
    }
    .access h2 {
      font-size: 45px;
      line-height: 0.75em;
    }
    .access h2 span {
      font-size: 20px;
      color: #ff00dd;
    }
    
    .map {
      display: flex;
      margin-top: 60px;
    }
    .map iframe {
      width: 45%;
      margin-left: 5%;
      height: 400px;
    }
    .map ul {
      text-align: left;
      font-size: 18px;
      margin-top: 20px;
      margin-left: 2.5%;
      list-style: none;
    }
    .map h4 {
      margin-top: 60px;
      margin-bottom: 60px;
      font-size: 28px;
    }
    .map h4 span {
      border-bottom: 7px solid #ff00dd;
    }
    .map a  {
      text-align: center;
      background-color: #bd1717;
      display: inline-block;
      padding: 0.5em 2em;
      border-radius: 5px;
      text-decoration: none;
      color: #fff;
      font-size: 20px;
    }
    .map a:hover {
      background-color: #ca5252;
    }
    .map a span {
      font-size: 16px;
    }

    .contact {
      text-align: center;
      margin-top: 50px;
      padding-top: 80px;
      padding-bottom: 80px;
      background: url(images/call.png);
      background-position: center;
      background-size: cover;
    }
    .contact h2 {
      font-size: 45px;
      line-height: 0.75em;
    }
    .contact h2 span {
      font-size: 20px;
      color: #bd1717;
    }
    .contact h3 {
      font-size: 22px;
      margin-top: 32px;
      margin-bottom: 70px;
    }
    .contact .contact-a a {
      text-decoration: none;
      color: #fff;
      background-color: #bd1717;
      display: inline-block;
      padding-left: 8em;
      padding-right: 8em;
      padding-top: 1.5em;
      padding-bottom: 1.5em;
      font-size: 20px;
      border-radius: 10px;
      font-weight: 600;
    }
    .contact img {
      width: 520px;
      margin: 20px 0px;
      border-radius: 10px;
      border: 5px solid #fff;
    }
    .contact .contact-a a:hover {
      background-color: #ca5252;
    }
    .contact img:hover {
      border: 5px solid #85fff3;
    }

    .under {
      background-color: #0d1b37;
      padding-top: 60px;
      text-align: center;
      padding-bottom: 120px;
    }
    .under h3 {
      font-size: 30px;
      color: #fff;
      padding-bottom: 24px;
    }
    .under h3 a {
      text-decoration: none;
      color: #fff;
    }
    .under p {
      color: #fff;
    }
    .under p a {
      text-decoration: none;
      color: #fff;
    }

    .under .under01 {
      margin-top: 80px;
      margin-bottom: 20px;
    }
    .under .under01 a {
      text-decoration: none;
      margin: 20px 35px;
      padding: 16px 5px;
      color: #fff;
      font-size: 20px;
      font-weight: 600;
      border-top: 5px solid #fff;
      border-bottom: 5px solid #fff;
    }
    .under .under01 a:hover {
      color: #fff;
      border-top: 5px solid #ff0000;
      border-bottom: 5px solid #ff0000;
    }
    .under h5 {
      padding-top: 80px;
      color: #fff;
    }


}


@media (max-width:767px) {

    html {
        scroll-behavior: smooth;
        font-family: sans-serif;
    }
    .sp_none {
        display: none;
    }
    .sp_none2 {
      display: none;
    }
    .pc-ver {
      display: none;
    }
    header .pc-ver2 nav {
      display: none;
    }


  
    header h1 {
      padding: 1em 0em;
      font-size: 10.5px;
      text-align: center;
      width: 100%;
      font-weight: 100;
      background-color: #0d1b37;
      color: #fff;
      position: fixed;
    }
    .inner {
      background-color: #0d1b37;
      height: 100%;
      color: #FFF;
      font-style: italic;
    }
    
    nav {
        display: block;
        position: fixed;
        background-color: #ffffff;
        width: 220px;
        top: 0;
        left: -300px;
        bottom: 0;
        transition: all 0.5s;
        z-index: 3;
        opacity: 0;
      }
      .open nav {
        left: 0;
        opacity: 1;
      }
      nav .inner {
        padding: 25px;
      }
      nav .inner ul {
        list-style: none;
        margin: 0;
        padding: 0;
        margin-top: 20px;
      }
      nav .inner ul li {
        margin: 0;
        border-bottom: 1px solid #fff;
        list-style: none;
      }
      nav .inner ul li a {
        display: block;
        color: #fff;
        font-size: 14px;
        padding: 1rem;
        text-decoration: none;
        transition-duration: 0.2s;
      }
      nav .inner ul li a:hover {
        background: #e4e4e4;
      }
      .toggle-btn {
        display: block;
        position: fixed;
        top: 46px;
        right: 16px;
        width: 36px;
        height: 30px;
        z-index: 3;
        cursor: pointer;
        background-color: #0d1b37; 
        border-radius: 2px;  
      }
      .toggle-btn span {
        margin-left: 8px;
        position: absolute;
        display: block;
        width: 20px;
        height: 2px;
        background-color: #fff;
        transition: all 0.5s;
        border-radius: 4px;
      }
      .toggle-btn span:nth-child(1) {
        top: 6px;
      }
      .toggle-btn span:nth-child(2) {
        top: 14px;
      }
      .toggle-btn span:nth-child(3) {
        bottom: 6px;
      }
      .open .toggle-btn span {
        background-color: #fff;
      }
      .open .toggle-btn span:nth-child(1) {
        transform: translateY(8px) rotate(-315deg);
      }
      .open .toggle-btn span:nth-child(2) {
        opacity: 0;
      }
      .open .toggle-btn span:nth-child(3) {
        transform: translateY(-8px) rotate(315deg);
      }
      #mask {
        display: none;
        transition: all 0.5s;
      }
      .open #mask {
        display: block;
        background: #000;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        position: fixed;
        opacity: 0.8;
        z-index: 2;
        cursor: pointer;
      }

      #page_top{
        width: 50px;
        height: 50px;
        position: fixed;
        right: 2%;
        bottom: 10%;
        background: #0d1b37;
        border-radius: 50%;
      }
      #page_top a{
        position: relative;
        display: block;
        width: 50px;
        height: 50px;
        text-decoration: none;
      }
      #page_top a::before{
        font-family: 'Font Awesome 5 Free';
        font-weight: 900;
        content: '\f062';
        font-size: 25px;
        color: #fff;
        position: absolute;
        width: 25px;
        height: 25px;
        top: -5px;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto;
        text-align: center;
      }
  
      .works-top {
        text-align: center;
        padding-top: 100px;
        padding-bottom: 60px;
        background-image: url(images/works-back.png);
        background-position: center;
        background-size: cover;
        color: #fff;
      }
      .works-top h2 {
        font-size: 30px;
        line-height: 0.75em;
      }
      .works-top h2 span {
        font-size: 16px;
        color: #ff3c3c;
      }
      .works-top h3 {
        margin-top: 30px;
        font-size: 14px;
      }
      .works-top h3 span {
        font-size: 20px;
        color: #ff3c3c;
        border-bottom: 2px solid #fff;
      }
      .sozai1 {
        text-align: center;
        padding-bottom: 60px;
        padding-top: 60px;
      }
      .sozai1 h2 {
        font-size: 30px;
        line-height: 0.75em;
        color: #ff0062;
      }
      .sozai1 h2 span {
        font-size: 16px;
        color: #000000;
      }
      .sozai1 h3 {
        margin: 20px 5%;
        line-height: 1.75em;
        font-weight: 600;
        font-family: YuMincho;
        font-size: 14px;
      }
      .sozai1 h3 span {
        color: #bd1717;
        border-bottom: 1px solid #000000;
      }
      .sozai1 ul {
        margin-top: 40px;
        justify-content: center;
      }
      .sozai1 ul li {
        list-style: none;
        font-family: YuMincho;
        font-style: italic;
      }
      #lx-video {
        width: 80%;
        background: url('poster.jpg') no-repeat;
        border-radius: 5px;
        border: 1px solid #000000;
      }
      #n-video {
        width: 80%;
        margin-top: 5px;
        background: url('poster.jpg') no-repeat;
        border-radius: 10px;
        border: 1px solid #000000;
      }
  
      #sr-video {
        height: 400px;
        margin-top: 5px;
        background: url('poster.jpg') no-repeat;
        border-radius: 10px;
        border: 1px solid #000000;
      }
      .sozai1 p {
        font-size: 14px;
        font-weight: 600;
        margin-bottom: 20px;
        font-family: YuMincho;
        font-style: italic;
      }
      
      .sozai1 a {
        text-decoration: none;
        color: #fff;
        background-color: #bd1717;
        display: inline-block;
        padding: 1em 3em;
        font-size: 18px;
        border-radius: 10px;
        font-weight: 600;
        margin-top: 20px;
        margin-left: 20px;
        margin-right: 20px;
      }
      .sozai1 a:last-child{
        text-decoration: none;
        color: #fff;
        background-color: #bd1717;
        display: inline-block;
        padding: 1em 2.25em;
        font-size: 18px;
        border-radius: 10px;
        font-weight: 600;
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 32px;
      }
      .sozai1 a:hover {
        opacity: 0.7;
      }
  
      .sozai2 {
        text-align: center;
        padding-bottom: 60px;
        padding-top: 60px;
        background-color: #e4efff;
      }
      .sozai2 h2 {
        font-size: 30px;
        line-height: 0.75em;
        color: #ff0062;
      }
      .sozai2 h2 span {
        font-size: 16px;
        color: #000000;
      }
      .sozai2 h3 {
        margin: 20px 10% 40px 10%;
        font-size: 14px;
        font-family: YuMincho;
        font-weight: 600;
      }
      .sozai2 h3 span {
        color: #bd1717;
        border-bottom: 1px solid #000000;
      }
      .sozai2 ul {
        margin-left: 2.5%;
        margin-right: 2.5%;
      }
      .sozai2 ul li {
        list-style: none;
        font-size: 14px;
        font-family: YuMincho;
        font-style: italic;
      }
      .sozai2 ul.no1 {
        justify-content: center;
      }
      .sozai2 ul.no1 li {
        margin-top: 20px;
      }
      .sozai2 ul.no1 li img {
        width: 90%;
        border-radius: 5px;
        border: 1px solid #000000;
      }
      .sozai2 ul.no2 {
        justify-content: center;
      }
      .sozai2 ul.no2 li {
        margin-top: 20px;
      }
      .sozai2 ul.no2 li img {
        width: 90%;
        border-radius: 5px;
        border: 1px solid #000000;
      }
      .sozai2 ul.no3 {
        justify-content: center;
        margin-bottom: 20px;
      }
      .sozai2 ul.no3 li {
        margin-top: 20px;
      }
      .sozai2 ul.no3 li img {
        width: 90%;
        border-radius: 5px;
        border: 1px solid #000000;
      }
      .sozai2 a {
        text-decoration: none;
        color: #fff;
        background-color: #bd1717;
        display: inline-block;
        padding: 1em 3em;
        font-size: 18px;
        border-radius: 10px;
        font-weight: 600;
        margin-top: 20px;
        margin-left: 20px;
        margin-right: 20px;
      }
      .sozai2 a:last-child{
        text-decoration: none;
        color: #fff;
        background-color: #bd1717;
        display: inline-block;
        padding: 1em 2.25em;
        font-size: 18px;
        border-radius: 10px;
        font-weight: 600;
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 32px;
      }
      .sozai2 a:hover {
        opacity: 0.7;
      }
      .sozai3 {
        text-align: center;
        padding-bottom: 80px;
        background-color: #ccc;
        padding-top: 60px;
        border-bottom: 2px solid #000000;
      }
      .sozai3 h2 {
        padding-top: 6px;
        font-size: 20px;
        background:  rgb(52, 120, 255) ;
        color: #fff;
        width: 160px;
        height: 40px;
        margin-left: 5%;
        margin-bottom: 64px;
        border-radius: 10px;
      }
      .sozai3 ul {
        display: flex;
        justify-content: center;
      }
      .sozai3 ul li {
        list-style: none;
      }
      .sozai3 ul li img {
        width: 90%;
        border-radius: 10px;
      }
      .sozai3 ul li p {
        font-size: 12px;
      }
      .sozai3 a {
        text-decoration: none;
        color: #fff;
        background-color: rgb(52, 120, 255);
        display: inline-block;
        padding-left: 30px;
        padding-right: 30px;
        padding-top: 5px;
        padding-bottom: 5px;
        margin-bottom: 10px;
        font-size: 18px;
        border-radius: 10px;
        font-weight: 600;
        margin-top: 80px;
        margin-left: 20px;
        margin-right: 20px;
      }
      .sozai3 a:last-child{
        text-decoration: none;
        color: #000000;
        background-color: rgb(255, 255, 52);
        display: inline-block;
        padding-left: 36px;
        padding-right: 36px;
        padding-top: 5px;
        padding-bottom: 5px;
        font-size: 18px;
        border-radius: 10px;
        font-weight: 600;
        margin-top: 10px;
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 32px;
      }
      .sozai3 a img {
        vertical-align: middle;
        width: 36px;
        height: 36px;
        margin-right: 20px;
      }

      

      .access {
        padding-bottom: 60px;
        margin-top: 60px;
        text-align: center;
      }
      .access h2 {
        font-size: 30px;
        line-height: 0.75em;
      }
      .access h2 span {
        font-size: 16px;
        color: #ff00dd;
      }
      
      .map {
        margin-top: 40px;
      }
      .map iframe {
        width: 90%;
        height: 250px;
      }
      .map ul {
        text-align: left;
        font-size: 16px;
        margin-top: 20px;
        margin-left: 5%;
        list-style: none;
      }
      .map h4 {
        text-align: center;
        margin-top: 30px;
        margin-bottom: 40px;
        font-size: 22px;
      }
      .map h4 span {
        margin-left: -5%;
        border-bottom: 5px solid #ff00dd;
      }
      .map a  {
        width: 95%;
        text-align: center;
        background-color: #bd1717;
        display: inline-block;
        padding: 0.5em 1em;
        border-radius: 5px;
        text-decoration: none;
        color: #fff;
        font-size: 20px;
      }
      .map a:hover {
        background-color: #ca5252;
      }
      .map a span {
        font-size: 14px;
      }

      .contact {
        text-align: center;
        padding-top: 60px;
        padding-bottom: 80px;
        background: url(images/call.png);
        background-position: center;
        background-size: cover;
      }
      .contact h2 {
        font-size: 30px;
        line-height: 0.75em;
      }
      .contact h2 span {
        font-size: 16px;
        color: #bd1717;
      }
      .contact h3 {
        margin: 30px 5% 50px 5%;
        font-size: 18px;
        margin-top: 32px;
        margin-bottom: 40px;
      }
      .contact .contact-a a {
        text-decoration: none;
        color: #fff;
        background-color: #bd1717;
        display: inline-block;
        padding-left: 3.75em;
        padding-right: 3.75em;
        padding-top: 1.5em;
        padding-bottom: 1.5em;
        font-size: 20px;
        border-radius: 10px;
        font-weight: 600;
      }
      .contact img {
        width: 350px;
        margin: 20px 0px;
        border-radius: 10px;
        border: 5px solid #fff;
      }
      .contact .contact-a a:hover {
        background-color: #ca5252;
      }
      .contact img:hover {
        border: 5px solid #85fff3;
      }
  
      .under {
        background-color: #0d1b37;
        padding-top: 60px;
        text-align: center;
        padding-bottom: 150px;
      }
      .under h3 {
        font-size: 30px;
        color: #fff;
        padding-bottom: 24px;
      }
      .under h3 a {
        text-decoration: none;
        color: #fff;
      }
      .under p {
        color: #fff;
      }
      .under p a {
        text-decoration: none;
        color: #fff;
      }
  
      .under .under01 {
        margin-top: 40px;
        margin-bottom: 20px;
      }
      .under .under01 a {
        text-decoration: none;
        margin: 10px 5px;
        display: inline-block;
        padding: 10px 1px;
        color: #fff;
        font-size: 16px;
        font-weight: 600;
        border-top: 3px solid #fff;
        border-bottom: 3px solid #fff;
      }
      .under .under01 a:hover {
        color: #fff;
        border-top: 3px solid #ff0000;
        border-bottom: 3px solid #ff0000;
      }
      .under h5 {
        padding-top: 40px;
        color: #fff;
      }



      footer {
        left: 0;
        right: 0;
        bottom: 0;
        position: fixed;
        background-color: #0d1b37;
        border-top: 2px solid #fff;
      }
      footer .pc_none ul {
        display: flex;
        justify-content: center;
        list-style: none;
      }
      footer .pc_none ul li {
        color: #fff;
        width: 140px;
        text-align: center;
      }
      footer .pc_none ul li .menu:hover {
        background: #ffffaa;
      }
      footer .pc_none ul li .menu2 {
        color: #fff;
        text-decoration: none;
        display: block;
        padding: 4px;
      }
      footer .pc_none ul li .home-ic::before {
        content: '';
        display: block;
        margin: 0 auto;
        background: url(../images/home.svg);
        width: 24px;
        height: 24px;
        background-repeat: no-repeat;
        background-size: contain;
      }
      footer .pc_none ul li .access-ic::before {
        content: '';
        display: block;
        margin: 0 auto ;
        background: url(../images/access.svg);
        width: 24px;
        height: 24px;
        background-repeat: no-repeat;
        background-size: contain;
      }
      footer .pc_none ul li .tell-ic::before {
        content: '';
        display: block;
        margin: 0 auto;
        background: url(../images/call.svg);
        width: 24px;
        height: 24px;
        background-repeat: no-repeat;
        background-size: contain;
      }
      footer .pc_none ul li .mail-ic::before {
        content: '';
        display: block;
        margin: 0 auto;
        background: url(../images/insta.svg);
        width: 24px;
        height: 24px;
        background-repeat: no-repeat;
        background-size: contain;
      }


    
}