@charset "utf-8";

*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

*, *::before, *::after {
    box-sizing:border-box;
  }
  .clearfix::after {
    content:'';
    display:block;
    clear:both;
  }

body{
    padding: 0;
    margin: 0;
    background-color: rgb(230, 209, 189);

}
/*画像の自動リサイズ*/
img{
    max-width: 100%;
    height: auto;
}
/*コンテンツが重なる場合用のリセットCSS*/
.clearfix:after{
  content:"";
  display:block;
  clear:both;
}
/*最大はばの固定用*/
.max-wid{
    max-width: 1500px;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.header{
    width: 100%;
    height: auto;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}

.logo{
    width: 30%;
}

.logo > img{
    max-width: 300px;
    height: auto;
    padding: 15px 15px 15px 30px;
}

nav{
    width: 70%;
    height: auto;
    margin-top: 10px;
}

.nav{
    display: flex;
    justify-content: flex-end;
    padding: 15px;
}

.pc_nav > ul > li{
    list-style: none;
    padding: 0 15px;
}

.pc_nav > ul > li > a{
    color: black;
    font-size: x-large; 
    text-decoration: none;
}

/*スマホナビゲーション*/
.resnav{/*スマホNAV非表示*/
    display: none;
}

/*　ハンバーガーメニューボタン　*/
.hamburger {
    display : block;
    position: absolute;
    z-index : 3;
    right : 20px;
    top   : 20px;
    width : 42px;
    height: 42px;
    cursor: pointer;
    text-align: center;
  }
  .hamburger span {
    display : block;
    position: absolute;
    width   : 30px;
    height  : 2px ;
    left    : 6px;
    background : #fff;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
  }
  .hamburger span:nth-child(1) {
    top: 10px;
  }
  .hamburger span:nth-child(2) {
    top: 20px;
  }
  .hamburger span:nth-child(3) {
    top: 30px;
  }
  
  /* スマホメニューを開いてる時のボタン */
  .hamburger.active span:nth-child(1) {
    top : 16px;
    left: 6px;
    background :#fff;
    -webkit-transform: rotate(-45deg);
    -moz-transform   : rotate(-45deg);
    transform        : rotate(-45deg);
  }
  
  .hamburger.active span:nth-child(2),
  .hamburger.active span:nth-child(3) {
    top: 16px;
    background :#fff;
    -webkit-transform: rotate(45deg);
    -moz-transform   : rotate(45deg);
    transform        : rotate(45deg);
  }
  
  /* メニュー背景　*/
  .globalMenuSp {
    position: fixed;
    z-index : 2;
    top  : 0;
    left : 0;
    color: #fff;
    background: rgba( 71,70,73,0.6 );
    text-align: center;
    width: 100%;
    transform: translateY(-100%);
    transition: all 0.6s;
  }
  
  .globalMenuSp ul {
    margin: 0 auto;
    padding: 0;
    width: 100%;
  }
  
  .globalMenuSp ul li {
    list-style-type: none;
    padding: 0;
    width: 100%;
    transition: .4s all;
  }
  .globalMenuSp ul li:last-child {
    padding-bottom: 0;
  }
  .globalMenuSp ul li:hover{
    background :#ddd;
  }
  
  .globalMenuSp ul li a {
    display: block;
    color: #fff;
    padding: 1em 0;
    text-decoration :none;
  }
  
/* クリックでjQueryで追加・削除 */
  .globalMenuSp.active {
    opacity: 100;
    display: block;
     transform: translateX(0%);
  }

/*スマホナビゲーション*/

.contents{
    width: 100%;
    display: flex;
    margin: 0 auto;
    
}

.sub1{
    margin: auto;
    font-size: larger;
}

.sub1 > p{
    font-size: 1.6rem;
}


h1{
    color: rgb(0, 172, 174);
    font-size: xxx-large;
}

.sub1 > h3{
    color: rgb(174, 83, 83);
    text-decoration: underline;
    text-decoration-color: white;
    font-size: xx-large;
}

.sub2{
    margin: auto;
    margin-bottom: 0;
}


.box1{
   
    text-align: center;
    margin: 0 auto;
    width: 100%;
    height: auto;
    background-color: beige;
    font-size: large;
}

.box1 > section > img{
    margin: 0 auto;
}
.box1 > section > h2 > p{

    margin: 0;
    font-size: 2rem;
}

.box1 > section > h2{
    
    color: rgb(0, 153, 102);
    font-size: xxx-large;
    padding: 5%;
    margin-top: 0;
    background-image: url(../portfolio-img/portfolio-img2a.png);
    background-repeat: no-repeat;
    background-position: center;
    
}

.box1 > section > p{
    padding-bottom: 13%;
    background-image: url(../portfolio-img/portfolio-img3.png);
    background-repeat: no-repeat;
    background-size: 25%;
    background-position: 62%;
    font-size: 1.5rem;
    
}
.box2{
    text-align: left;
    font-size: large;
    padding: 5%;
}



h2{
    color: rgb(0, 153, 102);
    font-size: xxx-large;
   
}

.subtitle{
    color: rgb(0, 153, 102)!important;
    font-size: xxx-large!important;
    font-weight: bold;
}

.smallboxs{
    display: flex;
    text-align: center;

}


.smallbox1{
    width: 33.3%;
    background-color: white;
    background-image: url(../portfolio-img/portfolio-img4.png);
    background-repeat: no-repeat;
    background-size: 25%;
    background-position: 51% 0%;
    padding-top: 25px;
    margin: 2%;
    border-radius: 10%;
}

.smallbox1 > img{
    width: 40%;
}

.smallbox1 > p{
    margin: 1em;
}


.smallbox2{
    width: 33.3%;
    background-color: white;
    background-image: url(../portfolio-img/portfolio-img5.png);
    background-repeat: no-repeat;
    background-size: 23%;
    background-position: 50% -1%;
    padding-top: 25px;
    padding-bottom: 40px;
    margin: 2%;
    border-radius: 10%;
}

.smallbox2 > img{
    width: 40%;
}

.smallbox2 > p{
    margin: 1em;
}


.smallbox3{
    width: 33.3%;
    background-color: white;
    background-image: url(../portfolio-img/portfolio-img6.png);
    background-repeat: no-repeat;
    background-size: 22%;
    background-position: 50% -0.5%;
    padding-top: 25px;
    margin: 2%;
    border-radius: 10%;
    }

.hosokusetsumei{
    padding-left: 5%;

}

.smallbox3 > img{
    width: 40%;

}

.smallbox3 > p{
    margin: 1em;
}



.box3{
    text-align: left;
    font-size: large;
    padding-top: 25px;
    width: 100%;
    height: auto;
    background-color: beige;
   
}

.box3 > section > h3{
    display: inline-block;
    margin-left: 3%;
    color:white;
    font-size: xx-large;
    -webkit-text-stroke: 1.5px black;
    padding: 10px;
	background-color: #e6f3ff;
	border: dashed 5px #21d6b2;
	box-shadow: 0 0 0 5px #e6f3ff;
   

}


.dtp {

    display: flex;
    flex-wrap: wrap;
    justify-content: center; /* ← これで中央寄せ */
    
}


.dtpbox {
    width: 50%;
    height: auto;
    padding: 5%;
}
.dtp > img{
    max-width: 100%;
    height: auto;
    
}

.visual {
 background-color: beige;
 /*margin-bottom: 60px;*/
}

.soundtab {
     display: flex;
      justify-content: center; /* ← これで中央寄せ！ */
     gap: 30px;      /* 音楽ブロックの間隔 */
      margin-top: 20px;
      
}

.music-block {
    display: flex;
    flex-direction: column; /* 縦並び */
      align-items: center;    /* 中央寄せ */
      width: 300px;
}

 .progress-bar {
      width: 100%;
      height: 10px;
      background-color: #ddd;
      cursor: pointer;
      margin-top: 10px;
    }

    .progress-bar-filled {
      height: 100%;
      background-color: #4caf50;
      width: 0%;
    }

.box4{
    text-align: left;
    font-size: large;
    padding: 4%;
}

.subbox{
    width: 65%;
    margin: auto;
    background-color: white;
    padding: 3%;
    border-radius: 20px;

}

.box4 > section > .subbox > h3{
    font-size: xx-large;
    color: rgb(0, 153, 102);
    margin: 0;
}


.tsu-ru{
    color: #009966;
}

.tsu-ru > span{
    font-weight: bold;
}


footer{
    font-size: 15px;
  color: #999;
  text-align: center;
}


footer > .nav > .nav_tips > a{
    font-size:15px;
    color: #999;
}


@media (max-width: 768px){/*768px以下の時適用*/

nav{
    display: none;
}

.resnav{/*スマホNAV表示*/
    display: block;
}

.box1 > p{

    background-position: 80% 70%;
}

    .box1 > section > p {
        background-image: url(../portfolio-img/portfolio-img3.png);
    background-repeat: no-repeat;
    background-size: 46%;
    background-position: 100% 92%;
    }



    .smallboxs{
    display: block;

}



.smallbox1{
    width: 100%;
    height: auto;
}

.smallbox1 > p{
    font-size: 1.6rem;
}

.smallbox1 > img{
    width: 30%;
}

.smallbox2{
width: 100%;
height: auto;
}

.smallbox2 > p{
    font-size: 1.6rem;
}

.smallbox2 > img{
    width: 30%;
}

.smallbox3{
width: 100%;
height: auto;
}


.smallbox3 > p{
    font-size: 1.6rem;
    
}

.smallbox3 > img{
    width: 25%;
}

}



/*スライダー調整*/

.slick-prev {
    z-index: 1;
    left: 7px;
}

.slick-prev:before {
    content: '◀︎';
    background-color: #009966;
    padding: 3px;
    border-radius: 50%;
    font-size: 12px;
}

.slick-next {
    z-index: 1;
    right: 7px;
}

.slick-next:before {
    content: '▶︎';
    background-color: #009966;
    padding: 3px;
    border-radius: 50%;
    font-size: 12px;
}



