@charset "UTF-8";
/* ============================================================================
ブレイクポイント
============================================================================ */
/* ============================================================================
メディアクエリ
============================================================================ */
/* ============================================================================
STYLE INDEX

01 : foundation
02 : layout
03 : object
    03-01 : component
    03-02 : project
    03-03 : utility
============================================================================ */
/* ============================================================================
01 : foundation
============================================================================ */
/* ============================================================================
STYLE INDEX
01 : ブレイクポイント
02 : 色
============================================================================ */
/* ============================================================================
01 : ブレイクポイント
============================================================================ */
/* ============================================================================
02 : 色
============================================================================ */
/* ============================================================================
STYLE INDEX
01 : メディアクエリ
02 : flexbox

============================================================================ */
/* ============================================================================
01 : メディアクエリ
============================================================================ */
/* ============================================================================
02 : flexbox
============================================================================ */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  cursor: pointer;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

/* ============================================================================
STYLE INDEX
01 : 基本設定
02 : .is-visible .is-hidden
03 : @keyframes
04 : cssハック
============================================================================ */
/* ============================================================================
01 : 基本設定
============================================================================ */
* {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", sans-serif;
  box-sizing: border-box;
}

/* arrange font size "1rem" to "1px" */
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
  height: 100%;
}

body {
  position: relative;
  color: #343434;
  line-height: 1.5;
  font-size: 1.5rem;
  height: 100%;
}

/*ダッシュボードでZoom連携されていない場合の警告表示*/
@media (max-width: 991.9px) {
  .zoom_not_linked_alert {
    margin: auto;
    background: #ffebe9;
    font-size: 18px;
    font-weight: bold;
    color: red;
    padding: 23px 10px;
  }
}
@media (min-width: 992px) {
  .zoom_not_linked_alert {
    margin: auto;
    background: #ffebe9;
    font-size: 18px;
    font-weight: bold;
    color: red;
    padding: 23px 10px;
  }
}
.a_tag_button_change {
  border-style: solid;
  border-color: #018755;
  border-width: 1px;
  background-color: white;
  color: #018755;
  /*     background-color: #018755; */
  border-radius: 30px;
  font-weight: bold;
  /*     color: #FFF; */
  padding: 7px 17px;
  display: inline-block;
}

.a_tag_button_change:hover {
  border-style: solid;
  border-color: #018755;
  border-width: 1px;
  background-color: #018755;
  border-radius: 30px;
  color: white;
  font-weight: bold;
  padding: 7px 17px;
  display: inline-block;
}

.padding_under_10 {
  padding: 0px 0px 10px;
}

.padding_left_20 {
  padding: 10px 0px 0px 10px;
}

@media (max-width: 767.9px) {
  body {
    -webkit-text-size-adjust: 100%;
  }
}
@media (max-width: 991.9px) {
  body.is-noscroll {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    margin: auto;
  }
}
input,
select {
  font-size: 1.5rem;
}

/* removr list prefix marker */
ol,
ul {
  list-style: none;
}

p {
  line-height: 1.5em;
}

a {
  color: #018755;
  transition: all 0.2s;
  text-decoration: none;
}

a:hover {
  outline: none;
}

@media (min-width: 768px) {
  a:hover {
    color: #349f77;
  }
}
@media (min-width: 768px) {
  a:hover img {
    opacity: 0.75;
  }
}
a img {
  transition: all 0.2s;
}

img {
  max-width: 100%;
}

/* ============================================================================
02 : .is-visible .is-hidden
============================================================================ */
.is-hidden {
  display: none !important;
}

