@charset "UTF-8";

/*!
Theme Name: www.xxx.com
Author: tsumikiinc.com
Description:
Version: 1.0.0
*/
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

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

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
  color: #575254;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
  color: #cbcbcb;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.96em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: content-box;
  /* 2 */

  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables・テーブル共通
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*共通部品******************************************************************************/
html {
  height: 100%;
  -webkit-overflow-scrolling: touch;
  width: 100%;
}

body {
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  font-family: 游明朝, Yu Mincho, YuMincho, Hiragino Mincho Pro, serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  line-height: 1.8;
  letter-spacing: 0.1em;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;

  box-sizing: border-box;

  /* outline: red 0.1rem solid; */
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
}

img {
  vertical-align: top;
}

select::-ms-expand {
  display: none;
}

::-moz-selection {
  color: #fff;
  background: rgba(0, 0, 0, 0.8);
}

::selection {
  color: #fff;
  background: rgba(0, 0, 0, 0.8);
}

input::-moz-selection,
textarea::-moz-selection {
  background: rgba(0, 0, 0, 0.2);
}

input::selection,
textarea::selection {
  background: rgba(0, 0, 0, 0.2);
}

a.outline:focus {
  outline: 1px dotted;
}

a:focus {
  outline: none;
}

/* ブラウザーによっての崩れ回避TEST */
_:-ms-lang(x)::-ms-backdrop,
body {
  background-color: #aaa;
}

/*共通/基本部品end ******************************************************************************/

/*共通・大枠系 ******************************************************************************/
.l-contents {
  color: #222;
  text-align: center;
  padding-top: 80px;
  height: 100%;
}

h2.seikon-title {
  margin-bottom: 30px;
  font-size: 28px;
}

h2.seikon_interview {
  border-bottom: #c1ad62 solid 1px;
  margin-bottom: 10px;
}

h3.seikon_interview {
  font-size: 1.2rem;
  font-weight: bold;
  border-bottom: #c1ad62 solid 1px;
  margin-top: 10px;
  margin-bottom: 10px;
}


h3.seikon_interview_f {
  color: #ea609a;
  font-weight: bold;
  font-size: 1.2rem;
}

h3.seikon_interview_m {
  color: #746bab;
  font-weight: bold;
  font-size: 1.2rem;
}

a.a_marriage {
  color: #ea609a;
  text-decoration: underline;
}

a.a_marriage:hover {
  color: #fa82b4;
  text-decoration: underline;
}

.m_fashion_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
}

.m_fashion_flex .inner {
  width: calc(33.333% - 10.66px);
}

.m_fashion_flex img {
  display: flex;
  width: calc(100%);
  object-fit: cover;
  border-radius: 20px;
}

.reia_youtube {
  width: 100%;
  margin-bottom: 100px;
  margin-top: 50px;
}

.reia_youtube h2 {
  font-size: 1.3rem;
  float: left;
  width: 100%;
  display: block;
  border-bottom: #e6649a solid 2px;
  padding-bottom: 10px;
  background-image: url(../img/reia/youtubeicon.jpg);
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: 40px 40px;
  padding-left: 50px;
}

.reia_youtube .ry_inner {
  display: flex;
  width: 100%;
}

.reia_instagram .ry_inner {
  display: flex;
  width: 100%;
  flex-wrap: nowrap;
  justify-content: center;
}

.reia_youtube .ry_inner iframe {
  margin-right: 1%;
  height: 200px;
}

.reia_youtube .ry_inner iframe:last-child {
  margin-right: 0;
}


.reia_instagram {
  width: 100%;
  margin-bottom: 30px;
}

.reia_instagram h2 {
  font-size: 1.3rem;
  float: left;
  width: 100%;
  display: block;
  border-bottom: #e6649a solid 2px;
  padding-bottom: 10px;
  background-image: url(../img/reia/instaicon.jpg);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: 30px 30px;
  padding-left: 50px;
}

.reia_popup {
  width: 100%;
  margin-bottom: 30px;
}

.reia_popup h2 {
  font-size: 1.3rem;
  float: left;
  width: 100%;
  display: block;
  border-bottom: #e6649a solid 2px;
  padding-bottom: 10px;
  background-image: url(../img/reia/1022_hm_h.svg);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: 35px 35px;
  padding-left: 40px;
}

.reia_popup img {
  width: 100%;
  margin-bottom: 30px;
  margin-top: 20px;
}



/* スマホ以上*/
@media screen and (min-width: 769px) and (max-width: 2000px) {
  .m_fashion_flex .inner {
    width: calc(23% - 10.66px);
  }

  .m_fashion_flex .inner img {
    height: 336px;
  }

  .reia_youtube .ry_inner {
    display: flex;
    width: 100%;
  }
}


/* スマホ（幅768px以下）では2列にする */
@media screen and (max-width: 768px) {
  .m_fashion_flex {
    justify-content: center;
  }

  .m_fashion_flex .inner {
    width: 47%;
    margin-bottom: 16px;
  }

  .m_fashion_flex .inner img {
    object-fit: cover;
    height: 336px;
  }

  /* 画像が奇数（3枚、5枚など）のとき、最後の1枚を中央寄せ */
  .m_fashion_flex .inner:last-child:nth-child(odd) {
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .m_fashion_flex .inner:last-child:nth-child(odd) img {
    width: 48%;
  }

  .reia_youtube .ry_inner {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
  }

  .reia_youtube .ry_inner iframe {
    margin-right: 1%;
    height: 200px;
    margin-bottom: 3%;
  }
}

.marriage_f_h3 {
  font-size: 0.9rem;
  text-align: center;
  font-weight: normal;
  line-height: 1.5rem;
}

.marriage_f_txt {
  width: 90%;
  margin: 0 auto;
}

.marriage_f_midashi {
  color: #ea609a;
  padding-bottom: 10px;
  border-bottom: double #ea609a;
  margin-bottom: 20px;
  margin-top: 10px;
  float: left;
  width: 100%;
}


p.seikon_interview {
  font-size: 1rem;
}

.seikoncounselor {
  border: 1px solid #ddd;
  padding: 20px
}

.seikoncounselor img {
  width: 70px;
  height: 100%;
}

.seikoncounselor-face img {
  width: 70px;
  height: 100%;
}

.counselorname {
  font-weight: bold;
  font-size: 20px;
  display: inline-block;
}

.t-seikon-couple-name {
  width: 100%;
  float: left;
}

.couple-w {
  width: 29%;
  margin-right: 2%;
  margin-left: 19%;
  float: left;
  padding-left: 2%;
  padding-top: 2%;
  border: solid 2px #ffa2c2;
  background-image: url(../img/woman.png);
  background-position: 90%;
  background-repeat: no-repeat;
  padding-bottom: 2%;
}

.couple-m {
  width: 29%;
  float: left;
  border: solid 2px #746bab;
  padding-left: 2%;
  padding-top: 2%;
  background-image: url(../img/man.png);
  background-position: 90%;
  background-repeat: no-repeat;
  padding-bottom: 2%;
}

.seminar_infoP p {
  margin-bottom: 1.5rem;
  line-height: 1.5rem;
  text-align: center;
}

.seminar_infoP img {
  margin-bottom: 1.5rem;
}


.seminar_infoTable {
  margin-bottom: 1.3rem;
  line-height: 1.3rem;
  margin: 20px auto;
}

.seminar_infoTable th {
  margin-bottom: 1.3rem;
  line-height: 1.3rem;
  padding: 10px 15px;
  border-bottom: 1px solid #000;
}

.seminar_infoTable td {
  margin-bottom: 1.3rem;
  line-height: 1.3rem;
  padding: 5px 10px;
  border-bottom: 1px solid #000;
}

@media all and (min-width: 1025px) {
  .l-contents {
    font-size: 15px;
    font-size: 0.9rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .l-contents {
    font-size: 15px;
    font-size: 0.8rem;
  }

}

@media all and (min-width: 415px) and (max-width: 767px) {
  .l-contents {
    font-size: 14px;
    padding-top: 20px;
  }

  .t-seikon-couple-name {
    width: 100%;
    float: left;
  }

  .couple-w {
    width: 100%;
    float: left;
    padding-left: 2%;
    padding-top: 2%;
    border: solid 2px #ffa2c2;
    background-image: url(../img/woman.png);
    background-position: 90%;
    background-repeat: no-repeat;
    padding-bottom: 2%;
  }

  .couple-m {
    width: 100%;
    float: left;
    border: solid 2px #746bab;
    padding-left: 2%;
    padding-top: 2%;
    background-image: url(../img/man.png);
    background-position: 90%;
    background-repeat: no-repeat;
    padding-bottom: 2%;
  }

  .p-content-wrap--seminar-info {
    margin: 0 20px;
  }

  .reia_youtube {
    margin: 3%;
    width: 94%;
  }

  .reia_instagram {
    margin: 3%;
    width: 94%;
  }

  .reia_popup {
    margin: 3%;
    width: 94%;
  }
}

@media all and (max-width: 414px) {
  .l-contents {
    padding-top: 20px;
  }

  .couple-w {
    width: 100%;
    float: left;
    padding-left: 2%;
    padding-top: 13%;
    border: solid 2px #ffa2c2;
    background-image: url(../img/woman.png);
    background-position: 90%;
    background-repeat: no-repeat;
    padding-bottom: 5%;
    margin-left: 0;
    margin-bottom: 1%;
  }

  .couple-m {
    width: 100%;
    float: left;
    border: solid 2px #746bab;
    padding-left: 2%;
    padding-top: 13%;
    background-image: url(../img/man.png);
    background-position: 90%;
    background-repeat: no-repeat;
    padding-bottom: 5%;
  }

  .p-content-wrap--seminar-info {
    margin: 0 15px;
  }

  .reia_youtube {
    margin: 3%;
    width: 94%;
  }

  .reia_instagram {
    margin: 3%;
    width: 94%;
  }
}

.l-page[data-page-id="index"] .l-contents {
  padding-top: 0;
}

@media all and (min-width: 768px) {
  .l-contents {
    padding-top: 160px;
  }

}

.l-info {
  background-color: #e6e6e6;
  border-top: #737373 solid 1px;
  color: #000;
  text-align: left;
  float: left;
  width: 100%;
}

.p-contents-body--lower {
  text-align: left;
}

/*スマホ版のページャーを調節します*/
@media all and (min-width: 320px) and (max-width: 767px) {
  .p-contents-body--lower {
    text-align: left;
    min-height: 100%;
    height: 100%;
    margin-bottom: 2rem;
  }

  .couple-w {
    width: 100%;
    float: left;
    padding-left: 2%;
    padding-top: 13%;
    border: solid 2px #ffa2c2;
    background-image: url(../img/woman.png);
    background-position: 90%;
    background-repeat: no-repeat;
    padding-bottom: 5%;
    margin-left: 0;
    margin-bottom: 1%;
  }

  .couple-m {
    width: 100%;
    float: left;
    border: solid 2px #746bab;
    padding-left: 2%;
    padding-top: 13%;
    background-image: url(../img/man.png);
    background-position: 90%;
    background-repeat: no-repeat;
    padding-bottom: 5%;
  }

  .reia_youtube {
    margin: 3%;
    width: 94%;
  }

  .reia_instagram {
    margin: 3%;
    width: 94%;
  }

  .reia_popup {
    margin: 3%;
    width: 94%;
  }
}

.p-contents-body--lower__in,
.p-contents-body--lower__in_tp {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  padding: 0px 0px;
}

.p-contents-body--lower__in02 {
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
  padding: 30px 20px;
}

@media all and (min-width: 768px) {
  .p-contents-body--lower__in {
    padding: 32px 0;
  }

  .p-contents-body--lower__in_tp {
    padding: 0;
  }

}

.l-gf .p-gf__in {
  max-width: 1024px;
  margin: 0 auto;
}

.l-gf .p-flex {
  margin: 0 auto;
}

.l-page {
  visibility: visible;
  width: 100%;
}

@media all and (max-width: 320px) {
  .l-page-sp {
    width: 320px;
  }
}

.l-page[data-page-id="page"],
.l-page[data-page-id="post"],
.l-page[data-page-id="reason"],
.l-page[data-page-id="couple"],
.l-page[data-page-id="course"],
.l-page[data-page-id="seminar_info"],
.l-page[data-page-id="profile"],
.l-page[data-page-id="media"],
.l-page[data-page-id="counseling"],
.l-page[data-page-id="request"],
.l-page[data-page-id="faq"],
.l-page[data-page-id="activity"],
.l-page[data-page-id="corporate"],
.l-page[data-page-id="information"],
.l-page[data-page-id="contact"],
.l-page[data-page-id="radio"],
.l-page[data-page-id="corporate-profile"],
.l-page[data-page-id="recruitnew"],
.l-page[data-page-id="tsccl"],
.l-page[data-page-id="privacyPolicy"],
.l-page[data-page-id="error"] {
  background-size: 750px auto;
}

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

  .l-page[data-page-id="page"],
  .l-page[data-page-id="post"],
  .l-page[data-page-id="reason"],
  .l-page[data-page-id="couple"],
  .l-page[data-page-id="course"],
  .l-page[data-page-id="seminar_info"],
  .l-page[data-page-id="profile"],
  .l-page[data-page-id="media"],
  .l-page[data-page-id="counseling"],
  .l-page[data-page-id="request"],
  .l-page[data-page-id="faq"],
  .l-page[data-page-id="activity"],
  .l-page[data-page-id="corporate"],
  .l-page[data-page-id="information"],
  .l-page[data-page-id="contact"],
  .l-page[data-page-id="radio"],
  .l-page[data-page-id="corporate-profile"],
  .l-page[data-page-id="recruitnew"],
  .l-page[data-page-id="tsccl"],
  .l-page[data-page-id="privacyPolicy"],
  .l-page[data-page-id="error"] {
    background-size: contain;
  }
}

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

  .l-page[data-page-id="index"],
  .l-page[data-page-id="page"],
  .l-page[data-page-id="reason"],
  .l-page[data-page-id="course"] {
    overflow: hidden;
  }
}

@media all and (min-width: 768px) {
  .l-page {
    min-width: 100%;
    visibility: visible;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .l-page {
    min-width: 768px;
  }
}

/*共通・大枠系end ******************************************************************************/

/*共通・その他 ******************************************************************************/

.p-content-wordpress img {
  max-width: 60%;
  height: auto;
  display: block;
  margin: 0 auto;
  padding-top: 1rem;
}

@media all and (min-width: 1024px) {
  .p-content-wordpress img {
    max-width: 90%;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wordpress img {
    max-width: 95%;
  }
}

@media all and (max-width: 415px) {
  .p-content-wordpress img {
    max-width: 100%;
    margin-left: 0rem;
  }
}

.p-content-wordpress .btn_link {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  padding: 10px 0;
  font-weight: 700;
  text-decoration: none;
  -webkit-transition: background-color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: background-color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  position: relative;
  background-color: #746bab;
  color: #fff;
  width: 100%;
}

@media all and (min-width: 1025px) {
  .p-content-wordpress .btn_link {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wordpress .btn_link {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wordpress .btn_link {
    font-size: 15px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wordpress .btn_link {
    font-size: 3.73333vw;
  }
}

@media all and (min-width: 768px) {
  .p-content-wordpress .btn_link {
    max-width: 320px;
  }
}

.p-content-wordpress .btn_link:hover {
  background-color: #746bab;
  color: #fff;
}

.p-content-wordpress .p-pagenation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 40px;
}

.p-content-wordpress .p-pagenation:nth-of-type(2) {
  margin-top: 20px;
  margin-bottom: 0;
}

.p-content-wordpress .p-pagenation .page-numbers {
  border: 1px solid #cecece;
  background-color: #fff;
  border-radius: 2px;
  display: block;
  padding: 3px 10px;
  margin: 0 5px;
  text-decoration: none;
  -webkit-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  color: #000;
}

@media all and (min-width: 1025px) {
  .p-content-wordpress .p-pagenation .page-numbers {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wordpress .p-pagenation .page-numbers {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wordpress .p-pagenation .page-numbers {
    font-size: 13px;
    font-family: Arial, Helvetica, sans-serif;
  }
}

/*スマホ版ページネーションのレイアウト、次のページや前のページは表示させないようにする*/
@media all and (max-width: 414px) {
  .p-content-wordpress .p-pagenation .page-numbers {
    font-size: 3.2vw;
    font-family: Arial, Helvetica, sans-serif;
    border: 1px solid #cecece;
    background-color: #fff;
    border-radius: 2px;
    display: block;
    padding: 6px 5px;
    margin: 0 3px;
    text-decoration: none;
    -webkit-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
    transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
    color: #000;
  }
}

.p-content-wordpress .p-pagenation .page-numbers:hover {
  color: #fff;
  background-color: #000;
  font-family: Arial, Helvetica, sans-serif;
}

.p-content-wordpress .p-pagenation .current {
  background-color: #000;
  font-family: Arial, Helvetica, sans-serif;
  color: #fff;
}

/*PC時には現在のページ、「次へ」「前へ」に戻ります*/
.p-content-wordpress .p-pagenation .page-numbers.current,
.p-content-wordpress .p-pagenation .page-numbers.prev,
.p-content-wordpress .p-pagenation .page-numbers.next {
  display: block;
}

.p-content-wordpress .p-pager {
  position: relative;
  text-align: center;
  max-width: 960px -200px;
}

.p-content-wordpress .p-pager a {
  color: #000;
  -webkit-transition: color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.p-content-wordpress .p-pager a:hover {
  color: #e6649a;
}

.p-content-wordpress .p-pager .prev-link {
  position: absolute;
  left: 0;
}

.p-content-wordpress .p-pager .next-link {
  position: absolute;
  right: 0;
}

.p-content-wordpress .p-pager:first-child {
  margin-bottom: 50px;
}

.p-content-wordpress .p-pager:last-child {
  margin-top: 80px;
}

.p-content-wordpress .c-entry-title {
  font-weight: bold;
  position: relative;
  padding: 1em 0;
}

@media all and (min-width: 1025px) {
  .p-content-wordpress .c-entry-title {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wordpress .c-entry-title {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

/*スマホ版横向き画面*/
@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wordpress .c-entry-title {
    font-size: 20px;
  }

  .p-content-wordpress .p-pagenation .page-numbers {
    display: none;
  }
}

@media all and (max-width: 414px) {
  .p-content-wordpress .c-entry-title {
    font-size: 4.8vw;
  }
}

.p-content-wordpress .c-entry-title::before,
.p-content-wordpress .c-entry-title::after {
  position: absolute;
  left: 0;
  content: "";
  width: 100%;
  height: 6px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.p-content-wordpress .c-entry-title::before {
  top: 0;
  border-top: 2px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.p-content-wordpress .c-entry-title::after {
  bottom: 0;
  border-top: 1px solid #ccc;
  border-bottom: 2px solid #ccc;
}

.p-content-wordpress .c-entry-date {
  text-align: right;
  margin-bottom: 20px;
}

@media all and (min-width: 1025px) {
  .p-content-wordpress .c-entry-date {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wordpress .c-entry-date {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wordpress .c-entry-date {
    font-size: 13px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wordpress .c-entry-date {
    font-size: 3.2vw;
  }
}

.p-content-wordpress .p-archive-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

@media all and (min-width: 768px) {
  .p-content-wordpress .p-archive-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.p-content-wordpress .p-archive-list__item {
  margin-bottom: 30px;
  margin-right: 0;
}

/*スマホページの成婚カップルインタビューを表示させる部分*/
@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wordpress .p-archive-list__item {
    width: 70%;
    margin: 1rem auto;
    padding-bottom: 1rem;
    height: 45%;
  }
}

@media all and (max-width: 414px) {
  .p-content-wordpress .p-archive-list__item {
    width: 90%;
    margin: 0 auto;
    padding-bottom: 1rem;
  }
}

.p-content-wordpress .p-archive-list__item a {
  color: #000;
  text-decoration: none;
  border-radius: 4px;
  background-color: #fff;
  padding: 15px;
  -webkit-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}

.p-content-wordpress .p-archive-list__item a:hover {
  -webkit-box-shadow: 0 0 10px rgba(230, 100, 154, 0.8);
  box-shadow: 0 0 10px rgba(230, 100, 154, 0.8);
}

.p-content-wordpress .p-archive-list__item a:hover .c-title {
  color: #e6649a;
}

.p-content-wordpress .p-archive-list__item a .c-thumb img {
  max-width: 100%;
  height: auto;
}

@media all and (min-width: 768px) {
  .p-content-wordpress .p-archive-list__item {
    width: 31%;
    margin: 0 0 30px 15px;
  }
}

@media all and (min-width: 1680px) {
  .p-content-wordpress .p-archive-list__item {
    width: 32%;
  }
}

.p-content-wordpress .p-archive-list__item a {
  display: block;
}

.p-content-wordpress .p-archive-list__item a .c-thumb {
  width: 100%;
  margin-bottom: 15px;
}

@media all and (min-width: 768px) {
  .p-content-wordpress .p-archive-list__item a .c-thumb {
    position: relative;
    overflow: hidden;
  }
}

@media all and (min-width: 1680px) {
  .p-content-wordpress .p-archive-list__item a .c-thumb {
    height: 240px;
  }
}

.p-content-wordpress .p-archive-list__item a .c-thumb img {
  width: 100%;
  height: auto;
}

@media all and (min-width: 1025px) {
  .p-content-wordpress .p-archive-list__item a .c-title {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wordpress .p-archive-list__item a .c-title {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wordpress .p-archive-list__item a .c-title {
    font-size: 14px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wordpress .p-archive-list__item a .c-title {
    font-size: 3.46667vw;
  }
}

.p-content-wordpress .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

@media all and (max-width: 414px) {
  .p-content-wordpress .youtube {
    position: relative;
    width: 100%;
    padding-top: 135%;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wordpress .youtube {
    position: relative;
    width: 100%;
    padding-top: 135%;
  }
}

.p-content-wordpress .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3D(0, 30px, 0);
    transform: translate3D(0, 30px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3D(0, 30px, 0);
    transform: translate3D(0, 30px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}

@-webkit-keyframes fadeInUpMobile {
  0% {
    opacity: 0;
    -webkit-transform: translate3D(0, 15px, 0);
    transform: translate3D(0, 15px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}

@keyframes fadeInUpMobile {
  0% {
    opacity: 0;
    -webkit-transform: translate3D(0, 15px, 0);
    transform: translate3D(0, 15px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3D(0, -20px, 0);
    transform: translate3D(0, -20px, 0);
  }
}

@keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3D(0, -20px, 0);
    transform: translate3D(0, -20px, 0);
  }
}

@-webkit-keyframes fadeOutUpMobile {
  0% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3D(0, -10px, 0);
    transform: translate3D(0, -10px, 0);
  }
}

@keyframes fadeOutUpMobile {
  0% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3D(0, -10px, 0);
    transform: translate3D(0, -10px, 0);
  }
}

.c-img-wide {
  width: 100%;
  height: auto;
  margin: -0.25rem 0rem 1rem 0rem;
}

@media all and (min-width: 800px) and (max-width: 900px) {
  .c-img-wide {
    width: 90%;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .c-img-wide {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }

  .prm .c-img-wide {
    width: 84px;
    height: auto;
    margin: -0.5rem auto;
  }

  .active .c-img-wide {
    width: 285px;
    height: auto;
    margin: -0.5rem auto;
  }
}

@media all and (max-width: 414px) {
  .c-img-wide {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }

  .prm .c-img-wide {
    width: 75px;
    height: auto;
    margin: -0.5rem auto;
  }

  .active .c-img-wide {
    width: 207px;
    height: auto;
    margin: -0.5rem auto;
  }
}

.c-thumb .c-img-wide {
  width: 80%;
  height: auto;
  margin: 0;
  padding: 2rem 0;
}


@media all and (max-width: 414px) {
  .c-thumb .c-img-wide {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 5%;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .c-thumb .c-img-wide {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 5%;
  }
}

.c-img-wide_b {
  width: 50%;
  height: auto;
  float: left;
  margin: 0rem 0.5rem 2rem 0rem;
}

.c-img-wide_c {
  width: 35%;
  height: auto;
  float: none;
  margin: 0rem 0.5rem 2rem 0rem;
}

.c-split-str {
  display: inline-block;
}

.c-color--pink {
  color: #e6649a;
}

.ft_midashi {
  color: #000;
  border-bottom: 1px solid #000;
  text-align: left;
  font-weight: normal;
  font-size: 0.8rem;
  margin-bottom: 1rem;
}

.c-date {
  color: #e6649a;
}

.c-text-link {
  text-decoration: none;
  color: #000;
  -webkit-transition: color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  text-align: left;
}

.p-local-navi__item {
  text-align: left;
  margin-left: 0;
  margin-right: 20px;
  margin-bottom: 0.4rem;
  font-size: 0.8rem;
  white-space: nowrap;
}

.c-text-link:hover {
  color: #666;
  text-align: left;
}

.c-button {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  padding: 10px 0;
  font-weight: 700;
  border-radius: 6px;
  text-decoration: none;
  -webkit-transition: background-color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: background-color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  width: 270px;
  color: #fff;
  position: relative;
}

@media all and (min-width: 1025px) {
  .c-button {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .c-button {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .c-button {
    font-size: 15px;
  }
}

@media all and (max-width: 414px) {
  .c-button {
    font-size: 3.73333vw;
  }
}

.c-button .icon {
  font-size: 16px;
  font-size: 1rem;
  display: inline-block;
  vertical-align: middle;
  position: absolute;
  width: 10px;
  height: 10px;
  top: 50%;
  right: 20px;
  margin-top: -10px;
  line-height: 1;
  padding-top: 2px;
}

.c-button--pink {
  background-color: #ffe200;
  /*purple:#493b83 pink:#e6649a green:#0C8C73 yellow:#ffe200*/
  color: #000;
  width: 100%;
}

@media all and (min-width: 1025px) {
  .c-button--pink {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .c-button--pink {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .c-button--pink {
    font-size: 15px;
  }
}

@media all and (max-width: 414px) {
  .c-button--pink {
    font-size: 3.73333vw;
  }
}

@media all and (min-width: 768px) {
  .c-button--pink {
    width: 320px;
  }
}

.c-button--pink:hover {
  background-color: #fff399;
}

/*pink:#ed90b7*/
.c-button--black {
  background-color: #000;
  padding: 7px 0;
  width: 240px;
}

.c-button--black:hover {
  background-color: #4d4d4d;
}

.c-toggle {
  display: block;
  width: 100%;
  height: 20px;
  position: relative;
}

.c-trigger,
.c-trigger span {
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.c-trigger {
  position: absolute;
  width: 40%;
  height: 20px;
  top: 0;
  left: 0;
  z-index: 9999;
  margin: 0 auto;
  top: 140%;
  margin-left: 15%;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .c-trigger {
    top: 100%;
  }
}

.c-trigger span {
  position: absolute;
  width: 75%;
  height: 3px;
  background-color: #000;
  border-radius: 4px;
}

.c-trigger span:nth-of-type(1) {
  top: 0;
}

.c-trigger span:nth-of-type(2) {
  top: 8px;
}

.c-trigger span:nth-of-type(2)::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 3px;
  background-color: #000;
  border-radius: 4px;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.c-trigger span:nth-of-type(3) {
  bottom: 0;
}

.c-trigger.active {
  background-color: #b8b2d6;
  bottom: 0;
  left: 0;
  z-index: 2001;
}

.c-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(8px) scale(0);
  transform: translateY(8px) scale(0);
}

.c-trigger.active span:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.c-trigger.active span:nth-of-type(2)::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.c-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-8px) scale(0);
  transform: translateY(-8px) scale(0);
}

.c-triangle {
  position: absolute;
  padding-top: 0.7rem;
  padding-left: 0.5rem;
  z-index: 1;
  text-align: center;
  line-height: 1;
  color: #000;
  font-weight: bold;
  top: 0;
  left: 0;
  font-size: 1.2rem;
}

@media all and (min-width: 768px) {
  .c-triangle {
    font-size: 1.2rem;
  }
}

.c-triangle::before {
  content: "";
  display: block;
  width: 50px;
  width: 50px;
  position: absolute;
  top: 2px;
  left: 2px;
  border-top: 50px solid #c1ad6c;
  border-right: 50px solid #c1ad6c;
  z-index: -1;
  border-radius: 0 40px 40px 0;
}

@media all and (min-width: 768px) {
  .c-triangle::before {
    width: 7px;
    border-top: 42px solid #c1ad6c;
    border-right: 42px solid #c1ad6c;
  }
}

.c-movie {
  max-width: 960px;
  margin: 0 auto;
}

.c-movie__in {
  position: relative;
  padding-bottom: 56.25%;
  /*アスペクト比 16:9の場合の縦幅*/
  height: 0;
  overflow: hidden;
  margin: 0 auto;
}

.c-movie__in iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.omotesandohonten {
  display: flex;
  text-align: left;
}

.omotesandohonten .inner {
  width: 33.33333%;
  margin-right: 3%;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .omotesandohonten .inner {
    width: 30%;
  }

  .omotesandohonten .inner img {
    width: 98%;
  }
}

.omotesandohonten .inner:last-child {
  width: 33.33333%;
  margin-right: 0;
}

.omotesandohonten h5 {
  font-size: 12px;
  color: #ff7bac;
  margin: 20px 0;
}

.omotesandohonten p {
  font-size: 0.7rem;
  padding-bottom: 1rem;
}

@media all and (max-width: 414px) {
  .omotesandohonten {
    display: block;
    text-align: left;
  }

  .omotesandohonten .inner {
    width: 100%;
  }

  .omotesandohonten .inner img {
    width: 100%;
  }

  .omotesandohonten .inner:last-child {
    width: 100%;
  }

  .omotesandohonten h5 {
    font-size: 12px;
    color: #ff7bac;
    margin: 20px 0;
  }

  .omotesandohonten p {
    font-size: 0.7rem;
    padding-bottom: 1rem;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .omotesandohonten {
    display: block;
    text-align: left;
  }

  .omotesandohonten .inner {
    width: 100%;
  }

  .omotesandohonten .inner img {
    width: 90%;
    display: block;
  }

  .omotesandohonten .inner:last-child {
    width: 100%;
  }

  .omotesandohonten h5 {
    font-size: 12px;
    color: #ff7bac;
    margin: 20px 0;
  }

  .omotesandohonten p {
    font-size: 0.7rem;
    padding-bottom: 1rem;
  }
}

.c-gmap {
  position: relative;
  width: 100%;
  height: 510px;
  overflow: hidden;
}

.c-gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 510px !important;
}

#p-gmap {
  position: relative;
  /*
  padding-bottom: 56.25%;
  padding-top: 30px;
  */
  height: 400px;
  overflow: hidden;
}

@media all and (min-width: 768px) {
  #p-gmap {
    height: 600px;
  }
}

#p-gmap iframe,
#p-gmap object,
#p-gmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-toTop {
  text-align: center;
  padding: 10px;
  line-height: 1;
  float: left;
  color: #000;
  text-decoration: none;
  background-image: url(../img/common/__top_sideicon.png);
  width: 55px;
  height: 90px;
  text-indent: -999999px;
  list-style-type: none;
  background-repeat: no-repeat;
  border-radius: 4px;
  z-index: 2000;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  border-left: 1px solid #000;
  border-radius: 10px 0px 0px 10px;
  background-color: rgba(255, 255, 255, 0.4);
  background-position: center;
  background-size: 120%;
}

@media all and (min-width: 768px) {
  .c-toTop {
    bottom: 20px;
    right: 20px;
  }
}

.c-toTop .icon {
  margin-right: 0;
}

.p-flex {
  display: block;
}

@media all and (min-width: 768px) {
  .p-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    display: inline-block;
  }
}

.p-drawer {
  background-color: #b8b2d6;
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 0;
  z-index: 2000;
}

.p-drawer .p-drawer-navi {
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  list-style: none;
  margin: 0;
  padding: 0;
  height: 15%;
}

.p-drawer .p-drawer-navi__item {
  margin: 0;
  padding: 0 5px;
  position: relative;
  width: 30%;
  z-index: 99999;
  background-color: #b8b2d6;
}

.p-drawer .p-drawer-navi__item.request {
  margin: 0;
  padding: 5px 5px;
  position: relative;
  background-image: url(../img/common/sp_request.png);
  background-repeat: no-repeat;
  background-position: center 30%;
  width: 22%;
}

.p-drawer .p-drawer-navi__item.counseling {
  margin: 0;
  padding: 5px 5px;
  position: relative;
  background-image: url(../img/common/sp_counseling.png);
  background-repeat: no-repeat;
  background-position: center 30%;
  width: 39%;
  background-color: #e8003e;
}

/*スマホでのホームボタンの表示*/
.p-drawer .p-drawer-navi__item.homebtn {
  margin: 0;
  padding: 5px 5px;
  position: relative;
  background-image: url(../img/common/sp_home.png);
  background-repeat: no-repeat;
  background-position: center 30%;
  width: 31%;
}

.p-drawer .p-drawer-navi__item .menutxt {
  float: left;
  width: 100%;
  padding-top: 27%;
  font-size: 0.8rem;
  font-weight: 600;
  line-height: 0.9rem;
  padding-top: 1.7rem;
  white-space: nowrap;
}

.p-drawer .p-drawer-navi__item .c-toggle {
  margin: 0 auto;
}

.p-drawer .p-drawer-navi__item a {
  color: #000;
  text-decoration: none;
  height: 100%;
  /* font-size: 12px; */
  font-size: 0.8rem;
  text-align: center;
  padding: 40px 0 0 1px;
  display: inline-block;
  font-weight: 600;
  /* border-left: 1px solid rgba(255, 255, 255, 0.3); */
  /*一旦ボーダー非表示*/
  width: 100%;
  line-height: 1.2rem;
}

.p-drawer .p-drawer-navi__item a .icon {
  display: block;
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: 0.2em;
}

.p-drawer .p-drawer-fadeIn {
  background: #fffafa;
  text-align: left;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9998;
  color: #000;
  overflow-y: scroll;
}

/*
@media all and (min-width: 320px) and (max-width: 453px) {
  .p-drawer .p-drawer-fadeIn {
    height: 86vh !important;
  }
}
*/
.p-drawer .p-drawer-fadeIn__in .p-local-navi {
  margin-top: 30px;
  opacity: 0;
  -webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
}

.p-drawer .p-drawer-fadeIn__in .p-local-navi:first-child {
  margin-bottom: 0;
}

.p-drawer .p-drawer-fadeIn__in .p-local-navi:nth-of-type(3) {
  margin-bottom: 30px;
}

.p-drawer .p-drawer-fadeIn__in .p-local-navi__category {
  font-weight: bold;
  border-bottom: 1px dotted rgba(255, 255, 255, 0.5);
  padding-bottom: 5px;
  margin-bottom: 5px;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-drawer .p-drawer-fadeIn__in .p-local-navi__category {
    font-size: 15px;
  }
}

@media all and (max-width: 414px) {
  .p-drawer .p-drawer-fadeIn__in .p-local-navi__category {
    font-size: 3.73333vw;
  }
}

.p-drawer .p-drawer-fadeIn__in .p-local-navi__item {
  margin: 0;
  padding: 10px 0;
}

.p-drawer .p-drawer-fadeIn__in .p-local-navi__item .c-text-link {
  color: #000;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-drawer .p-drawer-fadeIn__in .p-local-navi__item .c-text-link {
    font-size: 14px;
  }
}

@media all and (max-width: 414px) {
  .p-drawer .p-drawer-fadeIn__in .p-local-navi__item .c-text-link {
    font-size: 3.46667vw;
  }
}

.p-drawer .p-drawer-fadeIn .c-site-logo {
  opacity: 0;
  position: relative;
  top: 10px;
  display: block;
  max-width: 76px;
  margin: 0 auto;
  -webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transform: translateY(-20px);
  transform: translateY(-20px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
}

.p-drawer .p-phone-link__head {
  opacity: 0;
  -webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
}

.p-drawer .p-phone-link__head a {
  display: block;
  text-decoration: none;
}

.p-drawer .p-phone-link__head .p-phone-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  background-color: #fff;
  text-decoration: none;
  padding: 10px;
  width: 100%;
}

.p-drawer .p-phone-link__head .icon-phone {
  color: #e6649a;
  margin-right: 0.5em;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-drawer .p-phone-link__head .icon-phone {
    font-size: 24px;
  }
}

@media all and (max-width: 414px) {
  .p-drawer .p-phone-link__head .icon-phone {
    font-size: 5.86667vw;
  }
}

.p-drawer .p-phone-link__head .p-phone-link__body {
  color: #e6649a;
  display: block;
  text-decoration: none;
  line-height: 1.2;
}

.p-drawer .p-phone-link__head .p-phone-link__body--text {
  font-weight: bold;
  display: block;
  letter-spacing: 0.1em;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-drawer .p-phone-link__head .p-phone-link__body--text {
    font-size: 14px;
  }
}

@media all and (max-width: 414px) {
  .p-drawer .p-phone-link__head .p-phone-link__body--text {
    font-size: 3.46667vw;
  }
}

.p-drawer .p-phone-link__head .p-phone-link__body--number {
  font-weight: bold;
  display: block;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-drawer .p-phone-link__head .p-phone-link__body--number {
    font-size: 26px;
  }
}

@media all and (max-width: 414px) {
  .p-drawer .p-phone-link__head .p-phone-link__body--number {
    font-size: 6.4vw;
  }
}

@media all and (min-width: 768px) {
  .p-drawer {
    display: none;
  }
}

@media all and (max-width: 767px) {
  .p-header {
    display: none;
  }
}

.p-header.header__lower--clone {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translateY(-130%);
  transform: translateY(-130%);
}

.p-header.js-show {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-header.js-show {
    width: auto;
    display: inline-block;
  }
}

.p-header__lower {
  background-color: #fff;
  border-top: 8px solid #575254;
  color: #000;
  min-width: 100%;
}

.p-header__lower__in {
  width: 100%;
  max-width: 1024px;
  min-width: 1024px;
  margin: 0 auto;
  position: relative;
  display: block;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media all and (min-width: 1680px) {
  .p-header__lower__in {
    max-width: 1420px;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-header__lower__in {
    width: 100%;
    min-width: 768px;
  }
}

.s_prof {
  width: 40%;
  float: left;
  padding-bottom: 15px;
}

.s_prof2 {
  background-image: url(../img/header_footer/80per_banner.png);
  background-repeat: no-repeat;
  background-size: 5rem;
  width: 40%;
  height: 6rem;
  float: right;
  margin-top: -1em;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .s_prof2 {
    background-position: right;
  }
}

@media all and (min-width: 2201px) {
  .s_prof2 {
    width: 30%;
  }
}

.p-header__lower__in .c-site-logo {
  width: 4.8rem;
  position: absolute;
  top: 7px;
  left: 10px;
}

.p-header__lower__in .c-headline {
  color: #000;
  font-size: 0.7rem;
  letter-spacing: 0.07rem;
  margin: 0 auto 0 0;
  padding: 0.5rem 5rem 0rem 6.8rem;
  width: 29rem;
  float: left;
  line-height: 1;
  font-family: didot;
}

.p-header__lower__in .c-headline2 {
  color: #000;
  font-size: 12px;
  font-size: 0.95rem;
  letter-spacing: 0.03rem;
  margin: 0 auto 0 0;
  padding: 7px 0 5px 106px;
  width: 350px;
  float: left;
  line-height: 1;
}

.p-header__lower__in .c-headline_logo {
  color: #000;
  font-size: 2.95rem;
  letter-spacing: -0.1em;
  margin: 0 auto 0 0;
  padding: 1.5rem 0rem 0rem 6.5rem;
  width: 30rem;
  line-height: 1;
  font-family: "didot", "Didot LT STD", "Bodoni MT", "Bodoni 72";
}

.p-header__lower__in .p-header__contents {
  display: block;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  padding: 0 !important;
  float: right;
  width: 100%;
  max-width: 16rem;
}

@media all and (min-width: 2201px) {
  .p-header__lower__in .p-header__contents {
    width: 20.5%;
  }
}

.p-header__lower__in .p-header__contents .c-phone {
  letter-spacing: 0;
  padding: 5px 0;
  margin: 0 10px 0 0;
  color: #e6649a;
  font-weight: bold;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 12px;
  font-size: 0.75rem;
}

.p-header__lower__in .p-header__contents .c-phone .icon {
  font-size: 20px;
  font-size: 1.25rem;
}

.p-header__lower__in .p-header__contents .c-phone--number {
  margin-left: 5px;
  font-size: 20px;
  font-size: 1.25rem;
}

.p-header__lower__in .p-header__contents .p-header__menu {
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  list-style: none;
}

.p-header__lower__in .p-header__contents .p-header__menu .c-header__menu {
  display: block;
  white-space: nowrap;
  background-color: #fff;
  border-radius: 0 0 4px 4px;
  font-size: 12px;
  font-size: 0.75rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  color: #000;
  margin: 0 0 0 0.5em;
  text-decoration: none;
  font-weight: bold;
  text-align: center;
  padding: 3px 5px;
  letter-spacing: 0.01rem;
  -webkit-transition: all 0.2s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: all 0.2s cubic-bezier(0.55, 0.055, 0.675, 0.19);

}

.p-header__lower__in .p-header__contents .p-header__menu .c-header__menu:hover {
  padding-top: 8px;
  color: #575254;
  background-color: rgba(116, 107, 171, 0.1);
  border: #ff7bac solid 0.05rem;
}

.p-header__lower__in .p-header__contents .p-header__menu .c-header__menu--counseling {
  margin-top: 7px;
  border-radius: 4px;
  font-size: 14px;
  font-size: 0.875rem;
  color: #421c24;
  letter-spacing: 0;
  background-image: -webkit-gradient(linear,
      left bottom,
      left top,
      from(#c2b267),
      to(#fbfad9));
  background-image: linear-gradient(0deg, #c2b267, #fbfad9);
}

.p-header__lower__in .p-header__contents .p-header__menu .c-header__menu--counseling .icon {
  margin-right: 3px;
}

.p-header__lower__in .p-header__contents .p-header__menu .c-header__menu--counseling:hover {
  padding-top: 3px;
  background-image: -webkit-gradient(linear,
      left bottom,
      left top,
      from(#e6da8d),
      to(#fefef2));
  background-image: linear-gradient(0deg, #e6da8d, #fefef2);
}

/* .p-header__lower .p-global-navi__in .c-global-navi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: auto;
  list-style: none;
} */
.p-header__lower .p-global-navi__in .c-global-navi__item {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  border-right: 1px dotted #ffffff;
}

.p-header__lower .p-global-navi__in .c-global-navi__item:first-child {
  border-left: 1px dotted #ffffff;
}

.p-header__lower .p-global-navi__in .c-global-navi__item .c-button {
  color: #000;
  text-decoration: none;
  font-weight: bold;
  text-align: center;
  display: block;
  padding: 10px 5px;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.p-header__lower .p-global-navi__in .c-global-navi__item .c-button:hover {
  color: #c1ad6c;
  background-color: #fff;
  border-bottom: 0;
}

.p-contents-header--index .p-contents-header__in {
  position: relative;
  margin: 0 auto;
  padding: 0;
}

.dropdown:hover>.dropdown-menu {
  display: block;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 12rem;
  padding: 0.5rem 1rem;
  margin: 0 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: rgba(240, 240, 240, 0.01);
  background-clip: padding-box;
  border: 1px solid rgba(193, 173, 98, 0.4);
  border-radius: 0;
  width: auto;
  white-space: nowrap;
  transform: translateX(-50%);
}

@media all and (min-width: 768px) and (max-width: 1240px) {
  .dropdown-menue-last {
    white-space: inherit;
    min-width: 7rem;
  }
}

.dropdown-menu a:hover {
  color: rgba(193, 173, 98, 0.4);
}

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0 solid;
  border-right: 0 solid transparent;
  border-bottom: 0;
  border-left: 0 solid transparent;
}

.p-contents-title_purline {
  border-top: 7px #746bab solid;
  width: 100%;
  margin-top: 12px;
  margin-bottom: 0px;
}

@media all and (min-width: 1025px) {
  .p-contents-header--index .p-contents-header__in {
    position: relative;
    min-width: 1024px;
    max-width: 1024px;
  }
}

.p-contents-header--index .p-contents-header__menu {
  display: none;
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-contents-header__menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    list-style: none;
    position: absolute;
    top: 0;
    right: 20px;
    margin: 0;
    font-size: 12px;
    font-size: 0.75rem;
  }

  .p-contents-header--index .p-contents-header__menu .c-button-header__menu {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: block;
    background-color: #e6649a;
    border-radius: 0 0 4px 4px;
    width: 100px;
    color: #fff;
    margin: 0;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
    padding: 3px 0;
    -webkit-transition: padding-top 0.2s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    transition: padding-top 0.2s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  .p-contents-header--index .p-contents-header__menu .c-button-header__menu:hover {
    padding-top: 5px;
  }

  .p-contents-header--index .p-contents-header__menu li:first-child .c-button-header__menu {
    margin-right: 15px;
  }
}

.p-contents-header--index .p-tell-me {
  line-height: 1.3;
  color: #e6649a;
  font-weight: bold;
  display: none;
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-tell-me {
    position: absolute;
    display: block;
    top: 30px;
    right: 20px;
  }
}

.p-contents-header--index .p-tell-me .c-phone-number {
  display: block;
  font-size: 30px;
  font-size: 1.875rem;
}

.p-global-navi {
  background: #fff;
  border-top: #808080 1px solid;
  width: 100%;
  display: block;
  float: left;
}

@media all and (max-width: 767px) {
  .p-global-navi {
    display: none;
  }
}

.p-global-navi.clone-navi {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}

.p-global-navi.js-show {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.p-global-navi .p-global-navi__in {
  margin: 0 auto;
  border-bottom: #808080 1px solid;
}

.p-global-navi .c-global-navi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  list-style: none;
  margin: 0 auto;
  padding: 0;
  max-width: 1024px;
}

@media all and (min-width: 1680px) {
  .p-global-navi .c-global-navi {
    max-width: 1420px;
  }
}

.p-global-navi .c-global-navi__item {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  border-right: 1px dotted #ffffff;
}

.p-global-navi .c-global-navi__item:first-child {
  border-left: 1px dotted #ffffff;
}

.p-global-navi .c-button {
  color: #000;
  text-decoration: none;
  font-weight: bold;
  text-align: center;
  display: block;
  padding: 10px;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  border-radius: 0;
  width: auto;
}

.p-global-navi .c-button:hover {
  color: #c1ad6c;
  background-color: #fff;
  border-bottom: 0;
}

.p-info {
  color: #000;
  overflow: hidden;
}

@media all and (max-width: 414px) {
  .p-info {
    color: #000;
    overflow: hidden;
    height: auto;
    min-height: 700px;
  }

  .prm .c-site-logo {
    margin: 0;
    float: left;
  }

  .p-info .c-site-logo {
    display: block;
    margin: 0 20px;
    width: 59px;
  }

  .prm .c-headline_logo {
    font-size: 2.2rem !important;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-info {
    color: #000;
    overflow: hidden;
    height: auto;
  }

  .prm .c-site-logo {
    margin: 0;
    float: left;
  }

  .p-info .c-site-logo {
    display: block;
    margin: 0 20px;
    width: 78px;
  }

  .prm .c-headline_logo {
    color: #000;
    font-size: 2.75rem;
    letter-spacing: 0;
    margin: 0 auto 0 0;
    padding: 5px 0 5px 95px;
    line-height: 1;
    width: 25rem;
  }
}

@media all and (max-width: 768px) {
  .p-info__in {
    padding: 40px 10px;
    background-color: #e6e6e6;
    display: inline-block;
    margin-left: 1rem;
  }
}

@media all and (max-width: 415px) {
  .p-info__in {
    display: inline-block;
    max-width: 100vw;
    width: 100%;
    margin-left: 0;
  }
}

@media all and (min-width: 768px) {
  .p-info__in {
    padding: 20px 20px;
    float: left;
    background-color: #e6e6e6;
    width: 100%;
    margin-left: 1.5rem;
    display: block;
  }

  .footcontinner {
    max-width: 1050px;
    margin: 0 auto;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-info__in {
    margin-left: 0rem;
    min-width: 768px;
  }
}

@media all and (min-width: 768px) {
  .p-info {
    min-width: 1024px;
    width: 100%;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-info {
    min-width: 768px;
    width: 100%;
  }
}

.p-info .p-flex {
  max-width: 1024px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 0;
}

.p-info .p-block {
  /* max-width: 1100px; */
  /* margin: 0 auto; */
  display: -webkit-box;
  display: -ms-flexbox;
  display: block;
  margin-top: 0;
  margin: 0 calc(50% - 47vw);
  width: 100%;
}

@media all and (min-width: 768px) and (max-width: 876px) {
  .p-info .p-block {
    margin: 0 calc(50% - 50%);
    display: block;
  }
}

@media all and (max-width: 888px) {
  .p-info .p-block {
    margin: 0 calc(50% - 50%);
  }
}


@media all and (min-width: 1024px) {
  .p-info .p-block {
    margin: 0 calc(50% - 49vw);
  }
}


.p-info .p-flex__item {
  font-weight: normal;
  padding: 20px 20px 0 20px;
  margin-top: 3rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  border-left: none;
  position: relative;
  width: 31%;
  font-size: 0.8rem;
}

.p-info .p-flex__item:first-of-type {
  margin-top: -1rem;
  width: 20%;
}

@media all and (max-width: 415px) {
  .p-info .p-flex__item {
    font-weight: normal;
    padding: 20px 20px 0 20px;
    margin-top: 3rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    border-left: none;
    position: relative;
    width: 100%;
    font-size: 0.8rem;
  }

  .p-info .p-flex__item:first-of-type {
    margin-top: -1rem;
    width: 90%;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-info .p-flex__item {
    font-weight: normal;
    padding: 20px 20px 0 20px;
    margin-top: 3rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    border-left: none;
    position: relative;
    width: 90%;
    font-size: 0.8rem;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-info .p-flex__item:first-of-type {
    margin-top: -1rem;
    width: 90%;
  }

  .footer_b a {
    display: block;
    text-align: right;
    max-width: 20%;
    float: left;
    margin-right: 1rem;
  }
}

@media all and (min-width: 1183px) {
  .footer_b a {
    max-width: 7% !important;
  }
}

.p-info .p-flex__item:nth-of-type(2),
.p-info .p-flex__item:nth-of-type(3) {
  margin-top: -1rem;
}

@media all and (min-width: 768px) and (max-width: 1024px) {

  .p-info .p-flex__item:nth-of-type(2),
  .p-info .p-flex__item:nth-of-type(3) {
    margin-left: 2rem;
  }

  .p-info .p-flex__item:nth-of-type(2),
  .p-info .p-flex__item:nth-of-type(3) {
    margin-left: 2rem;
  }

  .p-logo--cms {
    width: 100%;
    float: left;
  }
}

@media all and (min-width: 768px) {
  .p-info .p-flex__item {
    padding: 0 20px 20px 0;
    max-width: 443px;
    float: left;
  }

  .p-info .p-flex__item:first-child {
    border-left: none;
    width: 33%;
    margin-left: 2rem;
  }

  .cmslogo {
    width: 26%;
    float: right;
  }

  .p-logo--cms .c-logo {
    width: 72%;
    float: left;
  }

  .p-logo--cms .c-logo img {
    width: 50%;
  }

  .p-logo--cms span {
    text-align: left;
    float: right;
    font-size: 0.8rem;
  }

  .footer_b {
    width: 100%;
    text-align: right;
    float: right;
    padding-left: 1rem;
    line-height: 1.5rem;
  }

  .footer_b2 {
    width: 100%;
    text-align: right;
    float: right;
    padding-left: 1rem;
    line-height: 1.5rem;
  }

  .footer_b a {
    display: block;
    float: right;
    text-align: right;
    margin-right: 2rem;
    max-width: 10%;
  }

  .footer_b img {
    margin: 0rem 0.5rem;
    vertical-align: bottom;
    width: calc(20% / 3);
  }
}

@media all and (min-width: 1024px) {
  .p-info .p-flex__item:first-child {
    width: 29%;
  }
}

@media all and (min-width: 2200px) {
  .p-info .p-flex__item:first-child {
    width: 22%;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .footer_b {
    width: 90%;
    text-align: left;
    margin-bottom: 20px;
    float: left;
    padding-left: 20px;
  }

  .footer_b2 {
    width: 90%;
    text-align: left;
    margin-bottom: 82px;
    float: left;
    padding-left: 20px;
  }

  .footer_b img {
    margin: 0rem 0.5rem;
    width: calc(83% / 3);
    vertical-align: bottom;
  }

  .footer_b span,
  .footer_b2 span {
    font-weight: normal;
    font-size: 0.8rem;
  }

  .order1 {
    order: 1;
  }

  .order2 {
    order: 2;
  }

  .order3 {
    order: 3;
  }

  .p-gf {
    font-size: 13px;
    float: left;
    background-color: #575254;
    width: 100%;
  }

  .p-gf .c-copyright {
    font-size: 12px;
    padding: 5px;
  }
}

@media all and (max-width: 415px) {
  .footer_b {
    width: 90%;
    text-align: left;
    float: left;
    padding-left: 20px;
  }

  .footer_b2 {
    width: 90%;
    text-align: left;
    float: left;
    margin-bottom: 80px;
    padding-left: 20px;
  }

  .footer_b a {
    display: block;
    float: left;
    text-align: right;
    width: 30%;
  }

  .footer_b img {
    margin: 0rem 0.5rem;
    width: calc(79% /3);
    vertical-align: bottom;
  }

  .footer_b span,
  .footer_b2 span {
    font-size: 0.8rem;
    font-weight: normal;
  }

  .p-gf {
    font-size: 13px;
    float: left;
    width: 100%;
  }

  .p-gf .c-copyright {
    font-size: 12px;
    padding: 5px;
  }
}

.p-info .c-site-logo {
  display: block;
  margin: 0 20px;
  width: 78px;
}

.prm {
  width: 100%;
  float: left;
  margin-bottom: 20px;
}

.prm .c-headline {
  color: #000;
  font-size: 12px;
  font-size: 0.75rem;
  letter-spacing: 0;
  margin: 0 auto 0 0;
  padding: 5px 0 5px 20px;
  width: 300px;
  float: left;
  line-height: 1;
  text-align: left;
}

@media all and (max-width: 414px) {
  .prm .c-headline {
    float: none;
    font-size: 0.8rem;
    text-indent: 1rem;
  }
}

.prm .c-headline_logo {
  color: #000;
  font-size: 12px;
  font-size: 2.75rem;
  letter-spacing: 0;
  margin: 0 auto 0 0;
  padding: 5px 0 5px 95px;
  line-height: 1;
  width: 25rem;
}

.prm .c-site-logo {
  margin: 0;
  float: left;
}

.prm .mrm_setsumei {
  color: #000;
  font-size: 12px;
  font-size: 0.95rem;
  letter-spacing: 0;
  margin: 0 auto 0 0;
  padding: 5px 0 5px 20px;
  width: 300px;
  float: left;
  line-height: 1;
  text-align: left;
}

@media all and (max-width: 414px) {
  .prm .mrm_setsumei {
    float: none;
    font-size: 0.8rem;
    text-indent: 1rem;
  }
}

.p-info .p-content__head {
  color: #000;
  border-bottom: solid 1px #000;
  font-weight: normal;
  text-align: left;
  font-size: 0.9em;
  margin: 2em 0em;
}

.p-info .c-address {
  font-size: 0.8em;
  margin-bottom: 0.8em;
}

.p-info__in .p-block .p-flex__item .c-address {
  font-size: 0.8em;
  margin-bottom: 0.8em;
}

.p-info .c-phone-number {
  line-height: 1;
  margin: 0;
}

.seikonritsu_attention {
  font-size: 10px;
  margin-top: 1rem;
}

@media all and (min-width: 1025px) {
  .p-info .c-phone-number {
    font-size: 16px;
    font-size: 1rem;
    font-weight: normal;
    text-align: left;
  }

  .sptap_number {
    display: none;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-info .c-phone-number {
    font-size: 1rem;
    margin-bottom: 1em;
  }

  .sptap_number {
    display: none;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-info .c-phone-number {
    font-size: 22px;
  }

  .p-info .c-phone-number a {
    font-size: 22px;
    color: #000;
  }

  .sptap_number {
    display: block;
    margin-top: 1rem;
  }
}

@media all and (max-width: 414px) {
  .p-info .c-phone-number {
    font-size: 5.33333vw;
  }

  .sptap_number {
    margin-top: 1rem;
  }
}

.p-info .p-reception-time {
  padding-left: 0;
  line-height: 1.6;
}

.p-info .p-reception-time .c-reception-time__head {
  padding-left: 0;
  border-bottom: solid 1px #000;
  text-align: left;
  font-weight: normal;
  font-size: 0.8rem;
  margin-top: 3em;
  margin-bottom: 1em;
}

.p-info .p-reception-time .c-reception-time__content {
  padding-left: 0;
  text-align: left;
  font-weight: normal;
}

.p-info .p-reception-time .c-reception-time__content {
  margin-left: 0;
  font-size: 0.8rem;
}

.p-info .p-social-link {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  list-style: none;
  margin-bottom: 20px;
}

.p-info .p-social-link li {
  margin: 0 10px;
}

.p-info .p-social-link li a {
  -webkit-transition: opacity 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: opacity 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.p-info .p-social-link li a:hover {
  opacity: 0.9;
}

@media all and (min-width: 1025px) {
  .p-gf {
    font-size: 14px;
    font-size: 0.875rem;
    background-color: #e6e6e6;
    width: 100%;
    float: left;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-gf {
    font-size: 14px;
    font-size: 0.875rem;
    float: left;
    width: 100%;
    min-width: 768px;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-gf {
    font-size: 13px;
  }

  .p-info .p-block {
    /* max-width: 1100px; */
    /* margin: 0 auto; */
    display: -webkit-box;
    display: -ms-flexbox;
    display: block;
    margin-top: 0;
    margin: 0;
    width: 100vw;
  }
}

@media all and (max-width: 414px) {
  .p-gf {
    font-size: 3.2vw;
  }
}

@media all and (max-width: 767px) {
  .p-gf__in {
    padding: 50px 20px;
  }
}

@media all and (min-width: 768px) {
  .p-gf__in {
    padding: 70px 20px;
    background-color: #e6e6e6;
    width: 100%;
    float: left;
  }
}

.p-gf .p-flex {
  margin: 0 auto;
}

@media all and (min-width: 768px) {
  .p-gf .p-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}

.p-gf .p-local-navi {
  margin-top: 40px;
}

.p-gf .p-local-navi:first-child {
  margin-top: 0;
}

@media all and (min-width: 768px) {
  .p-gf .p-local-navi {
    margin-top: 0;
    margin-left: 15%;
  }

  .p-gf .p-local-navi:first-child {
    margin-top: 0;
    margin-left: 0;
  }
}

.p-gf .p-local-navi__item {
  padding: 0;
  margin-left: 0;
  margin-top: 1em;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  font-weight: bold;
  line-height: 1;
  border-left: 1px solid #666666;
  padding-left: 1em;
  position: relative;
}

.p-gf .p-local-navi__item::before {
  content: "";
  display: block;
  position: absolute;
  width: 8px;
  height: 0;
  border-top: 1px solid #666666;
  top: 50%;
  left: 0;
}

.p-gf .p-logo--cms {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-gf .p-logo--cms .c-logo {
  display: block;
  text-decoration: none;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-gf .p-logo--cms .c-logo img {
  width: 85px;
  height: 92px;
}

.p-gf .p-logo--cms .c-logo span {
  margin-left: 1em;
}

@media all and (min-width: 1025px) {
  .p-gf .p-logo--cms .c-logo span {
    font-size: 11px;
    font-size: 0.6875rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-gf .p-logo--cms .c-logo span {
    font-size: 11px;
    font-size: 0.6875rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-gf .p-logo--cms .c-logo span {
    font-size: 11px;
  }
}

@media all and (max-width: 414px) {
  .p-gf .p-logo--cms .c-logo span {
    font-size: 2.66667vw;
  }
}

.p-gf .c-color--pink {
  color: #000;
  font-weight: bold;
  border-bottom: 1px dotted #000;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
}

.p-gf .c-copyright {
  background-color: #575254;
  color: #ffffff;
  margin: 0;
  text-align: center;
}

@media all and (min-width: 1025px) {
  .p-gf .c-copyright {
    font-size: 13px;
    font-size: 0.8125rem;
    width: 100%;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-gf .c-copyright {
    font-size: 12px;
    font-size: 0.75rem;
    width: 100%;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-gf .c-copyright {
    font-size: 12px;
    position: relative;
    bottom: 74px;
  }
}

@media all and (max-width: 414px) {
  .p-gf .c-copyright {
    font-size: 2.93333vw;
    position: relative;
    bottom: 71px;
  }
}

.p-contents-title__in {
  max-width: 1600px;
  padding: 0 20px;
  margin: 0 auto;
  text-align: center;
}

.p-contents-title__in .p-contents__head {
  line-height: 1.4;
  color: #e6649a;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

@media all and (min-width: 1025px) {
  .p-contents-title__in .p-contents__head {
    font-size: 30px;
    font-size: 1.5rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-contents-title__in .p-contents__head {
    font-size: 30px;
    font-size: 1.5rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-contents-title__in .p-contents__head {
    font-size: 1.2rem;
  }
}

@media all and (max-width: 414px) {
  .p-contents-title__in .p-contents__head {
    font-size: 6vw;
  }
}

.p-contents-title__in .p-contents__head span {
  padding-left: 0.5em;
  padding-right: 0.5em;
}

.p-contents-title__in .p-contents__head2 span {
  padding: 1rem 0.5rem;
  background-image: url(../img/common/phone_mark.png);
  background-repeat: no-repeat;
  background-size: 40px;
  background-position: bottom 0.7rem right 0.5rem;
  width: 55%;
  font-weight: normal;
  font-size: 1.26rem;
  background-position: right;
  display: inline-block;
  max-width: 385px;
}

.p-contents-title__in .p-contents__head+.c-lead {
  text-align: center;
  width: 100%;
  position: relative;
  margin: 0 auto;
  bottom: 1rem;
}

.p-contents-title__in .p-contents__head+.c-lead a {
  text-decoration: none;
  font-weight: 600;
  color: #e6649a;
  -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.p-contents-title__in .p-contents__head+.c-lead a:hover {
  opacity: 0.7;
}

.p-contents_hr_in_tp {
  border-top: #c1ad62 solid 8px;
  width: auto;
  margin: auto 0;
  height: 8px;
  position: relative;
  top: -16px;
  padding: 25px 0;
  text-indent: -99999px;
  color: #fff;
}

.p-contents_hr_in_tp .c-img-wide {
  width: 110%;
}

/*縦向きスマホサイズ対応*/
@media all and (max-width: 414px) {
  .p-contents-title__in .p-contents__head span {
    padding-left: 0.5em;
    padding-right: 0.5em;
  }

  .p-contents-title__in .p-contents__head2 span {
    text-align: center;
    padding: 0rem;
    background-image: url(../img/common/phone_mark.png);
    background-repeat: no-repeat;
    background-size: 8%;
    width: 100%;
    height: 3rem;
    font-size: 1.3rem;
    background-position: right;
    background-position-y: 0rem;
    max-width: 415px;
  }

  /*safariで崩れていたので修正*/
  _::-webkit-full-page-media,
  _:future,
  :root .p-contents-title__in .p-contents__head2 span {
    text-align: center;
    padding: 1rem 0rem 0rem 0rem;
    background-image: url(../img/common/phone_mark.png);
    background-repeat: no-repeat;
    background-size: 5%;
    background-position: 90% 100%;
    width: 100%;
    height: 6rem;
    font-weight: normal;
    font-size: 1.2rem;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents-title__in .p-contents__head2 span .u-br--pc {
    display: none;
  }

  /*c-leadの高さを編集する*/
  .p-contents-title__in .p-contents__head+.c-lead {
    text-align: center;
    display: inline-block;
    width: 100%;
    position: relative;
    font-size: 1rem;
  }

  /*プロフィール撮影　c-leadのマージン*/
  #seminar_info .p-contents-title__in .p-contents__head+.c-lead {
    margin-top: 5rem;
  }

  .p-contents-title__in .p-contents__head+.c-lead a {
    text-decoration: none;
    font-weight: 600;
    color: #e6649a;
    -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
    transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  }

  .p-contents-title__in .p-contents__head+.c-lead a:hover {
    opacity: 0.7;
  }

  .p-contents_hr_in_tp {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -16px;
    padding: 25px 0;
    text-indent: -99999px;
    color: #fff;
  }

  .p-contents_hr_in_tp .c-img-wide {
    width: 110%;
  }
}

@media all and (max-width: 320px) {

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents-title__in .p-contents__head2 span {
    font-size: 1.1rem;
  }
}

/*横向きスマホサイズ対応*/
@media all and (min-width: 415px) and (max-width: 767px) {
  .p-contents-title__in .p-contents__head span {
    padding-left: 0.5em;
    padding-right: 0.5em;
  }

  .p-contents-title__in .p-contents__head2 span {
    width: 100%;
    font-size: 1.2rem;
    max-width: 366px;
  }
}

@media all and (max-width: 414px) {
  .p-contents-title__in .p-contents__head2 span {
    width: 100%;
    font-size: 0.9rem;
    margin-top: 1rem;
  }
}

/*safariで崩れていたので修正*/
.iphone.safari .p-contents-title__in .p-contents__head2 span {
  text-align: center;
  padding: 1rem;
  background-image: url(../img/common/phone_mark.png);
  background-repeat: no-repeat;
  background-size: 10%;
  background-position: right top;
  width: 100%;
  height: 5rem;
  font-weight: normal;
  font-size: 1.2rem;
}

/*safariで崩れていたので修正*/
.mac.safari .p-contents-title__in .p-contents__head2 span {
  text-align: center;
  padding: 0rem;
  background-image: url(../img/common/phone_mark.png);
  background-repeat: no-repeat;
  background-size: 10%;
  background-position: right top;
  width: 100%;
  height: 5rem;
  font-weight: normal;
  font-size: 1.2rem;
}

/*safariで崩れていたので修正 スマホのときは折り返さない*/
_::-webkit-full-page-media,
_:future,
:root .p-contents-title__in .p-contents__head2 span .u-br--pc {
  display: none;
}

/*c-leadの高さを編集する*/
.p-contents-title__in .p-contents__head+.c-lead {
  text-align: center;
  display: inline-block;
  width: 70%;
  position: relative;
  font-size: 1rem;
}

@media all and (max-width: 415px) {
  .p-contents-title__in .p-contents__head+.c-lead {
    width: 90%;
  }
}

/*プロフィール撮影　c-leadのマージン*/
#seminar_info .p-contents-title__in .p-contents__head+.c-lead {
  margin-top: 5rem;
}

.p-contents-title__in .p-contents__head+.c-lead a {
  text-decoration: none;
  font-weight: 600;
  color: #e6649a;
  -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.p-contents-title__in .p-contents__head+.c-lead a:hover {
  opacity: 0.7;
}

.p-contents_hr_in_tp {
  border-top: #c1ad62 solid 8px;
  width: auto;
  margin: auto 0;
  height: 8px;
  position: relative;
  top: -16px;
  padding: 25px 0;
  text-indent: -99999px;
  color: #fff;
}

.p-contents_hr_in_tp .c-img-wide {
  width: 110%;
}


@media all and (min-width: 768px) {
  .p-contents-title__in .p-contents__head+.c-lead {
    text-align: center;
    width: 80%;
    line-height: 2rem;
    top: 2rem;
    line-height: 2rem;
    margin: 0 auto;
  }
}

.p-contents-title--lower__in {
  max-width: 1600px;
  padding: 0 20px 0 20px;
  margin: 0 auto;
  text-align: center;
}

.p-contents_hr {
  border-top: #808080 1px solid;
  height: 1px;
  width: 100%;
  margin-top: 46px;
}

@media all and (min-width: 1024px) and (max-width: 1366px) {

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -0.4rem;
  }
}

@media all and (min-width: 768px) {
  .p-contents-title.p-contents-title--lower {
    border-top: 8px solid #fff;
    margin-top: 20px;
    margin-bottom: 50px;
    width: 100%;
    display: block;
  }

  .p-contents-title.p-contents-title--lower_pur {
    border-top: 8px solid #746bab;
    margin-top: 20px;
    margin-bottom: 50px;
  }

  .contents_tit_hr {
    border-top: 1px solid #808080;
  }

  .p_cont_tit {
    width: 100%;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit2 {
    width: 60%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit_tp {
    width: 50%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin-bottom: 26px;
  }

  .p_cont_tit_med {
    width: 70%;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit p {
    padding: 0rem 1rem;
    font-size: 1rem;
    line-height: 2.5rem;
    /* margin: -1rem; */
    padding: 0.1rem 0 0.5rem;
  }

  .p-contents-title--lower__in {
    padding: 0 0px;
    min-width: 768px;
    width: 100%;
    display: contents;
  }

  .p-contents_hr {
    border-top: #808080 1px solid;
    height: 1px;
    width: 100%;
    margin-top: 46px;
  }

  .p-contents_hr_edi {
    border-top: #808080 1px solid;
    height: 1px;
    width: 100%;
    margin-top: 54px;
    display: inline-block;
    position: relative;
  }

  .p-contents_hr_in {
    border-top: #c1ad62 solid 0.56rem;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    /* top: -0.55rem; */
    padding: 1.04rem 0;
  }

  .p-contents_hr_in_sp {
    border-top: #c1ad62 solid 8px;
    width: 50%;
    margin: 0 25%;
    height: 8px;
    position: relative;
    top: -0.5rem;
  }

  .p-contents_hr_in2 {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: 17px;
    padding: 23px 0;
    text-indent: -99999px;
    color: #fff;
  }

  .p-contents_hr_in_tp {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -0.99rem;
    padding: 25px 0;
    text-indent: -99999px;
    color: #fff;
  }

  .win .p-contents_hr_in_tp {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -12px;
    padding: 25px 0;
    text-indent: -99999px;
    color: #fff;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -0.7rem;
    /*safariのみに効かせるCSS*/
  }

  .p-contents_hr_in_tp .c-img-wide {
    width: 110%;
  }

  .p_cont_tit_tp {
    width: 74%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin-bottom: 26px;
  }
}


@media all and (min-width: 1024px) {
  .p-contents_hr_in_tp {
    top: -0.7rem;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -0.7rem;
    /*safariのみに効かせるCSS*/
  }
}

@media all and (min-width: 1112px) {
  .p-contents_hr_in_tp {
    top: -0.4rem;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -0.4rem;
    /*safariのみに効かせるCSS*/
  }
}

@media all and (min-width: 1366px) {
  .p-contents_hr_in_tp {
    top: -0.4rem;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -0.4rem;
    /*safariのみに効かせるCSS*/
  }
}

@media all and (min-width: 1400px) {
  .p-contents_hr_in_tp {
    top: -0.9rem;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -0.9rem;
    /*safariのみに効かせるCSS*/
  }
}

@media all and (min-width: 1680px) {
  .p-contents-title--lower__in {
    min-width: 1200px;
    display: block;
  }
}

@media all and (max-width: 414px) {
  #parentHorizontalTab {
    padding-top: 20px;
  }

  .p-contents-title.p-contents-title--lower {
    border-top: 8px solid #fff;
    margin-bottom: 50px;
  }

  .p-contents-title.p-contents-title--lower_pur {
    border-top: 8px solid #746bab;
    margin-top: 20px;
    margin-bottom: 50px;
  }

  .p-contents-body--lower__in,
  .p-contents-body--lower__in_tp {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px 30px;
  }

  .p_cont_tit {
    width: 100% !important;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit2 {
    width: 60%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit_tp {
    width: 50%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin-bottom: 26px;
  }

  .p_cont_tit_med {
    width: 90%;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit p.couple {
    margin-top: 40px;
  }

  .p-contents_hr_in {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -0.5rem;
    padding: 20px 0;
  }

  .p-contents_hr_in_sp {
    border-top: #c1ad62 solid 8px;
    width: 50%;
    margin: auto 25%;
    height: 8px;
    position: relative;
    top: -0.5rem;
    display: block;
    text-align: center;
  }

  .p-contents_hr_in_tp {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -16px;
    padding: 25px 0;
    text-indent: -99999px;
    color: #fff;
  }

  .iphone .p-contents_hr_in_tp {
    /* iphone safariのみに効かせるCSS*/
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -13px;
    padding: 25px 0;
    text-indent: -99999px;
    color: #fff;
  }

  .p-contents_hr_in_tp .c-img-wide {
    width: 110%;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  #parentHorizontalTab {
    padding-top: 20px;
  }

  .p-contents-title.p-contents-title--lower {
    border-top: 8px solid #fff;

    margin-bottom: 50px;
  }

  .p-contents-title.p-contents-title--lower_pur {
    border-top: 8px solid #746bab;
    margin-top: 20px;
    margin-bottom: 50px;
  }

  .contents_tit_hr {
    border-top: 1px solid #808080;
  }

  .p-contents-body--lower__in,
  .p-contents-body--lower__in_tp {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px 30px;
  }

  .p_cont_tit {
    width: 100%;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit2 {
    width: 60%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit_tp {
    width: 74%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin-bottom: 0px;
    position: relative;
  }

  .p_cont_tit_med {
    width: 70%;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit p {
    padding: 0rem 1rem;
    font-size: 0.9em;
    line-height: 1.5rem;
  }

  .p_cont_tit p.couple {
    padding: 0rem 1rem;
    font-size: 1em;
    line-height: 1.5rem;
    margin-top: 40px;
  }

  .p-contents-title--lower__in {
    padding: 0 0px;
  }

  .p-contents_hr {
    border-top: #808080 1px solid;
    height: 1px;
    width: 100%;
    margin-top: 46px;
  }

  .p-contents_hr_edi {
    border-top: #808080 1px solid;
    height: 1px;
    width: 100%;
    margin-top: 54px;
    display: inline-block;
    position: relative;
  }

  .p-contents_hr_in {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -0.54rem;
    padding: 20px 0;
  }

  .p-contents_hr_in_sp {
    border-top: #c1ad62 solid 8px;
    width: 50%;
    margin: auto 25%;
    height: 8px;
    position: relative;
    top: -0.5rem;
    display: block;
    text-align: center;
  }

  .p-contents_hr_in2 {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: 17px;
    padding: 23px 0;
    text-indent: -99999px;
    color: #fff;
  }

  .p-contents_hr_in_tp {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -0.4rem;
    padding: 25px 0;
    text-indent: -99999px;
    color: #fff;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -12px;
  }

  .p-contents_hr_in_tp .c-img-wide {
    width: 110%;
  }
}

.p-contents-title--lower__in .p-contents__head {
  line-height: 1.4;
  color: #000;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-top: 0;
  margin-bottom: 0.4rem;
}

.p-contents-title--lower__in .p-contents__head p {
  padding: 2rem 0.5rem;
}

.p-contents-title--lower__in .p-contents_hr_in_bottom span {
  padding: 2rem 0.5rem;
  background-image: url(../img/site-logo.svg);
  background-repeat: no-repeat;
  background-size: 11%;
  background-position: bottom 0rem right 0.5rem;
  width: 60%;
  height: 5rem;
  font-weight: normal;
  font-size: 1.3rem;
}

.p-contents-title.p-contents-title--lower_pur {
  border-top: 8px solid #746bab;
  margin-top: 20px;
  margin-bottom: 50px;
}

@media all and (min-width: 1680px) {
  .p-contents-title.p-contents-title--lower_pur {
    margin-top: 80px;
  }
}

.contents_tit_hr {
  border-top: 1px solid #808080;
}

.p-contents-body--lower__in {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  padding: 2rem 1rem;
}

@media all and (min-width: 1300px) {
  .p-contents-body--lower__in {
    max-width: 1200px;
    padding: 2rem;
  }

}

@media all and (min-width: 1680px) {
  .p-contents-body--lower__in {
    max-width: 1200px;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-contents-body--lower__in {
    padding: 5% 2% 10%;
    margin: 0 auto;
  }
}

@media all and (min-width: 1025px) and (max-width: 1299px) {
  .p-contents-body--lower__in {
    max-width: 1200px;
    padding: 2rem;
  }
}

.p-contents-body--lower__in_tp {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px 30px;
}

@media all and (min-width: 1680px) {
  .p-contents-body--lower__in_tp {
    max-width: 1200px;
  }
}

.p_cont_tit {
  display: inline-block;
  border-top: #b3b3b3 solid 8px;
  margin: 0 auto;
}

.p_cont_tit2 {
  width: 60%;
  display: inline-block;
  border-bottom: #b3b3b3 solid 8px;
  margin: 0 auto;
}

.p_cont_tit_med {
  width: 70%;
  display: block;
  border-top: #b3b3b3 solid 8px;
  margin: 0 auto;
}

@media all and (min-width: 1680px) {
  .p_cont_tit_med {
    width: 100%;
    max-width: 1200px;
  }
}

@media all and (min-width: 768px) and (max-width:1024px) {
  .p_cont_tit_med {
    width: 90%;
    display: block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }
}

.p_cont_tit p {
  padding: 0rem 0rem;
  font-size: 1em;
  line-height: 2rem;
}

@media all and (max-width: 414px) {
  .p_cont_tit p {
    padding: 0rem 0rem;
    font-size: 0.9em;
    line-height: 2rem;
    width: 90%;
    margin: 0 auto;
  }
}

@media all and (max-width: 320px) {
  .p_cont_tit p {
    letter-spacing: -0.01rem;
  }
}

.p_cont_tit p.couple {
  padding: 0rem 1rem;
  font-size: 1em;
  line-height: 1.5rem;
  margin-top: 40px;
}

.p-contents-title--lower__in {
  padding: 0 20px;
}

@media all and (max-width: 415px) {
  .p-contents-title--lower__in {
    padding: 0 0.5rem;
  }
}

.p-contents_hr {
  border-top: #808080 1px solid;
  height: 1px;
  width: 100%;
  margin-top: 46px;
}

.top-contents_hr {
  border-top: #808080 1px solid;
  height: 1px;
  width: 100%;
}

.p-contents_hr_edi {
  border-top: #808080 1px solid;
  height: 1px;
  width: 100%;
  margin-top: 54px;
  display: inline-block;
  position: relative;
}

.p-contents_hr_in {
  border-top: #c1ad62 solid 8px;
  width: auto;
  margin: auto 0;
  height: 9px;
  position: relative;
  padding: 20px 0;
}

.p-contents_hr_in_sp {
  border-top: #c1ad62 solid 9px;
  width: 50%;
  margin: auto 25%;
  height: 9px;
  position: relative;
  top: -0.5rem;
  display: block;
  text-align: center;
}

.p-contents_hr_in2 {
  border-top: #c1ad62 solid 9px;
  width: auto;
  margin: auto 0;
  height: 9px;
  position: relative;
  top: 17px;
  padding: 23px 0;
  text-indent: -99999px;
  color: #fff;
}

.p-contents_hr_in3 {
  border-top: #c1ad62 solid 9px;
  width: auto;
  margin: auto 0;
  height: 9px;
  position: relative;
  top: 6px;
  padding: 23px 0;
  text-indent: -99999px;
  color: #000;
}


.p-contents-title--lower__in .p-contents__head {
  line-height: 1.4;
  color: #000;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-top: 0;
  margin-bottom: 0.4rem;
}

.p-contents-title--lower__in .p-contents__head span {
  padding: 2rem 0.5rem;
  display: inline-block;
  white-space: nowrap;
  top: -0.5rem;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-contents-title--lower__in .p-contents__head span {
    font-size: 1.3rem;
    top: -0.55rem;
    white-space: unset;
  }

  .p-contents_hr_in {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -0.54rem;
    padding: 20px 0;
  }
}

@media all and (max-width: 415px) {
  .p-contents-title--lower__in .p-contents__head span {
    font-size: 1.2rem;
  }
}

@media all and (max-width: 688px) {
  .uekusa_counseling .p-contents_hr_in {
    margin-bottom: 0;
  }
}

.p-contents-title--lower__in .p-contents_hr_in_bottom span {
  padding: 2rem 0.5rem;
  background-image: url(../img/site-logo.svg);
  background-repeat: no-repeat;
  background-size: 11%;
  background-position: bottom 0rem right 0.5rem;
  width: 60%;
  height: 5rem;
  font-weight: normal;
  font-size: 1.3rem;
}

.c-content__head {
  display: block;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
  margin-left: auto;
  margin-right: auto;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  line-height: 1.6;
  padding: 10px 0;
}

@media all and (min-width: 767px) {
  .p_cont_tit p {
    padding: 0rem 1rem;
    font-size: 1rem;
    line-height: 2.5rem;
  }
}

/*CSSspまだ↓*/
@media all and (max-width: 767px) {
  .c-content__head {
    max-width: 70%;
  }
}

@media all and (min-width: 768px) {
  .c-content__head {
    max-width: 360px;
    margin-top: 100px;
    margin-bottom: 50px;
  }
}

.c-content__head .c-color--pink {
  display: block;
  color: #e6649a;
}

@media all and (min-width: 1025px) {
  .c-content__head .c-color--pink {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .c-content__head .c-color--pink {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .c-content__head .c-color--pink {
    font-size: 13px;
  }
}

@media all and (max-width: 414px) {
  .c-content__head .c-color--pink {
    font-size: 3.2vw;
  }
}

@media all and (max-width: 415px) {
  #parentHorizontalTab {
    padding-top: 20px;
  }

  .p-contents-title.p-contents-title--lower {
    border-top: 8px solid #fff;
    margin-bottom: 0;
  }

  .p-contents-title.p-contents-title--lower_pur {
    border-top: 8px solid #746bab;
    margin-top: 20px;
    margin-bottom: 50px;
  }

  .p-contents-body--lower__in,
  .p-contents-body--lower__in_tp {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px 30px;
  }

  /**/
  .p-contents-body--lower__in,
  .p-contents-body--lower__in_tp {
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    width: 100%;
  }

  .p-content-wrap.p-content-wrap--corporate {
    padding: 15px;
  }

  .c-gmap {
    position: relative;
    width: 95%;
    height: 510px;
    overflow: hidden;
    margin: 10px auto;
  }

  .p-head-salon,
  .notice {
    padding: 0 10px;
  }

  .p_cont_tit {
    width: 95%;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
    padding-bottom: 2rem;
  }

  .p_cont_tit2 {
    width: 60%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit_tp {
    width: 80%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin-bottom: 26px;
  }

  .p_cont_tit_med {
    width: 90%;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit p.couple {
    margin-top: 40px;
  }

  .p-contents_hr_in {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 9px;
    position: relative;
    top: -0.5rem;
    padding: 20px 0;
  }

  .p-contents_hr_in_sp {
    border-top: #c1ad62 solid 8px;
    width: 50%;
    margin: auto 25%;
    height: 9px;
    position: relative;
    top: -0.5rem;
    display: block;
    text-align: center;
  }

  .p-contents_hr_in_tp {
    border-top: #c1ad62 solid 9px;
    width: auto;
    margin: auto 0;
    height: 9px;
    position: relative;
    top: -16px;
    padding: 25px 0;
    text-indent: -99999px;
    color: #fff;
  }

  _:lang(x)::-internal-media-controls-overlay-cast-button,
  .android .p-contents_hr_in_tp {
    /* Android端末にて、Chrome使用時のみ適用 */
    top: -10px;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -12px;
  }

  .iphone .p-contents_hr_in_tp {
    border-top: #c1ad62 solid 8px;
    width: auto;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -12px;
    padding: 25px 0;
    text-indent: -99999px;
    color: #fff;
  }

  .p-contents_hr_in_tp .c-img-wide {
    width: 110%;
  }
}

/*横向きにも対応*/
@media all and (min-width: 415px) and (max-width: 767px) {
  #parentHorizontalTab {
    padding-top: 20px;
  }

  .p-contents-title.p-contents-title--lower {
    border-top: 8px solid #fff;
    margin-bottom: 50px;
  }

  .p-contents-title.p-contents-title--lower_pur {
    border-top: 8px solid #746bab;
    margin-top: 20px;
    margin-bottom: 50px;
  }

  /**/
  .p-contents-body--lower__in,
  .p-contents-body--lower__in_tp {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }

  @media all and (min-width: 768px) and (max-width: 1024px) {

    .p-contents-body--lower__in,
    .p-contents-body--lower__in_tp {
      max-width: 768px;
      width: 100%;
    }
  }

  .p_cont_tit {
    width: 95%;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit2 {
    width: 60%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit_tp {
    width: 50%;
    display: inline-block;
    border-bottom: #b3b3b3 solid 8px;
    margin-bottom: 26px;
  }

  .p_cont_tit_med {
    width: 90%;
    display: inline-block;
    border-top: #b3b3b3 solid 8px;
    margin: 0 auto;
  }

  .p_cont_tit p.couple {
    margin-top: 40px;
  }

  .p-contents_hr_in {
    border-top: #c1ad62 solid 9px;
    width: auto;
    margin: auto 0;
    height: 9px;
    position: relative;
    top: -1px;
  }

  @media all and (min-width: 415px) and (max-width: 767px) {
    .p-contents_hr_in {
      top: -8px;
    }
  }

  .p-contents_hr_in_sp {
    border-top: #c1ad62 solid 9px;
    width: 50%;
    margin: auto 25%;
    height: 9px;
    position: relative;
    top: -0.55rem;
    display: block;
    text-align: center;
  }

  .p-contents_hr_in_tp {
    border-top: #c1ad62 solid 9px;
    width: auto;
    margin: auto 0;
    height: 9px;
    position: relative;
    top: -16px;
    padding: 25px 0;
    text-indent: -99999px;
    color: #fff;
  }

  _:lang(x)::-internal-media-controls-overlay-cast-button,
  .android .p-contents_hr_in_tp {
    /* Android端末にて、Chrome使用時のみ適用 */
    top: -10px;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -12px;
  }

  .p-contents_hr_in_tp .c-img-wide {
    width: 95%;
  }
}

@media all and (max-width: 414px) {
  .p-section--activity .p-contents_hr_in {
    top: 0px;
  }
}

/*金銀ライン整形*/
@media all and (max-width: 320px) {
  .p-contents_hr_in_tp {
    top: -14px;
  }
}

/*金銀ライン整形*/
@media all and (max-width: 320px) {

  _::-webkit-full-page-media,
  _:future,
  :root .p-contents_hr_in_tp {
    top: -12px;
  }
}

.p-content-wrap--form {
  max-width: 960px;
  margin: 0 auto;
}

.p-content-wrap--form .progressbar {
  margin: 0 0 50px 0;
  padding: 0;
  counter-reset: step;
  z-index: 0;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}

.p-content-wrap--form .progressbar li {
  list-style-type: none;
  width: 33.333333%;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #aaa;
  font-weight: bold;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-contents_hr_in3 {
    top: 5.9px;
  }

  .p-contents_hr {
    border-top: #808080 1px solid;
    height: 1px;
    width: 100%;
    margin-top: 0;
  }

  .p-content-wrap--form .progressbar {
    margin: 30px 0 30px 0;
  }

  .mt-50px {
    margin-top: 50px;
  }
}

@media all and (min-width: 1025px) {
  .p-content-wrap--form .progressbar li {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap--form .progressbar li {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--form .progressbar li {
    font-size: 15px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--form .progressbar li {
    font-size: 3.73333vw;
  }
}

.p-content-wrap--form .progressbar li::before {
  width: 40px;
  height: 40px;
  content: counter(step);
  counter-increment: step;
  line-height: 41px;
  display: block;
  text-align: center;
  margin: 0 auto 10px auto;
  border-radius: 50%;
  background-color: #eee;
  font-family: Arial, Helvetica, sans-serif;
}

.p-content-wrap--form .progressbar li::after {
  width: 100%;
  height: 2px;
  content: "";
  position: absolute;
  background-color: #eee;
  top: 15px;
  left: -50%;
  z-index: -1;
}

.p-content-wrap--form .progressbar li:first-child:after {
  content: none;
}

.p-content-wrap--form .progressbar li:first-child {
  color: #e6649a;
}

.p-content-wrap--form .progressbar li:first-child::before {
  background-color: #e6649a;
  color: #000;
}

.p-content-wrap--form .progressbar li:first-child+li:after {
  background-color: #e6649a;
}

.p-content-wrap--form .notice .icon_require {
  color: red;
}

.p-content-wrap--form .notice-confirm {
  display: none;
}

.p-content-wrap--form input[type="checkbox"],
.p-content-wrap--form input[type="radio"] {
  display: inline-block !important;
}

.p-content-wrap--form input[type="text"],
.p-content-wrap--form input[type="tel"],
.p-content-wrap--form input[type="email"],
.p-content-wrap--form textarea {
  padding: 5px 10px;
  outline: none;
  border: 1px solid #cecece;
  border-radius: 3px;
  font-size: 16px;
  font-size: 1rem;
  margin: 0;
  -webkit-transition: -webkit-box-shadow 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: -webkit-box-shadow 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: box-shadow 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: box-shadow 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53),
    -webkit-box-shadow 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  background-color: #fdf1f6;
}

.p-content-wrap--form input[type="text"]:focus,
.p-content-wrap--form input[type="tel"]:focus,
.p-content-wrap--form input[type="email"]:focus,
.p-content-wrap--form textarea:focus {
  border: 1px solid #e6649a;
  -webkit-box-shadow: 0 0 6px rgba(230, 100, 154, 0.4);
  box-shadow: 0 0 6px rgba(230, 100, 154, 0.4);
}

.p-content-wrap--form select {
  outline: none;
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: "";
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 5px;
  border: 1px solid #cecece;
  border-radius: 3px;
  background-color: #fdf1f6;
}

.p-content-wrap--form select option {
  background-color: #fff;
  color: #333;
}

.p-content-wrap--form select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #e6649a;
}

.p-content-wrap--form .form-width {
  max-width: 100%;
  width: 100%;
}

.p-content-wrap--form .required {
  margin-bottom: 5px;
}

.p-content-wrap--form .required::after {
  content: "※";
  color: red;
  margin-left: 0.2em;
}

@media all and (min-width: 1025px) {
  .p-content-wrap--form .required::after {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap--form .required::after {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--form .required::after {
    font-size: 12px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--form .required::after {
    font-size: 2.93333vw;
  }
}

.p-content-wrap--form .c-form {
  margin-top: 50px;
  padding: 3%;
}

.p-content-wrap--form .c-form fieldset {
  border: none;
  padding: 0;
  margin: 0;
}

.p-content-wrap--form .c-form .p-form-content {
  margin: 0 auto 30px auto;
  padding-bottom: 30px;
  border-bottom: 1px dotted #cecece;
}

.p-content-wrap--form .c-form .p-form-content__in {
  margin-top: 20px;
}

@media all and (min-width: 768px) {
  .p-content-wrap--form .c-form .p-form-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    max-width: 960px;
  }

  .p-content-wrap--form .c-form .p-form-content__in {
    display: block;
    margin-top: 20px;
  }

  .p-content-wrap--form .c-form .p-form-content__in:first-child {
    margin-top: 0;
  }
}

.p-content-wrap--form .c-form .p-form-content>.c-form-category {
  font-weight: bold;
  width: 100%;
  margin: 0;
}

@media all and (min-width: 768px) {
  .p-content-wrap--form .c-form .p-form-content>.c-form-category {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 14em;
  }
}

.p-content-wrap--form .c-form .p-form-content .c-form-feed {
  padding: 0;
  display: block;
  margin-left: 0;
  margin: 0;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  width: 100%;
}

.p-content-wrap--form .c-form .p-form-content .c-form-feed>p {
  margin: 0;
}

.p-content-wrap--form .c-form .p-form-content .c-form-feed .c-your-feed {
  margin: 0;
  padding: 0;
}

.p-content-wrap--form .c-form .p-form-content .c-form-feed .example,
.p-content-wrap--form .c-form .p-form-content .c-form-feed .example2 {
  margin: 0;
  padding: 0;
}

@media all and (min-width: 1025px) {

  .p-content-wrap--form .c-form .p-form-content .c-form-feed .example,
  .p-content-wrap--form .c-form .p-form-content .c-form-feed .example2 {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {

  .p-content-wrap--form .c-form .p-form-content .c-form-feed .example,
  .p-content-wrap--form .c-form .p-form-content .c-form-feed .example2 {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {

  .p-content-wrap--form .c-form .p-form-content .c-form-feed .example,
  .p-content-wrap--form .c-form .p-form-content .c-form-feed .example2 {
    font-size: 13px;
  }
}

@media all and (max-width: 414px) {

  .p-content-wrap--form .c-form .p-form-content .c-form-feed .example,
  .p-content-wrap--form .c-form .p-form-content .c-form-feed .example2 {
    font-size: 3.2vw;
  }
}

.p-content-wrap--form .c-form .p-form-content .c-form-feed .noval {
  color: red;
  font-weight: bold;
  margin-bottom: 10px;
}

.p-content-wrap--form .c-form .c-form-category {
  padding-bottom: 20px;
}

@media all and (min-width: 768px) {
  .p-content-wrap--form .c-form .c-form-category {
    padding-bottom: 0;
  }
}

.p-content-wrap--form .c-form--name .c-your-feed .wpcf7-form-control-wrap,
.p-content-wrap--form .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap {
  width: 100%;
  display: block;
}

.p-content-wrap--form .c-form--name .c-your-feed .wpcf7-form-control-wrap:first-child,
.p-content-wrap--form .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap:first-child {
  margin-bottom: 10px;
}

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

  .p-content-wrap--form .c-form--name .c-your-feed .wpcf7-form-control-wrap,
  .p-content-wrap--form .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap {
    /*float: left;*/
    width: 48.43%;
  }

  .p-content-wrap--form .c-form--name .c-your-feed .wpcf7-form-control-wrap:first-child,
  .p-content-wrap--form .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap:first-child {
    margin-bottom: 0;
  }
}

.p-content-wrap--form .c-form--name .c-your-feed .wpcf7-form-control-wrap:first-child,
.p-content-wrap--form .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap:first-child {
  margin-right: 20px;
}

.p-content-wrap--form .c-form--mail .c-your-feed .wpcf7-form-control-wrap,
.p-content-wrap--form .c-form--phone .c-your-feed .wpcf7-form-control-wrap {
  width: 100% !important;
  display: block;
}

.p-content-wrap--form .c-form--mail .c-your-feed .wpcf7-form-control-wrap input,
.p-content-wrap--form .c-form--phone .c-your-feed .wpcf7-form-control-wrap input {
  width: 100% !important;
}

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

  .p-content-wrap--form .c-form--mail .c-your-feed .wpcf7-form-control-wrap input,
  .p-content-wrap--form .c-form--phone .c-your-feed .wpcf7-form-control-wrap input {
    max-width: 48.43% !important;
  }
}

.p-content-wrap--form .c-form--mail .c-your-feed .wpcf7-form-control-wrap:first-child,
.p-content-wrap--form .c-form--phone .c-your-feed .wpcf7-form-control-wrap:first-child {
  margin-bottom: 10px;
}

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

  .p-content-wrap--form .c-form--mail .c-your-feed .wpcf7-form-control-wrap:first-child,
  .p-content-wrap--form .c-form--phone .c-your-feed .wpcf7-form-control-wrap:first-child {
    margin-bottom: 0;
  }
}

.p-content-wrap--form .c-form--mail .c-your-feed .wpcf7-form-control-wrap:first-child,
.p-content-wrap--form .c-form--phone .c-your-feed .wpcf7-form-control-wrap:first-child {
  margin-right: 0;
}

.p-content-wrap--form .c-form--birth .select_box {
  display: none;
}

.p-content-wrap--form .c-form--birth .c-your-feed .unit {
  display: inline-block;
  padding: 0 0.5em 0 0.3em;
}

.p-content-wrap--form .c-form--birth .c-your-feed .your-year,
.p-content-wrap--form .c-form--birth .c-your-feed .your-month,
.p-content-wrap--form .c-form--birth .c-your-feed .your-day {
  position: relative;
  display: inline-block;
}

.p-content-wrap--form .c-form--birth .c-your-feed .your-year select,
.p-content-wrap--form .c-form--birth .c-your-feed .your-month select,
.p-content-wrap--form .c-form--birth .c-your-feed .your-day select {
  width: 100% !important;
  padding-right: 30px;
}

.p-content-wrap--form .c-form--birth .c-your-feed .your-year::before,
.p-content-wrap--form .c-form--birth .c-your-feed .your-year::after,
.p-content-wrap--form .c-form--birth .c-your-feed .your-month::before,
.p-content-wrap--form .c-form--birth .c-your-feed .your-month::after,
.p-content-wrap--form .c-form--birth .c-your-feed .your-day::before,
.p-content-wrap--form .c-form--birth .c-your-feed .your-day::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 35%;
  right: 6px;
  width: 0;
  height: 0;
  border: 4px dashed;
  border-color: #e6649a transparent;
  pointer-events: none;
}

.p-content-wrap--form .c-form--birth .c-your-feed .your-year::before,
.p-content-wrap--form .c-form--birth .c-your-feed .your-month::before,
.p-content-wrap--form .c-form--birth .c-your-feed .your-day::before {
  border-bottom-style: solid;
  border-top: none;
}

.p-content-wrap--form .c-form--birth .c-your-feed .your-year::after,
.p-content-wrap--form .c-form--birth .c-your-feed .your-month::after,
.p-content-wrap--form .c-form--birth .c-your-feed .your-day::after {
  margin-top: 7px;
  border-top-style: solid;
  border-bottom: none;
}

.p-content-wrap--form .c-form--birth .c-your-feed .c-birth-txt {
  margin-right: 10px;
}

.p-content-wrap--form .c-form--birth .c-your-feed .your-year select {
  width: 26%;
}

@media all and (min-width: 768px) {
  .p-content-wrap--form .c-form--birth .c-your-feed .your-year select {
    width: 14%;
  }
}

.p-content-wrap--form .c-form--birth .c-your-feed .your-month select,
.p-content-wrap--form .c-form--birth .c-your-feed .your-day select {
  width: 20%;
}

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

  .p-content-wrap--form .c-form--birth .c-your-feed .your-month select,
  .p-content-wrap--form .c-form--birth .c-your-feed .your-day select {
    width: 10%;
  }
}

.p-content-wrap--form .c-form--birth .menu-717 {
  position: relative;
  display: inline-block;
}

.p-content-wrap--form .c-form--birth .menu-717::before,
.p-content-wrap--form .c-form--birth .menu-717::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 35%;
  right: 6px;
  width: 0;
  height: 0;
  border: 4px dashed;
  border-color: #e6649a transparent;
  pointer-events: none;
}

.p-content-wrap--form .c-form--birth .menu-717::before {
  border-bottom-style: solid;
  border-top: none;
}

.p-content-wrap--form .c-form--birth .menu-717::after {
  margin-top: 7px;
  border-top-style: solid;
  border-bottom: none;
}

.p-content-wrap--form .c-form--birth .menu-717 select {
  padding-right: 30px;
}

.p-content-wrap--form .c-form--gender .c-your-feed .wpcf7-list-item:first-child {
  margin-left: 0;
}

.p-content-wrap--form .c-form--gender .c-your-feed .wpcf7-list-item label {
  cursor: pointer;
  font-weight: normal;
  letter-spacing: 0;
  display: inline-block;
  position: relative;
  margin-right: 20px;
}

.p-content-wrap--form .c-form--location .p-form-content__in:first-child {
  margin-top: 0;
}

.p-content-wrap--form .c-form--location .p-form-content__in .c-form-category {
  padding-bottom: 0;
  font-weight: 600;
}

.p-content-wrap--form .c-form--location .c-your-feed .wpcf7-form-control-wrap.zip {
  display: block;
  width: 30%;
}

.p-content-wrap--form .c-form--location .c-your-feed .wpcf7-form-control-wrap.zip input {
  width: 100%;
}

@media all and (min-width: 768px) {
  .p-content-wrap--form .c-form--location .c-your-feed .wpcf7-form-control-wrap.zip {
    width: 20%;
    display: inline-block;
  }
}

.p-content-wrap--form .c-form--location .c-your-feed .wpcf7-form-control-wrap.addr1,
.p-content-wrap--form .c-form--location .c-your-feed .wpcf7-form-control-wrap.addr2 {
  display: block;
  width: 100%;
}

.p-content-wrap--form .c-form--location .c-your-feed .wpcf7-form-control-wrap.addr1 input,
.p-content-wrap--form .c-form--location .c-your-feed .wpcf7-form-control-wrap.addr2 input {
  width: 100%;
}

.p-content-wrap--form .c-form--location .c-your-feed .pref {
  position: relative;
  display: inline-block;
}

.p-content-wrap--form .c-form--location .c-your-feed .pref::before,
.p-content-wrap--form .c-form--location .c-your-feed .pref::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 35%;
  right: 6px;
  width: 0;
  height: 0;
  border: 4px dashed;
  border-color: #e6649a transparent;
  pointer-events: none;
}

.p-content-wrap--form .c-form--location .c-your-feed .pref::before {
  border-bottom-style: solid;
  border-top: none;
}

.p-content-wrap--form .c-form--location .c-your-feed .pref::after {
  margin-top: 7px;
  border-top-style: solid;
  border-bottom: none;
}

.p-content-wrap--form .c-form--location .c-your-feed .pref select {
  width: 100% !important;
  padding-right: 30px;
}

@media all and (min-width: 768px) {
  .p-content-wrap--form .c-form--location .c-your-feed .pref select {
    width: 26%;
  }
}

.p-content-wrap--form .c-form--location .c-your-feed .pref .select_box {
  display: none;
}

.p-content-wrap--form .c-form--voice .p-form-content,
.p-content-wrap--form .c-form--message .p-form-content,
.p-content-wrap--form .c-form--personal_history .p-form-content,
.p-content-wrap--form .c-form--job_history .p-form-content,
.p-content-wrap--form .c-form--application .p-form-content {
  display: block;
}

.p-content-wrap--form .c-form--voice .p-form-content .c-form-category,
.p-content-wrap--form .c-form--message .p-form-content .c-form-category,
.p-content-wrap--form .c-form--personal_history .p-form-content .c-form-category,
.p-content-wrap--form .c-form--job_history .p-form-content .c-form-category,
.p-content-wrap--form .c-form--application .p-form-content .c-form-category {
  font-weight: bold;
  width: 100%;
}

.p-content-wrap--form .c-form--voice .p-form-content textarea,
.p-content-wrap--form .c-form--message .p-form-content textarea,
.p-content-wrap--form .c-form--personal_history .p-form-content textarea,
.p-content-wrap--form .c-form--job_history .p-form-content textarea,
.p-content-wrap--form .c-form--application .p-form-content textarea {
  width: 100%;
  max-width: 100%;
}

.p-content-wrap--form .c-form--date .p-form-content__in .c-form-category {
  padding-bottom: 0;
  font-weight: 600;
}

.p-content-wrap--form .c-form--date .p-form-content__in:first-child {
  margin-top: 0;
}

.p-content-wrap--form .c-form--date .c-your-feed__in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-content-wrap--form .c-form--date .c-your-feed__in .wpcf7-form-control-wrap {
  display: block;
  width: 20%;
}

.p-content-wrap--form .c-form--date .c-your-feed__in .wpcf7-form-control-wrap input {
  width: 100%;
}

@media all and (min-width: 768px) {
  .p-content-wrap--form .c-form--date .c-your-feed__in .wpcf7-form-control-wrap {
    width: 20%;
    display: inline-block;
  }
}

.p-content-wrap--form .c-form--date .c-your-feed__in .unit {
  display: inline-block;
  padding: 0 0.5em 0 0.3em;
}

.p-content-wrap--form .c-form .c-form--questionnaire .c-your-feed .wpcf7-list-item {
  margin-left: 0;
  margin-right: 1em;
}

.p-content-wrap--form .c-form--reason .c-your-feed .wpcf7-list-item {
  margin-left: 0;
  margin-right: 1em;
}

@media all and (min-width: 768px) {
  .p-content-wrap--form .c-form--reason .reason_form {
    padding-top: 30px !important;
  }
}

.p-content-wrap--form .c-form--reason .reason_form .c-form-category {
  font-weight: 600;
}

.p-content-wrap--form .c-form--reason .reason_form textarea {
  width: 100%;
  max-width: 100%;
}


.p-content-wrap--form .privacy_box {
  border: 1px solid #e6e6e6;
  max-width: 960px;
  margin: 20px auto;
  padding: 10px;
}

@media all and (min-width: 1025px) {
  .p-content-wrap--form .privacy_box {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap--form .privacy_box {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--form .privacy_box {
    font-size: 14px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--form .privacy_box {
    font-size: 3.46667vw;
  }
}

.p-content-wrap--form .privacy_box h3 {
  background-color: #d4accc;
  color: #000;
  margin: 0;
  padding: 10px;
  text-align: center;
  font-weight: normal;
  font-size: 1.3rem;
}

.p-content-wrap--form .privacy_box .privacy_child {
  padding: 30px;
  margin: 0;
  height: 200px;
  overflow-y: scroll;
}

.p-content-wrap--form .privacy_box .privacy_child dt {
  margin-top: 20px;
  margin-bottom: 0;
  font-weight: bold;
}

.p-content-wrap--form .privacy_box .privacy_child dt:first-child {
  margin-top: 0;
}

.p-content-wrap--form .privacy_box .privacy_child dd {
  margin-left: 0;
}

.p-content-wrap--form .privacy_box .privacy_child dd:last-child {
  padding-bottom: 30px;
}

.p-content-wrap--form .privacy_box .privacy_child dd p {
  margin: 0;
}

.p-content-wrap--form .privacy_box .privacy_child dd ul {
  padding-left: 1.2em;
  margin-left: 0;
}

.p-content-wrap--form .check_agree {
  text-align: center;
  font-weight: bold;
}

.p-content-wrap--form .check_agree input {
  margin-right: 0.2em;
}

.toConfirm__wrap {
  text-align: center;
}

.toConfirm__wrap .toConfirm {
  margin-top: 30px;
  color: #fff;
  border-style: none;
  background-color: #cecece;
  border: 1px solid #cecece;
  font-weight: 600;
  padding: 10px 50px;
  width: 100%;
  max-width: 360px;
  border-radius: 32px;
  display: inline-block;
}

.toConfirm__wrap .btn_confirm {
  color: #575254;
  background-color: #fff;
  border: 1px solid #d4accc;
  display: inline-block;
  -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.toConfirm__wrap .btn_confirm:hover {
  background-color: #d4accc;
  color: #575254;
}

.area_btn {
  text-align: center;
}

@media all and (min-width: 768px) {
  .area_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

.area_btn p,
.area_btn .btn_send {
  padding: 0 10px;
  display: none;
}

.area_btn .btn_back {
  display: none;
  margin-top: 30px;
  color: #fff;
  border-style: none;
  background-color: #333;
  font-weight: 600;
  padding: 10px 50px;
  width: 100%;
  max-width: 360px;
  border-radius: 32px;
  display: inline-block;
  -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.area_btn .btn_back:hover {
  background-color: #4d4d4d;
}

/*送信ボタンのcss*/
.area_btn .wpcf7-submit {
  display: none;
  margin-top: 1rem;
  color: #fff;
  border-style: none;
  background-color: #e6649a;
  font-weight: 600;
  padding: 10px 50px;
  width: 100%;
  max-width: 360px;
  border-radius: 32px;
  display: inline-block;
  -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.area_btn .wpcf7-submit:hover {
  background-color: #ed90b7;
}

.other_contact_wrap {
  max-width: 960px;
  margin: 40px auto 0 auto;
}

@media all and (min-width: 768px) {
  .other_contact_wrap {
    margin: 70px auto 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
}

.other_contact_wrap .other_contact_list {
  color: #494949;
  position: relative;
}

.other_contact_wrap .other_contact_list:first-child {
  margin-bottom: 20px;
}

@media all and (min-width: 768px) {
  .other_contact_wrap .other_contact_list {
    width: 420px;
    margin-left: 40px;
  }

  .other_contact_wrap .other_contact_list:first-child {
    margin-bottom: 0;
  }
}

.other_contact_wrap .other_contact_list:first-child {
  margin-left: 0;
}

.other_contact_wrap dl {
  padding: 3.5em 3em;
  margin: 2em 2em;
  font-weight: bold;
  border: solid 1px #000000;
}

.other_contact_wrap dl:before {
  content: "";
  position: absolute;
  display: block;
  width: 86px;
  height: 100%;
  top: 0;
  left: 0;
}

.other_contact_wrap dt {
  margin-top: 0;
  border-bottom: 1px dotted #ccc;
  font-weight: bold;
  padding-top: 0;
  padding-bottom: 5px;
}

@media all and (min-width: 1025px) {
  .other_contact_wrap dt {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .other_contact_wrap dt {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .other_contact_wrap dt {
    font-size: 15px;
  }
}

@media all and (max-width: 414px) {
  .other_contact_wrap dt {
    font-size: 3.73333vw;
  }
}

.other_contact_wrap dd {
  padding-top: 5px;
  margin-left: 0;
}

@media all and (min-width: 1025px) {
  .other_contact_wrap dd {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .other_contact_wrap dd {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .other_contact_wrap dd {
    font-size: 14px;
  }
}

@media all and (max-width: 414px) {
  .other_contact_wrap dd {
    font-size: 3.46667vw;
  }
}

.other_contact_wrap dd p {
  display: block;
}

.other_contact_wrap dd a {
  color: #494949;
}

.confirm input[type="checkbox"],
.confirm input[type="radio"] {
  display: none !important;
  border: none;
}

.confirm input[type="text"],
.confirm input[type="email"],
.confirm input[type="tel"],
.confirm textarea,
.confirm .select_box {
  border: none !important;
  background: none !important;
  outline: none;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  cursor: default;
  padding: 0 !important;
}

.confirm select {
  cursor: default;
  display: none !important;
}

.confirm .progressbar li:first-child {
  color: #aaa;
}

.confirm .progressbar li:first-child::before {
  background-color: #eee;
  color: #aaa;
}

.confirm .progressbar li:first-child+li:after {
  background-color: #eee;
}

.confirm .progressbar li:nth-child(2) {
  color: #e6649a;
}

.confirm .progressbar li:nth-child(2)::before {
  background-color: #e6649a;
  color: #ffffdd;
}

.confirm .progressbar li:nth-child(2)+li:after {
  background-color: #e6649a;
}

.confirm .notice {
  display: none;
}

.confirm .notice-confirm {
  display: block;
}

.confirm .required::before {
  display: none !important;
}

.confirm .example,
.confirm .example2 {
  display: none;
}

.confirm .btn_confirm {
  display: none;
}

.confirm div.wpcf7 .ajax-loader {
  display: none !important;
}

.confirm .area_btn p,
.confirm .area_btn .btn_send {
  display: block;
}

.confirm .check_agree {
  display: none;
}

.confirm .c-form--name .c-your-feed:before,
.confirm .c-form--name .c-your-feed:after,
.confirm .c-form--kana-name .c-your-feed:before,
.confirm .c-form--kana-name .c-your-feed:after {
  content: "";
  display: table;
}

.confirm .c-form--name .c-your-feed:after,
.confirm .c-form--kana-name .c-your-feed:after {
  clear: both;
}

.confirm .c-form--name .c-your-feed .wpcf7-form-control-wrap,
.confirm .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap {
  width: 100%;
  display: block;
}

.confirm .c-form--name .c-your-feed .wpcf7-form-control-wrap:first-child,
.confirm .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap:first-child {
  margin-bottom: 10px;
}

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

  .confirm .c-form--name .c-your-feed .wpcf7-form-control-wrap,
  .confirm .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap {
    float: left;
    width: 30% !important;
  }

  .confirm .c-form--name .c-your-feed .wpcf7-form-control-wrap:first-child,
  .confirm .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap:first-child {
    margin-bottom: 0;
  }
}

.confirm .c-form--name .c-your-feed .wpcf7-form-control-wrap:first-child,
.confirm .c-form--kana-name .c-your-feed .wpcf7-form-control-wrap:first-child {
  margin-right: 20px;
}

.confirm .c-form--birth .select_box {
  display: block;
}

.confirm .c-form--birth .your-year,
.confirm .c-form--birth .your-month,
.confirm .c-form--birth .your-day {
  padding-right: 0;
}

.confirm .c-form--birth .your-year::before,
.confirm .c-form--birth .your-year::after,
.confirm .c-form--birth .your-month::before,
.confirm .c-form--birth .your-month::after,
.confirm .c-form--birth .your-day::before,
.confirm .c-form--birth .your-day::after {
  display: none;
}

.confirm .c-form--birth .menu-717::before,
.confirm .c-form--birth .menu-717::after {
  display: none;
}

.confirm .c-form--gender .c-your-feed .wpcf7-list-item input[type="radio"] {
  display: none;
}

.confirm .c-form--gender .c-your-feed .wpcf7-list-item label {
  cursor: pointer;
  font-weight: normal;
  letter-spacing: 0;
  display: inline-block;
  position: relative;
  margin-right: 20px;
}

.confirm .c-form--gender .c-your-feed .wpcf7-list-item .wpcf7-list-item-label {
  -webkit-transition: none;
  transition: none;
}

.confirm .c-form--gender .c-your-feed .wpcf7-list-item .wpcf7-list-item-label:before {
  display: none;
}

.confirm .c-form--gender .c-your-feed .wpcf7-list-item input[type="radio"] {
  cursor: default;
}

.confirm .c-form--gender .c-your-feed .wpcf7-list-item input[type="radio"]:checked+.wpcf7-list-item-label:before {
  display: none;
}

.confirm .c-form--gender .c-your-feed .wpcf7-list-item .wpcf7-list-item-label:after {
  display: none;
}

.confirm .c-form--gender .c-your-feed .wpcf7-list-item input[type="radio"]:checked+.wpcf7-list-item-label {
  color: #000;
  font-weight: normal;
  cursor: default;
}

.confirm .c-form--gender .c-your-feed .wpcf7-list-item input[type="radio"]:checked+.wpcf7-list-item-label:after {
  display: none;
}

.confirm .c-form--location .p-form-content__in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}

.confirm .c-form--location .p-form-content__in .c-form-category {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.confirm .c-form--location .p-form-content__in .c-form-feed {
  padding: 0 !important;
  margin-left: 1em;
}

.confirm .c-form--location .p-form-content__in .c-form-feed .c-your-feed__in {
  padding: 0 !important;
}

.confirm .c-form--location .p-form-content__in .c-form-feed .c-your-feed__in select,
.confirm .c-form--location .p-form-content__in .c-form-feed .c-your-feed__in input[type="tel"],
.confirm .c-form--location .p-form-content__in .c-form-feed .c-your-feed__in input[type="text"] {
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1;
}

.confirm .c-form--location .p-form-content__in .c-form-feed .c-your-feed__in .pref::before,
.confirm .c-form--location .p-form-content__in .c-form-feed .c-your-feed__in .pref::after {
  display: none;
}

.confirm .c-form--location .p-form-content__in .c-form-feed .c-your-feed__in .pref .select_box {
  display: block;
}

.confirm .c-form--reason .c-your-feed .wpcf7-list-item:first-child {
  margin-left: 0;
}

.confirm .c-form--reason .reason_form {
  margin-top: 20px;
}

.confirm .c-form--date .c-your-feed__in .wpcf7-form-control-wrap {
  width: 2em;
}

.confirm .c-form--date .c-your-feed__in .wpcf7-form-control-wrap input {
  width: 100%;
}

@media all and (min-width: 768px) {
  .confirm .c-form--date .c-your-feed__in .wpcf7-form-control-wrap {
    width: 2em;
  }
}

.confirm .privacy_box {
  display: none !important;
}

.confirm .btn_back,
.confirm .btn_send {
  display: block !important;
}

.confirm .breadcrumb .currentp:after {
  content: "確認ページ";
}

.confirm textarea {
  resize: none !important;
}

.confirm fieldset.sec_location .l_col .addr1 {
  padding-bottom: 0 !important;
}

.confirm fieldset.sec_location .l_col ul li {
  padding: 15px 0 2px;
}

.confirm fieldset.sec_location .l_col ul li.addr4 {
  padding-bottom: 10px;
}

.p-form-thanks .thanks_box h1 {
  text-align: center;
  margin-top: 70px;
  font-weight: 600;
}

@media all and (min-width: 1025px) {
  .p-form-thanks .thanks_box h1 {
    font-size: 22px;
    font-size: 1.375rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-form-thanks .thanks_box h1 {
    font-size: 22px;
    font-size: 1.375rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-form-thanks .thanks_box h1 {
    font-size: 22px;
  }

  .confirm .c-form--location .p-form-content__in {
    display: block;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
  }


  .confirm .c-form--location .p-form-content__in .c-form-feed {
    padding: 0 !important;
    margin-left: 0;
  }
}

@media all and (max-width: 414px) {
  .p-form-thanks .thanks_box h1 {
    font-size: 5.33333vw;
  }

  .confirm .c-form--location .p-form-content__in {
    display: block;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
  }


  .confirm .c-form--location .p-form-content__in .c-form-feed {
    padding: 0 !important;
    margin-left: 0;
  }
}

.p-form-thanks .thanks_box p {
  margin-top: 30px;
  font-size: 14px;
  line-height: 1.7em;
  text-align: center;
}

.p-form-thanks .progressbar li:first-child,
.p-form-thanks .progressbar li:nth-child(2) {
  color: #aaa;
}

.p-form-thanks .progressbar li:first-child::before,
.p-form-thanks .progressbar li:nth-child(2)::before {
  background-color: #eee;
  color: #aaa;
}

.p-form-thanks .progressbar li:first-child+li:after,
.p-form-thanks .progressbar li:nth-child(2)+li:after {
  background-color: #eee;
}

.p-form-thanks .progressbar li:nth-child(3) {
  color: #e6649a;
}

.p-form-thanks .progressbar li:nth-child(3)::before {
  background-color: #e6649a;
  color: #ffffdd;
}

.p-form-thanks .progressbar li:nth-child(3)+li:after {
  background-color: #e6649a;
}

.c-button--pink.new-btn {
  display: block;
  margin-top: 15px !important;
  margin-left: auto;
  margin-right: auto;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes bar-before {
  0% {
    width: 0px;
  }

  100% {
    width: 100%;
  }
}

/*SP画面時のみ改行を入れる処理*/
@media all and (max-width: 767px) {
  .u-br--sp {
    display: block;
  }
}

@media all and (min-width: 768px) {
  .u-br--sp {
    display: none;
  }
}

/*スマホ レスポンシブ用クラス*/
@media all and (max-width: 767px) {

  /*折り返しを無効化*/
  .nowrap--sp {
    white-space: nowrap;
    height: auto;
  }

  /*高さを自動調整*/
  .sp--height-auto {
    height: auto;
  }
}

/*PC時に空白を改行を入れない処理*/
.u-br--pc {
  display: none;
}

/*PC画面時に改行を入れる処理*/
.u-br--pcblank {
  display: block;
}

.u-br--title {
  display: block;
}

.u-br--contact {
  display: none;
}

/*コンタクトページに空白をつけたいとき(PCに)*/
@media all and (max-width: 768px) {
  .u-br--contact {
    display: block;
  }
}

/*PC版に空白をつける*/
/*414pxを上限とする、縦向きで超えたらこの処理を実行*/
@media all and (max-width: 414px) {
  .u-br--pc {
    display: inline-block;
  }

  /*スマホ時に空白をつけないようにする*/
  .u-br--pcblank {
    display: none;
  }

  .u-br--title {
    display: none;
  }
}

/*PC版に空白をつける*/
/*縦向きで超えたらこの処理を実行*/
@media all and (min-width: 415px) and (max-width: 767px) {
  .u-br--pc {
    display: inline-block;
  }

  /*スマホ時に空白をつけないようにする*/
  .u-br--pcblank {
    display: none;
  }

  .u-br--title {
    display: none;
  }
}

.u-br--pc02 {
  font-size: 0.8rem !important;
  line-height: 1.9rem !important;
  margin-top: 1rem !important;
}

@media all and (max-width: 414px) {
  .u-br--pc02 {
    line-height: 1.8rem !important;
  }
}

.u-br--pc02 span {
  color: #c1ad62;
}

@font-face {
  font-family: "icomoon";
  src: url("/fonts/icomoon.eot?edk4ue");
  src: url("/fonts/icomoon.eot?edk4ue#iefix") format("embedded-opentype"),
    url("/fonts/icomoon.ttf?edk4ue") format("truetype"),
    url("/fonts/icomoon.woff?edk4ue") format("woff"),
    url("/fonts/icomoon.svg?edk4ue#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-check-square:before {
  content: "\e90a";
}

.icon-arrow_right:before {
  content: "\e903";
}

.icon-ribbon_left:before {
  content: "\e908";
  color: #ea609a;
}

.icon-ribbon_right:before {
  content: "\e909";
  color: #ea609a;
}

.icon-accordion-down:before {
  content: "\e905";
}

.icon-accordion-up:before {
  content: "\e906";
}

.icon-phone:before {
  content: "\e900";
}

.icon-crown:before {
  content: "\e901";
}

.icon-calendar:before {
  content: "\e904";
}

.icon-arrow_down:before {
  content: "\e907";
}

.icon-file-text:before {
  content: "\e902";
}

.js-hide {
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}

.js-animation {
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -webkit-transition-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  transition-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.js-animation .p-drawer-fadeIn__wrap {
  overflow-y: auto;
  margin-top: 1rem;
  height: 85%;
}

.js-animation ul li a {
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  top: 0;
  color: #000;
  width: 100%;
  height: 100%;
  display: block;
}

.js-animation ul li a:hover {
  top: -2px;
  text-decoration: none;
  color: #e6649a;
  width: 100%;
  height: 100%;
  display: block;
}

.js-animation ul li a:hover::after {
  display: none;
}

.js-opened {
  overflow: hidden;
  position: absolute;
  width: 100%;
}

.js-opened .p-drawer .c-site-logo {
  opacity: 1;
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.js-opened .p-drawer .p-drawer-fadeIn__in .p-local-navi {
  opacity: 1;
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
}

.js-opened .p-drawer .p-drawer-fadeIn__in .p-local-navi:nth-child(1) {
  -webkit-transition-delay: 400ms;
  transition-delay: 400ms;
}

.js-opened .p-drawer .p-drawer-fadeIn__in .p-local-navi:nth-child(2) {
  -webkit-transition-delay: 500ms;
  transition-delay: 500ms;
}

.js-opened .p-drawer .p-drawer-fadeIn__in .p-local-navi:nth-child(3) {
  -webkit-transition-delay: 600ms;
  transition-delay: 600ms;
}

.js-opened .p-drawer .p-phone-link__head {
  opacity: 1;
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
  -webkit-transition-delay: 700ms;
  transition-delay: 700ms;
}

/* media 20181212追加 */

.media-link {
  /*アニメーションの起点とするためrelativeを指定*/
  position: relative;
  overflow: hidden;
  /*ボタンの形状*/
  text-decoration: none;
  display: inline-block;
  background: #746bab;
  text-align: center;
  outline: none;
  /*アニメーションの指定*/
  transition: ease 0.2s;
  margin: 3rem 0 1rem;
  height: 4rem;
  width: 50%;
  max-width: 409px;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .media-link {
    width: 60%;
  }
}

/*ボタン内spanの形状*/
.media-link span {
  position: relative;
  z-index: 999;
  /*z-indexの数値をあげて文字を背景よりも手前に表示*/
  color: #fff;
}

.media-link:hover span {
  position: relative;

  color: #0000;
  transition-delay: 0.4s;
}

.media-link:hover::after {
  color: #0000;
  border: solid 1px #746bab;
}

.media-link a {
  width: 25em;
  height: 3.5em;
  color: #000;
  margin-top: 1rem;
  display: inline-block;
}

.media-link a img {
  vertical-align: baseline;
}

@media all and (max-width: 414px) {
  .media-link {
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
    overflow: hidden;
    /*ボタンの形状*/
    text-decoration: none;
    display: inline-block;
    background: #746bab;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/
    transition: ease 0.2s;
    margin-top: 2rem;
    width: 100%;
    max-width: 335px;
  }

  /*ボタン内spanの形状*/
  .media-link span {
    position: relative;
    z-index: 3;
    /*z-indexの数値をあげて文字を背景よりも手前に表示*/
    color: #fff;
    top: 0.6rem;
    font-size: 0.85rem;
    letter-spacing: -0.01rem;
  }

  .media-link:hover::after {
    color: #000;
    border: solid 1px #746bab;
  }

  .media-link a {
    width: 100%;
    height: 3.5em;
    padding: 0.2em 1em;
    color: #000;
    margin-top: 0.5rem;
    display: inline-block;
  }

  .media-link a img {
    vertical-align: baseline;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .media-link {
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
    overflow: hidden;
    /*ボタンの形状*/
    text-decoration: none;
    display: inline-block;
    background: #746bab;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/
    transition: ease 0.2s;
    margin-top: 2rem;
    width: 100%;
    max-width: 348px;
  }

  /*ボタン内spanの形状*/
  .media-link span {
    position: relative;
    z-index: 3;
    /*z-indexの数値をあげて文字を背景よりも手前に表示*/
    color: #fff;
  }

  .media-link:hover::after {
    color: #000;
    border: solid 1px #746bab;
  }

  .media-link a {
    width: 100%;
    height: 3.5em;
    color: #000;
    margin-top: 1rem;
    display: inline-block;
  }

  .media-link a img {
    vertical-align: baseline;
  }
}

.bs-special .p-flex .p-flex__item {
  width: calc(100% / 3);
}

.bs-special .p-flex .p-flex__item:nth-child(2) img {
  width: 84%;
}

.guide_imgs {
  display: flex;
  margin-bottom: -8rem;
}

.guide_img {
  width: 37.5%;
  margin-bottom: 4rem;
}

.guide_imgs .guide_img:not(:first-child) {
  margin-left: 1%;
}

.guide_img img {
  width: 100%;
}

@media all and (max-width: 767px) {
  .bs-special .p-flex {
    flex-direction: column;
  }

  .bs-special .p-flex .p-flex__item {
    width: 100%;
  }

  .bs-special .p-flex .p-flex__item:nth-child(2) img {
    width: 76%;
  }

  .guide_imgs {
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .guide_img {
    width: 49%;
  }

  .guide_imgs .guide_img:not(:first-child) {
    margin: 0;
  }

  .guide_imgs .guide_img:nth-child(1),
  .guide_imgs .guide_img:nth-child(2) {
    margin-bottom: 2%;
  }
}

.webbtn {
  height: inherit;
}

.contactbtnbox {
  background-image: url(../img/contact_btn_back1.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 412px;
  float: left;
  text-align: center;
  position: relative;
  background-color: #fff;
  background-position: center;
}

.contactbtnbox02 {
  background-image: url(../img/contact_btn_back2.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 20rem;
  float: left;
  position: relative;
}

@media all and (min-width: 768px) {
  .contactbtnbox02 {
    height: 19rem;
  }
}

.contactbtnbox a,
.contactbtnbox02 a,
.contactbtnSTEP a,
._marryme_banner_black03 a {
  text-decoration: none;
}

@media all and (min-width: 2200px) {
  .contactbtnbox02 a {
    font-size: 1.4rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .contactbtnbox02 a {
    font-size: 1.2rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    min-width: 570px;
    width: 45%;
  }
}

@media all and (min-width: 768px) {
  .contactbtnbox a {
    font-size: 1.2rem;
    position: absolute;
    top: 46%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    min-width: 570px;
  }

  .contactbtnSTEP a {
    max-width: 492px;
  }

  ._marryme_banner_black03 a {
    font-size: 1.2rem;
    top: 5rem;
  }
}

@media all and (min-width: 820px) {
  .contactbtnbox a {
    top: 50%;
    min-width: 550px;
  }

  .contactbtnbox02 a {
    min-width: 603px;
    top: 48%;
  }
}

@media all and (min-width: 1024px) {
  .contactbtnbox02 a {
    top: 48%;
  }
}

@media all and (min-width: 1100px) {
  .contactbtnbox02 a {
    top: 38%;
  }
}

@media all and (min-width: 1366px) {
  .contactbtnbox02 a {
    min-width: 703px;
    top: 35%;
  }

  .contactbtnbox a {
    top: 50%;
    min-width: 700px;
  }
}

@media all and (min-width: 2201px) {
  .contactbtnbox02 a {
    min-width: 803px;
    top: 34%;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .contactbtnbox a {
    top: 35%;
  }
}

@media all and (max-width: 414px) {
  .contactbtnbox02 a {
    max-width: 395px;
  }
}

@media all and (min-width: 768px) and (max-width: 990px) {
  ._marryme_banner_black03 a {
    font-size: 1.2rem;
    top: 30%;
  }
}

@media all and (min-width: 1300px) {
  ._marryme_banner_black03 a {
    top: 8vh;
  }
}

@media all and (min-width: 1021px) {
  ._marryme_banner_black03 a {
    top: 8vh;
  }
}

@media all and (max-width: 767px) {
  .contactbtnbox02 a {
    font-size: 0.9rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    min-width: 75%;
    height: 3.2rem;
  }
}

@media all and (max-width: 414px) {
  .contactbtnbox02 a {
    font-size: 0.8rem;
    height: 2.6rem;
  }
}

/*== ボタン共通設定 */
.contactbtn {
  /*アニメーションの起点とするためrelativeを指定*/
  position: relative;
  overflow: hidden;
  /*ボタンの形状*/
  text-decoration: none;
  display: block;
  padding: 1% 1%;
  text-align: center;
  outline: none;
  /*アニメーションの指定*/
  transition: ease 0.2s;
  margin: 0 auto;
  background: #ed0200;
  font-size: 1.3rem;
  text-decoration: none;
  white-space: nowrap;
  max-width: 614px;
}

@media all and (min-width: 1600px) {
  .contactbtn {
    padding: 1.5rem 0;
    top: 25%;
    padding: 0.6rem 0;
    max-width: 814px;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {

  .contactbtn,
  .contactbtn02 {
    max-width: 514px;
    padding: 0.6rem 0;
    max-width: 614px;
  }
}

@media all and (min-width: 768px) {
  .c-b-m {
    min-width: 42%;
  }

  .contactbtn {
    /* max-width: 514px; */
    top: 40%;
    padding: 0.4rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .contactbtn {
    max-width: 495px;
  }

  .contactbtn02 {
    max-width: 400px;
  }

}

@media all and (max-width: 414px) {

  .contactbtn,
  .contactbtn02 {
    font-size: 0.85rem;
    top: 30%;
    max-width: 362px;
    width: 90%;
  }

  .contactbtn {
    font-size: 0.85rem;
    top: 40%;
    max-width: 362px;
    width: 90%;
  }

  .contactbtn02:hover {
    max-width: 362px;
    width: 90%;
  }

  .contactbtn {
    height: 2.5rem;
    max-width: 362px;
    width: 90%;
  }

  .contactbtn:hover:after {
    width: 96%;
    max-width: 362px;
  }

  .slide-Text1,
  .fadein1-1,
  .fadein1-2,
  .fadein2-1,
  .fadein2-2,
  .fadein2-3 {
    display: none;
  }
}

@media all and (max-width: 320px) {
  .contactbtn {
    height: 2.5rem;
    width: 95%;
    top: 35%;
  }
}


.contactbtn .free,
.contactbtn02 .free {
  border: 0.1rem solid #fff;
  /* ボーダーの色と太さ  */
  padding: 0.2rem 0.5rem;
  margin: 0rem 1rem;
  text-decoration: none;
}

@media all and (max-width: 414px) {

  .contactbtn .free,
  .contactbtn02 .free {
    margin: 0rem 0.5rem;
  }
}

a.free:hover {
  text-decoration: none;
}

/*== ボタン共通設定 */
.contactbtn02 {
  /*アニメーションの起点とするためrelativeを指定*/
  position: relative;
  overflow: hidden;
  /*ボタンの形状*/
  text-decoration: none;
  padding: 1rem 1rem;
  text-align: center;
  outline: none;
  /*アニメーションの指定*/
  transition: ease 0.2s;
  /* margin: 10rem auto; */
  background: #746bab;
  color: #fff;
  font-size: 1.3rem;
  width: 38rem;
  height: 4rem;
  text-decoration: none;
  display: block;
}

@media all and (min-width: 768px) {
  .contactbtn02 {
    /*margin: 6rem auto;*/
    /*無料カウンセリングボタン上下中央寄せのため一旦コメントアウト*/
    margin: 0 auto;
    /* height:330px; */
  }

  .mtb6rem {
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
}

.contactbtn02 .free {
  border: 0.1rem solid #fff;
  /* ボーダーの色と太さ  */
  padding: 0.2rem 0.5rem;
  margin: 0rem 1rem;
  text-decoration: none;
}

.contactbtn02:hover {
  color: #000;
  max-width: 710px;
  text-decoration: none;
}

/*ボタン内spanの形状*/
.contactbtn span,
.contactbtn02 span {
  position: relative;
  z-index: 999;
  /*z-indexの数値をあげて文字を背景よりも手前に表示*/
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.8rem;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .contactbtn span {
    font-size: 1.3rem;
    top: -0.005rem;
  }

  .contactbtn span {
    top: 25%;
  }

  .contactbtnbox02 span {
    top: 5%;
  }
}

@media all and(max-width:415px) {
  .contactbtnbox02 .contactbtn span {
    top: 5% !important;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .contactbtn02:hover {
    max-width: 410px;
  }
}

@media all and (max-width: 414px) {
  .contactbtn02:hover {
    max-width: 610px;
  }

  .contactbtn02:hover span {
    color: #000;
    text-decoration: none;
    z-index: 999;
  }

  .contactbtn span {
    font-size: 1rem;
    top: 7%;
  }

  .course .contactbtn span {
    top: 5%;
  }
}

@media all and (max-width: 320px) {
  .contactbtn span {
    font-size: 0.9rem;
    top: 16%;
  }
}

.contactbtn:hover span {
  color: #ed0200;
  text-decoration: none;
  transition-delay: 0.6s;
  font-weight: 600;
  text-decoration-line: none;
  text-decoration-color: #fff;
}

.contactbtn02:hover span {
  color: #746bab;
  text-decoration: none;
}

.bgleft:before {
  content: "";
  /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  /*色や形状*/
  background: #fff;
  /*背景色*/
  width: 100%;
  height: 100%;
  /*アニメーション*/
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
  color: #000;
  text-decoration: none;
}

.bgleft02:before {
  content: "";
  /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  /*色や形状*/
  background: #fff;
  /*背景色*/
  width: 100%;
  height: 100%;
  /*アニメーション*/
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
  text-decoration: none;
  color: #000;
  border: solid 0.1rem #746bab;
  color: #fff;
  display: block;
}

.cv-btn .bgleft02:before {
  color: #ed0200;
  border: solid 0.1rem #ed0200;
}

/*hoverした際の形状*/
.bgleft:hover:before {
  transform-origin: left top;
  transform: scale(1, 1);
  color: #fff;
  text-decoration: none;
}

.bgleft:hover:after {
  transform-origin: left top;
  transform: scale(1, 1);
  color: #fff;
  text-decoration: none;
  width: 90%;
}

/*hoverした際の形状*/
.bgleft02:hover:before {
  transform-origin: left top;
  transform: scale(1, 1);
  color: #000;
  text-decoration: none;
}

.bgleft03:hover:before {
  transform-origin: left top;
  transform: scale(1, 1);
  color: #fff;
}

.bgleft02:hover:after {
  transform-origin: left top;
  transform: scale(1, 1);
  color: #000;
  text-decoration: none;
}

@media all and (max-width: 415px) {

  .contactbtnbox,
  .contactbtnbox02 {
    height: 15rem;
  }

  .contactbtn02:hover {
    color: #000;
    max-width: 710px;
    text-decoration: none;
  }

  /*== ボタン共通設定 */
  .contactbtn02 {
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
    overflow: hidden;
    /*ボタンの形状*/
    text-decoration: none;
    display: inline-block;
    padding: 1rem 1rem;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/
    transition: ease 0.2s;
    /* margin: 2rem auto; */
    background: #746bab;
    color: #fff;
    font-size: 1rem;
    width: 95%;
    height: 2.8rem;
    text-decoration: none;
  }

  .p-content-wrap.p-content-wrap__course .contactbtn02 {
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
    overflow: hidden;
    /*ボタンの形状*/
    text-decoration: none;
    display: block;
    padding: 1rem 1rem;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/
    transition: ease 0.2s;
    margin: 1rem auto;
    background: #746bab;
    color: #fff;
    font-size: 0.9rem;
    width: 95%;
    height: 3.5rem;
    text-decoration: none;

  }

  .contactbtn02:hover {
    color: #000;
    max-width: 414px;
    text-decoration: none;
    width: 95%;
  }

  /*ボタン内spanの形状*/
  .contactbtn02 span {
    position: relative;
    z-index: 3;
    /*z-indexの数値をあげて文字を背景よりも手前に表示*/
    color: #fff;
    text-decoration: none;
    top: -1%;
  }

  .contactbtn02:hover span {
    color: #746bab;
    text-decoration: none;
  }

  /*ボタン内spanの形状*/
  .contactbtntop span {
    position: relative;
    z-index: 3;
    /*z-indexの数値をあげて文字を背景よりも手前に表示*/
    color: #fff;
    text-decoration: none;
  }

  .contactbtn02top:hover span {
    color: #000;
    text-decoration: none;
  }

  .bgleft:before {
    content: "";
    /*絶対配置で位置を指定*/
    position: absolute;
    top: 0;
    left: 0;
    z-index: 999;
    /*色や形状*/
    background: #fff;
    /*背景色*/
    width: auto;
    height: auto;
    /*アニメーション*/
    transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top;
    /* color: #000; */
    text-decoration: none;
  }

  /*hoverした際の形状*/
  .bgleft:hover:before {
    transform-origin: left top;
    transform: scale(1, 1);
    /* color:#fff; */
    text-decoration: none;
  }

  /*hoverした際の形状*/
  .bgleft02:hover:before {
    transform-origin: left top;
    transform: scale(1, 1);
    /* color:#000; */
    text-decoration: none;
  }

  .bgleft03:hover:before {
    transform-origin: left top;
    transform: scale(1, 1);
    /* color: #fff; */
  }
}

@media all and (max-width: 320px) {
  .p-content-wrap.p-content-wrap__course .contactbtn02 {
    width: 100%;
    letter-spacing: -0.001rem;
  }

  .contactbtn:hover {
    color: #ed0200;
    max-width: 95%;
    text-decoration: none;
  }
}

/*スマホ版コンタクトボックス(無料カウンセリング)の位置やサイズ調整*/
@media all and (min-width: 320px) and (max-width: 414px) {
  .contactbtnbox {
    height: 15rem;
    width: 100%;
    /* top:1rem; */
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-contents__head2 {
    width: 90%;
    margin: 0 auto;
  }
}

@media all and (min-width: 768px) {
  .p-contents__head2 {
    width: 100%;
    margin: 1rem auto;
  }
}


/*スマートフォン版ボタン編集など*/
@media all and (min-width: 415px) and (max-width: 767px) {
  .contactbtnbox {
    height: 15rem;
    width: 100%;
    /* top:1rem; */
  }

  .contactbtnbox02 {
    background-image: url(../img/contact_btn_back2.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 20rem;
    float: left;
    background-position: center;
    position: relative;
  }

  .contactbtn02 {
    position: relative;
    overflow: hidden;
    text-decoration: none;
    padding: 0.8rem 1rem 0rem;
    text-align: center;
    outline: none;
    transition: ease 0.2s;
    background: #746bab;
    color: #fff;
    font-size: 1.3rem;
    width: 80%;
    height: 4rem;
    text-decoration: none;
    display: block;
    margin: 0 auto;
    top: 2rem;
  }

}

/*サイト右スクロールするボタン*/
.scrollBtn {
  position: fixed;
  bottom: 30%;
  right: 0px;
  border-radius: 6px;
  padding: 6px 3px;
  z-index: 1000000000;
}

.scrollBtn ul li.tel {
  background-image: url(../img/common/＿_phone_sideicon.png);
  width: 53px;
  height: 73px;
  text-indent: -999999px;
  list-style-type: none;
  background-repeat: no-repeat;
  background-size: 98%;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  border-left: 1px solid #000;
  border-radius: 10px 0px 0px 10px;
  background-color: rgba(253, 0, 0, 0.5);
  background-position: center;
}

.scrollBtn ul li.mform {
  background-image: url(../img/common/＿_siryo_sideicon.png);
  width: 52px;
  height: 61px;
  text-indent: -999999px;
  list-style-type: none;
  background-repeat: no-repeat;
  background-size: 98%;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  border-left: 1px solid #000;
  border-radius: 10px 0px 0px 10px;
  background-color: rgba(191, 171, 108, 0.5);
  background-position: center;
}

.scrollBtn ul li.freeC {
  background-image: url(../img/common/＿_free-coun_sideicon.png);
  width: 51px;
  height: 83px;
  text-indent: -999999px;
  list-style-type: none;
  background-repeat: no-repeat;
  background-size: 98%;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  border-left: 1px solid #000;
  border-radius: 10px 0px 0px 10px;
  background-color: rgba(182, 176, 212, 0.5);
  background-position: center;
}

.scrollBtn ul li.top {
  background-image: url(../img/top.jpg);
  width: 51px;
  height: 78px;
  text-indent: -999999px;
  list-style-type: none;
  background-repeat: no-repeat;
}

.leftscrollmenu,
.leftscrollmenu_t {
  position: fixed;
  left: 2px;
  bottom: -3px;
  background: rgba(255, 255, 255, 0.75);
  padding: 56px 29px;
  transition: 0.3s;
  /*デフォルト非表示*/
  opacity: 0;
  visibility: hidden;
  width: 349px;
  height: 301px;
  z-index: 999;
  scroll-behavior: smooth;
}

.leftscrollmenu_tp {
  position: fixed;
  left: 2px;
  bottom: -3px;
  background: rgba(255, 255, 255, 0.75);
  padding: 56px 29px;
  transition: 0.3s;
  /*デフォルト非表示*/
  opacity: 0;
  visibility: hidden;
  width: 349px;
  height: 301px;
  z-index: 999;
  scroll-behavior: smooth;
}

.leftscrollmenu h2,
.leftscrollmenu_t h2,
.leftscrollmenu_tp h2 {
  border-bottom: solid 3px #d0b042;
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 30px;
}

.leftscrollmenu p,
.leftscrollmenu_t p,
.leftscrollmenu_tp p {
  font-size: 0.8rem;
}

footer {
  position: relative;
  height: auto;
  background: #fff;
  text-align: center;
}

.lsmac {
  opacity: 1;
  visibility: visible;
  margin-bottom: 45rem;
  scroll-behavior: smooth;
}

@media all and (min-width: 768px) {
  .lsmac {
    margin-bottom: 44.2rem;
  }
}

.lsmab {
  position: absolute;
  top: -400px;
  bottom: auto;
  scroll-behavior: smooth;
}

.lsmac_t {
  opacity: 1;
  visibility: visible;
  scroll-behavior: smooth;
}

.lsmab_t {
  position: absolute;
  top: -400px;
  bottom: auto;
  scroll-behavior: smooth;
}

.lsmac_tp {
  opacity: 1;
  visibility: visible;
  margin-bottom: 734px;
  scroll-behavior: smooth;
}

.lsmab_tp {
  position: absolute;
  top: -400px;
  bottom: auto;
  scroll-behavior: smooth;
}

.pc_br_no {
  display: none;
}

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

  .scrollBtn {
    display: none;
  }

  .leftscrollmenu,
  .leftscrollmenu_t {
    position: fixed;
    left: 2px;
    bottom: -3px;
    background: rgba(255, 255, 255, 0.75);
    padding: 56px 29px;
    transition: 0.3s;
    /*デフォルト非表示*/
    opacity: 0;
    visibility: hidden;
    width: 100%;
    height: 301px;
    z-index: 999;
    scroll-behavior: smooth;
  }

  .leftscrollmenu_tp {
    position: fixed;
    left: 2px;
    bottom: -3px;
    background: rgba(255, 255, 255, 0.75);
    padding: 56px 29px;
    transition: 0.3s;
    /*デフォルト非表示*/
    opacity: 0;
    visibility: hidden;
    width: 100%;
    height: 301px;
    z-index: 999;
    scroll-behavior: smooth;
  }
}

/* グロナビクリックしたら表示される領域 */
.glonav_child {
  display: none;
  padding: 2em 1em;
  background-color: #ffccbc;
  text-align: center;
}

.sub_foot {
  font-weight: 500;
  color: #e6649a;
}

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal>.swiper-pagination-bullets {
  bottom: 0px;
  left: 0;
  width: 100%;
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  bottom: 0px;
  width: 56px;
  height: 18px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 56px 18px;
  background-position: center;
  background-repeat: no-repeat;
}

.dropdown-menu-background {
  width: 100%;
  min-width: 950px;
  display: none;
}

@media all and (min-width: 767px) {
  .dropdown-menu-background {
    min-width: 100%;
    display: none;
  }


}

/*共通・その他end ******************************************************************************/

/*共通・タブstart ******************************************************************************/

.nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-tabs {
  border-bottom: solid 1px #808080;
  padding-bottom: 40px;
  margin-bottom: 55px;
  width: 100%;
}

.nav-tabs .nav-link {
  border: 1px solid #c1ad6c;
  border-radius: 0.6rem;
  color: #000;
  margin-right: 10px;
  margin-bottom: 10px;
}

.nav-tabs .nav-link.tv {
  background-color: #c1ad6c;
  border: 1px solid #c1ad6c;
  border-radius: 0.6rem;
  color: #000;
  margin-right: 10px;
  display: block;
}

.nav-item a.active {
  background-color: #c1ad6c;
  border: 1px solid #c1ad6c;
  border-radius: 0.6rem;
  color: #000;
  margin-right: 10px;
  padding: 0 1.2rem;
  display: block;
}

.active.defalut {
  background-color: #c1ad6c;
  border: 1px solid #c1ad6c;
  color: #000;
  margin-right: 10px;
}

.nav-link .active {
  background-color: #c1ad6c;
  padding: 1.2rem;
}

.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover {
  border: 1px solid #c1ad6c;
  background-color: #c1ad6c;
}

a.nav-link.active {
  background-color: #c1ad6c;
  padding: 5px;
}

.nav-tabs .nav-item .show .nav-link,
.nav-tabs .nav-link.active {
  color: #000;
  background-color: #c1ad6c;
  border: solid 1px #c1ad6c;
  padding: 0.5rem 1.2rem;
}

.tab-content {
  line-height: 2.3rem;
}

.nav-tabs .nav-item {
  width: 15.8%;
  text-align: center;
  margin: 0 0.2rem;
  white-space: nowrap;
}


@media all and (min-width: 320px) and (max-width: 767px) {
  .nav-tabs .nav-item {
    width: 45%;
    font-size: 0.8rem;
    margin: 0 auto;
  }
}

@media all and (min-width: 768px) and (max-width: 937px) {
  .nav-tabs .nav-item {
    width: 25%;
    font-size: 0.8rem;
    margin: 0 auto;
  }
}

@media all and (min-width: 938px) and (max-width: 1250px) {
  .nav-tabs .nav-item {
    width: 25%;
    font-size: 0.8rem;
    margin: 0 auto;
  }
}

@media all and (min-width: 1251px) and (max-width: 1600px) {
  .nav-tabs .nav-item {
    width: 15.8%;
    font-size: 0.7rem;
    margin: 0 auto;
  }
}


@media all and (max-width: 415px) {
  .nav-tabs .nav-item {
    width: 65%;
    font-size: 0.8rem;
    margin: 0 auto;
  }
}

/*共通・タブend ******************************************************************************/

/*トップページstart ******************************************************************************/

/*toppage.css トップページ用CSS */

.c-button-profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
  display: block;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  text-decoration: none;
  padding: 10px 20px;
  color: #000;
  background-color: #fff;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.4);
  box-shadow: 0 0 8px 0, 0, 0, 0.4;
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
  -webkit-transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.c-button-profile:hover {
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);
}

.c-button-profile img {
  max-width: 4rem;
  margin-right: 0.1rem;
}

.c-button-profile .c-button-profile__text {
  max-width: 20rem;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
}

.p-button-profile--sp .c-button-profile__text .c-headline {
  color: #000;
  font-size: 0.7rem;
  letter-spacing: 0.07rem;
  margin: 0 auto 0 0;
  padding: 0.5rem 0rem;
  width: 16rem;
  line-height: 1;
  font-family: didot;
  text-indent: 0.3rem;
}

.p-button-profile--sp .c-button-profile__text .c-headline2 {
  color: #000;
  font-size: 12px;
  font-size: 0.95rem;
  letter-spacing: 0.03rem;
  margin: 1% auto 0 0;
  width: 16rem;
  line-height: 1;
  text-indent: 0.3rem;
}

.p-button-profile--sp .c-button-profile__text .c-headline_logo {
  color: #000;
  font-size: 2.95rem;
  letter-spacing: -0.1em;
  margin: 0 auto 0 0;
  width: 16rem;
  line-height: 1;
  font-family: "didot", "Didot LT STD", "Bodoni MT", "Bodoni 72";
}

.p-contents-header--index .p-contents-title .c-button-profile {
  display: none;
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-contents-title .c-button-profile {
    display: inline-block;
    position: absolute;
    left: 10px;
    top: 240px;
  }
}

/*スマートフォン用ロゴとタイトル表示の位置を決めるところです(310*767)*/
@media all and (min-width: 310px) and (max-width: 767px) {
  /* .p-button-profile--sp .c-button-profile__text .c-headline,
  .p-button-profile--sp .c-button-profile__text .c-headline2,
  .p-button-profile--sp .c-button-profile__text .c-headline_logo {
    display: block;
    width: 16rem;
    text-align: center;
    overflow: hidden;
  }
  .c-button-profile img {
    max-width: 4.5rem;
  } */
}

.p-contents-header--index .p-button-profile--sp .c-button-profile {
  -webkit-transition: none;
  transition: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 6px;
}

.p-contents-header--index .p-button-profile--sp .c-button-profile:hover {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-button-profile--sp {
    padding: 0;
  }

  .p-contents-header--index .p-button-profile--sp .c-button-profile {
    display: none;
  }
}

.p-contents-header--index .p-button-profile--sp {
  background-color: #fff;
  padding: 10px 17px;
  display: none;
}

.p-contents-header--index {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0 auto;
}

@media all and (min-width: 768px) {
  .p-contents-header--index {
    border-top: 10px solid #fff;
    min-width: 768px;
    overflow: hidden;
  }
}

/*トップページの横幅調整。一旦コメントアウトしますきのした20210125　15：15*/
/* @media all and (min-width: 768px) and (max-width:1024px) {
  .p-contents-header--index {
    border-top: 10px solid #fff;
    max-width: 1024px;
    min-width: 768px;
    overflow: hidden;
  }
} */


.p-contents-header--index .p-contents-title {
  position: relative;
  visibility: visible;
  padding-top: 40px;
}

.p-contents-header--index .p-contents-title .c-lead--sp {
  position: absolute;
  bottom: 40px;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 360px;
  width: 90%;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-contents-header--index .p-contents-title .c-lead--sp {
    font-size: 15px;
  }
}

@media all and (max-width: 414px) {
  .p-contents-header--index .p-contents-title .c-lead--sp {
    font-size: 3.73333vw;
  }
}

.p-contents-header--index .p-contents-title .c-lead--sp .c-color--pink {
  color: #e6649a;
  font-weight: bold;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-contents-header--index .p-contents-title .c-lead--sp .c-color--pink {
    font-size: 18px;
  }
}

@media all and (max-width: 414px) {
  .p-contents-header--index .p-contents-title .c-lead--sp .c-color--pink {
    font-size: 4.26667vw;
  }
}

.p-contents-header--index .p-contents-title .c-button--sp {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 360px;
  width: 90%;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-contents-header--index .p-contents-title .c-button--sp {
    font-size: 18px;
  }
}

@media all and (max-width: 414px) {
  .p-contents-header--index .p-contents-title .c-button--sp {
    font-size: 4.26667vw;
  }
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-contents-title {
    padding-top: 0;
  }

  .p-contents-header--index .p-contents-title .c-lead--sp,
  .p-contents-header--index .p-contents-title .c-button--sp {
    display: none;
  }
}

.p-contents-header--index .p-contents-title__in {
  position: relative;
  padding: 0;
}

@media all and (max-width: 767px) {
  .p-contents-header--index .p-contents-title__in {
    overflow: hidden;
    height: 560px;
  }
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-contents-title__in {
    width: 1024px;
    max-width: 1600px;
    min-width: 1024px;
    padding-top: 0;
    padding-bottom: 460px;
    margin: 100px auto 0 auto;
    min-height: 300px;
    z-index: 5;
    overflow: visible;
    background: url("/img/bg_ribbon.svg") top no-repeat;
    background-size: 1600px auto;
  }
}

@media all and (min-width: 1025px) {
  .p-contents-header--index .p-contents-title::before {
    content: "";
    background-color: #000;
    width: 50%;
    height: 191px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
  }

  .p-contents-header--index .p-contents-title::after {
    content: "";
    background-color: #000;
    width: 100%;
    min-width: 500px;
    height: 191px;
    position: absolute;
    top: 95px;
    left: 50%;
    z-index: 1;
  }
}

.p-contents-header--index .p-contents-title .p-top--title {
  height: 100%;
  max-width: 550px;
  overflow: visible;
  margin: 0 auto;
  background: url("/img/img_uekusa--index.png") right bottom no-repeat;
  background-size: contain;
  position: relative;
}

.p-contents-header--index .p-contents-title .p-top--title::before {
  left: -100%;
}

.p-contents-header--index .p-contents-title .p-top--title .c-site-logo {
  position: absolute;
  top: 20px;
  left: 20px;
  max-width: 160px;
}

@media all and (max-width: 450px) {
  .p-contents-header--index .p-contents-title .p-top--title .c-site-logo {
    max-width: 30vw;
  }
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-contents-title .p-top--title .c-site-logo {
    position: absolute;
    top: -80px;
    left: 10px;
    z-index: 10;
    width: 140px;
  }
}

.p-contents-header--index .p-contents-title .p-top--title .c-site-logo img {
  width: 100%;
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-contents-title .p-top--title {
    position: relative;
    top: 0;
    max-width: 100%;
  }
}

.p-contents-header--index .p-contents-title .p-top--title__in {
  padding: 10px;
  position: absolute;
  background-color: #000;
  width: 100%;
  bottom: 150px;
}

.p-contents-header--index .p-contents-title .p-top--title__in::before {
  content: "";
  display: block;
  background-color: #000;
  width: 100%;
  height: 100%;
  max-height: 167.5px;
  position: absolute;
  top: 0;
  left: -99.99%;
  z-index: 1;
}

.p-contents-header--index .p-contents-title .p-top--title__in::after {
  content: "";
  display: block;
  background-color: #000;
  width: 100%;
  height: 100%;
  max-height: 167.5px;
  position: absolute;
  top: 0;
  right: -99.99%;
  z-index: 1;
}

.p-contents-header--index .p-contents-title .p-top--title .c-contents-title {
  position: relative;
  z-index: 1;
  text-align: center;
  margin: 0 auto !important;
  max-width: 500px;
}

.p-contents-header--index .p-contents-title .p-top--title .c-contents-title img {
  width: 80%;
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-contents-title .p-top--title .c-contents-title {
    max-width: 460px;
    position: absolute;
    width: 388px;
    z-index: 6;
    top: 200px;
    left: 146px;
    margin: 0;
    padding-top: 0;
  }

  .p-contents-header--index .p-contents-title .p-top--title .c-contents-title img {
    width: 100%;
  }
}

.p-contents-header--index .p-contents-title .p-contents__information {
  display: none;
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-contents-title .p-contents__information {
    display: block;
    position: absolute;
    bottom: 0;
    font-weight: bold;
    font-size: 17px;
    font-size: 1.0625rem;
    z-index: 5;
    color: #fff;
    right: 10px;
    top: 110px;
  }

  .p-contents-header--index .p-contents-title .p-contents__information p {
    display: block;
    line-height: 1.6;
  }

  .p-contents-header--index .p-contents-title .p-contents__information .c-color--pink {
    font-size: 20px;
    font-size: 1.25rem;
    color: #e6649a;
  }

  .p-contents-header--index .p-contents-title .p-contents__information .c-button {
    width: 270px;
  }
}

@media all and (min-width: 768px) and (min-width: 1025px) {
  .p-contents-header--index .p-contents-title .p-contents__information .c-button {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (min-width: 768px) and (max-width: 1024px) {
  .p-contents-header--index .p-contents-title .p-contents__information .c-button {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (min-width: 415px) and (max-width: 767px) {
  .p-contents-header--index .p-contents-title .p-contents__information .c-button {
    font-size: 15px;
  }
}

@media all and (min-width: 768px) and (max-width: 414px) {
  .p-contents-header--index .p-contents-title .p-contents__information .c-button {
    font-size: 3.73333vw;
  }
}

.p-contents-header--index .p-ribbon {
  text-align: center;
}

.p-contents-header--index .p-figure {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 60vw;
  max-width: 280px;
  z-index: 0;
  display: none;
}

.p-contents-header--index .p-figure img {
  width: 100%;
}

@media all and (min-width: 768px) {
  .p-contents-header--index .p-figure {
    position: absolute;
    display: block;
    width: 260px;
    left: 460px;
    z-index: 5;
  }
}

@media all and (min-width: 768px) {
  .p-section__in {
    width: 1024px;
  }
}

.p-section--concept {
  background: url("/img/bg_section--concept.jpg") left top no-repeat;
  background-size: 750px auto;
}

.p-section--tp {
  text-align: left;
}

.p-section--tp .p-section__content {
  padding: 0 0 30px;
  width: 100%;
}

.p-section--tp .p-section__content .p-section__image img {
  width: 100%;
  margin: 0 auto;
}

@media all and (max-width: 767px) {
  .p-section--tp .p-section__content h3 img {
    width: 100%;
  }

  .p-section--tp .p-section__content .p-section__content--txt {
    text-align: center;
  }

  .p-section--tp .p-section__content .p-section__content--txt h3,
  .p-section--concept .p-section__content .p-section__content--txt p {
    text-align: left;
  }

  .p-section--tp .p-section__content .p-section__content--txt .c-button {
    margin: 20px auto 0 auto;
  }

  .p-section--tp .p-section__content .p-section__image {
    margin: 0 auto;
  }

  .p-section--tp .p-section__content--01 h3 {
    max-width: 40vw;
  }

  .p-section--tp .p-section__content--01 .p-section__image {
    max-width: 40%;
    width: 100%;
  }

  .p-section--tp .p-section__content--02 h3 {
    max-width: 60vw;
  }

  .p-section--tp .p-section__content--02 .p-section__image {
    max-width: 60%;
  }

  .p-section--tp .p-section__content--03 h3 {
    max-width: 76vw;
  }

  .p-section--tp .p-section__content--03 .p-section__image {
    max-width: 60%;
  }

  .p-section--tp .p-section__content--04 h3 {
    max-width: 48vw;
  }

  .p-section--tp .p-section__content--04 .p-section__image {
    max-width: 70%;
  }

  .p-section--tp .p-section__content .p-section__content--txt {
    width: 100%;
  }
}

@media all and (min-width: 768px) {
  .p-section--tp .p-section__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding: 3% 0;
  }

  .p-section--tp .p-section__content:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .p-section--tp .p-section__content--02 .p-section__content--txt {
    width: 55%;
  }

  .p-section--tp .p-section__content--02 .p-section__image {
    max-width: 310px;
    margin-left: 30px;
  }

  .p-section--tp .p-section__content--03 .p-section__content--txt {
    width: 55%;
  }

  .p-section--tp .p-section__content--03 .p-section__image {
    max-width: 300px;
    margin-right: 30px;
  }

  .p-section--tp .p-section__content--04 .p-section__content--txt {
    width: 50%;
  }

  .p-section--tp .p-section__content--04 .p-section__image {
    max-width: 333px;
    margin-left: 30px;
  }

  .topbtn01 {
    margin: -5rem;
  }
}

/*== ボタン共通設定 */
/*mv下ボタン*/
.contactbtnMV {
  /*アニメーションの起点とするためrelativeを指定*/
  position: relative;
  overflow: hidden;
  /*ボタンの形状*/
  text-decoration: none;
  display: block;
  border: 1px solid #555;
  /* ボーダーの色と太さ */
  padding: 10px 30px;
  text-align: center;
  outline: none;
  /*アニメーションの指定*/
  transition: ease 0.2s;
  padding: 20px;
  margin: 108px auto;
  background: #ed0200;
  color: #000;
  max-width: 330px;
}

.contactbtnSTEP {
  margin: 6rem auto 0;
  height: 3rem;
}

.mac.safari .contactbtnSTEP {
  margin: 4rem auto 0;
  height: 14rem;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .mac.safari .contactbtnSTEP {
    margin: 2rem auto 0;
  }
}

@media all and (max-width: 415px) {
  .mac.safari .contactbtnSTEP {
    height: 14rem;
  }
}

.mobile.safari .contactbtnSTEP {
  margin: 4rem auto 0;
  height: 5rem;
}

.contactbtn_mov {
  margin: -5rem auto 0;
  max-width: 700px;
  height: 14rem;
}

/*== ボタン共通設定 */

.contactbtntop {
  /*アニメーションの起点とするためrelativeを指定*/
  position: relative;
  overflow: hidden;
  /*ボタンの形状*/
  text-decoration: none;
  display: block;
  /* ボーダーの色と太さ */
  text-align: left;
  outline: none;
  /*アニメーションの指定*/
  transition: ease 0.2s;
  padding: 20px;
  background: #746bab;
  color: #000;
  font-size: 0.8rem;
  margin-top: 2rem;
}

@media all and (min-width: 768px) {
  .contactbtntop {
    max-width: 353px;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .contactbtntop {
    margin-top: 3rem;
    max-width: 374px;
    margin: 0 auto;
  }

  .Btn-Text {
    max-width: 80%;
  }

}

@media all and (max-width: 414px) {
  .contactbtntop {
    margin: 0 auto;
    padding: 15px;
    width: 80%;
  }

  .Btn-Text {
    max-width: 100%;
  }
}

.contactbtnMV:hover {
  color: #ed0200;
  max-width: 330px;
}

.contactbtnS.tp_80per {
  color: #ed0200;
  max-width: 700px;
}

.contactbtntop:hover {
  color: #000;
}

.Btn-Text {
  /*アニメーションの起点とするためrelativeを指定*/
  position: relative;
  overflow: hidden;
  /*ボタンの形状*/
  text-decoration: none;
  display: block;
  /* ボーダーの色と太さ */
  text-align: left;
  outline: none;
  /*アニメーションの指定*/
  transition: ease 0.2s;
  padding: 20px;
  background: #746bab;
  color: #000;
  max-width: 330px;
  font-size: 0.8rem;
  margin-top: 2rem;
  z-index: 1;
}

.Btn-Text:hover {
  color: #000;
  max-width: 330px;
  transition: 0.2s;
  z-index: 1;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .Btn-Text {
    display: block;
    margin: 0 auto;
  }

}

@media all and (max-width: 414px) {
  .Btn-Text {
    max-width: 100%;
  }
}

/*ボタン内spanの形状*/

.contactbtnMV span,
.contactbtnSTEP span .contactbtn span {
  position: relative;
  z-index: 999;
  /*z-indexの数値をあげて文字を背景よりも手前に表示*/
  color: #fff;
}

.contactbtnMV span,
.contactbtn_mov span {
  position: relative;
  z-index: 999;
  /*z-indexの数値をあげて文字を背景よりも手前に表示*/
  color: #fff;
}

.contactbtnMV:hover span,
.contactbtnSTEP:hover span,
.contactbtn:hover span {
  color: #ed0200;
}

.contactbtnMV:hover span,
.contactbtn_mov:hover span {
  color: #ed0200;
}

/*ボタン内spanの形状*/

.contactbtntop span {
  position: relative;
  z-index: 999;
  /*z-indexの数値をあげて文字を背景よりも手前に表示*/
  color: #fff;
  display: block;
  width: 100%;
  height: 100%;
}

.contactbtntop:hover span {
  color: #000;
  text-decoration-color: none;
}

.Btn-Text span {
  position: relative;
  z-index: 999;
  /*z-indexの数値をあげて文字を背景よりも手前に表示*/
  color: #fff;
  text-align: center;
}

.Btn-Text:hover span {
  color: #000;
  text-decoration-color: none;
}

/*== 背景が流れる（左から右） */

.bgleft:before {
  content: "";
  /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  /*色や形状*/
  background: #fff;
  /*背景色*/
  width: 100%;
  height: 100%;
  /*アニメーション*/
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
  color: #000;
  border: solid 0.1rem #ed0200;
}

.bglefttop:before {
  content: "";
  /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  /*色や形状*/
  background: transparent;
  /*背景色*/
  width: 100%;
  height: 100%;
  /*アニメーション*/
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
  color: #000;
}

/*hoverした際の形状*/

.bgleft:hover:before {
  transform-origin: left top;
  transform: scale(1, 1);
  color: #fff;
}

/*hoverした際の形状*/

.bglefttop:hover:before {
  transform-origin: left top;
  transform: scale(1, 1);
  color: #000;
}

.p-section--tp .p-section__content--txt {
  text-align: left;
}

.p-section--step {
  padding-bottom: 1rem;
}

@media all and (min-width: 1680px) {
  .p-section--step {
    max-height: 48rem;
  }
}

.p-section--Lecture {
  width: 100%;
  float: left;
  display: block;
}

.Lecturetext {
  width: 49%;
  float: left;
  padding-right: 2rem;
}

.Lecturebtn {
  width: 49%;
}

.p-acordion_lecture {
  margin: 1rem 0rem;
}

.p-section--step .p-step__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  border: solid 1px #000;
  max-width: 960px;
}

.impact_tl {
  width: 338px;
  font-size: 1.5rem;
  font-weight: 700;
  color: #c0c0c0;
  opacity: 1;
  font-family: Impact;
  text-decoration: none;
  padding: 4.4rem 1rem;
}

.p-section--step .p-step__list .c-step__item01 {
  width: 338px;
  height: 246px;
  background-image: url(../img/top/__t02.png);
  background-repeat: no-repeat;
  background-size: 21rem;
  background-position: center;
}

.p-section--step .p-step__list .c-step__item01 a,
.p-section--step .p-step__list .c-step__item02 a,
.p-section--step .p-step__list .c-step__item03 a,
.p-section--step .p-step__list .c-step__item04 a,
.p-section--step .p-step__list .c-step__item05 a,
.p-section--step .p-step__list .c-step__item06 a {
  padding: 20px;
  background-color: rgba(230, 100, 154, 0.8);
  width: 18.7rem;
  height: 11rem;
  display: inline-block;
  text-align: center;
  transition: background 1s;
  display: block;
  margin-top: 3rem;
  position: absolute;
  opacity: 0;
  color: #010101;
  font-size: 1.2em;
  text-align: left;
  font-weight: 600;
  text-decoration: none;
}

@media all and (max-width: 415px) {

  .p-section--step .p-step__list .c-step__item01 a,
  .p-section--step .p-step__list .c-step__item02 a,
  .p-section--step .p-step__list .c-step__item03 a,
  .p-section--step .p-step__list .c-step__item04 a,
  .p-section--step .p-step__list .c-step__item05 a,
  .p-section--step .p-step__list .c-step__item06 a {
    margin-top: 2rem;
    font-size: 1rem;
  }
}

.p-section--step .p-step__list .c-step__item01 a:hover,
.p-section--step .p-step__list .c-step__item02 a:hover,
.p-section--step .p-step__list .c-step__item03 a:hover,
.p-section--step .p-step__list .c-step__item04 a:hover,
.p-section--step .p-step__list .c-step__item05 a:hover,
.p-section--step .p-step__list .c-step__item06 a:hover {
  position: absolute;
  width: 100%;
  height: 62%;
  background-color: rgba(255, 255, 255, 0.5);
  opacity: 0.8;
  color: #000;
  font-weight: 800;
}

@media all and (max-width: 768px) {

  .p-section--step .p-step__list .c-step__item01 a:hover,
  .p-section--step .p-step__list .c-step__item02 a:hover,
  .p-section--step .p-step__list .c-step__item03 a:hover,
  .p-section--step .p-step__list .c-step__item04 a:hover,
  .p-section--step .p-step__list .c-step__item05 a:hover,
  .p-section--step .p-step__list .c-step__item06 a:hover {

    background-color: rgba(230, 100, 154, 0.8);
  }
}

@media all and (min-width: 1680px) {

  .p-section--step .p-step__list .c-step__item01 a:hover,
  .p-section--step .p-step__list .c-step__item02 a:hover,
  .p-section--step .p-step__list .c-step__item03 a:hover,
  .p-section--step .p-step__list .c-step__item04 a:hover,
  .p-section--step .p-step__list .c-step__item05 a:hover,
  .p-section--step .p-step__list .c-step__item06 a:hover {
    max-width: 21rem;
    left: 1.4rem;
  }
}

.p-section--step .p-step__list .c-step__item02 {
  width: 338px;
  height: 246px;
  background-image: url(../img/top/__t03.png);
  background-repeat: no-repeat;
  background-size: 21rem;
  background-position: center;
}

.p-section--step .p-step__list .c-step__item03 {
  width: 338px;
  height: 246px;
  background-image: url(../img/top/__t04.png);
  background-repeat: no-repeat;
  background-size: 21rem;
  background-position: center;
}

.p-section--step .p-step__list .c-step__item04 {
  width: 338px;
  height: 246px;
  background-image: url(../img/top/__t05.png);
  background-repeat: no-repeat;
  background-size: 21rem;
  background-position: center;
  position: absolute;
}

.p-section--step .p-step__list .c-step__item05 {
  width: 338px;
  height: 246px;
  background-image: url(../img/top/__t06.png);
  background-repeat: no-repeat;
  background-size: 21rem;
  background-position: center;
}

.p-section--step .p-step__list .c-step__item06 {
  width: 338px;
  height: 246px;
  background-image: url(../img/top/__t07.png);
  background-repeat: no-repeat;
  background-size: 21rem;
  background-position: center;
}

@media all and (min-width: 768px) {
  .p-section--step .p-step__list {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0;
    padding: 0;
  }

  .p-section--step .p-step__list .c-step__item {
    margin: 0 10px 50px 10px;
  }
}

@media all and (max-width: 767px) {
  .p-section--step .p-step__list {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0;
    padding: 0;
  }

  .p-section--step .p-step__list .c-step__item {
    margin: 0 10px 50px 10px;
  }

  .p-section--tp {
    background-size: contain;
  }

  .p-section--step {
    height: 615px;
    max-height: 38rem;
  }

  .p-section__in01 {
    padding: 0 0.5rem;
    border-top: 1px solid #808080;
  }

  .contactbtnSTEP {
    margin: 3rem auto 0;
    height: auto;
    display: inline-block;
    width: 100%;
  }

  .swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    z-index: 1;
    margin: 2rem auto;
    width: 100%;
    float: left;
  }
}

.p-section__body .p-step__list span {
  font-size: 1.5rem;
  font-weight: 700;
  color: #e6649a;
  opacity: 1;
  font-family: Impact;
  text-decoration: underline;
}

@media all and (max-width: 768px) {
  .p-section__body .p-step__list span {
    color: #c1ad62;
  }
}

.p-section__body .p-step__list span:hover {
  text-decoration: underline;
}

.p-section--planning .p-section__subhead {
  font-weight: bold;
  margin-top: 50px;
}

.p-section--planning .p-flex--performance .p-flex__item {
  padding: 0;
  margin: 0;
  width: 240px;
  height: 240px;
  text-align: center;
  display: inline-block;
  background-color: #ffffee;
  border: 2px solid #e6649a;
  margin: 15px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-section--planning .p-flex--performance .p-flex__item dt {
  font-weight: bold;
  line-height: 1.4;
  margin-top: 25px;
}

.p-section--planning .p-flex--performance .p-flex__item dd {
  margin: 10px 0 0 0;
}

@media all and (min-width: 768px) {
  .p-section--planning .p-flex--performance {
    display: block;
    width: 18rem;
    float: left;
  }

  .p-section--planning .p-flex--performance_2 {
    display: block;
    width: 17rem;
    float: left;
  }

  .p-section--planning .p-blockitem {
    width: 25rem;
    float: left;
  }

  .p-section--planning .p-blockitem img {
    max-width: 24rem;
  }

  @media all and (min-width: 768px) and (max-width: 1024px) {
    .p-section--planning .p-blockitem img {
      max-width: 20rem;
    }
  }

  .p-section--planning .p-flex--performance .p-flex__item {
    padding: 0;
    margin: 0;
    width: 260px;
    height: 260px;
    text-align: center;
    display: inline-block;
    background-color: #fff;
    border: 2px solid #e6649a;
    margin: 15px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }

  .p-section--planning .p-flex--performance .planningitem01,
  .p-section--planning .p-flex--performance .planningitem02,
  .p-section--planning .p-flex--performance_2 .planningitem03,
  .p-section--planning .p-flex--performance .planningitem04,
  .p-section--planning .p-flex--performance_2 .planningitem05,
  .p-section--planning .p-flex--performance_2 .planningitem06 {
    text-align: center;
    display: inline-block;
    margin: 15px;
    /* float: left; */
    display: inline-block;
    text-align: center;
    box-shadow: 0 0 3px 0 rgb(0 0 0 / 12%), 0 2px 3px 0 rgb(0 0 0 / 22%);
    transition: 0.3s;
    padding: 1rem;
    transition: all 0.6s ease 0s;
    z-index: 999;
  }

  .p-section--planning .p-flex--performance .planningitem01:hover,
  .p-section--planning .p-flex--performance .planningitem02:hover,
  .p-section--planning .p-flex--performance_2 .planningitem03:hover,
  .p-section--planning .p-flex--performance .planningitem04:hover,
  .p-section--planning .p-flex--performance_2 .planningitem05:hover,
  .p-section--planning .p-flex--performance_2 .planningitem06:hover {
    box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
    transform: translateY(-4px);
    cursor: pointer;
    transform: scale(1.1, 1.1);
    z-index: 999;
  }

  @media all and (max-width: 414px) {

    .p-section--planning .p-flex--performance .planningitem01:hover,
    .p-section--planning .p-flex--performance .planningitem02:hover,
    .p-section--planning .p-flex--performance_2 .planningitem03:hover,
    .p-section--planning .p-flex--performance .planningitem04:hover,
    .p-section--planning .p-flex--performance_2 .planningitem05:hover,
    .p-section--planning .p-flex--performance_2 .planningitem06:hover {
      transform: scale(1.0, 1.1);
    }
  }

  .p-section--planning .p-flex--performance .planningitem01 img {
    width: 70%;
    margin-left: -4rem;
  }

  .p-section--planning .p-flex--performance .planningitem02 img {
    width: 100%;
  }

  .p-section--planning .p-flex--performance_2 .planningitem03 img {
    width: 100%;
  }

  .p-section--planning .p-flex--performance .planningitem04 img {
    width: 70%;
    margin-left: -4rem;
  }

  .p-section--planning .p-flex--performance_2 .planningitem05 img {
    width: 70%;
    margin-left: -4rem;
  }

  .p-section--planning .p-flex--performance_2 .planningitem06 img {
    width: 100%;
  }

  .planningitem01 h2,
  .planningitem02 h2,
  .planningitem03 h2,
  .planningitem04 h2,
  .planningitem05 h2,
  .planningitem06 h2 {
    font-size: 1rem;
    font-weight: 600;
    text-align: left;
    position: relative;
    margin-top: 1rem;
    letter-spacing: 0.2em;
  }

  .planningitem01 h2:after,
  .planningitem02 h2:after,
  .planningitem03 h2:after,
  .planningitem04 h2:after,
  .planningitem05 h2:after,
  .planningitem06 h2::after {
    content: "";
    display: block;
    height: 2px;
    background: linear-gradient(to right, #c1ad6c, transparent);
  }

  .planningitem01 p,
  .planningitem02 p,
  .planningitem03 p,
  .planningitem04 p,
  .planningitem05 p,
  .planningitem06 p {
    text-align: left;
    font-size: 0.9rem;
  }

  .planningbtmbox {
    width: 100%;
    display: inline;
    float: left;
    margin: 0 auto;
    background-color: #fff;
  }

  .planningbtmbox .left {
    width: 43%;
    display: block;
    float: left;
  }

  .planningbtmbox .left a {
    margin: 10px;
  }

  .planningbtmbox p {
    width: 53%;
    float: left;
    line-height: 1.8rem;
    font-size: 0.9rem;
    margin: 3rem -1rem;
    letter-spacing: 0.4rem;
    text-shadow: 1px 2px 3px #808080;
    background-color: rgba(255, 255, 255, 0.95);
    font-weight: 300;
    padding-right: 6rem;
    padding-left: 1rem;
    height: 19rem;
  }

  @media all and (min-width: 856px) and (max-width: 1024px) {
    .planningbtmbox p {
      margin: 6rem -1rem;
      width: 55%;
    }
  }

  .pattern-dots-lg {
    width: 100%;
    background-image: url(../img/top/__top_black_banner05.png);
    background-repeat: no-repeat;
    background-position: right;
    background-size: 29rem;
  }

  .p-section--planning .p-flex--performance .p-flex__item dt {
    font-weight: bold;
    line-height: 1.4;
    margin-top: 30px;
  }

  .p-section--planning .p-flex--performance .p-flex__item dd {
    margin: 10px 0 0 0;
  }
}

@media all and (min-width: 380px) and (max-width: 767px) {
  .p-section--planning .p-blockitem img {
    max-width: 10rem;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section--planning .p-flex--performance {
    display: block;
    width: 90%;
    float: left;
    margin: 0 1rem;
  }

  .p-section--planning .p-flex--performance_2 {
    display: block;
    width: 90%;
    float: left;
    margin: 0 1rem;
  }

  .p-section--planning .p-blockitem {
    width: 100%;
    float: left;
  }

  .p-section--planning .p-blockitem img {
    max-width: 24rem;
  }

  .p-section--planning .p-flex--performance .p-flex__item {
    padding: 0;
    margin: 0;
    width: 260px;
    height: 260px;
    text-align: center;
    display: inline-block;
    background-color: #fff;
    border: 2px solid #e6649a;
    margin: 15px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }

  .p-section--planning .p-flex--performance .planningitem01,
  .p-section--planning .p-flex--performance .planningitem02,
  .p-section--planning .p-flex--performance_2 .planningitem03,
  .p-section--planning .p-flex--performance .planningitem04,
  .p-section--planning .p-flex--performance_2 .planningitem05,
  .p-section--planning .p-flex--performance_2 .planningitem06 {
    text-align: center;
    display: inline-block;
    text-align: center;
    box-shadow: 0 0 3px 0 rgb(0 0 0 / 12%), 0 2px 3px 0 rgb(0 0 0 / 22%);
    transition: 0.3s;
    padding: 1rem;
    transition: all 0.6s ease 0s;
    width: 100%;
    display: inline-block;
  }

  .p-section--planning .p-flex--performance .planningitem01:hover,
  .p-section--planning .p-flex--performance .planningitem02:hover,
  .p-section--planning .p-flex--performance_2 .planningitem03:hover,
  .p-section--planning .p-flex--performance .planningitem04:hover,
  .p-section--planning .p-flex--performance_2 .planningitem05:hover,
  .p-section--planning .p-flex--performance_2 .planningitem06:hover {
    box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
    transform: translateY(-4px);
    cursor: pointer;
    transform: scale(1.0, 1.1);
  }

  .p-section--planning .p-flex--performance .planningitem01 img {
    width: 55%;
    background-color: #fff;
    z-index: 999;
  }

  .p-section--planning .p-flex--performance .planningitem02 img,
  .p-section--planning .p-flex--performance_2 .planningitem03 img,
  .p-section--planning .p-flex--performance_2 .planningitem06 img {
    width: 70%;
    background-color: #fff;
    z-index: 999;
  }

  .p-section--planning .p-flex--performance .planningitem04 img,
  .p-section--planning .p-flex--performance_2 .planningitem05 img {
    width: 50%;
    background-color: #fff;
    z-index: 999;
  }

  .planningitem01 h2,
  .planningitem02 h2,
  .planningitem03 h2,
  .planningitem04 h2,
  .planningitem05 h2,
  .planningitem06 h2 {
    font-size: 1rem;
    font-weight: 600;
    text-align: left;
    position: relative;
    margin-top: 1rem;
    letter-spacing: 0.2em;
    background-color: #fff;
    z-index: 999;
  }

  .planningitem01 h2:after,
  .planningitem02 h2:after,
  .planningitem03 h2:after,
  .planningitem04 h2:after,
  .planningitem05 h2:after,
  .planningitem06 h2::after {
    content: "";
    display: block;
    height: 2px;
    background: linear-gradient(to right, #c1ad6c, transparent);
    background-color: #fff;
    z-index: 999;
  }

  .planningitem01 p,
  .planningitem02 p,
  .planningitem03 p,
  .planningitem04 p,
  .planningitem05 p,
  .planningitem06 p {
    text-align: left;
    font-size: 0.9rem;
    background-color: #fff;
    z-index: 999;
  }

  .planningbtmbox {
    width: 100%;
    display: block;
    margin: 0 0 10%;
  }

  .planningbtmbox {
    width: 100%;
    display: block;
    margin: 0 auto;
  }

  .planningbtmbox .left {
    width: 100%;
    display: block;
  }

  @media all and (max-width: 414px) {
    .planningbtmbox .left {
      width: 100%;
    }

    .planningbtmbox .left a {
      margin: 10px auto;
      display: block;
      width: 85%;
    }
  }

  .planningbtmbox p {
    width: 100%;
    display: block;
    line-height: 1.8rem;
    font-size: 0.9rem;
    margin: 3rem auto;
    letter-spacing: 0.4rem;
    text-shadow: 1px 2px 3px #808080;
    background-color: rgba(255, 255, 255, 0.95);
    font-weight: 300;
    background-color: #fff;
    height: auto;
    padding: 1rem 6rem 1rem 1rem;
  }

  .pattern-dots-lg {
    width: 100%;
    background-image: url(../img/top/__top_black_banner05.png);
    background-repeat: no-repeat;
    background-position: right;
    background-size: 18rem;
    background-position-y: bottom;
  }

  .p-section--planning .p-flex--performance .p-flex__item dt {
    font-weight: bold;
    line-height: 1.4;
    margin-top: 30px;
  }

  .p-section--planning .p-flex--performance .p-flex__item dd {
    margin: 10px 0 0 0;
  }

  .Lecturetext {
    width: 98%;
    float: none;
    padding: 1rem;
  }
}

.p-section--planning .p-flex--ranking .p-flex__item {
  max-width: 460px;
  text-align: left;
  background-color: #fff;
  border-radius: 8px;
  padding: 20px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  line-height: 1.8;
  margin-top: 50px;
  margin-bottom: 30px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
}

.p-section--planning .p-flex--ranking .p-flex__item:last-child {
  margin-bottom: 0;
}

.p-section--planning .p-flex--ranking .p-flex__item .p-ranking {
  text-align: center;
  font-weight: bold;
}

.p-section--planning .p-flex--ranking .p-flex__item .c-icon-crown {
  width: 70px;
  height: 70px;
  background-color: #fff;
  border-radius: 50%;
  text-align: center;
  position: absolute;
  left: 50%;
  margin-left: -35px;
  top: -30px;
  z-index: 0;
}

.p-section--planning .p-flex--ranking .p-flex__item .c-icon-crown--rank1 {
  color: #ffcc00;
}

.p-section--planning .p-flex--ranking .p-flex__item .c-icon-crown--rank2 {
  color: #b4b4b5;
}

.p-section--planning .p-flex--ranking .p-flex__item .c-icon-crown--rank3 {
  color: #bd8f5c;
}

.p-section--planning .p-flex--ranking .p-flex__item .c-icon-crown .icon {
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
}

_::-webkit-full-page-media,
_:future,
:root .p-section--planning {
  height: auto;
  background-color: #fff;
  position: relative;
  z-index: 100;
}

.p-section--planning {
  height: auto;
  background-color: #fff;
  position: relative;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section--planning {
    height: auto;
    background-color: #fff;
  }
}

@media all and (max-width: 414px) {
  .p-section--planning {
    height: 215rem;
    background-color: #fff;
    float: left;
  }

  .planningbtmbox p {
    padding: 0 5rem 0 1rem;
    font-size: 0.8rem;
  }
}

@media all and (min-width: 768px) {
  .p-section--planning .planningbtmbox {
    width: 102%;
    margin-left: -1%;
  }
}

.p-section--data .p-flex--ranking .p-flex__item .c-icon-crown span {
  position: absolute;
  left: 0;
  top: 20%;
  width: 100%;
  text-align: center;
}

.p-section--data .p-flex--ranking .p-flex__item .c-ranking__head {
  color: #e6649a;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  margin: 10px 0;
  position: relative;
  z-index: 1;
}

.p-section--data .p-flex--ranking .p-flex__item .c-ranking_content {
  margin: 0;
}

@media all and (min-width: 768px) {
  .p-section--data .p-flex--ranking {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .p-section--data .p-flex--ranking .p-flex__item {
    width: 30%;
    margin-left: 30px;
    margin-right: 0;
    margin-bottom: 30px;
  }

  .p-section--data .p-flex--ranking .p-flex__item:first-child {
    margin-left: 0;
  }

  .p-section--data .p-flex--ranking .p-flex__item:nth-child(n + 4) {
    margin-top: 0;
    margin-bottom: 0;
  }
}

.p-section--course {
  float: left;
  width: 100%;
  z-index: 1000000;
  position: relative;
}

.p-section--course h3 {
  font-size: 1rem;
  background-color: #fff;
  color: #000;
  border: #000 1px solid;
  padding: 10px;
  margin-top: 20px;
  text-align: center;
}

.p-section--course h3 a {
  display: block;
  width: 100%;
  height: 100%;
}

.p-section--course h3 a.saumc {
  display: block;
  width: 100%;
  height: 100%;
  letter-spacing: -0.1em;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section--course h3 a.saumc {
    letter-spacing: -0.18em;
  }
}

.p-section--activity {
  float: left;
  width: 100%;
  z-index: 1000000;
  position: relative;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section--course h3 {
    margin: 2rem auto;
    width: 410px;
  }
}

.p-section--course h3:hover {
  font-size: 1rem;
  background-color: #e6649a;
  color: #fff;
  border: #000;
  padding: 10px;
  margin-top: 20px;
  text-align: center;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section--course h3:hover {
    margin: 2rem auto;
    width: 410px;
  }
}

.p-section--course .p-flex {
  margin-top: 50px;
}

.p-section--course .p-flex__item {
  /* width: 43vw; */
  margin-bottom: 50px;
  margin-right: 10px;
  float: left;
}

@media all and (min-width: 1024px) {
  .p-section--course .p-flex__item {
    width: 18rem;
  }
}

@media all and (min-width: 1366px) {
  .p-section--course .p-flex__item {
    width: 19rem;
  }
}

@media all and (min-width: 1680px) {
  .p-section--course .p-flex__item {
    width: 24rem;
  }
}

@media all and (min-width: 834px) and (max-width: 1023px) {
  .p-section--course .p-flex__item {
    width: 29vw;
    float: left;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section--course .p-flex__item {
    width: 25vw;
    margin: 1rem auto 3rem;
  }
}

@media all and (max-width: 736px) {
  .p-section--course .p-flex__item {
    width: 90vw;
    margin: 1rem auto 3rem;
  }
}

@media all and (max-width: 415px) {
  .p-section--course .p-flex__item {
    width: 95.3vw;
    margin: 1rem auto 3rem;
  }
}


.p-section--course .p-flex__item .icon-arrow_down {
  color: #e6649a;
  margin-bottom: 20px;
}

@media all and (min-width: 1025px) {
  .p-section--course .p-flex__item .icon-arrow_down {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section--course .p-flex__item .icon-arrow_down {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section--course .p-flex__item .icon-arrow_down {
    font-size: 26px;
  }
}

@media all and (max-width: 414px) {
  .p-section--course .p-flex__item .icon-arrow_down {
    font-size: 6.4vw;
  }

  .p-section--course h3 {
    font-size: 1rem;
    background-color: #fff;
    color: #000;
    border: #000 1px solid;
    padding: 10px;
    margin-top: 0;
    text-align: center;
    display: block;
    width: 263px;
    margin: 0 auto;
  }

  .p-section--course h3:hover {
    font-size: 1rem;
    background-color: #e6649a;
    color: #fff;
    border: #000;
    padding: 10px;
    width: 263px;
    margin: 0 auto;
  }
}

.p-section--course .p-flex__item .p-plan__body {
  margin-top: 10px;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section--course .p-flex__item .p-plan__body {
    width: 100%;
    margin: 2% auto;
  }
}

@media all and (max-width: 415px) {
  .p-section--course .p-flex__item .p-plan__body {
    text-align: center;
    padding: 0 1rem;
  }
}

/*コースの高さと幅が変更できます*/
.p-section--course .p-flex__item .p-plan-image {
  position: relative;
  z-index: 0;
  width: 19.5rem;
  height: 19rem;
  margin: 0 auto;
}

@media all and (min-width: 1024px) {
  .p-section--course .p-flex__item .p-plan-image {
    width: 17.5rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1023px) {
  .p-section--course .p-flex__item .p-plan-image {
    width: 17rem;
    height: 17rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section--course .p-flex__item .p-plan-image {
    width: 432px;
    height: 27rem;
    margin: 0 auto;
  }
}

@media all and (max-width: 414px) {
  .p-section--course .p-flex__item .p-plan-image {
    width: 240px;
    height: 16rem;
    margin: 0 auto;
  }
}

.p-section--course .p-flex .p-flex__item .p-item_pink {
  z-index: 3;
  width: 100%;
  z-index: 999;
  background-color: #fff;
  background-size: 70%;
  border-radius: 1rem;
  position: relative;
  width: 80%;
  height: 80%;
  top: 0;
  left: 0;
  margin: 1.5rem;
  opacity: 0;
  margin: -19rem 1rem 1rem 2rem;
  text-align: center;
  padding-top: 6rem;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink {
    display: flex;
    background-size: 50%;
    width: 85%;
  }
}

@media all and (max-width: 414px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink {
    display: flex;
    background-size: 50%;
    margin: -15rem 2rem 1rem 1rem;
    width: 200px;
  }
}

.p-section--course .p-flex .p-flex__item .p-item_pink:hover {
  z-index: 999;
  background: rgba(230, 100, 154, 0.5);
  border-radius: 1rem;
  background-size: 80%;
  position: relative;
  width: 80%;
  height: 80%;
  top: 0;
  left: 0;
  transition: 0.3s ease-in-out;
  opacity: 1;
  margin: -17rem 1rem 1rem 2rem;
  text-align: center;
  color: #000;
  font-size: 1.5rem;
  text-decoration: underline;
  text-decoration-color: #c1ad62;
  text-decoration-style: solid;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink:hover {
    height: 76%;
    width: 76%;
    margin: -16.5rem 1rem 1rem 2.2rem;
  }

  .p-section--course .p-flex .p-flex__item .p-item_pink span {
    letter-spacing: -0.5rem;
    font-size: 1.2rem;
  }

  .p-section--course .p-flex .p-flex__item .p-item_pink a {
    letter-spacing: -0.15rem;
    padding: 2rem auto;
  }
}

@media all and (min-width: 800px) and (max-width: 900px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink:hover {
    margin: -15rem 1rem 1rem 1.5rem;
  }
}


@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink:hover {
    width: 85%;
    height: 85%;
    margin: -24rem 1.5rem 1rem 1.7rem;
    padding: 9rem 1rem 5.5rem 2.8rem;
    font-size: 2.1rem;
  }
}

@media all and (max-width: 414px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink:hover {
    width: 85%;
    height: 80%;
    margin: -14rem 1.5rem 1rem 1rem;
    padding-top: 4.8rem;
    padding: 5.5rem 1rem 5.5rem 1.9rem;
    font-size: 1.18rem;
    text-align: center;
  }

  .reasonable .p-item_pink:hover {
    letter-spacing: -0.01rem;
    white-space: nowrap;
  }
}

.p-section--plan .p-flex__item .p-plan-image img {
  width: 100%;
}

.p-section--course .p-flex .p-flex__item .p-item_pink span {
  letter-spacing: -0.1rem;
  display: block;
  margin: -0.5rem auto;
}

.p-section--course .p-flex .p-flex__item .p-item_pink p {
  color: inherit;
  text-decoration: inherit;
  margin-top: 0.5rem;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink span {
    letter-spacing: -0.15rem;
    display: block;
    margin: 0 auto;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink span {
    letter-spacing: -0.2rem;
    margin-top: -2.4rem;
    line-height: 4rem;
  }

  .p-section--course .p-flex .p-flex__item .p-item_pink p {
    margin-top: -0.6rem;
  }
}

@media all and (min-width: 768px) and (min-width: 900px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink p {
    /* margin-top:-1.5rem; */
  }
}

@media all and (max-width: 415px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink span {
    letter-spacing: -0.18rem;
    margin-top: -0.7rem;
  }

  .p-section--course .p-flex .p-flex__item .p-item_pink p {
    margin-top: 0rem;
  }
}

.p-section--course .p-flex .p-flex__item .p-item_pink a {
  color: inherit;
  text-decoration-color: inherit;
}

@media all and (max-width: 415px) {
  .p-section--course .p-flex .p-flex__item .p-item_pink a {
    letter-spacing: -0.01rem;
  }
}

@media all and (min-width: 768px) {
  .p-section--plan .p-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .p-section--plan .p-flex__item {
    width: 30%;
    margin-left: 3%;
    margin-bottom: 30px;
  }

  .p-section--plan .p-flex__item:first-child {
    margin-left: 0;
  }

  .p-section--plan .p-flex__item .icon-arrow_down {
    color: #e6649a;
    font-size: 30px;
    font-size: 1.875rem;
    margin-bottom: 20px;
  }

  .p-section--plan .p-flex__item .p-plan__body {
    margin-top: 10px;
  }

  .p-section--plan .p-flex__item .p-plan-image {
    position: relative;
    z-index: 0;
  }

  .p-section--plan .p-flex__item .p-plan-image img {
    width: 100%;
  }
}

.p-section--product-line {
  width: 100%;
  float: left;
}

.media_inner {
  width: 49%;
  margin: 0 10px;
  display: block;
  float: left;
}

@media all and (max-width: 414px) {
  .media_inner {
    width: 90%;
  }
}

.media_cont {
  width: 100%;
  display: block;
  padding-right: 0;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .media_cont {
    padding-right: 0rem;
  }
}

@media all and (max-width: 414px) {
  .media_cont {
    padding-right: 0rem;
  }
}

.media_cont h3 {
  text-decoration: underline;
  font-size: 1rem;
}

.p-section--product-line .c-category {
  color: #fff;
  font-weight: bold;
  position: relative;
  margin-top: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.p-section--product-line .c-category:first-child {
  margin-top: 0;
}

.p-section--product-line .c-category::before,
.p-section--product-line .c-category::after {
  content: "";
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  height: 0;
  border-top: 1px dotted #fff;
}

.p-section--product-line .c-category::before {
  margin-right: 1em;
}

.p-section--product-line .c-category::after {
  margin-left: 1em;
}

.p-section--product-line .p-flex__item {
  margin-top: 20px;
}

.p-section--product-line .p-flex__item:first-child {
  margin-top: 0;
}

@media all and (min-width: 768px) {
  .p-section--product-line .p-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .p-section--product-line .p-flex__item {
    margin-left: 30px;
    margin-top: 0;
    margin-bottom: 0;
    width: 310px;
  }

  .p-section--product-line .p-flex__item:first-child {
    margin-left: 0;
  }
}

.p-section--product-line .c-button {
  margin-top: 30px;
}

.p-section--book {
  width: 100%;
  display: block;
  float: left;
}

.bookbtn {
  width: 49%;
  float: left;
  display: block;
  margin: 5vh 0;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .bookbtn {
    width: 50%;
    margin: 10% 0;
  }
}

@media all and (max-width: 414px) {
  .bookbtn {
    width: 100%;
  }
}

.p-section__in01s .bookbtn {
  margin-top: 1rem;
}

.p-section--voice {
  background: url("/img/top/＿_tp-voice_back2b.png") center no-repeat;
  background-size: cover;
  max-width: 100%;
  display: block;
}

.cv_inner {
  float: left;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  background-size: 36rem;
  background-repeat: no-repeat;
  max-height: 100%;
  margin-bottom: 0rem;
}

@media all and (min-width: 900px) {
  .cv_inner {
    min-height: 50rem;
  }
}

.cv_inner h2 {
  font-size: 1.5rem;
  padding: 3rem;
  background-size: auto;
  height: 61rem;
  margin-top: 1rem;
  background-color: rgba(255, 255, 255, 0.4);
  width: 18rem;
  display: inline-block;
  font-weight: 550;
  max-height: 850px;
}

@media all and (max-width: 768px) {
  .cv_inner h2 {
    max-height: 850px;
  }
}

/*Android用 カップルボイス縦書きレイアウトの調整 調整中*/
.android #couple-voice-text1 {
  display: flex;
}

@media all and (min-width: 812px) {
  .cv_inner h2 {
    max-height: 850px;
  }
}

.cv_inner p {
  font-size: 1.1rem;
  line-height: 2rem;
  padding: 1rem 1rem;
  height: 100%;
  font-weight: 600;
  max-height: 768px;
}

.cv_inner span {
  text-combine-upright: all;
  -webkit-text-combine: horizontal;
}

.cv_inner span.top_cp_to {
  text-combine-upright: all;
  -webkit-text-combine: horizontal;
  position: relative;
  left: 0.1rem;
}

.cv_inner span.top_cp_ri {
  text-combine-upright: all;
  -webkit-text-combine: horizontal;
  position: relative;
  left: 1px;
}

.cv_inner span.top_cp_mi {
  text-combine-upright: all;
  -webkit-text-combine: horizontal;
  position: relative;
  left: 1px;
  top: -1px;
}

/*Androidのみ適用 レイアウト調整*/
.android .cv_inner span {
  /*text-combine-upright: all;*/
  -webkit-text-combine: horizontal;
  margin-top: 10px;
  text-align: justify;
  text-combine-upright: all;
}

/*Androidのみ適用 レイアウト調整*/
.android .cv_inner span {
  margin-top: 0.8rem;
}

/*Androidのみ適用 小書き文字レイアウト調整*/
.android .cv_inner .small-text {
  margin-bottom: -1rem;
}

.cv_inner p.small {
  font-size: 0.8rem;
  margin-right: -2rem;
  text-align: right;
}

.cv_inner .rotate {
  transform: rotate(90deg);
  writing-mode: initial;
  position: relative;
  -webkit-text-combine: horizontal;
  margin: 0.4rem 0 0rem;
}

.webkit .cv_inner .rotate {
  transform: rotate(90deg);
  writing-mode: initial;
  position: relative;
  -webkit-text-combine: horizontal;
  line-height: 1;
  top: -3px;
  left: -1px;
}

.webkit .cv_inner .rotate.bou {
  position: relative;
  left: 0px;
  top: -3px;
  line-height: 0.8;
}

/*Androidのみ適用*/
.android .cv_inner .rotate {
  margin-top: 0;
  margin-bottom: -1rem;
}

.cv_inner .small-text {
  margin: 0rem 0 0.2rem;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .cv_inner .small-text {
    margin: 0;
    position: relative;
    left: 3px;
  }
}

/*チャットブログのコンテナ*/
.chatblog-container {
  width: 16rem;
  font-size: 0.6rem;
  margin-left: 0.5rem;
  margin-bottom: 0.5rem;
  display: inline-block;
  text-align: center;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.12), 0 2px 3px 0 rgba(0, 0, 0, 0.22);
  transition: 0.3s;
  transition: all 0.6s ease 0s;
  height: 31rem;
  float: left;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .chatblog-container {
    width: 17rem;
  }
}

.c-post-title {
  float: none;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .chatblog-container {
    height: auto;
  }
}

@media all and (max-width: 414px) {
  .chatblog-container {
    max-width: 40rem;
    margin: 1rem auto;
    display: block;
    float: none;
  }

  .chatblog-content h2 {
    font-size: 0.5rem;
    padding: 0.5rem 1rem;
    font-weight: 700;
  }
}

@media all and (min-width: 812px) {
  .chatblog-container {
    height: 30rem;
    max-width: 350px;
  }
}

.chatblog-container:hover {
  box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
  transform: translateY(-4px);
  cursor: pointer;
  transform: scale(1.1, 1.1);
}

/*チャットブログのコンテナを決めるやつです*/
.chatblog_content {
  width: 16rem;
  float: left;
  justify-content: space-between;
  list-style: none;
  grid-auto-flow: row;
  background-color: rgba(255, 255, 255, 0.8);
  margin-right: 10px;
  margin-bottom: 10px;
  grid-gap: 20px;
  row-gap: 20px;
}

/*h2の文字の大きさを変更するところです*/
.chatblog-content h2 {
  font-size: 0.2rem;
  padding: 0.5rem 1rem;
  font-weight: 700;
}

@media all and (max-width: 414px) {
  .chatblog-content h2 {
    font-size: 0.8rem;
    padding: 0.5rem 1rem;
    font-weight: 700;
  }
}

/*pタグの文字サイズを変更できます*/
.chatblog-content p {
  font-size: 10px;
  padding: 0 1rem;
}

/*日付のフォントサイズを変更できます*/
.chatblog-content p.smalldate {
  font-size: 10px;
}

/*セミナーコンテナです、2件表示させます*/
.seminar-container {
  float: left;
  width: 19rem;
  margin-left: 7.5rem;
  display: flex;
  justify-content: center;
  text-align: center;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.12), 0 2px 3px 0 rgba(0, 0, 0, 0.22);
  transition: 0.3s;
  transition: all 0.6s ease 0s;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .seminar-container {
    margin: 2rem;
  }
}

.seminar-container:hover {
  box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
  transform: translateY(-4px);
  cursor: pointer;
  transform: scale(1.1, 1.1);
}

.seminar-content {
  width: 19rem;
  float: left;
  justify-content: space-between;
  list-style: none;
  grid-auto-flow: row;
  background-color: rgba(255, 255, 255, 0.8);
  margin-right: 10px;
  margin-bottom: 10px;
  grid-gap: 20px;
  row-gap: 20px;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .seminar-content {
    width: 15rem;
  }
}

.seminar-content h2 {
  font-size: 0.6rem;
  padding: 0.5rem 1rem;
  font-weight: 700;
}

/*スマホ用セミナーコンテナです。縦向きに対応します。*/
@media all and (min-width: 415px) and (max-width: 767px) {
  .seminar-container {
    width: 20rem;
    float: none;
    display: flex;
    margin: 2rem auto;
    justify-content: center;
    text-align: center;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.12), 0 2px 3px 0 rgba(0, 0, 0, 0.22);
    transition: 0.3s;
    transition: all 0.6s ease 0s;
  }

  .seminar-container:hover {
    box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
    transform: translateY(-4px);
    cursor: pointer;
    transform: scale(1.1, 1.1);
  }

  .seminar-content {
    width: 15rem;
    float: left;
    justify-content: space-between;
    list-style: none;
    grid-auto-flow: row;
    background-color: rgba(255, 255, 255, 0.8);
    margin-right: 10px;
    margin-bottom: 10px;
    grid-gap: 20px;
    row-gap: 20px;
  }

  .seminar-content h2 {
    font-size: 0.6rem;
    padding: 0.5rem 1rem;
    font-weight: 700;
  }
}

/*スマホ用セミナーコンテナです。横向きに対応します。*/
@media all and (max-width: 415px) {
  .seminar-container {
    width: 15rem;
    float: none;
    display: flex;
    margin: 2rem auto;
    justify-content: center;
    text-align: center;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.12), 0 2px 3px 0 rgba(0, 0, 0, 0.22);
    transition: 0.3s;
    transition: all 0.6s ease 0s;
  }

  .seminar-container:hover {
    box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
    transform: translateY(-4px);
    cursor: pointer;
    transform: scale(1.1, 1.1);
  }

  .seminar-content {
    width: 15rem;
    float: left;
    justify-content: space-between;
    list-style: none;
    grid-auto-flow: row;
    background-color: rgba(255, 255, 255, 0.8);
    margin-right: 10px;
    margin-bottom: 10px;
    grid-gap: 20px;
    row-gap: 20px;
  }

  .seminar-content h2 {
    font-size: 0.6rem;
    padding: 0.5rem 1rem;
    font-weight: 700;
  }
}

.cv-container {
  float: left;
  width: 19rem;
  margin: 1rem 0.3rem;
  display: inline-block;
  text-align: center;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.12), 0 2px 3px 0 rgba(0, 0, 0, 0.22);
  transition: 0.3s;
  transition: all 0.6s ease 0s;
  min-height: 430px;
}

.cv-container:hover {
  box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
  transform: translateY(-4px);
  cursor: pointer;
  transform: scale(1.1, 1.1);
}

@media all and (max-width: 414px) {
  .cv-container:hover {
    transform: scale(1.0, 1.1);
  }
}

.cv-content {
  width: 19rem;
  float: left;
  justify-content: space-between;
  list-style: none;
  grid-auto-flow: row;
  background-color: rgba(255, 255, 255, 0.8);
  margin-right: 10px;
  grid-gap: 20px;
  row-gap: 20px;
  min-height: 430px;
}

.cv-content h2 {
  font-size: 11px;
  padding: 0.5rem 1rem;
  font-weight: 700;
}

.cv-content p {
  font-size: 10px;
  padding: 0 1rem;
}

.cv-content p.smalldate {
  font-size: 10px;
}

.cv-content .c-thumb {
  padding: 0 0.5rem;
}

.cv-btn {
  display: block;
  margin: 20px auto;
  width: 960px;
  text-align: left;
  clear: both;
}

@media all and (min-width: 768px) {
  .cv-btn {
    display: block;
    margin: 20px auto;
    width: 100%;
    text-align: left;
    clear: both;
  }
}

.cv-btn .contactbtntop {
  margin: 1rem auto;
  background: #ed0200;
  text-align: center;
  left: 2%;
  max-width: 353px;
}

@media all and (min-width: 1680px) {
  .cv-btn .contactbtntop {
    max-width: 453px;
  }
}

.couple-voice-wrapper .cv-btn .contactbtntop {
  margin: -8rem auto;
  background: #ed0200;
  text-align: center;
}

.p-section--message {
  background: url("/img/bg_section--message.gif") center no-repeat;
  background-size: cover;
}

.p-section--message .p-section__body {
  color: #fff;
}

.p-section--message .p-section__body--profile {
  width: 50vw;
  max-width: 280px;
  margin: 40px auto 30px auto;
}

.p-section--message .p-section__body--text {
  text-align: left;
  margin-bottom: 30px;
}

@media all and (min-width: 768px) {
  .p-section--message .p-section__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 50px;
    display: block;
  }

  .p-section--message .p-section__body--profile {
    margin-top: 0;
    width: 250px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }

  .p-section--message .p-section__body--text {
    margin-left: 80px;
    text-align: left;
  }

  .p-section--message .p-section__body--text p:first-child {
    margin: 0;
  }
}

/*スマートフォン版、p-sectionの大きさを変更出来ます。*/
.p-section--activity .p-flex {
  border: 1px solid #000000;
  padding: 30px 0;
  margin-bottom: 20px;
  display: inline-block;
}

/*PC版*/
@media all and (min-width: 768px) {
  .p-section--activity .p-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem;
    height: 18rem;
    margin-top: 3rem;
  }

  .p-section--activity .p-flex .swiper-container {
    height: 23vh;
    max-width: 40%;
    display: inline-block;
  }
}

@media all and (min-width: 814px) {
  .p-section--activity .p-flex {
    height: 23rem;
  }
}

.p-section--activity .p-flex:last-child {
  border: 1px solid #000000;
}

.p-section--activity .p-activity__head {
  color: #e6649a;
  text-align: center;
  position: relative;
  font-weight: 600;
}

@media all and (min-width: 1025px) {
  .p-activity__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-activity__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-activity__head {
    font-size: 20px;
  }

  .cv-btn {
    float: left;
    display: block;
    margin: 20px auto;
    width: 100%;
    text-align: left;
  }

  .cv_inner {
    float: left;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    background-size: 36rem;
    background-repeat: no-repeat;
    height: auto;
    margin: -2% 0 0 10%;
    max-height: 800px;
  }

  .cv_inner h2 {
    font-size: 1.5rem;
    padding: 3rem;
    background-size: auto;
    height: 64rem;
    margin-top: 1rem;
    background-color: rgba(255, 255, 255, 0.4);
    width: 18rem;
    display: inline-block;
    font-weight: 550;
  }
}

@media all and (min-width: 310px) and (max-width: 414px) {
  .p-activity__head {
    font-size: 4.8vw;
  }

  .cv-btn {
    float: left;
    display: block;
    margin: 20px auto;
    width: 100%;
    text-align: left;
  }

  .cv_inner {
    float: left;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    background-size: 36rem;
    background-repeat: no-repeat;
    height: 23rem;
    width: auto;
    height: auto;
    margin: -2rem 0 2rem 4rem;
    max-height: 850px;
  }

  .cv_inner h2 {
    font-size: 1.3rem;
    padding: 1rem;
    background-size: auto;
    height: 49rem;
    margin: 1rem 0 0;
    background-color: rgba(255, 255, 255, 0.4);
    width: 90%;
    display: inline-block;
    font-weight: 550;
    max-height: 850px;
  }

  .cv_inner p {
    font-size: 1rem;
    line-height: 2rem;
    padding: 0.5rem 0.5rem;
    min-height: 587px;
    font-weight: 600;
  }

  .cv_inner p.small {
    font-size: 0.7rem;
    margin-right: -2rem;
    text-align: right;
  }

  .cv-container {
    float: left;
    width: 90%;
    margin-left: 1.4rem;
    display: inline-block;
    text-align: center;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.12), 0 2px 3px 0 rgba(0, 0, 0, 0.22);
    transition: 0.3s;
    transition: all 0.6s ease 0s;
  }

  .cv-content {
    width: 100%;
    float: left;
    justify-content: space-between;
    list-style: none;
    grid-auto-flow: row;
    background-color: rgba(255, 255, 255, 0.8);
    margin-right: 10px;
    margin-bottom: 10px;
    grid-gap: 20px;
    row-gap: 20px;
  }

  .voice-thumbnail {
    width: 100%;
    height: auto;
    margin: 0rem 0rem 1rem 0rem;
  }
}

@media all and (min-width: 768px) {
  .p-activity__head {
    border-right: 1px solid #000;
    position: relative;
    text-align: center;
  }
}

.p-activity__head-in {
  width: 100%;
  height: 100%;
}

.p-activity__head .c-button {
  display: block;
  width: 200px;
  margin: 10px auto;
}

@media all and (min-width: 768px) {
  .p-activity__head {
    min-height: 160px;
    text-align: left;
    position: relative;
    font-weight: 600;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-right: 1px solid #000;
    position: relative;
    text-align: center;
  }
}

@media all and (min-width: 768px) and (min-width: 1025px) {
  .p-activity__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media all and (min-width: 768px) and (min-width: 768px) and (max-width: 1024px) {
  .p-activity__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media all and (min-width: 768px) and (min-width: 415px) and (max-width: 767px) {
  .p-activity__head {
    font-size: 20px;
  }
}

@media all and (min-width: 768px) and (max-width: 414px) {
  .p-activity__head {
    font-size: 4.8vw;
  }
}

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

  .p-activity__head::after,
  .p-activity__head::before {
    border: solid transparent;
    content: " ";
    height: 0;
    left: 100%;
    position: absolute;
    width: 0;
  }

  .p-activity__head::after {
    border-width: 12px;
    border-left-color: #ffffff;
    top: 68px;
  }

  .p-activity__head::before {
    border-width: 13px;
    border-left-color: #000;
    top: 67px;
  }

  .p-activity__head-in {
    width: 270px;
    height: 100%;
  }
}

.p-activity__body-in {
  text-align: left;
  padding: 20px 0 0 0;
}

.p-activity__body-in .p-activity__text {
  margin-bottom: 20px;
}

.p-activity__body-in .p-logo-activity {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /* -webkit-box-pack: center; */
  /* -ms-flex-pack: center; */
  /* justify-content: center; */
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.p-activity__body-in .p-logo-activity .p-logo-activity__list {
  display: block;
  margin-bottom: 10px;
  margin-left: 10px;
  margin-right: 10px;
}

.p-activity__body-in .p-logo-activity .p-logo-activity__list .c-logo--toyokeizai {
  width: 120px;
  padding-right: 0px;
}

.p-activity__body-in .p-logo-activity .p-logo-activity__list .c-logo--with {
  width: 140px;
  padding-right: 10px;
}

.p-activity__body-in .p-logo-activity .p-logo-activity__list .c-logo--allabout {
  width: 120px;
}

.p-activity__body-in .p-logo-activity .p-logo-activity__list .c-logo--citrus {
  width: 120px;
}

.p-activity__body-in .p-logo-activity .p-logo-activity__list .c-logo--gendai {
  width: 60px;
}

.p-activity__body-in .p-logo-activity .p-logo-activity__list .c-logo--ameba {
  width: 150px;
}

@media all and (min-width: 768px) {
  .p-activity__body-in {
    padding: 0 40px;
  }

  .p-activity__body-in .p-activity__text {
    margin-right: auto;
    padding-right: 20px;
  }

  .p-activity__body-in .p-activity__text .c-date {
    margin-right: 1em;
  }

  .p-activity__body-in .c-activity__image {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 220px;
    margin-left: auto;
  }

  .p-activity__body-in .p-logo-activity__list {
    display: block;
    margin-left: 30px;
    margin-right: 0;
    margin-bottom: 0;
  }

  .p-activity__body-in .p-logo-activity__list:first-child {
    margin-left: 0;
  }

  .p-activity__body-in .p-logo-activity__list .c-logo--allabout {
    width: 120px;
  }

  .p-activity__body-in .p-logo-activity__list .c-logo--citrus {
    width: 120px;
  }

  .p-activity__body-in .p-logo-activity__list .c-logo--gendai {
    width: 60px;
  }

  .p-activity__body-in .p-logo-activity__list .c-logo--ameba {
    width: 150px;
  }
}

.p-activity__body-in .c-activity__title {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
}

.p-activity__body-in p {
  margin: 0;
}

@media all and (min-width: 768px) {
  .p-section--step .p-flex__item img {
    width: 300px;
    margin-right: 30px;
  }
}

.p-section--step ol {
  background-color: #f5f5f5;
  padding: 20px 40px;
}

.p-news {
  z-index: 10;
  background: linear-gradient(to bottom, #ffffff, #eeeeee);
  background: -webkit-linear-gradient(top, #fff, #eeeeee);
  box-shadow: 0 -1px 0 rgb(255 255 255) inset;
  color: #000000;
  position: relative;
  display: inline-block;
}

.marriageFimg {
  max-width: 1200px;
}

.marriageFimg img {
  width: 750px;
  max-width: 750px;
}

.marriageFtext {
  max-width: 920px;
  margin: 30px auto;
}

/*メイン画像下に余白をつける*/
.gallery {
  margin: 0 0 5px 0;
}

.gallery li {
  list-style: none;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev,
.slick-next {
  position: absolute;
  /*絶対配置にする*/
  z-index: 3;
  top: 42%;
  cursor: pointer;
  /*マウスカーソルを指マークに*/
  outline: none;
  /*クリックをしたら出てくる枠線を消す*/
  border-top: 2px solid #ccc;
  /*矢印の色*/
  border-right: 2px solid #ccc;
  /*矢印の色*/
  height: 25px;
  width: 25px;
}

.slick-prev {
  /*戻る矢印の位置と形状*/
  left: 2.5%;
  transform: rotate(-135deg);
}

.slick-next {
  /*次へ矢印の位置と形状*/
  right: 2.5%;
  transform: rotate(45deg);
}

/*選択するサムネイル画像の設定*/

.choice-btn li {
  cursor: pointer;
  outline: none;
  background: #333;
  list-style: none;
}

.choice-btn li img {
  opacity: 0.4;
  /*選択されていないものは透過40%*/
}

.choice-btn li.slick-current img {
  opacity: 1;
  /*選択されているものは透過しない*/
}


@media all and (min-width: 1025px) {
  .p-news .p-news__head {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-news .p-news__head {
    font-size: 15px;
    font-size: 0.8rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-news .p-news__head {
    font-size: 14px;
  }

  .marriageFtext {
    margin: 30px 10px;
  }
}

@media all and (max-width: 414px) {
  .p-news .p-news__head {
    font-size: 1rem;
  }

  .marriageFtext {
    margin: 30px 10px;
  }
}

.p-news .p-news__body {
  margin: 0;
  padding: 10px 130px 0 0;
}

.p-news .p-news__body .p-ticker {
  width: 100%;
  text-align: left;
  left: 0;
  position: relative;
  overflow: hidden;
  z-index: 2;
}

.p-news .p-news__body .p-ticker .p-ticker__list {
  width: 100%;
  position: relative;
  left: 0;
  margin: 0;
  padding: 0;
  z-index: 2;
}

.p-news .p-news__body .p-ticker .p-ticker__list .c-txt {
  height: 25px;
}

@media all and (max-width: 768px) {
  .p-ticker__list .c-txt {
    overflow-wrap: normal;
    word-wrap: normal;
  }

  .marriageFtext {
    margin: 30px 10px;
  }
}

.p-news .p-news__body .p-ticker .p-ticker__list .p-ticker__item {
  width: 100%;
  display: none;
  padding: 0;
  margin: 0;
  z-index: 2;
}

@media all and (min-width: 1025px) {
  .p-news .p-news__body .p-ticker .p-ticker__list .p-ticker__item {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-news .p-news__body .p-ticker .p-ticker__list .p-ticker__item {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-news .p-news__body .p-ticker .p-ticker__list .p-ticker__item {
    font-size: 12px;
    transform: scale(0.9);
    transform-origin: left center;
    display: block;
    width: 90vw;
    display: block;
    overflow: hidden;
  }
}

@media all and (max-width: 414px) {
  .p-news .p-news__body .p-ticker .p-ticker__list .p-ticker__item {
    font-size: 10px;
    transform: scale(0.8);
    transform-origin: left center;
    display: block;
    width: 90vw;
    display: block;
    overflow: wrap;
  }
}

.p-news .p-news__body .p-ticker .p-ticker__list .p-ticker__item .c-date {
  color: #e6649a;
}

.p-news .p-news__body .p-ticker--sp {
  text-align: left;
}

.p-news .p-news__body .p-ticker--sp .p-ticker__list {
  padding-left: 0;
  list-style: none;
}

.p-news .p-news__body .p-ticker--sp .p-ticker__list .p-ticker__item {
  border-bottom: 1px dotted #ccc;
  padding-bottom: 1em;
  margin-bottom: 1em;
}

.p-news .p-news__body .p-ticker--sp .p-ticker__list .p-ticker__item .c-date,
.p-news .p-news__body .p-ticker--sp .p-ticker__list .p-ticker__item .c-text {
  display: block;
}

.p-news .p-link__archive {
  margin: 0;
}

.p-news .p-link__archive .c-link__list {
  position: absolute;
  right: 20px;
  top: 9px;
  text-decoration: none;
}

@media all and (min-width: 1025px) {
  .p-news .p-link__archive .c-link__list {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-news .p-link__archive .c-link__list {
    font-size: 12px;
    transform: scale(0.9);
    transform-origin: left bottom;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-news .p-link__archive .c-link__list {
    font-size: 10px;
    top: 100%;
    right: 1.5vw;
  }
}

@media all and (max-width: 414px) {
  .p-news .p-link__archive .c-link__list {
    font-size: 10px;
    top: 100%;
    right: 1.5vw;
    transform: scale(0.9);
  }
}

@media all and (min-width: 768px) {
  .p-news {
    min-width: 60%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: inline-block;
    -webkit-box-align: center;
    -ms-flex-align: center;
    border-radius: 50px;
    padding: 3px;
    /* top: 57vh; 
    right: 10rem;
    position: absolute;
    margin-left: -480px;*/
    z-index: 10;
    background: linear-gradient(to bottom, #ffffff, #eeeeee);
    background: -webkit-linear-gradient(top, #fff, #eeeeee);
    box-shadow: 0 -1px 0 rgb(255 255 255) inset;
    color: #000000;
  }
}

@media all and (min-width: 2000px) {
  .p-news {}
}

@media all and (min-width: 1900px) {
  .p-news {}
}

@media all and (min-width: 2000px) {
  .p-news {

    min-width: 45%;
  }
}

@media all and (min-width: 768px) and (max-width: 990px) {
  .p-news {
    min-width: 90%;
    position: relative;
    right: 0;
    margin: 0 auto;
  }
}

.p-news .p-news__head {
  /* background-color: #666666; */
  border-radius: 50px 0 0 50px;
  padding: 5px 25px;
  margin: 0;
  max-width: 7rem;
  float: left;
  color: #666666;
  padding: 0.6rem 0.2rem 0rem 1rem;
}

.p-news .p-news__body {
  /* margin-left: 20px;
  margin-right: 20px;
  padding: 0; */
  float: left;
  text-indent: 1rem;
  width: 70%;
}

.p-news .p-news__body .p-ticker {
  display: block;
  width: 100%;
  text-align: left;
  position: relative;
  overflow: hidden;
  z-index: 10;
  overflow: visible;
  min-width: 35rem;
}

.p-news .p-news__body .p-ticker--sp {
  display: none;
}

.p-news .p-news__body .p-ticker .p-ticker__list {
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}

.p-news .p-news__body .p-ticker .p-ticker__list ul {
  width: 100%;
  min-width: 50rem;
}

.p-news .p-news__body .p-ticker .p-ticker__list .p-ticker__item {
  /*width: auto;*/
  display: none;
  padding: 0;
  margin: 0;
  z-index: 10;
}

.p-news .p-news__body .p-ticker .p-ticker__list .p-ticker__item a {
  width: 100%;
}

.p-news .p-link__archive .c-link__list {
  display: inline-block;
}

/*min-width320pxからmax-widthのニュースレイヤーサイズ変更*/
@media all and (min-width: 320px) and (max-width: 767px) {
  .p-news {
    display: inline-block;
    background-color: #fff;
    width: 95%;
    margin: 1rem auto;
    padding: 0;
    border-radius: 50px;
    z-index: 10;
    background: linear-gradient(to bottom, #ffffff, #eeeeee);
    background: -webkit-linear-gradient(top, #fff, #eeeeee);
    box-shadow: 0 -1px 0 rgb(255 255 255) inset;
    color: #000000;
  }

  .p-news .p-news__head {
    padding: 1% 4%;
    margin: 0;
    max-width: 7rem;
    font-size: 0.7rem;
  }

  .p-news .p-news__body {
    float: left;
    text-indent: 0;
    width: 75%;
    margin: 0;
    padding: 0 0 0 0rem;
    float: left;
    display: block;
    white-space: nowrap;
  }

  .p-news .p-news__body .p-ticker {
    display: block;
    width: 100%;
    text-align: left;
    position: relative;
    overflow: wrap;
    z-index: 10;
  }
}

.p-section {
  text-align: center;
  background-color: #fff;
  display: block;
}

.p-section--movie {
  position: fixed;
  width: 100%;
  height: 60vh;
}

#t_movie {
  height: auto;
  display: flex;
  position: sticky;
  position: -webkit-sticky;
  margin: 0 auto;
  z-index: -1;
}

@media all and (max-width: 414px) {
  #t_movie {
    height: 36vh;
  }

  .p-news .p-news__head {
    font-size: 13px;
    min-width: 15vw;
    letter-spacing: 0.1rem;
    transform: scale(0.7);
  }
}

@media all and (max-width: 320px) {
  #t_movie {
    height: 33vh;
  }
}


#t_movie:before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: auto;
  display: inline-block;
}

.p-section__in {
  margin: 0 auto;
  padding: 50px 20px;
}

.p-section__in01 {
  margin: 0 auto;
  text-align: left;
}

@media all and (min-width: 768px) {
  .p-section__in01 {
    padding: 0 20px 0px;
    border-top: 1px solid #808080;
    display: inherit;
  }

  .p-section__in01 .p-section__head {
    padding-top: 12px;
  }

  .container02 .p-section__head {
    padding-top: 0.3rem;
  }

  .container03 .p-section__head {
    padding-top: 1.18rem;
  }
}

@media all and (min-width: 1024px) {
  .container02 .p-section__head {
    padding-top: 0.86rem;
    padding-top: 4.8px;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section__in01 .p-section__head {
    padding: 1.3rem 0;
  }
}

.p-section--lower__in {
  margin: 0 auto;
  padding: 50px 20px;
}

@media all and (min-width: 768px) {
  .p-section--lower__in {
    padding: 70px 20px;
  }
}

.p-section__head {
  display: block;
  font-weight: bold;
  border-top: 8px solid #808080;
  line-height: 1.6;
  padding: 12px 0;
  text-align: left;
}

.p-section--voice .p-section__head {
  /* padding: 0.85rem 0; */
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section--voice .p-section__head {
    padding: 0.45rem 0;
  }

  .p-section--SNS .p-section__head .p-contents_hr_in {
    padding: 1.4rem 0;
  }
}

/*カップルボイスのサムネイル調節、乱数で表示されるやつは...304×179 */
.voice-thumbnail {
  width: 100%;
  height: auto;
  margin: 0rem 0rem 0rem 0rem;
}

@media all and (max-width: 767px) {
  .p-section__head {
    max-width: 90%;
    padding: 1.6rem 0;
  }
}

@media all and (min-width: 320px) and (max-width: 415px) {
  .p-section__head {
    padding: 1rem 0;
  }
}

@media all and (min-width: 768px) {
  .p-section__head {
    max-width: 960px;
    margin: 0rem auto;
    clear: both;
    padding: 12px 0;
  }

  .p-section__body {
    max-width: 960px;
    margin: 0rem auto;
    padding: 2rem 0rem;
  }

  .p-section--course .p-section__body {
    padding: 0 0;
  }
}

@media all and (min-width: 1680px) {
  .p-section__head {
    max-width: 1200px;
  }

  .p-section__body {
    max-width: 1200px;
    padding: 1rem auto;
  }
}

.p-section__head .p-contents_hr_in_top {
  font-family: "didot", "Didot LT STD", "Bodoni MT", "Bodoni 72";
  letter-spacing: 0.06rem;
  font-size: 1.7rem;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section__head .p-contents_hr_in_top {
    font-size: 1.3rem;
  }
}

.p-section__head .p-contents_hr_in {
  padding-top: 16px;
  white-space: nowrap;
}

@media all and (max-width: 414px) {
  .p-section__head .p-contents_hr_in {
    padding-top: 16px;
  }

  .p-section--activity .p-section__head .p-contents_hr_in {
    padding-top: 19px;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section__in01s .p-section__head .p-contents_hr_in {
    padding-top: 21px;
  }
}

@media all and (min-width: 900px) {
  .p-section__in01s .p-section__head .p-contents_hr_in {
    padding-top: 16.4px;
  }
}

.p-section__head .c-color--pink {
  display: block;
  color: #e6649a;
}

@media all and (min-width: 1024px) {
  .p-section__head .c-color--pink {
    font-size: 14px;
    font-size: 0.875rem;
  }

  .p-section__head .p-contents_hr_in {
    padding-top: 16px;
  }

  .p-section--activity .p-section__head .p-contents_hr_in {
    padding-top: 18px;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section__head .c-color--pink {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section__head .c-color--pink {
    font-size: 13px;
  }
}

@media all and (max-width: 414px) {
  .p-section__head .c-color--pink {
    font-size: 3.2vw;
  }
}

.p-section__head--white {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  color: #fff;
}

.p-section__head--white .c-color--white {
  display: block;
  color: #fff;
}

@media all and (min-width: 1025px) {
  .p-section__head--white .c-color--white {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section__head--white .c-color--white {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section__head--white .c-color--white {
    font-size: 13px;
  }

  .pc_br_no {
    display: block;
  }
}

@media all and (max-width: 414px) {
  .p-section__head--white .c-color--white {
    font-size: 3.2vw;
  }

  .pc_br_no {
    display: block;
  }
}

.p-section__head+p {
  font-weight: 600;
  color: #010101;
  margin-bottom: 2rem;
  letter-spacing: 0.25rem;
}

@media all and (min-width: 768px) {
  .p-section__head+p {
    margin: 0px auto;
    max-width: 960px;
  }

  .p-section__couplevoice__body {
    max-width: 960px;
    margin: 0 auto;
    padding: 0rem 0rem;
  }
}

@media all and (min-width: 1680px) {
  .p-section__head+p {
    max-width: 1200px;
  }

  .p-section__couplevoice__body {
    max-width: 1200px;
  }
}

.p-section__head+p.c-color-white {
  color: #fff;
}

@media all and (max-width: 767px) {
  .p-section__subpage {
    margin-top: 50px;
  }
}

.p-section__subpage__in .p-section__head {
  color: #e6649a;
  border: none;
  margin: 0 auto;
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 0 55px;
  max-width: 100%;
}

.p-section__course .p-section__in {
  max-width: 960px;
}

.p-section__course .p-section__in01 {
  max-width: 960px;
}

.p-section__body .p-flex .p-flex__item .c-plan__head {
  padding: 1rem 0rem;
  line-height: 1.8rem;
  font-size: 0.9rem;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section__body .p-flex .p-flex__item .c-plan__head {
    width: 100%;
    margin: 0 auto;
  }
}

@media all and (max-width: 415px) {
  .p-section__body .p-flex .p-flex__item .c-plan__head {
    text-align: center;
  }
}

.p-section__body .p-flex .p-flex__item .c-plan__head span {
  background-image: linear-gradient(to right, #746bab, #ff7bac);
  background-repeat: no-repeat;
  background-size: 100% 10%;
  background-position: bottom;
}

.p-section__course .c-section__head {
  color: #fff;
  font-weight: 600;
  background-color: #000;
  position: relative;
  padding: 10px;
  margin-top: 70px;
  margin-bottom: 30px;
}

.p-section__course .c-section__head:first-child {
  margin-top: 0;
}

.p-section__course .p-flex--reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.p-section__course .p-flex--reverse .p-section__image {
  margin-left: 30px;
}

.p-section__course .p-flex--price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 20px 0;
}

.p-section__course .p-flex .p-section__content {
  text-align: left;
}

.p-section__course .p-flex .p-section__content p {
  margin-top: 0;
}

.p-section__course .p-flex .p-section__image {
  margin-right: 30px;
}

.p-section__course .p-flex .p-service {
  color: #e6649a;
  font-weight: 600;
  margin-top: 30px;
}

.p-section__course .p-flex .p-service__head {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 10px;
}

.p-section__course .p-flex .p-service__head::before,
.p-section__course .p-flex .p-service__head::after {
  content: "";
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  height: 0;
  border-top: 1px dotted #e6649a;
}

.p-section__course .p-flex .p-service__head::before {
  margin-right: 1em;
}

.p-section__course .p-flex .p-service__head::after {
  margin-left: 1em;
}

.p-section__course .p-flex .p-service__body {
  margin-left: 0;
}

.p-section__course .p-flex .p-service__body p {
  margin: 0;
  text-indent: -1em;
  padding-left: 1em;
}

.p-section__course .p-flex .p-service__body p::before {
  content: "◎";
  font-weight: bold;
}

.p-section__course .p-flex__item {
  width: 200px;
  height: 200px;
  text-align: center;
  border-radius: 50%;
  background-color: #e8ffe9;
  color: #e6649a;
  margin: 15px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-section__course .p-flex__item .c-circle {
  padding: 0;
  margin: 0 auto;
}

.p-section__course .p-flex__item .c-circle .c-circle__term {
  font-weight: bold;
  line-height: 1.4;
  margin-top: 25px;
  margin-top: 40px;
}

.p-section__course .p-flex__item .c-circle .c-circle__term .c-circle__icon,
.p-section__course .p-flex__item .c-circle .c-circle__term .c-circle__text {
  display: block;
}

@media all and (min-width: 1025px) {
  .p-section__course .p-flex__item .c-circle .c-circle__term .c-circle__text {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section__course .p-flex__item .c-circle .c-circle__term .c-circle__text {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section__course .p-flex__item .c-circle .c-circle__term .c-circle__text {
    font-size: 18px;
  }
}

@media all and (max-width: 414px) {
  .p-section__course .p-flex__item .c-circle .c-circle__term .c-circle__text {
    font-size: 4.26667vw;
  }
}

.p-section__course .p-flex__item .c-circle .c-circle__term .c-circle__icon {
  margin: 0 auto 1em auto;
}

.p-section__course .p-flex__item .c-circle dd {
  margin: 0;
  font-weight: 600;
}

@media all and (min-width: 1025px) {
  .p-section__course .p-flex__item .c-circle dd {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section__course .p-flex__item .c-circle dd {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section__course .p-flex__item .c-circle dd {
    font-size: 22px;
  }
}

@media all and (max-width: 414px) {
  .p-section__course .p-flex__item .c-circle dd {
    font-size: 5.33333vw;
  }
}

.p-section__course .p-flex__item .c-circle dd sup {
  vertical-align: super;
}

@media all and (min-width: 1025px) {
  .p-section__course .p-flex__item .c-circle dd sup {
    font-size: 10px;
    font-size: 0.625rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section__course .p-flex__item .c-circle dd sup {
    font-size: 10px;
    font-size: 0.625rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section__course .p-flex__item .c-circle dd sup {
    font-size: 10px;
  }
}

@media all and (max-width: 414px) {
  .p-section__course .p-flex__item .c-circle dd sup {
    font-size: 2.4vw;
  }
}

.p-section__course .c-notes {
  text-align: left;
}

.p-section__course .c-notes p {
  margin: 0;
}

#archive-couple-small-text1 {
  margin-top: 1rem;
}

.p-section__course--counseling {
  background-color: #ffded8;
}

.p-section__course--counseling .p-flex--reverse .p-section__image {
  margin: 0 0 0 40px;
  padding: 0;
}

.p-section__course--counseling .p-flex--reverse .p-section__content {
  margin-right: auto;
}

.p-section__course--counseling .c-section__head {
  color: inherit;
  background-color: inherit;
  border-bottom: 1px solid #000;
  position: relative;
}

.p-section__course--counseling .c-section__head img {
  position: absolute;
  left: 100px;
  bottom: 0;
  width: 141px;
}

.p-section__course--option .p-section__in {
  text-align: left;
  max-width: 960px;
}

.p-section__course--option .p-section__in01 {
  text-align: left;
  max-width: 960px;
}

.p-section__course--option .c-section__head {
  line-height: 1.4;
  color: #e6649a;
  font-weight: bold;
  font-size: 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.p-section__course--option .c-section__head span {
  padding-left: 0.5em;
  padding-right: 0.5em;
}

.p-section__course--option .p-flex {
  margin-top: 50px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}

.p-section__course--option .p-flex:first-child {
  margin-top: 0;
}

.p-section__course--option .p-section__content {
  width: 700px;
  margin-right: 40px;
}

.p-section__course--option .p-section__content .c-section__term,
.p-section__course--option .p-section__content .c-section__price {
  color: #e6649a;
  font-weight: 600;
  margin: 0;
}

@media all and (min-width: 1025px) {

  .p-section__course--option .p-section__content .c-section__term,
  .p-section__course--option .p-section__content .c-section__price {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {

  .p-section__course--option .p-section__content .c-section__term,
  .p-section__course--option .p-section__content .c-section__price {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {

  .p-section__course--option .p-section__content .c-section__term,
  .p-section__course--option .p-section__content .c-section__price {
    font-size: 18px;
  }
}

@media all and (max-width: 414px) {

  .p-section__course--option .p-section__content .c-section__term,
  .p-section__course--option .p-section__content .c-section__price {
    font-size: 4.26667vw;
  }
}

.p-section__course--option .p-section__content .c-section__term {
  margin-top: 0;
  text-indent: -1em;
  padding-left: 1em;
}

.p-section__course--option .p-section__content .c-section__term::before {
  content: "◎";
  font-weight: bold;
}

.p-section__course--option .p-section__content .c-section__description,
.p-section__course--option .p-section__content .c-section__price {
  margin-left: 0;
}

.p-section__course--option .p-section__content .c-section__price {
  margin-top: 20px;
  display: inline-block;
}

.p-section__course--option .p-section__content .c-section__price.c-line {
  background: -webkit-gradient(linear,
      left top,
      left bottom,
      color-stop(60%, transparent),
      color-stop(60%, #e8ffe9));
  background: linear-gradient(transparent 60%, #e8ffe9 60%);
  line-height: 1.4;
}

@media all and (min-width: 1025px) {
  .p-section__course--option .p-section__content .c-section__price span {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-section__course--option .p-section__content .c-section__price span {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-section__course--option .p-section__content .c-section__price span {
    font-size: 24px;
  }
}

@media all and (max-width: 414px) {
  .p-section__course--option .p-section__content .c-section__price span {
    font-size: 5.86667vw;
  }
}

.p-section__course--option .p-section__image {
  width: 175px;
}

/* 190510add */

.p-itemcard {
  border-radius: 8px;
  padding: 10px;
  background-color: #fff;
  text-decoration: none;
  display: block;
  min-height: 325px;
}

@media all and (max-width: 414px) {
  .p-itemcard {
    min-height: 72vh;
  }
}

.block-two .p-itemcard {
  min-height: 28vh;
  padding: 5%;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .block-two .p-itemcard {
    height: 33vh;
    padding: 5%;
  }
}

@media all and (max-width: 414px) {
  .block-two .p-itemcard {
    height: 33vh;
    padding: 5%;
  }
}

.p-itemcard .c-thumb {
  margin-bottom: 1.5rem;
  text-align: center;
}

.p-itemcard .c-date,
.p-itemcard .c-post-title {
  display: block;
  text-align: left;
}

@media all and (min-width: 1025px) {
  .p-itemcard .c-date {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-itemcard .c-date {
    font-size: 13px;
    font-size: 0.8125rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-itemcard .c-date {
    font-size: 13px;
  }
}

@media all and (max-width: 414px) {
  .p-itemcard .c-date {
    font-size: 3.2vw;
  }
}

@media all and (min-width: 1025px) {
  .p-itemcard .c-post-title {
    font-size: 14px;
    font-size: 0.8rem;
    text-align: center;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-itemcard .c-post-title {
    font-size: 14px;
    font-size: 0.8rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-itemcard .c-post-title {
    font-size: 14px;
  }
}

@media all and (max-width: 414px) {
  .p-itemcard .c-post-title {
    font-size: 3.46667vw;
  }
}

a.p-itemcard {
  -webkit-transition: opacity 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: opacity 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

a.p-itemcard:hover {
  opacity: 0.8;
}

.chatblog_cont .p-itemcard {
  width: 25%;
}

@media all and (max-width: 414px) {
  .chatblog_cont .p-itemcard {
    width: 45%;
  }
}

.p-accordion {
  border: 1px solid #000000;
  padding: 40px;
  position: relative;
  float: left;
  display: block;
  width: 50%;
  text-align: center;
}

.p-accordion h3 {
  width: 100%;
  text-align: center;
  font-size: 0.95rem;
}

@media all and (max-width: 414px) {
  .p-accordion h3 {
    width: 100%;
    text-align: center;
    font-size: 0.95rem;
    top: vh;
    padding-top: 1vh;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-accordion h3 {
    width: 100%;
    text-align: center;
    font-size: 0.95rem;
    top: vh;
    padding-top: 1.5vh;
  }
}

.p-accordion__head {
  color: #e6649a;
  padding: 10px 15px;
  background: #ffffee;
  cursor: pointer;
  text-align: left;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border-top: 1px dotted #000000;
  font-weight: 600;
}

@media all and (min-width: 1025px) {
  .p-accordion__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-accordion__head {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-accordion__head {
    font-size: 17px;
  }

  .p-accordion {
    border: 1px solid #000000;
    padding: 40px;
    position: relative;
    float: none;
    display: block;
    width: 90%;
    text-align: center;
    margin: auto;
    margin-top: 20px;
    clear: both;
  }
}

@media all and (max-width: 414px) {
  .p-accordion__head {
    font-size: 4vw;
  }

  .p-accordion {
    border: 1px solid #000000;
    padding: 40px;
    position: relative;
    float: none;
    display: block;
    width: 90%;
    text-align: center;
    margin: 20px auto;
    font-size: 0.6rem;
  }
}

@media all and (max-width: 320px) {
  .p-accordion {
    padding: 20px;
  }
}

.p-accordion__head .c-step-number {
  display: block;
}

@media all and (min-width: 768px) {
  .p-accordion__head {
    padding: 10px 0;
  }

  .p-accordion__head .c-step-number {
    border-right: 1px solid #000;
    padding: 15px 30px;
    display: inline-block;
    height: 100%;
    position: relative;
  }

  .p-accordion__head .c-step-number::after,
  .p-accordion__head .c-step-number::before {
    border: solid transparent;
    content: " ";
    height: 0;
    left: 100%;
    position: absolute;
    width: 0;
  }

  .p-accordion__head .c-step-number::after {
    border-width: 9px;
    border-left-color: #ffffee;
    top: 24px;
  }

  .p-accordion__head .c-step-number::before {
    border-width: 10px;
    border-left-color: #000;
    top: 23px;
  }

  .p-accordion__head .c-step-title {
    padding: 15px 40px;
    display: inline-block;
  }
}

.p-accordion__head:hover {
  position: relative;
  z-index: 5;
}

.p-accordion__body {
  display: none;
}

.p-accordion__body-in {
  padding: 20px 0;
  text-align: left;
}

@media all and (min-width: 768px) {
  .p-accordion__body-in {
    padding: 40px;
  }
}

.p-accordion__body-in .p-flex__item:first-child {
  margin-bottom: 10px;
}

/*パッド端末のムービーサイズを決めるところです*/
@media all and (min-width: 1136px) {
  .top_movie {
    width: 58% !important;
    min-height: 45vh !important;
  }
}

@media all and (min-width: 415px) {
  .top_movie {
    left: 25% !important;
    width: 100%;
    padding: 0.5rem;
  }
}

@media all and (max-width: 414px) {
  .top_movie {
    margin-top: 1.5vh;
    width: 100%;
    padding: 0 2vw;
  }
}

.top_movie {
  left: 7% !important;
}

@media all and (min-width: 1366px) {
  .top_movie {
    width: 68% !important;
    min-height: 47vh !important;
  }
}

@media all and (min-width: 1900px) {
  .top_movie {
    width: 55% !important;
    min-height: 45vh !important;
  }
}

@media all and (min-width: 2500px) {
  .top_movie {
    width: 52% !important;
    min-height: 51vh !important;
  }
}

@media all and (min-width: 768px) {
  .p-accordion__body-in .p-flex__item:first-child {
    margin-bottom: 0;
  }

  .top_movie {
    min-height: 35vh;
    margin: 0vh auto;
    position: relative;
    width: 80%;
    display: inline-block;
    left: 0 !important;
  }

  .top_news {
    position: relative;
  }
}

.p-accordion__item>.p-accordion__head:after {
  content: "\e905";
  font-family: icomoon;
  color: #000000;
  position: absolute;
  top: 20px;
  right: 20px;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

@media all and (min-width: 1025px) {
  .p-accordion__item>.p-accordion__head:after {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-accordion__item>.p-accordion__head:after {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-accordion__item>.p-accordion__head:after {
    font-size: 22px;
  }
}

.p-accordion__item.active>.p-accordion__head:after {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}

.p-accordion__item.active .p-accordion__head {
  background: #ffffff;
}

.p-accordion__item.active .p-accordion__head .c-step-number::after {
  border-left-color: #ffffff;
}

.p-accordion__item.active .p-accordion__head .c-step-title {
  color: #000000;
}

.p-accordion__item .p-accordion__item .p-accordion__head {
  background: #f1f1f1;
  color: black;
}

.p-section--SNS {
  width: 100%;
  display: block;
  float: left;
  margin: 0;
}

.p-section--SNS .p-section__head {
  padding-top: 0.87rem;
}

@media all and (min-width: 768px) {
  .p-section--SNS .p-section__head {
    padding-top: 0.3rem;
  }

  .p-section--map .p-section__head {
    padding-top: 0.85rem;
  }
}

@media all and (max-width: 414px) {
  .p-section--SNS h5 {
    font-size: 1.01rem;
  }
}

.p-section--map {
  width: 100%;
  display: block;
  float: left;
  margin: 0;
}

.instainner,
.SNS,
.chatblog {
  width: 100%;
  display: block;
  float: left;
}

.instainner ul {
  display: block;
  float: left;
  padding-left: 0;
}

.instainner li {
  list-style-type: none;
  display: block;
  float: left;
  margin-right: 13px;
}

.SNS ul {
  width: 32rem;
  float: right;
  list-style-type: none;
  text-align: right;
}

@media all and (max-width: 414px) {
  .SNS ul {
    width: 100%;
    margin-top: 1vh;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .SNS ul {
    width: 100%;
    margin-top: 2vh;
  }
}

.SNS li {
  float: left;
  list-style-type: none;
  text-align: right;
  width: 3rem;
}

@media all and (max-width: 414px) {
  .SNS li {
    float: left;
    list-style-type: none;
    text-align: right;
    width: 10%;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .SNS li {
    float: left;
    list-style-type: none;
    text-align: right;
    width: 10%;
  }
}

.SNS img {
  width: 100%;
}

.chatblog {
  background-color: #e6e6e6;
  padding: 20px;
}

.chatbloginner {
  max-width: 70rem;
  margin: 0 auto;
  text-align: left;
}

.chatblog_cont {
  float: left;
  width: 100%;
}

.chatblog_cont h4 {
  font-size: 0.8rem;
}

.chatblog_cont p {
  font-size: 0.6rem;
}

.chatblog_cont img {
  margin: 0;
}

#sb_instagram {
  width: 100%;
}

.instainner .sbi_photo img {
  width: 18%;
  float: left;
  margin-right: 1rem;
  padding-top: 0.5rem;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .instainner .sbi_photo img {
    width: 29%;
    /* margin-right: 1rem; */
    margin: 0 1rem 0.5rem 0;
  }
}

@media all and (max-width: 414px) {
  .instainner .sbi_photo img {
    width: 27%;
    margin-right: 1rem;
  }
}

.p-section__in_se .p-activity__body {
  width: 100%;
}

.c-img-wide_s.c-img-wide_s {
  width: 50%;
  height: auto;
  margin: 0rem 0rem 1rem 0rem;
}

.p-section__in01s {
  padding: 0 20px 0px;
  border-top: 1px solid #808080;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
}

.p-section__in01s .p-section__body {
  margin-top: -2rem;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-section__in01s .p-section__body {
    margin-top: 0rem;
  }
}

@media all and (max-width: 414px) {
  .p-accordion__item>.p-accordion__head:after {
    font-size: 5.33333vw;
  }

  .p-section__in01s {
    padding: 0 20px 0px;
    border-top: 1px solid #808080;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
}

@media all and (min-width: 1680px) {
  .top_newhp {
    max-width: 1200px;
  }
}


/*トップページend ******************************************************************************/

/*TOTAL PRODUCE ******************************************************************************/

._marryme_banner_black {
  width: 100%;
  background-image: url(../img/top/__top_black_banner.png);
  height: 13rem;
  background-size: 78%;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  position: relative;
  animation: bg-color 10s infinite;
  -webkit-animation: bg-color 10s infinite;
  background-position-x: -1%;
}

@-webkit-keyframes bg-color {
  0% {
    background-color: #351900;
  }

  20% {
    background-color: #746bab;
  }

  40% {
    background-color: #d4accc;
  }

  60% {
    background-color: #c1ad6c;
  }

  80% {
    background-color: #c1bcdc;
  }

  100% {
    background-color: #b75094;
  }
}

@keyframes bg-color {
  0% {
    background-color: #351900;
  }

  20% {
    background-color: #d4accc;
  }

  40% {
    background-color: #746bab;
  }

  60% {
    background-color: #c1ad6c;
  }

  80% {
    background-color: #c1bcdc;
  }

  100% {
    background-color: #b75094;
  }
}

@media all and (min-width: 1900px) {
  ._marryme_banner_black {
    background-size: 60%;
    background-position-x: 30%;
    height: 18rem;
  }
}

@media all and (max-width: 415px) {
  ._marryme_banner_black {
    background-size: 70%;
  }
}

._marryme_banner_black_p {
  margin-top: -14rem;
}

@media all and (min-width: 1366px) {
  ._marryme_banner_black_img {
    background-size: 70%;
    background-position-x: 16vw;
  }
}

._marryme_banner_black_img {
  background-image: url(../img/top/__top_black_banner.png);
  height: 13rem;
  background-size: 70%;
  background-repeat: no-repeat;
  background-position: left;
  display: inline-block;
  position: relative;
  background-position-x: 10%;
}

._marryme_banner_black02 {
  width: 100%;
  height: auto;
  display: inline-block;
  animation: bg-color02 10s infinite;
  -webkit-animation: bg-color 10s infinite;
  background-position-x: 15rem;
  padding: 20rem;
  box-sizing: border-box;
}

@-webkit-keyframes bg-color02 {
  0% {
    background-color: #351900;
  }

  20% {
    background-color: #746bab;
  }

  40% {
    background-color: #d4accc;
  }

  60% {
    background-color: #c1ad6c;
  }

  80% {
    background-color: #c1bcdc;
  }

  100% {
    background-color: #b75094;
  }
}

@keyframes bg-color02 {
  0% {
    background-color: #351900;
  }

  20% {
    background-color: #d4accc;
  }

  40% {
    background-color: #746bab;
  }

  60% {
    background-color: #c1ad6c;
  }

  80% {
    background-color: #c1bcdc;
  }

  100% {
    background-color: #b75094;
  }
}

.container .black_textcontainer {
  /*  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);*/
  display: block;
  background-color: #fff;
}

._marryme_banner_black03 {
  width: 100%;
  height: 18vh;
  display: inline-block;
  animation: bg-color03 12s infinite !important;
  -webkit-animation: bg-color 10s infinite;
  box-sizing: border-box;
}

@-webkit-keyframes bg-color03 {
  0% {
    background-color: #ffff;
  }

  20% {
    background-color: #fff;
  }

  80% {
    background-color: #c1bcdc;
  }

  100% {
    background-color: #fff;
  }
}

@keyframes bg-color03 {
  0% {
    background-color: #fff;
  }

  20% {
    background-color: #c1bcdc;
    background: linear-gradient(rgba(193, 188, 220, 0), rgba(193, 188, 220, 1));
  }

  80% {
    background-color: #c1bcdc;
    background: linear-gradient(rgba(193, 188, 220, 0), rgba(193, 188, 220, 1));
  }

  100% {
    background-color: #fff;
    background: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
  }
}

@media all and (max-width: 414px) {
  ._marryme_banner_black03 {
    width: 100%;
    height: 22vh;
    display: inline-block;
    animation: bg-color03 12s infinite !important;
    -webkit-animation: bg-color 10s infinite;
    box-sizing: border-box;
  }
}

@media all and (min-width: 768px) and (max-width: 999px) {
  ._marryme_banner_black03 {
    height: 27vh;
  }
}

@media all and (max-width: 320px) {
  ._marryme_banner_black03 {
    height: 25vh;
  }
}

._marryme_banner_black p {
  font-size: 0.9rem;
  font-family: inherit;
  margin-left: 74%;
  margin-top: 3.15rem;
  margin-bottom: -2.4rem;
  border: double 0.1rem #746bab;
  width: 10rem;
  position: relative;
  padding: 0.8rem 0rem;
  color: #000;
  opacity: 0;
  animation-name: sample10;
  animation-duration: 5s;
  animation-iteration-count: 2;
  animation-fill-mode: forwards;
  background: rgba(255, 255, 255, 0);
  transition: background 1s;
  overflow: hidden;
}

@media all and (min-width: 1900px) {
  ._marryme_banner_black p {
    margin-top: 5rem;
  }
}

@media all and (min-width: 768px) {
  ._marryme_banner_black p {
    margin-left: 70%;
  }
}

@media all and (min-width: 380px) and (max-width: 414px) {
  ._marryme_banner_black p {
    margin-left: 60%;
  }
}

@media all and (min-width: 310px) and (max-width: 767px) {
  ._marryme_banner_black p {
    font-size: 0.9rem;
    font-family: inherit;
    border: double 0.1rem #746bab;
    width: 8.5rem;
    position: relative;
    padding: 0.8rem 0rem;
    color: #000;
    opacity: 0;
    animation-name: sample10;
    animation-duration: 5s;
    animation-iteration-count: 2;
    animation-fill-mode: forwards;
    background: rgba(255, 255, 255, 0);
    transition: background 1s;
    overflow: hidden;
    float: right;
    margin: 5.15rem 1rem -2.4rem 74rem;
  }
}

@media all and (max-width: 414px) {
  ._marryme_banner_black p {
    width: 6rem;
  }
}

._marryme_banner_black p:hover {
  background: #fffafa;
  border-radius: 10px;
}

._marryme_banner_black02 h1 {
  width: 100%;
  font-size: 28px;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: white;
  white-space: nowrap;
  overflow: hidden;
  border-right: 1px solid rgba(255, 255, 255, 0.5);
  animation: typing 3s steps(30), blink 0.5s steps(1) infinite alternate;
  margin: 0 auto;
  animation-iteration-count: infinite;
}

@keyframes typing {
  0% {
    width: 0;
  }
}

@keyframes blink {
  50% {
    border-right-color: transparent;
  }
}

@keyframes sample10 {
  0% {
    opacity: 0;
    color: #746bab;
  }

  90% {
    opacity: 1;
    color: #000;
  }

  100% {
    opacity: 1;
    color: #000;
  }
}

ul.resp-tabs-list {
  margin: 0px;
  padding: 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.resp-tabs-list li {
  font-weight: 600;
  display: inline-block;
  padding: 13px 15px;
  margin: 0;
  list-style: none;
  cursor: pointer;
  width: 33%;
  text-align: center;
}

@media all and (min-width: 1025px) {
  .resp-tabs-list li {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .resp-tabs-list li {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .resp-tabs-list li {
    font-size: 15px;
  }

  ._marryme_banner_black02 {
    width: 100%;
    height: auto;
    display: inline-block;
    animation: bg-color02 10s infinite;
    -webkit-animation: bg-color 10s infinite;
    background-position-x: 15rem;
    padding: 20rem 0rem;
    box-sizing: border-box;
  }

  .cv_inner h2 {
    font-size: 1.5rem;
    padding: 2rem;
    background-size: auto;
    height: 64rem;
    margin-top: 1rem;
    background-color: rgba(255, 255, 255, 0.4);
    width: 100%;
    display: inline-block;
    font-weight: 550;
    max-height: 850px;
  }

  ._marryme_banner_black02 h1 {
    width: 80%;
    font-size: 1.5rem;
  }
}

@media all and (max-width: 414px) {
  .resp-tabs-list li {
    font-size: 3.73333vw;
  }

  ._marryme_banner_black02 {
    width: 100%;
    height: auto;
    display: inline-block;
    animation: bg-color02 10s infinite;
    -webkit-animation: bg-color 10s infinite;
    background-position-x: 15rem;
    padding: 0;
    box-sizing: border-box;
    padding: 50px 0;
  }

  ._marryme_banner_black02 h1 {
    width: 80%;
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: white;
    white-space: nowrap;
    overflow: hidden;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    animation: typing 3s steps(30), blink 0.5s steps(1) infinite alternate;
    margin: 3rem auto;
    animation-iteration-count: infinite;
  }
}

.resp-tabs-container {
  padding: 0px;
  background-color: rgba(255, 255, 255, 0.8);
  clear: left;
}

h2.resp-accordion {
  cursor: pointer;
  padding: 5px;
  display: none;
}

.resp-tab-content {
  display: none;
  padding: 15px 15px 50px 15px;
}

.resp-tab-content-active .in {
  animation: fadeIn 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0s 1 normal;
  -webkit-animation: fadeIn 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0s 1 normal;
}

.resp-tab-active {
  color: #fff;
  background: #ff7bad !important;
  border: none !important;
  position: relative;
}

.resp-tab-active {
  border-bottom: none;
  background-color: #fff;
}

.resp-content-active,
.resp-accordion-active {
  display: block;
}

.resp-tab-content {
  border: 1px solid #c1c1c1;
}

h2.resp-accordion {
  border: 1px solid #c1c1c1;
  border-top: 0px solid #c1c1c1;
  margin: 0px;
  padding: 10px 15px;
  font-weight: 600;
  position: relative;
}

@media all and (min-width: 1025px) {
  h2.resp-accordion {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  h2.resp-accordion {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  h2.resp-accordion {
    font-size: 15px;
  }
}

@media all and (max-width: 414px) {
  h2.resp-accordion {
    font-size: 3.73333vw;
  }
}

h2.resp-accordion::before {
  display: none;
}

h2.resp-accordion::after {
  content: "\e905";
  font-family: icomoon;
  color: #000000;
  position: absolute;
  width: inherit !important;
  height: inherit !important;
  top: 12px;
  right: 10px;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  line-height: 1;
  z-index: 4;
}

@media all and (min-width: 1025px) {
  h2.resp-accordion::after {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  h2.resp-accordion::after {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  h2.resp-accordion::after {
    font-size: 22px;
  }
}

@media all and (max-width: 414px) {
  h2.resp-accordion::after {
    font-size: 5.33333vw;
  }
}

h2.resp-accordion.resp-tab-active::after {
  color: #ffffff;
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}

h2.resp-tab-title:last-child {
  border-bottom: 12px solid #c1c1c1 !important;
  background: blue;
}

/*-----------Accordion styles-----------*/

h2.resp-tab-active {
  background: #dbdbdb;
  /* !important;*/
}

.resp-easy-accordion h2.resp-accordion {
  display: block;
}

.resp-easy-accordion .resp-tab-content {
  border: 1px solid #c1c1c1;
}

.resp-easy-accordion .resp-tab-content:last-child {
  border-bottom: 1px solid #c1c1c1;
  /* !important;*/
}

.resp-jfit {
  width: 100%;
  margin: 0px;
}

.resp-tab-content-active {
  display: block;
}

h2.resp-accordion:first-child {
  border-top: 1px solid #c1c1c1;
  /* !important;*/
}

/*Here your can change the breakpoint to set the accordion, when screen resolution changed*/

@media only screen and (max-width: 768px) {
  ul.resp-tabs-list {
    display: none;
  }

  h2.resp-accordion {
    display: block;
  }

  .resp-vtabs .resp-tab-content {
    border: 1px solid #c1c1c1;
  }

  .resp-vtabs .resp-tabs-container {
    border: none;
    float: none;
    width: 100%;
    min-height: 100px;
    clear: none;
  }

  .resp-accordion-closed {
    display: none !important;
  }

  .resp-vtabs .resp-tab-content:last-child {
    border-bottom: 1px solid #c1c1c1 !important;
  }
}

.p-graph-content {
  width: 100%;
  margin: 0 auto;
  padding: 15px 0;
}

.c-graph-caption {
  font-weight: bold;
  margin: 0 auto;
  margin: 0 auto;
}

@media all and (min-width: 768px) {
  .c-graph-caption {
    max-width: 800px;
  }
}

.p-bar-graph {
  margin: 0;
  padding: 0;
  margin: 0 auto;
}

@media all and (min-width: 768px) {
  .p-bar-graph {
    max-width: 800px;
  }
}

.p-bar-graph__list {
  list-style: none;
  margin: 20px 0 0 0;
  padding: 0;
}

@media all and (min-width: 768px) {
  .p-bar-graph__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-content: flex-start;
  }
}

.p-bar-graph__list .c-bar-graph__category {
  display: block;
}

@media all and (min-width: 768px) {
  .p-bar-graph__list .c-bar-graph__category {
    display: inline-block;
    width: 140px;
    text-align: right;
    margin-right: 10px;
  }
}

@media all and (min-width: 768px) {
  .p-bar-graph__list .c-bar {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
}

.c-graph-description {
  max-width: 800px;
  margin: 0 auto;
  padding-top: 1rem;
  font-size: 0.9rem;
}

.c-bar {
  height: 40px;
  max-width: 680px;
  line-height: 40px;
  color: #fff;
  padding: 0 0 0 10px;
  position: relative;
  font-weight: bold;
  text-align: left;
}

@media all and (min-width: 1025px) {
  .c-bar {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .c-bar {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .c-bar {
    font-size: 15px;
  }
}

@media all and (max-width: 414px) {
  .c-bar {
    font-size: 3.73333vw;
  }
}

.c-bar:after {
  white-space: nowrap;
}

.c-bar::before {
  content: "";
  width: 100%;
  position: absolute;
  left: 0;
  height: 40px;
  top: 0;
  z-index: 2;
  background: #f2f2f2;
}

.c-bar::after {
  content: "";
  background: #b8b2d6;
  height: 40px;
  -webkit-transition: 0.7s;
  transition: 0.7s;
  display: block;
  width: 100%;
  -webkit-animation: bar-before 1 3s;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  text-align: right;
}

.c-bar.c-longest::after {
  color: #ffffdd;
  background: #e6649a;
}

.c-bar.c-bar1::after {
  content: "5,214名";
  max-width: 51.14%;
}

.c-bar.c-bar2::after {
  content: "6,565名";
  max-width: 65.65%;
}

.c-bar.c-bar3::after {
  content: "10,912名";
  max-width: 109.12%;
}

.c-bar.c-bar4::after {
  content: "6,524名";
  max-width: 65.24%;
}

.c-bar.c-bar5::after {
  content: "3,704名";
  max-width: 37.04%;
}

.p-graph-content--annual-income .c-bar1::after {
  content: "5,214名";
  max-width: 51.14%;
}

.p-graph-content--annual-income .c-bar2::after {
  content: "6,565名";
  max-width: 65.65%;
}

.p-graph-content--annual-income .c-bar3::after {
  content: "10,912名";
  max-width: 109.12%;
}

.p-graph-content--annual-income .c-bar4::after {
  content: "6,524名";
  max-width: 65.24%;
}

.p-graph-content--annual-income .c-bar5::after {
  content: "3,704名";
  max-width: 37.04%;
}

.p-graph-content--age .c-bar1::after {
  content: "5,301 名";
  max-width: 53.01%;
}

.p-graph-content--age .c-bar2::after {
  content: "13,774 名";
  max-width: 137.74%;
}

.p-graph-content--age .c-bar3::after {
  content: "16,805 名";
  max-width: 168.05%;
}

.p-graph-content--age .c-bar4::after {
  content: "12,963 名";
  max-width: 129.63%;
}

.p-graph-content--age .c-bar5::after {
  content: "10,161名";
  max-width: 101.61%;
}

.p-graph-content--age .c-bar6::after {
  content: "5,680名";
  max-width: 56.80%;
}

.p-graph-content--age .c-bar7::after {
  content: "3,024名";
  max-width: 30.24%;
}

.p-graph-content--age .c-bar8::after {
  content: "2,940名";
  max-width: 29.40%;
}

.p-graph-content--school-career .p-bar-graph--male .c-bar1::after {
  content: "13%";
  max-width: 13%;
}

.p-graph-content--school-career .p-bar-graph--male .c-bar2::after {
  content: "12%";
  max-width: 12%;
}

.p-graph-content--school-career .p-bar-graph--male .c-bar3::after {
  content: "64%";
  max-width: 64%;
}

.p-graph-content--school-career .p-bar-graph--male .c-bar4::after {
  content: "10%";
  max-width: 10%;
}

.p-graph-content--school-career .p-bar-graph--male .c-bar5::after {
  content: "1%";
  max-width: 1%;
}

.p-graph-content--school-career .p-bar-graph--female .c-bar1::after {
  content: "1%";
  max-width: 1%;
}

.p-graph-content--school-career .p-bar-graph--female .c-bar2::after {
  content: "70.4%";
  max-width: 70.4%;
}

.p-graph-content--school-career .p-bar-graph--female .c-bar3::after {
  content: "5.3%";
  max-width: 5.3%;
}

.p-graph-content--school-career .p-bar-graph--female .c-bar4::after {
  content: "0.7%";
  max-width: 0.7%;
}

.p-content-wrap--reason .c-reason-content__head {
  max-width: 18vw;
  padding: 0;
}

@media all and (min-width: 768px) {
  .p-content-wrap--reason .c-reason-content__head {
    width: 92px;
  }

  .tp_80per {
    border-radius: 10px;
    border: solid 1px #ec9cc3;
    background-color: #c1bcdc;
    color: #000;
    width: 7em;
    margin: 1em auto;
    vertical-align: middle;
    height: 3rem;
  }

  .tp_80per span {
    border-bottom: solid 1px #ff7bac;
    color: #000;
    font-size: 18px;
  }

  .strategy {
    padding: 33px;
    float: left;
    padding: 2em 5em;
    color: #5d627b;
    background: white;
    border-top: solid 5px#5d627b;
    box-shadow: 0 3px 5px rgb(0 0 0 / 22%);
  }

  .strategy p {
    font-size: 14px;
  }

  .strategy img {
    float: left;
    margin-right: 38px;
    width: 33%;
  }

  .strategy h2 {
    background-image: url(../img/totalproduce/senryaku_icon.png);
    background-position: left center;
    background-repeat: no-repeat;
    font-size: 18px;
    padding-left: 46px;
    height: 33px;
    background-size: 2.2em;
  }

  .strategy h2 span {
    border-bottom: solid 1px #c1ad62;
    padding-top: 10px;
  }

  .strategy .inr {
    float: left;
    width: 100%;
  }

  .strategy .inr p {
    float: left;
    width: 60%;
    font-size: 0.9rem;
    line-height: 2.1rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .tp_80per {
    border-radius: 10px;
    border: solid 1px #ec9cc3;
    background-color: #c1bcdc;
    color: #000;
    width: 7em;
    margin: 1em auto;
    vertical-align: middle;
    height: 3rem;
  }

  .tp_80per span {
    border-bottom: solid 1px #ff7bac;
    color: #000;
    font-size: 18px;
  }

  .tp_point1 h3,
  .tp_point2 h3,
  .tp_point3 h3,
  .tp_point4 h3 {
    font-size: 0.8rem;
    color: #ff91b6;
    margin-top: 1.8rem;
  }

  .strategy {
    padding: 33px;
    float: left;
    padding: 2em 2em;
    color: #5d627b;
    background: white;
    border-top: solid 5px#5d627b;
    box-shadow: 0 3px 5px rgb(0 0 0 / 22%);
    margin-bottom: 20px;
  }

  .strategy p {
    font-size: 14px;
  }

  .strategy img {
    margin: 0 23%;
    width: 54%;
  }

  .strategy h2 {
    background-image: url(../img/totalproduce/senryaku_icon.png);
    background-position: left center;
    background-repeat: no-repeat;
    font-size: 18px;
    padding-left: 46px;
    height: 33px;
    background-size: 2.2em;
  }

  .strategy h2 span {
    border-bottom: solid 1px #c1ad62;
    padding-top: 10px;
  }

  .strategy .inr {
    float: left;
    width: 100%;
  }

  .strategy .inr p {
    float: left;
    width: 100%;
    font-size: 0.8rem;
    line-height: 2.1rem;
  }
}

@media all and (max-width: 414px) {
  .tp_80per {
    border-radius: 10px;
    border: solid 1px #ec9cc3;
    background-color: #c1bcdc;
    color: #000;
    width: 7em;
    margin: 1em auto;
    vertical-align: middle;
    height: 3rem;
  }

  .tp_80per span {
    border-bottom: solid 1px #ff7bac;
    color: #000;
    font-size: 18px;
  }

  .tp_point1 h3,
  .tp_point2 h3,
  .tp_point3 h3,
  .tp_point4 h3 {
    font-size: 0.8rem;
    color: #ff91b6;
    margin-top: 1rem;
  }

  .strategy {
    padding: 33px;
    float: left;
    padding: 2em 1em;
    color: #5d627b;
    background: white;
    border-top: solid 5px#5d627b;
    box-shadow: 0 3px 5px rgb(0 0 0 / 22%);
    margin-bottom: 40px;
  }

  .strategy p {
    font-size: 14px;
  }

  .strategy img {
    margin: 0 auto;
    display: block;
    width: 50%;
  }

  .strategy h2 {
    background-image: url(../img/totalproduce/senryaku_icon.png);
    background-position: left center;
    background-repeat: no-repeat;
    font-size: 18px;
    padding-left: 46px;
    height: 33px;
    background-size: 2.2em;
  }

  .strategy h2 span {
    border-bottom: solid 1px #c1ad62;
    padding-top: 10px;
    font-size: 1.3rem;
  }

  .strategy .inr {
    float: left;
    width: 100%;
  }

  .strategy .inr p {
    float: left;
    width: 100%;
    font-size: 0.8rem;
    line-height: 2.1rem;
  }
}

.p-content-wrap--reason .c-reason-content__lead {
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  margin: 0 auto 7px auto !important;
  display: inline-block;
}

.kagaya {
  padding: 2em 2em;
  color: #5d627b;
  background: white;
  border-top: solid 5px #5d627b;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
  margin: 3rem 0rem;
}

.tp_point2 img,
.tp_point3 img {
  width: 45%;
}

.tp_point4 {
  width: 100%;
  margin: 0 1rem;
}

.tp_point5 {
  width: 90%;
  margin: 0 auto;
}

/*767px以下の場合、marginを削除*/
@media all and (max-width: 767px) {
  .tp_point4 {
    width: 100%;
    margin: 0 0;
  }

  .tp_point5 {
    width: 90%;
    margin: 0 auto;
  }
}

.tp_point4 img {
  width: 100%;
}

.tp_point5 img {
  width: 100%;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--reason .c-reason-content__lead {
    font-size: 22px;
  }

  .tp_point2 p {
    font-size: 0.8rem;
    width: 100%;
  }

  .tp_point2 img {
    margin-bottom: 0.5rem;
    width: 70%;
    padding: 2rem;
  }

  .tp_point3 p {
    font-size: 0.9rem;
    width: 100%;
  }

  .tp_point3 img {
    margin-bottom: 18px;
    width: 100%;
    margin-right: 5rem;
  }

  .tp_point4 img {
    margin-bottom: 18px;
    width: 20em;
    margin-right: 2rem;
  }

  @media all and (min-width: 320px) and (max-width: 767px) {
    .tp_point4 img {
      width: 100%;
      padding: 2rem;
    }
  }

  .tp_point3_tab_bg {
    background-image: url(../img/totalproduce/tp-12.png);
    background-repeat: no-repeat;
    background-size: cover;
    height: auto;
    margin-top: 2rem;
  }

  .tp_point4 {
    width: 80%;
    margin: 0 auto;
  }

  .tp_point4 p {
    font-size: 0.8rem;
    width: 25em;
  }

  .tp_point4 .pt {
    font-size: 0.8rem;
    width: 100%;
    margin: 1.5rem auto;
    text-align: center;
    line-height: 1.8rem;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--reason .c-reason-content__lead {
    font-size: 18px;
  }

  .tp_point2 p {
    font-size: 0.8rem;
    width: 100%;
  }

  .tp_point2 img {
    margin-bottom: 0.5rem;
    width: 13.5rem;
  }

  .tp_point3 p {
    font-size: 0.9rem;
    width: 100%;
  }

  .tp_point3 img {
    margin-bottom: 18px;
    width: 21em;
    margin-right: 5rem;
  }

  .tp_point4 {
    margin-bottom: 18px;
    width: 100%;
    margin-right: 2rem;
  }

  .tp_point4 img {
    margin-bottom: 18px;
    width: 100%;
    margin-right: 2rem;
  }

  .tp_point5 {
    margin-bottom: 0;
    width: 90%;
    margin: 0 auto;
  }

  .tp_point5 img {
    width: 100%;
    height: 236px;
  }

  .tp_point3_tab_bg {
    background-image: url(../img/totalproduce/tp-12.png);
    background-repeat: no-repeat;
    background-size: cover;
    height: auto;
    margin-top: 2rem;
  }

  .tp_point4 p {
    font-size: 0.8rem;
    width: 100%;
  }

  .tp_point4 .pt {
    font-size: 0.8rem;
    width: 100%;
    margin: 1.5rem auto;
    text-align: center;
    line-height: 1.8rem;
  }

  .tp_point5 p {
    font-size: 0.8rem;
    width: 100%;
  }

  .tp_point5 .pt {
    font-size: 0.8rem;
    width: 100%;
    margin: 1.5rem auto;
    text-align: center;
    line-height: 1.8rem;
  }

  .kagaya {
    padding: 2em 3em;
    color: #5d627b;
    background: white;
    border-top: solid 5px #5d627b;
    box-shadow: 0 3px 5px rgb(0 0 0 / 22%);
  }
}

.p-content-wrap--reason .c-reason-content__lead sup {
  vertical-align: super;
}

@media all and (min-width: 1025px) {
  .p-content-wrap--reason .c-reason-content__lead sup {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap--reason .c-reason-content__lead sup {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--reason .c-reason-content__lead sup {
    font-size: 12px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--reason .c-reason-content__lead sup {
    font-size: 2.93333vw;
  }
}

.p-content-wrap .p-content-wrap--reason p {
  margin-bottom: 1rem;
}

.p-content-wrap--reason .p-flex {
  display: block;
}

.p-content-wrap--reason .p-flex .c-reason-content__image {
  margin-bottom: 20px;
  overflow: hidden;
  cursor: pointer;
}

@media all and (max-width: 320px) {
  .p-content-wrap--reason .p-flex .c-reason-content__image {
    width: 100%;
    padding: 1.3rem !important;
  }
}

@media all and (min-width: 320px) and (max-width: 414px) {
  .p-content-wrap--reason .p-flex .c-reason-content__image {
    width: 100%;
    padding: 2rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--reason .p-flex .c-reason-content__image {
    padding: 4rem;
  }
}

@media all and (min-width: 1025px) {
  .p-content-wrap--reason .p-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    margin-top: 3rem;
  }

  .p-content-wrap--reason .p-flex .c-reason-content__image {
    margin: auto;
    max-width: 22rem;
    margin-right: 0.5rem;
    margin-left: 0.5rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }

  .p-content-wrap--reason .p-flex--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .p-content-wrap--reason .p-flex--reverse .c-reason-content__image {
    margin-right: 0;
    margin-left: 70px;
  }
}

@media all and (min-width: 768px) and (max-width:1024px) {
  .p-content-wrap--reason .p-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    margin-top: 3rem;
  }

  .p-content-wrap--reason .p-flex .c-reason-content__image {
    margin: auto;
    max-width: 16rem;
    margin-right: 0.5rem;
    margin-left: 0.5rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }

  .p-content-wrap--reason .p-flex--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .p-content-wrap--reason .p-flex--reverse .c-reason-content__image {
    margin-right: 0;
    margin-left: 70px;
  }
}

.p-content-wrap--reason .p-flex .c-reason-content__block {
  text-align: center;
  line-height: 1.9rem;
}

@media all and (min-width: 1025px) {
  .p-content-wrap--reason .p-flex .c-reason-content__block sup {
    font-size: 10px;
    font-size: 0.625rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap--reason .p-flex .c-reason-content__block sup {
    font-size: 10px;
    font-size: 0.625rem;
  }
}

.p-content-wrap--reason .p-flex .c-reason-content__block .c-notes p {
  margin: 0;
}

.p-content-wrap--reason .p-flex .c-reason-content__block .c-notes p span {
  padding-right: 0.5em;
}

.p-content-wrap--reason .p-flex:last-child .c-reason-content__block {
  text-align: center;
}

@media all and (min-width: 768px) {
  .p-content-wrap--reason .p-flex:last-child .c-reason-content__block {
    text-align: left;
  }
}

.p-content-wrap--reason .p-flex:last-child .c-reason-content__block p {
  text-align: left;
}

.p-content-wrap--reason:first-child .p-flex {
  margin-bottom: 30px;
}

@media all and (min-width: 768px) {
  .p-content-wrap--reason:first-child .p-flex {
    margin-bottom: 50px;
  }
}

.c-reason-content__block .u-m-t-0 a {
  color: #e17bac;
}

.modal-body p {
  text-align: center;
  line-height: 1.6rem;
  font-size: 0.7rem;
  color: #5d627b;
}

.modal-header h5 {
  margin: 0 auto;
  color: #e17bac;
  width: 70%;
  white-space: nowrap;
  text-align: center;
}

.modal-header .p-contents_hr_in {
  margin: 0 auto;
}

._nobreake {
  white-space: nowrap;
}

.modal-content .modal-header .p_cont_tit {
  /* margin-left: 5rem; */
  height: auto;
}

.modal-content .modal-header .p_cont_tit p {
  color: #e6649a;
  margin: 0rem auto;
  font-size: 0.9rem;
  text-align: center;
}

.modal-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 1rem;
  border-bottom: none;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.modal-body .c-img-wide {
  margin: 0 auto;
  width: 90%;
  height: auto;
  display: block;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.5;
  text-align: right;
}

.modal-footer_button {
  width: 5.5rem;
  background-color: #c1bcdc;
  border-color: #c1bcdc;
  margin: 0 auto;
  color: #000;
}

.modal-content .p-contents_tit_hr {
  border-top: #dee2e6 1px solid;
  height: 1px;
  width: 100%;
}

.modal-content .contactbtntop {
  margin: 1rem auto;
  padding: 0.5rem;
  width: 17rem;
  text-align: center;
  color: #fff;
}

.modal-content .contactbtntop:hover {
  color: #000000;
}

.modal-dialog-centered {
  height: auto;
  position: relative;
  min-height: auto;
  margin: 11rem auto;
}

/*modal-dialogスマホレイアウト対応*/
@media all and (max-width: 767px) {
  .modal {
    height: 100%;
    z-index: 2001;
  }

  .modal-dialog-centered {
    margin: auto auto;
    height: auto;
  }
}

.tp_point1 .c-img-wide,
.tp_point2 .c-img-wide,
.tp_point3 .c-img-wide,
.tp_point4 .c-img-wide {
  width: 100%;
  transition-duration: 0.5s;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.tp_point5 .c-img-wide {
  width: 100%;
  transition-duration: 0.5s;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.tp_point1 .c-img-wide:hover,
.tp_point2 .c-img-wide:hover,
.tp_point3 .c-img-wide:hover,
.tp_point4 .c-img-wide:hover {
  transform: scale(1.2);
  transition-duration: 0.5s;
  opacity: 0.8;
  overflow: hidden;
  border-radius: 1.5rem;
  box-shadow: 0 3px 5px rgb(0 0 0 / 22%);
  border: 0.1rem solid #746bab;
}

.tp_point5 .c-img-wide:hover {
  transform: scale(1.5);
  transition-duration: 0.5s;
  overflow: hidden;
  border-radius: 1.5rem;
  box-shadow: 0 3px 5px rgb(0 0 0 / 22%);
  border: 0.1rem solid #746bab;
}

figure.snip1110 {
  font-family: "Raleway", Arial, sans-serif;
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  min-width: 364px;
  max-width: 1042px;
  max-height: 364px;
  width: 100%;
  background: #000000;
  text-align: left;
  text-align: center;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
}

figure.snip1110 * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}

figure.snip1110 img {
  max-width: 55%;
  position: relative;
  margin-left: 27rem;
}

figure.snip1110 figcaption {
  position: absolute;
  top: 15%;
  bottom: 15%;
  left: 20px;
  right: 40%;
  background-color: rgba(212, 172, 205, 0.9);
  box-shadow: 8px 8px 15px rgba(0, 0, 0, 0.6);
  z-index: 1;
  -webkit-transform: translateX(20px);
  transform: translateX(20px);
  opacity: 0;
  width: 524px;
  height: 300px;
  font-family: 游明朝, Yu Mincho, YuMincho, Hiragino Mincho Pro, serif;
  padding: 0.5rem 1rem 1rem 2rem;
}

@media all and (min-width: 768px) and (max-width:930px) {
  figure.snip1110 figcaption {
    top: -1rem;
  }
}

figure .figcaption_in {
  position: absolute;
  top: 8%;
  bottom: 10%;
  left: 20px;
  right: 40%;
  background-color: rgba(255, 255, 255, 0.8);
  background-size: 4rem;
  margin: 1 auto;
  width: 30rem;
  height: 16rem;
  background-image: url(/img/top/__cle_drow.png);
  background-repeat: no-repeat;
  background-position-y: 11.5rem;
  background-position-x: 0;
  background-size: 4rem;
}

figure.snip1110 h6 {
  color: #000;
  margin: 0;
  text-transform: uppercase;
  font-weight: 500;
  border-bottom: 1px solid #000;
  padding: 7px;
  line-height: 1.3rem;
}

figure.snip1110 h6 span {
  font-weight: 600;
  color: #000;
  line-height: 2.5rem;
  font-size: 1rem;
}

figure.snip1110 p {
  font-size: 0.8rem;
  font-weight: 500;
  color: #000;
  line-height: 1.5rem;
  padding: 0.5rem 0rem 0rem 2rem;
}

figure.snip1110:after {
  background: #000;
  width: 60px;
  height: 100%;
  position: absolute;
  left: -40px;
  top: 0;
  content: "";
  background-image: -webkit-linear-gradient(top,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.15) 100%);
  background-image: linear-gradient(to bottom,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.15) 100%);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

figure.snip1110 a {
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  position: absolute;
  z-index: 1;
}

figure.snip1110.blue h5 {
  color: #1b557a;
}

figure.snip1110.blue:after {
  background-color: #0a212f;
}

figure.snip1110.red h5 {
  color: #81261d;
}

figure.snip1110.red:after {
  background-color: #36100c;
}

figure.snip1110.yellow h5 {
  color: #b06f09;
}

figure.snip1110.yellow:after {
  background-color: #583804;
}

figure.snip1110.green h5 {
  color: #19703e;
}

figure.snip1110.green:after {
  background-color: #082514;
}

figure.snip1110.navy h5 {
  color: #19232d;
}

figure.snip1110.navy:after {
  background-color: #000000;
}

figure.snip1110:hover img,
figure.snip1110.hover img {
  -webkit-transform: translateX(20px);
  transform: translateX(20px);
}

figure.snip1110:hover:after,
figure.snip1110.hover:after {
  left: 0;
}

figure.snip1110:hover figcaption,
figure.snip1110.hover figcaption {
  -webkit-transform: translateX(0px);
  transform: translateX(0px);
  opacity: 1;
}

@media all and (max-width: 414px) {
  .figure.snip1110 {
    min-height: 455px;
    display: none;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  figure.snip1110 {
    font-family: "Raleway", Arial, sans-serif;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    min-width: 364px;
    max-width: 1042px;
    min-height: 375px;
    width: 100%;
    background: #fff;
    text-align: left;
    text-align: center;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
    height: 375px;
    display: none;
  }

  figure.snip1110 * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
  }

  figure.snip1110 img {
    max-width: 100%;
    position: relative;
    margin-left: 0;
    margin-top: 3%;
  }

  figure.snip1110 figcaption {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(212, 172, 205, 0.9);
    box-shadow: 8px 8px 15px rgba(0, 0, 0, 0.6);
    z-index: 1;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
    opacity: 0;
    width: 100%;
    height: 370px;
    font-family: 游明朝, Yu Mincho, YuMincho, Hiragino Mincho Pro, serif;
    padding: 0.5rem 1rem 1rem 2rem;
  }

  figure .figcaption_in {
    position: absolute;
    bottom: 0%;
    left: 5%;
    right: 0%;
    /* background-color: rgba(255, 255, 255, 0.8); */
    background-size: 4rem;
    margin: 1 auto;
    width: 90%;
    height: 19.8rem;
    background-image: url(/img/top/__cle_drow.png);
    background-repeat: no-repeat;
    background-position-y: bottom;
    background-position-x: 0;
    background-size: 4rem;
  }

  figure.snip1110 h6 {
    color: #000;
    margin: 0;
    text-transform: uppercase;
    font-weight: 500;
    border-bottom: 1px solid #000;
    padding: 7px;
    line-height: 1.3rem;
    transform: scale(0.9);
    font-size: 16px;
  }

  figure.snip1110 h6 span {
    font-weight: 600;
    color: #000;
    line-height: 2.5rem;
    transform: scale(0.9);
    font-size: 20px;
  }

  figure.snip1110:after {
    background: #fff;
    width: 60px;
    height: 100%;
    position: absolute;
    left: -60px;
    top: 0;
    content: "";
    background-image: none;
    background-image: none;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }

  figure.snip1110 a {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    z-index: 1;
  }

  figure.snip1110.blue h5 {
    color: #1b557a;
  }

  figure.snip1110.blue:after {
    background-color: #0a212f;
  }

  figure.snip1110.red h5 {
    color: #81261d;
  }

  figure.snip1110.red:after {
    background-color: #36100c;
  }

  figure.snip1110.yellow h5 {
    color: #b06f09;
  }

  figure.snip1110.yellow:after {
    background-color: #583804;
  }

  figure.snip1110.green h5 {
    color: #19703e;
  }

  figure.snip1110.green:after {
    background-color: #082514;
  }

  figure.snip1110.navy h5 {
    color: #19232d;
  }

  figure.snip1110.navy:after {
    background-color: #000000;
  }

  figure.snip1110:hover img,
  figure.snip1110.hover img {
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }

  figure.snip1110:hover:after,
  figure.snip1110.hover:after {
    left: 0;
  }

  figure.snip1110:hover figcaption,
  figure.snip1110.hover figcaption {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1;
  }

  #one img {
    width: 100%;
  }

  #two img {
    width: 100%;
  }

  #two {
    display: none;
    opacity: 0;
  }
}

@media all and (min-width: 540px) and (max-width: 767px) {
  figure.snip1110 p {
    transform: scale(0.9);
    font-size: 17px;
    line-height: 1.8rem;
  }
}

@media all and (max-width: 414px) {
  figure.snip1110 {
    font-family: "Raleway", Arial, sans-serif;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    min-width: 200px;
    max-width: 1042px;
    min-height: 340px;
    width: 100%;
    background: #fff;
    text-align: left;
    text-align: center;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
    display: none;
  }

  figure.snip1110 * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
  }

  figure.snip1110 img {
    max-width: 100%;
    position: relative;
    margin-left: 0;
    margin-top: 15%;
  }

  figure.snip1110 figcaption {
    width: 100%;
    min-height: 330px;
    top: 0;
    left: 0;
  }

  figure .figcaption_in {
    position: absolute;
    top: 5%;
    bottom: 10%;
    background-size: 4rem;
    margin: 0 auto;
    width: 30rem;
    min-height: 300px;
    background-position-y: bottom;
    background-position-x: 0;
    background-size: 3rem;
    width: 87%;
    left: 6.5%;
  }

  figure.snip1110 h6 {
    color: #000;
    margin: 0;
    text-transform: uppercase;
    font-weight: 500;
    border-bottom: 1px solid #000;
    padding: 0px;
    line-height: 1.3rem;
    font-size: 0.5rem;
  }

  figure.snip1110 h6 span {
    font-weight: 600;
    color: #000;
    line-height: 2.5rem;
    font-size: 1rem;
  }

  figure.snip1110 p {
    font-size: 0.7rem;
    font-weight: 500;
    color: #000;
    line-height: 1rem;
    padding: 1rem 0.5rem;
  }

  figure.snip1110:after {
    background: #000;
    width: 0;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    content: "";
    background-image: -webkit-linear-gradient(top,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0.15) 100%);
    background-image: linear-gradient(to bottom,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0.15) 100%);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }

  figure.snip1110 a {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    z-index: 1;
  }

  figure.snip1110.blue h5 {
    color: #1b557a;
  }

  figure.snip1110.blue:after {
    background-color: #0a212f;
  }

  figure.snip1110.red h5 {
    color: #81261d;
  }

  figure.snip1110.red:after {
    background-color: #36100c;
  }

  figure.snip1110.yellow h5 {
    color: #b06f09;
  }

  figure.snip1110.yellow:after {
    background-color: #583804;
  }

  figure.snip1110.green h5 {
    color: #19703e;
  }

  figure.snip1110.green:after {
    background-color: #082514;
  }

  figure.snip1110.navy h5 {
    color: #19232d;
  }

  figure.snip1110.navy:after {
    background-color: #000000;
  }

  figure.snip1110:hover img,
  figure.snip1110.hover img {
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }

  figure.snip1110:hover:after,
  figure.snip1110.hover:after {
    left: 0;
  }

  figure.snip1110:hover figcaption,
  figure.snip1110.hover figcaption {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1;
  }

  #one img {
    width: 100%;
  }

  #two img {
    width: 100%;
  }

  #two {
    display: none;
    opacity: 0;
  }
}

.container02 {
  width: 100%;
  position: relative;
  top: 7vh;
  float: left;
  z-index: 100;
}

.container02 .t_block {
  width: 100%;
  display: inline-block;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

@media all and (min-width: 900px) {
  .container02 .t_block {
    /* min-height: 60rem; */
  }
}

.container03 {
  width: 100%;
  position: relative;
  top: 7vh;
}

.container03 .block-one,
.container03 .block-two,
.container03 .block-three,
.container03 .block-four,
.container03 .block-five {
  height: auto;
  padding-top: 0;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .container03 .block-five {
    padding: 0%;
  }
}

.container03 .block-six {
  z-index: 600;
  height: auto;
  padding-top: 0;
}

.container03 .block-two .mediabtn {
  margin: 1rem 0;
}

.container03 .block-four .p-section__head .p-contents_hr_in,
.container03 .block-three .p-section__head .p-contents_hr_in,
.container03 .block-two .p-section__head .p-contents_hr_in,
.container03 .block-one .p-section__head .p-contents_hr_in {
  padding-top: 30px;
}

/* @media all and (min-width: 667px) and (max-width: 766px) {
  .container03 .block-four .p-section__head .p-contents_hr_in,
.container03 .block-three .p-section__head .p-contents_hr_in,
.container03 .block-two .p-section__head .p-contents_hr_in,
  .container03 .block-one .p-section__head .p-contents_hr_in{
    padding-top: 37px;
  }

} */


.container03 .p-section--SNS .p-section__head .p-contents_hr_in,
.container03 .p-section--map .p-section__head .p-contents_hr_in3 {
  /* padding-top: 24px; */
}

@media all and (max-width: 414px) {
  .container03 .p-section--SNS .p-section__head .p-contents_hr_in {
    padding-top: 23px;
  }

  .container03 .p-section--map .p-section__head .p-contents_hr_in3 {
    padding-top: 22.5px;
  }
}

@media all and (min-width: 667px) and (max-width: 766px) {
  .container03 .p-section--SNS .p-section__head .p-contents_hr_in {
    padding-top: 30px;
  }

  .container03 .p-section--map .p-section__head .p-contents_hr_in3 {
    /* padding-top: 22.5px; */
  }
}

.purbtn {
  width: 20em;
  height: 4em;
  color: #2c2c2f;
  background: #746bab;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  display: block;
  text-align: left;
  outline: none;
  transition: ease 0.2s;
  padding: 20px;
  max-width: 20rem;
  font-size: 0.8rem;
  margin-top: 2rem;
}

.purbtn a {
  width: 20em;
  height: 4em;
  color: #fff;
  text-decoration: none;
  font-size: 1rem;
}

.purBtn {
  position: relative;
  border: 1px solid #746bab;
  margin-left: auto;
  margin-right: auto;
  width: 332px;
  height: 83px;
  line-height: 83px;
  display: flex;
  text-align: center;
  background: #746bab;
  font-size: 20px;
  color: #fff;
}

.purBtnText {
  width: 100%;
  height: 100%;
  color: #fff;
  z-index: 10;
}

.purBtnText:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #fff;
  z-index: -1;
  transition: 0.2s;
}

.purBtnText:hover {
  color: #746bab;
}

.purBtnText:hover:before {
  width: 100%;
}

@media all and (min-width: 768px) {
  .p-content-wrap--reason .c-reason-content__lead {
    font-size: 22px;
  }

  .tp_point2 {
    padding: 0 0.5rem;
  }

  #point2-kasahawa-img {
    height: auto;
    width: 19.1rem;
  }

  .tp_point2 img {
    margin-bottom: 0.5rem;
    width: 100%;
  }

  .tp_point1 h3,
  .tp_point2 h3,
  .tp_point3 h3,
  .tp_point4 h3,
  .tp_point5 h3 {
    font-size: 0.8rem;
    color: #ff91b6;
    margin-top: 1.8rem;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-content-wrap--reason .p-flex .c-reason-content__block sup {
    font-size: 10px;
  }

  .modal-content .modal-header .p_cont_tit {
    margin: 0 auto;
    height: auto;
  }

  .container03 .block-one,
  .container03 .block-two,
  .container03 .block-three,
  .container03 .block-four {
    height: 100%;
    padding: 0%;
  }

  .container02 .t_block {
    max-width: 768px;
    height: 100%;
    display: inline-block;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    padding-top: 0%;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--reason .p-flex .c-reason-content__block sup {
    font-size: 2.4vw;
  }

  .modal-content .modal-header .p_cont_tit {
    margin-left: 0;
    width: 100%;
    height: auto;
  }

  .modal-header h5 {
    margin: 0 auto;
    color: #e17bac;
    width: 70%;
    white-space: nowrap;
    text-align: center;
  }

  .modal-header .p-contents_hr_in {
    margin: 0 auto;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-content-wrap--reason .p-flex .tp_point2 {
    width: 80%;
    margin: 0 auto;
  }

  .kagaya .p-flex .tp_point2 {
    width: 100%;
    margin: 2rem 0;
  }
}

.p-content-wrap--reason .tp_point3 {
  width: 100%;
  padding: 1rem;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--reason .tp_point3 {
    padding: 4rem;
  }
}


/*TOTAL PRODUCE end ******************************************************************************/

/*コースと料金 start ******************************************************************************/

.p-content-wrap__course {
  text-align: center;
  height: auto;
  display: block;
  background-color: #ffff;
  clear: both;
  width: 100%;
}

.p-content-wrap__course .c-course-content__head {
  color: #000;
  font-weight: 600;
  border-top: #c1ad6c solid 1px;
  border-bottom: #c1ad6c solid 1px;
  position: relative;
  text-align: left;
  width: 28rem;
  font-size: 1.2rem;
  height: 3.1rem;
}

.c-course-content__head2 {
  color: #000;
  font-weight: 600;
  border-top: #c1ad6c solid 1px;
  border-bottom: #c1ad6c solid 1px;
  position: relative;
  text-align: left;
  width: 13rem;
  font-size: 1.2rem;
  height: 2.8rem;
  margin: 0 auto;
  position: relative;
  top: -76px;
}

.p-content-wrap__course .c-cursename {
  letter-spacing: 0.2rem;
}

.p-content-wrap__course h2 {
  margin: -6.4rem 0rem 4rem 0rem;
}

.p-content-wrap__course .c-course-content__image {
  margin: 1.5rem 0rem;
  text-align: left;
  z-index: 1;
}

.p-content-wrap__course .p-flex {
  padding: 0;
}

.p-content-wrap__course .p-flex--price {
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /* background-image: linear-gradient(138deg, #c1bcdc 50%, #e6649a 100%); */
  margin: 0rem 0rem;
  padding: 0rem 0rem;
  height: 11rem;
}

div[class^="c-course-content__option"] dl {
  padding: 20px;
  text-align: left;
}

div[class^="c-course-content__option"] .c-section__term {
  font-weight: bolder;
  font-size: 1.2rem;
  border-bottom: 2px solid #c2ae69;
  margin-bottom: 5px;
}

div[class^="c-course-content__option"] .c-line {
  font-weight: bolder;
}

.p-content-wrap__course .c-course-content__block {
  /*width: 100%;*/
  margin-top: -10rem;
  margin-bottom: 2rem;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap__course .c-course-content__block {
    margin-top: -8rem;
  }
}

@media all and (min-width: 900px) {
  .p-content-wrap__course .c-course-content__block {
    margin-top: 0rem;
  }
}

.p-content-wrap__course .c-course-content__block p {
  text-align: left;
  z-index: 2;
}

.p-content-wrap__course .p-flex .c-course-content__block {
  text-align: left;
  margin-top: 20px;
}

.p-content-wrap__course .p-flex .c-course-content__block p {
  margin-top: 0;
}

.p-content-wrap__course .p-flex--reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.p-content-wrap__course .p-flex .p-service {
  color: #e6649a;
  font-weight: 600;
  margin-top: 30px;
}

.p-content-wrap__course .p-flex .p-service__head {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 10px;
}

.p-content-wrap__course .p-flex .p-service__head::before,
.p-content-wrap__course .p-flex .p-service__head::after {
  content: "";
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  height: 0;
  border-top: 1px dotted #e6649a;
}

.p-content-wrap__course .p-flex .p-service__head::before {
  margin-right: 1em;
}

.p-content-wrap__course .p-flex .p-service__head::after {
  margin-left: 1em;
}

.p-content-wrap__course .p-flex .p-service__body {
  margin-left: 0;
}

.p-content-wrap__course .p-flex .p-service__body p {
  margin: 0;
  text-indent: -1em;
  padding-left: 1em;
}

.p-content-wrap__course .p-flex .p-service__body p::before {
  content: "◎";
  font-weight: bold;
}

.p-content-wrap__course .p-flex__item {
  width: 33%;
  height: 11rem;
  text-align: center;
  background-image: linear-gradient(135deg, #9e99c2 10%, #b39ac4 100%);
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  border: solid 1px transparent;
  /* border-image: url("../img/course/__c_window_g_l.png"); */
  border-image-slice: 1;
  border-image-repeat: stretch;
  margin: 0rem auto;
}

.p-content-wrap__course .p-flex__item2 {
  width: 33%;
  height: 11rem;
  text-align: center;
  background-image: linear-gradient(135deg, #aa99c3 20%, #db9fc5 100%);
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  border: solid 1px transparent;
  /* border-image: url("../img/course/__c_window_g_c.png"); */
  border-image-slice: 1;
  border-image-repeat: stretch;
  margin: 0rem auto;
  border-right: none;
  border-left: none;
}

.p-content-wrap__course .p-flex__item3 {
  width: 33%;
  height: 11rem;
  text-align: center;
  background-image: linear-gradient(135deg, #d09dc5 10%, #ffa3c5 100%);
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  border: solid 1px transparent;
  /* border-image: url("../img/course/__c_window_g_l.png"); */
  border-image-slice: 1;
  border-image-repeat: stretch;
  margin: 0rem auto;
}

.p-content-wrap__course .p-flex__item .c-circle,
.p-content-wrap__course .p-flex__item2 .c-circle,
.p-content-wrap__course .p-flex__item3 .c-circle {
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  max-width: 200px;
  max-height: 200px;
  vertical-align: middle;
}

.p-content-wrap__course .p-flex__item .c-circle .c-circle__term,
.p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term,
.p-content-wrap__course .p-flex__item3 .c-circle .c-circle__term {
  font-weight: bold;
  line-height: 1.4;
}

.p-content-wrap__course .p-flex__item .c-circle .c-circle__term .c-circle__icon,
.p-content-wrap__course .p-flex__item .c-circle .c-circle__term .c-circle__text {
  display: block;
}

.p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term .c-circle__icon,
.p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term .c-circle__text {
  display: block;
}

.p-content-wrap__course .p-flex__item3 .c-circle .c-circle__term .c-circle__icon,
.p-content-wrap__course .p-flex__item3 .c-circle .c-circle__term .c-circle__text {
  display: block;
}

.p-content-wrap__course .p-flex__item .c-circle .c-circle__term .c-circle__icon,
.p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term .c-circle__icon,
.p-content-wrap__course .p-flex__item3 .c-circle .c-circle__term .c-circle__icon {
  margin: 0 auto 0em auto;
}

.p-content-wrap__course .p-flex__item .c-circle .c-circle__term .c-circle__icon img,
.p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term .c-circle__icon img,
.p-content-wrap__course .p-flex__item3 .c-circle .c-circle__term .c-circle__icon img {
  position: relative;
  top: -20px;
  border: 0.12rem solid;
  border-color: #b75094 #000 #000 #b75094;
  border-radius: 10px 0px 10px 0px;
  width: 24%;
  /* height: 150px; */
  padding: 10px;
  display: inline-block;
  background-color: #fff;
}

.p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term .c-circle__icon img {
  border-color: #d4accc #000 #000 #d4accc;
}

.p-content-wrap__course .p-flex__item .c-circle .c-circle__description,
.p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description,
.p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description {
  margin: 0;
}

.p-content-wrap__course .p-flex__item .c-circle .c-circle__description sup,
.p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description sup,
.p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description sup {
  vertical-align: super;
}

.p-content-wrap__course .p-flex__item img,
.p-content-wrap__course .p-flex__item2 img,
.p-content-wrap__course .p-flex__item3 img {
  width: 100%;
  height: 100%;
}

.p-content-wrap__course .c-notes {
  text-align: left;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.p-content-wrap__course .c-notes p {
  margin: 0;
}

.p-content-wrap__course--counseling {
  background-color: #ffded8;
}

.p-content-wrap__course--counseling .p-content-wrap--counseling__in {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  padding: 30px 20px;
}

.p-content-wrap__course--counseling .p-content-wrap--counseling__in .c-course-content__head {
  color: inherit;
  background-color: inherit;
  border-bottom: 1px solid #000;
  position: relative;
}

.p-content-wrap__course--counseling .p-content-wrap--counseling__in .c-course-content__head img {
  display: none;
}

.p-content-wrap__course--counseling .p-content-wrap--counseling__in .p-flex--price {
  padding: 0;
}

.p-content-wrap__course--success-fee .exe_B_box {
  width: 100%;
  height: 16rem;
  position: relative;
  display: inline-block;
  opacity: 1;
  overflow: hidden;
  cursor: pointer;
  background-image: url(/img/course/c10.png);
  background-size: 100%;
}

@media all and (min-width: 1900px) {
  .p-content-wrap__course--success-fee .exe_B_box {
    height: 18rem;
  }
}

.p-content-wrap__course--success-fee .exe_B_box a {
  color: #000;
}


/*PC版「エグゼクティブメンバーズ」バナー画像を非表示*/
.p-content-wrap__course--success-fee .exe_B_box-mobile {
  display: none;
}

/*スマホ版「エグゼクティブメンバーズ」バナー*/
@media all and (max-width: 767px) {
  .p-content-wrap__course--success-fee .exe_B_box {
    display: none;
  }

  .p-content-wrap__course--success-fee .exe_B_box-mobile {
    display: block;
    cursor: pointer;
  }

  .p-content-wrap__course--success-fee .exe_B_box-mobile img {
    width: 98%;
    margin: 1rem auto;
  }

  .p-content-wrap__course .c-notes {
    text-align: left;
    margin-top: 3rem;
    margin-bottom: 1rem;
    padding: 0 1rem;
  }
}

/*タブレット版「エグゼクティブメンバーズ」バナー*/
@media all and (min-width: 768px) and (max-width:1024px) {
  .p-content-wrap__course--success-fee .exe_B_box {
    display: none;
  }

  .p-content-wrap__course--success-fee .exe_B_box-mobile {
    display: block;
    cursor: pointer;
  }

  .p-content-wrap__course--success-fee .exe_B_box-mobile img {
    width: 100%;
    margin: 1rem auto;
  }

  .p-content-wrap__course .c-notes {
    text-align: left;
    margin-top: 3rem;
    margin-bottom: 1rem;
  }
}

.p-content-wrap__course--success-fee .exe_B_box::before {
  background-color: #fff;
  content: "";
  display: block;
  position: absolute;
  top: -100px;
  left: 0;
  width: 30px;
  height: 100%;
  opacity: 0;
  transition: cubic-bezier(0.32, 0, 0.67, 0);
}

.p-content-wrap__course--success-fee .exe_B_box:hover::before {
  animation: kiran 0.5s linear 1;
}

.p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE {
  z-index: 2;
  position: absolute;
  right: 0px;
  text-align: center;
  display: inline-block;
  margin-top: -0.2rem;
  background-color: #c1bcdc;
  background: rgba(0, 0, 300, 0.1);
  height: 19.1rem;
}

@media all and (min-width: 1680px) {
  .p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE {
    height: 20.8rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE {
    height: 20.2rem;
  }
}

.p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE h2 {
  font-size: 1.55rem;
  font-weight: 500;
  letter-spacing: 0.15rem;
  margin: 5rem 0rem 0rem 0rem;
  background: linear-gradient(transparent 60%, #e6649a 1%);
}

.p-content-wrap__course--success-fee .c-course-content__block .u-m-t-0 {
  /* margin:2rem; */
  line-height: 2rem;
  font-weight: 500;
  font-size: 1.3em;
  letter-spacing: 0.2rem;
  text-align: center;
  margin-top: 2rem;
  padding: 1rem;
}

.p-content-wrap__course--option {
  padding-bottom: 0;
}

.p-content-wrap__course--option .c-course-content__head {
  line-height: 1.4;
  color: #e6649a;
  font-weight: bold;
  font-size: 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  background-color: inherit;
}

.p-content-wrap__course--option .c-course-content__head span {
  padding-left: 0.5em;
  padding-right: 0.5em;
}

.p-content-wrap__course--option .p-flex {
  padding: 30px;
  border-bottom: 1px solid #ccc;
}

.p-content-wrap__course--option .p-flex:nth-of-type(1) {
  border-top: 1px solid #ccc;
  margin-top: 30px;
}

@keyframes kiran {
  0% {
    transform: scale(2) rotate(45deg);
    opacity: 0;
  }

  20% {
    transform: scale(20) rotate(45deg);
    opacity: 0.6;
  }

  40% {
    transform: scale(30) rotate(45deg);
    opacity: 0.4;
  }

  80% {
    transform: scale(45) rotate(45deg);
    opacity: 0.2;
  }

  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

.no-webp .p-content-wrap__course--success-fee .exe_B {
  background-image: url("/img/course/c10.png");
  margin: 0 auto;
  display: block;
  width: auto;
  background-size: 100%;
  background-repeat: no-repeat;
  height: 100%;
  display: flex;
  /* position:relative; */
  z-index: 1;
}

/* WebP対応のブラウザ用のスタイル */
.webp .p-content-wrap__course--success-fee .exe_B {
  background-image: url("/img/course/c10.webp");
  margin: 0 auto;
  display: block;
  width: auto;
  background-size: 100%;
  background-repeat: no-repeat;
  height: 100%;
  display: flex;
  /* position:relative; */
  z-index: 1;
}

.p-content-wrap__course--success-fee .exe_B:after {
  filter: blur(2px) grayscale(100%);
  /* filter: grayscale(70%); */
}

.text__slideIn {
  animation: slideIn 3s infinite;
  animation-iteration-count: 20;
}

@keyframes slideIn {
  0% {
    opacity: 0;
    transform: translateX(100px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.p-content-wrap__course--success-fee .exe_B_box .excutive {
  margin: 0 auto;
  display: inline-block;
  position: absolute;
  width: auto;
  top: 3rem;
  right: 8%;
}

@media all and (min-width: 2000px) {
  .p-content-wrap__course--success-fee .exe_B_box .excutive {
    margin: 0 0;
    right: 10%;
    top: 3rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap__course--success-fee .exe_B_box .excutive {
    width: 49.8%;
    right: 11%;
    top: 6vh;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap__course--success-fee .exe_B_box .excutive {
    width: 15.8%;
  }
}

.p-content-wrap__course--success-fee .exe_B_box .excutive .excutive_img {
  display: inline-block;
  background-image: url(/img/course/crown-icon.png);
  background-repeat: no-repeat;
  background-position: unset;
  background-size: 5rem;
  width: auto;
  white-space: nowrap;
  width: 100%;
}

.p-content-wrap__course--success-fee .exe_B_box .excutive h4 {
  display: inline-block;
  font-weight: 600;
  font-size: 1.9rem;
  padding-left: 4rem;
}

.p-content-wrap__course--success-fee .exe_B_box .excutive h7 {
  font-size: 0.9rem;
  margin-left: -1.5rem;
}

.p-content-wrap__course--success-fee .exe_B_box .excutive p {
  font-size: 0.8rem;
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap__course--success-fee .exe_B_box .excutive p {
    font-size: 0.5rem;
    margin-bottom: 0rem;
  }

  .p-content-wrap__course--success-fee .exe_B_box .excutive h7 {
    margin-left: -1.5rem;
    letter-spacing: -0.02rem;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap__course--success-fee .exe_B_box .excutive p {
    font-size: 0.5rem;
    margin-bottom: 0rem;
  }

  .p-content-wrap__course--success-fee .exe_B_box .excutive h7 {
    margin-left: -1.5rem;
    letter-spacing: -0.02rem;
  }
}

.p-content-wrap__course--success-fee .exe_B .excutive .u-m-t-0 {
  margin: 0.5rem 0rem 1.5rem 0rem;
  line-height: 1.5rem;
  font-size: 1rem;
  font-weight: 600;
}

.p-content-wrap__course--success-fee .exe_B .excutive h7 {
  font-size: 0.9rem;
  font-weight: 700;
  margin-left: -2rem;
  color: #010101;
}

.p-content-wrap__course--success-fee .c-course-content__block {
  background-image: url("/img/course/c11.png");
  background-size: cover;
  border-radius: 4px;
  /* padding: 30px 20px; */
  background-repeat: no-repeat;
  text-align: left;
  height: 22rem;
  width: initial;
}

.safari .p-content-wrap__course--success-fee .c-course-content__block {
  background-image: url("/img/course/c11.png");
  background-size: cover;
  border-radius: 4px;
  /* padding: 30px 20px; */
  background-repeat: no-repeat;
  text-align: left;
  height: 22rem;
  margin-top: 0.5rem;
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .safari .p-content-wrap__course--success-fee .c-course-content__block {
    width: 100%;
    display: inline-block;
  }
}

.p-content-wrap__course--option .p-flex .c-course-content__block .c-section__term,
.p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price {
  font-weight: 600;
  margin: 0;
}

.p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE a {
  font-size: 1.2em;
  color: #000;
  position: relative;
  display: inline-block;
  text-decoration: none;
  margin-left: 63%;
}

.p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE a::after {
  position: absolute;
  bottom: 2px;
  left: 0;
  content: "";
  width: 100%;
  height: 2px;
  background: #333;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}

.p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE a:hover::after {
  bottom: -4px;
  opacity: 1;
  visibility: visible;
}

.p-content-wrap__course--success-fee .c-course-content__block .p-flex {
  margin-top: 20px;
  text-align: left;
}

.p-content-wrap__course--success-fee .c-course-content__block .p-flex .p-flex__item {
  padding: 0;
  margin: 0 auto;
  max-width: 240px;
  max-height: 240px;
  text-align: left;
  display: inline-block;
  border-radius: 50%;
  background-color: #ffffee;
  border: 2px solid #e6649a;
  margin: 15px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
}

.p-content-wrap__course--success-fee .c-course-content__block .p-flex .p-flex__item dd {
  margin: 0;
  padding: 0;
  line-height: 1.6;
}

.p-content-wrap__course--option .p-flex .c-course-content__block .c-section__term {
  margin-top: 0;
}

.p-content-wrap__course--option .p-flex .c-course-content__block .c-section__description,
.p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price {
  margin-left: 0;
}

.p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price {
  margin-top: 20px;
  color: #e6649a;
  display: block;
}

.p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price .c-line {
  background: -webkit-gradient(linear,
      left top,
      left bottom,
      color-stop(60%, transparent),
      color-stop(60%, #e8ffe9));
  background: linear-gradient(transparent 60%, #e8ffe9 60%);
  line-height: 1.4;
}

.p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price .c-line .noTax {
  margin-left: 0.5em;
  text-decoration: line-through;
}

.faq_asri02 {
  background-image: url(../img/course/c-p1.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 30%;
  background-position: center;
  width: 26%;
  height: 10rem;
  float: none;
  margin: -0.8rem 1.6rem;
}

.faq_asri02 h2 {
  margin-top: 1rem;
}

.faq_asri03 {
  background-image: url(../img/course/c-p1.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 30%;
  background-position: center;
  width: 16%;
  height: 9rem;
  float: none;
  margin: -1rem auto;
}

.faq_asri03 h2 {
  margin-top: 1rem;
}

.cource_or {
  width: 14rem;
  height: auto;
  padding: 0.5rem 0;
  border: solid 1px;
  border-image: url("../img/course/___cource_or.png");
  -webkit-border-image: url("../img/course/___cource_or.png");
  border-image-slice: 1;
  border-image-repeat: stretch;
  margin: 2.5rem auto;
}

.r-course-content {
  position: relative;
  display: inline-block;
}

.p-content-wrap__course .r-course-content .c-color--pink span {
  width: 2rem;
  height: auto;
  border: solid 1px;
  border-image: url(../img/course/___cource_or.png);
  -webkit-border-image: url(../img/course/___cource_or.png) 1 stretch;
  border-image-slice: 1;
  border-image-repeat: stretch;
  margin-right: 0.5rem;
}

.p-content-wrap__course .c_animation01 .c_animation_do01 p {
  font-size: 1rem;
  text-align: left;
  margin: 2.8rem 1.5rem -3rem 2.5rem;
  width: 50%;
  line-height: 2rem;
  font-weight: 600;
  font-family: "游ゴシック", "Yu Gothic";
}

.p-content-wrap__course .c_animation02 {
  background-repeat: no-repeat;
  background-size: 20rem;
  z-index: 3;
  height: 12rem;
  margin-left: 0;
  border: solid 1px;
  border-image: url(../img/course/___cource_or.png);
  -webkit-border-image: url(../img/course/___cource_or.png) 1 stretch;
  border-image-slice: 1;
  border-image-repeat: stretch;
  margin-top: 0.5rem;
  margin-bottom: 2rem;
  width: 20rem;
}

.p-content-wrap__course .c_animation02 p {
  font-size: 0.9rem;
  text-align: left;
  margin: 1rem 1rem 1rem 1rem;
  padding: 3rem -3rem;
  width: auto;
  line-height: 2rem;
  font-weight: 600;
  font-family: "游ゴシック", "Yu Gothic";
}

.p-content-wrap__course .c_animation03 {
  background-repeat: no-repeat;
  background-size: 20rem;
  z-index: 3;
  height: 13rem;
  margin-left: 0;
  border: solid 1px;
  border-image: url(../img/course/___cource_or.png);
  -webkit-border-image: url(../img/course/___cource_or.png) 1 stretch;
  border-image-slice: 1;
  border-image-repeat: stretch;
  margin-top: 0.5rem;
  margin-bottom: 2rem;
  width: 23rem;
}

.p-content-wrap__course .c_animation03 p {
  font-size: 0.9rem;
  text-align: left;
  margin: 1rem;
  width: 25rem;
  line-height: 1.4rem;
  font-weight: 600;
  font-family: "游ゴシック", "Yu Gothic";
}

.p-content-wrap__course .c_animation01 {
  /* background-image: url(../img/course/__cource_wind.png); */
  background-repeat: no-repeat;
  background-size: 20rem;
  /* position: absolute; */
  z-index: 3;
  height: 10rem;
  display: block;
  width: 15rem;
  border: solid 1px;
  border-image: url(../img/course/___cource_or.png);
  -webkit-border-image: url(../img/course/___cource_or.png) 1 stretch;
  border-image-slice: 1;
  border-image-repeat: stretch;
  margin-top: 0.5rem;
  margin-bottom: 2rem;
}

.p-content-wrap__course .c_animation01 p {
  font-size: 1rem;
  text-align: left;
  margin: 1rem 1.1rem 1rem 1rem;
  width: 15rem;
  line-height: 2rem;
  font-weight: 600;
  font-family: "游ゴシック", "Yu Gothic";
}

.specialP2 {
  display: block;
  float: left;
  width: 100%;
}

@media all and (min-width: 1025px) {
  .p-content-wrap__course .p-flex__item .c-circle .c-circle__term .c-circle__text {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 300;
  }

  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__term .c-circle__text {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 300;
  }

  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term .c-circle__text {
    font-size: 1.125rem;
    font-weight: 300;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__description sup,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description sup,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description sup {
    font-size: 10px;
    font-size: 0.75rem;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description {
    font-size: 1.5rem;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__term .c-circle__icon img,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term .c-circle__icon img,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__term .c-circle__icon img {
    width: 30%;
  }

  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description sup {
    font-size: 0.75rem;
  }

  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description sup {
    font-size: 10px;
    font-size: 0.75rem;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price .c-line .c-large {
    font-size: 26px;
    font-size: 1.625rem;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__term,
  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price {
    font-size: 16px;
    font-size: 1rem;
  }

  .specialP2 {
    display: block;
    float: left;
    width: 100%;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .c-circle__term .c-circle__text {
    font-size: 18px;
    font-size: 1.125rem;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description {
    font-size: 24px;
    font-size: 1.5rem;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__description sup,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description sup,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description sup {
    font-size: 10px;
    font-size: 0.75rem;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__term,
  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price {
    font-size: 16px;
    font-size: 1rem;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price .c-line .c-large {
    font-size: 26px;
    font-size: 1.625rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {

  /*success-feeのマージン定義*/
  .success-fee-margin {
    max-width: none;
    margin: 0 calc(-50vw + 30%);
  }
}

@media all and (min-width: 768px) {
  .p-contents-body__in.p-contents-body--lower__in_tp .p-content-wrap__course {
    text-align: center;
    height: auto;
    display: block;
    background-color: #fff;
    clear: both;
    margin: 0 auto;
  }

  .p-content-wrap.p-content-wrap__course.p-content-wrap__course--success-fee {
    text-align: center;
    height: 100%;
    display: block;
    background-color: #fff;
    clear: both;
    width: 100%;
    padding-top: 3%;
    max-height: 294px;
    margin: 0 auto;
  }

  .win .p-content-wrap.p-content-wrap__course.p-content-wrap__course--success-fee {
    text-align: center;
    height: 100%;
    display: block;
    background-color: #fff;
    clear: both;
    width: 100%;
    padding-top: 3%;
    max-height: 294px;
    margin-bottom: 3rem;
  }

  .mac .p-content-wrap.p-content-wrap__course.p-content-wrap__course--success-fee {
    text-align: center;
    height: 40%;
    display: block;
    background-color: #fff;
    clear: both;
    left: 0rem;
    width: 100%;
    padding-top: 3%;
  }

  /*コースページのexecutive-boxのマージン定義*/
  .home-executive-box {
    margin: auto;
    position: relative;
  }

  /*コースページのexecutive-boxのマージン定義*/
  .course-executive-box {
    margin: auto;
    position: relative;
    max-width: 960px;
  }

  /*success-feeのマージン定義*/
  .success-fee-margin {
    max-width: none;
    /* margin: 0 calc(-40vw + 30%); */
  }

  .p-content-wrap__course .c-course-content__head {
    padding: 0.7rem 0rem 0.5rem 3.5rem;
  }

  .c-course-content__head2 {
    padding: 0.7rem 0rem 0.5rem 0;
    text-align: center;
  }

  .p-content-wrap__course .p-flex .c-course-content__block {
    margin-top: 0;
  }

  .p-content-wrap__course .p-flex .c-course-content__image {
    margin-right: 30px;
    width: 40%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }

  .p-content-wrap__course .p-flex--reverse .c-course-content__image {
    margin-right: 0;
    margin-left: 30px;
    width: 40%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__term,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__term {
    line-height: 1.4;
  }

  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term .c-circle__text {
    font-size: 1.125rem;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description {
    font-size: 1.6rem;
  }

  .p-content-wrap__course--counseling .p-content-wrap--counseling__in {
    padding: 50px 20px 50px 20px;
  }

  .p-content-wrap__course--counseling .p-content-wrap--counseling__in .c-course-content__head img {
    display: block;
    position: absolute;
    left: 100px;
    bottom: 0;
    width: 141px;
  }

  .p-content-wrap__course--counseling .p-content-wrap--counseling__in .p-flex--price .p-flex__item {
    margin: 0 10px;
  }

  .p-content-wrap__course--success-fee .c-course-content__block {

    text-align: left;
  }

  .c-notes.notice {
    background-color: #e6e6e6;
    padding: 1rem 5rem;
    margin-top: 0rem;
    font-size: 0.9rem;
    display: block;
    width: 100%;
  }

  .c-notes.notice p {
    margin: 0 auto;
    line-height: 2.5em;
    display: inline-block;
    position: relative;
  }

  .exe_B {
    margin: 0 auto;
    display: block;
    background-size: 88%;
  }

  #accordion_menu {
    list-style-type: none;
    padding-left: 0;
    margin: 0 auto;
  }

  @media all and (min-width: 768px) and (max-width: 1024px) {
    #accordion_menu {
      list-style-type: none;
      padding-left: 0;
      width: 100%;
      min-width: 700px;
      margin: 0 auto;
      padding: 0 2rem;
    }
  }

  .collapse.show {
    margin-right: 2rem;
  }

  #accordion_menu li {
    padding: 10px 0;
    list-style-type: none;
    width: 100%;
  }

  @media all and (min-width: 768px) and (max-width: 1024px) {
    #accordion_menu li {
      width: 100%;
      display: inline-block;
    }
  }

  #accordion_menu li:nth-child(odd) {
    background-color: #fff;
  }

  #accordion_menu li:nth-child(even) {
    background-color: #f2f2f2;
  }

  #accordion_menu li a {
    background-color: #c1bcdc;
    padding: 10px;
    display: block;
  }

  @media all and (min-width: 768px) and (max-width: 1024px) {
    #accordion_menu li a {
      background-color: #c1bcdc;
      padding: 10px;
      width: 100%;
      display: block;
    }
  }

  .p-content-wrap__course--success-fee .c-course-content__block .p-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .p-content-wrap__course--success-fee .c-course-content__block .p-flex .p-flex__item {
    padding: 0;
    margin: 0;
    width: 200px;
    height: 200px;
    text-align: center;
    display: inline-block;
    border-radius: 50%;
    background-color: #ffffee;
    border: 2px solid #e6649a;
    margin: 15px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }

  .p-content-wrap__course--option .p-flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 50px;
  }

  .p-content-wrap__course--option .p-flex:nth-of-type(1) {
    border-top: 1px solid #ccc;
    margin-top: 50px;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__block {
    margin-right: auto;
  }

  .p_cont_tit h5 {
    margin: -0.5rem 0 1.5rem;
  }

  .modal-title.p-contents_hr_in {
    position: relative;
    top: -8px;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__image {
    margin-left: 70px;
    margin-right: 0;
    width: 175px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .c-circle .c-circle__term .c-circle__text {
    font-size: 1rem;
  }

  .p-content-wrap__course .c-course-content__image {
    margin: 1.5rem 0rem;
    text-align: left;
    z-index: 1;
  }

  .p-content-wrap__course .c-course-content__image .c-img-wide_b {
    width: 50%;
    height: auto;
    float: left;
    margin: 0rem 0.5rem 2rem 0rem;
  }

  .p-content-wrap__course .c-course-content__block p {
    text-align: left;
    z-index: 2;
    width: auto;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description {
    font-size: 1.5rem;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__description sup,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description sup,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description sup {
    font-size: 10px;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__term,
  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price {
    font-size: 15px;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price .c-line .c-large {
    font-size: 24px;
  }

  .p-content-wrap__course .c_animation01 {
    background-size: 13rem;
    height: 10rem;
    left: 4rem;
    top: -4rem;
    width: auto;
    margin: 0 0.5rem;
  }

  .p-content-wrap__course .c_animation01 p {
    font-size: 0.8rem;
    text-align: left;
    margin: 1.5rem 1rem -1rem 2rem;
    line-height: 1.5rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
  }

  .p-content-wrap__course .c_animation02 {
    background-size: 16rem;
    height: 12rem;
    left: 5rem;
    top: -6rem;
    margin: 0 0.5rem;
  }

  .p-content-wrap__course .c_animation02 p {
    font-size: 0.9rem;
    text-align: left;
    margin: 2rem 1.1rem -2rem 2rem;
    padding: 3rem -3rem;
    width: 90%;
    line-height: 1.5rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
    float: left;
  }

  .p-content-wrap__course .c_animation03 {
    background-size: 25rem 100%;
    height: 15rem;
    left: 0;
    top: 0rem;
    width: 100%;
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }

  .p-content-wrap__course .c_animation03 p {
    font-size: 0.7rem;
    text-align: left;
    margin: 3rem 0rem -2.5rem 1rem;
    width: auto;
    line-height: 1rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
  }

  .p-content-wrap__course .c-course-content__block {
    margin-top: 0;
    margin-bottom: 2rem;
    width: auto;
  }

  .p-content-wrap__course .c-course-content__head {
    color: #000;
    font-weight: 600;
    border-top: #c1ad6c solid 1px;
    border-bottom: #c1ad6c solid 1px;
    position: relative;
    text-align: left;
    width: 100%;
    font-size: 1.2rem;
    height: 3.1rem;
    padding-left: 2.5rem;
    display: table;
    vertical-align: middle;
  }
  .p-content-wrap__course .c-cursename {
    letter-spacing: 0.2rem;
    display: table-cell;
    vertical-align: middle;
}

  .c-course-content__head2 {
    color: #000;
    font-weight: 600;
    border-top: #c1ad6c solid 1px;
    border-bottom: #c1ad6c solid 1px;
    position: relative;
    text-align: center;
    width: 90%;
    font-size: 1.2rem;
    height: 3.1rem;
    display: table;
  }

  .c-course-content__head2 .c-cursename {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
  }

  .faq_asri03 {
    background-image: url(../img/course/c-p1.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 30%;
    background-position: center;
    width: 48%;
    height: 9rem;
    float: none;
    margin: -1rem auto;
  }

  .c-triangle::before {
    content: "";
    display: block;
    width: 30px;
    width: 30px;
    position: absolute;
    top: 8px;
    left: 2px;
    border-top: 30px solid #c1ad6c;
    border-right: 30px solid #c1ad6c;
    z-index: -1;
    border-radius: 0 20px 20px 0;
  }

  /* .p-content-wrap__course--success-fee .exe_B {
    background-image: url(/img/course/c10.png);
    margin: 0 auto;
    display: block;
    width: 140%;
    background-size: 100%;
    background-repeat: no-repeat;
    height: 15rem;
    display: flex;
    z-index: 1;
    background-position: right;
    float: right;
  } */
  .p-content-wrap__course--success-fee .exe_B_box .excutive .excutive_img {
    display: inline-block;
    background-image: url(/img/course/crown-icon.png);
    background-repeat: no-repeat;
    background-position: left;
    background-size: 1.6rem;
    background-position-y: top;
    width: 100%;
  }

  .p-content-wrap__course--success-fee .exe_B_box .excutive h7 a {
    font-size: 0.5rem;
  }

  .p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE {
    z-index: 2;
    margin-left: 0;
    text-align: center;
    display: inline-block;
    margin-top: -0.2rem;
    background-color: #c1bcdc;
    background: rgba(0, 0, 300, 0.1);
    height: 22.1rem;
  }

  .p-content-wrap__course {
    text-align: center;
    height: auto;
    display: block;
    background-color: #fff;
    clear: both;
    padding: 0 1rem;
  }

  /*吹き出し直下の文字列の表示位置を調整*/
  .r-course-margin-top {
    margin-top: 0;
  }

  .p-course-margin-top {
    margin-top: 0;
  }

  .c-course-margin-top {
    margin-top: 0;
  }
}

@media all and (max-width: 569px) {
  .p-content-wrap__course--success-fee .c-course-content__block .u-m-t-0 {
    font-size: 1.2rem;
  }
}

@media all and (max-width: 596px) {
  .p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE a {
    font-size: 1rem;
    font-weight: bolder;
  }
}

@media all and (max-width: 320px) {
  .p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE a {
    font-size: 0.9rem;
  }
}


@media all and (max-width: 415px) {
  .p-content-wrap__course .p-flex__item .c-circle .c-circle__term .c-circle__text {
    font-size: 4.26667vw;
  }

  .p-content-wrap__course .c-course-content__image {
    margin: 0.5rem;
    text-align: left;
    z-index: 1;
  }

  .p-content-wrap__course .c-course-content__image .c-img-wide_b {
    width: 50%;
    height: auto;
    float: left;
    margin: 0rem 0.5rem 2rem 0rem;
  }

  .p-content-wrap__course .c-course-content__image .c-img-wide_c {
    width: 42%;
    height: auto;
    float: none;
    margin: 0rem 0.5rem 0.5rem 0rem
  }

  .p-content-wrap__course .c-course-content__block {
    width: 97%;
    margin-top: 1rem;
    margin-bottom: 2rem;
  }

  .p-content-wrap__course .c-course-content__block p.c-color--pink {
    margin-bottom: 2rem;
    text-align: center;
    font-weight: 600;
  }

  .p-content-wrap__course .c-course-content__block p {
    text-align: left;
    z-index: 2;
    width: 96%;
    float: left;
    padding-left: 0.5rem;
    padding-right: 2.5rem;
    max-width: 406px;
  }

  .p-content-wrap__course .c_animation01 .c_animation_do01 p {
    font-size: 0.8rem;
    text-align: left;
    margin: 2rem 0.5rem -3rem 0.5rem;
    width: 78%;
    line-height: 1rem;
    font-family: "游ゴシック", "Yu Gothic";
  }

  .p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE {
    z-index: 2;
    text-align: center;
    display: inline-block;
    margin-top: -0.2rem;
    background-color: #c1bcdc;
    background: rgba(0, 0, 300, 0.1);
    height: 22.1rem;
    margin-left: 0;
  }

  .p-content-wrap__course .c_animation02 p {
    font-size: 0.9rem;
    text-align: left;
    margin: 1rem 0rem 0rem 0.3rem;
    width: 95%;
    line-height: 1rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
  }

  .p-content-wrap__course .c_animation03 p {
    font-size: 0.7rem;
    text-align: left;
    margin: 1rem 2rem 1rem 1rem;
    width: 100%;
    line-height: 1rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
    padding-left: 0;
    float: left;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description {
    font-size: 4.33333vw;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__description sup,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__description sup,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__description sup {
    font-size: 2vw;
  }

  .p-content-wrap__course--success-fee .c-course-content__block {
    min-width: 100%;
  }

  .p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE h2 {
    font-size: 1.5rem;
  }

  .p-content-wrap__course--success-fee .c-course-content__block .u-m-t-0 {
    font-size: 1.1rem;
    padding: 1rem 0 3rem;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price .c-line .c-large {
    font-size: 5.86667vw;
  }

  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__term,
  .p-content-wrap__course--option .p-flex .c-course-content__block .c-section__price {
    font-size: 3.73333vw;
  }

  .p-content-wrap__course .c-course-content__head {
    color: #000;
    font-weight: 600;
    border-top: #c1ad6c solid 1px;
    border-bottom: #c1ad6c solid 1px;
    position: relative;
    text-align: left;
    width: 100%;
    font-size: 1.2rem;
    height: 2.5rem;
    padding-top: 5px;
  }

  .c-course-content__head2 {
    color: #000;
    font-weight: 600;
    border-top: #c1ad6c solid 1px;
    border-bottom: #c1ad6c solid 1px;
    position: relative;
    text-align: center;
    width: 90%;
    font-size: 1.2rem;
    height: 2.5rem;
    display: table;
  }

  .c-course-content__head2 .c-cursename {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
  }


  .p-content-wrap__course .c-course-content__head.specialcourse {
    color: #000;
    font-weight: 600;
    border-top: #c1ad6c solid 1px;
    border-bottom: #c1ad6c solid 1px;
    position: relative;
    text-align: left;
    width: 100%;
    font-size: 1.2rem;
    height: 3.3rem;
    top: -0.5rem;
  }

  .p-content-wrap__course .c-cursename {
    letter-spacing: 0.2rem;
    padding-left: 2.2rem;
  }

  .p-content-wrap__course .c-cursename.specialcourse {
    padding-left: 2.2rem;
    display: block;
    margin-bottom: 0.2rem;
  }

  .p-content-wrap__course h2 {
    margin: -6.4rem 0rem 4rem 0rem;
  }

  .c-triangle {
    position: absolute;
    padding-top: 0.5rem;
    padding-left: 0.5rem;
    z-index: 1;
    text-align: center;
    line-height: 1;
    color: #000;
    font-weight: bold;
    top: 0;
    left: 0;
    font-size: 1.2rem;
  }

  .c-triangle::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 2px;
    left: 2px;
    border-top: 30px solid #c1ad6c;
    border-right: 30px solid #c1ad6c;
    z-index: -1;
    border-radius: 0 30px 30px 0;
  }

  .p-content-wrap__course .c_animation01 {
    background-size: 7rem;
    height: auto;
    left: 4rem;
    top: 8rem;
    width: auto;
    border-image: url(../img/course/___cource_or.png) 1 stretch;
    -webkit-border-image: url(../img/course/___cource_or.png) 1 stretch;
    border-image-slice: 1;
    border-image-repeat: stretch;
  }

  .p-content-wrap__course .c_animation03 {
    background-size: 18rem 100%;
    height: 13rem;
    left: 0px;
    top: 0;
    margin-left: 0;
    width: auto;
    float: left;
    border-width: 1px;
    border-image: url(../img/course/___cource_or.png) 1 stretch;
    -webkit-border-image: url(../img/course/___cource_or.png) 1 stretch;
    background-color: #fff;
    border-image-slice: 1;
    border-image-repeat: stretch;
    margin: 1rem 1rem 3rem;
  }

  .p-content-wrap__course .c_animation02 {
    background-size: 14rem 100%;
    height: 10rem;
    left: 0;
    top: 0;
    width: 100%;
    float: left;
    border-image: url(../img/course/___cource_or.png) 1 stretch;
    -webkit-border-image: url(../img/course/___cource_or.png) 1 stretch;
    border-width: 1px;
    border-image-slice: 1;
    border-image-repeat: stretch;
  }

  .p-content-wrap__course .p-flex__item .c-circle .c-circle__term .c-circle__icon img,
  .p-content-wrap__course .p-flex__item2 .c-circle .c-circle__term .c-circle__icon img,
  .p-content-wrap__course .p-flex__item3 .c-circle .c-circle__term .c-circle__icon img {
    position: relative;
    top: -20px;
    border: 0.12rem solid;
    border-color: #b75094 #000 #000 #b75094;
    border-radius: 10px 0px 10px 0px;
    width: 32%;
    /* height: 150px; */
    padding: 10px;
    display: inline-block;
    background-color: #fff;
  }

  .faq_asri02 {
    background-image: url(../img/course/c-p1.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 27%;
    background-position: center;
    width: 56%;
    height: 10rem;
    float: none;
    margin: 0.4rem -0.5rem;
  }

  .faq_asri03 {
    background-image: url(../img/course/c-p1.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 27%;
    background-position: center;
    width: 50%;
    height: 7rem;
    float: none;
    margin: 0.4rem auto;
  }

  /*吹き出し直下の文字列の表示位置を調整*/

  /*
  .r-course-margin-top {
  
  }
  */
  .c-course-margin-top {
    margin-top: 0;
  }
}

@media all and (max-width: 320px) {
  .p-content-wrap__course--success-fee .c-course-content__block .SUCCESSFEE a {
    top: -2rem;
  }
}

@media all and (max-width: 320px) {
  .p-content-wrap__course .c-course-content__image {
    margin: 0.1rem;
  }
}


/*スマホ画面縦のpadding設定*/
@media all and (max-width: 767px) {
  .p-content-wrap__course {
    padding: 0 0rem;
  }
}

/* レイアウト確認のため、c_animation01のみ　height top  変更 */

/* .c_animation01 .c_animation_do01{
  opacity: 0;
  animation:koton 0.5s 1.5s 1 forwards;
  -webkit-animation:koton 0.5s 1.5s 1 forwards;
  -moz-animation:koton 0.5s 1.5s 1 forwards;
  margin-left: 11rem;
}
  @keyframes c_animation_do01{
    0%   { transform:translate(0%, -100%);  opacity: 0;}
    20% { transform:translate(0%, 0%);}
    30% { transform:translate(0%, -10%);}
    50% { transform:translate(0%, 0%);}
    60% { transform:translate(0%, -3%); opacity: 1;}
    80% { transform:translate(0%, 0%);}
    90% { transform:translate(0%, -1%);}
    100% { transform:translate(0%, 0%); opacity: 1;}
  }
  @-webkit-keyframes c_animation_do01{
    0%   { -webkit-transform:translate(0%, -100%);  opacity: 0;}
    20% { -webkit-transform:translate(0%, 0%);}
    30% { -webkit-transform:translate(0%, -10%);}
    50% { -webkit-transform:translate(0%, 0%);}
    60% { -webkit-transform:translate(0%, -3%); opacity: 1;}
    80% { -webkit-transform:translate(0%, 0%);}
    90% { -webkit-transform:translate(0%, -1%);}
    100% { -webkit-transform:translate(0%, 0%); opacity: 1;}
  }
  @-moz-keyframes c_animation_do01{
    0%   { -moz-transform:translate(0%, -100%);  opacity: 0;}
    20% { -moz-transform:translate(0%, 0%);}
    30% { -moz-transform:translate(0%, -10%);}
    50% { -moz-transform:translate(0%, 0%);}
    60% { -moz-transform:translate(0%, -3%); opacity: 1;}
    80% { -moz-transform:translate(0%, 0%);}
    90% { -moz-transform:translate(0%, -1%);}
    100% { -moz-transform:translate(0%, 0%); opacity: 1;}
  } */

/*コース・料金 end ******************************************************************************/

/*セミナー・レッスン start ******************************************************************************/

.instructor {
  text-align: left;
  width: 100%;
  padding: 3.5rem 0rem;
  overflow: hidden;
}

.instructor .inr {
  text-align: left;
  width: 30%;
}

@media all and (min-width: 768px) {
  .instructor .inr {
    width: 40%;
  }
}

@media all and (min-width: 900px) {
  .instructor .inr {
    width: 30%;
  }
}

@media all and (min-width: 1024px) {
  .instructor .inr {
    width: 35%;
  }
}

.instructor img {
  float: left;
  text-align: left;
  width: 100%;
  margin: 0em 2em 2em 0em;
}

.instructor h3 {
  font-size: 18px;
  float: left;
  border-bottom: #d8daab solid 1px;
  padding-bottom: 0.5em;
  text-align: left;
  margin-bottom: 1.2em;
  width: 50%;
}

.instructor h3::before {
  font-size: 18px;
  float: left;
  border-left: #746bac solid 18px;
  width: 18px;
  height: 20px;
  padding-bottom: 11px;
  padding-right: 0, 5rem;
  text-align: left;
  content: "";
}

.instructor p {
  font-size: 15px;
  text-align: left;
  float: left;
  width: auto;
  line-height: 1.9rem;
  margin: 0em 0em 1em 1em;
}

@media all and (min-width: 768px) and (max-width:1024px) {
  .instructor p {
    width: 50%;
  }
}

@media all and (max-width: 414px) {
  .instructor {
    float: left;
    text-align: left;
    width: 100%;
    padding: 3.5rem 0rem;
  }

  .instructor .inr {
    text-align: left;
    width: 100%;
  }

  .instructor img {
    float: left;
    text-align: left;
    width: 100%;
    margin: 0em 2em 2em 0em;
  }

  .instructor h3 {
    font-size: 18px;
    float: left;
    border-bottom: #d8daab solid 1px;
    width: 100%;
    padding-bottom: 0.5em;
    text-align: left;
    margin-bottom: 1.2em;
  }

  .instructor h3::before {
    font-size: 18px;
    float: left;
    border-left: #746bac solid 18px;
    width: 18px;
    height: 20px;
    padding-bottom: 11px;
    padding-right: 0, 5rem;
    text-align: left;
    content: "";
  }

  .instructor p {
    font-size: 15px;
    text-align: left;
    float: left;
    width: 100%;
    line-height: 1.9rem;
    margin: 0em 2em 1em;
  }
}

@media all and (min-width: 319px) and (max-width: 374px) {
  .p-content-wrap__course .c_animation01 {
    background-size: 10rem;
    height: 8rem;
    left: 4rem;
    top: -8rem;
    width: 62%;
  }

  .p-content-wrap__course .c_animation01 p {
    font-size: 0.8rem;
    text-align: left;
    margin: 1.5rem 0 -1.5rem 0;
    width: 100%;
    line-height: 1.5rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
  }
}

@media all and (min-width: 375px) and (max-width: 414px) {
  .p-content-wrap__course .c_animation01 {
    background-size: 12rem;
    height: 10rem;
    left: 4rem;
    top: -9rem;
    width: 52%;
  }

  .p-content-wrap__course .c_animation01 p {
    font-size: 0.7rem;
    text-align: left;
    margin: 1.5rem 0 -1.5rem 0.5rem;
    line-height: 1.4rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
  }

  .p-content-wrap__course .c_animation02 {
    background-size: 14rem 100%;
    height: 10rem;
    left: 0;
    top: 0;
    width: 100%;
    float: left;
  }

  .p-content-wrap__course .c_animation02 p {
    font-size: 0.5rem;
    text-align: left;
    margin: 2rem 0 -2rem 0.5rem;
    width: 100%;
    line-height: 1rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
  }
}

@media all and (min-width: 375px) and (max-width: 415px) {
  .p-content-wrap__course .c_animation01 {
    background-size: 12rem;
    height: 8rem;
    width: 90%;
    margin: 1rem 1rem 3rem;
  }

  .p-content-wrap__course .c_animation01 p {
    font-size: 0.8rem;
    text-align: left;
    margin: 1.5rem 0 -1.5rem 0.5rem;
    line-height: 1.4rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
    width: 90%;
  }

  .p-content-wrap__course .c_animation02 {
    background-size: 14rem;
    height: 8rem;
    width: 86%;
    margin: 1rem 1rem 3rem;
  }

  .p-content-wrap__course .c_animation02 p {
    font-size: 0.8rem;
    text-align: left;
    margin: 1.2rem 0 0.1rem 1rem;
    width: 100%;
    line-height: 1rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
    padding-left: 0;
    width: 90%;
  }

  .p-content-wrap__course .c_animation03 {
    background-size: 22rem 100%;
    height: 12rem;
    left: 0;
    top: 0;
    float: left;
    width: 92%;
  }

  .p-content-wrap__course .c_animation03 p {
    font-size: 0.8rem;
    text-align: left;
    margin: 2rem 0 -2rem 1rem;
    line-height: 1rem;
    font-weight: 600;
    font-family: "游ゴシック", "Yu Gothic";
    width: 90%;
  }

  .p-content-wrap__course .p-flex--price {
    float: left;
    margin: 10px;
  }

  .cource_or {
    margin: 14rem auto 3rem;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .instructor {
    float: left;
    text-align: left;
    width: 100%;
    padding: 3.5rem 2rem;
  }

  .instructor .inr {
    text-align: left;
    width: 70%;
  }

  .instructor img {
    float: left;
    text-align: center;
    width: 90%;
    margin: -2em 2em 2em 0em;
  }

  .instructor h3 {
    font-size: 18px;
    float: left;
    border-bottom: #d8daab solid 1px;
    width: 100%;
    padding-bottom: 0.5em;
    text-align: left;
    margin-bottom: 1.2em;
  }

  .instructor h3::before {
    font-size: 18px;
    float: left;
    border-left: #746bac solid 18px;
    width: 18px;
    height: 20px;
    padding-bottom: 11px;
    padding-right: 0, 5rem;
    text-align: left;
    content: "";
  }

  .instructor p {
    font-size: 15px;
    text-align: left;
    float: left;
    width: 100%;
    line-height: 1.9rem;
    margin: 0 0 1em;
  }
}

@media all and (max-width: 415px) {
  .instructor img {
    width: 100%;
  }

  .cource_or {
    margin: 14rem auto 3rem;
  }
}


._info .p-contents_tit_hr {
  border-top: #808080 1px solid;
  height: 1px;
  width: 100%;
  margin-top: 46px;
}

.seminar_info .p-contents_hr_in .p-contents__head span {
  display: inline-block;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .camera .p-content-wrap--seminar .instructor {
    padding: 6.5rem 1rem 0;
  }

  .professi .p-contents_hr_in {
    width: 70%;
  }

  .professi .p_cont_tit,
  .seminar_info .p_cont_tit {
    width: 100%;
  }
}

@media all and (min-width: 415px) and (max-width: 500px) {
  .faq_asri02 {
    background-image: url(../img/course/c-p1.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 27%;
    background-position: center;
    width: 65%;
    height: 10rem;
    float: none;
    margin: 0.4rem -0.5rem;
  }
}

/*セミナー・レッスン end ******************************************************************************/

/*おしらせ start ******************************************************************************/

.p-archive__info {
  list-style: none;
  padding-left: 0;
}

.p-archive__info li {
  padding-bottom: 1em;
  margin-bottom: 1em;
  border-bottom: 1px dotted #000;
  overflow: hidden;
}

.p-archive__info li .c-date {
  display: block;
}

@media all and (min-width: 768px) {
  .p-archive__info li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
  }

  .p-archive__info li:first-child {
    padding-top: 2em;
  }

  .p-archive__info li .c-date {
    display: inline-block;
    margin-right: 3em;
  }
}

/*おしらせ end ******************************************************************************/

/*植草美幸プロフィール start ******************************************************************************/

.p-content-wrap--profile {
  display: inline-block;
  position: relative;
  background-color: rgba(255, 255, 255, 0.9);
}

#p-inner-link {
  background-image: url(../img/top/__cle_drow.png);
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: 11rem;
}

.p-content-wrap--profile .c-profile-content__image {
  margin: 0 auto 30px auto;
}

.p-content-wrap--profile .c-profile-content__block {
  text-align: left;
  display: inline-block;
}

.p-content-wrap--profile .p-book-list__block {
  background-color: #f5f5f5;
  padding: 1% 0;
}

@media all and (min-width: 768px) {
  .p-content-wrap--profile .p-book-list__block {
    padding: 1%;
  }
}

.p-content-wrap--profile .p-book-list {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}

.p-content-wrap--profile .p-book-list__item {
  margin-top: 50px;
  text-indent: -1em;
  padding: 1em;
  font-weight: bold;
}

.p-content-wrap--profile .p-book-list__item::before {
  font-size: 18px;
  float: left;
  width: 18px;
  height: 20px;
  padding-bottom: 11px;
  text-align: left;
  content: "";
  margin-right: 1.5rem;
  background: linear-gradient(to bottom left, #e6649a 50%, #756baa 50%);
  opacity: 0.7;
}

/*出版書籍サブタイトルの余白調整*/
@media all and (min-width: 768px) {
  .book-sub-title {
    text-indent: 0;
    position: relative;
    top: -1rem;
    margin-bottom: -1rem;
    left: 1.5rem;
    font-size: 0.7rem;
  }
}

/*出版書籍スマホ共通レスポンシブ*/
@media all and (max-width: 415px) {
  .book-title {
    top: -0.2rem;
  }
}

@media all and (max-width: 713px) and (max-width: 800px) {
  .book-sub-title {
    left: 2.5rem;
  }
}

@media all and (max-width: 767px) {
  .book-title {
    float: left;
    position: relative;
    left: 0.5rem;
    text-indent: 0;
    width: 92%;
  }

  .book-sub-title {
    text-indent: 0;
    position: relative;
    top: -1rem;
    margin-bottom: -1rem;
    display: -webkit-inline-box;
  }

  .p-content-wrap--profile .p-book-list__item::before {
    margin-right: 0;
  }
}

@media all and (max-width: 415px) {
  .book-sub-title {
    font-size: 0.6rem;
  }
}

@media all and (max-width: 320px) {
  .book-sub-title {
    width: 95%;
  }
}

.p-content-wrap--profile .p-book-list__item .p-flex {
  margin-top: 1em;
  padding: 0 1em 0 0;
  text-indent: 0;
  padding-left: 0;
  text-indent: 0;
  padding-left: 0;
  display: block;
}

.p-content-wrap--profile .p-book-list__item .p-flex .c-book-list__image {
  width: 140px;
  margin: 0 auto 1em auto;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 0;
  float: none;
  display: inline-block;
}

@media all and (min-width: 1680px) {
  .p-content-wrap--profile .p-book-list__item .p-flex .c-book-list__image {
    width: 170px;
  }
}

@media all and (min-width: 768px) and (min-width: 1679px) {
  .p-content-wrap--profile .p-book-list__item .p-flex .c-book-list__image {
    width: 170px;
    margin: 0;
  }
}

.p-content-wrap--profile .p-book-list__item .p-flex .c-book-list__text {
  font-weight: normal;
  text-align: left;
  margin: 0;
  padding: 0;
  text-indent: 1em;
}

@media all and (min-width: 768px) {
  .p-content-wrap--profile .p-book-list__item .p-flex .c-book-list__text {
    margin: 0 2%;
  }
}

@media all and (min-width: 768px) {
  .p-content-wrap--profile .c-profile-content__image {
    width: 270px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }

  .p-content-wrap--profile .c-profile-content__block {
    margin-left: 40px;
    margin-top: -1rem;
  }
}

@media all and (max-width: 767px) {
  .p-content-wrap--profile {
    display: inline-block;
    position: relative;
    padding: 1rem;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--profile {
    padding: 0.5rem;
  }
}

/*植草美幸プロフィール end ******************************************************************************/

/*採用情報 start ******************************************************************************/

.p-content-wrap--recruit .c-job__category {
  font-weight: bold;
}

@media all and (min-width: 1025px) {
  .p-content-wrap--recruit .c-job__category {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap--recruit .c-job__category {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--recruit .c-job__category {
    font-size: 20px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--recruit .c-job__category {
    font-size: 4.8vw;
  }
}

.p-content-wrap--recruit .p-job .c-job__detail {
  margin: 0;
  padding: 0;
}

@media all and (min-width: 768px) {
  .p-content-wrap--recruit .p-job .c-job__detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
  }
}

.p-content-wrap--recruit .p-job .c-job__detail:last-child dd {
  border-bottom: 1px solid #e6649a;
}

@media all and (min-width: 768px) {
  .p-content-wrap--recruit .p-job .c-job__detail:last-child dt {
    border-bottom: 1px solid #e6649a;
  }

  .p-content-wrap--recruit .p-job .c-job__detail:last-child dd {
    border-bottom: 1px solid #dcdcdc;
  }
}

.p-content-wrap--recruit .p-job .c-job__detail dt {
  color: #e6649a;
  font-weight: bold;
  border-top: 1px solid #e6649a;
  padding-top: 20px;
  padding-bottom: 0;
}

@media all and (min-width: 768px) {
  .p-content-wrap--recruit .p-job .c-job__detail dt {
    width: 16em;
  }
}

.p-content-wrap--recruit .p-job .c-job__detail dd {
  padding-bottom: 20px;
  width: 100%;
}

@media all and (min-width: 768px) {
  .p-content-wrap--recruit .p-job .c-job__detail dd {
    border-top: 1px solid #dcdcdc;
  }
}

.p-content-wrap--recruit .p-job .c-job__detail dd ul {
  list-style: none;
  padding-left: 0;
}

.p-content-wrap--recruit .p-job .c-job__detail dd ul li {
  text-indent: -1.1em;
  padding-left: 1.1em;
}

.p-content-wrap--recruit .p-job .c-job__detail dd ul li::before {
  content: "・";
  margin-right: 0.5em;
}

.p-content-wrap--recruit .p-job .c-job__detail dd p {
  margin-top: 0;
  margin-bottom: 0;
}

.p-content-wrap--recruit .p-job .c-job__detail dt,
.p-content-wrap--recruit .p-job .c-job__detail dd {
  margin: 0;
}

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

  .p-content-wrap--recruit .p-job .c-job__detail dt,
  .p-content-wrap--recruit .p-job .c-job__detail dd {
    padding: 20px 0;
  }
}

.p-content-wrap--recruit .p-job .c-job__detail--nest {
  margin-top: 20px;
}

.p-content-wrap--recruit .p-job .c-job__detail--nest dt,
.p-content-wrap--recruit .p-job .c-job__detail--nest dd {
  color: #000;
  padding: 0;
  margin: 0;
  border: none;
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow {
  background-color: #b8b2d6;
  border-radius: 4px;
  background-size: contain;
  margin-bottom: 2rem;
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .p-content-wrap__in {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  padding: 30px 20px;
}

@media all and (min-width: 768px) {
  .p-content-wrap--recruit.p-content-wrap--recruit-flow .p-content-wrap__in {
    padding: 70px 0;
  }
}

@media all and (min-width: 768px) {
  .p-content-wrap--recruit.p-content-wrap--recruit-flow {
    padding: 30px;
  }
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .p-recruit-flow {
  text-align: left;
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block {
  list-style: none;
  padding: 0;
}

@media all and (min-width: 768px) {
  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin-bottom: 2rem;
  }
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list {
  background-color: #fff;
  border: 1px solid #dcdcdc;
  font-weight: bold;
  text-align: center;
  padding: 30px 20px;
  position: relative;
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list:nth-child(n + 2) {
  border-top: none;
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list::after,
.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list::before {
  border: solid transparent;
  content: " ";
  height: 0;
  left: 50%;
  position: absolute;
  width: 0;
  z-index: 1;
  margin-left: -12px;
}

@media all and (max-width: 414px) {
  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list {
    background-color: #fff;
    border: 1px solid #dcdcdc;
    font-weight: bold;
    text-align: center;
    padding: 30px 20px;
    position: relative;
    margin-bottom: 30px;
  }

  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block {
    list-style: none;
    padding: 0;
    width: 90%;
    margin: 0 auto;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list {
    background-color: #fff;
    border: 1px solid #dcdcdc;
    font-weight: bold;
    text-align: center;
    padding: 30px 20px;
    position: relative;
    margin-bottom: 30px;
  }

  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block {
    list-style: none;
    padding: 0;
    width: 70%;
    margin: 0 auto;
  }
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list:last-child::after,
.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list:last-child::before {
  display: none;
}

.rfbli {
  border-bottom: solid 2px #c1ad6c;
  min-height: 200px;
}

@media all and (min-width: 768px) {
  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list {
    padding: 30px;
    width: 33%;
    max-width: 253px;
    border: 1px solid #000;
    min-height: 274px;
    box-shadow: 0px 8px 16px -2px rgba(10, 10, 10, 0.1),
      12px 13px 0px 1px rgba(184, 106, 194, 0.02),
      12px 11px 0px 1px rgba(116, 107, 171, 1);
  }

  /*.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list::after, .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list::before {
            border: solid #000 1px;
            content: ' ';
            height: 0;
            left: 100%;
            position: absolute;
            width: 0;
            z-index: 1;
            margin-left: 0; }
          .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list::after {
            border-width: 12px;
            border-left-color: #ffffff;
            top: 81px; }*/
  .arrow_icon {
    background-image: url(../img/recruit_arrow.jpg);
    background-position: center;
    background-repeat: no-repeat;
    width: 52px;
    height: auto;
  }

  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list:last-child::after,
  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list:last-child::before {
    display: none;
  }

  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list:nth-child(n + 2) {
    border: 1px solid #000;
    border-left: none;
  }
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list .c-step-number {
  display: block;
  color: #000;
  text-align: left;
}

@media all and (min-width: 768px) {
  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list .c-step-number {
    margin-bottom: 30px;
  }
}

@media all and (max-width: 768px) {
  .p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list .c-step-number {
    text-align: center;
  }
}


.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list .c-step-text {
  text-align: left;
  color: #000;
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__block--list .c-step-text small {
  font-weight: normal;
  display: block;
  text-align: center;
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .c-recruit-flow__head {
  font-weight: bold;
  margin: 10px auto;
  padding-left: 0.5em;
  font-size: 1rem;
  max-width: 876px;
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow p {
  margin: 5px auto;
  max-width: 876px;
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .btn_entry {
  color: #6c6869;
  text-decoration: none;
  text-align: center;
  border-style: none;
  background-color: #fff;
  font-weight: 600;
  padding: 27px 50px;
  width: 100%;
  max-width: 550px;
  border-radius: 49px;
  display: inline-block;
  margin: 30px auto 0 auto;
  -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.p-content-wrap--recruit.p-content-wrap--recruit-flow .btn_entry:hover {
  background-color: #fff;
  border: 2px solid #b8b2d6;
}

/*採用ページにある「エントリーボタン」(PC版)*/
.btn_entry {
  color: #6c6869;
  text-decoration: none;
  text-align: center;
  background-color: #fff;
  font-weight: 600;
  padding: 27px 50px;
  width: 100%;
  max-width: 550px;
  border-radius: 49px;
  display: block;
  margin: 30px auto;
  -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  border: 2px solid #b8b2d6;
}

.btn_entry:hover {
  background-color: #fff;
  border: 2px solid #b8b2d6;
}

/*採用ページにある「エントリーボタン」(スマホ版)*/
@media all and (max-width: 414px) {
  .btn_entry {
    color: #6c6869;
    text-decoration: none;
    text-align: center;
    background-color: #fff;
    font-weight: 600;
    padding: 27px 50px;
    width: 100%;
    max-width: 550px;
    border-radius: 49px;
    display: block;
    margin: 1rem auto;
    -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
    transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
    border: 2px solid #b8b2d6;
  }

  .btn_entry:hover {
    background-color: #fff;
    border: 2px solid #b8b2d6;
  }
}

/*採用情報 end ******************************************************************************/

/*メディア・講演実績 start ******************************************************************************/

.media-link a {
  display: inline-block;
  text-decoration: none;
  font-size: 1rem;
  width: 100%;
  height: 100%;
  display: block;
  padding: 0 2rem;
}

.p_cont_tit_med .c-lead {
  padding: 0 1rem;
}

.p_cont_tit_med .c-lead a {
  color: #e6649a;
}

.media-link span {
  z-index: 999;
  color: #fff;
  width: 100%;
  height: 100%;
  display: block;
}

.media-link:hover span {
  color: #000;
}

#media_all {
  padding: 0 0px;
}

@media all and (min-width: 768px) and (max-width:1024px) {
  .media-link {
    position: relative;
    overflow: hidden;
    text-decoration: none;
    display: inline-block;
    background: #746bab;
    text-align: center;
    outline: none;
    transition: ease 0.2s;
    margin: 3rem 0 1rem;
    height: 4rem;
    width: 54%;
    max-width: 450px;
  }

  .media-link a {
    display: inline-block;
    text-decoration: none;
    font-size: 1rem;
    width: 100%;
    height: 100%;
    display: block;
    padding: 0 2rem;
  }
}

/*メディア・講演実績 end ******************************************************************************/

/*よくある質問 start ******************************************************************************/

.p-faq-list__q {
  font-weight: 600;
  margin-top: 30px;
  display: inline-block;
  vertical-align: middle;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-faq-list__q span {
  border-bottom: #c1ad62 solid 1px;
}

@media all and (min-width: 1025px) {
  .p-faq-list__q {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-faq-list__q {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-faq-list__q {
    font-size: 17px;
  }
}

@media all and (max-width: 414px) {
  .p-faq-list__q {
    font-size: 1rem;
  }
}

@media all and (max-width: 320px) {
  .p-faq-list__q {
    font-size: 0.85rem;
  }
}

.p-faq-list__q img {
  max-width: 35px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

.p-faq-list__q span {
  display: inline-block;
  vertical-align: middle;
}

@media all and (min-width: 768px) {
  .p-faq-list__q {
    margin-top: 50px;
  }
}

.p-faq-list__q:first-child {
  margin-top: 0;
}

.p-faq-list__a {
  margin-left: 0;
  padding-left: 45px;
  margin-top: 20px;
  border-bottom: 1px solid #ccc;
  padding-bottom: 30px;
}

@media all and (min-width: 768px) {
  .p-faq-list__a {
    padding-bottom: 50px;
  }
}

.faq_asri {
  background-image: url(../img/faq/faq_midashi2.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 9%;
  width: 100%;
  height: 50px;
  margin-bottom: 1rem;
}

@media all and (max-width: 414px) {
  .faq_asri {
    background-image: url(../img/faq/faq_midashi2.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 27%;
    width: 100%;
    height: 88px;
    margin-bottom: 0;
    margin-top: -2rem;
  }
}

@media all and (min-width: 320px) and (max-width: 414px) {
  .faq_asri {
    margin-top: -2rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .faq_asri {
    background-image: url(../img/faq/faq_midashi2.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 17%;
    width: 100%;
    height: 75px;
    margin-bottom: 0;
    margin-top: -2rem;
  }
}

@media all and (min-width: 1680px) {
  .faq_asri {
    background-size: 5%;
  }
}

.p-faq-list__q .p_cont_tit {
  width: 60%;
}

/*よくある質問 end ******************************************************************************/

/*会社情報 start ******************************************************************************/
.p-content-wrap--corporate__in {
  text-align: center;
}

.p-content-wrap--corporate .c-corporate-profile {
  padding: 0;
  margin: 0;
  width: 100%;
  display: contents;
}

@media all and (min-width: 768px) {
  .p-content-wrap--corporate .c-corporate-profile {
    min-width: 768px;
  }
}

.p-content-wrap--corporate .c-corporate-profile__term {
  font-weight: bold;
  margin-top: 30px;
}

@media all and (min-width: 1025px) {
  .p-content-wrap--corporate .c-corporate-profile__term {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap--corporate .c-corporate-profile__term {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--corporate .c-corporate-profile__term {
    font-size: 17px;
  }

  .p-content-wrap--corporate .c-corporate-profile {
    padding: 10px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--corporate .c-corporate-profile__term {
    font-size: 4vw;
  }

  .p-content-wrap--corporate .c-corporate-profile {
    padding: 10px;
  }
}

@media all and (min-width: 768px) {
  .p-content-wrap--corporate .c-corporate-profile__term {
    margin-top: 50px;
  }
}

.p-content-wrap--corporate .c-corporate-profile__term:first-child {
  margin-top: 0;
}

.p-content-wrap--corporate .c-corporate-profile__description {
  margin-left: 0;
  margin-bottom: 0;
  border-bottom: 1px solid #e0d6b6;
  padding-bottom: 30px;
}

.c-corporate-profile__description {
  margin-left: 0;
  margin-bottom: 0;
  border-bottom: 1px solid #e0d6b6;
  padding-bottom: 30px;
}

@media all and (min-width: 768px) {
  .p-content-wrap--corporate .c-corporate-profile__description {
    padding-bottom: 50px;
    margin-bottom: 0;
    width: 100%;
  }
}

.p-content-wrap--corporate .c-way-content__image {
  position: relative;
}

.p-content-wrap--corporate .c-description {
  text-align: left;
}

.p-content-wrap--corporate .icon-arrow_down {
  color: #e6649a;
}

@media all and (min-width: 1025px) {
  .p-content-wrap--corporate .icon-arrow_down {
    font-size: 40px;
    font-size: 2.5rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-content-wrap--corporate .icon-arrow_down {
    font-size: 40px;
    font-size: 2.5rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-content-wrap--corporate .icon-arrow_down {
    font-size: 40px;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--corporate .icon-arrow_down {
    font-size: 9.6vw;
  }
}

.p-content-wrap--corporate .p-branch-salon .p-flex .p-flex__item {
  border: double 5px #ccc;
  padding: 20px;
  width: 100%;
  margin-top: 20px;
}

/* .p-content-wrap--corporate .p-branch-salon .p-flex .p-flex__item:first-child {
    margin-top: 0; } */
.p-content-wrap--corporate .p-branch-salon .p-flex .p-flex__item dl {
  margin: 0;
  padding: 0;
}

.p-content-wrap--corporate .p-branch-salon .p-flex .p-flex__item dl dt {
  font-weight: bold;
}

.p-content-wrap--corporate .p-branch-salon .p-flex .p-flex__item dl dd {
  margin-left: 0;
}

@media all and (min-width: 768px) {
  .p-content-wrap--corporate .p-branch-salon .p-flex {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin-bottom: 30px;
  }

  .p-content-wrap--corporate .p-branch-salon .p-flex .p-flex__item {
    width: 48%;
    margin-top: 0;
  }
}

.kaishamichi {
  text-align: left;
  margin-top: 3rem;
}

.michijyun {
  padding: 0rem 0rem;
  font-family: "游明朝体", "Yu Mincho", YuMincho;
  font-weight: lighter;
}

@media all and (max-width: 414px) {
  .kaishamichi {
    text-align: left;
    margin-top: 5rem;
  }

  p.kaishamichi02 {
    text-align: left;
    margin-top: 10rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .kaishamichi {
    text-align: left;
    margin-top: 5rem;
  }

  p.kaishamichi02 {
    text-align: left;
    margin-top: 7rem;
  }
}

.p-head-salon .c-address {
  margin: 2% 1.5%;
}

.corporate .p-contents-body--lower .c-gmap {
  padding: 0 0;
}

/*会社情報 end *******************************************************************

/*特定商取引法 start ******************************************************************************/
.p-tsccl-content {
  margin-top: 0;
}

.p-tsccl-content__term {
  font-weight: bold;
  margin-top: 30px;
}

@media all and (min-width: 1025px) {
  .p-tsccl-content__term {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-tsccl-content__term {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-tsccl-content__term {
    font-size: 17px;
  }
}

@media all and (max-width: 414px) {
  .p-tsccl-content__term {
    font-size: 4vw;
  }

  .p-content-wrap.p-content-wrap--reason {
    padding-left: 0.8rem;
    padding-right: 0.8rem;
  }
}

@media all and (min-width: 768px) {
  .p-tsccl-content__term {
    margin-top: 50px;
  }

}

.p-tsccl-content__term:first-child {
  margin-top: 0;
}

.p-tsccl-content__description {
  margin-left: 0;
  border-bottom: 1px solid #ccc;
  padding-bottom: 30px;
}

@media all and (min-width: 768px) {
  .p-tsccl-content__description {
    padding-bottom: 50px;
  }
}

/*特定商取引法 end ******************************************************************************/

/*プライバシーポリシー start ******************************************************************************/
.p-policy-content {
  margin-top: 0;
}

.p-policy-content .c-policy-content__term {
  font-weight: bold;
  margin-top: 30px;
}

@media all and (min-width: 1025px) {
  .p-policy-content .c-policy-content__term {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .p-policy-content .c-policy-content__term {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .p-policy-content .c-policy-content__term {
    font-size: 17px;
  }
}

@media all and (max-width: 414px) {
  .p-policy-content .c-policy-content__term {
    font-size: 1rem;
    bottom: 1rem;
  }
}

@media all and (min-width: 768px) {
  .p-policy-content .c-policy-content__term {
    margin-top: 50px;
    margin-bottom: 0.5rem;
  }
}

.p-policy-content .c-policy-content__term:first-child {
  margin-top: 0;
}

.p-policy-content .c-policy-content__description {
  margin-left: 0;
  border-bottom: 1px solid #e0d6b6;
  padding-bottom: 30px;
}

.p-policy-content .c-policy-content__description p:last-child {
  margin-bottom: 0;
}

@media all and (min-width: 768px) {
  .p-policy-content .c-policy-content__description {
    padding-bottom: 50px;
  }
}

.p-policy-content__info-container {
  background-color: #fff;
  padding: 30px;
  margin-bottom: 77px;
  margin-top: -39px;
}

.p-policy-content__info-container .p-policy-content__info {
  margin: 0;
}

.p-policy-content__info-container .c-policy-content__term {
  font-size: 1.42rem;
  font-weight: 600;
  text-align: center;
  padding-top: 46px;
}

@media all and (max-width: 768px) {
  .p-policy-content__info-container .c-policy-content__term {
    font-size: 1.2rem;
  }
}

@media all and (max-width: 320px) {
  .p-policy-content__info-container .c-policy-content__term {
    font-size: 1.1rem;
  }
}

.p-policy-content__info-container .c-policy-content__term span {
  padding: 2.9rem 0.5rem;
}

.p-policy-content__info-container .c-policy-content__description {
  margin: 1rem auto;
  text-align: center;
}

.p-policy-content__info-container .c-policy-content__description p:last-child {
  margin-bottom: 0;
}

.p-policy-content__info-container .c-policy-content__description p {
  line-height: 3rem;
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .p-policy-content__info-container .c-policy-content__description p {
    line-height: 2.4rem;
    font-size: 0.9rem;
    width: 100%;
    margin: 0 auto;
  }
}

@media all and (min-width: 768px) {
  .p-policy-content__info-container .c-policy-content__description p {
    width: 80%;
    margin: 0 auto;
  }

  #one {
    display: none;
  }

  #two {
    display: none;
  }
}

@media all and (min-width: 1680px) {
  .p-policy-content__info-container .c-policy-content__description p {
    width: 50%;
    margin: 0 auto;
  }
}

@media all and (max-width: 320px) {
  .p-policy-content__info-container .c-policy-content__description p {
    width: 100%;
  }
}

.p-policy-content__info-container .p_cont_tit {
  display: block;
}

/*プライバシーポリシー end ******************************************************************************/
/*資料請求 start ******************************************************************************/

/*phone-boxとletter-boxを真ん中に配置します*/
@media all and (min-width: 414px) {
  .other_request {
    width: auto;
    max-width: 960px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    margin-top: -1rem;
  }
}

/*縦向きスマホ版.other_request、flexで並ばせないようにする*/
@media all and (max-width: 414px) {
  .other_request {
    width: auto;
    max-width: 960px;
    display: block;
    margin: 0 auto;
    margin-top: -1rem;
  }
}

.phone-box {
  padding: 1.5em 1em;
  margin: 2em 2em 5em;
  font-weight: bold;
  border: solid 1px #000000;
  float: left;
  width: 40%;
  height: 14rem;
  background-image: url(../img/common/phone_mark.png);
  background-repeat: no-repeat;
  background-size: 11%;
  background-position: top 0.2rem left 0.2rem;
  font-size: 1rem;
}

.letter-box {
  padding: 1.5em 1em;
  margin: 2em 2em 5em;
  font-weight: bold;
  border: solid 1px #000000;
  float: left;
  width: 40%;
  height: 14rem;
  background-image: url(../img/common/letter_mark.png);
  background-repeat: no-repeat;
  background-size: 11%;
  background-position: top 0.2rem left 0.2rem;
  font-size: 1rem;
}

.other_request .phone-box dd {
  font-size: 1em;
  font-weight: normal;
  line-height: 1rem;
}

.other_request .letter-box dd {
  font-size: 1em;
  font-weight: normal;
  line-height: 2rem;
}

.other_request dt {
  margin-bottom: 1.5rem;
  background: linear-gradient(transparent 80%, #ff7bac 98%);
  padding: 0.3rem 1.2rem;
  width: 75%;
  display: inline-block;
}

.p-contents-title__in .p-contents__head3 {
  margin-top: 0.8rem;
}

@media all and (max-width: 414px) {
  .phone-box {
    padding: 1.5em 1em;
    margin: 0 0 3em;
    font-weight: bold;
    border: solid 1px #000000;
    float: left;
    width: 100%;
    height: 16rem;
    background-image: url(../img/common/phone_mark.png);
    background-repeat: no-repeat;
    background-size: 11%;
    background-position: top 0.2rem left 0.2rem;
    font-size: 1rem;
  }

  @media all and (max-width: 414px) {
    .phone-box {
      padding: 1.5em 1em;
      margin: 0 0 3em;
      font-weight: bold;
      border: solid 1px #000000;
      float: left;
      width: 100%;
      height: auto;
      background-image: url(../img/common/phone_mark.png);
      background-repeat: no-repeat;
      background-size: 11%;
      background-position: top 0.2rem left 0.2rem;
      font-size: 1rem;
    }

    .letter-box {
      padding: 1.5em 1em;
      margin: 0 0 3em;
      font-weight: bold;
      border: solid 1px #000000;
      float: left;
      width: 100%;
      height: 16rem;
      background-image: url(../img/common/letter_mark.png);
      background-repeat: no-repeat;
      background-size: 11%;
      background-position: top 0.2rem left 0.2rem;
      font-size: 1rem;
    }
  }

  @media all and (min-width: 415px) and (max-width: 767px) {
    .phone-box {
      padding: 1.5em 1em;
      margin: 1em 1em;
      font-weight: bold;
      border: solid 1px #000000;
      float: left;
      width: 95%;
      height: 20rem;
      background-image: url(../img/common/phone_mark.png);
      background-repeat: no-repeat;
      background-size: 11%;
      background-position: top 0.2rem left 0.2rem;
      font-size: 1rem;
    }

    .letter-box {
      padding: 1.5em 1em;
      margin: 1em 1em;
      font-weight: bold;
      border: solid 1px #000000;
      float: left;
      width: 95%;
      height: 20rem;
      background-image: url(../img/common/letter_mark.png);
      background-repeat: no-repeat;
      background-size: 11%;
      background-position: top 0.2rem left 0.2rem;
      font-size: 1rem;
    }

    .notice {
      padding: 20px;
    }
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .phone-box {
    padding: 1.5em 1em;
    margin: 1em 1em;
    font-weight: bold;
    border: solid 1px #000000;
    float: left;
    width: 100%;
    height: 20rem;
    background-image: url(../img/common/phone_mark.png);
    background-repeat: no-repeat;
    background-size: 11%;
    background-position: top 0.2rem left 0.2rem;
    font-size: 1rem;
  }

  .letter-box {
    padding: 1.5em 1em;
    margin: 1em 1em;
    font-weight: bold;
    border: solid 1px #000000;
    float: left;
    width: 100%;
    height: 20rem;
    background-image: url(../img/common/letter_mark.png);
    background-repeat: no-repeat;
    background-size: 11%;
    background-position: top 0.2rem left 0.2rem;
    font-size: 1rem;
  }
}

/*資料請求 end ******************************************************************************/

/*RADIO start ******************************************************************************/

.radio_con h5 {
  margin-bottom: 1rem;
}

.radio_con h6 {
  line-height: 1.8rem;
  margin: 2rem 0rem;
}

.radio_con h7 {
  margin-bottom: 5rem;
  line-height: 1.5rem;
}

.u-br--pc .aks {
  display: inline-block;
}

/*地方自治体講演実績 start ******************************************************************************/

/*セミナー・講演会*/
.seminar_lecture {
  width: 100%;
  float: left;
  padding: 10px;
  display: flex;
  flex-wrap: wrap;
  margin-top: -3rem;
}

.seminar_lecture .p-section__image {
  /* background-color: #000; */
  width: 50%;
  float: left;
}

.seminar_lecture .p-overview {
  width: 960px;
  margin: 0 auto;
  background: #efefef;
  border-radius: 240px 15px 100px 15px / 15px 200px 15px 185px;
  padding: 2%;
  margin: 10px;
  border: 1px solid #746bab;
}

.p-overview img {
  width: 100%;
  float: left;
  margin-left: 2rem;
}

@media all and (max-width: 415px) {
  .p-overview img {
    margin-bottom: 1rem;
    margin-left: 0rem;
  }
}

.seminar_lecture .p-section__content--txt {
  float: left;
  color: #000;
  text-align: left;
  padding: 1rem 0 0 3rem;
  width: 45%;
}

@media all and (max-width: 320px) {
  .seminar_lecture .p-section__content--txt {
    width: 100%;
    font-size: 1rem;
    padding: 1rem;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .seminar_lecture .p-section__content--txt {
    padding: 1rem;
    width: 100%;
  }

  .p-overview img {
    width: 330px;
    margin: 0 auto;
    display: block;
    float: none;
  }
}


@media all and (min-width: 320px) and (max-width: 767px) {
  .seminar_lecture .p-section__content--txt {
    padding: 1rem;
    width: 100%;
  }
}

.p-section__image.activity {
  width: auto;
  display: block;
}

.p-section__image.activity img {
  max-width: 700px;
  margin: 40px auto;
}

.p-activity-list__block {
  display: block;
  width: 100%;
}

.p-activity-list__block ul {
  max-width: 750px;
  margin: 10px auto;
  text-align: left;
  line-height: 2.2rem;
  padding-top: 1rem;
}

.p-contents_hr_activity {
  float: left;
  display: block;
  border-top: #808080 1px solid;
  height: 1px;
  width: 100%;
  margin-top: 54px;
  padding-top: -1.4rem;
}

.p-contents_tit_hr_activity {
  float: left;
}

.p_cont_tit_activity {
  width: 70%;
  display: block;
  margin: 0 auto;
}


.p-contents__head_ac {
  border-top: solid #010101 8px;
}

.p_cont_tit_activity h1 {
  margin: 0 auto;
  text-align: left;
  float: left;
  width: 100%;
  border-top: #b3b3b3 solid 8px;
  margin-bottom: 17px;
}

@media all and (min-width: 767px) and (max-width: 1024px) {
  .p_cont_tit_activity h1 {
    text-align: center;
  }
}

.p_cont_tit_activity span {
  padding-top: 0.5rem;
  top: 1px;
  font-size: 1.7rem;
}

@media all and (max-width: 414px) {
  .p_cont_tit_activity span {
    top: -0.3rem;
    font-size: 1.3rem;
  }
}

@media all and (min-width: 767px) and (max-width: 1024px) {
  .p_cont_tit_activity span {
    padding-top: 0.63rem;
    top: 3px;
    font-size: 1.7rem;
    text-align: center;
  }
}

.win .p_cont_tit_activity span {
  /*windows chromeのみ*/
  top: 5px;
}

@media all and (min-width: 414px) and (max-width: 700px) {
  .p_cont_tit_activity span {
    padding-top: 0.5rem;
    top: -1px;
  }
}

@media all and (max-width: 320px) {
  .p_cont_tit_activity span {
    top: -0.55rem;
    font-size: 1rem;
    font-weight: 700;
  }
}

@media all and (max-width: 414px) {
  .iphone.webkit .p_cont_tit_activity span {
    top: -3px;
  }
}


.p-contents_hr_in_cp {
  border-top: #c1ad62 solid 8px;
  width: 18rem;
  margin: auto 0;
  height: 8px;
  position: relative;
  top: -2.69rem;
  text-indent: -99999px;
}

@media all and (max-width: 415px) {
  .seminar_lecture .p-section__image {
    background-color: #000;
    width: 100%;
    float: right;
  }

  .seminar_lecture .p-overview {
    width: 100%;
    margin: 0 auto;
  }

  .p-section__image.activity {
    width: 100%;
    float: left;
    display: block;
  }

  .p-section__image.activity img {
    max-width: 100%;
    margin: 40px auto;
  }

  .p-activity-list__block {
    display: block;
    width: 100%;
  }

  .p-activity-list__block ul {
    max-width: 94%;
    margin: 10px 0;
    text-align: left;
    line-height: 2.2rem;
    float: left;
    padding-top: 1rem;
  }

  .p-contents_hr_activity {
    float: left;
    display: block;
    border-top: #808080 1px solid;
    height: 1px;
    width: 100%;
    margin-top: 54px;
  }

  .p-contents_tit_hr_activity {
    float: left;
  }

  .p_cont_tit_activity {
    width: 90%;
    display: block;
    margin: 0 auto;
  }

  .p-contents__head_ac {
    border-top: solid #010101 8px;
  }

  .p_cont_tit_activity h1 {
    margin: 0 auto;
    text-align: left;
    float: left;
    width: 100%;
    border-top: #b3b3b3 solid 8px;
  }

  .p-contents_hr_in_cp_2 {
    height: 1rem;
  }

  .p-contents_hr_in_cp {
    border-top: #c1ad62 solid 8px;
    width: 55%;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -1px;
    text-indent: -99999px;
    font-size: 1.4rem;
    top: -2.7rem;
  }

  span.p-contents_hr_in_cp {
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 2rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .seminar_lecture .p-section__image {
    background-color: #000;
    width: 50%;
    float: left;
  }

  .seminar_lecture .p-overview {
    width: 100%;
    margin: 0 auto;
  }

  .p-section__image.activity {
    width: 100%;
    float: left;
    display: block;
  }

  .p-section__image.activity img {
    max-width: 100%;
    margin: 40px auto;
  }

  .p-activity-list__block {
    display: block;
    width: 100%;
  }

  .p-activity-list__block ul {
    max-width: 100%;
    margin: 50px auto;
    text-align: left;
    line-height: 2.2rem;
    float: left;
    padding-top: 1rem;
  }

  .p-contents_hr_activity {
    float: left;
    display: block;
    border-top: #808080 1px solid;
    height: 1px;
    width: 100%;
    margin-top: 54px;
  }

  .p-contents_tit_hr_activity {
    float: left;
  }

  .p_cont_tit_activity {
    width: 90%;
    display: block;
    margin: 0 auto;
  }

  .p-contents__head_ac {
    border-top: solid #010101 8px;
  }

  .p_cont_tit_activity h1 {
    margin: 0 auto;
    text-align: left;
    float: left;
    width: 100%;
    background-color: #b3b3b3;
    height: 8px;
  }

  .p-contents_hr_in_cp {
    border-top: #c1ad62 solid 8px;
    width: 25%;
    margin: auto 0;
    height: 8px;
    position: relative;
    top: -2.7rem;
    text-indent: -99999px;
  }

  #two {
    display: none;
    opacity: 0;
  }
}

.contactbtnbox .p-contents-title_purline {
  margin-top: 0%;
}

.linkblock {
  text-align: center;
  margin-bottom: 50px;
}

.linkblock img {
  text-align: center;
  width: 100%;
  height: auto;
}

.linkblock ul {
  list-style-type: none;
  text-align: center;
  width: 80%;
  height: auto;
  background-color: #f0eef9;
  padding: 3%;
  margin: 0 auto 20px;
}

.linkblock p {
  margin: 30px auto 20px;
}

.linkblock p.text {
  width: 70%;
  text-align: left;
}


@media all and (min-width: 320px) and (max-width: 767px) {
  .contactbtnbox .p-contents-title_purline {
    margin-top: -1%;
  }

  .jichi .p-contents-body--lower {
    padding: 0 0;
  }
}

@media all and (min-width: 700px) and (max-width: 713px) {
  span.p-contents_hr_in_cp {
    top: -0.6rem;
  }
}

/*地方自治体講演実績 end ******************************************************************************/

/*エグゼクティブ start ******************************************************************************/
.exe_mv {
  background-size: cover;
  background-image: url(../img/executive/＿exe_img01.png);
  min-width: 100%;
  height: 375px;
  margin-top: 20px;
  margin-bottom: 20px;
}

.text_gold {
  color: #c2ae69;
  font-size: 0.9rem;
}

.text_gold span {
  display: inline-block;
}

.exe_asri {
  background-image: url(../img/executive/__exe_icon03.png);
  background-position: 10% top;
  background-repeat: no-repeat;
  width: 100%;
  height: 180px;
  padding: 40px 0;
  display: block;
  float: left;
  background-size: 4.5rem;
  background-position-x: 7.5rem;
  margin-bottom: 0rem;
  margin: 1rem 0;
}

.exe_asri h2 {
  border-top: solid 1px #dfd6b5;
  border-bottom: solid 1px #dfd6b5;
  padding: 10px;
  float: left;
  font-size: 1.3rem;
  font-weight: 540;
}

.specialPinner {
  display: block;
  float: left;
  margin-right: 5%;
}

.specialPinner p {
  margin-top: 0.5rem;
}

.qualification {
  display: block;
  float: left;
  width: 100%;
}

.qualification a {
  display: block;
  text-decoration: none;
  margin-top: 1rem;
  text-align: center;
}

.Btn {
  width: 332px;
  height: 60px;
  line-height: 60px;
  display: flex;
  text-align: center;
  background: #756baa;
  font-size: 1rem;
  margin-bottom: 40px;
}

.exe_img02 {
  background-image: url(../img/executive/__exe_img02.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 375px;
  margin-top: -3.29rem;
  margin-bottom: -2.9rem;
}

.pur_crown {
  background-image: url(../img/executive/exe_icon02.png);
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 40px;
  margin-bottom: 11px;
  background-size: 3.1rem;
}

p.exe_mmb {
  margin-top: 40px;
}

.p-content-wrap--exe .omotesando_txt {
  text-align: center;
  background-position: center;
  background-repeat: no-repeat;
  margin: 50px auto;
  background-image: url(../img/executive/exe_icon01.png);
  background-size: 6.5rem;
  font-size: 0.9rem;
}

.eliteBlock {
  display: block;
  margin: 0 auto;
  width: 80%;
  height: auto;
  margin: 0 auto;
  padding: 1rem;
}

.eliteBlock2 {
  display: block;
  margin: 0 auto;
  width: 92%;
  height: auto;
  float: left;
}

.eliteBlock2 h6 {
  font-size: 0.9rem;
  width: 100%;
  margin-bottom: 1rem;
}

.eliteBlock2 h6::before {
  font-size: 18px;
  float: left;
  /* border-left: #746bac solid 18px; */
  width: 18px;
  height: 20px;
  padding-bottom: 11px;
  text-align: left;
  content: "";
  margin-right: 0.5rem;
  background: linear-gradient(to bottom left, #c1ad62 50%, #756baa 50%);
}

.clearboth {
  clear: both;
}

.exe_img02 {
  background-image: url(../img/executive/exe_img02.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 375px;
}

p.exe_mmb {
  margin-top: 40px;
}

@media all and (max-width: 414px) {
  .exe_mv {
    background-size: cover;
    background-image: url(../img/executive/＿exe_img01.png);
    min-width: 100%;
    height: 216px;
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .text_gold {
    color: #c2ae69;
    font-size: 0.9rem;
  }

  .exe_asri {
    background-image: url(../img/executive/__exe_icon03.png);
    background-position: 10% top;
    background-repeat: no-repeat;
    width: 100%;
    height: 180px;
    padding: 40px 0;
    display: block;
    float: left;
    background-size: 4.5rem;
    background-position-x: 50%;
    margin-bottom: -2rem;
  }

  .exe_asri h2 {
    border-top: solid 1px #dfd6b5;
    border-bottom: solid 1px #dfd6b5;
    padding: 10px;
    float: left;
    font-size: 1.3rem;
    width: 100%;
    text-align: center;
  }

  .exe_asri2 {
    background-position: 10% top;
    background-repeat: no-repeat;
    width: 100%;
    height: 180px;
    padding: 40px 0;
    display: block;
    float: left;
    background-size: 4.5rem;
    background-position-x: 50%;
    margin-bottom: -2rem;
  }

  .exe_asri2 h3 {
    border-top: solid 1px #dfd6b5;
    border-bottom: solid 1px #dfd6b5;
    padding: 10px;
    font-size: 1.3rem;
    width: 100%;
    text-align: center;
    display: block;
    margin: 0 auto;
  }

  .specialP {
    display: block;
    float: left;
    width: 100%;
  }

  .specialP2 {
    display: block;
    float: left;
    width: 100%;
  }

  .specialPinner {
    display: block;
    float: left;
    margin-right: 31px;
  }

  .specialP2 .specialPinner {
    display: block;
    float: none;
    margin: 0 auto;
  }

  .specialPinner p {
    margin-top: 0.5rem;
  }

  .qualification {
    display: block;
    float: left;
    width: 100%;
  }

  .qualification a {
    display: block;
    text-decoration: none;
  }

  .Btn {
    width: 332px;
    height: 60px;
    line-height: 60px;
    display: flex;
    text-align: center;
    background: #756baa;
    font-size: 1rem;
    margin-bottom: 40px;
  }

  .exe_img02 {
    background-image: url(../img/executive/__exe_img02.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;

    height: 216px;
    background-position: center;
  }

  .pur_crown {
    background-image: url(../img/executive/exe_icon02.png);
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 40px;
    margin-bottom: 11px;
    background-size: 3.1rem;
  }

  p.exe_mmb {
    margin-top: 60px;
  }

  .eliteBlock {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 1rem;
  }

  .eliteBlock2 {
    display: block;
    margin: 0 auto;
    width: 92%;
    height: auto;
  }

  .mb2rem {
    margin-bottom: 2rem;
  }

  .exe_asri2 h3 span {
    border-bottom: solid 1px #e7aed1;
    padding: 4px;
    line-height: 1.3rem;
  }
}

@media all and (min-width: 415px) and (max-width: 767px) {
  .exe_mv {
    background-size: cover;
    background-image: url(../img/executive/＿exe_img01.png);
    min-width: 100%;
    height: 375px;
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .text_gold {
    color: #c2ae69;
    font-size: 0.9rem;
  }

  .exe_asri {
    background-image: url(../img/executive/__exe_icon03.png);
    background-position: 10% top;
    background-repeat: no-repeat;
    width: 100%;
    height: 180px;
    padding: 40px 0;
    display: block;
    float: left;
    background-size: 4.5rem;
    background-position-x: 3.5rem;
  }

  .exe_asri h2 {
    border-top: solid 1px #dfd6b5;
    border-bottom: solid 1px #dfd6b5;
    padding: 10px;
    float: left;
    font-size: 1.3rem;
  }

  .exe_asri2 {
    float: left;
  }

  .exe_asri2 h3 {
    border-top: solid 1px #dfd6b5;
    border-bottom: solid 1px #dfd6b5;
    padding: 18px;
    font-size: 1rem;
    border-top-left-radius: 35px;
    border-bottom-right-radius: 30px;
    background-image: linear-gradient(90deg, #746bac 10%, #cbe0f3 100%);
    box-shadow: 0px 0px 16px -6px rgba(0, 0, 0, 0.6);
    margin-bottom: 20px;
  }

  .exe_asri2 h3 span {
    border-bottom: solid 1px #e7aed1;
    padding: 10px;
  }

  .specialP {
    display: block;
    float: left;
    width: 100%;
  }

  .specialP2 {
    display: block;
    float: left;
    width: 100%;
  }

  .specialPinner {
    display: block;
    float: left;
    margin-right: 5%;
  }

  .specialP2 .specialPinner {
    display: block;
    float: none;
    /* margin-right: 5%; */
    margin: 0 auto;
    width: 80%;
  }

  .specialP2 .specialPinner:last-child {
    margin: 0 auto;
  }

  .specialPinner p {
    margin-top: 0.5rem;
  }

  .qualification {
    display: block;
    float: left;
    width: 100%;
  }

  .qualification a {
    display: block;
    text-decoration: none;
  }

  .Btn {
    width: 332px;
    height: 60px;
    line-height: 60px;
    display: flex;
    text-align: center;
    background: #756baa;
    font-size: 1rem;
    margin-bottom: 40px;
  }

  .exe_img02 {
    background-image: url(../img/executive/__exe_img02.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;

    height: 375px;
    background-position: center;
  }

  .pur_crown {
    background-image: url(../img/executive/exe_icon02.png);
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 40px;
    margin-bottom: 11px;
    background-size: 3.1rem;
  }

  p.exe_mmb {
    margin-top: 40px;
  }

  .eliteBlock {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 1rem;
  }
}

/*エグゼクティブ end ******************************************************************************/
/*成婚料 start ******************************************************************************/

.text_gold {
  color: #c2ae69;
}

.exe_asri2 {
  float: left;
  margin-bottom: 1rem;
}

.exe_asri2 h3 {
  border-top: solid 1px #dfd6b5;
  border-bottom: solid 1px #dfd6b5;
  padding: 18px;
  font-size: 0.95rem;
  border-top-left-radius: 35px;
  border-bottom-right-radius: 35px;
  background-image: linear-gradient(90deg, #746bac 10%, #cbe0f3 100%);
  box-shadow: 0px 0px 16px -6px rgba(0, 0, 0, 0.6);
  margin-bottom: 20px;
}

.exe_asri2 h3 span {
  border-bottom: solid 1px #e7aed1;
  padding: 10px;
  line-height: 0rem;
  font-weight: 550;
}

@media all and (max-width: 521px) {
  .exe_asri2 h3 span {
    line-height: 2.7rem;
  }
}

.specialP {
  display: block;
  float: left;
  width: 100%;
  min-height: 20rem;
}

@media all and (min-width: 800px) {
  .specialP {
    min-height: 30rem;
  }

  .specialP2 {
    min-height: 16rem;
    margin: 0 auto;
    width: 100%;
    display: flex;
    float: none;
    flex-wrap: wrap;
    justify-content: space-around;
  }

  .specialP2 .specialPinner:last-child {
    margin-right: 0 !important;
  }
}

@media all and (min-width: 768px) and (max-width: 1024px) {
  .specialP ul {
    width: 100%;
    display: inline;
  }

  .specialP2 ul {
    width: 100%;
    display: inline;
  }
}

@media all and (min-width: 1680px) {
  .specialP {
    min-height: 30rem;
  }

  .specialP2 {
    min-height: auto;
  }
}

.specialPinner img {
  max-width: 17rem;
}

.specialP .step {
  width: 80px;
  height: 80px;
  background-image: linear-gradient(180deg, #eeede9 10%, #666 100%);
  border-radius: 50%;
  float: left;
  display: block;
  position: relative;
  top: -30px;
  margin-right: 20px;
  text-align: center;
  padding-top: 0.55rem;
  line-height: 1.6rem;
}

.specialP .step span {
  color: #e6649a;
  font-size: 1.5rem;
  font-weight: bold;
  /* text-decoration: underline 0.1rem solid;
  text-decoration-color: #000; */
  background: linear-gradient(transparent 70%, #808080 0%);
}

.specialP li {
  margin-bottom: 30px;
  float: left;
}

.qualification {
  display: block;
  float: left;
  width: 100%;
  font-size: 0.9rem;
}

.qualification a {
  display: block;
  text-decoration: none;
}

.uekusa_c .c-circle__text {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 300;
  text-align: center;
  line-height: 3rem;
}

.uekusa_c .c-circle__icon img {
  display: inline-block;
  position: relative;
  top: -6px;
  border: 0.12rem solid;
  border-color: #b75094 #000 #000 #b75094;
  border-radius: 10px 0px 10px 0px;
  width: 3.1rem;
  padding: 6px;
  display: inline-block;
  background-color: #fff;
}

.c-circle__uekusa_c {
  width: 100%;
  text-align: center;
}

.p-content-wrap--exe .uekusa_img {
  text-align: center;
  margin: 10px auto 100px;
  display: block;
  margin: 0 auto;
  width: 32rem;
  padding-top: 1rem;
}

.Btn {
  width: 332px;
  height: 60px;
  line-height: 60px;
  display: flex;
  text-align: center;
  background: #756baa;
  font-size: 1rem;
  margin-bottom: 40px;
}

.p-content-wrap--exe .omotesando_img {
  text-align: center;
  margin: 10px auto 40px;
  display: block;
  width: 36rem;
}

#accordion_menu li a.successfee {
  background-color: #fea3c6;
  color: #000;
}

#accordion_menu li a.successfee:hover {
  color: #e6649a;
}

.seling {
  height: auto;
  background-image: url(../img/successfee/_seikon_uekusa_back.png);
  background-size: 70rem;
  background-repeat: no-repeat;
  background-position-x: 50%;
  background-position-y: 2.9rem;
  display: inline-block;
  width: 100%;
}

.uekusa_counseling .p-contents_hr_in {
  padding: 2rem !important;
  font-weight: bolder;
  margin-bottom: 4rem;
}

.p-flex.p-flex--price.successF {
  padding: 91px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.p-flex.p-flex--price.uekusa_c {
  padding: 7px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background-image: linear-gradient(135deg, #9e99c294 10%, #f596be 100%);
  margin: 5rem 0;
}

.successF .p-flex__item {
  border: solid 1px #ffbed6;
  width: 273px;
  height: 218px;
  margin-top: 3rem;
}

.successF .p-flex__item .c-circle__icon,
.successF .p-flex__item2 .c-circle__icon,
.successF .p-flex__item3 .c-circle__icon {
  position: relative;
  top: -20px;
  left: -20px;
  width: 60%;
  float: left;
}

.successF .p-flex__item2 {
  border: solid 1px #e9d7e7;
  width: 273px;
  height: 218px;
  margin-top: 3rem;
}

.successF .p-flex__item3 {
  border: solid 1px #dba8c9;
  width: 273px;
  height: 218px;
  margin-top: 3rem;
}

.stepcontent__option01,
.stepcontent__option02,
.stepcontent__option03,
.stepcontent__option04 {
  width: 100%;
}

.stepcontent__option01_img,
.stepcontent__option02_img,
.stepcontent__option03_img,
.stepcontent__option04_img {
  float: left;
  width: 35%;
}

.stepcontent__option01_img img,
.stepcontent__option02_img img,
.stepcontent__option03_img img,
.stepcontent__option04_img img {
  float: left;
  width: 85%;
}

.option01__description,
.option02__description,
.option03__description,
.option04__description {
  width: 65%;
  float: left;
}

.bb7s1 {
  border: solid 1px #b7b7b7;
  padding: 10px;
  width: 100%;
  float: left;
}

.uekusa_c .p-flex__item {
  width: 350px;
  height: 218px;
}

.uekusa_c .p-flex__item .c-circle__icon,
.uekusa_c .p-flex__item2 .c-circle__icon {
  position: relative;
  top: -20px;
  width: 100%;
  float: left;
  text-align: center;
}

.uekusa_c .p-flex__item2 {
  width: 350px;
  height: 218px;
}

.uekusa_c__description {
  font-size: 1.5rem;
  text-align: center;
}

.successfee__description {
  font-size: 1.4rem;
  text-align: center;
}

.successF .c-circle__text {
  border-top: solid 1px #c1ad62;
  border-bottom: solid 1px #c1ad62;
  width: 90%;
  margin: -0.5rem 0rem 1rem;
  padding: 1rem 0;
  font-size: 1.1rem;
  display: inline-block;
}

.eliteBlockinner {
  display: block;
  float: left;
  margin-right: 35px;
  width: 45%;
}

.eliteBlockinner02 {
  display: block;
  float: left;
  margin-right: 2rem;
  max-width: 16rem;
}

@media all and (min-width: 1680px) {
  .eliteBlockinner02 {
    max-width: 20rem;
  }
}

.eliteBlockinner img,
.eliteBlockinner02 img {
  width: 100%;
}

.eliteBlockinner p,
.eliteBlockinner02 p {
  margin-top: 0.5rem;
}

.eliteBlockinner:last-child {
  display: block;
  float: left;
  margin-right: 0;
}

.eliteBlocktxt {
  width: 100%;
  display: block;
  float: left;
  padding-left: 40px;
  background-image: url(../img/executive/exe_icon01.png);
  background-repeat: no-repeat;
  height: 9rem;
  background-size: 4rem;
  background-position: center;
  text-align: center;
  padding: 1rem;
  font-size: 0.9rem;
}

.clearboth {
  clear: both;
}

.fl {
  float: left;
}

.successfee_tit_p {
  width: 90%;
  margin: 0 auto;
}

.successF .p-flex__item .c-circle .c-circle__term .c-circle__icon img,
.successF .p-flex__item2 .c-circle .c-circle__term .c-circle__icon img,
.successF .p-flex__item3 .c-circle .c-circle__term .c-circle__icon img {
  position: relative;
  top: -20px;
  border: 0.12rem solid;
  border-color: #b75094 #000 #000 #b75094;
  border-radius: 10px 0px 10px 0px;
  height: 3rem;
  padding: 0.2rem 0.5rem;
  display: inline-block;
  background-color: #fff;
}

.successF h7 {
  text-align: right;
  line-height: 3rem;
}

.uekusa_counseling {
  height: auto;
  background-image: url(../img/successfee/_seikon_uekusa_back.png);
  background-size: 80rem;
  background-repeat: no-repeat;
  background-position-x: 50%;
  background-position-y: 2.9rem;
  display: inline-block;
  width: 100%;
}

.uekusa_counseling .p-contents_hr_in {
  padding: 0rem !important;
  font-weight: bolder;
  margin-top: 0;
}

.uekusa_counseling .p-contents_hr_in {
  padding: 2rem 0 0 !important;
}

.uekusa_counseling .p_cont_tit p {
  line-height: 2.2rem;
  height: auto;
}

@media all and (max-width: 414px) {
  .uekusa_counseling .p_cont_tit p {
    line-height: 2rem;
  }
}

@media all and (max-width: 414px) {
  .p-content-wrap--exe .omotesando_img {
    text-align: center;
    margin: 10px auto 40px;
    display: block;
    width: 100%;
  }

  .eliteBlocktxt {
    width: 100%;
    display: block;
    float: left;
    padding-left: 40px;
    background-image: url(../img/executive/exe_icon01.png);
    background-repeat: no-repeat;
    height: auto;
    background-size: 4rem;
    background-position-x: 50%;
    background-position-y: 50%;
    text-align: center;
    padding: 1rem;
  }

  .eliteBlockinner {
    display: block;
    float: left;
    margin-right: 0;
    width: 100%;
  }

  .eliteBlockinner02 {
    display: block;
    float: left;
    margin-right: 0;
    width: 100%;
  }

  .p-flex.p-flex--price.successF {
    padding: 40px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .successF .p-flex__item {
    border: solid 1px #ffbed6;
    width: 273px;
    height: 218px;
  }

  .successF .p-flex__item .c-circle__icon,
  .successF .p-flex__item2 .c-circle__icon,
  .successF .p-flex__item3 .c-circle__icon {
    position: relative;
    top: -20px;
    left: -20px;
    width: 60%;
    float: left;
  }

  .successF .p-flex__item2 {
    border: solid 1px #e9d7e7;
    width: 273px;
    height: 218px;
  }

  .successF .p-flex__item3 {
    border: solid 1px #dba8c9;
    width: 273px;
    height: 218px;
  }

  .successF h7 {
    text-align: right;
    line-height: 3rem;
    padding-left: 0;
  }

  .specialP {
    display: block;
    float: left;
    width: 100%;
  }

  .specialP2 {
    display: block;
    float: left;
    width: 100%;
  }

  .specialP .step {
    width: 80px;
    height: 80px;
    background-image: linear-gradient(180deg, #eeede9 10%, #666 100%);
    border-radius: 50%;
    float: left;
    display: block;
    position: relative;
    top: -30px;
    margin-right: 20px;
    text-align: center;
    padding-top: 0.55rem;
    line-height: 1.6rem;
  }

  .specialP .step span {
    color: #e6649a;
    font-size: 1.5rem;
    font-weight: bold;
    /* text-decoration: underline 0.1rem solid;
    text-decoration-color: #000; */
    background: linear-gradient(transparent 70%, #808080 0%);
  }

  .specialP li {
    margin-bottom: 30px;
    float: left;
  }

  #accordion_menu {
    list-style-type: none;
    padding-left: 0;
    /* width: 100%;
    margin: 0 auto; */
  }

  #accordion_menu li {
    list-style-type: none;
    padding-left: 0;
    width: 100%;
    min-height: 8rem;
  }

  #accordion_menu li:nth-child(odd) {
    background-color: #fff;
  }

  #accordion_menu li:nth-child(even) {
    background-color: #f2f2f2;
  }

  #accordion_menu1 .spmenu:nth-child(odd) {
    background-color: transparent;
    list-style-type: none;
  }

  #accordion_menu1 .spmenu:nth-child(even) {
    background-color: transparent;
    list-style-type: none;
  }

  #accordion_menu1 {
    list-style-type: none;
    padding-left: 0;
    width: 100%;
    margin: 0 auto;
    border-bottom: 1px solid #ea609a;
  }

  #accordion_menu li a {
    background-color: #c1bcdc;
    padding: 10px;
    width: 100%;
    display: block;
  }

  #accordion_menu li.spmenu a {
    background-color: transparent;
    border-bottom: #ea609a;
    padding: 10px;
    width: 100%;
    display: block;
    color: #000;
  }

  #spmenu01 {
    background-color: transparent;
    color: #000;
  }

  #spmenu01 li,
  #spmenu02 li,
  #spmenu03 li,
  #spmenu04 li,
  #spmenu05 li,
  #spmenu06 li {
    background-color: transparent;
    color: #000;
    list-style-type: none;
  }

  #spmenu01 li a {
    background-color: transparent;
    color: #000;
  }

  #spmenu01 li a:hover {
    background-color: transparent;
    color: #ea609a;
  }

  .c-trigger .logo,
  .c-trigger .home {
    display: none;
  }

  .stepcontent__option01_img,
  .stepcontent__option02_img,
  .stepcontent__option03_img,
  .stepcontent__option04_img {
    width: 100%;
  }

  .stepcontent__option01_img img,
  .stepcontent__option02_img img,
  .stepcontent__option03_img img,
  .stepcontent__option04_img img {
    float: none;
    width: 80%;
    margin: 0 auto;
    display: block;
  }

  .option01__description,
  .option02__description,
  .option03__description,
  .option04__description {
    width: 100%;
    float: left;
  }

  .uekusa_counseling {
    height: auto;
    background-image: url(../img/successfee/_seikon_uekusa_back.png);
    background-size: 80rem;
    background-repeat: no-repeat;
    background-position-x: 50%;
    background-position-y: 2.9rem;
    display: inline-block;
    width: 100%;
  }

  .uekusa_counseling .p-contents_hr_in {
    padding: 2rem !important;
    font-weight: bolder;
    margin-bottom: 4rem;
  }

  .p-content-wrap--exe .uekusa_img {
    text-align: center;
    margin: 10px auto 100px;
    display: block;
    margin: 0 auto;
    width: 100%;
  }
}

@media all and (max-width: 768px) {
  .c-course-content__image {
    display: none;
  }

  .c-course-content__image_sp {
    width: 100%;
    max-width: 768px;
  }

  .c-course-content__image_sp ul {
    list-style-type: none;
    max-width: 768px;
  }

  .c-course-content__image_sp img {
    widows: 90%;
    width: 39%;
    max-width: 768px;
    object-fit: cover;
  }

  .c-course-content__image_sp p {
    width: 100%;
    max-width: 768px;
    float: left;
  }

  .c-course-content__image_sp .swiper-slide {
    /* width: 100% !important; */
    max-width: 768px;
    height: auto;
  }

  .c-course-content__image_sp .swiper-container {
    padding-bottom: 3rem;
    z-index: 1;
    margin: 2rem auto;
    float: left;
    width: 100% !important;
    /* max-width: 382px; */
  }

  .c-course-content__image_sp .swiper-container a {
    width: 100%;
    display: block;
  }

  .c-course-content__image_sp .swiper-container {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: block;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
  }

  .c-course-content__image_sp .swiper-container .swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: 25px;
    left: 0;
    width: 100%;
  }

  .c-course-content__image_sp .swiper-container picture {
    width: 100%;
    display: block;
  }

}

@media all and (min-width: 767px) {
  .c-course-content__image_sp {
    display: none;
  }
}

@media all and (min-width: 320px) and (max-width: 767px) {
  .c-course-content__image_sp img {
    /* width: 100%; */
    max-width: fit-content;
    object-fit: cover;
    max-height: 300px;
  }

  .c-course-content__image_sp .swiper-pagination-fraction,
  .swiper-pagination-custom,
  .swiper-container-horizontal>.swiper-pagination-bullets {
    width: 50% !important;
  }

  div.topmedia.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets {
    width: 100% !important;
  }

  div.topbooks.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets {
    width: 100% !important;
  }

  .c-course-content__image_sp p {
    width: 100% !important;
    max-width: 320px;
    float: none;
    text-align: left;
  }

  .p-content-wrap--exe .omotesando_img {
    text-align: center;
    margin: 10px auto 40px;
    display: block;
    width: 100%;
  }

  .eliteBlocktxt {
    width: 100%;
    display: block;
    float: left;
    padding-left: 40px;
    background-image: url(../img/executive/exe_icon01.png);
    background-repeat: no-repeat;
    height: auto;
    background-size: 4rem;
    background-position-x: 50%;
    background-position-y: 50%;
    text-align: center;
    padding: 1rem;
  }

  .eliteBlockinner {
    display: block;
    float: left;
    margin-right: 5%;
  }

  .eliteBlockinner02 {
    display: block;
    float: left;
    margin: 0 auto;
    width: 45%;
    margin-right: 5%;
  }

  .eliteBlockinner img,
  .eliteBlockinner02 img {
    width: 100%;
    margin: 0 auto;
  }

  .p-flex.p-flex--price.successF {
    padding: 40px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .successF .p-flex__item {
    border: solid 1px #ffbed6;
    width: 273px;
    height: auto;
    margin-bottom: 4rem;
  }

  .successF .p-flex__item .c-circle__icon,
  .successF .p-flex__item2 .c-circle__icon,
  .successF .p-flex__item3 .c-circle__icon {
    position: relative;
    top: -20px;
    left: -20px;
    width: 60%;
    float: left;
  }

  .successF .p-flex__item2 {
    border: solid 1px #e9d7e7;
    width: 273px;
    height: 218px;
    margin-bottom: 4rem;
  }

  .successF .p-flex__item3 {
    border: solid 1px #dba8c9;
    width: 273px;
    height: 218px;
    margin-bottom: 2rem;
  }

  .successF h7 {
    text-align: right;
    line-height: 3rem;
    padding-left: 0;
  }

  .specialP {
    display: block;
    float: left;
    width: 100%;
    /* height: 120rem; */
  }

  .specialP2 {
    display: block;
    float: left;
    width: 100%;
    /* height: 120rem; */
  }

  .specialP .step {
    width: 80px;
    height: 80px;
    background-image: linear-gradient(180deg, #eeede9 10%, #666 100%);
    border-radius: 50%;
    float: left;
    display: block;
    position: relative;
    top: -30px;
    margin-right: 20px;
    text-align: center;
    padding-top: 0.55rem;
    line-height: 1.6rem;
  }

  .specialP .step span {
    color: #e6649a;
    font-size: 1.5rem;
    font-weight: bold;
    /* text-decoration: underline 0.1rem solid;
    text-decoration-color: #000; */
    background: linear-gradient(transparent 70%, #808080 0%);
  }

  .specialP li {
    margin-bottom: 30px;
    float: left;
  }

  #accordion_menu {
    list-style-type: none;
    padding-left: 0;
    width: 96%;
    margin: 0 auto;
  }

  #accordion_menu #menu01,
  #accordion_menu #menu02,
  #accordion_menu #menu03,
  #accordion_menu #menu04 {
    position: relative;
    left: -1rem;
  }

  #accordion_menu1 {
    list-style-type: none;
    padding-left: 0;
    width: 100%;
    margin: 0 auto;
    border-bottom: 1px solid #ea609a;
    padding-bottom: 1rem;
  }

  #accordion_menu li {
    list-style-type: none;
    padding-left: 0;
    width: 100%;
  }

  #accordion_menu li:nth-child(odd) {
    background-color: #fff;
  }

  #accordion_menu li:nth-child(even) {
    background-color: #f2f2f2;
  }

  #accordion_menu1 .spmenu:nth-child(odd) {
    background-color: transparent;
    list-style-type: none;
  }

  #accordion_menu1 .spmenu:nth-child(even) {
    background-color: transparent;
    list-style-type: none;
  }

  #accordion_menu li a {
    background-color: #c1bcdc;
    padding: 10px;
    width: 100%;
    display: block;
  }

  #accordion_menu li.spmenu a {
    background-color: transparent;
    border-bottom: #ea609a;
    padding: 10px;
    width: 100%;
    display: block;
    color: #000;
  }

  .c-trigger .logo {
    display: none;
    width: 770%;
  }

  .c-trigger.active .logo {
    display: block;
    /* background-color: #b8b2d6; */
    float: left;
    margin-left: 340%;
    height: 74px;
    background-image: url(../img/header_footer/_sp_marryme_banner.png);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position-y: -0.3rem;
  }

  .spmenu .c-button {
    width: 100%;
    padding-left: 5%;
    text-align: left;
    font-size: 1.1rem;
  }

  .spmenu .c-button:hover {
    width: 100%;
    padding-left: 5%;
    text-align: left;
    background: rgba(0, 0, 0, 0) linear-gradient(transparent 70%, #b8b2d6) repeat scroll 0 0;
  }

  #spmenu01 {
    background-color: transparent;
    color: #000;
  }

  #spmenu01 li,
  #spmenu02 li,
  #spmenu03 li,
  #spmenu04 li,
  #spmenu05 li,
  #spmenu06 li {
    background-color: transparent;
    color: #000;
    list-style-type: none;
    font-size: 1rem;
  }

  .spmenu .c-button .toggle_btn {
    position: absolute;
    top: 30%;
    right: 7%;
    width: 10%;
    padding: 2% 0;
    cursor: pointer;
  }

  .spmenu .c-button .toggle_btn span {
    display: block;
    position: relative;
  }

  /* 二本の横棒を作成する */
  .spmenu .c-button .toggle_btn span::before,
  .spmenu .c-button .toggle_btn span::after {
    content: "";
    display: block;
    width: 15px;
    height: 3px;
    border-radius: 5px;
    background: blue;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 2本の横棒のうち一本は縦棒にする */
  .spmenu .c-button .toggle_btn span::after {
    background: #ed0200;
    /* 横棒を縦にするために90℃回転させる */
    transform: translateY(-50%) rotate(90deg);
    /* プラスからマイナスへの切り替えをゆっくり行いアニメーションさせる */
    transition: 0.5s;
  }

  .active::after {
    transform: rotate(0);
    transition: 0.5s;
    transform: 0;
  }

  .toggle_btn:before {
    width: 2px;
    height: 10px;
  }

  .stepcontent__option01_img,
  .stepcontent__option02_img,
  .stepcontent__option03_img,
  .stepcontent__option04_img {
    width: 100%;
    margin-bottom: 1rem;
    margin-top: -4rem;
  }

  .stepcontent__option01_img img,
  .stepcontent__option02_img img,
  .stepcontent__option03_img img,
  .stepcontent__option04_img img {
    float: none;
    width: 50%;
    margin: 0 auto;
    display: block;
  }

  .option01__description,
  .option02__description,
  .option03__description,
  .option04__description {
    width: 100%;
    float: left;
  }

  .uekusa_counseling {
    height: auto;
    background-image: url(../img/successfee/_seikon_uekusa_back.png);
    background-size: 90rem;
    background-repeat: no-repeat;
    background-position-x: 50%;
    background-position-y: 2.9rem;
    display: inline-block;
    width: 100%;
  }

  .uekusa_counseling .p-contents_hr_in {
    padding: 2rem !important;
    font-weight: bolder;
    margin-bottom: 4rem;
  }

  .p-content-wrap--exe .uekusa_img {
    text-align: center;
    margin: 10px auto 100px;
    display: block;
    margin: 0 auto;
    width: 100%;
  }

  .p-content-wrap--couple {
    padding: 15px;
  }
}


/*成婚料 end ******************************************************************************/

.u-br--pc .aks {
  display: inline-block;
}

.notice {
  text-align: center;
}

.instalinkbtn {
  padding: 10px 20px;
  color: #515554;
  background-color: #fce3e6;
  border-radius: 10px;
  border: 1px solid #ccc;
  margin: 25px auto;
  display: block;
}

.instalinkbtn:hover {
  opacity: 0.8;
}

.instalinkbtnouter {
  text-align: center;
  width: 27%;
  display: block;
  margin: 42px auto;
  height: 49px;
}

@media all and (max-width:767px) {
  .instalinkbtnouter {
    text-align: center;
    width: 70%;
    display: block;
    margin: 42px auto;
    height: 49px;
  }
}  