@charset "UTF-8";

/*-----▼color-----*/
/*-----▲colorここまで-----*/
/*! destyle.css v1.0.13 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model
   ========================================================================== */
* {
  box-sizing: border-box;
}

::before,
::after {
  box-sizing: inherit;
}

/* Document
     ========================================================================== */
/**
   * 1. Correct the line height in all browsers.
   * 2. Prevent adjustments of font size after orientation changes in iOS.
   * 3. Remove gray overlay on links for iOS.
   */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-tap-highlight-color: transparent;
  /* 3*/
}

/* Sections
     ========================================================================== */
/**
   * Remove the margin in all browsers.
   */
body {
  margin: 0 auto;
}

/**
   * Render the `main` element consistently in IE.
   */
main {
  display: block;
	color: #323232;
  line-height: 1.7;
  font-weight: normal;
}

/* Vertical rhythm
     ========================================================================== */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings
     ========================================================================== */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration)
     ========================================================================== */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition)
     ========================================================================== */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content
     ========================================================================== */
/**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
  border: 0;
  border-top: 1px solid;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics
     ========================================================================== */
/**
   * Remove the gray background on active links in IE 10.
   */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
b,
strong {
  font-weight: bolder;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

/**
   * Add the correct font size in all browsers.
   */
small {
  font-size: 80%;
}

/**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove the border on images inside links in IE 10.
   */
img {
  border-style: none;
  vertical-align: bottom;
}

embed,
object,
iframe {
  border: 0;
  vertical-align: bottom;
}

/* Forms
     ========================================================================== */
/**
   * Reset form fields to make them styleable
   * 1. Reset radio and checkbox to preserve their look in iOS.
   */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}

[type="checkbox"] {
  /* 1 */
  -webkit-appearance: checkbox;
  appearance: checkbox;
}

[type="radio"] {
  /* 1 */
  -webkit-appearance: radio;
  appearance: radio;
}

/**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
   * Correct the inability to style clickable types in iOS and Safari.
   */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

button[disabled],
[type="button"][disabled],
[type="reset"][disabled],
[type="submit"][disabled] {
  cursor: default;
}

/**
   * Remove the inner border and padding in Firefox.
   */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
   * Restore the focus styles unset by the previous rule.
   */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
   * Remove padding
   */
option {
  padding: 0;
}

/**
   * Reset to invisible
   */
fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
}

/**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
legend {
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
progress {
  vertical-align: baseline;
}

/**
   * Remove the default vertical scrollbar in IE 10+.
   */
textarea {
  overflow: auto;
}

/**
   * 1. Remove the padding in IE 10.
   */
[type="checkbox"],
[type="radio"] {
  padding: 0;
  /* 1 */
}

/**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
   * 1. Correct the outline style in Safari.
   */
[type="search"] {
  outline-offset: -2px;
  /* 1 */
}

/**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
   * Clickable labels
   */
label[for] {
  cursor: pointer;
}

/* Interactive
     ========================================================================== */
/*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
details {
  display: block;
}

/*
   * Add the correct display in all browsers.
   */
summary {
  display: list-item;
}

/* Table
     ========================================================================== */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/* Misc
     ========================================================================== */
/**
   * Add the correct display in IE 10+.
   */
template {
  display: none;
}

/**
   * Add the correct display in IE 10.
   */
[hidden] {
  display: none;
}

.-btn01 {
  display: inline-block;
  text-align: center;
}

.-btn01 > .-btn01_link {
  display: block;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: bold;
  line-height: 1.1;
  color: #4b9c47;
  letter-spacing: 0.05em;
  background-color: #ffe443;
  border-radius: 50px;
  padding: 15px 25px 15px 30px;
  box-shadow: 3px 3px 0px #71a566;
}

@media (max-width: 767px) {
  .-btn01 > .-btn01_link {
    font-size: 1.5rem;
    padding: 15px 10px 15px 15px;
  }
}

.-btn01 > .-btn01_link:hover {
  box-shadow: 0px 0px 0px #71a566;
  transform: translate(3px, 3px);
  text-decoration: none;
  transition: .5s ease;
}

.-btn01 > .-btn01_link::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 10px solid #4b9c47;
  transform: translateY(-20%);
  margin-left: 15px;
}

@media (max-width: 767px) {
  .-btn01 > .-btn01_link::after {
    transform: translateY(0%);
    margin-left: 10px;
  }
}

.-ttl01 {
  display: inline-block;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: bold;
  line-height: 1.1;
  text-align: center;
  color: #4b9c47;
  letter-spacing: 0.05em;
  background-color: #ffe443;
  border-radius: 20px;
  padding: 10px 40px;
}

#largeSeminar .OS_schedule__inner .-ttl01 {
  color: #4b9c47;
}

@media (max-width: 767px) {
  .-ttl01 {
    border-radius: 50px;
  }
}

.-ttl_grn {
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  background-color: #61a260;
  padding: 8px 35px;
  position: relative;
}
.-ttl_skyblue {
  color: #fff;
	line-height: 1.4;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  background-color: #E0502D;
  /*background-color: #4fa8c9;*/
  padding: 8px 35px;
  position: relative;
  border-radius: 15px;
  margin-top: 40px;
}
.-ttl_blue {
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  background-color: #286ae3;
  padding: 8px 35px;
  position: relative;
}
@media (max-width: 767px) {
  .-ttl_grn,
  .-ttl_skyblue {
    font-size: 1.5rem;
    width: 60%;
    padding: 10px 30px;
		border-radius: 60px;
  }
}

.-ttl_grn::after {
  content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../img/icon_pin.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -30%;
  right: -3%;
}
.-ttl_skyblue::after {
  content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../img/icon_pin.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -20%;
  right: -3%;
}

@media (max-width: 767px) {
  .-ttl_grn::after {
    top: -20%;
    right: -2%;
  }
}

.-ttl_pink {
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  background-color: #dc7d7d;
  padding: 8px 35px;
  position: relative;
}

@media (max-width: 767px) {
  .-ttl_pink {
    font-size: 1.5rem;
    width: 60%;
    padding: 10px 30px;
  }
}

.-ttl_pink::after {
  content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../img/icon_pin.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -30%;
  right: -3%;
}

@media (max-width: 767px) {
  .-ttl_pink::after {
    top: -20%;
    right: -2%;
  }
}

.-box_main {
  box-sizing: border-box;
  max-width: 916px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 18px;
}


.OS_ttl {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  color: #61a260;
  line-height: 0.81;
  letter-spacing: 0.05em;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 28px 0 20px;
}

@media (max-width: 767px) {
  .OS_ttl {
    font-size: 1.6rem;
    margin: 20px 0 15px;
    flex-direction: column;
    line-height: 1.21;
  }
}

.OS_ttl::before {
  content: "";
  display: inline-block;
  width: 58px;
  height: 58px;
  padding-top: 50px;
  background: url(../img/icon_video.png) center center no-repeat;
  background-size: contain;
  margin-right: 30px;
}

@media (max-width: 767px) {
  .OS_ttl::before {
    width: 51px;
    height: 51px;
    background: url(../img/icon_video_sp.png) center center no-repeat;
    background-size: contain;
    margin-right: 0;
    margin-bottom: 15px;
  }
}

.OS_txt_01, .OS_txt_02 {
  font-size: 16px;
  font-size: 1.6rem;
  color: #282828;
  line-height: 1.875;
  letter-spacing: 0.1em;
  padding: 0 15px;
  max-width: 920px;
  margin: 0 auto 50px;
}

@media (max-width: 767px) {
  .OS_txt_01, .OS_txt_02 {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    padding: 0 20px;
  }
}

.-sec_ttl {
  font-size: 50px;
  font-size: 5rem;
  font-weight: 100;
  line-height: 1.3;
  color: #717171;
  letter-spacing: 0.05em;
  text-align: center;
    width: 100%;
}

@media (max-width: 767px) {
  .-sec_ttl {
    font-size: 4rem;
  }
}

.-sec_ttl::before {
  content: "";
  display: block;
  height: 27px;
  background: url(../img/icon_step.png) center center no-repeat;
  background-size: contain;
  margin-bottom: 10px;
}

@media (max-width: 767px) {
  .-sec_ttl::before {
    height: 36px;
    background: url(../img/icon_step_sp.png) center center no-repeat;
    background-size: contain;
    margin-bottom: 0;
  }
}

.howto_ul__li {
  position: relative;
  background-color: #fff;
  border-radius: 100px;
  display: flex;
}

@media (max-width: 767px) {
  .howto_ul__li {
    flex-direction: column;
    border-radius: 200px 200px 0 0;
  }
}

.howto_ul__li:not(:last-of-type) {
  margin-bottom: 25px;
}

@media (max-width: 767px) {
  .howto_ul__li:not(:last-of-type) {
    margin-bottom: 80px;
  }
}

.howto_ul__li:not(:last-of-type)::after {
  content: '';
  display: inline-block;
  width: 34px;
  height: 22px;
  background: url(../img/icon_sankaku01.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -22px;
  left: 50%;
}

@media (max-width: 767px) {
  .howto_ul__li:not(:last-of-type)::after {
    width: 41px;
    height: 25px;
    background: url(../img/icon_sankaku01_sp.png) center center no-repeat;
    background-size: contain;
    bottom: -70px;
    transform: translateX(-50%);
  }
}

.howto_ul__li:first-of-type {
  background-color: #feffd9;
}

.howto_ul__li:last-of-type {
  background-color: #ffe443;
}

.howto_ul__li .-step_num {
  width: 120px;
  align-self: center;
  text-align: center;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}

@media (max-width: 767px) {
  .howto_ul__li .-step_num {
    font-size: 1.5rem;
    padding-top: 20px;
    padding-bottom: 10px;
  }
}

.howto_ul__li .-step_num span {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 400;
}

@media (max-width: 767px) {
  .howto_ul__li .-step_num span {
    font-size: 3rem;
  }
}

.howto_ul__li dl {
  width: 50%;
  align-self: center;
  margin-right: 20px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.075em;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .howto_ul__li dl {
    font-size: 1.4rem;
    width: 75%;
    margin: 0;
    padding-bottom: 15px;
  }
}

.howto_ul__li dl dt {
  color: #61a260;
  font-size: 1.6rem;
}

@media (max-width: 767px) {
  .howto_ul__li dl dd {
    letter-spacing: 0.02em;
  }
}

.howto_ul__li dl dd span {
  display: block;
}

@media (max-width: 767px) {
  .howto_ul__li dl dd span {
    font-size: 1.4rem;
  }
}

.howto_ul__li .-step_fig {
  position: relative;
  width: 250px;
  align-self: center;
  border-left: 1px solid #dfdfdf;
  margin-left: auto;
}

@media (max-width: 767px) {
  .howto_ul__li .-step_fig {
    width: 110%;
    height: 100%;
    margin: 0;
    border: 1px solid #dfdfdf;
  }
}

.howto_ul__li .-step_fig > img {
  height: 142px;
}

.-btn_zoom {
  position: absolute;
  top: 49.4%;
  right: -9.9%;
  transform: translateY(-50%);
}

@media (max-width: 767px) {
  .-btn_zoom {
    top: 100%;
    right: auto;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

.-btn_zoom:after {
  content: "拡大する";
  position: absolute;
  top: 55px;
  display: block;
  right: -20px;
  font-size: 10px;
}

@media (max-width: 767px) {
  .-btn_zoom:after {
    top: 40px;
    right: -60px;
    font-size: 1.2rem;
  }
}

.-btn_zoom > a {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: url(../img/bg_pattern02.png) center center;
  display: block;
  box-shadow: 4px 4px 0px #d4d4d4;
}

@media (max-width: 767px) {
  .-btn_zoom > a {
    width: 70px;
    height: 70px;
  }
}

.-btn_zoom > a:hover {
  box-shadow: 0px 0px 0px #d4d4d4;
  transform: translate(4px, 4px);
  text-decoration: none;
  transition: .5s ease;
}

.-btn_zoom > a span {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background-color: #fff;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
  .-btn_zoom > a span {
    width: 65px;
    height: 65px;
  }
}

.-btn_zoom > a span img {
  width: 37px;
  height: 37px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.-icon_zoom::after {
  content: '';
  display: inline-block;
  width: 37px;
  height: 37px;
  background: url(../img/icon_zoom.png) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50.5%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
  .-icon_zoom::after {
    width: 50px;
    height: 57px;
    background: url(../img/icon_zoom_sp.png) center center no-repeat;
    background-size: contain;
  }
}

.-day_ul {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 28px;
  transform: translateX(7%);
}
ul.lite_sched{
    max-width: 700px;
    justify-content: center;
    gap:10px 20px;
    transform: translateX(0%);
}
.-day_ul__li {
  width: 33%;
  margin-bottom: 25px;
  text-align: left;
}
ul.lite_sched .-day_ul__li {
  width: auto;
}

@media (max-width: 767px) {
  .-day_ul__li {
    width: 45%;
  }
    ul.lite_sched{
    gap:15px 10px;
}
    ul.lite_sched .-day_ul__li {
			width: 100%;
      margin-bottom: 0;
      display: flex;
      justify-content: center;
}
    .lite_sched .-day_ul__li a span {
			font-size: 1.5rem;
    }
    .lite_sched .-day_ul__li a span::before{
			margin-right: 2px;
    }
    /*.lite_sched .-day_ul__li a span::after{
			width: 90%;
			margin-left: 2px;
    }*/
}

.-day_ul__li a {
  position: relative;
}

.-day_ul__li a::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -5px;
  display: inline-block;
  width: 90%;
  height: 1px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #3c3c3c;
}

.-day_ul__li a span {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.1;
  letter-spacing: 0.05em;
  color: #3c3c3c;
}

@media (max-width: 767px) {
  .-day_ul__li a span {
    font-size: 1.4rem;
  }
}

.-day_ul__li a span::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background-color: #61a260;
  -webkit-transform: translateY(-20%);
  transform: translateY(-30%);
  margin-right: 10px;
}

.-day_ul__li a span::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 7px solid #3c3c3c;
  -webkit-transform: translateY(-20%);
  transform: translateY(-30%);
  margin-left: 5px;
}

.-day_ul__li a:hover {
  text-decoration: none;
}

.-day_ul__li a:hover::after {
  background-color: #61a260;
}

.-day_ul__li a:hover span {
  font-weight: 500;
  color: #61a260;
}

.-day_ul__li a:hover span::after {
  border-top: 7px solid #61a260;
}

.course_ul {
  max-width: 830px;
	margin: 0 auto;
  /*margin: 0 calc(50% - 458px);*/
}
.lite_sched .course_ul {
  display: flex;
	flex-wrap: wrap;
  justify-content: space-around;
  gap:30px;
}

@media (max-width: 960px) {
  .course_ul {
    margin: 0 calc(-7vw - 25px);
  }
}
@media (max-width: 767px) {
  .course_ul {
    margin: 0;
  }
}
.course_ul:nth-child(n+2) {
    margin-top: 20px;
}
.course_ul__li:nth-of-type(even) .-course {
  background-color: #f7fdd4;
}

.course_ul__li:not(:last-of-type) {
  margin-bottom: 10px;
}

.course_ul__li .-course {
  font-size: 16px;
  font-size: 1.6rem;
  color: #3c3c3c;
  background-color: #f1fce7;
  border-radius: 100px;
  display: flex;
  border: 3px solid #ffe443;
}

.lite_sched .course_ul__li .-course {
	max-width: 165px;
  width: auto;
  display: block;
  border-radius: 10px;
}
.course_ul__li .bg_pink {
  background-color: #fff6f6;
}

@media (max-width: 767px) {
  .course_ul__li .-course {
    flex-direction: column;
    border-radius: 20px;
  }
 .lite_sched .course_ul__li{
     width: 50%;
  min-width: 110px;
}
    .lite_sched .course_ul__li .-course {
  max-width: 100%;
        width: 100%;
}
    .lite_sched .course_ul__li .-course__time::after{
      display: none;
    }
    .lite_sched .course_ul{
        gap:10px;
        width: 100%;
    }
    .lite_sched .course_ul__li .textBox{
        margin: 0;
    }
    .lite_sched .course_ul__li .textBox > p{
        text-align: center;
        line-height: 1.2;
    }
    .lite_sched .course_ul__li .-course__time{
        margin: 0;
    }
    .lite_sched .course_ul__li .-course__app{
        font-size: 1.4rem;
        padding: 10px;
        line-height: 1.2;
        letter-spacing: -0.2px;
        text-align: center;
    }
}

.course_ul__li .-course:hover {
  cursor: pointer;
  text-decoration: none;
  animation: simple_square_btn4 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

@keyframes simple_square_btn4 {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }
}

.course_ul__li .-course__time {
  width: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 15px 0;
  border-right: 1px solid #3c3c3c;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.lite_sched .course_ul__li .-course__time {
    margin: 0;
    padding: 0 0 5px;
    width: 100%;
  border-right: none;
  border-bottom: 1px solid #bbd5bf;
}

@media (max-width: 767px) {
  .course_ul__li .-course__time {
    width: auto;
    font-size: 1.4rem;
    font-weight: 600;
    border-right: none;
    margin: 10px 0;
    position: relative;
  }
}

@media (max-width: 767px) {
  .course_ul__li .-course__time::after {
    content: "";
    display: block;
    width: 25%;
    height: 1px;
    background-color: #282828;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
  }
}

.course_ul__li .-course__contents {
  width: 90%;
}
.lite_sched .course_ul__li .-course__contents {
  width: 100%;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 10px;
}

@media (max-width: 767px) {
  .course_ul__li .-course__contents {
    width: 100%;
  }
  .lite_sched .course_ul__li .-course__contents {
  min-height: 60px;
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 10px 5px;
}
}

.course_ul__li .-course__contents .img_sp {
  display: none;
  margin: 13px 15px 0 15px;
}

@media (max-width: 767px) {
  .course_ul__li .-course__contents .img_sp {
    display: block;
  }
}

.course_ul__li .-course__contents .img_sp img {
  width: 100%;
}

.course_ul__li .-course__contents dl {
  align-self: flex-start;
  margin: 13px 10px;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.075em;
  line-height: 1.8;
}

@media (max-width: 767px) {
  .course_ul__li .-course__contents dl {
    font-size: 1.3rem;
    margin: 15px;
    letter-spacing: 0.05em;
  }
}

.course_ul__li .-course__contents dl dt {
  font-size: 1.8rem;
  color: #3c3c3c;
}

@media (max-width: 767px) {
  .course_ul__li .-course__contents dl dt {
    font-size: 1.4rem;
  }
}

.course_ul__li .-course__contents dl dt .br_sp {
  display: none;
}

@media (max-width: 767px) {
  .course_ul__li .-course__contents dl dt .br_sp {
    display: block;
  }
}

.course_ul__li .-course__contents dl dd {
  display: flex;
  font-size: 1.4rem;
}

@media (max-width: 767px) {
  .course_ul__li .-course__contents dl dd {
    font-size: 1.3rem;
  }
}

.course_ul__li .-course__contents dl dd span {
  display: block;
}

.course_ul__li .-course__contents .img_pc {
  min-width: 170px;
  margin-top: 5px;
  margin-left: 10px;
}

@media (max-width: 767px) {
  .course_ul__li .-course__contents .img_pc {
    display: none;
  }
}

.course_ul__li .-course__contents .img_pc img {
  width: 170px;
  height: 127px;
}

.course_ul__li .-course__app {
  width: 200px;
	padding: 5px 10px;
	font-size: 1.4rem;
  font-weight: 600;
  margin-left: auto;
  background-color: #ffe443;
  border-radius: 0 90px 90px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: left;
}
.lite_sched .course_ul__li .-course__app{
     width: 100%;
    border-radius: 0;
}
.lite_sched .course_ul__li .-course__app br{
    display: none;
}

@media (max-width: 767px) {
  .course_ul__li .-course__app {
    font-size: 1.5rem;
    width: auto;
    margin: 0;
    padding: 15px;
    border-radius: 0 0 10px 10px;
  }
    .lite_sched .course_ul__li .-course__app br{
    display: inline-block;
}
}

@media (max-width: 767px) and (max-width: 767px) {
  .course_ul__li .-course__app .br_pc {
    display: none;
  }
}

.course_ul__li .-course__app::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 10px solid #282828;
  margin-left: 10px;
}