@media (min-width: 1400px) {
  .is-hidden--xl {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .is-hidden--l {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .is-hidden--ml {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .is-hidden--m {
    display: none !important;
  }
}
@media (max-width: 991.9px) {
  .is-hidden--sm {
    display: none !important;
  }
}
@media (max-width: 767.9px) {
  .is-hidden--s {
    display: none !important;
  }
}
@media (max-width: 576px) {
  .is-hidden--xs {
    display: none !important;
  }
}
.is-visible {
  display: block !important;
}

@media (min-width: 1400px) {
  .is-visible--xl {
    display: block !important;
  }
}
@media (min-width: 992px) {
  .is-visible--l {
    display: block !important;
  }
}
@media (min-width: 768px) {
  .is-visible--ml {
    display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .is-visible--m {
    display: block !important;
  }
}
@media (max-width: 991.9px) {
  .is-visible--sm {
    display: block !important;
  }
}
@media (max-width: 767.9px) {
  .is-visible--s {
    display: block !important;
  }
}
@media (max-width: 576px) {
  .is-visible--xs {
    display: block !important;
  }
}
/* ============================================================================
03 : @keyframes
============================================================================ */
@keyframes fadein {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
/* ============================================================================
04 : cssハック
============================================================================ */
/* ============================================================================
STYLE INDEX
01 : グリッドシステム
============================================================================ */
/* ============================================================================
01 : グリッドシステム
============================================================================ */
.row {
  display: flex;
  flex-wrap: wrap;
}

.row > * {
  flex-grow: 0;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .row > * {
    padding: 20px;
  }
}
@media (max-width: 767.9px) {
  .row > * {
    padding: 15px;
  }
}
.row [class^=col1-] {
  width: 100%;
}

.row [class^=col2-] {
  width: 50%;
}

.row [class^=col3-] {
  width: 33.3333333333%;
}

.row [class^=col4-] {
  width: 25%;
}

.row [class^=col5-] {
  width: 20%;
}

.row [class^=col6-] {
  width: 16.6666666667%;
}

.row [class^=col7-] {
  width: 14.2857142857%;
}

.row [class^=col8-] {
  width: 12.5%;
}

.row [class^=col9-] {
  width: 11.1111111111%;
}

.row [class^=col10-] {
  width: 10%;
}

.row [class^=col11-] {
  width: 9.0909090909%;
}

.row [class^=col12-] {
  width: 8.3333333333%;
}

@media (min-width: 768px) and (max-width: 991.9px) {
  .row [class*="-1-"] {
    width: 100%;
  }
  .row [class*="-2-"] {
    width: 50%;
  }
  .row [class*="-3-"] {
    width: 33.3333333333%;
  }
  .row [class*="-4-"] {
    width: 25%;
  }
  .row [class*="-5-"] {
    width: 20%;
  }
  .row [class*="-6-"] {
    width: 16.6666666667%;
  }
  .row [class*="-7-"] {
    width: 14.2857142857%;
  }
  .row [class*="-8-"] {
    width: 12.5%;
  }
  .row [class*="-9-"] {
    width: 11.1111111111%;
  }
  .row [class*="-10-"] {
    width: 10%;
  }
  .row [class*="-11-"] {
    width: 9.0909090909%;
  }
  .row [class*="-12-"] {
    width: 8.3333333333%;
  }
}
@media (min-width: 992px) {
  .row [class$="-1"] {
    width: 100%;
  }
  .row [class$="-2"] {
    width: 50%;
  }
  .row [class$="-3"] {
    width: 33.3333333333%;
  }
  .row [class$="-4"] {
    width: 25%;
  }
  .row [class$="-5"] {
    width: 20%;
  }
  .row [class$="-6"] {
    width: 16.6666666667%;
  }
  .row [class$="-7"] {
    width: 14.2857142857%;
  }
  .row [class$="-8"] {
    width: 12.5%;
  }
  .row [class$="-9"] {
    width: 11.1111111111%;
  }
  .row [class$="-10"] {
    width: 10%;
  }
  .row [class$="-11"] {
    width: 9.0909090909%;
  }
  .row [class$="-12"] {
    width: 8.3333333333%;
  }
}
/* ============================================================================
02 : layout
============================================================================ */
/* ============================================================================
STYLE INDEX
01 : .l-meetus
============================================================================ */
/* ============================================================================
01 : .l-meetus
============================================================================ */
.l-meetus {
  position: relative;
}

@media (min-width: 992px) {
  .l-meetus {
    height: 100%;
  }
}
@media (max-width: 991.9px) {
  .l-meetus {
    position: relative;
  }
}
@media (min-width: 992px) {
  .l-meetus__inner {
    height: 100%;
  }
}
@media (min-width: 992px) {
  .l-meetus__primary {
    position: fixed;
    top: 0;
    left: 0;
    width: 230px;
    height: 100%;
    box-shadow: 10px 0 15px rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 992px) {
  .l-meetus__secondary {
    margin-left: 250px;
  }
}
/* ============================================================================
03 : object
============================================================================ */
/* ============================================================================
03-01 : component
============================================================================ */
/* ============================================================================
STYLE INDEX
01 : .c-inner
02 : .c-section
03 : .c-form
04 : .c-flexbox

00 : others
============================================================================ */
/* ============================================================================
01 : .c-inner
============================================================================ */
@media (min-width: 992px) {
  .c-inner {
    margin: 0 30px;
  }
}
@media (min-width: 1400px) {
  .c-inner {
    margin: 0 40px;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .c-inner {
    margin: 0 20px;
  }
}
@media (max-width: 767.9px) {
  .c-inner {
    margin: 0 15px;
  }
}
/* ============================================================================
02 : .c-section
============================================================================ */
@media (min-width: 992px) {
  .c-section {
    padding-bottom: 5em;
  }
}
@media (max-width: 991.9px) {
  .c-section {
    padding-bottom: 3em;
  }
}
.c-section__ttlwrap {
  -js-display: flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media (min-width: 768px) {
  .c-section__ttlwrap__secondary {
    margin-bottom: 15px;
  }
}
@media (max-width: 767.9px) {
  .c-section__ttlwrap__secondary {
    margin-bottom: 1em;
  }
}
.c-section__ttl {
  color: #018755;
  font-weight: bold;
}

@media (min-width: 992px) {
  .c-section__ttl {
    font-size: 2.4rem;
    line-height: 80px;
    margin-bottom: 15px;
  }
}
@media (min-width: 1400px) {
  .c-section__ttl {
    line-height: 100px;
  }
}
@media (max-width: 991.9px) {
  .c-section__ttl {
    font-size: 2rem;
    line-height: 30px;
    margin-bottom: 1em;
  }
}
.c-section__ttl__icon {
  position: relative;
  fill: #018755;
  margin-right: 0.25em;
}

@media (min-width: 992px) {
  .c-section__ttl__icon {
    top: 6px;
    width: 30px;
    height: 30px;
  }
}
@media (max-width: 991.9px) {
  .c-section__ttl__icon {
    top: 3px;
    width: 20px;
    height: 20px;
  }
}
.c-section__ttl__btn {
  color: #018755;
}

.c-section__subttl {
  -js-display: flex;
  display: flex;
  align-items: center;
  margin-bottom: 0.5em;
}

.c-section__subttl__main {
  font-weight: bold;
}

@media (min-width: 768px) {
  .c-section__subttl__main {
    font-size: 2rem;
  }
}
@media (max-width: 767.9px) {
  .c-section__subttl__main {
    font-size: 1.8rem;
  }
}
.c-section__subttl__link {
  margin-left: 0.5em;
}

.c-section__subttl__link::before {
  color: #bababa;
  content: "｜";
  margin-right: 0.5em;
}

.c-section__subttl__link a {
  font-weight: bold;
  color: #bababa;
}

@media (min-width: 992px) {
  .c-section__subttl__link a:hover {
    color: #018755;
  }
}
/* ============================================================================
03 : .c-form
============================================================================ */
.c-form select::-ms-expand {
  display: none;
}

.c-form__button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
  cursor: pointer;
  transition: all 0.3s;
  font-weight: bold;
  font-size: 1.5rem;
  padding: 0 2em;
  line-height: 46px;
  border-radius: 23px;
}

.c-form__button svg {
  position: relative;
  top: 2px;
  width: 14px;
  height: 14px;
}

.c-form__button--default {
  border: 1px solid #ccc;
}

@media (min-width: 992px) {
  .c-form__button--default:hover {
    border-color: #018755;
    color: #018755;
  }
}
@media (min-width: 992px) {
  .c-form__button--default:hover svg {
    fill: #018755;
  }
}
.c-form__button--default svg {
  fill: #ccc;
}

.c-form__button--primary {
  background-color: #018755;
  color: #fff;
}

@media (min-width: 992px) {
  .c-form__button--primary:hover {
    background-color: #349f77;
  }
}
.c-form__button--primary svg {
  fill: #fff;
}

.c-form__button--disabled {
  background-color: #cccccc;
  color: #fff;
  cursor: default;
}

@media (min-width: 992px) {
  .c-form__button--disabled:hover {
    background-color: #cccccc;
  }
}
.c-form__button--disabled svg {
  fill: #fff;
}

.c-form__button--secondary {
  border: 1px solid #018755;
  color: #018755;
}

@media (min-width: 992px) {
  .c-form__button--secondary:hover {
    background-color: #018755;
    color: #fff;
  }
}
.c-form__button--secondary:hover svg {
  fill: #fff;
}

.c-form__button--secondary svg {
  fill: #018755;
}

.c-form__button--alert {
  border: 1px solid #d6105f;
  color: #d6105f;
}

@media (min-width: 992px) {
  .c-form__button--alert:hover {
    background-color: #d6105f;
    color: #fff;
  }
}
.c-form__button--alert:hover svg {
  fill: #fff;
}

.c-form__button--alert svg {
  fill: #d6105f;
}

@media (min-width: 768px) {
  .c-form__button--szmd {
    min-width: 200px;
  }
}
.c-form__select {
  transition: all 0.3s;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-weight: bold;
  line-height: 1;
  color: #343434;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2230%22%20viewBox%3D%220%200%2021%2030%22%20fill%3D%22%23018755%22%3E%3Cpath%20d%3D%22M1.41%2012h18.18a1.42%201.42%200%20001-2.43L11.5.42a1.4%201.4%200%2000-2%200L.42%209.57A1.42%201.42%200%20001.41%2012zm18.18%206H1.41a1.42%201.42%200%2000-1%202.43l9.09%209.15a1.4%201.4%200%20002%200l9.08-9.15a1.42%201.42%200%2000-.99-2.43z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: 8px auto;
  background-position: right 12px center;
  background-color: #fff;
}

@media (min-width: 992px) {
  .c-form__select {
    font-size: 1.6rem;
    padding: 0.75em 2em 0.75em 0.75em;
  }
}
@media (max-width: 991.9px) {
  .c-form__select {
    font-size: 1.5rem;
    padding: 0.75em 2em 0.75em 0.75em;
  }
}
@media (max-width: 767.9px) {
  .c-form__select {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .c-form__select:hover {
    border-color: #349f77;
  }
}
@media (min-width: 992px) {
  .c-form__select:focus {
    border-color: #349f77;
    box-shadow: 2px 2px 4px 4px rgba(0, 0, 0, 0.05);
  }
}
.c-form__select:disabled {
  background-image: none;
  background-color: #ccc;
  color: #545454;
  opacity: 1;
}

@media (min-width: 992px) {
  .c-form__select:disabled:hover {
    border-color: transparent;
  }
}
.c-form__input {
  -webkit-appearance: none;
  transition: all 0.3s;
  outline: none;
  width: 100%;
  font-size: 1.5rem;
  border: 1px solid #ccc;
  border-radius: 5px;
  line-height: 1;
  padding: 0.75em;
}

@media (min-width: 992px) {
  .c-form__input:hover {
    border-color: #349f77;
  }
}
@media (min-width: 992px) {
  .c-form__input:focus {
    border-color: #349f77;
    box-shadow: 2px 2px 4px 4px rgba(0, 0, 0, 0.05);
  }
}

.c-form__input::-moz-placeholder {
  font-weight: normal;
}

.c-form__input::placeholder {
  font-weight: normal;
}

@media (min-width: 992px) {
  .c-form__input__numberwrap {
    position: relative;
    display: inline-block;
  }
}
@media (min-width: 992px) {
  .c-form__input__numberwrap::before {
    display: block;
    position: absolute;
    top: 4px;
    right: 10px;
    color: #018755;
    content: "";
    width: 20px;
    height: 20px;
    pointer-events: none;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2212%22%20viewBox%3D%220%200%2021%2012%22%20fill%3D%22%23018755%22%3E%3Cpath%20d%3D%22M1.41%2C12H19.59a1.42%2C1.42%2C0%2C0%2C0%2C1-2.43L11.5.42a1.4%2C1.4%2C0%2C0%2C0-2%2C0L.42%2C9.57A1.42%2C1.42%2C0%2C0%2C0%2C1.41%2C12Z%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-size: 10px auto;
    background-position: center bottom 1px;
  }
}
@media (min-width: 992px) {
  .c-form__input__numberwrap::after {
    position: absolute;
    bottom: 4px;
    right: 10px;
    content: "";
    width: 20px;
    height: 20px;
    pointer-events: none;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2212%22%20viewBox%3D%220%200%2021%2012%22%20fill%3D%22%23018755%22%3E%3Cpath%20d%3D%22M19.59%2C0H1.41a1.42%2C1.42%2C0%2C0%2C0-1%2C2.43L9.5%2C11.58a1.4%2C1.4%2C0%2C0%2C0%2C2%2C0l9.08-9.15A1.42%2C1.42%2C0%2C0%2C0%2C19.59%2C0Z%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-size: 10px auto;
    background-position: center top 1px;
  }
}
@media (min-width: 992px) {
  .c-form__input__numberwrap input[type=number]::-webkit-inner-spin-button {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    transform: scale(5);
    transform-origin: right center;
    opacity: 0;
    cursor: pointer;
  }
}
@media (min-width: 992px) {
  .c-form__input__numberwrap input[type=number]::-webkit-contacts-auto-fill-button {
    opacity: 0;
  }
}
@media (min-width: 992px) {
  .c-form__input[type=number]::-webkit-inner-spin-button {
    opacity: 1;
  }
}
@media (max-width: 991.9px) {
  .c-form__input[type=number]::-webkit-outer-spin-button,
  .c-form__input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }
}
.c-form__input--sm {
  width: 100px;
}

.c-form__input--md {
  width: 200px;
}

.c-form__input:disabled {
  background-image: none;
  background-color: #ccc;
  border-color: #ccc;
  opacity: 1;
}

.c-form__calendar {
  position: relative;
  transition: all 0.3s;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-weight: bold;
  line-height: 1;
  color: #343434;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2230%22%20viewBox%3D%220%200%2021%2030%22%20fill%3D%22%23018755%22%3E%3Cpath%20d%3D%22M1.41%2012h18.18a1.42%201.42%200%20001-2.43L11.5.42a1.4%201.4%200%2000-2%200L.42%209.57A1.42%201.42%200%20001.41%2012zm18.18%206H1.41a1.42%201.42%200%2000-1%202.43l9.09%209.15a1.4%201.4%200%20002%200l9.08-9.15a1.42%201.42%200%2000-.99-2.43z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: 8px auto;
  background-position: right 12px center;
  padding: 0.85em;
}

@media (min-width: 992px) {
  .c-form__calendar {
    font-size: 1.6rem;
  }
}
@media (max-width: 991.9px) {
  .c-form__calendar {
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .c-form__calendar {
    width: 100%;
  }
}
.c-form__calendar::-webkit-inner-spin-button {
  -webkit-appearance: none;
  display: none;
}

.c-form__calendar::-webkit-clear-button {
  -webkit-appearance: none;
  display: none;
}

.c-form__calendar::-webkit-calendar-picker-indicator {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
}

@media (min-width: 992px) {
  .c-form__calendar:hover {
    border-color: #349f77;
  }
}
@media (min-width: 992px) {
  .c-form__calendar:focus {
    border-color: #349f77;
    box-shadow: 2px 2px 4px 4px rgba(0, 0, 0, 0.05);
  }
}
.c-form__calendar:disabled {
  background-image: none;
  background-color: #ccc;
  border-color: #ccc;
  color: #545454;
  opacity: 1;
}

.c-form__ctrl {
  display: block;
  position: relative;
  padding-left: 25px;
  cursor: pointer;
}

.c-form__ctrl input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.c-form__ctrl__indicator {
  position: absolute;
  left: 0;
  background: #e6e6e6;
}

input[type=checkbox] + .c-form__ctrl__indicator {
  top: 0;
  width: 20px;
  height: 20px;
}

input[type=radio] + .c-form__ctrl__indicator {
  top: 2px;
  width: 18px;
  height: 18px;
}

.c-form__ctrl--checkbox .c-form__ctrl__indicator {
  border-radius: 3px;
}

.c-form__ctrl--radio .c-form__ctrl__indicator {
  border-radius: 50%;
}

.c-form__ctrl:hover input ~ .c-form__ctrl__indicator,
.c-form__ctrl input:focus ~ .c-form__ctrl__indicator {
  background: #ccc;
}

.c-form__ctrl input:checked ~ .c-form__ctrl__indicator {
  background: #018755;
}

.c-form__ctrl:hover input:not([disabled]):checked ~ .c-form__ctrl__indicator,
.c-form__ctrl input:checked:focus ~ .c-form__ctrl__indicator {
  background: #349f77;
}

.c-form__ctrl input:disabled ~ .c-form__ctrl__indicator {
  background: #e6e6e6;
  opacity: 0.6;
  pointer-events: none;
}

.c-form__ctrl__indicator:after {
  content: "";
  position: absolute;
  display: none;
}

.c-form__ctrl input:checked ~ .c-form__ctrl__indicator:after {
  display: block;
}

.c-form__ctrl--checkbox .c-form__ctrl__indicator:after {
  top: 4px;
  left: 8px;
  width: 3px;
  height: 8px;
  border: 1px solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.c-form__ctrl--checkbox input:disabled ~ .c-form__ctrl__indicator:after {
  border-color: #666;
}

.c-form__ctrl--radio .c-form__ctrl__indicator:after {
  left: 5px;
  top: 5px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #fff;
}

.c-form__ctrl--radio input:disabled ~ .c-form__ctrl__indicator:after {
  background: #666;
}

/* ============================================================================
04 : .c-flexbox
============================================================================ */
.c-flexbox {
  -js-display: flex;
  display: flex;
}

.c-flexbox--vc {
  align-items: center;
}

.c-flexbox__item {
  width: 100%;
}

.c-flexbox__item:not(:last-child) {
  padding-right: 0.5em;
}

.c-flexbox__item:not(:first-child) {
  padding-left: 0.5em;
}

/* ============================================================================
00 : others
============================================================================ */
.c-externallink {
  color: #343434;
  font-weight: bold;
}

@media (min-width: 992px) {
  .c-externallink:hover {
    color: #018755;
  }
}
@media (min-width: 992px) {
  .c-externallink:hover svg {
    fill: #018755;
  }
}
.c-externallink svg {
  position: relative;
  top: 3px;
  width: 18px;
  height: 18px;
  fill: #343434;
  margin-left: 0.25em;
}

.c-devide--before::before {
  color: #bababa;
  content: "｜";
  margin-right: 0.5em;
}

.c-devide--after::after {
  color: #bababa;
  content: "｜";
  margin-right: 0.5em;
}

/* ============================================================================
03-02 : project
============================================================================ */
/* ============================================================================
STYLE INDEX
01 : .p-login
============================================================================ */
/* ============================================================================
01 : .p-login
============================================================================ */
.p-login {
  width: 100%;
  height: 100%;
  -js-display: flex;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (min-width: 768px) {
  .p-login__inner {
    min-width: 600px;
    padding: 4em 2em;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
    border: 1px solid #f6f6f6;
    border-radius: 10px;
    margin-bottom: 3em;
  }
}
@media (max-width: 767.9px) {
  .p-login__inner {
    padding: 0 20px;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  .p-login__inner {
    margin-bottom: 0em;
  }
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .p-login__inner {
    margin-bottom: 4em;
  }
}
@media (min-width: 768px) {
  .p-login__ttl {
    width: 160px;
    margin: 0 auto 2em;
  }
}
@media (max-width: 767.9px) {
  .p-login__ttl {
    width: 150px;
    margin: 0 auto 1em;
  }
}
.p-login__form__items {
  padding-bottom: 1em;
}

.p-login__form__item {
  margin-bottom: 1em;
}

@media (min-width: 768px) {
  .p-login__form__item {
    max-width: 300px;
    margin-right: auto;
    margin-left: auto;
  }
}
.p-login__form__input {
  width: 100%;
  background-color: #edf7f3;
  padding: 0.5em 0.75em;
  border: 1px solid #ebebeb;
}

@media (min-width: 768px) {
  .p-login__form__input {
    font-size: 1.8rem;
  }
}
@media (max-width: 767.9px) {
  .p-login__form__input {
    font-size: 1.6rem;
  }
}
@media (min-width: 768px) {
  .p-login__btnwrap {
    width: 300px;
    margin: 0 auto 1em;
  }
}
.p-login__errormsg {
  border: 1px solid #d6105f;
  background-color: #fcecf2;
  border-radius: 5px;
  color: #d6105f;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 0.5em 1em;
  margin: 0 auto 2em;
}

@media (min-width: 768px) {
  .p-login__errormsg {
    max-width: 300px;
  }
}
.p-login__btn {
  width: 100%;
  background: #018755;
  background: linear-gradient(45deg, #018755 0%, #28c940 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#018755", endColorstr="#28c940", GradientType=1);
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
}

@media (min-width: 992px) {
  .p-login__btn:hover {
    opacity: 0.8;
  }
}
/* ============================================================================
STYLE INDEX
01 : .p-header
============================================================================ */
/* ============================================================================
01 : .p-header
============================================================================ */
/* ============================================================================
01 : .p-header
============================================================================ */
@media (max-width: 991.9px) {
  .p-header {
    position: relative;
  }
}
@media (min-width: 992px) {
  .p-header__inner {
    position: sticky;
    top: 0;
  }
}
.p-header__bar {
  background: #fff;
}

@media (max-width: 991.9px) {
  .p-header__bar {
    -js-display: flex;
    display: flex;
    justify-content: space-between;
  }
}
@media (max-width: 991.9px) {
  .p-header__bar.is-fixed {
    position: fixed;
    z-index: 101;
    width: 100%;
  }
}
@media (max-width: 991.9px) {
  .p-header__bar {
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.05);
    margin-bottom: 2em;
  }
}
@media (max-width: 991.9px) {
  .p-header__menuwrap {
    z-index: 100;
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    background: #018755;
    background: linear-gradient(45deg, #018755 0%, #28c940 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#018755", endColorstr="#28c940", GradientType=1);
    padding: 60px 15px 0;
    padding-top: 60px;
  }
}
.p-header__menuwrap.is-opened {
  display: block;
  opacity: 1;
  animation-duration: 0.5s;
  animation-name: fadein;
  -moz-animation-duration: 0.5s;
  -moz-animation-name: fadein;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-name: fadein;
}

@media (min-width: 992px) {
  .p-header__logo {
    margin-bottom: 3px;
  }
}
@media (max-width: 991.9px) {
  .p-header__logo {
    flex: 1;
  }
}
.p-header__logo a {
  display: block;
}

@media (min-width: 992px) {
  .p-header__logo a {
    position: relative;
    height: 70px;
    padding: 0 15px;
  }
}
@media (min-width: 1400px) {
  .p-header__logo a {
    height: 80px;
    padding: 0 30px;
  }
}
@media (max-width: 991.9px) {
  .p-header__logo a {
    position: relative;
    height: 60px;
    padding: 0 15px;
    width: 100%;
  }
}
.p-header__logo img {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
}

@media (min-width: 992px) {
  .p-header__logo img {
    width: 153px;
    height: 28px;
  }
}
@media (max-width: 991.9px) {
  .p-header__logo img {
    max-width: 174px;
  }
}
@media (min-width: 992px) {
  .p-header__menu {
    display: none;
  }
}
@media (max-width: 991.9px) {
  .p-header__menu {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}
.p-header__menu__icons {
  width: 60px;
  height: 60px;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  flex-direction: column;
  position: relative;
  transition: all 300ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.is-opened .p-header__menu__icons {
  transform: rotate(45deg);
}

.p-header__menu__icon {
  width: 7px;
  height: 7px;
  margin: 2px;
  background: #018755;
  border-radius: 50%;
  display: block;
}

.p-header__menu__icon:nth-child(4),
.p-header__menu__icon:nth-child(5) {
  position: absolute;
  opacity: 0;
  top: 50%;
  margin-top: -3px;
  left: 50%;
}

.p-header__menu__icon:nth-child(4) {
  margin-left: -14px;
}

.p-header__menu__icon:nth-child(5) {
  margin-left: 8px;
}

.is-opened .p-header__menu__icon {
  opacity: 1;
}

.p-header__nav {
  margin-bottom: 1em;
}

@media (max-width: 991.9px) {
  .p-header__nav__lists {
    border-top: 1px solid rgba(255, 255, 255, 0.2);
  }
}
@media (max-width: 991.9px) {
  .p-header__nav__list {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
}
.p-header__nav__list a {
  -js-display: flex;
  display: flex;
  align-items: center;
  color: #343434;
  font-weight: bold;
}

@media (min-width: 992px) {
  .p-header__nav__list a {
    padding: 15px;
  }
}
@media (min-width: 1400px) {
  .p-header__nav__list a {
    padding: 18px 30px;
    font-size: 1.6rem;
  }
}
@media (max-width: 991.9px) {
  .p-header__nav__list a {
    padding: 15px 0;
    color: #fff;
  }
}
@media (min-width: 992px) {
  .p-header__nav__list a.is-active {
    color: #fff;
    background: #018755;
    background: linear-gradient(45deg, #018755 0%, #28c940 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#018755", endColorstr="#28c940", GradientType=1);
  }
}
@media (min-width: 992px) {
  .p-header__nav__list a:hover {
    background: #edf7f3;
  }
}
@media (min-width: 992px) {
  .p-header__nav__list a.is-active:hover {
    background: #018755;
    background: linear-gradient(45deg, #018755 0%, #28c940 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#018755", endColorstr="#28c940", GradientType=1);
  }
}
.p-header__nav__icon {
  transition: all 0.3s;
}

@media (min-width: 992px) {
  .p-header__nav__icon {
    width: 22px;
    height: 22px;
    margin-right: 10px;
    fill: #bababa;
  }
}
@media (max-width: 991.9px) {
  .p-header__nav__icon {
    width: 26px;
    height: 26px;
    margin-right: 15px;
    fill: #fff;
  }
}
@media (min-width: 992px) {
  .is-active .p-header__nav__icon {
    fill: #fff;
  }
}
.p-header__nav__txt {
  flex: 1;
}

.p-header__staff {
  font-size: 1.3rem;
}

@media (min-width: 992px) {
  .p-header__staff {
    font-weight: bold;
    color: #018755;
    padding: 0 15px;
    margin-bottom: 1em;
  }
}
@media (min-width: 1400px) {
  .p-header__staff {
    padding: 0 30px;
  }
}
@media (max-width: 991.9px) {
  .p-header__staff {
    color: #fff;
    padding: 20px 0;
  }
}
@media (min-width: 992px) {
  .p-header__logout {
    width: 100%;
    padding: 0 15px;
    bottom: 30px;
  }
  .p-header__logout:first-child {
    margin-bottom: 1em;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .p-header__logout {
    padding: 0 20px;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 991.9px) {
  .p-header__logout:first-child {
    margin-bottom: 1em;
  }
}
.p-header__logout a {
  color: #343434;
  font-size: 1.4rem;
  font-weight: bold;
  -js-display: flex;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media (min-width: 992px) {
  .p-header__logout a {
    border: 1px solid #ebebeb;
    line-height: 50px;
    border-radius: 25px;
    padding: 0 15px;
  }
}
@media (max-width: 991.9px) {
  .p-header__logout a {
    justify-content: center;
    border: solid 1px #fff;
    color: #fff;
    line-height: 50px;
    border-radius: 25px;
  }
}
@media (min-width: 992px) {
  .p-header__logout a:hover {
    background: #018755;
    background: linear-gradient(45deg, #018755 0%, #28c940 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#018755", endColorstr="#28c940", GradientType=1);
    color: #fff;
    border: transparent;
  }
}
@media (min-width: 992px) {
  .p-header__logout__name {
    margin-right: 15px;
  }
}
@media (max-width: 991.9px) {
  .p-header__logout__name {
    margin-right: 10px;
  }
}
.p-header__logout__icon {
  flex-shrink: 0;
}

@media (min-width: 992px) {
  .p-header__logout__icon {
    width: 18px;
    height: 18px;
    fill: #018755;
  }
}
@media (max-width: 991.9px) {
  .p-header__logout__icon {
    width: 18px;
    height: 18px;
    fill: #fff;
  }
}
a:hover .p-header__logout__icon {
  fill: #fff;
}

/* ============================================================================
STYLE INDEX
01 : .p-meeting
============================================================================ */
/* ============================================================================
01 : .p-meeting
============================================================================ */
.p-meeting__form {
  position: relative;
  background: #edf7f3;
  border-radius: 10px;
  overflow: auto;
}

@media (min-width: 992px) {
  .p-meeting__form {
    padding: 1.5em;
    margin-bottom: 4em;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__form {
    padding: 1.5em;
    margin-bottom: 2em;
  }
}
@media (min-width: 768px) {
  .p-meeting__form__inner {
    -js-display: flex;
    display: flex;
    align-items: flex-end;
  }
}
@media (min-width: 768px) {
  .p-meeting__form__item {
    margin-bottom: 0.5em;
    margin-right: 1em;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__form__item {
    margin-bottom: 1em;
  }
}
@media (min-width: 768px) {
  .p-meeting__form__item--lastchild {
    padding-right: 1.5em;
  }
}
.p-meeting__form__label {
  font-size: 1.3rem;
  margin-bottom: 0.25em;
  margin-left: 0.25em;
  color: #666;
}

@media (min-width: 992px) {
  .p-meeting__form__input {
    flex: 1;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__form__submit {
    width: 100%;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal {
    position: relative;
    padding-bottom: 80px;
  }
}
.p-meeting__weeklycal__header {
  margin-bottom: 0.75em;
}

@media (min-width: 992px) {
  .p-meeting__weeklycal__header {
    -js-display: flex;
    display: flex;
    justify-content: space-between;
  }
}
.p-meeting__weeklycal__header__main {
  -js-display: flex;
  display: flex;
  align-items: center;
}

@media (max-width: 991.9px) {
  .p-meeting__weeklycal__header__main {
    justify-content: space-between;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal__header__sub {
    position: absolute;
    bottom: 0;
    width: 100%;
  }
}
.p-meeting__weeklycal__month {
  font-weight: bold;
  margin-right: 20px;
}

@media (min-width: 992px) {
  .p-meeting__weeklycal__month {
    font-size: 2rem;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal__month {
    font-size: 2rem;
  }
}
.p-meeting__weeklycal__month span {
  position: relative;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  top: 2px;
}

@media (min-width: 768px) {
  .p-meeting__weeklycal__month span {
    font-size: 3.6rem;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__weeklycal__month span {
    font-size: 2.8rem;
  }
}
.p-meeting__weeklycal__chevrons {
  -js-display: flex;
  display: flex;
  margin-right: 20px;
}

.p-meeting__weeklycal__chevron {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  position: relative;
  width: 30px;
  height: 30px;
  border-radius: 15px;
  background: #edf7f3;
}

@media (min-width: 992px) {
  .p-meeting__weeklycal__chevron {
    cursor: pointer;
    transition: all 0.3s;
  }
}
@media (min-width: 992px) {
  .p-meeting__weeklycal__chevron:hover {
    background: #018755;
  }
}
@media (min-width: 992px) {
  .p-meeting__weeklycal__chevron:hover svg {
    fill: #fff;
  }
}
.p-meeting__weeklycal__chevron--prev {
  margin-right: 5px;
}

.p-meeting__weeklycal__chevron svg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 13px;
  height: 13px;
  fill: #018755;
}

.p-meeting__weeklycal__chevron:disabled {
  background-color: #efefef;
  cursor: default;
}

.p-meeting__weeklycal__chevron:disabled svg {
  fill: #fff;
}

.p-meeting__weeklycal__movebtns {
  -js-display: flex;
  display: flex;
  align-items: center;
}

@media (max-width: 991.9px) {
  .p-meeting__weeklycal__movebtns {
    flex: 1;
    justify-content: space-between;
  }
}
.p-meeting__weeklycal__todaybtn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
  cursor: pointer;
  transition: all 0.3s;
  font-weight: bold;
  font-size: 1.5rem;
  padding: 0 2.5em;
  border: 1px solid #ebebeb;
}

@media (min-width: 768px) {
  .p-meeting__weeklycal__todaybtn {
    line-height: 46px;
    border-radius: 23px;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__weeklycal__todaybtn {
    line-height: 40px;
    border-radius: 20px;
  }
}
@media (min-width: 992px) {
  .p-meeting__weeklycal__todaybtn:hover {
    border-color: #018755;
  }
}
.p-meeting__weeklycal__btns {
  -js-display: flex;
  display: flex;
  align-items: center;
}

@media (max-width: 991.9px) {
  .p-meeting__weeklycal__btns {
    justify-content: space-between;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal__btn {
    width: 49%;
  }
}
@media (min-width: 992px) {
  .p-meeting__weeklycal__btn--cancel {
    font-weight: normal;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal__btn--cancel {
    border: 1px solid #ebebeb;
  }
}
@media (min-width: 992px) {
  .p-meeting__weeklycal__btn--cancel:hover {
    color: #018755;
  }
}
.p-meeting__weeklycal__tablewrap {
  position: relative;
  width: 100%;
  overflow-y: auto;
  overflow-x: auto;
}

@media (min-width: 992px) {
  .p-meeting__weeklycal__tablewrap {
    max-height: 800px;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal__tablewrap {
    max-height: 480px;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal__tablewrap {
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
  }
}
.p-meeting__weeklycal__tablewrap::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

.p-meeting__weeklycal__tablewrap::-webkit-scrollbar-track {
  border-radius: 5px;
  box-shadow: 0 0 4px #aaa inset;
}

.p-meeting__weeklycal__tablewrap::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #349f77;
}

.p-meeting__weeklycal__table {
  width: 100%;
  border-top: solid 1px #ebebeb;
  border-left: solid 1px #ebebeb;
  border-bottom: none;
  table-layout: fixed;
}

.p-meeting__weeklycal__table th,
.p-meeting__weeklycal__table td {
  border-bottom: solid 1px #ebebeb;
  border-right: solid 1px #ebebeb;
  background-color: #fff;
  vertical-align: middle;
}

@media (min-width: 992px) {
  .p-meeting__weeklycal__table th,
  .p-meeting__weeklycal__table td {
    padding: 0.75em 0.5em;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal__table th,
  .p-meeting__weeklycal__table td {
    padding: 0.75em 0.25em;
  }
}
@media (min-width: 992px) {
  .p-meeting__weeklycal__table td {
    transition: all 0.2s;
    cursor: pointer;
  }
}
@media (min-width: 992px) {
  .p-meeting__weeklycal__table td:hover {
    background: #edf7f3;
  }
}
.p-meeting__weeklycal__table td.is-changed {
  background: #edf7f3;
}

.p-meeting__weeklycal__table td.is-fixed {
  cursor: default;
}

@media (min-width: 992px) {
  .p-meeting__weeklycal__table td.is-fixed:hover {
    background: none;
  }
}
.p-meeting__weeklycal__table td.is-inactive {
  background: #f2f2f2;
}

@media (min-width: 992px) {
  .p-meeting__weeklycal__table td.is-inactive {
    cursor: default;
  }
}
@media (min-width: 992px) {
  .p-meeting__weeklycal__table td.is-inactive:hover {
    background: #f2f2f2;
  }
}
.p-meeting__weeklycal__table thead th,
.p-meeting__weeklycal__table tbody th {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 1;
}

.p-meeting__weeklycal__table thead th::before,
.p-meeting__weeklycal__table tbody th::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
}

.p-meeting__weeklycal__table thead th {
  background: #fafafa;
}

@media (min-width: 992px) {
  .p-meeting__weeklycal__table thead th {
    height: 70px;
  }
}
.p-meeting__weeklycal__table thead th::before {
  border: 1px solid #ebebeb;
}

.p-meeting__weeklycal__table thead .p-meeting__weeklycal__time {
  z-index: 2;
}

.p-meeting__weeklycal__table tbody th {
  background: #fafafa;
}

.p-meeting__weeklycal__table tbody th::before {
  border: 1px solid #ebebeb;
}

@media (min-width: 992px) {
  .p-meeting__weeklycal__time {
    width: 130px;
    white-space: nowrap;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .p-meeting__weeklycal__time {
    width: 100px;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__weeklycal__time {
    width: 70px;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal__time span {
    display: block;
  }
}
@media (min-width: 992px) {
  .p-meeting__weeklycal__th {
    width: 70px;
  }
}
@media (max-width: 991.9px) {
  .p-meeting__weeklycal__th {
    width: 60px;
  }
}
.p-meeting__weeklycal__date {
  display: block;
  font-family: "Roboto", sans-serif;
  line-height: 1;
  font-size: 2rem;
  margin-bottom: 0.25em;
}

.p-meeting__weeklycal__week {
  display: block;
  line-height: 1;
}

.is-saturday .p-meeting__weeklycal__week {
  color: #03c;
}

.is-sunday .p-meeting__weeklycal__week {
  color: #c00;
}

.p-meeting__weeklycal__check {
  display: block;
  opacity: 0;
  text-align: center;
  width: 26px;
  height: 26px;
  margin: 0 auto 8px;
}

.is-fixed .p-meeting__weeklycal__check,
.is-changed .p-meeting__weeklycal__check {
  opacity: 1;
}

.p-meeting__weeklycal__check svg {
  fill: #018755;
  width: 100%;
  height: auto;
}

.p-meeting__weeklycal__inputwrap {
  width: 100%;
  height: 34px;
}

.p-meeting__weeklycal__input {
  display: none;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  line-height: 30px;
  padding: 0;
  margin: 0 auto;
}

.is-fixed .p-meeting__weeklycal__input,
.is-changed .p-meeting__weeklycal__input {
  display: block;
}

.p-meeting__weeklycal__input:disabled {
  text-align: center;
  color: #000;
  border: transparent;
  -moz-appearance: textfield;
}

.p-meeting__weeklycal__input:disabled::-webkit-outer-spin-button,
.p-meeting__weeklycal__input:disabled::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.p-meeting__desc {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: 1.3rem;
  line-height: 1em;
}

.p-meeting__desc__dl {
  -js-display: flex;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.p-meeting__desc__dt {
  display: none;
}

.p-meeting__desc__lists {
  -js-display: flex;
  display: flex;
}

.p-meeting__desc__list {
  -js-display: flex;
  display: flex;
  align-items: center;
  margin-right: 1em;
}

.p-meeting__desc__svg {
  margin-right: 0.25em;
}

.p-meeting__desc__svg svg {
  width: 1em;
  height: 1em;
}

.p-meeting__list__tablewrap {
  position: relative;
  width: 100%;
  overflow-x: auto;
}

@media (max-width: 991.9px) {
  .p-meeting__list__tablewrap {
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
  }
}
.p-meeting__list__tablewrap::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

.p-meeting__list__tablewrap::-webkit-scrollbar-track {
  border-radius: 5px;
  box-shadow: 0 0 4px #aaa inset;
}

.p-meeting__list__tablewrap::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #349f77;
}

.p-meeting__list__table {
  border-bottom: none;
  width: 100%;
  height: 100%;
  border-bottom: solid 1px #ebebeb;
}

.p-meeting__list__table th,
.p-meeting__list__table td {
  border-top: solid 1px #ebebeb;
  font-weight: bold;
  min-width: 45px;
  height: 100%;
  vertical-align: middle;
  white-space: nowrap;
}

@media (min-width: 992px) {
  .p-meeting__list__table th,
  .p-meeting__list__table td {
    transition: all 0.3s;
  }
}
.p-meeting__list__table th {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 1;
}

.p-meeting__list__table th::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
}

.p-meeting__list__table thead th {
  background: #fafafa;
  padding: 1em;
}

.p-meeting__list__table thead .p-meeting__list__th__event,
.p-meeting__list__table thead .p-meeting__list__th__rsvstatus {
  z-index: 2;
}

.p-meeting__list__td__rsvstatus {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: white;
}

@media (min-width: 992px) {
  .p-meeting__list__table tbody tr:hover th,
  .p-meeting__list__table tbody tr:hover td {
    background: #edf7f3;
  }
}
.p-meeting__list__table tbody th {
  background: #fff;
  text-align: left;
}

.p-meeting__list__table tbody th a {
  position: relative;
}

.p-meeting__list__table tbody th a,
.p-meeting__list__table tbody td a {
  color: #343434;
  display: block;
  padding: 1em;
}

.p-meeting__list__table .is-inactive td {
  color: #999;
  font-weight: normal;
}

.p-meeting__list__th__event,
.p-meeting__list__th__date,
.p-meeting__list__th__staff,
.p-meeting__list__th__name,
.p-meeting__list__th__membership,
.p-meeting__list__th__mail {
  text-align: left;
}

.p-meeting__list__table .p-meeting__list__th__name_sticky {
  position: sticky;
  top: 0;
  left: 45px;
  z-index: 2;
  text-align: left;
}
.p-meeting__list__table .p-meeting__list__th__name_sticky.third {
  left: 90px;
}

.p-meeting__list__table .p-meeting__list__td__name_sticky {
  position: sticky;
  top: 0;
  left: 45px;
  z-index: 2;
  background-color: white;
}
.p-meeting__list__table .p-meeting__list__td__name_sticky.third {
  left: 90px;
}

.p-meeting__list__table .p-meeting__list__th__name_sticky_second {
  position: sticky;
  top: 0;
  left: 75px;
  z-index: 2;
  text-align: left;
}

.p-meeting__list__table .p-meeting__list__td__name_sticky_second {
  position: sticky;
  top: 0;
  left: 75px;
  z-index: 2;
  background-color: white;
}

.p-meeting__list__cap {
  text-align: center;
}

.p-meeting__list__rsv {
  position: relative;
  text-align: center;
  font-size: 1.4rem;
  color: #666;
}

.p-meeting__list__rsv .is-rsv {
  display: block;
  width: 26px;
  height: 26px;
  margin: 0 auto;
  border-radius: 50%;
  line-height: 26px;
  font-size: 1.4rem;
  text-align: center;
  background: #018755;
  color: #fff;
}

.p-meeting__list__rsv .is-rsv--full {
  background: #d6105f;
}

.p-meeting__list__rsv .is-rsv--ended {
  background: #ccc;
}

.p-meeting__list__btn {
  position: relative;
  padding: 0 !important;
}

.p-meeting__list__btn__link {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.p-meeting__list__btn__link__coursol {
  cursor: pointer;
}

@media (min-width: 992px) {
  .p-meeting__list__btn__link:hover svg {
    fill: #343434;
  }
}
.p-meeting__list__svg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 20px;
  height: 20px;
  fill: #ccc;
}

.p-meeting__list__status {
  display: block;
  width: 14px;
  height: 14px;
  margin: 0 auto;
}

.is-active .p-meeting__list__status {
  fill: #018755;
}

.is-inactive .p-meeting__list__status {
  fill: #999;
}

.p-meeting__detail__sec {
  margin-bottom: 3em;
}

.p-meeting__detail__status__inner {
  background: #edf7f3;
  border-radius: 10px;
  -js-display: flex;
  display: flex;
  margin-bottom: 1em;
}

@media (min-width: 768px) {
  .p-meeting__detail__status__inner {
    padding: 1.5em;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__detail__status__inner {
    padding: 1.5em 1em;
  }
}
.p-meeting__detail__status__item {
  -js-display: flex;
  display: flex;
  align-items: baseline;
  margin-right: 2em;
}

@media (max-width: 767.9px) {
  .p-meeting__detail__status__label {
    font-size: 1.2rem;
  }
}
.p-meeting__detail__status__num {
  font-weight: bold;
}

@media (min-width: 768px) {
  .p-meeting__detail__status__num {
    font-size: 2.4rem;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__detail__status__num {
    font-size: 2rem;
  }
}
@media (min-width: 768px) {
  .p-meeting__detail__status__btns {
    -js-display: flex;
    display: flex;
  }
}
@media (min-width: 768px) {
  .p-meeting__detail__status__btn {
    margin-right: 0.5em;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__detail__status__btn {
    margin-bottom: 1em;
  }
  .p-meeting__detail__status__btn button {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .p-meeting__detail__btmbtns {
    -js-display: flex;
    display: flex;
    justify-content: flex-end;
  }
}
.p-meeting__detail__btmbtn {
  margin-right: 0.5em;
  margin-bottom: 1em;
}

@media (min-width: 768px) {
  .p-meeting__detail__btmbtn:first-child {
    margin-right: auto;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__detail__btmbtn:first-child {
    margin-bottom: 2em;
  }
}
@media (min-width: 768px) {
  .p-meeting__detail__btmbtn:last-child {
    margin-right: 0;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__detail__btmbtn button {
    width: 100%;
  }
}
/*
 * マスター系画面のテーブル用
 */
.p-meeting__master__table {
  width: 100%;
  border-top: 1px solid #ebebeb;
  border-left: 1px solid #ebebeb;
}
.p-meeting__master__table th,
.p-meeting__master__table td {
  border-bottom: 1px solid #ebebeb;
  border-right: 1px solid #ebebeb;
  vertical-align: middle;
}
.p-meeting__master__table th {
  text-align: left;
  background: #fafafa;
}
@media (min-width: 768px) {
  .p-meeting__master__table {
    font-size: 1.5rem;
  }
  .p-meeting__master__table th,
  .p-meeting__master__table td {
    padding: 1em;
    font-weight: bold;
  }
  .p-meeting__master__table th {
    width: 16em;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__master__table {
    font-size: 1.4rem;
  }
  .p-meeting__master__table th,
  .p-meeting__master__table td {
    padding: 0.75em;
    font-weight: bold;
  }
  .p-meeting__master__table th {
    width: 13em;
  }
}

.p-meeting__info__table {
  width: 100%;
  border-top: 1px solid #ebebeb;
  border-left: 1px solid #ebebeb;
}

@media (min-width: 768px) {
  .p-meeting__info__table {
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__info__table {
    font-size: 1.4rem;
  }
}
.p-meeting__info__table--secondary {
  border-top: none;
}

.p-meeting__info__table th,
.p-meeting__info__table td {
  border-bottom: 1px solid #ebebeb;
  border-right: 1px solid #ebebeb;
  vertical-align: middle;
}

@media (min-width: 768px) {
  .p-meeting__info__table th,
  .p-meeting__info__table td {
    padding: 1em;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__info__table th,
  .p-meeting__info__table td {
    padding: 0.75em;
  }
}
.p-meeting__info__table th {
  text-align: left;
  background: #fafafa;
}

@media (min-width: 768px) {
  .p-meeting__info__table th {
    width: 15em;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__info__table th {
    width: 8em;
  }
}
@media (min-width: 768px) {
  .p-meeting__info__links {
    margin-top: 1em;
    -js-display: flex;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__info__actionwrap {
    margin-bottom: 0.5em;
  }
}
.p-meeting__info__action {
  display: inline-block;
}

.p-meeting__info__action a {
  -js-display: flex;
  display: flex;
  align-items: center;
  cursor: pointer;
  color: #018755;
  font-weight: bold;
}

@media (min-width: 768px) {
  .p-meeting__info__action a {
    padding: 0.5em 1em;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__info__action a {
    padding: 1em 0;
  }
}
@media (min-width: 992px) {
  .p-meeting__info__action a:hover {
    color: #349f77;
  }
}
.p-meeting__info__action a:hover svg {
  fill: #349f77;
}

.p-meeting__info__action svg {
  width: 18px;
  fill: #018755;
  margin-right: 0.5em;
}

.p-meeting__info__fb {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.p-meeting__info__fb__item:first-child {
  margin-right: 1em;
}

.p-meeting__info__tditem {
  margin-bottom: 1.5em;
}

.p-meeting__info__form--txt,
.p-meeting__info__form--cal {
  font-weight: bold;
  border-color: #ccc;
}

.p-meeting__info__status {
  display: inline-block;
  margin-right: 0.5em;
  font-size: 1.2rem;
  padding: 0.25em 1em;
  border-radius: 3px;
  color: #fff;
}

.p-meeting__info__status--accepting {
  background: #018755;
}

.p-meeting__info__status--cancel {
  background: #333;
}

.p-meeting__info__status--full {
  background: #d6105f;
}

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop,
  .p-meeting__weeklycal__table thead th::before {
    border: none;
  }
  *::-ms-backdrop,
  .p-meeting__weeklycal__table tbody th::before {
    border: none;
  }
}
/* ============================================================================
STYLE INDEX
01 : .p-rsv
============================================================================ */
/* ============================================================================
01 : .p-rsv
============================================================================ */
.p-rsv__inner {
  background: #fff;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .p-rsv__inner {
    width: 96%;
    max-width: 1200px;
    padding: 20px;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__inner {
    padding: 15px;
  }
}
@media (min-width: 768px) {
  .p-rsv__header {
    margin-bottom: 1.5em;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__header {
    margin-bottom: 1em;
  }
}
.p-rsv__header__icon {
  -js-display: flex;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 0.5em;
  background-color: #edf7f3;
}

@media (min-width: 768px) {
  .p-rsv__header__icon {
    width: 56px;
    height: 56px;
    border-radius: 28px;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__header__icon {
    width: 46px;
    height: 46px;
    border-radius: 23px;
  }
}
.p-rsv__header__icon svg {
  height: auto;
  fill: #018755;
}

@media (min-width: 768px) {
  .p-rsv__header__icon svg {
    width: 24px;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__header__icon svg {
    width: 20px;
  }
}
.p-rsv__header__ttl {
  text-align: center;
}

@media (min-width: 768px) {
  .p-rsv__header__ttl__name {
    font-size: 1.6rem;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__header__ttl__name {
    font-size: 1.4rem;
  }
}
.p-rsv__header__ttl__event {
  color: #018755;
}

@media (min-width: 768px) {
  .p-rsv__header__ttl__event {
    font-size: 2.4rem;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__header__ttl__event {
    font-size: 2rem;
  }
}
@media (min-width: 768px) {
  .p-rsv__navs {
    width: 90%;
    max-width: 720px;
    margin: 0 auto 2em;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__navs {
    -js-display: flex;
    display: flex;
    justify-content: center;
    margin-bottom: 2em;
  }
}
@media (min-width: 768px) {
  .p-rsv__nav {
    float: left;
    width: 25%;
    height: 46px;
    line-height: 46px;
    text-align: center;
    background: #f3f3f3;
    font-weight: bold;
    padding: 0 5px 0 35px;
    font-size: 1.4rem;
  }
}
@media (min-width: 768px) {
  .three-step .p-rsv__nav {
    width: 33%;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__nav {
    position: relative;
    margin-left: 25px;
    margin-right: 25px;
    width: 14px;
    height: 14px;
    border-radius: 7px;
    background: #efefef;
  }
}
@media (min-width: 768px) {
  .p-rsv__nav.is-active,
  .p-rsv__nav.is-active::before,
  .p-rsv__nav.is-active::after {
    background: #018755;
    color: #fff;
  }
}
.p-rsv__nav.is-active {
  background: #018755;
}

@media (max-width: 767.9px) {
  .p-rsv__nav.is-active::after {
    color: #333;
  }
}
@media (min-width: 768px) {
  .p-rsv__nav::before {
    content: "";
    display: block;
    float: right;
    width: 23px;
    height: 23px;
    margin: 0 -23px -23px auto;
    background: #f3f3f3;
    border-right: 3px solid #fff;
    transform: skew(20deg);
  }
}
@media (max-width: 767.9px) {
  .p-rsv__nav::before {
    position: absolute;
    top: 7px;
    left: 14px;
    content: "";
    display: block;
    width: 50px;
    height: 1px;
    background: #efefef;
  }
}
@media (min-width: 768px) {
  .p-rsv__nav::after {
    position: relative;
    content: "";
    display: block;
    width: 23px;
    height: 23px;
    margin: -23px -23px 0 auto;
    background: #f3f3f3;
    border-right: 3px solid #fff;
    transform: skew(-20deg);
  }
}
@media (max-width: 767.9px) {
  .p-rsv__nav::after {
    position: absolute;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    font-size: 1.1rem;
    color: #ccc;
    top: 18px;
    left: -1em;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__nav span {
    display: none;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__nav:nth-child(1)::after {
    content: "STEP1";
  }
}
@media (max-width: 767.9px) {
  .p-rsv__nav:nth-child(2)::after {
    content: "STEP2";
  }
}
@media (max-width: 767.9px) {
  .p-rsv__nav:nth-child(3)::after {
    content: "STEP3";
  }
}
@media (max-width: 767.9px) {
  .p-rsv__navs.three-step .p-rsv__nav:nth-child(3)::before {
    display: none;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__nav:nth-child(4)::before {
    display: none;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__nav:nth-child(4)::after {
    content: "STEP4";
  }
}
@media (max-width: 767.9px) {
  .p-rsv__navs.three-step .p-rsv__nav:nth-child(4)::after {
    display: none;
  }
}
.p-rsv__weeklycal__header {
  margin-bottom: 0.75em;
}

@media (min-width: 768px) {
  .p-rsv__weeklycal__header {
    position: relative;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__weeklycal__header {
    -js-display: flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
@media (min-width: 768px) {
  .p-rsv__weeklycal__header__main {
    width: 50%;
    margin: 0 auto;
    -js-display: flex;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__weeklycal__header__main {
    -js-display: flex;
    display: flex;
    align-items: center;
  }
}
@media (min-width: 768px) {
  .p-rsv__weeklycal__header__sub {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
.p-rsv__weeklycal__header__month {
  font-weight: bold;
  font-size: 2rem;
}

@media (min-width: 768px) {
  .p-rsv__weeklycal__header__month {
    margin: 0 10px;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__weeklycal__header__month {
    margin-right: 10px;
  }
}
.p-rsv__weeklycal__header__month span {
  position: relative;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-size: 3.6rem;
  top: 2px;
}

@media (max-width: 767.9px) {
  .p-rsv__weeklycal__header__month {
    order: -1;
  }
}
.p-rsv__weeklycal__check {
  text-align: center;
  width: 20px;
  height: 20px;
  margin: 0 auto 5px;
}

.p-rsv__weeklycal__check svg {
  fill: #018755;
  width: 100%;
  height: auto;
}

.is-inactive .p-rsv__weeklycal__check svg {
  fill: #ccc;
  padding: 2px;
}

.p-rsv__weeklycal__num {
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1;
}

.is-inactive .p-rsv__weeklycal__num {
  color: #ccc;
}

.p-rsv__lead {
  text-align: center;
}

@media (min-width: 768px) {
  .p-rsv__lead {
    margin-bottom: 2.4em;
  }
}
@media (min-width: 768px) {
  .p-rsv__useredit {
    max-width: 500px;
    margin: 0 auto 2em;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__useredit {
    margin-bottom: 2em;
  }
}
@media (min-width: 768px) {
  .p-rsv__useredit__item {
    margin-bottom: 1.5em;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__useredit__item {
    margin-bottom: 1em;
  }
}
.p-rsv__useredit__item__ttl {
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 0.5em;
}

.p-rsv__useredit__item__txt__inner {
  font-size: 1.6rem;
  font-weight: bold;
  padding: 1em;
  background: #fafafa;
  border-radius: 5px;
}

.p-rsv__useredit__label {
  display: inline-block;
  font-size: 1rem;
  font-weight: normal;
  padding: 0.4em;
  margin-left: 0.5em;
  line-height: 1;
  background: #d6105f;
  color: #fff;
  border-radius: 3px;
}

@media (min-width: 768px) {
  .p-rsv__btmbtns {
    -js-display: flex;
    display: flex;
    justify-content: space-between;
    width: 420px;
    margin: 0 auto;
  }
}
@media (min-width: 768px) {
  .p-rsv__btmbtn:nth-child(2) {
    order: -1;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__btmbtn button {
    width: 100%;
    margin-bottom: 15px;
  }
}
.p-rsv__msg__primary {
  font-weight: bold;
  text-align: center;
  padding: 2em 0;
}

@media (min-width: 768px) {
  .p-rsv__msg__primary {
    font-size: 2.6rem;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__msg__primary {
    font-size: 2rem;
  }
}
.p-rsv__msg__secondaly {
  text-align: center;
}

@media (min-width: 768px) {
  .p-rsv__msg__secondaly {
    font-size: 1.8rem;
    line-height: 2;
  }
}
@media (max-width: 767.9px) {
  .p-rsv__msg__secondaly {
    font-size: 1.6rem;
  }
}
/* ============================================================================
タグ一括追加、削除用モーダルウィンドウ
============================================================================ */
@media (min-width: 768px) {
  .p-mdl__header {
    margin-bottom: 1em;
  }
}
.p-mdl__header__ttl {
  text-align: left;
  font-size: 2rem;
}

@media (min-width: 768px) {
  .p-mdl__useredit {
    max-width: 600px;
    margin: 0 auto 0.5em;
  }
}
.p-mdl__edit__item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 0.5em;
}

@media (min-width: 768px) {
  .p-mdl__edit__item__tag__select__area {
    width: 600px;
    padding: 0.5em;
  }
}
.p-mdl__edit__item__tag__select {
  background: white;
  padding: 0.75em;
  border: 1px solid #ccc;
  border-radius: 5px;
  max-height: 170px;
  overflow: auto;
}

.p-mdl__list__message {
  padding: 0px 0px 50px 7px;
}

#tag-bulk-remove-modal-content {
  width: 50%;
  margin: 0;
  padding: 10px 20px;
  border: 2px solid #aaa;
  background: #fff;
  position: fixed;
  display: none;
  z-index: 4;
}

/* ============================================================================
03-03 : utility
============================================================================ */
.u-cf {
  *zoom: 1;
}

.u-cf:after {
  display: table;
  clear: both;
  content: "";
}

.u-fz--xs {
  font-size: 0.75em !important;
}

.u-fz--sm {
  font-size: 0.875em !important;
}

.u-fz--md {
  font-size: 1em !important;
}

.u-fz--lg {
  font-size: 1.25em !important;
}

.u-fz--xl {
  font-size: 1.5em !important;
}

.u-fz--10 {
  font-size: 10px !important;
}

.u-fz--11 {
  font-size: 11px !important;
}

.u-fz--12 {
  font-size: 12px !important;
}

.u-fz--13 {
  font-size: 13px !important;
}

.u-fz--14 {
  font-size: 14px !important;
}

.u-fz--15 {
  font-size: 15px !important;
}

.u-fz--16 {
  font-size: 16px !important;
}

.u-fz--17 {
  font-size: 17px !important;
}

.u-fz--18 {
  font-size: 18px !important;
}

.u-fz--19 {
  font-size: 19px !important;
}

.u-fz--20 {
  font-size: 20px !important;
}

.u-fw--n {
  font-weight: normal !important;
}

.u-fw--b {
  font-weight: bold !important;
}

.u-fw--100 {
  font-weight: 100 !important;
}

.u-fw--200 {
  font-weight: 200 !important;
}

.u-fw--300 {
  font-weight: 300 !important;
}

.u-fw--400 {
  font-weight: 400 !important;
}

.u-fw--500 {
  font-weight: 500 !important;
}

.u-fw--600 {
  font-weight: 600 !important;
}

.u-fw--700 {
  font-weight: 700 !important;
}

.u-fw--800 {
  font-weight: 800 !important;
}

.u-fw--900 {
  font-weight: 900 !important;
}

.u-ta--l {
  text-align: left !important;
}

.u-ta--r {
  text-align: right !important;
}

.u-ta--c {
  text-align: center !important;
}

.u-td--n {
  text-decoration: none !important;
}

.u-td--u {
  text-decoration: underline !important;
}

.u-td--o {
  text-decoration: overline !important;
}

.u-ti--0 {
  text-indent: 0 !important;
}

.u-ti--9999 {
  text-indent: -9999px !important;
}

.u-fl--n {
  float: none !important;
}

.u-fl--r {
  float: right !important;
}

.u-fl--l {
  float: left !important;
}

.u-cl--n {
  clear: none !important;
}

.u-cl--r {
  clear: right !important;
}

.u-cl--l {
  clear: left !important;
}

.u-cl--b {
  clear: both !important;
}

.u-pos--s {
  position: static !important;
}

.u-pos--r {
  position: relative !important;
}

.u-pos--a {
  position: absolute !important;
}

.u-pos--f {
  position: fixed !important;
}

.u-t--a {
  top: auto !important;
}

.u-t--0 {
  top: 0 !important;
}

.u-r--a {
  right: auto !important;
}

.u-r--0 {
  right: 0 !important;
}

.u-b--a {
  bottom: auto !important;
}

.u-b--0 {
  bottom: 0 !important;
}

.u-l--a {
  left: auto !important;
}

.u-l--0 {
  left: 0;
}

.u-z--a {
  z-index: auto;
}

.u-z--0 {
  z-index: 0;
}

.u-z--1 {
  z-index: 1 !important;
}

.u-z--2 {
  z-index: 2 !important;
}

.u-z--3 {
  z-index: 3 !important;
}

.u-z--4 {
  z-index: 4 !important;
}

.u-z--5 {
  z-index: 5 !important;
}

.u-z--6 {
  z-index: 6 !important;
}

.u-z--999 {
  z-index: 999 !important;
}

.u-va--t {
  vertical-align: top !important;
}

.u-va--m {
  vertical-align: middle !important;
}

.u-va--b {
  vertical-align: bottom !important;
}

.u-d--tb {
  display: table !important;
}

.u-d--tbc {
  display: table-cell !important;
}

.u-d--b {
  display: block !important;
}

.u-d--ib {
  display: inline-block !important;
}

.u-d--n {
  display: none !important;
}

.u-mg--0 {
  margin: 0 !important;
}

.u-mg--sm {
  margin: 0.5rem !important;
}

.u-mg--md {
  margin: 1rem !important;
}

.u-mg--lg {
  margin: 1.5rem !important;
}

.u-mg--xl {
  margin: 3rem !important;
}

.u-mt--0 {
  margin-top: 0 !important;
}

.u-mt--auto {
  margin-top: auto !important;
}

.u-mt--sm {
  margin-top: 0.5rem !important;
}

.u-mt--md {
  margin-top: 1rem !important;
}

.u-mt--lg, .p-tt-top__sysmsg {
  margin-top: 1.5rem !important;
}

.u-mt--xl {
  margin-top: 3rem !important;
}

.u-mr--0 {
  margin-right: 0 !important;
}

.u-mr--auto {
  margin-right: auto !important;
}

.u-mr--sm {
  margin-right: 0.5rem !important;
}

.u-mr--md {
  margin-right: 1rem !important;
}

.u-mr--lg {
  margin-right: 1.5rem !important;
}

.u-mr--xl {
  margin-right: 3rem !important;
}

.u-mb--0 {
  margin-bottom: 0 !important;
}

.u-mb--auto {
  margin-bottom: auto !important;
}

.u-mb--sm {
  margin-bottom: 0.5rem !important;
}

.u-mb--md {
  margin-bottom: 1rem !important;
}

.u-mb--lg {
  margin-bottom: 1.5rem !important;
}

.u-mb--xl {
  margin-bottom: 3rem !important;
}

.u-mb--7l {
  margin-bottom: 7rem !important;
}

.u-ml--0 {
  margin-left: 0 !important;
}

.u-ml--auto {
  margin-left: auto !important;
}

.u-ml--sm {
  margin-left: 0.5rem !important;
}

.u-ml--md, .p-mp_rsrvmng__list__txt {
  margin-left: 1rem !important;
}

.u-ml--lg {
  margin-left: 1.5rem !important;
}

.u-ml--xl, .p-tt-top__sysmsg {
  margin-left: 3rem !important;
}

.u-pd--0 {
  padding: 0 !important;
}

.u-pd--sm {
  padding: 0.5rem !important;
}

.u-pd--md {
  padding: 1rem !important;
}

.u-pd--lg {
  padding: 1.5rem !important;
}

.u-pd--xl {
  padding: 3rem !important;
}

.u-pt--0 {
  padding-top: 0 !important;
}

.u-pt--auto {
  padding-top: auto !important;
}

.u-pt--sm {
  padding-top: 0.5rem !important;
}

.u-pt--md {
  padding-top: 1rem !important;
}

.u-pt--lg {
  padding-top: 1.5rem !important;
}

.u-pt--xl {
  padding-top: 3rem !important;
}

.u-pr--0 {
  padding-right: 0 !important;
}

.u-pr--auto {
  padding-right: auto !important;
}

.u-pr--sm {
  padding-right: 0.5rem !important;
}

.u-pr--md {
  padding-right: 1rem !important;
}

.u-pr--lg {
  padding-right: 1.5rem !important;
}

.u-pr--xl {
  padding-right: 3rem !important;
}

.u-pb--0 {
  padding-bottom: 0 !important;
}

.u-pb--auto {
  padding-bottom: auto !important;
}

.u-pb--sm {
  padding-bottom: 0.5rem !important;
}

.u-pb--md {
  padding-bottom: 1rem !important;
}

.u-pb--lg {
  padding-bottom: 1.5rem !important;
}

.u-pb--xl {
  padding-bottom: 3rem !important;
}

.u-pl--0 {
  padding-left: 0 !important;
}

.u-pl--auto {
  padding-left: auto !important;
}

.u-pl--sm {
  padding-left: 0.5rem !important;
}

.u-pl--md {
  padding-left: 1rem !important;
}

.u-pl--lg {
  padding-left: 1.5rem !important;
}

.u-pl--xl {
  padding-left: 3rem !important;
}

.u-op--0 {
  opacity: 0 !important;
}

.u-op--10 {
  opacity: 0.1 !important;
}

.u-op--20 {
  opacity: 0.2 !important;
}

.u-op--30 {
  opacity: 0.3 !important;
}

.u-op--40 {
  opacity: 0.4 !important;
}

.u-op--50 {
  opacity: 0.5 !important;
}

.u-op--60 {
  opacity: 0.6 !important;
}

.u-op--70 {
  opacity: 0.7 !important;
}

.u-op--80 {
  opacity: 0.8 !important;
}

.u-op--90 {
  opacity: 0.9 !important;
}

.u-op--100 {
  opacity: 1 !important;
}

.u-nowrap {
  white-space: nowrap;
}

.u-wrap {
  word-break: break-all;
}

.u-bd--df {
  border: solid 1px #ccc;
}

.u-bd--pr {
  border: solid 1px #018755;
}

.u-bd--al {
  border: solid 1px #d6105f;
}

.u-bdr {
  border-radius: 5px;
}

.u-wd--100 {
  width: 100% !important;
}

.u-wd--75 {
  width: 75% !important;
}

.u-wd--50 {
  width: 50% !important;
}

.u-wd--25 {
  width: 25% !important;
}

@media (min-width: 992px) {
  .u-wdl--100 {
    width: 100% !important;
  }
}
@media (min-width: 992px) {
  .u-wdl--75 {
    width: 75% !important;
  }
}
@media (min-width: 992px) {
  .u-wdl--50 {
    width: 50% !important;
  }
}
@media (min-width: 992px) {
  .u-wdl--25 {
    width: 25% !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .u-wdm--100 {
    width: 100% !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .u-wdm--75 {
    width: 75% !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .u-wdm--50 {
    width: 50% !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .u-wdm--25 {
    width: 25% !important;
  }
}
@media (max-width: 767.9px) {
  .u-wds--100 {
    width: 100% !important;
  }
}
@media (max-width: 767.9px) {
  .u-wds--75 {
    width: 75% !important;
  }
}
@media (max-width: 767.9px) {
  .u-wds--50 {
    width: 50% !important;
  }
}
@media (max-width: 767.9px) {
  .u-wds--25 {
    width: 25% !important;
  }
}
.u-mw--800 {
  max-width: 800px;
}

/* ============================================================================
04 : 追加分
============================================================================ */
#rsrv_req_conf_note {
  white-space: pre-wrap;
}

#rsrv_req_comp_note {
  white-space: pre-wrap;
}

.c-form__input_select {
  transition: all 0.3s;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-weight: bold;
  line-height: 1;
  color: #343434;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2230%22%20viewBox%3D%220%200%2021%2030%22%20fill%3D%22%23018755%22%3E%3Cpath%20d%3D%22M1.41%2012h18.18a1.42%201.42%200%20001-2.43L11.5.42a1.4%201.4%200%2000-2%200L.42%209.57A1.42%201.42%200%20001.41%2012zm18.18%206H1.41a1.42%201.42%200%2000-1%202.43l9.09%209.15a1.4%201.4%200%20002%200l9.08-9.15a1.42%201.42%200%2000-.99-2.43z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: 8px auto;
  background-position: right 12px center;
  background-color: #fff;
}

@media (min-width: 992px) {
  .c-form__input_select {
    font-size: 1.6rem;
    padding: 0.75em 2em 0.75em 0.75em;
  }
}
@media (max-width: 991.9px) {
  .c-form__input_select {
    font-size: 1.5rem;
    padding: 0.75em 2em 0.75em 0.75em;
  }
}
@media (max-width: 767.9px) {
  .c-form__input_select {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .c-form__input_select:hover {
    border-color: #349f77;
  }
}
@media (min-width: 992px) {
  .c-form__input_select:focus {
    border-color: #349f77;
    box-shadow: 2px 2px 4px 4px rgba(0, 0, 0, 0.05);
  }
}
.c-form__input_select:disabled {
  background-image: none;
  opacity: 1;
}

@media (min-width: 992px) {
  .c-form__input_select:disabled:hover {
    border-color: transparent;
  }
}
.p-color__alert {
  color: red;
}

/* ============================================================================
 予約フォーム(予約画面含む)共通
============================================================================ */
/*ラジオ縦整列用*/
.radio_lb {
  display: block;
  margin-bottom: 0.5em;
}

/*チェックボックス縦整列用*/
.check_lb {
  display: block;
  margin-bottom: 0.5em;
}

.meetus-time {
  max-width: 100px;
}

/* ============================================================================
05 : 予約フォーム
============================================================================ */
.form_box {
  padding: 0.5em 1em;
  margin: 2em 0;
  font-weight: bold;
  color: #343434;
  /*文字色*/
  background: #edf7f3;
  border: solid 2px #ccc;
  /*線*/
  border-radius: 10px;
  /*角の丸み*/
  max-width: 800px;
  min-width: 300px;
}

.ui-state-highlight {
  min-width: 300px;
  height: 15.5em;
  line-height: 1.2em;
}

.form_box p {
  margin: 0;
  padding: 0;
}

.form_inner_box {
  margin-left: 1.5em;
  margin-right: 2.5em;
  margin-bottom: 1.5em;
  margin-top: 1.5em;
}

/* 質問番号 */
.question_no {
  font-size: 120%;
}

/* 編集ボタン -->*/
.btn-square-little-rich {
  position: relative;
  display: inline-block;
  padding: 0.25em 0.5em;
  text-decoration: none;
  color: #fff;
  background: #018755;
  /*色*/
  border: solid 1px #018755;
  /*線色*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}

.btn-square-little-rich:active {
  /*押したとき*/
  border: solid 1px #018755;
  box-shadow: none;
  text-shadow: none;
}

/* <-- 編集ボタン */
/* gripアイコンの行 */
.meetus_form_grip {
  display: flex;
  flex-flow: row;
  justify-content: center;
  cursor: move;
  margin-bottom: 0.25em;
}

/* 入力フォームBOX1行目 */
.meetus_form_row_top {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  margin-bottom: 1em;
}

/* 入力フォームBOX2行目 */
.meetus_form_row_2 {
  display: flex;
  flex-flow: row;
  margin-bottom: 1em;
}

.answer_box {
  margin-left: 15px;
}

/* 入力フォームBOX3行目 */
.meetus_form_row_3 {
  display: flex;
  flex-flow: row;
  margin-left: 15px;
  margin-bottom: 1em;
  word-break: break-all;
}

.meetus_form_bottom {
  display: flex;
  flex-flow: row;
  justify-content: flex-end;
  margin-left: 15px;
  margin-bottom: 1em;
}

.meetus_form_bottom a:hover svg {
  fill: #343434;
}

.meetus_form_bottom_svg {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 20px;
  height: 20px;
  fill: #343434;
}

/* 設問 */
.question_label {
  margin-right: 0.25em;
}

/* 必須 */
.require {
  color: #ff0000;
  font-size: 80%;
}

/* ============================================================================
 フォームアイテム登録/更新画面用
============================================================================ */
.items_form_box {
  padding: 0.5em 1em;
  margin-bottom: 2em;
  font-weight: bold;
  color: #343434;
  /*文字色*/
  background: #edf7f3;
  border: solid 2px #ccc;
  /*線*/
  border-radius: 10px;
  /*角の丸み*/
  max-width: 800px;
  min-width: 300px;
  display: none;
}

.items_type_row {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-right: auto;
}

.items_type_row_element {
  margin-right: 2em;
}

.items_type_row_element_init_hidden {
  display: none;
}

.items_row_top {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  margin-bottom: 1em;
}

.items_box {
  padding-left: 0px;
}

.items_row {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 1em;
  margin-bottom: 1em;
  margin-right: 1em;
  cursor: move;
}

.items_row--txtbox {
  min-width: 200px;
  margin-right: 1.25em;
}

.pluralBtn {
  width: 30px;
  height: 30px;
  border: 1px solid #ccc;
  background: #fff;
  border-radius: 5px;
  padding: 0;
  margin: 0;
}

#items_sortableArea {
  margin-left: 1.5em;
  margin-right: 2.5em;
  margin-bottom: 1.5em;
  overflow: hidden;
}

.c-form__button_urlcfm {
  min-width: 140px;
}

/* ============================================================================
 予約受付画面用
============================================================================ */
.rsrv_questionnaire_area {
  font-size: 1.6rem;
  /* font-weight: bold; */
  padding: 1em;
  background: #edf7f3;
  border-radius: 5px;
}

.rsrv_select {
  line-height: initial;
  font-weight: bold;
  border: 1px solid #ccc;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2230%22%20viewBox%3D%220%200%2021%2030%22%20fill%3D%22%23018755%22%3E%3Cpath%20d%3D%22M1.41%2012h18.18a1.42%201.42%200%20001-2.43L11.5.42a1.4%201.4%200%2000-2%200L.42%209.57A1.42%201.42%200%20001.41%2012zm18.18%206H1.41a1.42%201.42%200%2000-1%202.43l9.09%209.15a1.4%201.4%200%20002%200l9.08-9.15a1.42%201.42%200%2000-.99-2.43z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: 8px auto;
  background-position: right 12px center;
  background-color: #fff;
}

.rsrv_precautionary_statement {
  font-size: 1.1rem;
  color: #808080;
}

.rsrv_req_new_line {
  white-space: pre-wrap;
}

.rsrv_line_height {
  line-height: initial;
}

.rsrv_border {
  border: 1px solid #ccc;
}

.rsrv_address {
  font-size: 1.3rem;
  font-weight: bold;
  margin-top: 1rem !important;
  margin-bottom: 0.5rem !important;
}

.add_button {
  position: relative;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: inherit;
  display: inline-block;
  min-width: 6.25em;
  border: solid 1px #018755;
  /*線色*/
  border-radius: 4px;
  background: #018755;
  color: #fff;
  padding: 0.625em 0.8em;
  font-size: 1rem;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  margin: 1rem;
  transition: 0.3s ease-out;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  font-size: 14px;
  font-weight: bold;
}

/* エラー画面用 */
.error__ttl__icon {
  position: relative;
  fill: #018755;
  margin-right: 0.25em;
  margin-top: 1em;
  margin-bottom: 1em;
}

.p-meeting__sysmsg {
  margin-left: 1.5em;
  margin-bottom: 1.5em;
  font-size: 125%;
}

/* 横長アイコン用 */
.c-section__ttl__horizontal_icon {
  position: relative;
  fill: #018755;
  margin-right: 0.25em;
}

@media (min-width: 992px) {
  .c-section__ttl__horizontal_icon {
    top: 6px;
    width: 40px;
    height: 35px;
  }
}
@media (max-width: 991.9px) {
  .c-section__ttl__horizontal_icon {
    top: 3px;
    width: 27px;
    height: 24px;
  }
}
.p-header__nav__horizontal_icon {
  transition: all 0.3s;
}

@media (min-width: 992px) {
  .p-header__nav__horizontal_icon {
    width: 28px;
    height: 28px;
    margin-right: 10px;
    fill: #bababa;
  }
}
@media (max-width: 991.9px) {
  .p-header__nav__horizontal_icon {
    width: 30px;
    height: 30px;
    margin-right: 15px;
    fill: #fff;
  }
}
@media (min-width: 992px) {
  .is-active .p-header__nav__horizontal_icon {
    fill: #fff;
  }
}
/* ============================================================================
 連携管理画面用
============================================================================ */
.google_permission_error {
  font-weight: bold;
  white-space: pre-line;
  padding: 0.5em 1em;
  color: red;
  background: #ffebe9;
}

/* ============================================================================
ミーティング登録完了画面
============================================================================ */
.google_error {
  padding: 30px 30px 20px;
  padding-bottom: 30px;
  margin: 30px 30px;
  color: #ff9933;
  background: #ffffcc;
}

.google_error > p {
  font-size: 100%;
  font-weight: bold;
  margin-bottom: 5px;
}

.google_error > p:nth-child(3) {
  margin-bottom: 15px;
}

.google_error > a:nth-child(4) {
  margin-bottom: 15px;
}

.google_error > a:nth-child(5) {
  font-size: 90%;
  display: block;
}

/* ============================================================================
ヘルプ画面
============================================================================ */
.help__items {
  display: flex;
  flex-flow: column;
  margin: 0 0 1em;
}

.around {
  justify-content: space-around;
}

.help__item {
  padding: 1.2em;
  margin-top: 1em;
  margin-bottom: 1em;
  background: rgba(164, 185, 176, 0.0392156863);
  box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.1);
}

@media (min-width: 992px) {
  .help__item {
    padding: 1.5em;
  }
}
@media (max-width: 991.9px) {
  .help__item {
    padding: 1em;
  }
}
.help__item:hover {
  background: rgba(41, 153, 99, 0.0470588235);
  cursor: pointer;
}

.help__inner {
  justify-content: space-between;
  z-index: 0;
}

.help__title {
  text-align: center;
  font-weight: bold;
}

.help__sub {
  margin-bottom: 10px;
  color: #535353;
  font-weight: bold;
}

@media (min-width: 992px) {
  .help__sub {
    font-size: 20px;
  }
}
@media (max-width: 991.9px) {
  .help__sub {
    font-size: 17px;
  }
}
.help__explanation {
  color: #535353;
}

@media (min-width: 992px) {
  .help__explanation {
    font-size: 15px;
  }
}
@media (max-width: 991.9px) {
  .help__explanation {
    font-size: 13px;
  }
}
.help__img {
  fill: #168050;
  float: left;
  list-style: none;
  margin: 0 auto;
  padding-right: 1.5em;
}

.help__icon {
  fill: #018755;
  margin-right: 0.25em;
}

@media (min-width: 992px) {
  .help__icon {
    top: 6px;
    width: 60px;
    height: 60px;
  }
}
@media (max-width: 991.9px) {
  .help__icon {
    top: 3px;
    width: 45px;
    height: 45px;
    padding-top: 10px;
  }
}
/*↓↓↓ Ver1.07 ↓↓↓ */
/* ============================================================================
連絡先登録・更新画面
============================================================================ */
/*連絡先検索フォーム*/
.c-form__select.tag_select {
  width: 180px;
}

.c-form__input.contact_search {
  width: 180px;
}

@media (max-width: 991.9px) {
  .c-form__select.tag_select {
    width: 130px;
  }
  .c-form__input.contact_search {
    width: 130px;
  }
}
@media (max-width: 767.9px) {
  .c-form__select.tag_select {
    width: 100%;
  }
  .c-form__input.contact_search {
    width: 100%;
  }
}
/* 入力フォーム*/
.p-contact__edit__items {
  background: #edf7f3;
  border-radius: 10px;
  position: relative;
  overflow: auto;
}
@media (min-width: 768px) {
  .p-contact__edit__items {
    margin: 0 auto 2em;
    padding: 2.5em 2.5em 1em 2.5em;
  }
}
@media (max-width: 767.9px) {
  .p-contact__edit__items {
    margin-bottom: 2em;
    padding: 1.5em 1.5em 1em 1.5em;
  }
}
.p-contact__edit__item__err__msg {
  color: red;
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-contact__edit__item__err__msg {
    margin-left: 198px;
  }
}
@media (max-width: 767.9px) {
  .p-contact__edit__item__err__msg {
    margin-left: 164.5px;
  }
}
.p-contact__edit__item__primary {
  display: block;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .p-contact__edit__item__primary {
    width: 70%;
    margin-bottom: 1.5em;
  }
}
@media (max-width: 767.9px) {
  .p-contact__edit__item__primary {
    width: 100%;
    margin-bottom: 1em;
  }
}
.p-contact__edit__item__secondary {
  display: flex;
  align-items: flex-start;
}
.p-contact__edit__item__ttlwrap {
  display: inline-block;
}
@media (min-width: 768px) {
  .p-contact__edit__item__ttlwrap {
    margin-top: 22px;
  }
}
@media (max-width: 767.9px) {
  .p-contact__edit__item__ttlwrap {
    margin-top: 18px;
  }
}
.p-contact__edit__item__ttl {
  display: flex;
  justify-content: space-between;
  font-weight: bold;
  align-items: center;
}
@media (min-width: 768px) {
  .p-contact__edit__item__ttl {
    font-size: 1.5rem;
    min-width: 12em;
  }
}
@media (max-width: 767.9px) {
  .p-contact__edit__item__ttl {
    font-size: 1.3rem;
    min-width: 11.5em;
  }
}
.p-contact__edit__item__txt, .p-contact__edit__item__tag__select__area {
  overflow: auto;
  padding: 0.5em;
}
@media (min-width: 768px) {
  .p-contact__edit__item__txt, .p-contact__edit__item__tag__select__area {
    width: 570px;
    margin-left: 10px;
  }
}
@media (max-width: 767.9px) {
  .p-contact__edit__item__txt, .p-contact__edit__item__tag__select__area {
    width: 100%;
    margin-left: 7px;
  }
}
.p-contact__edit__item__txt__inner {
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-contact__edit__item__txt__inner {
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .p-contact__edit__item__txt__inner {
    font-size: 1.3rem;
  }
}
.p-contact__edit__item__tag__select {
  background: white;
  padding: 0.75em;
  border: 1px solid #ccc;
  border-radius: 5px;
  overflow-x: auto;
}
@media (max-width: 991.9px) {
  .p-contact__edit__item__tag__select {
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
  }
}
.p-contact__edit__item__tag__select::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.p-contact__edit__item__tag__select::-webkit-scrollbar-track {
  border-radius: 5px;
  box-shadow: 0 0 4px #aaa inset;
}
.p-contact__edit__item__tag__select::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #349f77;
}

/* 入力フォーム 必須/任意ラベル */
.c-form__label {
  display: inline-block;
  font-weight: normal;
  color: #fff;
  border-radius: 3px;
}
@media (min-width: 768px) {
  .c-form__label {
    font-size: 1.2rem;
    padding: 0.15em 0.3em;
    height: 1.8em;
    margin-right: 5px;
  }
}
@media (max-width: 767.9px) {
  .c-form__label {
    font-size: 1rem;
    padding: 0.25em 0.4em;
    margin-right: 2px;
  }
}
.c-form__required__label {
  background: #d6105f;
}
.c-form__optional__label {
  background: #7c7c7c;
}

/*タグ*/
.tag {
  line-height: 26px;
  position: relative;
  display: inline-block;
  height: 26px;
  margin: 5px 0 5px 10px;
  padding: 0 20px 0 23px;
  transition: color 0.2s;
  text-decoration: none;
  border-radius: 0 3px 3px 0;
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
}
.tag::before {
  position: absolute;
  top: 10px;
  left: 3px;
  width: 6px;
  height: 6px;
  content: "";
  border-radius: 10px;
}
.tag::after {
  position: absolute;
  top: -1px;
  left: -6px;
  width: 0;
  height: 0;
  content: "";
  border-style: solid;
  border-width: 14px 8px 14px 0;
  border-radius: 4px;
}
.tag__selected {
  color: #ececec;
  background: #018755;
}
.tag__selected:hover {
  cursor: pointer;
}
.tag__selected:focus {
  background: #ececec;
  color: #018755;
}
.tag__selected:focus::after {
  border-color: transparent #ececec;
}
.tag__selected:focus::before {
  background: #018755;
}
.tag__selected::before {
  background: #fff;
}
.tag__selected::after {
  background: #fff;
  border-color: transparent #018755;
}
.tag__unselected {
  color: #018755;
  background: #ececec;
}
.tag__unselected:hover {
  cursor: pointer;
}
.tag__unselected:focus {
  background: #018755;
  color: #fff;
}
.tag__unselected:focus::after {
  border-color: transparent #018755;
}
.tag__unselected:focus::before {
  background: #fff;
}
.tag__unselected::before {
  background: #018755;
}
.tag__unselected::after {
  background: #fff;
  border-color: transparent #ececec;
}
.tag__locked {
  color: #fff;
  background: #bababa;
}
.tag__locked::before {
  background: #fff;
}
.tag__locked::after {
  background: #fff;
  border-color: transparent #bababa;
}
.tag__pre__notes {
  font-size: 1.1rem;
  color: #808080;
  margin-top: 5px;
}

/* ============================================================================
予約者連絡先登録画面
============================================================================ */
.p-contact__list__td__reg__status {
  color: #bababa;
  font-size: 85%;
  padding-left: 4px;
}

.p-contact__list__message {
  padding: 0 1.5em;
}

.p-contact__list__checkbox {
  width: 14px;
  margin: 0 auto;
}

/* 一括チェック用 */
.c-form__ctrl input:indeterminate ~ .c-form__ctrl__indicator:after {
  display: block;
}

.c-form__ctrl--checkbox input:indeterminate ~ .c-form__ctrl__indicator:after {
  top: 5px;
  border: 0.2px solid;
  transform: rotate(90deg);
  background: #018755;
  border-color: #018755;
  /* チェックの色 */
}

/* ============================================================================
メールテンプレート登録・更新画面(一斉送信メール用)
============================================================================ */
#mail_template_editor .bulk_mail {
  display: none;
}

#mail_template_editor .bulk_mail_active {
  display: table-row;
}

.meetus_editor_icon {
  cursor: pointer;
  margin-right: 5px;
  margin-bottom: 5px;
  position: relative;
  display: inline-block;
}

.meetus_editor_icons {
  padding: 2px;
  margin-top: 5px;
  margin-bottom: 5px;
}

/* 編集ボタン */
.meetus_editor_btn {
  position: relative;
  display: inline-block;
  padding: 0.25em 0.5em;
  text-decoration: none;
  color: #018755;
  background: #fff;
  /*色*/
  border: solid 1.5px #018755;
  /*線色*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}

/* 編集補助のバルーン */
.balloon_top {
  /* ツールチップのスタイル */
  width: 400px;
  /* 横幅 */
  position: absolute;
  left: 50%;
  bottom: 80%;
  /* Y軸の位置 */
  transform: translateX(-50%);
  margin-bottom: 15px;
  /* テキストとの距離 */
  padding: 8px;
  border-radius: 10px;
  /* 角の丸み */
  background-color: #666;
  /* ツールチップの背景色 */
  font-size: 0.9em;
  color: #fff;
  text-align: left;
  visibility: hidden;
  /* ツールチップを非表示に */
  opacity: 0;
  /* 不透明度を0％に */
  z-index: 1;
  transition: 0.5s all;
  /* マウスオーバー時のアニメーション速度 */
}

.balloon_top::before {
  /* 吹き出しの「しっぽ」のスタイル */
  content: "";
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top: 12px solid #666;
  /* 最後の値は「ツールチップの背景色」と合わせる */
  position: absolute;
  top: 99%;
  left: 50%;
  transform: translateX(-50%);
}

.meetus_editor_icon:hover .balloon_top {
  /* マウスオーバー時のスタイル */
  bottom: 100%;
  /* Y軸の位置 */
  visibility: visible;
  /* ツールチップを表示 */
  opacity: 1;
  /* 不透明度を100％に */
}

/* ============================================================================
メール送信履歴系画面
============================================================================ */
/* 一覧テーブル上のメッセージ */
.p-contact__list__message__over__table {
  padding: 0 1.5em;
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .p-contact__list__message__item {
    display: inline-block;
  }
}
@media (max-width: 767.9px) {
  .p-contact__list__message__item {
    padding: 1px;
  }
}

/*成功・失敗ラベル*/
.p-mailsend__mail__history__list__status {
  display: inline-block;
  border-radius: 3px;
}
@media (min-width: 768px) {
  .p-mailsend__mail__history__list__status {
    font-size: 1.5rem;
    padding: 0 0.3em;
  }
}
@media (max-width: 767.9px) {
  .p-mailsend__mail__history__list__status {
    font-size: 1.4rem;
    padding: 0 0.2em;
  }
}
.p-mailsend__mail__history__list__status.mail__result__success {
  border: 1.8px solid #999;
  color: #999;
  background-color: #efefef;
}
.p-mailsend__mail__history__list__status.mail__result__failure {
  border: 1.8px solid #d6105f;
  color: #d6105f;
  background-color: #fff;
}

.c-explain__icon {
  position: relative;
}
.c-explain__icon__svg {
  transition: all 0.3s;
  fill: #bababa;
}
@media (min-width: 768px) {
  .c-explain__icon__svg {
    width: 28px;
    height: 28px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__svg {
    width: 30px;
    height: 30px;
  }
}
.c-explain__icon__svg:hover {
  cursor: pointer;
  fill: #666;
}
.c-explain__icon:hover .c-explain__icon__tooltip {
  bottom: 23px;
  visibility: visible;
  opacity: 1;
}
.c-explain__icon__tooltip {
  position: absolute;
  transform: translateX(-50%);
  margin-bottom: 15px;
  padding: 8px;
  border-radius: 10px;
  background-color: #666;
  font-size: 0.9em;
  color: #fff;
  text-align: left;
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  transition: 0.5s all;
  font-weight: normal;
}
.c-explain__icon__tooltip::after {
  content: "";
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-top: 5px solid #666;
  position: absolute;
  transform: translateX(-50%);
}
.c-explain__icon__tooltip__mailsender__history {
  bottom: 15px;
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__mailsender__history {
    width: 480px;
    left: 201px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__mailsender__history {
    width: 420px;
    left: 174px;
  }
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__mailsender__history::after {
    left: 52px;
    top: 36px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__mailsender__history::after {
    left: 50px;
    top: 33px;
  }
}
.c-explain__icon__tooltip__passcode__setting {
  bottom: 15px;
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__passcode__setting {
    width: 530px;
    left: 201px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__passcode__setting {
    width: 485px;
    left: 184px;
  }
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__passcode__setting::after {
    left: 77px;
    top: 56px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__passcode__setting::after {
    left: 72px;
    top: 51px;
  }
}
.c-explain__icon__tooltip__passcode__setting_meeting_detail {
  bottom: 15px;
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__passcode__setting_meeting_detail {
    width: 530px;
    left: 201px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__passcode__setting_meeting_detail {
    width: 485px;
    left: 184px;
  }
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__passcode__setting_meeting_detail::after {
    left: 77px;
    top: 76px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__passcode__setting_meeting_detail::after {
    left: 72px;
    top: 71px;
  }
}
.c-explain__icon__tooltip__event_date__event_info {
  bottom: 15px;
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__event_date__event_info {
    width: 300px;
    left: 110px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__event_date__event_info {
    width: 300px;
    left: 110px;
  }
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__event_date__event_info::after {
    left: 52px;
    top: 36px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__event_date__event_info::after {
    left: 50px;
    top: 33px;
  }
}
.c-explain__icon__tooltip__tt__password {
  bottom: 15px;
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__tt__password {
    width: 480px;
    left: 70px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__tt__password {
    width: 420px;
    left: 30px;
  }
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__tt__password::after {
    left: 52px;
    top: 36px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__tt__password::after {
    left: 50px;
    top: 33px;
  }
}
.c-explain__icon__tooltip__mp__login {
  bottom: 15px;
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__mp__login {
    width: 400px;
    left: 500px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__mp__login {
    width: 300px;
    left: 150px;
  }
}
.c-explain__icon__tooltip__bulk__tag__search {
  bottom: 15px;
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__bulk__tag__search {
    width: 530px;
    left: 201px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__bulk__tag__search {
    width: 485px;
    left: 184px;
  }
}
@media (min-width: 768px) {
  .c-explain__icon__tooltip__bulk__tag__search::after {
    left: 77px;
    top: 56px;
  }
}
@media (max-width: 767.9px) {
  .c-explain__icon__tooltip__bulk__tag__search::after {
    left: 72px;
    top: 51px;
  }
}
.c-explain__icon__bulk__tag {
  position: relative;
  bottom: 15px;
}
.c-explain__icon__bulk__tag:hover .c-explain__icon__bulk__tag__tooltip {
  bottom: 20px;
  visibility: visible;
  opacity: 1;
}
.c-explain__icon__bulk__tag__tooltip {
  position: absolute;
  margin-left: -403px;
  transform: translateX(-50%);
  margin-bottom: 12px;
  padding: 8px;
  border-radius: 10px;
  background-color: #666;
  font-size: 0.9em;
  color: #fff;
  text-align: left;
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  transition: 0.5s all;
  font-weight: normal;
}
@media (max-width: 767.9px) {
  .c-explain__icon__bulk__tag__tooltip {
    margin-left: auto;
    left: 230px;
  }
}
.c-explain__icon__bulk__tag__tooltip::after {
  content: "";
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-top: 5px solid #666;
  position: absolute;
  left: 480px;
  transform: translateX(-50%);
}
@media (max-width: 767.9px) {
  .c-explain__icon__bulk__tag__tooltip::after {
    left: 27px;
    top: 55px;
  }
}
@media (min-width: 768px) {
  .c-explain__icon__bulk__tag__tooltip::after {
    left: 480px;
    top: 55px;
  }
}

/* ページング */
.c-paging {
  display: flex;
  font-weight: bold;
  margin: 30px auto;
  justify-content: center;
}
.c-paging__list {
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .c-paging__list__item--link, .c-paging__list__item--current {
    padding: 0 20px;
  }
}
@media (max-width: 767.9px) {
  .c-paging__list__item--link, .c-paging__list__item--current {
    padding: 0 10px;
  }
}
.c-paging__list__item--link a {
  cursor: pointer;
  color: #018755;
}
.c-paging__list__item--link a svg {
  fill: #018755;
}
.c-paging__list__item--link a:hover {
  color: #349f77;
}
.c-paging__list__item--link a:hover svg {
  fill: #349f77;
}
.c-paging__list__item--current a {
  color: #343434;
}
.c-paging__list__item--current a svg {
  fill: #343434;
}

/* ============================================================================
タグ管理画面
============================================================================ */
.p-tag__list__btn {
  position: relative;
  padding: 0 !important;
}
.p-tag__list__btn.icon {
  display: inline-block;
}
.p-tag__list__btn__link {
  cursor: pointer;
}
.p-tag__list__link {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 70%;
  height: 100%;
}
@media (min-width: 992px) {
  .p-tag__list__link:hover svg {
    fill: #343434;
  }
}
.p-tag__list__svg__delete, .p-tag__list__svg__edit {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 20px;
  height: 20px;
  fill: #ccc;
}
.p-tag__list__item {
  width: 14px;
  margin: 0 auto;
  display: none;
}
.p-tag__list__action {
  display: none;
}
.p-tag__list__action a {
  -js-display: flex;
  display: flex;
  align-items: center;
  cursor: pointer;
  color: #018755;
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-tag__list__action a {
    padding: 0.5em 1em;
  }
}
@media (max-width: 767.9px) {
  .p-tag__list__action a {
    padding: 1em 1em;
  }
}
@media (min-width: 992px) {
  .p-tag__list__action a:hover {
    color: #349f77;
  }
}
.p-tag__list__action__ttl__minus {
  display: none;
}
.p-tag__list__action__icon__plus {
  margin-right: 5px;
  position: relative;
  width: 18px;
  height: 18px;
  background: #018755;
  border-radius: 50%;
}
.p-tag__list__action__icon__plus:hover {
  background: #349f77;
}
.p-tag__list__action__icon__plus::before, .p-tag__list__action__icon__plus::after {
  position: absolute;
  display: inline-block;
  content: "";
  width: 11px;
  height: 3px;
  background-color: #fff;
  left: 0.25em;
  top: 50%;
}
.p-tag__list__action__icon__plus::before {
  transform: translateY(-50%);
}
.p-tag__list__action__icon__plus::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
.p-tag__list__action__icon__minus::after {
  transform: translateY(-50%);
}
.p-tag__edit__form {
  display: none;
}
@media (min-width: 768px) {
  .p-tag__edit__form__inner {
    display: flex;
    align-items: center;
  }
}
@media (min-width: 768px) {
  .p-tag__edit__form__item {
    width: 320px;
    margin-right: 1em;
  }
}
@media (max-width: 767.9px) {
  .p-tag__edit__form__item {
    width: 230px;
    margin-right: 0.3em;
  }
}
.p-tag__edit__form__input__txt {
  font-weight: bold;
}

.p-meeting__list__table thead tr.p-meeting__list__tr__tag th.p-meeting__list__th__name {
  width: 30%;
}
.p-meeting__list__table thead tr.p-meeting__list__tr__tag th.p-meeting__list__th__date {
  width: 20%;
}
.p-meeting__list__table thead tr.p-meeting__list__tr__tag th.p-meeting__list__th__btn {
  width: 10%;
}
.p-meeting__list__table tbody tr td .tag-list {
  display: inline-block;
}
.p-meeting__list__table tbody tr td .tag-list .tag {
  line-height: 26px;
  position: relative;
  display: inline-block;
  height: 26px;
  margin: 5px 0 5px 10px;
  padding: 0 20px 0 23px;
  transition: color 0.2s;
  text-decoration: none;
  color: #ffffff;
  border-radius: 0 3px 3px 0;
  background: #018755;
  font-size: 12px;
  font-weight: 500;
}
.p-meeting__list__table tbody tr td .tag-list .tag:before {
  background: #fafcfc;
  position: absolute;
  top: 10px;
  left: 3px;
  width: 6px;
  height: 6px;
  content: "";
  border-radius: 10px;
}
.p-meeting__list__table tbody tr td .tag-list .tag::after {
  background: #fafcfc;
  position: absolute;
  top: -1px;
  left: -6px;
  width: 0;
  height: 0;
  content: "";
  border-style: solid;
  border-width: 14px 8px 14px 0;
  border-color: transparent #018755 transparent transparent;
  border-radius: 4px;
}

.contact_error {
  margin-bottom: 1.5em;
}

/* ============================================================================
連絡先管理画面・一斉送信メール系
============================================================================ */
@media (min-width: 992px) {
  .p-mail_bulk_input_form {
    margin-bottom: 30px;
  }
}
.p-meeting__detail__btmbtn__label {
  font-size: 13px;
}

.p-meeting__detail__btmbtn__label__flex {
  display: flex;
  flex-flow: column;
}

#modal-content {
  width: 50%;
  margin: 0;
  padding: 10px 20px;
  border: 2px solid #aaa;
  background: #fff;
  position: fixed;
  display: none;
  z-index: 4;
}

#modal-overlay {
  z-index: 3;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background-color: rgba(0, 0, 0, 0.75);
}

.button-link {
  color: #00f;
  text-decoration: underline;
}

.button-link:hover {
  cursor: pointer;
  color: #f00;
}

.disp-none {
  display: none;
}

.tag_table_row {
  display: table-row;
}

.error_msg {
  color: red;
  font-weight: bold;
  margin-bottom: 5px;
  display: block;
}

.bulk-reg_inner {
  margin: 0 6rem;
}

.bulk-reg_explanation {
  margin-bottom: 2rem;
}
.bulk-reg_explanation span {
  font-weight: bold;
  color: #018755;
}
.bulk-reg_explanation span a {
  line-height: 1px;
}
.bulk-reg_explanation span a:hover {
  opacity: 0.7;
}

#drag-drop-area {
  background-color: #fff;
  padding: 8rem;
  border: dashed 5.5px #018755;
  align-items: center;
  color: #555;
  margin-bottom: 5rem;
}
#drag-drop-area.dragover {
  background-color: #edf7f3;
}
#drag-drop-area .inside {
  display: flex;
  flex-flow: column;
  align-items: center;
}
#drag-drop-area .inside .text {
  font-size: 2rem;
  text-align: center;
}
#drag-drop-area .inside .text b {
  line-height: 200%;
}
#drag-drop-area .inside #selectfile-area {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#drag-drop-area .inside #selectfile-area label {
  display: inline-block;
  position: relative;
  background: #018755;
  color: #fff;
  font-size: 16px;
  padding: 10px 18px;
  border-radius: 20px;
  transition: all 0.3s;
}
#drag-drop-area .inside #selectfile-area label:hover {
  opacity: 0.7;
  transition: all 0.4s;
}
#drag-drop-area .inside #selectfile-area label input {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  width: 300px;
  height: 80px;
}
#drag-drop-area .inside #selectfile-area .filename {
  font-weight: bold;
  padding-top: 1rem;
}

.upload_svg {
  width: 16px;
  height: 16px;
  vertical-align: text-top;
}

@media (max-width: 767.9px) {
  .bulk-reg_inner {
    margin: 0 3rem;
  }
  #drag-drop-area {
    padding: 3rem;
    border: dashed 3px #018755;
  }
  #drag-drop-area .inside .text {
    font-size: 1.5rem;
    text-align: center;
    margin-bottom: 5px;
  }
  #drag-drop-area .inside .text b {
    line-height: 200%;
  }
}
@media (max-width: 767.9px) {
  .contact_reg_buttons {
    display: inline-flex;
    flex-direction: column;
  }
}
@media (max-width: 767.9px) {
  .contact_reg_button {
    margin: 2px;
  }
}
/********************************************
* メール送信時のオーバーレイ
********************************************/
#mail_send_overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 100%;
  display: none;
  background: rgba(0, 0, 0, 0.6);
}

.mail_send_copy {
  position: absolute;
  width: 100%;
  margin-top: 35vh;
  text-align: center;
}

.mail_send_copy h2 {
  color: #fff;
}

.mail_send_copy p {
  color: #fff;
}

.mail_send_spinner {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.mail_spinner {
  width: 80px;
  height: 80px;
  border: 4px #ddd solid;
  border-top: 4px #999 solid;
  border-radius: 50%;
  animation: sp-anime 0.8s infinite linear;
}

@keyframes sp-anime {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
.is-hide {
  display: none;
}

/* ============================================================================
連絡先管理画面・一斉送信メール系ここまで
============================================================================ */
/*↑↑↑ Ver1.07 ↑↑↑ */
/* ============================================================================
ミーティング・イベント管理系 追加
============================================================================ */
/* ヘルプ付きタイトルの設定 */
.p-meeting__info__table__ttl {
  display: flex;
  justify-content: space-between;
  font-weight: bold;
  align-items: center;
}
@media (min-width: 768px) {
  .p-meeting__info__table__ttl {
    font-size: 1.5rem;
    min-width: 12em;
  }
}
@media (max-width: 767.9px) {
  .p-meeting__info__table__ttl {
    font-size: 1.4rem;
    min-width: 11.5em;
  }
}

.p-meeting__list__message__over__table {
  padding: 0 1.5em;
  margin: 30px 0;
}

/* ============================================================================
サービス連携系
============================================================================ */
.p-service__sec {
  margin-bottom: 3em;
}
.p-service__detail__inner {
  background-color: #fafafa;
  border-radius: 10px;
  margin-bottom: 1em;
}
@media (min-width: 768px) {
  .p-service__detail__row {
    padding: 2em 1.5em 0;
    display: flex;
    align-items: center;
  }
}
@media (max-width: 767.9px) {
  .p-service__detail__row {
    padding: 1.5em 1em;
  }
}
.p-service__detail__account {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 0.25em;
}
@media (max-width: 767.9px) {
  .p-service__detail__account {
    text-align: center;
  }
}
@media (min-width: 768px) {
  .p-service__detail__logo {
    width: 200px;
    margin-right: 20px;
    margin-bottom: 2em;
  }
}
@media (max-width: 767.9px) {
  .p-service__detail__logo {
    text-align: center;
    margin-bottom: 1em;
  }
}
@media (min-width: 768px) {
  .p-service__detail__cont {
    flex: 1;
  }
}
@media (min-width: 768px) {
  .p-service__detail__cont__item {
    margin-bottom: 2em;
  }
}
@media (max-width: 767.9px) {
  .p-service__detail__cont__item {
    margin-bottom: 2em;
  }
}
@media (max-width: 767.9px) {
  .p-service__detail__btn {
    max-width: 300px;
    margin: 0 auto;
  }
}
@media (max-width: 767.9px) {
  .p-service__detail__btn button {
    width: 100%;
  }
}
.p-service__form__row {
  display: flex;
}
.p-service__form__input {
  margin-right: 1em;
}
.p-service__form__btn {
  background-color: transparent;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  color: #018755;
  font-size: 1.5rem;
  font-weight: bold;
}
.p-service__action {
  display: inline-block;
}
.p-service__action a {
  display: flex;
  align-items: center;
  cursor: pointer;
  color: #018755;
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-service__action {
    padding: 0.5em 1em;
  }
}
@media (max-width: 767.9px) {
  .p-service__action {
    padding: 1em 0;
  }
}
@media (min-width: 768px) {
  .p-service__action a:hover {
    color: #349f77;
  }
}
.p-service__action a:hover svg {
  fill: #349f77;
}
.p-service__action svg {
  width: 18px;
  fill: #018755;
  margin-right: 0.5em;
}

/********************************************
* 処理中のオーバーレイ
********************************************/
#p-processing_overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 100%;
  display: none;
  background: rgba(0, 0, 0, 0.6);
}

.p-processing_copy {
  position: absolute;
  width: 100%;
  margin-top: 35vh;
  text-align: center;
}

.p-processing_copy h2 {
  color: #fff;
}

.p-processing_copy p {
  color: #fff;
}

.p-processing_spinner {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.p-ps_spinner {
  width: 80px;
  height: 80px;
  border: 4px #ddd solid;
  border-top: 4px #999 solid;
  border-radius: 50%;
  animation: sp-anime 0.8s infinite linear;
}

/* ============================================================================
ユーザ登録フォーム系
============================================================================ */
.p-user__regform__msg__about_trial {
  background-color: #edf7f3;
  padding: 1em;
  color: #343434;
  border: solid 1.5px #ebebeb;
  border-radius: 5px;
}
.p-user__regform__msg__about_meetus_user {
  margin: 1em 0 1em 1em;
  font-weight: bold;
}

/* ============================================================================
ブレイクポイント
============================================================================ */
/* ============================================================================
メディアクエリ
============================================================================ */
/* ============================================================================
02 : .is-visible .is-hidden
============================================================================ */
.is-hidden {
  display: none !important;
}

@media (min-width: 1400px) {
  .is-hidden--xl {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .is-hidden--l {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .is-hidden--ml {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .is-hidden--m {
    display: none !important;
  }
}
@media (max-width: 991.9px) {
  .is-hidden--sm {
    display: none !important;
  }
}
@media (max-width: 767.9px) {
  .is-hidden--s {
    display: none !important;
  }
}
@media (max-width: 576px) {
  .is-hidden--xs {
    display: none !important;
  }
}
.is-visible {
  display: block !important;
}

@media (min-width: 1400px) {
  .is-visible--xl {
    display: block !important;
  }
}
@media (min-width: 992px) {
  .is-visible--l {
    display: block !important;
  }
}
@media (min-width: 768px) {
  .is-visible--ml {
    display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .is-visible--m {
    display: block !important;
  }
}
@media (max-width: 991.9px) {
  .is-visible--sm {
    display: block !important;
  }
}
@media (max-width: 767.9px) {
  .is-visible--s {
    display: block !important;
  }
}
@media (max-width: 576px) {
  .is-visible--xs {
    display: block !important;
  }
}
/* ============================================================================
03 : @keyframes
============================================================================ */
@keyframes fadein {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
/* ============================================================================
03-03 : utility
============================================================================ */
.u-cf {
  *zoom: 1;
}

.u-cf:after {
  display: table;
  clear: both;
  content: "";
}

.u-fz--xs {
  font-size: 0.75em !important;
}

.u-fz--sm {
  font-size: 0.875em !important;
}

.u-fz--md {
  font-size: 1em !important;
}

.u-fz--lg {
  font-size: 1.25em !important;
}

.u-fz--xl {
  font-size: 1.5em !important;
}

.u-fz--10 {
  font-size: 10px !important;
}

.u-fz--11 {
  font-size: 11px !important;
}

.u-fz--12 {
  font-size: 12px !important;
}

.u-fz--13 {
  font-size: 13px !important;
}

.u-fz--14 {
  font-size: 14px !important;
}

.u-fz--15 {
  font-size: 15px !important;
}

.u-fz--16 {
  font-size: 16px !important;
}

.u-fz--17 {
  font-size: 17px !important;
}

.u-fz--18 {
  font-size: 18px !important;
}

.u-fz--19 {
  font-size: 19px !important;
}

.u-fz--20 {
  font-size: 20px !important;
}

.u-fw--n {
  font-weight: normal !important;
}

.u-fw--b {
  font-weight: bold !important;
}

.u-fw--100 {
  font-weight: 100 !important;
}

.u-fw--200 {
  font-weight: 200 !important;
}

.u-fw--300 {
  font-weight: 300 !important;
}

.u-fw--400 {
  font-weight: 400 !important;
}

.u-fw--500 {
  font-weight: 500 !important;
}

.u-fw--600 {
  font-weight: 600 !important;
}

.u-fw--700 {
  font-weight: 700 !important;
}

.u-fw--800 {
  font-weight: 800 !important;
}

.u-fw--900 {
  font-weight: 900 !important;
}

.u-ta--l {
  text-align: left !important;
}

.u-ta--r {
  text-align: right !important;
}

.u-ta--c {
  text-align: center !important;
}

.u-td--n {
  text-decoration: none !important;
}

.u-td--u {
  text-decoration: underline !important;
}

.u-td--o {
  text-decoration: overline !important;
}

.u-ti--0 {
  text-indent: 0 !important;
}

.u-ti--9999 {
  text-indent: -9999px !important;
}

.u-fl--n {
  float: none !important;
}

.u-fl--r {
  float: right !important;
}

.u-fl--l {
  float: left !important;
}

.u-cl--n {
  clear: none !important;
}

.u-cl--r {
  clear: right !important;
}

.u-cl--l {
  clear: left !important;
}

.u-cl--b {
  clear: both !important;
}

.u-pos--s {
  position: static !important;
}

.u-pos--r {
  position: relative !important;
}

.u-pos--a {
  position: absolute !important;
}

.u-pos--f {
  position: fixed !important;
}

.u-t--a {
  top: auto !important;
}

.u-t--0 {
  top: 0 !important;
}

.u-r--a {
  right: auto !important;
}

.u-r--0 {
  right: 0 !important;
}

.u-b--a {
  bottom: auto !important;
}

.u-b--0 {
  bottom: 0 !important;
}

.u-l--a {
  left: auto !important;
}

.u-l--0 {
  left: 0;
}

.u-z--a {
  z-index: auto;
}

.u-z--0 {
  z-index: 0;
}

.u-z--1 {
  z-index: 1 !important;
}

.u-z--2 {
  z-index: 2 !important;
}

.u-z--3 {
  z-index: 3 !important;
}

.u-z--4 {
  z-index: 4 !important;
}

.u-z--5 {
  z-index: 5 !important;
}

.u-z--6 {
  z-index: 6 !important;
}

.u-z--999 {
  z-index: 999 !important;
}

.u-va--t {
  vertical-align: top !important;
}

.u-va--m {
  vertical-align: middle !important;
}

.u-va--b {
  vertical-align: bottom !important;
}

.u-d--tb {
  display: table !important;
}

.u-d--tbc {
  display: table-cell !important;
}

.u-d--b {
  display: block !important;
}

.u-d--ib {
  display: inline-block !important;
}

.u-d--n {
  display: none !important;
}

.u-mg--0 {
  margin: 0 !important;
}

.u-mg--sm {
  margin: 0.5rem !important;
}

.u-mg--md {
  margin: 1rem !important;
}

.u-mg--lg {
  margin: 1.5rem !important;
}

.u-mg--xl {
  margin: 3rem !important;
}

.u-mt--0 {
  margin-top: 0 !important;
}

.u-mt--auto {
  margin-top: auto !important;
}

.u-mt--sm {
  margin-top: 0.5rem !important;
}

.u-mt--md {
  margin-top: 1rem !important;
}

.u-mt--lg, .p-tt-top__sysmsg {
  margin-top: 1.5rem !important;
}

.u-mt--xl {
  margin-top: 3rem !important;
}

.u-mr--0 {
  margin-right: 0 !important;
}

.u-mr--auto {
  margin-right: auto !important;
}

.u-mr--sm {
  margin-right: 0.5rem !important;
}

.u-mr--md {
  margin-right: 1rem !important;
}

.u-mr--lg {
  margin-right: 1.5rem !important;
}

.u-mr--xl {
  margin-right: 3rem !important;
}

.u-mb--0 {
  margin-bottom: 0 !important;
}

.u-mb--auto {
  margin-bottom: auto !important;
}

.u-mb--sm {
  margin-bottom: 0.5rem !important;
}

.u-mb--md {
  margin-bottom: 1rem !important;
}

.u-mb--lg {
  margin-bottom: 1.5rem !important;
}

.u-mb--xl {
  margin-bottom: 3rem !important;
}

.u-mb--7l {
  margin-bottom: 7rem !important;
}

.u-ml--0 {
  margin-left: 0 !important;
}

.u-ml--auto {
  margin-left: auto !important;
}

.u-ml--sm {
  margin-left: 0.5rem !important;
}

.u-ml--md, .p-mp_rsrvmng__list__txt {
  margin-left: 1rem !important;
}

.u-ml--lg {
  margin-left: 1.5rem !important;
}

.u-ml--xl, .p-tt-top__sysmsg {
  margin-left: 3rem !important;
}

.u-pd--0 {
  padding: 0 !important;
}

.u-pd--sm {
  padding: 0.5rem !important;
}

.u-pd--md {
  padding: 1rem !important;
}

.u-pd--lg {
  padding: 1.5rem !important;
}

.u-pd--xl {
  padding: 3rem !important;
}

.u-pt--0 {
  padding-top: 0 !important;
}

.u-pt--auto {
  padding-top: auto !important;
}

.u-pt--sm {
  padding-top: 0.5rem !important;
}

.u-pt--md {
  padding-top: 1rem !important;
}

.u-pt--lg {
  padding-top: 1.5rem !important;
}

.u-pt--xl {
  padding-top: 3rem !important;
}

.u-pr--0 {
  padding-right: 0 !important;
}

.u-pr--auto {
  padding-right: auto !important;
}

.u-pr--sm {
  padding-right: 0.5rem !important;
}

.u-pr--md {
  padding-right: 1rem !important;
}

.u-pr--lg {
  padding-right: 1.5rem !important;
}

.u-pr--xl {
  padding-right: 3rem !important;
}

.u-pb--0 {
  padding-bottom: 0 !important;
}

.u-pb--auto {
  padding-bottom: auto !important;
}

.u-pb--sm {
  padding-bottom: 0.5rem !important;
}

.u-pb--md {
  padding-bottom: 1rem !important;
}

.u-pb--lg {
  padding-bottom: 1.5rem !important;
}

.u-pb--xl {
  padding-bottom: 3rem !important;
}

.u-pl--0 {
  padding-left: 0 !important;
}

.u-pl--auto {
  padding-left: auto !important;
}

.u-pl--sm {
  padding-left: 0.5rem !important;
}

.u-pl--md {
  padding-left: 1rem !important;
}

.u-pl--lg {
  padding-left: 1.5rem !important;
}

.u-pl--xl {
  padding-left: 3rem !important;
}

.u-op--0 {
  opacity: 0 !important;
}

.u-op--10 {
  opacity: 0.1 !important;
}

.u-op--20 {
  opacity: 0.2 !important;
}

.u-op--30 {
  opacity: 0.3 !important;
}

.u-op--40 {
  opacity: 0.4 !important;
}

.u-op--50 {
  opacity: 0.5 !important;
}

.u-op--60 {
  opacity: 0.6 !important;
}

.u-op--70 {
  opacity: 0.7 !important;
}

.u-op--80 {
  opacity: 0.8 !important;
}

.u-op--90 {
  opacity: 0.9 !important;
}

.u-op--100 {
  opacity: 1 !important;
}

.u-nowrap {
  white-space: nowrap;
}

.u-wrap {
  word-break: break-all;
}

.u-bd--df {
  border: solid 1px #ccc;
}

.u-bd--pr {
  border: solid 1px #018755;
}

.u-bd--al {
  border: solid 1px #d6105f;
}

.u-bdr {
  border-radius: 5px;
}

.u-wd--100 {
  width: 100% !important;
}

.u-wd--75 {
  width: 75% !important;
}

.u-wd--50 {
  width: 50% !important;
}

.u-wd--25 {
  width: 25% !important;
}

@media (min-width: 992px) {
  .u-wdl--100 {
    width: 100% !important;
  }
}
@media (min-width: 992px) {
  .u-wdl--75 {
    width: 75% !important;
  }
}
@media (min-width: 992px) {
  .u-wdl--50 {
    width: 50% !important;
  }
}
@media (min-width: 992px) {
  .u-wdl--25 {
    width: 25% !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .u-wdm--100 {
    width: 100% !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .u-wdm--75 {
    width: 75% !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .u-wdm--50 {
    width: 50% !important;
  }
}
@media (min-width: 768px) and (max-width: 991.9px) {
  .u-wdm--25 {
    width: 25% !important;
  }
}
@media (max-width: 767.9px) {
  .u-wds--100 {
    width: 100% !important;
  }
}
@media (max-width: 767.9px) {
  .u-wds--75 {
    width: 75% !important;
  }
}
@media (max-width: 767.9px) {
  .u-wds--50 {
    width: 50% !important;
  }
}
@media (max-width: 767.9px) {
  .u-wds--25 {
    width: 25% !important;
  }
}
.u-mw--800 {
  max-width: 800px;
}

/* ============================================================================
タイムテーブル型予約機能
============================================================================ */
/* ============================================================================
カラー変数
============================================================================ */
/* ============================================================================
トップ画面（ダッシュボード）
============================================================================ */
@media (min-width: 992px) {
  .p-tt-top:first-child {
    padding-top: 35px;
  }
}
@media (max-width: 991.9px) {
  .p-tt-top .c-section__subttl__main {
    margin-left: 10px;
  }
}
.dashboad-event {
  padding: 20px;
}

.dashboad-tab {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.dashboad-tab .dashboad-tab__contents {
  font-weight: bold;
  padding: 20px;
  margin-top: 10px;
  margin-right: 10px;
  box-sizing: border-box;
  color: rgba(83, 83, 83, 0.8431372549);
  background-color: #ebebeb;
  cursor: pointer;
  /*クラスに「active」が付与されたときの指定*/
}
@media (max-width: 767.9px) {
  .dashboad-tab .dashboad-tab__contents {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .dashboad-tab .dashboad-tab__contents {
    width: 32%;
  }
}
.dashboad-tab .dashboad-tab__contents.active {
  background: #edf7f3;
  color: #018755;
  cursor: default;
}

.dashboad-event-info {
  padding: 0 50px 50px 50px;
  border: 2px solid #ebebeb;
  /*通常時は「display: none;」で非表示にしておく*/
}
.dashboad-event-info li {
  display: none;
  /*クラスに「active」が付与されたとき「display: block;」で表示する*/
}
.dashboad-event-info li.active {
  display: block;
}
.dashboad-event-info li p {
  background: #ccc;
  padding: 20px;
  margin: 10px 0;
}

.dashboad-event-date {
  padding-top: 40px;
  padding-bottom: 10px;
  font-size: 18px;
}

/* ============================================================================
ナビゲーションバー
============================================================================ */
@media (min-width: 992px) {
  .p-header__tt__logo {
    margin-bottom: 25px;
  }
}
.p-header__tt__logo img {
  position: absolute;
  top: 0;
  bottom: 0;
}
@media (min-width: 992px) {
  .p-header__tt__logo img {
    width: 153px;
    height: 28px;
    margin: auto 0;
  }
}
@media (max-width: 991.9px) {
  .p-header__tt__logo img {
    max-width: 155px;
    margin: 10px 0 5px 0;
  }
}
@media (min-width: 992px) {
  .p-header__tt__logo a {
    position: relative;
    height: 70px;
    padding: 0 15px;
    margin-bottom: 35px;
  }
}
@media (min-width: 1400px) {
  .p-header__tt__logo a {
    height: 80px;
    padding: 0 30px;
    margin-bottom: 30px;
  }
}
@media (max-width: 991.9px) {
  .p-header__tt__logo a {
    height: 75px;
  }
}
.p-header__tt__label {
  position: absolute;
  font-weight: bold;
  line-height: 2;
  border-radius: 40px;
  color: #018755;
  background-color: #edf7f3;
  text-align: center;
  margin: 0 auto 10px auto;
}
@media (min-width: 992px) {
  .p-header__tt__label {
    top: 63px;
    left: 15px;
    font-size: 1.2rem;
    width: 150px;
  }
}
@media (min-width: 1400px) {
  .p-header__tt__label {
    top: 70px;
    left: 40px;
  }
}
@media (max-width: 991.9px) {
  .p-header__tt__label {
    top: 45px;
    left: 15px;
    font-size: 1.1rem;
    width: 110px;
  }
}
@media (max-width: 576px) {
  .p-header__tt__label {
    font-size: 1rem;
    width: 100px;
  }
}
@media (max-width: 991.9px) {
  .p-header__tt__menuwrap {
    padding-top: 75px;
  }
}

/* ============================================================================
タイムテーブル
============================================================================ */
@media (max-width: 767.9px) {
  .mp_login__message {
    margin-top: 50px;
    font-size: 14px;
    padding: 0 20px;
  }
}
.mp_login__message .sub-message {
  margin-top: 5px;
  font-size: 10px;
}

.timeTable_wrap {
  position: relative;
  padding: 30px 0 100px;
}
.timeTable_wrap .contents_item {
  margin: 0 auto 40px;
}
.timeTable_wrap .contents_item:last-of-type {
  margin-bottom: 0;
}

.timeTable_ttlWrap {
  margin-bottom: 32px;
}

/* タイムテーブル */
.timeTable {
  background-color: #ffffff;
  margin: auto;
  position: relative;
  width: 100%;
}

.scrollx-btn {
  display: flex;
  justify-content: space-between;
}
.scrollx-btn .left:first-child {
  margin-left: 45px;
}

.date-onry {
  display: flex;
  justify-content: center;
  margin-left: 40px;
  margin-bottom: 28px;
}

.timeTableInr {
  height: 100%;
  transition-duration: 0.5s;
  overflow-y: hidden;
  overflow-x: auto;
}
.timeTableInr::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.timeTableInr::-webkit-scrollbar-track {
  border-radius: 5px;
  box-shadow: 0 0 4px #aaa inset;
}
.timeTableInr::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #018755;
}
.timeTableInr:last-of-type {
  margin-bottom: 0;
}

.timeTableWrap {
  height: 100%;
  margin-left: 40px;
  position: relative;
}

/* テーブル */
.timeTable.is_1 .timeTable_schedule_columArea, .timeTable.is_2 .timeTable_schedule_columArea, .timeTable.is_3 .timeTable_schedule_columArea {
  width: 300px;
}
.timeTable.is_1 .timeTable_schedule_place, .timeTable.is_2 .timeTable_schedule_place, .timeTable.is_3 .timeTable_schedule_place {
  width: 100%;
}
.timeTable.is_4 .timeTable_schedule_columArea {
  width: 240px;
}
.timeTable.is_4 .timeTable_schedule_place {
  width: 240px;
}
.timeTable.is_over6 .timeTable_schedule_columArea, .timeTable.is_5 .timeTable_schedule_columArea {
  width: 150px;
}
.timeTable.is_over6 .timeTable_schedule_place, .timeTable.is_5 .timeTable_schedule_place {
  width: 150px;
}
.timeTable.is_phone .timeTable_schedule_columArea {
  width: 100px;
}
.timeTable.is_phone .timeTable_schedule_place {
  width: 100px;
}

/* 時間 */
.timeTable_time {
  margin: 94px auto 0 auto;
  position: absolute;
}
.timeTable_time_item {
  color: #555;
  font-size: 12px;
  line-height: 1;
  margin-top: 119px;
  text-align: right;
}
.timeTable_time_item:first-child {
  margin-top: 0px !important;
}
.timeTable_time_item:last-child:after {
  background: none;
}
.timeTable_time_item:nth-child(2n) {
  color: #555;
  font-size: 12px;
  margin-top: 119px;
}
.timeTable_time_item.is_4, .timeTable_time_item.is_5, .timeTable_time_item.is_over6 {
  margin-top: 135px;
}

.timeTable_borderWrap {
  position: absolute;
  margin: 68px 0 0 0;
}

.timeTable_border {
  height: 1px;
  margin-top: 130px;
  position: relative;
  z-index: 1;
}
.timeTable_border:first-child {
  margin-top: 1px;
}
.timeTable_border:nth-of-type(2n) {
  background-image: linear-gradient(to right, #ddd, #ddd 2px, transparent 2px, transparent 4px);
  background-position: 4px bottom;
  background-repeat: repeat-x;
  background-size: 5px 1px;
}
.timeTable_border:nth-of-type(2n-1) {
  border-top: 1px solid #ddd;
}

/* カテゴリー */
.timeTable_placeLabelWrap {
  display: flex;
  font-size: 15px;
  flex-wrap: nowrap;
  height: 70px;
  line-height: 2;
}

.timeTable_placeLabelInr {
  border-left: 1px solid #aaa;
  width: calc(100% - 1px);
  background-color: #018755;
  color: #ffffff;
  flex: 0 0 auto;
  font-weight: bold;
  padding: 14px 0 10px;
  position: relative;
  text-align: center;
  line-height: 1.5;
  font-size: 13px;
}
.timeTable_placeLabelInr span {
  font-size: 14px;
  font-weight: bold;
}
.timeTable_placeLabelInr:last-child {
  border-right: 1px solid #aaa;
}
.timeTable_placeLabelInr.width-200 {
  width: 150px;
}
.timeTable_placeLabelInr.width-240 {
  width: 240px;
}
.timeTable_placeLabelInr.width-300 {
  width: 300px;
}
.timeTable_placeLabelInr.width-400 {
  width: 400px;
}
.timeTable_placeLabelInr.width-600 {
  width: 600px;
}
.timeTable_placeLabelInr.width-1200 {
  width: 1200px;
}
.timeTable_placeLabelInr.width-100 {
  width: 100px;
  font-size: 10px;
}

/* テーブルカラム */
.timeTable_schedule {
  display: flex;
  height: 100%;
  padding-bottom: 40px;
}
.timeTable_schedule_col {
  font-size: 13px;
  height: 100%;
  position: relative;
}
.timeTable_schedule_col:last-child .timeTable_schedule_columArea {
  border-right: 1px solid #aaa;
}
.timeTable_schedule_col:last-child .timeTable_colum {
  width: calc(100% - 1px);
}

/* カラム */
.timeTable_schedule_columArea {
  background: #f5f5f5;
  border-left: 1px solid #aaa;
  height: calc(100% - 41px);
}

.timeTable_colum {
  background-color: #ffffff;
  border-right: 1px solid #aaa;
  border-left: none;
  position: absolute;
  width: 100%;
  z-index: 2;
  transition: all 0.3s;
}
.timeTable_colum.prohibited {
  background-color: #ddd;
}
.timeTable_colum.prohibited .timeTable_colum_inr {
  border-color: #777;
}
.timeTable_colum.prohibited .timeTable_colum_inr .timeTable_colum_name {
  color: #555;
}
.timeTable_colum.prohibited .timeTable_colum_inr .reserve__checkbox::before {
  background: #ddd;
}
.timeTable_colum_inr {
  background-position: right center;
  border-color: #018755;
  box-shadow: 0 10px 25px 0 rgba(0, 0, 0, 0.2);
  border-style: solid;
  border-width: 0px 0px 0px 4px;
  height: 100%;
  padding: 8px 10px 0px 20px;
  position: relative;
  line-height: 1.4;
}
.timeTable_colum:hover {
  cursor: pointer;
}

.timeTable_colum_ttl {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: -0.4px;
}
.timeTable_colum_ttlWrap {
  color: #018755;
  display: flex;
  justify-content: space-between;
}
.timeTable_colum_ttlWrap .details {
  padding-top: 1px;
}
.timeTable_colum_ttlWrap .svg-icon {
  width: 25px;
  height: 25px;
  vertical-align: middle;
  fill: currentColor;
  overflow: hidden;
}
.timeTable_colum_name {
  font-weight: 600;
  width: 140px;
  margin-right: 10px;
}
.timeTable_colum_name.line01 {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 2;
}
.timeTable_colum_name.line02 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.5;
}
.timeTable_colum_info {
  color: #555;
  font-size: 12px;
  white-space: nowrap;
  display: flex;
}
.timeTable_colum_info.less-20m {
  line-height: 0;
}
.timeTable_colum_time {
  font-weight: bold;
  line-height: 2;
}

.timeTable_nextArea {
  height: calc(100% - 90px);
  position: absolute;
  right: 0;
  top: 65px;
  width: 20px;
  z-index: 3;
}

.timeTable_colum_details-area {
  width: auto;
}

/* 予約時のチェックボックス */
.timeTable_colum_info input[type=checkbox] {
  display: none;
}
.timeTable_colum_info .reserve__checkbox {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  padding: 5px 25px;
  position: relative;
  width: auto;
}
.timeTable_colum_info .reserve__checkbox::before {
  background: #ffffff;
  border: 1px solid #aaa;
  content: "";
  display: block;
  height: 16px;
  width: 16px;
  left: 0;
  margin-top: -8px;
  position: absolute;
  top: 50%;
}
.timeTable_colum_info .reserve__checkbox::after {
  border-right: 3px solid #018755;
  border-bottom: 3px solid #018755;
  content: "";
  display: block;
  height: 9px;
  left: 10px;
  margin-top: -7px;
  margin-left: -5px;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 5px;
}
.timeTable_colum_info input[type=checkbox]:checked + .reserve__checkbox::after {
  opacity: 1;
}

.checked {
  background-color: #edf7f3;
}

.fix-bottom {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  background-color: rgba(208, 229, 219, 0.7);
  padding: 20px 0;
  height: 110px;
  padding: 0 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 100;
  align-items: flex-end;
  padding-bottom: 20px;
}
.fix-bottom .btn-set .text {
  text-align: center;
  margin: 15px 0 10px 0;
  font-size: 15px;
  font-weight: bold;
  color: red;
}
.fix-bottom .count {
  font-size: 12px;
  margin-right: 10px;
  color: #555;
  font-weight: bold;
}
.fix-bottom .count span {
  font-size: 20px;
}
.fix-bottom .btn {
  background: #ffffff;
  max-width: 200px;
  flex: 1 1;
  border-radius: 20px;
  border: 1px solid #018755;
  width: 200px;
  height: 45px;
  padding: 0 10px;
  font-size: 20px;
  color: #018755;
  cursor: pointer;
}

button.cancel {
  width: 92px;
  background-color: #018755;
  border-radius: 20px;
  border: 1px solid #018755;
  height: 25px;
  padding: 0 10px;
  font-size: 10px;
  color: #ffffff;
  cursor: pointer;
}

.timeTable_colum_info .full {
  color: red;
}

/* レスポンシブ対応 */
.is_phone .timeTable_placeLabelInr {
  font-size: 11px;
}
.is_phone .timeTable_placeLabelInr span {
  font-size: 12px;
}
.is_phone.fix-bottom {
  height: 90px;
  align-items: flex-end;
  padding-bottom: 10px;
}
.is_phone.fix-bottom .btn-set .not-selected {
  font-size: 12px;
  margin: 5px 0;
}
.is_phone.fix-bottom .btn-set .btn {
  width: 120px;
  font-size: 15px;
}
.is_phone .prohibited {
  background-color: #ddd;
}
.is_phone .timeTable_time {
  margin: 119px 7px 0 11px;
}
.is_phone .timeTable_time .timeTable_time_item {
  font-size: 10px;
  padding-right: 5px;
  margin-top: 121px;
  transform: scale(0.8);
}
.is_phone .timeTableWrap {
  margin-left: 40px;
}
.is_phone .timeTableWrap .timeTable_colum_inr {
  padding: 8px 5px 8px 8px;
  line-height: 0.5;
  box-sizing: border-box;
}
.is_phone .timeTableWrap .timeTable_colum_inr .timeTable_colum_ttlWrap .svg-icon {
  width: 18px;
  height: 18px;
}
.is_phone .timeTableWrap .timeTable_colum_inr .checked {
  background-color: #edf7f3;
}
.is_phone .timeTableWrap .timeTable_colum_time {
  line-height: 1;
  margin-top: 5px;
}
.is_phone .timeTableWrap .timeTable_colum_name {
  display: block;
  font-size: 10px;
  width: 63px;
  margin-right: 2px;
  line-height: 1.5;
}
.is_phone .timeTableWrap .timeTable_colum_name.line01, .is_phone .timeTableWrap .timeTable_colum_name.line02 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.is_phone .timeTableWrap .timeTable_colum_info {
  font-size: 10px;
  transform: scale(0.8);
}
.is_phone .timeTableWrap .timeTable_colum_info .full,
.is_phone .timeTableWrap .timeTable_colum_info .closed {
  margin-top: 10px;
}
.is_phone .timeTableWrap .timeTable_colum_info .reserve {
  margin-top: 6.7px;
}
.is_phone .timeTableWrap .timeTable_colum_info .reserve__checkbox {
  font-size: 13px;
  padding: 8px 23px 6px 23px;
}
.is_phone .timeTableWrap .timeTable_colum_info .reserve__checkbox::before {
  width: 15px;
  height: 15px;
}
.is_phone .timeTableWrap .timeTable_colum_info .reserve__checkbox::after {
  border-right: 2px solid #018755;
  border-bottom: 2px solid #018755;
  height: 8px;
  left: 5.5px;
  width: 3px;
  margin-left: 0px;
}

.p-meeting__weeklycal__chevron--next,
.p-meeting__weeklycal__chevron--prev {
  width: 25px;
  height: 25px;
}

/* モーダルウィンドウ */
.modal-window {
  font-size: 12px;
  line-height: 2;
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #ffffff;
  border-radius: 5px;
  z-index: 110;
  padding: 1rem;
  width: 290px;
}
.modal-window .modal-title {
  color: #018755;
  font-weight: bold;
  font-size: 15px;
  margin-bottom: 10px;
  line-height: 1;
  white-space: pre-wrap;
}
.modal-window .modal-explanation {
  white-space: pre-wrap;
}
.modal-window .modal-time {
  display: flex;
  margin-bottom: 3px;
}
.modal-window .modal-time .icon {
  margin-right: 5px;
}
.modal-window .modal-time .time {
  font-size: 13px;
  font-weight: bold;
  color: #555;
}
.modal-window .modal-table-title {
  font-size: 12px;
  font-weight: bold;
  color: #555;
}
.modal-window .close {
  text-align: center;
  margin-top: 1rem;
}
.modal-window .close a {
  text-align: center;
  font-size: 12px;
  cursor: pointer;
  text-decoration: none;
}
.modal-window .close a:hover {
  opacity: 0.8;
}

/*キャンセルモーダル*/
.cancel-title {
  color: #018755;
  font-weight: bold;
  font-size: 15px;
  padding: 5px;
  margin-bottom: 10px;
  line-height: 1;
}

.btn-set {
  margin-top: 10px;
  padding-bottom: 3px;
}
.btn-set .cancel {
  margin-top: 8px;
  width: 92px;
  background-color: #018755;
  border-radius: 20px;
  border: 1px solid #018755;
  height: 25px;
  padding: 0 10px;
  font-size: 10px;
  color: #ffffff;
  cursor: pointer;
}
.btn-set .return {
  background-color: #ffffff;
  border-radius: 20px;
  border: 1px solid #018755;
  color: #018755;
  margin-top: 8px;
  border-radius: 20px;
  width: 92px;
  height: 25px;
  padding: 0 10px;
  font-size: 10px;
  margin-right: 65px;
  cursor: pointer;
}

.no_scroll {
  overflow: hidden;
}

/* オーバーレイ */
.overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  z-index: 100;
}

/* タブの切り替え */
.tab-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.tab-wrap .tab-label {
  color: #ffffff;
  background: LightGray;
  margin: 0 5px 20px 40px;
  padding: 5px 8px;
  order: -1;
  cursor: pointer;
  width: 115px;
  text-align: center;
}
.tab-wrap.phone .tab-label {
  font-size: 12px;
  margin: 0 5px 10px 20px;
  padding: 3px 5px;
}

.tab-content {
  width: 100%;
  display: none;
}

.tab-switch:checked + .tab-label {
  background-color: #018755;
  font-weight: bold;
}

.tab-switch:checked + .tab-label + .tab-content {
  display: block;
}

.tab-switch {
  display: none;
}

.p-rsv__useredit__item__ttl.password {
  display: flex;
}

.over-time {
  text-align: center;
  margin-bottom: 20px;
  font-weight: bold;
  color: rgb(255, 0, 0);
}
.over-time__list {
  margin-top: 10px;
}

.mp-rsv__inner {
  background: #fff;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .mp-rsv__inner {
    width: 96%;
    max-width: 1200px;
    padding: 20px 20px 20px 200px;
  }
}
@media (max-width: 767.9px) {
  .mp-rsv__inner {
    padding: 15px;
  }
}
.not-selected {
  display: none;
}

/* ============================================================================
マイページ系
	1. ログイン
	2. ナビゲーションバー
	3. パスワードリセット
	4. アカウント情報
	5. 予約履歴
	6. ヘルプ
	7. その他
============================================================================ */
/* ============================================================================
1. ログイン
============================================================================ */
.p-mp_login__inner {
  background-color: #edf7f3;
  padding: 5em 2em;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(22, 128, 80, 0.0666666667);
  border-radius: 10px;
  margin-bottom: 3em;
}
@media (max-width: 767.9px) {
  .p-mp_login__inner {
    width: 85%;
  }
}
@media (min-width: 768px) {
  .p-mp_login__inner {
    min-width: 600px;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  .p-mp_login__inner {
    margin-bottom: 0em;
  }
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .p-mp_login__inner {
    margin-bottom: 4em;
  }
}
.p-mp_login__ttl {
  text-align: center;
  color: rgba(83, 83, 83, 0.8431372549);
  margin-bottom: 5px;
}
@media (max-width: 767.9px) {
  .p-mp_login__ttl {
    font-size: 23px;
  }
}
@media (min-width: 768px) {
  .p-mp_login__ttl {
    font-size: 25px;
  }
}
.p-mp_login__subttl {
  text-align: center;
  color: rgba(83, 83, 83, 0.8431372549);
  margin-bottom: 20px;
}
@media (max-width: 767.9px) {
  .p-mp_login__subttl {
    font-size: 17px;
  }
}
@media (min-width: 768px) {
  .p-mp_login__subttl {
    font-size: 18px;
  }
}
.p-mp_login__pre_notes {
  color: rgba(83, 83, 83, 0.8431372549);
}
.p-mp_login__form__input {
  background-color: #ffffff;
}

/* ============================================================================
2. ナビゲーションバー
============================================================================ */
@media (max-width: 991.9px) {
  .p-mp_header__menuwrap {
    padding: 80px 15px 0;
  }
}
@media (max-width: 767.9px) {
  .p-mp_header__menuwrap {
    padding: 70px 15px 0;
  }
}
.p-mp_header__top_txt_wrap {
  color: rgba(83, 83, 83, 0.8431372549);
}
@media (max-width: 767.9px) {
  .p-mp_header__top_txt_wrap {
    margin: 10px 0;
    line-height: 1.3;
  }
}
@media (min-width: 768px) {
  .p-mp_header__top_txt_wrap {
    margin: 10px 0;
    line-height: 1.3;
  }
}
@media (min-width: 992px) {
  .p-mp_header__top_txt_wrap {
    margin: 20px 0;
    line-height: 1.7;
  }
}
@media (max-width: 767.9px) {
  .p-mp_header__top_txt {
    font-size: 20px;
    text-align: left;
    margin-left: 20px;
  }
}
@media (min-width: 768px) {
  .p-mp_header__top_txt {
    font-size: 25px;
    text-align: left;
    margin-left: 20px;
  }
}
@media (min-width: 992px) {
  .p-mp_header__top_txt {
    font-size: 23px;
    text-align: center;
    margin-left: 0;
  }
}
@media (max-width: 767.9px) {
  .p-mp_header__top_txt_sec {
    font-size: 15px;
    text-align: left;
    margin-left: 20px;
  }
}
@media (min-width: 768px) {
  .p-mp_header__top_txt_sec {
    font-size: 17px;
    text-align: left;
    margin-left: 20px;
  }
}
@media (min-width: 992px) {
  .p-mp_header__top_txt_sec {
    font-size: 15px;
    text-align: center;
    margin-left: 0;
  }
}

/* ============================================================================
3. パスワードリセット
============================================================================ */
.p-mp_pass_reset__ttl {
  text-align: center;
  color: rgba(83, 83, 83, 0.8431372549);
  margin-bottom: 10px;
}
@media (max-width: 767.9px) {
  .p-mp_pass_reset__ttl {
    font-size: 23px;
  }
}
@media (min-width: 768px) {
  .p-mp_pass_reset__ttl {
    font-size: 25px;
  }
}
.p-mp_pass_reset__subttl {
  text-align: center;
  color: rgba(83, 83, 83, 0.8431372549);
  margin-bottom: 30px;
}
@media (max-width: 767.9px) {
  .p-mp_pass_reset__subttl {
    font-size: 17px;
  }
}
@media (min-width: 768px) {
  .p-mp_pass_reset__subttl {
    font-size: 18px;
  }
}
.p-mp_pass_reset__explain {
  color: rgba(83, 83, 83, 0.8431372549);
}

/* ============================================================================
4. アカウント情報
============================================================================ */
@media (min-width: 768px) {
  .p-mp_acct__inner {
    margin: 0.5em auto 0;
    padding: 0 10%;
  }
}
.p-mp_acct__inner_sec {
  margin-bottom: 3em;
}
.p-mp_acct__subttlwrap {
  display: flex;
  align-items: center;
  border-left: 5px solid rgba(22, 128, 80, 0.4196078431);
}
@media (min-width: 768px) {
  .p-mp_acct__subttlwrap {
    height: 30px;
    margin-bottom: 25px;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__subttlwrap {
    height: 25px;
    margin-bottom: 20px;
  }
}
.p-mp_acct__subttl {
  font-weight: bold;
  margin-left: 10px;
}
@media (min-width: 768px) {
  .p-mp_acct__subttl {
    font-size: 2rem;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__subttl {
    font-size: 1.8rem;
  }
}
.p-mp_acct__edit_icon {
  width: 40px;
  margin-left: 7px;
}
.p-mp_acct__edit_icon svg {
  fill: #018755;
}
@media (min-width: 768px) {
  .p-mp_acct__edit_icon svg {
    width: 28px;
    height: 28px;
  }
  .p-mp_acct__edit_icon svg:hover {
    fill: #349f77;
    transition: all 0.2s;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__edit_icon svg {
    width: 25px;
    height: 25px;
  }
}
.p-mp_acct__itembox {
  background-color: #edf7f3;
  border-radius: 10px;
  position: relative;
  overflow: auto;
}
@media (min-width: 768px) {
  .p-mp_acct__itembox {
    padding: 3.5% 10% 7% 10%;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__itembox {
    padding: 7% 10%;
  }
}
.p-mp_acct__itembox__edit {
  background-color: #edf7f3;
  padding: 7% 10%;
}
.p-mp_acct__btnwrap {
  justify-content: flex-end;
  display: flex;
}
.p-mp_acct__btnwrap__withmsg {
  justify-content: space-between;
  align-items: center;
}
@media (min-width: 768px) {
  .p-mp_acct__btnwrap {
    margin: 0 0 0.8em auto;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__btnwrap {
    margin: 0 0 0.4em auto;
  }
}
.p-mp_acct__errmsg {
  color: rgb(255, 0, 0);
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-mp_acct__errmsg {
    font-size: 1.5rem;
    margin: 0 0 0.5em 190px;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__errmsg {
    font-size: 1.3rem;
    margin: 0 0 0.3em 0.5em;
  }
}
@media (min-width: 768px) {
  .p-mp_acct__errmsg__frameout {
    margin: 0 0 1.5em 0.5em;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__errmsg__frameout {
    margin: 0 0 1.3em 0.5em;
  }
}
.p-mp_acct__item {
  font-weight: bold;
  margin-bottom: 2em;
  position: relative;
}
.p-mp_acct__item:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .p-mp_acct__item {
    display: flex;
    align-items: baseline;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__item {
    display: block;
  }
}
.p-mp_acct__item__ttlwrap {
  display: inline-block;
}
@media (min-width: 768px) {
  .p-mp_acct__item__ttlwrap {
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .p-mp_acct__item__ttl {
    display: flex;
    font-size: 1.5rem;
    min-width: 12em;
    justify-content: space-between;
    align-items: center;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__item__ttl {
    display: block;
    font-size: 1.3rem;
    margin: 0 0 0.5em 0.5em;
    align-items: center;
  }
}
.p-mp_acct__item__prenotes {
  font-size: 1.1rem;
  color: #808080;
  display: inline-block;
}
@media (min-width: 768px) {
  .p-mp_acct__item__prenotes {
    margin: 0 10px 0 192px;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__item__prenotes {
    margin: 0 10px 0 0.5em;
  }
}
.p-mp_acct__item__txt {
  background-color: rgba(255, 255, 255, 0.9450980392);
  padding: 1em;
  border-radius: 5px;
  width: 100%;
  word-break: break-all;
}
@media (min-width: 768px) {
  .p-mp_acct__item__txt {
    margin-left: 10px;
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__item__txt {
    font-size: 1.3rem;
  }
}
.p-mp_acct__item__form_label {
  margin-left: 3px;
}
.p-mp_acct__item__txtboxwrap {
  display: flex;
  width: 100%;
}
.p-mp_acct__item__txtbox {
  overflow: auto;
  width: 100%;
}
@media (min-width: 768px) {
  .p-mp_acct__item__txtbox {
    margin-left: 10px;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__item__txtbox_sec {
    margin-left: 10px;
  }
}
.p-mp_acct__item__txt__inner {
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-mp_acct__item__txt__inner {
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__item__txt__inner {
    font-size: 1.3rem;
  }
}
.p-mp_acct__item__form__icon {
  width: 23px;
  height: 23px;
  z-index: 2;
  position: absolute;
}
@media (min-width: 768px) {
  .p-mp_acct__item__form__icon {
    left: 93%;
    top: 26%;
  }
  .p-mp_acct__item__form__icon:hover {
    cursor: pointer;
  }
}
@media (max-width: 767.9px) {
  .p-mp_acct__item__form__icon {
    left: 92%;
    top: 55%;
  }
}
@media (max-width: 576px) {
  .p-mp_acct__item__form__icon {
    left: 87.5%;
    top: 55%;
  }
}
.p-mp_acct__item__form__icon svg {
  width: 23px;
  height: 23px;
  fill: rgba(83, 83, 83, 0.8431372549);
}
@media (min-width: 768px) {
  .p-mp_acct__item__form__icon svg:hover {
    fill: #535353;
    transition: all 0.2s;
  }
}

/* ============================================================================
5.  予約履歴
============================================================================ */
.p-mp_rsrvmng__sec {
  margin-bottom: 3em;
}
.p-mp_rsrvmng__list {
  font-weight: bold;
  margin: 0 auto;
}
@media (min-width: 992px) {
  .p-mp_rsrvmng__list {
    width: 80%;
  }
}
.p-mp_rsrvmng__list__head {
  padding-left: 15px;
  text-align: left;
  border-left: 5px solid rgba(22, 128, 80, 0.4196078431);
}
@media (min-width: 992px) {
  .p-mp_rsrvmng__list__head {
    margin-bottom: 25px;
    height: 30px;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvmng__list__head {
    height: 25px;
    margin-bottom: 20px;
  }
}
.p-mp_rsrvmng__list__msg {
  margin: 0 0 20px 25px;
  font-weight: normal;
}
.p-mp_rsrvmng__list__msg--err {
  color: rgb(255, 0, 0);
  font-weight: bold;
}
.p-mp_rsrvmng__list__link {
  color: #000000;
}
@media (min-width: 992px) {
  .p-mp_rsrvmng__list__link:hover {
    cursor: pointer;
    color: #535353;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvmng__list__link:active {
    color: #535353;
  }
}
@media (min-width: 992px) {
  .p-mp_rsrvmng__list__link .p-mp_rsrvmng__list__subhead:hover {
    background-color: #edf7f3;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvmng__list__link .p-mp_rsrvmng__list__subhead:active {
    background-color: #edf7f3;
  }
}
.p-mp_rsrvmng__list__box {
  border-top: 0.1px solid #ebebeb;
  border-bottom: 0.1px solid #ebebeb;
}
@media (max-width: 991.9px) {
  .p-mp_rsrvmng__list__box {
    margin-bottom: 15px;
  }
  .p-mp_rsrvmng__list__box:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 992px) {
  .p-mp_rsrvmng__list__box {
    margin-bottom: 20px;
  }
  .p-mp_rsrvmng__list__box:last-child {
    margin-bottom: 0;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvmng__list__box__top {
    margin-bottom: 30px;
  }
}
@media (min-width: 992px) {
  .p-mp_rsrvmng__list__box__top {
    margin-bottom: 40px;
  }
}
.p-mp_rsrvmng__list__subhead {
  padding: 15px;
  text-align: left;
  background-color: #fafafa;
  display: flex;
  align-items: center;
}
.p-mp_rsrvmng__list__item {
  padding: 15px;
  text-align: left;
}
.p-mp_rsrvmng__list__item__end {
  background-color: #ebebeb;
  opacity: 0.95;
  color: rgba(83, 83, 83, 0.8431372549);
}
@media (max-width: 991.9px) {
  .p-mp_rsrvmng__list__item {
    display: block;
  }
}
@media (min-width: 992px) {
  .p-mp_rsrvmng__list__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
@media (min-width: 992px) {
  .p-mp_rsrvmng__list__toptxt {
    font-size: 2rem;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvmng__list__toptxt {
    font-size: 1.8rem;
  }
}
.p-mp_rsrvmng__list__txtwrap {
  display: flex;
  align-items: center;
}
.p-mp_rsrvmng__list__txt {
  font-weight: bold;
  display: flex;
}
.p-mp_rsrvmng__list__icon {
  margin-right: 5px;
  height: 15px;
}
.p-mp_rsrvmng__list__icon svg {
  fill: #ccc;
  width: 20px;
  height: 20px;
}
.p-mp_rsrvmng__list__status {
  font-weight: bold;
  font-size: 1.2rem;
  padding: 3px 8px;
  color: #ffffff;
  margin-right: 5px;
  display: inline-block;
  border-radius: 3px;
  line-height: 1.4;
  text-align: center;
  max-height: 23px;
}
.p-mp_rsrvmng__list__status--stop {
  background-color: rgba(83, 83, 83, 0.8431372549);
  min-width: 65px;
}
.p-mp_rsrvmng__list__status--end {
  background-color: #333;
  min-width: 40px;
}
.p-mp_rsrvmng__list__arrow {
  vertical-align: middle;
  color: rgba(83, 83, 83, 0.8431372549);
  line-height: 1;
  min-width: 9px;
  height: 9px;
  border: 2px solid currentColor;
  border-right: 0;
  border-top: 0;
  box-sizing: border-box;
  transform: translateY(-25%) rotate(-135deg);
  margin: 3px 10px 0 10px;
}
.p-mp_rsrvmng__list__btnwrap {
  display: flex;
}
@media (min-width: 992px) {
  .p-mp_rsrvmng__list__btnwrap {
    margin-top: 0;
    margin-right: 40px;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvmng__list__btnwrap {
    margin-top: 10px;
  }
}
.p-mp_rsrvmng__list__btn:last-child {
  margin-left: 15px;
}

.c-btn__small {
  padding: 0 17px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  outline: none;
  background: transparent;
  cursor: pointer;
  transition: all 0.3s;
  font-weight: bold;
  font-size: 1.2rem;
  line-height: 2;
  border-radius: 40px;
  margin-right: 10px;
}
.c-btn__small--a {
  border: 2px solid #018755;
  color: #018755;
  background-color: #edf7f3;
  width: 80px;
  text-align: left;
}
.c-btn__small--a--1 {
  width: 62px;
  background-color: #ffffff;
  text-align: center;
}
.c-btn__small--a--2 {
  width: 82px;
  border: 1px solid #018755;
  background-color: #ffffff;
  text-align: center;
  font-size: 11px;
}
.c-btn__small--a--3 {
  width: 120px;
  border: 1px solid #018755;
  background-color: #ffffff;
  text-align: center;
  font-size: 11px;
}
.c-btn__small--a > span {
  position: relative;
}
.c-btn__small--a > span::after {
  content: "";
  position: absolute;
  top: 70%;
  left: 38px;
  width: 6px;
  height: 6px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-25%) rotate(-135deg);
  margin-top: -5px;
}
@media (min-width: 992px) {
  .c-btn__small--a:hover {
    color: #ffffff;
    background-color: #018755;
  }
  .c-btn__small--a:hover > span::after {
    border-left: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
  }
}
@media (max-width: 991.9px) {
  .c-btn__small--a:active {
    color: #ffffff;
    background-color: #018755;
  }
  .c-btn__small--a:active > span::after {
    border-left: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
  }
}
.c-btn__small--b {
  border: 2px solid #d6105f;
  color: #d6105f;
  background-color: rgba(214, 16, 95, 0.0392156863);
  text-align: left;
}
.c-btn__small--b--1 {
  width: 140px;
}
.c-btn__small--b--1 > span::before, .c-btn__small--b--1 > span::after {
  left: 100px;
}
.c-btn__small--b--2 {
  width: 120px;
}
.c-btn__small--b--2 > span::before, .c-btn__small--b--2 > span::after {
  left: 83px;
}
.c-btn__small--b--3 {
  background-color: #ffffff;
  text-align: center;
}
.c-btn__small--b--4 {
  width: 82px;
  border: 1px solid #d6105f;
  text-align: center;
  font-size: 11px;
}
.c-btn__small--b > span {
  position: relative;
}
.c-btn__small--b > span::before, .c-btn__small--b > span::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 1.7px;
  height: 13px;
  background: #d6105f;
}
.c-btn__small--b > span::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.c-btn__small--b > span::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media (min-width: 992px) {
  .c-btn__small--b:hover {
    color: #ffffff;
    background-color: #d6105f;
  }
  .c-btn__small--b:hover > span::before, .c-btn__small--b:hover > span::after {
    background-color: #ffffff;
  }
}
@media (max-width: 991.9px) {
  .c-btn__small--b:active {
    color: #ffffff;
    background-color: #d6105f;
  }
  .c-btn__small--b:active > span::before, .c-btn__small--b:active > span::after {
    background-color: #ffffff;
  }
}
.c-btn__small--c {
  border: 2px solid #395063;
  color: #395063;
  background-color: #f1f9ff;
  width: 160px;
  text-align: left;
}
.c-btn__small--c svg {
  position: relative;
  top: 3px;
  left: 10px;
  width: 16px;
  height: 16px;
  fill: #395063;
}
@media (min-width: 992px) {
  .c-btn__small--c:hover {
    color: #ffffff;
    background-color: #395063;
  }
  .c-btn__small--c:hover svg {
    fill: #ffffff;
  }
}
@media (max-width: 991.9px) {
  .c-btn__small--c:active {
    color: #ffffff;
    background-color: #395063;
  }
  .c-btn__small--c:active svg {
    fill: #ffffff;
  }
}

.p-mp_rsrvdetail__list {
  font-weight: bold;
}
.p-mp_rsrvdetail__list__subhead {
  padding: 15px;
  text-align: left;
  background-color: #fafafa;
  display: flex;
  align-items: center;
}
.p-mp_rsrvdetail__list__head {
  height: 60px;
}
@media (min-width: 992px) {
  .p-mp_rsrvdetail__list__head {
    margin-bottom: 25px;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvdetail__list__head {
    margin-bottom: 20px;
  }
}
@media (min-width: 992px) {
  .p-mp_rsrvdetail__list__link:hover {
    cursor: pointer;
    color: #349f77;
  }
  .p-mp_rsrvdetail__list__link:hover .p-mp_rsrvmng__list__arrow {
    border: 3px solid #349f77;
    border-right: 0;
    border-top: 0;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvdetail__list__link:active {
    color: #349f77;
  }
  .p-mp_rsrvdetail__list__link:active .p-mp_rsrvmng__list__arrow {
    border: 3px solid #349f77;
    border-right: 0;
    border-top: 0;
  }
}
.p-mp_rsrvdetail__list__toptxtwrap {
  display: flex;
  align-items: center;
}
@media (min-width: 992px) {
  .p-mp_rsrvdetail__list__toptxt {
    font-size: 2rem;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvdetail__list__toptxt {
    font-size: 1.8rem;
  }
}
.p-mp_rsrvdetail__list__txt {
  margin-top: 8px;
}
@media (min-width: 992px) {
  .p-mp_rsrvdetail__btn {
    width: 80%;
    margin: 50px auto 1em auto;
  }
}
@media (max-width: 991.9px) {
  .p-mp_rsrvdetail__btn {
    width: 100%;
    margin: 40px auto 1em auto;
  }
  .p-mp_rsrvdetail__btn button {
    width: 100%;
  }
}

/* ============================================================================
6. ヘルプ画面
============================================================================ */
.mp-help__item__wrap {
  display: flex;
  align-items: center;
}
.mp-help__img {
  background-color: rgba(22, 128, 80, 0.0666666667);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 992px) {
  .mp-help__img {
    margin-right: 20px;
    min-width: 60px;
    height: 60px;
  }
}
@media (max-width: 991.9px) {
  .mp-help__img {
    margin-right: 10px;
    min-width: 45px;
    height: 45px;
  }
}
.mp-help__icon {
  fill: #018755;
}
@media (min-width: 992px) {
  .mp-help__icon {
    margin-right: 0.25em;
    width: 35px;
    height: 35px;
  }
}
@media (max-width: 991.9px) {
  .mp-help__icon {
    margin-right: 0.1em;
    top: 3px;
    width: 25px;
    height: 25px;
  }
}

.around {
  justify-content: space-around;
}

/* ============================================================================
7.  その他
============================================================================ */
/* エラー画面 ========================== */
.p-mp_err__ttl {
  margin-left: 28.175px;
}

/* ヘッダーなしの完了画面 ================ */
.btn_return {
  margin-left: 28.125px;
}

@media (max-width: 991.9px) {
  .c-section--ttl_wo_header {
    margin-top: 30px;
  }
}

.c-rsltscreen____sysmsg {
  line-height: 2;
}
.c-rsltscreen____sysmsg__red {
  color: rgb(255, 0, 0);
  font-weight: bold;
}

/* ============================================================================
コマ設定・詳細設定
============================================================================ */
@media (min-width: 768px) {
  .p-tt_period__inner {
    margin: 0.5em auto 4em auto;
    padding: 0 10%;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__inner {
    margin: 0 0 2em 0;
  }
}
.p-tt_period__inner_sec {
  margin-bottom: 3em;
}
.p-tt_period__inner_sec:last-child {
  margin-bottom: 0;
}
.p-tt_period__subttlwrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.p-tt_period__subttlwrap__basic {
  border-left: 5px solid #ebebeb;
}
.p-tt_period__subttlwrap__detail {
  border-left: 5px solid rgba(22, 128, 80, 0.4196078431);
}
@media (min-width: 768px) {
  .p-tt_period__subttlwrap {
    height: 30px;
    margin-bottom: 25px;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__subttlwrap {
    height: 25px;
    margin-bottom: 20px;
  }
}
.p-tt_period__subttl {
  font-weight: bold;
  margin-left: 10px;
}
@media (min-width: 768px) {
  .p-tt_period__subttl {
    font-size: 2rem;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__subttl {
    font-size: 1.8rem;
  }
}
.p-tt_period__btn {
  font-weight: bold;
  background-color: #ffffff;
  color: #018755;
  border-radius: 45px;
  padding: 5px 25px;
  border: solid 2px #018755;
  margin-right: 5px;
  font-size: 1.5rem;
}
.p-tt_period__btn:hover {
  background-color: #018755;
  color: #ffffff;
  transition: all 0.3s;
  cursor: pointer;
}
.p-tt_period__subitem_wrap_top {
  margin: 0 auto 1.7em 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-tt_period__subitem_wrap_bottom {
  margin: 1.7em 0 0 auto;
  justify-content: flex-end;
  display: flex;
}
@media (min-width: 768px) {
  .p-tt_period__subitem_wrap_bottom {
    margin: 1.7em 0.5em 0 auto;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__subitem_wrap_bottom {
    margin: 0.8em 1em 0 auto;
  }
}
.p-tt_period__subbtn:last-child {
  margin-left: 15px;
}
.p-tt_period__index {
  font-weight: bold;
  color: #ffffff;
  background-color: rgba(22, 128, 80, 0.4196078431);
  min-width: 35px;
  min-height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
}
.p-tt_period__itembox {
  border-radius: 10px;
  position: relative;
}
.p-tt_period__itembox__basic {
  background-color: rgba(245, 245, 245, 0.8705882353);
}
@media (min-width: 768px) {
  .p-tt_period__itembox__basic {
    padding: 5% 3%;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__itembox__basic {
    padding: 6% 3%;
  }
}
.p-tt_period__itembox__detail {
  background-color: #edf7f3;
}
@media (min-width: 768px) {
  .p-tt_period__itembox__detail {
    padding: 3%;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__itembox__detail {
    padding: 5% 3%;
  }
}
.p-tt_period__itembox__edit {
  background-color: #edf7f3;
}
@media (min-width: 768px) {
  .p-tt_period__itembox__edit {
    padding: 5% 3%;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__itembox__edit {
    padding: 6% 3%;
  }
}
.p-tt_period__errmsg {
  color: rgb(255, 0, 0);
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-tt_period__errmsg {
    font-size: 1.5rem;
    margin: 0 0 0.5em 265px;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__errmsg {
    font-size: 1.3rem;
    margin: 0 0 0.3em 0.5em;
  }
}
.p-tt_period__item {
  font-weight: bold;
  margin: 0 7% 1.2em 7%;
}
.p-tt_period__item--edit {
  margin: 0 7% 2em 7%;
}
.p-tt_period__item:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .p-tt_period__item {
    display: flex;
    align-items: baseline;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__item {
    display: block;
  }
}
@media (min-width: 768px) {
  .p-tt_period__item--lg {
    display: flex;
    align-items: flex-start;
  }
}
.p-tt_period__item__ttlwrap {
  display: inline-block;
}
@media (min-width: 768px) {
  .p-tt_period__item__ttlwrap {
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .p-tt_period__item__ttlwrap--lg {
    margin-top: 0.75em;
  }
}
@media (min-width: 768px) {
  .p-tt_period__item__ttl {
    display: flex;
    font-size: 1.5rem;
    min-width: 12em;
    justify-content: space-between;
    align-items: center;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__item__ttl {
    display: block;
    font-size: 1.3rem;
    margin: 0 0 0.5em 0.5em;
    align-items: center;
  }
}
.p-tt_period__item__txt {
  background-color: rgba(255, 255, 255, 0.9450980392);
  padding: 1em;
  border-radius: 5px;
  width: 100%;
}
@media (min-width: 768px) {
  .p-tt_period__item__txt {
    margin-left: 15px;
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__item__txt {
    font-size: 1.3rem;
  }
}
.p-tt_period__item__form_label {
  margin-left: 3px;
}
.p-tt_period__item__formwrap {
  display: flex;
  width: 100%;
}
.p-tt_period__item__form {
  overflow: auto;
  width: 100%;
  overflow-wrap: break-word;
}
@media (min-width: 768px) {
  .p-tt_period__item__form {
    margin-left: 15px;
  }
}
@media (min-width: 768px) {
  .p-tt_period__item__form__sec {
    margin-left: 20px;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__item__form__sec {
    margin-left: 15px;
  }
}
@media (min-width: 768px) {
  .p-tt_period__item__hyphen {
    margin: 10px 0 0 20px;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__item__hyphen {
    margin: 10px 0 0 15px;
  }
}
.p-tt_period__item__form__inner {
  font-weight: bold;
}
.p-tt_period__item__form__inner__textarea {
  line-height: 170%;
}
@media (min-width: 768px) {
  .p-tt_period__item__form__inner {
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .p-tt_period__item__form__inner {
    font-size: 1.3rem;
  }
}

/* ============================================================================
グループ登録・更新
============================================================================ */
@media (min-width: 768px) {
  .p-tt_group__inner {
    margin: 0.5em auto 4em auto;
    padding: 0 10%;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__inner {
    margin: 0 0 2em 0;
  }
}
.p-tt_group__inner_sec {
  margin-bottom: 3em;
}
.p-tt_group__inner_sec:last-child {
  margin-bottom: 0;
}
.p-tt_group__subttlwrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.p-tt_group__subttlwrap__basic {
  border-left: 5px solid #ebebeb;
}
.p-tt_group__subttlwrap__detail {
  border-left: 5px solid rgba(22, 128, 80, 0.4196078431);
}
@media (min-width: 768px) {
  .p-tt_group__subttlwrap {
    height: 30px;
    margin-bottom: 25px;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__subttlwrap {
    height: 25px;
    margin-bottom: 20px;
  }
}
.p-tt_group__subttl {
  font-weight: bold;
  margin-left: 10px;
}
@media (min-width: 768px) {
  .p-tt_group__subttl {
    font-size: 2rem;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__subttl {
    font-size: 1.8rem;
  }
}
.p-tt_group__btn {
  font-weight: bold;
  background-color: #ffffff;
  color: #018755;
  border-radius: 45px;
  padding: 5px 25px;
  border: solid 2px #018755;
  margin-right: 5px;
  font-size: 1.5rem;
}
.p-tt_group__btn:hover {
  background-color: #018755;
  color: #ffffff;
  transition: all 0.3s;
  cursor: pointer;
}
.p-tt_group__itembox {
  border-radius: 10px;
  position: relative;
}
.p-tt_group__itembox__basic {
  background-color: rgba(245, 245, 245, 0.8705882353);
}
@media (min-width: 768px) {
  .p-tt_group__itembox__basic {
    padding: 5% 3%;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__itembox__basic {
    padding: 6% 3%;
  }
}
.p-tt_group__itembox__detail {
  background-color: #edf7f3;
}
@media (min-width: 768px) {
  .p-tt_group__itembox__detail {
    padding: 3%;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__itembox__detail {
    padding: 5% 3%;
  }
}
.p-tt_group__itembox__edit {
  background-color: #edf7f3;
}
@media (min-width: 768px) {
  .p-tt_group__itembox__edit {
    padding: 5% 3%;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__itembox__edit {
    padding: 6% 3%;
  }
}
.p-tt_group__errmsg {
  color: rgb(255, 0, 0);
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-tt_group__errmsg {
    font-size: 1.5rem;
    margin: 0 0 0.5em 265px;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__errmsg {
    font-size: 1.3rem;
    margin: 0 0 0.3em 0.5em;
  }
}
.p-tt_group__item {
  font-weight: bold;
  margin: 0 7% 2.4em 7%;
}
.p-tt_group__item--edit {
  margin: 0 7% 2em 7%;
}
.p-tt_group__item:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .p-tt_group__item {
    display: flex;
    align-items: baseline;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__item {
    display: block;
  }
}
@media (min-width: 768px) {
  .p-tt_group__item--lg {
    display: flex;
    align-items: flex-start;
  }
}
.p-tt_group__item__ttlwrap {
  display: inline-block;
}
@media (min-width: 768px) {
  .p-tt_group__item__ttlwrap {
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .p-tt_group__item__ttlwrap--lg {
    margin-top: 0.75em;
  }
}
@media (min-width: 768px) {
  .p-tt_group__item__ttl {
    display: flex;
    font-size: 1.5rem;
    min-width: 12em;
    justify-content: space-between;
    align-items: center;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__item__ttl {
    display: block;
    font-size: 1.3rem;
    margin: 0 0 0.5em 0.5em;
    align-items: center;
  }
}
.p-tt_group__item__txt {
  background-color: rgba(255, 255, 255, 0.9450980392);
  padding: 1em;
  border-radius: 5px;
  width: 100%;
}
@media (min-width: 768px) {
  .p-tt_group__item__txt {
    margin-left: 15px;
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__item__txt {
    font-size: 1.3rem;
  }
}
.p-tt_group__item__form_label {
  margin-left: 3px;
}
.p-tt_group__item__formwrap {
  display: flex;
  width: 100%;
}
.p-tt_group__item__form {
  overflow: auto;
  width: 100%;
  overflow-wrap: break-word;
}
@media (min-width: 768px) {
  .p-tt_group__item__form {
    margin-left: 15px;
  }
}
@media (min-width: 768px) {
  .p-tt_group__item__form__sec {
    margin-left: 20px;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__item__form__sec {
    margin-left: 15px;
  }
}
@media (min-width: 768px) {
  .p-tt_group__item__hyphen {
    margin: 10px 0 0 20px;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__item__hyphen {
    margin: 10px 0 0 15px;
  }
}
.p-tt_group__item__form__inner {
  font-weight: bold;
}
.p-tt_group__item__form__inner__textarea {
  line-height: 170%;
}
@media (min-width: 768px) {
  .p-tt_group__item__form__inner {
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__item__form__inner {
    font-size: 1.3rem;
  }
}
.p-tt_group__item_subcourse {
  font-weight: bold;
  margin: 0 7% 1.2em 7%;
}
.p-tt_group__item_subcourse--edit {
  margin: 0 7% 2em 7%;
}
.p-tt_group__item_subcourse:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .p-tt_group__item_subcourse {
    display: flex;
    align-items: baseline;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__item_subcourse {
    display: block;
  }
}
@media (min-width: 768px) {
  .p-tt_group__item_subcourse--lg {
    display: flex;
    align-items: flex-start;
  }
}
.p-tt_group__item_subcourse__ttlwrap {
  display: inline-block;
}
@media (min-width: 768px) {
  .p-tt_group__item_subcourse__ttlwrap {
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .p-tt_group__item_subcourse__ttlwrap--lg {
    margin-top: 0.75em;
  }
}
@media (min-width: 768px) {
  .p-tt_group__item_subcourse__ttl {
    display: flex;
    font-size: 1.5rem;
    min-width: 12em;
    justify-content: space-between;
    align-items: center;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__item_subcourse__ttl {
    display: block;
    font-size: 1.3rem;
    margin: 0 0 0.5em 0.5em;
    align-items: center;
  }
}
.p-tt_group__item_subcourse__txt {
  background-color: rgba(255, 255, 255, 0.9450980392);
  padding: 1em;
  border-radius: 5px;
  width: 100%;
}
@media (min-width: 768px) {
  .p-tt_group__item_subcourse__txt {
    margin-left: 15px;
    font-size: 1.5rem;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__item_subcourse__txt {
    font-size: 1.3rem;
  }
}
.p-tt_group__subitem_wrap_bottom {
  margin: 1.7em 0 1.7em auto;
  justify-content: flex-end;
  display: flex;
}
@media (min-width: 768px) {
  .p-tt_group__subitem_wrap_bottom {
    margin: 1.7em 0.5em 1.7em auto;
  }
}
@media (max-width: 767.9px) {
  .p-tt_group__subitem_wrap_bottom {
    margin: 0.8em 1em 0.8em auto;
  }
}
.p-tt_group__sortableArea {
  width: 90%;
  margin: 2em auto;
  min-width: 300px;
}
.p-tt_group__ui-state-highlight {
  max-width: 800px;
  min-width: 300px;
  height: 15.5em;
  line-height: 1.2em;
}
.p-tt_group__form_box {
  padding: 0.5em 1em;
  margin: 2em auto;
  font-weight: bold;
  /*文字色*/
  color: #343434;
  background-color: #edf7f3;
  /*線*/
  border: solid 2px #ccc;
  /*角の丸み*/
  border-radius: 10px;
  min-width: 300px;
}
.p-tt_group__form_box__subcourse {
  width: 90%;
  display: none;
}

/*↑↑↑ Ver1.09↑↑↑ */
/* Ver2.03 */
.p-course__list {
  /* 入力フォーム 必須/任意ラベル */
}
.p-course__list__tablewrap {
  overflow: auto;
}
@media (max-width: 991.9px) {
  .p-course__list__tablewrap {
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
  }
}
.p-course__list__tablewrap::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.p-course__list__tablewrap::-webkit-scrollbar-track {
  border-radius: 5px;
  box-shadow: 0 0 4px #aaa inset;
}
.p-course__list__tablewrap::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #349f77;
}
.p-course__list__table {
  border-bottom: none;
  width: 100%;
  height: 100%;
  border-bottom: solid 1px #ebebeb;
}
.p-course__list__table tbody th {
  position: sticky;
  top: 0;
  left: 0;
}
.p-course__list__table th,
.p-course__list__table td {
  vertical-align: middle;
  white-space: nowrap;
}
.p-course__list__table tbody th a,
.p-course__list__table tbody td a {
  color: #343434;
  display: block;
}
.p-course__list__table th {
  text-align: left;
  background: #fafafa;
  position: sticky;
  top: 0;
  left: 0;
}
@media (min-width: 768px) {
  .p-course__list__table {
    font-size: 1.5rem;
  }
  .p-course__list__table th,
  .p-course__list__table td {
    padding: 1em;
    font-weight: bold;
  }
  .p-course__list__table th {
    width: 16em;
  }
}
@media (max-width: 767.9px) {
  .p-course__list__table {
    font-size: 1.4rem;
  }
  .p-course__list__table th,
  .p-course__list__table td {
    padding: 0.75em;
    font-weight: bold;
  }
  .p-course__list__table th {
    width: 13em;
  }
}
.p-course__list .c-form__label {
  display: inline-block;
  font-weight: normal;
  color: #fff;
  border-radius: 3px;
}
@media (min-width: 768px) {
  .p-course__list .c-form__label {
    font-size: 1.2rem;
    padding: 0.15em 0.3em;
    height: 1.8em;
    margin-right: 5px;
  }
}
@media (max-width: 767.9px) {
  .p-course__list .c-form__label {
    font-size: 1rem;
    padding: 0.25em 0.4em;
    margin-right: 2px;
  }
}
.p-course__list .c-form__required__label {
  background: #d6105f;
}
.p-course__list .c-form__optional__label {
  background: #7c7c7c;
}/*# sourceMappingURL=style.css.map */