@charset "UTF-8";
/*! ==================================================
※※※※※※※※※※※※※※※※※※※※※※※※※※※
  このCSSファイルはSassから生成されていますので、
  編集しないようご注意ください。
※※※※※※※※※※※※※※※※※※※※※※※※※※※
=================================================== */
/*! ==================================================
　リセットCSS
=================================================== */
div, ul, li, dl, dt, dd, table, tr, th, td, address, p {
  margin: 0;
  padding: 0; }

/*! ==================================================
　共通モジュールやパーツ
=================================================== */
a:hover {
  opacity: 0.8; }

.center {
  text-align: center; }

.font-S {
  font-size: 0.7rem; }

.font-M {
  font-size: 1.0rem; }

.font-L {
  font-size: 1.2rem; }

.alert {
  font-size: 0.9em; }

.object-fit-img {
  object-fit: contain;
  font-family: "object-fit: contain;"; }

.link {
  position: relative; }

.link a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: -999px;
  z-index: 30000; }

/* googlemap レスポンシブ*/
.gmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden; }

.gmap iframe,
.gmap object,
.gmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

table {
  margin-top: 15px;
  width: 100%;
  border: 1px solid #ccc; }
  table td p {
    padding-top: 0 !important; }

.cycle-slideshow a {
  display: block; }

/* JavaScriptが有効な場合、対象を隠す */
html.enable-javascript .cycle-slideshow {
  visibility: hidden; }
html.enable-javascript .slider, html.enable-javascript .slider-spnavi {
  visibility: hidden; }

/* 画像すべてを読み終えたら、対象を表示する */
html.enable-javascript.window-load .cycle-slideshow {
  visibility: visible; }
html.enable-javascript.window-load .slider, html.enable-javascript.window-load .slider-spnavi {
  visibility: visible; }
html.enable-javascript.window-load #slider-imgbox {
  visibility: visible; }

input[type=radio] {
  width: 25px;
  height: 25px;
  vertical-align: middle;
  padding: 25px 0; }

input[name=zipcode] {
  width: 150px;
  margin-bottom: 2px; }

input[type=checkbox] {
  width: 30px;
  height: 30px;
  padding: 0;
  margin: 10px 0;
  vertical-align: middle; }

/*テーブルスクロール*/
.scroll {
  overflow: auto !important;
  /*tableをスクロールさせる*/
  white-space: nowrap;
  /*tableのセル内にある文字の折り返しを禁止*/
  margin-bottom: 30px; }

.scroll::-webkit-scrollbar {
  /*tableにスクロールバーを追加*/
  height: 15px;
  background-color: #0099cc !important;
  width: 100px !important; }

.scroll::-webkit-scrollbar-track {
  /*tableにスクロールバーを追加*/
  background-color: #efefef; }

.scroll::-webkit-scrollbar-thumb {
  /*tableにスクロールバーを追加*/
  background-color: #0099cc !important;
  width: 100px !important; }

.scroll table {
  margin-bottom: 15px; }

.scroll2 {
  overflow: auto;
  /*tableをスクロールさせる*/
  white-space: nowrap;
  /*tableのセル内にある文字の折り返しを禁止*/
  margin-bottom: 15px; }

.scroll2::-webkit-scrollbar {
  /*スクロールバーを追加しない*/
  height: 0; }

.card {
  padding: 0;
  border: none;
  margin: 0; }

.card-header {
  background: none;
  padding: 0;
  border: none;
  margin: 0; }

.card .card-header a[data-toggle="collapse"] {
  display: block; }

.card .card-header a[data-toggle="collapse"]:active,
.card .card-header a[data-toggle="collapse"]:hover,
.card .card-header a[data-toggle="collapse"]:focus {
  text-decoration: none; }

.card-body {
  padding: 10px 0 20px;
  margin-bottom: 10px; }

/*fuwat.js*/
.fuwatAnime {
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1.5s;
  -ms-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-name: fuwatAnime;
  -ms-animation-name: fuwatAnime;
  animation-name: fuwatAnime;
  visibility: visible !important; }

@-webkit-keyframes fuwatAnime {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }
@keyframes fuwatAnime {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); } }
.flexH [class^=col] {
  display: flex;
  flex-direction: column; }

.flexH [class^=col] div {
  flex-grow: 1; }

.loader,
.loader:after {
  border-radius: 50%;
  width: 10em;
  height: 10em; }

.loader {
  margin: 60px auto;
  font-size: 10px;
  position: relative;
  text-indent: -9999em;
  border-top: 1.1em solid rgba(51, 102, 102, 0.2);
  border-right: 1.1em solid rgba(51, 102, 102, 0.2);
  border-bottom: 1.1em solid rgba(51, 102, 102, 0.2);
  border-left: 1.1em solid #336666;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear; }

@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
#loading-container {
  display: none; }

.loader {
  position: absolute;
  left: 47%;
  top: 30%;
  -webkit-transform: translate(-47%, -30%);
  /* Safari用 */
  transform: translate(-47%, -30%); }
  @media print, screen and (max-width: 991px) {
    .loader {
      left: 38%;
      top: 30%;
      -webkit-transform: translate(-30%, -38%);
      /* Safari用 */
      transform: translate(-30%, -38%); } }

