@charset "UTF-8";

/*共通部分*/


html{
  font-size: 100%;
  scroll-behavior: smooth;
}

body{
    font-family: "ヒラギノ明朝 ProN W3","Yu Gothic Mesium","遊ゴシック体","ヒラギノ角ゴ Pro W3",sans-serif;
    color: black;
    background-color: #FFF8E3;
}

li{
  list-style: none;
}

a {
    text-decoration:none;
}

a,
a:visited,
a:active {
  color: inherit;
}/*リンク色を買えないように*/

a:hover {

}

.header_wrapper {
  width: 100%;
  background-color: #FFF;
  z-index: 100;
  position: fixed;
  margin: 0 auto;
  top:0;
  box-shadow: 4px 0px 6px;
}

/*ロゴを左に、ナビゲーションメニューを右に置く*/
.page-header{
  display: flex;
  justify-content: center;/*要素右寄せ*/
  width: 100%;
  height: 100px;
  padding: 50px;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}

.rogo {
  padding-right: 100px;
}

.rogo img {
  width: 8vw;
}

.wrapper{
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}


  /*メインナビを横並びにする*/
.main-nav{
  display: flex;
  list-style: none;
}

/*横並びになったメインナビの間隔調整*/
.main-nav li{
  margin-left: 25px;

}

/*リンクにカーソルを合わせた時に色を変更する*/
.main-nav a:hover{
  color: #0bd;
}

/*ハンバーガーメニュー　クリック前*/
.nav_toggle {
    display: none;
    position: relative;
    width: 1.75rem;
    height: 1.5rem;
}
.nav_toggle i {
    display: block;
    width: 100%;
    height: 2px;
    background-color: #333;
    position: absolute;
    transition: transform .5s, opacity .5s;
}
.nav_toggle i:nth-child(1) {
    top: 0;
}
.nav_toggle i:nth-child(2) {
    top: 0;
    bottom: 0;
    margin: auto;
}
.nav_toggle i:nth-child(3) {
    bottom: 0;
}
/*ハンバーガーメニュー　クリック後*/
.nav_toggle.show i:nth-child(1) {
    transform: translateY(10px) rotate(-45deg);
}
.nav_toggle.show i:nth-child(2) {
    opacity: 0;
}
.nav_toggle.show i:nth-child(3) {
    transform: translateY(-12px) rotate(45deg);
}


/*メニューリストCSS　クリック前*/
.nav {
    position: fixed;
    top: 3rem;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s, visibility .5s;

}

/*ボタンCSS　クリック前*/
.nav.show {
    opacity: 0.8;
    visibility: visible;
    background-color: #fff;
    width: auto;
    height: 200px;
    text-align:center;
    }

.nav_menu_li{
    list-style: none;
    color: gray;
    background-color: white;
    border-bottom: solid;
}

.nav_menu_li a{
    display: block;
    text-decoration: none;
    color: gray;
    padding: 5vh 0;
}


#slide h2 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  margin:0;
  padding:30px;
  font-size: 30px;
  line-height: 2.5;
  color: white;
  font-family:"ヒラギノ明朝 ProN W3",serif;
  background-color: rgba(48, 97, 20, 0.6);
}

#slide {
  margin-top: 100px;
  position: relative;
  overflow: hidden;
  height: 700px;
  width: 1200px;
}

#slide ul {
  position: absolute;
  width: 3600px;
}

#slide li {
  float: left;
  width: 1200px;
  list-style-type: none;
}

#slide img {
  width: 1200px;
}

#topics {
  text-align: center;
  margin-top: 10px;
  width: 1200px;
}

.topics_info {
  display: flex;
  flex-direction: row;
  padding: 40px 10%;
  margin: 5px 0;
  border-style: dotted none;
}

.topics_info span  {
  font-size: 100%;
  width: 30%;
  text-align: right;
      }

.topics_info p {
  text-align: center;
  padding-left:2vw;
  }


.container_commitment{
  width: 1200px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-top: 90px;
}

.container_l{
  width:45%;
  line-height: 2;
}

.container_r{
  width:45%;
}

.container_r img{
  width: 100%;
}

.en {
  font-size: 29px;
}

.jp {
  font-size: 16px;
}

.text{
  font-size: 14px;
  line-height: 3;
  padding: 50px 0 70px 0;
}

.btn {
    display: table;
    position: relative;
    padding: 1em 2.5em;
    min-width: 15em;
    border: 2px solid currentColor;
    color: black;
    font-size: 15px;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    transition: 0.5s;
}
.btn::after {
    position: absolute;
    top: 50%;
    right: 1em;
    width: 0.5em;
    height: 0.5em;
    transform: translateY(-50%) rotate(45deg);
    border-right: 2px solid currentColor;
    border-top: 2px solid currentColor;
    content: "";
}
.btn:hover {
    border: 2px solid #FF8300;
    background-color: #FF8300;
    color: #fff;
}

