@charset "UTF-8";

/*

Author: Spreaf

Version: ver202007

*/

/* ==============================

base

============================== */

@import url("https://use.fontawesome.com/releases/v5.6.1/css/all.css");

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');

* {

  border: 0;

  outline: 0;

  margin: 0;

  padding: 0;

  font-size: 100%;

  font-weight: inherit;

  -webkit-box-sizing: border-box;

          box-sizing: border-box;

}



html {

  font-size: 62.5%;

  line-height: 1;

  text-rendering: optimizeLegibility;

}



body,

html {

  width: 100%;

  height: 100%;

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;


}



body {


  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -webkit-overflow-scrolling: touch;
  /*-webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";*/

}



article, aside, figure, footer, header, main, nav, section {

  display: block;

}



ol, ul {

  list-style: none;

}



blockquote, q {

  quotes: none;

}



blockquote:before, blockquote:after, q:before, q:after {

  content: '';

  content: none;

}



input, select {

  vertical-align: middle;

}



table {

  border-collapse: collapse;

  border-spacing: 0;

  empty-cells: show;

  table-layout: auto;

}



a {

  display: inline-block;

  -webkit-backface-visibility: hidden;

          backface-visibility: hidden;

}



address {

  font-style: normal;

}



img, video, object {

  max-width: 100%;

  height: auto;

  vertical-align: bottom;

  border: none;

}



img {

  display: block;

}



input[type="radio"] {

  border: 0px !important;

}



input[type="radio"], input[type="submit"], label {

  cursor: pointer;

}



input, button, textarea, select {

  margin: 0;

  padding: 0;

  background: none;

  border: none;

  border-radius: 0;

  outline: none;

  -webkit-appearance: none;

  -moz-appearance: none;

  appearance: none;

}



select::-ms-expand {

  display: none;

}



input:focus, textarea:focus {

  border-color: #ccc;

  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);

          box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);

}



input[type="submit"] {

  position: relative;

  display: block;

  text-align: center;

  margin-left: auto;

  margin-right: auto;

  -webkit-transition-duration: 0.2s;

  transition-duration: 0.2s;

  width: 100%;

}

/* noto 
============================== */
.noto100{font-family: 'Noto Sans JP', sans-serif;font-weight:100;}
.noto300{font-family: 'Noto Sans JP', sans-serif;font-weight:300;}
.noto400{font-family: 'Noto Sans JP', sans-serif;font-weight:400;}
.noto500{font-family: 'Noto Sans JP', sans-serif;font-weight:500;}
.noto700{font-family: 'Noto Sans JP', sans-serif;font-weight:700;}
.noto900{font-family: 'Noto Sans JP', sans-serif;font-weight:900;}

/*input[type="submit"]:hover {opacity: .6;}*/

/* general 

============================== */

.bold {

  font-weight: bold;

}



.normal {

  font-weight: normal;

}



.underline {

  text-decoration: underline;

}



.center {

  text-align: center;

}



.ta_right {

  text-align: right;

}



.ta_left {

  text-align: left;

}



section {

  clear: both;

}



.wrapper,

section {

  position: relative;

}



.wrapper,

.inner {

  margin-left: auto;

  margin-right: auto;

}



#wrapper {

  position: relative;

  overflow: hidden;

  max-height: none;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-orient: vertical;

  -webkit-box-direction: normal;

  -webkit-flex-direction: column;

      -ms-flex-direction: column;

          flex-direction: column;

}



#footer {

  margin-top: auto;

}



@media screen and (max-width: 767px) {

  .sp {

    display: block;

  }

  .pc {

    display: none;

  }

  .gmap {

    height: 0;

    overflow: hidden;

    padding-bottom: 56.25%;

    position: relative;

  }

  .gmap iframe {

    position: absolute;

    left: 0;

    top: 0;

    height: 100%;

    width: 100%;

  }

}



@media screen and (min-width: 768px) {

  .sp {

    display: none;

  }

  .pc {

    display: block;

  }

  a[href^="tel:"] {

    pointer-events: none;

  }

  .over a,

  .over a img {

    -webkit-transition: opacity .3s;

    transition: opacity .3s;

  }

  /*.over a:hover {

    opacity: .6;

  }*/

  .imgwrap {

    overflow: hidden;

  }

  .imgwrap img {

    -webkit-transition: .3s all;

    transition: .3s all;

  }

  .imgwrap img:hover {

    -webkit-transform: scale(1.1, 1.1);

            transform: scale(1.1, 1.1);

  }

}



.fadein {

  -webkit-transition: opacity 1s,-webkit-transform 1s;

  transition: opacity 1s,-webkit-transform 1s;

  transition: transform 1s,opacity 1s;

  transition: transform 1s,opacity 1s,-webkit-transform 1s;

  opacity: 0;

}



.fadein.show {

  opacity: 1;

}



.fadein_up {

  -webkit-transform: translateY(30px);

          transform: translateY(30px);

}



.fadein_down {

  -webkit-transform: translateY(-30px);

          transform: translateY(-30px);

}



.fadein_up.show,

.fadein_down.show {

  -webkit-transform: translateY(0);

          transform: translateY(0);

}



.tab_area .hide {

  display: none;

}



.tab_area .tab_btn {

  overflow: hidden;

  margin: 0;

  padding: 0;

  width: 100%;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-flex-wrap: wrap;

      -ms-flex-wrap: wrap;

          flex-wrap: wrap;

  list-style: none;

}



.tab_area .tab_btn li {

  cursor: pointer;

  position: relative;

  color: #ccc;

  -webkit-transition: .5s;

  transition: .5s;

}



.tab_area .tab_btn li.select, .tab_area .tab_btn li:hover {

  color: #c00;

}



.tab_area .tab_btn li::after {

  content: " | ";

  color: #333;

  margin: 0 10px;

}



.toggle_list .toggle_body {

  display: none;

}



.toggle_list .toggle_body.open {

  display: block;

}



.readmore {

  cursor: pointer;

  margin-left: auto;

  margin-right: auto;

  text-align: center;

  color: white;

  background-color: #333;

  -webkit-transition: .5s;

  transition: .5s;

}



.readmore:hover {

  opacity: .6;

}



body {

  color: #010101;

  background-color: white;

  font-family: 'Roboto', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;

  font-weight: 500;

}



body a {

  text-decoration: none;

  display: inline-block;

  color: #010101;

}



/*.font-en{

    font-family: $font-en;

    font-weight: 400;

  }*/

.txt-color-red {

  color: #ee0022;

}



#content {

  position: relative;

}



@media screen and (max-width: 767px) {

  body {

    font-size: 1.4rem;

    line-height: 1.8;

  }

  .txt-small {

    font-size: 1.2rem;

  }

  .wrapper {

    padding-left: 20px;

    padding-right: 20px;

  }

  #content {

    padding-left: 20px;

    padding-right: 20px;

    margin-bottom: 50px;

  }

  #container {

    padding-left: 20px;

    padding-right: 20px;

    margin-bottom: 50px;

  }

  #container #main {

    margin-bottom: 30px;

  }

  #container #side {

    position: static !important;

  }

}



@media screen and (min-width: 768px) {

  html,

  body,

  #wrapper,

  #header {

    min-width: 1080px;

  }

  body {

    font-size: 1.6rem;

    line-height: 1.625;

  }

  .txt-small {

    font-size: 1.4rem;

  }

  a {

    -webkit-transition: 0.2s;

    transition: 0.2s;

  }

  .wrapper,

  #content {

    width: 1040px;

    margin-left: auto;

    margin-right: auto;

  }

  #content {

    margin-bottom: 100px;

  }

  #container {

    width: 1040px;

    margin-left: auto;

    margin-right: auto;

    margin-bottom: 100px;

  }

  #container #main {

    width: 480px;

    float: left;

  }

  #container #side {

    margin-left: 80px;

    width: 480px;

    float: right;

  }

  #container .sticky {

    width: 100%;

    height: 500px;

    position: -webkit-sticky;

    position: sticky;

    top: 0;

    left: 0;

  }

  .clearfix:after {

    content: ".";

    display: block;

    clear: both;

    height: 0;

    visibility: hidden;

  }

  .clearfix {

    min-height: 1px;

  }

  * html .clearfix {

    height: 1px;

  }

  #container2 {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  #container2 #main {

    width: 480px;

  }

  #container2 #side {

    width: 480px;

  }

  #container2 .sticky {

    position: -webkit-sticky;

    position: sticky;

    top: 0;

    height: 400px;

  }

  .content-col2-wrap {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .content-col2-wrap .content-left,

  .content-col2-wrap .content-right {

    width: 46.15%;

  }

}



/* =========================

layout

========================== */

#header {

  line-height: 1;

  width: 100%;

  z-index: 900;

  -webkit-transition: 0.3s;

  transition: 0.3s;

}



#header img {

  width: 100%;
  image-rendering: -webkit-optimize-contrast;

}



#header .header_txt .button.small {

  display: block;

  width: 140px;

}



.category-top #header,

.category-followpage #header {

  margin-bottom: 0;

}



@media screen and (max-width: 767px) {

  #header {

    position: relative;

  }

  #header .header_logo {

    margin: auto;

    width: 167px;

    width: 180px;

  }

  #header .header_logo a {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

    height: 50px;

    height: 70px;

  }

  #header .drawer_button {

    cursor: pointer;

    display: block;

    background: none;

    outline: none;

    border: none;

    padding: 0;

    width: 50px;

    width: 70px;

    height: 50px;

    height: 70px;

    position: fixed;

    position: absolute;

    top: 0;

    right: 0;

    background-repeat: no-repeat;

    background-position: center;

    background-image: url(./../img/common/nav_open.png);

    background-size: 19px 14px;

    background-size: 24px auto;

  }

  #header .header_txt {

    border-top: solid 1px #ccc;

    text-align: center;

    font-weight: bold;

    font-size: 1.4rem;

    line-height: 1.4;

    padding: 15px 20px;

  }

  #header .header_txt .button {

    display: block;

    margin-top: 10px;

    margin-bottom: 10px;

  }

  /* #nav */

  body.active {

    position: fixed;

  }

  #nav {

    position: fixed;

    left: 0;

    top: 0;

    height: 100%;

    width: 100%;

    visibility: hidden;

    opacity: 0;

    z-index: -1;

    -webkit-backdrop-filter: blur(2px);

    backdrop-filter: blur(2px);

    color: white;

    background-color: rgba(0, 0, 0, 0.95);

  }

  #nav .drawer_button.close {

    position: fixed;

    z-index: 10;

    right: 20px;

    top: 20px;

    width: 40px;

    height: 40px;

    background-color: white;

    border-radius: 50%;

    background-repeat: no-repeat;

    background-position: center;

    background-image: url(./../img/common/nav_close.png);

    background-size: 18px 18px;

  }

  #nav .drawer_nav_sp {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    overflow-y: auto;

    padding-top: 93px;

    padding-bottom: 20px;

  }

  #nav .drawer_nav_sp .drawer_nav_menu_sp ul li a {

    text-align: center;

    display: block;

    color: white;

    font-size: 1.6rem;

    letter-spacing: 0.06rem;

    padding: 16px 20px;

  }

  #nav .drawer_nav_sp .drawer_nav_menu_sp ul li a .blank {

    display: inline-block;

    background-repeat: no-repeat;

    background-position: right center;

    background-image: url(./../img/common/glink_blank.png);

    background-size: 10px auto;

    padding-right: 18px;

  }

}



@media screen and (min-width: 768px) {

  .drawer_button {

    display: none;

  }

  #header {

    background-color: white;

    border-bottom: solid 1px #ccc;

  }

  #header .header_inner {

    margin-left: auto;

    margin-right: auto;

    width: 1040px;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

    height: 100px;

  }

  #header .header_inner .header_logo {

    width: 126px;

  }

  #header .header_inner .header_logo a {

    height: 100px;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

  }

  #header .header_inner .header_txt {

	font-size: 1.4rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;


    text-align: right;

    max-width: calc(100% - 260px);

    /*font-weight: bold;*/

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

  }

  #header .header_inner .header_txt .button {

    margin-left: 20px;

  }

  #nav {

    margin-left: auto;

    margin-right: auto;

    width: 1040px;

  }

  #nav ul {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

    height: 80px;

  }

  #nav ul li a {

    position: relative;

    display: inline-block;

    text-decoration: none;

    text-align: center;

    display: block;

    color: #222;

    font-size: 1.4rem;

  }

  #nav ul li a:hover {

    color: #a99222;

  }


  #nav ul li a::after {

    position: absolute;

    bottom: -4px;

    left: 0;

    content: '';

    width: 100%;

    height: 2px;

    background: #a99222;

    -webkit-transform: scale(0, 1);

            transform: scale(0, 1);

    -webkit-transform-origin: center top;

            transform-origin: center top;

    -webkit-transition: -webkit-transform .3s;

    transition: -webkit-transform .3s;

    transition: transform .3s;

    transition: transform .3s, -webkit-transform .3s;

  }

#nav ul li:last-of-type a::after { width:0; }

  #nav ul li a::after {

    position: absolute;

    bottom: -4px;

    left: 0;

    content: '';

    width: 100%;

    height: 2px;

    background: #a99222;

    -webkit-transform: scale(0, 1);

            transform: scale(0, 1);

    -webkit-transform-origin: center top;

            transform-origin: center top;

    -webkit-transition: -webkit-transform .3s;

    transition: -webkit-transform .3s;

    transition: transform .3s;

    transition: transform .3s, -webkit-transform .3s;

  }

  #nav ul li a:hover::after {

    -webkit-transform-origin: center top;

            transform-origin: center top;

    -webkit-transform: scale(1, 1);

            transform: scale(1, 1);

  }



  #nav ul li a .blank {
    display: inline-block;

    background-repeat: no-repeat;

    background-position: right center;

    /* background-image: url(./../img/common/glink_blank_color.png); */

    background-size: 8px auto;

    /* padding-right: 16px; */

    color: #a99222;

    border: 2px solid #a99222;

    padding: 3px 15px 3px 15px;

    /*font-weight: 600;*/

  }



  .category-followpage #nav {

    margin-bottom: 36px;

  }

  /* pattern A */

  .pattern-a #header .header_inner .header_logo {

    width: 276px;

  }

  .pattern-a #nav ul li a:hover {

    color: #222;

  }

  .pattern-a #nav ul li a::after {

    background-color: #f2e700;

  }

  /* pattern B */

  .pattern-b #header {

    border-bottom: none;

  }

  .pattern-b #header .header_inner {

    -webkit-box-pack: end;

    -webkit-justify-content: flex-end;

        -ms-flex-pack: end;

            justify-content: flex-end;

    height: 32px;

  }

  .pattern-b #header .header_inner .header_logo {

    display: none;

  }

  .pattern-b .eventtitle {

    background-color: #fff100;

    text-align: center;

  }

  .pattern-b .eventtitle img {

    display: inline-block;

  }

  .pattern-b #nav {

    width: 100%;

    border-bottom: solid 1px #ccc;

  }

  .pattern-b #nav ul {

    margin-left: auto;

    margin-right: auto;

    width: 1040px;

  }

  .pattern-b #nav ul li a {

    position: relative;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

    height: 80px;

  }

  .pattern-b #nav ul li a:hover {

    color: #222;

  }

  .pattern-b #nav ul li a::after {

    background-color: #f2e700;

  }

  /* pattern C */

  .pattern-c #nav {

    width: 100%;

    border-bottom: solid 1px #ccc;

  }

  .pattern-c #nav ul {

    margin-left: auto;

    margin-right: auto;

    width: 1040px;

    height: 56px;

  }

  .pattern-c #nav ul li a {

    position: relative;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

    height: 56px;

  }

  .pattern-c #nav ul li a:hover {

    color: #222;

  }

  .pattern-c #nav ul li a::after {

    background-color: #f2e700;

  }

}