/*! ==================================================
　メインのスタイル
=================================================== */
body {
  font-family: "hiragino-kaku-gothic-pron", sans-serif, -apple-system; }

h1, h2, h3, h4, h5, h6 {
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: bold; }

strong {
  font-family: "hiragino-kaku-gothic-pron", sans-serif !important;
  font-weight: bold; }

.common-btn {
  margin: 10px auto;
  width: 50%; }
  @media print, screen and (max-width: 991px) {
    .common-btn {
      width: 80%; } }
  .common-btn a {
    padding: 5px 15px;
    display: block;
    color: #fff;
    font-weight: bold;
    border-radius: 10px;
    background-color: #336666;
    text-decoration: none;
    text-align: center;
    font-family: "hiragino-kaku-gothic-pron", sans-serif; }
  .common-btn span {
    padding: 5px 15px;
    display: block;
    color: #fff;
    font-weight: bold;
    border-radius: 10px;
    background-color: #54a40b;
    text-decoration: none;
    text-align: center; }

.pankuzu {
  font-size: 0.9rem; }
  .pankuzu a {
    color: #c00;
    text-decoration: underline; }

.pagetop {
  position: fixed;
  bottom: 0;
  right: 5%;
  width: 157px;
  z-index: 10000; }
  .pagetop a {
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    border-right: 2px solid #fff;
    font-weight: bold;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    background-color: #bf0000;
    border-radius: 10px 10px 0 0;
    text-decoration: none;
    padding: 10px 15px;
    display: block;
    color: #fff;
    font-size: 0.9rem;
    float: right;
    text-align: center; }

/*! ==================================================
　header
=================================================== */
#header-fixed {
  z-index: 10000;
  background-color: #336666;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  padding: 5px 15px;
  /*メニューを上に動かす*/
  	/*.is-animation {
  
  		position: relative;
  		height:50px;
  	}*/ }
  #header-fixed header {
    position: relative; }
    #header-fixed header h1.sitetitle {
      float: left;
      width: 340px;
      padding: 5px;
      margin: 0; }
      @media print, screen and (max-width: 767px) {
        #header-fixed header h1.sitetitle {
          width: 200px; } }
      @media print, screen and (min-width: 768px) and (max-width: 991px) {
        #header-fixed header h1.sitetitle {
          width: 300px; } }
      #header-fixed header h1.sitetitle a {
        text-decoration: none;
        display: block; }
    #header-fixed header .yomi {
      float: left;
      padding: 5px 5px 5px 15px;
      width: 181px;
      padding-top: 25px; }
      @media print, screen and (max-width: 991px) {
        #header-fixed header .yomi {
          width: 100px; } }
    @media print, screen and (max-width: 991px) {
      #header-fixed header #headnavi {
        display: none; } }
    #header-fixed header #headnavi li {
      float: right;
      list-style: none;
      padding: 15px; }
      #header-fixed header #headnavi li a {
        display: block;
        color: #fff;
        text-decoration: none; }

#headmenuback {
  background-image: url(../img/back1.jpg);
  background-repeat: repeat; }
  @media print, screen and (max-width: 991px) {
    #headmenuback {
      display: none; } }
  @media print, screen and (min-width: 992px) {
    #headmenuback {
      display: block; } }
  #headmenuback .headmenu ul {
    font-size: 0;
    text-align: center; }
  #headmenuback .headmenu li {
    font-size: 0.9rem;
    display: inline-block;
    padding: 0 10px; }
  #headmenuback .headmenu li a {
    color: #fff;
    display: block;
    padding: 10px 20px;
    text-decoration: none;
    font-weight: bold;
    font-family: "hiragino-kaku-gothic-pron", sans-serif; }
    @media print, screen and (max-width: 1199px) {
      #headmenuback .headmenu li a {
        padding: 10px 5px; } }

/*! ==================================================
　spnavi
=================================================== */
@media print, screen and (min-width: 992px) {
  #spnavi {
    display: none; } }
#spnavi .spnavititle {
  color: #fff;
  padding: 2px 0;
  font-size: 0.8rem;
  text-align: center;
  margin-top: 10px; }
#spnavi .spnavi {
  padding: 0 10px; }
  @media print, screen and (min-width: 992px) {
    #spnavi .spnavi {
      display: none; } }
  #spnavi .spnavi li {
    list-style: none;
    padding: 5px;
    line-height: 1.2; }
    #spnavi .spnavi li a {
      display: block;
      text-align: center;
      font-size: 0.6rem;
      text-decoration: none;
      padding: 10px 0; }
      #spnavi .spnavi li a img {
        border-style: solid;
        border-width: 5px;
        border-color: #eeeeee;
        border-radius: 50%;
        background-image: -moz-linear-gradient(90deg, white 0%, white 51%, #fbf8f3 100%);
        background-image: -webkit-linear-gradient(90deg, white 0%, white 51%, #fbf8f3 100%);
        background-image: -ms-linear-gradient(90deg, white 0%, white 51%, #fbf8f3 100%);
        display: inline-block;
        width: 40px;
        height: 40px;
        margin: auto; }
        @media print, screen and (min-width: 992px) and (max-width: 1199px) {
          #spnavi .spnavi li a img {
            width: 40px;
            height: 40px; } }

/*! ==================================================
　content
=================================================== */
#contenttop {
  padding-top: 150px;
  margin-top: -150px; }

