@charset "utf-8";

/* ----------------------------------------- */
/* CSS Version 20161208
/* ----------------------------------------- */

/* ----------------------------------------- */
/* 共通設定
/* ----------------------------------------- */

html {
  height: 100%;
  font-size: 62.5%;
}
body {
  height: 100%;
  background-color: #FFF;
  color: #333;
  font-family: meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", Arial, Verdana, "Hiragino Kaku Gothic Pro", Osaka, sans-serif;
  font-size: 1.55rem;
  letter-spacing: 0.05rem;
  line-height: 155%;
  background-image: url(/image/page_back.gif);
}
.clear:after {
  height: 0;
  display: block;
  clear: both;
  content: "";
}

img {
  vertical-align: bottom;
}


/* 印刷設定 */
@media print {
  body {
    width: 1024px;
    /* Print Background */
    -webkit-print-color-adjust: exact; /* chrome */
  }
}

/* ----------------------------------------- */
/* ヘッダ */
/* ----------------------------------------- */

header{
  min-width: 1000px;
  background-color: #FFF;
}
.header_txt{
  width: 100%;
}
.header_txt h1{
  font-size: 1.3rem;
  font-weight: normal;
  margin: 0 auto;
  padding-top: 10px;
}
/* Smart Phone View */
@media only screen and (max-width: 649px) {
  header{
    min-width: 100%;
  }
  .header_txt h1{
    width: 90%;
    margin: 0 5% 0 5%;
    padding-bottom: 4px;
    background-position: left center;
  }

  #header {
    width: 100%;
  }

  #header p {
    padding-top: 8px;
    width: 77%;
    margin: 0 18% 0 5%;
  }

  #header h1 {
    padding-top: 10px;
    padding-left: 10px;
    font-weight: normal;
  }

  #header .info {
    width: 100%;
    margin-top: 5px;
    margin-bottom: 5px;
    text-align: center;
  }


}

/* PC View */
@media print, screen and (min-width:650px) {
  .header_txt{
    min-width: 1000px;
  }
  .header_txt h1{
    width: 950px;
    margin-left:auto;
    margin-right: auto;
    height: 40px;
    text-align: center;
  }
  
  #header {
    width: 1000px;
    padding-left: 25px;
    padding-right: 25px;
    margin: 0 auto;
  }

  #header p {
    padding-top: 8px;
    padding-left: 5px;
  }

  #header h1 {
    overflow: hidden;
    float: left;
    width: 730px;
    font-weight: normal;
  }

  #header .info {
    width: 950px;
    margin-top: 5px;
    margin-bottom: 10px;
    text-align: center;
  }

}

/* ----------------------------------------- */
/* スマホ用MENU 展開ボタン */
/* ----------------------------------------- */
/* Smart Phone View */
@media only screen and (max-width: 649px) {
  #gnavibtn {
    display: block;
    position: absolute;
    top: 4px;
    right: 0px;
    padding: 2px 4px 2px 4px;
    border: solid 2px #FFF;
    border-right: none;
    border-radius: 5px 0 0 5px;
    background-color: #F9CFCF;
    cursor: pointer;
    font-size: 1.4rem;
    box-shadow:0px 0px 3px 0 #333;
  }
  .sidr-open #gnavibtn .gnavibtn_close{
    display: none;
  }
  #gnavibtn .gnavibtn_open{
    display: none;
  }
  .sidr-open #gnavibtn .gnavibtn_open{
    display: inline;
  }

  #gnavibtn:hover {
    background-color: #ddd;
  }


  #gnavibtn .gudicon-exit2,
  #gnavibtn .gudicon-enter{
    font-size: 2.2rem;
  }
  #gnavibtn span {
    font-size: 0.8rem;
    display: block;
  }
}
/* PC View */
@media print, screen and (min-width:650px) {
  #gnavibtn {
    display: none;
  }
}

/* ----------------------------------------- */
/* グローバルナビ */
/* ----------------------------------------- */

/* Smart Phone View */
@media only screen and (max-width: 649px) {
  /* ナビゲーションメニュー（アイコン） */

  header nav{
    background-color: #0D360C;
    overflow: hidden;
  }
  .globalnavi{
    padding-top: 6px;
    padding-bottom: 6px;
    overflow: hidden;
  }
  .globalnavi .gnavi{
    text-align: center;
  }

  .globalnavi ul {
    list-style: none;
  }
  .globalnavi {
    width: 96%;
    margin: 0 auto;
  }
  .globalnavi li {
    font-size: 1.4rem;
    line-height: 0.9em;
  }

  .globalnavi li a {
    width: 33%;
    float: left;
    display: block;
    padding: 8px 4px;
    color: #0D360C;
    font-size: 1.1rem;
    text-decoration: none;
    background-color: #FFF;
    border-top: solid 1px #FFF;
    border-right: solid 1px #aaa;
    border-bottom: solid 1px #aaa;
  }
  .gnavi00 .globalnavi .gnavi00 a,
  .gnavi01 .globalnavi .gnavi01 a,
  .gnavi02 .globalnavi .gnavi02 a,
  .gnavi03 .globalnavi .gnavi03 a,
  .gnavi04 .globalnavi .gnavi04 a,
  .gnavi05 .globalnavi .gnavi05 a,
  .gnavi06 .globalnavi .gnavi06 a,
  .gnavi07 .globalnavi .gnavi07 a,
  .gnavi08 .globalnavi .gnavi08 a,
  .gnavi09 .globalnavi .gnavi09 a,
  .gnavi10 .globalnavi .gnavi10 a,
  .gnavi11 .globalnavi .gnavi11 a,
  .gnavi12 .globalnavi .gnavi12 a{
    font-weight: bold;
    color: #F15A24;
  }
  .globalnavi .gnavi a:hover{
    font-weight: bold;
    color: #F15A24;
  }

}


