/*---------------------------------------------
00. reset
01. common
02. layout
03. top
04. lawyer
05. businessfield
06. price
07. contactus
---------------------------------------------*/
/*---------------------------------------------
00. reset
---------------------------------------------*/
/* A Modern CSS Reset */
*, *::before, *::after {
  box-sizing: border-box; }

ul[class], ol[class] {
  padding: 0; }

body, h1, h2, h3, h4, p, ul[class], ol[class], figure, blockquote, dl, dd {
  margin: 0; }

html {
  scroll-behavior: smooth; }

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5; }

ul[class], ol[class] {
  list-style: none; }

a:not([class]) {
  text-decoration-skip-ink: auto; }

img {
  max-width: 100%;
  display: block; }

article > * + * {
  margin-top: 0; }

input, button, textarea, select {
  font: inherit; }

img:not([alt]) {
  filter: blur(10px); }

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important; } }

/*---------------------------------------------
01. common
---------------------------------------------*/
a {
  color: #000000;
  text-decoration: none; }

img {
  width: 100%;
  height: auto;
  vertical-align: baseline; }

p {
  line-height: 2.125; }

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none; }

::selection {
  background: #002C57;
  color: #fff; }

::-moz-selection {
  background: #002C57;
  color: #fff; }

.cormorant {
  font-family: 'Cormorant Unicase', serif;
  font-weight: 700; }

.view_pc {
  display: none !important; }
  @media only screen and (min-width: 568px) {
    .view_pc {
      display: block !important; } }
.view_sp {
  display: none !important; }
  @media only screen and (max-width: 567px) {
    .view_sp {
      display: block !important; } }
/* zoomUp */
@keyframes zoomUp {
  0% {
    transform: scale(1); }
  100% {
    transform: scale(1.15); } }

/* scrollview */
.scrollview {
  transition: all 0.8s 0s ease;
  opacity: 0;
  transform: scale(1, 1) translate(0%, 20px); }

.scrollview.view {
  opacity: 1;
  transform: scale(1, 1) translate(0%, 0%); }

/* border__link */
.border__link {
  position: relative; }

.border__link::after {
  position: absolute;
  bottom: -0.6rem;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #fff;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s; }

.border__link:hover::after {
  transform-origin: left top;
  transform: scale(1, 1); }

/*---------------------------------------------
02. layout
---------------------------------------------*/
html,
body {
  height: 100%; }

html {
  font-size: 0.8333333333vw; }
  @media only screen and (min-width: 1201px) {
    html {
      font-size: 10px; } }
  @media only screen and (max-width: 567px) {
    html {
      font-size: 2.6666666667vw; } }
body {
  transition: .5s ease-out;
  width: 100%;
  margin: 0;
  font-family: 'Noto Serif JP', serif;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  color: #000;
  font-feature-settings: "palt";
  -webkit-text-size-adjust: 100%; }
  body.loading {
    opacity: 0; }
  body.loaded {
    opacity: 1; }
  @media only screen and (max-width: 567px) {
    body {
      font-size: 1.1rem; }
      body #gNavi {
        display: none; }
      body #mainContents,
      body #instagram,
      body #footer {
        transition: .25s ease-out; }
      body.navOpen {
        overflow: hidden;
        width: 100%;
        height: 100%; }
        body.navOpen #header .logo {
          position: fixed; }
        body.navOpen #mainContents,
        body.navOpen #instagram,
        body.navOpen #footer {
          opacity: 0; } }
#wrap {
  box-sizing: border-box;
  width: 100%;
  padding-top: 10.0rem; }
  @media only screen and (max-width: 567px) {
    #wrap {
      padding-top: 7.0rem; } }
