@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; }

.sliderA, .sliderB, .sliderC, .sliderD {
  opacity: 0;
  transition: opacity .25s ease; }

.sliderA.slick-initialized, .sliderB.slick-initialized, .sliderC.slick-initialized, .sliderD.slick-initialized {
  opacity: 1; }

/* 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; }

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 20px 20px;
  border-left: 5px solid #f9eaa9;
  border-right: 5px solid #f9eaa9;
  border-bottom: 5px solid #f9eaa9;
  margin-right: 10px;
  margin-left: 10px;
  margin-bottom: 10px; }
  @media print, screen and (max-width: 767px) {
    .card-body {
      padding: 10px 10px 20px; } }

/*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; }

/* zoomしながらスライド画像を動かす */
/*
@keyframes fadezoom{
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
.sliderbox{
	animation-name:  fadezoom;
  	animation-duration: 10s;
	/*animation: fadezoom 8s 0s forwards;
}
*/
.animated {
  opacity: 0; }

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%; }

/*! ==================================================
　メインのスタイル
=================================================== */
body {
  font-family: "Noto Sans CJK JP", sans-serif, -apple-system; }

h1, h2, h3, h4, h5, h6 {
  font-family: "fot-tsukubrdgothic-std", sans-serif; }

@media print, screen and (min-width: 1200px) {
  .container {
    max-width: 1400px !important; } }

.common-btn {
  margin: 30px auto 0;
  width: 30%; }
  @media print, screen and (max-width: 991px) {
    .common-btn {
      width: 50%; } }
  .common-btn a {
    padding: 5px 15px;
    display: block;
    color: #fff;
    font-weight: bold;
    background-color: #82151d;
    text-decoration: none;
    text-align: center;
    position: relative;
    /* position: relative;で矢印の位置を基点とさせます */ }
  .common-btn a::after {
    content: '';
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg); }
  .common-btn span {
    padding: 5px 15px;
    display: block;
    color: #fff;
    font-weight: bold;
    background-color: #333333;
    text-decoration: none;
    text-align: center; }

.common-btn-back {
  margin: 30px auto 0;
  width: 30%; }
  @media print, screen and (max-width: 991px) {
    .common-btn-back {
      width: 50%; } }
  .common-btn-back a {
    padding: 5px 15px;
    display: block;
    color: #fff;
    font-weight: bold;
    background-color: #82151d;
    text-decoration: none;
    text-align: center;
    position: relative;
    /* position: relative;で矢印の位置を基点とさせます */ }
  .common-btn-back a::before {
    content: '';
    border: 0;
    border-bottom: solid 2px #fff;
    border-left: solid 2px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%) rotate(45deg); }
  .common-btn-back span {
    padding: 5px 15px;
    display: block;
    color: #fff;
    font-weight: bold;
    background-color: #333333;
    text-decoration: none;
    text-align: center; }

.common-btn2 {
  margin: 30px auto 0;
  width: 30%; }
  @media print, screen and (max-width: 991px) {
    .common-btn2 {
      width: 50%; } }
  .common-btn2 a {
    padding: 5px 15px;
    display: block;
    color: #fff;
    font-weight: bold;
    background-color: transparent;
    border: 1px solid #fff;
    text-decoration: none;
    text-align: center;
    position: relative;
    /* position: relative;で矢印の位置を基点とさせます */ }
  .common-btn2 a::after {
    content: '';
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg); }
  .common-btn2 span {
    padding: 5px 15px;
    display: block;
    color: #fff;
    font-weight: bold;
    background-color: #333333;
    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; }
  @media print, screen and (max-width: 991px) {
    .pagetop {
      display: none; } }
  .pagetop a {
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    border-right: 2px solid #fff;
    font-weight: bold;
    background-color: #82151d;
    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; }

main {
  padding-top: 82px;
  padding-bottom: 40px; }
  @media print, screen and (max-width: 991px) {
    main {
      padding-top: 62px;
      padding-bottom: 10px; } }