.contents {
  margin-top: 15px; }

/*! ==================================================
　leftnavi
=================================================== */
#leftnavi {
  float: left;
  width: 20%; }
  @media print, screen and (max-width: 991px) {
    #leftnavi {
      display: none; } }
  #leftnavi h2 {
    margin-top: 15px;
    background-color: #336666;
    color: #fff;
    font-size: 1.0rem;
    padding: 10px;
    text-align: center; }
  #leftnavi ul.contentsmenu li {
    list-style: none;
    border-bottom: 1px dotted #190a01;
    padding: 7px 0; }
    #leftnavi ul.contentsmenu li a {
      text-decoration: none;
      display: block; }

/*! ==================================================
　spfootnavi
=================================================== */
#spfootnavi {
  margin-top: 30px; }
  @media print, screen and (min-width: 992px) {
    #spfootnavi {
      display: none; } }
  #spfootnavi h2 {
    margin-top: 15px;
    background-color: #336666;
    color: #fff;
    font-size: 1.0rem;
    padding: 10px;
    text-align: center; }
  #spfootnavi ul.contentsmenu li {
    list-style: none;
    border-bottom: 1px dotted #190a01;
    padding: 7px 0; }
    #spfootnavi ul.contentsmenu li a {
      text-decoration: none;
      display: block;
      padding: 5px 20px; }

/*! ==================================================
　maincontents
=================================================== */
#maincontents {
  width: 100%;
  padding-left: 10px;
  padding-right: 10px; }
  @media print, screen and (min-width: 992px) {
    #maincontents {
      float: right;
      width: 78%;
      padding-left: 20px;
      padding-right: 20px; } }

/*! ==================================================
　banner
=================================================== */
.banner ul {
  margin: 20px auto 0; }
.banner li {
  margin-top: 10px;
  list-style: none; }
  .banner li a {
    margin: auto;
    text-align: center;
    display: block; }
  @media print, screen and (max-width: 575px) {
    .banner li img {
      width: 60%; } }

/*! ==================================================
　HOME
=================================================== */
@media print, screen and (max-width: 575px) {
  #home #topslide img {
    max-width: 100%;
    /*画像中央ぞろえで必要*/
    height: 250px;
    /*画像中央ぞろえで必要*/
    object-fit: cover;
    /*画像中央ぞろえで必要*/
    margin: 0 auto;
    /*画像中央ぞろえで必要*/ } }
@media print, screen and (min-width: 1200px) {
  #home #topslide img {
    width: 100vw;
    object-fit: contain; } }
#home #topslide .txtbox {
  font-weight: bold !important;
  position: absolute;
  top: 25vw;
  left: 50%;
  -webkit-transform: translate(-50%, -25%);
  /* Safari用 */
  transform: translate(-50%, -25%);
  transform: translate(-50%, -25%);
  z-index: 100;
  text-align: center;
  color: #fff;
  white-space: nowrap; }
  @media print, screen and (max-width: 767px) {
    #home #topslide .txtbox {
      top: 30vw;
      width: 90%; } }
  @media print, screen and (min-width: 768px) and (max-width: 991px) {
    #home #topslide .txtbox {
      top: 25vw;
      width: 70%; } }
  #home #topslide .txtbox .txt1 {
    animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal; }
    @media print, screen and (max-width: 991px) {
      #home #topslide .txtbox .txt1 img {
        object-fit: contain; } }
#home #maincontents #btn900 .imgbox {
  margin-top: 15px;
  position: relative;
  object-fit: contain;
  width: 100%;
  height: 100%; }
  @media print, screen and (min-width: 768px) and (max-width: 991px) {
    #home #maincontents #btn900 .imgbox {
      margin-top: 30px; } }
  #home #maincontents #btn900 .imgbox a {
    display: block; }
  #home #maincontents #btn900 .imgbox .imgtxt {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    /* Safari用 */
    transform: translate(-50%, -50%);
    background-color: #1f0f00;
    color: #fff;
    padding: 10px 15px;
    text-align: center;
    font-size: 1.4rem;
    letter-spacing: 1px;
    white-space: nowrap; }
    @media print, screen and (max-width: 767px) {
      #home #maincontents #btn900 .imgbox .imgtxt {
        font-size: 1.0rem; } }
#home #maincontents #btn900 .imgbox2 {
  border: 1px solid #fff;
  margin: 10px;
  position: absolute;
  top: 0;
  left: 0;
  width: 98%;
  width: -webkit-calc(100% - 20px);
  width: calc(100% - 20px);
  height: -webkit-calc(100% - 20px);
  height: calc(100% - 20px); }
  @media print, screen and (max-width: 767px) {
    #home #maincontents #btn900 .imgbox2 {
      margin: 5px;
      width: -webkit-calc(100% - 10px);
      width: calc(100% - 10px);
      height: -webkit-calc(100% - 10px);
      height: calc(100% - 10px); } }
