@charset "UTF-8";
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* stylelint-disable order/order, at-rule-empty-line-before, declaration-empty-line-before */
/* ==========================================================================
   Top page
   ========================================================================== */
/* Hero
   ========================================================================== */
._Hero {
  position: relative;
  height: 568px;
  padding-top: 140px;
  text-align: center;
  font-weight: bold;
}

._Hero > .inner {
  width: 1000px;
  margin: 0 auto;
}

._Hero__background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: #e2f4fb url(/assets/images/pages/top/Hero/bg.jpg) center no-repeat;
  background-size: cover;
  -webkit-transition: 1.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: 1.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-transition-property: opacity, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  transition-property: filter, opacity;
  transition-property: filter, opacity, -webkit-filter;
}

._Hero__background[data-init-transparent] {
  opacity: .1;
  -webkit-filter: brightness(150%);
          filter: brightness(150%);
}

._Hero__background.is-visible {
  opacity: 1;
  -webkit-filter: brightness(100%);
          filter: brightness(100%);
}

._Hero__logo {
  width: 323px;
  margin: 0 auto;
}

._Hero__logo > img {
  width: 100%;
  height: auto;
}

._Hero__lead {
  line-height: 1;
  font-size: 1.6rem;
  letter-spacing: 0.3em;
  margin-top: 35px;
}

/* BackgroundArea
   ========================================================================== */
._BackgroundArea {
  background-color: #edf4f2;
}

/* News
   ========================================================================== */
._News {
  padding-top: 100px;
}

._News > .inner {
  width: 1000px;
  margin: 0 auto;
}

._News__content {
  width: 740px;
  margin: 8px auto 0;
}

/* News item
   -------------------------------------------------------------------------- */
._NewsItem {
  padding: 30px 0;
  border-bottom: 1px solid #92b8a7;
}

._NewsItem__header {
  position: relative;
  padding-left: 130px;
}

._NewsItem__header::before, ._NewsItem__header::after {
  content: '';
  display: block;
  height: 1px;
}

._NewsItem__header::before {
  margin-bottom: -1px;
}

._NewsItem__header::after {
  margin-top: -1px;
}

._NewsItem__header > .inner {
  margin-top: -5px;
  margin-bottom: -5px;
}

._NewsItem__title {
  display: inline;
}

._NewsItem__date {
  margin-top: -5px;
  margin-bottom: -5px;
  position: absolute;
  top: 0;
  left: 0;
  font-weight: bold;
}

._NewsItem__handle {
  line-height: 1;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  margin: 0;
  padding: 0 10px;
  border: none;
  border-radius: 0;
  outline: none;
  background-color: transparent;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
  color: #212e31;
  font-weight: bold;
}

.no-js ._NewsItem__handle {
  display: none;
}