.course_ul__li.course_closed .-course:hover {
  cursor: default;
  animation: none;
}

.course_ul__li.course_closed .-course__app::after {
  content: none;
}

.-note_box {
	margin-top: 30px;
  text-align: left;
  letter-spacing: 0.025em;
  color: #3c3c3c;
  padding-bottom: 40px;
}

.-note_box .-note_tit {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.7;
  padding-bottom: 5px;
}

@media (max-width: 767px) {
  .-note_box .-note_tit {
    font-size: 1.5rem;
  }
}

.-note_box .-note_li {
  font-size: 14px;
  font-size: 1.4rem;
}

@media (max-width: 767px) {
  .-note_box .-note_li {
    font-size: 1.3rem;
  }
}


/*.-access__contents {
  margin-bottom: 20px;
}
.-access__contents dl {
  display: flex;
	justify-content: space-between;
  font-size: 1.4rem;
  text-align: left;
}
.-access__contents dl dt {
  font-size: 1.8rem;
  color: #3c3c3c;
  line-height: 1.3;
  padding-bottom: 3px;
}
.-access__contents dl dt span {
  font-size: 1.5rem;
  margin-left: 8px;
}
.-access__contents dl dd span {
  font-weight: bold;
}
.-access__contents .query{
  margin-bottom: 5px;
}
.-access__contents .query .date{
  font-size: 1.9rem;
  font-weight: bold;
  margin-bottom: 10px;
  padding-left:  10px; 
}
.-access__contents .query .dom{
  font-size: 1.2rem;
  color: #FFFFFF;
  background-color: #4b9c47;
  padding: 3px 24px;
  margin-bottom: 3px;
  float: left;
  margin-top:4px;
}
.-access__contents .text{
  margin-bottom: 19px;
}
@media (min-width: 767px) {
    .-access__contents{
        margin-top: 60px;
    }
}
@media (max-width: 767px) {
  .-access__contents dl  {
    font-size: 1.3rem;
  }
}
@media (max-width: 767px) {
  .-access__contents dl dt  {
    color: #3c3c3c;
    font-size: 1.5rem;
    line-height: 1.6;
  }
}
@media (max-width: 767px) {
  .-access__contents dl dt span {
    color: #3c3c3c;
    font-size: 1.3rem;
  }
}
@media (max-width: 767px) {
  .-access__contents .query  {
    font-size: 1.4rem;
    line-height: 1.6;
  }
}
@media (max-width: 767px) {
  .-access__contents .query span{
    font-size: 1.2rem;
    padding: 2px 25px;
  }
}
@media (max-width: 767px) {
  .-access__contents .map_pc {
    display: none;
  }
}
@media (max-width: 767px) {
  .-access__contents .map_pc02 {
    display: none;
  }
}
.-access__contents .right img{
  width: 200px;
  float: right;
    
}
.-access__contents .map_pc img{
  width: 300px;
  margin-left: 15px;
}
.-access__contents .map_sp {
  display: none;
  width: 100%;
}
@media (max-width: 767px) {
 .-access__contents .map_sp  {
  display: block;
   margin-bottom: 10px;
  }
}*/

.-pagetop {
  display: inline-block;
  width: 100%;
  position: fixed;
  bottom: 100px;
  left: 0;
  right: 0px;
  margin: auto;
  z-index: 50;
  visibility:hidden;
}
.-pagetop.none {
  display: none!important;
}

.-pagetop .-pagetop_btn {
  width: 75px;
  font-size: 0;
  line-height: 0;
    position: absolute;
    top: -64px;
    right: 0;
  margin: auto;
  margin-right: 2%;
  cursor: pointer;
  transition: .5s ease;
  pointer-events: auto;
}

.-pagetop img {
  box-shadow: none;
  border-radius: 0;
}

@media (max-width: 767px) {
	.-pagetop {
	  bottom: 80px;
	}
  .-pagetop .-pagetop_btn {
    width: 50px;
      top: -52px;
  }
}
.btnunc {
  display: inline-block;
  width: 100%;
  position: fixed;
  margin: auto;
  z-index: 50;
  visibility:hidden;
}
.-pagetop.-show {
  visibility:visible;
}
.-pagetop.-transition500 {
  transition: .5s ease;
}

@media (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .sp-se {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .sp-se {
    display: none !important;
  }
}

@media (max-width: 320px) {
  .sp-se {
    display: block !important;
  }
}

.-event_none {
  pointer-events: none;
}

.-pad_tb5 {
  padding: 5px 0;
}

.-pad_tb10 {
  padding: 10px 0;
}

.-pad_tb15 {
  padding: 15px 0;
}

.-pad_tb20 {
  padding: 20px 0;
}

.-f_center {
  display: flex;
  justify-content: center;
}

.-f_around {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.-f_between {
  display: flex;
  justify-content: space-between;
}

.-box_916 {
  width: 100%;
  max-width: 916px;
  margin: 0 auto;
}

.-box_830 {
  width: 100%;
  max-width: 1160px;
  margin: 0 auto;
}

.disp_block {
  display: block !important;
}

.disp_inline {
  display: inline !important;
}

.-txt_yelw {
  color: #ffc000;
}

.-txt_pink {
  color: #e981e5;
}

.-txt_skyblue {
  color: #8181e9;
}
.-txtsz_12 {
  font-size: 12px;
  font-size: 1.2rem;
}

.-txtsz_24 {
  font-size: 24px;
  font-size: 2.4rem;
}

.-txt_under {
  position: relative;
}

.-txt_under::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -3px;
  display: inline-block;
  width: 95%;
  height: 1px;
  transform: translateX(-50%);
  background-color: #3c3c3c;
}

.-txt_under.link_soudan {
  position: relative;
}

.-txt_under.link_soudan:hover::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -3px;
  display: inline-block;
  width: 95%;
  height: 1px;
  transform: translateX(-50%);
  background-color: #ff8243;
}

.-txt_under.link_soudan02 {
  position: relative;
}

.-txt_under.link_soudan02:hover::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -3px;
  display: inline-block;
  width: 95%;
  height: 1px;
  transform: translateX(-50%);
  background-color: #ff8243;
}

a.link_soudan {
  color: #333 !important;
  font-weight: 500;
}

a.link_soudan:hover {
  color: #ff8243 !important;
  font-weight: 500;
  text-decoration: none;
}

a.link_soudan02 {
  color: #3c3c3c !important;
  text-decoration: underline !important;
}

a.link_soudan02:hover {
  color: #ff8243 !important;
}

.max920 {
  padding: 0 15px;
  max-width: 920px;
  margin: auto;
}

img {
  vertical-align: bottom !important;
}

h1 > img {
  vertical-align: bottom;
}

.contents {
  width: 100%;
  margin: 0 auto;
  font-family: 'Noto Sans JP', sans-serif;
}
.contents h1{
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 30px;
}

.usualContents {
  background: url(../img/bg_border01.png) repeat-x top, url(../img/bg_pattern01.png) rgba(117, 237, 114, 0.3);
}

.usualContents .OS_ttl {
  margin-top: 0;
}

.secondContents {
  background: url(../img/bg_border01.png) repeat-x top, url(../img/bg_pattern01.png) rgba(238, 162, 154, 0.3);
}

.secondContents .OS_ttl {
  margin-top: 0;
  color: #dc7d7d;
}

.secondContents .OS_ttl::before {
  background: url(../img/icon_video02.png) center center no-repeat;
  background-size: contain;
}

.secondContents .OS_howto__inner {
  background-color: #e9c1b5;
}

.secondContents .-btn01 > .-btn01_link {
  color: #eea29a;
  box-shadow: 3px 3px 0px #eea29a;
}

.secondContents .-btn01 > .-btn01_link::after {
  border-top: 10px solid #eea29a;
}

.secondContents .-btn01 > .-btn01_link:hover {
  box-shadow: 0px 0px 0px #eea29a;
}

.secondContents .-ttl01 {
  color: #eea29a;
}

.secondContents .howto_ul__li:not(:last-of-type)::after {
  background: url(../img/icon_sankaku02.png) center center no-repeat;
  background-size: contain;
}

.secondContents .-day_ul__li a:hover::after {
  background-color: #dc7d7d;
}

.secondContents .-day_ul__li a:hover span {
  color: #dc7d7d;
}

.secondContents .-day_ul__li a:hover span::before {
  background-color: #dc7d7d;
}

.secondContents .-day_ul__li a:hover span::after {
  border-top: 7px solid #dc7d7d;
}

.secondContents .-day_ul__li a span::before {
  background-color: #dc7d7d;
}

.secondContents .howto_ul__li dl dt {
  color: #eea29a;
}

.secondContents .movie-bottom {
  background: url(../img/bg_pattern01.png) rgba(238, 162, 154, 0.3);
}

.secondContents .OS_example > .movie-more > .btn {
  background-color: #e69d84;
}

.secondContents .OS_example > .movie-more > .btn::before {
  background-color: #c8826b;
}

.secondContents .OS_example > .movie-more > .btn::after {
  background-color: #c8826b;
}
.OS_info {
  text-align: center;
}

.OS_info__btnarea {
  padding: 0 15px 35px;
}

@media (max-width: 767px) {
  .OS_info__btnarea {
    padding: 0 7% 35px;
    flex-direction: column;
  }
}

.OS_info__btnarea .-btn01:not(:last-of-type) {
  margin-right: 20px;
}

@media (max-width: 767px) {
  .OS_info__btnarea .-btn01:not(:last-of-type) {
    margin-right: 0;
    margin-bottom: 20px;
  }
}

.OS_example {
  background: url(../img/bg_border01.png) repeat-x top, url(../img/bg_border01.png) repeat-x bottom rgba(255, 255, 255, 0.6);
  position: relative;
  transform: translateY(20px);
  opacity: 0;
}

.OS_example > .-ttl01 {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
}

.OS_example > .-ttl02 {
  font-size: 18px;
  line-height: calc(32 / 18);
  letter-spacing: 0.075em;
  padding-top: 71px;
  font-weight: 500;
  color: #3c3c3c;
  text-align: center;
}

@media (max-width: 767px) {
  .OS_example > .-ttl02 {
    font-size: 14px;
    line-height: calc(24 / 14);
    letter-spacing: 0.075em;
    padding-top: 40px;
    margin-bottom: 0;
  }
}

.OS_example > .-ttl02 > .sp-br {
  display: none;
}

@media (max-width: 767px) {
  .OS_example > .-ttl02 > .sp-br {
    display: block;
  }
}

.OS_example__ul {
  margin-bottom: 30px;
}

@media (max-width: 893px) {
  .OS_example__ul {
    justify-content: space-evenly;
  }
}

@media (max-width: 767px) {
  .OS_example__ul {
    margin-bottom: 0;
    padding: 15px 15px 20px;
    justify-content: space-around;
  }
}

.OS_example__ul .OS_example__li {
  background-color: #fff;
  border: 2px solid #eaeaea;
  border-radius: 8px;
  text-align: left;
  width: 100%;
  max-width: 298px;
  color: #282828;
  letter-spacing: 0.075em;
  margin: 20px 0;
}

@media (max-width: 767px) {
  .OS_example__ul .OS_example__li {
    width: calc(50% - 10px);
    margin: 0;
    margin-top: 5px;
  }
}

.OS_example__ul .OS_example__li:hover {
  opacity: 0.7;
}

@media (max-width: 767px) {
  .OS_example__ul .OS_example__li:nth-of-type(n+4) {
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .OS_example__ul .OS_example__li:nth-of-type(n+3) {
    margin-top: 20px;
  }
}

.OS_example__ul .OS_example__li > a {
  text-decoration: none;
}

@media (max-width: 767px) {
  .OS_example__ul .OS_example__li__fig {
    padding: 0;
  }
}

.OS_example__ul .OS_example__li__fig > img {
  width: 100%;
  border-radius: 8px 8px 0 0;
}

.OS_example__ul .OS_example__li__box {
  padding: 9px 12px;
}

.OS_example__ul .OS_example__li__caption {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: calc(26 / 16);
  font-weight: 500;
  margin-bottom: 5px;
  color: #282828;
  letter-spacing: 0.075em;
}

@media (max-width: 767px) {
  .OS_example__ul .OS_example__li__caption {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: calc(22 / 14);
    line-height: 1.5;
    margin-bottom: 4px;
  }
}

.OS_example__ul .OS_example__li__ttl {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: calc(24 / 14);
  color: #282828;
  letter-spacing: 0.075em;
}

@media (max-width: 767px) {
  .OS_example__ul .OS_example__li__ttl {
    font-size: 1.2rem;
    line-height: calc(20 / 12);
  }
}

.OS_example > .movie-more {
  max-width: 916px;
  margin: 0 auto;
}

@media (max-width: 767px) {
  .OS_example > .movie-more {
    max-width: 670px;
  }
}

.OS_example > .movie-more > .btn {
  display: block;
  max-width: 375px;
  color: #fff;
  font-size: 14px;
  line-height: calc(32 / 14);
  letter-spacing: 0.075em;
  background: #96e5ca;
  border-radius: 7px;
  margin: 0 0 0 auto;
  position: relative;
  text-decoration: none;
  position: relative;
  text-align: center;
}

.OS_example > .movie-more > .btn::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #84ccc4;
  position: absolute;
  top: 2px;
  left: 2px;
  z-index: -1;
  border-radius: 7px;
}

@media (max-width: 893px) {
  .OS_example > .movie-more > .btn {
    max-width: 100%;
    margin: 0 75px;
    border-radius: 15px;
  }
  .OS_example > .movie-more > .btn::before {
    border-radius: 15px;
  }
}

@media (max-width: 767px) {
  .OS_example > .movie-more > .btn {
    font-size: 13px;
    line-height: calc(32 / 13);
    margin: 0 20px;
  }
}

.OS_example > .movie-more > .btn:hover {
  opacity: 0.7;
}

.OS_example > .movie-more > .btn::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid #fff;
  margin-left: 4px;
}

.OS_example > .OS_txt {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 500;
  color: #3c3c3c;
  line-height: 1.77;
  padding-bottom: 68px;
  text-align: center;
  margin-bottom: 0;
  margin-top: 37px;
  letter-spacing: 0.075em;
}

@media (max-width: 767px) {
  .OS_example > .OS_txt {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: calc(24 / 14);
    margin-top: 14px;
    padding-bottom: 22px;
  }
}

.OS_example > .OS_txt > .sp-br {
  display: none;
}

@media (max-width: 767px) {
  .OS_example > .OS_txt > .sp-br {
    display: block;
  }
}

.OS_example > .OS_txt > .pc-br {
  display: block;
}

@media (max-width: 767px) {
  .OS_example > .OS_txt > .pc-br {
    display: none;
  }
}

.OS_howto {
  padding: 0 15px 135px 15px;
  background: url(../img/bg_border01.png) repeat-x top, url(../img/bg_pattern03.png) repeat;
  position: relative;
  transform: translateY(20px);
  opacity: 0;
}

.OS_howto > .-sec_ttl {
  padding-bottom: 50px;
}

@media (max-width: 767px) {
  .OS_howto > .-sec_ttl {
    padding-bottom: 35px;
  }
}

.OS_howto__inner {
  background-color: #d5f3a1;
  border-radius: 90px;
  padding: 40px 75px 40px 40px;
  margin-top: 10px;
  position: relative;
}

@media (max-width: 767px) {
  .OS_howto__inner {
    border-radius: 50px;
    padding: 50px 25px 55px 25px;
  }
}

.OS_howto__inner > .-ttl01 {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
  .OS_howto__inner > .-ttl01 {
    width: 60%;
    text-align: center;
    font-size: 1.8rem;
  }
}

.OS_schedule {
  padding: 0 3%;
  padding-bottom: 70px;

  padding-top: 10px;
  transform: translateY(20px);
  opacity: 0;
}

@media (max-width: 767px) {
  .OS_schedule {
    padding-bottom: 73px;
  }
}

.OS_schedule__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0 20px 20px 20px;
  text-align: center;
  background: #fff;
}
.OS_schedule__inner section{
    width: 100%;
    max-width: 1000px;
}
@media (max-width: 767px) {
  .OS_schedule__inner {
    padding: 0 15px;
  }
}

.OS_schedule__inner > .-sec_ttl {
  padding: 45px 0 30px;
}

@media (max-width: 767px) {
  .OS_schedule__inner > .-sec_ttl {
    padding: 30px 0 10px;
  }
}

.OS_schedule__inner > .-sec_ttl::before {
  height: 47px;
  background: url(../img/icon_calendar.png) center center no-repeat;
}

@media (max-width: 767px) {
  .OS_schedule__inner > .-sec_ttl::before {
    height: 35px;
    background: url(../img/icon_calendar_sp.png) center center no-repeat;
    background-size: contain;
  }
}

.OS_schedule__inner > .-ttl01 {
  margin-bottom: 35px;
}

@media (max-width: 767px) {
  .OS_schedule__inner > .-ttl01 {
    font-size: 1.8rem;
    width: 100%;
    padding: 10px 10px;
    margin: 0 calc(-7vw - 25%);
    margin-bottom: 30px;
  }
}

.OS_schedule .course_header {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  padding-bottom: 50px;
}

.OS_schedule .course_header__ttl01 {
  width: 80px;
  padding-bottom: 16px;
  line-height: 1;
}

.OS_schedule .course_header__ttl02 {
  flex: 1;
  margin-right: 80px;
  line-height: 1;
}

.OS_schedule .course_header .course_date {
  /*font-size: 24px;
  font-size: 2.8rem;*/
  letter-spacing: 0.05em;
  font-weight: 500;
  /*margin-bottom: 20px;*/
}

@media (max-width: 767px) {
  .OS_schedule .course_header .course_date {
    font-size: 1.8rem;
    margin-bottom: 15px;
  }
}

.OS_schedule .course_header .course_date .course_subttl {
  display: block;
  font-size: 2rem;
}