/*! ==================================================
　header
=================================================== */
#header-fixed {
  /*メニューを上に動かす*/ }
  #header-fixed header {
    z-index: 10000;
    position: -webkit-sticky;
    position: sticky;
    position: fixed;
    /*絶対必要*/
    top: 0;
    background-color: #fff;
    border-bottom: 1px solid #ddd;
    height: 60px;
    width: 100%;
    /*絶対必要*/
    text-align: center; }
    @media print, screen and (min-width: 992px) {
      #header-fixed header {
        height: 80px; } }
    @media print, screen and (min-width: 768px) and (max-width: 991px) {
      #header-fixed header {
        text-align: center; } }
    #header-fixed header h1.sitetitle a {
      font-size: 1.4rem;
      background-color: #1a1a1a;
      display: block;
      color: #fff;
      width: 280px;
      height: 80px;
      padding: 25px 15px 10px 10px;
      font-family: "Noto Sans CJK JP", sans-serif; }
      @media print, screen and (max-width: 991px) {
        #header-fixed header h1.sitetitle a {
          font-size: 1.4rem;
          width: 240px;
          height: 59px;
          padding: 15px 10px 10px;
          background-color: #fff;
          color: #1a1a1a; } }
      #header-fixed header h1.sitetitle a span {
        font-size: 1.0rem; }
    #header-fixed header h1.sitetitle a:hover {
      text-decoration: none; }
    #header-fixed header .headmenuarea {
      position: absolute;
      right: 120px;
      top: 15px; }
      @media print, screen and (max-width: 991px) {
        #header-fixed header .headmenuarea {
          display: none; } }
      #header-fixed header .headmenuarea ul {
        margin-top: 5px; }
        #header-fixed header .headmenuarea ul li {
          width: 100px;
          text-align: center;
          list-style: none;
          padding: 1px !important;
          margin: auto;
          float: left;
          font-size: 1.0rem;
          line-height: 1.0; }
          @media print, screen and (min-width: 992px) and (max-width: 1199px) {
            #header-fixed header .headmenuarea ul li {
              width: 100px; } }
          #header-fixed header .headmenuarea ul li a {
            text-align: center;
            color: #333;
            text-decoration: none;
            font-family: "fot-tsukubrdgothic-std", sans-serif; }
            #header-fixed header .headmenuarea ul li a span {
              font-size: 0.6rem;
              font-family: "Noto Sans CJK JP", sans-serif; }
    #header-fixed header .shopbtn {
      position: absolute;
      right: 15px;
      top: 15px; }
      @media print, screen and (max-width: 991px) {
        #header-fixed header .shopbtn {
          right: 60px;
          top: 5px; } }
      #header-fixed header .shopbtn a {
        color: #fff;
        padding: 10px 15px;
        display: block;
        background-color: #cc3467;
        font-size: 0.8rem;
        line-height: 1.2; }
        @media print, screen and (max-width: 991px) {
          #header-fixed header .shopbtn a {
            font-size: 0.7rem;
            padding: 10px 10px; } }
      #header-fixed header .shopbtn a:hover {
        text-decoration: none; }
  #header-fixed .is-animation {
    /*position: fixed; /*絶対必要*/
    display: block !important; }

/*#header-fixed.home{
	header{
		display: none;
	}
		

	.is-animation {
		position: fixed;
		display: block!important;
		
		
	}
}*/
/*#spnavi{
	@include media(lg-xl){
		display:none;
	}
	position: absolute;
	right:0;
	top:10px;
	z-index:10000;
}*/
#spmenu {
  position: fixed;
  top: 10px;
  right: 10px;
  z-index: 1000;
  display: block; }
  @media print, screen and (min-width: 992px) {
    #spmenu {
      display: none; } }

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

#btnarea1 {
  width: 70%;
  margin: 0 auto 15px; }
  @media print, screen and (max-width: 767px) {
    #btnarea1 {
      width: 100%; } }
  #btnarea1 img {
    margin-top: 20px; }

#btnarea2 {
  width: 70%;
  margin: auto; }
  @media print, screen and (max-width: 991px) {
    #btnarea2 {
      width: 70%; } }
  #btnarea2 img {
    margin-top: 20px; }