#footer {

  clear: both;

  text-align: center;

  border-top: solid 1px #ccc;

}



#scrollTop {

  position: fixed;

  bottom: 50px;

  right: 50px;

  background-color: #404243;

  border: 2px solid #404243;

  width: 44px;

  height: 44px;

  border-radius: 50%;

  cursor: pointer;

  z-index: 100;

  display: none;

  -webkit-transition: background-color .3s;

  transition: background-color .3s;

}



#scrollTop::after {

  content: "";

  width: 8px;

  height: 8px;

  border: 2px solid;

  border-color: white white transparent transparent;

  -webkit-transform: rotate(-45deg);

          transform: rotate(-45deg);

  position: absolute;

  left: 0;

  right: 0;

  top: 18px;

  margin: auto;

  -webkit-transition: border-color .3s;

  transition: border-color .3s;

}



@media screen and (max-width: 767px) {

  #footer {

    padding-top: 20px;

    padding-bottom: 20px;

    font-size: 1.2rem;

  }

  #footer ul {

    margin-bottom: 20px;

  }

  #footer ul li {

    margin-bottom: 4px;

  }

  #footer p {

    line-height: 1.6;

  }

  #footer .copy {

    display: inline-block;

    font-size: 1.1rem;

  }

  #scrollTop {

    bottom: 20px;

    right: 20px;

    width: 36px;

    height: 36px;

  }

  #scrollTop::after {

    width: 6px;

    height: 6px;

    top: 14px;

  }

}



@media screen and (min-width: 768px) {

  #footer {

    padding-top: 34px;

    padding-bottom: 34px;

    font-size: 1.3rem;

  }

  #footer ul {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-flex-wrap: wrap;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;

    -webkit-box-pack: center;

    -webkit-justify-content: center;

        -ms-flex-pack: center;

            justify-content: center;

    margin-bottom: 20px;

  }

  #footer ul li {

    position: relative;

  }

  #footer ul li::before {

    content: "　|　";

  }

  #footer ul li:first-of-type::before {

    content: none;

  }

  #footer a {

    position: relative;

    display: inline-block;

    text-decoration: none;

    text-align: center;

    color: #222;

    font-size: 1.4rem;

  }

  #footer a:hover {

    color: #a99222;

  }

  #footer a::after {

    position: absolute;

    bottom: -4px;

    left: 0;

    content: '';

    width: 100%;

    height: 2px;

    background: #a99222;

    -webkit-transform: scale(0, 1);

            transform: scale(0, 1);

    -webkit-transform-origin: center top;

            transform-origin: center top;

    -webkit-transition: -webkit-transform .3s;

    transition: -webkit-transform .3s;

    transition: transform .3s;

    transition: transform .3s, -webkit-transform .3s;

  }

  #footer a:hover::after {

    -webkit-transform-origin: center top;

            transform-origin: center top;

    -webkit-transform: scale(1, 1);

            transform: scale(1, 1);

  }

  #footer .copy {

    display: inline-block;

    font-size: 1.2rem;

    margin-top: 2px;

  }

  #scrollTop:hover {

    background-color: white;

  }

  #scrollTop:hover::after {

    border-color: #404243 #404243 transparent transparent;

  }

}



/*印刷用*/

.print-css #wrapper {

  min-height: 100vh;

  margin-left: auto;

  margin-right: auto;

  width: 1040px;

}



.print-css #header-print {

  margin-left: auto;

  margin-right: auto;

  width: 1040px;

  text-align: center;

  padding-top: 60px;

  padding-bottom: 35px;

  border-bottom: solid 1px #ccc;

  margin-bottom: 35px;

  font-size: 18px;

}



.print-css #header-print .header_logo {

  margin-left: auto;

  margin-right: auto;

  width: 250px;

  margin-bottom: 42px;

}



.print-css .info-block {

  text-align: center;

  margin-bottom: 55px;

}



.print-css .info-block .txt1 {

  font-weight: bold;

  font-size: 2.2rem;

}



.print-css .info-block .txt2 {

  font-weight: bold;

  color: #ee0022;

  font-size: 1.8rem;

  margin-top: 8px;

  margin-bottom: 34px;

}



.print-css .info-block .button {

  margin-left: auto;

  margin-right: auto;

}



.print-css .info-block .button.white-site a {

  border: solid 2px #a99222;

}



.print-css .info-block .button.white-site a .icon-print {

  position: relative;

  padding-left: 40px;

}



.print-css .info-block .button.white-site a .icon-print::before {

  position: absolute;

  left: 0;

  content: "\f02f";

  font-family: "Font Awesome 5 Free";

  font-weight: bold;

  color: #a99222;

  font-size: 2rem;

  -webkit-transition: 0.3s;

  transition: 0.3s;

}



.print-css .info-block .button.white-site a:hover .icon-print::before {

  color: white;

}



.print-css .qrcode-block {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-flex-wrap: wrap;

      -ms-flex-wrap: wrap;

          flex-wrap: wrap;

  margin-bottom: 60px;

}



.print-css .qrcode-block .box {

  text-align: center;

  border: solid 1px #ccc;

  width: 320px;

  min-height: 320px;

  font-size: 1.8rem;

  margin-bottom: 40px;

  padding: 18px 10px 10px;

}



.print-css .qrcode-block .box:nth-child(3n+1), .print-css .qrcode-block .box:nth-child(3n+2) {

  margin-right: 40px;

}



.print-css .qrcode-block .box img {

  display: inline-block;

}



.print-css .qrcode-block .box .ttl {

  font-weight: bold;

  color: #a99222;

  font-size: 2rem;

  margin-bottom: 7px;

  margin-top: 22px;

}



/* ============================

form

============================ */

input[type="text"],

input[type="email"],

input[type="submit"],

textarea,

select {

  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;

  font-weight: 500;

  border: none;

  border: solid 1px #ccc;

  background-color: white;

  width: 100%;

  padding: 16px 10px;

  border-radius: 3px;

  font-size: 14px;

  margin-bottom: 10px;

}



select:focus {

  border: solid 1px #000;

}



select {

  background-image: url(./../img/common/form_select.png);

  background-repeat: no-repeat;

  background-position: right center;

  width: 100%;

  min-width: 100px;

  padding: 17px 30px 17px 13px;

}



input[type="submit"] {

  color: white;

  background-color: #a99222;

  border: solid 1px #a99222;

  font-size: 14px;

  width: 360px;

  height: 64px;

  border-radius: 32px;

}



input[type="submit"].back {

  color: #000;

  background-color: white;

  border: solid 1px #ddd;

}



::-webkit-input-placeholder-shown {

  color: #888;

}



:-ms-input-placeholder-shown {

  color: #888;

}



::-ms-input-placeholder-shown {

  color: #888;

}



::placeholder-shown {

  color: #888;

}



::-webkit-input-placeholder {

  color: #888;

}



:-moz-placeholder {

  color: #888;

  opacity: 1;

}



::-moz-placeholder {

  color: #888;

  opacity: 1;

}



:-ms-input-placeholder {

  color: #888;

}



.radio_input,

.checkbox_input {

  display: none;

}



.radio_input + label,

.checkbox_input + label {

  cursor: pointer;

  position: relative;

  display: inline-block;

  padding-left: 40px;

  margin-bottom: 10px;

}



.radio_input + label::before,

.checkbox_input + label::before {

  content: "";

  display: block;

  position: absolute;

  top: 0;

  left: 0;

  width: 22px;

  height: 22px;

  border: 1px solid #ccc;

  border-radius: 50%;

}



.checkbox_input + label::before {

  border-radius: 2px;

}



.radio_input:checked + label::after {

  content: "";

  position: absolute;

  top: 7px;

  left: 7px;

  width: 10px;

  height: 10px;

  background: #000;

  border-radius: 50%;

}



.checkbox_input:checked + label::after {

  content: '';

  position: absolute;

  top: 7px;

  left: 6px;

  width: 10px;

  height: 5px;

  border-left: 2px solid #000;

  border-bottom: 2px solid #000;

  -webkit-transform: rotate(-45deg);

  transform: rotate(-45deg);

}



.radio_input + label.soldout::before {

  content: "";

  background-image: url(./../img/common/radio-soldout.png);

  background-repeat: no-repeat;

  background-size: contain;

  border: none;

  border-radius: 0;

}



.required {

  position: relative;

}



.required::after {

  content: "必須";

  white-space: nowrap;

  line-height: 1;

  font-size: 1.2rem;

  letter-spacing: .06rem;

  color: white;

  background-color: #000;

  border-radius: 2px;

  padding: 2px 5px;

  margin-left: 12px;

}



@media screen and (max-width: 767px) {

  input[type="text"],

  input[type="email"],

  textarea,

  select {

    padding: 10px 10px;

    font-size: 16px !important;

  }

  select {

    background-image: url(./../img/common/form_select.png);

    background-size: 18px auto;

    min-width: 76px;

    padding: 13px 20px 13px 10px;

  }

  input[type="submit"] {

    width: 280px;

    height: 64px;

    border-radius: 32px;

    margin-top: 30px;

  }

  input[type="submit"] + input[type="submit"] {

    margin-top: 20px;

  }

  .radio_input + label,

  .checkbox_input + label {

    padding-left: 40px;

  }

}



/* ==========================

common

========================== */

.list-radio-block .radio_input + label {

  border-top: solid 1px transparent;

  border-right: solid 1px #ccc;

  border-bottom: solid 1px #ccc;

  border-left: solid 1px #ccc;

  border-radius: 3px;

  padding: 16px 10px 16px 58px;

  display: block;

  margin-bottom: 0;

}



.list-radio-block .radio_input + label::before {

  bottom: 0;

  margin: auto;

  left: 20px;

}



.list-radio-block .radio_input + label::after {

  top: 0;

  bottom: 0;

  margin: auto;

  left: 27px;

}



.list-radio-block .radio_input + label.radio-label:hover {

  border: solid 1px #000;

}



.list-radio-block .radio_input + label.radio-label.soldout {

  color: #acacac;

}



.list-radio-block .radio_input + label.radio-label.soldout:hover {

  border: solid 1px #ccc;

}



.list-radio-block .radio_input:first-of-type + label {

  border-top: solid 1px #ccc;

}



.list-radio-block .radio_input:checked + label,

.list-radio-block .radio_input + label:hover {

  background: #fafafa;

}



.button a {

  position: relative;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

  -webkit-box-pack: center;

  -webkit-justify-content: center;

      -ms-flex-pack: center;

          justify-content: center;

  width: 100%;

  text-align: center;

  font-weight: 500;

  line-height: 1;

  color: white;

  background-color: #a99222;

  border: solid 1px #a99222;

  padding: 22px 20px;

  border-radius: 32px;

}



.button a .blank {

  display: inline-block;

  background-repeat: no-repeat;

  background-position: right center;

  background-image: url(./../img/common/glink_blank.png);

  background-size: 10px auto;

  padding-right: 18px;

}



.button.btn-center {

  margin-left: auto;

  margin-right: auto;

}



.button.white a {

  color: #000;

  background-color: white;

  border: solid 1px #ccc;

}



.button.white-site a {

  color: #a99222;

  background-color: white;

  border: solid 1px #a99222;

}



.button.gray a {

  color: #000;

  background-color: #ccc;

  border: solid 1px #ccc;

}



.button.small a {

  font-size: 1.4rem;

  padding: 8px 10px;

  border-radius: 15px;

}



.color-yellow .button a {

  color: #000;

  background-color: #f2e700;

  border: solid 1px #f2e700;

}





.button02 a {

  position: relative;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

  -webkit-box-pack: center;

  -webkit-justify-content: center;

      -ms-flex-pack: center;

          justify-content: center;

  width: 100%;

  text-align: center;

  font-weight: 500;

  line-height: 1.5;

  color: white;

  background-color: #a99222;

  border: solid 1px #a99222;

  padding: 22px 40px;

  border-radius: 60px;

  font-size:18px;

}





@media screen and (max-width: 767px) {

  .button {

    margin-left: auto;

    margin-right: auto;

    width: 86%;

  }

  .button a {

    border-radius: 32px;

    padding: 24px 10px;

  }

  .button + .button {

    margin-top: 20px;

  }



  .button02 {

    margin-left: auto;

    margin-right: auto;

    width: 96%;

  }

  .button02 a {

    border-radius: 60px;

    padding: 24px 10px;

    font-size:14px;

  }

  .button02 + .button {

    margin-top: 20px;

  }



}



@media screen and (min-width: 768px) {

  .button {

    width: 380px;

  }

  .button a:hover {

    color: #a99222;

    background-color: white;

  }

  .button.white a:hover {

    color: #000;

    background-color: #ccc;

  }

  .button.white-site a:hover {

    color: white;

    background-color: #a99222;

  }

  .button.gray a:hover {

    color: #000;

    background-color: white;

  }

  .button + .button {

    margin-top: 30px;

  }

  .button.txt-big a {

    font-size: 150%;

  }

  .color-yellow .button a:hover {

    color: #000;

  }



  .button02 {

    width: 600px;

    margin: 0 auto;

    margin-top:60px;

  }

  .button02 a:hover {

    color: #a99222;

    background-color: white;

  }

  .button02.white a:hover {

    color: #000;

    background-color: #ccc;

  }

  .button02.white-site a:hover {

    color: white;

    background-color: #a99222;

  }

  .button02.gray a:hover {

    color: #000;

    background-color: white;

  }

  .button02 + .button {

    margin-top: 30px;

  }

  .button02.txt-big a {

    font-size: 150%;

  }

  .color-yellow .button02 a:hover {

    color: #000;

  }

}



