@charset "UTF-8";
/* CSS Document */
html {
  font-size: 62.5%; /* 16px * 62.5% = 10px */
  width: 100%;
  box-sizing: border-box;
}
.header{
    background-color:#fff7ed;
}

body {
  color: #333; /* RGB */
 font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 600;
  font-size: 1.6em;
  line-height: 2.4rem;
  text-align: center;
  background-color: #fff7ed;
    background: #fff7ed;
  	overflow-x: hidden;
	animation: loading 1s;
}
@keyframes loading {
	0% {opacity: 0;}
	100% {opacity: 1;}
}

section h2 {
  font-size: 2.4rem;
}
a:hover {
  opacity: 0.5;
}
.none {
  display: none;
}
/* works関係*/
.thumnail-right-box{
  width: 100%;
  list-style: none;
    display: flex;
  flex-wrap:wrap;
  max-width: 1240px;
  position: relative;
  margin: 0 auto;
}
.thumnail-right-box li{
  width: 47%;
  display: flex;
  flex-wrap:wrap;
  padding-bottom: 20px;
  position: relative;
  z-index: 100;
}
.works{
  width:100%;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.works:hover {
  transform: translateY(-8px) scale(1.03); /* 上に浮かせる */
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.2); /* 影を濃く大きく */
}
.works ul li{
  height:340px;
}
.worktitle h3{
  margin:4px 0 0 20px;
  font-size: 1.8rem;
  color:#333333;
  font-family: "Arial",'Noto Sans JP', sans-serif;
  font-weight: 600;
}
a:hover{
  opacity: 1;
}

.workright{
  padding:0 0 0 70px;
}
.adress{
  display: flex;
}
#works p{
  font-size: 20px;
}
#works h2{
  font-size: 120px;
  font-family: "Oswald", sans-serif;
}
@media(min-width: 1040px) {
  .section-works{
    margin:0 auto;
    position: relative;
  }
    #works{
  padding-bottom: 60px;
  padding-top:100px;
}
     .worktitle{
  display:flex;
  margin-bottom: 20px;
  padding-top: 10px;
}
}
@media(max-width: 1040px) {
  .section-works{
   padding-top: 80px;
    margin:0 auto;
    max-width: 84%;
  }
  #works{
    padding-bottom: 60px;
  }
    .thumnail-right-box li{
  width: 47%;
}
    .workright{
  padding:0px 0px 50px 6%;
}
   .worktitle{
    text-align: left;
  }
    .worktitle h3{
  margin:0 0 30px 0;
  font-size: 1.4rem;
            letter-spacing: -0.05rem;
}
}


@media(max-width: 480px) {
  .section-works{
    padding-top: 0px;
        text-align:center;
  }
  .workssp{
    margin: 0 auto;
    padding-bottom: 25px;
  }
    .adress{
    text-align: left;
  }
  .icon{
    height: 25px;
  }
  .works{
    position: relative;
    z-index: 100;
  }
      .thumnail-right-box li{
  width: 100%;
          position: relative;
        z-index: 100;
}
      .workright{
  padding:0px;
}
  #works{
    padding: 0px;
    padding-top: 60px;
  }
.thumnail-right-box li{
  padding-bottom: 0px;
}
}

/*----footer---------*/

.footer__site-map li {
  margin: 0 50px;
  font-family: "Arial","sans-serif";
  font-size: 1.8rem;
  display: block;
  text-align: left;
  padding-bottom:10px;
}

.footer__site-map li a {
  text-decoration: none;
  color: #FFF;
}
.footer__site-map li a:visited {
  color: #ffffff;
}
.footer__sns_links li {
  display: inline-block;
  width: 20px;
  margin: 0 10px;
}
.footer__sns_links li img {
  width: 100%;
}
.footer small {
  color: #FFF;
}
.ftlogo{
  margin-bottom: 20px;
  height: 47px;
  width: auto;
}
 .worktitle p{
    font-size: 3.2rem;
    margin:6px 30px 20px 15px;
    font-weight: 400;
  }
 .adress p{
    font-size: 3.2rem;
    margin:6px 30px 20px 15px;
    font-weight: 400;
  }
  .snsicon{
    height:40px;
  }

@media(max-width: 1040px) {
    .contacttitle{
    font-family: 'Oswald', sans-serif;
    font-size: 12rem;
    font-weight: bold;
    color: #FFFFFF;
    line-height:12rem;
    padding-bottom: 60px;
    margin:0 50px;
}
}


