@charset "UTF-8";
/* CSS Document */
/*リセットCSS*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/*clearfix*/
.clear-fix::after {
  content: "";
  display: block;
  clear: both; }

/*hide-contents*/
.pc-hide {
  display: none; }

.sp-hide {
  display: block; }

@media screen and (max-width: 1000px) {
  .pc-hide {
    display: block; }

  .sp-hide {
    display: none; } }
.img-fluid {
  max-width: 100%;
  height: auto; }

.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto; }

@media (min-width: 576px) {
  .container {
    max-width: 540px; } }
@media (min-width: 768px) {
  .container {
    max-width: 720px; } }
@media (min-width: 1080px) {
  .container {
    max-width: 1024px; } }
@media (min-width: 1200px) {
  .container {
    max-width: 1024px; } }
.text-left {
  text-align: left !important; }

.text-right {
  text-align: right !important; }

.text-center {
  text-align: center !important; }

a {
  color: #333;
  text-decoration: none; }

/*slide_show*/
#top_head {
  background: url(../obj/bg_main.png) center repeat-y;
  height: 700px;
  margin: 3px 0 0 0;
  padding: 0;
  font-size: 12px;
  line-height: 1; }

/*contents*/
body {
  background-image: url(../obj/bg_back.gif);
  background-repeat: repeat;
  margin-left: 0px;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  line-height: 1.5;
  font-size: 14px; }

h1 {
  padding-top: 3px;
  text-align: center; }

nav {
  margin-bottom: 430px;
  padding-top: 45px; }
  nav ul {
    display: flex;
    justify-content: space-around; }
    nav ul li:nth-child(4) {
      width: 190px; }

main {
  padding-top: 100px; }

.about {
  background-color: #fff;
  padding: 30px; }
  .about h3 {
    text-align: center;
    margin: 0 0 10px;
    font-size: 22px;
    font-weight: bold;
    color: #ff9000; }
  .about p {
    margin-bottom: 10px; }
  .about table a {
    color: blue; }
    .about table a:hover {
      text-decoration: underline; }

section {
  padding: 50px 0 20px; }

h2 {
  border-bottom: 3px solid #000;
  text-align: center;
  margin-bottom: 20px; }

.items {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap; }
  .items li {
    max-width: 240px;
    margin-bottom: 15px; }
    .items li img {
      width: 100%;
      height: auto;
      max-height: 160px; }
    .items li a {
      display: block;
      transition-duration: .5s;
      border: 7px solid #F57E38;
      background-color: #fff;
      text-align: center;
      padding: 10px; }
      .items li a:hover {
        opacity: .8;
        transition-duration: .5s;
        border: 7px solid #ff9900;
        text-decoration: underline;
        transform: rotate(5deg); }

.more {
  text-align: center;
  margin: 30px auto 0; }
  .more a {
    display: inline-block;
    border: 3px solid #000;
    border-radius: 5px;
    width: 200px;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 1px;
    transition-duration: .5s; }
    .more a:hover {
      background-color: #000;
      transition-duration: .5s;
      color: #fff; }

.go_top {
  background-image: url(../obj/bg_footer.png);
  text-align: center; }

@keyframes borderNyu {
  0% {
    width: 0; }
  100% {
    width: 100%; } }
footer .foot_nav {
  display: flex;
  justify-content: center;
  margin: 10px 0; }
  footer .foot_nav li {
    position: relative; }
    footer .foot_nav li a {
      position: relative; }
    footer .foot_nav li:hover a::before {
      content: '';
      width: 100%;
      height: 2px;
      background-color: #000;
      display: block;
      position: absolute;
      bottom: -5px;
      left: 0;
      right: 0;
      margin: 0 auto;
      text-align: center;
      animation: borderNyu .5s; }
    footer .foot_nav li::after {
      content: '|';
      position: relative;
      padding: 0 .5rem;
      top: -1px;
      border-bottom: 2px solid transparent; }
  footer .foot_nav li:first-child {
    padding-right: 2rem; }
    footer .foot_nav li:first-child::after {
      display: none; }
  footer .foot_nav li:last-child::after {
    display: none; }
footer .container {
  text-align: center; }
footer .copyright {
  margin-bottom: 10px;
  font-size: 12px; }

@media screen and (max-width: 1000px) {
  .sp-hide {
    display: none; }

  .pc_nav {
    display: none; }

  section {
    padding: 20px 10px; }

  .items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around; }
    .items li {
      margin: 10px; }

  main {
    padding-top: 30px; }

  .about {
    margin: 20px; } }
@media screen and (max-width: 780px) {
  h1 {
    text-align: left;
    margin: 0 50px 0 10px; }

  .about {
    padding: 15px; } }
@media screen and (max-width: 640px) {
  .simply-scroll .simply-scroll-list li {
    float: left;
    width: 100px;
    height: 100px;
    margin: 0; }

  .simply-scroll .simply-scroll-list li img {
    width: 100%; }

  #top_head {
    height: 80vh;
    background: url(../obj/bg_main_sp.png) no-repeat 0 50px transparent;
    background-size: contain;
    position: relative; }
    #top_head .simply-scroll-container {
      position: absolute;
      margin: 0 0 0 0;
      top: 80%; }

  .page #sub_head, .single #sub_head, .category #sub_head {
    background: url(../obj/bg_sub_sp.png) center no-repeat !important; } }
.page #sub_head,
.single #sub_head,
.category #sub_head {
  background: url(../obj/bg_sub.png) center repeat-y;
  height: 300px;
  margin: 3px 0 0 0;
  padding: 0;
  font-size: 12px;
  line-height: 1; }
  .page #sub_head nav,
  .single #sub_head nav,
  .category #sub_head nav {
    margin-bottom: 110px; }