#brandarea {
  padding-top: 70px;
  /*.brandimg{
  		margin:50px;
  		padding:50px;
  		text-align: center;
  		@include media(xs-md){
  			padding:5px;
  			margin: 30px 5px 50px;
  		}
  		img{
  			
  			@include media(lg-xl){
  				width:800px;
  			}
  		}
  	}*/ }
  #brandarea .brandlogo {
    margin: 50px;
    padding: 50px;
    text-align: center; }
    @media print, screen and (max-width: 991px) {
      #brandarea .brandlogo {
        padding: 5px;
        margin: 30px 5px 50px; } }
    #brandarea .brandlogo ul {
      text-align: center; }
      #brandarea .brandlogo ul li {
        display: inline-block;
        padding: 15px; }
        #brandarea .brandlogo ul li img {
          height: 40px; }
          @media print, screen and (max-width: 991px) {
            #brandarea .brandlogo ul li img {
              height: 30px; } }

.contentstitle {
  text-align: center;
  margin: auto; }
  .contentstitle h2 {
    text-align: center;
    border-bottom: 1px solid #82151d;
    line-height: 1.0;
    padding-bottom: 15px;
    display: inline-block; }
    @media print, screen and (max-width: 991px) {
      .contentstitle h2 {
        font-size: 1.6rem; } }
    .contentstitle h2 span {
      font-size: 0.8rem; }

h2.conentstitle2 {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  /* Safari用 */
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
  border-bottom: 1px solid #82151d;
  line-height: 1.0;
  padding-bottom: 15px;
  display: inline-block; }
  @media print, screen and (max-width: 767px) {
    h2.conentstitle2 {
      font-size: 1.6rem; } }
  h2.conentstitle2 span {
    font-size: 0.8rem; }

.mainphoto {
  text-align: center;
  position: relative; }
  .mainphoto img {
    margin: auto;
    height: 800px;
    width: 100%;
    object-fit: cover; }
    @media print, screen and (max-width: 767px) {
      .mainphoto img {
        height: 400px; } }
    @media print, screen and (min-width: 768px) and (max-width: 991px) {
      .mainphoto img {
        height: 500px; } }