#home #maincontents #shopnews {
  background-image: url(/bamgloshop/img/newsback.jpg);
  background-repeat: no-repeat;
  margin-top: 15px;
  padding-top: 30px; }
  @media print, screen and (min-width: 768px) and (max-width: 991px) {
    #home #maincontents #shopnews {
      margin-top: 30px; } }
  #home #maincontents #shopnews a:hover {
    text-decoration: none; }
  #home #maincontents #shopnews h2 {
    text-align: center;
    padding-bottom: 10px;
    border-bottom: 5px solid #336666;
    color: #336666;
    font-size: 2.0rem;
    margin: 10px 100px; }
    @media print, screen and (max-width: 767px) {
      #home #maincontents #shopnews h2 {
        font-size: 1.4rem;
        margin: 10px 10px; } }
  #home #maincontents #shopnews .newsList {
    padding: 10px 100px; }
    @media print, screen and (max-width: 991px) {
      #home #maincontents #shopnews .newsList {
        font-size: 0.9rem;
        padding: 10px 10px; } }
    #home #maincontents #shopnews .newsList .newsdate {
      font-size: 0.9rem;
      margin-bottom: 5px; }
    @media print, screen and (max-width: 767px) {
      #home #maincontents #shopnews .newsList h3 {
        font-size: 1.0rem; } }
  #home #maincontents #shopnews .newsbox {
    border-bottom: 1px dotted #190a01;
    padding: 15px 0; }
#home #maincontents #pickup {
  margin-top: 15px;
  padding-top: 30px; }
  #home #maincontents #pickup ul {
    margin-top: 30px !important;
    margin-bottom: 30px !important; }
  #home #maincontents #pickup li {
    list-style: none;
    padding: 5px; }
  #home #maincontents #pickup h2 {
    text-align: center;
    padding-bottom: 10px;
    border-bottom: 5px solid #336666;
    color: #336666;
    font-size: 2.0rem;
    margin: 10px 100px; }
  #home #maincontents #pickup .imgbox a {
    display: block; }
    #home #maincontents #pickup .imgbox a span.mark {
      display: inline-block;
      font-size: 0.8rem;
      font-weight: bold;
      color: #fff;
      margin-right: 2px;
      margin-bottom: 5px;
      padding: 2px 5px; }
    #home #maincontents #pickup .imgbox a h3 {
      margin-top: 10px !important;
      font-size: 0.9rem; }
    #home #maincontents #pickup .imgbox a p {
      font-size: 1.2rem;
      font-family: "hiragino-kaku-gothic-pron", sans-serif;
      font-weight: bold; }
      #home #maincontents #pickup .imgbox a p span {
        font-size: 0.8rem; }
    #home #maincontents #pickup .imgbox a img {
      object-fit: cover;
      width: 100%;
      height: 200px; }
      @media print, screen and (max-width: 767px) {
        #home #maincontents #pickup .imgbox a img {
          height: 160px; } }
      @media print, screen and (min-width: 768px) and (max-width: 991px) {
        #home #maincontents #pickup .imgbox a img {
          height: 200px; } }
  #home #maincontents #pickup .imgbox a:hover {
    text-decoration: none; }
#home #maincontents #btn300 .imgbox {
  margin-top: 15px;
  position: relative; }
  #home #maincontents #btn300 .imgbox img {
    width: 100%;
    height: 100%; }
  #home #maincontents #btn300 .imgbox a {
    display: block; }
#home #maincontents #btn300 .imgbox2 {
  border: 1px solid #fff;
  margin: 5px;
  position: absolute;
  top: 0;
  left: 0;
  width: -webkit-calc(100% - 10px);
  width: calc(100% - 10px);
  height: -webkit-calc(100% - 10px);
  height: calc(100% - 10px); }
#home #maincontents #btn300 h2.imgtxt {
  background-color: #336666;
  color: #fff;
  padding: 10px 10px;
  text-align: center;
  font-size: 1.0rem;
  letter-spacing: 1px; }
  @media print, screen and (max-width: 767px) {
    #home #maincontents #btn300 h2.imgtxt {
      font-size: 0.8rem; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
/*! ==================================================
　#footbtnarea
=================================================== */
#footbtnarea .imgbox {
  position: relative;
  margin-top: 20px; }
  @media print, screen and (min-width: 768px) and (max-width: 991px) {
    #footbtnarea .imgbox {
      height: 160px;
      overflow: hidden; } }
#footbtnarea h2 {
  font-size: 1.2rem;
  white-space: nowrap;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
  /* Safari用 */
  transform: translate(0%, -50%); }
  @media print, screen and (min-width: 768px) and (max-width: 991px) {
    #footbtnarea h2 {
      font-size: 1.4rem; } }
  #footbtnarea h2 span {
    background-color: #bf0000;
    color: #fff;
    padding: 5px 40px; }
    @media print, screen and (min-width: 768px) and (max-width: 991px) {
      #footbtnarea h2 span {
        font-size: 1.4rem;
        padding: 5px 80px; } }

/*! ==================================================
　#productList
=================================================== */
#productList .photobox {
  margin-top: 15px;
  position: relative; }
  #productList .photobox img {
    width: 100%;
    height: 300px;
    object-fit: cover; }
  #productList .photobox h2 {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    /* Safari用 */
    transform: translate(-50%, -50%);
    white-space: nowrap; }