@media(min-width: 1040px) {
  .footer {
    margin:0;
    padding-top: 0
  }
  #contact {
    max-width: 1240px;
    margin: 0 auto;
    position:relative;
  }
  .footer__site-map {
    margin-bottom:-30px;
  }
  .footer__site-map h2 {
    display: inline-block;
    color: #FFF;
    font-family: 'Oswald', sans-serif;
    font-size: 12rem;
  }
  .footer__sns_links {
    top:30px;
  }
  .footer small {
    clear: both;
    display: block;
    text-align: center;
    font-family:"Arial";
    font-size: 1.4rem;
    margin-top:170px;
  }
  .ftlogo{
    height: 60px;
    width: auto;
  }
  .footer__sns_links {
  padding-bottom: 70px;
}
}
@media(max-width:480px){
   .footersmall{
    font-size: 1.4rem;
  }
.footer {
  min-height: 145px;
  background-color: #3d322c;
  margin: 0 auto;
  padding:60px 0 0;
  font-weight: 600;
}
  .footer__site-map {
  margin:0px 30px 0px;
}
  .contacttitle{
    font-size: 5.4rem;
    color: #FFFFFF;
    line-height: 4.6rem;
    padding-bottom: 40px;
    margin:0px;
}
  .footer_under{
      max-width: 315px;
      margin: 0 auto;
  }
  .snsicon{
    height: 18px;
  }
  .worktitle p{
    font-size: 1.8rem;
    margin:0 20px 5px 10px;
    line-height: 1.8rem;
  }
    .adress p{
    font-size: 1.8rem;
    margin:0 20px 5px 10px;
    line-height: 1.8rem;
  }
  .footer__site-map li{
    margin:0;
    margin: 0 auto;
    max-width: 84%;
  }
  .footer_pc li{
    font-size: 1.4rem;
  }
  .list{
    margin:0 20px 0 0;
  }
  .list4{
    margin:0 0 0 20px;
  }
}
@media(min-width:480px){
  .footer {
  min-height: 145px;
  background-color: #3d322c;
  padding-top:150px;
  font-weight: 600;
}
    .footer__site-map {
  margin-bottom: 30px;
}
  .footer_pc{
  list-style: none;
  padding:25px 0;
}
  .footer_pc li{
    margin-left: 50px;
  margin-right: 0px;
  }
    .footer__site-map ul {
    display: inline-block;
    font-family:"Arial";
  }
}
.footer_pc li{
  display: inline-block;
}
.footer_pc li a{
    font-weight: 400;
    color: #FFFFFF;
    font-family:"Arial";
}
.footer_under {
  background-color:#3d322c;
  position: relative;
  padding:0px 20px;
  color: #FFFFFF;
}


@media (min-width:800px) {
  .footer_under {
    margin: 110px auto 0;
    min-height:90px;
    padding: 0px 100px 15px 200px;
    box-sizing: border-box;
      text-align: right;
  }
    .footer_img {
  position: absolute;
  top: 30px;
  left:100px;
  font-family:"Arial";
      font-weight: 400;
}
}
@media(max-width:800px){
    .footer_pc{
    padding: 50px 0 20px;
    background-color: #3d322c;
  }
    .footer_img{
    font-family:"Arial";
    font-weight: 300;
    padding-bottom: 60px;
    font-size: 1.2rem;
  }
}