/*! ==================================================
　HOME
=================================================== */
#home {
  margin: 0; }
  #home #homehead #topslide {
    overflow: hidden;
    border-bottom: 5px solid #1a1a1a;
    padding-bottom: 5px;
    position: relative; }
    @media print, screen and (max-width: 991px) {
      #home #homehead #topslide {
        border-bottom: 2px solid #1a1a1a; } }
    #home #homehead #topslide .slick-dotted.slick-slider {
      margin-bottom: 0; }
    #home #homehead #topslide ul.slick-dots {
      bottom: 20px; }
      @media print, screen and (max-width: 991px) {
        #home #homehead #topslide ul.slick-dots {
          bottom: 10px; } }
    @media print, screen and (max-width: 767px) {
      #home #homehead #topslide .sliderbox img {
        width: 70%;
        height: 350px;
        object-fit: cover; } }
    @media print, screen and (min-width: 768px) and (max-width: 991px) {
      #home #homehead #topslide .sliderbox img {
        width: 70%;
        height: 500px;
        object-fit: cover; } }
    @media print, screen and (min-width: 1200px) {
      #home #homehead #topslide .sliderbox img {
        /*画面縮小表示しても画像が切れない対策*/
        width: 100vw;
        object-fit: contain; } }
    @media print, screen and (min-width: 1600px) {
      #home #homehead #topslide .sliderbox img {
        position: relative;
        width: 100vw;
        max-height: 850px;
        overflow: hidden; } }
    #home #homehead #topslide .slidetxt {
      position: absolute;
      top: 40%;
      left: 50%;
      width: 100%;
      -ms-transform: translate(-50%, 50%);
      -webkit-transform: translate(-50%, 50%);
      /* Safari用 */
      transform: translate(-50%, 50%);
      text-align: center;
      color: #fff;
      font-family: "Noto Sans CJK JP", sans-serif;
      font-size: 2.0rem;
      display: block;
      letter-spacing: 10px; }
      @media print, screen and (max-width: 767px) {
        #home #homehead #topslide .slidetxt {
          font-size: 1.3rem;
          letter-spacing: 1px; } }
      @media print, screen and (min-width: 768px) and (max-width: 991px) {
        #home #homehead #topslide .slidetxt {
          font-size: 1.6rem; } }
  #home #homeevent {
    padding: 50px 15px 40px;
    background-color: #f2f2f0;
    margin-top: 20px; }
    #home #homeevent .eventimg {
      margin: 30px auto 0;
      text-align: center; }
    #home #homeevent .eventtxt {
      width: 80%;
      margin: 30px auto 40px;
      padding: 30px;
      background-color: #fff; }
      @media print, screen and (max-width: 991px) {
        #home #homeevent .eventtxt {
          width: 100%; } }
  #home #itempickup {
    padding: 50px 15px 40px;
    background-color: #e9ead8; }
    #home #itempickup #pickupslide {
      margin-top: 20px;
      /*ul{
      	margin:0 -50px 0 5px;
      }*/ }
      #home #itempickup #pickupslide .slick-next {
        right: -20px !important; }
      #home #itempickup #pickupslide .slick-prev {
        left: -20px !important; }
      #home #itempickup #pickupslide a {
        color: #1a1a1a; }
      #home #itempickup #pickupslide a:hover {
        text-decoration: none; }
      #home #itempickup #pickupslide .pickupimg {
        margin: 20px 5px 5px 5px; }
      #home #itempickup #pickupslide .pickupxt {
        border: 1px solid #666;
        background-color: #fff;
        margin: 5px;
        padding: 5px; }
        #home #itempickup #pickupslide .pickupxt h3 {
          font-size: 0.8rem;
          font-family: "Noto Sans CJK JP", sans-serif; }
          @media print, screen and (max-width: 991px) {
            #home #itempickup #pickupslide .pickupxt h3 {
              font-size: 0.7rem; } }
        #home #itempickup #pickupslide .pickupxt p {
          font-size: 0.8rem; }
          @media print, screen and (max-width: 991px) {
            #home #itempickup #pickupslide .pickupxt p {
              font-size: 0.7rem; } }
  #home #homenews {
    margin-bottom: 20px; }
    #home #homenews .bkimg {
      position: relative; }
      #home #homenews .bkimg img {
        object-fit: cover;
        width: 100%; }
        @media print, screen and (max-width: 991px) {
          #home #homenews .bkimg img {
            height: 600px; } }
        @media print, screen and (min-width: 992px) and (max-width: 1199px) {
          #home #homenews .bkimg img {
            height: 650px; } }
        @media print, screen and (min-width: 1200px) {
          #home #homenews .bkimg img {
            height: 700px; } }
      #home #homenews .bkimg #homenewscontents {
        width: 100%;
        position: absolute;
        top: 150px; }
        @media print, screen and (max-width: 991px) {
          #home #homenews .bkimg #homenewscontents {
            top: 50px; } }
        #home #homenews .bkimg #homenewscontents h2 {
          color: #fff;
          border-bottom: 1px solid #fff; }
        #home #homenews .bkimg #homenewscontents .newstitlelink {
          margin: 20px 0; }
          #home #homenews .bkimg #homenewscontents .newstitlelink a {
            border: 1px solid #666;
            display: block;
            padding: 10px 20px;
            background-color: #fff;
            color: #1a1a1a; }
            #home #homenews .bkimg #homenewscontents .newstitlelink a time {
              font-size: 0.8rem;
              display: inline-block; }
            #home #homenews .bkimg #homenewscontents .newstitlelink a h3 {
              font-size: 1.0rem;
              display: inline-block;
              margin-left: 50px; }
          #home #homenews .bkimg #homenewscontents .newstitlelink a:hover {
            text-decoration: none; }
  #home #movie {
    margin-top: 60px; }
    #home #movie .bkimg {
      position: relative; }
      #home #movie .bkimg img {
        object-fit: cover;
        width: 100%; }
        @media print, screen and (max-width: 767px) {
          #home #movie .bkimg img {
            height: 550px; } }
        @media print, screen and (min-width: 768px) and (max-width: 991px) {
          #home #movie .bkimg img {
            height: 550px; } }
        @media print, screen and (min-width: 992px) and (max-width: 1199px) {
          #home #movie .bkimg img {
            height: 650px; } }
        @media print, screen and (min-width: 1200px) {
          #home #movie .bkimg img {
            height: 750px; } }
      #home #movie .bkimg #moviecontents {
        width: 100%;
        position: absolute;
        top: 100px; }
        @media print, screen and (max-width: 991px) {
          #home #movie .bkimg #moviecontents {
            top: 30px; } }
        #home #movie .bkimg #moviecontents .contentstitle {
          text-align: left;
          padding-left: 50px; }
          #home #movie .bkimg #moviecontents .contentstitle h2 {
            color: #fff;
            border-bottom: 1px solid #fff;
            text-align: left; }
        #home #movie .bkimg #moviecontents #movieslide {
          padding-top: 150px; }
          @media print, screen and (max-width: 1199px) {
            #home #movie .bkimg #moviecontents #movieslide {
              padding-top: 100px; } }
          #home #movie .bkimg #moviecontents #movieslide li {
            margin: 20px !important; }
        #home #movie .bkimg #moviecontents .slick-next {
          right: -10px !important; }
        #home #movie .bkimg #moviecontents .slick-prev {
          left: -10px !important; }