#productList .setumei {
  margin-top: 15px;
  margin-bottom: 15px; }
  #productList .setumei p {
    padding-top: 15px; }
#productList .imgbox {
  margin-top: 30px; }
  #productList .imgbox span.mark {
    display: inline-block;
    font-size: 0.8rem;
    font-weight: bold;
    color: #fff;
    margin-right: 2px;
    margin-bottom: 5px;
    padding: 2px 5px; }
  #productList .imgbox a {
    display: block; }
    #productList .imgbox a h3 {
      margin-top: 10px !important; }
    #productList .imgbox a h3, #productList .imgbox a p {
      font-size: 0.9rem;
      font-family: "hiragino-kaku-gothic-pron", sans-serif;
      font-weight: bold; }
    #productList .imgbox a img {
      object-fit: cover;
      width: 100%;
      height: 250px; }
      @media print, screen and (max-width: 767px) {
        #productList .imgbox a img {
          height: 150px; } }
      @media print, screen and (min-width: 768px) and (max-width: 991px) {
        #productList .imgbox a img {
          height: 200px; } }
  #productList .imgbox a:hover {
    text-decoration: none; }

.pagelink {
  text-align: center;
  font-size: 0.9rem;
  margin: 50px; }

/*! ==================================================
　#product
=================================================== */
#product {
  /*.bigphoto{
  	margin-top: 15px;
  	@include media(xs-sm){
  			margin-top:25px;
  		}
  	@include media(md){
  			margin-top:30px;
  		}
  }
  .sphoto{
  	margin-top: 15px;
  }*/ }
  #product #slider-imgbox {
    margin-top: 15px; }
    #product #slider-imgbox li {
      list-style: none; }
      #product #slider-imgbox li img {
        border: 1px solid #fff; }
  #product h2 {
    font-size: 1.6rem;
    margin-top: 50px; }
    @media print, screen and (max-width: 767px) {
      #product h2 {
        margin-top: 30px;
        font-size: 1.2rem; } }
    @media print, screen and (min-width: 768px) and (max-width: 991px) {
      #product h2 {
        margin-top: 30px;
        font-size: 1.4rem; } }
  #product .jscode table {
    width: 160px !important;
    margin: auto !important;
    margin-top: 30px !important;
    margin-bottom: 15px !important;
    border: none !important; }
    @media print, screen and (max-width: 767px) {
      #product .jscode table {
        width: 200px !important; } }
    #product .jscode table th, #product .jscode table td {
      border: none !important;
      width: 80px !important;
      background-color: #fff !important; }
      #product .jscode table th input, #product .jscode table td input {
        width: 50px !important; }
      @media print, screen and (max-width: 767px) {
        #product .jscode table th, #product .jscode table td {
          width: 100px !important; } }
  #product .setumei {
    margin-top: 50px; }
  #product .price {
    font-size: 1.8rem;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    font-weight: bold;
    text-align: center;
    margin-top: 15px; }
    #product .price span {
      font-size: 1.0rem; }
  #product .photo-setumei {
    margin-top: 50px;
    margin-bottom: 50px; }
    #product .photo-setumei p {
      margin-top: 50px; }
  #product .youtubebox {
    margin-top: 15px;
    margin-bottom: 30px;
    padding: 15px 0 0; }
    #product .youtubebox .youtube {
      position: relative;
      width: 100%;
      padding-top: 56.25%; }
    #product .youtubebox .youtube iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%; }
  #product #shosaibox h3 {
    background-color: #336666;
    color: #fff;
    text-align: center;
    padding: 10px; }
  #product #shosaibox dl {
    border-bottom: 1px dotted #ddd;
    clear: both; }
  #product #shosaibox dt {
    color: #336666;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    font-weight: bold;
    font-size: 1.0rem;
    float: left;
    width: 20%;
    padding: 15px 0; }
  #product #shosaibox dd {
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    font-weight: bold;
    font-size: 1.0rem;
    float: right;
    width: 80%;
    padding: 15px 0; }
  #product #shosaibox .detailtxt table th {
    padding: 10px;
    border: 1px solid #ddd;
    width: 30%;
    font-size: 0.9rem; }
  #product #shosaibox .detailtxt table td {
    padding: 10px;
    border: 1px solid #ddd;
    width: 70%;
    font-size: 0.9rem; }
    @media print, screen and (max-width: 767px) {
      #product #shosaibox .detailtxt table td img {
        width: 240px !important; } }
  #product #variation h3 {
    background-color: #336666;
    color: #fff;
    text-align: center;
    padding: 10px;
    margin-top: 50px; }
  #product #variation a:hover {
    text-decoration: none; }
  #product #variation .imgbox {
    margin-top: 20px; }
    #product #variation .imgbox img {
      width: 100%;
      height: 100px;
      object-fit: cover; }
  #product .kanrenbtn {
    margin-top: 30px;
    margin-bottom: 15px; }
    #product .kanrenbtn a:hover {
      text-decoration: none; }
    #product .kanrenbtn p {
      background-color: #336666;
      color: #fff;
      padding: 15px 5px;
      text-align: center;
      font-family: "hiragino-kaku-gothic-pron", sans-serif;
      font-weight: bold;
      letter-spacing: 1px; }
      @media print, screen and (max-width: 767px) {
        #product .kanrenbtn p {
          font-size: 0.9rem;
          padding: 10px 5px; } }
      @media print, screen and (min-width: 768px) and (max-width: 991px) {
        #product .kanrenbtn p {
          font-size: 1.2rem; } }