.container_service{
  width: 1200px;
  padding: 90px 0 70px 0;
  text-align: center;
  line-height: 2;
}

.container_service h2 {
  padding-bottom: 50px;
}



/*
.product {
  padding-top: 40px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: nowrap;
}

.product li {
  display: block;
  width: 23%;
}

.product img {
  width: 100%;
}
*/

/*タブ切り替え全体のスタイル*/
.tabs {
  padding-bottom: 40px;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  width: 1200px;
  margin: 0 auto;
}

/*タブのスタイル*/
.tab_item {
  width: calc(100%/3);
  height: 50px;
  border-bottom: 3px solid #FF8300;
  border-right: 1px solid #a9a9a9;
  background-color: #d9d9d9;
  line-height: 50px;
  font-size: 14px;
  color: #565656;
  display: block;
  float: left;
  font-weight: bold;
  transition: all 0.4s ease;
}
.tab_item:hover {
  opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 40px 40px 0;
  clear: both;
  overflow: hidden;
}


/*選択されているタブのコンテンツのみを表示*/
#repair:checked ~ #repair_content,
#maintenance:checked ~ #maintenance_content,
#sell:checked ~ #sell_content{
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #FF8300;
  color: #fff;
}

.tab_content_description {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.tab_left {
  width: 40%;
}

.tab_left img {
  width: 100%;
}

.tab_right {
  width: 50%;
  line-height: 2;
  text-align: left;
}

.container_about{
  width: 1200px;
  margin-top: 20px;
  padding: 50px 0 ;
  text-align: center;
  line-height: 2;
  background: #FF8300;
  color:white;
}

.container_about a{
  margin: 0 auto;
}

.contents_about {
  width: 1200px;
  display: flex;
  justify-content: center;
  padding-bottom: 20px;
  align-items: center;
}

.contents_about_left {
  width: 50%;
  margin-right: 30px;
  text-align: right;
}

.contents_about_left img {
  width: 50%;
}

.contents_about_right {
  width: 50%;
  margin: 10px;
  text-align: left;
}

.margin_left {
  margin-left: 10px;
}

.container_about h2{
  margin-bottom: 50px;
}

/*
.recruit {
  margin-top: 40px;
}
*/


/*ロゴアニメーション*/
.start {
	background: #FFF;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 9000;
}
.start p {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: none;
	z-index: 9999;
	width: 30vw;
}

.start img {
  width: 100%;
}



/*フッター*/
.inner {
  display: flex;
  width: 1200px;
  padding: 0 100px;
  margin: 50px 0;
}

.contents_footer_left {
  width: 30%;
}

.contents_footer_left img {
  width: 10vw;
}

.contents_footer_right {
  width: 70%;
}

.container_footer_nav {
  font-size: 80%;
  display: flex;
  justify-content: space-between;
}

.footer_nav {
  border-left: solid 1px;
  padding-left: 20px;
}
/*topへ戻るボタン*/
#page_top{
  width: 90px;
  height: 90px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #ef3f98;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -40px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'PAGE TOP';
  font-size: 13px;
  color: #fff;
  position: absolute;
  top: 45px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}