/*! ==================================================
　#concept
=================================================== */
#concept h3.headtxt {
  width: 100%;
  margin: 50px auto 50px;
  padding: 0px;
  text-align: center;
  line-height: 2.0; }
  @media print, screen and (min-width: 992px) {
    #concept h3.headtxt {
      width: 60%; } }
  @media print, screen and (max-width: 991px) {
    #concept h3.headtxt {
      font-size: 1.2rem;
      margin: 30px auto 30px; } }
#concept .historytitle {
  text-align: center;
  margin: 0 auto 50px; }
  #concept .historytitle h3 {
    text-align: center;
    display: inline-block;
    line-height: 1.0;
    font-size: 2.0rem; }
    #concept .historytitle h3 span {
      font-size: 0.8rem;
      border-bottom: 1px solid #82151d;
      padding-bottom: 15px; }
#concept .bkcolor {
  background-color: #f2f2f0;
  padding: 20px 20px 70px; }
  @media print, screen and (max-width: 991px) {
    #concept .bkcolor {
      padding: 20px 20px 50px; } }
#concept .conceptbox {
  width: 100%;
  margin: 30px auto 20px;
  padding: 20px 15px 70px; }
  @media print, screen and (min-width: 992px) and (max-width: 1199px) {
    #concept .conceptbox {
      width: 80%; } }
  @media print, screen and (min-width: 1200px) {
    #concept .conceptbox {
      width: 60%; } }
  #concept .conceptbox .conceptcontents {
    background-color: #fff;
    border-bottom: 1px solid #82151d;
    padding: 0 15px 30px;
    margin-bottom: 30px; }
    #concept .conceptbox .conceptcontents .number {
      margin-left: 50px; }
      @media print, screen and (max-width: 767px) {
        #concept .conceptbox .conceptcontents .number {
          margin-left: 0;
          text-align: center; } }
      #concept .conceptbox .conceptcontents .number span {
        display: inline-block;
        color: #fff;
        padding: 30px 10px;
        background-color: #82151d;
        font-size: 0.8rem; }
        @media print, screen and (max-width: 767px) {
          #concept .conceptbox .conceptcontents .number span {
            padding: 10px 10px; } }
    #concept .conceptbox .conceptcontents h4 {
      margin-top: -40px;
      text-align: center; }
      @media print, screen and (max-width: 767px) {
        #concept .conceptbox .conceptcontents h4 {
          font-size: 1.2rem;
          line-height: 1.8;
          margin-top: 20px; } }
      #concept .conceptbox .conceptcontents h4 span {
        display: inline-block;
        border-bottom: 3px solid #f7f49c;
        padding-bottom: 15px;
        line-height: 2.0; }
    #concept .conceptbox .conceptcontents p {
      margin-top: 15px;
      text-align: left;
      line-height: 1.8;
      font-size: 0.9rem; }
      @media print, screen and (min-width: 992px) {
        #concept .conceptbox .conceptcontents p {
          padding: 20px 50px; } }