/*! ==================================================
　#guide,handling 共通
=================================================== */
#guide, #handling, #law, #privacy {
  padding-bottom: 20px; }
  #guide h2, #handling h2, #law h2, #privacy h2 {
    text-align: center;
    margin-top: 50px; }
    #guide h2 span, #handling h2 span, #law h2 span, #privacy h2 span {
      font-size: 0.8rem; }
  #guide h3, #handling h3, #law h3, #privacy h3 {
    background-color: #336666;
    color: #fff;
    padding: 5px 10px;
    font-size: 1.2rem;
    margin-top: 50px; }
  #guide .contents, #handling .contents, #law .contents, #privacy .contents {
    width: 98%;
    margin: auto; }
    #guide .contents p, #handling .contents p, #law .contents p, #privacy .contents p {
      padding-top: 15px; }
    #guide .contents table, #handling .contents table, #law .contents table, #privacy .contents table {
      width: 90%;
      margin: 15px auto;
      border: 1px solid #ddd; }
      #guide .contents table th, #guide .contents table td, #handling .contents table th, #handling .contents table td, #law .contents table th, #law .contents table td, #privacy .contents table th, #privacy .contents table td {
        padding: 10px;
        border: 1px solid #ddd; }
    #guide .contents hr, #handling .contents hr, #law .contents hr, #privacy .contents hr {
      margin-bottom: 0; }

/*! ==================================================
　#work
=================================================== */
#work {
  padding-bottom: 20px; }
  #work h2 {
    text-align: center;
    margin-top: 50px; }
    #work h2 span {
      font-size: 0.8rem; }
  #work .workbox {
    padding: 0 15px 30px;
    margin-top: 15px; }
    #work .workbox h3 {
      padding: 15px 0 15px;
      font-size: 1.6rem;
      margin-top: 20px;
      margin-bottom: 25px;
      text-align: center;
      border-top: 5px solid #c0d8e0;
      border-bottom: 5px solid #c0d8e0; }
    #work .workbox li {
      list-style: none; }
      #work .workbox li img {
        border: 1px solid #fff; }
    #work .workbox .mainimg {
      margin-top: 30px; }
    #work .workbox .sphoto {
      margin-top: 15px; }
    #work .workbox .shoukaitxt p {
      padding-top: 25px; }
    @media print, screen and (max-width: 767px) {
      #work .workbox .shoukaitxt {
        margin-top: 15px; } }

/*! ==================================================
　#qa
=================================================== */
#qa {
  padding-bottom: 20px; }
  #qa h2 {
    text-align: center;
    margin-top: 50px; }
    #qa h2 span {
      font-size: 0.8rem; }
  #qa .catmenu {
    padding: 15px;
    width: 80%;
    margin: 30px auto 30px;
    border: 5px solid #c0d8e0; }
    @media print, screen and (max-width: 767px) {
      #qa .catmenu {
        width: 98%; } }
    #qa .catmenu li {
      list-style: none;
      border-bottom: 1px dotted #c0d8e0; }
      #qa .catmenu li a {
        padding: 7px 0;
        display: block; }
        #qa .catmenu li a span {
          color: #c0d8e0;
          font-size: 0.8rem; }
      #qa .catmenu li a:hover {
        text-decoration: none; }
  #qa h3 {
    background-color: #336666;
    color: #fff;
    padding: 5px 10px;
    font-size: 1.2rem;
    margin-top: 20px; }
  #qa .qabox h4 {
    color: #336666;
    padding: 10px;
    font-size: 1.0rem;
    margin-bottom: 5px !important;
    background-color: #efefef;
    display: block !important; }
  #qa .qabox .contents {
    width: 98%;
    margin: auto;
    padding: 0 30px 30px; }
    #qa .qabox .contents p {
      padding: 15px 0 0; }
    #qa .qabox .contents table {
      width: 90%;
      margin: 15px auto;
      border: 1px solid #ddd; }
      #qa .qabox .contents table th, #qa .qabox .contents table td {
        padding: 10px;
        border: 1px solid #ddd; }
    #qa .qabox .contents hr {
      margin-bottom: 0; }