/**モバイル版**/
@media (max-width:600px){

      /*ヘッダー*/
      .header_wrapper {
        width: 100%;
        background-color: white;
        z-index: 100;
        position: fixed;
        margin: 0 auto;
        top:0;
        box-shadow: 4px 0px 4px;
      }

      .page-header{
        display: flex;
        width: 100%;
        height: 8vh;
        padding: 0 10vw;
        align-items: center;
        margin: 0 auto;
        text-align: center;
      }

      .rogo {
        padding-right: 0;
      }

      .rogo img {
        display: block;
        width: 10vw;
      }

      /*ハンバーガーメニュー　クリック前*/
      .nav_toggle_background {
        opacity: 0.9;
        z-index: 300;
        position: absolute;
        top: 2.5vh;
        left: 5vw;
      }
      .nav_toggle {
          display: block;
          position: relative;
          width: 1.75rem;
          height: 1.5rem;


      }
      .nav_toggle i {
          display: block;
          width: 100%;
          height: 3px;
          background-color: #333;
          position: absolute;
          transition: transform .5s, opacity .5s;

      }
      .nav_toggle i:nth-child(1) {
          top: 0;
      }
      .nav_toggle i:nth-child(2) {
          top: 0;
          bottom: 0;
          margin: auto;
      }
      .nav_toggle i:nth-child(3) {
          bottom: 0;
      }
      /*ハンバーガーメニュー　クリック後*/
      .nav_toggle.show i:nth-child(1) {
          transform: translateY(10px) rotate(-45deg);
      }
      .nav_toggle.show i:nth-child(2) {
          opacity: 0;
      }
      .nav_toggle.show i:nth-child(3) {
          transform: translateY(-12px) rotate(45deg);
      }


      /*メニューリストCSS　クリック前*/
      .nav {
          position: fixed;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          padding: 1rem;
          opacity: 0;
          visibility: hidden;
          transition: opacity .5s, visibility .5s;

      }

      /*ボタンCSS　クリック前*/
      .nav.show {
          opacity: 0.9;
          visibility: visible;
          background-color: #000;
          width: 100%;
          height: 100%;
          }

      .nav_menu_li{
          list-style: none;
      }

  /*pc版メニュー消す*/
      .main-nav{
        display: none;
      }

      /*メインビジュアル*/

      #slide h2 {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        margin:0;
        padding:2vh 2vw;
        font-size: 1rem;
        line-height: 2.5;
        color: white;
        font-family:"ヒラギノ明朝 ProN W3",serif;
        background-color: rgba(48, 97, 20, 0.6);
      }

      #slide img {
        width: 100vw;
        height: 50vw;
        object-fit: contain;

      }

      #slide {
        margin-top: 8vh;
        width: 100vw;
        height: 50vw;
        position: relative;
        overflow: hidden;
      }

      #slide ul {
        position: absolute;
      }

      #slide li {
        float: left;
        list-style-type: none;

      }
      /*トピックス*/
      #topics {
        text-align: center;
        width: 100%;
      }
      .topics_info {
        text-align: left;
        display: row;
        flex-direction: column;
        padding: 2vh 5vw;
        margin: 1vh 0;
        border-style: dotted none;
      }

      .topics_info span  {
        font-size: 70%;
        width: 30%;
            }

      .topics_info p {
        text-align: center;
      }


      /*エスジーオートのこだわり*/
      .container_commitment{
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding: 10vh 2vw;
      }

      .container_l{
        width:100%;
        line-height: 2;
      }

      .container_r{
        width:100%;
        text-align: right;
        padding-right: 0:
      }

      .container_r img{
        width: 75%;

      }

      .en {
        font-size: 2rem;
      }

      .jp {
        font-size: 1rem;
      }

      .text{
        font-size: 0.9rem;
        line-height: 3;
        padding:5vh 0 2vh 0;
      }

      /*サービス*/
      .container_service{
        width: 100%;
        padding: 10vh 0 9vh 0;
        text-align: center;
        line-height: 2;
      }

      .container_service h2 {
        padding-bottom: 50px;
      }

      .tabs {
        padding-bottom: 40px;
        background-color: #fff;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
        width: 100%;
        margin: 0 auto;
      }
      /*タブのスタイル*/
      .tab_item {
        width: calc(100%/3);
        height: 50px;
        border-bottom: 3px solid #FF8300;
        border-right: 1px solid #a9a9a9;
        background-color: #d9d9d9;
        line-height: 50px;
        font-size: 0.7rem;
        color: #565656;
        display: block;
        float: left;
        font-weight: bold;
        transition: all 0.4s ease;
      }

      .tab_content_description {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
      }
      .tab_left {
        width: 100%;
      }

      .tab_left img {
        width: 100%;
      }

      .tab_right {
        width: 100%;
        line-height: 2;
        text-align: left;
      }
      .tab_right h3 {
        font-size: 1rem;
        padding-bottom: 1.5vh;
      }

      .tab_right p {
        font-size: 0.8rem;
      }

      /*about*/
      .container_about{
        width: 100%;
        margin-top: 2vh;
        padding: 50px 0 ;
        text-align: center;
        line-height: 2;
        background: #FF8300;
        color:white;
      }

      .container_about a{
        margin: 0 auto;
      }

      .contents_about {
        width: 100%;
        display: flex;
        justify-content: center;
        padding-bottom: 20px;
      }

      .contents_about_left {
        width: 50%;
        margin-right: 30px;
        text-align: right;
      }

      .contents_about_right {
        width: 50%;
        margin: 10px;
        text-align: left;
      }

      .margin_left {
        margin-left: 10px;
      }

      .container_about h2{
        margin-bottom: 50px;
      }
      .map iframe {
        width: 90%;
      }

      .start p {
      	width: 50vw;
      }

      /*フッター*/
      .inner {
        text-align: center;
        display: flex;
        flex-direction: column-reverse;
        width: 100%;
        padding: 0 2vw;
        margin: 2vh auto;
      }

      .contents_footer_left {
        width: 100%;
      }
      .contents_footer_left img {
        width: 30vw;
      }

      .contents_footer_right {
        width: 100%;
        display: block;
        text-align: left;
      }

      .container_footer_nav {
        display: flex;
        justify-content: space-between;
        flex-direction: column;
        padding-top: 1vh;
        margin: 0 auto;
      }

      .footer_nav {
        border-left: solid 1px;
        padding-left: 20px;

      }

      .footer_outline {
        border-style: none;
        padding: 3vh 0;
        margin: 0 auto;
      }

      }/*@media*/