@media (max-width: 767px) {
  .OS_schedule .course_header .course_date .course_subttl {
    font-size: 1.6rem;
  }
}

.OS_schedule .course_header .course_date .course_subttl_grn {
  display: block;
  font-size: 1.8rem;
  color: #4b9c47;
}

@media (max-width: 767px) {
  .OS_schedule .course_header .course_date .course_subttl_grn {
    font-size: 1.6rem;
  }
}

.secondContents .-ttl_grn {
  color: #ffffff;
}

.-ttl_grn {
  color: #ffffff;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
  padding: 16.3px 35px;
}
.-ttl_skyblue {
  color: #ffffff;
}
.-ttl_blue {
  color: #ffffff;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
}
@media (max-width: 767px) {
  .-ttl_skyblue {
    padding: 16.3px 35px;
  }
}
.secondContents .-ttl_pink {
  color: #ffffff;
}

.-ttl_pink {
  color: #ffffff;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
  padding: 16.3px 35px;
}

.movie-bottom {
  height: 150px;
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  background: url(../img/bg_pattern01.png) rgba(117, 237, 114, 0.3);
}

@media (min-width: 768px) {
  .sp-Only {
    display: none;
  }
}

.contents.soudan {
  background: url(../img/bg_pattern01.png) rgba(255, 187, 153, 0.3);
}

.contents.soudan .OS_info__btnarea {
  padding: 0 15px 20px;
}

@media (max-width: 767px) {
  .contents.soudan .OS_info__btnarea {
    padding: 0 7% 20px;
  }
}

.contents.soudan .OS_info__exam {
  border-radius: 92px;
  background: #fff;
  max-width: 940px;
  margin: 0 auto 60px;
  padding: 70px 58px 100px;
  position: relative;
}

@media (max-width: 960px) {
  .contents.soudan .OS_info__exam {
    width: calc(100% - 30px);
  }
}

@media (max-width: 767px) {
  .contents.soudan .OS_info__exam {
    border-radius: 46px;
    margin: 0 4% 12%;
    padding: 50px 9.2% 80px;
  }
}

.contents.soudan .OS_info__exam .-ttl01 {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.8rem;
}

@media (max-width: 767px) {
  .contents.soudan .OS_info__exam .-ttl01 {
    white-space: nowrap;
  }
}

.contents.soudan .OS_info__exam .-txt01 {
  font-size: 1.6rem;
  margin-bottom: 36px;
  letter-spacing: 0.1em;
}

@media (max-width: 767px) {
  .contents.soudan .OS_info__exam .-txt01 {
    font-size: 1.4rem;
  }
}

.contents.soudan .exam_ul {
  display: flex;
  justify-content: center;
  max-width: 790px;
  margin: 0 auto;
}

@media (max-width: 767px) {
  .contents.soudan .exam_ul {
    display: block;
    width: 97.8%;
  }
}

.contents.soudan .exam_ul__li {
  position: relative;
}

@media (min-width: 768px) {
  .contents.soudan .exam_ul__li {
    width: calc(100% / 3);
  }
}

.contents.soudan .exam_ul__li + li {
  margin-left: 20px;
}

@media (max-width: 767px) {
  .contents.soudan .exam_ul__li + li {
    margin-left: 0;
    margin-top: 68px;
  }
}

.contents.soudan .exam_ul__img {
  width: 80%;
  margin: 0 auto;
}

.contents.soudan .exam_ul__txt {
  width: 100%;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: 0.075em;
  border-radius: 40px;
  background: #ffd9a2;
  padding: 15px 0;
  position: absolute;
  bottom: -43px;
}

@media (max-width: 960px) {
  .contents.soudan .exam_ul__txt {
    font-size: 1.4rem;
  }
}

@media (max-width: 767px) {
  .contents.soudan .exam_ul__txt {
    line-height: 1.76;
    font-size: 1.4rem;
    padding: 11px 0;
    position: absolute;
    bottom: -43px;
  }
}

.contents.soudan .exam_ul__txt span {
  color: #ff8243;
  font-weight: bold;
}

.contents.soudan .OS_ttl {
  color: #ff8243;
}

.contents.soudan .OS_ttl::before {
  content: "";
  display: inline-block;
  width: 49px;
  height: 58px;
  padding-top: 58px;
  background: url(../img/soudan/icon_customer.png) center center no-repeat;
  background-size: contain;
  margin-right: 30px;
}

@media (max-width: 767px) {
  .contents.soudan .OS_ttl::before {
    width: 43px;
    height: 51px;
    padding-top: 51px;
    background: url(../img/soudan/icon_customer_sp.png) center center no-repeat;
    background-size: contain;
    margin-right: 0;
    margin-bottom: 15px;
  }
}

.contents.soudan .OS_txt {
  max-width: 940px;
  margin-bottom: 70px;
}

@media (max-width: 767px) {
  .contents.soudan .OS_txt {
    margin-bottom: 14.6%;
  }
}

.contents.soudan .-btn01 {
  display: inline-block;
  text-align: center;
}

.contents.soudan .-btn01_link {
  color: #ff8243;
  box-shadow: 3px 3px 0px #ff8243;
}

.contents.soudan .-btn01_link:hover {
  box-shadow: 0px 0px 0px #ff8243;
}

.contents.soudan .-btn01_link::after {
  border-top: 10px solid #ff8243;
}

.contents.soudan .-ttl01 {
  color: #ff8243;
}

.contents.soudan .OS_howto__inner {
  background-color: #ffedae;
}

.contents.soudan .howto_ul__li:not(:last-of-type)::after {
  background: url(../img/soudan/icon_sankaku02.png) center center no-repeat;
}

@media (max-width: 767px) {
  .contents.soudan .howto_ul__li:not(:last-of-type)::after {
    background: url(../img/soudan/icon_sankaku02_sp.png) center center no-repeat;
    background-size: contain;
  }
}

.contents.soudan .howto_ul__li:first-of-type {
  background-color: #fff8ce;
}

.contents.soudan .howto_ul__li:last-of-type {
  background-color: #ffd9a2;
}

.contents.soudan .howto_ul__li dl dt {
  color: #ff8243;
}

.contents.soudan .howto_ul__li .-step_fig {
  border: none;
}

.contents.soudan .howto_ul__li .-step_fig figure {
  position: relative;
  border: 1px solid #dfdfdf;
}

.contents.soudan .howto_ul__li .-step_fig figure img {
  max-height: 150px;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

@media (max-width: 767px) {
  .contents.soudan .howto_ul__li .-step_fig figure img {
    max-height: none;
  }
}

.contents.soudan .howto_ul__li .-step_fig figure + figure {
  margin-top: 20px;
}

@media (max-width: 767px) {
  .contents.soudan .howto_ul__li .-step_fig figure + figure {
    margin-top: 60px;
  }
}

.contents.soudan .howto_ul__li.howto_btn {
  min-height: 150px;
  border-radius: 100px 0 0 100px;
}

@media (max-width: 767px) {
  .contents.soudan .howto_ul__li.howto_btn {
    border-radius: 200px 200px 0 0;
  }
}

.contents.soudan .howto_ul__li.howto_btn figure {
  border: none;
}

.contents.soudan .-day_ul {
  max-width: 600px;
  transform: translateX(5%);
  justify-content: left;
}

@media (max-width: 767px) {
  .contents.soudan .-day_ul {
    transform: translateX(7%);
    justify-content: center;
  }
}

.contents.soudan .-day_ul__li {
  width: 25%;
}

@media (max-width: 767px) {
  .contents.soudan .-day_ul__li {
    width: 45%;
  }
}

.contents.soudan .-day_ul__li a span::before {
  background-color: #ff8243;
}

.contents.soudan .-day_ul__li a:hover::after {
  background-color: #ff8243;
}

.contents.soudan .-day_ul__li a:hover span {
  color: #ff8243;
}

.contents.soudan .-day_ul__li a:hover span::after {
  border-top: 7px solid #ff8243;
}

.contents.soudan .course_ul__li:nth-of-type(even) .-course {
  background-color: #fff7d7;
}

.contents.soudan .course_ul__li .-course {
  background-color: #fffee8;
}

.contents.soudan .course_ul__li .-course.-course_closed:hover {
  cursor: default;
  animation: none;
}

.contents.soudan .course_ul__li .-course__app.-course__app_closed::after {
  content: none;
}

.contents.soudan .course_ul__li.course_closed .-course:hover {
  cursor: default;
  animation: none;
}

.contents.soudan .course_ul__li.course_closed .-course__app::after {
  content: none;
}

.contents.soudan .-note_box .-redTxt {
  color: #ff1000;
}

.course_ul__li .textBox {
  margin: 13px 10px;
  text-align: left;
  font-size: 1.6rem;
  letter-spacing: 0.075em;
  line-height: 1.8;
}
.course_ul__li .textBox > p {
  font-size: 1.8rem;
  font-weight: bold;
  color: #3c3c3c;
	line-height: 1.4;
}
.text_box_internal {
  display: flex;
	margin-top: 5px;
}
.text_box_internal > p {
  font-size: 1.4rem;
}
@media print, screen and (max-width: 767px) {
  .course_ul__li .textBox {
    font-size: 1.3rem;
    margin: 15px;
    letter-spacing: 0.05em;
  }
  .course_ul__li .textBox > p {
    font-size: 1.4rem;
  }
  .text_box_internal > p {
    font-size: 1.3rem;
  }
}

.imgBox {
	position: relative;
}

.caption {
	position: absolute;
  color: #fff;
  text-shadow: rgba(0, 0, 0, .8) 1px 0 2px, rgba(0, 0, 0, .8) 0.5403px 0.84147px 2px, rgba(0, 0, 0, .8) -0.41615px 0.9093px 2px, rgba(0, 0, 0, .8) -0.98999px 0.14112px 2px, rgba(0, 0, 0, .8) -0.65364px -0.7568px 2px, rgba(0, 0, 0, .8) 0.28366px -0.95892px 2px, rgba(0, 0, 0, .8) 0.96017px -0.27942px 2px;
  text-align: right;
	right: 6px;
  bottom: 2px;
  padding-left: 12px;
  font-size: 1.1rem;
	font-weight: bold;
}
@media print, screen and (max-width: 767px) {
	.caption {
		font-size: 1.2rem;
	}
}
.contents .imgAnnotation {
  color: #333;
  padding: 5px;
  font-size: 12.5px;
  text-align: right;
}
@media (max-width: 767px){
.contents .imgAnnotation {
  margin-bottom: 0;
  padding: 5px 15px;
  font-size: 11px;}
}
.Footer {
  margin-top: 0;
}
.recommendBtn {
	position: relative;
  width: 72vw;
  max-width: 550px;
  margin: 0 auto 50px;
  background-color: #fff;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
	border: 4px solid #d13040;
  border-radius: 20px;
	transition: .3s;
}
.recommendBtn::after {
	position: absolute;
	content: "同時開催！";
	top: -19px;
	left: -19px;
	padding: 2px 20px 3px 25px;
	font-size: 1.8rem;
	color: #fff;
	background-color: #d13040;
  border-radius: 20px;
}
.recommendBtn:hover {
	opacity: .75;
	transition: .3s;
}
.recommendBtn a {
	position: relative;
  display: flex;
  justify-content: center;
  padding: 13px 0;
  color: #d13040!important;
  font-size: 2.6rem;
	font-weight: bold;
  border-radius: 10px;
}
.recommendBtn a::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 10px solid #d13040;
  margin: 17px 0 0 15px;
}
.recommendBtn a:hover {
	text-decoration: none;
}
@media (max-width: 767px){
	.recommendBtn::after {
		position: absolute;
		content: "同時開催！";
		top: -17px;
		left: -17px;
		padding: 2px 15px 3px 20px;
		font-size: 1.4rem;
		color: #fff;
		background-color: #d13040;
		border-radius: 20px;
	}
	.recommendBtn a::after {
		margin: 20px 0 0 20px;
	}
	.recommendBtn a {
		margin-left: 20px;
		padding: 11px 0;
		font-size: 1.7rem;
	}
}
/*------------------　LOOKJTB×旅物語 海外旅行大説明会　------------------*/
@media (min-width: 768px){
    .spOnly {
    display: none;
  }
  .look_boxarea {
  flex-direction: column;
}
  .look_left {
    display: flex;
    justify-content: space-around;
  }
  .l_img {
    width: 420px;
  }
  .look_right {
    font-size: 2.2rem;
  }
  p.red_txt {
  font-size: 2.6rem;
  margin: 12px 0;
}

}
.look_jtb {
	display: flex;
  justify-content: center;
  flex-wrap: wrap;
  /*background: url(../img/bg_border01.png) repeat-x top, url(../img/bg_pattern01.png) rgba(117, 237, 114, 0.3);*/
  /*background-color: #cff1f2;*/
  background-color: #f7d3b9;
}
p.look_tit {
	margin-top: 20px;
  text-align: center;
    width: 100%;
    display: flex;
    justify-content: center;
}

svg {
  width: 100%;
  height: auto;
  overflow: visible;
}
text {
  fill: #000;
  stroke: #FFF;
  stroke-width: 1;
  stroke-linejoin: round;
}

section.look_contents {
  background-color: #fff;
  margin: 40px 3%;
  border-radius: 50px;
  line-height: 1.5;
    width: 100%;
    max-width: 1160px;
   
}

.look_boxarea {
  display: flex;
  justify-content: space-between;
  padding: 45px;
}
.look_left {
  text-align: center;
}
.look_date {
  font-size: 6.0rem;
  font-weight: 700;
  color: #E0502D;
  border-bottom: 3px solid #E0502D;
  /*color: #1aa8e3;
  border-bottom: 3px solid #1aa8e3;*/
}
span.small_txt {
  font-size: 3.8rem;
}
.look_place {
  display: flex;
	align-items: center;
  margin-top: 30px;
  text-align: left;
  font-size: 3.0rem;
  line-height: 1.0;
}
.skyblue_txt {
	display: flex;
	align-items: center;
  background-color: #E0502D;
  /*background-color: #1aa8e3;*/
  color: #fff;
  font-size: 2.8rem;
  padding: 10px 40px;
  margin-right: 20px;
  border-radius: 30px;
}
.look_access {
  margin-top: 24px;
  display: flex;
  justify-content: center;
  text-align: left;
}
.look_access .access_tit {
  margin-right: 10px;
}
.look_right {
  width: 100%;
  background-color: #fbecd9;
  /*background-color: #e8fbe6;*/
  border-radius: 40px;
  text-align: center;
  margin: 20px auto 0;
}
.look_right .skyblue_txt {
  display: inline-block;
  font-size: 2.4rem;
  text-align: center;
  padding: 10px 58px;
  margin: -20px;
}
ul.look_benefit {
  text-align: left;
  padding: 0 100px;
  margin-top: 26px;
}
ul.look_benefit li {
  position: relative;
  padding-left: 28px;
}
ul.look_benefit li+li {
  margin-top: 14px;
}
ul.look_benefit li::before {
  position: absolute;
  display: inline-block;
  content: "●";
  left: 0;
}
ul.look_benefit li::before {
  position: absolute;
  display: inline-block;
  content: "●";
  left: 0;
  top: 13%;
}
.look_benefit_p {
  margin: 20px 0;
}
span.mark_txt {
  font-size: 2.8rem;
  font-weight: 500;
  background:linear-gradient(transparent 60%, #fae54d 60%);
  padding: 0 7px;
}
p.red_txt {
  font-size: 2.8rem;
  font-weight: 600;
  color: #e31a1a;
  margin: 20px 0;
}
p.red_txt .dot_txt {
  font-size: 3.8rem;
  background-image: radial-gradient(circle at center, red 20%, transparent 20%); /* 点の色とサイズ調整 */
  background-position: top right 1px; /* 点の位置 */
  background-repeat: repeat-x; /* 横方向に繰り返し */
  background-size: 1em 0.8em; /* 点の間隔とサイズ調整 */
  padding-top: 0.4em; /* 縦方向の位置調整 */
}
p.look_map {
  text-align: center;
  margin-bottom: 40px;
}
p.look_map img {
  border: 6px solid #E0502D;
  /*border: 6px solid #1aa8e3;*/
  border-radius: 20px;
}

.large_anch {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
}
.large_anch li a {
  background: #1aa8e3;
  color: #fff;
  font-weight: 700;
  border-radius: 8px;
}
.seminar_wrap {
  margin-top: 70px;
}
.table_h {
  background: #1aa8e3;
  color: #fff;
  font-weight: 700;
  padding: 10px 40px;
}
.reserveTxt_large {
  margin: 20px 0;
  font-size: 1.4rem;
  font-weight: 700;
}
.smn_info {
  font-weight: 500;
}
.areaTable .tit_01 {
  border-bottom: none!important;
}
.areaTable .tit_02 {
  border-top: 2px dashed #b4dbdb!important;
}
@media (min-width: 768px) {
  .large_anch {
    width: 80%;
  }
  .large_anch li a {
    font-size: 1.4rem;
    border: 3px solid #1aa8e3;
    padding: 10px 40px;
  }
  .large_anch li a:hover {
    background: #fff;
    color: #1aa8e3;
    border: 3px solid #1aa8e3;
  }
  .look_right + .look_right {
    margin-top: 40px;
  }
}


@media (max-width: 767px) {
  .seminar_wrap {
    margin-top: 50px;
  }
  .large_anch {
    flex-direction: column;
  }
  .large_anch li a {
    font-size: 1.6rem;
    background: #1aa8e3;
    padding: 4px 20px;
  }
  .large_anch li + li {
    margin-top: 12px;
  }
  .look_benefit_p {
    margin: 20px 10px;
  }
  .reserveTxt_large {
    margin: 15px 0 0;
    font-size: 1.3rem;
  }
  /*.areaTable {
    width: 700px!important;
  }
  .sp_scroll {
    margin: 0 10px;
  }
  .tbl_wrap {
    overflow: auto;
  }*/
}
@media (max-width: 360px) {
  .large_anch li a {
    font-size: 1.4rem;
  }
}

/*----------スケジュール流用部分----------*/
p.day_p  {
  position: relative;
    width: 100%;
}
p.day_p::before {
  position: absolute;
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  top: 34%;
  right: 56%;
  border-radius: 100%;
  background-color: #61a260;
}
.OS_schedule .course_header {
  padding-bottom: 50px;
}
section.look_coursearea {
  /*display: flex;*/
  max-width: 1000px;
    width: 100%;
  /*margin: 40px calc(50% - 458px) 0;*/
}
@media (max-width: 767px) {
  section.look_coursearea {
    flex-direction: column;
    width: 100%;
    margin: 0;
  }

}
h3.look_course_tit {
  font-feature-settings: 2.0rem;
  font-weight: 600;
  position: relative;
  margin-bottom: 20px;
}
h3.look_course_tit::before {
  position: absolute;
  display: inline-block;
  content: "";
  width: 2px;
  height: 17px;
  top: 6px;
  left: 36%;
  background-color: #ccc;
}
h3.look_course_tit::after {
  position: absolute;
  display: inline-block;
  content: "";
  width: 2px;
  height: 17px;
  top: 6px;
  right: 37%;
  background-color: #ccc;
}
li.look_course_ul__li a {
  display: flex;
  height: 110px;
}
.look_course_ul__li .-course:hover {
  cursor: pointer;
  text-decoration: none;
  animation: simple_square_btn4 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}
li.look_course_ul__li {
  margin: 20px 10px 0 10px;
}
.look_course03 li {
  margin-right: 0;
}
li.look_course_ul__li .look-course__contents {
  display: flex;
  background-color: #ecfeff;
  border: 2px solid #1aa8e3;
  border-radius: 54px 0 0 54px;
  padding: 24px 0;
}
 .briefingLink_02 .-excursion {
  padding: 25px 0 !important;
}
li.look_course_ul__li .look-course__contents .look_textBox {
  width: 212px;
  font-size: 1.6rem;
  position: relative;
}
p.look_briefingTit_01 {
  font-weight: 700;
  color: #333;
}
p.look_briefingTit_02 {
  font-weight: 700;
  color: #333;
  line-height: 1.4;
}
p.look_briefingDetail_01 {
  color: #00b4ff;
  font-weight: 500;
}
.look-course__app {
  font-size: 1.4rem;
  color: #fff;
  background-color: #1aa8e3;
  width: 80px;
  border-radius: 0 54px 54px 0;
  padding: 30px 8px;
  text-align: left;
  position: relative;
}
.look-course__app::after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 9px solid #fff;
  margin: 4px 0 0 4px
}
.look_briefingTit_02 .small_txt {
  font-size: 1.4rem;
  line-height: 1.0;
}
/*--------------------------------spOnly--------------------------------*/
@media (max-width: 767px){
  .pcOnly {
    display: none;
  }
  .look_tit {
    margin: -16px 40px 0 40px;
  }
  .look_boxarea {
    flex-direction: column;
    padding: 0 0 10px;
    background-color: #fff;
    border-radius: 23px;
  }
  section.look_contents {
    background-color: transparent;
    margin-top: 20px;
  }
  .look_left {
    width: 100%;
    padding: 12px 30px 18px;
  }
  .look_date {
    font-size: 3.5rem;
  }
  span.small_txt {
    font-size: 2.3rem;
  }
  .look_place {
    font-size: 1.6rem;
    margin-top: 15px;
    justify-content: center;
  }
  .skyblue_txt {
    font-size: 1.5rem;
    padding: 3px 17px;
    margin-right: 11px;
    width: 26%;
    text-align: center;
  }
  .look_access {
    justify-content: center;
    font-size: 1.1rem;
    margin-top: 12px;
  }
  .look_access .access_tit {
    margin: 0 18px 0 4px;
  }
  p.look_map {
    margin: 15px 0 0;
  }
  p.look_map img {
    border: 3px solid #1aa8e3;
    border-radius: 10px;
  }
  .look_right {
    width: 90%;
    border-radius: 20px;
    margin: 20px 5%;
  }
  .look_right .skyblue_txt {
    font-size: 1.7rem;
    width: 78%;
    padding: 7px 20px;
  }
  ul.look_benefit {
    font-size: 1.2rem;
    margin: 13px auto 8px;
    padding: 0 0 0 5px;
    width: 90%;
  }
  ul.look_benefit li {
    padding-left: 14px;
  }
  ul.look_benefit li+li {
    margin-top: 8px;
  }
  ul.look_benefit li:first-of-type::before {
  top: 0px;
}
  span.mark_txt {
    font-size: 1.6rem;
    padding: 0 3px;
  }
  p.red_txt {
    font-size: 1.5rem;
    line-height: 1.7;
    margin: 0 0 10px;
  }
  p.red_txt .dot_txt {
    font-size: 2.3rem;
  }
  p.day_p::before {
    display: none;
  }
/*----------スケジュール流用部分----------*/
  span.-day_p {
    position: relative;
  }
  span.-day_p::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 100%;
    background-color: #61a260;
    -webkit-transform: translateY(-20%);
    transform: translateY(-30%);
    margin-right: 10px;
  }
  h3.look_course_tit::before {
    transform: translate(0,0);
  }
  h3.look_course_tit::after {
    transform: translate(0,0);
  }
  ul.look_course_ul {
    padding: 0 20px;
  }
  li.look_course_ul__li {
    margin: 15px 0;
  }
  li.look_course_ul__li a {
    height: 75px;
  }
  li.look_course_ul__li .look-course__contents {
    padding: 13px 0 13px 8px;
    width: 100%;
  }
  li.look_course_ul__li .look-course__contents .look_textBox {
    width: 100%;
    font-size: 1.3rem;
  }
  .look-course__app {
    width: 37%;
    font-size: 1.2rem;
    padding: 17px 2%;
    text-align: left;
  }
  .look-course__app::after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 8px solid #fff;
    margin: 3px 0 0 3px
  }
  p.look_briefingTit_02 {
    font-size: 1.2rem;
  }
  .look_briefingTit_02 .small_txt {
    font-size: 1.1rem;
  }
  .briefingLink_02 .-excursion {
    padding: 13px !important;
  }
}

