@charset "UTF-8";
/* CSS Document */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Noto+Serif+JP:wght@400;500;700&family=Roboto:wght@400;700;900&display=swap");
/*===============================================
 base
===============================================*/
/*===============================================
 reset
===============================================*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

section, article, aside, hgroup, header, footer, nav, dialog, figure, figcaption {
  display: block;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block;
}

ul,
ol {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/*===============================================
 responsive element
===============================================*/
.sp-inline {
  display: inline !important;
}

.sp-inline-block {
  display: inline-block !important;
}

.sp-block {
  display: block !important;
}

.sp-flex {
  display: flex !important;
}

.tb-inline {
  display: inline !important;
}

.tb-inline-block {
  display: inline-block !important;
}

.tb-block {
  display: block !important;
}

.tb-flex {
  display: flex !important;
}

.tb-only-inline,
.tb-only-inline-block,
.tb-only-block,
.tb-only-flex {
  display: none !important;
}

.pc-inline,
.pc-inline-block,
.pc-block,
.pc-flex {
  display: none !important;
}

@media only screen and (min-width: 769px) {
  .sp-inline,
  .sp-inline-block,
  .sp-block,
  .sp-flex {
    display: none !important;
  }
  .tb-only-inline {
    display: inline !important;
  }
  .tb-only-inline-block {
    display: inline-block !important;
  }
  .tb-only-block {
    display: block !important;
  }
  .tb-only-flex {
    display: flex !important;
  }
  .pc-inline {
    display: inline !important;
  }
  .pc-inline-block {
    display: inline-block !important;
  }
  .pc-block {
    display: block !important;
  }
  .pc-flex {
    display: flex !important;
  }
}

@media only screen and (min-width: 1280px) {
  .tb-inline,
  .tb-inline-block,
  .tb-block,
  .tb-flex {
    display: none !important;
  }
  .tb-only-inline,
  .tb-only-inline-block,
  .tb-only-block,
  .tb-only-flex {
    display: none !important;
  }
}

.issp {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  pointer-events: none;
}

@media only screen and (min-width: 769px) {
  .issp {
    display: none;
  }
}

@keyframes blink {
  0% {
    opacity: .5;
  }
  100% {
    opacity: 1;
  }
}

/*===============================================
 common
===============================================*/
img {
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
  transition: opacity .1s linear;
  backface-visibility: hidden;
  cursor: default;
}

a[href] {
  cursor: pointer;
}

a[href]:hover, a[href]:active {
  opacity: 0.7;
}

button,
input[type="submit"] {
  transition: opacity .1s linear;
}

button:hover, button:active,
input[type="submit"]:hover,
input[type="submit"]:active {
  opacity: 0.7;
}

.alt {
  display: none;
}

/*===============================================
 layout
===============================================*/
html {
  height: 100%;
  overflow: hidden;
  overflow-y: scroll;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}

@media only screen and (max-width: 768px) {
  html {
    font-size: 2.66667vw;
  }
}

@media only screen and (min-width: 769px) {
  html {
    font-size: 62.5%;
  }
}

body {
  min-height: 100%;
  color: #343434;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.125em;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

body.is-side-active {
  position: fixed;
  left: 0;
  width: 100%;
}

body.is-modal-visible {
  position: fixed;
  left: 0;
  width: 100%;
}

.l-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
}

body.spmenu--active .l-wrap {
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
}

/*===============================================
 header
===============================================*/
.l-header {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9;
  width: 100%;
  height: 13.33333vw;
  background-color: #ffffff;
  border-bottom: 1px solid #E3E3E3;
}

@media only screen and (min-width: 769px) {
  .l-header {
    height: 100px;
  }
}

@media only screen and (min-width: 1280px) {
  .l-header {
    position: absolute;
    height: 150px;
    border-bottom: 1px solid #333333;
  }
  body#home .l-header {
    background-color: transparent;
    border-bottom: 0;
  }
}

.l-header__in {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  padding: 0 15.46667vw 0 4.26667vw;
  box-sizing: border-box;
}

@media only screen and (min-width: 769px) {
  .l-header__in {
    padding: 0 120px 0 36px;
  }
}

@media only screen and (min-width: 1280px) {
  .l-header__in {
    position: static;
    padding: 0 60px;
  }
  body#home .l-header__in:after {
    position: absolute;
    right: 60px;
    bottom: 0;
    width: 100vw;
    height: 1px;
    background-color: #333333;
    content: '';
  }
}

.l-header__logo {
  width: 22.4vw;
}

@media only screen and (min-width: 769px) {
  .l-header__logo {
    position: absolute;
    left: 60px;
    width: 144px;
  }
}

.l-header__logo a,
.l-header__logo img {
  display: block;
}

@media only screen and (min-width: 769px) {
  .l-header__main {
    width: 100%;
  }
}

.l-header__top {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

@media only screen and (min-width: 769px) {
  .l-header__top {
    align-items: flex-start;
  }
}

.l-header__tel {
  display: none;
}

@media only screen and (min-width: 1280px) {
  .l-header__tel {
    display: block;
    margin-right: 30px;
  }
}

.l-header__tel p {
  color: #FFCC40;
  font-size: 3.0rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
}

.l-header__tel dl {
  display: flex;
  align-items: center;
  margin-top: 4px;
}

.l-header__tel dl dt {
  display: inline-block;
  border: 1px solid #333333;
  border-radius: 1em;
  padding: 0.2em 0.85em;
  margin-right: 0.5em;
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: 0.1em;
}

.l-header__tel dl dd {
  font-size: 1.6rem;
}

.l-header__util {
  display: flex;
}

.l-header__contact {
  display: none;
}

@media only screen and (min-width: 769px) {
  .l-header__contact {
    display: block;
    margin-left: 10px;
  }
}

.l-header__bottom {
  display: none;
}

@media only screen and (min-width: 1280px) {
  .l-header__bottom {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin-top: 20px;
  }
}

.l-header__nav ul {
  display: flex;
}

.l-header__nav ul li:not(:first-child) {
  margin-left: 30px;
}

.l-header__nav ul li .new {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 17px;
  margin-left: 3px;
  border-radius: 9px;
  background-color: #FFCC40;
  vertical-align: 3px;
  color: #ffffff;
  font-size: 1.0rem;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
}

/*===============================================
 footer
===============================================*/
.l-footer-contact {
  padding: 25.6vw 9.6vw 17.06667vw;
  background: url(../images/common/bg_footer_contact.jpg) no-repeat center top;
  background-size: cover;
}

@media only screen and (min-width: 769px) {
  .l-footer-contact {
    padding: 90px 36px 40px;
    background-image: url(../images/common/bg_footer_contact_pc.jpg);
  }
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__in {
    position: relative;
  }
  .l-footer-contact__in:before {
    position: absolute;
    left: -16px;
    top: -50px;
    color: #ffffff;
    font-size: 13.0rem;
    font-family: "Noto Serif JP", serif;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    opacity: 0.1;
    content: 'CONTACT';
  }
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__top {
    position: relative;
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__heading {
    padding-right: 15px;
  }
}

.l-footer-contact__ttl {
  text-align: center;
  color: #333333;
  font-size: 4.8vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__ttl {
    text-align: left;
    font-size: 2.6rem;
  }
}

.l-footer-contact__txt {
  margin-top: 3.2vw;
  text-align: center;
  color: #333333;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__txt {
    text-align: left;
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

.l-footer-contact__body {
  margin-top: 9.6vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__body {
    width: 380px;
    margin-top: -15px;
  }
}

.l-footer-contact__tel > p {
  text-align: center;
  font-size: 9.6vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__tel > p {
    font-size: 3.8rem;
  }
}

.l-footer-contact__tel > p > a {
  color: #FFCC40;
}

.l-footer-contact__tel > dl {
  display: flex;
  justify-content: center;
  color: #ffffff;
}

.l-footer-contact__tel > dl > dt {
  padding: 0 0.8em;
  border: 1px solid #ffffff;
  border-radius: 1em;
  color: #ffffff;
  font-size: 1.2rem;
}

.l-footer-contact__tel > dl > dd {
  margin-left: 0.8em;
  font-size: 1.4rem;
}

.l-footer-contact__email {
  margin-top: 8.53333vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__email {
    margin-top: 32px;
  }
}

.l-footer-contact__bottom {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__bottom {
    position: relative;
    margin-top: 40px;
  }
}

.l-footer-contact__detail {
  padding: 8.53333vw 5.33333vw;
  border: 1.86667vw solid rgba(255, 255, 255, 0.1);
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__detail {
    padding: 36px 32px;
    border-width: 7px;
  }
}

.l-footer-contact__sub {
  padding-bottom: 2.66667vw;
  border-bottom: 1px solid #FFCC40;
  color: #ffffff;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__sub {
    padding-bottom: 18px;
    font-size: 2.0rem;
  }
}

.l-footer-contact__list {
  margin-top: 2.66667vw;
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .l-footer-contact__list {
    margin-top: 20px;
    font-size: 1.8rem;
  }
}

.l-footer-contact__list li {
  list-style: disc outside;
  margin-left: 1.5em;
}

.l-footer-info {
  padding: 34.13333vw 6.4vw 12.8vw;
  background-color: #333333;
}

@media only screen and (min-width: 769px) {
  .l-footer-info {
    padding: 105px 36px 115px;
  }
}

@media only screen and (min-width: 769px) {
  .l-footer-info__heading {
    display: flex;
    justify-content: space-between;
  }
}

.l-footer-info__logo {
  width: 51.2vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__logo {
    width: 230px;
  }
}

.l-footer-info__addr {
  margin-top: 8.53333vw;
  color: #ffffff;
  font-size: 1.2rem;
  font-style: normal;
  line-height: 1.83333;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__addr {
    margin-top: 44px;
    font-size: 1.4rem;
    line-height: 1.75;
  }
}

@media only screen and (min-width: 1280px) {
  .l-footer-info__addr {
    font-size: 1.6rem;
  }
}

.l-footer-info__links {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__links {
    margin-top: 0;
  }
}

@media only screen and (min-width: 1280px) {
  .l-footer-info__buyer, .l-footer-info__recruit {
    display: flex;
    justify-content: space-between;
    width: 640px;
  }
}

.l-footer-info__buyer__txt, .l-footer-info__recruit__txt {
  padding: 2.13333vw 0 2.13333vw 4.26667vw;
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__buyer__txt, .l-footer-info__recruit__txt {
    padding: 6px 0 6px 18px;
  }
}

.l-footer-info__buyer__link, .l-footer-info__recruit__link {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__buyer__link, .l-footer-info__recruit__link {
    margin-top: 20px;
  }
}

.l-footer-info__buyer__link > a, .l-footer-info__recruit__link > a {
  max-width: 62.13333vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__buyer__link > a, .l-footer-info__recruit__link > a {
    max-width: 250px;
  }
}

@media only screen and (min-width: 1280px) {
  .l-footer-info__buyer__link > a, .l-footer-info__recruit__link > a {
    width: 250px;
  }
}

.l-footer-info__buyer__txt {
  border-left: solid 1.6vw #FFCC40;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__buyer__txt {
    border-left-width: 6px;
  }
}

.l-footer-info__recruit {
  margin-top: 12.26667vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__recruit {
    margin-top: 20px;
  }
}

.l-footer-info__recruit__txt {
  border-left: solid 1.6vw #3D495E;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__recruit__txt {
    border-left-width: 6px;
  }
}

.l-footer-info__nav {
  display: flex;
  margin-top: 11.2vw;
  padding-top: 12.8vw;
  border-top: 1px solid #ffffff;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__nav {
    margin-top: 40px;
    padding-top: 40px;
  }
}

@media only screen and (min-width: 1280px) {
  .l-footer-info__nav {
    width: 640px;
    margin-left: auto;
  }
}

.l-footer-info__nav ul {
  column-count: 2;
  font-size: 1.4rem;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__nav ul {
    column-count: 3;
    font-size: 1.6rem;
  }
}

.l-footer-info__nav ul li:not(:first-child) {
  margin-top: 9.6vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__nav ul li:not(:first-child) {
    margin-top: 28px;
  }
}

.l-footer-info__nav ul li a {
  color: #ffffff;
}

.l-footer-info__copyright {
  margin-top: 19.2vw;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__copyright {
    margin-top: 72px;
  }
}

@media only screen and (min-width: 1280px) {
  .l-footer-info__copyright {
    margin-top: -40px;
  }
}

.l-footer-info__copyright p {
  color: #ffffff;
  font-size: 1.0rem;
}

@media only screen and (min-width: 769px) {
  .l-footer-info__copyright p {
    font-size: 1.2rem;
  }
}