/**/

.toggle_wrap .toggle_head {

  cursor: pointer;

}



.toggle_wrap .toggle_head span {

  position: relative;

  text-decoration: underline;

  padding-right: 1.5em;

  color: #a99222;

}



.toggle_wrap .toggle_head span::after {

  position: absolute;

  right: 0;

  color: #a99222;

  content: "\f078";

  content: "\f107";

  font-family: "Font Awesome 5 Free";

  font-weight: 900;

}



.toggle_wrap .toggle_head.open span::after {

  content: "\f077";

  content: "\f106";

}



.toggle_wrap .toggle_body {

  display: none;

}



.toggle_wrap .toggle_body.open {

  display: block;

}



@media screen and (min-width: 768px) {

  .toggle_wrap .toggle_head span:hover {

    text-decoration: none;

  }

}



/*h2,h3*/

.heading2 {

  position: relative;

  /*font-weight: bold;*/

  line-height: 1.4;

}



.heading2::after {

  content: "";

  position: absolute;

  left: 0;

  background-color: #a99222;

  height: 100%;

  width: 3px;

}



.color-yellow .heading2::after {

  background-color: #f2e700;

}



/*.heading3 {

  font-weight: bold;

  font-size: 1.8rem;

  line-height: 1.5;

}*/

@media screen and (max-width: 767px) {

  h2.heading2 {

    font-size: 1.7rem;

    padding-left: 14px;

    margin-bottom: 20px;

  }

}



@media screen and (min-width: 768px) {

  h2.heading2 {

    font-size: 2.8rem;

    padding-left: 23px;

    margin-bottom: 30px;

  }

  h2.heading2::after {

    width: 5px;

  }

  /*h3.heading3 {

    font-size: 2.4rem;

  }*/

}



/*table*/

.table table {

  margin-left: auto;

  margin-right: auto;

  width: 100%;

  border-top: solid 1px #d8d8d8;

  border-left: solid 1px #d8d8d8;

}



.table th,

.table td {

  text-align: center;

  vertical-align: top;

  font-size: 1.4rem;

  line-height: 2;

  padding: 10px;

  border-right: solid 1px #d8d8d8;

  border-bottom: solid 1px #d8d8d8;

}



.table th {

  padding-right: 10px;

  width: 100px;

}



.table thead {

  background-color: #f4f4f4;

}



@media screen and (min-width: 768px) {

  .table th,

  .table td {

    font-size: 1.6rem;

    line-height: 1.875;

  }

}



/*LINK*/

.over-color a:hover {

  color: #a99222;

}



a.link-color {

  color: #a99222;

}



a.link-txt {

  color: #a99222;

  text-decoration: underline;

}



a.link-underline {

  text-decoration: underline;

}



a.blank {

  display: inline-block;

  background-repeat: no-repeat;

  background-position: right center;

  background-image: url(./../img/common/glink_blank_color.png);

  background-size: 8px auto;

  padding-right: 16px;

}



@media screen and (min-width: 768px) {

  a.link-txt:hover,

  a.link-underline:hover {

    text-decoration: none;

  }

}



/*LIST*/

ul.list_circle li {

  position: relative;

  padding-left: 2em;

  margin-bottom: 1em;

}



ul.list_circle li::before {

  content: "●";

  position: absolute;

  left: 0;

}



ul.list_note li {

  position: relative;

  padding-left: 2em;

  margin-bottom: 0.7em;

}



ul.list_note li::before {

  content: "※";

  position: absolute;

  left: 0;

}



ol.list_num li {

  padding-left: 2em;

  margin-bottom: 0.7em;

  position: relative;

}



ol.list_num li::before {

  position: absolute;

  left: 0;

}



ol.list_num li:nth-child(1)::before {

  content: "\02460";

}



ol.list_num li:nth-child(2)::before {

  content: "\02461";

}



ol.list_num li:nth-child(3)::before {

  content: "\02462";

}



ol.list_num li:nth-child(4)::before {

  content: "\02463";

}



ol.list_num li:nth-child(5)::before {

  content: "\02464";

}



ol.list_num li:nth-child(6)::before {

  content: "\02465";

}



ol.list_num li:nth-child(7)::before {

  content: "\02466";

}



ol.list_num li:nth-child(8)::before {

  content: "\02467";

}



ol.list_num li:nth-child(9)::before {

  content: "\02468";

}



ol.list_num li:nth-child(10)::before {

  content: "\02469";

}



@media screen and (max-width: 767px) {

  ol.list_num li {

    margin-bottom: 1em;

  }

}



/*申込受付番号*/

.number-wrap {

  font-weight: bold;

}



.number-wrap .txt {

  font-size: 2.2rem;

}



.number-wrap .num {

  font-size: 3.2rem;

  line-height: 1.5;

}



@media screen and (max-width: 767px) {

  .number-wrap .txt {

    font-size: 1.8rem;

  }

  .number-wrap .num {

    font-size: 2.2rem;

  }

}



/* navigation */

.navigation {

  width: 100%;

  overflow: hidden;

}



.navigation ul {

  text-align: center;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: end;

  -webkit-justify-content: flex-end;

      -ms-flex-pack: end;

          justify-content: flex-end;

  -webkit-flex-wrap: wrap;

      -ms-flex-wrap: wrap;

          flex-wrap: wrap;

}



.navigation ul li {

  position: relative;

  white-space: nowrap;

  margin-right: 10px;

}



.navigation ul li a {

  position: relative;

  display: block;

  text-align: center;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

  -webkit-box-pack: center;

  -webkit-justify-content: center;

      -ms-flex-pack: center;

          justify-content: center;

  font-size: 1.4rem;

  line-height: 24px;

  min-width: 24px;

  border-radius: 100%;

  color: #000;

}



.navigation ul li a:hover {

  color: white;

  background-color: #404243;

}



.navigation ul li.current a {

  color: white;

  background-color: #404243;

}



.navigation ul li.next {

  margin-left: 18px;

  margin-right: 0;

}



.navigation ul li.next a {

  text-decoration: underline;

}



.navigation ul li.next a:hover {

  text-decoration: none;

  color: #000;

  background-color: transparent;

}



@media screen and (max-width: 767px) {

  .navigation ul li {

    margin-right: 5px;

  }

  .navigation ul li a {

    font-size: 1.2rem;

    line-height: 24px;

    min-width: 24px;

  }

  .navigation ul li.next {

    margin-left: 10px;

  }

}



.search {

  font-size: 1.4rem;

  min-height: 40px;

}



.search .search-field {

  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", sans-serif;

  font-weight: 500;

  width: calc(100% - 100px);

  height: 40px;

  float: left;

  margin: 0;

  font-size: 1.4rem;

  padding: 0 10px;

  border: solid 1px #ccc;

  border-radius: 2px;

}



.search .search-submit {

  float: right;

  width: 80px;

  height: 40px;

  padding: 0;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: center;

  -webkit-justify-content: center;

      -ms-flex-pack: center;

          justify-content: center;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

  color: white;

  background-color: #404243;

  border: solid 1px #404243;

  border-radius: 20px;

  -webkit-transition: .3s;

  transition: .3s;

}



.search .search-submit:hover {

  color: #404243;

  background-color: white;

}



/* ==========================

/* TOP

========================== */

.list_col3_wrap ul {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: justify;

  -webkit-justify-content: space-between;

      -ms-flex-pack: justify;

          justify-content: space-between;

  text-align: center;

}



.list_col3_wrap ul li {

  width: 320px;

  width: 30.77%;

}



.list_col3_wrap ul li img {

  margin-bottom: .5em;

}



.category-top section:last-of-type {

  margin-bottom: 0;

}



@media screen and (max-width: 767px) {

  .list_col3_wrap ul li {

    width: 30%;

    font-size: 1.2rem;

    line-height: 1.4;

  }

  .list_col3_wrap ul li img {

    margin-bottom: 4px;

  }

  .category-top section {

    margin-bottom: 50px;

  }

}



@media screen and (min-width: 768px) {

  .category-top section {

    margin-bottom: 100px;

  }

}



.schedule_block .wrap {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-flex-wrap: wrap;

      -ms-flex-wrap: wrap;

          flex-wrap: wrap;

  -webkit-box-pack: justify;

  -webkit-justify-content: space-between;

      -ms-flex-pack: justify;

          justify-content: space-between;

  border: solid 1px #ccc;

  border-radius: 3px;

  padding: 20px 5px 5px;

}



.schedule_block .box {

  width: calc(50% - 2px);

}



.schedule_block .box .box_ttl {

  font-weight: bold;

  text-align: center;

  color: #a99222;

  margin-bottom: 13px;

}



.schedule_block .box ul li {

  font-size: 1.5rem;

  padding: 16px 34px;

}



.schedule_block .box ul li:nth-child(odd) {

  background-color: #f4f4f4;

}



@media screen and (max-width: 767px) {

  .schedule_block .wrap .box {

    width: 100%;

  }

  .schedule_block .wrap .box ul li {

    font-size: 1.2rem;

    padding: 10px 20px;

  }

}



.top_sec p {

  margin-bottom: 1em;

}



.top_sec .list_col3_wrap {

  margin-top: 30px;

  margin-bottom: 30px;

}



.top_sec .toggle_wrap {

  margin-bottom: 30px;

}



.top_sec .toggle_wrap .toggle_body {

  font-size: 1.5rem;

  line-height: 2;

}



.top_sec.sec_1 {

  margin-top: 80px;

}



.top_sec.sec_1 .head3_1 {

  font-weight: bold;

  font-size: 2.4rem;

  margin-bottom: 18px;

}



.top_sec.sec_1 .list_col3_wrap {

  margin-top: 30px;

  margin-bottom: 30px;

}



.top_sec.sec_1 .toggle_wrap {

  margin-bottom: 34px;

}



.top_sec.sec_1 .toggle_wrap .toggle_body {

  margin-top: 16px;

}



.top_sec.sec_1 .schedule_block {

  margin-top: 56px;

}



.top_sec.sec_1 .head3_2 {

  font-weight: bold;

  font-size: 2.2rem;

  margin-bottom: 18px;

}



.top_sec.sec_2 ul {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-flex-wrap: wrap;

      -ms-flex-wrap: wrap;

          flex-wrap: wrap;

  -webkit-box-pack: justify;

  -webkit-justify-content: space-between;

      -ms-flex-pack: justify;

          justify-content: space-between;

}



.top_sec.sec_2 ul li {

  background-color: #f4f4f4;

  background-repeat: no-repeat;

  background-position: 24px center;

  background-size: 146px auto;

}



.top_sec.sec_2 ul li:nth-child(1) {

  background-image: url(./../img/top/illust_01.png);

}



.top_sec.sec_2 ul li:nth-child(2) {

  background-image: url(./../img/top/illust_02.png);

}



.top_sec.sec_2 ul li:nth-child(3) {

  background-image: url(./../img/top/illust_03.png);

}



.top_sec.sec_2 ul li:nth-child(4) {

  background-image: url(./../img/top/illust_04.png);

  background-position: 24px bottom;

}



.top_sec.sec_2 ul li .txt {

  font-weight: bold;

}



.top_sec.sec_3 .img_card {

  margin-top: 1.5em;

  margin-bottom: 1.5em;

}



.top_sec.sec_4 .box {

  margin-bottom: 46px;

}



.top_sec.sec_4 h3 {

  font-weight: bold;

  border-bottom: solid 1px #000;

  padding-bottom: 9px;

  margin-bottom: 14px;

  font-size:1.8rem;

}



@media screen and (max-width: 767px) {

  .top_sec.sec_1 {

    margin-top: 40px;

  }

  .top_sec.sec_1 .head3_1 {

    font-size: 1.8rem;

    margin-bottom: 18px;

  }

  .top_sec.sec_1 .list_col3_wrap {

    margin-top: 20px;

    margin-bottom: 20px;

  }

  .top_sec.sec_1 .toggle_wrap {

    margin-bottom: 20px;

  }

  .top_sec.sec_1 .toggle_wrap .toggle_body {

    margin-top: 10px;

  }

  .top_sec.sec_1 .schedule_block {

    margin-top: 30px;

  }

  .top_sec.sec_1 .schedule_block .wrap {

    padding: 12px 5px 5px;

  }

  .top_sec.sec_1 .schedule_block .wrap .box .box_ttl {

    margin-bottom: 10px;

  }

  .top_sec.sec_1 .schedule_block .wrap .box:not(:last-child) {

    margin-bottom: 15px;

  }

  .top_sec.sec_1 .head3_2 {

    font-size: 1.4rem;

    margin-bottom: 10px;

  }

  .top_sec.sec_2 {

    margin-bottom: 50px;

  }

  .top_sec.sec_2 ul li {

    width: 100%;

    padding: 15px 10px 10px 100px;

    margin-bottom: 20px;

    background-position: 15px center;

    background-size: 73px auto;

    font-size: 1.2rem;

  }

  .top_sec.sec_2 ul li .txt {

    font-size: 1.3rem;

    margin-bottom: 4px;

  }

  .top_sec.sec_2 ul li:nth-child(4) {

    background-position: 15px bottom;

  }

  .top_sec.sec_4 .box {

    margin-bottom: 20px;

  }

  .top_sec.sec_4 h3 {

    padding-bottom: 6px;

    margin-bottom: 12px;

  }

}



@media screen and (min-width: 768px) {

  .top_sec.sec_2 ul {

    margin-top: 40px;

  }

  .top_sec.sec_2 ul li {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

    width: 480px;

    min-height: 200px;

    margin-bottom: 40px;

    padding: 20px 10px 10px 190px;

    font-size: 1.4rem;

    line-height: 1.857;

  }

  .top_sec.sec_2 ul li .txt {

    font-size: 1.6rem;

    margin-bottom: 5px;

  }

}



/* ==========================

/* footerPage

========================== */

/* ご利用規約 */

.followpage_sec .box {

  margin-bottom: 3em;

}



.followpage_sec h3 {

  font-weight: bold;

  font-size: 1.8rem;

  /*margin-bottom: 1.4em;*/

}