/*movie
==============================*/
.movie {
  background: none;
}
.movie_pc {
	display: flex;
	justify-content: center;
  max-width: 1920px;
  width: 100%;
  max-height: 504px;
  height: 100%;
  margin: 0 0 40px;
}
.movie_box .movie_an {
  font-size: 1.8rem;
}
.movie_sp {
	display: none;
}
.movie_txt_pc {
  font-size: 2.2rem;
}
@media screen and (min-width:768px) {
  .movie {
    margin-top: 55px;
  }
}

@media screen and (max-width: 767px) {
  .movie {
    margin-top: 40px;
  }
	.movie_pc {
		display: none;
	}
	.movie_sp {
    margin: 0 0 40px;
		display: flex;
    justify-content: center;
	}
  .movie_box {
    display: flex;
    flex-flow: column;
    align-items: center;
  }
  .movie_box .movie_an {
    font-size: 1.2rem;
    margin: 30px 0 10px;
  }
}

/*============================*/

/*------------------　LOOKJTB×旅物語 海外旅行大説明会　------------------*/




@media (min-width: 768px) {
.course_ul__li .-course__contents {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    margin: 13px 10px;
  }
  .course_ul__li .-course__contents .textBox {
    width: calc(100% - 180px);
    margin: 0;
  }
   .lite_sched .course_ul__li .-course__contents .textBox {
    width: 100%;
       text-align: center;
  }
  .course_ul__li .-course__contents .img_sp {
    display: block;
    width: 170px;
    margin: 10px 0 10px 10px ;
  }
}

/*-----------------------　カセット・エリア別式　-------------------------*/
.areaTit {
	font-size: 2.4rem;
	font-weight: bold;
}
/*--------------------------------------------------------------------*/


/*-----------------------　カセット・エリア別・テーブル式　-------------------------*/
main {
	position: relative;
}
.stickyBar {
	position: sticky;
	background: url(../img/bg_pattern03.png) repeat;
	z-index: 5;
}
.OS_schedule__inner > section + section {
	margin-top: 50px;
}
.areaTable {
	width: 100%;
	margin-top: 15px;
	font-size: 1.4rem;
	font-weight: bold;
}
.areaTable tr {
	border: 2px solid #b4dbdb;
}
.areaTable th {
	width: 13%;
	padding: 7px;
	text-align: center;
	vertical-align: middle;
	background-color: #faf79a!important;
}
.areaTable .country {
	width: 48.5%;
	text-align: left;
}
.areaTable tr td {
	padding: 7px;
	border-right: 2px solid #b4dbdb;
	border-left: 2px solid #b4dbdb;
	vertical-align: middle;
}
.areaTable tr td:first-of-type {
	width: 18.5%;
}
.areaTable tr td:last-of-type {
	width: 20%;
}
.colorPattern_01 td {
	background-color: #f7f7f7;
}
.colorPattern_02 td {
	background-color: #fdfedf;
}
.areaTable td a {
	padding: 2px 20px 4px;
  color: #351f0b;
  background-color: #ff9e3f;
  border-radius: 13px;
}
.reserveTxt_europe,
.reserveTxt_us,
.reserveTxt_asia,
.reserveTxt_oceania,
.reserveTxt_hawaii,
.reserveTxt_look {
	margin-top: 30px;
}
@media (min-width: 768px) {
	.areaTable td a:hover {
		color: #F87B00;
		background-color: #fff;
		border: 1px solid #F87B00;
	}
}
@media (max-width: 767px) {
	.areaTit {
    font-size: 1.8rem;
	}
	.areaTable {
		width: 100%;
		font-size: 1.3rem;
		font-weight: bold;
		border-collapse: collapse;
	}
	.areaTable tr th {
		padding: 3px 7px;
		font-size: 1.5rem;
	}
	.areaTable tr td:first-of-type,
	.areaTable tr td:last-of-type {
		white-space: nowrap;
	}
	.areaTable td a {
		padding: 2px 15px 4px;
	}
}
/*--------------------------------------------------------------------*/



/*---------------------2024/07改修用---------------------*/
/*common
===========================*/
.contentsInner {
	width: 1160px;
	margin: 25px auto 0;
}
@media screen and (max-width:767.98px) {
	.contentsInner {
		width: 100%;
	}
	.schedule .contentsInner {
		margin: 15px auto 0;
		padding: 0 10px;
	}
	.venueInfo .contentsInner {
		margin: 0;
    
	}
}

/*---infoBox---*/
.infoBox {
	margin: 45px 0 0;
	text-align: center;
}
.infoBox .greyTxt {
	color: #8d8d8d;
	font-size: 1.5rem;
}
.infoBox h2 {
	/*max-width: 500px;*/
	margin: 5px auto 0;
	padding: 15px 0;
	line-height: 1.2;
	color: #fff;
	font-size: 3.5rem;
	font-weight: bold;
}
#group_02 .infoBox h2 {
	padding: 0 0 15px 0;
}
#group_01 .infoBox h2,
#personal .infoBox h2{
	background: #61a260;
}
#look_desk .infoBox h2{
	padding: 15px 0;
}
#personal .infoBox h2 {
	letter-spacing: -1px;
}
#group_02 .infoBox h2 {
	background: #ef8f75;
}
#group_03 .infoBox h2 {
	background: #6eb4ed;
  padding: 15px 0;
}
.infoBox h2 span {
	font-size: 2rem;
}
.infoBox .infoTxt {
	margin-top: 35px;
}
#look_desk .infoTxt {
	position: relative;
	display: inline-block;
	margin-top: 20px;
	color: #1d5820;
	font-size: 1.8rem;
}
#look_desk .infoTxt::after {
	content: '';
	position: absolute;
	width: 5px;
	height: 85%;
	top: 50%;
	left: -30px;
	transform: translateY(-50%);
	background: #1d5820;
}
#look_desk .assistTxt {
	margin-top: 35px;
	color: #1d5820;
	font-size: 2rem;
  position: relative;
}

#look_desk .assistTxt:before,
#look_desk .assistTxt:after {
  position: relative;
  display: inline-block;
  content: "";
  background: #1d5820;
  width: 2px;
  height: 2rem;
  margin: 0 8px;
  margin-top: -.2em;
  vertical-align: middle;
}
 
#look_desk .assistTxt::before {
  transform: rotate(-17deg);
}
 
#look_desk .assistTxt::after {
  transform: rotate(17deg);
}

.infoBox .anchorBtn {
	max-width: 280px;
	margin: 25px auto 20px;
	background: #fff;
}
.infoBox .anchorBtn a {
	position: relative;
	display: inline-block;
  width: 100%;
  padding: 7px 40px 7px 20px;;
  color: #707070;
  font-size: 1.5rem;
  font-weight: bold;
	border-radius: 30px;
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
}
.infoBox .anchorBtn a::after {
	position: absolute;
  content: '';
  top: 40%;
  right: 25px;
  width: 12px;
  height: 12px;
  border-right: 2px solid #707070;
  border-bottom: 2px solid #707070;
  transform: rotate(45deg) translateY(-40%);
}
@media screen and (max-width:767.98px) {
	.infoBox {
		margin: 20px 0;
	}
	.infoBox .greyTxt {
    font-size: 1.3rem;
		font-weight: bold;
	}
	#group_01 .infoBox h2,
	#group_02 .infoBox h2,
	#group_03 .infoBox h2,
	#personal .infoBox h2{
    background: none;
	}
	.infoBox h2 {
    margin: 0;
    padding-bottom: 0;
    color: #61a260;
    font-size: 3rem;
	}
	#group_02 .infoBox h2 {
		color: #ef8f75;
	}
  #group_03 .infoBox h2 {
    color: #6eb4ed;
  }
	.infoBox .infoTxt,
	#look_desk .infoTxt {
    margin-top: 20px;
		font-size: 1.2rem;
	}
	#look_desk .infoTxt::after {
		width: 3px;
    height: 80%;
    left: -20px;
	}
	#look_desk .assistTxt {
		margin-top: 20px;
	}
	.infoBox .anchorBtn {
		margin-top: 20px;
	}
}
/*-------------*/

/*--reserveTxt--*/
.reserveTxt_group01_europe,
.reserveTxt_group02_us,
.reserveTxt_group03_asia,
.reserveTxt_group04_oceania,
.reserveTxt_group05_europe,
.reserveTxt_group06_us,
.reserveTxt_group07_asia,
.reserveTxt_group08_oceania,
.reserveTxt_personal {
	display: none;
	margin: 20px auto;
	text-align: center;
}
/*--------------*/

@media screen and (min-width:768px) {
	.spOnly {
		display: none;
	}
}
@media screen and (max-width:767.98px) {
	.pcOnly {
		display: none;
	}
}
/*=========================*/

/*bannerBlock
=======================*/
.bannerBlock {
  margin: 15px 0;
  text-align: center;
}
.bannerBlock a {
  display: inline-block;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}
@media (min-width: 767px) {
	.bannerBlock a:hover {
		opacity: .7;
	}
}

@media (max-width: 767px) {
	.bannerBlock {
		max-width: 332px;
		margin: 25px auto;
	}
}
/*=====================*/

/*topContents__tab(opContents__tab.cssへ移動)
===========================*/
/*
.topContents__tab_wrap {
	background: url(../img/bg_border01.png) repeat-x top, #fefcea;
}
.topContents__tab_wrap .tab__container {
	padding: 20px 20px 22px;
	overflow: hidden;
}
.topContents__tab_wrap .tab__container.colorPattern_01 {
	background: url(../img/bg_border01.png) repeat-x top, #e2f5ef;
}
.topContents__tab_wrap .tab__container.colorPattern_02 {
	background: url(../img/bg_border01.png) repeat-x top, #defada;
}
.topContents__tab_wrap .tab__container.colorPattern_03 {
	background: url(../img/bg_border01.png) repeat-x top, #fef7ef;
}
.topContents__tab_wrap .tab__container.colorPattern_04 {
  background: url(../img/bg_border01.png) repeat-x top, #e2f3f5;
}
.topContents__tab_wrap .tab__container.colorPattern_05 {
  background: url(../img/bg_border01.png) repeat-x top, #ffe3e3;
}
.topContents__tab_wrap .tab__container .tabBox {
	display: flex;
}
.topContents__tab_wrap .tab__container .boldTxt {
	position: relative;
	display: inline-block;
	font-size: 2.1rem;
	font-weight: bold;
}
.topContents__tab_wrap .tab__container .boldTxt {
	font-size: 2.1rem;
	font-weight: bold;
}
.topContents__tab_wrap .tab__container .boldTxt::before,
.topContents__tab_wrap .tab__container .boldTxt::after {
	position: absolute;
  content: '';
  top: 50%;
  width: 400px;
  height: 2px;
  background: #61a260;
}
.topContents__tab_wrap .tab__container .boldTxt::before {
  left: -410px;
}
.topContents__tab_wrap .tab__container .boldTxt::after {
  right: -410px;
}
.topContents__tab_wrap .tab__container.colorPattern_03 .boldTxt::before,
.topContents__tab_wrap .tab__container.colorPattern_03 .boldTxt::after {
  background: #ef8f75;
}
.topContents__tab_wrap .tab__container.colorPattern_04 .boldTxt::before,
.topContents__tab_wrap .tab__container.colorPattern_04 .boldTxt::after {
  background: #6eb4ed;
}
.topContents__tab_wrap .tab__container.colorPattern_05 .boldTxt::before,
.topContents__tab_wrap .tab__container.colorPattern_05 .boldTxt::after {
  background: #E04040;
}
.topContents__tab_wrap .tab__container.colorPattern_02 .boldTxt {
	color: #61a260;
}
.topContents__tab_wrap .tab__container.colorPattern_03 .boldTxt {
	color: #ef8f75;
}
.topContents__tab_wrap .tab__container.colorPattern_04 .boldTxt {
  color: #6eb4ed;
}
.topContents__tab_wrap .tab__container.colorPattern_05 .boldTxt {
  color: #E04040;
}
.topContents__tab_wrap .tab__container .smallTxt {
	color: #6b6b6b;
	font-size: 1.3rem;
	font-weight: bold;
}
.topContents__tab_wrap .tab__container .tabBox .smallTxt {
	color: #ffffff;
}
@media screen and (max-width:767.98px) {
    .topContents__tab_wrap .tab__container .smallTxt {
	font-size: 1.1rem;
}
	.topContents__tab_wrap {
		background: url(../img/bg_border01.png) repeat-x bottom, #fefcea;
	}
	.tab {
		padding: 0;
	}
	.tab__container .tabBtnWrap {
		justify-content: center;
	}
	.topContents__tab_wrap .tab__container .tabBox {
		gap: 5px;
    justify-content: center;
	}
	.tabContainer__top {
		margin: 0 0 5px 0;
	}
	.colorPattern_03 .tabContainer__top {
    width: 95%;
		margin: 0 auto;
	}
  .colorPattern_04 .tabContainer__top {
		width: 100%;
	}
  .colorPattern_05 .tabContainer__top {
		width: 100%;
	}
	.colorPattern_02 .tabContainer__top {
		margin: 0 0 5px 0;
	}
	.colorPattern_02 .tabContainer__top,
	.colorPattern_03 .tabContainer__top,
	.colorPattern_04 .tabContainer__top,
  .colorPattern_05 .tabContainer__top {
		min-height: 62px;
	}
	.colorPattern_02 .tabContainer__top {
		display: flex;
    align-items: center;
	}
  .colorPattern_04 .tabBox {
    justify-content: space-around;
  }
  .colorPattern_04 .tabBox .tabContainer__top {
    width: 45%;
  }
  .colorPattern_05 .tabBox {
    justify-content: space-around;
  }
  .colorPattern_05 .tabBox .tabContainer__top {
    width: 95%;
  }
	.tabBtn p span.t_date {
    font-size: 1.2rem;
    font-weight: bold;
  }
	.tabBtn p {
    font-size: 1.3rem;
  }
	.tabBtn p.smaller {
		font-size: 1.2rem;
	}
	.tabBtn p.smaller span.t_date {
		font-size: 1.1rem;
	}
	.colorPattern_02 .tabBtn p,
	.colorPattern_03 .tabBtn p {
		text-align: center;
  }
	.tab__container.colorPattern_01 p {
    font-size: 1.3rem;
	}
	.tabBtn .link::after {
        
    top: auto;
    right: calc(50% - 5px);
		bottom: 3px;
		left: auto;
		width: 10px;
    height: 10px;
    transform: rotate(45deg) translate(0, -40%);
	}
	.colorPattern_02 .tabBtn .link::after,
	.colorPattern_03 .tabBtn .link::after,
	.colorPattern_04 .tabBtn .link::after,
  .colorPattern_05 .tabBtn .link::after {
		width: 7px;
    height: 7px;
	}
	.tabBtn .link {
		padding: 6px 0;
	}
	.colorPattern_02 .tabBtn .link,
	.colorPattern_03 .tabBtn .link,
	.colorPattern_04 .tabBtn .link,
  .colorPattern_05 .tabBtn .link{
		width: 100%;
		padding: 10px 6px 15px;
	}
	.topContents__tab_wrap .tab__container {
    padding: 12px 5px 7px;
	}
	.topContents__tab_wrap .tab__container.colorPattern_02,
	.topContents__tab_wrap .tab__container.colorPattern_03,
  .topContents__tab_wrap .tab__container.colorPattern_04,
  .topContents__tab_wrap .tab__container.colorPattern_05 {
		padding-top: 6px;
		padding-bottom: 12px;
	}
	.topContents__tab_wrap .tab__container.colorPattern_02 {
		background: url(../img/bg_border01.png) repeat-x top, url(../img/bg_border01.png) repeat-x bottom, #defada;
    width: 100%;
	}
	.topContents__tab_wrap .tab__container.colorPattern_03 {
    width: 50%;
		text-align: center;
    background: url(../img/bg_border01.png) repeat-x bottom, #fef7ef;
	}
  .topContents__tab_wrap .tab__container.colorPattern_04 {
		min-width: 125px;
    background: url(../img/bg_border01.png) repeat-x bottom, #e2f3f5;
	}
  .topContents__tab_wrap .tab__container.colorPattern_05 {
    width: 50%;
    background: url(../img/bg_border01.png) repeat-x bottom, #ffe3e3;
	}
	.topContents__tab_wrap .tab__container .boldTxt {
    font-size: 1.1rem;
	}
	.topContents__tab_wrap .tab__container .boldTxt::before,
	.topContents__tab_wrap .tab__container .boldTxt::after {
		height: 1px;
	}
}
@media screen and (max-width:374px) {
	.tabBtn p {
    font-size: 1.2rem;
  }
}
*/
/*=========================*/