.l-side {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 11;
  width: 100%;
  height: 100vh;
  pointer-events: none;
  overflow: hidden;
  overflow-style: none;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.l-side::-webkit-scrollbar {
  display: none;
}

.l-side.is-active {
  pointer-events: auto;
  overflow-y: scroll;
}

@media only screen and (min-width: 1280px) {
  .l-side {
    display: none;
  }
}

.l-side__overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.l-side__in {
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #3D495E;
  transform: translateX(100%);
}

@media only screen and (min-width: 769px) {
  .l-side__in {
    width: 420px;
  }
}

body.is-ready .l-side__in {
  transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.l-side.is-active .l-side__in {
  transform: translateX(0%);
}

.l-side__head {
  display: flex;
  width: 100%;
  height: 13.33333vw;
  align-items: center;
  justify-content: space-between;
  padding: 0 15.46667vw 0 4.26667vw;
  box-sizing: border-box;
}

@media only screen and (min-width: 769px) {
  .l-side__head {
    height: 100px;
    padding: 0 120px 0 36px;
  }
}

.l-side__logo {
  width: 22.4vw;
}

@media only screen and (min-width: 769px) {
  .l-side__logo {
    display: none;
  }
}

.l-side__logo a,
.l-side__logo img {
  display: block;
}

.l-side__body {
  margin-top: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .l-side__body {
    margin-top: 16px;
  }
}

.l-side__nav {
  padding-bottom: 5.33333vw;
  font-size: 1.5rem;
}

@media only screen and (min-width: 769px) {
  .l-side__nav {
    padding-bottom: 20px;
    font-size: 1.6rem;
  }
}

.l-side__nav li a {
  display: block;
  padding: 1em 1.5em;
  color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .l-side__nav li a {
    padding: 1em 36px;
  }
}

.l-side__nav li a.is-active {
  background-color: #FFCC40;
}

.l-side__sitemap {
  padding: 8vw 4.26667vw 33.33333vw;
  background-color: #4E4E4E;
}

@media only screen and (min-width: 769px) {
  .l-side__sitemap {
    padding: 30px 36px 60px;
  }
}

.l-side__sitemap__ttl {
  position: relative;
  padding-left: 1.5em;
  padding-bottom: 0.6em;
  border-bottom: 1px solid #ffffff;
  color: #ffffff;
  font-size: 1.6rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .l-side__sitemap__ttl {
    font-size: 2.0rem;
  }
}

.l-side__sitemap__ttl:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 0.875em;
  height: 0.875em;
  border-radius: 50%;
  background-color: #FFCC40;
  content: '';
}

.l-side__sitemap__list {
  columns: 2;
  margin: 8.53333vw 4.26667vw 0;
  font-size: 1.4rem;
}

@media only screen and (min-width: 769px) {
  .l-side__sitemap__list {
    margin: 32px 0 0;
    font-size: 1.6rem;
  }
}

.l-side__sitemap__list li:not(:first-child) {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .l-side__sitemap__list li:not(:first-child) {
    margin-top: 40px;
  }
}

.l-side__sitemap__list li a {
  color: #ffffff;
}

.l-side__switch {
  position: absolute;
  right: 5.86667vw;
  top: 3.73333vw;
  width: 5.86667vw;
  height: 5.86667vw;
  pointer-events: auto;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .l-side__switch {
    right: 44px;
    top: 28px;
    width: 44px;
    height: 44px;
  }
}

.l-side__switch .border {
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #333333;
  transition: opacity 0.4s, background-color 0.4s, transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.l-side__switch .border:nth-child(2) {
  transform: translateY(-1.6vw);
}

@media only screen and (min-width: 769px) {
  .l-side__switch .border:nth-child(2) {
    transform: translateY(-12px);
  }
}

.l-side__switch .border:nth-child(3) {
  transform: translateY(1.6vw);
}

@media only screen and (min-width: 769px) {
  .l-side__switch .border:nth-child(3) {
    transform: translateY(12px);
  }
}

.l-side.is-active .l-side__switch .border {
  background-color: #ffffff;
}

.l-side.is-active .l-side__switch .border:nth-child(1) {
  opacity: 0;
}

.l-side.is-active .l-side__switch .border:nth-child(2) {
  transform: translateY(0vw) rotate(45deg);
}

@media only screen and (min-width: 769px) {
  .l-side.is-active .l-side__switch .border:nth-child(2) {
    transform: translateY(0px) rotate(45deg);
  }
}

.l-side.is-active .l-side__switch .border:nth-child(3) {
  transform: translateY(0vw) rotate(-45deg);
}

@media only screen and (min-width: 769px) {
  .l-side.is-active .l-side__switch .border:nth-child(3) {
    transform: translateY(0px) rotate(-45deg);
  }
}

/*===============================================
 contact
===============================================*/
.contact {
  position: fixed;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

@media only screen and (max-width: 768px) {
  .contact {
    display: none;
  }
}

.contact > a {
  display: block;
  width: 120px;
  height: 320px;
  background: url(../images/common/contact.png) no-repeat;
}

/*===============================================
 main
===============================================*/
.l-main {
  padding-top: 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .l-main {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 1280px) {
  .l-main {
    padding-top: 150px;
  }
  body#home .l-main {
    padding-top: 0;
  }
}

.l-in {
  position: relative;
}

@media only screen and (min-width: 1280px) {
  .l-in {
    max-width: 1320px;
    padding-left: 60px;
    padding-right: 60px;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
  }
}

.l-container {
  width: 100%;
  background-color: #F2F4F5;
}

@media only screen and (min-width: 769px) {
  .l-container {
    display: flex;
  }
}

.l-left {
  display: none;
}

@media only screen and (min-width: 1280px) {
  .l-left {
    order: 1;
    flex: 0 0 auto;
    display: block;
    width: 224px;
    background-color: #ffffff;
  }
}

.l-right {
  padding: 5.86667vw 4.26667vw 8vw;
}

@media only screen and (min-width: 769px) {
  .l-right {
    order: 3;
    flex: 0 0 auto;
    width: 30.625vw;
    padding: 60px 5.3125vw 90px 1.17188vw;
  }
}

@media only screen and (min-width: 1280px) {
  .l-right {
    width: 392px;
  }
}

@media only screen and (min-width: 769px) {
  .l-center {
    order: 2;
    flex: 1 1 auto;
  }
}

.p-buyer-index .l-center {
  padding: 10.66667vw 2.13333vw 21.33333vw;
  background: linear-gradient(#E7F0F5, #FDF2ED);
}

@media only screen and (min-width: 769px) {
  .p-buyer-index .l-center {
    background: transparent;
    padding: 0 0 90px;
    width: calc( 100% - 392px);
  }
}

@media only screen and (min-width: 1280px) {
  .p-buyer-index .l-center {
    width: calc( 100% - 224px - 392px);
  }
}

.p-buyer-single .l-center {
  width: 100%;
}

@media only screen and (min-width: 1280px) {
  .p-buyer-single .l-center {
    width: calc( 100% - 224px);
  }
}

/*===============================================
 modules
===============================================*/
.m-accordion__switch {
  position: relative;
  cursor: pointer;
}

.m-accordion__switch:after {
  position: absolute;
  right: 5.33333vw;
  top: 50%;
  width: 1.6vw;
  height: 1.6vw;
  border-top: 1px solid #3D495E;
  border-right: 1px solid #3D495E;
  transform: translateY(-50%) rotate(135deg);
  transition: transform .3s;
  content: '';
}

@media only screen and (min-width: 769px) {
  .m-accordion__switch:after {
    right: 20px;
    width: 6px;
    height: 6px;
  }
}

.m-accordion.is-expanded .m-accordion__switch:after {
  transform: translateY(-50%) rotate(-45deg);
}

.m-accordion__target {
  display: none;
}

.m-bookmark__ttl {
  font-size: 1.6rem;
  font-weight: 500;
}

.m-bookmark__ttl small {
  color: #808080;
  font-size: 1.2rem;
}

.m-bookmark__list {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-bookmark__list {
    margin-top: 20px;
  }
}

.m-bookmark__link {
  width: 272px;
  margin: 9.33333vw auto 0;
}

@media only screen and (min-width: 769px) {
  .m-bookmark__link {
    margin: 50px auto 0;
  }
}

.m-btn01 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 13.33333vw;
  border: 0;
  outline: 0;
  color: #ffffff;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .m-btn01 {
    height: 80px;
    font-size: 2.0rem;
  }
}

.m-btn01[disabled] {
  background-color: #bbbbbb !important;
  pointer-events: none;
  cursor: default;
}

.m-btn01--rounded {
  border-radius: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-btn01--rounded {
    border-radius: 10px;
  }
}

.m-btn01--small {
  height: 10.13333vw;
  font-size: 1.2rem;
}

@media only screen and (min-width: 769px) {
  .m-btn01--small {
    height: 50px;
    font-size: 1.5rem;
  }
}

@media only screen and (min-width: 769px) {
  .m-btn01--pcsmall {
    height: 50px;
    font-size: 1.5rem;
  }
}

@media only screen and (min-width: 769px) {
  .m-btn01--middle {
    height: 60px;
    font-size: 1.8rem;
  }
}

.m-btn01--multiline-sp {
  line-height: 1.2;
}

@media only screen and (min-width: 769px) {
  .m-btn01--multiline-sp {
    line-height: 1;
  }
}

.m-btn01--color01 {
  background-color: #ffffff;
  color: #FFCC40;
}

.m-btn01--color01-border {
  border: 2px solid #FFCC40;
  background-color: #ffffff;
  color: #FFCC40;
}

.m-btn01--color02 {
  background-color: #3D495E;
}

.m-btn01--color03 {
  background-color: #FFCC40;
}

.m-btn01--color06 {
  background-color: #4E4E4E;
}

.m-btn02 {
  display: block;
  padding: 1.42em;
  background-color: #ffffff;
  border: 0;
  outline: 0;
  text-align: center;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

@media only screen and (min-width: 1280px) {
  .m-btn02 {
    padding: 1.3125em;
    font-size: 1.6rem;
  }
}

.m-btn02--inline {
  display: inline-block;
  padding: 1.42em 3.42em;
}

.m-btn02--color02 {
  color: #3D495E;
}

.m-btn02--color03 {
  color: #FFCC40;
}

.m-btn03 {
  display: block;
  padding: 1.8125em;
  border: 0;
  outline: 0;
  text-align: center;
  color: #ffffff;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .m-btn03 {
    padding: 1.45em;
    font-size: 1.6rem;
  }
}

.m-btn03--small {
  padding: 1.25em;
  font-size: 1.0rem;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .m-btn03--small {
    font-size: 1.4rem;
  }
}

.m-btn03--middle {
  padding: 1.285em;
  font-size: 1.4rem;
}

.m-btn03--color01 {
  background-color: #ffffff;
  color: #3D495E;
}

.m-btn03--color02 {
  background-color: #3D495E;
}

.m-btn03--color03 {
  background-color: #FFCC40;
}

.m-buyer-item01:not(:first-child) {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item01:not(:first-child) {
    margin-top: 20px;
  }
}

.m-buyer-item01__box {
  padding: 5.33333vw;
  border-radius: 3.46667vw;
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item01__box {
    padding: 20px;
    border-radius: 13px;
  }
}

.m-buyer-item01__link {
  position: relative;
  display: block;
  width: 100%;
  padding-right: 7.46667vw;
  box-sizing: border-box;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item01__link {
    padding-right: 28px;
  }
}

a.m-buyer-item01__link:before {
  position: absolute;
  right: 1.06667vw;
  top: 50%;
  width: 1.6vw;
  height: 1.6vw;
  border-top: 1px solid #193B64;
  border-right: 1px solid #193B64;
  transform: translateY(-50%) rotate(45deg);
  content: '';
}

@media only screen and (min-width: 769px) {
  a.m-buyer-item01__link:before {
    right: 4px;
    width: 6px;
    height: 6px;
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item01__company {
    display: flex;
  }
}

.m-buyer-item01__status {
  display: inline-block;
  padding: 0.1em 1em;
  background-color: #3E6A9D;
  color: #ffffff;
  font-size: 1.0rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  white-space: nowrap;
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item01__status {
    display: flex;
    align-items: center;
  }
}

.m-buyer-item01__ttl {
  font-size: 1.5rem;
  font-weight: 400;
}

.m-buyer-item01__ttl:not(:first-child) {
  margin-top: 2.13333vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item01__ttl:not(:first-child) {
    margin-top: 12px;
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item01__ttl:not(:first-child) {
    margin-top: 0;
    padding-left: 0.9em;
  }
}

.m-buyer-item01__detail {
  padding-top: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item01__detail {
    padding-top: 28px;
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item01__detail {
    margin-top: 28px;
    margin-left: auto;
    padding-top: 0;
    border-top: 0;
  }
}

.m-buyer-item01__detail dl {
  display: flex;
  width: 100%;
}

.m-buyer-item01__detail dl:not(:first-child) {
  margin-top: 1.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item01__detail dl:not(:first-child) {
    margin-top: 6px;
  }
}

.m-buyer-item01__detail dl dt {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6em;
  padding: 0.1em 0.8em;
  background-color: #F2F4F5;
  text-align: center;
  font-size: 1.1rem;
  letter-spacing: 0.05em;
}

.m-buyer-item01__detail dl dd {
  display: flex;
  align-items: center;
  padding: 0.1em 0 0.1em 1em;
  font-size: 1.2rem;
}

.m-buyer-item02:not(:first-child) {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02:not(:first-child) {
    margin-top: 60px;
  }
}

.m-buyer-item02__box {
  padding: 5.33333vw;
  border-radius: 3.46667vw;
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__box {
    padding: 20px;
    border-radius: 13px;
  }
}

.m-buyer-item02__link {
  position: relative;
  display: block;
  width: 100%;
  padding-right: 7.46667vw;
  box-sizing: border-box;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__link {
    padding-right: 28px;
  }
}

a.m-buyer-item02__link:before {
  position: absolute;
  right: 1.06667vw;
  top: 50%;
  width: 1.6vw;
  height: 1.6vw;
  border-top: 1px solid #193B64;
  border-right: 1px solid #193B64;
  transform: translateY(-50%) rotate(45deg);
  content: '';
}

@media only screen and (min-width: 769px) {
  a.m-buyer-item02__link:before {
    right: 4px;
    width: 6px;
    height: 6px;
  }
}

.m-buyer-item02__link:after {
  clear: both;
  display: table;
  width: 100%;
  content: '';
}

.m-buyer-item02__thumb {
  float: left;
  display: block;
  width: 24vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__thumb {
    width: 15.46875vw;
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item02__thumb {
    width: 198px;
  }
}

.m-buyer-item02__thumb img {
  display: block;
  width: 100%;
}

.m-buyer-item02__info {
  float: right;
  width: calc( 100% - 27.2vw);
  margin-left: auto;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__info {
    width: calc( 100% - 17.03125vw);
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item02__info {
    width: calc( 100% - 198px - 20px);
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item02__company {
    display: flex;
  }
}

.m-buyer-item02__status {
  display: inline-block;
  padding: 0.1em 1em;
  background-color: #3E6A9D;
  color: #ffffff;
  font-size: 1.0rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  white-space: nowrap;
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item02__status {
    display: flex;
    align-items: center;
  }
}

.m-buyer-item02__ttl {
  font-size: 1.5rem;
  font-weight: 400;
}

.m-buyer-item02__ttl:not(:first-child) {
  margin-top: 2.13333vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__ttl:not(:first-child) {
    margin-top: 12px;
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item02__ttl:not(:first-child) {
    margin-top: 0;
    padding-left: 0.9em;
  }
}

.m-buyer-item02__detail {
  clear: both;
  width: 100%;
  padding-top: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__detail {
    padding-top: 28px;
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item02__detail {
    clear: none;
    float: right;
    width: calc( 100% - 17.03125vw);
    margin-top: 28px;
    margin-left: auto;
    padding-top: 0;
    border-top: 0;
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item02__detail {
    width: calc( 100% - 198px - 20px);
  }
}

.m-buyer-item02__detail dl {
  display: flex;
  width: 100%;
}

.m-buyer-item02__detail dl:not(:first-child) {
  margin-top: 1.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__detail dl:not(:first-child) {
    margin-top: 6px;
  }
}

.m-buyer-item02__detail dl dt {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6em;
  padding: 0.1em 0.8em;
  background-color: #F2F4F5;
  text-align: center;
  font-size: 1.1rem;
  letter-spacing: 0.05em;
}

.m-buyer-item02__detail dl dd {
  display: flex;
  align-items: center;
  padding: 0.1em 0 0.1em 1em;
  font-size: 1.2rem;
}

.m-buyer-item02__intro {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__intro {
    margin-top: 32px;
  }
}

.m-buyer-item02__intro__ttl {
  padding: 2.13333vw 0;
  border-radius: 4.26667vw 4.26667vw 0 0;
  background-color: #3D495E;
  text-align: center;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 500;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__intro__ttl {
    padding: 8px 0;
    border-radius: 16px 16px 0 0;
  }
}

.m-buyer-item02__intro__txt {
  padding: 6.66667vw 5.33333vw;
  background-color: #FAFAFA;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.38462;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__intro__txt {
    padding: 25px 35px;
  }
}

.m-buyer-item02__foot {
  display: flex;
  margin-top: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__foot {
    margin-top: 22px;
  }
}

.m-buyer-item02__keywords {
  width: calc( 100% - 14.93333vw);
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__keywords {
    width: calc( 100% - 40px - 16px);
  }
}

.m-buyer-item02__keywords__ttl {
  font-size: 1.3rem;
  font-weight: 400;
}

.m-buyer-item02__keywords__list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 2.13333vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__keywords__list {
    margin-top: 8px;
  }
}

.m-buyer-item02__keywords__list li {
  margin: 0 1.6vw 1.6vw 0;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__keywords__list li {
    margin: 0 6px 6px 0;
  }
}

.m-buyer-item02__keywords__list li a {
  padding: 0.2em 1em;
  border: 1px solid #3D495E;
  border-radius: 1.2em;
  background-color: #F2F4F5;
  color: #3D495E;
  font-size: 1.0rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  white-space: nowrap;
}

.m-buyer-item02__bookmark {
  width: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__bookmark {
    width: 40px;
  }
}

.m-buyer-item02__bookmark button {
  width: 10.66667vw;
  height: 13.86667vw;
  padding: 0;
  border: 0;
  background: transparent url(../images/common/btn_bookmark.svg) no-repeat center center;
  background-size: contain;
  transition: background-image .2s;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__bookmark button {
    width: 40px;
    height: 52px;
  }
}

.m-buyer-item02__bookmark button.is-active {
  background-image: url(../images/common/btn_bookmark_on.svg);
}

.m-buyer-item02__limited {
  margin-top: 9.33333vw;
  padding: 9.33333vw 5.33333vw 10.66667vw;
  border-radius: 2.66667vw;
  background-color: #FAFAFA;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__limited {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
    padding: 20px;
    border-radius: 10px;
  }
}

.m-buyer-item02__limited__ttl {
  text-align: center;
  color: #3D495E;
  font-size: 1.3rem;
  font-weight: 700;
}

.m-buyer-item02__limited__ttl:before {
  display: block;
  width: 12.26667vw;
  height: 12.26667vw;
  margin: 0 auto 1.6vw;
  background: url(../images/common/ico_limited.svg) no-repeat;
  background-size: 100% 100%;
  content: '';
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__limited__ttl:before {
    width: 46px;
    height: 46px;
    margin: 0 auto 6px;
  }
}

.m-buyer-item02__limited__txt {
  margin-top: 5.33333vw;
  font-size: 1.6rem;
  line-height: 1.75;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__limited__txt {
    margin-top: 0;
    margin-left: 36px;
  }
}

.m-buyer-item02__limited__txt em {
  color: #FFCC40;
  font-style: normal;
  text-decoration: underline;
}

.m-buyer-item02__util {
  display: flex;
  justify-content: space-between;
  width: 89.33333vw;
  margin: 5.33333vw auto 0;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__util {
    width: 44.21875vw;
    margin: 28px auto 0;
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item02__util {
    width: 566px;
  }
}

.m-buyer-item02__util p {
  width: 42.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-buyer-item02__util p {
    width: 21.25vw;
  }
}

@media only screen and (min-width: 1280px) {
  .m-buyer-item02__util p {
    width: 272px;
  }
}

.m-disabled {
  pointer-events: none;
}

.m-editor01 .m-accordion:not(:first-child) {
  margin-top: 6.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-editor01 .m-accordion:not(:first-child) {
    margin-top: 25px;
  }
}

.m-editor01 h3 {
  padding: 0.5em 0.8em;
  background-color: #F2F4F5;
  color: #4E4E4E;
  font-size: 1.6rem;
  font-weight: 500;
}

.m-editor01 h3:not(:first-child) {
  margin-top: 6.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-editor01 h3:not(:first-child) {
    margin-top: 25px;
  }
}

.m-editor01 h3:not(:last-child) {
  margin-bottom: 4vw;
}

@media only screen and (min-width: 769px) {
  .m-editor01 h3:not(:last-child) {
    margin-bottom: 15px;
  }
}

.m-editor01 h4 {
  position: relative;
  padding-left: 1.5em;
  color: #193B64;
  font-size: 1.4rem;
  font-weight: 500;
}

.m-editor01 h4:before {
  position: absolute;
  left: 0;
  top: 0.375em;
  width: 0.9em;
  height: 0.9em;
  border-radius: 3px;
  background-color: #193B64;
  content: '';
}

.m-editor01 h4:not(:first-child) {
  margin-top: 8.53333vw;
}

@media only screen and (min-width: 769px) {
  .m-editor01 h4:not(:first-child) {
    margin-top: 40px;
  }
}

.m-editor01 h4:not(:last-child) {
  margin-bottom: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .m-editor01 h4:not(:last-child) {
    margin-bottom: 24px;
  }
}

.m-editor01 p {
  color: #3D495E;
  font-size: 1.3rem;
  line-height: 1.2;
}

.m-editor01 p:not(:first-child) {
  margin-top: 1.84615em;
}

.m-editor01 table {
  width: 100%;
  border: 0;
  border-collapse: collapse;
  font-size: 1.2rem;
  line-height: 1.2;
}

@media only screen and (min-width: 769px) {
  .m-editor01 table {
    font-size: 1.3rem;
  }
}

.m-editor01 table th,
.m-editor01 table td {
  padding: 0.8em 1em;
  border-bottom: 1px solid #E3E3E3;
}

.m-editor01 table th {
  width: 6em !important;
  text-align: left;
  color: #193B64;
  font-weight: 500;
}

@media only screen and (min-width: 769px) {
  .m-editor01 table th {
    width: 10em !important;
  }
}

.m-editor01 table td {
  width: auto !important;
  text-align: left;
  color: #000000;
  font-weight: 400;
}

.m-editor02 h2 {
  position: relative;
  padding: 0 0 4.26667vw 3.73333vw;
  margin-top: 14.93333vw;
  margin-bottom: 9.6vw;
  border-bottom: 1px solid #3D495E;
  color: #3D495E;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.59091;
}

@media only screen and (min-width: 769px) {
  .m-editor02 h2 {
    padding: 0 0 16px 14px;
    margin-top: 80px;
    margin-bottom: 52px;
    font-size: 2.2rem;
  }
}

.m-editor02 h2:first-child {
  margin-top: 0;
}

.m-editor02 h2:before {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 4.26667vw;
  display: block;
  width: 1.6vw;
  background-color: #3D495E;
  content: '';
}

@media only screen and (min-width: 769px) {
  .m-editor02 h2:before {
    bottom: 16px;
    width: 6px;
  }
}

.m-editor02 h3 {
  position: relative;
  margin-top: 9.6vw;
  margin-bottom: 7.46667vw;
  padding-left: 1.2em;
  color: #000000;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
}

@media only screen and (min-width: 769px) {
  .m-editor02 h3 {
    margin-top: 50px;
    margin-bottom: 50px;
    font-size: 2.0rem;
  }
}

.m-editor02 h3:first-child {
  margin-top: 0;
}

.m-editor02 h3:before {
  position: absolute;
  left: 0;
  top: 0.1em;
  font-weight: 500;
  content: '－';
}

.m-editor02 h4 {
  position: relative;
  margin-top: 4.8vw;
  margin-bottom: 4.8vw;
  padding: 0 0 0 1.4em;
  color: #3D495E;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.94444;
}

@media only screen and (min-width: 769px) {
  .m-editor02 h4 {
    margin-top: 28px;
    margin-bottom: 28px;
    font-size: 1.8rem;
  }
}

.m-editor02 h4:first-child {
  margin-top: 0;
}

.m-editor02 h4:before {
  position: absolute;
  left: 0;
  top: 0.5em;
  width: 1em;
  height: 1em;
  border-radius: 3px;
  background-color: #3D495E;
  content: '';
}

.m-editor02 p {
  margin-top: 1.84615em;
  color: #3D495E;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.84615;
}

.m-editor02 p:first-child {
  margin-top: 0;
}

.m-editor02 blockquote {
  background-color: #F2F4F5;
  padding: 4.26667vw 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-editor02 blockquote {
    padding: 16px 20px;
  }
}

.m-editor02 blockquote:not(:first-child) {
  margin-top: 9.6vw;
}

@media only screen and (min-width: 769px) {
  .m-editor02 blockquote:not(:first-child) {
    margin-top: 36px;
  }
}

.m-editor02 blockquote:not(:last-child) {
  margin-bottom: 9.6vw;
}

@media only screen and (min-width: 769px) {
  .m-editor02 blockquote:not(:last-child) {
    margin-bottom: 36px;
  }
}

.m-editor02 blockquote p {
  color: #4E4E4E;
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 2.18182;
}

.m-heading__ttl {
  text-align: center;
  color: #3D495E;
}

.m-heading__ttl__en {
  font-size: 3.0rem;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 1280px) {
  .m-heading__ttl__en {
    font-size: 6.0rem;
  }
}

.m-heading__ttl__ja {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 1280px) {
  .m-heading__ttl__ja {
    font-size: 3.2rem;
  }
}

.m-heading__ttl__en + .m-heading__ttl__ja {
  margin-top: 1em;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1;
}

@media only screen and (min-width: 1280px) {
  .m-heading__ttl__en + .m-heading__ttl__ja {
    font-size: 1.8rem;
  }
}

.m-icon {
  display: inline-block;
  width: 1.1em;
  height: 1.1em;
  margin-right: 0.5em;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  vertical-align: -0.1em;
}

.m-icon--home {
  background-image: url(../images/common/ico_home.svg);
}

.m-icon--home-w {
  background-image: url(../images/common/ico_home_w.svg);
}

.m-icon--edit {
  background-image: url(../images/common/ico_edit.svg);
}

.m-icon--edit-w {
  background-image: url(../images/common/ico_edit_w.svg);
}

.m-icon--edit-r {
  background-image: url(../images/common/ico_edit_r.svg);
}

.m-icon--check {
  background-image: url(../images/common/ico_check.svg);
}

.m-icon--check-w {
  background-image: url(../images/common/ico_check_w.svg);
}

.m-icon--bookmark {
  background-image: url(../images/common/ico_bookmark.svg);
}

.m-icon--bookmark-r {
  background-image: url(../images/common/ico_bookmark_r.svg);
}

.m-icon--search {
  background-image: url(../images/common/ico_search.svg);
}

.m-icon--search-g {
  background-image: url(../images/common/ico_search_g.svg);
}

.m-icon--buyer {
  background-image: url(../images/common/ico_buyer.svg);
}

.m-icon--membership {
  background-image: url(../images/common/ico_membership.svg);
}

.m-icon--membership-w {
  background-image: url(../images/common/ico_membership_w.svg);
}

.m-icon--logout {
  background-image: url(../images/common/ico_logout.svg);
}

.m-icon--logout-w {
  background-image: url(../images/common/ico_logout_w.svg);
}

.m-icon--limited {
  background-image: url(../images/common/ico_limited.svg);
}

.m-icon--help {
  background-image: url(../images/common/ico_help.svg);
}

.m-icon--blank {
  background-image: url(../images/common/ico_blank.svg);
}

.m-icon--contact-w {
  background-image: url(../images/common/ico_contact_w.svg);
}

.m-icon--membership-r {
  background-image: url(../images/common/ico_membership_r.svg);
}

.m-input-group--inline li {
  display: inline-block;
}

.m-input-text, .m-input-textarea, .m-input-select {
  border: 1px solid #3D495E;
  padding: 1em;
  background-color: #FAFAFA;
  font-size: 1.5rem;
}

.m-input-text {
  display: inline-block;
}

.m-input-text--name {
  width: 8em;
}

.m-input-text--full {
  display: block;
  width: 100%;
  box-sizing: border-box;
}

.m-input-textarea {
  display: block;
  width: 100%;
  height: 8em;
  box-sizing: border-box;
  padding: 1em;
  resize: none;
}

.m-input-textarea[readonly] {
  height: 15em;
  font-size: 1.3rem;
  line-height: 1.46154;
}

.m-input-select {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 1em;
}

.m-input-notes {
  color: #F07A5F;
  font-size: 1.6rem;
  font-weight: 500;
}

.m-input-checkbox, .m-input-radio {
  display: inline-block;
  font-size: 1.3rem;
}

.m-input-checkbox input, .m-input-radio input {
  display: none;
}

.m-input-checkbox span, .m-input-radio span {
  position: relative;
  display: inline-block;
  padding-left: 1.5em;
  font-size: inherit;
}

.m-input-checkbox span:before, .m-input-radio span:before {
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 1em;
  height: 1em;
  border: 1px solid #4E4E4E;
  content: '';
}

.m-input-checkbox span small, .m-input-radio span small {
  font-size: 100%;
  letter-spacing: 0.05em;
}

.m-input-checkbox input[type="checkbox"] + span:before, .m-input-radio input[type="checkbox"] + span:before {
  border-radius: 0.8vw;
}

@media only screen and (min-width: 769px) {
  .m-input-checkbox input[type="checkbox"] + span:before, .m-input-radio input[type="checkbox"] + span:before {
    border-radius: 3px;
  }
}

.m-input-checkbox input[type="checkbox"]:checked + span:before, .m-input-radio input[type="checkbox"]:checked + span:before {
  background: #FFCC40 url(../images/common/ico_check_w.svg) no-repeat center center;
  background-size: 0.85em auto;
}

.m-input-checkbox input[type="radio"] + span:before, .m-input-radio input[type="radio"] + span:before {
  border-radius: 50%;
}

.m-input-checkbox input[type="radio"]:checked + span:before, .m-input-radio input[type="radio"]:checked + span:before {
  background: #ffffff url(../images/common/ico_check_circle.svg) no-repeat center center;
  background-size: 0.7em auto;
}

div.m-input-textarea {
  height: 15em;
  overflow: hidden;
  overflow-y: scroll;
  font-size: 1.3rem;
  line-height: 1.46154;
}

div.m-input-textarea a {
  text-decoration: underline;
}

.m-links {
  position: relative;
  padding-top: 10.66667vw;
  background-color: #F2F4F5;
}

@media only screen and (min-width: 769px) {
  .m-links {
    padding: 75px 0 90px;
  }
}

@media only screen and (min-width: 769px) {
  .m-links__container {
    display: flex;
    justify-content: space-between;
  }
}

.m-links-item {
  position: relative;
}

.m-links-item:before {
  position: absolute;
  left: 0;
  right: 0;
  top: 22.93333vw;
  bottom: 0;
  border-top: 1px solid #3D495E;
  border-bottom: 1px solid #3D495E;
  pointer-events: none;
  content: '';
}

.m-links-item:not(:first-child) {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .m-links-item:not(:first-child) {
    margin-top: 0;
  }
}

.m-links-item__thumb {
  position: relative;
  width: 100%;
  background-color: #ffffff;
}

.m-links-item__thumb a,
.m-links-item__thumb img {
  display: block;
  width: 100%;
}

.m-links-item__info {
  position: relative;
  margin-top: 4.8vw;
}

@media only screen and (min-width: 769px) {
  .m-links-item__info {
    margin-top: 28px;
  }
}

.m-links-item__ttl {
  color: #3D495E;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .m-links-item__ttl {
    font-size: 2.4rem;
  }
}

.m-links-item__txt {
  margin-top: 4.8vw;
  color: #3D495E;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.71429;
  letter-spacing: 0.125em;
}

@media only screen and (min-width: 769px) {
  .m-links-item__txt {
    margin-top: 16px;
    font-size: 1.4rem;
  }
}

@media only screen and (min-width: 1280px) {
  .m-links-item__txt {
    font-size: 1.6rem;
  }
}

.m-links-item__link {
  width: 73.06667vw;
  margin: 7.46667vw auto 0;
}

@media only screen and (min-width: 769px) {
  .m-links-item__link {
    width: 100%;
    max-width: 274px;
    margin-top: 18px;
  }
}

@media only screen and (min-width: 769px) {
  .m-links--2 .m-links__in {
    max-width: 1440px;
    padding-left: 60px;
    padding-right: 60px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
  }
}

@media only screen and (min-width: 769px) {
  .m-links--2 .m-links__container {
    display: flex;
    justify-content: space-between;
    padding: 0 2.8125vw;
  }
}

.m-links--2 .m-links-item {
  position: relative;
  padding: 0 10.13333vw 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-links--2 .m-links-item {
    width: calc( 100% * 560 / 1200);
    padding: 0 5.07813vw 3.125vw;
    box-sizing: border-box;
  }
  .m-links--2 .m-links-item:first-child {
    margin-left: calc( 100% * 20 / 1200);
  }
  .m-links--2 .m-links-item:last-child {
    margin-right: calc( 100% * 20 / 1200);
  }
}

@media only screen and (min-width: 1280px) {
  .m-links--2 .m-links-item {
    padding: 0 65px 40px;
  }
}

@media only screen and (min-width: 769px) {
  .m-links--2 .m-links-item:before {
    top: 9.53125vw;
    border-left: 1px solid #3D495E;
    border-right: 1px solid #3D495E;
  }
}

@media only screen and (min-width: 1280px) {
  .m-links--2 .m-links-item:before {
    top: 126px;
  }
}

@media only screen and (min-width: 769px) {
  .m-links--3 .m-links__container {
    max-width: 1440px;
    padding-left: 25px;
    padding-right: 25px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
  }
}

.m-links--3 .m-links-item {
  padding: 0 10.13333vw 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-links--3 .m-links-item {
    width: calc( 100% / 3);
    padding: 0 25px 40px;
    box-sizing: border-box;
  }
}

@media only screen and (min-width: 769px) {
  .m-links--3 .m-links-item:before {
    display: none;
  }
}

.m-list-decimal01 {
  padding-left: 2.5em;
  list-style-type: decimal;
}

.m-list-decimal02 {
  padding-left: 4.5em;
  list-style: none;
  counter-reset: li_count;
}

.m-list-decimal02 > li {
  text-indent: -2.5em;
}

.m-list-decimal02 > li:before {
  counter-increment: li_count;
  content: "(" counter(li_count) ") ";
}

.m-list-decimal01 .m-list-decimal02 {
  padding-left: 2.5em;
}

.m-listhead {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  margin: 10.66667vw 2.66667vw 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-listhead {
    margin: 30px 30px 20px;
  }
}

.m-listhead__count {
  font-size: 1.3rem;
}

.m-listhead__count span {
  font-family: "Roboto", sans-serif;
  letter-spacing: 0.05em;
}

.m-listhead__sort {
  position: relative;
  width: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .m-listhead__sort {
    width: 20px;
  }
}

.m-listhead__sort__switch {
  display: block;
  width: 4.26667vw;
  height: 4.26667vw;
  background: url(../images/common/ico_sort.svg) no-repeat center center;
  background-size: 100% auto;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .m-listhead__sort__switch {
    width: 20px;
    height: 20px;
  }
}

.m-listhead__sort > ul {
  position: absolute;
  right: -3.2vw;
  top: calc( 100% + 1.33333vw);
  width: 29.33333vw;
  padding: 1.33333vw;
  background-color: #ffffff;
  border-radius: 2.66667vw;
  box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.16);
  font-size: 1.1rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s;
}

@media only screen and (min-width: 769px) {
  .m-listhead__sort > ul {
    right: -20px;
    top: calc( 100% + 14px);
    width: 126px;
    padding: 6px;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    font-size: 1.2rem;
  }
}

.m-listhead__sort > ul:before {
  position: absolute;
  right: 3.73333vw;
  top: -2.4vw;
  width: 0;
  height: 0;
  border-bottom: 2.4vw solid #ffffff;
  border-left: 1.86667vw solid transparent;
  border-right: 1.86667vw solid transparent;
  content: '';
}

@media only screen and (min-width: 769px) {
  .m-listhead__sort > ul:before {
    right: 22px;
    top: -9px;
    border-bottom-width: 9px;
    border-left-width: 7px;
    border-right-width: 7px;
  }
}

.m-listhead__sort > ul > li > a {
  display: block;
  padding: 1.33333vw;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .m-listhead__sort > ul > li > a {
    padding: 6px;
  }
}

.m-listhead__sort.is-expanded > ul {
  opacity: 1;
  pointer-events: auto;
}

.m-lnav ul {
  font-size: 1.5rem;
}

.m-lnav ul li {
  border-bottom: 1px solid #C6C6C6;
}

.m-lnav ul li a {
  display: block;
  padding: 20px 22px;
  color: #3D495E;
}

.m-lnav ul li a.is-active {
  background-color: #F28A73;
}

.m-modal {
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s;
}

.m-modal.is-visible {
  opacity: 1;
  pointer-events: auto;
}

.m-modal__overlay {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(78, 78, 78, 0.67);
}

.m-modal__in {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  padding-top: 21.33333vw;
  padding-bottom: 21.33333vw;
  overflow: auto;
}

@media only screen and (min-width: 769px) {
  .m-modal__in {
    align-items: center;
    padding-top: 180px;
    padding-bottom: 180px;
  }
}

.m-modal__box {
  width: 90.66667vw;
  padding: 8.53333vw 5.33333vw 11.73333vw;
  margin: 0 auto;
  box-sizing: border-box;
  border-radius: 3.46667vw;
  background-color: #F2F4F5;
}

@media only screen and (min-width: 769px) {
  .m-modal__box {
    width: 745px;
    padding: 50px 30px;
    border-radius: 13px;
  }
}

.m-mv {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 30.66667vw;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media only screen and (min-width: 769px) {
  .m-mv {
    height: 196px;
  }
}

.m-mv--contact {
  background-image: url(../images/contact/mv.jpg);
}

@media only screen and (min-width: 1440px) {
  .m-mv--contact {
    background-image: url(../images/contact/mv@2x.jpg);
  }
}

.m-mv--document {
  background-image: url(../images/document/mv.jpg);
}

@media only screen and (min-width: 1440px) {
  .m-mv--document {
    background-image: url(../images/document/mv@2x.jpg);
  }
}

.m-mv--membership {
  background-image: url(../images/membership/mv.jpg);
}

@media only screen and (min-width: 1440px) {
  .m-mv--membership {
    background-image: url(../images/membership/mv@2x.jpg);
  }
}

.m-mv--case {
  background-image: url(../images/case/mv.jpg);
}

@media only screen and (min-width: 1440px) {
  .m-mv--case {
    background-image: url(../images/case/mv@2x.jpg);
  }
}

.m-mv--movie {
  background-image: url(../images/movie/mv.jpg);
}

@media only screen and (min-width: 1440px) {
  .m-mv--movie {
    background-image: url(../images/movie/mv@2x.jpg);
  }
}

.m-mv--news {
  background-image: url(../images/news/mv.jpg);
}

@media only screen and (min-width: 1440px) {
  .m-mv--news {
    background-image: url(../images/news/mv@2x.jpg);
  }
}

.m-mv:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #3D495E;
  opacity: 0.9;
  content: '';
}

.m-mv__in {
  position: relative;
}

.m-mv__ttl {
  color: #ffffff;
  text-align: center;
}

.m-mv__ttl__en {
  font-size: 4.0rem;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
}

@media only screen and (min-width: 1280px) {
  .m-mv__ttl__en {
    font-size: 6.0rem;
  }
}

.m-mv__ttl__ja {
  font-size: 1.5rem;
  font-weight: 500;
}

@media only screen and (min-width: 1280px) {
  .m-mv__ttl__ja {
    font-size: 1.8rem;
  }
}

.m-mv__ttl__ja:first-child {
  font-size: 2.8rem;
  font-weight: 700;
}

@media only screen and (min-width: 1280px) {
  .m-mv__ttl__ja:first-child {
    font-size: 4.0rem;
  }
}

.m-mypage-news {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 10;
  width: 100%;
  background-color: #ffffff;
  border-top: 1px solid #9B9B9B;
}

.m-mypage-news.is-hidden {
  display: none;
}

.m-mypage-news.is-anim-hidden {
  transition: opacity .3s, transform .3s;
  transform: translateY(100%);
  opacity: 0;
}

.m-mypage-news__in {
  padding: 10px 18px;
}

.m-mypage-news__in dl {
  display: flex;
  font-size: 1.5rem;
}

.m-mypage-news__in dl dt {
  padding: 10px 20px 10px 0;
  color: #FFCC40;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
}

.m-mypage-news__in dl dd {
  padding: 10px 20px;
  border-left: 1px solid #C6C6C6;
  font-weight: 700;
}

.m-mypage-news__close {
  position: absolute;
  right: 0;
  top: 0;
  width: 26px;
  height: 26px;
  padding: 0;
  border: 0;
  background-color: #4E4E4E;
  cursor: pointer;
}

.m-mypage-news__close:before, .m-mypage-news__close:after {
  position: absolute;
  left: 6px;
  top: 50%;
  width: 14px;
  height: 1px;
  background-color: #ffffff;
  content: '';
}

.m-mypage-news__close:before {
  transform: rotate(-45deg);
}

.m-mypage-news__close:after {
  transform: rotate(45deg);
}

.m-overlay {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0;
}

.m-overlay.is-visible {
  transition: opacity .3s;
  opacity: 1;
  pointer-events: auto;
}

.m-overlay__box {
  position: absolute;
  left: 0;
  top: 80vw;
  width: 100%;
  padding: 19.2vw 8vw;
  box-sizing: border-box;
  border-radius: 4vw;
  background-color: rgba(61, 73, 94, 0.93);
}

@media only screen and (min-width: 769px) {
  .m-overlay__box {
    width: 750px;
    max-width: 100%;
    left: 0;
    right: 0;
    top: 200px;
    margin: auto;
    padding: 72px 30px;
    border-radius: 15px;
  }
}

.m-overlay__ttl {
  text-align: center;
  color: #ffffff;
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1.42857;
}

.m-overlay__ttl--small {
  font-size: 1.7rem;
}

@media only screen and (min-width: 769px) {
  .m-overlay__ttl--small {
    font-size: 2.8rem;
  }
}

.m-overlay__txt {
  margin-top: 11.2vw;
  text-align: center;
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 500;
}

@media only screen and (min-width: 769px) {
  .m-overlay__txt {
    margin-top: 42px;
  }
}

.m-overlay__links {
  margin-top: 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-overlay__links {
    margin-top: 50px;
  }
}

.m-overlay__links p {
  max-width: 334px;
  margin-left: auto;
  margin-right: auto;
}

.m-overlay__links p:not(:first-child) {
  margin-top: 6.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-overlay__links p:not(:first-child) {
    margin-top: 25px;
  }
}

.m-pager ul {
  display: flex;
  justify-content: center;
}

.m-pager ul li {
  margin: 0 2px;
}

.m-pager ul li > a,
.m-pager ul li > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6.4vw;
  height: 6.4vw;
  padding-left: 0.53333vw;
  padding-top: 0.53333vw;
  border-radius: 1.06667vw;
  box-sizing: border-box;
  text-align: center;
  color: #ffffff;
  font-size: 1.4rem;
  font-family: "Roboto", sans-serif;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .m-pager ul li > a,
  .m-pager ul li > span {
    width: 24px;
    height: 24px;
    padding-left: 2px;
    padding-top: 2px;
    border-radius: 4px;
  }
}

.m-pager ul li > a {
  background-color: #BAC1CC;
}

.m-pager ul li > span {
  background-color: #3D495E;
}

.m-profbox__in {
  display: flex;
  align-items: center;
}

.m-profbox__pic {
  width: 21.33333vw;
  border-radius: 50%;
  overflow: hidden;
}

@media only screen and (min-width: 769px) {
  .m-profbox__pic {
    width: 100px;
  }
}

.m-profbox__pic img {
  display: block;
}

.m-profbox__info:not(:first-child) {
  padding-left: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .m-profbox__info:not(:first-child) {
    padding-left: 24px;
  }
}

.m-profbox__name {
  display: flex;
  font-size: 1.4rem;
}

@media only screen and (min-width: 769px) {
  .m-profbox__name {
    font-size: 1.6rem;
  }
}

.m-profbox__name dt:after {
  margin: 0 0.25em;
  content: '：';
}

.m-profbox__edit {
  margin-top: 0.6em;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .m-profbox__edit {
    font-size: 1.6rem;
  }
}

.m-profbox__edit a {
  color: #F07A5F;
  text-decoration: underline;
}

.m-proftable__box {
  padding: 0 4vw;
  background-color: #ffffff;
  border-radius: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-proftable__box {
    padding: 0 35px;
    border-radius: 13px;
  }
}

.m-proftable__box dl {
  display: flex;
  padding: 4vw 0;
  font-size: 1.4rem;
}

@media only screen and (min-width: 769px) {
  .m-proftable__box dl {
    padding: 25px 0;
    font-size: 1.6rem;
  }
}

.m-proftable__box dl:not(:first-child) {
  border-top: 1px solid #C6C6C6;
}

.m-proftable__box dl dt {
  width: 7.5em;
  flex: 0 0 auto;
  color: #193B64;
}

.m-proftable__box dl dd {
  flex: 1 1 auto;
  padding-left: 6.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-proftable__box dl dd {
    padding-left: 55px;
  }
}

.m-proftable__link {
  width: 272px;
  margin: 9.33333vw auto 0;
}

@media only screen and (min-width: 769px) {
  .m-proftable__link {
    margin: 50px auto 0;
  }
}

.m-recommended {
  padding-top: 12.26667vw;
  padding-bottom: 12.26667vw;
  background-color: #3D495E;
}

@media only screen and (min-width: 769px) {
  .m-recommended {
    padding-top: 46px;
    padding-bottom: 60px;
  }
}

.m-recommended__ttl {
  text-align: center;
  color: #ffffff;
  font-size: 3.0rem;
  font-weight: 500;
}

.m-recommended__container {
  position: relative;
  width: 100%;
  margin-top: 11.2vw;
  overflow: hidden;
}

@media only screen and (min-width: 769px) {
  .m-recommended__container {
    margin-top: 50px;
  }
}

.m-recommended__slider {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.m-recommended__prev, .m-recommended__next {
  position: absolute;
  top: 50%;
  z-index: 2;
  width: 9.86667vw;
  height: 11.2vw;
  transform: translateY(-50%);
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .m-recommended__prev, .m-recommended__next {
    width: 54px;
    height: 62px;
  }
}

.m-recommended__prev {
  left: 0.53333vw;
  background: url(../images/common/btn_slider_prev03.svg) no-repeat;
  background-size: 100% 100%;
}

@media only screen and (min-width: 769px) {
  .m-recommended__prev {
    left: 22px;
  }
}

.m-recommended__next {
  right: 0.53333vw;
  background: url(../images/common/btn_slider_next03.svg) no-repeat;
  background-size: 100% 100%;
}

@media only screen and (min-width: 769px) {
  .m-recommended__next {
    right: 22px;
  }
}

.m-recommended-item {
  width: 100vw;
  padding: 0 5.33333vw;
  box-sizing: border-box;
}

@media only screen and (min-width: 769px) {
  .m-recommended-item {
    width: 747px;
    padding: 0 25px;
  }
}

.m-recommended__link {
  width: 72.8vw;
  margin: 10.66667vw auto 0;
}

@media only screen and (min-width: 769px) {
  .m-recommended__link {
    width: 273px;
    margin: 45px auto 0;
  }
}

.m-searchbox {
  padding-bottom: 8vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox {
    padding: 24px 22px 40px;
    background-color: #193B64;
    border-radius: 10px;
  }
}

.m-searchbox-sect:not(:first-child) {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-sect:not(:first-child) {
    margin-top: 20px;
  }
}

.m-searchbox-sect__ttl {
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.075em;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-sect__ttl {
    color: #ffffff;
  }
}

.m-searchbox-sect__body {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-sect__body {
    margin-top: 12px;
  }
}

.m-searchbox-freeword {
  display: flex;
  justify-content: space-between;
}

.m-searchbox-freeword__input {
  position: relative;
  width: calc( 100% - 20vw);
  font-size: 1.4rem;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-freeword__input {
    width: calc( 100% - 66px - 10px);
  }
}

.m-searchbox-freeword__input input {
  display: block;
  width: 100%;
  padding: 1em;
  border: 1px solid #C6C6C6;
  border-radius: 1.33333vw;
  box-sizing: border-box;
  font-size: 1.4rem;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-freeword__input input {
    border-radius: 5px;
  }
}

.m-searchbox-freeword__input i {
  position: absolute;
  left: 1em;
  top: 1em;
  visibility: hidden;
  pointer-events: none;
}

.m-searchbox-freeword__input input:placeholder-shown + i {
  visibility: visible;
}

.m-searchbox-freeword__input input:focus + i,
.m-searchbox-freeword__input input:not(:placeholder-shown) + i {
  visibility: hidden;
}

.m-searchbox-freeword__submit {
  width: 17.6vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-freeword__submit {
    width: 66px;
  }
}

.m-searchbox-freeword__submit button {
  display: block;
  width: 100%;
  padding: 1.1em;
  background-color: #FFCC40;
  border: 0;
  border-radius: 1.33333vw;
  box-sizing: border-box;
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.125em;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-freeword__submit button {
    border-radius: 5px;
  }
}

.m-searchbox-bloc:not(:first-child) {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-bloc:not(:first-child) {
    margin-top: 10px;
  }
}

.m-searchbox-bloc__head {
  position: relative;
  background-color: #3D495E;
  padding: 0.76923em;
  text-align: center;
  color: #ffffff;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-bloc__head {
    background-color: #FFCC40;
  }
}

.m-searchbox-bloc__head:after {
  position: absolute;
  right: 3.2vw;
  top: 50%;
  width: 1.6vw;
  height: 1.6vw;
  border-top: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
  transform: translateY(-50%) rotate(135deg);
  transition: transform .2s;
  content: '';
}

@media only screen and (min-width: 769px) {
  .m-searchbox-bloc__head:after {
    right: 12px;
    width: 6px;
    height: 6px;
  }
}

.m-searchbox-bloc.is-expanded .m-searchbox-bloc__head:after {
  transform: translateY(-50%) rotate(-45deg);
}

.m-searchbox-bloc__body {
  padding: 0 0 4.26667vw 0;
  display: none;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-bloc__body {
    padding: 15px 0 10px;
    background-color: #ffffff;
  }
}

.m-searchbox-parent {
  display: flex;
  align-items: center;
  padding: 4.26667vw 1.06667vw 1.06667vw 2.66667vw;
  border-bottom: 1px solid #E3E3E3;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-parent {
    display: block;
    padding: 6px 12px;
    border-bottom: 0;
  }
}

.m-searchbox-parent > span {
  flex: 0 0 auto;
  width: 5em;
  color: #193B64;
  font-size: 1.3rem;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-parent > span {
    display: block;
    width: 100%;
    margin-bottom: 12px;
  }
  .m-searchbox-parent > span br {
    display: none;
  }
}

.m-searchbox-parent > ul {
  display: flex;
  flex-wrap: wrap;
}

.m-searchbox-parent > ul li {
  margin: 0 0.5em 0.75em 0;
}

.m-searchbox-container {
  padding: 4.26667vw 1.06667vw 1.06667vw 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-container {
    padding: 6px 12px;
  }
}

.m-searchbox li.m-searchbox-container {
  padding: 4.26667vw 2.66667vw;
  border-bottom: 1px solid #E3E3E3;
}

@media only screen and (min-width: 769px) {
  .m-searchbox li.m-searchbox-container {
    padding: 6px 10px;
    border-bottom: 0;
  }
}

.m-searchbox-list--vertical > li:not(:first-child) {
  margin-top: 0.75em;
}

.m-searchbox-list--horizontal {
  display: flex;
}

.m-searchbox-list--horizontal > li {
  margin: 0 0.5em 0.75em 0;
}

.m-searchbox-item {
  font-size: 1.3rem;
}

.m-searchbox-item label {
  display: inline-block;
}

.m-searchbox-item label input {
  display: none;
}

.m-searchbox-item label span {
  position: relative;
  display: inline-block;
  padding-left: 1.5em;
}

.m-searchbox-item label span:before {
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 1em;
  height: 1em;
  border: 1px solid #4E4E4E;
  content: '';
}

.m-searchbox-item label span small {
  font-size: 100%;
  letter-spacing: 0.05em;
}

.m-searchbox-item label input[type="checkbox"] + span:before {
  border-radius: 0.8vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-item label input[type="checkbox"] + span:before {
    border-radius: 3px;
  }
}

.m-searchbox-item label input[type="checkbox"]:checked + span:before {
  background: #FFCC40 url(../images/common/ico_check_w.svg) no-repeat center center;
  background-size: 0.85em auto;
}

.m-searchbox-item label input[type="radio"] + span:before {
  border-radius: 1.86667vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-item label input[type="radio"] + span:before {
    border-radius: 7px;
  }
}

.m-searchbox-item label input[type="radio"]:checked + span:before {
  background: #ffffff url(../images/common/ico_check_circle.svg) no-repeat center center;
  background-size: 0.7em auto;
}

.m-searchbox-submit {
  padding: 8vw 0;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-submit {
    padding: 40px 0;
  }
}

.m-searchbox-filters {
  padding-top: 4vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-filters {
    padding: 15px 10px;
  }
}

.m-searchbox-filters__table {
  width: 100%;
  font-size: 1.2rem;
}

.m-searchbox-filters__table tbody th {
  white-space: nowrap;
}

.m-searchbox-filters__table tbody th span {
  display: block;
  padding: 0.1em 0.5em;
  background-color: #E3E3E3;
}

.m-searchbox-filters__table tbody td {
  padding-left: 1em;
}

.m-searchbox-filters__table tbody tr:not(:first-child) th,
.m-searchbox-filters__table tbody tr:not(:first-child) td {
  padding-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-searchbox-filters__table tbody tr:not(:first-child) th,
  .m-searchbox-filters__table tbody tr:not(:first-child) td {
    padding-top: 10px;
  }
}

.m-situationbox__box {
  padding: 0 4vw;
  background-color: #ffffff;
  border-radius: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-situationbox__box {
    padding: 0 35px;
    border-radius: 13px;
  }
}

.m-situationbox__box dl {
  display: flex;
  padding: 4vw 0;
  font-size: 1.4rem;
}

@media only screen and (min-width: 769px) {
  .m-situationbox__box dl {
    padding: 25px 0;
    font-size: 1.6rem;
  }
}

.m-situationbox__box dl:not(:first-child) {
  border-top: 1px solid #C6C6C6;
}

.m-situationbox__box dl dt {
  color: #193B64;
}

.m-situationbox__box dl dd {
  padding-left: 6.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-situationbox__box dl dd {
    padding-left: 55px;
  }
}

.m-situationbox__link {
  width: 272px;
  margin: 9.33333vw auto 0;
}

@media only screen and (min-width: 769px) {
  .m-situationbox__link {
    margin: 50px auto 0;
  }
}

.m-slider01__prev, .m-slider01__next {
  position: absolute;
  top: 50%;
  z-index: 2;
  width: 9.86667vw;
  height: 11.2vw;
  transform: translateY(-50%);
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .m-slider01__prev, .m-slider01__next {
    width: 54px;
    height: 62px;
  }
}

.m-slider01__prev {
  left: -4.8vw;
  background: url(../images/common/btn_slider_prev01.svg) no-repeat;
  background-size: 100% 100%;
}

@media only screen and (min-width: 769px) {
  .m-slider01__prev {
    left: -27px;
  }
}

.m-slider01__prev.is-dark {
  background-image: url(../images/common/btn_slider_prev02.svg);
}

.m-slider01__next {
  right: -4.8vw;
  background: url(../images/common/btn_slider_next01.svg) no-repeat;
  background-size: 100% 100%;
}

@media only screen and (min-width: 769px) {
  .m-slider01__next {
    right: -27px;
  }
}

.m-slider01__next.is-dark {
  background-image: url(../images/common/btn_slider_next02.svg);
}

.m-slider01-item > a {
  position: relative;
}

.m-slider01-item > a.is-video:after {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 12.26667vw;
  height: 12.26667vw;
  margin: auto;
  background: url(../images/common/ico_play.svg) no-repeat;
  background-size: 100% 100%;
  content: '';
}

@media only screen and (min-width: 769px) {
  .m-slider01-item > a.is-video:after {
    width: 60px;
    height: 60px;
  }
}

.m-slider02 {
  position: relative;
  width: 100%;
}

.m-slider02__container {
  position: relative;
  display: flex;
}

.m-slider02-item {
  flex: 0 0 auto;
  width: 59.73333vw;
  margin: 0 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .m-slider02-item {
    width: 300px;
    margin: 0 20px;
  }
}

.m-slider02-item__thumb {
  position: relative;
  width: 59.73333vw;
  height: 40vw;
}

@media only screen and (min-width: 769px) {
  .m-slider02-item__thumb {
    width: 300px;
    height: 200px;
  }
}

.m-slider02-item__thumb > a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}

.m-slider02-item__thumb img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.m-slider02-item__info {
  position: relative;
  padding: 7.46667vw 0 0 0;
}

@media only screen and (min-width: 769px) {
  .m-slider02-item__info {
    padding: 32px 0 0 0;
  }
}

.m-slider02-item__logo {
  position: absolute;
  left: 0;
  right: 0;
  top: -6.13333vw;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48vw;
  height: 12.26667vw;
  margin: auto;
  background: url(../images/home/bg_connection_logo.svg) no-repeat center center;
  background-size: contain;
}

@media only screen and (min-width: 769px) {
  .m-slider02-item__logo {
    top: -30px;
    width: 220px;
    height: 60px;
  }
}

.m-slider02-item__logo > img {
  display: block;
  width: auto;
  max-height: 36px;
}

@media only screen and (min-width: 769px) {
  .m-slider02-item__logo > img {
    max-height: 52px;
  }
}

.m-slider02-item__ttl {
  text-align: center;
  font-size: 1.0rem;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .m-slider02-item__ttl {
    font-size: 1.2rem;
  }
}

.m-slider02-item__txt {
  margin-top: 1em;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .m-slider02-item__txt {
    font-size: 1.6rem;
    line-height: 1.75;
  }
}

.m-topicpath {
  background-color: #F2F4F5;
  overflow-x: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.m-topicpath::-webkit-scrollbar {
  display: none;
}

.m-topicpath ul {
  display: flex;
  padding: 4.26667vw;
  white-space: nowrap;
  font-size: 1.2rem;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .m-topicpath ul {
    padding: 20px 30px;
  }
}

.m-topicpath ul li {
  position: relative;
}

.m-topicpath ul li:not(:first-child) {
  padding-left: 1.83333em;
}

.m-topicpath ul li:not(:first-child):before {
  position: absolute;
  left: 0.5em;
  top: 50%;
  width: 0.45em;
  height: 0.45em;
  border-right: 1px solid #FFCC40;
  border-top: 1px solid #FFCC40;
  transform: translateY(-50%) rotate(45deg);
  content: '';
}

.m-topicpath ul li:last-child {
  padding-right: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .m-topicpath ul li:last-child {
    padding-right: 30px;
  }
}

.m-ttl01 {
  position: relative;
  padding: 0 0 0.6em 0.8em;
  border-bottom: 1px solid #3D495E;
  color: #3D495E;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.27273;
}

.m-ttl01:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 1.6vw;
  height: 1.27273em;
  background-color: #3D495E;
  content: '';
}

@media only screen and (min-width: 769px) {
  .m-ttl01:before {
    width: 6px;
  }
}

/*===============================================
 pages
===============================================*/
.p-acqisition-kv {
  position: relative;
  padding: 40vw 9.6vw 18.13333vw;
  background: url(../images/acqisition/bg_kv.jpg) no-repeat center center;
  background-size: cover;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-kv {
    padding: 5.27778vw 0 5.13889vw;
    background-image: url(../images/acqisition/bg_kv_pc.jpg);
  }
}

@media only screen and (min-width: 1280px) {
  .p-acqisition-kv {
    padding: 76px 0 74px;
  }
}

@media only screen and (min-width: 769px) {
  .p-acqisition-kv__in {
    max-width: 1200px;
    padding-left: 12px;
    padding-right: 12px;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-acqisition-kv__ttl {
  position: absolute;
  left: 0;
  top: 14.66667vw;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 56vw;
  height: 14.66667vw;
  padding-left: 8vw;
  box-sizing: border-box;
  background: url(../images/acqisition/bg_kv_ttl.svg) no-repeat;
  background-size: 100% 100%;
  color: #343434;
  font-size: 5.6vw;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-kv__ttl {
    position: relative;
    top: 0;
    width: 298px;
    height: 79px;
    padding-left: 43px;
    font-size: 3.2rem;
  }
}

.p-acqisition-kv__ttl em {
  color: #F07A5F;
  font-style: normal;
}

.p-acqisition-kv__catch {
  display: block;
  color: #ffffff;
  font-size: 6.93333vw;
  font-weight: 700;
  line-height: 1.38462;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-kv__catch {
    margin-top: 28px;
    font-size: 4.5rem;
    line-height: 1.44444;
  }
}

.p-acqisition-kv__txt {
  margin-top: 5.86667vw;
  color: #ffffff;
  font-size: 4vw;
  font-weight: 500;
  line-height: 1.53333;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-kv__txt {
    margin-top: 48px;
    font-size: 1.5rem;
  }
}

.p-acqisition-kv__notes {
  margin-top: 3.73333vw;
  color: #ffffff;
  font-size: 3.46667vw;
  font-weight: 500;
  line-height: 1.76923;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-kv__notes {
    margin-top: 18px;
    font-size: 1.3rem;
  }
}

.p-acqisition-kv__link {
  margin-top: 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-kv__link {
    margin-top: 32px;
    width: 380px;
  }
}

.p-acqisition-case {
  position: relative;
  padding: 19.2vw 9.86667vw 16.53333vw;
  background-color: #F2F4F5;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case {
    padding: 116px 12px 120px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-acqisition-case {
    padding: 116px 0 120px;
  }
}

.p-acqisition-case:before {
  position: absolute;
  left: -39.46667vw;
  top: 21.86667vw;
  color: #3D495E;
  font-size: 18.66667vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 0;
  white-space: nowrap;
  opacity: 0.1;
  content: 'Features of Case';
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case:before {
    left: 50%;
    top: 124px;
    font-size: 13.0rem;
    transform: translateX(-50%);
  }
}

.p-acqisition-case__ttl {
  text-align: center;
  color: #3D495E;
  font-size: 5.86667vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case__ttl {
    font-size: 2.6rem;
  }
}

.p-acqisition-case__container {
  margin-top: 17.06667vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case__container {
    display: flex;
    justify-content: space-between;
    margin-top: 96px;
  }
}

.p-acqisition-case-item {
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case-item {
    width: calc( 100% * 360 / 1175);
  }
}

.p-acqisition-case-item:not(:first-child) {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case-item:not(:first-child) {
    margin-top: 0;
  }
}

.p-acqisition-case-item__heading {
  padding: 8.53333vw 0 7.46667vw;
  border-bottom: 4px solid #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case-item__heading {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 136px;
    padding: 0;
  }
}

.p-acqisition-case-item__ttl {
  text-align: center;
  color: #F07A5F;
  font-size: 5.86667vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case-item__ttl {
    font-size: 2.6rem;
  }
}

.p-acqisition-case-item__body {
  padding: 9.6vw 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case-item__body {
    padding: 48px 40px;
  }
}

.p-acqisition-case-item__body p {
  font-size: 4.26667vw;
  line-height: 1.75;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case-item__body p {
    font-size: 1.6rem;
  }
}

.p-acqisition-case-item__body ul li {
  position: relative;
  padding-left: 1.44444em;
  font-size: 5.33333vw;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case-item__body ul li {
    font-size: 1.8rem;
  }
}

.p-acqisition-case-item__body ul li:not(:first-child) {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-case-item__body ul li:not(:first-child) {
    margin-top: 20px;
  }
}

.p-acqisition-case-item__body ul li:before {
  position: absolute;
  left: 0;
  top: 0.35em;
  width: 1.11111em;
  height: 1.05556em;
  background: url(../images/acqisition/ico_point.svg) no-repeat;
  background-size: contain;
  content: '';
}

.p-acqisition-service {
  position: relative;
  padding: 19.2vw 9.86667vw 16.53333vw;
  background-color: #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service {
    padding: 116px 12px 120px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-acqisition-service {
    padding: 116px 0 120px;
  }
}

.p-acqisition-service:before {
  position: absolute;
  left: -39.46667vw;
  top: 21.86667vw;
  color: #ffffff;
  font-size: 18.66667vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 0;
  white-space: nowrap;
  opacity: 0.1;
  content: 'Features of Service';
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service:before {
    left: 50%;
    top: 124px;
    font-size: 13.0rem;
    transform: translateX(-50%);
  }
}

.p-acqisition-service__ttl {
  text-align: center;
  color: #ffffff;
  font-size: 5.86667vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service__ttl {
    font-size: 2.6rem;
  }
}

.p-acqisition-service__container {
  margin-top: 17.06667vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service__container {
    display: flex;
    justify-content: space-between;
    margin-top: 96px;
  }
}

.p-acqisition-service-item {
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service-item {
    width: calc( 100% * 360 / 1175);
  }
}

.p-acqisition-service-item:not(:first-child) {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service-item:not(:first-child) {
    margin-top: 0;
  }
}

.p-acqisition-service-item__heading {
  padding: 8.53333vw 0 7.46667vw;
  border-bottom: 4px solid #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service-item__heading {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 136px;
    padding: 0;
  }
}

.p-acqisition-service-item__ttl {
  text-align: center;
  color: #F07A5F;
  font-size: 6.93333vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service-item__ttl {
    font-size: 2.6rem;
  }
}

.p-acqisition-service-item__body {
  padding: 9.6vw 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service-item__body {
    padding: 48px 40px;
  }
}

.p-acqisition-service-item__body p {
  font-size: 4.26667vw;
  line-height: 1.75;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service-item__body p {
    font-size: 1.6rem;
  }
}

.p-acqisition-service-item__body ul li {
  position: relative;
  padding-left: 1.44444em;
  font-size: 5.33333vw;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service-item__body ul li {
    font-size: 1.8rem;
  }
}

.p-acqisition-service-item__body ul li:not(:first-child) {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-service-item__body ul li:not(:first-child) {
    margin-top: 20px;
  }
}

.p-acqisition-service-item__body ul li:before {
  position: absolute;
  left: 0;
  top: 0.35em;
  width: 1.11111em;
  height: 1.05556em;
  background: url(../images/acqisition/ico_point.svg) no-repeat;
  background-size: contain;
  content: '';
}

.p-acqisition-category {
  position: relative;
  padding: 22.93333vw 8.53333vw 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-category {
    padding: 120px 12px 48px;
  }
}

.p-acqisition-category:before {
  position: absolute;
  left: 8vw;
  top: 17.06667vw;
  color: #3D495E;
  font-size: 18.66667vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0em;
  white-space: nowrap;
  opacity: 0.1;
  content: 'Category';
}

@media only screen and (min-width: 769px) {
  .p-acqisition-category:before {
    left: 50%;
    top: 68px;
    font-size: 13.0rem;
    transform: translateX(-50%);
  }
}

.p-acqisition-category__ttl {
  text-align: center;
  color: #3D495E;
  font-size: 5.86667vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-category__ttl {
    font-size: 2.6rem;
  }
}

.p-acqisition-category__txt {
  margin-top: 22.93333vw;
  color: #193B64;
  font-size: 6.93333vw;
  font-weight: 700;
  line-height: 1.38462;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-category__txt {
    margin-top: 145px;
    text-align: center;
    font-size: 3.2rem;
  }
}

.p-acqisition-category__txt em {
  color: #F07A5F;
  font-style: normal;
}

.p-acqisition-category__container {
  width: 65.06667vw;
  margin: 16vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-category__container {
    display: flex;
    width: 100%;
    max-width: 932px;
    margin: 78px auto 0;
  }
}

@media only screen and (min-width: 769px) {
  .p-acqisition-category__container > dl {
    width: calc( 100% * 244 / 932);
  }
}

.p-acqisition-category__container > dl:not(:first-child) {
  margin-top: 11.2vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-category__container > dl:not(:first-child) {
    margin-top: 0;
    margin-left: calc( 100% * 100 / 932);
  }
}

.p-acqisition-category__container > dl dt {
  padding-bottom: 1.6vw;
  border-bottom: 1px solid #DBDBDB;
  text-align: center;
  color: #193B64;
  font-size: 6.93333vw;
  font-weight: 500;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-category__container > dl dt {
    padding-bottom: 12px;
    font-size: 2.6rem;
  }
}

.p-acqisition-category__container > dl dd {
  padding-top: 6.4vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-category__container > dl dd {
    padding-top: 26px;
  }
}

.p-acqisition-category__graph {
  display: block;
}

.p-acqisition-category__graph img {
  display: block;
  width: 100%;
}

.p-acqisition-example {
  padding: 12.8vw 9.6vw;
  background-color: #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example {
    padding: 76px 12px 80px;
  }
}

.p-acqisition-example__ttl {
  color: #ffffff;
  font-size: 9.06667vw;
  font-weight: 700;
  line-height: 1.35294;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example__ttl {
    text-align: center;
    font-size: 4.0rem;
  }
}

.p-acqisition-example__ttl em {
  color: #F07A5F;
  font-style: normal;
}

.p-acqisition-example__container {
  margin: 10.66667vw 0 0 0;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example__container {
    margin: 60px 0 0 0;
  }
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example__container dl {
    display: flex;
    justify-content: space-between;
  }
}

.p-acqisition-example__container dl:not(:first-child) {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example__container dl:not(:first-child) {
    margin-top: 30px;
  }
}

.p-acqisition-example__container dl dt {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  height: 21.86667vw;
  padding: 4.8vw 0 0 0;
  box-sizing: border-box;
  background: url(../images/acqisition/bg_category_item_ttl.svg) no-repeat center bottom;
  background-size: 100% 100%;
  color: #ffffff;
  font-size: 5.86667vw;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example__container dl dt {
    position: relative;
    align-items: center;
    width: 216px;
    height: auto;
    padding: 0;
    background-image: none;
    background-color: #F07A5F;
    font-size: 2.4rem;
    line-height: 1.375;
  }
  .p-acqisition-example__container dl dt:after {
    position: absolute;
    left: 100%;
    top: 50%;
    width: 0;
    height: 0;
    border-left: 24px solid #F07A5F;
    border-top: 29px solid transparent;
    border-bottom: 29px solid transparent;
    transform: translateY(-50%);
    content: '';
  }
}

.p-acqisition-example__container dl dd {
  margin-top: 4.8vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example__container dl dd {
    margin-top: 0;
    width: calc( 100% - 266px);
    padding: 25px 0 5px;
  }
}

.p-acqisition-example__container dl dd ul:after {
  clear: both;
  display: table;
  content: '';
}

.p-acqisition-example__container dl dd ul li {
  float: left;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc( 50% - 1.33333vw);
  height: 13.33333vw;
  background-color: #ffffff;
  border-radius: 6.66667vw;
  text-align: center;
  color: #3D495E;
  font-size: 3.73333vw;
  font-weight: 700;
  line-height: 1.28571;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example__container dl dd ul li {
    width: auto;
    height: 40px;
    padding: 0 1em;
    border-radius: 20px;
    margin: 0 16px 20px 0;
    font-size: 2.0rem;
  }
}

.p-acqisition-example__container dl dd ul li:nth-child(n+3) {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example__container dl dd ul li:nth-child(n+3) {
    margin-top: 0;
  }
}

.p-acqisition-example__container dl dd ul li:nth-child(2n) {
  margin-left: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-example__container dl dd ul li:nth-child(2n) {
    margin-left: 0;
  }
}

.p-acqisition-professhional__head {
  padding: 13.86667vw 9.6vw 12vw;
  background: url(../images/acqisition/bg_professhional_head.jpg) no-repeat center center;
  background-size: cover;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-professhional__head {
    padding: 328px 12px 60px;
    background-image: url(../images/acqisition/bg_professhional_head_pc.jpg);
  }
}

.p-acqisition-professhional__ttl {
  color: #ffffff;
  font-size: 9.06667vw;
  font-weight: 700;
  line-height: 1.35294;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-professhional__ttl {
    font-size: 4.5rem;
    line-height: 1.44444;
  }
}

.p-acqisition-professhional__lead {
  margin-top: 8.53333vw;
  color: #ffffff;
  font-size: 4vw;
  font-weight: 500;
  line-height: 1.53333;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-professhional__lead {
    margin-top: 48px;
    font-size: 1.5rem;
  }
}

.p-acqisition-professhional__body {
  padding: 9.33333vw 9.6vw 16vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-professhional__body {
    padding: 74px 12px 104px;
  }
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__container {
    display: flex;
    justify-content: space-between;
  }
}

.p-acqisition-exdirector__img {
  display: block;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__img {
    width: calc( 100% * 464 / 1200);
  }
}

.p-acqisition-exdirector__img img {
  display: block;
  width: 100%;
}

.p-acqisition-exdirector__info {
  margin-top: 8.53333vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__info {
    position: relative;
    margin-top: 0;
    width: calc( 100% * 668 / 1200);
    padding-bottom: 38px;
  }
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__info:after {
    position: absolute;
    left: -202px;
    bottom: 0;
    width: 874px;
    height: 20px;
    background: url(../images/acqisition/bg_exdirector_followers_pc.svg) no-repeat;
    background-size: 100% 100%;
    content: '';
  }
}

.p-acqisition-exdirector__name {
  color: #3D495E;
  font-size: 10.66667vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__name {
    font-size: 5.3rem;
  }
}

.p-acqisition-exdirector__position {
  margin-top: 6.4vw;
  color: #3D495E;
  font-size: 5.86667vw;
  font-weight: 500;
  line-height: 1.45455;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__position {
    margin-top: 20px;
    font-size: 2.6rem;
    font-weight: 700;
  }
}

.p-acqisition-exdirector__txt {
  margin-top: 8vw;
  font-size: 3.46667vw;
  font-weight: 500;
  line-height: 2;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__txt {
    margin-top: 28px;
    font-size: 1.6rem;
    line-height: 1.625;
  }
}

.p-acqisition-exdirector__followers {
  position: relative;
  margin-top: 14.66667vw;
  padding-top: 26.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__followers {
    margin-top: 60px;
    padding-top: 0;
    display: flex;
    justify-content: space-between;
  }
}

.p-acqisition-exdirector__followers:before {
  position: absolute;
  right: 0;
  top: 0;
  width: 96vw;
  height: 5.33333vw;
  background: url(../images/acqisition/bg_exdirector_followers.svg) no-repeat;
  background-size: 100% 100%;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__followers:before {
    display: none;
  }
}

.p-acqisition-exdirector__followers dl {
  position: relative;
  padding: 12.8vw 0 4.26667vw;
  text-align: center;
  color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__followers dl {
    width: calc( 100% * 373 / 1200);
    padding: 46px 0 18px;
  }
}

.p-acqisition-exdirector__followers dl:before {
  position: absolute;
  left: 0;
  right: 0;
  top: -9.33333vw;
  margin: auto;
  width: 26.66667vw;
  height: 26.66667vw;
  border-radius: 13.33333vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 9.06667vw auto;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__followers dl:before {
    top: -35px;
    width: 100px;
    height: 100px;
    border-radius: 50px;
    background-size: 34px auto;
  }
}

.p-acqisition-exdirector__followers dl:not(:first-child) {
  margin-top: 17.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__followers dl:not(:first-child) {
    margin-top: 0;
  }
}

.p-acqisition-exdirector__followers dl:nth-child(1) {
  background-color: #F07A5F;
}

.p-acqisition-exdirector__followers dl:nth-child(1):before {
  background-color: #F07A5F;
  background-image: url(../images/acqisition/ico_professhional_1.svg);
}

.p-acqisition-exdirector__followers dl:nth-child(2) {
  background-color: #3D495E;
}

.p-acqisition-exdirector__followers dl:nth-child(2):before {
  background-color: #3D495E;
  background-image: url(../images/acqisition/ico_professhional_2.svg);
}

.p-acqisition-exdirector__followers dl:nth-child(3) {
  background-color: #4B7E8E;
}

.p-acqisition-exdirector__followers dl:nth-child(3):before {
  background-color: #4B7E8E;
  background-image: url(../images/acqisition/ico_professhional_3.svg);
}

.p-acqisition-exdirector__followers dl dt {
  position: relative;
  font-size: 6.93333vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__followers dl dt {
    font-size: 2.6rem;
  }
}

.p-acqisition-exdirector__followers dl dd {
  position: relative;
  font-size: 8vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__followers dl dd {
    font-size: 3.0rem;
  }
}

.p-acqisition-exdirector__followers dl dd em {
  font-size: 12.26667vw;
  font-style: normal;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-exdirector__followers dl dd em {
    font-size: 4.6rem;
  }
}

.p-acqisition-manager {
  margin-top: 21.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-manager {
    margin-top: 94px;
  }
}

@media only screen and (min-width: 769px) {
  .p-acqisition-manager__container {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    max-width: 926px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (min-width: 769px) {
  .p-acqisition-manager-item {
    width: calc( 100% * 410 / 926);
  }
}

.p-acqisition-manager-item:not(:first-child) {
  margin-top: 12.8vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-manager-item:not(:first-child) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 769px) {
  .p-acqisition-manager-item:nth-child(n+3) {
    margin-top: 48px;
  }
}

.p-acqisition-manager-item__img {
  display: block;
  width: 64vw;
  border-radius: 32vw;
  margin: 0 auto;
  overflow: hidden;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-manager-item__img {
    width: 240px;
    border-radius: 120px;
  }
}

.p-acqisition-manager-item__img > img {
  display: block;
  width: 100%;
}

.p-acqisition-manager-item__name {
  margin-top: 1.6vw;
  text-align: center;
  color: #3D495E;
  font-size: 8vw;
  font-weight: 400;
  line-height: 1.6;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-manager-item__name {
    margin-top: 6px;
    font-size: 3.0rem;
  }
}

.p-acqisition-manager-item__name small {
  font-size: 4.26667vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-manager-item__name small {
    font-size: 1.6rem;
  }
}

.p-acqisition-manager-item__txt {
  margin-top: 9.6vw;
  font-size: 3.46667vw;
  font-weight: 500;
  line-height: 2;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-manager-item__txt {
    margin-top: 36px;
    font-size: 1.6rem;
    line-height: 1.625;
  }
}

.p-acqisition-form {
  position: relative;
  background-color: #3D495E;
}

.p-acqisition-form__container {
  padding: 14.93333vw 9.6vw 16vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__container {
    position: relative;
    padding: 50px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__main {
    width: 485px;
  }
}

.p-acqisition-form__ttl {
  text-align: center;
  color: #ffffff;
  font-size: 5.33333vw;
  font-weight: 500;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__ttl {
    font-size: 3.0rem;
  }
}

.p-acqisition-form__ttl > span {
  display: inline-block;
  padding-bottom: 6.93333vw;
  background: url(../images/acqisition/bg_form_ttl.svg) no-repeat center bottom;
  background-size: 100% auto;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__ttl > span {
    padding-bottom: 18px;
    background-image: url(../images/acqisition/bg_form_ttl_pc.svg);
  }
}

.p-acqisition-form__catch {
  margin-top: 8vw;
  color: #ffffff;
  font-size: 8vw;
  font-weight: 500;
  line-height: 1.33333;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__catch {
    margin-top: 16px;
    text-align: center;
    font-size: 4.0rem;
  }
}

.p-acqisition-form__txt {
  margin-top: 26.66667vw;
  color: #ffffff;
  font-size: 3.46667vw;
  line-height: 2;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__txt {
    margin-top: 16px;
    font-size: 1.4rem;
  }
}

.p-acqisition-form__notes {
  margin-top: 0.25em;
  color: #ffffff;
  font-size: 3.46667vw;
  line-height: 2;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__notes {
    font-size: 1.3rem;
  }
}

.p-acqisition-form__link {
  margin-top: 9.6vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__link {
    width: 360px;
    margin: 36px auto 0;
  }
}

.p-acqisition-form__amb {
  position: absolute;
  right: 9.6vw;
  top: 35.2vw;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__amb {
    right: 65px;
    top: auto;
    bottom: 0;
  }
}

.p-acqisition-form__img picture {
  position: relative;
  display: block;
  width: 29.86667vw;
  height: auto;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__img picture {
    width: 252px;
  }
}

.p-acqisition-form__img picture img {
  display: block;
}

.p-acqisition-form__img figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 80.8vw;
  height: 10.93333vw;
  padding: 0 2.66667vw 0 0;
  background: url(../images/acqisition/bg_form_caption.svg) no-repeat right top;
  background-size: 100% 100%;
  box-sizing: border-box;
  text-align: right;
  color: #ffffff;
  font-size: 2.66667vw;
  line-height: 1.7;
}

@media only screen and (min-width: 769px) {
  .p-acqisition-form__img figcaption {
    right: -58px;
    bottom: 28px;
    display: block;
    width: auto;
    height: auto;
    padding: 0;
    background-image: none;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
    text-indent: -0.5em;
    font-size: 1.3rem;
    line-height: 1.7;
    white-space: nowrap;
  }
}

.p-acqisition-form__img figcaption em {
  font-style: normal;
  font-weight: 700;
}

.p-buyer-index__in {
  position: relative;
}

.p-buyer-index__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding: 7.46667vw 4.26667vw 0;
}

@media only screen and (min-width: 769px) {
  .p-buyer-index__head {
    padding: 30px 0 20px;
    margin: 0 30px;
    border-bottom: 1px solid #3D495E;
  }
}

.p-buyer-index__ttl {
  color: #3D495E;
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-buyer-index__ttl {
    font-size: 2.6rem;
  }
}

.p-buyer-index__count dl {
  display: flex;
  align-items: flex-end;
}

.p-buyer-index__count dl dt {
  margin-right: 0.5em;
  color: #3D495E;
  font-size: 1.3rem;
  line-height: 1;
  letter-spacing: 0.075em;
}

.p-buyer-index__count dl dd {
  color: #FFCC40;
  font-size: 2.2rem;
  line-height: 1;
}

.p-buyer-index__count dl dd em {
  font-style: normal;
}

@media only screen and (min-width: 769px) {
  .p-buyer-index__list {
    padding: 0 30px;
  }
}

.p-buyer-index__notfound {
  margin-top: 21.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-index__notfound {
    margin-top: 100px;
  }
}

.p-buyer-index__notfound__txt {
  text-align: center;
  color: #4E4E4E;
  font-size: 1.8rem;
  font-weight: 400;
}

@media only screen and (min-width: 769px) {
  .p-buyer-index__notfound__txt {
    font-size: 2.2rem;
  }
}

.p-buyer-index__notfound__link {
  margin-top: 8.53333vw;
  text-align: center;
  font-size: 1.2rem;
}

@media only screen and (min-width: 769px) {
  .p-buyer-index__notfound__link {
    margin-top: 40px;
    font-size: 1.4rem;
  }
}

.p-buyer-index__notfound__link a {
  text-decoration: underline;
  color: #4E4E4E;
}

@media only screen and (min-width: 769px) {
  .p-buyer-index__pager {
    margin-top: 50px;
  }
}

.p-buyer-single__container {
  padding: 5.33333vw 4.26667vw 17.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__container {
    max-width: 800px;
    padding: 6px 0 60px 0;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-buyer-single__share ul {
  display: flex;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__share ul {
    justify-content: flex-end;
  }
}

.p-buyer-single__share ul li:not(:first-child) {
  margin-left: 5px;
}

.p-buyer-single__box {
  margin-top: 4vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__box {
    padding: 42px 42px 56px;
    margin-top: 10px;
    border-radius: 10px;
    background-color: #ffffff;
  }
}

.p-buyer-single__eyecatch {
  position: relative;
}

.p-buyer-single__eyecatch figure {
  display: flex;
  justify-content: center;
  width: 100%;
}

.p-buyer-single__eyecatch figure img {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 358px;
}

.p-buyer-single__eyecatch figure.is-full img {
  width: 100%;
  max-height: none;
}

.p-buyer-single__bookmark {
  position: absolute;
  right: 2.13333vw;
  bottom: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__bookmark {
    right: 10px;
    bottom: 10px;
  }
}

.p-buyer-single__bookmark button {
  display: block;
  width: 16.53333vw;
  height: 16.53333vw;
  border: 0;
  border-radius: 1.6vw;
  outline: 0;
  background: #ffffff url(../images/common/btn_bookmark.svg) no-repeat center center;
  background-size: 10.66667vw auto;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__bookmark button {
    width: 62px;
    height: 62px;
    border-radius: 6px;
    background-size: 40px auto;
  }
}

.p-buyer-single__bookmark button.is-active {
  background-image: url(../images/common/btn_bookmark_on.svg);
}

.p-buyer-single__head {
  margin-top: 6.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__head {
    margin-top: 25px;
  }
}

.p-buyer-single__ttl {
  color: #3D495E;
  font-size: 2.0rem;
  font-weight: 500;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__ttl {
    font-size: 2.4rem;
    line-height: 1.45833;
  }
}

.p-buyer-single__icons {
  display: flex;
  margin-top: 12vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__icons {
    margin-top: 30px;
  }
}

.p-buyer-single__icon01, .p-buyer-single__icon02 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20.26667vw;
  height: 5.33333vw;
  margin: 0 1.6vw 1.6vw 0;
  box-sizing: border-box;
  font-size: 1.0rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__icon01, .p-buyer-single__icon02 {
    width: 78px;
    height: 20px;
    margin: 0 6px 6px 0;
  }
}

.p-buyer-single__icon01 {
  background-color: #3D495E;
  color: #ffffff;
}

.p-buyer-single__icon02 {
  border: 1px solid #FFCC40;
  color: #FFCC40;
}

.p-buyer-single__nav {
  margin-top: 6.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__nav {
    margin-top: 25px;
  }
}

.p-buyer-single__nav ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 18em;
  margin: 0 auto;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__nav ul {
    width: auto;
  }
}

.p-buyer-single__nav ul li {
  width: 6em;
  text-align: center;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__nav ul li {
    width: auto;
  }
}

.p-buyer-single__nav ul li:not(:first-child) {
  padding-left: 1.5em;
  margin-left: 1.5em;
  border-left: 1px solid #3D495E;
}

.p-buyer-single__nav ul li:nth-child(n+3) {
  margin-top: 1em;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__nav ul li:nth-child(n+3) {
    margin-top: 0;
  }
}

.p-buyer-single__nav ul li:nth-child(3) {
  border-left: 0;
  padding-left: 0;
  margin-left: 0;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__nav ul li:nth-child(3) {
    padding-left: 1.5em;
    margin-left: 1.5em;
    border-left: 1px solid #3D495E;
  }
}

.p-buyer-single__nav ul li a {
  position: relative;
  display: inline-block;
  color: #3D495E;
  opacity: 1 !important;
}

.p-buyer-single__nav ul li a:after {
  position: absolute;
  left: 50%;
  top: calc( 100% + 3px);
  width: 0%;
  height: 4px;
  background-color: #FFCC40;
  transition: left .2s, width .2s;
  content: '';
}

.p-buyer-single__nav ul li a:hover:after {
  left: 0%;
  width: 100%;
}

.p-buyer-single__body {
  margin-top: 9.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__body {
    margin-top: 35px;
  }
}

.p-buyer-single-sect:not(:first-child) {
  margin-top: 9.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single-sect:not(:first-child) {
    margin-top: 35px;
  }
}

.p-buyer-single-sect__editor {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single-sect__editor {
    margin-top: 20px;
  }
}

.p-buyer-single__info {
  margin: 13.33333vw 2.66667vw 0;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__info {
    display: flex;
    margin: 50px 32px 0;
  }
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__outline {
    width: 194px;
  }
}

.p-buyer-single__company {
  display: flex;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__company {
    display: block;
  }
}

.p-buyer-single__status {
  display: flex;
  align-items: center;
  padding: 0.1em 1em;
  background-color: #3E6A9D;
  color: #ffffff;
  font-size: 1.0rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__status {
    display: inline-flex;
  }
}

.p-buyer-single__companyname {
  padding-left: 0.9em;
  font-size: 1.5rem;
  font-weight: 400;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__companyname {
    padding-left: 0;
    margin-top: 1em;
    font-size: 1.3rem;
  }
}

.p-buyer-single__url {
  margin-top: 5.33333vw;
  font-size: 1.0rem;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__url {
    margin-top: 24px;
  }
}

.p-buyer-single__logo {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__logo {
    margin-top: 20px;
  }
}

.p-buyer-single__logo > img {
  width: auto;
  height: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__logo > img {
    height: 40px;
  }
}

.p-buyer-single__detail {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__detail {
    margin-top: 0;
    padding-left: 20px;
  }
}

.p-buyer-single__detail dl {
  display: flex;
  width: 100%;
}

.p-buyer-single__detail dl:not(:first-child) {
  margin-top: 1.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__detail dl:not(:first-child) {
    margin-top: 6px;
  }
}

.p-buyer-single__detail dl dt {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6em;
  padding: 0.1em 0.8em;
  background-color: #F2F4F5;
  text-align: center;
  color: #193B64;
  font-size: 1.1rem;
  letter-spacing: 0.05em;
}

.p-buyer-single__detail dl dd {
  display: flex;
  align-items: center;
  padding: 0.1em 0 0.1em 1em;
  font-size: 1.2rem;
}

.p-buyer-single__intro {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__intro {
    margin-top: 32px;
  }
}

.p-buyer-single__intro__ttl {
  padding: 2.13333vw 0;
  border-radius: 4.26667vw 4.26667vw 0 0;
  background-color: #3D495E;
  text-align: center;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 500;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__intro__ttl {
    padding: 8px 0;
    border-radius: 16px 16px 0 0;
  }
}

.p-buyer-single__intro__txt {
  padding: 6.66667vw 5.33333vw;
  background-color: #FAFAFA;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.38462;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__intro__txt {
    padding: 25px 35px;
  }
}

.p-buyer-single__keywords {
  margin-top: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__keywords {
    margin-top: 20px;
  }
}

.p-buyer-single__keywords__ttl {
  font-size: 1.3rem;
  font-weight: 400;
}

.p-buyer-single__keywords__list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 2.13333vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__keywords__list {
    margin-top: 8px;
  }
}

.p-buyer-single__keywords__list li {
  margin: 0 1.6vw 1.6vw 0;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__keywords__list li {
    margin: 0 6px 6px 0;
  }
}

.p-buyer-single__keywords__list li a {
  display: inline-block;
  padding: 0.2em 1em;
  border: 1px solid #3D495E;
  border-radius: 1.2em;
  background-color: #F2F4F5;
  color: #3D495E;
  font-size: 1.0rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  white-space: nowrap;
}

.p-buyer-single__limited {
  margin-top: 13.33333vw;
  padding: 9.33333vw 5.33333vw 10.66667vw;
  border-radius: 2.66667vw;
  background-color: #FAFAFA;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__limited {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 48px;
    padding: 20px;
    border-radius: 10px;
  }
}

.p-buyer-single__limited__ttl {
  text-align: center;
  color: #3D495E;
  font-size: 1.3rem;
  font-weight: 700;
}

.p-buyer-single__limited__ttl:before {
  display: block;
  width: 12.26667vw;
  height: 12.26667vw;
  margin: 0 auto 1.6vw;
  background: url(../images/common/ico_limited.svg) no-repeat;
  background-size: 100% 100%;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__limited__ttl:before {
    width: 46px;
    height: 46px;
    margin: 0 auto 6px;
  }
}

.p-buyer-single__limited__txt {
  margin-top: 5.33333vw;
  font-size: 1.6rem;
  line-height: 1.75;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__limited__txt {
    margin-top: 0;
    margin-left: 36px;
  }
}

.p-buyer-single__limited__txt em {
  color: #FFCC40;
  font-style: normal;
  text-decoration: underline;
}

.p-buyer-single__util {
  display: flex;
  justify-content: space-between;
  width: 89.33333vw;
  margin: 13.33333vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__util {
    width: 44.21875vw;
    margin: 50px auto 0;
  }
}

@media only screen and (min-width: 1280px) {
  .p-buyer-single__util {
    width: 566px;
  }
}

.p-buyer-single__util p {
  width: 42.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-buyer-single__util p {
    width: 21.25vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-buyer-single__util p {
    width: 272px;
  }
}

.p-case-index__body {
  padding: 5.86667vw 4.26667vw 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-case-index__body {
    padding-top: 75px;
    padding-bottom: 90px;
  }
}

.p-case-index__in {
  position: relative;
}

.p-case-index__list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.p-case-index-item {
  position: relative;
}

.p-case-index-item:not(:first-child) {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item {
    width: calc( 50% - 1.5625vw);
  }
  .p-case-index-item:not(:first-child) {
    margin-top: 0;
    margin-left: 3.125vw;
  }
  .p-case-index-item:nth-child(2n+1) {
    margin-left: 0;
  }
  .p-case-index-item:nth-child(n+3) {
    margin-top: 3.51563vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-case-index-item {
    width: calc( ( 100% - 80px ) / 3);
  }
  .p-case-index-item:not(:first-child) {
    margin-left: 40px;
  }
  .p-case-index-item:nth-child(2n+1) {
    margin-left: 40px;
  }
  .p-case-index-item:nth-child(3n+1) {
    margin-left: 0;
  }
  .p-case-index-item:nth-child(n+3) {
    margin-top: 0;
  }
  .p-case-index-item:nth-child(n+4) {
    margin-top: 45px;
  }
}

.p-case-index-item__thumb {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: calc( 100% * 450 / 800);
  background-color: #ffffff;
}

.p-case-index-item__thumb > a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}

.p-case-index-item__thumb > a > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-case-index-item__thumb figcaption {
  position: absolute;
  left: 3.2vw;
  bottom: 2.66667vw;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 21.06667vw;
  height: 7.46667vw;
  background: url(../images/common/bg_result_caption.svg) no-repeat;
  background-size: 100% 100%;
  color: #ffffff;
  font-size: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item__thumb figcaption {
    left: 10px;
    bottom: 10px;
    width: 100px;
    height: 35px;
    font-size: 1.4rem;
  }
}

.p-case-index-item__info {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item__info {
    margin-top: 20px;
  }
}

.p-case-index-item__ttl {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item__ttl {
    font-size: 2.0rem;
    line-height: 1.5;
  }
}

.p-case-index-item__client {
  margin-top: 4vw;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item__client {
    margin-top: 15px;
  }
}

.p-case-index-item__client dl {
  display: flex;
  align-items: center;
}

.p-case-index-item__client dl:not(:first-child) {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item__client dl:not(:first-child) {
    margin-top: 10px;
  }
}

.p-case-index-item__client dl dt {
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item__client dl dt {
    font-size: 1.3rem;
  }
}

.p-case-index-item__client dl dd {
  padding-left: 2.13333vw;
  margin-left: 2.13333vw;
  border-left: 1px solid rgba(51, 51, 51, 0.3);
  font-size: 1.1rem;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item__client dl dd {
    padding-left: 15px;
    margin-left: 15px;
    font-size: 1.3rem;
  }
}

.p-case-index-item__txt {
  margin-top: 4vw;
  font-size: 1.3rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item__txt {
    margin-top: 15px;
    font-size: 1.5rem;
    line-height: 1.75;
  }
}

.p-case-index-item__link {
  margin: 5.33333vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-case-index-item__link {
    margin-top: 20px;
  }
}

.p-case-index-item__link a {
  letter-spacing: 0.05em;
}

.p-case-index__pager {
  margin-top: 12vw;
}

@media only screen and (min-width: 769px) {
  .p-case-index__pager {
    margin-top: 90px;
  }
}

@media only screen and (min-width: 769px) {
  .p-case-single {
    background-color: #F2F4F5;
  }
}

.p-case-single__container {
  padding: 5.33333vw 4.26667vw 17.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-case-single__container {
    max-width: 1000px;
    padding: 64px 16px 80px;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-case-single__share ul {
  display: flex;
}

@media only screen and (min-width: 769px) {
  .p-case-single__share ul {
    justify-content: flex-end;
  }
}

.p-case-single__share ul li:not(:first-child) {
  margin-left: 5px;
}

.p-case-single__box {
  margin-top: 4vw;
}

@media only screen and (min-width: 769px) {
  .p-case-single__box {
    padding: 80px 100px 100px;
    margin-top: 10px;
    border-radius: 10px;
    background-color: #ffffff;
  }
}

.p-case-single__ttl {
  color: #3D495E;
  font-size: 2.0rem;
  font-weight: 500;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-case-single__ttl {
    font-size: 2.4rem;
    line-height: 1.45833;
  }
}

.p-case-single__eyecatch {
  position: relative;
  margin-top: 8.53333vw;
}

@media only screen and (min-width: 769px) {
  .p-case-single__eyecatch {
    margin-top: 46px;
  }
}

.p-case-single__eyecatch figure {
  display: block;
}

.p-case-single__eyecatch figure img {
  display: block;
  width: 100%;
}

.p-case-single__head {
  margin-top: 7.46667vw;
}

@media only screen and (min-width: 769px) {
  .p-case-single__head {
    margin-top: 50px;
  }
}

.p-case-single__client {
  padding: 0 5.33333vw;
  background-color: #F2F4F5;
}

@media only screen and (min-width: 769px) {
  .p-case-single__client {
    display: flex;
    padding: 28px 0 20px;
  }
}

.p-case-single__client > dl {
  padding: 5.33333vw 0;
}

@media only screen and (min-width: 769px) {
  .p-case-single__client > dl {
    width: 50%;
    padding: 0 40px;
    box-sizing: border-box;
  }
}

.p-case-single__client > dl:not(:first-child) {
  border-top: 1px solid #C6C6C6;
}

@media only screen and (min-width: 769px) {
  .p-case-single__client > dl:not(:first-child) {
    border-top: 0;
    border-left: 1px solid #C6C6C6;
  }
}

.p-case-single__client > dl > dt > span {
  display: inline-block;
  padding: 0.4em;
  color: #ffffff;
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: 0.1em;
}

.p-case-single__client > dl:nth-child(1) > dt > span {
  background-color: #3D495E;
}

.p-case-single__client > dl:nth-child(2) > dt > span {
  background-color: #F07A5F;
}

.p-case-single__client > dl > dd {
  margin-top: 3.2vw;
}

@media only screen and (min-width: 769px) {
  .p-case-single__client > dl > dd {
    margin-top: 12px;
  }
}

.p-case-single__client__name {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.p-case-single__client__url {
  margin-top: 2.13333vw;
  font-size: 1.0rem;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
  .p-case-single__client__url {
    margin-top: 12px;
  }
}

.p-case-single__client__url > a {
  color: #4E4E4E;
}

.p-case-single__body {
  margin-top: 14.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-case-single__body {
    margin-top: 90px;
  }
}

.p-complete__body {
  padding: 10.66667vw 4.26667vw 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-complete__body {
    padding-top: 80px;
    padding-bottom: 90px;
  }
}

.p-complete__in {
  position: relative;
}

.p-complete__catch {
  text-align: center;
  color: #FFCC40;
  font-size: 2.0rem;
}

@media only screen and (min-width: 769px) {
  .p-complete__catch {
    font-size: 4.0rem;
  }
}

.p-complete__lead {
  margin-top: 5.33333vw;
  text-align: center;
  color: #193B64;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.66667;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-complete__lead {
    margin-top: 40px;
    font-size: 3.0rem;
    line-height: 1.66667;
  }
}

.p-complete__home {
  max-width: 275px;
  margin: 13.33333vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-complete__home {
    margin: 100px auto 0;
  }
}

.p-contact__body {
  padding: 5.86667vw 4.26667vw 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-contact__body {
    padding-top: 75px;
    padding-bottom: 90px;
  }
}

.p-contact__in {
  position: relative;
}

.p-contact__catch {
  text-align: center;
  color: #193B64;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.66667;
}

@media only screen and (min-width: 769px) {
  .p-contact__catch {
    font-size: 3.0rem;
  }
}

.p-contact__form {
  margin: 8.53333vw 0 0;
}

@media only screen and (min-width: 769px) {
  .p-contact__form {
    max-width: 770px;
    margin: 80px auto 0;
  }
}

@media only screen and (max-width: 768px) {
  .p-contact__form table,
  .p-contact__form tbody,
  .p-contact__form tr,
  .p-contact__form th,
  .p-contact__form td {
    display: block;
  }
}

.p-contact__form table {
  width: 100%;
  font-size: 1.5rem;
  line-height: 1.4;
}

.p-contact__form th {
  padding-top: 4.26667vw;
  text-align: left;
  color: #3D495E;
  font-weight: 400;
}

@media only screen and (min-width: 769px) {
  .p-contact__form th {
    width: 160px;
    padding-top: 16px;
    padding-bottom: 16px;
  }
}

.p-contact__form th small {
  color: #F07A5F;
  font-size: 1.1rem;
}

.p-contact__form td {
  padding-top: 4.26667vw;
  padding-bottom: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .p-contact__form td {
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 1em;
  }
}

.p-contact__form .wpcf7-form-control-wrap {
  display: inline;
}

.p-contact__form .wpcf7-form-control-wrap[data-name="your-name-mei"] {
  margin-left: 1em;
}

.p-contact__form .wpcf7-list-item {
  margin: 0;
}

.p-contact__form .wpcf7-list-item:not(:first-child) {
  margin: 0 0 0 1em;
}

.p-contact__form__submit {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-contact__form__submit {
    width: 316px;
    margin: 40px auto 0;
  }
}

.p-contact__form .mktoForm {
  width: 100% !important;
  padding: 0 !important;
}

.p-contact__form .mktoFormRow {
  position: relative;
}

@media only screen and (min-width: 769px) {
  .p-contact__form .mktoFormRow {
    display: flex !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }
}

.p-contact__form .mktoFormRow:not(:first-child) {
  padding-top: 8.53333vw !important;
}

@media only screen and (min-width: 769px) {
  .p-contact__form .mktoFormRow:not(:first-child) {
    padding-top: 16px !important;
  }
}

.p-contact__form .mktoForm .mktoFormCol {
  float: none !important;
}

.p-contact__form .mktoFormCol {
  margin: 0 !important;
}

@media only screen and (min-width: 769px) {
  .p-contact__form .mktoFormCol:nth-child(1) {
    width: 12em;
    padding-top: 1em;
  }
  .p-contact__form .mktoFormCol:nth-child(2) {
    width: calc( 100% - 12em);
  }
  .p-contact__form .mktoFormCol:nth-child(3) {
    width: calc( 50% - 6em);
  }
}

.p-contact__form .mktoFormCol:not(:first-child) {
  padding-top: 2.13333vw !important;
}

@media only screen and (min-width: 769px) {
  .p-contact__form .mktoFormCol:not(:first-child) {
    padding-top: 0 !important;
    padding-left: 16px !important;
  }
}

@media only screen and (min-width: 769px) {
  .p-contact__form .mktoFormRow:nth-child(2) .mktoFormCol:nth-child(2) {
    padding-top: 1em !important;
  }
  .p-contact__form .mktoFormRow:nth-child(3) .mktoFormCol:nth-child(2) {
    width: calc( 50% - 6em);
  }
}

@media only screen and (min-width: 769px) {
  .p-contact__form .mktoFormRow:nth-child(10) .mktoFormCol:nth-child(1) {
    width: 100%;
  }
}

.p-contact__form .mktoFormRow:nth-child(10) .mktoFormCol:nth-child(1) a {
  display: inline;
  padding: 0;
  color: #F07A5F;
  text-decoration: underline;
}

.p-contact__form .mktoFormRow:nth-child(10) .mktoFormCol:nth-child(1) a:hover {
  text-decoration: none;
}

.p-contact__form .mktoHtmlText {
  width: 100% !important;
  color: #3D495E !important;
  font-size: 1.5rem !important;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.4 !important;
}

.p-contact__form .mktoFormRow:nth-child(2) .mktoHtmlText:after,
.p-contact__form .mktoFormRow:nth-child(3) .mktoHtmlText:after,
.p-contact__form .mktoFormRow:nth-child(4) .mktoHtmlText:after,
.p-contact__form .mktoFormRow:nth-child(5) .mktoHtmlText:after,
.p-contact__form .mktoFormRow:nth-child(6) .mktoHtmlText:after,
.p-contact__form .mktoFormRow:nth-child(7) .mktoHtmlText:after {
  display: inline-block;
  padding: 0.25em 0.3em 0.3em;
  margin: 0 0 0 0.7em;
  border-radius: 2px;
  background-color: #F07A5F;
  vertical-align: middle;
  color: #ffffff;
  font-size: 1.1rem;
  line-height: 1;
  letter-spacing: 0.05em;
  content: '必須';
}

.p-contact__form .mktoForm .mktoGutter,
.p-contact__form .mktoForm .mktoOffset {
  display: none;
}

.p-contact__form .mktoForm .mktoRequiredField label.mktoLabel {
  display: none !important;
}

.p-contact__form .mktoForm .mktoAsterix {
  color: #F07A5F !important;
  font-size: 1.1rem !important;
}

.p-contact__form .mktoForm .mktoFormRow .mktoField {
  float: none !important;
  clear: none !important;
}

.p-contact__form .mktoForm input[type=checkbox],
.p-contact__form .mktoForm input[type=radio] {
  width: auto !important;
  height: auto !important;
  opacity: 1 !important;
  margin-right: 0.25em;
}

@media only screen and (min-width: 769px) {
  .p-contact__form .mktoForm .mktoRadioList,
  .p-contact__form .mktoForm .mktoCheckboxList {
    float: none;
    padding: 0;
    width: 100% !important;
  }
}

.p-contact__form .mktoForm .mktoRadioList > label,
.p-contact__form .mktoForm .mktoCheckboxList > label {
  display: inline-block !important;
  margin-left: 0.1em !important;
  margin-right: 1em !important;
}

.p-contact__form .mktoForm .mktoRadioList > label:before,
.p-contact__form .mktoForm .mktoCheckboxList > label:before {
  display: none !important;
}

.p-contact__form .mktoForm input[type=text],
.p-contact__form .mktoForm input[type=url],
.p-contact__form .mktoForm input[type=email],
.p-contact__form .mktoForm input[type=tel],
.p-contact__form .mktoForm input[type=number],
.p-contact__form .mktoForm input[type=date],
.p-contact__form .mktoForm select.mktoField,
.p-contact__form .mktoForm textarea.mktoField {
  width: 100% !important;
  height: auto !important;
  border: 1px solid #3D495E !important;
  padding: 1em !important;
  background-color: #FAFAFA !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background-color: #ffffff !important;
  font-size: 1.5rem !important;
}

.p-contact__form .mktoButtonRow {
  display: block !important;
  padding: 0 !important;
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-contact__form .mktoButtonRow {
    width: 316px;
    margin: 40px auto 0;
  }
}

.p-contact__form .mktoForm .mktoFieldWrap {
  float: none;
}

.p-contact__form .mktoForm .mktoButtonWrap {
  display: block !important;
  margin: 0 !important;
}

.p-contact__form .mktoForm .mktoButtonWrap .mktoButton {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 13.33333vw !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 2.66667vw !important;
  background: #4E4E4E !important;
  color: #ffffff !important;
  font-size: 1.5rem !important;
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

@media only screen and (min-width: 769px) {
  .p-contact__form .mktoForm .mktoButtonWrap .mktoButton {
    height: 50px !important;
    border-radius: 10px !important;
    font-size: 1.5rem !important;
  }
}

.p-document__body {
  padding: 5.86667vw 4.26667vw 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-document__body {
    padding-top: 75px;
    padding-bottom: 90px;
  }
}

.p-document__in {
  position: relative;
}

.p-document__list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .p-document-item {
    width: calc( 50% - 2.66667vw);
  }
  .p-document-item:not(:nth-child(2n+1)) {
    margin-left: 5.33333vw;
  }
  .p-document-item:nth-child(n+3) {
    margin-top: 5.33333vw;
  }
}

@media only screen and (min-width: 769px) {
  .p-document-item {
    width: calc( ( 100% - 80px ) / 3);
  }
  .p-document-item:not(:nth-child(3n+1)) {
    margin-left: 40px;
  }
  .p-document-item:nth-child(n+4) {
    margin-top: 40px;
  }
}

.p-document-item__thumb > a {
  display: block;
}

.p-document-item__thumb > a > img {
  display: block;
}

.p-document-item__ttl {
  margin-top: 1em;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-document-item__ttl {
    font-size: 2.0rem;
  }
}

.p-document-item__link {
  margin: 2.66667vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-document-item__link {
    margin-top: 20px;
  }
}

.p-document-item__link a {
  letter-spacing: 0.05em;
}

.p-document__pager {
  margin-top: 12vw;
}

@media only screen and (min-width: 769px) {
  .p-document__pager {
    margin-top: 90px;
  }
}

.p-faq {
  padding-top: 12vw;
  padding-bottom: 9.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-faq {
    padding-top: 45px;
    padding-bottom: 100px;
  }
}

.p-faq__body {
  padding-top: 12vw;
}

@media only screen and (min-width: 769px) {
  .p-faq__body {
    padding-top: 45px;
  }
}

.p-faq__nav ul {
  display: flex;
  justify-content: center;
  font-size: 1.0rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-faq__nav ul {
    font-size: 1.6rem;
  }
}

.p-faq__nav ul li {
  margin: 0 0.25em;
}

.p-faq__nav ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 8em;
  height: 2.875em;
  border: 1px solid #4E4E4E;
  color: #4E4E4E;
  opacity: 1 !important;
  transition: background-color .2s, color .2s;
}

@media only screen and (min-width: 1280px) {
  .p-faq__nav ul li a {
    width: 140px;
    height: 46px;
  }
}

.p-faq__nav ul li a:hover {
  background-color: #4E4E4E;
  color: #ffffff;
}

.p-faq__container {
  margin: 12vw 5.33333vw 0;
}

@media only screen and (min-width: 1280px) {
  .p-faq__container {
    max-width: 700px;
    margin: 45px auto 0;
  }
}

.p-faq-sect:not(:first-child) {
  margin-top: 21.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-faq-sect:not(:first-child) {
    margin-top: 80px;
  }
}

.p-faq-sect__container {
  margin-top: 1.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-faq-sect__container {
    margin-top: 5px;
  }
}

.p-faq-item {
  border-bottom: 1px solid #E3E3E3;
}

.p-faq-item__head {
  position: relative;
  padding-top: 5.33333vw;
  padding-bottom: 5.33333vw;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .p-faq-item__head {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}

.p-faq-item__head:after {
  position: absolute;
  right: 5.33333vw;
  top: 50%;
  width: 1.6vw;
  height: 1.6vw;
  border-top: 1px solid #3D495E;
  border-right: 1px solid #3D495E;
  transform: translateY(-50%) rotate(135deg);
  transition: transform .3s;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-faq-item__head:after {
    right: 20px;
    width: 6px;
    height: 6px;
  }
}

.p-faq-item.is-expanded .p-faq-item__head:after {
  transform: translateY(-50%) rotate(-45deg);
}

.p-faq-item__ttl {
  position: relative;
  padding: 0 2em;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.375;
}

@media only screen and (min-width: 769px) {
  .p-faq-item__ttl {
    font-size: 1.6rem;
  }
}

.p-faq-item__ttl:before {
  position: absolute;
  left: 0;
  top: -0.075em;
  color: #3D495E;
  font-size: 2.0rem;
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  line-height: 1;
  content: 'Q';
}

@media only screen and (min-width: 769px) {
  .p-faq-item__ttl:before {
    top: 0.05em;
    font-size: 2.2rem;
  }
}

.p-faq-item__body {
  display: none;
  padding-bottom: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-faq-item__body {
    padding-bottom: 20px;
  }
}

.p-faq-item__answer {
  position: relative;
  padding: 1em 3.2em;
  border-radius: 2.66667vw;
  background-color: #F2F4F5;
  font-size: 1.2rem;
}

@media only screen and (min-width: 769px) {
  .p-faq-item__answer {
    border-radius: 10px;
    font-size: 1.3rem;
  }
}

.p-faq-item__answer:before {
  position: absolute;
  left: 0.68em;
  top: 0.6em;
  color: #FFCC40;
  font-size: 2.0rem;
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  line-height: 1;
  content: 'A';
}

@media only screen and (min-width: 769px) {
  .p-faq-item__answer:before {
    font-size: 2.2rem;
  }
}

/*===============================================
 home
===============================================*/
.p-home-kv {
  position: relative;
  width: 100%;
  height: 142.4vw;
  background: url(../images/home/bg_kv.png) no-repeat center bottom;
  background-size: cover;
}

@media only screen and (min-width: 769px) {
  .p-home-kv {
    height: 62.5vw;
    background-image: url(../images/home/bg_kv_pc.png);
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv {
    height: 800px;
  }
}

@media only screen and (min-width: 769px) {
  .p-home-kv__in {
    position: relative;
    height: 100%;
  }
}

@media only screen and (min-width: 769px) {
  .p-home-kv__in {
    max-width: 1320px;
    padding-left: 60px;
    padding-right: 60px;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-home-kv__heading {
  padding-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__heading {
    padding-top: 5.07813vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__heading {
    padding-top: 220px;
  }
}

/* .p-home-kv__catch {
  padding-left: 10.13333vw;
} */

@media only screen and (min-width: 769px) {
  .p-home-kv__catch {
    padding-left: 0;
  }
}

.p-home-kv__catch > strong {
  display: block;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__catch > strong {
    font-size: 3.125vw;
    text-align: center; /* 中央揃えに変更 */
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__catch > strong {
    font-size: 40px;
  }
}

.p-home-kv__catch > span {
  display: block;
  font-size: 9.6vw;
  font-weight: 900;
  line-height: 1.33333;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__catch > span {
    font-size: 5.46875vw;
    text-align: center; /* 中央揃えに変更 */
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__catch > span {
    font-size: 70px;
  }
}

.p-home-kv__catch > span > em {
  color: #343434;
  font-style: normal;
}

.p-home-kv__feature {
  position: absolute;
  left: 50%;
  top: 44.8vw;
  display: flex;
  width: 80vw;
  height: 32vw;
  background: url(../images/home/bg_kv_feature.svg) no-repeat center center;
  background-size: 100% auto;
  transform: translateX(-50%);
}

@media only screen and (min-width: 769px) {
  .p-home-kv__feature {
    left: 60px;
    top: 25.625vw;
    width: 31.09375vw;
    height: 12.5vw;
    transform: none;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__feature {
    left: 60px;
    top: 478px;
    width: 398px;
    height: 159px;
  }
}

.p-home-kv__feature > div {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50%;
  height: 100%;
}

.p-home-kv__feature p {
  text-align: center;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.25;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__feature p {
    font-size: 2.10938vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__feature p {
    font-size: 2.7rem;
  }
}

.p-home-kv__feature p small {
  display: block;
  margin-top: 1em;
  font-size: 1.0rem;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__feature p small {
    font-size: 1.09375vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__feature p small {
    font-size: 1.4rem;
  }
}

.p-home-kv__feature dl {
  text-align: center;
}

.p-home-kv__feature dl dt {
  font-size: 1.0rem;
  font-weight: 700;
  line-height: 1.3;
}

.p-home-kv__feature dl dd {
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1;
}

.p-home-kv__feature dl dd em {
  font-size: 3.4rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.p-home-kv__news {
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  padding: 4.8vw 2.66667vw;
  box-sizing: border-box;
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__news {
    top: auto;
    bottom: 0;
    padding: 0;
  }
}

@media only screen and (min-width: 769px) {
  .p-home-kv__news__in {
    padding-left: 60px;
    padding-right: 60px;
  }
}

.p-home-kv__news__box {
  width: 100%;
  box-sizing: border-box;
  background-color: #ffffff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

@media only screen and (min-width: 769px) {
  .p-home-kv__news__box {
    box-shadow: none;
  }
}

.p-home-kv__news dl {
  display: flex;
  width: 100%;
  height: 18.13333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__news dl {
    height: 96px;
    padding: 24px 0;
    box-sizing: border-box;
  }
}

.p-home-kv__news dl dt {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 21.86667vw;
  height: 100%;
  background-color: #F4F4F4;
  color: #FFCC40;
  font-size: 1.6rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__news dl dt {
    width: 92px;
    justify-content: flex-start;
    background-color: transparent;
  }
}

.p-home-kv__news dl dd {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  padding: 2.13333vw 5.33333vw;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.33333;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__news dl dd {
    padding: 0 26.5625vw 0 30px;
    border-left: 1px solid rgba(61, 73, 95, 0.2);
  }
}

.p-home-kv__results {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: 38.93333vw;
  padding-left: 16vw;
  background-color: #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__results {
    left: calc( 50% - 90px);
    bottom: 75px;
    z-index: 1;
    height: 97px;
    padding-left: 1.5625vw;
  }
}

@media only screen and (min-width: 769px) {
  .p-home-kv__results:before {
    position: absolute;
    left: -28px;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../images/home/bg_kv_results.svg) no-repeat left top;
    content: '';
  }
}

@media only screen and (min-width: 769px) {
  .p-home-kv__results dl {
    position: relative;
    display: flex;
    align-items: center;
  }
}

.p-home-kv__results dl dt span {
  display: block;
  text-align: center;
  color: #ffffff;
  font-size: 1.3rem;
  font-weight: 700;
}

.p-home-kv__results dl dt strong {
  display: block;
  padding: 0.15em 0.5em;
  margin-top: 0.2em;
  background-color: #ffffff;
  text-align: center;
  color: #3D495E;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
}

.p-home-kv__results dl dd {
  font-size: 2.1rem;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__results dl dd {
    margin-left: 15px;
  }
}

.p-home-kv__results dl dd > span {
  color: #ffffff;
}

.p-home-kv__results dl dd > span:nth-child(4) {
  font-size: 2.3rem;
}

.p-home-kv__results dl dd > em {
  color: #FFCC40;
  font-size: 6.9rem;
  font-style: normal;
  font-weight: 900;
  line-height: 0.85;
  letter-spacing: 0;
}

.p-home-kv__ambassador {
  position: absolute;
  right: 3.2vw;
  bottom: 0;
  z-index: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__ambassador {
    right: 0.9375vw;
    bottom: 0;
    z-index: 2;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__ambassador {
    right: 72px;
  }
}

.p-home-kv__ambassador > img {
  display: block;
  width: 49.6vw;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__ambassador > img {
    width: 30.15625vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__ambassador > img {
    width: 386px;
  }
}

.p-home-kv__ambassador > figcaption {
  position: absolute;
  left: -37.33333vw;
  top: 13.86667vw;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.075em;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__ambassador > figcaption {
    left: 24.21875vw;
    top: -9.76563vw;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__ambassador > figcaption {
    left: 335px;
    top: -58px;
    font-size: 1.6rem;
  }
}

.p-home-kv__ambassador > figcaption small {
  font-size: 100%;
}

@media only screen and (min-width: 769px) {
  .p-home-kv__ambassador > figcaption small {
    margin-top: 1em;
    font-size: 1.0rem;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-kv__ambassador > figcaption small {
    font-size: 1.4rem;
  }
}

.p-home-clients {
  padding: 32vw 0 6.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-home-clients {
    padding: 70px 0 50px;
  }
}

.p-home-clients__ttl {
  text-align: center;
  color: #3D495E;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.44444;
}

@media only screen and (min-width: 769px) {
  .p-home-clients__ttl {
    font-size: 2.6rem;
  }
}

.p-home-clients__container {
  margin-top: 4vw;
}

@media only screen and (min-width: 769px) {
  .p-home-clients__container {
    margin-top: 20px;
  }
}

.p-home-clients__slide {
  position: relative;
  width: 100%;
  height: 17.06667vw;
  overflow: hidden;
}

@media only screen and (min-width: 769px) {
  .p-home-clients__slide {
    height: 95px;
  }
}

.p-home-clients__slide:not(:first-child) {
  margin-top: 3.2vw;
}

@media only screen and (min-width: 769px) {
  .p-home-clients__slide:not(:first-child) {
    margin-top: 20px;
  }
}

.p-home-clients__line {
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
}

.p-home-clients__line li {
  width: 53.33333vw;
  margin: 0 1.6vw;
  border: 1px solid rgba(61, 73, 95, 0.2);
  box-sizing: border-box;
}

@media only screen and (min-width: 769px) {
  .p-home-clients__line li {
    width: 326px;
  }
}

.p-home-clients__line li img {
  display: block;
  width: 100%;
}

.p-home-service {
  position: relative;
  padding: 10.66667vw 0 16vw;
}

@media only screen and (min-width: 769px) {
  .p-home-service {
    padding: 50px 0 50px;
  }
}

.p-home-service:before {
  position: absolute;
  left: 0;
  right: 0;
  top: 98.66667vw;
  bottom: 0;
  background-color: #3D495E;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-home-service:before {
    top: 34.375vw;
  }
}

.p-home-service__ttl {
  position: relative;
  text-align: center;
  color: #3D495E;
  font-size: 5.46875vw;
  text-align: center; /* 中央揃えに変更 */
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
}

@media only screen and (min-width: 769px) {
  .p-home-service__ttl {
    font-size: 7.8125vw;
  }
}

.p-home-service__container {
  position: relative;
  width: 80vw;
  margin: 8vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-home-service__container {
    display: flex;
    justify-content: space-between;
    width: auto;
    margin: 40px 2.8125vw 0;
  }
}

.p-home-service-item {
  position: relative;
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-home-service-item {
    width: calc( 50% - 10px);
  }
}

.p-home-service-item:not(:first-child) {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .p-home-service-item:not(:first-child) {
    margin-top: 0;
  }
}

.p-home-service-item:after {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  box-sizing: border-box;
  pointer-events: none;
  content: '';
}

.p-home-service-item--transfer:after {
  border: 2.13333vw solid rgba(46, 77, 134, 0.2);
}

@media only screen and (min-width: 769px) {
  .p-home-service-item--transfer:after {
    border-width: 0.9375vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-service-item--transfer:after {
    border-width: 12px;
  }
}

.p-home-service-item--acqisition:after {
  border: 2.13333vw solid rgba(242, 122, 90, 0.2);
}

@media only screen and (min-width: 769px) {
  .p-home-service-item--acqisition:after {
    border-width: 0.9375vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-service-item--acqisition:after {
    border-width: 12px;
  }
}

.p-home-service-item__img img {
  display: block;
  width: 100%;
}

.p-home-service-item__ttl {
  position: absolute;
  left: 0;
  top: 43.2vw;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  width: 70.4vw;
  height: 21.33333vw;
  padding-left: 6.93333vw;
  box-sizing: border-box;
  background: url(../images/home/bg_service_item_ttl.svg) no-repeat left bottom;
  background-size: 100% 100%;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.4;
}

@media only screen and (min-width: 769px) {
  .p-home-service-item__ttl {
    top: 0;
    margin-top: calc( 100% * 235 / 590);
    width: 29.6875vw;
    height: 8.59375vw;
    padding-left: 2.8125vw;
    font-size: 2.5vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-service-item__ttl {
    top: 235px;
    margin-top: 0;
    width: 380px;
    height: 110px;
    padding-left: 36px;
    font-size: 3.2rem;
  }
}

.p-home-service-item__ttl:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 2.13333vw;
  height: 100%;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-home-service-item__ttl:before {
    width: 0.9375vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-service-item__ttl:before {
    width: 12px;
  }
}

.p-home-service-item__ttl em {
  font-style: normal;
}

.p-home-service-item--transfer .p-home-service-item__ttl:before {
  background-color: #2E4D86;
}

.p-home-service-item--transfer .p-home-service-item__ttl em {
  color: #2e4d86;
}

.p-home-service-item--acqisition .p-home-service-item__ttl:before {
  background-color: #FFCC40;
}

.p-home-service-item--acqisition .p-home-service-item__ttl em {
  color: #FFCC40;
}

.p-home-service-item__content {
  padding: 6.66667vw 8vw 12vw;
}

@media only screen and (min-width: 769px) {
  .p-home-service-item__content {
    padding: 4.29688vw 3.90625vw 3.125vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-service-item__content {
    padding: 55px 50px 40px;
  }
}

.p-home-service-item__txt {
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 1280px) {
  .p-home-service-item__txt {
    font-size: 1.6rem;
    line-height: 2;
  }
}

.p-home-service-item__link {
  width: 52.8vw;
  margin: 6.4vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-home-service-item__link {
    width: 220px;
    margin: 30px auto 0;
  }
}

.p-home-service__links {
  position: relative;
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .p-home-service__links {
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
    padding: 0 2.8125vw;
  }
}

.p-home-service-link {
  position: relative;
  padding: 0 5.33333vw 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-home-service-link {
    width: calc( 100% * 560 / 1200);
    padding: 0 1.5625vw 3.125vw;
    box-sizing: border-box;
  }
  .p-home-service-link:first-child {
    margin-left: calc( 100% * 20 / 1200);
  }
  .p-home-service-link:last-child {
    margin-right: calc( 100% * 20 / 1200);
  }
}

.p-home-service-link:before {
  position: absolute;
  left: 0;
  right: 0;
  top: 22.93333vw;
  bottom: 0;
  border-top: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
  pointer-events: none;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-home-service-link:before {
    top: 9.53125vw;
    border-left: 1px solid #ffffff;
    border-right: 1px solid #ffffff;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-service-link:before {
    top: 122px;
  }
}

.p-home-service-link:not(:first-child) {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .p-home-service-link:not(:first-child) {
    margin-top: 0;
  }
}

.p-home-service-link__thumb {
  position: relative;
  width: 80vw;
  margin-left: auto;
  margin-right: auto;
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-home-service-link__thumb {
    width: 33.59375vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-service-link__thumb {
    width: 430px;
  }
}

.p-home-service-link__thumb a {
  position: relative;
  display: block;
  width: 100%;
  height: 45.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-service-link__thumb a {
    height: 245px;
  }
}

.p-home-service-link__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-home-service-link__slider {
  border: 2px solid #E3E3E3;
  box-sizing: border-box;
}

.p-home-service-link__info {
  position: relative;
  margin-top: 4.8vw;
}

@media only screen and (min-width: 769px) {
  .p-home-service-link__info {
    margin-top: 28px;
  }
}

.p-home-service-link__ttl {
  color: #ffffff;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-service-link__ttl {
    font-size: 2.4rem;
  }
}

.p-home-service-link__txt {
  margin-top: 4.8vw;
  color: #ffffff;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.71429;
  letter-spacing: 0.125em;
}

@media only screen and (min-width: 769px) {
  .p-home-service-link__txt {
    margin-top: 16px;
    font-size: 1.4rem;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-service-link__txt {
    font-size: 1.6rem;
  }
}

.p-home-service-link__link {
  margin-top: 7.46667vw;
  text-align: center;
}

@media only screen and (min-width: 769px) {
  .p-home-service-link__link {
    margin-top: 18px;
  }
}

.p-home-service-link__link a {
  font-size: 1.4rem;
}

@media only screen and (min-width: 769px) {
  .p-home-service-link__link a {
    font-size: 1.6rem;
  }
}

.p-home-connection {
  position: relative;
  padding: 25.33333vw 0 12.8vw;
}

@media only screen and (min-width: 769px) {
  .p-home-connection {
    padding: 160px 0 84px;
  }
}

.p-home-connection:before {
  position: absolute;
  left: -19.73333vw;
  top: 17.06667vw;
  color: #3D495E;
  font-size: 21.33333vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.1;
  content: 'CONNECTION';
}

@media only screen and (min-width: 769px) {
  .p-home-connection:before {
    left: 50%;
    top: 88px;
    white-space: nowrap;
    text-align: center;
    font-size: 13.0rem;
    transform: translateX(-50%);
  }
}

.p-home-connection__ttl {
  color: #3D495E;
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.44444;
}

@media only screen and (min-width: 769px) {
  .p-home-connection__ttl {
    font-size: 2.6rem;
    line-height: 1.38462;
  }
}

.p-home-connection__txt {
  margin-top: 4.26667vw;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .p-home-connection__txt {
    margin-top: 32px;
    font-size: 1.8rem;
    line-height: 1.77778;
  }
}

.p-home-connection__container {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .p-home-connection__container {
    margin-top: 45px;
  }
}

.p-home-connection__link {
  width: 56.53333vw;
  margin: 10.66667vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-home-connection__link {
    width: 360px;
    margin: 60px auto 0;
  }
}

.p-home-reason {
  position: relative;
  padding: 12.8vw 0 0;
}

@media only screen and (min-width: 769px) {
  .p-home-reason {
    padding: 84px 0 0;
  }
}

.p-home-reason:before {
  position: absolute;
  left: 7.46667vw;
  top: 2.66667vw;
  color: #3D495E;
  font-size: 21.33333vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.1;
  content: 'REASON';
}

@media only screen and (min-width: 769px) {
  .p-home-reason:before {
    left: 50%;
    top: 14px;
    white-space: nowrap;
    font-size: 13.0rem;
    transform: translateX(-50%);
  }
}

.p-home-reason__ttl {
  color: #3D495E;
  margin: 4.26667vw 9.6vw 0;
  text-align: center;
  font-size: 7.8125vw;
  line-height: 1.44444;
}

@media only screen and (min-width: 769px) {
  .p-home-reason__ttl {
    font-size: 2.6rem;
    line-height: 1.38462;
    position: relative;
  text-align: center;
  color: #3D495E;
  font-size: 5.46875vw;
  text-align: center; /* 中央揃えに変更 */
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  }
}

.p-home-service__ttl {
  position: relative;
  text-align: center;
  color: #3D495E;
  font-size: 5.46875vw;
  text-align: center; /* 中央揃えに変更 */
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
}

@media only screen and (min-width: 769px) {
  .p-home-service__ttl {
    font-size: 7.8125vw;
  }
}

.p-home-reason__txt {
  margin: 4.26667vw 9.6vw 0;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .p-home-reason__txt {
    margin: 40px 2.8125vw 0;
    font-size: 1.8rem;
    line-height: 1.77778;
  }
}

.p-home-reason__container {
  position: relative;
  margin-top: 8vw;
  padding: 10.66667vw 0 13.33333vw;
  background-color: #EBECEF;
}

@media only screen and (min-width: 769px) {
  .p-home-reason__container {
    margin-top: 50px;
    padding: 60px 2.8125vw 100px;
  }
}

.p-home-reason__container:before {
  position: absolute;
  left: 96vw;
  top: -10.66667vw;
  color: #ffffff;
  font-size: 80vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 0.6;
  letter-spacing: 0;
  transform: rotate(90deg);
  transform-origin: left top;
  content: "REASON";
}

@media only screen and (min-width: 769px) {
  .p-home-reason__container:before {
    left: calc( 50% + 62.5vw);
    top: -6.48438vw;
    font-size: 52.34375vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason__container:before {
    left: calc( 50% + 800px);
    top: -83px;
    font-size: 67.0rem;
  }
}

.p-home-reason__in {
  position: relative;
}

.p-home-reason-sect:not(:first-child) {
  margin-top: 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-sect:not(:first-child) {
    margin-top: 80px;
  }
}

.p-home-reason-sect__ttl {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: calc( 100% - 9.6vw);
  height: 22.4vw;
  padding-left: 23.46667vw;
  margin-left: 9.6vw;
  box-sizing: border-box;
  border-bottom: 1.06667vw solid #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-sect__ttl {
    width: calc( 100% - 36px);
    height: 82px;
    padding-left: 160px;
    margin-left: 45px;
    border-bottom-width: 4px;
  }
}

.p-home-reason-sect__ttl > small {
  position: absolute;
  left: -6.4vw;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25.86667vw;
  height: 22.4vw;
  background: url(../images/home/bg_reason_num.svg) no-repeat center bottom;
  background-size: 100% 100%;
  color: #ffffff;
  font-size: 10.66667vw;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-sect__ttl > small {
    left: -45px;
    width: 181px;
    height: 157px;
    font-size: 8.0rem;
  }
}

.p-home-reason-sect__ttl > span {
  font-size: 1.8rem;
  line-height: 1.44444;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-sect__ttl > span {
    font-size: 3.2rem;
    line-height: 1.46875;
  }
}

.p-home-reason-sect__lead {
  margin: 4.26667vw 9.6vw 0;
  font-size: 2.0rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-sect__lead {
    margin: 32px 30px 0 205px;
  }
}

/* 全体のレイアウト設定 */
.p-home-reason-sect__body {
  display: flex;
  flex-direction: column; /* 縦に並べる */
  align-items: center; /* 中央に揃える */
  text-align: center; /* テキスト中央揃え */
}

/* 文字コンテンツ */
.text-content {
  margin-bottom: 20px; /* 文字と画像の間隔を調整 */
}

/* 画像コンテナ */
.image-container {
  display: flex;
  flex-direction: column; /* スマホ用画像を縦に並べる（必要に応じて調整） */
}

/* スマホ用画像 */
.mobile-image {
  display: block;
  width: 100%; /* スマホ画面幅に合わせる */
  max-width: 1000px; /* 最大幅を設定（必要に応じて調整） */
  height: 1000px; /* 高さは自動調整 */
}

/* 画面幅が769px以上の場合のスタイル */
@media (min-width: 769px) {
  .p-home-reason-sect__body {
    flex-direction: row; /* 横に並べる（必要に応じて調整） */
  }
  .text-content {
    margin-bottom: 0; /* 横並びのため下の余白を消す */
    margin-right: 10px; /* テキストと画像の間隔を調整 */
  }
  .image-container {
    flex-direction: row; /* パソコン用画像を横に並べる（必要に応じて調整） */
  }
  .mobile-image {
    display: none; /* スマホ用画像を隠す */
  }
  .image-container source {
    display: block; /* パソコン用画像を表示 */
  }
}




.p-home-reason-item01 {
  position: relative;
  margin-left: -9.6vw;
  margin-right: -9.6vw;
  padding-bottom: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item01 {
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 50px;
    width: calc( 100% * 580 / 1200);
  }
  .p-home-reason-item01:nth-child(2n) {
    margin-left: calc( 100% * 40 / 1200);
  }
}

.p-home-reason-item01:not(:first-child) {
  margin-top: 7.46667vw;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item01:not(:first-child) {
    margin-top: 0;
  }
}

.p-home-reason-item01:before {
  position: absolute;
  left: 0;
  right: 0;
  top: 26.66667vw;
  bottom: 0;
  background-color: #ffffff;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item01:before {
    top: 10.74219vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason-item01:before {
    top: 110px;
  }
}

.p-home-reason-item01__thumb {
  position: relative;
  width: 80vw;
  margin: 0 auto;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item01__thumb {
    width: 32.03125vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason-item01__thumb {
    width: 328px;
  }
}

.p-home-reason-item01__thumb > img {
  display: block;
  width: 100%;
}

.p-home-reason-item01__ttl {
  position: relative;
  margin: 5.33333vw 9.6vw 0;
  padding-bottom: 1.6vw;
  border-bottom: 1.06667vw solid #3D495E;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item01__ttl {
    margin: 30px calc( 100% * 70 / 580) 0;
    padding-bottom: 16px;
    border-bottom-width: 4px;
    font-size: 2.0rem;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason-item01__ttl {
    margin: 30px 70px 0;
  }
}

.p-home-reason-item01__list {
  position: relative;
  column-count: 2;
  column-gap: 0;
  margin: 4.26667vw 9.6vw 0;
  font-size: 1.2rem;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item01__list {
    margin: 28px 24px 0;
    font-size: 1.4rem;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason-item01__list {
    margin: 28px 90px 0;
    font-size: 1.6rem;
  }
}

.p-home-reason-item01__list li {
  position: relative;
  padding-left: 1.5em;
}

.p-home-reason-item01__list li:not(:first-child) {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item01__list li:not(:first-child) {
    margin-top: 20px;
  }
}

.p-home-reason-item01__list li:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 1em;
  height: 1em;
  border-radius: 0.5em;
  background-color: #FFCC40;
  content: '';
}

.p-home-reason-item02, .p-home-reason-item03 {
  padding: 5.33333vw;
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02, .p-home-reason-item03 {
    padding: 3.125vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason-item02, .p-home-reason-item03 {
    padding: 40px;
  }
}

.p-home-reason-item02:not(:first-child), .p-home-reason-item03:not(:first-child) {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02:not(:first-child), .p-home-reason-item03:not(:first-child) {
    margin-top: 0;
  }
}

.p-home-reason-item02__ttl, .p-home-reason-item03__ttl {
  padding-left: 0.55556em;
  border-left: 1.6vw solid #3D495E;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02__ttl, .p-home-reason-item03__ttl {
    border-left-width: 8px;
    font-size: 2.4rem;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02 {
    width: calc( 100% * 580 / 1200);
    box-sizing: border-box;
  }
  .p-home-reason-item02:nth-child(2n) {
    margin-left: calc( 100% * 40 / 1200);
  }
  .p-home-reason-item02:nth-child(n+3) {
    margin-top: calc( 100% * 40 / 1200);
  }
}

.p-home-reason-item02__catch {
  margin-top: 8.53333vw;
  text-align: center;
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02__catch {
    margin-top: 40px;
    font-size: 2.8125vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason-item02__catch {
    font-size: 3.6rem;
  }
}

.p-home-reason-item02__catch strong {
  margin: 0 0.15em 0 0;
  color: #FFCC40;
  font-size: 9.5rem;
  font-family: "Roboto", sans-serif;
  line-height: 1;
  letter-spacing: -0.1em;
  vertical-align: -0.075em;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02__catch strong {
    font-size: 14.0625vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason-item02__catch strong {
    font-size: 18.0rem;
  }
}

.p-home-reason-item02__catch--icon {
  display: flex;
  text-align: left;
}

.p-home-reason-item02__catch__icon {
  width: 16vw;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02__catch__icon {
    width: 105px;
  }
}

.p-home-reason-item02__catch__icon img {
  display: block;
  width: 100%;
}

.p-home-reason-item02__catch__txt {
  margin-left: 0.5em;
  font-size: 2.0rem;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02__catch__txt {
    font-size: 4.0rem;
    line-height: 1.42857;
  }
}

.p-home-reason-item02__catch__txt strong {
  margin: 0;
  font-size: 100%;
  letter-spacing: 0.01em;
  vertical-align: auto;
}

.p-home-reason-item02__sub {
  margin-top: 5.33333vw;
  padding-top: 4.26667vw;
  border-top: 1px solid rgba(61, 73, 95, 0.2);
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02__sub {
    margin-top: 40px;
    padding-top: 30px;
    font-size: 2.0rem;
  }
}

.p-home-reason-item02__sub small {
  font-size: 1.2rem;
  font-weight: 400;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02__sub small {
    font-size: 1.6rem;
  }
}

.p-home-reason-item02__txt {
  margin-top: 3.2vw;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item02__txt {
    margin-top: 20px;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item03 {
    display: flex;
  }
  .p-home-reason-item03:not(:first-child) {
    margin-top: calc( 100% * 40 / 1200);
  }
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item03__thumb {
    width: 20.3125vw;
    flex: 0 0 auto;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason-item03__thumb {
    width: 260px;
  }
}

.p-home-reason-item03__thumb > img {
  display: block;
  width: 100%;
}

.p-home-reason-item03__content {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item03__content {
    margin-top: 0;
    margin-left: 4.6875vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-reason-item03__content {
    margin-left: 60px;
  }
}

.p-home-reason-item03__sub {
  margin-top: 5.33333vw;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item03__sub {
    margin-top: 35px;
    font-size: 2.0rem;
    line-height: 1.4;
  }
}

.p-home-reason-item03__txt {
  margin-top: 3.2vw;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-item03__txt {
    margin-top: 15px;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}

.p-home-reason-others {
  margin: 8vw 9.6vw 0;
  padding: 6.4vw 5.33333vw 2.66667vw;
  border: 1.06667vw solid #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-others {
    margin: 30px 0 0;
    padding: 30px 30px 26px;
    border-width: 4px;
  }
}

.p-home-reason-others__ttl {
  padding-bottom: 2.66667vw;
  border-bottom: 1px solid #3D495E;
  font-size: 1.4rem;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-others__ttl {
    position: relative;
    padding-bottom: 0;
    border-bottom: 0;
    font-size: 1.6rem;
  }
  .p-home-reason-others__ttl:after {
    position: absolute;
    left: 10.5em;
    right: 0;
    top: 50%;
    height: 1px;
    background-color: #3D495E;
    content: '';
  }
}

.p-home-reason-others__list {
  margin-top: 5.33333vw;
  column-count: 3;
  font-size: 1.2rem;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-others__list {
    column-count: auto;
    margin-top: 24px;
    font-size: 1.6rem;
  }
}

.p-home-reason-others__list li {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-reason-others__list li {
    display: inline-block;
    margin-right: 2em;
    margin-bottom: 1em;
  }
}

.p-home-reason-others__list li:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 1em;
  height: 1em;
  border-radius: 0.5em;
  background-color: #3D495E;
  content: '';
}

.p-home-case {
  position: relative;
  padding: 45.33333vw 0 0;
  background-color: #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-home-case {
    padding: 156px 0 0;
  }
}

.p-home-case:before {
  position: absolute;
  left: -6.93333vw;
  top: 16vw;
  text-align: center;
  color: #ffffff;
  font-size: 21.33333vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.1;
  content: 'MATCHING\ARESULT';
}

@media only screen and (min-width: 769px) {
  .p-home-case:before {
    left: calc( 2.8125vw + 4px);
    top: 92px;
    white-space: nowrap;
    font-size: 13.0rem;
    content: 'MATCHING RESULT';
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case:before {
    left: calc( 50% - 594px);
  }
}

.p-home-case__heading {
  position: relative;
  margin: 0 9.6vw;
}

@media only screen and (min-width: 769px) {
  .p-home-case__heading {
    margin: 0 2.8125vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case__heading {
    margin: 0;
  }
}

@media only screen and (min-width: 769px) {
  .p-home-case__heading__in {
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 769px) {
  .p-home-case__heading__main {
    width: calc( 100% * 620 / 1200 - 30px);
  }
}

.p-home-case__heading__pickup {
  display: flex;
  justify-content: space-between;
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-case__heading__pickup {
    margin-top: 0;
    width: calc( 100% * 580 / 1200);
  }
}

.p-home-case__ttl {
  text-align: center;
  color: #ffffff;
  font-size: 1.8rem;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-home-case__ttl {
    text-align: left;
    font-size: 2.6rem;
  }
}

.p-home-case__lead {
  margin-top: 5.33333vw;
  text-align: center;
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .p-home-case__lead {
    margin-top: 30px;
    text-align: left;
    font-size: 1.8rem;
    line-height: 1.77778;
  }
}

.p-home-case__box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38.66667vw;
  height: 18.66667vw;
  border: 1px solid #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-home-case__box {
    width: calc( 50% - 10px);
    height: 135px;
  }
}

.p-home-case__box dl {
  display: flex;
  align-items: center;
  color: #ffffff;
}

.p-home-case__box dl dt {
  text-align: left;
  font-size: 1.0rem;
  font-weight: 700;
  line-height: 1.3;
}

@media only screen and (min-width: 769px) {
  .p-home-case__box dl dt {
    font-size: 1.5625vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case__box dl dt {
    font-size: 2.0rem;
  }
}

.p-home-case__box dl dd {
  padding-left: 0.5em;
  font-size: 1.0rem;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-case__box dl dd {
    font-size: 1.5625vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case__box dl dd {
    font-size: 2.0rem;
  }
}

.p-home-case__box dl dd em {
  color: #FFCC40;
  font-size: 3.0rem;
  font-style: normal;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-case__box dl dd em {
    font-size: 4.6875vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case__box dl dd em {
    font-size: 6.0rem;
  }
}

.p-home-case__box p {
  text-align: center;
  color: #ffffff;
  font-size: 1.0rem;
  font-weight: 700;
  line-height: 1.6;
}

@media only screen and (min-width: 769px) {
  .p-home-case__box p {
    font-size: 1.5625vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case__box p {
    font-size: 2.0rem;
  }
}

.p-home-case__box p em {
  color: #FFCC40;
  font-size: 2.4rem;
  font-style: normal;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-home-case__box p em {
    font-size: 3.75vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case__box p em {
    font-size: 4.8rem;
  }
}

.p-home-case__body {
  position: relative;
  margin-top: 8vw;
  padding-bottom: 12vw;
}

@media only screen and (min-width: 769px) {
  .p-home-case__body {
    margin-top: 60px;
    padding-bottom: 88px;
  }
}

.p-home-case__body:before {
  position: absolute;
  left: 0;
  right: 0;
  top: 25.6vw;
  bottom: 0;
  background-color: #ffffff;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-home-case__body:before {
    top: 10.9375vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case__body:before {
    top: 140px;
  }
}

.p-home-case__container {
  padding: 0 9.6vw;
}

@media only screen and (min-width: 769px) {
  .p-home-case__container {
    padding: 0 2.8125vw;
    display: flex;
    flex-wrap: wrap;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case__container {
    padding: 0;
  }
}

.p-home-case-item {
  position: relative;
}

.p-home-case-item:not(:first-child) {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-home-case-item {
    width: calc( 50% - 1.5625vw);
  }
  .p-home-case-item:not(:first-child) {
    margin-top: 0;
    margin-left: 3.125vw;
  }
  .p-home-case-item:nth-child(2n+1) {
    margin-left: 0;
  }
  .p-home-case-item:nth-child(n+3) {
    margin-top: 3.51563vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-case-item {
    width: calc( ( 100% - 80px ) / 3);
  }
  .p-home-case-item:not(:first-child) {
    margin-left: 40px;
  }
  .p-home-case-item:nth-child(2n+1) {
    margin-left: 40px;
  }
  .p-home-case-item:nth-child(3n+1) {
    margin-left: 0;
  }
  .p-home-case-item:nth-child(n+3) {
    margin-top: 0;
  }
  .p-home-case-item:nth-child(n+4) {
    margin-top: 45px;
  }
}

.p-home-case-item__thumb {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: calc( 100% * 450 / 800);
  background-color: #ffffff;
}

.p-home-case-item__thumb > a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}

.p-home-case-item__thumb > a > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-home-case-item__thumb figcaption {
  position: absolute;
  left: 3.2vw;
  bottom: 2.66667vw;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 21.06667vw;
  height: 7.46667vw;
  background: url(../images/common/bg_result_caption.svg) no-repeat;
  background-size: 100% 100%;
  color: #ffffff;
  font-size: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-home-case-item__thumb figcaption {
    left: 10px;
    bottom: 10px;
    width: 100px;
    height: 35px;
    font-size: 1.4rem;
  }
}

.p-home-case-item__info {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-case-item__info {
    margin-top: 20px;
  }
}

.p-home-case-item__ttl {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-home-case-item__ttl {
    font-size: 2.0rem;
    line-height: 1.5;
  }
}

.p-home-case-item__client {
  margin-top: 4vw;
}

@media only screen and (min-width: 769px) {
  .p-home-case-item__client {
    margin-top: 15px;
  }
}

.p-home-case-item__client dl {
  display: flex;
  align-items: center;
}

.p-home-case-item__client dl:not(:first-child) {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-home-case-item__client dl:not(:first-child) {
    margin-top: 10px;
  }
}

.p-home-case-item__client dl dt {
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

@media only screen and (min-width: 769px) {
  .p-home-case-item__client dl dt {
    font-size: 1.3rem;
  }
}

.p-home-case-item__client dl dd {
  padding-left: 2.13333vw;
  margin-left: 2.13333vw;
  border-left: 1px solid rgba(51, 51, 51, 0.3);
  font-size: 1.1rem;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
  .p-home-case-item__client dl dd {
    padding-left: 15px;
    margin-left: 15px;
    font-size: 1.3rem;
  }
}

.p-home-case-item__txt {
  margin-top: 4vw;
  font-size: 1.3rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .p-home-case-item__txt {
    margin-top: 15px;
    font-size: 1.5rem;
    line-height: 1.75;
  }
}

.p-home-case__link {
  position: relative;
  width: 49.06667vw;
  margin: 8vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-home-case__link {
    width: 360px;
    margin: 60px auto 0;
  }
}

.p-home-news {
  position: relative;
  padding: 12vw 0 12vw;
}

@media only screen and (min-width: 769px) {
  .p-home-news {
    padding: 88px 0 60px;
  }
}

.p-home-news:before {
  position: absolute;
  left: 18.66667vw;
  top: 2.66667vw;
  color: #3D495E;
  font-size: 21.33333vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.1;
  content: 'NEWS';
}

@media only screen and (min-width: 769px) {
  .p-home-news:before {
    left: 50%;
    top: 40px;
    white-space: nowrap;
    font-size: 13.0rem;
    transform: translateX(-50%);
  }
}

.p-home-news__in {
  position: relative;
}

.p-home-news__ttl {
  color: #3D495E;
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.44444;
}

@media only screen and (min-width: 769px) {
  .p-home-news__ttl {
    font-size: 2.6rem;
    line-height: 1.38462;
  }
}

.p-home-news__container {
  margin-top: 6.66667vw;
  padding: 0 9.6vw;
}

@media only screen and (min-width: 769px) {
  .p-home-news__container {
    margin-top: 70px;
    padding: 0 2.8125vw;
    display: flex;
    flex-wrap: wrap;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-news__container {
    padding: 0;
  }
}

.p-home-news-item {
  position: relative;
  padding: 5.33333vw 0 6.66667vw;
}

.p-home-news-item:not(:first-child) {
  border-top: 1px solid rgba(51, 51, 51, 0.3);
}

@media only screen and (min-width: 769px) {
  .p-home-news-item {
    padding: 0;
    width: calc( 50% - 2.5vw);
    box-sizing: border-box;
  }
  .p-home-news-item:not(:first-child) {
    border-top: 0;
  }
  .p-home-news-item:not(:nth-child(2n+1)) {
    margin-left: 5vw;
  }
  .p-home-news-item:not(:nth-child(2n+1)):before {
    position: absolute;
    left: -2.5vw;
    top: 0;
    bottom: 0;
    width: 1px;
    height: 100%;
    background-color: #c1c1c1;
    content: '';
  }
  .p-home-news-item:nth-child(2n+1):after {
    position: absolute;
    right: calc( -2.5vw - 1px);
    top: 0;
    bottom: 0;
    width: 1px;
    height: 100%;
    background-color: #c1c1c1;
    content: '';
  }
  .p-home-news-item:nth-child(n+3) {
    margin-top: 5vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-news-item {
    width: calc( ( 100% - 80px ) / 3);
  }
  .p-home-news-item:not(:nth-child(2n+1)) {
    margin-left: 40px;
  }
  .p-home-news-item:not(:nth-child(2n+1)):before {
    display: none;
  }
  .p-home-news-item:not(:nth-child(3n+1)) {
    margin-left: 40px;
  }
  .p-home-news-item:not(:nth-child(3n+1)):before {
    position: absolute;
    left: -20px;
    top: 0;
    bottom: 0;
    display: block;
    width: 1px;
    height: 100%;
    background-color: #c1c1c1;
    content: '';
  }
  .p-home-news-item:nth-child(2n+1):after {
    display: none;
  }
  .p-home-news-item:nth-child(3n+1):after {
    position: absolute;
    right: -21px;
    top: 0;
    bottom: 0;
    display: block;
    width: 1px;
    height: 100%;
    background-color: #c1c1c1;
    content: '';
  }
  .p-home-news-item:nth-child(n+3) {
    margin-top: 0;
  }
  .p-home-news-item:nth-child(n+4) {
    margin-top: 40px;
  }
}

.p-home-news-item__heading {
  display: flex;
  align-items: center;
}

.p-home-news-item__date {
  color: #3D495E;
  font-size: 1.0rem;
  font-weight: 700;
  letter-spacing: 0;
}

@media only screen and (min-width: 769px) {
  .p-home-news-item__date {
    font-size: 1.6rem;
  }
}

.p-home-news-item__cat {
  margin-left: 1em;
  padding: 0.1em 1em;
  background-color: #3D495E;
  color: #ffffff;
  font-size: 1.0rem;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-home-news-item__cat {
    font-size: 1.2rem;
  }
}

.p-home-news-item__body {
  margin-top: 2.66667vw;
}

.p-home-news-item__ttl {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.85714;
}

@media only screen and (min-width: 769px) {
  .p-home-news-item__ttl {
    font-size: 1.6rem;
    line-height: 2;
  }
}

.p-home-news__link {
  width: 49.06667vw;
  margin: 2.66667vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-home-news__link {
    width: 360px;
    margin: 80px auto 0;
  }
}

.p-home-links {
  padding: 4vw 9.6vw 17.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-links {
    padding: 60px 2.8125vw 95px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-links__body {
    display: flex;
    justify-content: space-between;
  }
}

.p-home-links-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 5.33333vw 6.66667vw 5.33333vw 0;
  border-top: 1px solid rgba(61, 73, 95, 0.2);
  border-bottom: 1px solid rgba(61, 73, 95, 0.2);
  border-right: 1px solid rgba(61, 73, 95, 0.2);
  box-sizing: border-box;
}

.p-home-links-item:not(:first-child) {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-home-links-item:not(:first-child) {
    margin-top: 20px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-links-item:not(:first-child) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 1280px) {
  .p-home-links-item {
    align-items: flex-start;
    width: calc( 50% - 10px);
    padding: 60px 35px 40px;
  }
}

.p-home-links-item:before {
  position: absolute;
  left: 0;
  top: -1px;
  bottom: -1px;
  width: 2.13333vw;
  background-color: #3D495E;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-home-links-item:before {
    width: 10px;
  }
}

.p-home-links-item__thumb {
  position: relative;
  width: 26.66667vw;
}

@media only screen and (min-width: 1280px) {
  .p-home-links-item__thumb {
    width: 150px;
    flex: 0 0 auto;
  }
}

.p-home-links-item__thumb > img {
  display: block;
  width: 100%;
}

.p-home-links-item__content {
  position: relative;
  width: calc( 100% - 30.66667vw);
}

@media only screen and (min-width: 1280px) {
  .p-home-links-item__content {
    width: calc( 100% - 180px);
  }
}

.p-home-links-item__ttl {
  font-size: 1.6rem;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-home-links-item__ttl {
    font-size: 2.4rem;
  }
}

.p-home-links-item__txt {
  margin-top: 2.66667vw;
  font-size: 1.2rem;
  line-height: 1.83333;
}

@media only screen and (min-width: 769px) {
  .p-home-links-item__txt {
    margin-top: 16px;
    font-size: 1.6rem;
    line-height: 2;
  }
}

.p-home-links-item__link {
  width: 38.4vw;
  margin: 4vw auto 0 0;
}

@media only screen and (min-width: 769px) {
  .p-home-links-item__link {
    width: 200px;
    margin: 25px auto 0 0;
  }
}

.p-home-fixed {
  position: fixed;
  right: 5.33333vw;
  bottom: 5.33333vw;
  z-index: 12;
}

@media only screen and (min-width: 769px) {
  .p-home-fixed {
    display: none;
  }
}

.p-home-fixed > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25.06667vw;
  height: 21.6vw;
  background: url(../images/common/bg_header_contact.svg) no-repeat;
  background-size: 100% 100%;
  text-align: center;
  color: #ffffff;
  font-size: 1.0rem;
  font-weight: 700;
  line-height: 1.4;
}

.p-login {
  background: linear-gradient(#E7F0F5, #FDF2ED);
}

.p-login__header {
  padding-top: 21.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-login__header {
    padding-top: 50px;
  }
}

.p-login__logo {
  width: 42.13333vw;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (min-width: 769px) {
  .p-login__logo {
    width: 158px;
  }
}

.p-login__logo img {
  display: block;
  width: 100%;
}

.p-login__ttl {
  margin-top: 1em;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.05em;
}

.p-login__body {
  padding: 12vw 13.33333vw 26.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-login__body {
    max-width: 280px;
    padding: 45px 0 60px;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-login__inputs dl:not(:first-child) {
  margin-top: 4.8vw;
}

@media only screen and (min-width: 769px) {
  .p-login__inputs dl:not(:first-child) {
    margin-top: 18px;
  }
}

.p-login__inputs dl dt {
  font-size: 1.4rem;
  font-weight: 400;
}

.p-login__inputs dl dd {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-login__inputs dl dd {
    margin-top: 10px;
  }
}

.p-login__inputs dl dd input {
  display: block;
  width: 100%;
  padding: 1em;
  box-sizing: border-box;
  border: 1px solid #DBDBDB;
  font-size: 1.6rem;
  line-height: 1;
}

.p-login__remember {
  margin-top: 5.33333vw;
  text-align: center;
  font-size: 1.2rem;
}

@media only screen and (min-width: 769px) {
  .p-login__remember {
    margin-top: 20px;
  }
}

.p-login__remember a {
  display: inline-block;
  border-bottom: 1px solid #707070;
  color: #4E4E4E;
}

.p-login__submit {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-login__submit {
    margin-top: 20px;
  }
}

.p-login__regist {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-login__regist {
    margin-top: 40px;
  }
}

.p-login__regist__ttl {
  text-align: center;
  font-size: 1.4rem;
  font-weight: 400;
}

.p-login__regist__link {
  margin-top: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .p-login__regist__link {
    margin-top: 16px;
  }
}

.p-login #wpmem_login {
  width: 100% !important;
  font-family: inherit !important;
}

.p-login #wpmem_login fieldset {
  margin: 0 !important;
}

.p-login #wpmem_login legend {
  display: none !important;
}

.p-login #wpmem_msg,
.p-login .wpmem_msg {
  width: 100%;
  padding: 1em;
  box-sizing: border-box;
}

.p-login #wpmem_pwdreset_form .button_div,
.p-login #wpmem_login .button_div {
  margin: 5.33333vw 0 0 0;
}

@media only screen and (min-width: 769px) {
  .p-login #wpmem_pwdreset_form .button_div,
  .p-login #wpmem_login .button_div {
    margin-top: 20px;
  }
}

.p-login #wpmem_pwdreset_form .button_div .buttons,
.p-login #wpmem_login .button_div .buttons {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 13.33333vw;
  border: 0;
  border-radius: 2.66667vw;
  outline: 0;
  background-color: #4E4E4E;
  color: #ffffff;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

@media only screen and (min-width: 769px) {
  .p-login #wpmem_pwdreset_form .button_div .buttons,
  .p-login #wpmem_login .button_div .buttons {
    height: 50px;
    border-radius: 10px;
    font-size: 1.5rem;
  }
}

.p-membership-outline {
  position: relative;
  padding-top: 10.66667vw;
  padding-bottom: 10.66667vw;
  background-color: #F2F4F5;
}

@media only screen and (min-width: 769px) {
  .p-membership-outline {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

.p-membership-outline:after {
  position: absolute;
  left: 50%;
  top: 100%;
  width: 0;
  height: 0;
  border-top: 9.06667vw solid #F2F4F5;
  border-left: 18.4vw solid transparent;
  border-right: 18.4vw solid transparent;
  transform: translateX(-50%);
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-membership-outline:after {
    border-top: 68px solid #F2F4F5;
    border-left: 138px solid transparent;
    border-right: 138px solid transparent;
  }
}

.p-membership-outline__catch {
  text-align: center;
  color: #FFCC40;
  font-size: 3.0rem;
}

@media only screen and (min-width: 769px) {
  .p-membership-outline__catch {
    font-size: 6.0rem;
  }
}

.p-membership-outline__lead {
  margin-top: 5.33333vw;
  text-align: center;
  color: #193B64;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.66667;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-membership-outline__lead {
    margin-top: 40px;
    font-size: 3.0rem;
    line-height: 1.66667;
  }
}

.p-membership-outline__benefits {
  margin: 4.26667vw 4.26667vw 0;
  padding: 6.4vw 5.33333vw 5.33333vw;
  border: 1px solid #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-membership-outline__benefits {
    display: flex;
    align-items: center;
    margin: 52px 0 0;
    padding: 48px 40px 40px;
  }
}

.p-membership-outline__benefits__ttl {
  text-align: center;
  color: #3D495E;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.5;
  white-space: nowrap;
}

@media only screen and (min-width: 769px) {
  .p-membership-outline__benefits__ttl {
    flex: 0 0 auto;
    width: 318px;
    border-right: 1px solid #3D495E;
    text-align: left;
    font-size: 3.6rem;
  }
}

.p-membership-outline__benefits__ttl em {
  color: #F07A5F;
  font-style: normal;
  font-weight: 700;
}

.p-membership-outline__benefits__list {
  padding-top: 6.66667vw;
  margin-top: 5.33333vw;
  border-top: 1px solid #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-membership-outline__benefits__list {
    padding-top: 0;
    padding-left: 64px;
    margin-top: 0;
    border-top: 0;
  }
}

@media only screen and (min-width: 1280px) {
  .p-membership-outline__benefits__list dl {
    display: flex;
    align-items: center;
  }
}

.p-membership-outline__benefits__list dl:not(:first-child) {
  margin-top: 3.2vw;
}

@media only screen and (min-width: 769px) {
  .p-membership-outline__benefits__list dl:not(:first-child) {
    margin-top: 26px;
  }
}

.p-membership-outline__benefits__list dl dt > span {
  display: inline-block;
  padding: 0.3em 0.6em;
  background-color: #3D495E;
  color: #ffffff;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

@media only screen and (min-width: 769px) {
  .p-membership-outline__benefits__list dl dt > span {
    font-size: 1.8rem;
  }
}

.p-membership-outline__benefits__list dl dd {
  color: #3D495E;
  font-size: 1.4rem;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-membership-outline__benefits__list dl dd {
    font-size: 2.6rem;
  }
}

@media only screen and (min-width: 1280px) {
  .p-membership-outline__benefits__list dl dd {
    padding-left: 0.75em;
  }
}

.p-membership-form {
  padding-top: 16vw;
  padding-bottom: 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-membership-form {
    max-width: 770px;
    padding-top: 120px;
    padding-bottom: 110px;
    margin: 0 auto;
  }
}

.p-membership-form__in {
  margin-left: 4.26667vw;
  margin-right: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .p-membership-form__in {
    max-width: 770px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (max-width: 768px) {
  .p-membership-form table,
  .p-membership-form tbody,
  .p-membership-form tr,
  .p-membership-form th,
  .p-membership-form td {
    display: block;
  }
}

.p-membership-form table {
  width: 100%;
  font-size: 1.5rem;
  line-height: 1.4;
}

.p-membership-form caption {
  display: none;
}

.p-membership-form th {
  padding-top: 4.26667vw;
  text-align: left;
  color: #3D495E;
  font-weight: 400;
}

@media only screen and (min-width: 769px) {
  .p-membership-form th {
    width: 160px;
    padding-top: 16px;
    padding-bottom: 16px;
  }
}

.p-membership-form th small.req {
  display: inline-block !important;
  padding: 0.25em 0.3em 0.3em !important;
  margin: 0 0 0 0.7em !important;
  border-radius: 2px !important;
  background-color: #F07A5F !important;
  vertical-align: middle !important;
  color: #ffffff !important;
  font-size: 1.1rem !important;
  line-height: 1 !important;
  letter-spacing: 0.05em !important;
}

.p-membership-form td {
  padding-top: 4.26667vw;
  padding-bottom: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .p-membership-form td {
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 1em;
  }
}

.p-membership-form #wpmem_reg {
  width: 100%;
}

.p-membership-form #wpmem_reg fieldset {
  margin: 0;
}

.p-membership-form #wpmem_reg input[type=date],
.p-membership-form #wpmem_reg input[type=email],
.p-membership-form #wpmem_reg input[type=number],
.p-membership-form #wpmem_reg input[type=password],
.p-membership-form #wpmem_reg input[type=text],
.p-membership-form #wpmem_reg input[type=url],
.p-membership-form #wpmem_reg textarea,
.p-membership-form #wpmem_reg select {
  display: block;
  width: 100%;
  padding: 1em;
  border: 1px solid #3D495E;
  box-sizing: border-box;
  background-color: #FAFAFA;
  font-size: 1.5rem;
}

.p-membership-form #wpmem_reg input#last_name,
.p-membership-form #wpmem_reg input#first_name {
  display: inline-block;
  width: 10em;
}

@media only screen and (min-width: 769px) {
  .p-membership-form #wpmem_reg input#last_name,
  .p-membership-form #wpmem_reg input#first_name {
    width: 12em;
  }
}

.p-membership-form #wpmem_reg input#first_name {
  margin-left: 0.5em;
}

.p-membership-form #wpmem_reg textarea {
  height: 8em;
  resize: none;
}

.p-membership-form #wpmem_reg textarea[readonly] {
  height: 15em;
  font-size: 1.3rem;
  line-height: 1.46154;
}

.p-membership-form .wpmem_msg {
  width: 100%;
}

.p-membership-form__notes {
  color: #F07A5F;
}

.p-membership-form__agree {
  text-align: center;
}

.p-membership-form__agree a {
  color: #F07A5F;
  text-decoration: underline;
}

.p-membership-form__agree a:hover {
  text-decoration: none;
}

.p-membership-form__submit {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-membership-form__submit {
    width: 316px;
    margin: 10px auto 0;
  }
}

.p-membership-form .req-text {
  display: none !important;
}

.p-membership-confirm, .p-membership-complete {
  padding-top: 20vw;
  padding-bottom: 20vw;
}

@media only screen and (min-width: 769px) {
  .p-membership-confirm, .p-membership-complete {
    padding-top: 150px;
    padding-bottom: 150px;
  }
}

.p-membership-confirm__ttl, .p-membership-complete__ttl {
  text-align: center;
  color: #F07A5F;
  font-size: 6.93333vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-membership-confirm__ttl, .p-membership-complete__ttl {
    font-size: 40px;
  }
}

.p-membership-confirm__catch, .p-membership-complete__catch {
  margin-top: 8.53333vw;
  text-align: center;
  color: #193B64;
  font-size: 3.73333vw;
  font-weight: 500;
  line-height: 1.38462;
}

@media only screen and (min-width: 769px) {
  .p-membership-confirm__catch, .p-membership-complete__catch {
    margin-top: 40px;
    font-size: 2.6rem;
  }
}

.p-membership-confirm__home, .p-membership-complete__home {
  max-width: 275px;
  margin: 13.33333vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-membership-confirm__home, .p-membership-complete__home {
    margin: 100px auto 0;
  }
}

.p-movie__body {
  padding: 5.86667vw 4.26667vw 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-movie__body {
    padding-top: 75px;
    padding-bottom: 90px;
  }
}

.p-movie__in {
  position: relative;
}

.p-movie__list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .p-movie-item {
    width: calc( 50% - 2.66667vw);
  }
  .p-movie-item:not(:nth-child(2n+1)) {
    margin-left: 5.33333vw;
  }
  .p-movie-item:nth-child(n+3) {
    margin-top: 5.33333vw;
  }
}

@media only screen and (min-width: 769px) {
  .p-movie-item {
    width: calc( ( 100% - 80px ) / 3);
  }
  .p-movie-item:not(:nth-child(3n+1)) {
    margin-left: 40px;
  }
  .p-movie-item:nth-child(n+4) {
    margin-top: 40px;
  }
}

.p-movie-item__thumb > a {
  position: relative;
  display: block;
}

.p-movie-item__thumb > a > img {
  display: block;
}

.p-movie-item__thumb > a:after {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 9.33333vw;
  height: 9.33333vw;
  background: url(../images/common/ico_play_b.svg) no-repeat;
  background-size: 100% 100%;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-movie-item__thumb > a:after {
    width: 75px;
    height: 75px;
  }
}

.p-movie-item__ttl {
  margin-top: 1em;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-movie-item__ttl {
    font-size: 2.0rem;
  }
}

.p-movie__pager {
  margin-top: 12vw;
}

@media only screen and (min-width: 769px) {
  .p-movie__pager {
    margin-top: 90px;
  }
}

.p-mypage-index__in {
  padding: 7.46667vw 4.26667vw 21.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__in {
    max-width: 805px;
    padding: 0 30px 100px;
    margin-left: auto;
    margin-right: auto;
    background-color: transparent;
  }
}

.p-mypage-index__situation {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation {
    margin-top: 80px;
  }
}

.p-mypage-index__situation .wpmem_msg {
  width: 100%;
}

.p-mypage-index__situation-modal__lead {
  text-align: center;
  color: #193B64;
  font-size: 4.8vw;
  font-weight: 500;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation-modal__lead {
    font-size: 1.8rem;
  }
}

.p-mypage-index__situation-modal__inputs {
  margin-top: 9.6vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation-modal__inputs {
    margin-top: 40px;
  }
}

.p-mypage-index__situation-modal__inputs dl {
  background-color: #ffffff;
  border-radius: 1.6vw;
  padding: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation-modal__inputs dl {
    display: flex;
    align-items: center;
    border-radius: 6px;
    padding: 32px 20px;
  }
}

.p-mypage-index__situation-modal__inputs dl:not(:first-child) {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation-modal__inputs dl:not(:first-child) {
    margin-top: 10px;
  }
}

.p-mypage-index__situation-modal__inputs dl dt {
  text-align: center;
  white-space: nowrap;
  color: #193B64;
  font-size: 1.5rem;
  font-weight: 500;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation-modal__inputs dl dt {
    padding: 0 20px;
    text-align: left;
    font-size: 1.6rem;
  }
}

.p-mypage-index__situation-modal__inputs dl dd {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation-modal__inputs dl dd {
    margin-top: 0;
    padding: 0 20px;
  }
}

.p-mypage-index__situation-modal__inputs dl:nth-child(1) ul li {
  width: 100%;
}

.p-mypage-index__situation-modal__inputs dl:nth-child(1) ul li:not(:first-child) {
  margin-top: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation-modal__inputs dl:nth-child(1) ul li {
    width: 50%;
  }
  .p-mypage-index__situation-modal__inputs dl:nth-child(1) ul li:not(:first-child) {
    margin-top: 0;
  }
  .p-mypage-index__situation-modal__inputs dl:nth-child(1) ul li:nth-child(n+3) {
    margin-top: 20px;
  }
}

.p-mypage-index__situation-modal__inputs dl:nth-child(2) ul li {
  width: 50%;
}

.p-mypage-index__situation-modal__inputs dl:nth-child(2) ul li:nth-child(n+3) {
  margin-top: 4.26667vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation-modal__inputs dl:nth-child(2) ul li {
    width: auto;
  }
  .p-mypage-index__situation-modal__inputs dl:nth-child(2) ul li:nth-child(n+3) {
    margin-top: 0;
  }
  .p-mypage-index__situation-modal__inputs dl:nth-child(2) ul li:not(:nth-child(4n+1)) {
    margin-left: 30px;
  }
  .p-mypage-index__situation-modal__inputs dl:nth-child(2) ul li:nth-child(n+5) {
    margin-top: 20px;
  }
}

.p-mypage-index__situation-modal__inputs ul {
  display: flex;
  flex-wrap: wrap;
}

.p-mypage-index__situation-modal__inputs .m-input-radio {
  font-size: 4vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__situation-modal__inputs .m-input-radio {
    font-size: 1.4rem;
  }
}

.p-mypage-index__situation-modal__submit {
  width: 272px;
  margin: 50px auto 0;
}

.p-mypage-index__bookmark {
  margin-top: 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-index__bookmark {
    margin-top: 50px;
  }
}

.p-mypage-bookmark__in {
  padding: 7.46667vw 4.26667vw 21.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-bookmark__in {
    max-width: 805px;
    padding: 0 30px 100px;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-mypage-bookmark__listhead {
  margin-left: 0;
  margin-right: 0;
}

@media only screen and (min-width: 769px) {
  .p-mypage-bookmark__listhead {
    margin-left: 0;
    margin-right: 0;
  }
}

.p-mypage-bookmark__pager {
  margin-top: 14.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-bookmark__pager {
    margin-top: 105px;
  }
}

.p-mypage-confirm__in, .p-mypage-edit__in, .p-mypage-profile__in {
  padding: 7.46667vw 4.26667vw 21.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-confirm__in, .p-mypage-edit__in, .p-mypage-profile__in {
    max-width: 805px;
    padding: 0 30px 100px;
    margin-left: auto;
    margin-right: auto;
    background-color: transparent;
  }
}

.p-mypage-edit .p-membership-form__agree {
  display: none !important;
}

.p-mypage-profile__profile {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-mypage-profile__profile {
    margin-top: 80px;
  }
}

/*===============================================
 news
===============================================*/
.p-news-index {
  background-color: #F2F4F5;
}

.p-news-index--category {
  padding-top: 14.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-news-index--category {
    padding-top: 105px;
  }
}

.p-news-index__body {
  padding-top: 12vw;
  padding-bottom: 9.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-news-index__body {
    padding-top: 45px;
    padding-bottom: 75px;
  }
}

.p-news-index__nav ul {
  display: flex;
  justify-content: center;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 769px) {
  .p-news-index__nav ul {
    font-size: 1.6rem;
  }
}

.p-news-index__nav ul li {
  margin: 0 0.625em;
}

.p-news-index__nav ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 8.75em;
  height: 2.875em;
  opacity: 1 !important;
  transition: background-color .2s, color .2s;
}

@media only screen and (min-width: 1280px) {
  .p-news-index__nav ul li a {
    width: 140px;
    height: 46px;
  }
}

.p-news-index__nav ul li:nth-child(1) a {
  border: 1px solid #2E4D86;
  color: #2E4D86;
}

.p-news-index__nav ul li:nth-child(1) a.is-active, .p-news-index__nav ul li:nth-child(1) a:hover {
  background-color: #2E4D86;
  color: #ffffff;
}

.p-news-index__nav ul li:nth-child(2) a {
  border: 1px solid #FFCC40;
  color: #FFCC40;
}

.p-news-index__nav ul li:nth-child(2) a.is-active, .p-news-index__nav ul li:nth-child(2) a:hover {
  background-color: #FFCC40;
  color: #ffffff;
}

.p-news-index__list {
  margin-left: 2.66667vw;
  margin-right: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-news-index__list {
    margin-left: 1.95313vw;
    margin-right: 1.95313vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-news-index__list {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-news-index__list:not(:first-child) {
  margin-top: 12vw;
}

@media only screen and (min-width: 769px) {
  .p-news-index__list:not(:first-child) {
    margin-top: 45px;
  }
}

.p-news-index-item:not(:first-child) {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-news-index-item:not(:first-child) {
    margin-top: 15px;
  }
}

.p-news-index-item__link {
  display: block;
}

.p-news-index-item__box {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  padding: 4.26667vw 3.2vw;
  border-radius: 3.46667vw;
  box-sizing: border-box;
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-news-index-item__box {
    padding: 15px;
    border-radius: 13px;
  }
}

.p-news-index-item__thumb {
  width: 29.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-news-index-item__thumb {
    width: 100px;
  }
}

.p-news-index-item__thumb > img {
  display: block;
  width: 100%;
}

.p-news-index-item__info {
  width: calc( 100% - 34.66667vw);
}

@media only screen and (min-width: 769px) {
  .p-news-index-item__info {
    width: calc( 100% - 100px - 20px);
  }
}

@media only screen and (min-width: 1280px) {
  .p-news-index-item__info {
    padding-top: 8px;
  }
}

.p-news-index-item__head {
  display: flex;
  align-items: center;
}

.p-news-index-item__category {
  display: block;
  margin-right: 0.8em;
  padding: 0.25em 0.75em;
  color: #ffffff;
  font-size: 1.0rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}

.p-news-index-item__category--news {
  background-color: #3D495E;
}

.p-news-index-item__category--seminar {
  background-color: #F07A5F;
}

.p-news-index-item__date {
  font-size: 1.3rem;
  font-family: "Roboto", sans-serif;
  letter-spacing: 0.05em;
}

.p-news-index-item__ttl {
  margin-top: 0.5em;
  color: #3D495E;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.76923;
}

@media only screen and (min-width: 1280px) {
  .p-news-index-item__ttl {
    margin-top: 0.4em;
    font-size: 1.5rem;
  }
}

.p-news-index__pager {
  margin-top: 14.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-news-index__pager {
    margin-top: 105px;
  }
}

.p-terms {
  padding-top: 12vw;
  padding-bottom: 9.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-terms {
    padding-top: 45px;
    padding-bottom: 100px;
  }
}

.p-terms__body {
  padding-top: 12vw;
}

@media only screen and (min-width: 769px) {
  .p-terms__body {
    padding-top: 45px;
  }
}

.p-terms__in {
  padding-left: 5.33333vw;
  padding-right: 5.33333vw;
}

.p-terms__in section:not(:first-child) {
  margin-top: 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-terms__in section:not(:first-child) {
    margin-top: 40px;
  }
}

.p-terms__in h2 {
  margin: 0 0 1.32em;
  font-size: 1.6rem;
  font-weight: 500;
}

.p-terms__in h2:not(:first-child) {
  margin-top: 2.2em;
}

.p-terms__in p {
  font-size: 1.3rem;
  line-height: 1.76923;
}

.p-terms__in p:not(:first-child) {
  margin-top: 1.76923em;
}

.p-terms__in ol,
.p-terms__in ul {
  font-size: 1.3rem;
  line-height: 1.76923;
}

.p-terms__in ol:not(:first-child),
.p-terms__in ul:not(:first-child) {
  margin-top: 1.76923em;
}

.p-terms__in ol li:not(:first-child),
.p-terms__in ul li:not(:first-child) {
  margin-top: 0.5em;
}

.p-terms__in ol ol:not(:first-child),
.p-terms__in ol ul:not(:first-child),
.p-terms__in ul ol:not(:first-child),
.p-terms__in ul ul:not(:first-child) {
  margin-top: 0.5em;
}

.p-terms__in a {
  color: #F07A5F;
  text-decoration: underline;
}

.p-terms__in a:hover {
  text-decoration: none;
}

.p-transfer-kv {
  background: url(../images/transfer/bg_kv.jpg) no-repeat center bottom;
  background-size: 100% auto;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0vw 0 0vw;
    background-image: url(../images/transfer/bg_kv_pc.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    height: 100vh;
  }
}

.p-transfer-kv__main {
  position: relative;
  /*
			&:after {
				position: absolute;
				left: spvw(16);
				top: spvw(192);
				color: $color-text-sellers;
				font-size: spvw(46);
				font-family: $ff-serif;
				font-weight: $fw-bold;
				line-height: 1;
				content: 'TRANSFER';
				
				@media only screen and (min-width: 769px) {
					left: pcvw2(56);
					top: pcvw2(370);
					font-size: pcvw2(89);
				}
			}
			*/
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__main {
    flex: 0 0 auto;
    width: 51.52778vw;
  }
}

.p-transfer-kv__img {
  display: block;
}

.p-transfer-kv__img picture,
.p-transfer-kv__img img {
  display: block;
  width: 100%;
  height: auto;
}

.p-transfer-kv__ttl {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 52.53333vw;
  height: 16vw;
  padding-left: 6.66667vw;
  box-sizing: border-box;
  background: url(../images/transfer/bg_kv_ttl.svg) no-repeat -1px bottom;
  background-size: 100% 100%;
  font-size: 4.26667vw;
  font-weight: 700;
  line-height: 1.3125;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__ttl {
    width: 27.22222vw;
    height: 8.33333vw;
    padding-left: 3.47222vw;
    font-size: 2.22222vw;
    line-height: 1.3125;
  }
}

.p-transfer-kv__ttl em {
  color: #2e4d86;
  font-style: normal;
}

.p-transfer-kv__content {
  position: relative;
  padding: 26.13333vw 10.13333vw 16vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__content {
    flex: 0 0 auto;
    width: 54.16667vw;
    margin-left: -5.69444vw;
    padding: 2.08333vw 0 0 0;
  }
}

.p-transfer-kv__catch {
  color: #193B64;
  font-size: 5.33333vw;
  font-weight: 700;
  line-height: 1.69565;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__catch {
    font-size: 3.125vw;
    line-height: 1.68889;
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__catch > span {
    display: inline-block;
    padding: 0 0.25em;
    background-color: #ffffff;
  }
  .p-transfer-kv__catch > span:not(:first-child) {
    margin-top: 0.34722vw;
  }
}

.p-transfer-kv__outline {
  display: flex;
  width: 81.06667vw;
  height: 32.8vw;
  margin: 10.13333vw auto 0;
  background: url(../images/transfer/bg_kv_outline.svg) no-repeat;
  background-size: 100% 100%;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__outline {
    width: 27.63889vw;
    height: 11.11111vw;
    margin: -1.52778vw 0 0 18.19444vw;
  }
}

.p-transfer-kv__outline > p {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50%;
  height: 100%;
}

.p-transfer-kv__outline > p > span {
  text-align: center;
  color: #343434;
  font-weight: 700;
}

.p-transfer-kv__outline > p:nth-child(1) > span {
  font-size: 3.2vw;
  line-height: 1.25;
  letter-spacing: 0.01em;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__outline > p:nth-child(1) > span {
    font-size: 1.11111vw;
  }
}

.p-transfer-kv__outline > p:nth-child(1) > span em {
  margin-right: 0.05em;
  font-size: 6.4vw;
  font-style: normal;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__outline > p:nth-child(1) > span em {
    font-size: 2.08333vw;
  }
}

.p-transfer-kv__outline > p:nth-child(2) > span {
  font-size: 3.2vw;
  line-height: 1.25;
  letter-spacing: 0.01em;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__outline > p:nth-child(2) > span {
    font-size: 1.11111vw;
  }
}

.p-transfer-kv__outline > p:nth-child(2) > span em {
  margin-right: 0.05em;
  font-size: 6.4vw;
  font-style: normal;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__outline > p:nth-child(2) > span em {
    font-size: 2.08333vw;
  }
}

.p-transfer-kv__recommend {
  margin: 9.6vw 0 0;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__recommend {
    margin: -0.55556vw 0 0 0;
  }
}

.p-transfer-kv__recommend__ttl {
  display: inline-block;
  width: 49.33333vw;
  height: 13.33333vw;
  padding: 2.66667vw 0 0 3.2vw;
  box-sizing: border-box;
  background: url(../images/transfer/bg_kv_list_ttl.svg) no-repeat left top;
  background-size: 100% auto;
  color: #ffffff;
  font-size: 4.53333vw;
  font-weight: 400;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__recommend__ttl {
    width: 12.84722vw;
    height: 3.47222vw;
    padding: 0.69444vw 0 0 0.83333vw;
    font-size: 1.18056vw;
  }
}

.p-transfer-kv__recommend__list {
  margin: 4.26667vw 0 0 0;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__recommend__list {
    margin: 1.11111vw 0 0 0;
  }
}

.p-transfer-kv__recommend__list li {
  position: relative;
  padding: 2.13333vw 3.2vw 2.13333vw 14.93333vw;
  background-color: #ffffff;
  color: #193B64;
  font-size: 5.33333vw;
  font-weight: 500;
  line-height: 1.6;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__recommend__list li {
    padding: 0.55556vw 0.83333vw 0.55556vw 3.88889vw;
    font-size: 1.52778vw;
  }
}

.p-transfer-kv__recommend__list li:before {
  position: absolute;
  left: 2.66667vw;
  top: 2.66667vw;
  width: 7.008vw;
  height: 6.93333vw;
  background: url(../images/transfer/ico_kv_list.svg) no-repeat;
  background-size: 100% 100%;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__recommend__list li:before {
    left: 0.69444vw;
    top: 0.69444vw;
    width: 1.825vw;
    height: 1.80556vw;
  }
}

.p-transfer-kv__recommend__list li:not(:first-child) {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-kv__recommend__list li:not(:first-child) {
    margin-top: 0.69444vw;
  }
}

.p-transfer-movie {
  position: relative;
  padding: 9.6vw 4.8vw 22.93333vw;
  background-color: #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie {
    padding: 65px 0;
  }
}

.p-transfer-movie:before {
  position: absolute;
  left: 10.13333vw;
  bottom: 12.8vw;
  color: #ffffff;
  font-size: 26.13333vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  opacity: 0.1;
  content: 'MOVIE';
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie:before {
    left: 4.02778vw;
    bottom: 82px;
    font-size: 13.0rem;
  }
}

.p-transfer-movie__in {
  position: relative;
  margin-top: 9.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__in {
    margin-top: 0;
  }
}

.p-transfer-movie__catch {
  display: inline-block;
  border: 1px solid #ffffff;
  padding: 0.5em 0.5em;
  color: #ffffff;
  font-size: 5.33333vw;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__catch {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 164px;
    height: 83px;
    padding: 0;
    font-size: 2.0rem;
    line-height: 1.45;
  }
}

.p-transfer-movie__catch em {
  color: #F07A5F;
  font-style: normal;
}

.p-transfer-movie__ttl {
  margin-top: 7.46667vw;
  color: #ffffff;
  font-size: 6.93333vw;
  font-weight: 700;
  line-height: 1.46154;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__ttl {
    margin-top: 0;
    margin-left: 1em;
    font-size: 2.6rem;
    line-height: 1.46154;
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__container {
    display: flex;
    justify-content: space-between;
    max-width: 1060px;
    padding-left: 40px;
    padding-right: 40px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__movie {
    flex: 0 0 auto;
    width: calc( 100% * 429 / 1060);
  }
}

.p-transfer-movie__movie > a {
  position: relative;
  display: block;
}

.p-transfer-movie__movie > a > img {
  display: block;
  width: 100%;
}

.p-transfer-movie__movie > a:after {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 12.26667vw;
  height: 12.26667vw;
  margin: auto;
  background: url(../images/transfer/ico_movie_play.svg) no-repeat;
  background-size: 100% 100%;
  pointer-events: none;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__movie > a:after {
    width: 60px;
    height: 60px;
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__info {
    flex: 0 0 auto;
    width: calc( 100% * 520 / 1060);
  }
}

.p-transfer-movie__detail {
  margin: 9.6vw 5.33333vw 0;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__detail {
    margin: 20px 0 0 0;
  }
}

.p-transfer-movie__description {
  color: #ffffff;
  font-size: 4.26667vw;
  line-height: 1.625;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__description {
    font-size: 1.6rem;
  }
}

.p-transfer-movie__timeline {
  margin-top: 9.6vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__timeline {
    margin-top: 24px;
  }
}

.p-transfer-movie__timeline__ttl {
  color: #ffffff;
  font-size: 3.73333vw;
  font-weight: 400;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__timeline__ttl {
    font-size: 1.4rem;
  }
}

.p-transfer-movie__timeline__ttl:before {
  display: inline-block;
  width: 0.9em;
  height: 0.9em;
  border-radius: 0.45em;
  margin-right: 0.5em;
  background-color: #F07A5F;
  vertical-align: -0.1em;
  content: '';
}

.p-transfer-movie__timeline__table {
  width: 100%;
  margin-top: 5.33333vw;
  color: #ffffff;
  font-size: 3.46667vw;
  line-height: 1.71429;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__timeline__table {
    margin-top: 16px;
    width: auto;
    font-size: 1.4rem;
  }
}

.p-transfer-movie__timeline__table th {
  padding-top: 0.2em;
  padding-bottom: 0.2em;
  text-align: right;
  white-space: nowrap;
  font-weight: 400;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__timeline__table th {
    padding-top: 0.1em;
    padding-bottom: 0.1em;
    padding-left: 1.5em;
  }
}

.p-transfer-movie__timeline__table td {
  padding-top: 0.2em;
  padding-bottom: 0.2em;
  padding-left: 1.5em;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__timeline__table td {
    padding-top: 0.1em;
    padding-bottom: 0.1em;
  }
}

.p-transfer-movie__timeline__notes {
  margin: 5.33333vw 0 0 0;
  color: #ffffff;
  font-size: 3.46667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-movie__timeline__notes {
    margin: 20px 0 0 0;
    font-size: 1.4rem;
  }
}

.p-transfer-reason {
  position: relative;
  padding: 16vw 9.6vw 10.66667vw;
  background-color: #EBECEF;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason {
    padding: 135px 0 48px;
  }
}

.p-transfer-reason:before {
  position: absolute;
  left: -29.33333vw;
  top: 15.46667vw;
  color: #3D495E;
  font-size: 18.66667vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.01em;
  white-space: nowrap;
  opacity: 0.1;
  content: 'Reasonsfor M&A';
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason:before {
    left: 50%;
    top: 80px;
    font-size: 13.0rem;
    transform: translateX(-50%);
  }
}

.p-transfer-reason__in {
  position: relative;
}

.p-transfer-reason__ttl {
  text-align: center;
  color: #3D495E;
  font-size: 5.86667vw;
  font-weight: 700;
  line-height: 1.45455;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason__ttl {
    font-size: 2.6rem;
  }
}

.p-transfer-reason__container {
  margin-top: 12vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason__container {
    display: flex;
    padding-left: 40px;
    padding-right: 40px;
    margin-top: 72px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-reason__container {
    padding-left: 0;
    padding-right: 0;
  }
}

.p-transfer-reason-item {
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason-item {
    width: calc( 100% * 582 / 1200);
  }
}

.p-transfer-reason-item:not(:first-child) {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason-item:not(:first-child) {
    margin-top: 0;
    margin-left: calc( 100% * 36 / 1200);
  }
}

.p-transfer-reason-item__head {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 22.13333vw;
  padding-left: 20.26667vw;
  border-bottom: 1.06667vw solid #3D495E;
  box-sizing: border-box;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason-item__head {
    height: auto;
    padding: 25px;
    border-bottom-width: 4px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-reason-item__head {
    padding: 45px;
  }
}

.p-transfer-reason-item__num {
  position: absolute;
  left: -8vw;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25.6vw;
  height: 22.13333vw;
  background: url(../images/transfer/bg_reason_num.svg) no-repeat center center;
  background-size: 100% 100%;
  color: #ffffff;
  font-size: 10.93333vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason-item__num {
    flex: 0 0 auto;
    position: relative;
    left: 0;
    width: 106px;
    height: 90px;
    font-size: 4.2rem;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-reason-item__num {
    width: 126px;
    height: 110px;
    font-size: 5.5rem;
  }
}

.p-transfer-reason-item__ttl {
  color: #343434;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 1.55556;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason-item__ttl {
    padding-left: 1.6em;
    font-size: 2.2rem;
    line-height: 1.46154;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-reason-item__ttl {
    font-size: 2.6rem;
  }
}

.p-transfer-reason-item__body {
  padding: 7.46667vw 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason-item__body {
    padding: 30px 25px 35px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-reason-item__body {
    padding: 30px 40px 48px;
  }
}

.p-transfer-reason-item__body > p {
  font-size: 4.26667vw;
  line-height: 1.75;
}

@media only screen and (min-width: 769px) {
  .p-transfer-reason-item__body > p {
    font-size: 1.6rem;
  }
}

.p-transfer-connection {
  padding: 12vw 6.66667vw 14.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-connection {
    padding: 100px 0;
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-connection__in {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    justify-content: space-between;
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-connection__in {
    padding-left: 60px;
    padding-right: 60px;
  }
}

.p-transfer-connection__ttl {
  color: #4E4E4E;
  font-size: 5.86667vw;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-transfer-connection__ttl {
    font-size: 3.2rem;
    line-height: 1.46875;
  }
}

.p-transfer-connection__img {
  position: relative;
  margin-top: 12.26667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-connection__img {
    flex: 0 0 auto;
    margin-top: 0;
    width: calc( 100% * 560 / 1200);
  }
}

.p-transfer-connection__img > img {
  display: block;
  width: 100%;
}

.p-transfer-connection__img > figcaption {
  position: absolute;
  right: 0;
  bottom: -1.5em;
  padding: 0.5em 1.5em;
  background-color: #ffffff;
  font-size: 3.46667vw;
  line-height: 2.15385;
}

@media only screen and (min-width: 769px) {
  .p-transfer-connection__img > figcaption {
    right: 20px;
    bottom: 20px;
    font-size: 1.3rem;
  }
}

.p-transfer-connection__img > figcaption > em {
  color: #193B64;
  font-style: normal;
}

.p-transfer-connection__body {
  margin-top: 14.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-connection__body {
    width: calc( 100% * 560 / 1200);
    margin-top: 0;
  }
}

.p-transfer-connection__description {
  font-size: 4.26667vw;
  line-height: 1.75;
}

@media only screen and (min-width: 769px) {
  .p-transfer-connection__description {
    margin-top: 64px;
    font-size: 1.6rem;
  }
}

.p-transfer-choose {
  position: relative;
  padding: 24vw 9.6vw 10.66667vw;
  background-color: #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose {
    padding: 110px 0 80px;
  }
}

.p-transfer-choose:before {
  position: absolute;
  left: -8.53333vw;
  top: 16.53333vw;
  color: #ffffff;
  font-size: 18.66667vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  content: 'Why Choose';
  opacity: 0.1;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose:before {
    left: 50%;
    top: 62px;
    font-size: 13.0rem;
    transform: translateX(-50%);
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose__in {
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-choose__in {
    padding-left: 60px;
    padding-right: 60px;
  }
}

.p-transfer-choose__ttl {
  text-align: center;
  color: #ffffff;
  font-size: 5.86667vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose__ttl {
    font-size: 2.6rem;
  }
}

.p-transfer-choose__container {
  margin-top: 17.06667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose__container {
    margin-top: 128px;
    display: flex;
    flex-wrap: wrap;
  }
}

.p-transfer-choose-item {
  padding: 5.33333vw;
  background-color: #ffffff;
}

.p-transfer-choose-item:not(:first-child) {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item:not(:first-child) {
    margin-top: 0;
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item {
    width: calc( 100% * 580 / 1200);
    box-sizing: border-box;
    padding: 2.77778vw;
  }
  .p-transfer-choose-item:nth-child(2n) {
    margin-left: calc( 100% * 40 / 1200);
  }
  .p-transfer-choose-item:nth-child(n+3) {
    margin-top: calc( 100% * 40 / 1200);
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-choose-item {
    padding: 40px;
  }
}

.p-transfer-choose-item__ttl {
  padding-left: 0.55556em;
  border-left: 1.6vw solid #3D495E;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item__ttl {
    border-left-width: 8px;
    font-size: 2.4rem;
    line-height: 1.5;
  }
}

.p-transfer-choose-item__catch {
  margin-top: 8.53333vw;
  text-align: center;
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item__catch {
    margin-top: 40px;
    font-size: 2.5vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-choose-item__catch {
    font-size: 3.6rem;
  }
}

.p-transfer-choose-item__catch strong {
  margin: 0 0.15em 0 0;
  color: #FFCC40;
  font-size: 9.5rem;
  font-family: "Roboto", sans-serif;
  line-height: 1;
  letter-spacing: -0.1em;
  vertical-align: -0.075em;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item__catch strong {
    font-size: 12.5vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-choose-item__catch strong {
    font-size: 18.0rem;
  }
}

.p-transfer-choose-item__catch--icon {
  display: flex;
  text-align: left;
}

.p-transfer-choose-item__catch__icon {
  width: 16vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item__catch__icon {
    width: 105px;
  }
}

.p-transfer-choose-item__catch__icon img {
  display: block;
  width: 100%;
}

.p-transfer-choose-item__catch__txt {
  margin-left: 0.5em;
  font-size: 2.0rem;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item__catch__txt {
    font-size: 4.0rem;
    line-height: 1.42857;
  }
}

.p-transfer-choose-item__catch__txt strong {
  margin: 0;
  font-size: 100%;
  letter-spacing: 0.01em;
  vertical-align: auto;
}

.p-transfer-choose-item__sub {
  margin-top: 5.33333vw;
  padding-top: 4.26667vw;
  border-top: 1px solid rgba(61, 73, 95, 0.2);
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item__sub {
    margin-top: 40px;
    padding-top: 30px;
    font-size: 2.0rem;
  }
}

.p-transfer-choose-item__sub small {
  font-size: 1.2rem;
  font-weight: 400;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item__sub small {
    font-size: 1.6rem;
  }
}

.p-transfer-choose-item__txt {
  margin-top: 3.2vw;
  font-size: 1.4rem;
  line-height: 1.71429;
}

@media only screen and (min-width: 769px) {
  .p-transfer-choose-item__txt {
    margin-top: 20px;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}

.p-transfer-flow {
  position: relative;
  padding: 21.33333vw 9.6vw 10.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow {
    padding: 106px 0 75px;
  }
}

.p-transfer-flow:before {
  position: absolute;
  left: 20.8vw;
  top: 16.53333vw;
  color: #3D495E;
  font-size: 18.66667vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  content: 'FLOW';
  opacity: 0.1;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow:before {
    left: 50%;
    top: 62px;
    font-size: 13.0rem;
    transform: translateX(-50%);
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow__in {
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-flow__in {
    padding-left: 60px;
    padding-right: 60px;
  }
}

.p-transfer-flow__ttl {
  text-align: center;
  color: #3D495E;
  font-size: 5.86667vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow__ttl {
    font-size: 2.6rem;
  }
}

.p-transfer-flow__steps {
  margin-top: 17.06667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow__steps {
    display: flex;
    margin-top: 106px;
  }
}

.p-transfer-flow__steps dl {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 26.66667vw;
  background-color: #F2F4F5;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow__steps dl {
    flex-direction: column;
    width: calc( 100% * 343 / 1200);
    height: auto;
    padding: 20px 0 30px;
  }
}

.p-transfer-flow__steps dl:not(:first-child) {
  margin-top: 17.06667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow__steps dl:not(:first-child) {
    margin-top: 0;
    margin-left: calc( 100% * 85 / 1200);
  }
}

.p-transfer-flow__steps dl:not(:first-child):before {
  position: absolute;
  left: 50%;
  top: -11.73333vw;
  width: 0;
  height: 0;
  border-top: 6.4vw solid #F07A5F;
  border-left: 3.73333vw solid transparent;
  border-right: 3.73333vw solid transparent;
  transform: translateX(-50%);
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow__steps dl:not(:first-child):before {
    left: calc( 100% * -42 / 343);
    top: 50%;
    border-left: 24px solid #F07A5F;
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-right: 0;
    transform: translateX(-50%) translateY(-50%);
  }
}

.p-transfer-flow__steps dl dt {
  width: 25.6vw;
  text-align: center;
  color: #3D495E;
  font-size: 4.26667vw;
  font-weight: 700;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow__steps dl dt {
    width: auto;
    font-size: 2.0rem;
  }
}

.p-transfer-flow__steps dl dt > span {
  display: inline-block;
  border-bottom: 1px solid #3D495E;
}

.p-transfer-flow__steps dl dd {
  padding: 0 6.93333vw 0 0;
  color: #193B64;
  text-align: center;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow__steps dl dd {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 3em;
    padding: 0;
    margin-top: 36px;
    font-size: 1.8rem;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-flow__steps dl dd {
    font-size: 2.2rem;
  }
}

.p-transfer-flow__detail {
  margin-top: 21.86667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow__detail {
    max-width: 906px;
    margin: 160px auto 0;
  }
}

.p-transfer-flow-item {
  position: relative;
}

.p-transfer-flow-item:not(:first-child) {
  margin-top: 36.26667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item:not(:first-child) {
    margin-top: 110px;
  }
}

.p-transfer-flow-item:not(:first-child):before {
  position: absolute;
  left: 0;
  top: -17.06667vw;
  width: 100%;
  height: 1px;
  background-color: #333333;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item:not(:first-child):before {
    top: -55px;
  }
}

.p-transfer-flow-item:not(:first-child):after {
  position: absolute;
  left: 50%;
  top: -24vw;
  width: 13.33333vw;
  height: 13.33333vw;
  background: url(../images/transfer/arw_step.svg) no-repeat;
  background-size: 100% 100%;
  transform: translateX(-50%);
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item:not(:first-child):after {
    top: -80px;
    width: 50px;
    height: 50px;
  }
}

.p-transfer-flow-item__ttl {
  display: flex;
  align-items: center;
}

.p-transfer-flow-item__ttl__num {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20.53333vw;
  height: 17.6vw;
  background: url(../images/transfer/bg_reason_num.svg) no-repeat center center;
  background-size: 100% 100%;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item__ttl__num {
    width: 77px;
    height: 66px;
  }
}

.p-transfer-flow-item__ttl__num > span {
  color: #ffffff;
}

.p-transfer-flow-item__ttl__num > span small {
  display: block;
  text-align: center;
  font-size: 2.93333vw;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item__ttl__num > span small {
    font-size: 1.1rem;
  }
}

.p-transfer-flow-item__ttl__num > span span {
  display: block;
  text-align: center;
  font-size: 8.8vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item__ttl__num > span span {
    font-size: 2.6rem;
  }
}

.p-transfer-flow-item__ttl__label {
  padding-left: 4.26667vw;
  color: #193B64;
  font-size: 5.6vw;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item__ttl__label {
    padding-left: 28px;
    font-size: 2.6rem;
  }
}

.p-transfer-flow-item__body {
  margin-top: 14.66667vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item__body {
    margin-top: 55px;
  }
}

.p-transfer-flow-item__complete {
  background-color: #F2F4F5;
  padding: 10.66667vw 0;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item__complete {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
  }
}

.p-transfer-flow-item__complete__ttl {
  text-align: center;
  color: #F07A5F;
  font-size: 11.46667vw;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item__complete__ttl {
    font-size: 2.8rem;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-flow-item__complete__ttl {
    font-size: 4.3rem;
  }
}

.p-transfer-flow-item__complete__ttl:before {
  display: inline-block;
  width: 10.208vw;
  height: 10.13333vw;
  margin-right: 4.26667vw;
  background: url(../images/transfer/ico_kv_list.svg) no-repeat;
  background-size: 100% 100%;
  vertical-align: -0.05em;
  content: '';
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item__complete__ttl:before {
    width: 28.15px;
    height: 28px;
    margin-right: 12px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-flow-item__complete__ttl:before {
    width: 38.28px;
    height: 38px;
    margin-right: 16px;
  }
}

.p-transfer-flow-item__complete__txt {
  margin-top: 8.53333vw;
  text-align: center;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 1.66667;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-item__complete__txt {
    margin-top: 0;
    margin-left: 24px;
    font-size: 1.8rem;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-flow-item__complete__txt {
    margin-left: 48px;
    font-size: 2.0rem;
  }
}

.p-transfer-flow-item__complete__txt em {
  display: inline-block;
  border-bottom: 1px solid #EE7A63;
  font-style: normal;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-sub {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}

.p-transfer-flow-sub:not(:first-child) {
  margin-top: 13.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-sub:not(:first-child) {
    margin-top: 30px;
  }
}

.p-transfer-flow-sub__img {
  display: block;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-sub__img {
    flex: 0 0 auto;
    width: calc( 100% * 317 / 906);
  }
}

.p-transfer-flow-sub__img > img {
  display: block;
  width: 100%;
}

.p-transfer-flow-sub__body {
  margin-top: 5.33333vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-sub__body {
    width: calc( 100% * 540 / 906);
    margin-top: 0;
  }
}

.p-transfer-flow-sub__ttl {
  color: #4E4E4E;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 1.61111;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-sub__ttl {
    font-size: 2.0rem;
  }
}

.p-transfer-flow-sub__txt {
  margin-top: 5.33333vw;
  font-size: 3.73333vw;
  line-height: 1.85714;
}

@media only screen and (min-width: 769px) {
  .p-transfer-flow-sub__txt {
    margin-top: 16px;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-flow-sub__txt {
    margin-top: 28px;
  }
}

.p-transfer-faq {
  position: relative;
  padding: 25.6vw 11.2vw 12.26667vw;
  background-color: #3D495E;
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq {
    padding: 56px 0 60px;
  }
}

.p-transfer-faq:before {
  position: absolute;
  left: 30.93333vw;
  top: 17.6vw;
  color: #ffffff;
  font-size: 18.66667vw;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  opacity: 0.1;
  pointer-events: none;
  content: 'FAQ';
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq:before {
    display: none;
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq__in {
    display: flex;
    justify-content: space-between;
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-transfer-faq__in {
    padding-left: 60px;
    padding-right: 60px;
  }
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq__head {
    position: relative;
    flex: 0 0 auto;
    width: 260px;
    padding-top: 84px;
  }
  .p-transfer-faq__head:before {
    position: absolute;
    left: 0;
    top: 32px;
    color: #ffffff;
    font-size: 13.0rem;
    font-family: "Noto Serif JP", serif;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    opacity: 0.1;
    pointer-events: none;
    content: 'FAQ';
  }
}

.p-transfer-faq__body {
  margin-top: 12.8vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq__body {
    width: calc( 100% * 840 / 1200);
    margin-top: 0;
  }
}

.p-transfer-faq__ttl {
  text-align: center;
  color: #ffffff;
  font-size: 5.86667vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq__ttl {
    position: relative;
    font-size: 2.6rem;
  }
}

.p-transfer-faq__catch {
  margin-top: 11.2vw;
  text-align: center;
  color: #ffffff;
  font-size: 4.26667vw;
  font-weight: 500;
  line-height: 2.1875;
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq__catch {
    position: relative;
    margin-top: 72px;
    text-align: left;
    font-size: 1.6rem;
  }
}

.p-transfer-faq__box {
  padding: 2.66667vw;
  border-radius: 2.66667vw;
  background-color: #ffffff;
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq__box {
    padding: 20px 60px;
    border-radius: 20px;
  }
}

.p-transfer-faq__box .p-faq-item:last-child {
  border-bottom: 0;
}

.p-transfer-faq__box .p-faq-item__head:after {
  right: 1.6vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq__box .p-faq-item__head:after {
    right: 20px;
  }
}

.p-transfer-faq__box .p-faq-item__ttl:before {
  left: 1.6vw;
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq__box .p-faq-item__ttl:before {
    left: 0;
  }
}

.p-transfer-faq__link {
  position: relative;
  width: 59.73333vw;
  margin: 10.66667vw auto 0;
}

@media only screen and (min-width: 769px) {
  .p-transfer-faq__link {
    width: 360px;
    margin: 60px auto 0;
  }
}

.container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
}

.container img {
  max-width: 100%;
  max-height: 100%;
  display: block;