/*! ==================================================
　#news,#homenews
=================================================== */
.newsList {
  /*home newslist共通*/ }
  .newsList time {
    font-size: 0.8rem;
    display: block;
    margin-bottom: 5px; }
  .newsList h3 {
    font-size: 1.2rem;
    font-weight: bold;
    color: #336666; }
    @media print, screen and (max-width: 767px) {
      .newsList h3 {
        padding-top: 5px; } }
    .newsList h3 img {
      border-style: solid;
      border-width: 5px;
      border-color: #eeeeee;
      border-radius: 50%;
      background-image: -moz-linear-gradient(90deg, white 0%, white 51%, #fbf8f3 100%);
      background-image: -webkit-linear-gradient(90deg, white 0%, white 51%, #fbf8f3 100%);
      background-image: -ms-linear-gradient(90deg, white 0%, white 51%, #fbf8f3 100%);
      width: 40px;
      height: 40px; }
  .newsList .list {
    border-bottom: 2px dotted #ddd;
    padding-bottom: 10px;
    margin-bottom: 5px; }
    .newsList .list p {
      font-size: 0.8rem; }
  .newsList a:hover {
    text-decoration: none; }

#news .newsList {
  padding-top: 20px;
  margin-top: 50px; }
  @media print, screen and (max-width: 767px) {
    #news .newsList {
      margin-top: 20px; } }

#news .newsDetail {
  padding-top: 20px; }
  #news .newsDetail h3 {
    font-size: 1.6rem;
    font-weight: bold;
    color: #336666;
    text-align: center;
    padding-bottom: 10px;
    margin-bottom: 30px;
    margin-top: 50px; }
    @media print, screen and (max-width: 767px) {
      #news .newsDetail h3 {
        padding-top: 5px;
        text-align: left;
        font-size: 1.2rem;
        margin-top: 20px; } }
    #news .newsDetail h3 img {
      border-style: solid;
      border-width: 5px;
      border-color: #eeeeee;
      border-radius: 50%;
      background-image: -moz-linear-gradient(90deg, white 0%, white 51%, #fbf8f3 100%);
      background-image: -webkit-linear-gradient(90deg, white 0%, white 51%, #fbf8f3 100%);
      background-image: -ms-linear-gradient(90deg, white 0%, white 51%, #fbf8f3 100%);
      width: 40px;
      height: 40px; }
  #news .newsDetail p.time {
    font-size: 0.8rem;
    margin-bottom: 5px;
    margin-top: 50px;
    text-align: right; }
  #news .newsDetail #content {
    padding: 30px; }
    @media print, screen and (max-width: 767px) {
      #news .newsDetail #content {
        padding: 10px; } }
    #news .newsDetail #content ul {
      margin: 20px !important; }
    #news .newsDetail #content a {
      text-decoration: underline; }
    #news .newsDetail #content p {
      padding-top: 15px; }

#news h2 {
  text-align: center;
  margin-top: 50px; }
  #news h2 span {
    font-size: 0.8rem; }

#news .pagelink {
  text-align: center;
  padding-top: 30px;
  font-size: 0.8rem; }

/*! ==================================================
　contact
=================================================== */
#contact h2 {
  text-align: center;
  margin-top: 50px; }
  #contact h2 span {
    font-size: 0.8rem; }
#contact .contactform {
  padding: 30px 15px;
  /*.btn_submit{
  	text-align:center;
  	margin:0 auto;
  }*/ }
  @media print, screen and (max-width: 767px) {
    #contact .contactform {
      padding: 15px 0; } }
  #contact .contactform form {
    margin: 20px 0;
    padding: 10px 0; }
  #contact .contactform .form-group {
    margin: 5px 0;
    padding: 0; }
    #contact .contactform .form-group label {
      font-weight: bold;
      font-size: 0.9rem; }
      #contact .contactform .form-group label span {
        font-size: 0.7rem; }
      @media print, screen and (max-width: 767px) {
        #contact .contactform .form-group label {
          margin-top: 15px; } }
    @media print, screen and (max-width: 767px) {
      #contact .contactform .form-group input {
        font-size: 1.4rem; } }
  #contact .contactform .formback {
    background-color: #fcfcfc;
    padding: 15px 5px;
    margin-top: 15px; }
  #contact .contactform table {
    border: 1px solid #333333; }
    #contact .contactform table th {
      width: 30%;
      font-weight: bold;
      background-color: rgba(255, 255, 255, 0.5);
      border: 1px solid #333333; }
    #contact .contactform table td {
      width: 70%;
      background-color: rgba(255, 255, 255, 0.5);
      border: 1px solid #333333; }
  #contact .contactform input {
    width: 100%;
    padding: 5px;
    margin: 0; }
    @media print, screen and (min-width: 768px) {
      #contact .contactform input {
        margin: 0 15px; } }
  #contact .contactform textarea {
    width: 100%;
    margin: 0; }
    @media print, screen and (max-width: 767px) {
      #contact .contactform textarea {
        font-size: 1.6rem; } }
    @media print, screen and (min-width: 768px) {
      #contact .contactform textarea {
        margin: 0 15px; } }
  #contact .contactform p {
    padding: 15px; }
  #contact .contactform .btnInput {
    margin-top: 30px; }
    #contact .contactform .btnInput ul {
      font-size: 0;
      text-align: center; }
    #contact .contactform .btnInput li {
      font-size: 1rem;
      display: inline-block;
      padding: 0 10px; }
    #contact .contactform .btnInput li {
      list-style: none; }
    #contact .contactform .btnInput input {
      width: 50%;
      text-align: center;
      cursor: pointer;
      color: #fff;
      border: 1px solid #fff;
      background-color: #333333;
      width: 200px;
      margin: auto; }
      @media print, screen and (max-width: 767px) {
        #contact .contactform .btnInput input {
          width: 100px; } }
  #contact .contactform .hissu, #contact .contactform .alert {
    color: #c00;
    font-weight: bold; }