/*tabItem_schedule
===========================*/
.tabs {
  background-color: transparent;
}

/*タブのスタイル*/
.tab_item,
.tab_item_02 {
	display: flex;
  justify-content: center;
  align-items: center;
  float: left;
  width: calc(100% / 4 - 10px);
	margin-right: 13px;
  padding: 10px 0;
  background-color: #d9d9d9;
  line-height: 1.5;
  font-size: 16px;
  color: #565656;
	text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
	border-radius: 10px 10px 0 0;
}
.tab_item:nth-of-type(4n),
.tab_item_02:nth-of-type(4n) {
  margin-right: 0;
}
.tab_item:hover,
.tab_item_02:hover {
  background: #fff;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"],
input[name="tab_item_02"],
input[name="tab_item_03"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 15px 20px 20px;
	background: #fff;
  clear: both;
  overflow: hidden;
}
.tab_content_seminar {
  display: none;
}


/*選択されているタブのコンテンツのみを表示*/
#europe:checked ~ #europe_content,
#us:checked ~ #us_content,
#asia:checked ~ #asia_content,
#oceania:checked ~ #oceania_content,
#europe_02:checked ~ #europe_content_02,
#asia_02:checked ~ #asia_content_02,
#us_02:checked ~ #us_content_02,
#oceania_02:checked ~ #oceania_content_02 {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item,
.tabs input:checked + .tab_item_02,
.tabs input:checked + .tab_item_03 {
  background-color: #fff;
}

@media (max-width: 767px) {
	.tab_item, .tab_item_02 {
		width: 50%;
		margin: 0;
		font-size: 1.4rem;
		border-radius: 0;
	}
	.tab_item:nth-of-type(2n+1),
	.tab_item_02:nth-of-type(2n+1) {
		border-right: 1px solid #707070;
	}
	.tab_item:nth-of-type(n+3),
	.tab_item_02:nth-of-type(n+3) {
		border-top: 1px solid #707070;
	}
}
/*=========================*/



/*checkBox
===========================*/
.scheduleItem {
	display: none;
}
.checkBoxes {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.tab_content .checkBox_wrap {
	display: flex;
	align-items: center;
	padding: 15px;
	background: #f5f5f5;
}
.tab_content .checkBox_wrap p {
	position: relative;
	min-width: 115px;
	margin-right: 40px;
	color: #9b9b9b;
	font-size: 1.8rem;
}
.tab_content .checkBox_wrap p::after {
	position: absolute;
  content: '';
  top: 50%;
  right: -20px;
  width: 10px;
  height: 10px;
  border-right: 1px solid #9b9b9b;
  border-bottom: 1px solid #9b9b9b;
  transform: rotate(-45deg) translateY(-50%);
}
.tab_content .checkBox_wrap input[type="checkbox"] {
  position: relative;
  width: 22px;
  height: 22px;
	background: #fff;
  border: 1px solid #cccccc;
	border-radius: 5px;
  vertical-align: -5px;
	cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.tab_content .checkBox_wrap input[type="checkbox"]:disabled {
	background: #e6e6e6;
}

.tab_content .checkBox_wrap input[type="checkbox"]:checked {
	background: #00bbcd;
  border: none;
}
.tab_content .checkBox_wrap input[type="checkbox"]:checked:before {
  position: absolute;
  content: '';
  top: 3px;
  left: 7px;
  transform: rotate(50deg);
  width: 7px;
  height: 13px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.tab_content label {
	margin: 0 12px 0 5px;
	color: #6b6b6b;
	font-size: 1.8rem;
}

@media (max-width: 767px) {
	.tab_content .checkBox_wrap {
		display: block;
		padding: 10px;
	}
	.tab_content .checkBox_wrap p {
		margin-right: 0;
		font-size: 1.3rem;
		text-align: center;
		background: #fff;
	}
	.tab_content .checkBox_wrap p::after {
		display: none;
	}
	.checkBoxes {
		margin-top: 10px;
	}
	.tab_content .checkBox_wrap input[type="checkbox"] {
		width: 15px;
		height: 15px;

		margin-bottom: 3px;
	}
	.tab_content .checkBox_wrap input[type="checkbox"]:checked:before {
    top: 2px;
    left: 5px;
    width: 5px;
    height: 9px;
	}
	.tab_content label {
		margin: 0 10px 3px 5px;
    font-size: 1.2rem;
	}
}
/*=========================*/



/*tabItem_scheduleItem
===========================*/
.scheduleItem_wrap {
	display: flex;
	flex-wrap: wrap;
	margin-top: 15px;
}
.scheduleItem {
	max-width: 270px;
	width: 100%;
	margin: 0 10px 12px 0;
	padding: 10px 11px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}
/*.scheduleItem:nth-of-type(4n) {
	margin-right: 0;
}*/
.scheduleItem .dateBox {
	display: flex;
}
.scheduleItem .dateBox {
	display: flex;
	justify-content: space-between;
	color: #9b9b9b;
	font-size: 1.4rem;
}
.scheduleItem .areaIcon {
  display: inline-block;
  min-width: 110px;
  margin-top: 5px;
	margin-right: 5px;
  padding: 2px 5px;
  color: #fff;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: center;
  background: #00bbcd;
	letter-spacing: -2px;
}
.scheduleItem .areaIcon:last-of-type {
	margin-right: 0
}
.Icon_none{
visibility: hidden;
}
.scheduleItem .scheduleTit {
	margin-top: 5px;
	color: #707070;
	font-size: 1.6rem;
	font-weight: bold;
}
.scheduleItem .venueTit {
	color: #707070;
	font-size: 1.4rem;
  top: 90px;
  margin-bottom: 15px;
  margin-top: 10px;
}
/*
.scheduleTit .venueTit {
	margin-top: 10px;
	color: #707070;
	font-size: 1.3rem;
  display: inline-block;
}
*/
.scheduleItem .reserveBtn {
	display: block;
	max-width: 200px;
	width: 100%;
	margin: 10px auto 0;
	background: #ff9e3f;
	border-radius: 50px;
	filter: drop-shadow(1px 3px 0px rgba(208, 130, 53, 1));
	transition: all .2s;
}
.scheduleItem .reserveBtn a {
	position: relative;
	display: inline-block;
	width: 100%;
	padding: 3px 30px 3px 20px;
	color: #fff;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
}
.scheduleItem .reserveBtn a::after {
	position: absolute;
  content: '';
  top: 47%;
  right: 12px;
  width: 12px;
  height: 12px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  background: transparent;
  transform: rotate(-45deg) translateY(-47%);
}
.scheduleItem .map_modal {
	display: block;
	max-width: 200px;
	width: 100%;
	margin: 10px auto 0;
	padding: 3px 20px;
	color: #fff;
	text-align: center;
    font-weight: bold;
	background: #f37e1b;
	border-radius: 50px;
	    filter: drop-shadow(1px 3px 0px rgba(208, 130, 53, 1));
	transition: all .2s;
}
@media screen and (min-width:768px) {
	.scheduleItem .reserveBtn:hover,
	.scheduleItem .map_modal:hover {
    filter: drop-shadow(0px 0px 0px rgba(208, 130, 53, 1));
    transform: translate(1px, 3px);
    transition: all .2s;
  }
}
@media (max-width: 767px) {
	.scheduleItem_wrap {
		display: block;
	}
	.scheduleItem {
		max-width: 100%;
	}
	.scheduleItem .reserveBtn {
		max-width: 125px;
		margin: 10px 0 0 auto;
	}
	.scheduleItem .reserveBtn a {
		padding: 3px 15px 3px 5px;
		font-size: 1.2rem;
	}
	.scheduleItem .reserveBtn a::after {
		right: 6px;
		width: 8px;
		height: 8px;
	}
	.scheduleItem .map_modal {
		max-width: 125px;
		margin: 10px 0 0 auto;
		padding: 3px 20px;
		font-size: 1.2rem;
	}
	
	.scheduleItem .areaIcon {
		min-width: 80px;
		font-size: 1rem;
		font-weight: normal;
	}
	.scheduleItem .scheduleTit {
		font-size: 1.5rem;
	}
}
/*=========================*/



/*group_01
===========================*/
#group_01 .schedule {
	padding-bottom: 10px;
	background: #d3fad5;
}
#group_01 .schedule h3 {
	padding: 6px 0 8px;
	color: #61a260;
	font-size: 2.5rem;
	text-align: center;
	background: #fff;
	border-top: 2px solid #61a260;
	border-bottom: 2px solid #61a260;
}
@media (max-width: 767px) {
	#group_01 .schedule h3 {
		padding: 0 0 3px 0;
		font-size: 2rem;
	}
}
/*=========================*/



/*personal
===========================*/
#personal .schedule {
	padding-bottom: 25px;
	background: #d3fad5;
}
#personal .schedule h3 {
	padding: 6px 0 8px;
	color: #61a260;
	font-size: 2.5rem;
	text-align: center;
	background: #fff;
	border-top: 2px solid #61a260;
	border-bottom: 2px solid #61a260;
}
#personal .scheduleItems_personal {
	display: block;
	column-count: 2;
	padding: 10px 12px;
	color: #707070;
	font-weight: bold;
	background: #fff;
}
#personal .scheduleItem_personal {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#personal .scheduleItem_personal {
	padding: 15px 30px;
	margin-bottom: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}
#personal .scheduleItem_personal .date {
	font-size: 2rem;
}
#personal .time {
	font-size: 1.8rem;
}
#personal .reserveBtn {
	display: block;
  max-width: 170px;
  width: 100%;
  margin: 0 auto;
  background: #ff9e3f;
  border-radius: 50px;
  filter: drop-shadow(1px 3px 0px rgba(208, 130, 53, 1));
  transition: all .2s;
}
#personal .reserveBtn a {
	position: relative;
	display: inline-block;
  width: 100%;
  padding: 3px 25px 3px 15px;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
}
#personal .reserveBtn a::after {
	position: absolute;
  content: '';
  top: 50%;
  right: 8px;
  width: 10px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  background: transparent;
  transform: rotate(-45deg) translateY(-50%);
}
#personal .stepBox {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}
#personal .stepBox li {
	width: 220px;
}
#personal .stepArrow {
	position: relative;
	width: 75%;
	padding-left: 10px;
	line-height: 1.4;
	color: #fff;
	font-size: 1.3rem;
	background: #61a260;
}
#personal .stepArrow::after {
	position: absolute;
	content: '';
	bottom: 0;
	right: -53px;
	border-bottom: 50px solid #61a260;  
  border-right: 55px solid transparent;
}
#personal li:last-of-type .stepArrow::after {
	display: none;
}
#personal li:last-of-type .stepArrow {
	width: 100%;
}
#personal .stepArrow span {
	font-size: 2.4rem;
}
#personal .stepContents {
	margin-top: 6px;
	padding: 13px 10px 12px;
	background: #fff;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}
#personal li:last-of-type .stepContents {
	background: #fffdd4;
}
#personal .stepContents .contentsTit {
	margin-bottom: 5px;
	color: #61a260;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
}
#personal .stepContents .contentsTxt {
	color: #707070;
	font-size: 1.3rem;
	letter-spacing: -1px;
}
#personal .stepContents .contentsTxt_annotation {
	color: #707070;
	font-size: 1.2rem;
	letter-spacing: -1px;
}
#personal .stepContents .stepImg {
	position: relative;
	margin-top: 13px;
	cursor: pointer;
}
#personal .stepContents .stepImg::after {
	position: absolute;
	content: '';
	right: 3px;
	bottom: 3px;
	width: 32px;
	height: 32px;
	background: url("../img/icon_stepImg.png") no-repeat;
	background-size: contain;
}
#personal #grayDisplay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 100% !important;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
	z-index: 10000;
}
#personal #grayDisplay img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  object-fit: contain;
}

@media screen and (min-width:768px) {
	#personal .reserveBtn:hover {
    filter: drop-shadow(0px 0px 0px rgba(208, 130, 53, 1));
    transform: translate(1px, 3px);
    transition: all .2s;
  }
}
@media (max-width: 767px) {
	#personal .schedule h3 {
		padding: 0 0 3px 0;
		font-size: 2rem;
	}
	#personal .scheduleItems_personal {
		column-count: auto;
	}
	#personal .scheduleItem_personal {
		padding: 10px 13px;
	}
	#personal .scheduleItem_personal:last-of-type {
		margin-bottom: 0;
	}
	#personal .scheduleItem_personal .date {
		font-size: 1.3rem;
	}
	#personal .time {
    font-size: 1.2rem;
	}
	#personal .reserveBtn a {
		padding: 3px 15px 3px 10px;
		font-size: 1.2rem;
	}
	#personal .reserveBtn a::after {
    right: 4px;
    width: 8px;
    height: 8px;
	}
	#personal .stepBox_wrap {
		width: 100%;
		overflow-x: auto;
	}
	#personal .stepBox {
		width: 1160px;
	}
}
/*=========================*/



/*group_02
===========================*/
#group_02 .schedule {
	padding-bottom: 25px;
	background: #ffedeb;
}
#group_02 .schedule h3 {
	padding: 6px 0 8px;
	color: #ef8f75;
	font-size: 2.5rem;
	text-align: center;
	background: #fff;
	border-top: 2px solid #ef8f75;
	border-bottom: 2px solid #ef8f75;
}
@media (max-width: 767px) {
	#group_02 .schedule h3 {
		padding: 0 0 3px 0;
		font-size: 2rem;
	}
}
/*=========================*/