/*** header ***/
.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 10.0rem;
  padding: 0 12.5rem 0 10.0rem;
  background-color: #000; }
  .header .logo a {
    display: block; }
  .header .logo img {
    width: 29.0rem;
    height: 4.1rem; }
  .header .gNavi__ttl {
    display: none; }
  .header .gNavi-list {
    display: flex;
    align-items: center; }
    .header .gNavi-list__item:not(:first-child) {
      margin-left: 5.0rem; }
    .header .gNavi-list__link {
      font-size: 1.4rem;
      font-weight: 600;
      color: #fff; }
      .header .gNavi-list__link.active::after {
        transform-origin: left top;
        transform: scale(1, 1); }
  .header .menu-trigger {
    display: none; }
  @media only screen and (max-width: 567px) {
    .header {
      flex-wrap: wrap;
      height: 7.0rem;
      padding: 0 2.0rem 0 3.0rem; }
      .header .logo a {
        display: block; }
      .header .logo img {
        width: 20.9rem;
        height: 2.8rem; }
      .header .gNavi {
        position: absolute;
        top: 7.0rem;
        left: 0;
        width: 100%;
        display: none;
        box-sizing: border-box;
        padding: 7.0rem;
        background-color: #000; }
        .header .gNavi__ttl {
          position: relative;
          display: block;
          padding-bottom: 2.0rem;
          font-size: 1.8rem;
          letter-spacing: 0.1em;
          line-height: 1;
          text-align: center;
          color: #C8BEA0; }
          .header .gNavi__ttl::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%) scale(1, 0.8) rotate(45deg);
            display: block;
            width: 1.2rem;
            height: 1.2rem;
            border-bottom: 1px solid #C8BEA0;
            border-right: 1px solid #C8BEA0; }
        .header .gNavi-list {
          display: flex;
          flex-direction: column;
          align-items: center;
          margin-top: 4.0rem; }
          .header .gNavi-list__item {
            opacity: 0;
            transform: translateY(-1.5rem); }
            .header .gNavi-list__item:not(:first-child) {
              margin-left: 0;
              margin-top: 4.0rem; }
            .header .gNavi-list__item:nth-child(1) {
              transition: all 0.5s 0.2s ease; }
            .header .gNavi-list__item:nth-child(2) {
              transition: all 0.5s 0.4s ease; }
            .header .gNavi-list__item:nth-child(3) {
              transition: all 0.5s 0.6s ease; }
            .header .gNavi-list__item:nth-child(4) {
              transition: all 0.5s 0.8s ease; }
            .header .gNavi-list__item.show {
              opacity: 1;
              transform: translateY(0); }
          .header .gNavi-list__link {
            font-size: 1.5rem;
            font-weight: 600;
            color: #fff;
            letter-spacing: 0.2em; }
            .header .gNavi-list__link.active::after {
              transform-origin: left top;
              transform: scale(1, 1); }
      .header .menu-trigger {
        display: block; } }
/*** menu-trigger ***/
@media only screen and (max-width: 567px) {
  .menu-trigger {
    position: relative;
    display: block;
    overflow: hidden;
    width: 2.0rem;
    height: 2.0rem;
    text-decoration: none; }
  .menu-trigger .line {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 100%;
    height: 1px;
    background-color: #fff;
    transition: all .1s ease-in-out; }
  .menu-trigger .line::before,
  .menu-trigger .line::after {
    transition: fill .25s ease-out;
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    transition: inherit; }
  .menu-trigger .line::before {
    top: -0.9rem; }
  .menu-trigger .line::after {
    top: 0.9rem; }
  .menu-trigger .line .txt {
    position: absolute;
    white-space: nowrap;
    width: 1px;
    height: 1px;
    overflow: hidden;
    border: 0;
    padding: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%); }
  .menu-trigger[aria-expanded="true"] .line {
    transition: all .1s ease-in-out;
    background-color: transparent; }
  .menu-trigger[aria-expanded="true"] .line::before,
  .menu-trigger[aria-expanded="true"] .line::after {
    top: 0;
    background-color: #fff; }
  .menu-trigger[aria-expanded="true"] .line::before {
    transform: rotate(45deg); }
  .menu-trigger[aria-expanded="true"] .line::after {
    transform: rotate(-45deg); } }

/*** footer ***/
.footer {
  position: relative;
  margin-top: 10.0rem;
  padding: 4.5rem 0;
  background-color: #000;
  line-height: 1;
  color: #fff;
  text-align: center; }
  .footer__ttl {
    font-size: 2.5rem;
    font-weight: 600;
    letter-spacing: 0.3em; }
  .footer__address {
    margin-top: 2.5rem;
    font-size: 1.3rem;
    font-weight: 400;
    letter-spacing: 0.2em; }
  .footer__copyright {
    position: absolute;
    bottom: 4.0rem;
    right: 5.0rem;
    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: right; }
  @media only screen and (max-width: 567px) {
    .footer {
      margin-top: 3.0rem;
      padding: 3.0rem 0; }
      .footer__ttl {
        font-size: 1.5rem; }
      .footer__address {
        margin-top: 1.5em;
        font-size: 1.0rem;
        text-align: center; }
      .footer__copyright {
        position: relative;
        bottom: auto;
        right: auto;
        margin-top: 2em;
        font-size: 1.0rem;
        text-align: center; } }
.main-img {
  box-sizing: border-box;
  width: 100%;
  height: 60vh;
  max-height: 45.0rem;
  background-position: center center;
  background-size: cover; }
  @media only screen and (max-width: 567px) {
    .main-img {
      height: 19.0rem;
      max-height: 19.0rem; } }
.main-contents {
  display: block;
  max-width: 1200px;
  margin: 0 auto;
  padding: 9.0rem 10.0rem 0; }
  @media only screen and (max-width: 567px) {
    .main-contents {
      max-width: 100%;
      padding: 5.0rem 3.0rem 3.0rem; } }
/*---------------------------------------------
03. top
---------------------------------------------*/
.page-top .main-visual {
  box-sizing: border-box;
  position: relative;
  width: 100%;
  height: 60vh;
  max-height: 45.0rem; }
  .page-top .main-visual .swiper-container,
  .page-top .main-visual .swiper-slide {
    width: 100%;
    height: 100%;
    overflow: hidden; }
  .page-top .main-visual .swiper-slide-active .slide-img,
  .page-top .main-visual .swiper-slide-duplicate-active .slide-img,
  .page-top .main-visual .swiper-slide-prev .slide-img {
    animation: zoomUp 10s linear 0s 1 normal both; }
  .page-top .main-visual .slide-img {
    display: block;
    width: 100%;
    height: 100%;
    /*
			background-position: center top;
			background-size: cover;
			&01 {
				background-image:url(../images/top/main_visual01.jpg);
			}
			&02 {
				background-image:url(../images/top/main_visual02.jpg);
			}
			&03 {
				background-image:url(../images/top/main_visual03.jpg);
			}
*/ }
  .page-top .main-visual .scroll {
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: 1;
    transform: translateX(-50%);
    display: block;
    padding-bottom: 6.0rem;
    font-size: 1.4rem;
    color: #fff;
    line-height: 1;
    letter-spacing: 0.1em; }
    .page-top .main-visual .scroll::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 1px;
      height: 5.0rem;
      background-color: #fff; }

.page-top .main-contents {
  padding-top: 0; }
  .page-top .main-contents .intro {
    margin-top: 8.0rem;
    text-align: center; }
    .page-top .main-contents .intro__ttl {
      width: 65.3rem;
      margin: 0 auto; }
    .page-top .main-contents .intro__txt {
      margin-top: 4.0rem;
      font-size: 1.8rem;
      line-height: 2;
      letter-spacing: 0.08em; }
  .page-top .main-contents .contents {
    margin-top: 8.0rem; }
    .page-top .main-contents .contents__ttl {
      position: relative;
      padding-top: 3.5rem;
      font-size: 3.0rem;
      line-height: 1;
      letter-spacing: 0.1em;
      text-align: center;
      color: #C8BEA0; }
      .page-top .main-contents .contents__ttl::after {
        content: '';
        position: absolute;
        top: 0;
        left: 50%;
        transform: translate(-50%, -100%) scale(1, 0.8) rotate(45deg);
        display: block;
        width: 2.0rem;
        height: 2.0rem;
        border-bottom: 1px solid #C8BEA0;
        border-right: 1px solid #C8BEA0; }
    .page-top .main-contents .contents__list {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      margin: 3.0rem 0 0; }
    .page-top .main-contents .contents__item {
      width: 48.0rem;
      height: 35.0rem;
      margin: 0 0 4.0rem; }
    .page-top .main-contents .contents__link {
      position: relative;
      box-sizing: border-box;
      display: flex;
      align-items: center;
      width: 100%;
      height: 100%;
      overflow: hidden;
      padding: 7.5rem; }
      .page-top .main-contents .contents__link:hover .item__img {
        transform: scale(1.1);
        opacity: .8; }
    .page-top .main-contents .contents .item.lawyer .item__ttl-jp img {
      width: 8.1rem;
      height: 2.2rem; }
    .page-top .main-contents .contents .item.businessfield .item__ttl-jp img {
      width: 11.2rem;
      height: 2.2rem; }
    .page-top .main-contents .contents .item.price .item__ttl-jp img {
      width: 14.0rem;
      height: 2.2rem; }
    .page-top .main-contents .contents .item.contactus .item__ttl-jp img {
      width: 16.2rem;
      height: 2.2rem; }
    .page-top .main-contents .contents .item__ttl {
      position: relative; }
      .page-top .main-contents .contents .item__ttl-en {
        margin-top: 1.6rem;
        font-size: 1.4rem;
        color: #fff;
        letter-spacing: 0.2em;
        line-height: 1; }
      .page-top .main-contents .contents .item__ttl::before {
        content: '';
        position: absolute;
        top: -3.5rem;
        left: 0;
        display: block;
        width: 1.5rem;
        height: 1px;
        background-color: #fff; }
      .page-top .main-contents .contents .item__ttl::after {
        content: '';
        position: absolute;
        bottom: -5.0rem;
        left: 0;
        box-sizing: border-box;
        display: block;
        width: 2.5rem;
        height: 2.5rem;
        background-image: url("../images/top/icon_plus.svg");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain; }
    .page-top .main-contents .contents .item__img {
      transition: .3s ease-in-out;
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1;
      display: block;
      width: 100%;
      height: 100%;
      background-repeat: no-repeat;
      background-position: center center;
      background-size: cover; }

@media only screen and (max-width: 567px) {
  .page-top .main-visual {
    height: 40.0rem;
    max-height: 40.0rem;
    padding-top: 0;
    /*
			.slide-img {
				&01 {
					background-image:url(../images/top/main_visual01_sp.jpg)
				}
				&02 {
					background-image:url(../images/top/main_visual02_sp.jpg)
				}
				&03 {
					background-image:url(../images/top/main_visual03_sp.jpg)
				}
			}
*/ }
    .page-top .main-visual .scroll {
      padding-bottom: 4.0rem;
      font-size: 1.0rem; }
      .page-top .main-visual .scroll::after {
        height: 3.0rem; }
  .page-top .main-contents .intro {
    margin-top: 5.0rem; }
    .page-top .main-contents .intro__ttl {
      width: 21.7rem; }
    .page-top .main-contents .intro__txt {
      margin-top: 2.0rem;
      font-size: 1.1rem;
      line-height: 2; }
  .page-top .main-contents .contents {
    margin-top: 4.0rem; }
    .page-top .main-contents .contents__ttl {
      position: relative;
      padding-top: 3.5rem;
      font-size: 3.0rem;
      line-height: 1;
      letter-spacing: 0.1em;
      text-align: center;
      color: #C8BEA0; }
      .page-top .main-contents .contents__ttl::after {
        width: 1.2rem;
        height: 1.2rem; }
    .page-top .main-contents .contents__list {
      justify-content: center;
      margin: 2.0rem 0 0; }
    .page-top .main-contents .contents__item {
      width: 100%;
      height: 20.0rem;
      margin: 0; }
      .page-top .main-contents .contents__item:not(:first-child) {
        margin-top: 1.5rem; }
    .page-top .main-contents .contents__link {
      padding: 4.0rem; }
      .page-top .main-contents .contents__link:hover .item__img {
        transform: scale(1);
        opacity: 1; }
    .page-top .main-contents .contents .item__ttl-jp img {
      width: auto;
      height: 1.5rem; }
    .page-top .main-contents .contents .item__ttl-en {
      margin-top: 1.0rem;
      font-size: 1.0rem; }
    .page-top .main-contents .contents .item__ttl::before {
      top: -2.5rem;
      width: 1.0rem; }
    .page-top .main-contents .contents .item__ttl::after {
      bottom: -4.0rem;
      width: 2.0rem;
      height: 2.0rem; } }

/*---------------------------------------------
04. lawyer
---------------------------------------------*/
.page-lawyer .main-img {
  display: none; }

.page-lawyer .main-contents {
  padding: 10.0rem 0 0; }
  .page-lawyer .main-contents .contents {
    text-align: center; }
    .page-lawyer .main-contents .contents__ttl {
      margin-bottom: 8.0rem;
      color: #C8BEA0;
      font-size: 2.4rem;
      line-height: 1;
      letter-spacing: 0.1em; }
    .page-lawyer .main-contents .contents .flex-area {
      box-sizing: border-box;
      display: flex;
      justify-content: center; }
    .page-lawyer .main-contents .contents .side-img {
      width: 45%;
      height: auto;
      background: none;
      padding-top: 0; }
    .page-lawyer .main-contents .contents .details {
      box-sizing: border-box;
      width: 54%;
      padding: 0 10.0rem; }
      .page-lawyer .main-contents .contents .details .name-area {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin: 0 auto; }
        .page-lawyer .main-contents .contents .details .name-area__txt01 {
          width: 26.4rem; }
        .page-lawyer .main-contents .contents .details .name-area__txt02 {
          width: 26.0rem;
          margin-top: 4.0rem; }
        .page-lawyer .main-contents .contents .details .name-area__txt03 {
          margin-top: 3.0rem;
          font-size: 1.6rem;
          line-height: 1;
          letter-spacing: 0.2em; }
      .page-lawyer .main-contents .contents .details .intro {
        margin-top: 7.0rem;
        padding-top: 7.0rem;
        border-top: 1px solid #C8C8C8; }
        .page-lawyer .main-contents .contents .details .intro__ttl {
          width: 42.5rem;
          margin: 0 auto; }
        .page-lawyer .main-contents .contents .details .intro__txt {
          margin-top: 3.0rem;
          font-size: 1.8rem;
          line-height: 2.2;
          letter-spacing: 0.1em;
          text-align: justify; }

@media only screen and (max-width: 567px) {
  .page-lawyer .main-img {
    display: block;
    background-image: url(../images/lawyer/lawyer_mainImg_sp.jpg); }
  .page-lawyer .main-contents {
    padding: 0 3.0rem 3.0rem; }
    .page-lawyer .main-contents .contents__ttl {
      margin: 5.0rem 0 3.0rem; }
      .page-lawyer .main-contents .contents__ttl-en {
        margin-top: 2.5rem;
        font-size: 1.5rem; }
    .page-lawyer .main-contents .contents .flex-area {
      display: block; }
    .page-lawyer .main-contents .contents .side-img {
      display: none; }
    .page-lawyer .main-contents .contents .details {
      width: 100%;
      padding: 0; }
      .page-lawyer .main-contents .contents .details .name-area {
        margin: 3.0rem 0 0; }
        .page-lawyer .main-contents .contents .details .name-area__txt01 {
          width: 17.0rem; }
        .page-lawyer .main-contents .contents .details .name-area__txt02 {
          width: 16.0rem;
          margin-top: 2.5rem; }
        .page-lawyer .main-contents .contents .details .name-area__txt03 {
          margin-top: 1.5rem;
          font-size: 1.0rem; }
      .page-lawyer .main-contents .contents .details .intro {
        margin: 3.0rem 0 4.0rem;
        padding-top: 4.0rem; }
        .page-lawyer .main-contents .contents .details .intro__ttl {
          width: 27.3rem; }
        .page-lawyer .main-contents .contents .details .intro__txt {
          margin-top: 2.5rem;
          font-size: 1.1rem;
          line-height: 2.1; } }

/*---------------------------------------------
05. businessfield
---------------------------------------------*/
.page-businessfield .main-img {
  background-image: url(../images/businessfield/businessfield_mainImg.jpg); }

.page-businessfield .main-contents .contents {
  text-align: center; }
  .page-businessfield .main-contents .contents__ttl-jp {
    display: block;
    width: 17.2rem;
    margin: 0 auto; }
  .page-businessfield .main-contents .contents__ttl-en {
    display: block;
    margin-top: 4.0rem;
    color: #C8BEA0;
    font-size: 2.4rem;
    line-height: 1;
    letter-spacing: 0.1em; }
  .page-businessfield .main-contents .contents .section {
    margin: 8.0rem 7.0rem 0;
    padding-bottom: 10.0rem;
    border-bottom: 1px solid #C8C8C8;
    text-align: center; }
    .page-businessfield .main-contents .contents .section:last-of-type {
      padding-bottom: 0;
      border-bottom: none; }
    .page-businessfield .main-contents .contents .section__ttl {
      display: inline-block;
      padding: 0 0.5rem 1.5rem;
      border-bottom: 2px solid #AFA073; }
    .page-businessfield .main-contents .contents .section .section-list {
      display: flex;
      flex-wrap: wrap;
      margin-top: 5.0rem;
      text-align: left; }
      .page-businessfield .main-contents .contents .section .section-list__item {
        box-sizing: border-box;
        position: relative;
        width: 50%; }
        .page-businessfield .main-contents .contents .section .section-list__item:nth-child(2n-1) {
          padding: 4.0rem 8.0rem 8.0rem 0;
          border-right: 1px solid #C8BEA0;
          border-bottom: 1px solid #C8BEA0; }
        .page-businessfield .main-contents .contents .section .section-list__item:nth-child(2n) {
          padding: 4.0rem 0 8.0rem 8.0rem;
          border-bottom: 1px solid #C8BEA0; }
        .page-businessfield .main-contents .contents .section .section-list__item:last-child {
          border-bottom: none; }
      .page-businessfield .main-contents .contents .section .section-list__num {
        width: 2.0rem; }
      .page-businessfield .main-contents .contents .section .section-list__ttl {
        margin-top: 2.0rem;
        font-size: 2.8rem;
        letter-spacing: 0.2em; }
      .page-businessfield .main-contents .contents .section .section-list__txt {
        margin-top: 3.0rem;
        font-size: 1.6rem;
        line-height: 2.125;
        letter-spacing: 0.05em; }
    .page-businessfield .main-contents .contents .section.businessfield01 {
      margin-top: 12.0rem; }
      .page-businessfield .main-contents .contents .section.businessfield01 .section__ttl {
        width: 28.5rem; }
      .page-businessfield .main-contents .contents .section.businessfield01 .section__txt {
        margin-top: 5.0rem;
        line-height: 2.125;
        text-align: justify; }
    .page-businessfield .main-contents .contents .section.businessfield02 .section__ttl {
      width: 15.9rem; }
    .page-businessfield .main-contents .contents .section.businessfield03 .section__ttl {
      width: 15.8rem; }
    .page-businessfield .main-contents .contents .section.businessfield03 .section-list__item {
      padding-top: 0;
      padding-bottom: 0;
      border-bottom: none; }

@media only screen and (max-width: 567px) {
  .page-businessfield .main-img {
    background-image: url(../images/businessfield/businessfield_mainImg_sp.jpg); }
  .page-businessfield .main-contents .contents__ttl-jp {
    width: 9.5rem; }
  .page-businessfield .main-contents .contents__ttl-en {
    margin-top: 2.5rem;
    font-size: 1.5rem; }
  .page-businessfield .main-contents .contents .section {
    margin: 4.5rem 0 0;
    padding-bottom: 4.5rem; }
    .page-businessfield .main-contents .contents .section__ttl {
      padding: 0 0.5rem 0.8rem;
      border-bottom: 1px solid #AFA073; }
    .page-businessfield .main-contents .contents .section .section-list {
      display: block;
      margin-top: 3.0rem;
      text-align: justify; }
      .page-businessfield .main-contents .contents .section .section-list__item {
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        align-items: center;
        width: 100%; }
        .page-businessfield .main-contents .contents .section .section-list__item:not(:last-child) {
          margin-bottom: 3.0rem;
          padding-bottom: 3.0rem !important; }
        .page-businessfield .main-contents .contents .section .section-list__item:nth-child(2n-1) {
          padding: 0;
          border-right: none;
          border-bottom: 1px solid #C8BEA0; }
        .page-businessfield .main-contents .contents .section .section-list__item:nth-child(2n) {
          padding: 0;
          border-bottom: 1px solid #C8BEA0; }
        .page-businessfield .main-contents .contents .section .section-list__item:last-child {
          border-bottom: none; }
      .page-businessfield .main-contents .contents .section .section-list__num {
        width: 1.2rem; }
      .page-businessfield .main-contents .contents .section .section-list__ttl {
        margin-top: 1.5rem;
        font-size: 1.6rem;
        letter-spacing: 0.2em; }
      .page-businessfield .main-contents .contents .section .section-list__txt {
        margin-top: 2.0rem;
        font-size: 1.1rem;
        line-height: 2.1; }
    .page-businessfield .main-contents .contents .section.businessfield01 {
      margin-top: 5.0rem; }
      .page-businessfield .main-contents .contents .section.businessfield01 .section__ttl {
        width: 14.6rem; }
      .page-businessfield .main-contents .contents .section.businessfield01 .section__txt {
        margin-top: 4.0rem;
        line-height: 2.1; }
    .page-businessfield .main-contents .contents .section.businessfield02 .section__ttl {
      width: 8.2rem; }
    .page-businessfield .main-contents .contents .section.businessfield03 .section__ttl {
      width: 8.1rem; }
    .page-businessfield .main-contents .contents .section.businessfield03 .section-list__item {
      padding-top: 0;
      padding-bottom: 0;
      border-bottom: none; } }

/*---------------------------------------------
06. price
---------------------------------------------*/
.page-price .main-img {
  background-image: url(../images/price/price_mainImg.jpg); }

.page-price .main-contents .contents {
  margin: 0 7.0rem;
  text-align: center; }
  .page-price .main-contents .contents__ttl-jp {
    display: block;
    width: 17.2rem;
    margin: 0 auto; }
  .page-price .main-contents .contents__ttl-en {
    display: block;
    margin-top: 4.0rem;
    color: #C8BEA0;
    font-size: 2.4rem;
    line-height: 1;
    letter-spacing: 0.1em; }
  .page-price .main-contents .contents__notice {
    margin-top: 6.0rem;
    font-size: 1.6rem;
    letter-spacing: 0.2em; }
  .page-price .main-contents .contents .section {
    text-align: left;
    margin-top: 5.0rem;
    padding: 0 3.5rem 5.0rem;
    border-bottom: 1px solid #C8C8C8; }
    .page-price .main-contents .contents .section:last-of-type {
      border-bottom: none; }
    .page-price .main-contents .contents .section__ttl {
      font-size: 2.8rem;
      color: #AFA073;
      line-height: 1;
      letter-spacing: 0.25em; }
    .page-price .main-contents .contents .section.flex {
      display: flex;
      justify-content: space-between;
      align-items: center; }
      .page-price .main-contents .contents .section.flex .section__ttl {
        width: 27.0rem; }
      .page-price .main-contents .contents .section.flex .section__img {
        width: 52.0rem; }
    .page-price .main-contents .contents .section__txt {
      margin-top: 4.0rem; }
    .page-price .main-contents .contents .section.price03 .section__img {
      width: 79.0rem;
      margin: 6.0rem auto 0; }
    .page-price .main-contents .contents .section.price04 {
      padding-bottom: 0;
      border-bottom: none; }
    .page-price .main-contents .contents .section.price06 .section__img {
      width: 79.0rem;
      margin: 5.0rem auto 0; }

@media only screen and (max-width: 567px) {
  .page-price .main-img {
    background-image: url(../images/price/price_mainImg_sp.jpg); }
  .page-price .main-contents .contents {
    margin: 0;
    text-align: center; }
    .page-price .main-contents .contents__ttl-jp {
      width: 11.8rem; }
    .page-price .main-contents .contents__ttl-en {
      margin-top: 2.5rem;
      font-size: 1.5rem; }
    .page-price .main-contents .contents__notice {
      margin-top: 5.0rem;
      font-size: 1.0rem; }
    .page-price .main-contents .contents .section {
      margin-top: 2.0rem;
      padding: 0 0 2.0rem; }
      .page-price .main-contents .contents .section__ttl {
        font-size: 1.5rem; }
      .page-price .main-contents .contents .section.flex {
        display: flex;
        justify-content: space-between;
        align-items: center; }
        .page-price .main-contents .contents .section.flex .section__ttl {
          width: 11.5rem; }
        .page-price .main-contents .contents .section.flex .section__img {
          width: 20.0rem; }
      .page-price .main-contents .contents .section__txt {
        margin-top: 2.0rem; }
      .page-price .main-contents .contents .section.price03 .section__img {
        width: 100%;
        margin: 3.5rem auto 0; }
      .page-price .main-contents .contents .section.price04 {
        padding-bottom: 0;
        border-bottom: none; }
      .page-price .main-contents .contents .section.price06 .section__img {
        width: 31.5rem;
        margin: 2.0rem auto 0; } }

/*---------------------------------------------
07. contactus
---------------------------------------------*/
.page-contactus .main-img {
  background-image: url(../images/contactus/contactus_mainImg.jpg);
  background-position: center top; }

.page-contactus .main-contents .contents {
  margin: 0 7.0rem;
  padding-bottom: 7.0rem;
  text-align: center; }
  .page-contactus .main-contents .contents__ttl-jp {
    display: block;
    width: 17.2rem;
    margin: 0 auto; }
  .page-contactus .main-contents .contents__ttl-en {
    display: block;
    margin-top: 4.0rem;
    color: #C8BEA0;
    font-size: 2.4rem;
    line-height: 1;
    letter-spacing: 0.1em; }
  .page-contactus .main-contents .contents__tel {
    width: 86.0rem;
    margin: 8.0rem auto 0; }
  .page-contactus .main-contents .contents__map {
    position: relative;
    width: 100%;
    height: 0;
    margin-top: 8.0rem;
    padding-bottom: 40.0rem; }
    .page-contactus .main-contents .contents__map iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
  .page-contactus .main-contents .contents .section__ttl {
    margin-top: 9.0rem; }
    .page-contactus .main-contents .contents .section__ttl-jp {
      display: block;
      font-size: 2.1rem;
      line-height: 1;
      letter-spacing: 0.25em; }
    .page-contactus .main-contents .contents .section__ttl-en {
      display: block;
      margin-top: 1.5rem;
      color: #C8BEA0;
      font-size: 1.4rem;
      line-height: 1;
      letter-spacing: 0.2em; }
  .page-contactus .main-contents .contents .section .list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 5.0rem; }
    .page-contactus .main-contents .contents .section .list__item {
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 100%;
      margin-bottom: 2.0rem;
      padding: 2.0rem 0;
      border-bottom: 1px solid #AFA073;
      text-align: left;
      font-size: 1.6rem; }
      .page-contactus .main-contents .contents .section .list__item.small {
        width: 40.0rem; }
    .page-contactus .main-contents .contents .section .list__ttl {
      width: 15.0rem;
      letter-spacing: 0.25em;
      line-height: 1;
      color: #AFA073; }
    .page-contactus .main-contents .contents .section .list__txt {
      flex: 1 auto;
      letter-spacing: 0.2em; }

@media only screen and (max-width: 567px) {
  .page-contactus .main-img {
    background-image: url(../images/contactus/contactus_mainImg_sp.jpg); }
  .page-contactus .main-contents .contents {
    margin: 0;
    padding: 0; }
    .page-contactus .main-contents .contents__ttl-jp {
      width: 14.2rem; }
    .page-contactus .main-contents .contents__ttl-en {
      margin-top: 2.0rem;
      font-size: 1.5rem; }
    .page-contactus .main-contents .contents__tel {
      width: 100%;
      margin: 4.0rem auto 0; }
    .page-contactus .main-contents .contents__map {
      position: relative;
      width: 100%;
      height: 0;
      margin-top: 5.0rem;
      padding-bottom: 17.0rem; }
    .page-contactus .main-contents .contents .section__ttl {
      margin-top: 5.0rem; }
      .page-contactus .main-contents .contents .section__ttl-jp {
        font-size: 1.4rem; }
      .page-contactus .main-contents .contents .section__ttl-en {
        margin-top: 1.0rem; }
    .page-contactus .main-contents .contents .section .list {
      margin-top: 2.0rem; }
      .page-contactus .main-contents .contents .section .list__item {
        align-items: baseline;
        margin-bottom: 1.5rem;
        padding: 1.5rem 0;
        font-size: 1.1rem; }
        .page-contactus .main-contents .contents .section .list__item.small {
          width: 100%; }
      .page-contactus .main-contents .contents .section .list__ttl {
        width: 7.0rem; }
      .page-contactus .main-contents .contents .section .list__txt {
        flex: 1;
        letter-spacing: 0.1em;
        line-height: 1.6; }
        .page-contactus .main-contents .contents .section .list__txt > span {
          display: none; } }