#concept .yajirusi {
  text-align: center;
  margin: auto;
  color: #82151d; }
  #concept .yajirusi i {
    display: inline-block;
    font-size: 5.0rem; }
#concept .conceptbox2 {
  background-color: #fff;
  width: 100%;
  margin: 0 auto 0;
  padding: 20px 30px 20px; }
  @media print, screen and (min-width: 992px) and (max-width: 1199px) {
    #concept .conceptbox2 {
      width: 70%; } }
  @media print, screen and (min-width: 1200px) {
    #concept .conceptbox2 {
      width: 50%; } }
  #concept .conceptbox2 .photo {
    text-align: center;
    margin: 15px auto; }
    #concept .conceptbox2 .photo img {
      height: 200px;
      margin: auto; }
  #concept .conceptbox2 p {
    font-size: 0.9rem;
    line-height: 1.8;
    padding: 20px 50px 70px 0; }
    @media print, screen and (max-width: 991px) {
      #concept .conceptbox2 p {
        padding: 20px 20px 70px; } }

/*! ==================================================
　#company
=================================================== */
#company .bkcolor {
  background-color: #f2f2f0;
  padding: 20px 20px 70px; }
#company h3 {
  width: 100%;
  margin: 50px auto 50px;
  padding: 0px;
  text-align: center; }
  @media print, screen and (min-width: 992px) {
    #company h3 {
      width: 60%; } }
  @media print, screen and (max-width: 991px) {
    #company h3 {
      font-size: 1.4rem; } }
#company .companybox {
  width: 100%;
  margin: 30px auto 20px;
  padding: 20px 0 70px;
  background-color: #fff; }
  @media print, screen and (min-width: 768px) and (max-width: 991px) {
    #company .companybox {
      width: 80%; } }
  @media print, screen and (min-width: 992px) and (max-width: 1199px) {
    #company .companybox {
      width: 60%; } }
  @media print, screen and (min-width: 1200px) {
    #company .companybox {
      width: 50%; } }
  #company .companybox dl {
    border-bottom: 1px solid #82151d;
    padding: 15px;
    margin: 0; }
    #company .companybox dl dt {
      margin: 0;
      font-weight: normal;
      font-size: 0.9rem; }
    #company .companybox dl dd {
      margin: 0;
      font-size: 0.9rem; }

/*! ==================================================
　#recruit
=================================================== */
#recruit .bkcolor {
  background-color: #f2f2f0;
  padding: 20px 20px 70px; }
#recruit .recruitbox {
  width: 95%;
  margin: 50px auto 0;
  border: 1px solid #ddd;
  padding: 20px 15px;
  background-color: #fff; }
  @media print, screen and (min-width: 992px) and (max-width: 1199px) {
    #recruit .recruitbox {
      width: 70%; } }
  @media print, screen and (min-width: 1200px) {
    #recruit .recruitbox {
      width: 50%; } }
  #recruit .recruitbox dl {
    border-bottom: 1px solid #ddd;
    padding: 15px;
    margin: 0; }
    #recruit .recruitbox dl dt {
      margin: 0;
      font-weight: weight;
      font-family: "fot-tsukubrdgothic-std", sans-serif;
      color: #990000; }
    #recruit .recruitbox dl dd {
      margin: 0;
      font-family: "fot-tsukubrdgothic-std", sans-serif; }
#recruit p.noboshu {
  text-align: center;
  padding: 100px 15px 50px;
  font-size: 0.9rem; }