/*-----------------------　シンガポール説明会　-------------------------*/
/*group_03
===========================*/
#group_03 {
  width: 100%;
}
#group_03 .schedule {
	padding-bottom: 25px;
	background: #cce1fa;
}
#group_03 .schedule h3 {
	padding: 6px 0 8px;
	color: #6eb4ed;
	font-size: 2.5rem;
	text-align: center;
	background: #fff;
	border-top: 2px solid #6eb4ed;
	border-bottom: 2px solid #6eb4ed;
}
@media (max-width: 767px) {
	#group_03 .schedule h3 {
		padding: 0 0 3px 0;
		font-size: 2rem;
	}
}
/*#group_03 .sgp_contents {
  background: #cce1fa;
}*/
#group_03 section .sgp_contentsInner {
  max-width: 1500px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  background: #fff;
}
#group_03 .sgp_h .sub_tit {
  font-size: 1.7rem;
}
#group_03 .contents__secondContents .sgp_contents .sgp_boxarea h3 {
  display: inline-block;
}
#group_03 .sgp_h {
  display: inline-block;
  text-align: center;
  color: #0068de;
  background: #fde660;
  padding: 30px 40px;
  margin: 20px 0;
  border-radius: 72px;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.0;
  position: relative;
}
.book {
  display: inline-block;
  position: absolute;
  top: -4px;
  left: 260px;
  margin: 0;
  padding: 16px 0;
  z-index: 2;
  width: 66px;
  text-align: center;
  color: white;
  font-size: 1.8rem;
  background: linear-gradient(#70b3fe 0%, #207adf 100%);
  border-radius: 2px 0 0 0;
  }
#group_03 .sgp_h::before {
  position: absolute;
  content: '';
  top: -4px;
  left: 326px;
  border: none;
  border-bottom: solid 6px #0068de;
  border-right: solid 6px transparent;
}
/*#group_03 .sgp_h::after {
  content: '';
  position: absolute;
  left: 260px;
  top: 39%;
  height: 0;
  width: 0;
  border-left: 33px solid transparent;
  border-right: 33px solid transparent;
  border-top: 20px solid #207adf;
}*/
#group_03 .sgp_date {
  font-size: 4.0rem;
  color: #0068de;
  width: 60%;
  font-weight: 700;
  margin: 0 auto;
  padding: 0 20px 10px 20px;
  border-bottom: 4px solid #0068de;
  text-align: center;
}
#group_03 .sgp_date span {
  font-size: 3.0rem;
}
.sgp_li {
  margin: 20px 0;
}
.sgp_boxarea {
  display: flex;
  justify-content: space-between;
  /*padding: 45px;*/
  padding: 45px 0;
  margin: 0 auto;
  text-align: left;
}
#group_03 .contents__secondContents .sgp_contents .sgp_boxarea .sgp_left .l_txt {
  font-size: 2.0rem;
}

  @media (min-width: 768px){
  .sgp_left {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
@media (max-width: 767px){
.sgp_left {
    width: 100%;
    padding: 12px 30px 18px;
  }
}
/*=========================*/



section.contents__secondContents {
  background: url(../img/bg_border01.png) repeat-x top, url(../img/bg_pattern01.png);
  background-color: #cfe1fc;
  padding-bottom: 70px;
}
section.contents__secondContents .OS_schedule {
  padding-bottom: 0;
  max-width: 1160px;
  margin: 0 auto;
}
.blue_txt {
  background-color: #286ae3;
  color: #fff;
  font-size: 2.2rem;
  padding: 8px 24px;
  margin-right: 16px;
  border-radius: 30px;
}
section .sgp_contents {
    background-color: #fff;
    margin: 40px 100px 0 100px;
    line-height: 1.5;
}
section .sgp_contents .sgp_left {
  margin-top: 30px;
}
section .sgp_contents .sgp_left .l_txt {
  display: inline-block;
}
section .sgp_contents div .sgp_boxarea .sgp_date {
  color: #286ae3;
  text-align: center;
  border-bottom: 3px solid #286ae3;
  font-size: 5.0rem;
}
section .sgp_contents p.sgp_date .blue_txt {
  font-size: 2.8rem;
  font-weight: 500;
  background-color: #fae54d;
  color: #4472c4;
  margin: 0;
  }
section .sgp_contents p.look_place {
  justify-content: flex-start;
  align-items: baseline;
  margin-top: 12px;
  font-size: 2.4rem;
  line-height: 1.4;
}
section .sgp_contents p.look_place:first-of-type {
  margin-top: 0
}
section .sgp_contents p.place_small {
  font-size: 2.0rem;
}
section .sgp_contents .sgp_access {
  margin-top: 10px;
  font-size: 1.6rem;
}
section .sgp_contents .l_img img {
    border: 5px solid #286ae3;
    border-radius: 20px;
}
section .sgp_contents div.sgp_center {
  margin-top: 20px;
}
section .sgp_contents div.sgp_center .place_benefits {
  font-size: 1.8rem !important;
  align-items: center;
}
section .sgp_contents div.sgp_center p:nth-of-type(n+2) {
  margin-top: 20px;
  padding: 10px;
  font-size: 2.0rem;
  color: #e9861b;
  text-align: center;
  border-top: 2px dotted;
  border-bottom: 2px dotted;
}
section .sgp_contents div.sgp_center span.orange_txt {
  background-color: #e9861b;
}
section .sgp_contents .sgp_right {
  background-color: #cfe1fc;
  border-radius: 15px;
  margin-top: 50px;
  text-align: center
}
section .sgp_contents .sgp_right p {
  display: inline-block;
  font-size: 3.0rem;
  margin-bottom: 5px;
  padding: 12px;
}
section .sgp_contents .sgp_right p:first-of-type {
  position: relative;
  font-weight: 600;
}
section .sgp_contents .sgp_right p span.dial {
  color: #dd221e;
}
section .sgp_contents .sgp_right p span.dial_small {
  font-size: 1.7rem;
  font-weight: normal;
}
section .sgp_contents .sgp_right p.sgp_btn {
  display: inline-block;
  border-radius: 30px;
}
section .sgp_contents .sgp_right p.sgp_btn a {
  color: #fff;
  font-size: 2.8rem;
  display: block;
  padding: 10px 100px;
  width: 100%;
  height: 100%;
  background-color: #f77a4c;
  border-radius: 30px;
  box-shadow: 2.828px 3.828px 0px 0px rgba(157, 180, 197, 0.5);
  transition: all linear .3s;
  position: relative;
}
section .sgp_contents .sgp_right p.sgp_btn a::after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 15px solid #fff;
    margin: 13px 0 0 10px;
}
section .sgp_contents .sgp_right p.sgp_btn a:hover{
  box-shadow: 0px 0px 0px rgba(157, 180, 197, 0.5);
  transform: translate(2.828px, 2.828px);
  text-decoration: none;
  transition: .5s ease;
}
/*-----PCOnly-----*/
@media (min-width: 768px){
  
section .sgp_contents .l_img {
  width: 350px;
  margin-left: 80px;
}
  #second .OS_schedule.is-fadeOn .OS_schedule__inner {
    border-radius: 0;
    padding: 0 40px
  }
  #second .-box_830 {
    max-width: max-content;
  }
}
/*----------------*/

/*-----SPOnly-----*/

@media (max-width: 767px){
  section .sgp_contents {
    margin: 30px 7%;
    padding: 15px 0;
  }
  section .sgp_contents .sgp_boxarea {
    padding-bottom: 30px;
    background-color: transparent;
  }
  section .sgp_contents div .sgp_boxarea .sgp_date {
    font-size: 2.5rem;
    line-height: 1.7;
    margin: 0 7%;
  }
  section .sgp_contents .sgp_left {
    margin-top: 15px;
    padding: 0 18px;
    background-color: transparent;
}
  section .sgp_contents p.sgp_date .blue_txt {
  font-size: 1.7rem;
    margin: 0 0 10px 0;
  }
  .blue_txt {
    font-size: 1.5rem;
    padding: 8px 17px;
    margin-right: 20px;
    width: 30%;
    text-align: center;
  }
  section .sgp_contents .sgp_left .sgp_place{
    font-size: 1.8rem;
    margin-top: 10px;
  }
  section .sgp_contents .sgp_left .place_small {
    font-size: 1.4rem;
  }

  section .sgp_contents .sgp_access {
    font-size: 1.1rem;
  }
  section .sgp_contents .sgp_access .access_tit {
    margin: 0 20px 0 11px;
    width: 25%;
  }
  section .sgp_contents .sgp_access .access_p {
    margin: 0!important;
  }
  section .sgp_contents .l_img {
    margin-top: 20px;
  }
  section .sgp_contents .l_img img {
    border: 3px solid #286ae3;
  }
  section .sgp_contents div.sgp_center {
    padding: 0 18px;
  }
  section .sgp_contents div.sgp_center .place_benefits {
    font-size: 1.4rem !important;
    flex-direction: column;
  }
  section .sgp_contents div.sgp_center span.orange_txt {
    display: block;
    width: 100%;
    margin: 0 0 8px;
  }
  section .sgp_contents div.sgp_center p:nth-of-type(n+2) {
    font-size: 1.5rem;
    padding: 5px;
  }
  
  
  
  section .sgp_contents .sgp_right {
    margin-top: 20px;
  }
  section .sgp_contents .sgp_right p {
    font-size: 1.8rem; 
  }
  section .sgp_contents .sgp_right p span.dial_small {
    margin-top: 4px;
    display: block;
    font-size: 1.2rem;
  }

  section .sgp_contents .sgp_right p.sgp_btn a {
    font-size: 1.7rem;
    padding: 10px 60px;
    box-shadow: 1.828px 2.828px 0px 0px rgba(157, 180, 197, 0.5);
  }
  section .sgp_contents .sgp_right p.sgp_btn a::after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 10px solid #fff;
    margin: 7px 0 0 7px;
}
}


@media (min-width: 768px){
  .sgp_boxarea {
  flex-direction: column;
  }
}

@media (max-width: 767px){
.sgp_boxarea {
    flex-direction: column;
    padding: 0 0 10px;
    background-color: #fff;
    border-radius: 23px;
  }
  #group_03 .sgp_h {
    padding: 15px 40px;
    margin: 10px 20px;
    font-size: 2.0rem;
  }
  #group_03 .sgp_h::before {
    top: -5px;
    left: 50px;
    border-bottom: solid 5px #0068de;
    border-right: solid 5px transparent;
  }
  /*#group_03 .sgp_h::after {
    left: 5px;
    top: 29%;
    border-left: 22px solid transparent;
    border-right: 22px solid transparent;
    border-top: 11px solid #207adf;
  }*/
  .book {
    top: -5px;
    left: 5px;
    padding: 12px 0;
    width: 45px;
    font-size: 1.2rem;
  }
  #group_03 .sgp_h .sub_tit {
    font-size: 1.4rem;
  }
  #group_03 .sgp_date {
    font-size: 2.2rem;
    width: 90%;
    padding: 0 10px 6px 10px;
    border-bottom: 2px solid #0068de;
  }
  #group_03 .sgp_date span {
    font-size: 1.8rem;
  }
  section .sgp_contents .sgp_left {
    padding: 0 10px;
  }
  section .sgp_contents .sgp_left .l_txt {
    display: inline-block;
  }
  section .sgp_contents .sgp_left .sgp_place {
    font-size: 1.6rem;
    margin-top: 5px;
  }
  .blue_txt {
    padding: 6px 15px;
    margin-right: 5px;
  }
  section .sgp_contents .sgp_left .li_m {
    margin: 5px 0 0;
  }
  section .sgp_contents .sgp_access {
    margin: 0 0 15px 65px;
  }
  section .sgp_contents .sgp_access .access_tit {
    margin: 0;
    width: auto;
  }
  section .sgp_contents .sgp_right {
    margin: 20px auto 0;
    width: 90%;
  }
}

@media (max-width: 365px){
  #group_03 .sgp_h {
    font-size: 1.6rem;
  }
  #group_03 .sgp_h::before {
    top: -3px;
    left: 42px;
    border-bottom: solid 4px #0068de;
    border-right: solid 4px transparent;
  }
  /*#group_03 .sgp_h::after {
    left: 0;
    top: 42%;
    border-left: 21px solid transparent;
    border-right: 21px solid transparent;
  }*/
  #group_03 .sgp_h .sub_tit {
    font-size: 1.2rem;
  }
  .book {
    left: 0;
    padding: 8px;
    width: 42px;
    font-size: 1.1rem;
  }
  section .sgp_contents .sgp_left .sgp_place {
    font-size: 1.5rem;
  }
  section .sgp_contents div.sgp_center p:nth-of-type(n+2) {
    font-size: 1.2rem;
  }
}



/*----------------*/
/*-----------------------　シンガポール説明会　-------------------------*/











/*venueInfo
===========================*/
.-access__contents .map_sp {
  display: none;
  width: 100%;
}
.venueInfo {
	margin-top: 50px;
	padding-bottom: 18px;
	color: #707070;
}
#look_desk .venueInfo {
	margin-top: 45px;
	color: #333333;
}
.venueInfo .contentsInner {
	padding: 0px 10px 15px;
	background: #fff;
}
.venueInfo h2 {
	text-align: center;
}
.venueInfo h2 span {
	padding: 13px 15px 15px;
	color: #707070;
	font-size: 3.5rem;
	font-weight: bold;
}
.venueInfo .tit_subtxt{
    font-size: 1.7rem;
    text-align: center;
}
.venueInfo .mapBox {
	display: flex;
  margin-bottom: 50px;  
}
.venueInfo .mapBox .map_pc02 {
	display: flex;
	align-items: end;
}
.-access__contents {
/*  display: flex;*/
  margin: 5px 0;
	padding: 0 10px;
}
.-access__contents dl {
  display: flex;
	justify-content: space-between;
  font-size: 1.4rem;
  text-align: left;
}
.-access__contents dl dt {
  font-size: 2.5rem;
  line-height: 1.3;
  padding-bottom: 3px;
}
.shiodome {
  margin: 20px 0;
	padding: 0 10px;
}
.shiodome dl dt:nth-of-type(1) {
  color: #c84a6a;
  font-size: 2.7rem;
  font-weight: bold;
  margin-top: 5px;
}
.shiodome dl dt:nth-of-type(1) span {
  color: #707070;
}
.shiodome dl dd.txtBox {
  display: flex;
  column-gap: 16px;
  margin-top: 10px;
  font-size: 1.8rem;
  line-height: 1.3;
}
.-access__contents dl dt span {
  font-size: 2rem;
  margin-left: 8px;
}
.-access__contents dl dd span {
  font-weight: bold;
}
.-access__contents dl dd.txtBox {
  display: flex;
  margin-top: 10px;
  font-size: 1.8rem;
  line-height: 1.3;
}

.-access__contents dl dd.businessHours {
  font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: -1px;
}
 p.businessHours {
  font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: -1px;
}
 .query{
	display: flex;
  margin: 15px 0 10px;
}
 .query .date{
  padding-left: 10px;
	line-height: 1.3;
  font-size: 4.2rem;
  font-weight: bold;
}
 .query .dom {
	display: flex;
	align-items: center;
	max-width: 160px;
  margin-top:4px;
  margin-bottom: 3px;
  padding: 5px 15px;
  color: #FFFFFF;
  font-size: 2rem;
  background-color: #4b9c47;
}
/*
.-access__contents .text{
	margin-top: 20px;
}
*/
@media (min-width: 767px) {
.-access__contents .right {
  width: 50%;
  margin: auto 0;
}
.shiodome .right {
  width: 100%;
}
.shiodome {
    justify-content: flex-start;
    column-gap: 60px;
    align-items: flex-start;
    padding: 0 40px;
  }
}

.shiodome {
    padding: 30px 5px;
}

 .shiodome_note  {
  background-color: #fcddec;
  position: relative;
  display: inline-block;
  padding: 5px 20px;
  border-radius: 25px;
  text-align: start;
  border: 2px solid #c84a6a;
}
.shiodome_note::after {
  content: "";
  position: absolute;
  bottom: -17px;              
  left: 30px;                   
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 17px solid #c84a6a; 
  z-index: 1;                   
}

.shiodome_note::before {
  content: "";
  position: absolute;
  bottom: -14px;                
  left: 33px;
  width: 0;
  height: 0;
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-top: 15px solid #fcddec; 
  z-index: 2;
}.shiodome .shiodome_note span {
  display: inline-block;
  position: relative;
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1.3;
  color: #c84a6a;
  z-index: 0;
}
.shiodome .shiodome_note .sub {
  font-size: 2.0rem;
}
.shiodome .shiodome_note span::after {
  content: "";                 
  position: absolute;
  left: 0;
  bottom: 0;                   
  width: 100%;                 
  height: 0.3em;                
  background-color: #f7e500;    
  z-index: -1;                 
}
.shiodome .shiodome_note p {
  font-size: 2.0rem;
  line-height: 1.7;
  font-weight: 450;
  display: inline;
}
.shiodome dl {
  /*display: flex;*/
  font-size: 1.4rem;
  text-align: left;
  margin-top: 20px;
}

/*shiodome sp*/
@media (max-width: 767px) {
  .shiodome {
    margin: 40px auto !important;
    padding: 5px 5px !important;
  }
  .shiodome dl dt:nth-of-type(2) {
    font-size: 2.0rem;
    margin-top: 0;
  }
  .shiodome .shiodome_note span {
    font-size: 1.7rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .shiodome .shiodome_note p {
    font-size: 1.3rem;
  }
  .shiodome .shiodome_note .sub {
    font-size: 1.4rem;
  }
  .-access__contents .shiodome_note  {
    margin-bottom: 5px;
    padding: 5px 20px;
    text-align: center;
    justify-content: center;
  }
  .-access__contents dl dd.txtBox {
    margin-top: 5px;
  }

    .shiodome dl dt:nth-of-type(1) {
    color: #c84a6a;
    font-size: 1.5rem;
    font-weight: bold;
    margin-top: 5px;
  }
  .shiodome dl dt:nth-of-type(1) span {
    color: #707070;
  }
}
/*shiodome sp*/

@media (max-width: 767px) {
	.-access__contents .text {
		margin-top: 0;
	}
  .-access__contents dl  {
    font-size: 1.3rem;
  }

  .-access__contents dl dt  {
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .-access__contents dl dt span {
    font-size: 1.2rem;
  }
  .-access__contents dl dd.txtBox span {
		min-width: 85px;
    font-size: 1.2rem;
  }
  .-access__contents dl dd.txtBox p {
		min-width: 85px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
	.-access__contents dl dd.businessHours,
	.contentsInner p.businessHours {
		font-size: 1.2rem;
	}
  .-access__contents dl dd.txtBox{
		font-size: 1.2rem;
    display: flex;
 
  }
	.-access__contents dl dd.businessHours,
	.contentsInner p.businessHours {
		font-weight: normal;
	}
   .query  {
    font-size: 1.4rem;
    line-height: 1.6;
  }
   .query span{
    font-size: 1.2rem;
    padding: 2px 25px;
  }
	 .query .dom {
		font-size: 1.2rem;
	}
	 .query .date {
		font-size: 2.5rem;
	}
  .-access__contents .map_pc {
    display: none;
  }
	.venueInfo,
	#look_desk .venueInfo {
        margin-top: 0;
    }
  .venueInfo .mapBox .map_pc02 {
    display: none;
  }
	.venueInfo h2 span {
		margin: 10px 10px 12px;
		font-size: 1.7rem;
    display: inline-block;
	}
    .venueInfo .tit_subtxt{
    font-size: 1.3rem;
        padding-bottom: 20px;
}
.-access__contents .right img{
  width: 200px;
  float: right;
    
}
.-access__contents .map_pc img{
  width: 300px;
  margin-left: 15px;
}

}

@media (max-width: 767px) {
   .-access__contents .map_sp,
  .shiodome .map_sp{
     display: block;
     margin-top: 20px;
    }
  .-access__contents {
    margin: 0;
    padding: 0 10px;
  }
}

/*---.-note_box---*/
.-note_box {
	margin: 30px 0 0;
	padding: 10px 15px 20px;
	color: #707070;
  letter-spacing: 0;
	background: #f1f1f1;
}
.-note_box .-note_tit {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.7;
  padding-bottom: 5px;
}
.-note_box .-note_li {
  padding-left: 1em;
	text-indent: -1em;
  font-size: 14px;
}
.-note_box .-note_underline {
	color: #707070;
	text-decoration: underline;
}

@media (min-width: 767px) {
	.-note_box .-note_underline:hover {
		text-decoration: none;
	}
}

@media (max-width: 767px) {
	.-note_box {
		padding: 9px 10px;
	}
  .-note_box .-note_tit {
    font-size: 1.5rem;
  }
	.-note_box .-note_li {
    font-size: 1.1rem;
  }
}


#group_03 .contents__secondContents {
  background: url(../img/bg_pattern01.png);
  background-color: #cfe1fc;
  padding: 50px 0;
}
#group_03 .OS_schedule {
  padding: 10px 3%;
}
@media (max-width: 767px) {
  #group_03 .contents__secondContents {
    padding: 30px 0;
  }
  #group_03 .OS_schedule {
    margin: 0 10px;
  }
  
}
/*----------------*/
/*==========================================================*/
/*==========================================================*/
#look_desk {
	font-family: 'Noto Serif Japanese', 'Hiragino Mincho ProN、ヒラギノ明朝 ProN', serif;
}
#look_desk .infoBox h2{
    font-size: 5.0rem;
    color: #ffffff;
}
#look_desk .infoBox h2 span{
    color: #f8dd11;
    font-size: 5rem;
}
#look_desk .infoBox h2 small{
    
    font-size: 2.5rem;
}
@media (max-width: 767px) {
	#look_desk .infoBox h2{
		width: 100%;
    font-size: 2.5rem;
		padding: 10px 0 20px!important;
	}
	#look_desk .infoBox h2 span{
    font-size: 3rem;
	}
	#look_desk .infoBox h2 small{
    font-size: 1.5rem;
	}
}
.spOnly_350{
    display: none;
}

