@charset "UTF-8";
/* ---------------------
- common setting
- layout
- icon
- form select radio checkbox button
- decoration
--------------------- */
/* ==============================
- less setting
============================== */
.box-sizing {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.font-icon {
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
}
.float-clear {
  clear: both;
  content: '';
  display: block;
}
/* flex関連
---------------------*/
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.flex-direction_column {
  -webkit-box-direction: vertical;
  -webkit-box-orient: vertical;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}
.justify-content_space-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.justify-content_center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.justify-content_flex-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
.flex-wrap_wrap {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.align-items_start {
  -webkit-box-align: start;
  -ms-align-items: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
      align-items: start;
}
.align-items_center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
.align-items_flex-end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}
.align-self_center {
  -ms-flex-item-align: center;
  -webkit-align-self: center;
  align-self: center;
}
.align-self_flex-end {
  -ms-flex-item-align: end;
  -webkit-align-self: flex-end;
  align-self: flex-end;
}
/* color
---------------------*/
/* site
---------------------*/
/* font-size
---------------------*/
/* site-width
---------------------*/
/* gradient
---------------------*/
.backgara-white {
  background-image: -webkit-gradient(linear, left bottom, left top, from(#E6E6E6), to(white));
  background-image: -webkit-linear-gradient(bottom, #E6E6E6 0%, white 100%);
  background-image: -o-linear-gradient(bottom, #E6E6E6 0%, white 100%);
  background-image: linear-gradient(to top, #E6E6E6 0%, white 100%);
}
.backgara-white:hover {
  background-image: -webkit-gradient(linear, left bottom, left top, from(white), to(#E6E6E6));
  background-image: -webkit-linear-gradient(bottom, white 0%, #E6E6E6 100%);
  background-image: -o-linear-gradient(bottom, white 0%, #E6E6E6 100%);
  background-image: linear-gradient(to top, white 0%, #E6E6E6 100%);
}
.backgara-base {
  background: #d66060;
  background: -webkit-linear-gradient(top, #d66060 0%, #d91b20 50%, #d80003 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#d66060), color-stop(50%, #d91b20), to(#d80003));
  background: -o-linear-gradient(top, #d66060 0%, #d91b20 50%, #d80003 100%);
  background: linear-gradient(to bottom, #d66060 0%, #d91b20 50%, #d80003 100%);
}
.backgara-base:hover {
  background: #d80003;
  background: -webkit-linear-gradient(top, #d80003 0%, #d91b20 50%, #d66060 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#d80003), color-stop(50%, #d91b20), to(#d66060));
  background: -o-linear-gradient(top, #d80003 0%, #d91b20 50%, #d66060 100%);
  background: linear-gradient(to bottom, #d80003 0%, #d91b20 50%, #d66060 100%);
}
.backgara-yellow {
  background: #fddb57;
  background: -webkit-linear-gradient(top, #fddb57 0%, #fdb032 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#fddb57), to(#fdb032));
  background: -o-linear-gradient(top, #fddb57 0%, #fdb032 100%);
  background: linear-gradient(to bottom, #fddb57 0%, #fdb032 100%);
}
.backgara-yellow:hover {
  background: #fdb032;
  background: -webkit-linear-gradient(top, #fdb032 0%, #fddb57 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#fdb032), to(#fddb57));
  background: -o-linear-gradient(top, #fdb032 0%, #fddb57 100%);
  background: linear-gradient(to bottom, #fdb032 0%, #fddb57 100%);
}
.backgara-gray {
  background: #636363;
  background: -webkit-linear-gradient(top, #636363 0%, #4a4a4a 50%, #333333 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#636363), color-stop(50%, #4a4a4a), to(#333333));
  background: -o-linear-gradient(top, #636363 0%, #4a4a4a 50%, #333333 100%);
  background: linear-gradient(to bottom, #636363 0%, #4a4a4a 50%, #333333 100%);
}
.backgara-gray:hover {
  background: #333333;
  background: -webkit-linear-gradient(top, #333333 0%, #333333 0%, #4a4a4a 50%, #636363 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#333333), color-stop(0%, #333333), color-stop(50%, #4a4a4a), to(#636363));
  background: -o-linear-gradient(top, #333333 0%, #333333 0%, #4a4a4a 50%, #636363 100%);
  background: linear-gradient(to bottom, #333333 0%, #333333 0%, #4a4a4a 50%, #636363 100%);
}
/* hight
---------------------*/
/* title design
---------------------*/
@media screen and (max-width: 768px) {
  .title-design {
    background: #4A4A4A;
    padding: 10px;
    color: #fff;
    position: relative;
    margin-bottom: 1px;
    font-size: 15px;
  }
  .title-design:after {
    position: absolute;
    top: 5px;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    right: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 5px;
    height: 5px;
    border: 5px solid transparent;
    border-top: 5px solid #fff;
  }
}
@media screen and (min-width: 769px) {
  .title-design {
    border-bottom: 1px solid;
    padding: 4px 0;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 10px;
    color: #D91B20;
  }
  .title-design::before {
    content: "　";
    background: #D91B20;
    display: inline-block;
    width: 3px;
    margin-right: 5px;
  }
}
.translateY50 {
  top: 50%;
  -o-transform: translateY(-50%);
     transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.translateYX50 {
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
   -o-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
}
.translateX50 {
  left: 50%;
  -o-transform: translatex(-50%);
     transform: translatex(-50%);
  -webkit-transform: translatex(-50%);
  -ms-transform: translatex(-50%);
}
/* 記号
---------------------*/
.S_Paren_S {
  content: "(";
}
.S_Paren_L {
  content: ")";
}
.S_Emphasis_S {
  content: "【";
}
.S_Emphasis_L {
  content: "】";
}
.S_Colon {
  content: "：";
}
.S_Arrow {
  content: "⇒";
}
.S_Attention {
  content: "※";
}
.S_Reading {
  content: "、";
}
.Arrow {
  text-align: center;
}
.Arrow:before {
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
  padding: 0;
  content: '\f0d7';
  font-size: 30px;
}
/* =====================
- common setting
===================== */
/* HTML5
---------------------*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
/* body
---------------------*/
body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  color: #555;
  font-size: 13px;
}
/* h1～h5
---------------------*/
h1,
h2,
h3,
h4,
h5 {
  margin: 0 auto;
  font-weight: normal;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
h1 {
  font-size: 11px;
}
/* img
---------------------*/
img {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
}
/* ol ul
---------------------*/
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
/* table
---------------------*/
table {
  border-collapse: collapse;
  border-spacing: 0;
}
th,
td {
  padding: 5px;
  text-align: left;
  border: 2px solid #E6E5E3;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
/* dl dt dd
---------------------*/
dl,
dt,
dd {
  margin: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
/* form
---------------------*/
input,
button,
textarea,
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #555;
}
select::-ms-expand {
  display: none;
}
*:focus,
input:focus,
textarea:focus,
select:focus {
  outline: revert;
}
/* p
---------------------*/
p {
  margin: 0;
}
a,
div,
span {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
iframe {
  border: 2px solid #E6E5E3;
  min-width: 50px;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  margin-bottom: 10px;
  padding: 5px;
  background-color: transparent;
}
iframe:last-of-type {
  margin-bottom: 0;
}
/* =====================
- layout
===================== */
/* Wrap
---------------------*/
.Wrap {
  width: 100%;
  margin: 0 auto;
}
.disp-none {
  display: none !important;
}
/* #header
---------------------*/
#header {
  width: 100%;
  margin: 0 auto;
}
/* Page
---------------------*/
[class$="Page"] {
  width: 100%;
  margin: 0 auto;
}
[class$="Page"]:after {
  clear: both;
  content: '';
  display: block;
}
@media screen and (max-width: 768px) {
  [class$="Page"] {
    padding: 0 10px;
  }
}
@media screen and (min-width: 769px) {
  [class$="Page"] {
    width: 980px;
  }
}
/* Contents
---------------------*/
.Contents {
  width: 100%;
  margin: 0 auto;
}
/* パンくずリスト
---------------------*/
.Breadcrumb {
  width: 100%;
  margin: 10px auto;
}
.Breadcrumb ol {
  list-style: none;
}
.Breadcrumb ol li {
  display: inline-block;
}
.Breadcrumb ol li::before {
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
  content: "\f054";
  font-size: 11px;
  padding: 0 4px;
}
.Breadcrumb ol li:first-of-type::before {
  content: none;
}
.Breadcrumb ol li a {
  text-decoration: none;
  color: #555;
}
@media screen and (max-width: 768px) {
  .Breadcrumb {
    display: none;
  }
}
/* Step
---------------------*/
.Step {
  /* 画面サイズが768以上 */
  /* 画面サイズが767以下 */
}
.Step ol {
  display: table;
  border: 2px solid #E6E5E3;
}
.Step ol li {
  display: table-cell;
  vertical-align: middle;
  border-right: 2px solid #E6E5E3;
  text-align: center;
}
.Step ol li.current {
  background: #D91B20;
  color: #fff;
}
.Step ol li:last-child {
  border-right: none;
}
@media screen and (min-width: 769px) {
  .Step {
    margin: 20px 0 0;
  }
  .Step ol li {
    padding: 10px;
    width: 196px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .Step ol li span {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .Step {
    margin: 5px 0 0;
  }
  .Step ol li {
    padding: 5px 3px;
    width: 21%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .Step ol li span {
    font-size: 11px;
  }
  .Step ol li span:first-child {
    display: none;
  }
}
/* Main
---------------------*/
.Main {
  width: 100%;
  margin: 0 auto;
}
/* TourInfo.html
---------------------*/
.TourInfo {
  border: 2px solid #E6E5E3;
}
@media screen and (max-width: 768px) {
  .TourInfo {
    padding: 5px;
    margin: 5px 0 10px;
  }
}
@media screen and (min-width: 769px) {
  .TourInfo {
    padding: 10px;
    margin: 20px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .TourInfo .TitleBox {
    padding: 0 0 10px;
  }
}
@media screen and (min-width: 769px) {
  .TourInfo .TitleBox {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    width: 80%;
    width: -webkit-calc(100% - 260px);
    width: calc(100% - 260px);
  }
}
.TourInfo .TitleBox .TourTitle {
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .TourInfo .TitleBox .TourTitle {
    font-size: 13px;
    margin: 0 0 5px;
    line-height: 17px;
  }
}
@media screen and (min-width: 769px) {
  .TourInfo .TitleBox .TourTitle {
    font-size: 16px;
    padding: 0 0 5px;
    line-height: 22px;
  }
}
.TourInfo .TitleBox .TourSubTitle {
  color: #777777;
}
@media screen and (min-width: 769px) {
  .TourInfo .TitleBox .TourSubTitle {
    line-height: 19px;
  }
}
@media screen and (max-width: 768px) {
  .TourInfo .TitleBox .TourSubTitle {
    font-size: 10px;
    line-height: 13px;
  }
}
@media screen and (min-width: 769px) {
  .TourInfo .TermBox {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    width: 100%;
    padding: 0 0 7px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .TourInfo .TermBox .TourCourseNu {
    display: table;
    width: 100%;
    border: 1px solid #4A4A4A;
  }
}
@media screen and (min-width: 769px) {
  .TourInfo .TermBox .TourCourseNu {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    display: inline-table;
    background: #E6E5E3;
    padding: 5px;
  }
}
.TourInfo .TermBox .TourCourseNu dt,
.TourInfo .TermBox .TourCourseNu dd {
  display: table-cell;
  padding: 5px;
  text-align: center;
  letter-spacing: 1px;
}
@media screen and (max-width: 768px) {
  .TourInfo .TermBox .TourCourseNu dt {
    border-right: 1px solid #4A4A4A;
    background: #4A4A4A;
    color: #fff;
  }
}
@media screen and (min-width: 769px) {
  .TourInfo .TermBox .TourCourseNu dt {
    padding-right: 10px;
  }
}
@media screen and (max-width: 768px) {
  .TourInfo .TermBox .Tourterm {
    width: 100%;
    padding: 10px 0;
  }
}
@media screen and (min-width: 769px) {
  .TourInfo .TermBox .Tourterm {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    -ms-flex-item-align: center;
    -webkit-align-self: center;
    align-self: center;
  }
}
.TourInfo .TermBox .Tourterm dt,
.TourInfo .TermBox .Tourterm dd {
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .TourInfo .TermBox .Tourterm dt,
  .TourInfo .TermBox .Tourterm dd {
    font-size: 11px;
  }
}
.TourInfo .TermBox .Tourterm dd {
  letter-spacing: 1px;
}
.TourInfo .TermBox .Tourterm dd span {
  display: inline-block;
}
.TourInfo .TermBox .Tourterm dd span:last-child {
  padding: 0 0 0 5px;
}
@media screen and (max-width: 768px) {
  .TourInfo .NowPrice {
    width: 100%;
    padding: 5px 0 0;
  }
}
@media screen and (min-width: 769px) {
  .TourInfo .NowPrice {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
    -ms-flex-item-align: end;
    -webkit-align-self: flex-end;
    align-self: flex-end;
  }
}
.TourInfo .NowPrice dl dt {
  padding: 0 0 5px;
  padding-right: 10px;
  display: inline-block;
}
.TourInfo .NowPrice dl dd {
  letter-spacing: 2px;
  color: #D91B20;
  display: inline-block;
}
.TourInfo .NowPrice dl dd .Price {
  font-size: 20px;
  font-weight: bold;
}
.TourInfo .NowPrice dl dd .Unit {
  font-size: 11px;
}
@media screen and (max-width: 768px) {
  .TourInfo .NowPrice .PriceInfo {
    font-size: 12px;
  }
}
@media screen and (min-width: 769px) {
  .TourInfo .NowPrice .PriceInfo {
    text-align: right;
  }
}
/* Side
---------------------*/
.Side {
  width: 100%;
  margin: 0 auto 10px;
}
/* #footer
---------------------*/
#footer {
  width: 100%;
  margin: 0 auto;
}
/* .PageTop
---------------------*/
.PageTop {
  display: inline-table;
  background-color: #4A4A4A;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 999;
}
.PageTop a {
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
  font-size: 16px;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  padding: 4px;
}
.PageTop a:before {
  content: "\f077";
  color: #FFF;
}
.PageTop a:link {
  text-decoration: none;
}
/* 入力エラー
---------------------*/
#error {
  margin: 0;
}
#error ul {
  background: #ffe3e3;
}
#error li {
  color: #f00;
  padding: 0 10px 5px;
}
@media screen and (min-width: 769px) {
  #error li span {
    display: inline-block;
  }
}
@media screen and (max-width: 768px) {
  #error li span {
    display: block;
  }
}
#error li .Participant:before {
  content: "【";
}
#error li .Participant:after {
  content: "】";
}
@media screen and (max-width: 768px) {
  #error li .Participant {
    margin: 0 0 3px;
  }
}
@media screen and (min-width: 769px) {
  #error li .Info {
    max-width: 90%;
    vertical-align: top;
  }
}
#error li:first-child {
  padding-top: 10px;
}
#error li:last-child {
  padding-bottom: 10px;
}
@media screen and (max-width: 768px) {
  #error li:last-child {
    margin: 0 0 10px;
  }
}
@media screen and (min-width: 769px) {
  #error li:last-child {
    margin: 0 0 20px;
  }
}
/* 予約に関わるコメント
---------------------*/
.AllPageCome {
  line-height: 17px;
}
@media screen and (min-width: 769px) {
  .AllPageCome {
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 768px) {
  .AllPageCome {
    margin: 0 0 10px;
  }
}
/* ルールコメント
---------------------*/
.RuleCome {
  line-height: 17px;
}
@media screen and (min-width: 769px) {
  .SpDisOnly {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .PcDisOnly {
    display: none;
  }
}
/* =====================
- icon
===================== */
.PlusSquareIcon {
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
}
.PlusSquareIcon:before {
  content: "\f196";
  color: #D91B20;
}
.PlusIcon {
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
}
.PlusIcon:before {
  content: "\f067";
  color: #D91B20;
}
.ClearIcon {
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
  cursor: pointer;
}
.ClearIcon:before {
  content: "\f2d3";
  color: #4A4A4A;
}
.PushIcon {
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
  font-size: 16px;
}
/* =====================
- form select radio checkbox button textarea
===================== */
.CustomSelect {
  border: 2px solid #E6E5E3;
  min-width: 50px;
  width: 100%;
  display: inline-block;
  position: relative;
  margin-bottom: 5px;
  background: #fff;
}
.CustomSelect select {
  border: none;
  padding: 5px 32px 5px 5px;
  width: 100%;
  height: 34px;
}
.CustomSelect::before {
  position: absolute;
  top: 30%;
  right: 10px;
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
  padding: 0;
  content: "\f078";
  pointer-events: none;
}
.CustomSelect:last-of-type {
  margin-bottom: 0;
}
.CustomCheckobx {
  display: inline-block;
  width: 100%;
}
.CustomCheckobx input[type="checkbox"] {
  display: none;
}
.CustomCheckobx label {
  display: inline-block;
  vertical-align: middle;
  padding: 5px;
  margin: 1.5px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.CustomCheckobx input:checked + label {
  background: #D91B20;
  border-color: #D91B20;
  color: #fff;
}
.CustomRadioBtn {
  display: inline-block;
}
.CustomRadioBtn label input[type="radio"] {
  display: none;
}
.CustomRadioBtn label input[type="radio"] + .PushIcon:before {
  content: "\f10c";
  color: #555;
}
.CustomRadioBtn label input[type="radio"]:checked + .PushIcon:before {
  content: "\f192";
  color: #555;
}
.CustomCheckBtn {
  display: inline-block;
}
.CustomCheckBtn label input[type="checkbox"] {
  display: none;
}
.CustomCheckBtn label input[type="checkbox"] + .PushIcon:before {
  content: "\f096";
  color: #555;
}
.CustomCheckBtn label input[type="checkbox"]:checked + .PushIcon:before {
  content: "\f14a";
  color: #555;
}
.CustomText {
  border: 2px solid #E6E5E3;
  min-width: 50px;
  width: 100%;
  display: inline-block;
  position: relative;
  margin-bottom: 10px;
}
.CustomText input[type="text"] {
  border: none;
  padding: 5px;
  width: 100%;
  height: 34px;
}
.CustomText:last-of-type {
  margin-bottom: 0;
}
.CustomMail {
  border: 2px solid #E6E5E3;
  min-width: 50px;
  width: 100%;
  display: inline-block;
  position: relative;
  margin-bottom: 10px;
}
.CustomMail input[type="mail"],
.CustomMail input[type="email"] {
  border: none;
  padding: 5px;
  width: 100%;
  /*background-color: transparent;*/
  height: 34px;
}
.CustomMail:last-of-type {
  margin-bottom: 0;
}
.CustomTel {
  border: 2px solid #E6E5E3;
  min-width: 50px;
  width: 100%;
  display: inline-block;
  position: relative;
  margin-bottom: 10px;
}
.CustomTel input[type="tel"] {
  border: none;
  padding: 5px;
  width: 100%;
  /*background-color: transparent;*/
  height: 34px;
}
.CustomTel:last-of-type {
  margin-bottom: 0;
}
.CustomPassword {
  border: 2px solid #E6E5E3;
  min-width: 50px;
  width: 100%;
  display: inline-block;
  position: relative;
  margin-bottom: 10px;
}
.CustomPassword input[type="password"] {
  border: none;
  padding: 5px;
  width: 100%;
  /*background-color: transparent;*/
  height: 34px;
}
.CustomPassword:last-of-type {
  margin-bottom: 0;
}
.CustomTextarea {
  border: 2px solid #E6E5E3;
  min-width: 50px;
  width: 100%;
  display: inline-block;
  position: relative;
  margin-bottom: 10px;
}
.CustomTextarea textarea {
  display: block;
  border: none;
  padding: 10px;
  width: 100%;
  /*background-color: transparent;*/
  height: 100px;
}
.CustomTextarea:last-of-type {
  margin-bottom: 0;
}
.CustomButton {
  border: 2px solid #D91B20;
  min-width: 50px;
  width: 100%;
  display: inline-block;
  position: relative;
  margin-bottom: 10px;
}
.CustomButton button {
  border: none;
  padding: 5px;
  width: 100%;
  background-color: transparent;
  height: 34px;
}
.CustomButton:last-of-type {
  margin-bottom: 0;
}
.CustomSubmit {
  border: 2px solid #E6E5E3;
  min-width: 50px;
  width: 100%;
  display: inline-block;
  position: relative;
  margin-bottom: 10px;
}
.CustomSubmit input[type="submit"] {
  border: none;
  padding: 5px;
  width: 100%;
  background-color: transparent;
  background: #F4F4F4;
  height: 34px;
  cursor: pointer;
}
.CustomSubmit:last-of-type {
  margin-bottom: 0;
}
/* =====================
- decoration
===================== */
/* =====================
- Modal
===================== */
.ModalBox {
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
}
/* オーバーレイ時、後ろをスクロールさせない */
.AddPriceFixed {
  position: fixed;
  width: 100%;
  height: 100%;
}
/* =====================
- datepicker
===================== */
@media screen and (max-width: 768px) {
  #ui-datepicker-div {
    width: 97%;
    max-width: 347px;
  }
}
@media screen and (min-width: 769px) {
  #ui-datepicker-div {
    width: 22%;
  }
}
.ui-datepicker td span,
.ui-datepicker td a {
  padding: 5px;
  font-size: 13px;
}
/* 日曜日のカラー設定 */
td.ui-datepicker-week-end:first-child a.ui-state-default {
  background-color: #ffecec;
  color: #f00 !important;
}
/* 土曜日のカラー設定 */
td.ui-datepicker-week-end:last-child a.ui-state-default {
  background-color: #eaeaff;
  color: #00f !important;
}
/* ホバー時の動作 */
td.ui-datepicker-week-end a.ui-state-hover {
  opacity: 0.8;
}
/* =====================
- コース番号
===================== */
.TourCode .Code1 {
  padding: 0;
}
.TourCode .Code1:after {
  content: "-";
  padding: 0 0 0 4px;
}
/* =====================
- 
===================== */
.SetValue:before {
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0 5px 0 0;
  content: "\f00d";
  font-size: 10px;
}
/* =====================
- DJから変換タグ
===================== */
red,
.dj_Red {
  color: #f00;
}
blue,
.dj_Blue {
  color: #0000ff;
}
green,
.dj_Green {
  color: #008000;
}
orange,
.dj_Orange {
  color: #FE6215;
}
pink,
.dj_Pink {
  color: #E75396;
}
basic,
.dj_Base {
  color: #D91B20;
}
font[size$="1"],
.dj_FontSize1 {
  font-size: 10px;
}
font[size$="2"],
.dj_FontSize2 {
  font-size: 13px;
}
font[size$="3"],
.dj_FontSize3 {
  font-size: 16px;
}
font[size$="4"],
.dj_FontSize4 {
  font-size: 18px;
}
font[size$="5"],
.dj_FontSize5 {
  font-size: 24px;
}
font[size$="6"],
.dj_FontSize6 {
  font-size: 33px;
}
font[size$="7"],
.dj_FontSize7 {
  font-size: 48px;
}
.DetailBlock a {
  color: #D91B20;
  text-decoration: none;
}
.DetailBlock a:hover {
  text-decoration: underline;
}
ribbon,
.dj_Ribbon {
  display: inline-block;
  margin-left: -19px;
  margin-top: 8px;
  margin-bottom: 8px;
  position: relative;
  padding: 5px 15px;
  color: #FFF;
  zoom: 1;
  background: #D91B20;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
@media screen and (min-width: 769px) {
  ribbon,
  .dj_Ribbon {
    font-size: 16px;
  }
}
ribbon::after,
.dj_Ribbon::after {
  content: "\000A";
  position: absolute;
  top: 100%;
  height: 0;
  width: 0;
  border: 4px solid transparent;
  border-top: 4px solid #4A4A4A;
  left: 0;
  border-right: 4px solid #4A4A4A;
}
wakublue,
wakugreen,
wakured,
wakublack,
wakubase,
wakublueover,
wakugreenover,
wakuredover,
wakublackover,
wakubaseover,
.dj_BlueWaku,
.dj_GreenWaku,
.dj_RedWaku,
.dj_BlackWaku,
.dj_BaseWaku,
.dj_BlueOverWaku,
.dj_GreenOverWaku,
.dj_RedOverWaku,
.dj_BlackOverWaku .dj_BaseOverWaku {
  display: inline-block;
  padding: 3px 5px;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
}
wakublue,
.dj_BlueWaku {
  border: 1px solid #0000ff;
  color: #0000ff;
}
wakugreen,
.dj_GreenWaku {
  border: 1px solid #008000;
  color: #008000;
}
wakured,
.dj_RedWaku {
  border: 1px solid #f00;
  color: #f00;
}
wakublack,
.dj_BlackWaku {
  border: 1px solid #000;
  color: #000;
}
wakubase,
.dj_BaseWaku {
  border: 1px solid #D91B20;
  color: #D91B20;
}
wakublueover,
.dj_BlueOverWaku {
  border: 1px solid #0000ff;
  background: #0000ff;
  color: #fff;
}
wakugreenover,
.dj_GreenOverWaku {
  border: 1px solid #008000;
  background: #008000;
  color: #fff;
}
wakuredover,
.dj_RedOverWaku {
  border: 1px solid #f00;
  background: #f00;
  color: #fff;
}
wakublackover,
.dj_BlackOverWaku {
  border: 1px solid #000;
  background: #000;
  color: #fff;
}
wakubaseover,
.dj_BaseOverWaku {
  border: 1px solid #D91B20;
  background: #D91B20;
  color: #fff;
}
hr,
.dj_Hr {
  border-top: 1px solid #E6E5E3;
  border-bottom: 1px dashed #fff;
}