.page main,
.single main,
.category main {
  padding-top: 150px; }
.page article,
.single article,
.category article {
  background-color: #fff;
  border: 12px solid #F57E38;
  padding: 50px;
  margin-bottom: 30px; }
  .page article a,
  .single article a,
  .category article a {
    color: blue; }
    .page article a:hover,
    .single article a:hover,
    .category article a:hover {
      text-decoration: underline; }
  .page article .eyecatch,
  .single article .eyecatch,
  .category article .eyecatch {
    width: 440px;
    float: left;
    text-align: center;
    margin-right: 10px; }
    .page article .eyecatch img,
    .single article .eyecatch img,
    .category article .eyecatch img {
      width: 100%;
      max-width: 440px; }
  .page article th, .page article td,
  .single article th,
  .single article td,
  .category article th,
  .category article td {
    border: 1px solid #333;
    padding: 10px; }
  .page article .main_title,
  .single article .main_title,
  .category article .main_title {
    color: #F68003;
    font-size: 24px;
    text-align: left; }
  .page article th,
  .single article th,
  .category article th {
    min-width: 100px; }
  .page article .tels,
  .single article .tels,
  .category article .tels {
    font-size: 18px;
    line-height: 1.3; }
    .page article .tels small,
    .single article .tels small,
    .category article .tels small {
      font-size: 14px; }

.entry .about {
  margin-bottom: 30px; }
.entry h3 {
  font-size: 18px;
  font-weight: bold;
  text-align: center; }
.entry table {
  margin: 0 auto;
  width: 800px;
  border-collapse: separate;
  border-spacing: 20px; }
  .entry table th, .entry table td {
    padding: 10px; }
  .entry table th {
    width: 125px;
    background-color: #F0F0F0;
    vertical-align: middle;
    text-align: center;
    margin-right: 15px; }
.entry .entryform {
  background-color: #fff;
  border: 12px solid #F57E38;
  padding: 50px;
  margin-bottom: 30px; }
  .entry .entryform table {
    width: 100%; }
    .entry .entryform table th {
      font-size: 16px;
      width: 300px; }
    .entry .entryform table td {
      line-height: 2.5; }
  .entry .entryform small {
    font-size: 12px; }
  .entry .entryform input, .entry .entryform textarea {
    padding: 5px;
    border-radius: 5px;
    background-color: #fffccc;
    width: 80%;
    box-sizing: border-box; }
  .entry .entryform input[type="submit"] {
    background-color: #efefef;
    border-radius: 5px;
    text-align: center;
    padding: 10px 30px;
    display: block;
    margin: 0 auto;
    font-size: 16px;
    cursor: pointer; }
  .entry .entryform .sizeoff {
    width: auto; }

@media screen and (max-width: 1000px) {
  .pc-hide {
    overflow: hidden; }

  .sp_nav nav ul {
    display: block;
    width: 70%;
    margin: 0 auto; }
    .sp_nav nav ul li {
      position: relative;
      margin-bottom: 10px;
      width: 100%; }

  /*開閉ボタン*/
  #nav_toggle {
    display: block;
    width: 40px;
    height: 40px;
    position: fixed;
    top: 25px;
    right: 0;
    z-index: 1300; }

  #nav_toggle div {
    position: relative; }

  #nav_toggle span {
    display: block;
    height: 5px;
    background: #5bade1;
    position: absolute;
    width: 80%;
    right: 15px;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    border-bottom: 1px solid #fff; }

  #nav_toggle span:nth-child(1) {
    top: 0px; }

  #nav_toggle span:nth-child(2) {
    top: 12px; }

  #nav_toggle span:nth-child(3) {
    top: 24px; }

  /*開閉ボタンopen時*/
  nav {
    transform: translateX(100vh);
    height: 100px; }

  .open nav {
    transform: translateX(0);
    height: auto; }

  nav ul li a {
    padding: 1rem;
    width: 100%;
    display: block;
    text-align: left;
    border-radius: 5px;
    margin-bottom: 5px;
    background-color: #F57E38;
    color: #fff;
    font-size: 16px;
    box-sizing: border-box; }

  .open nav {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #fff;
    transform: translateX(0);
    transition-duration: .5s;
    z-index: 1000; }

  .open #nav_toggle span:nth-child(1) {
    top: 12px;
    width: 100%;
    height: 5px;
    border-radius: 0;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    transform: rotate(135deg); }

  .open #nav_toggle span:nth-child(2) {
    width: 0;
    left: 50%; }

  .open #nav_toggle span:nth-child(3) {
    top: 12px;
    width: 100%;
    height: 5px;
    border-radius: 0;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    transform: rotate(-135deg); }

  .page article, .single article, .category article {
    padding: 15px; }

  .page article .eyecatch, .single article .eyecatch, .category article .eyecatch {
    float: none;
    width: 100%; }

  .page article th, .page article td, .single article th, .single article td, .category article th, .category article td {
    display: block;
    width: 100%;
    box-sizing: border-box; }

  .entry table {
    width: 100%;
    border-spacing: 5px; }
    .entry table th, .entry table td {
      display: block;
      width: 100%;
      box-sizing: border-box; }
  .entry .entryform {
    padding: 10px; }
    .entry .entryform table th, .entry .entryform table td {
      width: 100%;
      text-align: center;
      box-sizing: border-box;
      background-color: #fff; }

  .page main, .single main, .category main {
    padding-top: 90px; }

  footer .foot_nav li {
    display: none; }
  footer .foot_nav li:first-child {
    display: block;
    padding-right: 0; } }
.slick-prev {
  left: 0 !important;
  z-index: 3; }

.slick-next {
  right: 0px !important; }

.slick-prev:before, .slick-next:before {
  color: #000 !important; }