/*look_desk
===========================*/
#look_desk .infoBox h2 {
	padding: 0 0 20px 0;
}
#look_desk .titBlock {
  margin-top: 100px;
}
#look_desk .titBlock_inner {
	background: #4c4040;
}
#look_desk .titBlock_inner h2 {
  position: relative;
	display: inline-block;
}
#look_desk .titBlock_inner h2::after {
	content: '';
  position: absolute;
  top: -50px;
  right: -290px;
  width: 220px;
  height: 220px;
  background: url(../img/look_desk/operator.png) no-repeat;
}
#look_desk .member {
	padding-bottom: 10px;
	background: #f4f4f4;
    
}
#look_desk .member h3 {
	padding: 6px 0 8px;
	font-weight: bold;
	color: #605559;
	font-size: 4rem;
	text-align: center;
	background: #fff;
	border-top: 2px solid #535353;
	border-bottom: 2px solid #535353;
	line-height: 1.3;
}
#look_desk .member h3 span{
    display: block;
    font-weight: normal;
    font-size: 2rem;
}
@media (max-width: 767px) {
	#look_desk .titBlock {
		margin-top: 0;
	}
	#look_desk .titBlock_inner {
		width: 100%;
	}
	#look_desk .titBlock_inner h2 {
		display: block;
	}
	#look_desk .titBlock_inner h2::after {
		display: none;
	}
	#look_desk .member h3 {
		padding: 10px 0;
		font-size: 2rem;
	}
    #look_desk .member h3 span{
    font-size: 1.5rem;
}
}
#look_desk .note_txt{
    /*display: flex;
    justify-content: space-between;
    align-items: center;*/
    max-width: 1160px;
    margin: 60px auto 0;
	text-align: center;
}
#look_desk .note_txt li{
  font-size: 2rem;
  color: #565656;
	font-weight: bold;
  display: flex;
  flex-wrap: wrap;
  gap:10px;
}
#look_desk .note_txt li p{
    width: 100%;
    line-height: 1.5;
}
#look_desk .note_txt li strong{
    color: #c50019;
    font-size: 2.6rem;
}
@media (max-width: 767px) {
    #look_desk .note_txt{
        max-width: 390px;
        flex-wrap: wrap;
        padding: 0 10px;
        gap:20px;
        position: relative;
        margin: 20px auto 25px;
    }
    #look_desk .note_txt li{
    font-size: 1.4rem;
        line-height: 1.2;
        letter-spacing: -0.7px;
}
    /*#look_desk .note_txt li:last-child{
        width: 40%;
        max-width: 140px;
        position: absolute;
        bottom: -26px;
        right: 8px;
    }*/
    #look_desk .note_txt li strong{
    font-size: 1.7rem;
}
    
}
@media (max-width: 350px) {
    .spOnly_350{
        display: block;
    }
}
#look_desk .member .contentsInner{
margin: 25px auto;
    font-weight: bold;
    text-align: center;
}
#look_desk .member .contentsInner .member_redtxt{
    font-size: 3rem;
    color: #c92032;
}
#look_desk .member .contentsInner .member_txt{
    font-size: 2rem;
    color: #565656;
    padding: 20px 0;
}
#look_desk .member .contentsInner ul{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    max-width: 750px;
    margin: 10px auto 0;
}
#look_desk .member .contentsInner ul li{
    position: relative;
	max-width: 140px;
}
#look_desk .member .contentsInner ul li p{
    position: absolute;
    background: rgba(41,41,41,0.6);
    padding: 4px;
    text-align: center;
    color: #ffffff;
    font-weight: bold;
    font-size: 2.0rem;
    width: 100%;
    line-height: 1;
    bottom: 0;
    left: 0;
}
@media (max-width: 767px) {
    #look_desk .member .contentsInner{
        margin: 0 0 25px;
        padding: 10px;
    }
    #look_desk .member .contentsInner .member_redtxt{
    font-size: 1.5rem;
        line-height: 1.2;
        letter-spacing: -0.4px;
}
    #look_desk .member .contentsInner .member_txt{
    font-size: 1.2rem;
        line-height: 1.2;
        padding: 10px 0;
}
    #look_desk .member .contentsInner .member_txt br{
        display: none;
    }
    #look_desk .member .contentsInner ul{
        width: 100%;
        gap:5px;
    }
    #look_desk .member .contentsInner ul li{
    width: calc(95% / 3);
    }
    #look_desk .member .contentsInner ul li p{
        font-size:  1.3rem;
    }
    
}

#look_desk .info_note{
    max-width: 1160px;
    background-color: #f3f3f3;
    padding: 20px 16px 15px;
    margin: 20px auto;
    font-weight: bold;
    color: #5a5b5a;
}
#look_desk .info_note h4{
    font-size: 2rem;
}
#look_desk .info_note ul{
     list-style: none;
    padding-left: 1.2em;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap:10px;
}
#look_desk .info_note ul li{
    width: 100%;
    list-style: none;
    counter-increment: cnt;
    text-indent: -1.2em;
    line-height: 1.3;
}
 #look_desk .info_note ul li::before {
      content: '・'; 
    }
#look_desk .info_note ul li strong{
    color: #c92032;
}
#look_desk .applyBtn_Box {
    display: flex;
    justify-content: center;
    gap: 50px;
}

#look_desk .applyBtn_Box p{
    text-align: center;
    color: #757675;
    font-size: 2.5rem;
    
}
#anchor-links{
    display: none;
    position: fixed;
}
.visible {
  display: block; /* または inline-block など */
}
#look_desk .sticky_under{
    
    bottom: 0;
    background: rgba(0,0,0,0.30);
    width: 100%;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 50;
}
#look_desk .sticky_under.-show {
  visibility:visible;
}
#look_desk .sticky_under.-transition500 {
  transition: .5s ease;
}
#look_desk .sticky_under a{
    transition: .5s ease;
    display: block;
    border-radius: 5px;
    background-color: #7c3533;
    padding: 10px;
    color: #ffffff;
    font-size: 2.5rem;
    text-align: center;
    position: relative;
    max-width: 510px;
    margin: 10px auto;
   pointer-events: auto;
  
}
#look_desk .sticky_under a::after{
            top: calc(50% - 12px);
        right: 32px;
        width: 14px;
        height: 14px;
    -webkit-transform: rotate(135deg);
    display: block;
    position: absolute;
    transform: rotate(135deg);
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    content: "";
}
#look_desk .applyBtn_Box .btnWrap{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
#look_desk .applyBtn_Box .btnWrap .sub_txt{
    width: 100%;
    font-size: 2.8rem;
}
#look_desk .applyBtn_Box .btnWrap p.btn a {
    position: relative;
    display: inline-block;
    width: 540px;
    line-height: 1;
    padding: 25px 50px 25px 30px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    background: #762627;
    border-radius: 10px;
    filter: drop-shadow(1px 5px 0px rgba(75, 25, 18, 1));
    transition: all .2s;
}
#look_desk .applyBtn_Box .btnWrap .btn a::after {
    position: absolute;
    content: '';
    top: 47%;
    right: 20px;
    width: 20px;
    height: 20px;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    background: transparent;
    transform: rotate(-45deg) translateY(-47%);
}
    #look_desk .applyBtn_Box .btnWrap .btn a:hover {
        filter: drop-shadow(0px 0px 0px rgba(208, 130, 53, 1));
        transform: translate(1px, 3px);
        transition: all .2s;
    }
@media (max-width: 767px) {
    #look_desk .sticky_under a{
        font-size: 1.6rem;
        line-height: 1.2;
        margin: 10px;
    }
    #look_desk .info_note{
    padding: 10px 10px 20px;
}
    #look_desk .info_note ul li{
        font-size: 1.2rem;
    }
#look_desk .info_note h4{
    font-size: 2rem;
}
	#look_desk .applyBtn_Box {
		display: block;
	}
    #look_desk .applyBtn_Box .btnWrap .btn {
			width: 100%;
      line-height: 1.8;
    }
    #look_desk .applyBtn_Box .btnWrap .sub_txt{
    width: 100%;
    font-size: 1.8rem;
}
    #look_desk .applyBtn_Box .btnWrap p.btn a {
    width: 100%;
    line-height: 1.4;
    padding: 15px 30px;
    margin: 10px auto 0;
    font-weight: normal;
    font-size: 1.8rem;
}
#look_desk .applyBtn_Box .btnWrap .btn a::after {
    right: 7px;
    width: 15px;
    height: 15px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
}

}

.sec_apply {
	margin-top: 45px;
}
.sec_apply h3 {
	position: relative;
	display: inline-block;
	min-width: 450px;
  padding: 10px 20px;
  font-size: 2.5rem;
  font-weight: bold;
  background: #defada;
}
.sec_apply h3 span {
	position: absolute;
  top: -35px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  font-size: 1.7rem;
  font-weight: normal;
  text-align: center;
}
.sec_apply .-note_box {
	margin-top: 20px;
}
.sec_apply .sec_apply_inner {
	padding: 0 10px;
}
.sec_apply .telBlock {
	margin-top: 15px;
}
.sec_apply .txt_tit {
	font-size: 2.5rem;
	font-weight: 800;
}
.sec_apply .txt_tel {
	font-size: 4rem;
	font-weight: 800;
}
.sec_apply .txt_openingHours {
	font-size: 2rem;
	font-weight: bold;
}
.operationBlock {
	margin-top: 30px;
	font-weight: bold;
}
.operationBlock h4 {
	display: inline-block;
  padding: 5px 40px;
  font-size: 2rem;
  border: 3px solid #32a8c4;
}
.operationBlock .txt_info {
	margin-top: 15px;
  font-size: 1.6rem;
}
.operationBlock .operationBlock_innerBox {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 20px;
}
.operationBlock .operationBlock_innerBox li {
	display: flex;
  justify-content: left;
  gap: 55px;
  width: 32%;
  font-size: 1.7rem;
}
.operationBlock .operationBlock_innerBox li p {
	padding: 3px 15px;
  border: 3px solid #32a8c4;
}
.operationBlock .operationBlock_innerBox li .operation_branch {
	position: relative;
	min-width: 250px;
}
.operationBlock .operationBlock_innerBox li .operation_branch::after {
	content: "";
  position: absolute;
  top: 50%;
  right: -55px;
  transform: translateY(-50%);
  border: 13px solid transparent;
  border-left: 20px solid #32a8c4;
}
.sec_apply .otherSeminar {
	margin: 40px 0 20px;
}

@media (max-width: 767px) {
	.sec_apply {
		margin-top: 10px;
	}
	.sec_apply:nth-of-type(n+2) {
		margin-top: 40px;
	}
	.sec_apply h3 {
		display: block;
		min-width: auto;
		font-size: 1.8rem;
	}
	.sec_apply h3 span {
		top: -25px;
		font-size: 1.3rem;
	}
	.sec_apply .txt_tit {
		font-size: 1.6rem;
	}
	.sec_apply .txt_tel {
    font-size: 3rem;
	}
	.sec_apply .txt_openingHours {
    font-size: 1.4rem;
	}
	.operationBlock h4 {
		display: block;
		padding: 5px 20px;
    font-size: 1.6rem;
    text-align: center;
	}
	.operationBlock .txt_info {
    font-size: 1.3rem;
	}
	.operationBlock .operationBlock_innerBox li {
		justify-content: center;
		gap: 55px;
		width: 100%;
		font-size: 1.6rem;
	}
	.operationBlock .operationBlock_innerBox li .operation_branch {
		min-width: 220px;
	}
	.sec_apply .otherSeminar {
    margin: 30px 0 15px;
	}
}

.member .modalBtn {
	box-shadow: 0 1px 3px 2px rgba(0, 0, 0, .3);
}
@media (min-width: 767px) {
	.member .modalBtn {
		cursor: pointer;
		transition: .3s;
	}
	.member .modalBtn:hover {
		opacity: .7;
		transition: .3s;
	}
}
/*=========================*/


/*look_desk_modal
===========================*/
.modal__bg {
  position: fixed;
  z-index: 10000;
  top: 0;
  left: 0;
  width: 200%;
  height: 200%;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0; /* 初期状態で非表示 */
  visibility: hidden; /* 初期状態で非表示 */
  transition: opacity .6s ease, visibility .6s ease;
}
.modal__bg.is-active {
  opacity: 1; /* 非表示を解除 */
  visibility: visible; /* 非表示を解除 */
}
.modal__inner {
  position: fixed;
  z-index: 10001;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto;
  padding: 0 10px;
  opacity: 0; /* 初期状態で非表示 */
  visibility: hidden; /* 初期状態で非表示 */
  transition: opacity .6s ease, visibility .6s ease;
}
.modal__inner.is-active {
  opacity: 1; /* 非表示を解除 */
  visibility: visible; /* 非表示を解除 */
}
.modal-card {
  width: 1160px;
  background: #fff;
  filter: drop-shadow(0 0 10px rgba(0 ,0, 0, 0.4));
  padding: 10px 10px 30px;
  position: absolute;
  z-index: 1;
  transform: translate3d(0, 48px, 0);
  opacity: 0; /* 初期状態で非表示 */
  visibility: hidden; /* 初期状態で非表示 */
  transition: opacity .6s ease, visibility .6s ease, transform .3s ease-in-out;
	overflow: hidden;
}
.triangle_decoration_01::before {
	content: "";
	position: absolute;
	top: -75px;
	left: -75px;
	border: 70px solid transparent;
	border-left: 70px solid #4e3e3f;
	transform: rotate(-135deg);
	z-index: 5;
}
.triangle_decoration_02::before {
	content: "";
  position: absolute;
  bottom: -75px;
  right: -75px;
  border: 70px solid transparent;
  border-left: 70px solid #4e3e3f;
  transform: rotate(45deg);
}
.modal-card.is-active {
  position: relative;
  z-index: 2;
  opacity: 1; /* 非表示を解除 */
  visibility: visible; /* 非表示を解除 */
  transform: translate3d(0, 0, 0);
}
.modal-card__heading {
  margin: 0 80px 0 0;
	padding-left: 10px;
  font-size: 2.5rem;
  line-height: 1.6;
  font-weight: bold;
  color: #535353;
	border-bottom: 2px solid #535353;
}
.modal-card__text {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.6;
  color: #444;
}
.modal-card__close {
  width: 40px;
  height: 40px;
  position: absolute;
  top: 16px;
  right: 13px;
  cursor: pointer;
	transition: .5s;
}
.modal-card__close::before,
.modal-card__close::after {
  content: "";
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 50%;
  width: 40px;
  height: 1px;
  background: #2a2a2a;
}
.modal-card__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.modal-card__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.modal-card .profileBox {
	display: flex;
	gap: 55px;
  padding: 45px 60px;
	color: #4a4240;
	font-size: 1.6rem;
}
.modal-card .profileBox figure {
	max-width: 190px;
}
.modal-card .profileBox .txtBlock {
	width: 100%;
}
.modal-card .profileBox .nameBox {
	display: flex;
	align-items: center;
	gap: 25px;
}
.modal-card .profileBox .profile_name {
	font-size: 4.2rem;
	font-weight: bold;
}
.modal-card .profileBox .profile_year {
	padding: 6px 18px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	background: #4e3e3f;
}
.modal-card .profileBox .detailBlock {
	display: grid;
	gap: 5px;
	margin-top: 10px;
}
.modal-card .profileBox .detailBlock li {
	padding-bottom: 5px;
	border-bottom: 1px solid #4a4240;
}

@media screen and (min-width:768px) {
	.modal-card__close:hover {
		transform: rotate(180deg);
		transition: .5s;
	}
}

@media screen and (max-width:767.98px) {
	.modal-card {
		width: 100%;
		min-height: auto;
		max-height: 480px;
    overflow-y: auto;
	}
	.modal-card__heading {
		margin: 12px 60px 0 0;
		font-size: 2rem;
	}
	.triangle_decoration_01,
	.triangle_decoration_02 {
		position: sticky;
	}
	.triangle_decoration_01 {
		top: 0;
	}
	.triangle_decoration_02 {
    bottom: -22px;
	}
	.triangle_decoration_01::before {
    top: -46px;
    left: -46px;
    border: 35px solid transparent;
    border-left: 35px solid #4e3e3f;
	}
	.triangle_decoration_02::before {
		display: none;
	}
	.modal-card .profileBox {
		display: block;
		padding: 45px 0 0;
	}
	.virtualBox {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 35px;
	}
	.modal-card .profileBox figure {
		max-width: 95px;
	}
	.modal-card .profileBox .nameBox {
		display: block;
	}
	.modal-card .profileBox .profile_name {
		font-size: 3rem;
	}
	.modal-card .profileBox .profile_year {
		padding: 2px 18px;
		font-size: 1.6rem;
	}
	.modal-card .profileBox .detailBlock {
		margin-top: 25px;
		letter-spacing: -.5px;
	}
	.modal-card .profileBox .detailBlock li {
		font-size: 1.3rem;
	}
}
/*=========================*/


/*map_modal
===========================*/
.modal-card.maps {
  width: auto;
  padding: 10px;
}
.modal-card .map_wrap {
	margin: 20px 80px;
	text-align: center;
}
.mapBox figure {
	max-width: 600px; 
}
.map_wrap .txtBlock {
	display: inline-block;
	margin-top: 15px;
	text-align: left;
}
.map_wrap .placeName {
	font-size: 2rem;
	font-weight: bold;
}
.map_wrap .placeName_ic {
	display: inline-block;
	margin-right: 15px;
	padding: 2px 20px;
	color: #fff;
	background: #61a260;
	border-radius: 50px;
}
.map_wrap .txtBlock .txtBlock_innerBox {
	margin-top: 20px;
}
.map_wrap .txtBlock .txtBlock_innerBlock:nth-of-type(n+2) {
	margin-top: 10px;
}

@media screen and (min-width:1280px) {
	.mapBox {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 15px;
	}
	.map_wrap .txtBlock .txtBlock_innerBox {
		display: flex;
		gap: 15px;
	}
}

@media screen and (max-width:1279px) {
	.mapBox figure {
		max-width: 550px;
	}
	.mapBox figure + figure {
		margin-top: 15px;
	}
}

@media screen and (max-width:767.98px) {
	.modal-card.maps {
		width: 100%;
		max-height: 450px;
		padding: 10px 10px 20px;
	}
	.modal-card.maps .triangle_decoration_01::before {
		display: none;
	}
	.modal-card .map_wrap {
		margin: 55px 0 0;
	}
	.map_wrap .placeName {
		font-size: 1.6rem;
	}
	.map_wrap .placeName_ic {
		display: inline-block;
		margin-right: 15px;
		padding: 2px 20px;
		color: #fff;
		background: #61a260;
		border-radius: 50px;
	}
	.map_wrap .txtBlock .txtBlock_innerBox {
		margin-top: 10px;
	}
}

/*=========================*/



/*europeSeminar
===========================*/
#europeSeminar h2 {
  background: #E04040;
}
#europeSeminar .infoBox h2 {
    padding-bottom: 20px;
    color: #fff;
    font-size: 3.5rem;
	}