/*! ==================================================
　footer
=================================================== */
footer {
  margin-top: 30px; }
  footer #footnavi {
    background-color: #333333;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    padding: 30px 10px; }
    footer #footnavi ul {
      font-size: 0;
      text-align: center; }
    footer #footnavi li {
      font-size: 0.8rem;
      display: inline-block;
      padding: 0 10px; }
    footer #footnavi li {
      padding-top: 5px;
      padding-bottom: 5px; }
      footer #footnavi li a {
        color: #fff;
        font-size: 0.7rem; }
    @media print, screen and (max-width: 991px) {
      footer #footnavi {
        display: none; } }
    @media print, screen and (min-width: 992px) {
      footer #footnavi {
        display: block; } }
  footer #footer {
    background-repeat: no-repeat;
    background-position: bottom;
    padding-top: 50px;
    padding-bottom: 50px;
    border-top: 10px solid #336666; }
    footer #footer .name {
      padding: 10px 0 0;
      font-size: 1.8rem;
      float: left; }
    footer #footer .logo {
      width: 70px;
      float: left;
      height: 70px;
      margin-right: 30px; }
    footer #footer address {
      padding-top: 15px;
      font-size: 0.9rem; }
  footer .copyright {
    text-align: center;
    font-size: 0.8rem;
    padding-top: 15px;
    padding-bottom: 15px;
    background-color: #336666;
    color: #fff; }

/*! ==================================================
　company
=================================================== */
#company .nav {
  margin-top: 15px; }
  #company .nav ul {
    margin: 10px 0 0; }
    #company .nav ul li {
      display: inline-block;
      width: auto;
      padding: 5px;
      list-style: none; }
      #company .nav ul li a {
        background-color: #333333;
        font-size: 0.8rem;
        padding: 10px 15px !important;
        border-radius: 10px !important;
        color: #000 !important;
        display: block; }
      #company .nav ul li a:hover {
        text-decoration: none; }
#company .companybox {
  margin-top: 30px;
  border: 5px solid #eee;
  padding: 15px 30px; }
  @media print, screen and (max-width: 767px) {
    #company .companybox {
      padding: 10px; } }
  #company .companybox h3 {
    border-bottom: 3px dotted #ddd;
    text-align: center;
    font-weight: bold;
    padding: 15px 0;
    font-size: 1.8rem;
    color: #114d85; }
  #company .companybox h4 {
    background-color: #114d85;
    text-align: center;
    margin-top: 20px;
    font-size: 1.1rem;
    padding: 5px;
    color: #fff;
    font-weight: bold; }
  #company .companybox h5 {
    margin-top: 20px;
    margin-bottom: 5px;
    padding: 15px 0 5px;
    font-weight: bold;
    color: #114d85;
    font-size: 1.1rem; }
  #company .companybox dl {
    margin: 0 10px 10px;
    border-bottom: 1px dotted #ddd; }
  #company .companybox dt {
    font-weight: normal;
    margin: 0;
    padding: 10px; }
  #company .companybox dd {
    padding: 10px; }
  #company .companybox p {
    margin: 15px; }
  #company .companybox a {
    text-decoration: underline; }
#company .company h3 {
  border-bottom: 3px dotted #ddd;
  margin-top: 15px;
  margin-bottom: 30px;
  font-size: 1.8rem;
  padding: 5px 0 30px;
  color: #114d85; }
#company .anzen ul {
  margin-top: 30px; }
#company .anzen li {
  list-style: none; }
  #company .anzen li a {
    display: block;
    border-bottom: 2px dotted #ddd;
    padding-bottom: 15px;
    margin-bottom: 15px;
    font-size: 1.2rem;
    font-weight: bold;
    color: #114d85; }
  #company .anzen li a:hover {
    text-decoration: none; }
#company .kokuminhogo h3 {
  border-bottom: 1px solid #ddd;
  padding-bottom: 10px;
  margin-bottom: 15px;
  margin-top: 40px;
  font-weight: bold;
  text-align: center;
  font-size: 1.8rem; }
#company .kokuminhogo h4 {
  font-size: 1.2rem;
  font-weight: bold;
  margin-top: 20px;
  margin-left: -10px; }
#company .kokuminhogo dt {
  font-weight: normal; }

/*! ==================================================
　privacy
=================================================== */
#privacy h3 {
  margin-top: 30px;
  font-weight: bold; }
#privacy p {
  margin-top: 15px; }
#privacy .numlist {
  margin: 0;
  position: relative; }
  #privacy .numlist li {
    list-style: none !important;
    list-style-position: outside !important;
    margin: 10px 0 0 0 !important; }
    #privacy .numlist li span {
      position: absolute !important;
      left: 0 !important;
      margin: 0 !important; }

/*! ==================================================
　sitemap
=================================================== */
#sitemap .box, #link .box {
  padding: 15px;
  margin-top: 15px;
  background-color: #fcfcfc; }
  #sitemap .box h3, #link .box h3 {
    font-weight: bold; }
  #sitemap .box ul, #link .box ul {
    margin-bottom: 30px; }
    #sitemap .box ul li, #link .box ul li {
      margin-left: 20px;
      padding-top: 10px; }
      #sitemap .box ul li a, #link .box ul li a {
        text-decoration: underline;
        color: #1e5aa0; }

/*! ==================================================
　その他
=================================================== */
.idlink {
  margin-top: -50px;
  padding-top: 50px; }