@media screen and (max-width: 767px) {

  .followpage_sec h3 {

    font-size: 1.4rem;

    margin-bottom: 1em;

  }

}



/* =====================

/* 来館予約カテゴリ 

===================== */

.category-reservation .pagetitle-block {

  border: solid 1px #ccc;

  border-radius: 3px;

  font-size: 1.6rem;

}



.category-reservation .pagetitle-block .pagetitle {

  font-weight: bold;

  font-size: 2.4rem;

  margin-bottom: 18px;

}



.category-reservation .list_col3_wrap {

  margin-top: 30px;

  margin-bottom: 40px;

}



.category-reservation .list_col3_wrap ul li {

  width: 30%;

}



.category-reservation .list_col3_wrap ul figure {

  font-size: 1.2rem;

}



.category-reservation .toggle_wrap {

  margin-bottom: 54px;

}



.category-reservation .toggle_wrap .toggle_body {

  line-height: 2;

  margin-top: 16px;

}



@media screen and (max-width: 767px) {

  .category-reservation .pagetitle-block {

    line-height: 1.7;

    padding: 15px 20px 15px;

    margin-left: 20px;

    margin-right: 20px;

    margin-bottom: 30px;

  }

  .category-reservation .pagetitle-block .pagetitle {

    margin-bottom: 10px;

  }

  .category-reservation .list_col3_wrap {

    margin-top: 18px;

    margin-bottom: 18px;

  }

  .category-reservation .list_col3_wrap ul figure {

    font-size: 1.2rem;

    line-height: 1.4;

  }

  .category-reservation .list_col3_wrap ul figure img {

    margin-bottom: 4px;

  }

  .category-reservation .toggle_wrap {

    margin-bottom: 25px;

  }

  .category-reservation .toggle_wrap .toggle_body {

    margin-top: 10px;

  }

}



@media screen and (min-width: 768px) {

  .category-reservation .pagetitle-block {

    margin-left: auto;

    margin-right: auto;

    width: 1040px;

    padding: 30px 54px 24px;

    font-size: 1.6rem;

    margin-top: 60px;

    margin-bottom: 60px;

  }

  .category-reservation .pagetitle-block p {

    margin-bottom: 10px;

  }

}



/*枚数選択*/

/*

.category-reservation {

  .list_col3_wrap {

    margin-top: 30px;

    margin-bottom: 40px;

    ul {

      li {

        width: 30%;

      }

      figure {

        font-size: 1.2rem;

      }

    }

  }

  .toggle_wrap {

    margin-bottom: 54px;

    .toggle_body {

      line-height: 2;

      margin-top: 16px;

    }

  }

}

@media screen and (max-width: $media-sp) {

  .category-reservation {

    .list_col3_wrap {

      margin-top: 18px;

      margin-bottom: 18px;

      ul {

        figure {

          font-size: .9rem;

          line-height: 1.4;

          img {

            margin-bottom: 4px;

          }

        }

      }

    }

    .toggle_wrap {

      font-size: 1.2rem;

      margin-bottom: 25px;

      .toggle_body {

        font-size: .8rem;

        line-height: 2;

        margin-top: 10px;

      }

    }

  }

}

@media screen and (min-width: $media-pc) {}

*/

/* アイコン付きの見出し */

.head-icon {

  position: relative;

  padding-left: 60px;

  font-size: 2.2rem;

  line-height: 40px;

  padding-bottom: 20px;

  border-bottom: solid 1px #ccc;

  margin-bottom: 40px;

}



.head-icon::after {

  position: absolute;

  left: 0;

  top: 0;

  color: white;

  background-color: #a99222;

  width: 40px;

  height: 40px;

  border-radius: 50%;

  text-align: center;

  content: "\f3ff";

  font-family: "Font Awesome 5 Free";

  font-size: 1.8rem;

}



.head-icon_noborder {

  position: relative;

  padding-left: 60px;

  font-size: 2.2rem;

  line-height: 40px;

}



.head-icon_noborder::after {

  position: absolute;

  left: 0;

  top: 0;

  color: white;

  background-color: #a99222;

  width: 40px;

  height: 40px;

  border-radius: 50%;

  text-align: center;

  content: "\f3ff";

  font-family: "Font Awesome 5 Free";

  font-size: 1.8rem;

}



.icon-ticket::after {

  content: "\f3ff";

  font-weight: 900;

}



.icon-calendar::after {

  content: "\f073";

  font-weight: 400;

}



.icon-clock::after {

  content: "\f017";

  font-weight: 400;

}



.icon-user::after {

  content: "\f007";

  font-weight: 900;

}



.icon-check::after {

  content: "\f00c";

  font-weight: 900;

}



.icon-creditcard::after {

  content: "\f09d";

  font-weight: 900;

}



.icon-walking::after {

  content: "\f554";

  font-weight: 900;

}



.icon-calendar-check::after {

  content: "\f274";

  font-weight: 900;

}



.icon-landmark::after {

  content: "\f66f";

  font-weight: 900;

}



.icon-coins::after {

  content: "\f51e";

  font-weight: 900;

}



.icon-cog::after {

  content: "\f013";

  font-weight: 900;

}



@media screen and (max-width: 767px) {

  .head-icon {

    padding-left: 45px;

    font-size: 1.65rem;

    line-height: 30px;

    padding-bottom: 14px;

    margin-bottom: 14px;

  }

  .head-icon::after {

    width: 30px;

    height: 30px;

    font-size: 1.4rem;

  }

  .head-icon_noborder {

    padding-left: 45px;

    font-size: 1.65rem;

    line-height: 30px;

  }

  .head-icon_noborder::after {

    width: 30px;

    height: 30px;

    font-size: 1.4rem;

  }

}



/* 来館予約カテゴリの「注文内容」 */

.order-block {

  border: solid 1px #ccc;

  border-radius: 3px;

  background-color: #fafafa;

  padding: 24px 40px 14px;

  font-size: 1.4rem;

  line-height: 1.6;

}



.order-block .order-block_title {

  font-weight: bold;

  font-size: 1.6rem;

  margin-bottom: 8px;

}



.order-block dl {

  border-top: solid 1px #ccc;

  padding-top: 10px;

  padding-bottom: 10px;

}



.order-block dl:first-of-type {

  border-top: none;

}



.order-block dl.nodata {

  color: #acacac;

}



.order-block dl dt {

  width: 170px;

  width: 40%;

}



.order-block dl dd {

  width: 220px;

  width: 60%;

}



.order-block dl dd table {

  width: 100%;

}



.order-block dl dd table th, .order-block dl dd table td {

  vertical-align: top;

}



.order-block dl dd table th {

  text-align: left;

}



.order-block dl dd table td {

  text-align: right;

  min-width: 50px;

  white-space: nowrap;

  padding-left: 5px;

}



.order-block dl:last-of-type {

  border-top: solid 1px #404243;

  font-weight: bold;

  margin-top: 25px;

  padding-top: 25px;

}



.order-block dl:last-of-type dd {

  text-align: right;

  font-size: 1.8rem;

}



@media screen and (max-width: 767px) {

  .order-block {

    padding: 20px 20px 20px;

    font-size: 1.4rem;

  }

  .order-block .order-block_title {

    font-size: 1.6rem;

  }

  .order-block dl dt {

    width: 100%;

    font-weight: 700;

    margin-bottom: 4px;

  }

  .order-block dl dd {

    width: 100%;

  }

  .order-block dl:last-of-type {

    margin-top: 20px;

    padding-top: 20px;

  }

  .order-block dl:last-of-type dt {

    font-size: 1.6rem;

  }

  .order-block dl:last-of-type dd {

    font-size: 1.6rem;

  }

}