._NewsItem__handle::after {
  content: '';
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(/assets/images/pages/top/News/bg_handle.svg) no-repeat;
  background-size: cover;
  vertical-align: -2px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

._NewsItem.is-expanded ._NewsItem__handle::after {
  -webkit-transform: rotate(0);
          transform: rotate(0);
}

._NewsItem__handleLabel {
  text-decoration: underline;
  text-transform: uppercase;
}

._NewsItem__handle:hover ._NewsItem__handleLabel {
  text-decoration: none;
}

._NewsItem.is-collapsed ._NewsItem__handleLabel::before {
  content: attr(data-collapsed-label);
}

._NewsItem.is-expanded ._NewsItem__handleLabel::before {
  content: attr(data-expanded-label);
}

._NewsItem__content > .inner {
  padding-top: 16px;
}

.js ._NewsItem [data-collapse-content] {
  display: none;
}

._NewsItem__box {
  padding: 30px;
  border: 1px solid #92b8a7;
  background-color: #fff;
  color: #212e31;
}

._NewsItem__description {
  line-height: 1.8;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
}

._NewsItem__description::before, ._NewsItem__description::after {
  content: '';
  display: block;
  height: 1px;
}

._NewsItem__description::before {
  margin-bottom: -1px;
}

._NewsItem__description::after {
  margin-top: -1px;
}

._NewsItem__description > p {
  margin-top: 14px;
  margin-bottom: -6px;
}

._NewsItem__description > p:first-child {
  margin-top: -6px;
}

/* Service
   ========================================================================== */
._Service {
  padding-top: 118px;
  padding-bottom: 78px;
}

._Service > .inner {
  width: 1000px;
  margin: 0 auto;
}

._Service__content {
  margin-top: 30px;
}

._Service__description {
  width: 740px;
  margin: 0 auto;
}

._Service__description::before, ._Service__description::after {
  content: '';
  display: block;
  height: 1px;
}

._Service__description::before {
  margin-bottom: -1px;
}

._Service__description::after {
  margin-top: -1px;
}

._Service__description > p:first-child {
  margin-top: -0.34375em;
}

._Service__description > p:last-child {
  margin-bottom: -0.34375em;
}

._Service__categoryContainer {
  margin-top: 50px;
}

/* Service category
   -------------------------------------------------------------------------- */
._ServiceCategory {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

._ServiceCategory:not(:first-child) {
  margin-top: 50px;
}

._ServiceCategory:nth-child(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

._ServiceCategory__title {
  line-height: 1;
  font-size: 1.8rem;
  letter-spacing: 5.4px;
  padding: 15px 25px;
  background-color: #0a905f;
  color: #fff;
  font-weight: bold;
}

._ServiceCategory__content {
  margin-top: 35px;
}

._ServiceCategory__row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

._ServiceCategory__itemList {
  line-height: 2;
  font-size: 1.6rem;
  letter-spacing: 2.2px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
}

._ServiceCategory__itemList > li {
  position: relative;
  padding-left: 25px;
}

._ServiceCategory__itemList > li::before {
  content: '';
  position: absolute;
  top: 14px;
  left: 10px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #212e31;
}

._ServiceCategory__itemList:nth-child(even) {
  margin-left: 50px;
}

._ServiceCategory__itemList > li {
  margin-top: 16px;
  margin-bottom: -8px;
}

._ServiceCategory__itemList > li:first-child {
  margin-top: -8px;
}

._ServiceCategory__image {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 472px;
}

/* Lawyers
   ========================================================================== */
._Lawyers {
  position: relative;
  margin-top: 240px;
  padding: 118px 0 100px;
  background-color: #f8f8f8;
}

._Lawyers::before {
  content: '';
  position: absolute;
  top: -240px;
  width: 100%;
  height: 240px;
  margin-bottom: 118px;
  background: #edf4f2 url(/assets/images/pages/top/AboutUs/bg.jpg) center no-repeat;
}

._Lawyers > .inner {
  width: 1000px;
  margin: 0 auto;
}

._Lawyers__content {
  margin-top: 50px;
}

/* Lawyers item
   -------------------------------------------------------------------------- */
._LawyersItem {
  position: relative;
}

._LawyersItem:not(:first-child) {
  margin-top: 79px;
}

._LawyersItem__header {
  padding: 7px 0 7px 20px;
  border-left: 5px solid #279d75;
}

._LawyersItem__job {
  line-height: 1;
  font-size: 1.6rem;
  letter-spacing: 0.14em;
  display: block;
}

._LawyersItem__name {
  margin-top: 8px;
  margin-bottom: 0px;
  line-height: 1;
  font-size: 2.4rem;
  letter-spacing: 0.14em;
  display: block;
}

._LawyersItem__name:first-child {
  margin-top: 0px;
}

._LawyersItem__association {
  margin-top: 15px;
  margin-bottom: 0px;
  line-height: 1;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

._LawyersItem__association:first-child {
  margin-top: 0px;
}

._LawyersItem__association > .-number {
  padding-left: 15px;
}

._LawyersItem__content {
  width: 684px;
  margin-top: 38px;
}

._LawyersItem__row {
  min-height: 152px;
}

._LawyersItem__description::before, ._LawyersItem__description::after {
  content: '';
  display: block;
  height: 1px;
}

._LawyersItem__description::before {
  margin-bottom: -1px;
}

._LawyersItem__description::after {
  margin-top: -1px;
}

._LawyersItem__description > p:first-child {
  margin-top: -6px;
}

._LawyersItem__description > p:last-child {
  margin-bottom: -6px;
}

._LawyersItem__description > p {
  line-height: 1.8;
  font-size: 1.5rem;
  letter-spacing: 0.14em;
}

._LawyersItem__image {
  position: absolute;
  top: 0;
  right: 0;
}

._LawyersItem__dataList {
  width: 1000px;
  margin-top: 30px;
  padding: 30px;
  border: solid 1px #92b8a7;
  background-color: #fff;
}

._LawyersItem__dataList > div {
  margin-top: 4px;
  margin-bottom: -10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

._LawyersItem__dataList > div:first-child {
  margin-top: -10px;
}

._LawyersItem__dataList > div > dt {
  line-height: 2.4;
  font-size: 1.5rem;
  letter-spacing: 0.06em;
  width: 124px;
  font-weight: bold;
}

._LawyersItem__dataList > div > dd {
  line-height: 2.4;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
}

/* About us
   ========================================================================== */
._AboutUs {
  padding: 115px 0 100px;
}

._AboutUs > .inner {
  width: 740px;
  margin: 0 auto;
}

._AboutUs__content {
  margin-top: 30px;
}

._AboutUs__note {
  color: #db2323;
}

._AboutUs__dataContainer {
  line-height: 1.66666666667;
  font-size: 1.5rem;
  letter-spacing: 0.9px;
  border-bottom: 1px solid #eaeaea;
}

._AboutUs__data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 36px 0;
  border-top: 1px solid #eaeaea;
}

._AboutUs__data > dt {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 200px;
  font-weight: bold;
}

._AboutUs__data > dd {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-left: 20px;
}

._AboutUs__itemList > li:not(:first-child) {
  margin-top: 10px;
}

/* Access
   ========================================================================== */
._Access {
  position: relative;
  margin-top: 10px;
  padding: 115px 0 100px;
  background-color: #f6f7f7;
}

._Access::before {
  content: '';
  position: absolute;
  top: -10px;
  width: 100%;
  height: 10px;
  background-color: #0a905f;
}

._Access > .inner {
  width: 1000px;
  margin: 0 auto;
}

._Access__content {
  margin-top: 35px;
}

._Access__informationContainer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

._Access__information {
  line-height: 1.8;
  font-size: 1.5rem;
  letter-spacing: 1.2px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  padding-bottom: 10px;
  padding-left: 20px;
  border-left: 3px solid #212e31;
}

._Access__information::before, ._Access__information::after {
  content: '';
  display: block;
  height: 1px;
}

._Access__information::before {
  margin-bottom: -1px;
}

._Access__information::after {
  margin-top: -1px;
}

._Access__information:first-child {
  width: 317px;
}

._Access__information:not(:first-child) {
  margin-left: 10px;
}

._Access__information > div {
  margin-top: -6px;
  margin-bottom: -6px;
}

._Access__information > div > dt {
  font-weight: bold;
}

._Access__information > div > dt::after {
  content: '\FF1A';
}

._Access__map {
  margin-top: 55px;
}

._Access__mapEmbed {
  height: 500px;
}