/* PC View */
@media print, screen and (min-width:650px) {
  #gnavibtn {
    display: none;
  } /* スマホ用MENU */

  header nav {
    width: 100%;
    min-width: 1000px;
    height: 25px;
    background-color: #FFF;
    
  }

  .globalnavi {
    max-width: 950px;
    overflow: hidden;
    margin: 0 auto;
  }

  .globalnavi ul {
    list-style-type: none;
    padding: 0;
    display: flex;
    text-align: center;
    justify-content: center;
  }
  .globalnavi li {
    margin-left: 12px;
    margin-right: 12px;
  }

  .globalnavi .gnavi{
    display: block;
    overflow: hidden;
    height: 25px;

    text-decoration: none;
  }
  .globalnavi .gnavi a{
    display: block;
    overflow: hidden;
    width: 100%;
    height: 100%;
  }
  .globalnavi .gnavi img {
    display: block;
    overflow: hidden;
  }

  /* グローバルナビ メニューロールオーバー */
  .globalnavi .gnavi:hover img {
    margin-top: -25px;
  }
  
  .gnavi00 .globalnavi .gnavi00 img,
  .gnavi01 .globalnavi .gnavi01 img,
  .gnavi02 .globalnavi .gnavi02 img,
  .gnavi03 .globalnavi .gnavi03 img,
  .gnavi04 .globalnavi .gnavi04 img,
  .gnavi05 .globalnavi .gnavi05 img,
  .gnavi06 .globalnavi .gnavi06 img,
  .gnavi07 .globalnavi .gnavi07 img,
  .gnavi08 .globalnavi .gnavi08 img,
  .gnavi09 .globalnavi .gnavi09 img,
  .gnavi10 .globalnavi .gnavi10 img,
  .gnavi11 .globalnavi .gnavi11 img,
  .gnavi12 .globalnavi .gnavi12 img {
    margin-top: -25px;
  }
}

/* ----------------------------------------- */
/* パンくずリスト */
/* ----------------------------------------- */
.topics-path {
  overflow: hidden;
  clear: both;
  width: 100%;
  max-width: 950px;
  margin-bottom: 10px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
}
.topics-path_non {
  overflow: hidden;
  margin-bottom: 15px;
}

.topics-path ul {
  overflow: hidden;
  clear: both;
  width: 100%;
  margin: 15px 0 10px;
  padding-top: 3px;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}
.topics-path li:before {
  font-family: 'gud_basic';
  content: "\e874";
  padding-right: 3px;
}
.topics-path li:first-child:before {
  font-family: 'gud_basic';
  content: "\e801";
  padding-right: 3px;
}
.topics-path li {
  list-style-type: none;
  float: left;
  min-height: 20px;
  padding-right: 8px;
  color: #454545;
  line-height: 110%;
}

.topics-path li a {
  padding-right: 0;
  padding-left: 0;
  color: #454545;
  text-decoration: none;
}

.topics-path li a:last-child {
  padding-right: 13px;
  padding-left: 0;
  color: #454545;
  text-decoration: none;
}

.topics-path li a:hover {
  color: #f63;
}
/* Smart Phone View */
@media only screen and (max-width: 649px) {
  .topics-path {
    width: 90%;
    margin: 0 auto;
  }
}

/* ----------------------------------------- */
/* メイン */
/* ----------------------------------------- */

/* Smart Phone View */
@media only screen and (max-width: 649px) {

  .main_wrapper{
    width: 100%;
    background-color: #FFF;
  }

  #main {
    width: 100%;
  }
  .main_wrapper{
    padding-bottom: 30px;
  }

  #main-content,
  #main-column1w,
  #main-column1s{
    width: 100%;
    margin: 0 auto;
    float: none;
  }

  .mainImg {
    overflow: hidden;
  }

}

/* PC View */
@media print, screen and (min-width:650px) {
  /* ----------------------------------------- */
  /* メイン-PC
  /* ----------------------------------------- */

  .main_wrapper{
    width: 1000px;
    margin: 0 auto;
    background-color: #FFF;
    padding-top: 30px;
    padding-bottom: 20px;
  }

  #main {
    width: 950px;
    margin: 0 auto;
  }

  .mainImg {
  }

  #main-content {
    width: 690px;
    float: right;
    overflow: hidden;
  }
  #main-column1w {
    width: 950px;
    margin-left: auto;
    margin-right: auto;
    float: none;
    overflow: hidden;
  }
  #main-column1s {
    width: 820px;
    margin-left: auto;
    margin-right: auto;
    float: none;
    overflow: hidden;
  }
}