@media screen and (min-width: 768px) {

  .order-block {

    height: 500px;

  }

  .order-block dl {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .order-block dl dt {

    width: 170px;

  }

  .order-block dl dd {

    width: 220px;

  }

  .order-block dl dd table th, .order-block dl dd table td {

    padding-bottom: 10px;

  }

  .order-block dl dd table tr:last-of-type th, .order-block dl dd table tr:last-of-type td {

    padding-bottom: 0;

  }

  .order-block dl dd table td {

    min-width: 50px;

    padding-left: 10px;

  }

  .order-block dl:last-of-type {

    margin-top: 25px;

    padding-top: 25px;

  }

  .order-block dl:last-of-type dd {

    font-size: 1.8rem;

  }

}



/*

=========================== */

.form_reservation {

  width: 100%;

}



.form_reservation input[type="text"],

.form_reservation input[type="email"],

.form_reservation textarea,

.form_reservation select {

  margin-bottom: 10px;

}



.form_reservation ul.list_radio li {

  margin-bottom: 1em;

}



.form_reservation .required {

  position: relative;

}



.form_reservation .required::after {

  content: "必須";

  white-space: nowrap;

  line-height: 1;

  font-size: 1.2rem;

  letter-spacing: .06rem;

  color: white;

  background-color: #000;

  border-radius: 2px;

  padding: 2px 5px;

  margin-left: 12px;

}



.form_reservation .button {

  margin-left: auto;

  margin-right: auto;

}



.form_reservation dl {

  width: 100%;

  margin-bottom: 28px;

}



.form_reservation dl dt {

  font-weight: 500;

  margin-bottom: 10px;

}



.form_reservation .txt_sub {

  color: #666;

  font-size: 1.2rem;

}



.form_reservation .form_agree {

  margin-top: 40px;

  border-top: solid 1px #ccc;

  padding-top: 40px;

  margin-bottom: 50px;

}



.form_reservation.form_ticket dl {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: justify;

  -webkit-justify-content: space-between;

      -ms-flex-pack: justify;

          justify-content: space-between;

  -webkit-box-align: start;

  -webkit-align-items: flex-start;

      -ms-flex-align: start;

          align-items: flex-start;

  width: 100%;

  margin-bottom: 20px;

}



.form_reservation.form_ticket dl dt {

  padding-top: 12px;

  margin-bottom: 0;

  width: 59%;

}



.form_reservation.form_ticket dl dd {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: end;

  -webkit-justify-content: flex-end;

      -ms-flex-pack: end;

          justify-content: flex-end;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

  width: 40%;

}



.form_reservation.form_ticket select {

  width: 100px;

  margin-left: 40px;

  margin-bottom: 0;

}



.form_reservation.form_check dl {

  margin-bottom: 40px;

}



.form_reservation.form_check dl dt {

  padding-bottom: 10px;

  border-bottom: solid 1px #ccc;

  margin-bottom: 20px;

}



@media screen and (max-width: 767px) {

  .form_reservation dl {

    margin-bottom: 20px;

  }

  .form_reservation dl dt {

    margin-bottom: 10px;

  }

  .form_reservation .button {

    margin-top: 20px;

  }

  .form_reservation .txt_lead {

    margin-bottom: 20px;

  }

  .form_reservation .txt_sub {

    color: #666;

    font-size: 1.2rem;

  }

  .form_reservation .form_agree {

    margin-top: 30px;

    padding-top: 30px;

    margin-bottom: 30px;

  }

  .form_reservation.form_ticket dl {

    font-size: 1.4rem;

  }

  .form_reservation.form_ticket dl dt {

    padding-top: 10px;

    width: 48%;

  }

  .form_reservation.form_ticket dl dd {

    width: 48%;

  }

  .form_reservation.form_ticket select {

    font-size: 1.2rem;

    width: 76px;

    margin-left: 10px;

  }

  .form_reservation.form_ticket .txt_ticket_1 {

    font-size: 1.2rem;

    margin-top: 2px;

  }

  .form_reservation.form_check dl {

    margin-bottom: 20px;

  }

  .form_reservation.form_check dl dt {

    margin-bottom: 10px;

  }

  .form_reservation.form_credit .card-box {

    margin-bottom: 30px;

  }

  .form_reservation.form_credit .card-box .txt1 {

    margin-bottom: 10px;

  }

  .form_reservation.form_credit .card-box .txt2 {

    margin-top: 10px;

  }

  .form_reservation.form_credit .half {

    width: 40%;

    margin-right: 10px;

  }

}



@media screen and (min-width: 768px) {

  .form_reservation input[type="submit"],

  .form_reservation .button {

    margin-top: 30px;

  }

  .form_reservation input[type="submit"] + input[type="submit"],

  .form_reservation .button + .button {

    margin-top: 30px;

  }

  .form_reservation input[type="submit"]:hover {

    color: #a99222;

    background-color: white;

  }

  .form_reservation input[type="submit"].back:hover {

    color: #000;

    background-color: #ddd;

  }

  .form_reservation .txt_lead {

    margin-top: -24px;

    margin-bottom: 30px;

  }

  .form_reservation .txt_sub {

    color: #666;

    font-size: 1.2rem;

  }

  .form_reservation.form_ticket dl {

    margin-bottom: 20px;

  }

  .form_reservation.form_ticket dl dt {

    padding-top: 12px;

    margin-bottom: 0;

  }

  .form_reservation.form_ticket dl dd {

    width: 200px;

  }

  .form_reservation.form_ticket select {

    width: 100px;

    margin-left: 40px;

    margin-left: 30px;

    margin-bottom: 0;

  }

  .form_reservation.form_ticket .txt_ticket_1 {

    font-size: 1.3rem;

    margin-top: 4px;

    margin-bottom: 15px;

  }

  .form_reservation.form_credit .card-box {

    margin-bottom: 38px;

  }

  .form_reservation.form_credit .card-box .txt1 {

    font-size: 1.5rem;

    line-height: 1.8;

    margin-bottom: 24px;

  }

  .form_reservation.form_credit .card-box .txt2 {

    margin-top: 24px;

    font-size: 1.4rem;

    line-height: 1.75;

  }

  .form_reservation.form_credit .half {

    width: 150px;

    margin-right: 15px;

  }

}

@media screen and (min-width: 768px) {
.drawer_nav_menu_sp .noto500.button {
    padding-top: 0;
    width: 160px;
}
.drawer_nav_menu_sp .noto500.button a {
    display: inline !important;
}
}

.drawer_nav_menu_sp .noto500.button {
    width: 210px;
}

.drawer_nav_menu_sp .noto500.button a {
    display: block;
    padding: 4px 26px;
    color: #FFF !important;
}
.drawer_nav_menu_sp .noto500.button a:hover {
	color:#a99222 !important;
}
.drawer_nav_menu_sp .noto500.button .icon-blank, .exhibition_link .icon-blank {
    width: 6px;
    height: 4px;
    margin: -4px 0 0 8px;
    box-sizing: border-box;
    border: 1px solid;
    display: inline-block !important;
    vertical-align: middle;
    position: relative;
}
.drawer_nav_menu_sp .noto500.button .icon-blank::after, .exhibition_link .icon-blank::after {
    content: "";
    display: block;
    width: 6px;
    height: 4px;
    border-bottom: 1px solid;
    border-left: 1px solid;
    box-sizing: border-box;
    position: absolute;
    bottom: -3px;
    left: -3px;
}
.drawer_nav_menu_sp .noto500 .icon-blank, .exhibition_link .icon-blank {
  width: 6px;
  height: 4px;
  margin: -4px 0 0 8px;
  box-sizing: border-box;
  border: 1px solid;
  display: inline-block !important;
  vertical-align: middle;
  position: relative;
}
.drawer_nav_menu_sp .noto500 .icon-blank::after, .exhibition_link .icon-blank::after {
  content: "";
  display: block;
  width: 6px;
  height: 4px;
  border-bottom: 1px solid;
  border-left: 1px solid;
  box-sizing: border-box;
  position: absolute;
  bottom: -3px;
  left: -3px;
}



/* CONTACT

========================== */

/* 

========================== */

/* 

========================== */

/* 

========================== */

/*

#contents {

  margin-left: auto;

  margin-right: auto;

  .side {

    .widget {

      margin-bottom: 20px;

      .widget-title {

        font-weight: bold;

        border-bottom: solid 1px $black;

        padding-bottom: 4px;

        margin-bottom: 6px;

      }

      ul {

        padding-left:2em;

        li {

          list-style-type:disc;

        }

      }

    }

    .screen-reader-text {

      border: 0;

      clip: rect(1px, 1px, 1px, 1px);

      -webkit-clip-path: inset(50%);

      clip-path: inset(50%);

      height: 1px;

      margin: -1px;

      overflow: hidden;

      padding: 0;

      position: absolute !important;

      width: 1px;

      word-wrap: normal !important;

      word-break: normal;

    }

  }

}

*/

/* 

========================== */

/* 

========================== */

/* 

========================== */

/* 

========================== */

/* 

========================== */

/* 

========================== */

/* 

========================== */

/* 来訪日時選択 reservation02.html

========================== */

/* カレンダー */

.calendar-wrap {

  -webkit-box-sizing: border-box;

          box-sizing: border-box;

  width: 100%;

}



.calendar-wrap .calendar-list {

  position: relative;

  overflow-x: hidden;

  width: 100%;

}



.calendar-wrap .calendar-list .icon {

  display: block;

  cursor: pointer;

  position: absolute;

  top: 10px;

  width: 8px;

  height: 8px;

  z-index: 1;

  border-bottom: 1px solid #000;

  border-left: 1px solid #000;

}



.calendar-wrap .calendar-list .icon.prev {

  left: 0;

  -webkit-transform: translate(50%, 50%) rotate(45deg);

          transform: translate(50%, 50%) rotate(45deg);

}



.calendar-wrap .calendar-list .icon.next {

  right: 0;

  -webkit-transform: translate(-50%, 50%) rotate(225deg);

          transform: translate(-50%, 50%) rotate(225deg);

}



.calendar-wrap .calendar-item .month {

  text-align: center;

  margin-bottom: 4px;

}



.calendar-wrap .calendar-item .calendar-atom {

  position: relative;

}



.calendar-wrap .calendar-item .calendar-atom .week {

  -webkit-box-pack: justify;

  -webkit-justify-content: space-between;

      -ms-flex-pack: justify;

          justify-content: space-between;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

}



.calendar-wrap .calendar-item .calendar-atom .week .content {

  text-align: center;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

  -webkit-box-pack: center;

  -webkit-justify-content: center;

      -ms-flex-pack: center;

          justify-content: center;

  width: 100%;

  color: #999;

  height: 62px;

  font-size: 1.6rem;

  width: 100%;

}



.calendar-wrap .calendar-item .calendar-atom .main {

  -webkit-box-sizing: border-box;

          box-sizing: border-box;

  width: 100%;

  border-bottom: 1px solid #ccc;

  border-right: 1px solid #ccc;

}



.calendar-wrap .calendar-item .calendar-atom .main .calendar-week {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: justify;

  -webkit-justify-content: space-between;

      -ms-flex-pack: justify;

          justify-content: space-between;

  border-top: 1px solid #ccc;

}



.calendar-wrap .calendar-item .calendar-atom .main .calendar-week .calendar-day {

  position: relative;

  cursor: pointer;

  text-align: center;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

  -webkit-box-pack: center;

  -webkit-justify-content: center;

      -ms-flex-pack: center;

          justify-content: center;

  width: 100%;

  border-left: 1px solid #ccc;

  font-size: 1.5rem;

  height: 62px;

  -webkit-transition: all .3s;

  transition: all .3s;

  font-weight: 400;

}



.calendar-wrap .calendar-item .calendar-atom .main .calendar-week .calendar-day.normal {

  cursor: pointer;

}



.calendar-wrap .calendar-item .calendar-atom .main .calendar-week .calendar-day.outside {

  color: #acacac;

}



.calendar-wrap .calendar-item .calendar-atom .main .calendar-week .calendar-day.empty {

  pointer-events: none;

  color: #acacac;

}



.calendar-wrap .calendar-item .calendar-atom .main .calendar-week .calendar-day.holiday {

  /*祝日*/

  color: #e2e2e2;

  background-color: #f7f7f7;

}



.calendar-wrap .calendar-item .calendar-atom .main .calendar-week .calendar-day.selected {

  pointer-events: none;

  color: #fff;

  background-color: #000;

}



.calendar-wrap .calendar-item .calendar-atom .main .calendar-week .calendar-day:hover, .calendar-wrap .calendar-item .calendar-atom .main .calendar-week .calendar-day:active {

  color: #fff;

  background-color: #000;

}



.calendar-wrap .caption {

  padding-top: 20px;

}



.calendar-wrap .caption .caption-items {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

}



.calendar-wrap .caption .caption-items .caption-items__item {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

  font-size: 1.4rem;

}



.calendar-wrap .caption .caption-items .caption-items__item.closed:before {

  content: "";

  margin-right: 10px;

  width: 14px;

  height: 14px;

  background-color: #efefef;

}



@media screen and (max-width: 767px) {

  .calendar-wrap .calendar-list .icon {

    top: 6px;

  }

  .calendar-wrap .calendar-item .month {

    margin-bottom: 0;

  }

  .calendar-wrap .calendar-item .calendar-atom .week .content,

  .calendar-wrap .calendar-item .calendar-atom .main .calendar-week .calendar-day {

    font-size: 1.4rem;

    height: 48px;

  }

  .calendar-wrap .caption {

    padding-top: 10px;

  }

  .calendar-wrap .caption .caption-items .caption-items__item {

    font-size: 1.2rem;

  }

  .calendar-wrap .caption .caption-items .caption-items__item.-closed:before {

    margin-right: 10px;

    width: 12px;

    height: 12px;

  }

}



@media screen and (min-width: 768px) {

  /*.calendar-wrap {

    .calendar-item {

      .calendar-atom {

        .main {

          .calendar-week {

            .calendar-day {

              &:hover {

                color: #fff;

                background-color: #000;

              }

            }

          }

        }

      }

    }

  }*/

}



/* 予約完了 reservation06.html

========================== */

.pagetitle-block-fin {

  border: solid 1px #ccc;

  border-radius: 3px;

  text-align: center;

  padding: 34px 40px 24px;

  margin-bottom: 60px;

}



.pagetitle-block-fin .pagetitle {

  font-size: 2.2rem;

  padding-bottom: 30px;

  border-bottom: solid 1px #ccc;

  margin-bottom: 36px;

}



.pagetitle-block-fin .txt {

  font-weight: bold;

  font-size: 2.2rem;

}



.pagetitle-block-fin .txt-num {

  font-weight: bold;

  font-size: 3.2rem;

  line-height: 1.5;

}



@media screen and (max-width: 767px) {

  .pagetitle-block-fin {

    padding: 18px 20px 14px;

    margin-bottom: 30px;

  }

  .pagetitle-block-fin .pagetitle {

    font-size: 1.8rem;

    padding-bottom: 10px;

    margin-bottom: 14px;

  }

  .pagetitle-block-fin .txt {

    font-size: 1.8rem;

  }

  .pagetitle-block-fin .txt-num {

    font-size: 2.2rem;

  }

  .reservation-fin-block1 .txt1 {

    text-align: center;

    color: #ee0022;

    font-weight: bold;

    margin-bottom: 20px;

  }

  .reservation-fin-block1 .txt2 {

    margin-bottom: 20px;

  }

  .reservation-fin-block1 .txt3 {

    text-align: center;

    margin-bottom: 24px;

  }

  .reservation-fin-block1 .button a {

    font-size: 1.2rem;

    padding: 24px 10px;

  }

  .reservation-fin-questionnaire-block {

    margin-top: 40px;

  }

  .reservation-fin-questionnaire-block .box {

    border: solid 1px #ccc;

    padding: 20px 20px 1px;

    margin-bottom: 20px;

  }

  .reservation-fin-questionnaire-block select {

    width: 160px;

  }

  .reservation-fin-questionnaire-block textarea {

    height: 130px;

    margin-bottom: 0;

  }

  .reservation-fin-questionnaire-block .list li,

  .reservation-fin-questionnaire-block .list2 li {

    margin-bottom: 1em;

  }

  .reservation-fin-questionnaire-block .txt1 {

    font-size: 1.2rem;

  }

}



@media screen and (min-width: 768px) {

  .reservation-fin-block1 {

    padding: 0px 40px;

  }

  .reservation-fin-block1 .txt1 {

    text-align: center;

    color: #ee0022;

    font-weight: bold;

    margin-bottom: 46px;

  }

  .reservation-fin-block1 .txt2 {

    margin-bottom: 46px;

  }

  .reservation-fin-block1 .txt3 {

    text-align: center;

    margin-bottom: 24px;

  }

  .reservation-fin-block1 .button {

    margin-left: auto;

    margin-right: auto;

  }

  .reservation-fin-block1 .button a {

    font-size: 1.4rem;

  }

  .reservation-fin-questionnaire-block {

    margin-top: 40px;

  }

  .reservation-fin-questionnaire-block .box {

    border: solid 1px #ccc;

    padding: 40px 40px 10px;

    margin-bottom: 50px;

  }

  .reservation-fin-questionnaire-block select {

    width: 160px;

  }

  .reservation-fin-questionnaire-block textarea {

    height: 130px;

    margin-bottom: 0;

  }

  .reservation-fin-questionnaire-block .list {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-flex-wrap: wrap;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;

    width: 500px;

  }

  .reservation-fin-questionnaire-block .list li {

    min-width: 190px;

    margin-right: 1em;

    margin-bottom: 28px;

  }

  .reservation-fin-questionnaire-block .list2 {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-flex-wrap: wrap;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;

    width: 500px;

  }

  .reservation-fin-questionnaire-block .list2 li {

    margin-right: 50px;

  }

  .reservation-fin-questionnaire-block .txt1 {

    font-size: 1.4rem;

  }

}



/* ==========================

/* お申込内容ご確認・マイページ

========================== */

.category-mypage section > .txt-lead {

  text-align: center;

  font-weight: bold;

}



.category-mypage .btn-cancel {

  text-align: center;

}



.category-mypage .btn-cancel a {

  color: #ee0022;

}



.category-mypage .txt-complete {

  text-align: center;

}



@media screen and (max-width: 767px) {

  .category-mypage section > .txt-lead {

    font-size: 1.6rem;

    margin-bottom: 20px;

  }

  .category-mypage .content-col2-wrap {

    margin-top: 40px;

    margin-bottom: 40px;

  }

  .category-mypage .content-col2-wrap .content-left {

    margin-bottom: 40px;

  }

  .category-mypage .btn-cancel {

    margin-top: 20px;

  }

  .category-mypage .txt-complete {

    font-size: 1.6rem;

    margin-top: 20px;

  }

  .category-mypage .button.logout.small {

    margin-top: 30px;

    width: 140px;

  }

}



@media screen and (min-width: 768px) {

  .category-mypage .button {

    margin-left: auto;

    margin-right: auto;

  }

  .category-mypage section > .txt-lead {

    font-size: 2.2rem;

    margin-bottom: 30px;

  }

  .category-mypage .content-col2-wrap {

    margin-top: 70px;

    margin-bottom: 50px;

  }

  .category-mypage .btn-cancel {

    margin-top: 30px;

  }

  .category-mypage .txt-complete {

    font-size: 2.2rem;

    margin-top: 55px;

  }

  .category-mypage .button.logout.small {

    margin-top: 60px;

    width: 140px;

  }

}



.content-header {

  position: relative;

  text-align: center;

  font-weight: bold;

}



.content-header a {

  position: absolute;

  left: 0;

  display: block;

  width: 50px;

  height: 50px;

}



.content-header a::before {

  position: absolute;

  top: 0;

  bottom: 0;

  left: 0;

  margin: auto;

  content: "\f104";

  font-family: "Font Awesome 5 Free";

  font-weight: 900;

  font-size: 2.4rem;

  line-height: 50px;

}



.content-header a:hover {

  opacity: .6;

}



@media screen and (max-width: 767px) {

  .content-header {

    font-size: 1.8rem;

    margin-top: 20px;

    margin-bottom: 20px;

    padding: 0 30px;

  }

  .content-header a {

    width: 30px;

    height: 30px;

  }

  .content-header a::before {

    font-size: 1.8rem;

    line-height: 30px;

  }

}



@media screen and (min-width: 768px) {

  .content-header {

    font-size: 3.2rem;

    padding: 0 50px;

    margin-top: 35px;

    margin-bottom: 40px;

  }

}



.nav-page ul {

  border-bottom: solid 1px #ccc;

}



.nav-page ul li {

  position: relative;

  font-size: 1.5rem;

  padding-left: 30px;

  line-height: 20px;

}



.nav-page ul li::after {

  position: absolute;

  left: 0;

  top: 0;

  color: white;

  background-color: #a99222;

  width: 20px;

  height: 20px;

  border-radius: 50%;

  text-align: center;

  content: "\f054";

  font-family: "Font Awesome 5 Free";

  font-weight: bold;

  font-size: 1rem;

}



.nav-page ul li a {

  position: relative;

}



.nav-page ul li a::after {

  position: absolute;

  bottom: 0;

  left: 0;

  content: '';

  width: 100%;

  height: 2px;

  background: #a99222;

  -webkit-transform: scale(0, 1);

          transform: scale(0, 1);

  -webkit-transform-origin: right top;

          transform-origin: right top;

  -webkit-transition: -webkit-transform .3s;

  transition: -webkit-transform .3s;

  transition: transform .3s;

  transition: transform .3s, -webkit-transform .3s;

}



.nav-page ul li.current a::after {

  -webkit-transform-origin: left top;

          transform-origin: left top;

  -webkit-transform: scale(1, 1);

          transform: scale(1, 1);

}



@media screen and (max-width: 767px) {

  .nav-page ul li {

    font-size: 1.4rem;

    margin-bottom: 10px;

  }

  .nav-page ul li a::after {

    bottom: -2px;

    height: 1px;

  }

}



@media screen and (min-width: 768px) {

  .nav-page ul {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-flex-wrap: wrap;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;

  }

  .nav-page ul li {

    margin-right: 30px;

  }

  .nav-page a {

    position: relative;

    display: inline-block;

    text-decoration: none;

    text-align: center;

    display: block;

    color: #222;

    font-size: 1.5rem;

    padding-bottom: 8px;

    /*&:hover {

        color: $sitecolor;

      }*/

  }

  .nav-page a::after {

    position: absolute;

    bottom: 0;

    left: 0;

    content: '';

    width: 100%;

    height: 2px;

    background: #a99222;

    -webkit-transform: scale(0, 1);

            transform: scale(0, 1);

    -webkit-transform-origin: right top;

            transform-origin: right top;

    -webkit-transition: -webkit-transform .3s;

    transition: -webkit-transform .3s;

    transition: transform .3s;

    transition: transform .3s, -webkit-transform .3s;

  }

  .nav-page a:hover::after {

    -webkit-transform-origin: left top;

            transform-origin: left top;

    -webkit-transform: scale(1, 1);

            transform: scale(1, 1);

  }

}



/* パンくず */

.breadcrumb {

  font-size: 1.4rem;

  text-align: left;

}



.breadcrumb ul li {

  display: inline-block;

}



.breadcrumb ul li:after {

  content: "　>　";

}



.breadcrumb ul li:last-child:after {

  content: none;

}



.breadcrumb ul li a {

  text-decoration: underline;

  color: #a99222;

}



.breadcrumb ul li a:hover {

  text-decoration: none;

}



@media screen and (max-width: 767px) {

  .breadcrumb {

    font-size: 1.1rem;

  }

}



@media screen and (min-width: 768px) {

  .breadcrumb + .content-header {

    margin-top: 28px;

  }

}



/*マイページトップ*/

.mypage01_sec {

  text-align: center;

}



.mypage01_sec .head1 {

  font-size: 2.2rem;

  line-height: 1.6;

  margin-bottom: 30px;

}



.mypage01_sec .head2 {

  font-size: 1.6rem;

  margin-top: 75px;

  margin-bottom: 14px;

}



@media screen and (max-width: 767px) {

  .mypage01_sec {

    padding-top: 20px;

  }

  .mypage01_sec .head1 {

    font-size: 1.8rem;

    margin-bottom: 15px;

  }

  .mypage01_sec .head2 {

    font-size: 1.4rem;

    margin-top: 40px;

    margin-bottom: 10px;

  }

}



@media screen and (min-width: 768px) {

  .mypage01_sec {

    padding-top: 70px;

  }

}



.ticket-block .box-wrap {

  border-top: solid 1px #ccc;

  border-left: solid 1px #ccc;

}



.ticket-block .box-wrap .box {

  border-right: solid 1px #ccc;

  border-bottom: solid 1px #ccc;

}



.ticket-block .box-wrap .box-left {

  position: relative;

  text-align: center;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-pack: center;

  -webkit-justify-content: center;

      -ms-flex-pack: center;

          justify-content: center;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

  padding: 36px 40px 36px;

}



.ticket-block .box-wrap .box-left a.icon {

  position: absolute;

  left: 20px;

  bottom: 20px;

  width: 40px;

  height: 40px;

  color: white;

  background-color: #a99222;

  border-radius: 50%;

}



.ticket-block .box-wrap .box-left a.icon::after {

  position: absolute;

  left: 0;

  top: 0;

  bottom: 0;

  right: 0;

  text-align: center;

  content: "\f234";

  font-family: "Font Awesome 5 Free";

  font-weight: bold;

  font-size: 1.5rem;

  line-height: 40px;

}



.ticket-block .box-wrap .box-left a.icon:hover {

  opacity: .6;

}



.ticket-block .box-wrap .box-left img {

  display: inline-block;

}



.ticket-block .box-wrap .box-left .txt {

  font-weight: bold;

  font-size: 2.2rem;

}



.ticket-block .box-wrap .box-left .num {

  font-weight: bold;

  font-size: 3.2rem;

}



.ticket-block .box-wrap .box-right {

  padding: 36px 40px 36px;

}



.ticket-block .box-wrap .box-right dl {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  width: 100%;

  margin-top: 13px;

  border-top: solid 1px #ccc;

  padding-top: 13px;

  font-size: 1.4rem;

}



.ticket-block .box-wrap .box-right dl:first-of-type {

  border-top: solid 1px #404243;

}



.ticket-block .box-wrap .box-right dl dt {

  width: 180px;

  padding-right: 1em;

}



.ticket-block .box-wrap .box-right .info-ttl {

  font-weight: bold;

  margin-bottom: 12px;

}



.ticket-block .box-wrap .box-right .txt_note {

  color: #ee0022;

  font-size: 1.2rem;

  margin-top: 13px;

}



.ticket-block .button.small {

  width: 140px;

}



@media screen and (max-width: 767px) {

  .ticket-block + .ticket-block {

    margin-top: 40px;

  }

  .ticket-block .box-wrap .box-left {

    padding: 18px 20px;

  }

  .ticket-block .box-wrap .box-left a.icon {

    left: 20px;

    bottom: 20px;

    width: 40px;

    height: 40px;

  }

  .ticket-block .box-wrap .box-left a.icon::after {

    font-size: 1.5rem;

    line-height: 40px;

  }

  .ticket-block .box-wrap .box-left .txt {

    font-size: 1.6rem;

  }

  .ticket-block .box-wrap .box-left .num {

    font-size: 1.8rem;

  }

  .ticket-block .box-wrap .box-right {

    padding: 18px 20px;

  }

  .ticket-block .box-wrap .box-right dl {

    margin-top: 10px;

    padding-top: 10px;

  }

  .ticket-block .box-wrap .box-right dl dt {

    width: 40%;

  }

  .ticket-block .box-wrap .box-right .info-ttl {

    font-weight: bold;

    margin-bottom: 12px;

  }

  .ticket-block .box-wrap + .button {

    margin-top: 20px;

  }

}



@media screen and (min-width: 768px) {

  .ticket-block + .ticket-block {

    margin-top: 60px;

  }

  .ticket-block .box-wrap {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

  }

  .ticket-block .box-wrap .box-left {

    width: 50%;

  }

  .ticket-block .box-wrap .box-right {

    width: 50%;

  }

  .ticket-block .box-wrap + .button {

    margin-top: 40px;

  }

}



.ticket-block .box-wrap-col3 .box {

  position: relative;

  background-repeat: no-repeat;

  text-align: center;

  border: solid 1px #ccc;

  padding: 88px 20px 20px;

}



.ticket-block .box-wrap-col3 .box img {

  display: inline-block;

}



.ticket-block .box-wrap-col3 .box .box-ttl {

  font-weight: bold;

  margin-bottom: 12px;

}



.ticket-block .box-wrap-col3 .box.box-mail::before, .ticket-block .box-wrap-col3 .box.box-url::before {

  position: absolute;

  margin: auto;

  left: 0;

  right: 0;

  top: 36px;

  content: "\f0e0";

  font-family: "Font Awesome 5 Free";

  font-weight: bold;

  color: #808080;

  font-size: 3rem;

}



.ticket-block .box-wrap-col3 .box.box-url::before {

  content: "\f0c1";

  font-family: "Font Awesome 5 Free";

  font-weight: bold;

}



.ticket-block .box-wrap-col3 .box input[type="text"],

.ticket-block .box-wrap-col3 .box input[type="email"] {

  border: solid 1px #222;

  padding: 14px 10px;

  margin-bottom: 0;

}



.ticket-block .box-wrap-col3 .box .button {

  margin-top: 15px;

}



@media screen and (max-width: 767px) {

  .ticket-block .box-wrap-col3 .box {

    padding: 30px 20px 30px;

    margin-bottom: 20px;

  }

  .ticket-block .box-wrap-col3 .box .button {

    margin-top: 15px;

  }

  .ticket-block .box-wrap-col3 .box.box-mail, .ticket-block .box-wrap-col3 .box.box-url {

    padding-top: 66px;

  }

  .ticket-block .box-wrap-col3 .box.box-mail::before, .ticket-block .box-wrap-col3 .box.box-url::before {

    top: 18px;

    font-size: 3rem;

  }

  .ticket-block .box-wrap-col3 + .button {

    margin-top: 20px;

  }

}



@media screen and (min-width: 768px) {

  .ticket-block .box-wrap-col3 {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

  }

  .ticket-block .box-wrap-col3 .box {

    width: 320px;

    min-height: 300px;

    padding: 88px 20px 20px;

  }

  .ticket-block .box-wrap-col3 .box .button {

    margin-top: 15px;

  }

  .ticket-block .box-wrap-col3 + .button {

    margin-top: 40px;

  }

}



.print_block {

  position: relative;

  text-align: center;

  margin-top: 64px;

  padding-top: 90px;

  padding-bottom: 60px;

  border-bottom: solid 1px #ccc;

  margin-bottom: 60px;

}



.print_block::before {

  position: absolute;

  margin: auto;

  top: 0;

  left: 0;

  right: 0;

  content: "\f02f";

  font-family: "Font Awesome 5 Free";

  font-weight: bold;

  color: #acacac;

  font-size: 5rem;

}



.print_block .txt {

  font-weight: bold;

  font-size: 1.6rem;

  margin-bottom: 25px;

}



.print_block .button {

  width: 240px;

}



@media screen and (max-width: 767px) {

  .print_block {

    margin-top: 40px;

    padding-top: 90px;

    padding-bottom: 30px;

    margin-bottom: 30px;

  }

  .print_block::before {

    font-size: 5rem;

  }

  .print_block .txt {

    font-size: 1.4rem;

    margin-bottom: 20px;

  }

  .print_block .button {

    width: 240px;

  }

}



/* お申込内容ご確認・同行者に分配 mypage02 */

@media screen and (max-width: 767px) {

  .mypage02_sec,

  .mypage02g_sec,

  .mypage02-2_sec,

  .mypage03_2_sec,

  .mypage03_3_sec,

  .mypage03_4_sec,

  .mypage03_5_sec {

    padding-top: 30px;

  }

}



@media screen and (min-width: 768px) {

  .mypage02_sec,

  .mypage02g_sec,

  .mypage02-2_sec,

  .mypage03_2_sec,

  .mypage03_3_sec,

  .mypage03_4_sec,

  .mypage03_5_sec {

    padding-top: 54px;

  }

}



/* mypage02 */

.mypage02g_sec {

  text-align: center;

}



.mypage02g_sec .box {

  border: solid 1px #ccc;

  padding: 54px 20px 50px;

}



.mypage02g_sec .txt2 {

  margin-top: 30px;

  margin-bottom: 42px;

}



.mypage02g_sec .txt3 {

  font-weight: bold;

  color: #ee0022;

  margin-top: 34px;

}



@media screen and (max-width: 767px) {

  .mypage02g_sec .box {

    padding: 25px 20px 20px;

  }

  .mypage02g_sec .box + .button {

    margin-top: 30px;

  }

  .mypage02g_sec .txt2 {

    margin-top: 20px;

    margin-bottom: 20px;

  }

  .mypage02g_sec .txt3 {

    margin-top: 20px;

  }

  .mypage02g_sec.mypage02g_3 {

    padding-top: 40px;

  }

}



@media screen and (min-width: 768px) {

  .mypage02g_sec .box {

    padding: 54px 20px 50px;

  }

  .mypage02g_sec .box + .button {

    margin-top: 60px;

  }

  .mypage02g_sec .txt2 {

    font-size: 2rem;

    margin-top: 30px;

    margin-bottom: 42px;

  }

  .mypage02g_sec .txt3 {

    font-size: 1.8rem;

    margin-top: 34px;

  }

  .mypage02g_sec.mypage02g_3 {

    padding-top: 120px;

  }

}



/* 日時変更・申込取消 */

.mypage03_sec {

  text-align: center;

}



.mypage03_sec .txt1 {

  margin-top: 5px;

  margin-bottom: 55px;

}



.mypage03_sec .txt2 {

  color: #ee0022;

  margin-top: 32px;

}



@media screen and (max-width: 767px) {

  .mypage03_sec .txt1 {

    margin-bottom: 20px;

  }

  .mypage03_sec .txt2 {

    margin-top: 20px;

  }

}



@media screen and (min-width: 768px) {

  .mypage03_sec input {

    display: block;

    margin-left: auto;

    margin-right: auto;

    width: 460px;

  }

}



/* mypage03 */

.mypage03_5_sec {

  text-align: center;

}



.mypage03_5_sec .box {

  border: solid 1px #ccc;

  padding: 54px 20px 50px;

}



@media screen and (max-width: 767px) {

  .mypage03_5_sec .box {

    padding: 25px 20px 20px;

  }

}



/* ==========================

/* 管理画面

========================== */

.category-admin .check {

  margin-top: 10px;

}



.category-admin .check .checkbox_input + label {

  padding-left: 32px;

}



.category-admin .check .checkbox_input + label::before {

  top: 0;

  width: 18px;

  height: 18px;

}



.category-admin .check .checkbox_input:checked + label::after {

  top: 6px;

  left: 5px;

  width: 9px;

  height: 4px;

}



.category-admin .headset {

  text-align: center;

}



.category-admin .headset a {

  position: relative;

  padding-left: 2.7em;

  line-height: 28px;

}



.category-admin .headset a::before {

  position: absolute;

  left: 0;

  content: "\f590";

  font-family: "Font Awesome 5 Free";

  font-weight: 900;

  font-size: 2.6rem;

}



.category-admin .date-ttl {

  text-align: center;

  background-color: #f4f4f4;

  font-size: 2.2rem;

  padding: 8px 10px;

}



.category-admin .date-ttl .date {

  font-size: 2.8rem;

}



.category-admin .admin-search-wrap .button.onday {

  width: 240px;

}



.category-admin .admin-search-wrap .button.onday a {

  font-size: 1.4rem;

  padding: 12px 20px;

  border-radius: 20px;

}



.category-admin .display-block {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -webkit-align-items: center;

      -ms-flex-align: center;

          align-items: center;

}



.category-admin .display-block div {

  white-space: nowrap;

  margin-right: 6px;

}



.category-admin .display-block select {

  background-image: url(./../img/common/form_select_admin.png);

  min-width: 60px;

  padding: 3px 20px 3px 8px;

  margin-bottom: 0;

}



.category-admin .admin-display-wrap {

  font-size: 1.4rem;

  margin-bottom: 20px;

}



.category-admin .admin-table table {

  margin-left: auto;

  margin-right: auto;

  width: 100%;

  border-top: solid 1px #d8d8d8;

  border-left: solid 1px #d8d8d8;

}



.category-admin .admin-table th,

.category-admin .admin-table td {

  text-align: center;

  font-size: 1.4rem;

  border-right: solid 1px #d8d8d8;

  border-bottom: solid 1px #d8d8d8;

  padding: 15px 6px;

}



.category-admin .admin-table th {

  font-weight: bold;

  background-color: #f4f4f4;

  padding: 9px 6px;

}



.category-admin .admin-table thead {

  background-color: #f4f4f4;

}



.category-admin .admin-table a.button {

  position: relative;

  /*display: flex;

      align-items: center;

      justify-content: center;*/

  width: auto;

  text-align: center;

  font-weight: 500;

  line-height: 1;

  color: white;

  background-color: #a99222;

  border: solid 1px #a99222;

  padding: 4px 10px;

  border-radius: 12px;

}



.category-admin .admin-table a.button:hover {

  color: #a99222;

  background-color: white;

}



.category-admin .admin-table a.button.gray {

  color: #000;

  background-color: #ccc;

  border: solid 1px #ccc;

}



.category-admin .admin-table a.button.gray:hover {

  background-color: white;

}



@media screen and (max-width: 767px) {

  .category-admin .breadcrumb {

    margin-bottom: 20px;

  }

  .category-admin .headset {

    margin-top: 20px;

  }

  .category-admin .date-ttl {

    font-size: 1.6rem;

    line-height: 1.6;

    margin-bottom: 30px;

  }

  .category-admin .date-ttl .date {

    font-size: 1.8rem;

  }

  .category-admin .admin-table table {

    margin-bottom: 20px;

  }

  .category-admin .admin-search-wrap {

    margin-bottom: 30px;

  }

  .category-admin .admin-search-wrap .search-block {

    margin-bottom: 20px;

  }

  .category-admin .admin-search-wrap .search-block .search {

    margin-top: 6px;

    width: 100%;

  }

  .category-admin .admin-search-wrap .search-block .search .search-field {

    width: calc(100% - 90px);

  }

  .category-admin .nav-page {

    margin-bottom: 30px;

  }

  .category-admin .admin-display-wrap .display-block {

    margin-bottom: 20px;

  }

}



@media screen and (min-width: 768px) {

  .category-admin .breadcrumb {

    position: absolute;

    top: -40px;

  }

  .category-admin .headset {

    margin-top: 40px;

  }

  .category-admin h2.heading2 {

    font-size: 2.2rem;

  }

  .category-admin .date-ttl {

    margin-bottom: 60px;

  }

  .category-admin .admin-search-wrap {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

    margin-bottom: 60px;

  }

  .category-admin .admin-search-wrap .search-block {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .category-admin .admin-search-wrap .search-block .search {

    width: 420px;

    margin-left: 20px;

  }

  .category-admin .admin-search-wrap .search-block .search .search-field {

    width: 320px;

  }

  .category-admin .nav-page {

    margin-bottom: 60px;

  }

  .category-admin .admin-display-wrap {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

    font-size: 1.4rem;

    margin-bottom: 20px;

  }

  .category-admin .admin-display-wrap .display-block {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .category-admin .admin-display-wrap .display-block div {

    white-space: nowrap;

    margin-right: 6px;

  }

  .category-admin .admin-display-wrap .display-block select {

    background-image: url(./../img/common/form_select_admin.png);

    min-width: 60px;

    padding: 5px 20px 5px 8px;

    margin-bottom: 0;

  }

  .category-admin .admin-display-wrap .display-block,

  .category-admin .admin-display-wrap .navigation {

    width: 50%;

  }

  .category-admin .admin-table + .navigation {

    margin-top: 20px;

  }

}



/* 管理画面ログイン */

.admin_login_sec {

  font-size: 1.4rem;

}



.admin_login_sec .inner {

  margin-left: auto;

  margin-right: auto;

}



.admin_login_sec .headset a {

  padding-left: 2.2em;

  line-height: 20px;

}



.admin_login_sec .headset a::before {

  font-size: 1.8rem;

  line-height: 20px;

}



@media screen and (max-width: 767px) {

  .admin_login_sec .button {

    margin-top: 20px;

    margin-bottom: 20px;

  }

}



@media screen and (min-width: 768px) {

  .admin_login_sec .inner {

    width: 460px;

  }

  .admin_login_sec .button {

    margin-top: 40px;

    margin-bottom: 40px;

  }

}



/* 管理画面トップ */

.admin_top_sec .toggle_wrap a:hover {

  color: #9bb0c5;

}



.admin_top_sec .toggle_wrap .toggle_head {

  display: block;

  border: solid 1px #ccc;

  padding: 40px 40px;

}



.admin_top_sec .toggle_wrap .toggle_head:hover span {

  color: #9bb0c5;

}



.admin_top_sec .toggle_wrap .toggle_head span {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  text-decoration: none;

  color: #000;

}



.admin_top_sec .toggle_wrap .toggle_head span::after {

  color: #000;

  line-height: 40px;

}



.admin_top_sec .toggle_wrap .toggle_body {

  border: solid 1px #ccc;

  border-top: none;

}



.admin_top_sec .toggle_wrap .toggle_body ul li:not(:first-of-type) {

  border-top: solid 1px #ccc;

}



.admin_top_sec .toggle_wrap .toggle_body ul li a {

  position: relative;

  display: block;

  padding: 6px 5px 5px 56px;

}



.admin_top_sec .toggle_wrap .toggle_body ul li a::after {

  position: absolute;

  left: 38px;

  color: #000;

  content: "\f054";

  font-family: "Font Awesome 5 Free";

  font-weight: 900;

  font-size: 1.2rem;

  line-height: 24px;

}



.admin_top_sec .admin-cat-list li a {

  display: block;

  position: relative;

  border: solid 1px #ccc;

  padding: 20px 10px 20px 80px;

  font-size: 2.2rem;

}



.admin_top_sec .admin-cat-list li a:hover {

  color: #9bb0c5;

}



.admin_top_sec .admin-cat-list li a::after {

  position: absolute;

  left: 30px;

  top: 0;

  bottom: 0;

  margin: auto;

  color: white;

  background-color: #a99222;

  width: 26px;

  height: 26px;

  border-radius: 50%;

  text-align: center;

  content: "\f054";

  font-family: "Font Awesome 5 Free";

  font-weight: bold;

  font-size: 1rem;

  line-height: 26px;

}



@media screen and (max-width: 767px) {

  .admin_top_sec .box-wrap .box {

    margin-bottom: 20px;

  }

  .admin_top_sec .toggle_wrap .toggle_head {

    padding: 20px 20px;

  }

  .admin_top_sec .toggle_wrap .toggle_head span::after {

    line-height: 40px;

  }

  .admin_top_sec .toggle_wrap .toggle_body ul li a {

    padding: 6px 5px 5px 36px;

  }

  .admin_top_sec .toggle_wrap .toggle_body ul li a::after {

    left: 20px;

  }

  .admin_top_sec .admin-cat-list li {

    margin-bottom: 10px;

  }

  .admin_top_sec .admin-cat-list li a {

    padding: 10px 10px 10px 50px;

    font-size: 1.6rem;

  }

  .admin_top_sec .admin-cat-list li a::after {

    left: 15px;

    width: 22px;

    height: 22px;

    line-height: 22px;

  }

}



@media screen and (min-width: 768px) {

  .admin_top_sec .box-wrap {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-flex-wrap: wrap;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;

  }

  .admin_top_sec .box-wrap .box {

    width: 500px;

    margin-bottom: 40px;

  }

  .admin_top_sec .admin-cat-list {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-flex-wrap: wrap;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;

  }

  .admin_top_sec .admin-cat-list li {

    width: 500px;

    margin-bottom: 20px;

  }

  .admin_top_sec .admin-cat-list li a {

    font-size: 2.2rem;

  }

  .admin_top_sec .admin-cat-list li a:hover {

    color: #9bb0c5;

  }

}



/* 申込者情報 */

@media screen and (min-width: 768px) {

  .admin01_2_sec .admin-table {

    margin-bottom: 60px;

  }

  .admin01_2_sec .admin-table th {

    width: 20%;

  }

  .admin01_2_sec .admin-table td {

    width: 30%;

  }

}



.form_table {

  /*input[type="submit"] {

    color: white;

    font-weight: bold;

    font-size: 16px;

    letter-spacing: .1rem;

    width: 240px;

    height: 60px;

    border-radius: 30px;

    margin-top: 30px;

  }

  input[type="submit"].form_back {

    color: white;

    background-color: #aaa;

  }*/

}



.form_table input[type="text"],

.form_table input[type="email"],

.form_table textarea {

  border: none;

  border: solid 1px #ccc;

  background-color: white;

  width: 100%;

  padding: 8px;

}



.form_table dl {

  width: 100%;

  margin: auto;

}



.form_table dl dt,

.form_table dl dd {

  border-bottom: solid 1px;

}



.form_table dl dt {

  background-color: #f4f4f4;

}



.form_table .required {

  position: relative;

}



.form_table .required::after {

  content: "必須";

  white-space: nowrap;

  line-height: 1;

  font-size: 1rem;

  color: white;

  background-color: #FBCD4B;

  border-radius: 10px;

  padding: 2px 8px;

  margin-left: 1em;

}



.form_table .checkbox_input {

  display: none;

}



.form_table .checkbox_input + label {

  position: relative;

  display: inline-block;

  padding: 5px 3px 3px 34px;

  cursor: pointer;

  margin-right: 48px;

}



.form_table .checkbox_input + label::before {

  position: absolute;

  content: '';

  top: 50%;

  left: 0;

  width: 17px;

  height: 17px;

  margin-top: -9px;

  background: #fff;

  border: 1px solid #ccc;

}



.form_table .checkbox_input:checked + label::after {

  position: absolute;

  content: '';

  top: 14px;

  left: 3px;

  width: 12px;

  height: 5px;

  border-left: 2px solid red;

  border-bottom: 2px solid red;

  -webkit-transform: rotate(-45deg);

  transform: rotate(-45deg);

}



@media screen and (max-width: 767px) {

  .form_table {

    font-size: 14px;

  }

  .form_table input[type="text"],

  .form_table input[type="email"],

  .form_table textarea {

    padding: 14px 10px;

  }

  .form_table textarea {

    height: 160px;

  }

  .form_table input[type="submit"] {

    margin-top: 30px;

    font-size: 14px;

    height: 50px;

    border-radius: 25px;

  }

  .form_table dl {

    padding: 18px 0;

    border-bottom: solid .5px #A3A599;

  }

  .form_table dl dt {

    margin-bottom: 10px;

  }

  .form_table .checkbox_input + label {

    padding: 4px 4px 4px 27px;

  }

}



@media screen and (min-width: 768px) {

  .form_table {

    width: 800px;

    margin: auto;

    font-size: 16px;

  }

  .form_table input[type="text"],

  .form_table input[type="email"],

  .form_table textarea {

    padding: 14px 12px;

  }

  .form_table textarea {

    height: 150px;

  }

  .form_table input[type="submit"] {

    margin-top: 60px;

    font-size: 16px;

  }

  .form_table dl {

    width: 100%;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

        -ms-flex-pack: justify;

            justify-content: space-between;

    padding: 18px 0;

  }

  .form_table dl dt {

    width: 200px;

    padding-top: 10px;

  }

  .form_table dl dd {

    width: 590px;

  }

  .form_table .required::after {

    top: auto;

    left: calc(100% + 10px);

    font-size: 1.2rem;

    border-radius: 10px;

  }

  .form_table .dl_checkbox ul {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-flex-wrap: wrap;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;

  }

  .form_table .dl_checkbox ul li {

    width: 40%;

    margin-right: 5%;

  }

  .form_table .checkbox_input + label {

    padding: 5px 3px 3px 27px;

  }

  .form_table .form_check_button {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: center;

    -webkit-justify-content: center;

        -ms-flex-pack: center;

            justify-content: center;

  }

  .form_table .form_check_button li {

    margin: 0 20px;

  }

}



/* 

========================== */

.form-table {

  /*input[type="file"].input-file {

    display: none;

  }

  input[type="file"].input-file + label {

    background: #eee;

    padding: 2px 10px;

    border: solid 1px #999;

    border-radius: 4px;

    display: inline-block;

    position: relative;

    margin-bottom: 10px;

    &:hover {

      background: #ccc;

    }

  }

  input[type="file"].input-file + label::after {

    content: "選択されていません";

    height: 20px;

    line-height: 20px;

    position: absolute;

    left: 135px;

    top: calc(50% - 10px);

    white-space: nowrap;

  }

  label.changed::after {

    content: "";

  }

  .filename {

    font-size: 12px;

  }*/

}



.form-table input[type="text"],

.form-table input[type="email"],

.form-table input[type="submit"],

.form-table textarea,

.form-table select {

  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;

  font-weight: 500;

  padding: 12px 10px;

  border-radius: 2px;

  margin-bottom: 10px;

}



.form-table input[type="file"] {

  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;

  font-weight: 500;

  font-size: 14px;

}



.form-table textarea {

  height: 130px;

  margin-bottom: 0;

}



.form-table .place-entry::-webkit-input-placeholder-shown {

  color: #000;

  font-size: 16px;

}



.form-table .place-entry:-ms-input-placeholder-shown {

  color: #000;

  font-size: 16px;

}



.form-table .place-entry::-ms-input-placeholder-shown {

  color: #000;

  font-size: 16px;

}



.form-table .place-entry::placeholder-shown {

  color: #000;

  font-size: 16px;

}



.form-table .place-entry::-webkit-input-placeholder {

  color: #000;

  font-size: 16px;

}



.form-table .place-entry:-moz-placeholder {

  color: #000;

  opacity: 1;

  font-size: 16px;

}



.form-table .place-entry::-moz-placeholder {

  color: #000;

  opacity: 1;

  font-size: 16px;

}



.form-table .place-entry:-ms-input-placeholder {

  color: #000;

  font-size: 16px;

}



.form-table table {

  margin-left: auto;

  margin-right: auto;

  width: 100%;

  border-top: solid 1px #d8d8d8;

  border-left: solid 1px #d8d8d8;

}



.form-table th,

.form-table td {

  text-align: left;

  vertical-align: top;

  font-size: 1.6rem;

  border-right: solid 1px #d8d8d8;

  border-bottom: solid 1px #d8d8d8;

  padding: 20px 20px;

}



.form-table th {

  background-color: #f4f4f4;

}



.form-table td table {

  border: none;

}



.form-table td table tr:not(:last-child) td {

  padding-bottom: 10px;

}



.form-table td table th {

  border: none;

  background-color: transparent;

  width: auto;

  padding: 0;

}



.form-table td table td {

  border: none;

  padding: 0;

}



.form-table td p + p {

  margin-top: 10px;

}



.form-table thead {

  background-color: #f4f4f4;

}



.form-table .required {

  display: block;

}



.form-table .required::after {

  position: absolute;

  right: 0;

  font-size: 1.3rem;

  color: white;

  background-color: #a99222;

  border-radius: 12px;

  padding: 5px 11px;

  margin-left: 0;

}



.form-table input[type="file"] {

  margin-bottom: 10px;

}



.form-table .input-short {

  width: 110px;

}



.form-table .input-fromto {

  position: relative;

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

}



.form-table .input-fromto:after {

  content: "";

  display: inline-block;

  width: 0;

  height: 0;

  border-top: solid 4px transparent;

  border-right: solid 4px transparent;

  border-bottom: solid 4px transparent;

  border-left: solid 4px #000;

  position: absolute;

  top: 20px;

  left: 118px;

}



.form-table .input-fromto input {

  position: relative;

  margin-right: 20px;

  margin-bottom: 0;

}



.form-table .txt-detail {

  background-color: #f4f4f4;

  padding: 5px 20px;

  margin: 20px -20px;

}



.form-table .list-button {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

  margin: 10px 0 10px;

}



.form-table .list-button .button {

  width: auto;

  min-width: 120px;

  margin: 0 10px 0 0;

}



.form-table .list-button .button a {

  padding: 8px 15px;

}



@media screen and (max-width: 767px) {

  .form-table input[type="text"],

  .form-table input[type="email"],

  .form-table input[type="submit"],

  .form-table textarea,

  .form-table select {

    padding: 8px 10px;

  }

  .form-table textarea {

    height: 100px;

  }

  .form-table input[type="file"] {

    font-size: 16px;

  }

  .form-table .list-submit {

    margin-top: 30px;

  }

  .form-table tr, .form-table th, .form-table td {

    display: block;

    width: 100%;

  }

  .form-table th, .form-table td {

    font-size: 1.2rem;

    padding: 15px 20px;

  }

  .form-table td table th, .form-table td table td {

    display: block;

    width: 100%;

  }

  .form-table .required::after {

    font-size: 1.2rem;

    border-radius: 10px;

    padding: 4px 8px;

  }

  .form-table input[type="file"].input-file + label {

    padding: 0px 8px;

    border-radius: 2px;

    margin-bottom: 30px;

  }

  .form-table input[type="file"].input-file + label::after {

    left: 0;

    top: 110%;

  }

  .form-table .input-fromto_wrap:not(:last-child) {

    margin-bottom: 20px;

  }

  .form-table .txt-note {

    font-size: 1rem;

  }

}



@media screen and (min-width: 768px) {

  .form-table .list-submit {

    margin-top: 60px;

  }

  .form-table .list-submit .button {

    margin-left: auto;

    margin-right: auto;

    width: 360px;

  }

  .form-table th {

    width: 280px;

    padding-top: 30px;

  }

  .form-table td table {

    border: none;

  }

  .form-table td table + table {

    margin-top: 10px;

  }

  .form-table td table th, .form-table td table td {

    border: none;

  }

  .form-table td table th {

    width: auto;

    padding-top: 10px;

  }

  .form-table td table tr:not(:last-child) th, .form-table td table tr:not(:last-child) td {

    padding-bottom: 10px;

  }

  .form-table td table.th85 th {

    width: 85px;

  }

  .form-table td table.th145 th {

    width: 145px;

  }

  .form-table .txt-note {

    font-size: 1.2rem;

  }

  .form-table .input-fromto_wrap {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

        -ms-flex-align: center;

            align-items: center;

  }

  .form-table .input-fromto_wrap .entry {

    margin-right: 15px;

  }

  .form-table .input-fromto_wrap .up1 {

    margin-top: -26px;

  }

  .form-table .input-fromto_wrap .txt-note {

    margin-top: 8px;

  }

  .form-table .input-fromto_col2 {

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

  }

  .form-table .input-fromto_col2 .input-fromto_wrap {

    width: 43%;

    margin-right: 20px;

  }

  .form-table .txt3 {

    font-size: 1.2rem;

    margin-top: 8px;

  }

  .form-table .list-button {

    margin: 20px 0 10px;

  }

}

.contact_sec input[type="text"], .contact_sec input[type="submit"], .contact_sec textarea, .contact_sec select{margin-bottom:0;}
.contact_sec .alert-danger {color: #721c24;background-color: #f8d7da;border-color: #f5c6cb;}
.contact_sec .alert {position: relative;padding: 0.75rem 1.25rem;margin-bottom: 1rem;border: 1px solid transparent;border-radius: 0.25rem;}
.contact_sec p {margin-bottom: 1.5em;}
.contact_sec .mTop-50 {margin-top: 50px !important;}
.contact_sec .mBtm-0 {margin-bottom: 0 !important;}
.contact_sec .mTop-30 {margin-top: 30px !important;}
.contact_sec .form__text {padding: 5px 0;}
.contact_sec .title-h2{font-size:34px;font-weight:900;}
.contact_sec .title-h2 {margin: 120px 0 10px;font-size: 34px;line-height: 1.4;text-align: center;}
.contact_sec .title-h2{font-weight: 900;font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;}
.contact_sec .title-h3 {margin-bottom: 10px;font-size: 20px;line-height: 1.4;}
.contact_sec .textCenter {text-align: center !important;}
.contact_sec .box {padding: 25px 30px;margin-bottom: 20px;border: 1px solid #af9620;}
.contact_sec .step {margin: 50px auto;text-align: center;}
.contact_sec .step .on {color: #af9620;}
.contact_sec .step li {width: 30%;max-width: 152px;display: inline-block;vertical-align: top;color: #a8a8a8;position: relative;}
.contact_sec .step li:first-child:before {display: none;}
.contact_sec .step li:before {content: "";display: block;max-width: 152px;width: 100%;border-top: 1px solid #d8d8d8;position: absolute;top: 16px;left: -50%;}
.contact_sec .step .on span {background: #af9620;}
.contact_sec .step span {width: 32px;height: 32px;margin: 0 auto 5px;line-height: 33px;color: #fff;background: #d8d8d8;display: block;border-radius: 50%;font-size: 16px;position: relative;z-index: 1;}
.contact_sec table{width:100%;}
.contact_sec .table01 {margin-bottom: 50px;border-top: 1px solid #d8d8d8;border-left: 1px solid #d8d8d8;}
.contact_sec .table01>tbody>tr>th {width: 29%;padding: 8px 53px 8px 20px;background: #f7f5ed;box-sizing: border-box;}
.contact_sec .table01>tbody>tr>th, .contact_sec .table01>tbody>tr>td {border-bottom: 1px solid #d8d8d8;border-right: 1px solid #d8d8d8;}
.contact_sec table th {white-space: normal !important;}
.contact_sec table th {white-space: nowrap;}
.contact_sec table th, .contact_sec table td {vertical-align: middle;text-align: left;}
.contact_sec .table01>tbody>tr>th>div {position: relative;}
.contact_sec .table01>tbody>tr .icon-required {width: 34px;height: 19px;line-height: 20px;display: block;font-size: 12px;text-align: center;background: #af9620;border-radius: 2px;color: #fff;position: absolute;top: 0;bottom: 0;right: -44px;margin: auto;}
.contact_sec .table01>tbody>tr>td {padding: 15px 20px;box-sizing: border-box;}
.contact_sec table td {word-break: break-all;}
.contact_sec .form__radio input {display: none;}
.contact_sec .category-01 label {margin: 0 1.5em 10px 0;}.contact_sec .category-00 label{ margin: 0 1.5em 0 0;}
.contact_sec .form__radio label {min-height: 25px;padding-left: 30px;display: inline-block;vertical-align: top;position: relative;}
.contact_sec .form__radio label:before {width: 18px;height: 18px;border: 1px solid #cbcbcb;background: #fff;top: 2px;left: 0;}
.contact_sec .form__radio label:before, .contact_sec .form__radio label:after {content: "";display: block;position: absolute;border-radius: 50%;}
.contact_sec .form__radio label:after {width: 12px;height: 12px;background: #af9620;top: 6px;left: 4px;transform: scale(0);}
.contact_sec .form__radio input:checked+label:after {transform: scale(1);}
.contact_sec .form__radio label:after {-webkit-transition: all 600ms cubic-bezier(0.19, 1, 0.22, 1);transition: all 600ms cubic-bezier(0.19, 1, 0.22, 1);}
.contact_sec .form__text input, .contact_sec .form__text textarea {width: 100%;padding: 10px 9px;border-radius: 2px;box-sizing: border-box;border: 1px solid #cbcbcb;background: #fff;}
.contact_sec .category-02 {width: 100%;margin-bottom: 10px;display: table;}
.contact_sec .category-02 .form__radio {width: 95px;}
.contact_sec .category-02>div {display: table-cell;}
.contact_sec .attentionMark {padding-left: 1em;text-indent: -1em;display: block;font-size: 12px;color: #e60012;}
.contact_sec .textBlack {color: #010101 !important;}
.contact_sec .attentionMark a{text-indent: 0;}
.contact_sec .name {width: 100%;display: table;}
.contact_sec .name dd {padding-right: 2em;}
.contact_sec .name dt {width: 35px;}
.contact_sec .name dt, .contact_sec .name dd {display: table-cell;}
.contact_sec .form__text textarea.row4 {height: 135px;}
.contact_sec .form__text textarea.row6 {height: 200px;}
.contact_sec .form__text textarea {height: 0;resize: vertical !important;display: block;}
.contact_sec .agree {margin-bottom: -10px;text-align: center;}
.contact_sec .form__check input {display: none;}
.contact_sec .form__check label {min-height: 25px;padding-left: 30px;box-sizing: border-box;display: inline-block;vertical-align: top;position: relative;}
.contact_sec .form__check label:before {width: 18px;height: 18px;border: 1px solid #cbcbcb;border-radius: 2px;background: #fff;top: 3px;left: 0;}
.contact_sec .form__check label:before, .contact_sec .form__check label:after {content: "";display: block;position: absolute;}
.contact_sec .form__check input:checked+label:after {opacity: 1;}
.contact_sec .form__check label:after {width: 4px;height: 8px;border-bottom: 2px solid #af9620;border-right: 2px solid #af9620;transform: rotate(45deg);top: 6px;left: 7px;opacity: 0;}
.contact_sec .btn {margin: 40px 0 0;font-size: 0;text-align: center;}
.contact_sec .btn .size01 {max-width: 340px;height: 64px;line-height: 64px;font-size: 18px;border-width: 2px;padding:0;}
.contact_sec .btn input, .contact_sec .btn a, .contact_sec .btn span {max-width: 310px;width: 100%;height: 38px;margin: 0 10px 10px;line-height: 39px;font-size: 14px;background: #af9620;color: #fff;display: inline-block;vertical-align: top;border: 1px solid #af9620;border-radius: 3px;box-sizing: border-box;text-align: center;cursor: pointer;}
.contact_sec .btn .off {background: #d8d8d8;color: #fff;border-color: #d8d8d8;cursor: default;}
.contact_sec .btn .gray {background: #f4f4f4;color: #222;border-color: #f4f4f4;}
.contact_sec .completeArea {margin: 70px 0 120px;text-align: center;}
.contact_sec .sp-block {display: none;}
.contact_sec a:link, .contact_sec a:visited{ color:#af9620; }.contact_sec a:hover, .contact_sec a:active{color:#756100;}
@media screen and (max-width: 800px){
.contact_sec .sp-none {display: none;}
.contact_sec .sp-block {display: block;}
.contact_sec .title-h2{font-size:26px;}
.contact_sec .table01>tbody>tr>th {padding: 8px 53px 8px 15px;}
.contact_sec .table01>tbody>tr>th, .contact_sec .table01>tbody>tr>td {width: 100%;display: block;}
.contact_sec .category-00 label{ margin-bottom:10px; }
}

.followpage_sec {margin-top:40px;}
.followpage_sec h2:after{display:none;}
.followpage_sec .box {margin-bottom: 3em;line-height: 2.57;}
.followpage_sec h2.heading2 {margin-bottom: 18px;padding-left:0;}
.followpage_sec .heading2 {position: relative;font-weight: 600;line-height: 1.4;font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;color: #333333;}
.followpage_sec .box p{ margin-bottom:15px;}.box a{ color:#a99222;}
.followpage_sec .box ol{ list-style: decimal;padding-left:20px;margin-bottom:15px;}.box ol li{padding-left:1em;}
@media screen and (min-width: 768px){
.followpage_sec h2.heading2 {font-size: 2.2rem;padding-bottom: 2px; margin-bottom: 18px;}
}

.top_sec.sec_4 .box ol{list-style: decimal;padding-left:20px;margin-bottom:15px;}.box ol li{padding-left:1em;}
.top_sec.sec_4 .box ol li{margin-bottom:0.7em;}
.top_sec.sec_5 ul li, .top_sec.sec_6 ul li, .top_sec.sec_7 ul li{line-height: 1.625;}
.category-top.category-intro h2:after{width:10px;}
@media screen and (min-width: 768px){
.category-top.category-intro h2:after{top:3px; height:30px;}
}
/* 

========================== */

/* 

========================== */

/* 

========================== */

/* 

========================== */

/*# sourceMappingURL=style.css.map */