@charset 'utf-8';
/*	Cascading Style Sheets: style.css 5.2	*/

/*全ページ共通ここから*/
body{margin: 0;color: #161616;font-size: 14px;font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;}
img{display: block;width: 100%;}
h2{letter-spacing: .2em;font-weight: 500;margin-bottom: 5px;}
a{display: block;text-decoration: none; color: black;}
ol, ul {list-style: none;}
.back_gray{background:#EDEDED}
.text_gray{color: rgba(81, 78, 95, 0.23);}

.yokoku_wrap{z-index: 100;display: flex;flex-direction: row;width: 100vw;right: 0;left: 0;margin: 0 auto;align-items: center;margin-top: 15px;justify-content: center;background: #6B7858;margin-top: 0px;padding: 10px 0;height: 55px;}
.yokoku_logo{width: 160px;}
.yokoku_chui{color: white;display: flex;flex-direction: row;align-items: center;}
.yokoku_text{font-size: 14px;letter-spacing: .2em;line-height: 16px;color: white;}
.yokoku_tytle{background: white;color: black;padding: 5px 15px;margin: 0 1vw 0 3vw;height: 27px;}


/*ヘッダー*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300&display=swap');
* {margin: 0;padding: 0;box-sizing: border-box;}
header {position: fixed;top: 0;left: 0;width: 100%;display: flex;justify-content: space-between;align-items: center;z-index: 10;padding: 5px 7vw;transition: 0.5s;margin-top: 0px;border-bottom: 1px solid #eee;}
.logo {color: #fff;text-decoration: none;font-size: 23px;letter-spacing: .2em;transition: 0.5s;}
ul {display: flex;justify-content: center;align-items: center;}
li {list-style: none;}
li:hover { opacity:0.5; }
header a {display: inline-block;margin-left: 12px;font-size: 14px;text-decoration: none;letter-spacing: .2em;transition: 0.5s;font-size: 15px;letter-spacing: 3px;margin: 0 25px;  }
header a:hover{opacity: 0.5;}
header a span{text-align: center;font-weight: bold;letter-spacing: 8px;line-height: 23px;margin-top: -5px;}
header a span small{font-size: 11px;letter-spacing: .2em;font-weight: initial;}
.section-a {background: #000;}
.section-b {background: #fff;}
header a.logo{width: 250px;}
header.scroll-nav {padding: 5px 7vw;box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);background: rgba(255,255,255,0.9);margin-top: 0px;}
.logo_black{display: none;}
.logo_white_sp{display: none;}
.logo_black_sp{display: none;}
header.scroll-nav .logo,header.scroll-nav ul li a {color: #3d3d3d;}
header.scroll-nav ul li a .circle {
  background-color: #f03f3f;
  color: #fff; border:#3d3d3d;
}
/* 「scroll-navクラス」がヘッダーについたときに、ロゴとナビゲーションの文字を黒にする */
header.scroll-nav .logo_white{display: none;}
header.scroll-nav .logo_black{display: block;}

.far{font-size: 20px;}
.circle {width: 50px;height: 50px;border-radius: 50%;border: 1px solid;position: relative; background-color: #f03f3f; color: #fff; border: #3d3d3d;}
.circle i{position: absolute;top: 15px;left: 14px;}
.kanbai {padding: 10px 18px;background: red;color: white;font-weight: bold;}

/*ハンバーガー*/
.menu-btn{display: none;block;}
.menu{display: none;}
.menu-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 5px;
  display: flex;
  align-items: center;
}




/*中ページトップ共通*/
.IN_MAIN{position: relative;}
.IN_MAIN h1{position: absolute; color: white;top: 11vw;font-size: 33px;letter-spacing: .2em;right: 0;left: 0;margin: 0 auto;text-align: center;font-weight: 600;}

/*イントロ部分*/
.INTRO{width: 1030px;margin: 0 auto;margin-top: 150px;}
.INTRO h1{text-align: left;font-size: 21px;font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;font-size: 25px;letter-spacing: .2em;font-weight: initial; text-align: center; }
.INTRO_TEXT{text-align: left;line-height: 2em;letter-spacing: .2em;margin: 30px 0 43px 0;font-size: 16px; text-align: center; }
.INTRO_ENG{font-size: 18px;letter-spacing: .2em;color: #11437C; text-align: center; margin-bottom:24px; }

/*動線*/
.OTHERS_WRAP{padding: 40px 0;background: rgba(162,141,92,0.32);}
.OTHERS{width: 1030px;margin: 0 auto;display: flex;flex-wrap: wrap;justify-content: space-between;}
.OTHER_PHOTO{width: 200px;}
.OTHER_TEXTS{width: 120px;text-align: center;}
.OTHER{width: 320px;margin:15px 0;background: white;box-shadow: 2px 2px 4px rgba(128, 128, 128, 0.13);}
.OTHER_TEXTS_TYTLE_J{font-size: 11px;}
.OTHER_TEXTS_TYTLE_E {font-size: 17px;letter-spacing: .2em;color: #A28D5C;}
.OTHER a{display: flex;flex-direction: row;align-items: center;}
.OTHER a:hover{opacity: 0.7;}
.TYTLE{color: #A28D5C;letter-spacing: .2em;font-size: 16px;}
.LINKS_TYTLES{margin: 0 auto;margin-bottom: 50px;margin-bottom: 15px;width: 1030px;}
.LINKS_TYTLES small {font-size: 20px;display: inline-block;width: 500px;letter-spacing: .2em;text-align: left;}

/*フッターー*/
#willproduce {background: #f3f3f1;width: 100%;padding: 30px 0;text-align: center;}
#willproduce ul {width: 960px;margin: 0 auto;display: flex;flex-wrap: wrap;gap: 20px 20px;justify-content: space-between;align-items: flex-start;}
#willproduce ul li {width: 30%;}
#willproduce p {letter-spacing: 2px;}
#footer {text-align: center;font-size: 1.3rem;background: #f3f3f1;padding: 40px 0 40px 0;}
#footer span {width: 100%;display: inline-block;font-size: 14px;display: flex;width: 400px;margin: 0 auto;justify-content: center;align-items: center;}
#footer small{font-size: 12px;}
#footer .logo{width: 270px;margin: 0 auto;margin-bottom: 15px;}
.FIX_BUTTON_FIRST{display: none;}

/* 下部固定 */
.FIX{background: rgba(112,112,112,0.9);position: fixed;bottom: 0;width: 100vw;padding: 13px 0;}
.FIX_WRAP{width: 880px;margin: 0 auto;display: flex;align-items: center;justify-content: space-between;}
.TEL_WRAP{display: flex;align-items: center;color: white;}
.TEL_IMG{margin-right: 10px;}
.TEL_NUMBER{font-size: 35px;letter-spacing: .05em;}
.FIX_BUTTONS{display: flex;flex-direction: row;justify-content: space-between;width: 510px;}
.C_LINK{width: 250px;background: white;display: flex;align-items: center;justify-content: center;padding: 12px 0;border-radius: 50px;}
.C_LIN_IMG{width: 30px;}
.C_LIN_TEXT{font-size: 18px;margin-left: 10px;letter-spacing: .2em;}







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

/*全ページ共通ここから*/
#willproduce ul{width: 95vw;padding-left: 0;margin: 0 auto;}
#footer span{width: 100vw;}
.yokoku_wrap {width: 100vw;margin-top: 0px;padding: 2.5vw;margin: 0px;padding-top: 8px;margin-top: auto;height: auto;}
.yokoku_text{font-size: 11px;line-height: 16px;letter-spacing: 0;margin-top: 0px;color: white;}
.yokoku_chui{display: block;}
.yokoku_tytle{font-size: 13px; margin-left: 0;height: initial;padding: 0px 15px;display: flex;align-items: center;}
.yokoku_sp{display: flex;flex-direction: row;margin-bottom: 5px;}
.yokoku_logo img{width: 100%;}
.yokoku_logo {width: 100px;margin-left: 10px;}


/*ヘッダー*/
header{width: 100vw;padding: 4px 15px;border-bottom: 1px solid #000;padding: 4px 15px;margin-top: 0px;}
header.scroll-nav {padding: 8px 15px; border:none; }
header a.logo {width: auto;margin: 0;width: 100vw;}
.circle {border: none;margin-right: 0;width: auto;margin: 0;}
header a span{font-size: 17px;letter-spacing: .2em;line-height: 17px;}
.logo_white{display: none;}
header .logo .logo_black{display: none;}
.logo_white_sp{display: block;}
.logo_black_sp{display: none;}
header.scroll-nav .logo_white_sp{display: none; width: 45vw; }
header.scroll-nav .logo_black_sp{display: block; }
.circle i {position: absolute;top: 8px;left: 14px;font-size: 37px;}
/* ul{display: none;} */
.kanbai {padding: 10px 10px;font-size: 13px;}

/*中ページトップ共通*/
.IN_MAIN h1{font-size: 27px;top: 37vw;}

/*イントロ部分*/
.INTRO{width: 90vw;margin: 0 auto;margin-top: 100px;}
.INTRO h2 {text-align: left;margin-top: 40px;margin-top: 8px;}
.INTRO_TEXT{text-align: justify;}

/*動線*/
.OTHERS{width: 90vw;}
.OTHER{width: 43vw;}
.OTHER a{flex-direction: column;}
.OTHER_PHOTO{width: 43vw;}
.LINKS_TYTLES{margin-bottom: 20px;width: 90vw;}
.LINKS_TYTLES small{width: auto;}
.TYTLES {width: auto;}
.OTHERS_WRAP{padding: 40px 5vw;}
.OTHER_TEXTS{width: auto;padding: 5px 0;}
.OTHER_TEXTS_TYTLE_E{margin-bottom: -2px;}


/* フッター */
.FIX{padding: 0;}
.TEL_WRAP{display: none;}
.FIX_BUTTONS{width: 100vw;}
.FIX_BUTTONS a{width: calc(100% / 3);border-right: 1px solid white;}
.FIX_BUTTONS a.FIX_BUTTON_LAST{border-right: none;}
.FIX_BUTTON_FIRST{display: block;}
.C_LINK{border-radius: 0px;background:none;flex-direction: column;justify-content: center;width: auto;}
.C_LIN_TEXT{color: white;margin-left:0;font-size: 16px;}
.C_LIN_IMG {width: 45px;}

/*ハンバーガー*/
.menu-btn{display: block;}
.menu{display: block;}

/*----------------------------
* メニュー開閉ボタン
*----------------------------*/
.menu-btn{
    top: 20px;
    right: 20px;
    z-index: 2;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #333;
    color: #fff;
    background: none;
    border: none;
  }

  /*----------------------------
  * メニュー本体
  *----------------------------*/
  .menu{
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1;
    width: 100vw;
    height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #11437C;  }
  .menu__item{
    width: 100%;
    height: auto;
    padding: .5em 1em;
    text-align: center;
    box-sizing: border-box;
  }

  /* 3本線の基準となる真ん中の線 */
.menu-icon {
  display: inline-block;
  width: 30px;
  height: 2px;
  background-color: #333;
  position: relative;
}

/* 上下の線（長さを中央と同じに） */
.menu-icon::before,
.menu-icon::after {
  content: "";
  position: absolute;
  width: 30px;            /* ←ここが中央と違うと長さがずれる！ */
  height: 2px;
  background-color: #333;
  left: 0;
}

.menu-icon::before {
  top: -8px;
}

.menu-icon::after {
  top: 8px;
}


  /*----------------------------
  * アニメーション部分
  *----------------------------*/

  /* アニメーション前のメニューの状態 */
  .menu{
    transform: translateX(100vw);
    transition: all .3s linear;
  }
  /* アニメーション後のメニューの状態 */
  .menu.is-active{
    transform: translateX(0);
  }

  .menu-btn i{font-size: 32px;color: #3d3d3d;}
  header.scroll-nav .menu-btn i {color: #3d3d3d;}/* 「scroll-navクラス」がヘッダーについたときに、ロゴとナビゲーションの文字を黒にする */

  header .menu a{font-size: 18px;margin: 8px 15px; }
  .mail{width: 30px; margin-top: 3px;}

}


#willproduce .abur_tsuchihara{display: block;}
#willproduce .ogino8{display: none;}