/*! ==================================================
　work
=================================================== */
#work .bkcolor {
  background-color: #f2f2f0;
  padding: 20px 20px 70px; }
#work .workbox {
  width: 100%;
  margin: 30px auto 0;
  padding-bottom: 50px;
  text-align: center;
  border-bottom: 1px solid #82151d; }
  @media print, screen and (min-width: 992px) and (max-width: 1199px) {
    #work .workbox {
      width: 70%; } }
  @media print, screen and (min-width: 1200px) {
    #work .workbox {
      width: 50%; } }
  #work .workbox img {
    margin: 10px auto; }
  #work .workbox p {
    text-align: left;
    padding: 15px 0;
    font-size: 0.9rem; }
  #work .workbox h3 {
    margin: 30px; }
    @media print, screen and (max-width: 767px) {
      #work .workbox h3 {
        font-size: 1.4rem; } }
#work .pagelink {
  text-align: center;
  margin-top: 50px; }
  #work .pagelink a {
    color: #82151d; }

/*! ==================================================
　movie
=================================================== */
#movie .bkcolor {
  background-color: #f2f2f0;
  padding: 20px 20px 70px; }
#movie .moviebox {
  margin: 20px 0; }
  #movie .moviebox h3 {
    font-size: 1.0rem;
    margin-top: 15px; }

/*! ==================================================
　#news
=================================================== */
#news #newsList {
  margin-top: 30px;
  background-color: #fff;
  border-radius: 30px;
  padding: 15px 50px 0;
  min-height: 300px; }
  @media print, screen and (max-width: 767px) {
    #news #newsList {
      padding: 15px 20px 30px; } }
  #news #newsList .newstitlelink {
    border-bottom: 1px solid #ddd;
    padding: 15px 0;
    text-align: center; }
    #news #newsList .newstitlelink a {
      text-decoration: none;
      display: block;
      color: #333333; }
    #news #newsList .newstitlelink time {
      font-size: 0.8rem;
      margin-bottom: 10px;
      color: #333;
      display: block;
      color: #82151d; }
    #news #newsList .newstitlelink h3 {
      font-size: 1.4rem;
      font-weight: normal; }
      @media print, screen and (max-width: 767px) {
        #news #newsList .newstitlelink h3 {
          font-size: 1.1rem; } }
  #news #newsList .pagelink {
    margin-top: 30px;
    font-size: 1.0rem; }
    #news #newsList .pagelink a {
      color: #82151d; }
#news #newsDetail {
  margin-top: 30px;
  background-color: #fff;
  border-radius: 30px;
  padding: 30px 50px 0; }
  @media print, screen and (max-width: 767px) {
    #news #newsDetail {
      padding: 10px 20px 10px; } }
  #news #newsDetail time {
    text-align: center;
    display: block;
    margin: auto;
    color: #82151d; }
  #news #newsDetail h3 {
    font-size: 1.6rem;
    font-weight: normal;
    border-bottom: 1px solid #ddd;
    padding: 10px 0 20px;
    text-align: center; }
    @media print, screen and (max-width: 767px) {
      #news #newsDetail h3 {
        font-size: 1.1rem; } }
  #news #newsDetail .content {
    padding: 5px 0 20px;
    min-height: 300px; }
    #news #newsDetail .content p {
      padding-top: 15px; }
      @media print, screen and (max-width: 767px) {
        #news #newsDetail .content p {
          font-size: 1.0rem; } }
#news .pagelink {
  text-align: center;
  padding-top: 30px;
  font-size: 0.8rem; }

/*! ==================================================
　contact
=================================================== */
#contact .bkcolor {
  background-color: #f2f2f0;
  padding: 20px 20px 70px; }