/* ----------------------------------------- */
/* サイドバー */
/* ----------------------------------------- */

/* Smart Phone View */
@media only screen and (max-width: 649px) {
  #side {
    width: 100%;
    margin-top: 40px;
  }
}

/* PC View */
@media print, screen and (min-width:650px) {
  #side {
    float: left;
    width: 220px;
    margin-top: 30px;
    margin-right: 20px;
  }
}

/* ----------------------------------------- */
/* サイドナビ */
/* ----------------------------------------- */
/* PC,SP共通*/

#side a {
  color: #000;
}




/* Smart Phone View */
@media only screen and (max-width: 649px) {

  .sidenavi ul {
    list-style: none;
  }
  .sidenavi .sp {
    width: 90%;
    margin: 0 auto;
  }

  .sidenavi li a {
    display: block;
    padding: 5px;
    color: #000;
    font-size: 1.4rem;
    text-decoration: none;
    background-color: #eee;
    border-top: solid 1px #FFF;
    border-bottom: solid 1px #aaa;
  }

  .sidenavi li a:hover {
    background-color: #FFF;
  }
  #side .side_link{
    width: 90%;
    text-align: center;
    margin: 0 auto;
    padding-top: 10px;
    padding-bottom: 10px;
  }
    

}

/* PC View */
@media print, screen and (min-width:650px) {
  #sidenavi {
  }

  #sidenavi ul {
    list-style-type: none;
  }

  .sidenavi li {
    display: block;
    overflow: hidden;
    margin-bottom: 5px;
  }

  #side a {
    text-decoration: none;
  }

  #side .sidenavi li:hover img{
    opacity: 0.6;
  }

  #sidenavi {
    margin-bottom: 12px;
  }

  #side .side_link{
    font-size: 1.2rem;
  }

}

/* ----------------------------------------- */
/* フッタ */
/* ----------------------------------------- */


footer a {
  color: #333;
}
footer a:hover {
  color: #F3A433;
}
.footer_copy{
  width: 100%;
  padding-top: 40px;
  padding-bottom: 8px;
  color: #333;
  font-size: 1.2rem;
  text-align: center;
  background-color: #FFF;
}
.footer_copy a{
  text-decoration: none;
  color: #333;
}


/* Smart Phone View */
@media only screen and (max-width: 649px) {
  footer {
    width: 100%;
    text-align: center;
    border-top: solid 2px #0D360C;
  }
  #footer {
    width: 100%;
    margin: 0 auto;
  }

  #footer h2 {
    padding: 12px 0 10px 0;
  }

  footer img {
    margin: 0 auto;
  }

  /* 会社情報 */
  #footer .corpinfo {
    width: 80%;
    margin: 0 auto;
    padding-top: 6px;
  }

  #footer .sitemap {
    display: none;
  }

  /* アクセス */
  #footer .footer_banner {
    padding-top: 6px;
    padding-bottom: 30px;
  }

  #footer .footer_copy{
    padding-top: 20px;
  }


}

/* PC View */
@media print, screen and (min-width:650px) {
  footer {
    width: 100%;
    min-width: 1000px;
    border-top: solid 2px #0D360C;
  }

  #footer {
    width: 950px;
    margin: 0 auto;
  }

  #footer h2 {
    padding: 12px 0 10px 0;
  }

  /* 会社情報 */
  #footer .corpinfo {
    float: left;
    width: 300px;
    padding-top: 25px;
  }

  /* サイトマップ */
  #footer .sitemap {
    float: left;
    width: 380px;
    padding-top: 50px;
  }


  #footer .sitemap ul {
    list-style: none;
    margin-bottom: 30px;
    width: 170px;
    margin-right: 20px; 
    float: left;
  }
  
 
  #footer .sitemap li {
    font-family: 游明朝体, "Yu Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", HGS明朝B, "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    background-image: url(/image/footer_list.gif);
    background-repeat: no-repeat;
    background-position: left center;

    display: block;

    width: 170px;
    float: left;
    margin-bottom: 4px;
    padding: 0 15px;
    font-size: 1.6rem;
    font-weight: bold;
    text-decoration: none;
  }
  #footer .sitemap li:after {
    height: 0;
    display: block;
    clear: both;
    content: "";
  }

  /* アクセス */
  #footer .footer_banner {
    float: left;
    width: 250px;
    padding-top: 50px;
  }
  .footer_copy{
    min-width: 950px;
  }

}
  /* 以下テスト追加 */
.header_back {
  width: 100%;
  height: 208px; /* 必要に応じて変更 */
  background: url(/image/header_back.png) repeat-x;
  background-size: cover;
  /* 背景位置の初期値 */
  background-position: right;
  /* アニメーションの指定 */
  animation: move-bg 8s linear infinite;
}

@keyframes move-bg {
  0% {
    background-position: left;
  }
  100% {
    background-position: right;
  }
}