/* ハンバーガーボタンのデザイン */
.drawer__button {
  width: 3rem;
  height: 3rem;
  background-color: transparent;
  border: none;
  cursor: pointer;
  z-index: 999; /* メニューを開いている時もクリックできるよう設定 */
}
/* ハンバーガーボタン内の線 */
.drawer__button > span {
  display: block;
  position: absolute;
  top: 50%;
  left: 92%;
  width: 2.5rem;
  height: 2px;
  background-color:#ff8929;
  transform: translateX(-50%);
}
.drawer__button > span:first-child {
  transform: translate(-50%, calc(-50% - 1.0rem));
  transition: transform 0.3s ease;
}
.drawer__button > span:nth-child(2) {
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
}
.drawer__button > span:last-child {
  transform: translate(-50%, calc(-50% + 1rem));
  transition: transform 0.3s ease;
}
/* 展開時のデザイン */
.drawer__button.active{
  position:absolute;
  top:15px;
  left:85%;
}
.drawer__button.active > span:first-child {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.drawer__button.active > span:nth-child(2) {
  opacity: 0;
}
.drawer__button.active > span:last-child {
  transform: translate(-50%, -50%) rotate(45deg);
}
/* メニューのデザイン */
.drawer__nav {
  position: fixed; /* 追従ヘッダーなどでも表示できるよう設定しておく */
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  transition: opacity 0.3s ease;
  opacity: 0;
  visibility: hidden;
    z-index:500;
}
.drawer__nav.active {
  opacity: 1;
  visibility: visible;
}
.drawer__nav__inner {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: white;
  margin: 0 0 0 auto;
  overflow: scroll;
  transform: translateX(100%);
  transition: transform 0.3s ease;
  text-align: left;
  z-index: 1000;
}
.drawer__nav.active .drawer__nav__inner {
  transform: translateX(0);
}
.drawer__nav__menu {
  list-style: none;
  padding-left: 0;
  text-align: center;
}
.drawer__nav__link {
  display: block;
  color: black;
  text-decoration: none;
  font-size: 2.8rem;
}
.drawer__nav__item{
  font-family: "Arial","sans-serif";
  margin-bottom: 5.0rem;
  font-weight: 600;
}

/* ハンバーガーメニュー展開時、背景を固定 */
body.active {
  height: 100%;
  overflow: hidden;
}

/* 見た目の調整 */
section {
  width: 100%;
}


.logo_nav{
  height: 30px;
  width:auto;
  padding: 1.5rem 2.5rem 5rem;
}
.header_pc{
  list-style: none;
  padding:32.5px 0;
}
.header_pc li{
  display: inline-block;
  margin-left: 40px;
  margin-right: 0px;
}
.header_pc li a{
    font-size: 2rem;
    font-weight: 600;
  color: #333333;
    font-family:"Arial";
}
@media(max-width: 480px) {
    .header_img {
  height: 30px;
  width: auto;
  position: absolute;
  top: 15px;
      left: 20px;
}
      .header_pc{
    display:none;
  }
    .headerwrapper{
    position: fixed;
   top: 0;  /* 固定する位置を指定 */
  left: 0;  /* 固定する位置を指定 */
  width: 100%;  /* ヘッダーの幅 */
  height: 60px;  /* ヘッダーの高さ */
      z-index: 9000;
        background-color: #fff7ed;
  }
}

@media(min-width: 480px) {
  .header {
    margin: 0 auto;
    min-height:90px;
    padding: 0px 70px 20px 50px;
    box-sizing: border-box;
    font-size: 2.4rem;
      text-align: right;
      position:fixed;
  top: 0;  /* 固定する位置を指定 */
  left: 0;  /* 固定する位置を指定 */
  width: 100%;  /* ヘッダーの幅 */
  height: 90px;  /* ヘッダーの高さ */
      z-index: 9000;
      background-color:#fff7ed;
  }
        .headerwrapper{
    position:relative;
  }
  .header-back{
  max-width: 1440px;
  width: 100%;
  background-color: #93bb2b;
}
      .drawer__button{
    display: none;
  }
          .header_img {
          height: 50px;
}
  .titlewrap{
    padding-top:90px;
  }
}

@media(min-width:800px) {
  .header {
  position: fixed;
  top: 0;  /* 固定する位置を指定 */
  left: 0;  /* 固定する位置を指定 */
  width: 100%;  /* ヘッダーの幅 */
  height: 90px;  /* ヘッダーの高さ */
      z-index: 9000;
}
        .header_img {
  height: 50px;
  width: auto;
  position: absolute;
  left: 0px;
  top: 20px;
}
      .headerwrapper{
    position:relative;
  }
}
@media(max-width:800px) {
  
        .header_img {
  width: auto;
  position: absolute;
  left: 20px;
  top: 20px;
}
  .header_pc li{
  display: inline-block;
  margin-left: 10px;
  margin-right: 0px;
}
}

@media(max-width:480px) {
        .header_img {
  top: 15px;
}
}

.header-back{
  width: 100%;
}
.header__navigation {
  display: none;
}
.back{
    width: 410px;
    height:470px;
}

@media (max-width:800px) {
  .logo_img {
  height: 30px;
  width: auto;
  position: absolute;
  top: 15px;
  left:20px;
}
}

.fadein {
    opacity: 0;
    transform: translate(0,0);
    transition: all 1.5s;
  &.fadein-left{
      transform: translate(-30px,0);
  }
   &.fadein-right{
      transform: translate(30px,0);
  }
    &.fadein-bottom{
      transform: transla
      te(0,30px);
  }
  &.scrollin{
    opacity: 1 !important;
    transform: translate(0, 0) !important;
  }
}

@media(max-width: 1040px) {
  .fadein {
    opacity: 0;
    transform: translate(0,0);
    transition: all 1.5s;
  &.fadein-left{
      transform: translate(30px,0);
  }
   &.fadein-right{
      transform: translate(-30px,0);
  }
}
}