#europeSeminar .infoBox h2 span {
  font-size: 2.5rem;
}
#europeSeminar h3 {
  background: #E04040;
  color: #fff;
  font-size: 3rem;
  text-align: center;
  padding: 5px 10px;
  margin-bottom: 20px;
}
#europeSeminar .lead p {
  font-size: 2rem;
  text-align: center;
  margin-bottom: 60px;
}
#europeSeminar .ap_box {
  background-color: #ffe3e3;
  width: 90%;
  margin: 30px auto;
  padding: 10px 5px 20px;
  position: relative;
  padding: 15px 5px;
}
#europeSeminar .ap_box table tr {
  display: flex;
  align-items: center;
  margin-left: 10px;
}
#europeSeminar .ap_box table tr th,
#europeSeminar .ap_box table tr td {
  padding: 20px;
}
#europeSeminar .ap_box table tr th {
  font-size: 2.7rem;
}
#europeSeminar .ap_box table tr td {
  font-size: 2.2rem;
}
#europeSeminar .ap_box .ap_wrap {
  border: 3px solid #E04040;
  border-radius: 10px;
  padding: 40px 0 25px;
  margin: 40px 10px 20px;
  position: relative;
}
#europeSeminar .ap_box .ap_wrap .btn_t {
  position: absolute;
  top: -11%;
  left: 50%;
  transform: translate(-50%, -11%);
  color: #E04040;
  font-weight: 700;
  font-size: 2.2rem;
  text-align: center;
  background-color: #ffe3e3;
  padding: 5px 40px;
}
#europeSeminar .ap_box .ap_btn {
  display: flex;
  text-align: center;
  justify-content: space-evenly;
}
#europeSeminar .ap_box .ap_btn p {
  width: calc(100% / 3);
}
#europeSeminar .ap_box .ap_btn a {
  font-size: 1.8rem;
  margin: 0 auto;
  width: 90%;
  border-radius: 20px;
  padding: 20px 10px;
  line-height: 1.2;
  display: block;
  color: #fff;
  background-color: #E04040;
  box-shadow: 0 2.828px 0px 0px #bc2b2b;
}
#europeSeminar .ap_box .ap_btn a span {
  color: #fae54d;
  font-weight: 700;
}
@media (min-width: 768px){
  #europeSeminar .ap_box .ap_btn a:hover {
    box-shadow: 0px 0px 0px rgba(213, 154, 129, 0.5);
    transform: translate(0, 2.828px);
    text-decoration: none;
    transition: .2s ease;
  }
}
@media (max-width: 767px) {
  #europeSeminar .ap_box table tr {
    flex-direction: column;
    align-items: normal;
    margin-left: 0;
  }
  #europeSeminar .ap_box .ap_wrap .btn_t {
    top: -5%;
    left: 50%;
    transform:  translate(-50%, -5%);
    padding: 5px 10px;
    font-size: 1.8rem;
  }
  #europeSeminar .ap_box .ap_btn {
    flex-direction: column;
  }
  #europeSeminar .ap_box .ap_btn p {
    width: 100%;
    margin: 5px 0;
  }
  #europeSeminar .ap_box .ap_wrap {
    padding: 25px 0 15px;
    margin: 25px 10px 20px;
  }
}

@media (min-width: 768px){
  #europeSeminar .europe_boxarea {
  flex-direction: column;
}
  #europeSeminar .europe_left {
    display: flex;
    justify-content: space-around;
  }
  #europeSeminar .l_img {
    width: 420px;
  }
  #europeSeminar .europe_right {
    font-size: 2.2rem;
  }
  #europeSeminar p.red_txt {
  font-size: 2.6rem;
  margin: 12px 0;
  }
  #europeSeminar .instructor_detail p {
    font-size: 1.8rem;
  }
  #europeSeminar .instructor_detail .instructor_name {
    font-size: 2.5rem;
    margin-bottom: 10px;
  }
  #europeSeminar .europe_instructorBox {
    display: flex;
    gap: 60px;
    margin: 0 0 40px;
  }
  #europeSeminar .europe_instructorBox figure {
    width: 25%;
    text-align: center;
  }
  #europeSeminar .txtBlock {
    width: 70%;
  }
  #europeSeminar .instructor_detail {
    background-color: #F0F0E0;
    padding: 25px;
    font-size: 2.2rem;
    border-radius: 50px;
  }
  #europeSeminar .europe_instructorBox figcaption {
    font-size: 1.8rem;
  }
  #europeSeminar .company_logo {
    width: 60%;
    margin: 20px auto 0;
  }
  #europeSeminar .company_logo p {
    text-align: center;
    font-size: 3rem;
  }
}
#europeSeminar .europe_jtb {
	display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding-bottom: 40px;
  background-color: #F0F0E0;
}
#europeSeminar p.europe_tit {
	margin-top: 20px;
  text-align: center;
    width: 100%;
    display: flex;
    justify-content: center;
}

#europeSeminar section.europe_contents {
  background-color: #fff;
  margin: 40px auto;
  border-radius: 50px;
  line-height: 1.5;
    width: 100%;
    max-width: 1160px;
  padding-top: 5px;
   
}

#europeSeminar .europe_boxarea {
  display: flex;
  justify-content: space-between;
  padding: 0 45px 45px;
}
#europeSeminar .l_txt {
  width: 75%;
}
#europeSeminar .l_img {
  width: 40%;
}
#europeSeminar .europe_left {
  text-align: center;
  gap: 30px;
  align-items: center;
}
#europeSeminar .europe_date {
  font-size: 6.0rem;
  font-weight: 700;
  color: #E04040;
  border-bottom: 3px solid #E04040;
  /*color: #1aa8e3;
  border-bottom: 3px solid #1aa8e3;*/
}
#europeSeminar span.small_txt {
  font-size: 3.8rem;
}
#europeSeminar .europe_place {
  display: flex;
	align-items: center;
  margin-top: 30px;
  text-align: left;
  font-size: 3.0rem;
  line-height: 1.0;
}
#europeSeminar .highlight_txt {
  display: flex;
  align-items: center;
  background-color: #E04040;
  color: #fff;
  font-size: 2.8rem;
  padding: 10px 30px;
  margin-right: 20px;
  border-radius: 30px;
}

#europeSeminar .europe_access {
  margin-top: 24px;
  display: flex;
  text-align: left;
}
#europeSeminar .europe_access .access_tit {
  margin-right: 10px;
}
#europeSeminar .europe_access p span {
  font-weight: 700;
}
#europeSeminar .europe_right {
  width: 100%;
  background-color: #fbecd9;
  /*background-color: #e8fbe6;*/
  border-radius: 40px;
  text-align: center;
  margin: 20px auto 0;
}
#europeSeminar ul.europe_benefit {
  text-align: left;
  padding: 0 100px;
  margin-top: 26px;
}
#europeSeminar ul.europe_benefit li {
  position: relative;
  padding-left: 28px;
}
#europeSeminar ul.europe_benefit li+li {
  margin-top: 14px;
}
#europeSeminar ul.europe_benefit li::before {
  position: absolute;
  display: inline-block;
  content: "●";
  left: 0;
}
#europeSeminar ul.europe_benefit li::before {
  position: absolute;
  display: inline-block;
  content: "●";
  left: 0;
  top: 13%;
}
#europeSeminar .europe_benefit_p {
  margin: 20px 0;
}
#europeSeminar span.mark_txt {
  font-size: 2.8rem;
  font-weight: 500;
  background:linear-gradient(transparent 60%, #fae54d 60%);
  padding: 0 7px;
}
#europeSeminar p.red_txt {
  font-size: 2.8rem;
  font-weight: 600;
  color: #e31a1a;
  margin: 20px 0;
}
#europeSeminar p.red_txt .dot_txt {
  font-size: 3.8rem;
  background-image: radial-gradient(circle at center, red 20%, transparent 20%); /* 点の色とサイズ調整 */
  background-position: top right 1px; /* 点の位置 */
  background-repeat: repeat-x; /* 横方向に繰り返し */
  background-size: 1em 0.8em; /* 点の間隔とサイズ調整 */
  padding-top: 0.4em; /* 縦方向の位置調整 */
}
#europeSeminar p.europe_map {
  text-align: center;
  margin-bottom: 40px;
}
#europeSeminar p.europe_map img {
  border: 6px solid #E04040;
  /*border: 6px solid #1aa8e3;*/
  border-radius: 20px;
}
#europeSeminar .large_anch {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
}
#europeSeminar .large_anch li a {
  background: #1aa8e3;
  color: #fff;
  font-weight: 700;
  border-radius: 8px;
}
#europeSeminar .seminar_wrap {
  margin-top: 70px;
}
#europeSeminar .table_h {
  background: #1aa8e3;
  color: #fff;
  font-weight: 700;
  padding: 10px 40px;
}
#europeSeminar .reserveTxt_large {
  margin: 20px 0;
  font-size: 1.4rem;
  font-weight: 700;
}
#europeSeminar .smn_info {
  font-weight: 500;
}
#europeSeminar .areaTable .tit_01 {
  border-bottom: none!important;
}
#europeSeminar .areaTable .tit_02 {
  border-top: 2px dashed #b4dbdb!important;
}
@media (min-width: 768px) {
  #europeSeminar .large_anch {
    width: 80%;
  }
  #europeSeminar .large_anch li a {
    font-size: 1.4rem;
    border: 3px solid #1aa8e3;
    padding: 10px 40px;
  }
  #europeSeminar .large_anch li a:hover {
    background: #fff;
    color: #1aa8e3;
    border: 3px solid #1aa8e3;
  }
  #europeSeminar .europe_right + .europe_right {
    margin-top: 40px;
  }
}


@media (max-width: 767px) {
  #europeSeminar .seminar_wrap {
    margin-top: 50px;
  }
  #europeSeminar .large_anch {
    flex-direction: column;
  }
  #europeSeminar .large_anch li a {
    font-size: 1.6rem;
    background: #1aa8e3;
    padding: 4px 20px;
  }
  #europeSeminar .large_anch li + li {
    margin-top: 12px;
  }
  #europeSeminar .europe_benefit_p {
    margin: 20px 10px;
  }
  #europeSeminar .reserveTxt_large {
    margin: 15px 0 0;
    font-size: 1.3rem;
  }
}
@media (max-width: 360px) {
  #europeSeminar .large_anch li a {
    font-size: 1.4rem;
  }
}

/*--------------------------------spOnly--------------------------------*/
@media (max-width: 767px){
  #europeSeminar .pcOnly {
    display: none;
  }
  #europeSeminar .infoBox h2 {
    background-color: #E04040;
    color: #fff;;
    font-size: 2.5rem;
  }
  #europeSeminar .infoBox h2 span {
    font-size: 1.5rem;
  }
  #europeSeminar .txtBlock {
    margin-top: 15px;
  }
  #europeSeminar .europe_instructorBox {
    padding: 0 10px;
  }
  #europeSeminar .europe_instructorBox figure {
    width: 50%;
    margin: 0 auto;
  }
  #europeSeminar .europe_instructorBox figure figcaption {
    text-align: center;
  }
  #europeSeminar .instructor_detail {
    background-color: #F0F0E0;
    padding: 15px 20px;
    font-size: 1.4rem;
    border-radius: 15px;
    letter-spacing: -0.5px;
  }
  #europeSeminar .instructor_detail .instructor_name {
    font-size: 1.6rem;
    margin: 7px 0;
  }
  #europeSeminar .europe_tit {
    margin: -16px 40px 0 40px;
  }
  #europeSeminar .europe_boxarea {
    flex-direction: column;
    padding: 0 0 10px;
    background-color: #fff;
    border-radius: 23px;
  }
  #europeSeminar section.europe_contents {
    background-color: transparent;
    margin-top: 20px;
  }
  #europeSeminar .europe_left {
    width: 100%;
    padding: 0 30px 18px;
  }
  #europeSeminar .europe_date {
    font-size: 3.5rem;
  }
  #europeSeminar span.small_txt {
    font-size: 2.3rem;
  }
  #europeSeminar .europe_place {
    font-size: 1.8rem;
    margin-top: 15px;
    justify-content: center;
  }
  #europeSeminar .skyblue_txt {
    font-size: 1.5rem;
    padding: 3px 17px;
    margin-right: 11px;
    width: 26%;
    text-align: center;
  }
  #europeSeminar .europe_access {
    justify-content: center;
    font-size: 1.1rem;
    margin-top: 12px;
  }
  #europeSeminar .europe_access .access_tit {
    margin: 0 18px 0 4px;
  }
  #europeSeminar p.europe_map {
    margin: 15px 0 0;
  }
  #europeSeminar p.europe_map img {
    border: 3px solid #E04040;
    border-radius: 10px;
  }
  #europeSeminar .europe_right {
    width: 90%;
    border-radius: 20px;
    margin: 20px 5%;
  }
  #europeSeminar .europe_right .skyblue_txt {
    font-size: 1.7rem;
    width: 78%;
    padding: 7px 20px;
  }
  #europeSeminar ul.europe_benefit {
    font-size: 1.2rem;
    margin: 13px auto 8px;
    padding: 0 0 0 5px;
    width: 90%;
  }
  #europeSeminar ul.europe_benefit li {
    padding-left: 14px;
  }
  #europeSeminar ul.europe_benefit li+li {
    margin-top: 8px;
  }
  #europeSeminar ul.europe_benefit li:first-of-type::before {
  top: 0px;
}
  #europeSeminar span.mark_txt {
    font-size: 1.6rem;
    padding: 0 3px;
  }
  #europeSeminar p.red_txt {
    font-size: 1.5rem;
    line-height: 1.7;
    margin: 0 0 10px;
  }
  #europeSeminar p.red_txt .dot_txt {
    font-size: 2.3rem;
  }
  #europeSeminar p.day_p::before {
    display: none;
  }
  #europeSeminar .company_logo {
    margin: 20px 0 30px;
  }
  #europeSeminar .company_logo p {
    font-size: 1.8rem;
    text-align: center;
  }
  #europeSeminar h3 {
    font-size: 2.3rem;
  }
  #europeSeminar .lead p {
    font-size: 1.5rem;
    margin: 0 30px 30px;
    text-align: left;
  }
  #europeSeminar .l_txt {
    width: 100%;
  }
  #europeSeminar .l_img {
    width: 80%;
    margin: 0 auto;
  }
  #europeSeminar .highlight_txt {
    font-size: 2rem;
    padding: 10px 15px;
  }
  #europeSeminar .ap_box table tr th {
  font-size: 2.7rem;
  padding: 20px 20px 10px;
  margin-right: auto;
  }
  #europeSeminar .ap_box table tr td {
    font-size: 1.8rem;
    padding: 0 20px 20px;
  }
}
@media (max-width: 359px) {
  #europeSeminar .ap_box .ap_wrap .btn_t {
    font-size: 1.5rem;
  }
  .colorPattern_05 .tabBox .tabBtn p {
		font-size: 1.1rem;
    letter-spacing: -.2px;
	}
  #europeSeminar .ap_box .ap_wrap .btn_t {
    font-size: 1.5rem;
  }
	#europeSeminar .infoBox h2 {
		font-size: 2rem;
	}
	#europeSeminar .infoBox h2 span {
      font-size: 1.3rem;
  }
  #europeSeminar .highlight_txt {
    width: 30%;
    font-size: 1.8rem;
    justify-content: center;
    padding: 7px 0 9px;
  }
  #europeSeminar .europe_place {
    font-size: 1.4rem;
  }
  #europeSeminar .ap_box .ap_btn a {
    font-size: 1.5rem;
  }
}
/*--フッター上ミニバナー--*/
/*----------------------------------*/
/*--*/
.miniBanner_wrap {
 max-width: 1860px;
    padding: 0 30px;
    margin: 0 auto;
  width: 100%;
}
.miniBanner_box{
    display: flex;
    justify-content: space-around;
    padding: 0 12px;
  width: 100%;
  margin: 0 auto;
  border: 1px solid rgba(0, 0, 0, .1);
  border-radius: 5px;
}
.miniBanner_wrap h2{
    padding-bottom: 10px;
}
.miniBanner_inner {
  width: 100%;
  overflow: hidden;
  background: #fff;
}
.miniBanner_block {
  display: flex;
}
.miniBanner_img {
  flex-shrink: 0;
  transition: opacity .25s cubic-bezier(.4, 0, .2, 1) 0s;
}
.miniBanner_title {
  transition: opacity .25s cubic-bezier(.4, 0, .2, 1) 0s;
}
.miniBanner_text {
  display: flex;
  flex-flow: column;
  justify-content: center;
  color: #000;
}
@media print, screen and (min-width: 768px) {
  .miniBanner_inner {
    padding: 12px;
  }
  .miniBanner_block:hover .miniBanner_img {
    opacity: .7;
  }
  .miniBanner_img {
    width: 80px;
    margin-right: 18px;
  }
  .miniBanner_title {
    font-weight: 700;
  }
  .miniBanner_block:hover .miniBanner_title {
    color: #cc0d21;
    text-decoration: underline;
  }
  .miniBanner_detail {
    margin-top: 5px;
    font-size: 1.4rem;
    line-height: 1.2;
  }
}
@media only screen and (max-width: 767.98px) {
  .miniBanner_wrap {
    max-width: 100%;
      padding: 20px 15px 0;
  }
    .miniBanner_box {
        /*max-width: 100%;*/
        width: 95%;
        flex-wrap: wrap;
    }
  .miniBanner_inner {
      width: 100%;
    padding: 10px;
  }
  .miniBanner_img {
    width: 82px;
    margin-right: 11px;
  }
  .miniBanner_title {
    font-size: 1.3rem;
    font-weight: 700;
      line-height: 1.3;
  }
    .miniBanner_detail {
    margin-top: 5px;
    font-size: 1.1rem;
    line-height: 1.2;
  }
}
/*----------------------------------*/

/*=========================*/

/*ribbon
====================*/
#europeSeminar .ap_box .ribbon {
  position: absolute;
  top: 0;
  left: 15px;
  padding: 10px 12px 8px;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  background-color: #E04040;
}
#europeSeminar .ap_box .ribbon::before {
  position: absolute;
  content: '';
  bottom: -20px;
  left: 0;
  border: 20px solid transparent;
  border-left: 40px solid #E04040;
}
#europeSeminar .ap_box .ribbon::after {
  position: absolute;
  content: '';
  bottom: -20px;
  right: 0;
  border: 20px solid transparent;
  border-right: 40px solid #E04040;
}
#europeSeminar .ap_box .ribbon span {
  font-size: 2.5rem;
}

@media (max-width: 767px) {
  #europeSeminar .ap_box .ribbon {
    left: auto;
    right: 10px;
    padding: 8px;
    font-size: 1.6rem;
  }
  #europeSeminar .ap_box .ribbon::before {
    bottom: -12px;
    border-left: 60px solid #E04040;
  }
  #europeSeminar .ap_box .ribbon::after {
    bottom: -12px;
    border-right:60px solid #E04040;
  }
  #europeSeminar .ap_box .ribbon span {
    position: relative;
    font-size: 2rem;
    z-index: 5;
  }
}
/*==================*/
table {
  margin: 0 40px 0 auto;
}
@media (max-width: 767px) {
  table {
    margin: 0;
  }
  
}

@media screen and (max-width: 767.98px) {
  .infoBox h2 span.venue_detail {
    font-size: 1.5rem;
  }
}