#contact .contactform {
  padding: 30px 15px;
  min-height: 400px;
  width: 70%;
  margin: auto;
  font-size: 0.9rem;
  /*.btn_submit{
  	text-align:center;
  	margin:0 auto;
  }*/ }
  @media print, screen and (max-width: 767px) {
    #contact .contactform {
      padding: 15px 0;
      width: 100%; } }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    #contact .contactform {
      width: 90%; } }
  #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: normal;
      font-size: 0.9rem; }
    @media print, screen and (max-width: 767px) {
      #contact .contactform .form-group input {
        font-size: 1.2rem; } }
  #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: normal;
      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 input[type=radio] {
    width: 25px;
    height: 25px;
    vertical-align: middle;
    padding: 25px 0; }
  #contact .contactform input[name=zipcode] {
    width: 40%;
    margin-bottom: 2px; }
  #contact .contactform input[name=age] {
    width: 40%; }
  #contact .contactform input[type=checkbox] {
    width: 30px;
    height: 30px;
    padding: 0;
    margin: 10px 0;
    vertical-align: middle; }
  #contact .contactform textarea {
    width: 100%;
    margin: 0; }
    @media print, screen and (max-width: 767px) {
      #contact .contactform textarea {
        font-size: 1.0rem; } }
    @media print, screen and (min-width: 768px) {
      #contact .contactform textarea {
        margin: 0 15px; } }
  #contact .contactform p {
    padding: 15px;
    line-height: 1.8; }
  #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: #82151d;
      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; }
  @media print, screen and (max-width: 767px) {
    #contact .contactform span.alert {
      padding-left: 0; } }

/*! ==================================================
　banner
=================================================== */
#banner {
  padding-top: 30px;
  margin-top: 30px; }
  #banner li {
    list-style: none; }

/*! ==================================================
　footer
=================================================== */
footer {
  margin-top: 30px;
  background-color: #e9ead8;
  padding: 50px; }
  footer #footnavi {
    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 {
    width: 100%;
    padding-bottom: 20px;
    padding-top: 20px; }
    @media print, screen and (min-width: 1600px) {
      footer #footer {
        width: 70%;
        margin: auto; } }
    footer #footer .logomark {
      text-align: center;
      margin: 0 auto 20px; }
      @media print, screen and (max-width: 991px) {
        footer #footer .logomark img {
          width: 200px; } }
    footer #footer address {
      padding-top: 15px;
      font-size: 0.9rem;
      line-height: 2.0; }
      @media print, screen and (max-width: 991px) {
        footer #footer address {
          text-align: center; } }
    @media print, screen and (max-width: 991px) {
      footer #footer .gmap {
        margin-top: 50px; } }
    footer #footer .companyname {
      font-size: 2.0rem; }
      @media print, screen and (max-width: 991px) {
        footer #footer .companyname {
          text-align: center; } }
      footer #footer .companyname span {
        font-size: 1.0rem; }
    footer #footer .tel {
      margin-top: 20px;
      font-size: 2.0rem; }
      @media print, screen and (max-width: 991px) {
        footer #footer .tel {
          text-align: center; } }
      footer #footer .tel span {
        font-size: 1.0rem; }
      footer #footer .tel a {
        color: #333333;
        text-decoration: none; }
    footer #footer .contact-btn {
      margin: 30px 0 0;
      width: 250px; }
      @media print, screen and (max-width: 991px) {
        footer #footer .contact-btn {
          margin: 30px auto 0; } }
      footer #footer .contact-btn a {
        padding: 5px 15px;
        display: block;
        color: #fff;
        font-weight: bold;
        background-color: #82151d;
        text-decoration: none;
        text-align: center; }
      footer #footer .contact-btn span {
        padding: 5px 15px;
        display: block;
        color: #fff;
        font-weight: bold;
        background-color: #333333;
        text-decoration: none;
        text-align: center; }

.copyright {
  text-align: center;
  font-size: 0.8rem;
  padding-top: 15px;
  padding-bottom: 15px;
  background-color: #1a1a1a;
  color: #fff; }

/*! ==================================================
　privacy
=================================================== */
/*#privacy{
	
}*/
/*! ==================================================
　sitemap
=================================================== */
/*#sitemap,#link{
	
}*/
/*! ==================================================
　その他
=================================================== */
/*.menulink{
	margin-top:-110px;
	padding-top:110px;
}
*/
