@charset "UTF-8";
div, span, h1, h2, h3, h4, h5, h6, p, a, img, dl, dt, dd, ol, ul, li, label, table, caption, tbody, tfoot, thead, tr, th, td, article, footer, header, hgroup, nav, section, time, button, main {
  margin: 0;
  padding: 0;
  outline: none;
  box-sizing: border-box
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block
}
button {
  cursor: pointer
}
input[type="text"] {
  outline: none
}
img {
  image-rendering: crisp-edges
}
* {
  box-sizing: border-box
}
html {
  min-height: 100vh;
  font-size: 10px;
  background: #fff
}
body {
  font-display: swap;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  font-weight: 400;
  color: #2e3b4c;
  min-width: 320px
}
b, strong, .bold, h1, h2 {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", "Segoe UI", Verdana, Meiryo, sans-serif;
  font-weight: 700
}
ul, ol, li, dl, dt, dd {
  list-style: none;
  padding: 0;
  margin: 0
}
@media only screen and (max-width:900px) {
  body.-fixed {
    overflow: hidden
  }
}
.-en {
  font-family: 'Sorts Mill Goudy', serif;
  font-weight: 400
}
a {
  color: #2e3b4c;
  transition: .2s all ease
}
.width_wide, .width_base, .width_middle, .width_narrow, .width_min {
  width: 82%;
  min-width: 320px;
  margin: 0 auto
}
.width_base {
  max-width: 1400px
}
.width_middle {
  max-width: 960px
}
.width_narrow {
  max-width: 800px
}
.-mg_t10 {
  margin-top: 10px
}
.-mg_t15 {
  margin-top: 15px
}
.-mg_t20 {
  margin-top: 20px
}
.-mg_t40 {
  margin-top: 40px !important
}
.-mg_t50 {
  margin-top: 50px
}
.-mg_t60 {
  margin-top: 60px !important
}
@media only screen and (max-width:900px) {
  .-mg_t40 {
    margin-top: 25px !important
  }
  .-mg_t50, .-mg_t60 {
    margin-top: 30px !important
  }
}
.-mg_b0 {
  margin-bottom: 0 !important
}
.-mg_b20 {
  margin-bottom: 20px
}
.p-flex_between {
  display: flex;
  justify-content: space-between;
  /* align-items: center */
}
.-mg_l15 {
  margin-left: 15px
}
.-mg_l30 {
  margin-left: 30px
}
.-pd_t0 {
  padding-top: 0 !important
}
.-pd_t10 {
  padding-top: 10px !important
}
.-pd_t15 {
  padding-top: 15px !important
}
@media only screen and (max-width:900px) {
  #chk-area .p-flex_between {
    flex-direction: column;
    align-items: flex-start
  }
  #chk-area .p-flex_between .c-read + div {
    text-align: right;
    margin-top: 20px;
    width: 100%
  }
}
.-w100 {
  width: 100px !important
}
.-w150 {
  width: 150px !important
}
@media only screen and (min-width:901px) {
  .-w200 {
    width: 200px !important
  }
  .-w300 {
    width: 300px !important
  }
}
.-w50p {
  width: 50% !important
}
.-w45p {
  width: 47.5% !important
}
.-w40p {
  width: 40% !important
}
@media only screen and (max-width:900px) {
  .-pc_view {
    display: none !important
  }
}
@media only screen and (min-width:901px) {
  .-sp_view {
    display: none !important
  }
}
.slick-slider, .p-list_recommend {
  opacity: 0;
  display: none !important
}
.slick-slider.slick-initialized, .p-list_recommend.slick-initialized {
  opacity: 1;
  display: block !important
}
.slick-slider img, .p-list_recommend img {
  opacity: 0;
  display: none !important
}
.slick-slider.slick-initialized img, .p-list_recommend.slick-initialized img {
  opacity: 1;
  display: block !important
}
.p-fixed_header {
  position: fixed;
  z-index: 20;
  background: #003b87;
  width: 10vw;
  height: 70vh;
  min-height: 580px;
  max-height: 750px
}
.p-fixed_header.-root {
  position: absolute;
  height: 70vh;
  min-height: 580px;
  z-index: 0
}
.p-fixed_header.-search_agent {
  position: absolute;
  height: 70vh;
  min-height: 580px
}
.p-fixed_header.-simple {
  position: absolute;
  height: 95px;
  min-height: unset
}
.p-fixed_header.-login {
  position: absolute;
  height: 125px;
  min-height: unset
}
.p-fixed_header.-mypage {
  height: 100vh;
  max-height: unset
}
.p-fixed_header.-map_search::after {
  content: '';
  display: block;
  position: absolute;
  background: #003b87;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: -1
}
.-indent {
  padding-left: 1.5em;
  text-indent: -1.5em
}
.-color_red {
  color: #dc4748 !important
}
@media only screen and (max-width:750px) {
  .p-fixed_header.-root {
    z-index: -1
  }
}
@media only screen and (max-width:900px) {
  .p-fixed_header:not(.-root) {
    display: none
  }
}
@media only screen and (min-width:901px) and (max-width:1120px) {
  .p-fixed_header:not(.-root) {
    min-height: unset;
    position: absolute;
    height: 100%;
    max-height: 124px;
  }
  .p-fixed_header.-search_agent {
    height: 250px;
    min-height: unset;
    position: absolute
  }
  .p-fixed_header.-map_search::after {
    height: 100%
  }
  .p-fixed_header .c-logo + p, .p-fixed_header:not(.-root) .c-box_nav {
    display: none
  }
}
@media only screen and (min-width:901px) {
  .p-fixed_header {
    min-width: 130px
  }
  .p-fixed_header.-root {
    min-width: 130px
  }
}
.p-fixed_header > .inner {
  width: 92px;
  margin: auto;
  height: 100%
}
.p-fixed_header .c-logo {
  height: 100%;
  max-height: 125px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0
}
.p-fixed_header .c-logo img {
  display: block;
  margin: 0 auto;
  transition: .2s all ease
}
@media only screen and (min-width:901px) {
  .p-fixed_header .c-logo {
    opacity: 1
  }
  .p-fixed_header .c-logo img {
    height: auto;
    width: 80px;
  }
}
.p-fixed_header .c-logo a:hover img {
  opacity: .8
}
.p-fixed_header .c-box_nav {
  height: calc(100% - 150px);
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%
}
.p-fixed_header.-root .c-box_nav {
  height: calc(100% - 25vh);
  padding-left: 25%
}
.p-fixed_header.-mypage .c-box_nav {
  height: calc(100% - 50vh)
}
.p-fixed_header .c-anchor_text {
  color: #fff;
  text-decoration: none;
  position: relative;
  transition: .3s all ease
}
.p-fixed_header .c-anchor_text:hover {
  transform: translateY(20px);
  opacity: .9
}
.p-fixed_header .c-anchor_text::after {
  content: '';
  display: block;
  width: 100%;
  height: 24px;
  background: url(/common/img/ico_arrow_w.svg) 50% 50% no-repeat;
  background-size: auto 24px;
  margin-top: 10px
}
.p-fixed_header .c-anchor_text span {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 33px;
  margin: 0 auto;
  font-size: 1.6rem;
  letter-spacing: .15em;
  font-weight: 700
}
@media only screen and (min-width:901px) {
  .p-fixed_header .c-anchor_text span {
    font-size: 1.8rem
  }
}
.p-fixed_header .c-anchor_text .-search_house {
  background: url(/common/img/ico_house.png) 50% 0 no-repeat;
  background-size: 32px 32px;
  padding-top: 40px
}
.p-fixed_nav * + li {
  margin-top: 10px
}
.p-fixed_nav * + li:nth-of-type(n+4) {
  margin-top: 20px;
  padding: 0 8px
}
.p-fixed_nav a {
  color: #fff;
  text-decoration: none
}
.p-fixed_nav a.-center {
  display: block;
  text-align: center;
  padding: 8px;
  font-size: 1.1rem;
  position: relative;
  color: rgba(255, 255, 255, .8)
}
.p-fixed_nav a.-center::after {
  content: '';
  display: block;
  width: 75px;
  height: 75px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: .2s all ease;
  background: rgba(255, 255, 255, .1);
  border-radius: 5px;
  opacity: 0
}
.p-fixed_nav a.-center.-active::after {
  opacity: 1;
  background: rgba(255, 255, 255, .2)
}
.p-fixed_nav a.-center:not(.-active):hover::after {
  opacity: 1
}
.p-fixed_nav a:not(.-center).-active {
  color: #b6fff7;
  font-weight: 700
}
.p-fixed_nav a.-center .ico {
  display: block;
  margin-bottom: 8px
}
.p-fixed_nav a:not(.-center) {
  font-size: 1.2rem;
  line-height: 1.2;
  padding-left: 12px;
  position: relative;
  display: block
}
.p-fixed_nav a:not(.-center)::before {
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  left: 0;
  top: 4px;
  transform: rotate(45deg)
}
.p-fixed_nav a:not(.-center):hover {
  text-decoration: underline
}
.l-header {
  position: relative;
  border-bottom: 1px solid #a6b5cc;
  z-index: 19
}
@media only screen and (max-width:900px) {
  .l-header {
    position: relative;
    border-bottom: 1px solid #a6b5cc;
    z-index: 30
  }
}
.-root + .l-header {
  border-bottom: none
}
.l-header > .inner {
  display: flex;
  align-items: center
}
@media only screen and (min-width:901px) {
  .l-header > .inner {
    align-items: flex-end
  }
}
.l-header .c-logo {
  background: #003b87;
  /* padding: 11px 0; */
  min-width: 80px;
  width: 20%;
  height: 65px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.l-header .c-logo .-middle {
  display: none
}
@media only screen and (min-width:451px) and (max-width:900px) {
  .l-header .c-logo {
    padding: 0 10px;
    width: auto;
    text-align: center
  }
  .l-header .c-logo .-middle {
    display: block
  }
  .l-header .c-logo .-minimum {
    display: none
  }
}
@media only screen and (min-width:751px) and (max-width:900px) {
  .l-header .c-logo {
    width: 25%
  }
}
@media only screen and (max-width:900px) {
  .l-header .c-logo img {
    height: 40px;
    width: auto;
    margin: 0 auto
  }
}
@media only screen and (min-width:901px) {
  .l-header:not(.-simple) .c-logo {
    width: 10vw;
    min-width: 130px;
    opacity: 0
  }
  .l-header .c-logo img {
    transition: .2s all ease
  }
  .l-header .c-logo a:hover img {
    opacity: .9
  }
}
.l-header.-simple > .inner {
  align-items: center
}
.l-header.-simple .c-logo .-middle {
  display: block
}
.l-header.-simple .c-logo {
  height: auto;
  width: auto;
  padding: 10px 20px
}
.l-header.-simple .c-logo img {
  height: 36px
}
.l-header.-simple .c-row_lmenu {
  margin-left: 20px;
  display: block
}
.l-header.-simple .c-lmenu_top {
  padding-bottom: 0
}
@media only screen and (min-width:901px) {
  .l-header.-simple .c-row_lmenu {
    margin-left: 3vw
  }
  .l-header.-simple .c-logo {
    height: auto;
    width: auto;
    padding: 10px 30px
  }
  .l-header.-simple .c-logo img {
    height: 50px
  }
}
.c-row_nav {
  margin-left: auto;
  border-left: 1px solid #fff
}
@media only screen and (min-width:901px) {
  .c-row_nav {
    width: 32%;
    max-width: 360px;
    margin-left: auto
  }
}
.p-box_mypage {
  display: none
}
#btn-login.-logout .mode-login, #btn-login.-login .mode-logout, #btn-login_sp.-logout .mode-login, #btn-login_sp.-login .mode-logout {
  display: none
}
@keyframes fadein-anim {
  80% {
    opacity: 1;
    z-index: 10;
  }
  99% {
    opacity: 0;
    z-index: 10;
    transform: scale(1, 1);
  }
  100% {
    opacity: 0;
    z-index: -999;
    transform: scale(1, 0);
  }
}
@media only screen and (min-width:901px) {
  .p-box_mypage {
    display: flex;
    align-items: center
  }
  .p-box_mypage li {
    width: 50%;
    border-left: 1px solid #ced6e8;
    border-bottom: 1px solid #ced6e8
  }
  .p-box_mypage a {
    text-decoration: none;
    display: block;
    font-size: 1.2rem;
    white-space: nowrap;
    height: 49px;
    line-height: 49px;
    text-align: center;
    transition: .2s all ease
  }
  .p-box_mypage .btn-login {
    font-weight: 700;
    color: #fff;
    background: #003b87
  }
  .btn-mediation:hover {
    background: #f0f3f8
  }
  .p-box_mypage .btn-login:hover {
    background: #072955
  }
  /* 23.05.23追加 --------------------------------- */
  .p-box_mypage.-agent {
    position: relative;
    z-index: 2;
  }
  .p-box_mypage.-agent + nav {
    position: relative;
    z-index: 1;
  }
  .p-box_mypage.-agent .btn-mediation .ico, .p-box_mypage.-agent .btn-login .ico {
    font-size: 0;
  }
  .p-box_mypage.-agent li {
    width: calc(100% - 96px);
  }
  .p-box_mypage.-agent li:nth-of-type(2), .p-box_mypage.-agent li:nth-of-type(3) {
    width: 56px;
  }
  .p-box_mypage.-agent a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 49px;
    line-height: 1;
  }
  .p-box_mypage.-agent .btn-mediation .ico::before, .p-box_mypage.-agent .btn-login .ico::before {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    aspect-ratio: 1/1;
  }
  .p-box_mypage.-agent .btn-mediation .ico::before {
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%232e3b4c%22%20d%3D%22m21.7%2013.35l-1%201l-2.05-2.05l1-1a.55.55%200%200%201%20.77%200l1.28%201.28c.21.21.21.56%200%20.77M12%2018.94l6.06-6.06l2.05%202.05L14.06%2021H12v-2.06M12%2014c-4.42%200-8%201.79-8%204v2h6v-1.89l4-4c-.66-.08-1.33-.11-2-.11m0-10a4%204%200%200%200-4%204a4%204%200%200%200%204%204a4%204%200%200%200%204-4a4%204%200%200%200-4-4Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E')50% 50% no-repeat;
    background-size: cover;
  }
  .p-box_mypage.-agent .btn-login .ico::before {
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M5%205h7V3H5c-1.1%200-2%20.9-2%202v14c0%201.1.9%202%202%202h7v-2H5V5zm16%207l-4-4v3H9v2h8v3l4-4z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E') 50% 50% no-repeat;
    background-size: 20px 20px;
  }
  /* 宅建免許番号がない場合のアラート */
  .p-box_mypage.-agent .btn-mediation.-error {
    background-color: #ffdede;
  }
  .p-box_mypage.-agent .btn-mediation.-error:hover {
    background-color: #ffcdcd;
  }
  .p-box_mypage.-agent .btn-mediation.-error .ico::after {
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%23dc4748%22%20stroke-width%3D%222%22%20class%3D%22ai%20ai-TriangleAlertFill%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M14.543%202.598a2.821%202.821%200%200%200-5.086%200L1.341%2018.563C.37%2020.469%201.597%2023%203.883%2023h16.233c2.287%200%203.512-2.53%202.543-4.437L14.543%202.598zM12%208a1%201%200%200%201%201%201v5a1%201%200%201%201-2%200V9a1%201%200%200%201%201-1zm0%208.5a1%201%200%200%201%201%201v.5a1%201%200%201%201-2%200v-.5a1%201%200%200%201%201-1z%22%2F%3E%3C%2Fsvg%3E')50% 50% no-repeat;
    background-size: cover;
    position: absolute;
    right: -5px;
    top: -5px;
    z-index: 5;
  }
  .p-box_mypage.-agent li:nth-of-type(2) {
    position: relative;
  }
  .tooltip-license_number {
    position: absolute;
    z-index: 10;
    background: #dc4748;
    color: #fff;
    padding: 8px;
    font-size: 1.4rem;
    line-height: 1.2;
    right: -30px;
    bottom: -40px;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .15);
    display: none;
  }
  .btn-mediation.-error .tooltip-license_number {
    display: block;
    animation: fadein-anim 4s linear forwards;
  }
  .btn-mediation.-error:hover .tooltip-license_number {
    opacity: 1 !important;
    z-index: 10 !important;
    transform: scale(1, 1) !important;
    transition: .2s;
  }
  .p-box_mypage.-agent li.c-name_agent {
    height: 49px;
    padding: 0 0 0 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #000;
  }
  .p-box_mypage.-agent li.c-name_agent .label-agent {
    width: calc(100% - 40px);
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 5px 0;
  }
  .p-box_mypage.-agent li.c-name_agent .-company {
    font-size: 1.1rem;
    font-weight: bold;
  }
  .p-box_mypage.-agent li.c-name_agent .-user {
    font-size: 1.5rem;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
    max-width: 18em;
    font-weight: bold;
  }
  .p-box_mypage.-agent .btn-change_user {
    border: none;
    background: none;
    height: 100%;
    width: 40px;
    display: block;
  }
  .p-box_mypage.-agent .btn-change_user .ico {
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232e3b4c%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20class%3D%22ai%20ai-ArrowCycle%22%3E%3Cpath%20d%3D%22M22%2012c0%206-4.39%2010-9.806%2010C7.792%2022%204.24%2019.665%203%2016%22%2F%3E%3Cpath%20d%3D%22M2%2012C2%206%206.39%202%2011.806%202%2016.209%202%2019.76%204.335%2021%208%22%2F%3E%3Cpath%20d%3D%22M7%2017l-4-1-1%204%22%2F%3E%3Cpath%20d%3D%22M17%207l4%201%201-4%22%2F%3E%3C%2Fsvg%3E') 50% 50% no-repeat;
    background-size: 18px 18px;
    width: 100%;
    height: 100%;
    display: block;
    transition: .2s;
  }
  .p-box_mypage.-agent .btn-change_user:hover .ico {
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233f80d4%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20class%3D%22ai%20ai-ArrowCycle%22%3E%3Cpath%20d%3D%22M22%2012c0%206-4.39%2010-9.806%2010C7.792%2022%204.24%2019.665%203%2016%22%2F%3E%3Cpath%20d%3D%22M2%2012C2%206%206.39%202%2011.806%202%2016.209%202%2019.76%204.335%2021%208%22%2F%3E%3Cpath%20d%3D%22M7%2017l-4-1-1%204%22%2F%3E%3Cpath%20d%3D%22M17%207l4%201%201-4%22%2F%3E%3C%2Fsvg%3E') 50% 50% no-repeat;
    background-size: 18px 18px;
  }
}
.p-list_nav {
  display: table;
  width: 100%
}
.p-list_nav > li {
  display: table-cell;
  vertical-align: middle;
  width: 25%;
  height: 74px;
  text-align: center;
  white-space: nowrap
}
.p-list_nav > li.-disabled > * {
  opacity: .2;
  pointer-events: none
}
.p-list_nav .-balloon {
  position: absolute;
  display: flex;
  width: 10px;
  height: 10px;
  font-size: 0;
  justify-content: center;
  align-items: center;
  background: #f6ac19;
  color: #fff;
  border-radius: 50%;
  top: 12px;
  left: calc(50% + 8px);
  z-index: 10;
}
@media only screen and (min-width:901px) {
  .p-list_nav > li {
    display: table-cell;
    vertical-align: middle;
    width: 25%;
    height: 74px;
    text-align: center;
    white-space: nowrap
  }
  .p-list_nav .-balloon {
    width: 18px;
    height: 18px;
    font-size: 10px;
    top: 14px;
    left: calc(50% + 8px)
  }
}
@media only screen and (max-width:900px) {
  .p-list_nav > li:first-of-type > a::before {
    display: none
  }
}
.p-list_nav > li > a {
  font-size: 1.1rem;
  text-decoration: none;
  color: #828890;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  position: relative;
  transition: .2s all ease
}
.p-list_nav > li > a::before {
  content: '';
  display: block;
  width: 1px;
  height: 20px;
  background: #ced6e8;
  position: absolute;
  left: 0;
  top: calc(50% - 10px)
}
.p-list_nav > li > a:hover {
  background: #f0f3f8
}
@media only screen and (max-width:900px) {
  .p-list_nav > li {
    height: 65px;
    width: 60px
  }
  .p-list_nav > li:first-of-type {
    width: 80px
  }
  .p-list_nav > li > a {
    font-size: 1rem
  }
  .p-list_nav > li > a::after {
    width: 45px;
    height: 45px
  }
}
@media only screen and (max-width:600px) {
  .p-list_nav > li {
    width: 56px
  }
}
.p-list_nav .ico {
  position: relative;
  display: block;
  text-align: center;
  margin-bottom: 5px;
  line-height: 1;
  z-index: 2
}
a .ico img {
  width: auto;
  height: 22px;
  display: block;
  margin: 0 auto
}
a.btn-menu_sp .ico img {
  width: auto;
  height: 28px
}
@media only screen and (min-width:901px) {
  .p-list_nav .ico {
    margin-bottom: 3px
  }
  a.btn-toggle_s_property .ico img {
    width: auto;
    height: 30px
  }
  a:not(.btn-toggle_s_property) .ico img {
    width: auto;
    height: 30px
  }
}
.p-list_nav .label {
  position: relative;
  line-height: 1;
  z-index: 2
}
.p-list_nav .btn-toggle_s_property {
  color: #003b87
}
.p-list_nav .btn-toggle_s_property .ico {
  background: url(/common/img/ico_house.png) 50% 50% no-repeat;
  background-size: contain;
  position: relative
}
@media only screen and (min-width:901px) {
  .p-list_nav .btn-toggle_s_property .ico {}
}
.p-list_nav .btn-toggle_s_property .label {
  padding-right: 8px
}
.p-list_nav .btn-toggle_s_property .label::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 3.5px 0 3.5px;
  border-color: #003b87 transparent transparent transparent;
  position: absolute;
  right: 0;
  top: calc(50% - 2px)
}
.p-list_nav .btn-toggle_s_property.-active {
  color: #fff;
  background: #003b87
}
.p-list_nav .btn-toggle_s_property.-active .ico img {
  opacity: 0
}
.p-list_nav .btn-toggle_s_property.-active .label::after {
  border-width: 0 3.5px 5px 3.5px;
  border-color: transparent transparent #fff transparent
}
.p-toggle-nav_property {
  position: absolute;
  top: 65px;
  background: #003b87;
  display: none;
  z-index: 100
}
.btn-toggle_s_property.-active + .p-toggle-nav_property {
  display: block;
  box-shadow: 0 2px 2px rgba(0, 0, 0, .15)
}
.p-toggle-nav_property > .inner {
  padding: 20px
}
@media only screen and (min-width:901px) {
  .p-toggle-nav_property {
    top: 120px;
    width: 350px;
    background: #003b87
  }
  .p-toggle-nav_property > .inner {
    padding: 30px 20px
  }
}
.p-toggle-nav_property a {
  color: #fff;
  text-decoration: none
}
.p-toggle-nav_property .c-list_icon-link {
  display: flex;
  font-size: 1.1rem
}
.p-toggle-nav_property .c-list_icon-link > li {
  width: 33%;
  min-width: 72px
}
.p-toggle-nav_property .c-list_icon-link > li + li {
  margin-left: 2px
}
.p-toggle-nav_property .c-list_icon-link a {
  padding: 10px 0;
  display: block;
  transition: .2s all ease;
  background: rgba(255, 255, 255, .1)
}
.p-toggle-nav_property .c-list_icon-link .ico {
  display: block;
  padding-bottom: 8px
}
.p-toggle-nav_property .c-list_icon-link .ico img {
  width: 30px;
  height: 30px
}
@media only screen and (min-width:901px) {
  .p-toggle-nav_property .c-list_icon-link {
    font-size: 1.4rem
  }
  .p-toggle-nav_property .c-list_icon-link a {
    padding: 15px 0;
    background: none
  }
  .p-toggle-nav_property .c-list_icon-link a:hover {
    background: rgba(255, 255, 255, .1);
    border-radius: 2px
  }
  .p-toggle-nav_property .c-list_icon-link .ico {
    padding-bottom: 10px
  }
  .p-toggle-nav_property .c-list_icon-link .ico img {
    width: 35px;
    height: 35px
  }
}
.p-toggle-nav_property .c-list_text-link {
  font-size: 1.3rem;
  text-align: left;
  margin-top: 10px
}
.p-toggle-nav_property .c-list_text-link li {
  margin-top: 1px
}
.p-toggle-nav_property .c-list_text-link a {
  display: block;
  position: relative;
  padding: 12px 10px 12px 20px
}
.p-toggle-nav_property .c-list_text-link a::before {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  left: 5px;
  top: 19px;
  transform: rotate(45deg)
}
@media only screen and (min-width:901px) {
  .p-toggle-nav_property .c-list_text-link {
    font-size: 1.4rem
  }
  .p-toggle-nav_property .c-list_text-link a {
    padding: 10px 10px 10px 20px;
    transition: .2s all ease
  }
  .p-toggle-nav_property .c-list_text-link a::before {
    top: 15px
  }
  .p-toggle-nav_property .c-list_text-link a:hover {
    background: rgba(255, 255, 255, .1)
  }
}
.p-toggle-nav_sp {
  position: absolute;
  background: #fff;
  padding: 5px 0 0;
  z-index: 10;
  border-radius: 5px;
  box-shadow: 0 2px 5px rgb(0 0 0 / 20%);
  right: 10px;
  margin-top: -8px;
  border: 1px solid #ced6e8;
  display: none
}
.btn-toggle_nav.-active + .p-toggle-nav_sp {
  display: block
}
.p-toggle-nav_sp.-mypage {
  min-width: 50%;
  max-width: 300px
}
.p-list_nav-toggle {
  font-size: 1.4rem
}
.p-list_nav-toggle a {
  display: flex;
  align-items: center;
  text-decoration: none;
  padding: 8px 15px
}
.p-list_nav-toggle .ico img {
  width: 20px;
  height: auto;
  margin-right: 5px
}
.p-list_nav-toggle .-balloon {
  position: unset;
  margin-left: auto;
  height: 15px;
  width: 15px
}
.p-list_nav-toggle .btn-common {
  padding: 10px 15px;
  border-radius: 0 0 5px 5px;
  margin-top: 5px;
  justify-content: center
}
.-function .btn-common.-delete .ico, .btn-operation .btn-common .ico {
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.btn-operation .btn-common.-save span::before {
  content: '';
  display: inline-block;
  background: url(/common/img/ico_pin.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 12px;
  height: 15px;
  margin-right: 4px
}
.btn-operation .btn-common.-save span::after {
  content: 'この条件を保存'
}
.-function .btn-common.-delete .ico::before, .btn-operation .btn-common.-save.-active .ico::before {
  content: '';
  display: inline-block;
  background: url(/common/img/ico_close.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 15px;
  height: 15px;
  margin-right: 5px
}
.-function .btn-common.-delete .ico::after, .btn-operation .btn-common.-save.-active .ico::after {
  content: '削除する'
}
@media only screen and (max-width:840px) {
  .c-property_item .btn-common.-delete .ico::before {
    width: 25px;
    height: 25px;
    margin: 3px 0 0 10px
  }
  .-function .btn-common.-delete {
    margin-top: 0 !important
  }
  .c-property_item .btn-common.-delete .ico::after {
    display: none
  }
}
.-function .-delete .btn-common.-delete .ico::before, .-delete .btn-operation .btn-common.-save.-active .ico::before {
  background: url(/common/img/ico_change.svg) 50% 50% no-repeat
}
.-function .-delete .btn-common.-delete .ico::after, .-delete .btn-operation .btn-common.-save.-active .ico::after {
  content: '元に戻す'
}
.-keep .btn-operation .btn-common.-save .ico::before {
  content: '';
  display: inline-block;
  background: url(/common/img/ico_block_bk.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 15px;
  height: 15px;
  margin-right: 5px
}
.-keep .btn-operation .btn-common.-save .ico::after {
  content: '保存を解除する';
  font-weight: 700
}
@media only screen and (max-width:400px) {
  .btn-operation .btn-common.-save span::after {
    content: '保存'
  }
  .-function .btn-common.-delete .ico::after, .btn-operation .btn-common.-save.-active .ico::after {
    content: '削除'
  }
  .-function .-delete .btn-common.-delete .ico::after, .-delete .btn-operation .btn-common.-save.-active .ico::after {
    content: '復元'
  }
  .-keep .btn-operation .btn-common.-save .ico::after {
    content: '解除';
    font-weight: 700
  }
  .-function .btn-common.-delete .ico::before, .btn-operation .btn-common.-save.-active .ico::before {
    width: 20px;
    height: 20px
  }
}
.p-toggle-nav_sp.-search {
  width: calc(100% - 20px);
  padding: 10px
}
.p-toggle-nav_sp input[type="text"].p-input_search {
  padding: 12px 15px 12px 45px
}
.p-toggle-nav_sp .ico-search {
  top: 18px;
  left: 25px
}
.p-nav_global_sp {
  position: fixed;
  display: flex;
  flex-direction: column;
  z-index: 100;
  background: #fff;
  right: 0;
  top: 0;
  padding: 0;
  width: 85%;
  max-width: 400px;
  height: 100%;
  align-items: flex-start;
  box-shadow: 0 5px 15px rgba(0, 0, 0, .2);
  display: none
}
.p-nav_global_sp .c-box_search {
  padding: 10px 20px 0;
  position: relative
}
.p-nav_global_sp input[type="text"].p-input_search {
  padding: 15px 10px 15px 50px;
  border-radius: 0;
  border: none
}
.p-nav_global_sp .ico-search {
  left: 20px;
  top: 12px
}
.btn-menu_sp.-active + .p-nav_global_sp {
  display: flex
}
.p-nav_global_sp .c-head_gnav {
  width: 100%;
  border-bottom: 1px solid #ced6e8
}
.p-nav_global_sp .inner {
  width: 100%;
  overflow-y: auto
}
.p-nav_global_sp .inner > div {
  padding: 15px 0
}
.p-nav_global_sp .inner > div.c-box_search {
  padding: 0
}
.p-nav_global_sp .inner > div:not(:first-of-type) {
  border-top: 1px solid #ced6e8
}
.p-nav_global_sp .c-box_property {
  background: #003b87;
  color: #fff
}
.p-nav_global_sp .c-box_property a {
  color: #fff
}
.c-head_gnav {
  padding: 15px 0 5px;
  text-align: left;
  position: relative
}
.c-head_gnav h2 {
  padding: 0 0 10px 20px;
  font-size: 1.1rem
}
.c-head_gnav h2 a {
  display: flex;
  align-items: center
}
.c-head_gnav .btn-close {
  position: absolute;
  right: 5px;
  top: 10px;
  padding: 5px
}
.c-head_gnav h2 img {
  height: 40px;
  width: auto;
  margin-right: 10px
}
.c-trunk_gnav {
  display: block;
  position: relative;
  font-size: 1.5rem;
  font-weight: 700
}
.c-trunk_gnav > a, .c-trunk_gnav > span {
  display: flex;
  padding: 11px 20px;
  text-decoration: none;
  width: 100%;
  align-items: center;
  text-align: left;
  justify-content: space-between
}
.c-trunk_gnav > a:not(.-toggle-parent) > span {
  padding-right: 20px;
  background: url(/common/img/ico_arrow_b.svg) 100% 50% no-repeat;
  background-size: 10px 10px;
  display: block;
  width: 100%
}
.c-trunk_gnav > a.-toggle-parent .ico {
  margin: 0 5px 0 0
}
.c-trunk_gnav > a.-toggle-parent.-active {
  background: #f5f5f5;
  border-top: 1px solid #c9cedd
}
.p-list_submenu {
  font-size: 1.3rem;
  text-align: left;
  padding: 0 30px !important;
  background: #f5f5f5
}
.-active + .p-list_submenu {
  padding: 0 30px 5px !important
}
.p-list_submenu li a {
  display: block;
  padding: 10px 0;
  font-weight: 400;
  white-space: normal;
  text-decoration: none;
  padding-left: 15px;
  position: relative
}
.p-list_submenu li a::before {
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  border-top: 2px solid #c9cedd;
  border-right: 2px solid #c9cedd;
  position: absolute;
  left: 0;
  top: 14px;
  transform: rotate(45deg)
}
.p-list_submenu * + li {
  border-top: 1px solid #c9cedd
}
.c-brunch_gnav {
  font-size: 1.4rem;
  padding: 0 20px
}
.c-brunch_gnav.p-flex {
  font-size: 1.3rem;
  margin: 10px 0 0;
  flex-wrap: nowrap;
  justify-content: space-between
}
.c-brunch_gnav.p-flex > li {
  max-width: 49.5%
}
.c-brunch_gnav.p-flex > li.-w49p {
  width: 49.5%
}
.c-brunch_gnav.p-flex > li .-mypage {
  padding-left: 22px;
  background: url(/common/img/ico_account.svg) 0 50% no-repeat;
  background-size: 20px 20px
}
.c-brunch_gnav.p-flex > li .-logout {
  padding-left: 20px;
  background: url(/common/img/ico_logout.svg) 0 50% no-repeat;
  background-size: 18px 18px
}
.c-brunch_gnav li.-disable {
  display: none
}
.c-brunch_gnav > li a {
  display: flex;
  height: 40px;
  line-height: 38px;
  text-decoration: none;
  width: 100%;
  align-items: center
}
.c-head_gnav .c-brunch_gnav > li a .ico {
  margin: 0
}
.c-brunch_gnav > li a.btn-common {
  padding: 0 10px;
  font-size: 1.3rem;
  justify-content: center;
  margin-bottom: 5px
}
.c-brunch_gnav > li a.btn-common.-border {
  border: 1px solid #3f80d4;
  background: #fff;
  color: #3f80d4
}
.c-brunch_gnav > li .ico {
  margin: 0 10px 0 0
}
.c-brunch_gnav > li .ico img {
  width: 20px;
  height: auto
}
.c-brunch_gnav > li .ico.-arrow {
  display: flex;
  align-items: center
}
.c-brunch_gnav > li .ico.-arrow::before {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  margin: 0 20px 0 5px
}
.c-row_lmenu {
  display: none;
}
@media only screen and (min-width:901px) {
  .c-row_lmenu {
    display: block;
    width: 56%;
    margin-left: 3%;
    padding-right: 20px
  }
}
@media only screen and (min-width:1121px) {
  .c-row_lmenu {
    max-width: 750px;
    margin-left: 5vw
  }
}
.c-lmenu_top {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0 0 25px
}
@media only screen and (min-width:1121px) {
  .c-lmenu_top {
    flex-direction: row;
    align-items: center;
    padding: 0 0 25px
  }
}
.c-lmenu_top a {
  display: inline-flex;
  align-items: center;
  text-decoration: none
}
.c-lmenu_top a .ico {
  font-size: 1.1rem;
  margin-left: 15px;
  display: none;
  opacity: .7;
  font-weight: 700;
  white-space: nowrap
}
.c-lmenu_top a .ico::after {
  content: '';
  display: block;
  width: 14px;
  height: 14px;
  background: url(/common/img/ico_blank.svg) 50% 50% no-repeat;
  background-size: cover;
  margin-left: 5px
}
@media only screen and (min-width:901px) {
  .c-lmenu_top a .ico {
    display: flex;
    align-items: center
  }
  .c-lmenu_top a:hover {
    text-decoration: underline
  }
}
.c-lmenu_top .c-box_inpuiry {
  padding-left: 20px;
  font-size: 1.2rem
}
@media only screen and (min-width:1131px) {
  .c-lmenu_top .c-box_corp {
    width: 40%
  }
}
.c-lmenu_top .c-box_corp img {
  min-width: 150px;
  max-width: 190px;
  height: auto
}
.c-lmenu_top .c-box_search {
  position: relative;
  width: 55%;
  margin-left: 5%
}
@media only screen and (min-width:1121px) {
  .c-lmenu_top .c-box_corp {
    width: 50%;
    min-width: 300px
  }
  .c-lmenu_top .c-box_search {
    width: 50%;
    margin-top: 0;
    margin-left: auto
  }
}
.ico-search {
  background: url(/common/img/ico_search.svg) 50% 50% no-repeat;
  width: 24px;
  height: 24px;
  border: none;
  position: absolute;
  left: 15px;
  top: 7px;
  transition: .2s all ease
}
input[type="text"].p-input_search {
  font-size: 14px;
  background: #f4f4f6;
  padding: 10px 15px 10px 45px;
  border-radius: 40px;
  width: 100%;
  border: 1px solid #c9cedd
}
input[type="text"].p-input_search.-simple {
  font-size: 13.5px;
  background: none;
  padding: 10px 10px 10px 36px;
  border-radius: 0;
  width: 100%;
  border: none;
  border-bottom: 1px solid #2e3b4c
}
input[type="text"].p-input_search.-simple:hover {
  box-shadow: initial
}
.-map_search .c-box_search {
  position: relative;
  width: 100%;
  margin-top: 5px
}
.-map_search .c-box_search .ico-search {
  left: 0;
  top: 8px
}
@media only screen and (min-width:901px) {
  .-map_search .c-box_search {
    width: 20%;
    max-width: 320px;
    margin-top: 0;
    margin-left: auto
  }
  input[type="text"].p-input_search:hover {
    border-color: #5f95db;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .15)
  }
  input[type="text"].p-input_search:focus {
    border-color: #5f95db;
    background: #fff
  }
}
.c-lmenu_bottom {
  display: none
}
@media only screen and (min-width:901px) {
  .c-lmenu_bottom {
    display: block
  }
}
.p-lmenu_gnav {
  display: flex;
  font-size: 1.3rem;
  gap: 3.2%;
}
.p-lmenu_gnav > li > a {
  text-decoration: none;
  display: block;
  white-space: nowrap;
  position: relative;
  padding-bottom: 25px;
  transition: .2s transform;
}
.p-lmenu_gnav > li.-has_menu > a {
  cursor: default
}
.p-lmenu_gnav > li:not(.-has_menu) > a::after {
  content: '';
  display: block;
  width: 100%;
  height: 4px;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: .2s transform;
  transform-origin: right top;
  transform: scale(0, 1);
  background: #3f80d4
}
.p-lmenu_gnav > li.-has_menu > a::after {
  content: '';
  display: block;
  border-style: solid;
  border-width: 8px 6px 0 6px;
  border-color: #2e3b4c transparent transparent transparent;
  position: absolute;
  bottom: 10px;
  left: calc(50% - 4px);
  transition: .2s all ease
}
.p-lmenu_gnav > li > a:not(.-active):hover::after {
  transform: scale(1, 1);
  transform-origin: left top
}
.p-lmenu_gnav > li > a.-active::after {
  transform: scale(1, 1);
  background: #003b87
}
.p-lmenu_gnav > li > a:hover, .p-lmenu_gnav > li.-has_menu:hover > a {
  color: #3f80d4
}
.p-lmenu_gnav > li.-has_menu:hover > a::after {
  border-color: #3f80d4 transparent transparent transparent
}
.p-lmenu_gnav > li > a.-active {
  color: #003b87;
  font-weight: 700
}
.p-ellipsis_btn {
  display: block;
  width: 30px;
  height: 30px;
  position: relative;
  top: -7px;
  z-index: 1;
  cursor: pointer
}
.p-ellipsis_btn::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: url(/common/img/ico_ellipsis.svg) 50% 50% no-repeat
}
.p-ellipsis_btn::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  border-radius: 50%;
  background: #f1f4fd;
  transform: scale(0);
  transition: .2s transform
}
.p-ellipsis_btn:hover::after {
  transform: scale(1)
}
.p-ellipsis_menu {
  position: absolute;
  background: #fff;
  padding: 10px 0;
  box-shadow: 0 2px 2px rgb(0 0 0 / 20%);
  z-index: 20;
  border: 1px solid #e5e7ed;
  border-radius: 3px;
  margin-top: -5px;
  display: none
}
.p-ellipsis_btn.-active + .p-ellipsis_menu {
  display: block
}
.p-ellipsis_menu > li > a {
  display: block;
  padding: 10px 20px;
  text-decoration: none;
  transition: .2s all ease
}
.p-ellipsis_menu > li > a:hover {
  background: #f1f4fd
}
@media only screen and (min-width:1201px) {
  .p-lmenu_gnav {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width:1141px) {
  .-ellipsis {
    display: none
  }
}
@media only screen and (max-width:1140px) {
  .p-lmenu_gnav > li:nth-of-type(5) {
    display: none
  }
  .p-ellipsis_menu > li:nth-of-type(1) {
    display: none
  }
  .p-ellipsis_menu > li:nth-of-type(2) {
    display: none
  }
}
@media only screen and (max-width:1040px) {
  .p-lmenu_gnav > li:nth-of-type(4) {
    display: none
  }
  .p-ellipsis_menu > li:nth-of-type(2) {
    display: block
  }
}
.p-megamenu {
  position: absolute;
  background: #3f80d4;
  padding: 30px 30px 10px;
  left: 0;
  width: 100%;
  transform: scale(1, 0);
  transform-origin: left top;
  transition: .2s transform ease;
  border-top: 2px solid #3f80d4;
  box-shadow: 0 5px 10px rgba(0, 0, 0, .15);
  opacity: 0;
  z-index: -999;
}
.p-lmenu_gnav .-has_menu:hover .p-megamenu {
  transform: scale(1, 1);
  opacity: 1;
  z-index: 30;
}
.p-list_megamenu {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap
}
.p-list_megamenu li {
  width: 18%;
  margin: 0 1% 20px;
  white-space: normal;
  transition: .2s all ease
}
.p-list_megamenu:hover li {
  opacity: .5
}
.p-list_megamenu li:hover {
  opacity: 1
}
.p-list_megamenu .c-thumb {
  width: 100%;
  padding-top: 45.46%;
  overflow: hidden;
  position: relative;
  margin-bottom: 15px
}
.p-list_megamenu .c-thumb img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
  display: block;
  transition: .2s transform ease
}
.p-list_megamenu a {
  text-decoration: none;
  display: block;
  color: #fff
}
.p-list_megamenu strong {
  font-size: 1.5rem;
  display: block;
  margin-bottom: 8px
}
.p-list_megamenu a strong {
  color: #fff;
  border-left: 3px solid #fff;
  padding-left: 8px
}
.p-list_megamenu strong .ico {
  padding-right: 20px;
  position: relative;
  display: inline-block
}
.p-list_megamenu strong .ico::after {
  content: '';
  display: block;
  background: url(/common/img/ico_arrow_w.svg) 100% 50% no-repeat;
  background-size: 14px 14px;
  height: 14px;
  width: 14px;
  transform: rotate(-90deg);
  position: absolute;
  right: 0;
  top: 2px
}
.p-list_megamenu p {
  font-size: 1.2rem;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden
}
.l-overlay_menu {
  position: fixed;
  left: 0;
  top: 124px;
  height: 100vh;
  width: 100%;
  z-index: 18;
  background: rgba(0, 0, 0, .5);
  display: none
}
.l-overlay_menu.-show {
  display: block
}
@media only screen and (max-width:900px) {
  .l-overlay_menu.-showsp {
    display: block;
    top: 0
  }
}
.l-footer {
  position: relative;
  z-index: 20
}
@media only screen and (min-width:901px) {
  .l-footer:not(.-mypage) {
    box-shadow: 0 -2px 10px rgba(0, 0, 0, .1)
  }
}
.ico {
  position: relative
}
.ico.-toggle::before, .ico.-toggle::after {
  content: '';
  display: block;
  width: 12px;
  height: 1px;
  background: #2e3b4c;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  transition: .2s all ease
}
.ico.-toggle::after {
  transform: translate3d(-50%, -50%, 0) rotate(90deg)
}
.c-toggle-parent.-active .ico.-toggle::after, .-toggle-parent.-active .ico.-toggle::after {
  transform: translate3d(-50%, -50%, 0) rotate(0)
}
.p-mypage_footer {
  background: #003b87;
  padding: 25px 0;
  color: #fff
}
.-white .p-mypage_footer {
  background: #fff;
  color: #2e3b4c
}
.p-mypage_footer .inner {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto
}
.p-mypage_footer .p-list_flex {
  font-size: 1.3rem;
  justify-content: center;
  margin-bottom: 15px
}
.p-mypage_footer .p-list_flex li {
  border-left: 1px solid rgba(255, 255, 255, .5)
}
.p-mypage_footer .p-list_flex li a {
  padding: 0 15px;
  text-decoration: none;
  color: #fff
}
.-white .p-mypage_footer .p-list_flex li a {
  color: #2e3b4c
}
.p-mypage_footer .p-list_flex li:last-of-type {
  border-right: 1px solid rgba(255, 255, 255, .5)
}
.-white .p-mypage_footer .p-list_flex li {
  border-color: #ced6e8
}
.p-mypage_footer .p-flex {
  justify-content: center
}
.p-mypage_footer .p-flex small {
  font-size: 1.3rem
}
.p-mypage_footer .p-flex img {
  display: block;
  height: 15px;
  width: auto
}
@media only screen and (max-width:750px) {
  .p-sitemap_footer {
    padding: 30px 0 0;
    background: #f4f4f6;
    border-top: 1px solid #ddd
  }
  .p-sitemap_footer > .inner {
    width: 90%;
    margin: 0 auto
  }
  .p-sitemap_footer > .inner > .p-flex {
    display: flex;
    flex-direction: column;
    justify-content: space-between
  }
  .p-sitemap_footer .c-row:last-of-type {
    border-bottom: 2px solid #ced6e8
  }
  .p-sitemap_footer .p-footer_bottom .c-row:last-of-type {
    border-top: 2px solid #ced6e8;
    padding: 20px 0 0
  }
  .row-btn {
    display: flex;
    width: 100%;
    margin-bottom: 30px
  }
  .row-btn .p-trunk_sitemap {
    display: none
  }
  .row-btn .p-btn {
    width: 49%
  }
  .row-btn * + .p-btn {
    margin-left: 2%
  }
  .p-footer_top .row-btn .p-btn a {
    font-size: 1.4rem;
    font-weight: 700;
    display: block;
    padding: 15px;
    border: 2px solid #2e3b4c;
    text-decoration: none;
    text-align: center;
    border-radius: 2px
  }
  .p-footer_top .row-btn .p-btn:first-of-type a {
    background: #003b87;
    color: #fff;
    border-color: #003b87
  }
  .p-trunk_sitemap {
    display: flex;
    justify-content: space-between;
    width: 100%;
    border-top: 2px solid #ced6e8
  }
  .c-row:first-of-type .p-trunk_sitemap {
    border-top: none
  }
  .p-trunk_sitemap a, .p-trunk_sitemap span {
    width: 100%;
    font-size: 1.5rem;
    font-weight: 700;
    padding: 15px 0;
    text-decoration: none
  }
  .p-trunk_sitemap .ico {
    display: block;
    width: 44px;
    position: relative
  }
  .p-branch_sitemap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }
  .p-branch_sitemap li {
    width: 100%;
    line-height: 1.2;
    border-top: 1px solid #ced6e8
  }
  .p-branch_sitemap.-others li {
    width: 100%;
    margin-bottom: 0;
    border: none
  }
  .p-branch_sitemap > li > a {
    position: relative;
    display: block;
    padding: 10px 5px 10px 15px;
    text-decoration: none;
    font-size: 1.4rem
  }
  .p-branch_sitemap > li > a[target="_blank"] {
    background: url(/common/img/ico_blank.svg) 98% 10px no-repeat;
    background-size: 14px auto;
    padding-right: 22px
  }
  .p-branch_sitemap.-others li a {
    padding: 5px 30px 5px 15px
  }
  .p-branch_sitemap > li > a::before {
    content: '';
    display: block;
    width: 5px;
    height: 2px;
    position: absolute;
    left: 2px;
    top: 17px;
    background: #768cbe
  }
  .p-branch_sitemap.-others > li > a::before {
    content: '';
    display: block;
    width: 4px;
    height: 4px;
    background: none;
    position: absolute;
    left: 2px;
    border-top: 2px solid #768cbe;
    border-right: 2px solid #768cbe;
    transform: rotate(45deg);
    top: 10px
  }
  .-toggle-child {
    max-height: 0;
    transition: .2s all ease;
    overflow: hidden;
    padding: 0 0 0
  }
  .-toggle-parent.-active + .-toggle-child {
    max-height: none;
    padding: 0 0 10px
  }
  .p-pagetop {
    font-size: 1.4rem;
    text-align: center;
    border-top: 1px solid #ccc;
    margin-top: 20px
  }
  .p-pagetop a {
    display: block;
    padding: 15px 0;
    text-decoration: none;
    color: #003b87
  }
  .p-pagetop a .ico::after {
    content: '';
    display: inline-block;
    background: url(/common/img/ico_arrow_b.svg) 50% 50% no-repeat;
    background-size: cover;
    transform: rotate(-90deg);
    width: 16px;
    height: 16px;
    margin-left: 10px;
    top: 2px;
    position: relative
  }
  .c-area_sitemap {
    display: flex;
    flex-wrap: wrap;
    gap: 1px 1px;
    margin-bottom: 10px;
  }
  .c-area_sitemap dt {
    width: 100%;
    font-size: 1.3rem;
  }
  .c-area_sitemap dt a {
    display: block;
      line-height: 1;
    padding: 5px 10px;
    background: #ced6e8;
      text-decoration: none;
      pointer-events: none;
  }
  .c-area_sitemap dd {
    font-size: 1.3rem;
    width: calc((100% - 3px) / 4);
  }
  .c-area_sitemap dd a {
    display: block;
    padding: 8px 10px 6px;
  }
}
@media only screen and (min-width:751px) {
  .ico.-toggle.-sp_view {
    display: none
  }
  .p-sitemap_footer {
    padding: 60px 0;
    background: #003b87;
    color: #eef
  }
  .p-sitemap_footer > .inner {
    width: 90vw;
    max-width: 1280px;
    margin: 0 auto;
    position: relative
  }
  .p-sitemap_footer > .inner > .p-flex {
    display: flex;
    align-items: flex-start;
    justify-content: space-between
  }
  .p-sitemap_footer .c-row a {
    text-decoration: none;
    color: #eef;
    transition: .2s all ease
  }
  .p-sitemap_footer .c-row {
    width: 30%
  }
  .p-footer_top {
    margin-bottom: 60px
  }
  .p-footer_top .row-search_property {
    order: 0;
    width: 65%
  }
  .p-footer_top .-search-area {
    align-items: flex-start;
    padding-left: 4px
  }
  .p-footer_top .-search-area * + .p-branch_sitemap {
    margin-top: 40px;
    width: 100%;
    display: flex;
    flex-wrap: wrap
  }
  .p-footer_top .-search-area * + .p-branch_sitemap li {
    width: 48%;
    margin: 0 0 20px
  }
  .p-footer_top .row-btn {
    order: 1
  }
  .p-footer_top .row-btn .p-btn a {
    font-size: 1.5rem;
    font-weight: 700;
    display: block;
    padding: 20px 25px;
    border: 1px solid #fff
  }
  .p-footer_top .row-btn .p-btn a .ico {
    background: url(/common/img/ico_mail_w.png) 100% 50% no-repeat;
    background-size: auto 16px;
    display: block
  }
  .p-footer_top .row-btn * + .p-btn {
    margin-top: 15px
  }
  .w-search-area {
    margin: 20px 0 0 20px
  }
  .c-area_sitemap {
    display: flex;
    margin: 10px 0;
    font-size: 1.2rem
  }
  .c-area_sitemap:last-of-type {
    margin: 10px 0 0
  }
  .c-area_sitemap dt {
    width: 8em
  }
  .c-area_sitemap dd {
    padding: 0 8px
  }
  .c-area_sitemap dd + dd {
    border-left: 1px solid #114c98
  }
  .p-trunk_sitemap {
    font-size: 1.7rem;
    border-bottom: 1px solid #225da9;
    margin-bottom: 20px;
    padding-bottom: 15px;
    position: relative
  }
  .p-trunk_sitemap a:hover {
    opacity: .8
  }
  .p-trunk_sitemap::after {
    content: '';
    display: block;
    width: 2em;
    position: absolute;
    height: 1px;
    background: #fff;
    bottom: -1px
  }
  * + .p-trunk_sitemap {
    margin-top: 30px
  }
  .p-btn + .p-trunk_sitemap {
    margin-top: 50px
  }
  * + .p-branch_sitemap {
    margin: 20px 0 0 0
  }
  .p-trunk_sitemap + .p-branch_sitemap {
    margin-left: 4px
  }
  .p-trunk_sitemap + .p-branch_sitemap a, .w-search-area .c-area_sitemap a {
    color: #cedfff
  }
  .p-branch_sitemap a:hover, .w-search-area .c-area_sitemap a:hover {
    text-decoration: underline
  }
  p.p-branch_sitemap, ul.p-branch_sitemap {
    font-size: 1.3rem
  }
  ul.p-branch_sitemap * + li {
    margin-top: .8em
  }
  .p-branch_sitemap:not(.-others) > li > a {
    position: relative;
    display: inline-block;
    padding-left: 18px
  }
  .p-branch_sitemap:not(.-others) > li > a::before {
    content: '';
    width: 5px;
    height: 2px;
    background: #84b7f8;
    position: absolute;
    top: 6px;
    left: 1px
  }
  .p-branch_sitemap:not(.-others) > li > a[target="_blank"] {
    background: url(/common/img/ico_blank_w.svg) 100% 0 no-repeat;
    padding-right: 22px;
    background-size: 14px auto
  }
  .p-branch_sitemap.-large > li > a {
    font-size: 1.5rem
  }
  .p-branch_sitemap.-large > * + li {
    font-size: 1.4em
  }
  .p-branch_sitemap.-large > li > a::before {
    top: 8px
  }
  .p-branch_sitemap.-others * + li {
    margin-top: 1.5em
  }
  .p-branch_sitemap.-others a[target="_blank"] {
    background: url(/common/img/ico_blank_w.svg) 100% 1px no-repeat;
    background-size: auto 13px;
    padding-right: 22px;
    display: inline-block
  }
  .p-pagetop {
    font-size: 1.5rem;
    position: absolute;
    bottom: -60px;
    right: 0
  }
  .p-pagetop a {
    display: flex;
    padding: 0 30px 30px 0;
    border-right: 1px solid #225da9;
    transition: .2s all ease
  }
  .p-pagetop a:hover {
    opacity: .8
  }
  .p-pagetop a .ico::before {
    content: '';
    display: inline-block;
    background: url(/common/img/ico_arrow_w.svg) 50% 50% no-repeat;
    transform: rotate(180deg);
    width: 15px;
    height: 15px;
    margin-right: 10px
  }
}
@media only screen and (min-width:1161px) {
  .p-footer_top .-search-area * + .p-branch_sitemap {
    margin-top: 0;
    padding-left: 60px;
    display: block;
    width: initial
  }
  .p-footer_top .-search-area * + .p-branch_sitemap li {
    width: 100%;
    margin: 0 0 20px
  }
}
.p-branchlink_footer {
  display: none;
  border-top: 1px solid #ced6e8
}
@media only screen and (min-width:901px) {
  .p-branchlink_footer {
    display: block;
    background: #fff;
    padding: 50px 0
  }
  .p-branchlink_footer > .inner {
    width: 90%;
    max-width: 1260px;
    margin: 0 auto
  }
  .p-branchlink_footer .p-flex {
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start
  }
  .row-info {
    width: 25%
  }
  .row-info img {
    height: 60px
  }
  .row-info p {
    font-size: 1.4rem;
    line-height: 1.8
  }
  .row-info p + p {
    margin-top: 20px
  }
  .row-branchlink {
    width: 75%;
    padding-left: 8%
  }
  .row-branchlink .hl-small {
    font-size: 1.7rem;
    display: block;
    overflow: hidden
  }
  .row-branchlink .p-flex {
    flex-wrap: nowrap;
    margin-top: 20px
  }
  .row-branchlink .p-flex > * + div {
    margin-left: 20px
  }
  .row-branchlink .p-flex > div {
    border-left: 1px solid #ced6e8;
    padding-left: 12px
  }
  .c-branchlink-item {
    display: flex;
    font-size: 1.2rem
  }
  * + .c-branchlink-item {
    margin-top: .7em
  }
  .c-branchlink-item dt {
    width: 5em;
    opacity: .8
  }
  .c-branchlink-item dd {
    width: calc(100% - 5em)
  }
  .row-branchlink .p-flex > div:nth-of-type(2) .c-branchlink-item dt {
    width: 4em
  }
  .row-branchlink .p-flex > div:nth-of-type(2) .c-branchlink-item dd {
    width: calc(100% - 4em)
  }
  .c-branchlink-item a {
    display: inline-block;
    padding: 0 6px;
    margin-bottom: 5px;
    border-right: 1px solid #ced6e8;
    font-weight: 700;
    text-decoration: none;
    transition: .2s all ease
  }
  .c-branchlink-item a:hover {
    text-decoration: underline;
    color: #003b87
  }
  .c-branchlink-item a:last-of-type {
    border-right: none
  }
  .p-branchlink_footer .p-flex.-end {
    align-items: center;
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid #ced6e8
  }
  .p-branchlink_footer small {
    font-size: 1.2rem;
    white-space: nowrap
  }
  .p-branchlink_footer .-end img {
    height: 18px;
    width: auto
  }
}
.p-end_footer {
  background: #003b87;
  padding: 10px 0
}
.p-end_footer .inner {
  width: 90%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center
}
.p-end_footer small {
  font-size: 1rem;
  white-space: nowrap;
  color: #fff;
  opacity: .7;
  font-weight: 700
}
.p-end_footer .logo img {
  height: 30px;
  margin-left: -5px
}
@media only screen and (min-width:751px) {
  .p-end_footer {
    display: none
  }
}
.w-main:not(.-root):not(.-search_agent) {
  margin: 0;
  display: flex
}
.w-main.-root, .w-main.-search_agent {
  position: relative
}
.w-main.-search_agent .sec-article, .w-main.-search_agent .sec-topics, .w-main.-search_agent .w-submain {
  display: none !important
}
* + .w-main.-root {
  z-index: 30;
  background: #fff
}
.l-mv_root + .w-main.-root {
  z-index: 15
}
.w-main.-login {
  background: #f5f5f5
}
.w-main::before {
  content: '';
  display: block;
  height: 1px;
  width: 10vw;
  min-width: 130px;
  margin-right: 5vw
}
.w-main.-login::before, .w-main.-contact::before {
  display: none
}
.w-main.-overflow, .w-main.-root, .w-main.-search_agent {
  overflow: hidden
}
.w-main + .w-main {
  min-height: initial !important
}
@media only screen and (max-width:900px) {
  .w-main:not(.-map_search):not(.-login):not(.-e404) {
    min-height: calc(100vh - 168px)
  }
  .w-main:not(.-map_search):not(.-login):not(.-e404) .sec-recommend {
    padding-top: 0;
  }
}
@media only screen and (min-width:901px) {
  .w-main.-root {
    margin-top: 40px
  }
  .w-main:not(.-map_search):not(.-login):not(.-contact) {
    padding-bottom: 90px;
    min-height: calc(100vh - 180px)
  }
  .w-main.-contact {
    padding-bottom: 60px;
    min-height: calc(100vh - 166px)
  }
  .w-main.-login {
    padding-bottom: 60px;
    min-height: calc(100vh - 220px)
  }
  .w-main.-e404 {
    background: #f5f5f5
  }
}
.l-main {
  width: 84vw;
  padding-bottom: 60px;
  max-width: 1280px
}
@media only screen and (min-width:1121px) {
  .l-main {
    width: 77vw
  }
  .l-main.-flex_row2 {
    width: 80vw
  }
  .l-main.-details {
    width: 70vw
  }
}
@media only screen and (min-width:1601px) {
  .l-main {
    width: 70vw
  }
}
.l-main.-root, .-login .l-main, .-contact .l-main {
  margin: 0 auto
}
.-contact .l-main {
  max-width: 1000px
}
.l-main.-map_search {
  max-width: none;
  padding-bottom: 0
}
@media only screen and (max-width:900px) {
  .-map_search .p-box_title {
    padding-top: 20px
  }
  .w-main + .w-main .p-notification_email {
    margin: 0 auto;
    padding-top: 50px;
  }
  .w-main + .w-main .l-main {
    padding-bottom: 40px;
  }
}
@media only screen and (min-width:901px) {
  .w-main.-list_result {
    background: #f7f8fa;
    padding-bottom: 0
  }
  .l-main {
    padding-bottom: 0
  }
}
.l-main.-flex_row2 {
  padding-bottom: 0
}
.l-main.-flex_row2 .row-content {
  background: #fff
}
@media only screen and (min-width:901px) {
  .l-main.-flex_row2 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
    z-index: 1
  }
  .l-main.-flex_row2::after {
    content: '';
    display: block;
    width: 110%;
    height: 100%;
    position: absolute;
    z-index: -1;
    background: #fff;
    left: -25%;
    top: 0
  }
  .l-main.-flex_row2 .row-content {
    width: calc(100% - 280px);
    padding-bottom: 100px
  }
}
@media only screen and (min-width:1361px) {
  .l-main.-flex_row2 .row-content {
    width: 74%
  }
}
@media only screen and (max-width:1120px) {
  .w-main::before {
    content: '';
    display: none
  }
  .l-main {
    width: 90%;
    margin: 0 0 0 5%
  }
}
@media only screen and (min-width:901px) and (max-width:1120px) {
  .-list_result .l-main {
    width: 93%;
    margin: 0 0 0 5%
  }
  .w-main.-list_result {
    min-width: 1000px
  }
}
@media only screen and (max-width:900px) {
  .l-main.-root {
    width: 100%;
    padding-bottom: 0
  }
}
.p-box_push {
  font-size: 1.3rem;
  text-align: center;
  padding: 80px 0 0 0
}
.l-crumb {
  display: none
}
.p-crumb {
  display: flex;
  align-items: center;
  font-size: 1.1rem;
  line-height: 1.8;
  font-weight: 700;
  color: #003b87;
  white-space: nowrap;
  flex-wrap: wrap;
}
.p-crumb li:last-of-type {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}
.p-crumb a {
  text-decoration: none;
  transition: .2s all ease;
  font-weight: 400
}
.p-crumb a:hover {
  color: #1a73e8;
  text-decoration: underline
}
.p-crumb li:first-of-type a {
  display: flex;
  align-items: center
}
.p-crumb li:first-of-type a::before {
  content: '';
  display: inline-block;
  background: url(/common/img/ico_home_b.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 18px;
  height: 18px;
  margin-right: 2px
}
.p-crumb * + li:before {
  content: '';
  display: inline-block;
  transform: rotate(45deg);
  border-top: 2px solid #ced6e8;
  border-right: 2px solid #ced6e8;
  width: 4px;
  height: 4px;
  margin: 0 10px 0 4px;
  position: relative;
  top: -2px
}
@media only screen and (min-width:601px) {
  .p-crumb {
    font-size: 1.2rem;
    line-height: 1;
    flex-wrap: nowrap;
  }
}
@media only screen and (min-width:701px) {
  .l-crumb {
    display: block;
    border-bottom: 1px solid #ced6e8;
    padding: 15px 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
  }
}
.p-box_title:not(.-flex) {
  padding-top: 40px;
  margin-bottom: 20px
}
@media only screen and (min-width:901px) {
  .p-box_title {
    padding-top: 20px
  }
  .p-box_title.-flex {
    display: flex;
    flex-direction: row
  }
}
.p-box_title.-theme {
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  padding: 0;
  margin: 0;
  background: #f0f3f8;
  margin-top: 20px;
  border: 2px solid #003b87;
  border-bottom: none;
  border-radius: 3px 3px 0 0
}
.p-box_title.-theme .-bg_img {
  width: 35%;
  height: auto;
  margin-right: auto;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
  margin-top: 0;
}
.p-box_title.-theme .hl-content_large {
  width: 65%;
  padding: 10px 20px;
  margin-bottom: 0;
  line-height: 1.2
}
.p-box_title.-theme + div .p-box_condition {
  border-radius: 0 0 3px 3px
}
@media only screen and (max-width:750px) {
  .p-box_title.-theme .hl-content_large {
    font-size: 1.8rem
  }
}
@media only screen and (min-width:901px) {
  .p-box_title.-theme {
    position: relative;
    height: 180px;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    padding: 0;
    margin: 0;
    background: #f0f3f8;
    margin-top: 30px;
    border: 2px solid #003b87;
    border-bottom: none;
    border-radius: 3px 3px 0 0
  }
  .p-box_title.-theme .-bg_img {
    width: auto;
    height: 100%;
    margin-right: auto;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .2)
  }
  .p-box_title.-theme .hl-content_large {
    width: calc(100% - 280px);
    padding: 0 20px;
    margin: 0
  }
  .p-box_title.-theme + div .p-box_condition {
    border-radius: 0 0 3px 3px
  }
}
.hl-content_large {
  font-size: 2rem;
  color: #003b87;
  border-left: 5px solid #003b87;
  padding-left: .5em;
  line-height: 1
}
.hl-content_large + * {
  margin-top: 20px
}
.p-box_title .hl-content_large {
  font-size: 2.4rem;
  border-left: none;
  padding-left: 0;
  line-height: 1.4
}
.p-box_title.-flex .hl-content_large {
  margin-bottom: 0
}
.p-box_title .hl-content_large::after {
  content: '';
  display: block;
  width: 1.5em;
  height: 1px;
  background: #003b87;
  margin-top: 20px
}
@media only screen and (max-width:900px) {
  .hl-content_large {
    text-align: center;
    padding: 0;
    border: none
  }
  .hl-content_large::after {
    content: '';
    display: block;
    width: 1.5em;
    height: 1px;
    background: #003b87;
    margin: 15px auto 0
  }
  .p-box_title .hl-content_large {
    text-align: left
  }
  .p-box_title .hl-content_large::after {
    content: '';
    display: block;
    width: 1.5em;
    height: 1px;
    background: #003b87;
    margin: 15px 0 0 0
  }
}
@media only screen and (max-width:900px) {
  .p-box_title.-flex .hl-content_large {
    display: none
  }
  .p-box_condition + .c-read.-small {
    padding: 15px;
    border-radius: 2px;
    border: 1px solid #2e3b4c;
    margin: 0 auto 20px
  }
}
@media only screen and (min-width:901px) {
  .p-box_condition + .c-read.-small {
    margin: 0 auto 40px
  }
  .hl-content_large {
    font-size: 2.5rem
  }
  .hl-content_large + * {
    margin-top: 20px
  }
  .p-box_title .hl-content_large {
    font-size: 3.2rem
  }
  .-map_search .hl-content_large {
    font-size: 2.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
  }
  .hl-content_large::after {
    height: 3px
  }
  .p-box_title:not(.-flex) .hl-content_large + * {
    margin-top: 30px
  }
  .p-box_title:not(.-flex) .hl-content_large + .-bg_img {
    margin-top: 0
  }
  .p-box_title .p-box_title.-flex .hl-content_large {
    margin-bottom: 0;
    font-size: 2.4rem;
    max-width: 650px
  }
}
@media only screen and (max-height:960px) {
  .p-box_title {
    padding-top: 20px
  }
  .-map_search .hl-content_large {
    font-size: 2rem;
    margin-bottom: 20px
  }
}
.c-read {
  font-size: 1.5rem;
  line-height: 1.7
}
* + .c-read {
  margin-top: 20px
}
@media only screen and (max-width:750px) {
  .c-read {
    font-size: 1.3rem;
    line-height: 1.7
  }
}
.c-read.-center {
  text-align: center
}
.c-read.-small {
  font-size: 1.2rem
}
.c-read.-large {
  font-size: 1.6rem;
  color: #003b87
}
@media only screen and (max-width:750px) {
  .c-read.-large {
    font-size: 1.4rem
  }
}
.p-box_headnews {
  padding: 10px 0;
  background: #f1f4fd;
  font-size: 1.2rem;
  margin: 0;
  width: 100vw;
  position: relative;
  left: -5vw
}
.p-box_headnews p {
  display: flex;
  justify-content: center;
  min-height: 16px;
  padding: 0 3%
}
.p-box_headnews p time {
  background: url(/common/img/ico_info.svg) 0 0 no-repeat;
  background-size: 16px 16px;
  padding-left: 20px;
  color: #3f80d4;
  width: 115px;
  padding-top: 2px
}
.p-box_headnews .text {
  font-weight: 700;
  text-align: left;
  padding-left: 5px;
  width: calc(100% - 115px)
}
@media only screen and (min-width:751px) {
  .p-box_headnews {
    padding: 12px 12px 12px 24px;
    font-size: 1.4rem;
    width: auto;
    left: 0;
    margin-bottom: 20px
  }
  .p-box_headnews p {
    padding: 0
  }
  .p-box_headnews p time {
    width: 130px;
    white-space: nowrap;
    padding-top: 0
  }
  .p-box_headnews .text {
    width: auto;
    padding-left: 10px
  }
}
.p-toggle_box {
  border: 1px solid #d4d8e0;
  border-radius: 3px
}
.p-toggle_box.-area {
  border-radius: 3px;
}
.p-toggle_box.-office {
  border: none;
  border-top: 1px solid #d4d8e0;
  border-radius: 0
}
* + .p-toggle_box:not(.-area):not(.-line) {
  margin-top: 10px
}
* + .p-toggle_box.-office {
  margin-top: 15px
}
.p-toggle_box + .p-toggle_box.-area, .p-toggle_box + .p-toggle_box.-line {
  border-top: none
}
.c-toggle-parent {
  padding: 12px 10px 12px 20px;
  font-size: 1.5rem;
  display: flex;
  justify-content: space-between;
  width: 100%;
  align-items: center;
  border-bottom: 1px solid #ced6e8;
  background: #fff
}
.c-toggle-parent span {
  padding: 0 12px
}
.c-toggle-parent > .ico {
  height: 20px;
  cursor: pointer
}
.c-toggle-parent.-active {
  background: #f0f3f8;
  border-radius: 3px 0 0 3px;
  border-bottom: none
}
/* 近隣の都道府県から探す */
.p-box_link_around.-neighborhood .p-toggle_box .c-toggle-parent {
  padding: 10px 0 10px 20px;
  background: #003b87;
  color: #fff;
}
.p-box_link_around.-neighborhood .p-toggle_box .c-toggle-parent li {
  padding: 10px 0 10px 20px;
  background: #003b87;
  color: #fff;
}
@media only screen and (max-width:600px) {
  .p-box_link_around.-neighborhood .p-toggle_box .c-toggle-parent {
    padding: 10px;
    justify-content: center;
  }
}
@media only screen and (min-width:901px) {
  .c-toggle-parent {
    padding: 18px 15px 18px 30px;
    font-size: 1.8rem
  }
}
.p-toggle_box .c-toggle-child {
  padding: 20px 20px 0;
  font-size: 1.3rem;
  display: none;
  background: #fff
}
.c-toggle-parent.-active + .c-toggle-child {
  display: block
}
.p-list_checkbox.-flex {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column
}
.p-list_checkbox.-flex > li {
  width: 100%;
  margin-bottom: 15px;
  align-items: center
}
@media only screen and (min-width:901px) {
  .p-toggle_box .c-toggle-child {
    padding: 25px 30px 5px;
    font-size: 1.4rem
  }
  .p-list_checkbox.-flex {
    flex-direction: row;
    gap: 0 10px;
  }
  .p-list_checkbox.-flex > li {
    width: calc((100% - 30px) / 4);
    margin-bottom: 20px
  }
}
@media only screen and (max-width:750px) {
  .p-box_link_around.-neighborhood .p-toggle_box .c-toggle-child .-flex li {
    width: calc((100% - 10px) / 2);
  }
}
.p-checkbox.-parent {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", "Segoe UI", Verdana, Meiryo, sans-serif;
  font-weight: 700;
  white-space: nowrap
}
.p-checkbox.-parent .num {
  font-size: 1.2rem;
  margin-left: 10px;
  font-weight: 400;
  background: #003b87;
  color: #fff;
  display: inline-block;
  padding: 0 8px;
  border-radius: 15px;
  position: relative;
  top: -2px;
  text-decoration: none;
}
@media only screen and (min-width:901px) {
  .p-checkbox.-parent .num {
    font-size: 1.4rem;
    margin-left: 10px;
    transition: .2s all
  }
  .p-checkbox.-parent .num:hover {
    background: #3f80d4;
  }
  .p-checkbox a:hover {
    text-decoration: none;
  }
}
.btn-check {
  border: none;
  display: flex;
  width: 100%;
  margin: 0 auto;
  justify-content: flex-start;
  align-items: center;
  padding: 14px 20px;
  background: #fff;
  color: #2e3b4c;
  text-decoration: none;
}
.btn-check.-disable {
  pointer-events: none;
  color: #ccc;
}
@media only screen and (min-width:901px) {
  .btn-check {
    width: 100%;
    cursor: pointer;
    transition: .1s all ease;
    border-bottom: none
  }
}
.btn-check.-checked {
  color: #14498e;
  font-weight: 700
}
.btn-check::before {
  content: '';
  display: inline-block;
  width: 22px;
  height: 22px;
  margin-right: 10px;
  position: relative;
  left: -5px
}
.btn-check.-checked::before {
  background: url(/common/img/ico_check_parent.svg) 50% 50% no-repeat;
  background-size: cover
}
@media only screen and (min-width:901px) {
  .btn-check:not(:disabled):not(.-checked):hover {
    color: #3f80d4
  }
}
.p-box_cv, .p-box_cv.-fixed.-off {
  color: #65728b;
  position: relative
}
.p-box_cv::after, .p-box_cv.-fixed.-off::after {
  content: '';
  display: block;
  width: 111.2%;
  height: 100%;
  background: #f7f8fa;
  position: absolute;
  z-index: 0;
  left: -5.6%;
  top: -2px;
  border-top: 2px solid #ced6e8;
  border-bottom: 2px solid #ced6e8
}
.p-box_cv > .inner, .p-box_cv.-fixed.-off > .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
  z-index: 2;
  margin: 0 auto;
  padding: 20px 0
}
.p-box_cv > .inner > div, .p-box_cv.-fixed > .inner > div {
  width: 49.5%
}
@media only screen and (max-width:900px) {
  /* .p-box_cv.-agent:not(.-favorite) > .inner > div:nth-child(2),
    .p-box_cv.-agent:not(.-favorite).-fixed > .inner > div:nth-child(2) {
        width: 40px;
    } */
  .p-box_cv.-agent > .inner > div:nth-child(n+2) {
    width: calc((98%) / 2);
  }
  .p-box_cv.-agent > .inner > div:nth-child(n+4) {
    display: none;
  }
  .p-box_cv.-agent.-favorite > .inner > div:nth-child(n+2) {
    width: calc(98% / 2);
  }
}
.p-box_cv > .inner > div .btn-cv {
  min-width: unset;
  font-size: 1.4rem
}
.p-box_cv > .inner > div .btn-cv.-send_mail {
  background: #3f80d4;
  color: #fff
}
.p-box_cv > .inner > div + div {
  margin-left: 1%
}
.p-box_cv > .inner > p {
  padding: 0;
  width: 100%;
  text-align: center;
  font-size: 1.6rem
}
.p-box_cv p .sum {
  font-size: 2.5rem;
  color: #f5ac19
}
.p-box_cv > .inner > div {
  margin-top: 10px
}
.p-box_cv.-fixed {
  width: 100%;
  color: #fff;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 25
}
.p-box_cv.-fixed > .inner {
  padding: 15px 10px
}
.p-box_cv.-fixed:not(.-off)::after {
  border-top: 2px solid #000;
  border-bottom: none;
  background: #000;
  opacity: .7
}
.p-box_cv + .sec-recommend {
  margin-top: 100px
}
@media only screen and (max-width:900px) {
  .p-box_cv + .sec-recommend {
    margin-top: 60px
  }
}
#chk-area {
  padding-bottom: 50px
}
@media only screen and (min-width:901px) {
  #chk-area {
    padding-bottom: 60px
  }
  .p-box_cv, .p-box_cv.-fixed.-off {
    color: #65728b;
    position: relative
  }
  .p-box_cv::after, .p-box_cv.-fixed.-off::after {
    width: 100%;
    left: 0
  }
  .p-box_cv > .inner, .p-box_cv.-fixed.-off > .inner {
    z-index: 2;
    margin: 0 auto;
    padding: 30px 0
  }
  .p-box_cv > .inner > div, .p-box_cv.-fixed > .inner > div {
    width: 28%
  }
  .p-box_cv.-agent > .inner > div, .p-box_cv.-agent.-fixed > .inner > div {
    width: 20%
  }
  .p-box_cv > .inner > div .btn-cv {
    font-size: 1.8rem
  }
  .p-box_cv.-agent.-favorite > .inner > div {
    width: calc((96% - 240px) / 3)
  }
  .p-box_cv.-agent.-favorite > .inner > div .btn-cv {
    font-size: 1.6rem
  }
  .p-box_cv > .inner > p {
    padding: 0;
    width: auto;
    text-align: center;
    font-size: 1.6rem;
    padding-right: 20px
  }
  .p-box_cv p .sum {
    font-size: 3.2rem
  }
  .p-box_cv > .inner > div {
    margin-top: 0
  }
  .p-box_cv.-fixed {
    width: 100%;
    color: #fff;
    position: fixed;
    bottom: 0
  }
  .p-box_cv.-fixed > .inner {
    padding: 15px 40px;
    max-width: 1100px
  }
  .p-box_cv.-fixed:not(.-off)::after {
    border-top: 2px solid #000;
    background: #000;
    opacity: .7;
    border-bottom: none
  }
}
.hl-middle {
  font-size: 1.6rem
}
.hl-small {
  font-size: 1.4rem
}
.p-box_condition {
  border: 1px solid #003b87;
  border-radius: 3px;
  margin: 0 0 20px;
  box-shadow: 0 3px 3px rgba(0, 0, 0, .1)
}
.p-box_condition .c-hl {
  background: #003b87;
  padding: 10px 15px;
  line-height: 1;
  display: flex;
  flex-direction: column;
  align-items: center
}
.p-box_condition .c-hl .hl-middle {
  color: #fff
}
.p-box_condition .inner {
  padding: 0 15px 10px
}
@media only screen and (min-width:901px) {
  .p-box_condition .inner {
    padding: 10px 20px
  }
}
.p-condition_item {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.3rem;
  line-height: 1.2;
  padding: 10px 0
}
.p-condition_item dt {
  color: #8495af;
  width: 100%;
  text-decoration: underline;
  padding-bottom: 5px
}
.p-condition_item dd:first-of-type {
  width: calc(100% - 70px)
}
.p-condition_item dd:last-of-type {
  margin-left: auto;
  padding-left: 10px
}
.c-search-condition_item .p-condition_item dd:first-of-type {
  width: 100%;
  padding-left: 0 !important
}
.p-condition_item .btn-change {
  padding: 5px 15px
}
* + .p-condition_item {
  border-top: 1px solid #d7dee9
}
.p-box_condition .c-hl .c-box_button {
  display: flex;
  margin-top: 10px;
  width: 100%
}
.p-box_condition .c-hl .c-box_button > * {
  width: calc((100% - 5px) / 2)
}
.p-box_condition .c-hl .c-box_button > * + * {
  margin-left: 5px
}
@media only screen and (min-width:701px) {
  .p-box_condition .c-hl {
    padding: 10px 20px;
    flex-direction: row
  }
  .p-condition_item {
    flex-wrap: nowrap;
    flex-direction: row
  }
  .p-condition_item dt {
    width: 110px;
    text-decoration: none;
    padding-bottom: 0
  }
  .p-box_condition .c-hl .c-box_button {
    margin-left: auto;
    margin-top: 0;
    width: auto
  }
  .p-box_condition .c-hl .c-box_button > * {
    width: auto
  }
  .p-box_condition .c-hl .c-box_button > * + * {
    margin-left: 5px
  }
}
.p-tab {
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  background: #f0f3f8;
  padding-top: 8px;
  border-bottom: 1px solid #003b87;
  line-height: 1
}
.p-tab .c-tab_item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 10px 15px;
  z-index: 2;
  text-decoration: none;
  border-top: 3px solid transparent;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent
}
.p-tab .c-tab_item a {
  text-decoration: none
}
.p-tab .c-tab_item a::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0
}
.p-tab .c-tab_item.-disabled {
  cursor: default;
  pointer-events: none;
  opacity: .2
}
.p-tab .c-tab_item .num {
  font-size: 1.2rem;
  position: relative
}
.p-tab .c-tab_item .num::before {
  content: '('
}
.p-tab .c-tab_item .num::after {
  content: ')'
}
.p-tab .c-tab_item.-active {
  background: #fff;
  color: #003b87;
  border-color: #003b87;
  z-index: 3;
  margin-left: -2px
}
.p-tab .c-tab_item:first-of-type.-active {
  margin-left: 0
}
.p-tab .c-tab_item.-active a {
  pointer-events: none;
  cursor: default
}
.p-tab .c-tab_item::before {
  content: '';
  display: block;
  background: #ced6e8;
  height: 18px;
  width: 1px;
  position: absolute;
  top: calc(50% - 9px + 2px);
  right: 0;
  z-index: 0
}
.p-tab .c-tab_item.-active::before {
  display: none
}
.p-tab .c-tab_item.-active::after {
  content: '';
  display: block;
  background: #fff;
  height: 5px;
  width: 100%;
  position: absolute;
  bottom: -2px;
  left: 0
}
.p-tab.-area {
  margin-bottom: 20px;
  padding-top: 12px
}
@media only screen and (min-width:701px) {
  .p-tab {
    font-size: 1.5rem
  }
  .p-tab .c-tab_item {
    padding: 15px 20px 15px;
    z-index: 2;
    text-decoration: none;
    cursor: pointer
  }
  .p-tab .c-tab_item.-disabled {
    cursor: default;
    pointer-events: none;
    opacity: .2
  }
  .p-tab .c-tab_item .num {
    font-size: 1.2rem;
    position: relative;
    margin-left: 5px
  }
  .p-tab .c-tab_item .num::before {
    content: '('
  }
  .p-tab .c-tab_item .num::after {
    content: ')'
  }
  .p-tab .c-tab_item.-active {
    background: #fff;
    color: #003b87;
    border-color: #003b87;
    z-index: 3
  }
  .p-tab .c-tab_item::before {
    content: '';
    display: block;
    background: #ced6e8;
    height: 18px;
    width: 1px;
    position: absolute;
    top: calc(50% - 9px + 2px);
    right: 0;
    z-index: 0
  }
}
@media only screen and (min-width:901px) {
  .p-tab .c-tab_item {
    flex-direction: row
  }
  .p-tab.-area .c-tab_item {
    flex-direction: column
  }
  .p-tab.-area .c-tab_item .num {
    margin: 5px 0 0
  }
}
.p-box_areatitle {
  display: flex;
  padding: 8px 0;
  border-bottom: 3px solid #3f80d4;
  margin: 0;
  align-items: center
}
.p-box_areatitle > div:last-of-type {
  margin-left: auto
}
.p-box_areatitle strong {
  font-size: 1.5rem;
  color: #3f80d4
}
.p-box_areatitle > div.-sp_view {
  padding-left: 2px
}
.p-box_areatitle .p-select {
  margin-left: 8px
}
.p-box_areatitle .p-select select {
  line-height: 28px;
  height: 28px;
  background: #f0f3f8;
  padding: 0 25px 0 15px
}
.p-box_areatitle .p-select:after {
  top: 10px
}
.btn-change.-area {
  background: none;
  color: #003b87;
  box-shadow: none;
  position: relative
}
.btn-change.-area .ico {
  display: flex;
  align-items: center
}
.btn-change.-area .ico::before {
  content: '';
  display: block;
  background: url(/common/img/ico_change.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 20px;
  height: 20px;
  margin-right: 5px
}
@media only screen and (max-width:700px) {
  .p-box_areatitle {
    padding: 10px 0;
    margin: 30px 0 0;
    align-items: center;
    border-top: 3px solid #3f80d4
  }
}
@media only screen and (min-width:901px) {
  .p-box_areatitle {
    padding: 0 0 15px;
    border: none;
    margin: 30px auto 0;
    border-bottom: 3px solid #3f80d4
  }
  .p-box_areatitle strong {
    font-size: 2rem
  }
}
.p-box_result-option {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.3rem;
  padding: 15px 0 10px
}
.p-box_result-option > p {
  color: #2e3b4c;
  margin-bottom: 10px
}
.p-box_result-option .result-num {
  font-size: 2.5rem;
  color: #dc4748;
  margin: 0 5px
}
.c-nav_result-option {
  display: flex;
  align-items: center;
}
@media only screen and (max-width:640px) {
  .c-nav_result-option {
    width: 100%;
  }
}
.c-nav_result-option > * + div {
  margin-left: auto;
}
.c-nav_result-option > div:last-of-type {
  display: none
}
@media only screen and (min-width:641px) {
  .c-nav_result-option {
    margin-left: auto
  }
}
@media only screen and (min-width:751px) {
  .p-box_result-option {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0 5px
  }
  .p-box_result-option > p {
    margin-bottom: 0
  }
  .c-nav_result-option {
    justify-content: flex-start
  }
}
.p-list_search-condition + .sec-recommend {
  margin-top: 80px
}
@media only screen and (max-width:900px) {
  .p-list_search-condition + .sec-recommend {
    margin-top: 60px
  }
}
.p-all-check {
  border-radius: 0;
  background: #f7f7f4;
  border: 1px solid #f5ac19;
  font-size: 1.4rem;
  box-shadow: 0 2px 2px rgba(0, 0, 0, .1);
  margin: 15px 0;
  width: 100%;
  position: relative;
  position: sticky;
  z-index: 20;
  top: 5px
}
.c-btn_all-check {
  display: block;
  border: none;
  color: #fff;
  background: #f5ac19;
  padding: 15px;
  border-radius: 0;
  position: relative;
  width: 100%;
  text-align: left;
  line-height: 1;
}
.c-btn_all-check .ico {
  background: url(/common/img/ico_check_w.png) 0 0 no-repeat;
  background-size: 17px 17px;
  padding-left: 25px
}
.c-btn_all-check::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: #f5ac19 transparent transparent transparent;
  position: absolute;
  bottom: -8px;
  left: 18px
}
.p-all-check.-under .c-btn_all-check::after {
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent #f5ac19 transparent;
  top: -8px
}
.p-all-check .c-text {
  display: none
}
.p-all-check.-under {
  display: none
}
@media only screen and (min-width:751px) {
  .p-all-check {
    display: flex;
  }
  .c-btn_all-check {
    display: table-cell;
    /* border-radius: 3px 0 0 3px; */
    width: auto
  }
  .p-all-check .c-text {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    text-align: left;
    width: calc(100% - 195px);
  }
  .p-all-check.-under {
    display: flex
  }
}
.p-list_property {
  background: #f7f8fa
}
.p-list_property.-function {
  background: none
}
.c-property_item {
  border-top: 4px solid #003b87;
  background: #fff;
  margin-bottom: 0
}
.c-property_item:last-of-type {
  margin-bottom: 0
}
.c-property_item[data-filter="land"], .c-property_item.-land {
  border-top: 3px solid #26a4aa
}
.c-property_item .inner {
  padding: 12px 0 50px;
  position: relative
}
@media only screen and (max-width:750px) {
  .c-property_item:last-of-type {
    border-bottom: none
  }
}
@media only screen and (min-width:751px) {
  .p-list_property {
    border: 1px solid #e2e6ed
  }
  .c-property_item {
    border-top: 3px solid #003b87;
    border-bottom: 1px solid #d1d6e0;
    margin-bottom: 15px
  }
  .c-property_item .inner {
    padding: 15px 30px 30px 65px
  }
  .c-property_item.-delete .inner, .c-property_item.-soldout .inner {
    padding: 20px 10px
  }
  .p-list_property.-function {
    border: none;
    background: none
  }
  .p-list_property.-function .c-property_item {
    border: 1px solid #ced6e8;
    border-radius: 5px;
    margin-bottom: 20px
  }
  .p-list_property.-function .c-property_item:last-of-type {
    margin-bottom: 40px
  }
}
.p-list_property.-function .c-property_item.-delete, .p-list_property.-function .c-property_item.-soldout {
  border: transparent;
  border-radius: 0;
  margin-top: 20px
}
.p-list_property.-function .c-property_item.-delete + .c-property_item.-delete, .p-list_property.-function .c-property_item.-soldout + .c-property_item.-soldout, .p-list_property.-function .c-property_item.-delete + .c-property_item.-soldout, .p-list_property.-function .c-property_item.-soldout + .c-property_item.-delete {
  border-top: 1px solid #ced6e8;
  margin-top: 0
}
@media only screen and (max-width:750px) {
  .c-property_item header {
    position: relative;
  }
}
.c-property_item header .c-property_item.-delete header, .c-property_item.-soldout header {
  margin-bottom: 0
}
.c-box_hl {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
@media only screen and (max-width:900px) {
  #favoriteList .c-box_hl {
    padding-bottom: 10px;
  }
}
.hl-property_item {
  font-size: 1.6rem;
  line-height: 1.2;
  color: #003b87;
  padding: 0 16px 0 56px;
  width: calc(100% - 40px);
}
.c-property_item.-delete .hl-property_item, .c-property_item.-soldout .hl-property_item {
  padding-left: 0
}
.c-property_item.-soldout .hl-property_item a {
  pointer-events: none
}
.hl-property_item a {
  color: #003b87;
  text-decoration: none;
  transition: .2s all ease
}
.hl-property_item a:hover {
  color: #3f80d4
}
.c-property_item[data-filter="land"] .hl-property_item a, .c-property_item.-land .hl-property_item a {
  color: #26a4aa
}
.c-property_item .p-checkbox {
  position: absolute;
  line-height: 44px;
  min-height: 44px;
  height: calc(100% - 38px);
  width: 44px;
  left: 0;
  top: -12px;
  background: #003b87;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer
}
.c-property_item .p-checkbox .ico {
  display: block;
  height: 20px;
  padding-left: 20px
}
.hl-property_item .p-checkbox .ico::before {
  top: 1px
}
.c-box_hl .p-checkbox input[type="checkbox"]:checked + .ico::before {
  border-color: #fff;
  background: url(/common/img/ico_check_w.png) 50% 50% no-repeat;
  background-size: cover
}
.c-property_item[data-filter="land"] .p-checkbox, .c-property_item.-land .p-checkbox {
  background: #26a4aa
}
@media only screen and (min-width:751px) {
  .c-property_item .p-checkbox {
    position: absolute;
    line-height: 50px;
    height: 50px;
    width: 50px;
    left: 0;
    top: 0;
    background: #003b87;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer
  }
}
.p-label_type {
  background: #003b87;
  color: #fff;
  border-radius: 2px;
  font-size: 1.1rem;
  width: 40px;
  min-width: 40px;
  padding: 4px;
  aspect-ratio: 1/1;
  margin-left: auto;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center
}
.p-label_type.-land {
  background: #26a4aa
}
.c-property_item.-delete .p-checkbox {
  display: none
}
.c-property_item.-delete .hl-property_item::after {
  content: 'を削除しました'
}
.c-property_item.-delete .p-checkbox .ico {
  padding-left: 0
}
.c-property_item.-delete .p-checkbox .ico::before, .c-property_item.-delete .p-label_type {
  display: none
}
.c-property_item.-soldout .p-checkbox {
  display: none
}
.c-property_item.-soldout .hl-property_item::after {
  content: 'は完売しました';
  color: #dc4848
}
.c-property_item.-soldout .p-checkbox .ico {
  padding-left: 0
}
.c-property_item.-soldout .p-checkbox .ico::before, .c-property_item.-soldout .p-label_type {
  display: none
}
.-function .p-label_type {
  margin-left: 0
}
@media only screen and (min-width:751px) {
  .hl-property_item {
    font-size: 2.2rem;
    padding-left: 0;
    padding-top: 0
  }
  .-delete .hl-property_item, .-soldout .hl-property_item {
    font-size: 1.6rem;
    padding-left: 0
  }
  .p-label_type {
    font-size: 1.1rem;
    width: 6em;
    white-space: nowrap;
    padding: 4px 5px;
    min-width: 66px;
    margin-top: 4px;
    aspect-ratio: unset;
  }
}
.p-label_feature {
  display: flex;
  flex-wrap: wrap;
  margin: 18px 0 10px;
}
.p-label_feature > li {
  width: calc(100% / 3);
  color: #fff;
  font-size: 1rem;
  background: #6fb8bb;
  margin: 0;
  padding: 5px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.p-label_feature > li.-push {
  background: #3f80d4;
}
.p-label_feature > li.-child {
  background: #f39494
}
.-default .p-label_feature, .-function .p-label_feature {
  opacity: 0;
  height: 0;
  overflow: hidden;
}
@media only screen and (max-width:700px) {
  .c-property_item .p-label_feature {
    flex-wrap: nowrap;
  }
  .c-property_item .p-label_feature > li.-push {
    white-space: nowrap;
  }
  .p-label_feature {
    gap: 1px;
  }
}
@media only screen and (min-width:701px) {
  .p-label_feature > li {
    width: calc((100% - 15px) / 6);
    margin: 0 0 3px 2.5px;
    padding: 4px 0;
    border-radius: 30px;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
  }
}
.p-list_property:not(.-function) .row-img .-only {
  display: none
}
.p-list_property.-default .row-img .-only {
  display: block
}
.p-list_property.-default .row-img .-slider {
  display: none;
  max-height: 0
}
.p-list_property.-default .row-img .-slider > div img {
  display: none;
  height: 0;
  max-height: 0;
  overflow: hidden
}
.-delete .p-property_main,
.-soldout .p-property_main,
.-delete .box-download_property {
  display: none
}
@media only screen and (max-width:600px) {
  .p-property_main .p-flex_between {
    flex-wrap: wrap
  }
}
@media only screen and (min-width:701px) {
  .p-property_main {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
  }
  .p-property_main .row-img {
    width: 58.5%;
    max-height: 360px;
    margin-bottom: 0;
    position: relative;
    overflow: hidden
  }
  .p-property_main .row-data {
    width: 38%
  }
  .-default .p-property_main .row-img {
    width: 40%
  }
  .-default .p-property_main .row-data {
    width: 56%
  }
  .-function .p-property_main {
    align-items: flex-start
  }
  .-function .p-property_main .row-img {
    width: 30%
  }
  .-function .p-property_main .row-data {
    width: calc(100% - (35%))
  }
  *:not(.-default) .row-img .-only {
    display: none
  }
  .p-list_property.-default .row-img .-only, .p-list_property.-function .row-img .-only {
    display: block;
    padding-top: max(75%, 200px);
  }
  .-default .row-img .-slider {
    display: none
  }
  .-function .p-property_main + .box-download_property {
    border: none;
    margin-top: 20px;
  }
  .-function .p-property_main + .box-download_property .btn_dl-doc {
    width: 240px;
    border-radius: 2px;
  }
}
@media only screen and (min-width:901px) {
  .p-property_main .row-img {
    height: 360px
  }
  .-default .p-property_main .row-img {
    height: 260px
  }
  .-function .p-property_main .row-img {
    width: 25%;
    min-width: 200px;
    height: auto
  }
  .-function .p-property_main .row-data {
    width: calc(100% - (28% + 280px));
    min-width: 200px
  }
}
@media only screen and (min-width:751px) {
  .-function .p-property_main {
    margin-top: 30px
  }
}
.row-img .-slider .slick-list, .row-img .-slider .slick-track {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%
}
.row-img .-slider .slick-track .slick-slide {
  background: #182435
}
.row-img .-slider .slick-prev, .row-img .-slider .slick-next {
  background: #182435;
  position: absolute;
  top: auto;
  bottom: 0;
  right: 0;
  left: auto;
  transform: translate(0, 0)
}
.row-img .-slider .slick-prev {
  right: 30px;
  z-index: 10
}
.row-img .-slider .slick-arrow:before {
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff
}
.p-property_main .row-img > div {
  overflow: hidden;
  width: 100%;
  padding-top: 66%;
  position: relative
}
@media only screen and (min-width:701px) {
  .p-property_main .row-img > div {
    padding-top: 0;
    height: 100%
  }
}
.p-property_main .row-img .-slider img {
  display: block;
  width: auto;
  height: 100%;
  margin: 0 auto;
  object-fit: cover;
  object-position: 50% 50%
}
.p-property_main .row-img .-only img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 195px;
  object-fit: cover;
  object-position: 50% 50%;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%)
}
.-function .p-property_main .row-img .-only img {
  min-height: 170px
}
.row-img {
  border: 1px solid #182435
}
.row-data .c-list_thumbs {
  display: flex
}
.row-data .c-list_thumbs li {
  width: 49%;
  max-height: 88px
}
.row-data .c-list_thumbs li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  border: 1px solid #182435;
  cursor: pointer
}
.row-data .c-list_thumbs li:nth-of-type(1) img {
  object-fit: contain;
}
.row-data .c-list_thumbs {
  display: none
}
@media only screen and (max-width:700px) {
  .p-property_main .row-data {
    border: 1px solid #dde5f0;
    border-bottom: none;
  }
}
@media only screen and (min-width:751px) {
  .row-data .c-list_thumbs {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px
  }
  .-default .row-data .c-list_thumbs, .-function .row-data .c-list_thumbs, .-function .row-data .p-hash {
    display: none
  }
}
.c-data_item {
  display: flex;
  padding: 8px 0;
  border-bottom: 1px solid #dde5f0
}
.p-detail_data .c-data_item {
  display: table;
  width: 100%
}
.p-detail_data .c-data_item a:hover {
  text-decoration: none;
  color: #3f80d4;
}
@media only screen and (max-width:750px) {
  .p-property_main .c-data_item {
    align-items: center;
    padding: 10px 0
  }
  .c-property_item .p-data_table {
    padding: 5px 15px;
  }
  .p-property_main .p-flex_between .c-row:nth-of-type(2) .c-data_item:last-of-type {
    border-bottom: none;
  }
}
@media only screen and (min-width:481px) and (max-width:750px) {
  .p-property_main .p-flex_between .c-data_item:last-of-type {
    border-bottom: none;
  }
}
@media only screen and (min-width:751px) {
  .c-data_item {
    padding: 10px 2px
  }
  .c-property_item .c-data_item {
    align-items: center;
  }
}
.c-data_item:first-of-type {
  align-items: flex-end
}
#sec1 .c-data_item:first-of-type {
  align-items: flex-start
}
.c-data_item dt {
  width: 47px;
  font-size: 1rem;
  color: #616b79;
  align-items: center;
}
*:not(.-default) .c-data_item dt {
  display: none
}
*:not(.-default) .p-list_property .c-data_item dt {
  display: unset;
}
.-default .c-data_item dt {
  display: table-cell;
  width: 70px
}
.c-data_item dd {
  font-size: 1.2rem;
  width: calc(100% - 72px);
}
.-function .c-data_item dd {
  font-size: 1.3rem
}
.-function .c-data_item dd br {
  display: none
}
.-default .c-data_item dd {
  width: calc(100% - 70px);
  font-size: 1.3rem
}
.c-data_item dd strong {
  color: #dc4748;
  font-size: 1.6rem;
  line-height: 1
}
.row-data .p-flex_between .c-row {
  width: 49%
}
.w-main.-land .row-data .p-flex_between:first-of-type .c-row {
  width: 100%
}
@media only screen and (min-width:901px) {
  .c-property_item .row-data .p-flex_between .c-row {
    width: 55%
  }
  .c-property_item .row-data .p-flex_between .c-row:nth-of-type(2) {
    width: 43%
  }
  .c-property_item[data-filter*="land"] .c-property_item .row-data .p-flex_between .c-row, .c-property_item[data-filter*="land"] .c-data_item:first-of-type {
    width: 100%
  }
}
@media only screen and (min-width:1301px) {
  .c-property_item .row-data .p-flex_between .c-row:nth-of-type(2) .c-data_item dt {
    /* width: auto; */
    padding-right: 5px
  }
}
@media only screen and (min-width:701px) and (max-width:1300px) {
  .c-property_item .row-data .p-flex_between {
    display: block
  }
  .c-property_item .row-data .p-flex_between .c-row {
    width: 100% !important
  }
  .c-property_item .c-data_item dt {
    width: 65px
  }
}
@media only screen and (max-width:700px) {
  .c-property_item .c-data_item dt {
    width: 70px
  }
}
@media only screen and (max-width:480px) {
  .row-data .p-flex_between .c-row {
    width: 100%
  }
}
.p-hash {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.2rem;
  margin: 15px 0 12px;
}
.p-hash li {
  margin: 0 10px 5px 0
}
.p-hash span::before {
  content: '#';
  color: #3f80d4;
  font-size: 1.4rem;
  margin-right: 2px
}
.p-hash li:nth-of-type(n+11) {
  display: none
}
@media only screen and (max-width:750px) {
  .c-property_item .p-hash {
    display: none
  }
}
.-default .p-hash {
  display: none
}
.c-box_push-property {
  display: flex;
  align-items: center;
  margin: 0;
  border: 1px solid #dde5f0;
}
.p-box_point {
  display: flex;
  background: #f0f3f8;
  padding: 10px 10px 10px 0;
  border-radius: 1px;
  width: 100%
}
.p-box_point .ico {
  display: flex
}
.p-box_point .ico::before {
  content: '';
  display: block;
  background: url(/common/img/ico_good.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 35px;
  height: 35px;
  margin: 0 auto
}
.p-box_point > p {
  width: 68px;
  text-align: center;
  color: #2e3b4c
}
.p-box_point > p + div {
  font-size: 1.2rem;
  line-height: 1.4;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  width: calc(100% - 68px)
}
.p-box_point > p + div * {
  font-size: 1.3rem !important;
  background: none !important;
  color: #2e3b4c !important;
  font-weight: normal !important;
  text-decoration: none !important;
  text-align: left !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important
}
@media only screen and (max-width:750px) {
  .p-box_point {
    flex-direction: column;
    padding: 15px;
  }
  .p-box_point .ico {
    display: flex;
    align-items: center;
    justify-content: flex-start
  }
  .p-box_point .ico::before {
    background-size: cover;
    width: 20px;
    height: 20px;
    margin: 0 10px 0 0
  }
  .p-box_point > p {
    width: 100%;
    font-size: 1.3rem;
    margin-bottom: 5px;
    font-weight: 700
  }
  .p-box_point > p + div {
    font-size: 1.3rem;
    line-height: 1.5;
    width: 100%;
    height: auto;
    max-height: 4.5em
  }
}
.btn-panorama {
  display: none
}
@media only screen and (min-width:751px) {
  .p-box_point {
    margin-right: 0;
  }
  .p-box_point .ico {
    flex-direction: column;
    justify-content: center;
    height: 100%
  }
  .btn-panorama {
    border-radius: 3px;
    display: block;
    border: none
  }
  .btn-panorama img {
    border-radius: 3px;
    display: block;
    max-width: 70px !important;
    width: auto !important;
  }
}
.-function .c-box_push-property, .-default .c-box_push-property {
  display: none
}
.c-property_item footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.c-updatetime {
  display: none
}
.c-box_cv {
  display: flex;
  width: 100%;
  align-items: center
}
.c-box_cv a {
  text-decoration: none;
}
@media only screen and (min-width:901px) {
  .c-property_item footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 15px;
  }
  .c-property_item footer .c-box_cv {
    width: 100%;
    gap: 8px;
  }
  .c-property_item footer .c-box_cv li {
    width: calc((100% - 50px) / 3);
    margin: 0;
  }
  .c-property_item footer .c-box_cv li:first-child {
    width: 40px;
  }
  .c-property_item footer .c-box_cv li:nth-of-type(2) {
    width: calc((100% - 50px) / 3 + 30px);
  }
  .c-property_item .c-box_agent-detail + footer .c-box_cv li {
    /* width: calc(100% / 4); */
    margin: 0;
    max-width: 180px;
  }
  .c-property_item footer .c-box_cv li:nth-of-type(4), .c-property_item footer .c-box_cv li:last-child, .c-property_item .c-box_agent-detail + footer .c-box_cv li:last-child {
    width: calc((100% - 50px) / 3 - 30px);
    margin-left: auto;
  }
}
.c-box_cv * + li {
  margin-left: 4px
}
.c-property_item .c-box_cv li:last-of-type {
  margin-left: auto;
  /* padding-left: 10px */
}
@media only screen and (max-width:900px) {
  .c-property_item .c-box_cv {
    flex-wrap: wrap;
  }
  .c-property_item .c-box_cv li {
    order: 1;
  }
  .c-property_item .c-box_cv.-column.-agent {
    justify-content: space-between;
  }
  .c-property_item .c-box_cv.-column.-agent li {
    margin: 0;
  }
  /* .c-property_item .c-box_cv.-column.-agent li:nth-of-type(2) {
        width: 100%;
        margin-bottom: 4px;
    } */
  .c-property_item .c-box_cv.-column.-agent li:nth-of-type(4) {
    display: none
  }
  /* .c-property_item .c-box_cv.-column.-agent li:nth-of-type(2),
    .c-property_item .c-box_cv.-column.-agent li:nth-of-type(3){
        width: calc((100% - 8px) / 2);
    } */
  .c-property_item .c-box_agent-detail + footer .c-box_cv li:nth-child(1) {
    width: 40px;
  }
  .c-property_item .c-box_agent-detail + footer .c-box_cv li:nth-child(n+2) {
    width: calc((100% - 40px - 12px) / 2);
  }
  .c-property_item .c-box_agent-detail + footer .c-box_cv li:nth-child(3) {
    display: none;
  }
  .c-property_item .c-box_cv li:nth-last-of-type(1), .c-property_item .c-box_agent-detail + footer .c-box_cv li:last-child {
    order: 0;
    margin: 0 0 10px 0;
    width: 100%;
  }
  .c-property_item .box-download_property + footer .c-box_cv {
    flex-wrap: nowrap;
    gap: 8px;
    margin-top: 20px;
  }
  .c-property_item .box-download_property + footer .c-box_cv li {
    order: 0;
    margin: 0;
  }
}
@media only screen and (max-width:900px) {
  .p-detail_conv .c-box_cv:not(.-agent) li:last-of-type {
    margin-right: 7px
  }
  .p-detail_conv .c-box_cv.-agent li {
    margin: 0;
  }
}
.btn-cv_common {
  background: #dc4748;
  color: #fff;
  font-size: 1.4rem;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
  border: 1px solid #dc4748;
  height: 40px;
  cursor: pointer;
  display: block;
  width: 100%;
  transition: .2s all ease;
}
.btn-cv_common:hover {
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  transform: translate3d(0, 1px, 0);
}
.btn-cv_common.-request {
  background: #dc4748;
  padding: 0 10px;
  white-space: nowrap;
  color: #fff;
  border: 1px solid #dc4748
}
.btn-cv_common.-request:hover {
  opacity: .8;
}
.btn-cv_common.-special {
  background: #dc4748;
  padding: 0 5px;
  white-space: nowrap;
  color: #fff;
  border: 1px solid #dc4748
}
.btn-cv_common.-search {
  background: #f5ac19;
  border: 1px solid #f5ac19;
  color: #fff
}
.btn-cv_common.-download {
  background: #2e3b4c;
  color: #fff;
  border: 1px solid #2e3b4c;
  padding: 0 8px;
  box-shadow: 0 1px 0 rgba(0, 0, 0, .1);
}
.btn-cv_common.-download:disabled {
  background: #f5f5f5;
  color: #ccc;
  border: 1px solid #f5f5f5;
  padding: 0 8px;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0);
}
.btn-cv_common.-download .ico {
  display: flex;
  align-items: center;
  justify-content: center
}
.btn-cv_common.-download .ico::after {
  content: '';
  display: block;
  width: 15px;
  height: 15px;
  background: url(/common/img/ico_download_w.svg) 50% 50% no-repeat;
  background-size: cover;
  margin-left: 5px
}
.btn-favorite {
  background: #fff url(/common/img/ico_star.svg) 50% 50% no-repeat;
  background-size: 20px 20px;
  border: 1px solid #545f6d;
  border-radius: 4px;
  padding: 0 15px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, .1);
  height: 40px;
  width: 40px;
  line-height: 39px;
  cursor: pointer;
  transition: .2s all ease
}
.btn-favorite:hover, .p-list_property .btn-favorite:hover {
  box-shadow: 0 1px 4px rgba(0, 0, 0, .4);
  opacity: .8
}
.btn-favorite.-active {
  background-image: url(/common/img/ico_star_active.svg);
  border: 1px solid #dc4748;
  box-shadow: 0 0 0 rgba(0, 0, 0, .1)
}
.link-detail {
  color: #003b87;
  font-size: 1.3rem;
  transition: .2s all ease;
  letter-spacing: -.05em;
  text-align: center;
  display: block;
}
.link-detail:hover {
  color: #3f80d4
}
.link-detail .ico {
  padding-left: 10px;
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
}
.link-detail .ico::after {
  content: '';
  display: block;
  background: url(/common/img/ico_arrow_b.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 11px;
  height: 11px;
  margin-left: 8px
}
.p-list_property .link-detail.-special {
  color: #fff;
  transition: .2s all ease;
  text-align: center;
  display: flex;
  align-items: center;
  text-decoration: none;
  border-radius: 3px;
  background: #c8a347;
  box-shadow: 0 1px 1px rgba(0, 0, 0, .1);
  height: 40px;
  justify-content: center;
  white-space: nowrap;
}
.p-list_property .link-detail.-special:hover {
  opacity: .8;
}
.row-bnr .btn-special .ico {
  display: inline-flex;
  font-size: 1.8rem;
  align-items: center;
}
.row-bnr .btn-special .ico::after {
  content: '';
  display: block;
  width: 11px;
  height: 11px;
  margin-left: 8px
}
.row-bnr .btn-special .ico::after, .link-detail.-special .ico::after {
  background: url("/common/img/ico_blank_w.svg") 50% 50% no-repeat;
  background-size: cover;
  width: 15px;
  height: 15px;
  margin-left: 5px
}
@media only screen and (max-width:900px) {
  .link-detail:not(.-special) {
    padding: 10px;
    font-size: 1.6rem;
    border: 1px solid #dde5f0;
  }
  .p-list_property .link-detail.-special {
    padding: 0 5px;
  }
  .link-detail.-special .ico::after {
    margin-left: 2px
  }
}
@media only screen and (min-width:901px) {
  .p-list_property .link-detail {
    color: #003b87;
    font-size: 1.4rem;
    display: block;
  }
  .p-list_property .link-detail:hover {
    border-color: #3f80d4;
    color: #3f80d4;
    box-shadow: 0 0 0;
    transform: translate3d(0, 1px, 0);
  }
  .p-list_property .link-detail.-special:hover {
    border-color: #c8a347;
    background: #c8a347;
    color: #fff;
    box-shadow: 0 0 0;
    transform: translate3d(0, 1px, 0);
  }
  .row-bnr .btn-special:hover {
    opacity: .8;
  }
  .row-bnr .btn-special:hover .ico::after, .link-detail.-special:hover .ico::after {
    background: url("/common/img/ico_blank_w.svg") 50% 50% no-repeat;
    transition: .2s all ease;
  }
}
.c-box_cv.-column {
  flex-direction: column;
  margin-top: 15px
}
@media only screen and (max-width:700px) {
  .c-box_cv.-column {
    flex-direction: row;
  }
  .c-box_cv.-column.-column.-agent {
    gap: 4px;
    margin-top: 0;
  }
  .c-box_cv.-column .c-text {
    font-size: 1.3rem;
    margin: 10px auto;
    display: block
  }
  .c-box_cv.-column li > * {
    width: 100%
  }
  .c-box_cv.-column li {
    width: 100%;
    text-align: center;
    margin: 2px 0;
  }
  .box-download_property {
    display: none !important;
  }
}
@media only screen and (min-width:701px) and (max-width:900px) {
  .c-box_cv.-column {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .c-box_cv.-column li:first-of-type {
    width: 100%;
    padding-bottom: 10px;
    font-size: 1.3rem;
    text-align: center;
  }
  .c-box_cv.-column li:nth-of-type(2) {
    margin-left: 0
  }
  .c-box_cv.-column li:nth-of-type(2), .c-box_cv.-column li:nth-of-type(3) {
    width: 35%
  }
  .c-box_cv.-column.-agent li:nth-of-type(2), .c-box_cv.-column.-agent li:nth-of-type(3), .c-box_cv.-column.-agent li:nth-of-type(4) {
    width: calc((100% - 8px) / 3);
  }
  .c-box_cv.-column li:nth-of-type(2) button, .c-box_cv.-column li:nth-of-type(3) button {
    width: 100%
  }
  .c-box_cv.-column .link-detail {
    background: none !important;
    font-size: 1.5rem !important;
  }
}
@media only screen and (min-width:901px) {
  .c-property_item footer {
    flex-wrap: nowrap
  }
  .c-updatetime {
    display: block;
    font-size: 1.1rem;
    line-height: 1.7;
    margin-top: 10px;
  }
  .c-box_cv {
    display: flex;
    align-items: center
  }
  .c-box_cv li {
    margin-left: 8px
  }
  .c-box_cv li:last-of-type {
    margin-left: 8px
  }
  .c-box_cv.-column {
    width: 240px;
    margin-top: 0
  }
  .c-box_cv.-column li {
    margin-left: 0;
    margin-bottom: 8px;
    width: 100%;
    font-size: 1.3rem
  }
  .c-box_cv.-column li .c-text {
    display: block;
    padding-bottom: 10px
  }
  .btn-cv_common {
    font-size: 1.6rem;
    cursor: pointer
  }
  .btn-cv_common.-request {
    padding: 0 30px
  }
  .btn-cv_common.-special {
    padding: 0 30px
  }
  .btn-cv_common.-search {
    background: #f5ac19;
    border: 1px solid #f5ac19;
    color: #fff
  }
  .btn-favorite {
    background: #fff url(/common/img/ico_star.svg) 50% 50% no-repeat;
    background-size: 20px 20px;
    border: 1px solid #545f6d;
    border-radius: 4px;
    padding: 0 10px;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .1);
    height: 40px;
    width: 40px;
    line-height: 39px;
    cursor: pointer
  }
  .p-list_property .btn-favorite {
    border-radius: 2px;
  }
  .link-detail {
    color: #003b87;
    font-size: 1.6rem;
    text-decoration: underline;
    text-align: right;
  }
  .link-detail .ico {
    height: 40px;
    padding-left: 10px;
    display: inline-flex;
    align-items: center;
    margin: auto;
  }
  .link-detail .ico::after {
    margin-left: 5px
  }
  .c-box_cv.-column button {
    font-size: 1.3rem;
    cursor: pointer;
    width: 100%
  }
}
.c-box_cv.-column .link-detail {
  background: #f0f3f8;
  display: block;
  padding: 12px 0;
  font-size: 1.3rem;
  text-align: center;
}
.c-box_cv.-column .link-detail .ico {
  justify-content: center
}
.row-aside {
  overflow: hidden;
  max-height: 0;
  margin-bottom: 20px;
}
@media only screen and (min-width:901px) {
  .row-aside {
    position: relative;
    background: #f7f8fa;
    border-left: 1px solid #f7f8fa;
    width: 240px;
    padding: 80px 0 100px;
    overflow: unset;
    max-height: none;
    margin-bottom: 0;
  }
  .row-aside > div {
    position: sticky;
    top: -140px
  }
}
.hl-aside {
  background: #003b87;
  text-align: center;
  color: #fff;
  font-size: 1.6rem;
  position: relative;
  z-index: 2;
  padding: 11px 0
}
.p-box_condition_small .inner {
  background: #fff;
  padding: 10px 20px 20px;
  position: relative;
  z-index: 1
}
.c-condition_item {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  width: 100%;
  padding: 10px 0
}
* + .c-condition_item {
  border-top: 1px solid #d7dee9
}
.c-condition_item > div {
  font-size: 1.3rem;
  line-height: 1.4;
  width: calc(100% - 50px)
}
.c-condition_item.-prefectures > div {
  font-size: 1.6rem
}
.c-condition_item btn {
  width: 42px
}
/* 20230403 追加*/
.c-condition_item.-anotherdistrict > div {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.c-condition_item.-anotherdistrict p {
  width: 100%;
  background: #d7dee9;
  padding: 4px 0;
}
.c-condition_item.-anotherdistrict a, .p-box_link_around.-neighborhood li a, .p-box_link_around .-area li a {
  display: flex;
  align-items: center;
  padding: 6px 0;
  width: calc((100% - 5px) / 2);
  transition: .2s;
}
.p-box_link_around .-area li a {
  white-space: nowrap;
}
.c-condition_item.-anotherdistrict a::before, .p-box_link_around.-neighborhood li a::before, .p-box_link_around .-area li a::before {
  content: '';
  display: block;
  padding-right: 1em;
  height: 1em;
  margin-right: 5px;
  background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23003b87%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20class%3D%22ai%20ai-ArrowRight%22%3E%3Cpath%20d%3D%22M4%2012h16%22%2F%3E%3Cpath%20d%3D%22M13%205l7%207-7%207%22%2F%3E%3C%2Fsvg%3E') 50% 50% no-repeat;
  background-size: cover;
  opacity: .5;
  transition: .2s;
}
.c-condition_item.-anotherdistrict a:hover, .p-box_link_around.-neighborhood li a:hover, .p-box_link_around .-area li a:hover {
  text-decoration: none;
}
.c-condition_item.-anotherdistrict a:hover::before, .p-box_link_around.-neighborhood li a:hover::before, .p-box_link_around .-area li a:hover::before {
  opacity: 1;
}
.btn-change {
  font-size: 1.2rem;
  background: #8495af;
  color: #fff;
  white-space: nowrap;
  padding: 5px;
  border-radius: 2px;
  border: none;
  box-shadow: 0 1px 0 rgba(0, 0, 0, .1)
}
.c-option_item {
  border-bottom: 1px solid #b5c1d5;
  padding: 0 0 10px
}
.c-option_item .c-toggle-parent {
  padding: 20px 0 10px;
  font-size: 1.3rem;
  color: #003b87;
  background: none;
  border: none
}
.c-option_item .c-toggle-child {
  padding: 5px 0;
  font-size: 1.3rem;
  display: none
}
.c-option_item .c-toggle-parent.-active + .c-toggle-child {
  display: block
}
.p-box_option_small.-show {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 1010;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  background: #fff;
  padding-bottom: 140px
}
.p-box_option_small.-show .hl-aside {
  height: 52px;
  line-height: 52px;
  padding: 0 55px 0 20px;
  text-align: left
}
.p-box_option_small.-show .btn-close {
  position: absolute;
  top: 4px;
  right: 4px;
  z-index: 10
}
.p-box_option_small.-show > .inner {
  overflow-y: auto;
  background: #fff
}
.p-box_option_small.-show > .inner::-webkit-scrollbar {
  width: 8px
}
.p-box_option_small.-show > .inner::-webkit-scrollbar-track {
  margin: 2px 0;
  background: #fff;
  border-radius: 5px
}
.p-box_option_small.-show > .inner::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #2e3b4c
}
.p-box_option_small.-show .p-box_cv_aside {
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 2;
  background: #fff
}
.p-box_option_small.-show .p-box_cv_aside > .inner {
  padding: 15px 20px 5px;
  background: none;
  text-align: center
}
.p-box_option_small.-show .p-box_cv_aside .btn-cv_common {
  width: 100%;
  max-width: 400px
}
.p-box_option_small.-show .p-box_cv_aside .btn-toggle_function {
  display: none
}
.p-box_option_small .inner {
  background: #f2f4f7;
  padding: 0 20px 20px;
  position: relative;
  z-index: 1
}
.p-flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center
}
.p-flex.-row2 > * {
  width: 50%
}
.p-flex.-row2:not(.-gallery) > *:nth-of-type(n+3) {
  margin-top: 10px
}
.p-flex.-row2.-gallery > * {
  width: calc(50% - 2px)
}
.p-flex.-row2.-gallery > *:nth-of-type(2n) {
  margin-left: 2px
}
.p-flex.-row2.-gallery > *:nth-of-type(n+3) {
  margin-top: 2px
}
.p-flex.-row2 > .row-w_75p {
  width: calc(100% - 240px)
}
.p-flex.-row2 > .row-w_25p {
  width: 150px;
  margin-left: auto
}
.w-main.-contact .p-flex.-row2 > .row-w_75p {
  width: calc(100% - 180px)
}
.w-main.-contact .p-flex.-row2 > .row-w_25p {
  width: 120px;
  margin-left: auto
}
@media only screen and (max-width:900px) {
  .p-flex.-row2 > .row-w_75p {
    width: 100% !important;
    max-width: none
  }
  .p-flex.-row2 > .row-w_25p {
    width: 90% !important;
    max-width: 500px;
    margin: 0 auto
  }
}
.p-box_cv_aside {
  background: #7b99c0;
  bottom: 0;
  z-index: 10;
  width: 250px
}
.p-box_cv_aside .inner {
  padding: 0 20px 20px
}
.p-box_cv_aside .btn-cv_common {
  width: 100%;
  height: 48px;
  line-height: 47px;
  font-size: 1.6rem;
  margin-bottom: 10px
}
.c-sum_aside {
  background: #0a428c;
  padding: 10px 20px 15px;
  text-align: center;
  color: #fff;
  font-size: 1.6rem;
  display: flex;
  justify-content: center;
  align-items: baseline
}
.c-sum_aside .num {
  color: #f5ac19;
  font-size: 3rem;
  margin: 0 5px
}
.btn-toggle_function {
  font-size: 1.1rem;
  line-height: 1;
  text-align: center;
  padding: 8px;
  border-radius: 30px;
  background: #fff;
  border: 1px solid #fff;
  color: #003b87;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .2)
}
@media only screen and (min-width:481px) {
  .btn-toggle_function {
    padding: 5px 20px
  }
}
.p-box_cv_aside .btn-toggle_function {
  display: block;
  font-size: 1.25rem;
  line-height: 1;
  text-align: center;
  padding: 8px 0;
  width: 100%;
  border-radius: 30px;
  background: #fff;
  border: 1px solid #003b87;
  color: #003b87;
  box-shadow: none
}
.p-box_cv_aside * + .btn-toggle_function {
  margin-top: 5px
}
.p-box_cv_aside .btn-toggle_function.-on {
  background: #003b87;
  border: 1px solid #003b87;
  color: #fff
}
.btn-toggle_function.-active, .p-box_cv_aside .btn-toggle_function.-active {
  background: #003b87;
  border: 1px solid #fff;
  color: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0)
}
.btn-toggle_function.-active .ico, .p-box_cv_aside .btn-toggle_function.-active .ico {
  padding-left: 10px;
  position: relative
}
.btn-toggle_function.-active .ico::before, .p-box_cv_aside .btn-toggle_function.-active .ico::before {
  content: '';
  display: block;
  background: url(/common/img/ico_done_w.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 14px;
  height: 14px;
  position: absolute;
  left: -7px
}
@media only screen and (max-width:900px) {
  .p-pagenation + .p-box_condition {
    display: none
  }
}
.p-pagenation + .c-read {
  margin-top: 40px
}
.p-pagenation {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  font-size: 1.5rem;
  line-height: 1;
  margin: 20px auto 40px;
  align-items: center
}
.p-pagenation > a, .p-pagenation > span {
  text-decoration: none;
  padding: 12px 15px;
  display: inline-block;
  border-radius: 3px;
  border: 1px solid #e2e6ed;
  margin: 0 3px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .2);
  transition: .2s all ease
}
.p-pagenation > a:hover {
  border-color: #3f80d4;
  color: #3f80d4
}
.p-pagenation > span {
  border: none;
  line-height: 1;
  box-shadow: none;
  padding: 12px 5px
}
.p-pagenation a:not(.-prev):not(.-next) {
  font-weight: 700
}
.p-pagenation a.-active {
  background: #f1f4fd
}
.p-pagenation a.-disabled {
  background: none;
  border: none;
  pointer-events: none;
  color: #9fa3a8;
  box-shadow: none
}
.p-pagenation a:not(.-prev):not(.-next).-disabled {
  padding: 12px 5px
}
.p-box_cv + .p-box_condition {
  margin-top: 80px
}
@media only screen and (max-width:900px) {
  .p-pagenation {
    display: none
  }
}
@media only screen and (max-width:600px) {
  .p-box_cv + .p-box_condition, .p-box_cv + .p-box_condition + .c-read {
    display: none;
  }
}
.btn-close {
  width: 44px;
  height: 44px;
  padding: 10px;
  position: absolute;
  background: none;
  border: none;
  box-sizing: border-box
}
.btn-close::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  background: rgba(255, 255, 255, .5);
  border-radius: 50%;
  transform: scale(0);
  transition: .2s;
}
.btn-close:hover::after {
  transform: scale(1)
}
.btn-close .ico {
  display: block;
  width: 100%;
  height: 100%;
  background: url(/common/img/ico_close.svg) 50% 50% no-repeat;
  background-size: cover
}
.btn-close.-white .ico {
  background: url(/common/img/ico_close_w.svg) 50% 50% no-repeat
}
.l-map_search {
  height: 100vh;
  position: relative
}
.p-obj_map {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 0;
  display: block
}
.mdl-property_detail {
  background: #fff;
  width: 100%;
  height: 80vh;
  position: relative;
  display: none;
  border-top: 5px solid #003b87;
  box-shadow: 0 -5px 10px rgba(0, 0, 0, .2)
}
.mdl-property_detail.-show {
  display: block
}
@media only screen and (max-width:600px) {
  .mdl-property_detail.-show {
    top: 0 !important
  }
}
.mdl-property_detail .btn-close {
  right: 0;
  top: 10px;
  z-index: 10
}
.mdl-property_detail > .inner {
  padding: 20px 5%;
  display: flex;
  flex-direction: column;
  height: 100%
}
@media only screen and (min-width:601px) {
  .mdl-property_detail {
    position: absolute;
    right: 0;
    top: 1px;
    z-index: 10;
    border-top: none;
    border-left: 1px solid #d4d7da;
    height: calc(100% - 1px);
    max-width: 320px;
    box-shadow: 0 0 2px rgba(0, 0, 0, .2)
  }
  .mdl-property_detail .btn-close {
    left: -48px;
    top: 20px
  }
  .mdl-property_detail > .inner {
    padding: 30px 25px;
    display: flex;
    flex-direction: column;
    height: 100%
  }
}
.mdl-property_detail .c-box_hl {
  display: block
}
.hl-property {
  font-size: 1.8rem;
  padding-right: 40px;
  color: #00377d;
  line-height: 1.4;
  position: relative
}
.hl-property::before {
  content: '';
  display: block;
  height: 100%;
  width: 5px;
  position: absolute;
  left: -6%;
  background: #00377d
}
@media only screen and (min-width:901px) {
  .hl-property {
    padding-right: 0
  }
  .hl-property::before {
    width: 4px;
    left: -25px
  }
}
.mdl-property_detail .c-box_hl .c-text {
  margin: 4px 0;
  font-size: 1.3rem
}
.mdl-property_detail .c-box_hl .c-text.-price {
  margin-bottom: 10px
}
.mdl-property_detail .c-box_hl .c-text.-price b {
  font-size: 2rem;
  font-weight: 700;
  color: #dc4748;
  padding-right: 4px
}
.mdl-property_detail .c-text:not(.-access) + .c-text.-access {
  padding-top: 6px
}
.mdl-property_detail .c-box_hl .c-text.-access .ico {
  padding-left: 20px;
  background: url(/common/img/ico_access.png) 0 1px no-repeat;
  background-size: 13px auto;
  line-height: 1.5;
  display: inline-block
}
.btn-common {
  display: inline-block;
  padding: 8px 15px;
  border-radius: 3px;
  font-size: 1.4rem;
  background: #3f80d4;
  color: #fff;
  text-decoration: none;
  transition: .2s all ease
}
.btn-common:hover {
  opacity: .9;
  box-shadow: 0 1px 5px rgba(0, 0, 0, .2)
}
.index-panel_btn {
  padding-left: 4px
}
.l-mv_root .btn-common {
  display: inline-block;
  padding: 10px 15px 10px 20px;
  border-radius: 2px;
  font-size: 1.4rem;
  font-weight: 700;
  background: #111
}
.l-mv_root .btn-common .ico {
  padding-right: 20px
}
.l-mv_root .btn-common .ico::after {
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  background: url(/common/img/ico_arrow_w.svg) 50% 50% no-repeat;
  background-size: cover;
  transform: rotate(-90deg);
  position: absolute;
  right: 0;
  top: 2px
}
@media only screen and (min-width:901px) {
  .l-mv_root .btn-common {
    padding: 12px 20px 12px 25px;
    font-size: 1.6rem
  }
  .index-panel_btn {
    padding-left: 10px
  }
  .l-mv_root .btn-common .ico {
    padding-right: 25px
  }
  .l-mv_root .btn-common .ico::after {
    width: 16px;
    height: 16px;
    top: 3px
  }
}
.btn-operation .btn-common:hover, .c-box_hl .btn-common:hover {
  opacity: .9;
  box-shadow: 0 0 0
}
.btn-common.-search {
  border: none;
  background: #555;
  border-radius: 2px;
  font-size: 1.2rem;
  padding: 8px 10px
}
.btn-common.-wide {
  border: 1px solid #003b87;
  color: #003b87;
  background: none;
  border-radius: 2px;
  font-size: 1.4rem;
  line-height: 1.2;
  width: 100%;
  padding: 15px 15px;
  text-align: center;
  display: block;
  transition: .2s all ease
}
.btn-common.-wide:hover {
  border: 1px solid #003b87;
  color: #fff;
  background: #003b87
}
.btn-common.-wide span.ico {
  text-decoration: none;
  padding-right: 20px !important
}
.btn-common.-wide:hover .ico::after {
  border-color: #fff
}
@media only screen and (min-width:901px) {
  .btn-common.-wide {
    font-size: 1.6rem
  }
  .btn-common {
    font-size: 1.2rem
  }
}
.btn-common.-search[disabled=""] {
  display: none
}
.btn-common.-large {
  padding: 15px 15px;
  width: 280px;
  border-radius: 3px;
  font-size: 1.6rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .2);
  text-align: center
}
.btn-common .-arrow {
  padding-right: 10px
}
.btn-common .-arrow::after {
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  right: 0;
  top: calc(50% - 2px)
}
.p-list_building {
  border-top: 2px solid #f4f4f6;
  margin-top: 20px
}
.c-building_item {
  border-bottom: 2px solid #f4f4f6;
  font-size: 1.4rem
}
.c-building_item img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block
}
.c-building_item p {
  margin-top: 10px;
  text-align: center
}
.c-building_item a {
  display: block;
  padding: 20px 20px 20px 0;
  color: #3f80d4;
  text-decoration: underline
}
.c-building_item a:hover {
  text-decoration: none
}
@media only screen and (min-width:901px) {
  .p-list_building {
    margin-top: 25px
  }
  .c-building_item {
    font-size: 1.2rem
  }
  .c-building_item p {
    text-align: left
  }
  .c-building_item a {
    padding: 10px 20px 10px 0
  }
  .c-building_item a img {
    transition: .2s all ease
  }
  .c-building_item a:hover img {
    opacity: .7
  }
}
.p-nav_select-district {
  width: 56px;
  position: relative;
  top: 0
}
.p-nav_select-district .btn-close {
  right: -48px;
  top: 10px
}
.l-main.-map_search .l-crumb {
  display: none
}
.btn-select_district {
  color: #fff;
  background: none;
  border: none;
  border-radius: 3px
}
.btn-select_district span {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 56px;
  margin: 0 auto;
  font-size: 1.7rem;
  letter-spacing: .15em;
  padding: 20px 0
}
.btn-select_district span.ico::before {
  content: '';
  display: block;
  width: 100%;
  height: 28px;
  background: url(/common/img/ico_district.png) 50% 0 no-repeat;
  background-size: contain;
  margin-bottom: 10px
}
.btn-select_district span.ico::after {
  content: '';
  display: block;
  width: 100%;
  height: 15px;
  background: url(/common/img/ico_arrow_right.svg) 50% 0 no-repeat;
  background-size: contain;
  margin-top: 10px
}
.btn-select_district.-active {
  background: #3f80d4;
  border-radius: 3px 0 0 3px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .2)
}
.btn-select_district.-active span.ico::after {
  transform: rotate(180deg)
}
.p-list_select-district {
  position: absolute;
  left: 56px;
  top: 0;
  background: #fff;
  border-radius: 0 3px 3px 3px;
  border: 2px solid #3f80d4;
  width: 275px;
  box-shadow: 3px 5px 8px rgba(0, 0, 0, .15);
  display: none
}
.btn-select_district.-active + .p-list_select-district {
  display: block
}
.p-list_select-district.l-modal {
  background: #fff;
  border: none;
  display: none;
  z-index: 1010
}
.p-list_select-district.l-modal .inner {
  padding: 0
}
.p-list_select-district.l-modal .c-text {
  padding: 15px 60px 15px 20px;
  font-size: 1.5rem;
  border-bottom: 1px solid #ccc
}
.p-list_select-district.l-modal .p-list_district {
  font-size: 1.6rem;
  padding: 0 15px
}
.p-list_select-district.l-modal a {
  padding: 16px 10px 16px 40px
}
.p-list_select-district.l-modal a.-active::before {
  left: 20px
}
.p-list_select-district.l-modal .btn-close {
  top: 6px
}
.p-box_district-sp {
  align-items: center;
  width: 100%;
  margin-top: 0;
  justify-content: space-between
}
@media only screen and (min-width:901px) {
  .p-box_district-sp {
    display: none
  }
}
.p-box_district-sp .c-cox_prefectures {
  padding: 0 0 10px;
  background: none;
  margin: 0
}
.p-box_district-sp .c-cox_prefectures strong {
  font-size: 1.8rem;
  padding-left: 0;
  color: #003b87
}
.p-box_district-sp .-btns {
  display: flex;
  width: 100%;
  justify-content: space-between
}
.p-box_district-sp .-btns button {
  width: 49%
}
.btn-select_district.-sp_view {
  background: #3f80d4;
  font-size: 1.2rem;
  letter-spacing: 0;
  padding: 12px 5px 11px;
  border-radius: 2px;
  box-shadow: 0 1px 0 rgb(0 0 0 / 10%)
}
.p-list_select-district .inner {
  padding: 20px;
  display: flex;
  flex-direction: column;
  height: 100%
}
.p-list_select-district .c-text {
  font-size: 1.3rem;
  line-height: 1.4
}
.c-cox_prefectures {
  background: #f0f3f8;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 5px;
  margin-top: 20px;
  border-radius: 3px 3px 0 0
}
.c-cox_prefectures strong {
  font-size: 1.4rem;
  padding-left: 10px
}
.c-box_scroll {
  overflow-y: auto
}
.c-box_scroll::-webkit-scrollbar {
  width: 8px
}
.c-box_scroll::-webkit-scrollbar-track {
  margin: 2px 0;
  background: #fff;
  border-radius: 5px
}
.c-box_scroll::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #2e3b4c
}
.p-list_district {
  font-size: 1.3rem;
  line-height: 1
}
.p-list_district a {
  display: block;
  text-decoration: none;
  padding: 12px 10px 12px 25px;
  position: relative
}
.p-list_district a:hover {
  color: #3f80d4
}
.p-list_district a.-active::before {
  content: '';
  display: block;
  position: absolute;
  top: calc(50% - 4.5px);
  left: 10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4.5px 0 4.5px 4px;
  border-color: transparent transparent transparent #3f80d4
}
.p-list_district a.-active {
  color: #3f80d4;
  font-weight: 700
}
.p-list_district li {
  border-bottom: 1px solid #eff1f5
}
.btn-property_all {
  position: absolute;
  z-index: 10;
  display: block;
  border: 2px solid #3f80d4;
  background: #fff;
  color: #3f80d4;
  padding: 10px 30px;
  border-radius: 30px;
  text-decoration: none;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 1.3rem;
  box-shadow: -1px 1px 3px rgba(0, 0, 0, .2);
  white-space: nowrap
}
.btn-property_all .ico {
  background: url(/common/img/ico_list.svg) 0 50% no-repeat;
  background-size: contain;
  padding-left: 30px
}
@media only screen and (min-width:901px) {
  .btn-property_all {
    position: fixed;
    border-bottom: none;
    padding: 12px 40px;
    border-radius: 5px 5px 0 0;
    bottom: 0;
    font-size: 1.4rem;
    transition: .2s all
  }
  .btn-property_all:hover {
    background: #3f80d4;
    color: #fff;
    box-shadow: -1px 1px 5px rgba(0, 0, 0, .5)
  }
  .btn-property_all:hover .ico {
    background: url(/common/img/ico_list_w.svg) 0 50% no-repeat
  }
}
.p-mappin {
  width: 48px;
  height: 48px;
  position: absolute;
  z-index: 2;
  cursor: pointer
}
.p-mappin .ico {
  display: block;
  background: #000;
  width: 100%;
  height: 100%;
  padding: 10px;
  border-radius: 50%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .5);
  transition: .2s all ease
}
.p-mappin:hover .ico {
  box-shadow: 0 2px 8px rgba(0, 0, 0, .7)
}
.p-mappin .num {
  width: 20px;
  height: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  font-size: 1.1rem;
  font-weight: bolder;
  border-radius: 50%;
  position: absolute;
  right: -7px;
  top: -7px;
  z-index: 2;
  border: 1px solid #000
}
.p-mappin .num:empty {
  display: none
}
.p-mappin .ico::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%
}
@media only screen and (min-width:901px) {
  .p-mappin {
    width: 52px;
    height: 52px
  }
  .p-mappin .num {
    width: 22px;
    height: 22px;
    font-size: 1.3rem
  }
}
.p-mappin.-house {
  top: 50%;
  left: 50%;
  margin: -120px 0 0 50px
}
.p-mappin.-house .num {
  border-color: #00377d
}
.p-mappin.-house .ico {
  background: #00377d
}
.p-mappin.-house .ico::before {
  background: url(/common/img/ico_mappin01.png) 50% 50% no-repeat;
  background-size: cover
}
.p-mappin.-construction {
  top: 50%;
  left: 50%;
  margin: -50px 0 0 -150px
}
.p-mappin.-construction .num {
  border-color: #00377d;
  color: #00377d
}
.p-mappin.-construction .ico {
  background: #00377d
}
.p-mappin.-construction .ico::before {
  background: url(/common/img/ico_mappin02.png) 50% 50% no-repeat;
  background-size: cover
}
.p-mappin.-land {
  top: 50%;
  left: 50%;
  margin: 60px 0 0 60px
}
.p-mappin.-land .num {
  border-color: #008086
}
.p-mappin.-land .ico {
  background: #008086
}
.p-mappin.-land .ico::before {
  background: url(/common/img/ico_mappin03.png) 50% 50% no-repeat;
  background-size: cover
}
.p-list_icon-info {
  display: none
}
@media only screen and (min-width:901px) {
  .p-list_icon-info .p-mappin {
    width: 30px;
    height: 30px;
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
    margin: 0 auto !important;
    pointer-events: none
  }
  .p-list_icon-info .p-mappin .ico {
    padding: 6px
  }
  .p-list_icon-info {
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    position: relative;
    top: -10px;
    padding-left: 20px;
    margin-top: 0 !important
  }
  .p-list_icon-info li {
    margin-right: 10px;
    white-space: nowrap;
    text-align: center
  }
}
.l-overlay {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000;
  background: rgba(0, 0, 0, .5);
  width: 100%;
  height: 100%;
  display: none
}
.l-modal {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1100;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  background: rgba(0, 0, 0, .5);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  display: none
}
.l-modal.-show {
  display: flex
}
.l-modal .inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  background: #fff;
  position: relative
}
.mdl-composite-select .c-modal_main {
  height: calc(100% - 52px)
}
@media only screen and (min-width:701px) {
  .l-modal {
    align-items: center
  }
  .l-modal .inner {
    box-shadow: 3px 5px 15px rgba(0, 0, 0, .3);
    width: 90%;
    max-height: 85vh !important;
    max-width: 600px;
    border-radius: 8px
  }
  .mdl-composite-select .inner {
    height: 85vh;
    max-width: 800px
  }
}
.mdl-composite-select .c-box_button {
  position: absolute;
  padding: 15px 20px;
  background: rgba(255, 255, 255, .8);
  z-index: 10;
  bottom: 0;
  width: 100%;
  box-shadow: 0 -2px 2px rgba(0, 0, 0, .2);
  transform: scale(1, 0);
  transition: .2s transform;
  transform-origin: left bottom
}
.mdl-composite-select .c-box_button.-show {
  transform: scale(1, 1);
  transform-origin: left bottom
}
.mdl-composite-select .c-box_button .btn-cv_common.-search {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 400px
}
.p-list_select-common {
  font-size: 1.5rem;
  white-space: nowrap
}
.p-list_select-common li {
  position: relative
}
.p-list_select-common .btn-check {
  padding: 15px 20px;
  display: flex;
  border-bottom: 1px solid #ced6e8
}
.composite-select_item:not(.-checked) .p-list_select-common .btn-check:not(.-disable):not(:disabled)::after {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-top: 1px solid #003b87;
  border-right: 1px solid #003b87;
  transform: rotate(45deg);
  position: absolute;
  right: 25px;
  top: calc(50% - 4px)
}
.c-select_item .p-list_select-common .btn-check:not(.-disable):not(:disabled)::after {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #003b87;
  border-right: 2px solid #003b87;
  transform: rotate(45deg);
  position: absolute;
  right: 25px;
  top: calc(50% - 3px)
}
.c-select_item .p-list_select-common .btn-check.-search:not(.-disable):not(:disabled)::after {
  background: url(/common/img/ico_search.svg) 50% 50% no-repeat;
  width: 20px;
  height: 20px;
  border: none;
  transform: rotate(0);
  position: absolute;
  right: 15px;
  top: calc(50% - 10px)
}
.p-list_select-common .btn-check:disabled {
  color: #ced6e8;
  pointer-events: none
}
@media only screen and (max-width:900px) {
  .p-list_select-common .btn-check:disabled {
    display: none
  }
}
.p-list_select-common .btn-check.-checked {
  background: #eef
}
.p-box_composite-select {
  display: flex;
  width: 100%;
  height: 100%
}
.composite-select_item {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
  transition: .2s transform;
  transform: scale(1, 1);
  transform-origin: right top;
  padding-bottom: 60px
}
.composite-select_item::-webkit-scrollbar, .composite-select_item div::-webkit-scrollbar {
  width: 8px
}
.composite-select_item::-webkit-scrollbar-track, .composite-select_item div::-webkit-scrollbar-track {
  margin: 4px 0;
  background: #fff;
  border-radius: 0
}
.composite-select_item::-webkit-scrollbar-thumb, .composite-select_item div::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #4d5e75;
  transition: .2s all ease
}
.composite-select_item::-webkit-scrollbar-thumb:hover, .composite-select_item div::-webkit-scrollbar-thumb:hover {
  background: #2e3b4c
}
* + .composite-select_item {
  width: 0;
  transform: scale(0, 1);
  transform-origin: left top
}
.composite-select_item.-checked {
  width: 2% !important;
  min-width: 5px
}
.composite-select_item.-checked + .composite-select_item {
  transform: scale(1, 1);
  transform-origin: right top;
  width: 100%
}
.composite-select_item.-checked::before {
  content: '';
  display: block;
  background: rgba(0, 0, 0, .1);
  top: 0;
  left: 0;
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: 1
}
* + .composite-select_item {
  z-index: 2;
  box-shadow: 0 0 10px rgba(0, 0, 0, .4)
}
.composite-select_item.-lines {
  display: flex;
  overflow: initial
}
.composite-select_item.-lines > div {
  width: 50%;
  overflow-y: auto
}
.composite-select_item.-lines > div:last-of-type {
  border-left: 1px solid #ced6e8;
  background: #f0f3f8
}
.row-stations .p-toggle_box {
  display: none
}
.row-stations .p-toggle_box.-show {
  display: block
}
.row-stations .-empty {
  padding: 20px;
  font-size: 1.5rem;
  line-height: 1.4
}
.row-stations *.-show + .-empty {
  display: none
}
.composite-select_item .c-toggle-parent > .ico {
  margin-right: 5px
}
@media only screen and (min-width:701px) {
  .composite-select_item.-checked {
    width: 16% !important;
    min-width: 140px
  }
}
.btn-prev {
  width: 48px;
  height: 48px;
  padding: 14px;
  position: absolute;
  top: 2px;
  left: 0;
  background: none;
  border: none;
  box-sizing: border-box
}
.btn-prev:disabled {
  opacity: 0;
  pointer-events: none
}
.btn-prev::after {
  content: '';
  display: block;
  width: 95%;
  height: 95%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  background: rgba(255, 255, 255, .7);
  border-radius: 50%;
  transform: scale(0)
}
.btn-prev:hover::after {
  transform: scale(1)
}
.btn-prev .ico {
  display: block;
  width: 100%;
  height: 100%;
  background: url(/common/img/ico_arrow_right.svg) 50% 50% no-repeat;
  ;
  background-size: cover;
  transform: scale(-1, 1)
}
.btn-prev.-white .ico {
  background: url(/common/img/ico_arrow_right.svg) 50% 50% no-repeat;
  transform: scale(-1, 1)
}
.mdl-composite-select .p-toggle_box.-area, .mdl-composite-select .p-toggle_box.-line {
  border: none;
  border-radius: 0
}
.mdl-composite-select .p-toggle_box .c-toggle-parent {
  padding: 0;
  border-bottom: 1px solid #ced6e8;
  font-size: 1.5rem
}
.mdl-composite-select .p-checkbox.-parent {
  padding: 15px 20px
}
.mdl-composite-select .p-toggle_box .c-toggle-child {
  padding: 0
}
.mdl-composite-select .p-toggle_box .c-toggle-child .p-checkbox {
  display: block;
  font-size: 1.5rem;
  padding: 16px 20px;
  border-bottom: 1px solid #ced6e8
}
.mdl-panorama {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1100;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, .5);
  display: none
}
.mdl-panorama.-show {
  display: flex
}
.mdl-panorama .inner {
  width: 90%;
  max-width: none;
  height: 85vh;
  padding: 5px;
  background: #495058;
  border-radius: 5px
}
.mdl-panorama .btn-close {
  position: absolute;
  right: -48px !important;
  top: 6px
}
.frm-panorama {
  height: 100%;
  width: 100%;
  display: block;
  border: none
}
.l-modal .c-box_hl {
  padding: 16px 30px 16px 55px;
  margin-bottom: 0;
  background: #003b87;
  color: #fff
}
.l-modal .c-modal_main {
  padding: 0
}
.hl-modal {
  font-size: 1.6rem
}
@media only screen and (min-width:701px) {
  .l-modal .c-box_hl {
    border-radius: 8px 8px 0 0
  }
  .l-modal .c-modal_main {
    border-radius: 0 0 8px 8px
  }
  .hl-modal {
    font-size: 1.8rem
  }
}
.mdl-list_prefectures {
  border: 1px solid #003b87
}
.l-modal .btn-close {
  right: 4px;
  top: 3px
}
.mdl-recommend_mypage {
  overflow-y: auto
}
.mdl-recommend_mypage .inner {
  background: none;
  box-shadow: none;
  text-align: center;
  color: #fff
}
.mdl-recommend_mypage h2 {
  font-size: 2.8rem;
  line-height: 1.6;
  margin-bottom: 25px
}
.mdl-recommend_mypage .hl-sub {
  font-size: 1.8rem;
  margin-bottom: 30px;
  font-weight: 700
}
.mdl-recommend_mypage .c-box_img {
  margin: 25px auto 30px
}
.mdl-recommend_mypage .c-box_img img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto
}
.mdl-recommend_mypage .c-box_img p {
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 15px
}
.mdl-recommend_mypage .p-list_btn {
  display: flex;
  justify-content: center;
  flex-direction: row-reverse;
  margin-bottom: 40px
}
.mdl-recommend_mypage .p-list_btn li {
  margin: 0 10px
}
.btn-common.-radius.-register {
  background: #ffc941;
  color: #000;
  font-weight: 700;
  font-size: 1.6rem
}
.btn-common.-radius.-close {
  border: 1px solid #fff;
  color: #fff;
  background: none;
  font-weight: 700;
  font-size: 1.6rem;
  box-shadow: none
}
.btn-common.-radius.-register:hover {
  background: #ffb43d
}
.btn-common.-radius.-close:hover {
  background: rgba(0, 0, 0, .2)
}
@media only screen and (max-width:600px) {
  .mdl-recommend_mypage .inner {
    width: 90vw;
    height: 80vh;
    top: 10vh
  }
  .mdl-recommend_mypage h2 {
    font-size: 2.2rem;
    line-height: 1.6;
    margin-bottom: 20px
  }
  .mdl-recommend_mypage .hl-sub {
    font-size: 1.5rem;
    margin-bottom: 30px
  }
  .mdl-recommend_mypage .c-box_img {
    margin: 25px auto 30px
  }
  .mdl-recommend_mypage .c-box_img p {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-top: 15px
  }
  .mdl-recommend_mypage .p-list_btn {
    flex-direction: column;
    margin-bottom: 40px
  }
  .mdl-recommend_mypage .p-list_btn li {
    margin: 0 10px 15px
  }
  .btn-common.-radius {
    width: 90%
  }
  .btn-common.-radius.-register {
    font-size: 1.6rem
  }
}
.l-mv_root {
  max-height: 80vh;
  overflow: hidden;
  position: relative;
  z-index: 5;
  box-shadow: 0 10px 40px rgba(0, 0, 0, .15);
  margin-left: 3vw
}
.l-mv_root img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover
}
@media only screen and (min-width:751px) {
  .l-mv_root {
    max-height: 75vh;
    margin-left: 8vw
  }
}
.hl-concept {
  text-align: center;
  margin-bottom: 20px
}
.hl-concept .-img {
  display: inline-flex;
  padding: 20px;
  background: #003b87;
  width: 100px;
  height: 100px;
  align-items: center
}
.hl-concept .-img img {
  width: 100%;
  height: auto
}
.hl-concept .-label {
  display: block;
  width: 100%;
  height: auto;
  color: #003b87;
  font-size: 1.8rem;
  font-weight: 400
}
@media only screen and (min-width:901px) {
  .hl-concept .-img {
    width: 120px;
    height: 120px
  }
  .hl-concept .-label {
    display: block;
    width: 100%;
    height: auto;
    color: #003b87;
    font-size: 1.8rem;
    font-weight: 400
  }
}
.hl-root {
  font-size: clamp(1.8rem, 2.7vw, 2.8rem);
  line-height: 1.4;
  text-align: center;
  margin-bottom: 2rem
}
.hl-root::after {
  content: "";
  display: block;
  width: 36px;
  height: 2px;
  background: #f6ac19;
  margin: 15px auto 0
}
.hl-root.-blue::after {
  background: #003b87
}
.hl-root .ico.-blooming {
  background: url(/common/img/ico_blooming.jpg) 0 50% no-repeat;
  background-size: auto 30px;
  padding: 20px 0 20px 50px;
  color: #003b87
}
@media only screen and (min-width:901px) {
  .hl-root {
    font-size: 2.8rem;
    letter-spacing: .05em;
    margin-bottom: 3rem
  }
  .hl-root::after {
    margin: 20px auto 0
  }
  .hl-root .ico.-blooming {
    background-size: auto;
    padding: 20px 0 20px 70px
  }
}
.section {
  margin: 40px auto 0;
  padding: 20px 0
}
.section > .inner {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto
}
@media only screen and (min-width:901px) {
  .section {
    padding: 40px 0 80px;
    margin: 40px auto 0
  }
  .sec-article {
    padding: 40px 0 0;
  }
  .sec-special {
    padding: 40px 0 0;
    margin: 40px auto 0
  }
  .section > .inner {
    width: 80%;
    margin: 0 auto
  }
}
.p-list_article {
  margin: 0;
  max-width: 1000px
}
.sec-topics {
  margin-top: 0;
  padding-bottom: 0
}
.sec-topics .p-list_article {
  margin: 0 auto 20px
}
.p-list_article li {
  border-bottom: 1px solid #eaedf7
}
.c-article_item {
  font-size: 1.4rem
}
.c-article_item > a, .c-article_item > span {
  display: block;
  width: 100%;
  padding: 15px 0;
  text-decoration: none
}
.c-article_item > a {
  padding-right: 30px;
  position: relative
}
.c-article_item > a::after {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #2e3b4c;
  border-right: 2px solid #2e3b4c;
  position: absolute;
  right: 5px;
  transform: rotate(45deg) translateY(-50%);
  top: 50%
}
.c-article_item time {
  display: block;
  letter-spacing: .02em;
  margin-bottom: 5px;
  color: #999
}
.sec-topics .c-article_item > a, .sec-topics .c-article_item > span {
  display: flex;
  flex-direction: column;
  line-height: 1.4;
  transition: .2s all ease
}
.sec-topics .c-article_item > a:hover span {
  text-decoration: underline
}
.sec-topics .c-article_item time {
  width: 100%
}
@media only screen and (min-width:901px) {
  .c-article_item {
    font-size: 1.5rem
  }
  .c-article_item > a, .c-article_item > span {
    display: block;
    width: 100%;
    padding: 25px 0;
    text-decoration: none
  }
  .sec-topics .c-article_item > a, .sec-topics .c-article_item > span {
    flex-direction: row
  }
  .sec-topics .c-article_item time {
    width: 9em;
    margin-bottom: 0
  }
  .sec-topics .c-article_item span {
    width: calc(100% - 9em);
    padding: 0 25px 0 15px
  }
}
.w-submain {
  z-index: 10;
  position: relative;
  background: #fff;
  padding-bottom: 60px
}
@media only screen and (min-width:901px) {
  .w-submain {
    padding-bottom: 0
  }
}
.sec-concept {
  background: url(../../img/bg_concept.jpg) 50% 50% no-repeat;
  background-attachment: fixed;
  padding: 160px 0;
  margin: 120px auto 80px;
  position: relative;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd
}
.sec-concept > * {
  position: relative;
  z-index: 2
}
.sec-concept::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  opacity: .9;
  width: 100%;
  height: 100%;
  background-image: -webkit-linear-gradient(bottom, rgb(150, 251, 196) 0%, rgb(249, 245, 134) 100%);
  background-image: -o-linear-gradient(bottom, rgb(150, 251, 196) 0%, rgb(249, 245, 134) 100%);
  background-image: linear-gradient(to top, rgb(150, 251, 196) 0%, rgb(249, 245, 134) 100%);
  mix-blend-mode: screen;
  z-index: 1
}
.sec-concept::after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .1);
  z-index: 0
}
.sec-concept .hl-root {
  letter-spacing: .25em
}
.sec-concept .c-box_text {
  text-align: center
}
.sec-concept .c-text {
  font-size: 1.4rem;
  line-height: 2;
  text-align: center;
  margin-bottom: 40px
}
.sec-concept .p-box_btn {
  justify-content: center;
  margin-top: 30px
}
.btn-common.-radius {
  border-radius: 50px;
  background: rgba(0, 59, 132, .95);
  padding: 10px 45px;
  font-size: 1.4rem;
  line-height: 1.5;
  color: #fff;
  box-shadow: 0 2px 0 rgba(0, 0, 0, .2);
  transition: .2s all ease
}
.btn-common.-radius b {
  font-size: 1.8rem
}
.btn-common.-radius:hover {
  top: 2px;
  background: #2e3b4c;
  box-shadow: 0 0 0 rgba(0, 0, 0, .2)
}
.sec-feature .inner, .sec-special .inner, .sec-article .inner {
  padding: 0;
  position: relative;
  width: auto
}
.sec-article .inner {
  padding-bottom: 40px
}
.sec-special {
  margin: 0 auto;
}
@media only screen and (max-width:750px) {
  .sec-concept {
    padding: 0;
    margin: 0 auto 60px;
    background-size: cover;
    background-attachment: initial
  }
  .sec-concept .c-box_text {
    padding: 80px 10%
  }
  .sec-concept .c-text {
    margin-bottom: 20px
  }
  .sec-concept .p-box_btn {
    display: inline-flex;
    margin: 0
  }
  .sec-concept .btn-common.-radius {
    padding: 10px 35px
  }
  .sec-concept .btn-common.-radius b {
    font-size: 1.5rem
  }
}
@media only screen and (max-width:480px) {
  .sec-concept .p-box_btn .btn-common.-radius {
    width: 100%
  }
}
@media only screen and (min-width:751px) {
  .sec-concept .c-box_text {
    text-align: center
  }
  .sec-concept .c-text {
    font-size: 1.6rem;
    margin-bottom: 0
  }
  .p-panel_concept {
    display: flex;
    flex-wrap: wrap;
    margin-top: 60px
  }
  .sec-feature .inner {
    padding: 0;
    position: relative;
    width: auto
  }
}
.sec-interview {
  padding: 0
}
.w-main.-search_agent {
  margin-top: 0
}
.sec-interview .inner {
  padding: 40px 5%;
  position: relative;
  width: auto
}
.sec-interview .inner::after {
  content: '';
  background: #f2f6fc;
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  z-index: -1
}
.sec-interview .inner::after {
  width: 116%;
  right: -8%
}
.p-list_interview {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px
}
.c-interview_item {
  max-width: 380px
}
@media only screen and (max-width:700px) {
  .c-interview_item {
    max-width: none;
    margin: 5px 0
  }
}
@media only screen and (min-width:701px) {
  .sec-interview .inner {
    padding: 60px 5% 40px
  }
  .sec-interview .inner::after {
    content: '';
    background: #f2f6fc;
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    z-index: -1
  }
  .sec-interview .inner::after {
    width: 116%;
    right: -8%
  }
  .p-list_interview {
    display: flex;
    flex-wrap: nowrap;
    margin-bottom: 0
  }
  .c-interview_item {
    width: 31%
  }
}
@media only screen and (min-width:901px) {
  .sec-interview .inner {
    padding: 60px 0 40px
  }
}
.c-interview_item a {
  text-decoration: none
}
.c-interview_item .c-thumb {
  overflow: hidden;
  max-height: 228px
}
.c-interview_item .c-thumb img {
  object-fit: cover;
  object-position: 50% 0;
  height: 100%;
  width: 100%;
  display: block;
  transition: .3s all ease
}
.c-interview_item .c-text {
  font-size: 1.4rem;
  line-height: 1.4;
  width: 100%;
  height: auto;
  overflow: hidden;
  transition: .2s all ease
}
.c-name {
  font-size: 1.2rem;
  display: flex;
  align-items: center;
  margin-top: 5px
}
.c-name .-label {
  background: #003b87;
  padding: 3px;
  color: #fff;
  margin-right: 10px;
  text-align: center;
  width: 5em;
  font-size: 1rem
}
.-root .c-interview_item .c-tag {
  display: none
}
.c-interview_item a:hover .c-text {
  color: #3f80d4
}
.c-interview_item a:hover .c-thumb img {
  transform: scale(1.1)
}
@media only screen and (max-width:700px) {
  .c-interview_item {
    width: 100%
  }
  .c-interview_item a {
    display: flex;
    align-items: center;
    background: #fff
  }
  .c-interview_item .c-thumb {
    width: 35%;
    height: 100px
  }
  .c-interview_item .c-box_text {
    width: 65%;
    padding: 10px 15px
  }
  .c-interview_item .c-text {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
  }
  .sec-interview .p-box_btn.-more {
    margin-bottom: 40px
  }
}
@media only screen and (min-width:701px) {
  .c-interview_item .c-thumb {
    width: 100%;
    margin-bottom: 15px
  }
  .c-interview_item .c-thumb img {
    object-fit: cover;
    object-position: 50% 0;
    height: 100%;
    width: 100%;
    display: block
  }
  .c-interview_item .c-box_text {
    padding: 0 5px
  }
  .c-interview_item .c-text {
    font-size: 1.7rem;
    line-height: 1.5;
    height: 3em
  }
  .c-name {
    margin-top: 10px;
    font-size: 1.5rem
  }
  .c-name .-label {
    font-size: 1.2rem;
    padding: 5px;
    width: 5em
  }
  .-root .c-interview_item .c-tag {
    display: flex;
    flex-wrap: wrap;
    margin-top: 15px;
    padding-top: 10px;
    border-top: 1px solid rgba(0, 0, 0, .1);
    font-size: 1.2rem
  }
  .-root .c-interview_item .c-tag > li {
    margin: 5px
  }
  .-root .c-interview_item .c-tag > li:nth-of-type(n+8) {
    display: none
  }
  .-root .c-interview_item .c-tag > li::before {
    content: '#';
    color: #003b87;
    font-weight: 700
  }
}
.link-more {
  display: block;
  font-size: 1.4rem;
  text-decoration: none;
  transition: .2s all ease
}
.link-more:hover {
  text-decoration: underline
}
.link-more .ico {
  display: inline-flex;
  align-items: center
}
.link-more .ico::after {
  content: '';
  width: 16px;
  height: 16px;
  background: url(/common/img/ico_arrow_circle.svg) 50% 50% no-repeat;
  background-size: cover;
  margin-left: 10px
}
@media only screen and (max-width:900px) {
  .link-more {
    display: block;
    text-align: center;
    border: 1px solid #2e3b4c;
    padding: 12px;
    border-radius: 3px;
    width: 72%;
    margin: 0 auto
  }
}
@media only screen and (min-width:901px) {
  .p-box_btn.-more {
    position: absolute;
    top: -12px;
    right: 0
  }
  .sec-interview .p-box_btn.-more {
    top: 42px
  }
}
.p-list_bnr.-row2 {
  display: flex;
  flex-direction: column;
  padding: 0 0 20px
}
.p-list_bnr.-row2 .row-block a {
  display: flex;
  width: 100%;
  align-items: center
}
.p-list_bnr.-row2 .row-block .c-img {
  width: 35%;
  margin: 0
}
.p-list_bnr.-row2 .row-block .c-img img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover
}
.p-list_bnr.-row2 .row-block .c-text {
  width: 65%;
  padding-left: 20px
}
.p-list_bnr.-row2 .row-block .c-text strong {
  font-size: 1.6rem;
  display: block;
  color: #003b87
}
.p-list_bnr.-row2 .row-block .c-text p {
  display: none
}
.p-list_bnr.-row2 * + li {
  margin-top: 5px
}
.p-list_bnr.-row2 li a img {
  display: block;
  width: 100%;
  height: auto
}
@media only screen and (min-width:701px) {
  .p-list_bnr.-row2 {
    flex-direction: row;
    justify-content: space-between;
    margin-top: 50px
  }
  .p-list_bnr.-row2 .row-block a {
    display: flex;
    width: 100%;
    padding: 20px;
    background: #fff;
    border: 1px solid #c7d6ed;
    border-bottom-width: 3px;
    border-radius: 5px;
    align-items: center;
    transition: .3s all ease
  }
  .p-list_bnr.-row2 .row-block a:hover {
    border-bottom-width: 1px;
    background: rgba(255, 255, 255, .5)
  }
  .p-list_bnr.-row2 .row-block .c-img {
    width: 35%;
    margin: 0
  }
  .p-list_bnr.-row2 .row-block .c-text {
    width: 65%;
    padding-left: 20px
  }
  .p-list_bnr.-row2 li {
    width: calc((100% - 10px) / 2)
  }
  .p-list_bnr.-row2 * + li {
    margin-top: 0
  }
  .p-list_bnr.-row2 .row-block .c-text strong {
    font-size: 1.6rem;
    margin-bottom: 15px
  }
  .p-list_bnr.-row2 .row-block .c-text p {
    font-size: 1.2rem;
    line-height: 1.5;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
  }
}
.p-list_feature {
  overflow: initial !important
}
.p-list_feature .slick-prev {
  left: -50px
}
.p-list_feature .slick-next {
  right: -50px
}
.p-list_feature .slick-dots, .p-list_feature .slick-dots li {
  display: none
}
@media only screen and (max-width:900px) {
  .p-list_feature.slick-slider, .p-list_feature.slick-slider .slick-list {
    overflow: initial
  }
}
@media only screen and (min-width:901px) {
  .p-list_feature .slick-dots {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    bottom: -40px;
    display: flex;
    width: 70%;
    overflow: hidden;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center
  }
  .p-list_feature .slick-dots li {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 6px;
    margin: 0 0;
    padding: 0;
    cursor: pointer
  }
  .p-list_feature .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 100%;
    height: 6px;
    padding: 0;
    background: #e5e9ef;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none
  }
  .p-list_feature .slick-dots li:first-of-type button {
    border-radius: 5px 0 0 5px
  }
  .p-list_feature .slick-dots li:last-of-type button {
    border-radius: 0 5px 5px 0
  }
  .p-list_feature .slick-dots li.slick-active button {
    background: #004098
  }
  .p-list_feature .slick-dots li button:before {
    display: none
  }
}
.sec-article .p-list_recommend .slick-prev, .sec-article .p-list_recommend .slick-next, .p-list_feature .slick-prev, .p-list_feature .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  display: block;
  top: calc(50% - 40px);
  width: 36px;
  height: 36px;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  z-index: 10;
  background: none;
  border-radius: 0
}
.sec-article .p-list_recommend .slick-prev:before, .sec-article .p-list_recommend .slick-next:before, .p-list_feature .slick-prev:before, .p-list_feature .slick-next:before {
  width: 24px;
  height: 24px;
  border-top: 4px solid #2e3b4c;
  border-right: 4px solid #2e3b4c
}
.c-feature_item {
  width: 25%;
  margin: 0;
  padding: 0 15px
}
.sec-article .p-list_recommend .slick-prev {
  left: -50px
}
.sec-article .p-list_recommend .slick-next {
  right: -50px
}
.c-feature_item a {
  display: block;
  text-decoration: none;
  transition: .2s all ease
}
.c-feature_item a:hover {
  opacity: .7
}
.c-feature_item .c-thumb {
  overflow: hidden
}
.c-feature_item .c-thumb img {
  object-fit: cover;
  width: 100%;
  height: auto
}
.c-feature_item .c-text {
  -webkit-line-clamp: 3;
  font-size: 1.4rem;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  padding: 0 5px;
  margin-top: 10px
}
.-search_agent .sec-search_property {
  padding: 0 0 40px
}
@media only screen and (max-width:750px) {
  .sec-search_property {
    display: none
  }
}
.sec-search_property {
  position: relative
}
.sec-search_property::after {
  content: '';
  display: block;
  background: url(/common/img/bg_blooming.jpg) 50% 50% no-repeat;
  width: 1026px;
  height: 920px;
  background-size: cover;
  position: absolute;
  right: -32%;
  top: 48%;
  transform: translate(0, -50%);
  z-index: -2
}
.sec-search_property .inner {
  width: auto;
  height: 100%
}
@media only screen and (max-width:900px) {
  .sec-search_property .inner {
    padding: 0 4%
  }
}
.p-searchmap_root {
  display: flex;
  position: relative
}
.p-searchmap_root::before {
  content: '';
  display: block;
  position: absolute;
  z-index: -1;
  width: 100%;
  height: calc(100% + 50px);
  top: -20px;
  left: -77.2%;
  background: #003c88
}
@media only screen and (min-width:751px) and (max-width:900px) {
  .p-searchmap_root::before {
    height: 105%;
    top: auto;
    bottom: 0
  }
  .-search_agent .p-searchmap_root::before {
    height: 120%
  }
}
.p-searchmap_root .row-nav {
  width: 14.82%;
  background: #003c88;
  position: relative;
  z-index: 3;
  left: 3px
}
.nav-searchmap {
  font-size: 1.5rem;
  font-weight: 700
}
.nav-searchmap li + li {
  border-top: 1px solid #81a0c5
}
.nav-searchmap li.-active, .nav-searchmap li.-active + li {
  border-color: transparent
}
.nav-searchmap span {
  color: #fff;
  display: block;
  text-align: center
}
.nav-searchmap .btn-searchmap {
  color: #fff;
  text-decoration: none;
  padding: 28px 0;
  display: block;
  border: 2px solid #003b87;
  border-right: none;
  cursor: pointer;
  transition: .2s all ease;
  border-radius: 5px 0 0 5px;
  position: relative
}
.nav-searchmap .-active .btn-searchmap {
  color: #003b87;
  background: #fff;
  position: relative
}
.nav-searchmap .btn-searchmap::before {
  content: '';
  display: block;
  background: rgba(255, 255, 255, .1);
  width: 86px;
  height: 90px;
  border-radius: 3px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: .2s all ease;
  z-index: 0;
  opacity: 0
}
.nav-searchmap .-active .btn-searchmap::after {
  content: '';
  display: block;
  background: #fff;
  width: 10px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -6px;
  transition: .2s all ease
}
.nav-searchmap .btn-searchmap .ico {
  height: 35px;
  margin-bottom: 5px
}
.nav-searchmap .btn-searchmap .ico img {
  height: 35px;
  width: auto;
  transition: .2s all ease
}
.nav-searchmap .-active .btn-searchmap img {
  opacity: 0
}
.nav-searchmap .btn-searchmap .ico.-area {
  background: url(/common/img/ico_property01_b.png) 50% 50% no-repeat;
  background-size: contain
}
.nav-searchmap .btn-searchmap .ico.-map {
  background: url(/common/img/ico_property02_b.png) 50% 50% no-repeat;
  background-size: contain
}
.nav-searchmap .btn-searchmap .ico.-line {
  background: url(/common/img/ico_property03_b.png) 50% 50% no-repeat;
  background-size: contain
}
.nav-searchmap a {
  color: #fff;
  text-decoration: none;
  padding: 25px 10px 25px 20px;
  display: block;
  transition: .2s all ease
}
.nav-searchmap li:not(.-active) .btn-searchmap:hover::before {
  opacity: 1
}
.nav-searchmap a:hover {
  background: rgba(255, 255, 255, .1)
}
.p-searchmap_root .row-map_stage {
  width: 85.18%;
  padding: 26px 0;
  border-radius: 5px;
  border: 2px solid #003b87;
  background: #fff url(/common/img/bg_area_all.png) 50% 50% no-repeat;
  box-shadow: 0 5px 20px rgba(0, 0, 0, .1);
  min-height: 551px
}
.p-list_onmap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  height: 100%
}
.p-onmap_item {
  background: rgba(240, 240, 247, .5);
  border: 2px solid transparent;
  padding: 18px 3.5%;
  border-radius: 5px;
  width: 25%;
  margin: 8px 2.5%
}
.p-onmap_item:nth-of-type(1) {
  order: 3
}
.p-onmap_item:nth-of-type(2) {
  order: 6
}
.p-onmap_item:nth-of-type(3) {
  order: 5;
  margin-left: 8%
}
.p-onmap_item:nth-of-type(4) {
  order: 2;
  margin-right: 8%
}
.p-onmap_item:nth-of-type(5) {
  order: 1
}
.p-onmap_item:nth-of-type(6) {
  order: 4
}
.-tohoku .p-onmap_item:nth-of-type(1), .-kanto .p-onmap_item:nth-of-type(2), .-chubu .p-onmap_item:nth-of-type(3), .-kansai .p-onmap_item:nth-of-type(4), .-chugokushikoku .p-onmap_item:nth-of-type(5), .-kyushu .p-onmap_item:nth-of-type(6) {
  border-color: #f6ac19;
  background: rgba(255, 233, 190, .5);
  box-shadow: 0 2px 5px rgba(250, 220, 232, .5)
}
@media only screen and (max-width:900px) {
  .p-onmap_item {
    width: 30%;
    margin: 5px .5%
  }
  .p-onmap_item:nth-of-type(3) {
    margin-left: .5%
  }
  .p-onmap_item:nth-of-type(4) {
    margin-right: .5%
  }
}
.hl-area {
  color: #2e3b4c;
  font-size: 1.7rem;
  text-align: center
}
.hl-area button {
  color: #003b87;
  background: none;
  border: none;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: .2s all ease
}
.hl-area button:hover {
  color: #3f80d4
}
.hl-area button::after {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #496171;
  border-right: 2px solid #496171;
  transform: rotate(45deg);
  margin-left: 10px
}
.is-map .hl-area button {
  pointer-events: none;
  color: #2e3b4c
}
.is-map .hl-area button::after {
  display: none
}
.c-list_prefecture {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin-top: 10px
}
.c-list_prefecture li {
  width: calc((100% - 3px) /2);
  margin: 2px 0
}
.c-list_prefecture button {
  display: block;
  padding: 6px 8px;
  border-radius: 3px;
  background: #fff;
  width: 100%;
  border: 1px solid #257aac;
  color: #2e3b4c;
  white-space: nowrap;
  font-size: 1.3rem;
  font-weight: bolder;
  position: relative;
  text-indent: -1em;
  transition: .2s all ease
}
.c-list_prefecture button:hover {
  color: #257aac
}
.c-list_prefecture button:not([disabled=""])::after {
  content: '';
  display: block;
  width: 3px;
  height: 3px;
  border-top: 1px solid #496171;
  border-right: 1px solid #496171;
  transform: rotate(45deg);
  margin-left: 8px;
  position: absolute;
  top: 12px;
  right: 10px
}
.c-list_prefecture button[disabled=""] {
  color: #cdced1;
  background: none;
  border: 1px solid transparent
}
@media only screen and (max-width:900px) {
  .c-list_prefecture button {
    display: block;
    text-indent: 0;
    text-align: center
  }
  .c-list_prefecture button:not([disabled=""])::after {
    display: none
  }
}
.is-line .c-list_prefecture {
  display: none
}
.is-line .p-onmap_item {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative
}
.is-line .hl-area button::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  transition: .3s all ease
}
.is-line .hl-area button:hover::before {
  background: rgba(63, 128, 212, .1)
}
.sec-recommend {
  margin-top: 0;
  padding: 60px 0 0
}
.sec-recommend.-soldout {
  padding-top: 30px;
  border-top: 1px solid #ddd;
  margin-top: 60px;
  position: relative
}
.sec-recommend.-soldout::before {
  content: '';
  display: block;
  height: 1px;
  width: 100%;
  background: #fff;
  position: absolute;
  top: 1px
}
.sec-recommend .inner {
  width: auto;
  position: relative
}
@media only screen and (min-width:901px) {
  * + .sec-recommend {
    padding-top: 20px
  }
  .p-list_recommend.slick-slider {
    margin-bottom: 0 !important;
    padding-bottom: 50px
  }
}
.sec-recommend.-soldout .hl-root {
  font-size: 2.4rem;
  letter-spacing: 0
}
@media only screen and (max-width:750px) {
  .sec-recommend.-soldout .hl-root {
    font-size: 2rem;
    letter-spacing: 0
  }
}
.p-list_recommend.slick-slider {
  margin-bottom: 0 !important
}
.p-list_recommend .slick-list {
  overflow: unset
}
.p-newpropety_list {
  display: flex;
  flex-wrap: wrap
}
.c-recommend_item {
  margin: 0 10px 20px
}
.p-list_recommend.-slider .c-recommend_item {
  max-width: 250px
}
@media only screen and (max-width:900px) {
  .p-list_recommend.-slider .c-recommend_item {
    max-width: 250px
  }
}
.c-recommend_item .c-thumb {
  width: 100%;
    aspect-ratio: 4/3;
  overflow: hidden;
  position: relative
}
.c-recommend_item .c-thumb img {
  width: 100%;
  height: 100%;
  display: block;
    object-fit: cover;
}
.p-newpropety_list .c-recommend_item {
  width: 100%;
  max-width: 360px;
  margin: 0 auto 20px
}
@media only screen and (min-width:481px) and (max-width:800px) {
  .p-newpropety_list .c-recommend_item {
    width: 48%;
    max-width: none;
    margin: 0 0 40px
  }
  .p-newpropety_list .c-recommend_item:not(:nth-of-type(2n+1)) {
    margin: 0 0 40px 4%
  }
}
@media only screen and (min-width:801px) and (max-width:1000px) {
  .p-newpropety_list .c-recommend_item {
    width: 31.2%;
    max-width: none;
    margin: 0 0 40px
  }
  .p-newpropety_list .c-recommend_item:not(:nth-of-type(3n+1)) {
    margin: 0 0 40px 3%
  }
}
@media only screen and (min-width:1001px) {
  .p-newpropety_list .c-recommend_item {
    width: 23%;
    margin: 0 0 40px
  }
  .p-newpropety_list .c-recommend_item:not(:nth-of-type(4n+1)) {
    margin: 0 0 40px 2.6%
  }
}
.p-newpropety_list .c-recommend_item .c-thumb {
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: 50% 50%
}
.p-newpropety_list .c-recommend_item .c-thumb img {
  width: 100%;
  height: 200px;
  display: block
}
.c-recommend_item a {
  display: block;
  text-decoration: none;
  color: #2e3b4c;
  border: 1px solid #e5e9ef;
  border-radius: 3px;
  padding: 15px;
  background: #fff;
  transition: .2s all ease
}
.c-recommend_item a:hover {
  border-color: #004098;
  box-shadow: 0 3px 15px rgba(0, 0, 0, .2)
}
.c-recommend_item .c-box_text {
  position: relative;
  padding: 15px 0 5px
}
.c-recommend_item .-label.-new {
  font-size: 1.2rem;
  color: #fff;
  background: #f6ac19;
  padding: 4px 15px;
  position: absolute;
  left: 0;
  top: -22px
}
.c-recommend_item .-name {
  font-size: 1.5rem;
  line-height: 1.4;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical
}
.c-recommend_item .-price {
  font-size: 1.3rem;
  margin: 10px 0
}
.c-recommend_item .-updatetime {
  font-size: 1.3rem;
  margin: 20px 0 0;
  color: #999
}
.c-recommend_item .-price b {
  font-size: 2rem;
  font-weight: 700;
  color: #dc4748;
  padding-right: 4px
}
.c-recommend_item .-access, .c-recommend_item .-price + p, .c-recommend_item .-price + p + p, .c-recommend_item .-price + p + p + p, .c-recommend_item p:last-of-type {
  font-size: 1.2rem;
  line-height: 1.4;
  padding-left: 22px;
  background: url(/common/img/ico_access.png) 0 2px no-repeat;
  background-size: 15px auto;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical
}
.-root .c-recommend_item .-price + p + p, .c-recommend_item .-price + p + p + p {
  display: none
}
@media only screen and (min-width:901px) {
  .c-recommend_item .c-box_text {}
  .c-recommend_item .-name {
    font-size: 1.6rem;
    -webkit-line-clamp: 2
  }
  .c-recommend_item .-price {
    margin: 12px 0
  }
  .c-recommend_item .-price b {
    font-size: 2.2rem
  }
}
.p-list_recommend .slick-dots, .p-list_recommend .slick-dots li {
  display: none
}
@media only screen and (min-width:901px) {
  .p-list_recommend .slick-dots {
    position: absolute;
    bottom: 25px;
    display: flex;
    justify-content: center;
    width: 40%;
    gap: 4px;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    left: 30%
  }
  .p-list_recommend .slick-dots li {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 6px;
    margin: 0;
    padding: 0;
    cursor: pointer
  }
  .p-list_recommend .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 100%;
    height: 6px;
    padding: 0;
    background: #e5e9ef;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none
  }
  .p-list_recommend .slick-dots li.slick-active button {
    background: #004098
  }
  .p-list_recommend .slick-dots li button:before {
    display: none
  }
}
.p-list_recommend .slick-prev, .p-list_recommend .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: calc(50% - 20px);
  display: block;
  width: 30px;
  height: 30px;
  padding: 0;
  border-radius: 50%;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: #004098;
  z-index: 10;
  left: 5%
}
.p-list_recommend .slick-disabled {
  background: #d3d3d3 !important
}
.p-list_recommend .slick-next {
  left: auto;
  right: 5%
}
.p-list_recommend .slick-prev:not(.slick-disabled):hover, .p-list_recommend .slick-prev:not(.slick-disabled):focus, .p-list_recommend .slick-next:not(.slick-disabled):hover, .p-list_recommend .slick-next:not(.slick-disabled):focus {
  background: #004098
}
.p-list_recommend .slick-prev:before, .p-list_recommend .slick-next:before {
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff
}
@media only screen and (max-width:640px) {
  .p-list_recommend .slick-prev, .p-list_recommend .slick-next {
    display: none !important
  }
}
@media only screen and (min-width:901px) {
  .p-list_recommend .slick-prev, .p-list_recommend .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: auto;
    bottom: 0;
    display: block;
    width: 30px;
    height: 30px;
    padding: 0;
    border-radius: 50%;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: #004098;
    z-index: 10;
    left: 25%
  }
  .p-list_recommend .slick-disabled {
    background: #d3d3d3 !important
  }
  .p-list_recommend .slick-next {
    left: auto;
    right: 25%
  }
  .p-list_recommend .slick-prev:not(.slick-disabled):hover, .p-list_recommend .slick-prev:not(.slick-disabled):focus, .p-list_recommend .slick-next:not(.slick-disabled):hover, .p-list_recommend .slick-next:not(.slick-disabled):focus {
    background: #004098
  }
  .p-list_recommend .slick-prev:before, .p-list_recommend .slick-next:before {
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff
  }
}
.p-list_flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto
}
* + .p-list_flex {
  margin-top: 30px
}
.p-list_flex img {
  width: 100%;
  height: auto;
  display: block
}
.p-list_flex.-row3 li {
  width: 100%;
  margin-bottom: 2px
}
.p-list_flex.-row5 {
  justify-content: flex-start
}
.p-list_flex.-row5 li {
  width: calc((100% - 8px)/2);
  margin: 0 0 8px 8px
}
.p-list_flex.-row5 li:nth-of-type(5n) {
  margin-right: 0
}
.p-list_bnr a {
  text-decoration: none
}
.p-list_bnr .c-img {
  display: block;
  margin-bottom: 5px
}
.p-list_bnr.-row3 .c-img {
  margin-bottom: 10px
}
.p-list_bnr .c-img img {
  width: 100%;
  height: auto;
  display: block
}
.p-list_bnr .c-caption {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  padding: 0 5px
}
.p-list_bnr.-row3 .c-caption {
  -webkit-line-clamp: 3;
  font-size: 1.35rem;
  line-height: 1.7
}
.p-list_bnr.-row3 .c-caption strong {
  color: #003b87;
  font-size: 1.6rem;
  padding-bottom: 5px;
  display: inline-block
}
.p-list_bnr.-row5 .c-caption {
  -webkit-line-clamp: 2;
  font-size: 1.2rem;
  line-height: 1.4
}
@media only screen and (max-width:600px) {
  .p-list_flex.-row3 li {
    width: 100%;
    margin-bottom: 20px
  }
  .p-list_bnr.-row3 .c-caption {
    -webkit-line-clamp: 2;
    font-size: 1.3rem;
    line-height: 1.4;
    padding: 0 5px
  }
  .p-list_flex.-row5 li {
    width: calc(50% - 2.5px);
    margin-bottom: 0;
    margin-left: 5px
  }
  .p-list_flex.-row5 li:nth-of-type(2n+1) {
    margin-left: 0
  }
  .p-list_flex.-row5 li .c-caption {
    display: none
  }
}
@media only screen and (min-width:601px) {
  .p-list_flex.-row3 li {
    width: 31%;
    margin-bottom: 30px
  }
}
@media only screen and (min-width:601px) and (max-width:900px) {
  .p-list_flex.-row5 li {
    width: calc((100% - 30px) / 4);
    margin-bottom: 20px;
    margin-left: 10px
  }
  .p-list_flex.-row5 li:nth-of-type(4n+1) {
    margin-left: 0
  }
}
@media only screen and (min-width:901px) {
  .p-list_flex.-row5 li {
    width: calc((100% - 40px) / 5);
    margin-bottom: 20px;
    margin-left: 10px
  }
  .p-list_flex.-row5 li:nth-of-type(5n+1) {
    margin-left: 0
  }
}
.box-timeline {
  position: absolute;
  z-index: 10;
  width: 90%;
  bottom: 8%;
  left: 50%;
  transform: translateX(-50%);
  max-width: 1200px
}
.list-timeline {
  display: flex;
  margin: 0 auto;
  position: relative
}
.list-timeline li {
  width: 17.67%;
  max-width: 250px;
  margin-right: 5px;
  border-top: 3px solid #222;
  opacity: .5;
  position: relative
}
.list-timeline li:last-child {
  margin-right: 0
}
.list-timeline li:before {
  content: '';
  display: block;
  width: 0;
  height: 3px;
  background: #fec21e;
  position: absolute;
  top: -3px;
  z-index: 5;
  left: 0
}
.list-timeline li:hover {
  opacity: 1;
  transition: .2s all ease
}
.timeline-item {
  cursor: pointer
}
.timeline-item .item-text {
  display: block;
  overflow: hidden;
  max-height: 3.7em
}
@media only screen and (max-width:900px) {
  .timeline-item .item-text {
    display: none
  }
}
.timeline-item.active {
  opacity: 1
}
.timeline-item.active:before {
  width: 100%;
  transition: 6.9s all linear
}
@media only screen and (min-width:901px) {
  .list-timeline {
    font-size: 1.4rem;
    color: #fff;
    font-weight: 700
  }
  .list-timeline li {
    padding-top: 14px;
    border-top: 2px solid #fff;
    line-height: 1.3
  }
  .list-timeline li:before {
    height: 3px;
    top: -2px
  }
}
.mv-panel {
  position: relative;
  padding-top: 380px
}
@media only screen and (min-width:560px) {
  .mv-panel {
    padding-top: 550px
  }
}
@media only screen and (min-width:1024px) {
  .mv-panel {
    min-height: 640px
  }
}
@media only screen and (min-width:1401px) {
  .mv-panel {
    padding-top: 38%
  }
}
.panel-item {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
  top: 0;
  opacity: 0;
  transition: .3s all ease
}
.panel-item.active {
  opacity: 1;
  z-index: 5
}
.panel-item .item-text {
  position: absolute;
  z-index: 5;
  height: 90%;
  display: flex;
  align-items: center;
  max-width: 1200px;
  width: 90%;
  left: 50%;
  transform: translateX(-50%)
}
@media only screen and (max-width:1024px) {
  .panel-item .item-text {
    align-items: flex-end
  }
}
@media only screen and (max-width:770px) {
  .text-p1 {
    padding-bottom: 0
  }
}
@media only screen and (min-width:771px) and (max-width:1024px) {
  .text-p1 {
    padding-bottom: 8rem
  }
}
@media only screen and (min-width:601px) and (max-width:1024px) {
  .text-common {
    padding-bottom: 10%
  }
}
.panel-item .item-visual {
  position: relative;
  height: 100%;
  z-index: 1
}
.panel-item:not(:nth-of-type(1)) .item-visual:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  background: rgba(0, 0, 0, .2);
  background-image: radial-gradient(#222 10%, transparent 10%);
  background-size: 20px 20px;
  opacity: .15
}
.panel-item .item-visual:after {
  content: '';
  display: block;
  background: linear-gradient(rgba(46, 59, 76, 0) 0%, rgba(46, 59, 76, .2) 100%);
  width: 100%;
  height: 40%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1
}
.panel-item .item-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 0 50%;
  display: block
}
.panel-item .item-visual video {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
  object-fit: cover
}
.index-panel_copy {
  color: #fff;
  font-weight: 700;
  font-size: 2.7rem;
  line-height: 1.3;
  letter-spacing: .03em;
  margin-bottom: 2rem;
  left: 5%;
  opacity: 0;
  position: relative;
  text-shadow: 0 0 8px rgba(0, 0, 0, .3)
}
#p1 .index-panel_copy {
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif;
  color: #fff
}
.index-panel_copy:not(.-white) .-band {
  background: linear-gradient(transparent 60%, rgba(255, 255, 255, .4) 60%)
}
.index-panel_copy.-white {
  color: #fff;
  text-shadow: 0 0 15px rgba(0, 0, 0, .3)
}
.active .index-panel_copy {
  opacity: 1;
  left: 0;
  position: relative;
  transition: .7s all ease
}
@media only screen and (max-width:600px) {
  .text-common {
    padding-top: 0;
    padding-bottom: 40px
  }
  .index-panel_copy {
    margin-bottom: 1.5rem
  }
  .index-panel_copy br {
    display: none
  }
}
@media only screen and (max-width:760px) {
  .index-panel_copy br {
    display: none
  }
  .panel-item .item-visual img {
    object-position: 35% 50%
  }
}
@media only screen and (min-width:601px) {
  .index-panel_copy {
    max-width: 500px;
    font-size: 4rem
  }
}
@media only screen and (min-width:901px) {
  .index-panel_copy {
    max-width: 750px
  }
  .text-common {
    padding-top: 0px
  }
}
@media only screen and (min-width:1024px) {
  .index-panel_copy {
    font-size: 5.5rem
  }
}
.text-p1 {
  margin-left: auto;
  margin-top: 5%
}
.p1-copy {
  color: #32312c;
  font-weight: 700;
  font-size: 3.3rem;
  line-height: 1.3;
  letter-spacing: .08em;
  text-shadow: 0 2px 10px rgba(255, 255, 255, 1)
}
.p1-copy span {
  color: #fcb714
}
.p1-copy_sub {
  color: #32312c;
  font-weight: 700;
  font-size: 1.4rem;
  letter-spacing: .05em;
  margin-top: 10px;
  padding-left: 10px
}
@media only screen and (min-width:600px) {
  .p1-copy {
    font-size: 4rem
  }
  .p1-copy_sub {
    font-size: 1.6rem
  }
}
@media only screen and (min-width:1024px) {
  .p1-copy {
    font-size: calc(4 * 1vw);
    padding-right: 50px
  }
  .p1-copy_sub {
    margin-top: 20px;
    font-size: calc(1.6 * 1vw)
  }
}
.hl-content_large.-noline::after {
  display: none
}
.p-box_title.-details {
  display: flex;
  align-items: flex-start;
}
.p-box_title.-details .hl-content_large {
  width: calc(100% - 90px);
  margin-bottom: 0;
  padding-left: 15px;
  line-height: 1.2
}
@media only screen and (max-width:900px) {
  .p-box_title.-details {
    flex-direction: column;
    padding-top: 30px
  }
  .p-box_headnews + .p-box_title.-details {
    padding-top: 25px;
    margin-bottom: 15px;
  }
  .p-box_title.-details .hl-content_large {
    width: 100%;
    padding-left: 0
  }
}
.p-box_title.-details .hl-content_large:after {
  display: none
}
.p-box_title .-type {
  display: flex;
  margin-bottom: 0;
  padding: 12px;
  width: 90px;
  letter-spacing: .1em;
  background: #003b87;
  font-size: 1.3rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  align-items: center;
  margin: 1px 0 0;
  justify-content: center
}
.w-main.-land .p-box_title .-type {
  background: #008086
}
.w-main.-land .p-box_title .hl-content_large {
  color: #008086
}
.btn-special {
  display: block;
  padding: 25px 15px;
  background: #c8a347;
  white-space: nowrap;
  font-weight: 700;
  color: #fff;
  font-size: 1.5rem;
  text-decoration: none;
  text-align: center;
  border-radius: 3px;
  box-shadow: 0 1px 0 rgba(0, 0, 0, .1);
  margin: 0 0 20px;
}
@media only screen and (max-width:900px) {
  .p-box_title.-button {
    padding-right: 0
  }
  .p-box_title .-type {
    padding: 5px 15px;
    margin-bottom: 5px;
    width: auto
  }
  .btn-special {
    padding: 20px 0;
    /*    width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 1.7rem;
        margin-top: 10px;
        background: none;
        color: #c8a347;
        box-shadow: none;
        text-decoration: underline;*/
  }
  /* .btn-special::after {
        content: '';
        display: block;
        background: url(/common/img/ico_blank_gold.svg) 50% 50% no-repeat;
        background-size: cover;
        width: 17px;
        height: 17px;
        margin-left: 4px;        
    } */
}
.p-detail_title {
  position: relative
}
.p-detail_title .hl-content_large {
  padding-right: 100px
}
@media only screen and (max-width:900px) {
  .p-detail_title .hl-content_large {
    padding-right: 64px
  }
}
.p-box_update {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 10px;
  font-size: 1.2rem
}
.p-box_update .btn-notice {
  display: block;
  margin: 0 20px 10px 0;
  height: 28px;
  padding: 0 18px 0 16px;
  border-radius: 3px;
  border: 1px solid #003b87;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
  color: #003b87;
  line-height: 27px;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.p-box_update .btn-notice span {
  display: inline-block;
  padding-left: 24px;
  background: url(/common/img/ico_mail_b.png) center left /14px auto no-repeat
}
.p-box_update .btn-notice:hover {
  background: #e8ecf7;
  box-shadow: none;
  transform: translateY(1px);
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.p-box_update .w-data {
  display: flex
}
.p-box_update .c-data {
  display: flex;
  color: #283546
}
.p-box_update .c-data:not(:last-child)::after {
  display: inline-block;
  margin: 0 2px;
  content: '／';
  color: #dbdbdb
}
.p-box_update .c-data dt {
  font-weight: 500
}
.p-box_update .c-data dt::after {
  content: '：'
}
.p-label_feature.-detail {
  margin-bottom: 20px
}
.p-label_feature.-detail > li {
  width: calc((100% - (6px * 5)) / 6);
  margin: 0 6px 6px 0;
  padding: 5px 0;
  font-size: 1.3rem
}
.p-label_feature.-detail > li:nth-child(6n) {
  margin-right: 0
}
@media only screen and (max-width:1120px) {
  .p-label_feature.-detail > li {
    width: calc((100% - (6px * 3)) / 4)
  }
  .p-label_feature.-detail > li:nth-child(4n) {
    margin-right: 0
  }
  .p-label_feature.-detail > li:nth-child(6n) {
    margin-right: 6px
  }
}
@media only screen and (max-width:900px) {
  .p-box_update .w-data {
    width: 100%
  }
  .p-box_update .c-data {
    flex-wrap: wrap;
  }
  .p-box_update .c-data + .c-data {
    margin-top: 6px
  }
  .p-box_update .btn-notice {
    margin: 0 auto 20px;
    width: 100%;
    text-align: center
  }
  .p-label_feature.-detail {
    margin-bottom: 15px;
  }
  .p-label_feature.-detail > li {
    width: calc((100% - (4px * 2)) / 3);
    margin: 0 4px 4px 0;
    font-size: 1.2rem
  }
  .p-label_feature.-detail > li:nth-child(3n) {
    margin-right: 0
  }
  .p-label_feature.-detail > li:nth-child(4n) {
    margin-right: 4px
  }
  .p-label_feature.-detail > li:nth-child(6n) {
    margin-right: 0
  }
}
@media only screen and (max-width:700px) {
  .p-label_feature.-detail > li {
    width: calc((100% - (1px * 2)) / 3);
    margin: 0;
    font-size: 1rem;
    border-radius: 1px;
  }
  .p-label_feature.-detail > li:nth-child(4n) {
    margin-right: 0
  }
  .c-property_item .p-label_feature li:nth-child(n+4) {
    display: none
  }
  .p-label_feature.-detail {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width:900px) {
  .p-box_update .w-data {
    flex-wrap: wrap
  }
}
@media only screen and (max-width:900px) {
  .l-detail {
    display: flex;
    flex-wrap: wrap
  }
}
.p-detail_data {
  display: flex;
  justify-content: space-between;
  margin-bottom: 64px
}
.p-detail_data .row-data {
  width: calc(100% - 320px);
  border-top: 1px solid #dde5f0
}
.p-detail_data .c-data_item {
  position: relative;
  padding: 0
}
.p-detail_data .c-data_item dt {
  display: table-cell;
  width: 115px;
  padding: 13px 15px;
  background: #f1f4fd;
  font-size: 1.4rem;
  color: #283546
}
.p-detail_data .c-data_item dd {
  padding: 12px 20px;
  font-size: 1.4rem;
  display: table-cell
}
.p-detail_data .c-data_item dd.-inbtn {
  padding-right: 200px
}
.btn-detail_data {
  position: absolute;
  top: 0;
  right: 3px;
  bottom: 0;
  margin: auto;
  display: block;
  height: 28px;
  width: 170px;
  border-radius: 3px;
  border: 1px solid #003b87;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
  color: #003b87;
  font-size: 1.3rem;
  line-height: 27px;
  text-align: center;
  text-decoration: none;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.btn-detail_data:hover {
  background: #e8ecf7;
  box-shadow: none;
  transform: translateY(1px);
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.p-detail_data .row-tags {
  width: 286px
}
.c-tag_list > li {
  display: inline-block;
  margin: 0 7px 14px 7px;
  font-size: 1.3rem;
  color: #2d3858
}
.c-tag_list > li::before {
  content: '#';
  color: #3f80d4;
  font-size: 1.4rem;
  margin-right: 2px
}
@media only screen and (max-width:900px) {
  .c-tag_list {
    padding: 20px 0 0;
    border: none;
    background: none
  }
  .c-tag_list > li {
    margin: 0 5px 8px 5px;
    font-size: 1.2rem
  }
}
.p-detail_conv.-section {
  display: none
}
.p-detail_conv .c-box_cv {
  margin-bottom: 18px
}
.p-detail_conv .c-box_cv li:first-child {
  margin-left: 0
}
.p-detail_conv .btn-cv_common {
  width: 230px;
  height: 48px;
  line-height: 47px
}
/* .p-detail_conv .c-box_cv.-agent li:nth-of-type(1),
.p-detail_conv .c-box_cv.-agent li:nth-of-type(2) {
    width: calc((100% - 40px - 16px) / 2);
}

@media only screen and (max-width:900px) {
    .p-detail_conv .c-box_cv.-agent li:nth-of-type(1) {
        width: calc(100% - 46px);
    }
    .p-detail_conv .c-box_cv.-agent li:nth-of-type(2) {
        display: none;
    }
} */
.c-box_cv.-agent {
  display: flex;
}
.box-download_property + .c-box_cv.-agent li {
  width: 100%;
}
.p-detail_conv .c-box_cv.-agent .btn-cv_common.-download {
  width: 100%;
}
.p-detail_conv .btn-favorite {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  line-height: 47px
}
.p-detail_conv .c-contact > a {
  position: relative;
  display: inline-block;
  padding-left: 45px;
  font-size: 2.8rem;
  font-weight: 700;
  color: #003b87;
  text-decoration: none
}
.p-detail_conv .c-contact > a::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 34px;
  height: 34px;
  border-radius: 3px;
  background: #003b87 url(/common/img/ico_tel.png) center /15px 15px no-repeat
}
.p-detail_conv .c-contact dl {
  margin-top: 8px
}
.p-detail_conv .c-contact dt {
  margin-bottom: 8px;
  font-weight: 700;
  font-size: 1.5rem
}
.p-detail_conv .c-contact dt a {
  transition: .2s all ease;
  position: relative;
  padding-right: 12px
}
.p-detail_conv .c-contact dt a:after {
  transition: .2s all ease;
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  border-top: 2px solid #2e3b4c;
  border-right: 2px solid #2e3b4c;
  position: absolute;
  transform: rotate(45deg);
  right: 0;
  top: 7px
}
.p-detail_conv .c-contact dt a:hover {
  color: #3f80d4
}
.p-detail_conv .c-contact dt a:hover:after {
  border-color: #3f80d4
}
.p-detail_conv .c-contact dd {
  font-size: 1.2rem
}
@media only screen and (max-width:1120px) {
  .p-detail_data .row-data {
    width: calc(100% - 270px)
  }
  .p-detail_data .row-tags {
    width: 240px
  }
  .p-detail_conv .btn-cv_common {
    width: 180px
  }
}
@media only screen and (min-width:751px) {
  .p-data_table {
    border: none
  }
  .-function .p-data_table {
    position: relative;
    top: -10px
  }
}
@media only screen and (max-width:900px) {
  .p-detail_data {
    order: 3;
    display: block;
    width: 100%;
    margin-bottom: 20px
  }
  .p-detail_data .row-data {
    width: 100%;
    border-left: 1px solid #dde5f0;
    border-right: 1px solid #dde5f0
  }
  .p-detail_data .c-data_item {
    display: block
  }
  .p-detail_data .c-data_item dt, .p-detail_data .c-data_item dd {
    width: 100%;
    display: block
  }
  .p-detail_data .p-flex_between .c-data_item {
    display: table;
    width: 100%;
    align-items: center
  }
  .p-detail_data .p-flex_between .c-data_item dt {
    width: 35%;
    display: table-cell !important
  }
  .p-detail_data .p-flex_between .c-data_item dd {
    width: 65%;
    font-size: 1.3rem;
    display: table-cell
  }
  .p-detail_data .c-data_item dt {
    padding: 8px;
    font-size: 1.2rem;
    border-bottom: 1px solid #dbdbe9
  }
  .p-detail_data .p-flex_between .c-data_item dt {
    border-bottom: none
  }
  .p-detail_data .c-data_item dd {
    padding: 8px;
    font-size: 1.4rem
  }
  .p-detail_data .c-data_item dd.-inbtn {
    padding-right: 14px
  }
  .btn-detail_data {
    position: relative;
    left: 0;
    margin: 8px auto 0;
    width: 70%
  }
  .p-detail_data .p-flex_between {
    display: block
  }
  .p-detail_data .p-flex_between .c-row {
    width: 100%
  }
  .p-detail_data .row-tags {
    width: 100%
  }
  .c-tag_list {
    margin-bottom: 20px
  }
  .p-detail_conv, .p-detail_conv.-section {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 100;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    padding: 8px 0 0;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 0 5px rgb(0, 0, 0, .3)
  }
  .p-detail_conv .c-box_cv {
    margin: 0 6px 0 8px;
    width: calc(100% - ((100% - 34px)/2));
    flex-direction: row-reverse
  }
  .p-detail_conv .c-box_cv:not(.-agent) li:first-child {
    width: calc(100% - 50px)
  }
  .p-detail_conv .c-box_cv.-agent {
    width: 47.5%;
    margin: 0 0 0 8px;
  }
  .p-detail_conv .c-box_cv.-agent + .box-tel {
    padding: 0 6px;
    /* display: flex;
        flex-direction: row-reverse;
        gap:8px;
        align-items: center; */
    text-align: center;
    width: 100%;
  }
  .p-detail_conv .c-box_cv.-agent + .box-tel > * {}
  .p-detail_conv .c-box_cv.-agent + .box-tel > *:first-of-type {}
  .p-detail_conv > .-sp_view {
    font-size: 1.1rem;
    width: 100%;
    padding: 4px 5px;
    text-align: center;
    background: #182435;
    color: #f5f5f5;
    margin-top: 8px
  }
  .p-detail_conv .btn-cv_common {
    width: 100%;
    height: 42px;
    padding: 0 10px;
    font-size: 1.3rem;
    line-height: 41px
  }
  .p-detail_conv .btn-favorite {
    width: 42px;
    height: 42px
  }
  .p-detail_conv .btn-favorite.-wide {
    width: 100%;
    background: none;
    gap: 5px;
  }
  .p-detail_conv .btn-favorite.-wide::before {
    content: '';
    width: 16px;
    height: 16px;
    background: url("/common/img/ico_star.svg") 50% 50% no-repeat;
    background-size: cover;
  }
  .p-detail_conv .btn-favorite.-wide::after {
    content: 'お気に入り追加';
    font-size: 1.4rem;
  }
  .p-detail_conv .btn-favorite.-wide.-active::before {
    content: '';
    width: 16px;
    height: 16px;
    background: url("/common/img/ico_star_active.svg") 50% 50% no-repeat;
    background-size: cover;
  }
  .p-detail_conv .btn-favorite.-wide.-active::after {
    content: 'お気に入り追加済み';
    color: #dc4748;
  }
  .p-detail_conv .c-contact {
    width: calc((100% - 72px)/2)
  }
  .p-detail_conv .c-contact a {
    padding-left: 0;
    height: 42px;
    font-size: 1.3rem;
    line-height: 41px;
    color: #fff;
    background: #003b87;
    border-radius: 3px;
    width: 100%;
    display: flex;
    text-align: center;
    justify-content: center;
  }
  .p-detail_conv .c-box_cv.-agent + .box-tel .c-contact a {
    width: 47.5%;
    position: absolute;
    top: 8px;
    right: 8px;
  }
  .p-detail_conv .c-contact a::before {
    width: 42px;
    height: 42px;
    background-size: 18px 18px;
    position: initial;
    margin-right: 0;
    margin-left: -10px
  }
  .p-detail_conv .c-contact dl {
    display: none;
  }
  .p-detail_conv.-agent {
    display: none;
  }
  .p-detail_conv .box-download_property.-column {
    display: none;
  }
}
@media only screen and (min-width:901px) {
  .p-detail_conv .btn-favorite.-wide {
    width: 100%;
    gap: 8px;
    border-radius: 40px;
    height: 35px;
    line-height: 35px;
    background: none;
  }
  .p-detail_conv .btn-favorite.-wide::before {
    content: '';
    width: 16px;
    height: 16px;
    background: url("/common/img/ico_star.svg") 50% 50% no-repeat;
    background-size: cover;
  }
  .p-detail_conv .btn-favorite.-wide::after {
    content: 'お気に入り追加';
    font-size: 1.4rem;
  }
  .p-detail_conv .btn-favorite.-wide.-active::before {
    content: '';
    width: 16px;
    height: 16px;
    background: url("/common/img/ico_star_active.svg") 50% 50% no-repeat;
    background-size: cover;
  }
  .p-detail_conv .btn-favorite.-wide.-active::after {
    content: 'お気に入り追加済み';
    color: #dc4748;
  }
}
.p-detail_image {
  margin-bottom: 40px
}
.p-3d {
  margin-bottom: 40px;
  background: #2e3b4c
}
.p-3d iframe {
  display: block;
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  height: 500px;
  border: 1px solid #4b505b
}
.w-gallery {
  position: relative;
  margin-bottom: 0;
  background: #182435;
  overflow: hidden
}
.p-gallery {
  position: relative;
  width: 100%
}
.w-gallery .p-gallery {
  padding-bottom: 80px;
}
.p-gallery::before, .p-gallery::after {
  position: absolute;
  top: 0;
  z-index: 1;
  display: block;
  width: calc((100% - 750px) / 2);
  height: calc(100% - 50px);
  background: rgba(24, 36, 53, .7);
  content: ''
}
.p-gallery::before {
  left: 0
}
.p-gallery::after {
  right: 0
}
.p-gallery .slick-list {
  width: 750px;
  height: 0;
  height: 469px;
  margin: 0 auto;
  overflow: visible
}
/* .p-gallery.slick-initialized .slick-list {
    height: 469px;
} */
.p-gallery .c-gallery_item {
  overflow: hidden;
  height: 0;
}
.p-gallery.slick-initialized .c-gallery_item {
  overflow: hidden;
  height: 100%;
}
.p-gallery .slick-list .slick-track {
  height: 100%
}
@media only screen and (min-width:901px) {
  .p-gallery .slick-slide {
    width: 750px !important;
  }
}
.p-gallery .slick-slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 50% 50%;
}
.p-gallery .slick-prev, .p-gallery .slick-next {
  display: flex !important;
  justify-content: center;
  align-items: center;
  top: auto;
  bottom: -8px;
  z-index: 1
}
.p-gallery .slick-prev {
  left: auto;
  right: 75px
}
.p-gallery .slick-next {
  right: 12px
}
.p-gallery .slick-prev::before, .p-gallery .slick-next::before {
  width: 9px;
  height: 9px;
  border-color: #fff;
  border-width: 2px
}
.p-thumb {
  margin-bottom: 50px
}
.p-thumb .c-thumb_item {
  position: relative;
  display: inline-block;
  margin: 0;
  height: 88px;
  cursor: pointer;
  background: #2e3b4c
}
.p-thumb .c-thumb_item img {
  opacity: .6;
  transition: opacity .2s ease
}
.p-thumb .c-thumb_item:hover img {
  opacity: 1
}
.p-thumb .c-thumb_item::before {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 4px solid transparent;
  content: '';
  transition: border-color .3s ease
}
.p-thumb .c-thumb_item.slick-current img {
  opacity: 1
}
.p-thumb .c-thumb_item.slick-current::before {
  border-color: #3f80d4;
  transition: border-color .2s ease
}
.p-thumb .c-thumb_item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%
}
.p-gallery_data {
  width: 750px;
  color: #fff;
  margin: -80px auto 15px;
  padding: 15px 15px;
}
.p-gallery_data .c-data_name {
  font-size: 1.35rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  height: 2.4em;
  width: 100%;
}
.p-gallery_data .c-data_num {
  position: absolute;
  right: 28px;
  bottom: 13px;
  display: block;
  width: 60px;
  line-height: 1;
  font-size: 1.3rem;
  text-align: center;
  font-weight: 700
}
.p-bnr_list {
  display: flex;
  flex-wrap: wrap
}
.-gallery_other .p-bnr_list {
  margin-left: auto;
  flex-direction: row-reverse;
}
.-gallery_other .p-bnr_list:empty {
  width: 0;
  display: none
}
.p-bnr_list {
  gap: 10px;
}
.p-bnr_list .c-bnr_item {
  width: 160px;
}
.p-bnr_list .c-bnr_item.panorama_bnr {
  position: relative;
}
.p-bnr_list .c-bnr_item.panorama_bnr::before {
  content: 'パノラマ';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1;
  padding: 5px;
  background: #ff4342;
  color: #fff;
}
.p-bnr_list .c-bnr_item a {
  display: block;
  text-decoration: none;
}
.p-bnr_list .c-bnr_item .c-thumb {
  display: block;
  width: 100%;
  aspect-ratio: 340 / 210;
  overflow: hidden;
  margin-bottom: 8px;
  background: #f5f5f5;
}
.p-bnr_list .c-bnr_item .c-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 50% 50%;
  transition: .3s;
}
.p-bnr_list .c-bnr_item a:hover .c-thumb img {
  opacity: .7;
}
.p-bnr_list .c-bnr_item figure {
  margin: 0
}
.p-bnr_list .c-bnr_item figcaption {
  font-size: 1.3rem;
  text-align: center;
  transition: color .2s ease;
  padding: 0 5px
}
.p-bnr_list .c-bnr_item a:hover img {
  box-shadow: 0 4px 12px rgba(0, 0, 0, .24);
  transition: box-shadow .3s ease
}
.p-bnr_list .c-bnr_item a:hover figcaption {
  color: #003b87;
  transition: color .3s ease
}
@media only screen and (max-width:900px) {
  .p-detail_image {
    order: 1;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 54px
  }
  .p-3d {
    display: none
  }
  .w-gallery {
    order: 0;
    width: 100%;
    overflow: visible;
  }
  .w-gallery::before, .w-gallery::after {
    position: absolute;
    top: 0;
    z-index: 1;
    display: block;
    width: 5.556%;
    height: calc(100% - 0px);
    background: #182435;
    content: ''
  }
  .w-gallery::before {
    left: -5.556%
  }
  .w-gallery::after {
    right: -5.556%
  }
  .p-gallery::before, .p-gallery::after {
    display: none
  }
  .p-gallery .slick-list {
    width: 100%;
    height: 300px
  }
  .p-gallery_data {
    position: relative;
    width: 100%;
    padding: 15px 0;
  }
  .p-gallery_data::before {
    position: absolute;
    top: 0;
    left: -5.556%;
    z-index: -1;
    content: '';
    display: block;
    width: 111.1%;
    ;
    height: 100%;
    background: #182435
  }
  .p-gallery_data .c-data_name {
    font-size: 1.25rem
  }
  .p-thumb {
    margin-bottom: 30px;
    width: 111%;
    left: -5.5%;
  }
  /* .p-thumb .c-thumb_item {
        height: 48px
    } */
  .p-gallery_data .c-data_num {
    bottom: -4px;
  }
}
@media only screen and (min-width:601px) and (max-width:900px) {
  .-gallery_other .p-bnr_list {
    width: 100%;
    min-width: initial;
    margin-bottom: 20px;
    flex-direction: row;
    gap: 20px 5%;
  }
  .p-bnr_list .c-bnr_item {
    width: 30%;
  }
}
@media only screen and (max-width:600px) {
  .p-bnr_list .c-bnr_item .c-thumb {
    margin-bottom: 8px
  }
  .p-bnr_list .c-bnr_item figcaption {
    font-size: 1.4rem
  }
  .p-bnr_list {
    width: 100%;
    justify-content: space-between;
    gap: 15px 4%;
    margin-bottom: 15px;
  }
  .p-bnr_list .c-bnr_item {
    width: 48%;
  }
  .p-thumb .c-thumb_item {
    height: auto;
    aspect-ratio: 1/1;
  }
}
.p-flex.-gallery_other {
  display: flex;
  justify-content: space-between;
  align-items: initial
}
.-details .p-flex.-gallery_other {
  display: table;
  margin-bottom: 60px
}
.p-flex.-gallery_other .row-hash {
  display: table-cell;
  width: 100%;
  vertical-align: top
}
.p-flex.-gallery_other .row-bnr {
  display: table-cell;
  vertical-align: top;
  padding: 0 0 0 40px;
  min-width: 370px;
}
@media only screen and (max-width:900px) {
  .-details .p-flex.-gallery_other {
    margin-bottom: 40px;
    padding: 0;
    display: flex
  }
  .p-flex.-gallery_other {
    order: 2
  }
  .p-flex.-gallery_other .row-bnr {
    width: 100%;
    min-width: unset;
    display: block;
    order: 0;
    padding: 0;
  }
  .p-flex.-gallery_other .row-hash {
    width: 100%;
    display: block;
    order: 1;
    padding: 0;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin-top: 20px;
  }
}
.p-detail_recommend {
  padding-top: 40px;
  margin-bottom: 100px
}
.hl-recommend {
  margin-bottom: 20px;
  text-align: center
}
.p-box_recommend {
  position: relative;
  padding: 50px 0
}
.p-box_recommend::before {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -2000px;
  width: 4000px;
  height: 100%;
  background: url(/common/img/recommend_bg.gif) center /1200px 1200px;
  content: ''
}
.p-box_recommend .inner {
  position: relative;
  left: 50%;
  width: 650px;
  margin-left: -360px;
  padding: 40px 80px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #fbbd98;
  font-size: 15px;
  line-height: 1.7
}
.p-box_recommend .inner::after {
  position: absolute;
  bottom: -12px;
  right: -176px;
  content: url(/common/img/sales_accesory.png)
}
.p-box_recommend .inner pre, .row-message pre {
  white-space: pre-wrap
}
.p-box_recommend h3 {
  margin-bottom: 20px
}
.p-box_recommend h3 span {
  font-size: 2rem;
  font-weight: 700;
  color: red
}
.p-box_recommend p {
  margin-bottom: 14px;
  font-size: 1.4rem;
  line-height: 1.4
}
.p-box_recommend p::before {
  display: inline-block;
  position: relative;
  top: -1px;
  content: '◆';
  margin-right: 2px;
  font-size: 1.2rem
}
.p-box_recommend p strong {
  background: #ff9;
  font-size: 1.8rem;
  color: #f0f;
  text-decoration: underline
}
.p-box_recommend p em {
  font-style: normal
}
@media only screen and (max-width:900px) {
  .p-box_recommend {
    padding: 30px 0
  }
  .p-box_recommend::before {
    background-size: 600px 600px
  }
  .hl-recommend img {
    max-width: 60%
  }
  .p-detail_recommend {
    padding-top: 0;
    width: 100%;
    order: 2;
    margin-bottom: 60px
  }
  .p-box_recommend .inner {
    left: 0;
    width: 100%;
    margin-left: 0;
    padding: 30px 24px;
    border-radius: 5px
  }
  .p-box_recommend .inner::after {
    display: none
  }
  .p-box_recommend h3 span {
    font-size: 1.6rem
  }
  .p-box_recommend p strong {
    font-size: 1.5rem
  }
}
@media only screen and (max-width:640px) {
  .hl-recommend img {
    max-width: 80%
  }
}
.p-plan_select {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px
}
.p-plan_select .row-image {
  width: calc(100% - 420px);
  border: 5px solid #c1c8d4
}
.p-image_list {
  position: relative;
  height: 100%
}
.p-image_list::after {
  position: absolute;
  right: 20px;
  bottom: 20px;
  display: block;
  width: 30px;
  height: 30px;
  background: url(/common/img/ico_zoom.png) center /contain no-repeat;
  content: '';
  pointer-events: none
}
.p-image_list .c-image_item {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 20px;
  cursor: pointer
}
.p-image_list .c-image_item:not(:first-child) {
  display: none
}
.p-image_list .c-image_item img {
  width: 100%;
  height: 100%;
  max-height: 560px;
  object-fit: contain
}
.p-plan_select .row-list {
  width: 420px
}
.p-plan_select .p-data_table {
  border: 1px solid #c1c8d4;
  border-bottom: none
}
.p-plan_select .p-data_table .c-data_item {
  padding: 0;
  border-bottom: 1px solid #c1c8d4;
  align-items: center;
  display: table;
  width: 100%
}
.p-plan_select .p-data_table dt, .p-plan_select .p-data_table dd {
  padding: 14px;
  line-height: 1;
  text-align: center;
  font-weight: 700
}
.p-plan_select .p-data_table dt {
  display: table-cell;
  width: 160px;
  font-size: 1.4rem;
  background: #f1f4fd
}
.w-main.-land .p-plan_select .p-data_table dt {
  background: #deeced
}
.p-plan_select .p-data_table dd {
  width: calc(100% - 160px);
  font-size: 1.5rem;
  display: table-cell
}
.p-plan_select .p-data_table dd .-sold {
  color: #ef060c
}
.p-plan_select .p-data_table dd a {
  position: relative;
  display: inline-block;
  color: #003b87;
  text-decoration: none
}
.p-plan_select .p-data_table dd a::after {
  position: absolute;
  top: -2px;
  right: -36px;
  display: block;
  width: 20px;
  height: 20px;
  background: url(/common/img/plan_select_arrow.png) center /contain no-repeat;
  content: '';
  transition: right .3s ease
}
.p-plan_select .p-data_table dd a:hover::after {
  right: -40px;
  transition: right .3s ease
}
@media only screen and (min-width:901px) {
  .w-main.-land .p-plan_select .p-data_table dd a {
    pointer-events: none
  }
  .w-main.-land .p-plan_select .p-data_table dd a::after {
    display: none
  }
}
.w-plan_list {
  position: relative;
  padding-bottom: 30px
}
.w-plan_list::before {
  position: absolute;
  top: 160px;
  left: 50%;
  margin-left: -2000px;
  width: 4000px;
  height: calc(100% - 160px);
  background: #f4f4f6;
  content: ''
}
.p-plan_arrow {
  display: none
}
.p-plan_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-plan_list::after {
  content: '';
  display: block;
  width: calc((100% - (1.2% * 2)) / 3)
}
.p-plan_list .c-plan_item {
  position: relative;
  width: calc((100% - (1.2% * 2)) / 3);
  margin-bottom: 16px;
  border: 1px solid #003b87;
  border-radius: 2px;
  background: #fff;
  padding-bottom: 58px
}
.p-plan_list .c-plan_item .c-num {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 140px;
  height: 30px;
  background: #003b87;
  color: #fff;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 29px;
  text-align: center
}
.w-main.-land .p-plan_list .c-plan_item .c-num {
  background: #008086
}
.w-main.-land .p-plan_list .c-plan_item {
  border-color: #008086;
  padding: 0
}
.w-main.-land .p-plan_list .c-plan_item figure {
  border-color: #008086;
  padding: 0 30px
}
.w-main.-land .p-plan_list .c-plan_item .p-data_table, .w-main.-land .p-plan_list .c-plan_item .c-data_item {
  border: none
}
.p-plan_list .p-data_table {
  margin-bottom: 10px;
  border: none;
  border-top: 1px solid #dde5f0
}
.p-plan_list .c-plan_item figure {
  margin: 0;
  padding: 30px 30px 22px
}
.p-plan_list .c-plan_item .w-plan_img {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  padding-top: 80%;
  margin-bottom: 10px;
  margin-top: 30px
}
.p-plan_list .c-plan_item .w-plan_img:empty {
  padding-top: 0
}
.p-plan_list .c-plan_item figure .w-plan_img a {
  display: block
}
.p-plan_list .c-plan_item figure .w-plan_img a::after {
  position: absolute;
  right: 0;
  bottom: 20px;
  display: block;
  width: 20px;
  height: 20px;
  background: url(/common/img/ico_zoom.png) center /contain no-repeat;
  content: '';
  pointer-events: none
}
@media only screen and (max-width:900px) {
  .p-plan_list .c-plan_item figure .w-plan_img a {
    pointer-events: none
  }
  .p-plan_list .c-plan_item figure .w-plan_img a::after {
    display: none
  }
}
.p-plan_list .c-plan_item figure img {
  position: absolute;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%)
}
.p-plan_list .c-plan_item .hl-plan {
  margin-bottom: 15px;
  color: #003b87;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.2
}
.p-plan_list .c-data_item {
  padding: 0
}
.p-plan_list .c-data_item dt, .p-plan_list .c-data_item dd {
  padding: 10px 5px;
  font-size: 1.4rem
}
.p-plan_list .c-data_item dt {
  display: block;
  width: 120px;
  font-weight: 700
}
.p-plan_list .p-note_list {
  padding-left: 6px;
  line-height: 1.2;
  font-size: 1.2rem
}
.p-plan_list .p-note_list > li:not(:last-child) {
  margin-bottom: 2px
}
.c-plan_overlay {
  display: none
}
.w-main.-land .p-plan_list .c-plan_item .hl-plan {
  display: none
}
.w-main.-land .p-plan_list .c-data_item:nth-of-type(n+2) {
  display: none
}
@media only screen and (max-width:1120px) {
  .p-plan_list .c-plan_item {
    width: calc((100% - (16px * 2)) / 3)
  }
}
@media only screen and (max-width:900px) {
  .p-detail_plan {
    order: 4;
    width: 100%;
    margin-top: 40px;
  }
  .p-plan_select {
    display: block
  }
  .p-plan_select .row-image {
    width: 100%;
    margin-bottom: 0
  }
  .p-image_list::after {
    right: 20px;
    bottom: 20px;
    width: 20px;
    height: 20px
  }
  .p-image_list .slick-prev::before, .p-image_list .slick-next::before {
    width: 16px;
    height: 16px;
    border-color: #003b87
  }
  .p-image_list .slick-prev {
    left: 5px;
    z-index: 1
  }
  .p-image_list .slick-next {
    right: 5px;
    z-index: 1
  }
  .p-image_list .c-image_item {
    height: 360px;
    padding: 0
  }
  .p-image_list .c-image_item:not(:first-child) {
    display: flex
  }
  .p-image_list .c-image_item img {
    left: 0;
    right: 0;
    margin: auto;
    padding: 20px
  }
  .p-plan_select .row-list {
    width: 100%
  }
  .p-plan_select .p-data_table {
    display: flex;
    flex-wrap: wrap;
    border-right: none
  }
  .p-plan_select .p-data_table .c-data_item {
    display: table;
    width: calc(50% - 1px);
    border-right: 1px solid #c1c8d4
  }
  .p-plan_select .p-data_table dt, .p-plan_select .p-data_table dd {
    padding: 12px 10px
  }
  .p-plan_select .p-data_table dt {
    width: 60px;
    font-size: 1.1rem;
    display: table-cell;
    vertical-align: middle
  }
  .p-plan_select .p-data_table dd {
    width: calc(100% - 60px);
    font-size: 1.3rem;
    display: table-cell;
    vertical-align: middle
  }
  .p-plan_select .p-data_table dd a {
    left: -8px
  }
  .p-plan_select .p-data_table dd a::after {
    top: 2px;
    right: -16px;
    width: 12px;
    height: 12px
  }
  .p-plan_select .p-data_table dd a:hover::after {
    right: -16px
  }
  .w-plan_list {
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100vh;
    padding: 0;
    pointer-events: none
  }
  .w-plan_list::before {
    display: none
  }
  .w-plan_list.-active {
    opacity: 1;
    pointer-events: all
  }
  .p-plan_arrow {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 10;
    margin: auto;
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: rgba(0, 59, 135, .8) no-repeat;
    background-size: 28px 28px
  }
  .p-plan_arrow.-prev {
    left: -32px;
    background-image: url(/common/img/prev.png);
    background-position: center right 4px
  }
  .p-plan_arrow.-next {
    right: -32px;
    background-image: url(/common/img/next.png);
    background-position: center left 4px
  }
  .p-plan_list {
    display: block;
    width: 90%
  }
  .p-plan_list::after {
    display: none
  }
  .p-plan_list .c-plan_item {
    display: none;
    margin-bottom: 0
  }
  .p-plan_list .c-plan_item::before, .p-plan_list .c-plan_item::after {
    position: absolute;
    top: -20px;
    right: 0;
    display: block;
    width: 20px;
    height: 2px;
    border-radius: 1px;
    background: #fff;
    content: '';
    pointer-events: none
  }
  .p-plan_list .c-plan_item::before {
    transform: rotate(45deg)
  }
  .p-plan_list .c-plan_item::after {
    transform: rotate(-45deg)
  }
  .p-plan_list .c-plan_item.-show {
    z-index: 1;
    display: block;
    width: 96%;
    margin: 0 auto
  }
  .p-plan_list .c-plan_item .c-num {
    width: 120px;
    height: 30px;
    font-size: 1.3rem;
    line-height: 29px
  }
  .p-plan_list .c-plan_item figure {
    padding-bottom: 16px
  }
  .w-main:not(.-land) .p-plan_list .c-plan_item .w-plan_img {
    height: 200px
  }
  .btn-plan {
    display: block;
    width: calc(100% - (22px * 2));
    border-radius: 2px;
    height: 36px;
    background: #003b87;
    text-align: center;
    line-height: 35px;
    margin: 0 auto 22px;
    color: #fff;
    font-size: 1.4rem;
    text-decoration: none
  }
  .c-plan_overlay {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .7)
  }
}
@media only screen and (max-width:600px) {
  .p-image_list .c-image_item {
    height: 320px
  }
}
.p-detail_reason {
  position: relative;
  padding-top: 78px;
  margin-bottom: 120px
}
.p-detail_reason .p-btn {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%)
}
.p-detail_reason .btn-common {
  font-size: 1.8rem
}
.p-detail_reason::before {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: -15vw;
  z-index: -1;
  width: calc(100vw - 18px);
  height: calc(100% - 1px);
  background: url(/common/img/bg_p-detail_reason.png) 50% 100% no-repeat;
  background-size: cover;
  border-top: 1px solid #ddd
}
.p-detail_reason img {
  max-width: 100%;
  display: block;
  margin: 0 auto
}
@media only screen and (max-width:1120px) {
  .p-detail_reason::before {
    left: -5.5%;
    width: calc(100vw - 18px);
    background: url(/common/img/bg_p-detail_reason.png) 50% 100% no-repeat
  }
}
@media only screen and (min-width:701px) {
  .p-detail_reason img.-sp_view {
    display: none !important
  }
  .p-detail_reason img.-pc_view {
    display: block !important
  }
}
@media only screen and (max-width:700px) {
  .p-detail_reason::before {
    display: none
  }
  .p-detail_reason {
    position: relative;
    padding-top: 0;
    margin-bottom: 60px;
    border-top: 1px solid #ddd
  }
  .p-detail_reason .p-btn {
    position: initial;
    bottom: 0;
    transform: translateX(0);
    left: 0;
    text-align: center
  }
  .p-detail_reason .btn-common {
    font-size: 1.5rem
  }
  .p-detail_reason img.-sp_view {
    display: block !important
  }
  .p-detail_reason img.-pc_view {
    display: none !important
  }
}
.p-detail_access {
  margin-bottom: 80px
}
.p-detail_plan + .p-detail_access {
  margin-top: 80px
}
.p-box_access {
  margin-bottom: 14px
}
.p-box_access iframe {
  width: 100%;
  height: 60vh;
  max-height: 560px;
  vertical-align: bottom
}
.p-access_how {
  display: flex;
  padding: 30px 0;
  background: #003b87;
  justify-content: center
}
.p-access_how .c-how_item {
  position: relative;
  width: 50%;
  padding: 0 20px 60px;
  text-align: center
}
.p-access_how .c-how_item:not(:last-child)::after {
  position: absolute;
  display: block;
  top: 12px;
  right: 0;
  width: 1px;
  height: calc(100% - 12px);
  background: rgba(226, 226, 226, .5);
  content: ''
}
.p-access_how .c-how_item dl {
  max-width: 390px;
  margin: 0 auto;
  color: #fff
}
.p-access_how .c-how_item dt {
  margin-bottom: 15px;
  position: relative;
  padding: 10px 16px;
  background: rgba(166, 181, 204, .3);
  font-size: 1.6rem;
  font-weight: 700
}
.p-access_how .c-how_item dt::after {
  position: absolute;
  bottom: -9px;
  left: 0;
  right: 0;
  margin: auto;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 9px 0 9px;
  border-color: rgba(166, 181, 204, .3) transparent transparent transparent
}
.p-access_how .c-how_item dd {
  font-size: 1.6rem
}
.p-access_how .c-how_item dd .-station {
  display: inline-block;
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(193, 200, 212, .5);
  font-weight: 700;
  font-size: 1.6rem
}
.p-access_how .c-how_item dd span {
  display: inline-block;
  font-size: 1.4rem
}
.p-access_how .c-how_item dd input {
  margin-top: 12px;
  padding: 12px 18px;
  border-radius: 3px;
  border: 1px solid rgba(255, 255, 255, .5);
  width: 330px;
  background: none;
  font-size: 1.6rem;
  color: #fff
}
.p-access_how .c-how_item dd input:focus {
  border-color: #fff
}
.p-access_how .c-how_item dd input::placeholder {
  color: rgba(255, 255, 255, .5)
}
.p-access_how .c-how_btns {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  max-width: 338px;
  margin: 0 auto;
  display: flex;
  justify-content: center
}
.p-access_how .btn-how {
  display: block;
  height: 40px;
  background: #fff;
  margin: 0 4px;
  width: calc((100% - (10px * 2)) / 3);
  font-size: 1.6rem;
  font-weight: 500;
  color: #003b87;
  text-align: center;
  line-height: 39px;
  text-decoration: none;
  border-radius: 3px;
  transition: background .3s ease, transform .3s ease
}
.p-access_how .btn-how:hover {
  background: #e8ecf7;
  box-shadow: none;
  transform: translateY(1px);
  transition: background .3s ease, transform .3s ease
}
.p-access_how .btn-how.-root {
  width: 130px
}
.c-access_note {
  text-align: center;
  font-size: 1.2rem
}
@media only screen and (max-width:1120px) {
  .p-box_access iframe {
    min-height: 480px;
    height: 50vh
  }
}
@media only screen and (max-width:900px) {
  .p-detail_access {
    order: 5;
    width: 100%;
    margin-bottom: 60px
  }
  .p-detail_plan + .p-detail_access {
    margin-top: 0
  }
  .p-box_access iframe {
    min-height: 320px
  }
  .p-access_how {
    display: none
  }
  .c-access_note {
    display: none
  }
}
.p-detail_around {
  margin-bottom: 60px
}
.p-around_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-around_list::before, .p-around_list::after {
  content: '';
  width: calc((100% - (5px * 3)) / 4)
}
.p-around_list::before {
  order: 1
}
.p-around_list .c-around_item {
  width: calc((100% - (5px * 3)) / 4);
  margin-bottom: 24px
}
.p-around_list .c-around_item a {
  display: block;
  text-decoration: none;
  cursor: pointer
}
.p-around_list .c-around_item figure {
  margin: 0
}
.p-around_list .c-around_item .w-around_img {
  display: block;
  position: relative;
  overflow: hidden;
  margin-bottom: 10px;
  transition: box-shadow .3s ease;
  border-radius: 1px
}
.p-around_list .c-around_item .w-around_img::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: 60%
}
.p-around_list .c-around_item .w-around_img img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  left: 0;
  top: 0
}
.p-around_list .c-around_item figcaption {
  font-size: 1.4rem;
  text-align: center;
  transition: color .3s ease
}
.p-around_list .c-around_item a:hover .w-around_img {
  box-shadow: 0 4px 12px rgba(0, 0, 0, .24);
  transition: box-shadow .3s ease
}
.p-around_list .c-around_item a:hover figcaption {
  color: #003b87;
  transition: color .3s ease
}
@media only screen and (max-width:900px) {
  .p-detail_around {
    order: 6;
    width: 100%;
    margin-bottom: 60px
  }
  .p-around_list .c-around_item {
    width: calc((100% - (5px * 2)) / 3);
    margin-bottom: 20px
  }
  .p-around_list::before, .p-around_list::after {
    content: '';
    width: calc((100% - (5px * 2)) / 3)
  }
  .p-around_list .c-around_item .w-around_img {
    display: block;
    margin-bottom: 10px;
    transition: box-shadow .3s ease
  }
  .p-around_list .c-around_item figcaption {
    font-size: 1.2rem
  }
}
@media only screen and (max-width:600px) {
  .p-around_list .c-around_item {
    width: calc((100% - (5px * 1)) / 2)
  }
}
.p-detail_summary {
  margin-bottom: 80px
}
.p-summary_table {
  width: 100%;
  border: 1px solid #bbcbe0;
  border-collapse: collapse
}
.p-summary_table th, .p-summary_table td {
  padding: 14px;
  border: 1px solid #dbdbe9;
  vertical-align: middle;
  font-size: 1.4rem;
  line-height: 1.4
}
.p-summary_table th {
  width: 11%;
  background: #f1f4fd;
  text-align: left
}
.p-summary_table td {
  width: 39%
}
.p-summary_table td p:not(:last-child) {
  margin-bottom: 12px
}
.p-summary_table td p img {
  max-width: 100%;
  height: auto;
  margin-bottom: 8px
}
.p-summary_table .hl-summary {
  margin: 30px 0 10px;
  padding-left: 20px;
  font-weight: 700;
  font-size: 1.6rem;
  text-align: left;
  position: relative
}
.p-summary_table .hl-summary::after {
  content: '';
  position: absolute;
  display: block;
  height: 2px;
  background: #003b87;
  width: 10px;
  top: calc(50% - 2px);
  left: 0
}
.p-summary_table:first-of-type .hl-summary {
  margin-top: 10px
}
.p-box_conditional {
  border: 2px solid #dbdbe9;
  display: table;
  margin-top: 20px
}
.p-box_conditional h4 {
  display: table-cell;
  vertical-align: middle;
  font-size: 1.5rem;
  line-height: 1.5;
  padding: 20px;
  background: #f1f4fd;
  width: 11%;
  border-right: 1px solid #dbdbe9
}
.p-box_conditional p {
  display: table-cell;
  vertical-align: middle;
  font-size: 1.5rem;
  padding: 20px;
  line-height: 1.5;
  width: 89%
}
@media only screen and (max-width:900px) {
  .p-box_conditional {
    display: block;
  }
  .p-box_conditional h4 {
    display: block;
    line-height: 1;
    padding: 10px;
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #dbdbe9;
    text-align: center;
  }
  .p-box_conditional p {
    display: block;
    vertical-align: middle;
    font-size: 1.3rem;
    padding: 10px;
    line-height: 1.4;
    width: 100%
  }
}
@media only screen and (max-width:900px) {
  .p-detail_summary {
    order: 7;
    width: 100%;
    margin-bottom: 0
  }
  .p-summary_table th, .p-summary_table td {
    display: block;
    width: 100%;
    padding: 8px 10px
  }
  .p-summary_table .hl-summary {
    margin: 30px 0 10px;
    padding-left: 10px;
    border-left: 4px solid #003b87
  }
  .p-summary_table .hl-summary::after {
    display: none
  }
  .p-summary_table:first-of-type .hl-summary {
    margin-top: 0
  }
}
.p-detail_sales {
  position: relative;
  /* margin-bottom: 100px; */
  padding: 100px 0 86px
}
.p-detail_sales::before {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -2000px;
  width: 4000px;
  height: 100%;
  background: url(/common/img/sales_bg.gif) center /1200px 1200px;
  content: ''
}
.p-box_sales {
  position: relative;
  padding: 68px 0 50px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #86a9d6
}
.p-box_sales .hl-sales {
  position: absolute;
  top: -26px;
  left: 0;
  right: 0;
  margin: auto;
  width: 548px;
  border-radius: 28px;
  background: #eff6ff;
  border: 2px solid #003b87;
  font-size: 2.4rem;
  color: #003b87;
  text-align: center;
  line-height: 55px
}
.p-box_sales .hl-sales span {
  position: relative;
  display: inline-block;
  padding: 0 8px 0 64px
}
.p-box_sales .hl-sales span::before {
  position: absolute;
  top: -40px;
  left: 0;
  display: block;
  width: 72px;
  height: 88px;
  background: url(/common/img/sales_title_accesory.png) center /contain no-repeat;
  content: ''
}
.p-box_sales .inner {
  display: flex;
  justify-content: space-between
}
.p-box_sales .row-figure {
  margin: 0;
  width: 260px;
  padding: 0 32px;
  text-align: center
}
.p-box_sales .row-figure img {
  margin-bottom: 18px;
  width: 190px
}
.p-box_sales .row-figure figcaption {
  font-size: 1.5rem;
  line-height: 1.4
}
.p-box_sales .btn-sales {
  display: block;
  border-radius: 2px;
  height: 36px;
  background: #003b87;
  text-align: center;
  line-height: 35px;
  margin-top: 22px;
  color: #fff;
  font-size: 1.4rem;
  text-decoration: none
}
.p-box_sales .row-message {
  width: calc(100% - 260px);
  padding: 0 40px;
  border-left: 1px solid #d4e0e2;
  font-size: 1.5rem;
  line-height: 1.4
}
.p-box_sales .row-message p {
  font-size: 1.5rem;
  line-height: 1.4
}
.p-box_sales .row-message p:not(:last-child) {
  margin-bottom: 24px
}
@media only screen and (max-width:900px) {
  .p-detail_sales {
    order: 8;
    width: 100%;
    padding: 60px 0;
  }
  .p-detail_sales::before {
    background-size: 600px 600px
  }
  .p-box_sales {
    padding: 48px 0 24px
  }
  .p-box_sales .inner {
    flex-wrap: wrap
  }
  .p-box_sales .hl-sales {
    top: -24px;
    width: 300px;
    font-size: 1.8rem;
    line-height: 44px
  }
  .p-box_sales .hl-sales span {
    padding: 0 8px 0 34px
  }
  .p-box_sales .hl-sales span::before {
    top: -24px;
    width: 48px;
    height: 58px
  }
  .p-box_sales .row-figure {
    margin: 0 auto;
    order: 2;
    width: 100%
  }
  .p-box_sales .row-figure img {
    margin-bottom: 8px
  }
  .p-box_sales .row-figure figcaption {
    font-size: 1.2rem
  }
  .p-box_sales .btn-sales {
    width: 190px;
    margin: 12px auto
  }
  .p-box_sales .row-message {
    order: 1;
    width: 100%;
    margin-bottom: 32px;
    padding: 0 24px;
    font-size: 1.3rem
  }
  .p-box_sales .row-message p {
    font-size: 1.3rem
  }
  .p-box_sales .row-message p:not(:last-child) {
    margin-bottom: 16px
  }
}
.p-contact_title {
  display: flex;
  justify-content: space-between;
  margin-bottom: 60px
}
.p-contact_title .hl-contact {
  padding: 4px 0 4px 24px;
  border-left: 6px solid #dc4748;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.6
}
.btn-contact-large {
  width: 490px;
  height: 114px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  background: #dc4748;
  color: #fff;
  font-size: 2.2rem;
  font-weight: 700;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .3);
  text-decoration: none;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.btn-contact-large:hover {
  background: #e46464;
  box-shadow: none;
  transform: translateY(2px);
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.p-contact_list {
  display: flex;
  margin-bottom: 36px
}
.p-contact_list .c-contact_item {
  position: relative;
  width: calc(100% / 3);
  padding: 0 4%
}
.p-contact_list .c-contact_item:not(:last-child)::after {
  position: absolute;
  right: -1px;
  top: 16px;
  content: '';
  display: block;
  width: 2px;
  height: 96px;
  background: #e2e2e2
}
.p-contact_list .c-contact_item > dl > dt {
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 12px;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center
}
.p-contact_list .c-contact_item > dl > dt::after {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  display: block;
  width: 30px;
  height: 1px;
  background: #434343;
  content: ''
}
.p-contact_list .c-contact {
  text-align: center
}
.p-contact_list .c-contact > a {
  position: relative;
  display: inline-block;
  padding-left: 40px;
  font-size: 2.8rem;
  font-weight: 700;
  color: #003b87;
  text-decoration: none
}
.p-contact_list .c-contact > a::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 3px;
  background: #003b87 url(/common/img/ico_tel.png) center /15px 15px no-repeat
}
.p-contact_list .c-contact dl {
  margin-top: 8px
}
.p-contact_list .c-contact dt {
  margin-bottom: 4px;
  font-weight: 700;
  font-size: 1.5rem
}
.p-contact_list .c-contact dt a {
  transition: .2s all ease;
  position: relative;
  padding-right: 12px
}
.p-contact_list .c-contact dt a:after {
  transition: .2s all ease;
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  border-top: 2px solid #2e3b4c;
  border-right: 2px solid #2e3b4c;
  position: absolute;
  transform: rotate(45deg);
  right: 0;
  top: 7px
}
.p-contact_list .c-contact dt a:hover {
  color: #3f80d4
}
.p-contact_list .c-contact dt a:hover:after {
  border-color: #3f80d4
}
.p-contact_list .c-contact dd {
  font-size: 1.2rem
}
.btn-contact {
  display: block;
  width: 100%;
  height: 50px;
  border-radius: 4px;
  border: 1px solid #008086;
  background: #fff;
  box-shadow: 0 2px 3px rgba(0, 0, 0, .3);
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  color: #008086;
  line-height: 49px;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.btn-contact span {
  display: inline-block;
  padding-left: 32px;
  background: center left /20px 20px no-repeat
}
.btn-contact.-favorite span {
  background-image: url(/common/img/ico_star_g.png)
}
.btn-contact.-mail span {
  background-image: url(/common/img/ico_mail_g.png)
}
.btn-contact:hover {
  background: #e9f6f7;
  box-shadow: none;
  transform: translateY(2px);
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.p-send_list {
  display: flex;
  justify-content: center;
  padding-bottom: 48px
}
.p-send_list .c-send_item:not(:last-child) {
  margin-right: 72px
}
.p-send_list .c-send_item a {
  display: inline-block;
  padding-left: 40px;
  background: center left /32px auto no-repeat;
  text-decoration: none;
  font-size: 1.4rem;
  transition: color .3s ease, background-position .3s ease
}
.p-send_list .c-send_item a.-mail {
  background-image: url(/common/img/ico_send_mail.png)
}
.p-send_list .c-send_item a.-line {
  background-image: url(/common/img/ico_send_line.png)
}
.p-send_list .c-send_item a:hover {
  color: #003b87;
  background-position: center left 3px;
  transition: color .3s ease, background-position .3s ease
}
@media only screen and (max-width:1120px) {
  .p-contact_title .hl-contact {
    font-size: 2.2rem
  }
  .btn-contact-large {
    width: 360px;
    font-size: 2rem
  }
}
@media only screen and (max-width:900px) {
  .p-detail_contact {
    margin: 60px 0;
  }
  .p-detail_contact.-agent {
    margin: 0 auto;
    width: 100%;
    order: 100;
  }
  .p-contact_title {
    display: block;
    margin-bottom: 20px
  }
  .p-contact_title .hl-contact {
    padding: 0 0 0 20px;
    font-size: 1.8rem;
    line-height: 1.3;
    margin-bottom: 20px
  }
  .p-contact_title .hl-contact br {
    display: none
  }
  .btn-contact-large {
    width: 100%;
    height: auto;
    padding: 15px 20px 16px;
    display: flex;
    font-size: 2rem
  }
  .p-contact_list {
    flex-direction: column;
    margin-bottom: 10px
  }
  .p-contact_list li {
    order: 1
  }
  .p-contact_list li:nth-of-type(3) {
    order: 0;
    margin-bottom: 20px;
    padding: 20px 20px;
    border: 4px solid #003b87;
    border-radius: 8px;
    background: #fff
  }
  .p-contact_list .c-contact_item:nth-of-type(3) > dl > dt {
    margin-bottom: 8px;
    padding-bottom: 10px;
    font-size: 1.6rem;
    font-weight: 700;
  }
  .p-contact_list .c-contact_item:nth-of-type(3) > dl > dt::after {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    display: block;
    width: 20px;
    height: 2px;
    background: #003b87;
    content: ''
  }
  .p-contact_list .c-contact_item:not(:nth-of-type(3)) > dl > dt {
    display: none
  }
  .p-contact_list .c-contact_item {
    width: 100%;
    padding: 0
  }
  .p-contact_list .c-contact_item:not(:last-child)::after {
    display: none
  }
  .p-contact_list .c-contact {
    text-align: center
  }
  .p-contact_list .c-contact > a {
    position: relative;
    display: inline-block;
    padding-left: 40px;
    font-size: 2.8rem;
    font-weight: 700;
    color: #003b87;
    text-decoration: none
  }
  .p-contact_list .c-contact > a::before {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    border-radius: 3px;
    background: #003b87 url(/common/img/ico_tel.png) center /15px 15px no-repeat
  }
  .p-contact_list .c-contact dl {
    margin-top: 8px
  }
  .p-contact_list .c-contact dt {
    margin-bottom: 4px;
    font-weight: 700;
    font-size: 1.5rem
  }
  .p-contact_list .c-contact dd {
    font-size: 1.2rem
  }
  .btn-contact {
    width: 80%;
    margin: 5px auto;
    height: auto;
    line-height: 1;
    border-radius: 4px;
    padding: 10px 15px;
    font-size: 1.4rem
  }
  .btn-contact span {
    display: inline-block;
    padding-left: 24px;
    background: center left /16px 16px no-repeat
  }
  .p-send_list {
    width: 80%;
    margin: 0 auto;
    display: block;
    padding-bottom: 0;
    border: none;
    text-align: center
  }
  .p-send_list .c-send_item:not(:last-child) {
    margin-right: 0
  }
  .p-send_list .c-send_item {
    margin: 10px 0 0
  }
  .p-send_list .c-send_item a {
    padding-left: 32px;
    background: center left / 20px auto no-repeat;
    font-size: 1.2rem
  }
}
.p-detail_qa {
  margin-top: 80px;
  padding: 50px 5% 60px;
  border-radius: 2px;
  background: #f1f4fd
}
.p-detail_qa .hl-qa {
  position: relative;
  margin-bottom: 40px;
  padding-bottom: 30px;
  font-size: clamp(1.8rem, 2.7vw, 2.8rem);
  font-weight: 700;
  text-align: center
}
.p-detail_qa .hl-qa::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: '';
  display: block;
  width: 46px;
  height: 3px;
  background: #003b87
}
.p-detail_qa .c-qa_item {
  margin-bottom: 6px;
  background: #fff;
  border-radius: 2px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, .15)
}
.p-detail_qa .c-qa_item dt {
  position: relative;
  padding: 18px 20px 18px 72px;
  cursor: pointer;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.4;
  transition: background .3s ease
}
.p-detail_qa .c-qa_item dt.-active {
  color: #003b87
}
.p-detail_qa .c-qa_item dt::before {
  position: absolute;
  top: 17px;
  left: 28px;
  content: 'Q.';
  color: rgba(0, 60, 135, .8);
  font-size: 2.2rem
}
.p-detail_qa .c-qa_item dt:hover {
  background: #e8ecf7;
  transition: background .3s ease
}
.p-detail_qa .c-qa_item dt .inner {
  position: relative;
  padding-right: 40px
}
.p-detail_qa .c-qa_item dt .-arrow {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 28px;
  height: 28px;
  background: url(/common/img/qa_arrow.png) center /contain no-repeat;
  transition: transform .3s ease
}
.p-detail_qa .c-qa_item dt.-active .-arrow {
  transform: rotate(180deg);
  transition: transform .3s ease
}
.p-detail_qa .c-qa_item dd {
  position: relative;
  display: none;
  padding: 6px 128px 24px 104px;
  font-size: 1.6rem;
  line-height: 1.5
}
.p-detail_qa .c-qa_item dd::before {
  position: absolute;
  top: 2px;
  left: 72px;
  content: 'A.';
  font-size: 2rem;
  font-weight: 700
}
.p-detail_qa .c-qa_item dd p:not(:last-child) {
  margin-bottom: 20px
}
.p-detail_qa .c-qa_item dd p a {
  display: inline-block;
  padding-left: 26px;
  background: url(/common/img/ico_arrow_b.svg) center left /12px 12px no-repeat;
  transition: .2s all ease
}
.p-detail_qa .c-qa_item dd p a:hover {
  color: #3f80d4
}
@media only screen and (max-width:900px) {
  .p-detail_qa {
    order: 9;
    width: 111%;
    padding: 32px 20px;
    position: relative;
    left: -5.5%;
  }
  .p-detail_qa .hl-qa {
    margin-bottom: 30px;
    padding-bottom: 20px;
  }
  .p-detail_qa .hl-qa::after {
    width: 36px;
    height: 2px
  }
  .p-detail_qa .c-qa_item dt {
    padding: 16px 12px 16px 36px;
    font-size: 1.4rem
  }
  .p-detail_qa .c-qa_item dt::before {
    top: 13px;
    left: 12px;
    font-size: 1.8rem
  }
  .p-detail_qa .c-qa_item dt .inner {
    padding-right: 30px
  }
  .p-detail_qa .c-qa_item dt .-arrow {
    width: 20px;
    height: 20px
  }
  .p-detail_qa .c-qa_item dd {
    padding: 6px 12px 24px 56px;
    font-size: 1.4rem
  }
  .p-detail_qa .c-qa_item dd::before {
    left: 36px;
    font-size: 1.6rem
  }
}
.l-detail_index {
  position: fixed;
  left: 88vw;
  top: 50%;
  transform: translateY(-10%)
}
@media only screen and (min-width:1861px) {
  .l-detail_index {
    left: 84vw
  }
}
.p-detail_list .c-detail_item:not(:last-child) {
  margin-bottom: 15px
}
.p-detail_list .c-detail_item a {
  font-size: 1.2rem;
  text-decoration: none;
  position: relative
}
.p-detail_list .c-detail_item a.-disabled {
  opacity: .5;
  pointer-events: none
}
.p-detail_list .c-detail_item a::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  transition: transform .2s ease;
  transform: scale(0, 1);
  background: #003b87;
  transform-origin: left top
}
.p-detail_list .c-detail_item a.-active {
  color: #003b87;
  font-weight: 700;
  opacity: 1
}
.p-detail_list .c-detail_item a.-active::before {
  content: '';
  display: block;
  border-style: solid;
  border-width: 5px 0 5px 7px;
  border-color: transparent transparent transparent #003b87;
  position: absolute;
  left: -15px;
  top: 4px
}
.p-detail_list .c-detail_item a.-active::after {
  transform: scale(1, 1)
}
@media only screen and (max-width:1120px) {
  .l-detail_index {
    display: none
  }
}
@media only screen and (max-width:900px) {
  .section-order {
    display: flex;
    flex-direction: column
  }
  .section-order .p-detail_others {
    order: 2
  }
  .section-order .p-detail_features {
    order: 0
  }
  .section-order .p-detail_reason {
    order: 1;
    margin-bottom: 70px
  }
  .section-order .p-detail_contact {
    order: 3;
    position: relative;
    padding: 60px 0 0;
    margin: 0
  }
  .section-order .l-detail {
    order: 1
  }
  .section-order .p-detail_image {
    order: 0
  }
}
.p-detail_sales + .p-detail_contact {
  margin-top: 60px;
}
.p-section_data {
  margin-bottom: 32px
}
.p-section_data .p-data_table {
  border-collapse: collapse;
  border: 1px solid #c1c8d4;
  width: 100%
}
.p-section_data .p-data_table tbody {
  display: table;
  width: 100%
}
.p-section_data .p-data_table tr {
  display: table-cell
}
.p-section_data .p-data_table th, .p-section_data .p-data_table td {
  padding: 16px;
  text-align: center;
  font-weight: 700;
  font-size: 1.4rem
}
.p-section_data .p-data_table th {
  background: #f1f4fd
}
.p-section_data .p-data_table td {
  color: #3a4757;
  font-weight: 700;
  text-align: center
}
@media only screen and (max-width:1120px) {
  .p-section_data .p-data_table tr {
    display: table-row
  }
}
@media only screen and (max-width:900px) {
  .p-section_about {
    display: flex;
    flex-wrap: wrap
  }
  .p-section_data {
    order: 2;
    width: 100%;
    margin-bottom: 54px
  }
  .p-section_data .p-data_table tr {
    display: block
  }
  .p-section_data .p-data_table th, .p-section_data .p-data_table td {
    display: block;
    padding: 10px 15px;
    text-align: left
  }
  .p-detail_image {
    width: 100%;
    margin-bottom: 0
  }
}
.p-detail_others {
  position: relative;
  margin-bottom: 120px;
  padding: 48px 0
}
.p-detail_others::before {
  position: absolute;
  top: 0;
  left: -15.5vw;
  display: block;
  width: 131vw;
  height: 100%;
  background: #f4f4f6;
  border: 1px solid #dfdfe9;
  content: ''
}
.p-detail_others .hl-others {
  position: relative;
  width: 720px;
  margin: 0 auto 32px;
  padding: 16px 0;
  border-top: 1px solid #4972a8;
  border-bottom: 1px solid #4972a8;
  text-align: center;
  font-weight: 700;
  font-size: 2.5rem;
  color: #003b87
}
.p-detail_others .p-plan_list {
  max-width: 980px;
  margin: 0 auto
}
.p-detail_others .p-plan_list::after {
  width: calc((100% - (30px * 2)) / 3)
}
.p-detail_others .p-plan_list .c-plan_item {
  width: calc((100% - (30px * 2)) / 3);
  margin-bottom: 30px;
  padding-bottom: 58px
}
.p-detail_others .p-plan_list .c-plan_item::before, .p-detail_others .p-plan_list .c-plan_item::after {
  display: none
}
.btn-plan {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 24px;
  margin: auto;
  display: block;
  width: calc(100% - (18px * 2));
  border-radius: 2px;
  height: 36px;
  background: #003b87;
  text-align: center;
  line-height: 35px;
  color: #fff;
  font-size: 1.4rem;
  text-decoration: none
}
.w-main.-land .btn-plan {
  display: none
}
.btn-others {
  position: absolute;
  right: 0;
  bottom: -24px;
  left: 0;
  margin: auto;
  width: 340px;
  height: 50px;
  border-radius: 4px;
  border: 1px solid #003b87;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 49px;
  text-align: center;
  color: #003b87;
  text-decoration: none
}
.btn-others span {
  position: relative;
  padding: 0 8px 0 36px
}
.btn-others span::before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 13px;
  height: 13px;
  background: url(/common/img/ico_arrow_b.png) center /contain no-repeat;
  content: '';
  transform: rotate(180deg)
}
@media only screen and (max-width:900px) {
  .p-detail_others {
    margin-bottom: 20px;
    padding: 48px 0 36px
  }
  .p-detail_others .hl-others {
    width: 100%;
    padding: 10px 0;
    font-size: 2rem
  }
  .p-detail_others .p-plan_list {
    width: 100%;
    display: flex
  }
  .p-detail_others .p-plan_list::after {
    width: calc((100% - (20px * 1)) / 2)
  }
  .p-detail_others .p-plan_list .c-plan_item {
    display: block;
    width: calc((100% - (20px * 1)) / 2);
    margin-bottom: 15px
  }
  .btn-others {
    width: 100%;
    max-width: 280px;
    height: 44px;
    font-size: 1.4rem;
    line-height: 43px
  }
  .btn-others span {
    padding: 0 4px 0 20px
  }
}
@media only screen and (max-width:600px) {
  .p-detail_others .p-plan_list {
    display: block
  }
  .p-detail_others .p-plan_list .c-plan_item {
    width: 100%
  }
}
.p-detail_features {
  margin-bottom: 120px
}
.p-features_list {
  display: flex;
  flex-wrap: wrap
}
.p-features_list::before {
  order: 1
}
.p-features_list .c-features_item {
  display: flex;
  align-items: center;
  width: calc((100% - (8px * 3)) / 4);
  margin: 0 8px 8px 0;
  padding: 8px;
  border-radius: 2px;
  border: 1px solid #bdcee6;
  font-size: 1.2rem
}
.p-features_list .c-features_item img {
  width: 41px;
  height: 41px;
  margin-right: 8px
}
@media only screen and (min-width:901px) {
  .p-features_list .c-features_item:nth-of-type(4n) {
    margin-right: 0
  }
}
@media only screen and (min-width:601px) and (max-width:900px) {
  .p-detail_features {
    margin-bottom: 60px
  }
  .p-features_list .c-features_item {
    width: calc((100% - (8px * 2)) / 3)
  }
  .p-features_list .c-features_item:nth-of-type(3n) {
    margin-right: 0
  }
}
@media only screen and (max-width:600px) {
  .p-detail_features {
    margin-bottom: 60px
  }
  .p-features_list {
    width: 100%
  }
  .p-features_list .c-features_item {
    width: calc((100% - (4px)) / 2);
    margin: 0 4px 4px 0;
    padding: 4px;
    font-size: 1.1rem
  }
  .p-features_list .c-features_item:nth-of-type(2n) {
    margin-right: 0
  }
  .p-features_list .c-features_item img {
    width: 24px;
    height: 24px;
    margin-right: 4px
  }
}
.p-detail_btns {
  position: relative;
  margin-bottom: 60px;
  padding: 48px 0
}
.p-detail_btns::before {
  position: absolute;
  top: 0;
  left: -15.5vw;
  display: block;
  width: 100vw;
  height: 100%;
  background: #f4f4f6;
  border: 1px solid #dfdfe9;
  content: ''
}
.p-detail_btns .hl-others {
  position: relative;
  width: 720px;
  margin: 0 auto 32px;
  padding: 16px 0;
  border-top: 1px solid #4972a8;
  border-bottom: 1px solid #4972a8;
  text-align: center;
  font-weight: 700;
  font-size: 2.5rem;
  color: #003b87
}
.p-btns_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-btns_list::after {
  content: '';
  width: calc((100% - (30px * 2)) / 3)
}
.p-btns_list .c-btns_item {
  position: relative;
  width: calc((100% - (30px * 2)) / 3);
  margin-bottom: 30px
}
.p-btns_list .c-btns_item a {
  display: block;
  padding: 16px 20px;
  background: #003b87;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15)
}
.p-btns_list .c-btns_item a strong {
  display: block;
  margin-bottom: 6px;
  font-size: 1.6rem
}
.p-btns_list .c-btns_item a span {
  font-size: 1.2rem
}
@media only screen and (max-width:900px) {
  .p-detail_btns {
    display: none
  }
}
@media only screen and (max-width:600px) {
  .p-btns_list .c-btns_item {
    width: 100%;
    margin-bottom: 16px
  }
}
.p-theme_intro {
  margin-bottom: 32px;
  font-size: 1.5rem
}
.p-theme_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-theme_list::after {
  content: '';
  width: calc((100% - (4% * 2)) / 3)
}
.p-theme_list .c-theme_item {
  width: calc((100% - (4% * 2)) / 3);
  margin-bottom: 48px;
  cursor: pointer
}
.p-theme_list .c-theme_item a {
  display: block;
  text-decoration: none;
  transition: color .3s ease
}
.p-theme_list .c-theme_item figure {
  position: relative;
  margin: 0
}
.p-theme_list .c-theme_item .w-img {
  width: 100%;
  height: 215px;
  border-radius: 4px;
  margin-bottom: 16px;
  overflow: hidden;
  background: #000;
  border: 1px solid #ddd;
  transition: .2s all ease
}
.p-theme_list:hover .c-theme_item .w-img img {
  opacity: .7
}
.p-theme_list .c-theme_item:hover .w-img {
  box-shadow: 0 5px 15px rgba(0, 0, 0, .10)
}
.p-theme_list .c-theme_item:hover .w-img img {
  opacity: 1
}
.p-theme_list .c-theme_item .w-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: .2s all ease
}
.p-theme_list .c-theme_item dt {
  margin-bottom: 10px;
  font-weight: 700;
  font-size: 1.7rem;
  line-height: 1.25;
  padding-left: 15px;
  position: relative
}
.p-theme_list .c-theme_item dt::before {
  content: '';
  display: block;
  width: 5px;
  height: 1em;
  background: #003b87;
  position: absolute;
  left: 0;
  top: 2px
}
.p-theme_list .c-theme_item dd {
  font-size: 1.35rem;
  line-height: 1.5
}
.p-theme_list .c-theme_item a:hover dt {
  color: #3f80d4;
  transition: color .2s ease
}
@media only screen and (max-width:900px) {
  .p-theme_list::after {
    display: none
  }
  .p-theme_list .c-theme_item {
    width: calc((100% - (4% * 1)) / 2);
    margin-bottom: 40px
  }
  .p-theme_list .c-theme_item .w-img {
    height: 200px
  }
}
@media only screen and (max-width:600px) {
  .p-theme_list::after {
    display: none
  }
  .p-theme_list .c-theme_item {
    width: 100%;
    margin-bottom: 24px
  }
  .p-theme_list .c-theme_item .w-img {
    height: 160px
  }
  .p-theme_list .c-theme_item dt {
    margin-bottom: 8px;
    font-size: 1.4rem
  }
  .p-theme_list .c-theme_item dd {
    font-size: 1.2rem
  }
}
.l-main.-loan {
  max-width: 1120px
}
.p-simulator_tab {
  display: flex
}
.c-simulator_tab_item a {
  display: flex;
  align-items: center;
  height: 60px;
  padding: 0 28px;
  background: #eaeef3;
  font-size: 2rem;
  font-weight: 700;
  text-decoration: none;
  letter-spacing: .024em;
  border-radius: 8px 8px 0 0;
  line-height: 1.25;
  color: #7c96b8
}
.c-simulator_tab_item a.-active {
  background: #003b87;
  color: #fff
}
.w-simulator {
  margin-bottom: 100px;
  padding: 80px;
  border-radius: 0 0 10px 10px;
  border: 2px solid #003b87;
  box-shadow: 0 2px 2px rgba(0, 0, 0, .15)
}
.w-simulator .inner {
  max-width: 1000px;
  margin: 0 auto
}
.p-simulator_intro {
  margin-bottom: 48px
}
.p-simulator_intro h2 {
  margin-bottom: 28px;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5
}
.p-simulator_intro p {
  font-size: 1.6rem;
  line-height: 1.5
}
.p-simulator_table {
  width: 100%;
  margin-bottom: 60px;
  border-top: 1px solid #ddd;
  border-collapse: collapse
}
.p-simulator_table th, .p-simulator_table td {
  padding: 24px 20px;
  border-bottom: 1px solid #ddd;
  vertical-align: middle
}
.p-simulator_table th {
  position: relative;
  width: 280px;
  padding-right: 80px;
  font-weight: 700;
  font-size: 2rem;
  text-align: left
}
.p-simulator_table th span {
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
  display: block;
  width: 48px;
  height: 24px;
  border-radius: 3px;
  background: #dc4748;
  font-size: 1.2rem;
  color: #fff;
  text-align: center;
  line-height: 23px
}
.p-simulator_table th i {
  font-style: normal;
  font-size: 1.4rem
}
.p-simulator_table td {
  width: calc(100% - 320px);
  font-size: 1.6rem;
  font-weight: 700
}
.btn-loan {
  display: inline-block;
  height: 28px;
  width: 134px;
  margin-top: 12px;
  border-radius: 3px;
  border: 1px solid #003b87;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
  color: #003b87;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 27px;
  text-align: center;
  text-decoration: none;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.btn-loan:hover {
  background: #e8ecf7;
  box-shadow: none;
  transform: translateY(1px);
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.w-financial {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  opacity: 0;
  transition: opacity .3s ease;
  pointer-events: none
}
.w-financial.-show {
  opacity: 1;
  transition: opacity .3s ease;
  pointer-events: all
}
.p-financial {
  position: relative;
  z-index: 1;
  width: 90%;
  max-width: 1200px;
  max-height: 90vh;
  overflow-y: auto;
  padding: 40px;
  border-radius: 8px;
  background: #fff
}
.c-financial_close {
  position: sticky;
  top: 0;
  right: 0;
  display: block;
  margin: 0 0 0 auto;
  width: 48px;
  height: 48px;
  background: url(/common/img/ico_close.svg) center /32px 32px no-repeat;
  cursor: pointer;
  content: '';
  transform: translate(16px, -16px)
}
.p-financial h2 {
  margin-top: -48px;
  font-size: 2.2rem;
  padding-left: 12px;
  border-left: 2px solid #003b87
}
.p-financial h3 {
  margin: 28px 0 20px;
  font-size: 1.8rem;
  font-weight: 700
}
#interest_selector {
  padding: 10px 16px;
  background: #f4f4f4;
  border: 1px solid #ddd;
  font-size: 1.5rem
}
.p-financial_list {
  display: none
}
.p-financial_list::after {
  content: '';
  display: block;
  width: calc((100% - 60px) / 3)
}
.p-financial_list.-show {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.c-financial_item {
  width: calc((100% - 60px) / 3);
  margin-top: -1px;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd
}
.c-financial_item > a {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0 16px 18px;
  font-size: 1.5rem;
  text-decoration: none;
  transition: color .3s ease
}
.c-financial_item > a::before {
  position: absolute;
  right: 0;
  bottom: -1px;
  width: 0;
  height: 1px;
  background: #008086;
  content: '';
  transition: width .3s ease
}
.c-financial_item > a::after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #ddd;
  border-right: 2px solid #ddd;
  transform: rotate(45deg);
  content: '';
  transition: border-color .3s ease
}
.c-financial_item > a strong {
  margin-right: .2em;
  font-size: 1.2em
}
.c-financial_item > a:hover {
  color: #008086;
  transition: color .3s ease
}
.c-financial_item > a:hover::before {
  width: 100%;
  left: 0;
  right: auto;
  transition: width .3s ease
}
.c-financial_item > a:hover::after {
  border-color: #008086
}
.c-financial_item > a.-disable {
  pointer-events: none;
  color: #ccc
}
.c-financial_item > a.-disable span {
  display: none
}
.p-financial_note {
  margin-top: 20px;
  padding-left: 1em;
  font-size: 1.2rem;
  text-indent: -1em;
  line-height: 1.4
}
.p-financial_note::before {
  content: '※'
}
.c-financial_overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .8)
}
.p-simulator_data {
  display: flex;
  align-items: center
}
.c-data_input {
  display: flex;
  align-items: center;
  width: 290px;
  margin-right: 20px
}
.p-simulator_data select {
  width: 140px;
  margin-right: 10px;
  padding: 16px;
  border-radius: 8px;
  background: #f6f6f6;
  border: 1px solid #ddd;
  font-weight: 700
}
.c-data_input input {
  width: 120px;
  margin-right: 10px;
  padding: 14px;
  border-radius: 8px;
  background: #f6f6f6;
  border: 1px solid #ddd;
  font-size: 2rem;
  font-weight: 700;
  text-align: center
}
.c-data_input ul {
  width: 110px;
  margin-left: 16px
}
.c-data_input li {
  margin-bottom: 4px;
  padding-left: 1em;
  font-size: 1.3rem;
  font-weight: 400;
  color: #003b87;
  text-indent: -1em;
  line-height: 1.3
}
.c-data_input li:last-child {
  margin-bottom: 0
}
.c-data_input li::before {
  content: '※'
}
.c-data_meter {
  width: 320px
}
.c-data_meter input {
  width: 100%
}
.c-data_input input[type="number"]::-webkit-outer-spin-button, .c-data_input input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0
}
.c-data_input input[type="number"] {
  -moz-appearance: textfield
}
.c-data_meter input[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  outline: none;
  height: 14px;
  width: 100%;
  background: #c9d6e7;
  border-radius: 10px;
  border: solid 3px #edf2f7
}
.c-data_meter input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: #003b87;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, .15)
}
.c-data_meter input[type="range"]::-moz-range-thumb {
  background: #003b87;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, .15);
  border: none
}
.c-data_meter input[type="range"]::-moz-focus-outer {
  border: 0
}
.c-data_meter input[type="range"]:active::-webkit-slider-thumb {
  box-shadow: 0 5px 10px -2px rgba(0, 0, 0, .3)
}
input[type=range]::-ms-fill-lower {
  background: #1a5aad
}
.p-simulator_result {
  position: fixed;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: baseline;
  width: 100%;
  max-width: 956px;
  background: #f5f8fc;
  color: #96a2b1;
  opacity: 0;
  pointer-events: none
}
.p-simulator_result.-show {
  opacity: .9;
  pointer-events: all;
  transition: opacity .3s ease
}
.p-simulator_result.-active {
  opacity: .9;
  color: #fff;
  pointer-events: all;
  background: #003b87;
  transition: opacity .3s ease, background .3s ease
}
.p-simulator_result.-stop {
  position: relative;
  max-width: 100%
}
.p-simulator_result .hl-result {
  position: relative;
  width: 50%;
  padding: 28px 0;
  background: rgba(0, 0, 0, .3);
  margin-right: 40px;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 700;
  text-align: center;
  letter-spacing: .06em
}
.p-simulator_result .hl-result::after {
  position: absolute;
  top: 0;
  right: -16px;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 38px 0 38px 16px;
  border-color: transparent transparent transparent rgba(0, 0, 0, .3)
}
.p-simulator_result.-active .hl-result {
  background: #04254e
}
.p-simulator_result.-active .hl-result::after {
  border-color: transparent transparent transparent #04254e
}
.p-simulator_result dl {
  position: relative;
  top: 3px;
  display: flex;
  align-items: baseline;
  justify-content: center;
  flex-wrap: wrap;
  width: 60%;
  font-weight: 700;
  font-size: 1.6rem
}
.p-simulator_result dl.-monthly {
  top: -8px
}
.p-simulator_result dt {
  margin-right: 8px;
  letter-spacing: .06em
}
.p-simulator_result dd .result {
  position: relative;
  top: 3px;
  margin: 0 3px;
  font-size: 3.2rem
}
.p-simulator_result.-active dd .result {
  color: #f5ac19;
  transition: color .3s ease
}
.p-simulator_result dd.-bonus {
  font-size: 1.4rem;
  width: 100%;
  margin-top: 3px;
  text-align: center
}
.p-simulator_result dd.-bonus strong {
  font-size: 1.2em
}
.p-simulator_result.-active dd.-bonus strong {
  color: #f5ac19
}
.p-loan_result {
  margin-top: 32px;
  padding: 16px 24px 24px;
  background: #f6f9fc
}
.p-loan_result dl {
  display: flex;
  justify-content: center;
  align-items: baseline;
  font-size: 1.8rem;
  font-weight: 700
}
.p-loan_result dt {
  margin-right: 20px
}
.p-loan_result dd .result {
  position: relative;
  top: 3px;
  margin: 0 3px;
  font-size: 4rem;
  color: #003b87
}
.p-simulator_note {
  margin-top: 40px;
  margin-bottom: 40px
}
.p-simulator_note > li {
  margin-bottom: 8px;
  padding-left: 1em;
  font-size: 1.4rem;
  text-indent: -1em;
  line-height: 1.4
}
.p-simulator_note > li::before {
  content: '※'
}
.btn-search {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  border: none;
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  padding: 15px 10px;
  border-radius: 3px;
  background: #f5ac19;
  cursor: pointer;
  box-shadow: 0 2px 1px rgba(0, 0, 0, .2);
  max-width: 480px;
  text-decoration: none;
  line-height: 1.4;
  transition: background .3s ease, box-shadow .3s ease
}
.btn-search.-disable {
  background: #b4b5b8;
  pointer-events: none;
  box-shadow: none;
  transition: background .3s ease, box-shadow .3s ease
}
.btn-search span {
  display: inline-block;
  padding: 4px 0 4px 30px;
  background: url(/common/img/ico_house.png) center left /22px auto no-repeat
}
.p-message {
  display: none;
  margin-bottom: 40px;
  padding: 40px;
  border-radius: 6px;
  background: #fbf1c7;
  text-align: center;
  font-size: 2rem;
  line-height: 2;
  font-weight: 700;
  color: #eb4430;
  opacity: 1
}
.p-message span {
  position: relative;
  display: inline-block
}
.p-message span::before {
  position: absolute;
  left: -3px;
  bottom: 7px;
  z-index: -1;
  width: calc(100% + 4px);
  height: 10px;
  background: #fcff4e;
  content: ''
}
.p-message_sub {
  position: fixed;
  bottom: 76px;
  width: 100%;
  max-width: 956px;
  padding: 20px;
  background: #fff2bc;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.6;
  font-weight: 700;
  color: #e5351f;
  opacity: 0;
  pointer-events: none
}
.p-message_sub span {
  position: relative;
  display: inline-block
}
.p-message_sub span::before {
  position: absolute;
  left: -3px;
  bottom: 3px;
  z-index: -1;
  width: calc(100% + 4px);
  height: 7px;
  background: #fcff4e;
  content: ''
}
.p-message_sub.-show {
  opacity: .9;
  transition: opacity .3s ease;
  pointer-events: all
}
.p-message_sub.-hidden {
  opacity: 0;
  transition: opacity .3s ease;
  pointer-events: none
}
.js-result_stop {
  height: 76px
}
.js-result_stop.-total-stop {
  height: 0
}
@media only screen and (max-width:1400px) {
  .w-simulator {
    padding: 60px 40px
  }
  .w-simulator .inner {
    max-width: 800px
  }
  .p-message_sub {
    max-width: 800px
  }
  .p-simulator_result {
    max-width: 800px
  }
  .c-data_input {
    flex-wrap: wrap;
    width: 180px
  }
  .c-data_input ul {
    width: 100%;
    margin: 10px 0 0
  }
  .c-data_meter {
    width: 280px
  }
}
@media only screen and (max-width:1120px) {
  .w-simulator .inner {
    max-width: 100%
  }
  .p-message_sub {
    max-width: calc(100% - 80px - 10vw)
  }
  .p-simulator_result {
    max-width: calc(100% - 80px - 10vw)
  }
}
@media only screen and (max-width:900px) {
  .c-simulator_tab_item a {
    justify-content: center;
    font-size: 1.4rem
  }
  .w-simulator {
    padding: 60px 32px
  }
  .p-simulator_intro h2 {
    margin-bottom: 24px;
    font-size: 2.4rem
  }
  .p-simulator_table th, .p-simulator_table td {
    padding: 24px 0
  }
  .p-simulator_table th {
    width: 210px;
    padding-right: 64px;
    font-size: 1.8rem
  }
  .p-simulator_table th.-bonus {
    padding-right: 0
  }
  .p-simulator_table td {
    padding-left: 20px
  }
  .p-simulator_data {
    display: block
  }
  .p-financial {
    padding: 28px
  }
  .c-financial_item {
    width: calc((100% - 24px) / 2)
  }
  .c-data_input {
    width: 100%;
    margin: 0 0 20px
  }
  .c-data_input ul {
    width: auto;
    margin: 0 0 0 16px
  }
  .c-data_meter {
    width: 100%
  }
  .p-simulator_result {
    max-width: calc(90% - (32px * 2))
  }
  .p-simulator_result.-stop {
    max-width: 100%
  }
  .p-simulator_result .hl-result {
    font-size: 1.8rem
  }
  .p-simulator_result dl {
    font-size: 1.6rem
  }
  .p-simulator_result dd .result {
    font-size: 3.2rem
  }
  .p-message {
    padding: 32px 24px
  }
  .p-message_sub {
    max-width: calc(90% - (32px * 2))
  }
  .js-result_stop {
    height: 80px
  }
}
@media only screen and (max-width:600px) {
  .c-simulator_tab_item a {
    padding: 0 16px;
    font-size: 1.3rem
  }
  .w-simulator {
    padding: 40px 20px
  }
  .p-simulator_intro h2 {
    margin-bottom: 20px;
    font-size: 2rem
  }
  .p-simulator_table {
    margin-bottom: 48px
  }
  .p-simulator_table tr {
    display: block;
    position: relative
  }
  .p-simulator_table th, .p-simulator_table td {
    display: block;
    width: 100%
  }
  .p-simulator_table th {
    padding: 34px 0;
    border-bottom: none;
    font-size: 1.6rem
  }
  .p-simulator_table th.-bonus {
    padding: 26px 0
  }
  .p-simulator_table th span {
    display: inline-block;
    right: auto;
    width: 40px;
    font-size: 1.1rem;
    margin-left: 10px
  }
  .p-simulator_table th i {
    display: block;
    margin-top: 4px;
    font-size: 1.2rem
  }
  .p-simulator_table th br {
    display: none
  }
  .btn-loan {
    position: absolute;
    left: 0;
    bottom: -4px
  }
  .p-simulator_table td {
    padding: 4px 0 22px;
    font-size: 1.4rem
  }
  .p-simulator_table th.-hasbutton + td {
    margin-top: 20px
  }
  .p-financial {
    padding: 20px 16px
  }
  .p-financial h2 {
    padding-left: 8px;
    font-size: 1.8rem
  }
  .p-financial h3 {
    margin: 22px 0 16px;
    font-size: 1.5rem
  }
  #interest_selector {
    font-size: 1.3rem
  }
  .c-financial_item {
    width: 100%
  }
  .c-financial_item > a {
    padding: 12px 0 12px 14px;
    font-size: 1.3rem
  }
  .c-financial_item > a::after {
    width: 5px;
    height: 5px
  }
  .p-financial_note {
    margin-top: 16px;
    font-size: 1.1rem
  }
  .c-data_input {
    position: absolute;
    top: 16px;
    right: 0;
    width: 124px
  }
  .c-data_input input {
    width: 80px;
    margin-right: 6px;
    padding: 12px;
    font-size: 1.6rem
  }
  .c-data_input ul {
    margin: 6px 0 0
  }
  .c-data_input li {
    font-size: 1rem
  }
  .p-simulator_data select {
    width: 100%
  }
  .c-data_meter input[type="range"] {
    pointer-events: none
  }
  .c-data_meter input[type="range"]::-webkit-slider-thumb {
    pointer-events: all
  }
  .c-data_meter input[type="range"]::-moz-range-thumb {
    pointer-events: all
  }
  .p-simulator_result {
    left: calc(5% + 2px);
    display: block;
    max-width: calc(90% - 4px);
    padding: 20px 0 16px
  }
  .p-simulator_result.-stop {
    left: 0;
    max-width: 100%
  }
  .p-simulator_result .hl-result {
    position: absolute;
    top: -16px;
    left: 0;
    right: 0;
    margin: auto;
    width: 164px;
    padding: 10px 0;
    border-radius: 20px;
    font-size: 1.2rem;
    text-align: center
  }
  .p-simulator_result .hl-result::after {
    top: auto;
    right: 0;
    bottom: -6px;
    left: 0;
    width: 0;
    height: 0;
    margin: auto;
    border-style: solid;
    border-width: 6px 8px 0 8px;
    border-color: rgba(0, 0, 0, .3) transparent transparent transparent
  }
  .p-simulator_result.-active .hl-result {
    background: #04254e
  }
  .p-simulator_result.-active .hl-result::after {
    border-color: #04254e transparent transparent transparent
  }
  .p-simulator_result dl {
    width: 100%;
    font-size: 1.4rem
  }
  .p-simulator_result dl.-monthly {
    top: 3px
  }
  .p-simulator_result dd .result {
    top: 2px;
    margin: 0 2px;
    font-size: 2.4rem
  }
  .p-loan_result {
    margin-top: 20px;
    padding: 8px 16px 16px
  }
  .p-loan_result dl {
    font-size: 1.4rem
  }
  .p-loan_result dt {
    margin-right: 10px
  }
  .p-simulator_result dd.-bonus {
    font-size: 1.3rem
  }
  .p-loan_result dd .result {
    top: 2px;
    margin: 0 2px;
    font-size: 2.4rem
  }
  .btn-search {
    margin: 0 auto;
    padding: 14px 16px;
    font-size: 1.3rem
  }
  .btn-search span {
    padding-left: 22px;
    background-size: 16px auto
  }
  .p-message {
    padding: 28px 20px;
    font-size: 1.4rem;
    line-height: 1.6
  }
  .p-message span::before {
    bottom: 5px;
    height: 7px
  }
  .p-simulator_note > li {
    font-size: 1.2rem
  }
  .p-message br {
    display: none
  }
  .p-message_sub {
    bottom: 63px;
    left: calc(5% + 2px);
    max-width: calc(90% - 4px);
    padding: 14px 6px 25px;
    font-size: 1.2rem;
    line-height: 1.6
  }
  .p-message_sub.-monthly {
    bottom: 87px
  }
  .p-message_sub span::before {
    height: 5px
  }
  .js-result_stop {
    height: 63px
  }
}
.w-result_conditions {
  display: none
}
.w-result_conditions.-show {
  display: block
}
.p-case_tab {
  position: relative;
  display: flex;
  justify-content: space-between
}
.p-case_tab::after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 4000px;
  height: 2px;
  margin-left: -400px;
  background: #003b87;
  content: ''
}
.p-case_tab .c-tab_item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 49%;
  height: 56px;
  background: #fff;
  border: 2px solid #003b87;
  border-radius: 6px 6px 0 0;
  font-size: 1.8rem;
  text-decoration: none;
  letter-spacing: .024em;
  line-height: 1.25;
  color: #003b87;
  cursor: pointer;
  opacity: .4;
  transition: opacity .3s ease
}
.p-case_tab .c-tab_item:hover {
  opacity: 1;
  transition: opacity .3s ease
}
.p-case_tab .c-tab_item.-active {
  background: #eef2f7;
  border-bottom: none;
  font-weight: 700;
  opacity: 1
}
.p-case_tab .c-tab_item span {
  display: inline-block;
  padding: 1px 0 0 24px;
  background: center left /16px 16px no-repeat
}
.p-case_tab .c-tab_item[data-tab="conditions"] span {
  background-image: url(/case/img/ico_sort.png)
}
.p-case_tab .c-tab_item[data-tab="image"] span {
  background-image: url(/case/img/ico_house_image.png)
}
.p-case_sort {
  position: relative;
  margin-bottom: 60px;
  padding: 40px 0 28px;
  background: #eef2f7
}
.p-case_sort.-fixed {
  position: fixed;
  z-index: 1;
  top: 0;
  max-width: 1220px;
  margin-bottom: 0;
  padding: 20px 0 12px;
  transition: .3s ease
}
.p-case_sort.-fixed + .p-case_list_interview {
  margin-top: 380px
}
.p-case_sort::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 4000px;
  height: 100%;
  margin-left: -400px;
  background: #eef2f7;
  content: ''
}
.p-case_sort.-column {
  padding: 40px 0
}
@media only screen and (max-width:750px) {
  .p-case_sort.-column {
    padding: 20px 0
  }
}
.hl-case_sort {
  margin-bottom: 16px;
  padding-left: 8px;
  border-left: 2px solid #022d6a;
  font-weight: 700;
  font-size: 1.6rem;
  text-align: left
}
.p-case_sort.-fixed .hl-case_sort {
  display: none
}
.p-sort_area {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 24px
}
.p-case_sort.-fixed .p-sort_area {
  margin-bottom: 4px
}
.p-sort_area::before, .p-sort_area::after {
  content: '';
  display: block;
  width: calc((100% - (12px * 4)) / 5)
}
.p-sort_area::before {
  order: 1
}
.p-sort_area > li {
  width: calc((100% - (12px * 4)) / 5);
  margin-bottom: 12px
}
.p-case_sort.-fixed .p-sort_area > li {
  margin-bottom: 10px
}
.p-sort_area > li a {
  display: block;
  height: 36px;
  border-radius: 3px;
  border: 1px solid #003b87;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
  color: #003b87;
  font-size: 1.5rem;
  line-height: 35px;
  text-align: center;
  text-decoration: none;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease, color .3s ease
}
.p-sort_area > li a:hover {
  background: #003b87;
  color: #fff;
  box-shadow: none;
  transform: translateY(1px);
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease, color .3s ease
}
.p-sort_tag {
  display: flex;
  flex-wrap: wrap
}
.p-sort_tag > li {
  display: inline-block;
  margin: 0 4px 4px 0
}
.p-sort_tag > li a {
  display: block;
  padding: 6px 10px;
  border-radius: 16px;
  font-size: 1.4rem;
  text-decoration: none;
  transition: background .3s ease
}
.p-sort_tag > li a::before {
  content: '#';
  color: #003b87;
  font-weight: 700
}
.p-sort_tag > li a:hover {
  background: #d4dde7;
  transition: background .3s ease
}
.p-case_list_interview .hl-case_list {
  margin-bottom: 32px;
  padding-left: 14px;
  border-left: 2px solid #022d6a;
  font-size: 2.7rem;
  letter-spacing: .08em
}
.p-case_list_interview .p-list_interview {
  flex-wrap: wrap
}
.p-case_list_interview .p-list_interview::after {
  content: '';
  display: block;
  width: 31%
}
.p-case_list_interview .c-interview_item {
  margin-bottom: 40px
}
.p-case_list_interview .c-interview_item .c-thumb {
  height: 200px;
  margin-bottom: 14px
}
.p-case_list_interview .c-interview_item .c-text {
  height: auto
}
.p-case_list_interview .c-interview_item .c-name {
  margin-top: 8px
}
.p-case_list_interview .c-interview_item .c-tag {
  margin-top: 12px
}
.p-case_list_interview .c-interview_item .c-tag > li {
  display: inline-block;
  margin: 0 6px 6px 0;
  font-size: 1.2rem;
  color: #2d3858
}
.p-case_list_interview .c-interview_item .c-tag > li::before {
  content: '#'
}
.w-result_image {
  display: none
}
.w-result_image.-show {
  display: block
}
.p-search_image {
  margin-top: 56px
}
.p-search_image_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.c-search_image_item {
  width: 48%;
  margin-bottom: 40px
}
.c-search_image_item a {
  display: block;
  text-decoration: none
}
.c-search_image_item figure {
  margin: 0
}
.c-search_image_item img {
  margin-bottom: 20px;
  max-width: 100%
}
.c-search_image_item figcaption {
  font-size: 1.6rem;
  font-weight: 700
}
.p-case_sort.-column .p-sort_area {
  width: calc(100% - 200px);
  padding-left: 20px;
  justify-content: flex-start
}
.p-case_sort.-column .p-sort_area > li {
  width: calc((100% - (4px * 4)) / 5);
  margin: 0 4px 4px 0
}
.p-case_sort.-column .p-sort_area > li:nth-of-type(5n) {
  margin-right: 0
}
.p-case_sort.-column .p-sort_area > li.-current a {
  background: #f6ac19;
  border-color: #f6ac19;
  box-shadow: 0 0 0;
  color: #fff
}
@media only screen and (max-width:900px) {
  .p-case_tab .c-tab_item {
    height: 40px;
    padding: 0 22px;
    font-size: 1.4rem
  }
  .p-case_sort {
    padding: 24px 0 20px
  }
  .p-sort_area > li {
    width: calc((100% - (12px * 3)) / 4)
  }
  .p-sort_area > li a {
    height: 32px;
    line-height: 31px;
    font-size: 1.4rem
  }
  .p-sort_tag > li a {
    font-size: 1.2rem
  }
  .p-case_list_interview .c-interview_item {
    width: 49%
  }
  .p-case_list_interview .c-interview_item a {
    display: block;
    padding: 6px 8px
  }
  .p-case_list_interview .c-interview_item .c-thumb {
    width: 100%;
    height: 24vw;
    margin-bottom: 16px
  }
  .p-case_list_interview .c-interview_item .c-box_text {
    width: 100%;
    padding-left: 0
  }
  .p-search_image {
    margin-top: 48px
  }
  .c-search_image_item img {
    margin-bottom: 16px
  }
}
@media only screen and (max-width:600px) {
  .p-case_tab .c-tab_item {
    border-radius: 4px 4px 0 0
  }
  .p-case_sort {
    margin-bottom: 32px;
    padding: 20px 0 16px
  }
  .hl-case_sort {
    margin-bottom: 12px;
    font-size: 1.4rem
  }
  .p-sort_area > li {
    width: calc((100% - (12px * 1)) / 3);
    margin-bottom: 8px
  }
  .p-sort_area > li a {
    height: 28px;
    line-height: 27px;
    font-size: 1.1rem
  }
  .p-sort_tag > li a {
    padding: 4px 6px
  }
  .p-case_list_interview .hl-case_list {
    padding-left: 10px;
    font-size: 2.2rem
  }
  .p-case_list_interview .c-interview_item {
    width: 100%;
    max-width: none;
    margin-bottom: 24px
  }
  .p-case_list_interview .c-interview_item a {
    padding: 0
  }
  .p-case_list_interview .c-interview_item .c-thumb {
    height: 54vw;
    max-height: none;
    margin-bottom: 12px
  }
  .c-interview_item .c-thumb img {
    width: 100%
  }
  .p-case_list_interview .c-interview_item .c-text {
    font-size: 1.5rem
  }
  .p-case_list_interview .c-interview_item .c-name {
    margin-top: 8px;
    font-size: 1.3rem
  }
  .p-case_list_interview .c-interview_item .c-name .-label {
    margin-right: 6px;
    font-size: 1.2rem
  }
  .p-search_image {
    margin-top: 28px
  }
  .c-search_image_item {
    width: 100%;
    margin-bottom: 24px
  }
  .c-search_image_item img {
    margin-bottom: 12px
  }
  .c-search_image_item figcaption {
    font-size: 1.4rem
  }
}
.p-case_sort.-column .c-group_sort {
  display: flex;
  justify-content: flex-start
}
.p-case_sort.-column * + .c-group_sort {
  margin-top: 20px
}
@media only screen and (max-width:750px) {
  .p-case_sort.-column * + .c-group_sort {
    margin-top: 10px
  }
}
.p-case_sort.-column .hl-case_sort {
  width: 200px;
  padding: 10px 0 0 0;
  border: none
}
.p-case_sort.-column .hl-case_sort span {
  border-left: 4px solid #3f80d4;
  padding-left: 15px
}
.p-case_sort.-column .p-sort_area {
  width: calc(100% - 200px);
  padding-left: 20px;
  justify-content: flex-start
}
.p-case_sort.-column .p-sort_area > li {
  width: calc((100% - (4px * 4)) / 5);
  margin: 0 4px 4px 0
}
.p-case_sort.-column .p-sort_area > li:nth-of-type(5n) {
  margin-right: 0
}
.p-case_sort.-column .p-sort_area > li.-current a {
  background: #f6ac19;
  border-color: #f6ac19;
  box-shadow: 0 0 0;
  color: #fff
}
@media only screen and (max-width:960px) {
  .p-case_sort.-column .c-group_sort {
    flex-direction: column
  }
  .p-case_sort.-column .p-sort_area {
    width: calc(100%);
    padding-left: 0
  }
}
@media only screen and (max-width:720px) {
  .p-case_sort.-column .p-sort_area > li {
    width: calc((100% - (4px * 3)) / 4)
  }
  .p-case_sort.-column .p-sort_area > li:nth-of-type(5n) {
    margin-right: 4px
  }
  .p-case_sort.-column .p-sort_area > li:nth-of-type(4n) {
    margin-right: 0
  }
}
@media only screen and (max-width:600px) {
  .p-case_sort.-column .p-sort_area > li {
    width: calc((100% - (4px * 2)) / 3)
  }
  .p-case_sort.-column .p-sort_area > li:nth-of-type(4n) {
    margin-right: 4px
  }
  .p-case_sort.-column .p-sort_area > li:nth-of-type(3n) {
    margin-right: 0
  }
}
.p-case_title {
  margin-bottom: 0 !important
}
.p-case_title .hl-content_large {
  margin-bottom: 30px
}
.p-case_head {
  position: relative;
  display: flex;
  justify-content: space-between;
  padding-bottom: 0
}
.p-case_head::before {
  display: none
}
.p-case_head .c-head_figure {
  position: relative;
  left: 0;
  width: 60%;
  margin: 0
}
.p-case_head .c-head_figure img {
  width: 100%;
  height: 480px;
  object-fit: cover;
  object-position: top;
  box-shadow: 0 8px 24px -2px rgba(0, 0, 0, .12)
}
.p-case_head .c-head_text {
  position: relative;
  width: 40%;
  margin: 0;
  padding: 48px 0 0 60px;
  border-radius: 0;
  background: transparent
}
.p-case_head .c-head_text h1 {
  margin-bottom: 40px;
  font-size: 3.8rem;
  line-height: 1.4
}
.p-case_head .c-head_text h2 {
  font-size: 2rem;
  color: #003b87;
  line-height: 1.4
}
.p-case_head .c-head_content {
  position: relative;
  min-height: 320px;
  padding: 40px 0 100px
}
.p-case_head .c-head_content::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: -65vw;
  z-index: -1;
  width: 200vw;
  height: 100%;
  background: #f7f8fa
}
.c-head_data {
  margin: 14px 0 6px;
  display: flex;
  align-items: center
}
.p-case_head .c-head_num {
  display: inline-block;
  margin: 0 8px 0 0;
  padding: 6px 10px;
  background: #003b87;
  color: #fff;
  font-size: 1.2rem
}
.p-case_head .c-head_name {
  margin: 0;
  font-size: 1.6rem
}
.p-case_head .c-head_text h3 {
  position: relative;
  margin-bottom: 8px;
  font-size: 1.4rem
}
.p-case_head .c-head_text h3::before {
  position: absolute;
  left: 0;
  bottom: 14px;
  display: block;
  width: 100%;
  height: 1px;
  background: #dfe2e7;
  content: ''
}
.p-case_head .c-head_text h3 span {
  position: relative;
  display: inline-block;
  padding: 20px 10px 6px 20px;
  background: #f7f8fa url(/details/img/sales_title_accesory.png) left center /22px auto no-repeat
}
.p-case_head .c-head_reason {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.2rem;
  line-height: 1.8
}
.p-case_head .c-head_reason > li {
  margin-top: 8px
}
.p-case_head .c-head_reason > li::after {
  content: '/'
}
.p-case_head .c-head_reason > li:last-child::after {
  display: none
}
.p-case_head .c-head_tag {
  position: relative;
  margin: 40px auto 0
}
.p-case_article {
  margin-bottom: 100px;
  background: #fff
}
.p-case_article h2 {
  margin: 80px 0 40px;
  padding-left: 0;
  border-left: none;
  font-weight: 700;
  font-size: 3.2rem;
  text-align: left;
  line-height: 1.4
}
.p-case_article h3 {
  margin: 32px 0 16px;
  font-size: 2.2rem;
  color: #003b87;
  line-height: 1.4
}
.p-case_article h3:first-of-type, .mt-be-column > h3:first-child {
  margin-top: 0
}
.p-case_article p {
  margin-bottom: 20px;
  font-size: 1.6rem;
  line-height: 1.7;
  font-feature-settings: "palt";
  letter-spacing: .06em
}
.p-case_article p a {
  color: #003b87;
  border-bottom: 1px solid;
  text-decoration: none
}
.p-case_article p a[target="_blank"] {
  margin-right: 2px;
  padding-right: 18px;
  background: url(/common/img/ico_blank.svg) center right 2px /12px 12px no-repeat
}
.p-case_article p > img {
  width: 100%
}
.p-case_article figure {
  margin: 0;
  width: 100%
}
.p-case_article figure img {
  width: 100%
}
.p-case_article figcaption {
  margin-top: 8px;
  color: #666;
  font-size: 1.3rem;
  text-align: center;
  line-height: 1.3
}
.p-case_article figure + p {
  margin-top: 20px
}
.p-case_article iframe {
  width: 100%;
  margin-bottom: 20px
}
.p-case_pickup {
  margin-bottom: 100px;
  padding: 32px 32px 28px;
  background: #f6f6f6
}
.p-case_pickup .p-pickup_list {
  display: flex;
  flex-wrap: wrap
}
.p-case_pickup .p-pickup_list > li {
  display: inline-block;
  margin: 0 4px 4px 0
}
.p-case_pickup .p-pickup_list > li a {
  display: block;
  padding: 6px 10px;
  border-radius: 16px;
  font-size: 1.4rem;
  text-decoration: none;
  transition: background .3s ease
}
.p-case_pickup .p-pickup_list > li a::before {
  content: '#';
  color: #003b87;
  font-weight: 700
}
.p-case_pickup .p-pickup_list > li a:hover {
  background: #e7e7e7;
  transition: background .3s ease
}
.p-case_album {
  position: relative;
  padding: 80px 0 100px
}
.p-case_album::before {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -2000px;
  width: 4000px;
  height: 100%;
  background: #f7f8fa;
  content: ''
}
.p-case_album .hl-album {
  position: relative;
  font-size: 2.7rem;
  letter-spacing: .05em;
  margin-bottom: 4rem;
  line-height: 1.4;
  text-align: center
}
.p-case_album .hl-album::after {
  content: "";
  display: block;
  width: 36px;
  height: 2px;
  background: #f6ac19;
  margin: 20px auto 0
}
.w-album_list {
  display: none
}
.p-album_list {
  position: relative;
  overflow: visible !important
}
.p-album_list.-less3, .p-album_list.-less4 {
  margin-bottom: 0
}
.p-album_list .slick-track {
  margin: 0 auto
}
.p-album_list figure {
  margin: 0
}
.p-album_list figcaption {
  margin-top: 12px;
  font-size: 1.2rem;
  text-align: center;
  line-height: 1.4
}
.p-album_list .slick-list {
  overflow: visible
}
.p-album_list .c-album_item, .p-album_list .slick-slide {
  width: calc((100% - (20px * 3)) / 4);
  margin: 0 20px
}
.p-album_list .c-album_item figure img, .p-album_list .slick-slide img {
  width: 100%;
  height: 360px !important;
  object-fit: cover;
  border-radius: 6px
}
.p-album_list .slick-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -45px;
  display: flex;
  width: 70%;
  padding: 0;
  margin: 0 auto;
  list-style: none;
  text-align: center
}
.p-album_list.-less3 .slick-dots, .p-album_list.-less4 .slick-dots {
  display: none
}
.p-album_list .slick-dots li {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 6px;
  margin: 0;
  padding: 0;
  cursor: pointer
}
.p-album_list .slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 100%;
  height: 6px;
  padding: 0;
  background: #e5e9ef;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none
}
.p-album_list .slick-dots li.slick-active button {
  background: #004098
}
.p-album_list .slick-dots li button::before {
  display: none
}
.p-album_list .slick-prev, .p-album_list .slick-next {
  top: 180px;
  z-index: 10
}
.p-album_list .slick-prev::before, .p-album_list .slick-next::before {
  width: 24px;
  height: 24px;
  border-top: 4px solid #2e3b4c;
  border-right: 4px solid #2e3b4c
}
.w-gallery_btn {
  display: none
}
.p-case_sales {
  margin: 0 0 100px;
  padding: 86px 0
}
.p-case_sales .p-box_sales {
  padding: 48px 0
}
.p-case_sales .row-figure h3 {
  margin-bottom: 4px;
  font-size: 1.5rem
}
.p-case_sales .row-figure dl {
  display: flex;
  justify-content: center;
  margin-bottom: 20px
}
.p-case_sales .row-figure dt {
  margin-right: 12px
}
.p-box_sales .row-message h2 {
  margin-bottom: 16px;
  font-size: 1.8rem;
  color: #003b87
}
.btn-sales_others {
  display: block;
  height: 36px;
  margin-top: 12px;
  border-radius: 3px;
  border: 1px solid #003b87;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
  color: #003b87;
  font-size: 1.4rem;
  line-height: 33px;
  text-align: center;
  text-decoration: none;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.btn-sales_others:hover {
  background: #e8ecf7;
  box-shadow: none;
  transform: translateY(1px);
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.mt-be-columns {
  display: flex;
  justify-content: space-between;
  margin: 40px 0
}
.mt-be-column {
  margin-right: 48px;
  width: 100%
}
.mt-be-column:last-of-type {
  margin-right: 0
}
.p-case_conv {
  margin-top: 100px
}
.p-case_conv .inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-case_conv a {
  display: block;
  width: calc((100% - 40px) / 2)
}
.p-case_conv .-area {
  width: 100%;
  height: 100px;
  margin-bottom: 40px;
  border: none;
  background: #dc4748;
  font-size: 2.2rem;
  font-weight: 700;
  color: #fff;
  line-height: 99px;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.p-case_conv .-area span {
  padding-left: 0
}
.p-case_conv .-area:hover {
  background: #e46464;
  box-shadow: none;
  transform: translateY(2px);
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease
}
.p-case_conv .-contact span {
  background-image: url(/case/img/ico_mail_g.png)
}
.p-case_conv .-search span {
  background-image: url(/case/img/ico_house_g.png)
}
.p-recommend {
  position: relative;
  margin-top: 100px;
  padding: 80px 0 90px
}
.p-recommend::before {
  background: #f7f8fa;
  display: block;
  position: absolute;
  width: 116%;
  height: 100%;
  top: 0;
  left: -8%;
  z-index: -1;
  content: ''
}
.p-recommend .hl-recommend {
  position: relative;
  font-size: 2.7rem;
  letter-spacing: .05em;
  margin-bottom: 24px;
  line-height: 1.4;
  text-align: center
}
.p-recommend .hl-recommend::after {
  content: "";
  display: block;
  width: 36px;
  height: 2px;
  background: #f6ac19;
  margin: 20px auto 0
}
.p-recommend .hl-recommend br {
  display: none
}
.p-recommend .hl-recommend-s {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 24px;
  font-size: 1.8rem;
  color: #003b87;
  text-align: center
}
.p-recommend .hl-recommend-s span {
  margin-left: 14px;
  display: inline-block;
  padding: 6px 10px;
  border-radius: 3px;
  background: #003b87;
  font-size: 1.2rem;
  color: #fff;
  font-weight: 400
}
.p-recommend .p-list_interview {
  margin-bottom: 60px
}
.p-recommend .p-list_interview .c-interview_item:nth-child(n+4) {
  display: none
}
.p-recommend .c-interview_item .c-thumb {
  height: 228px
}
.p-recommend_list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px
}
.p-recommend_list .c-recommend_item {
  width: 31%;
  max-width: none;
  margin: 0 0 20px
}
.p-recommend_list .c-recommend_item a {
  border: none
}
.p-recommend_list .c-recommend_item img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  margin-bottom: 12px
}
.p-recommend_list .c-recommend_item dd {
  margin-bottom: 8px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4
}
.p-recommend_list .c-recommend_item dt {
  font-size: 1.3rem;
  line-height: 1.4
}
.p-recommend_tag {
  position: relative;
  text-align: center
}
.p-recommend_tag > li {
  display: inline-block;
  margin: 0 6px 12px 0
}
.p-recommend_tag > li::after {
  display: none
}
.p-recommend_tag > li a {
  display: block;
  padding: 7px 14px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid #003b87;
  font-size: 1.4rem;
  text-decoration: none;
  transition: background .3s ease, color .3s ease
}
.p-recommend_tag > li a::before {
  content: '#';
  color: #003b87;
  transition: color .3s ease
}
.p-recommend_tag > li a:hover {
  background: #003b87;
  color: #fff;
  transition: background .3s ease, color .3s ease
}
.p-recommend_tag > li a:hover::before {
  color: #fff;
  transition: color .3s ease
}
@media only screen and (max-width:1120px) {
  .p-case_head::before {
    left: -6vw
  }
  .p-case_head .c-head_figure {
    left: 0
  }
  .p-case_head .c-head_figure img {
    height: 480px
  }
  .p-recommend_list .c-recommend_item img {
    height: 160px
  }
  .p-case_head .c-head_text {
    padding: 40px 0 0 48px
  }
  .p-case_head .c-head_text h1 {
    font-size: 3.2rem
  }
}
@media only screen and (max-width:900px) {
  .p-case_head {
    display: block;
    margin: 0 0 60px;
    padding-bottom: 40px
  }
  .p-case_head::before {
    position: absolute;
    display: block;
    top: 0;
    left: -5vw;
    width: 100vw;
    height: 100%;
    background: #f7f8fa;
    content: ''
  }
  .p-case_head .c-head_figure {
    left: 0;
    width: 100%
  }
  .p-case_head .c-head_figure img {
    position: relative;
    left: -5vw;
    width: 100vw;
    height: 360px
  }
  .p-case_head .c-head_text {
    margin: 20px 0 0;
    width: 100%;
    padding: 0
  }
  .p-case_head .c-head_content::before {
    display: none
  }
  .p-case_head .c-head_text h1 {
    margin-bottom: 0;
    font-size: 2.4rem
  }
  .p-case_head .c-head_content {
    min-height: auto;
    padding: 20px 0 0
  }
  .p-case_head .c-head_text h2 {
    font-size: 1.6rem
  }
  .c-head_data {
    margin: 12px 0 6px
  }
  .p-case_head .c-head_text h3 {
    margin-bottom: 4px;
    font-size: 1.4rem
  }
  .p-case_head .c-head_tag > li {
    margin-top: 6px
  }
  .p-case_head .c-head_tag > li a {
    padding: 6px 10px;
    font-size: 1.2rem
  }
  .p-case_head .c-head_tag {
    margin: 20px auto 0
  }
  .p-case_head .c-head_tag > li {
    margin: 0 8px 8px 0
  }
  .p-case_article {
    margin-bottom: 80px
  }
  .p-case_article p {
    margin-bottom: 12px;
    font-size: 1.5rem
  }
  .p-case_article figure + p {
    margin-top: 0
  }
  .p-case_head .c-head_num {
    padding: 5px 8px;
    font-size: 1rem
  }
  .p-case_article h2 {
    margin: 48px 0 24px;
    font-size: 2rem
  }
  .p-case_article h3 {
    margin: 24px 0 12px;
    font-size: 1.7rem
  }
  .p-case_article iframe {
    margin-bottom: 12px
  }
  .mt-be-columns {
    margin: 30px 0
  }
  .mt-be-column {
    margin-right: 24px;
    width: 100%
  }
  .mt-be-column:last-of-type {
    margin-right: 0
  }
  .p-case_pickup {
    padding: 24px 24px 20px
  }
  .p-case_pickup .p-pickup_list > li a {
    font-size: 1.2rem
  }
  .p-case_album {
    padding: 40px 0 60px
  }
  .p-case_album .hl-album {
    font-size: 2rem
  }
  .p-case_album .hl-album::after {
    margin: 15px auto 0
  }
  .p-album_list.-less4 {
    margin-bottom: 30px
  }
  .p-album_list .c-album_item, .p-album_list .slick-slide {
    margin: 0 8px
  }
  .p-album_list .c-album_item figure img, .p-album_list .slick-slide img {
    height: 240px !important
  }
  .p-album_list .slick-dots {
    bottom: -32px;
    width: 90%
  }
  .p-album_list.-less4 .slick-dots {
    display: flex !important
  }
  .p-album_list .slick-prev, .p-album_list .slick-next {
    top: 120px
  }
  .p-album_list .slick-prev {
    left: -8px
  }
  .p-album_list .slick-next {
    right: -8px
  }
  .p-case_sales {
    margin: 0 0 60px;
    padding: 40px 0
  }
  .p-case_sales .p-box_sales {
    padding: 32px 0 24px
  }
  .p-case_sales .row-figure h3 {
    font-size: 1.4rem
  }
  .p-box_sales .row-message h2 {
    margin-bottom: 12px;
    font-size: 1.7rem
  }
  .btn-sales_others {
    width: 100%;
    max-width: 400px;
    margin: 16px auto 0
  }
  .p-case_conv {
    margin-top: 60px
  }
  .p-case_conv a {
    width: calc((100% - 20px) / 2);
    padding: 0;
    font-size: 1.4rem
  }
  .p-case_conv a.btn-contact:not(.-area) {
    padding: 10px 5px
  }
  .p-case_conv .-area {
    margin-bottom: 30px;
    height: 60px;
    font-size: 1.6rem;
    line-height: 59px
  }
  .p-recommend {
    margin-top: 60px;
    padding: 60px 0
  }
  .p-recommend .hl-recommend {
    font-size: 2rem
  }
  .p-recommend .hl-recommend::after {
    margin: 15px auto 0
  }
  .p-recommend .hl-recommend-s {
    margin-bottom: 18px;
    font-size: 1.5rem
  }
  .p-recommend .c-interview_item .c-thumb {
    height: 160px
  }
  .p-recommend_list {
    margin-bottom: 20px
  }
  .p-recommend_list .c-recommend_item {
    width: calc((100% - (20px * 2)) / 3);
    margin: 0 0 20px
  }
  .p-recommend_tag > li {
    margin: 0 8px 8px 0
  }
  .p-recommend_tag > li a {
    padding: 6px 10px;
    font-size: 1.2rem
  }
}
@media only screen and (max-width:700px) {
  .p-recommend .c-interview_item {
    margin: 2px auto
  }
  .p-recommend .c-interview_item .c-thumb {
    height: 100px
  }
}
@media only screen and (max-width:600px) {
  .p-case_head {
    margin: 0 0 40px
  }
  .p-case_head .c-head_figure img {
    height: 320px
  }
  .p-case_head .c-head_text {
    margin: 20px 0 0;
    padding: 0
  }
  .p-case_head .c-head_text h1 {
    margin-bottom: 0;
    font-size: 2rem;
    line-height: 1.28
  }
  .p-case_head .c-head_text h2 {
    line-height: 1.28
  }
  .c-head_data {
    margin: 10px 0 6px
  }
  .p-case_head .c-head_num {
    padding: 4px 6px
  }
  .p-case_head .c-head_name {
    font-size: 1.2rem
  }
  .p-case_head .c-head_text h3 {
    margin-bottom: 6px
  }
  .p-case_head .c-head_reason > li {
    margin-top: 6px;
    font-size: 1rem
  }
  .p-case_head .c-head_tag {
    margin: 16px auto 0
  }
  .p-case_head .c-head_tag > li {
    margin: 0 6px 6px 0
  }
  .p-case_head .c-head_tag > li a {
    padding: 4px 8px;
    font-size: 1rem
  }
  .p-case_article h2 {
    margin: 48px 0 20px
  }
  .p-case_article h3 {
    margin: 0 0 10px
  }
  .mt-be-column > h3:first-child {
    margin-top: 0
  }
  .p-case_article p > img {
    position: relative;
    left: -5vw;
    width: 100vw;
    max-width: none !important;
    margin: 12px 0 24px;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee
  }
  .p-case_article figure {
    position: relative;
    left: -5vw;
    width: 100vw;
    margin: 0 0 24px
  }
  .p-case_article figure img {
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee
  }
  .p-case_article figcaption {
    width: 90%;
    margin: 6px auto 0
  }
  .p-case_article iframe {
    height: 49vw
  }
  .mt-be-columns {
    flex-wrap: wrap;
    margin: 0
  }
  .mt-be-columns.-rev {
    flex-direction: column-reverse;
    margin-top: 20px
  }
  .mt-be-column {
    width: 100%;
    margin-right: 0
  }
  .p-case_pickup {
    margin-bottom: 80px;
    padding: 16px 12px 12px
  }
  .p-case_pickup .p-pickup_list > li a {
    padding: 4px 6px
  }
  .p-case_album .hl-album {
    margin-bottom: 24px
  }
  .p-album_list.-less3 {
    margin-bottom: 30px
  }
  .p-album_list .slick-prev, .p-album_list .slick-next {
    top: 50vw
  }
  .p-album_list.-less3 .slick-dots {
    display: flex !important
  }
  .p-album_list .slick-dots {
    bottom: -20px;
    width: calc(100% - (8px * 2))
  }
  .p-album_list .c-album_item figure img, .p-album_list .slick-slide img {
    height: 100vw !important
  }
  .w-gallery_btn {
    position: relative;
    display: block;
    margin-top: 48px;
    text-align: center
  }
  .w-album_list {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100vh;
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease
  }
  .w-album_list.-show {
    opacity: 1;
    pointer-events: all;
    transition: opacity .3s ease
  }
  .w-album_list .p-album_list {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 90%;
    max-height: 80vh
  }
  .w-album_list .p-album_list::before {
    position: absolute;
    top: -40px;
    right: 0;
    content: '';
    width: 32px;
    height: 32px;
    background: url(/common/img/close.png) center /contain no-repeat;
    pointer-events: none
  }
  .w-album_list .p-album_list::after {
    content: '';
    width: calc((100% - (2px * 2)) / 3)
  }
  .w-album_list .p-album_list .c-album_item {
    width: calc((100% - (2px * 2)) / 3);
    margin: 1px 0
  }
  .w-album_list .p-album_list .c-album_item a {
    vertical-align: bottom
  }
  .w-album_list .p-album_list .c-album_item img {
    object-fit: cover;
    height: 30vw !important;
    border-radius: 0
  }
  .w-album_list .p-album_list .mt-figure, .w-album_list .p-album_list > p {
    width: calc((100% - (2px * 2)) / 3);
    margin: 1px 0
  }
  .w-album_list .p-album_list .mt-figure a, .w-album_list .p-album_list > p a {
    vertical-align: bottom
  }
  .w-album_list .p-album_list .mt-figure img, .w-album_list .p-album_list > p img {
    object-fit: cover;
    height: 30vw !important;
    border-radius: 0
  }
  .w-album_list .p-album_list figcaption {
    display: none
  }
  .w-album_list .c-album_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .8)
  }
  .btn-gallery {
    display: inline-block;
    padding: 4px 2px 4px 26px;
    background: url(/case/img/ico_camera.png) center left 2px /16px 16px no-repeat;
    font-size: 1.4rem;
    color: #003b87;
    text-decoration: none;
    border-bottom: 1px solid #003b87
  }
  .btn-sales_others {
    font-size: 1.3rem
  }
  .p-case_conv .inner {
    display: block
  }
  .p-case_conv a {
    width: 100%;
    margin-bottom: 16px
  }
  .p-case_conv .-area {
    font-size: 1.5rem
  }
  .p-recommend .hl-recommend br {
    display: inherit
  }
  .p-recommend .hl-recommend-s {
    font-size: 1.4rem
  }
  .p-recommend .hl-recommend-s span {
    margin-left: 8px;
    padding: 4px 6px;
    font-size: 1rem
  }
  .p-recommend .c-interview_item {
    margin: 2px auto
  }
  .p-recommend .c-interview_item .c-thumb {
    height: 100px
  }
  .p-recommend_list .c-recommend_item {
    width: calc((100% - (16px * 1)) / 2)
  }
  .p-recommend_list .c-recommend_item img {
    margin-bottom: 8px
  }
  .p-recommend_list .c-recommend_item p {
    font-size: 1.2rem
  }
  .p-recommend_tag > li {
    margin: 0 6px 6px 0
  }
  .p-recommend_tag > li a {
    padding: 4px 8px;
    font-size: 1rem
  }
}
.w-location.-tabfixed {
  padding-top: 112px
}
.p-location_tab {
  display: flex;
  flex-wrap: wrap;
  padding: 20px 20px 12px;
  border-radius: 3px;
  background: #eef2f7
}
.p-location_tab.-fixed {
  position: fixed;
  top: 0;
  z-index: 2;
  width: 75vw;
  max-width: 1220px
}
.p-location_tab .c-tab_item {
  margin: 0 4px 8px 4px
}
.p-location_tab .c-tab_item a {
  display: block;
  height: 32px;
  padding: 0 12px;
  border-radius: 3px;
  border: 1px solid #003b87;
  background: #fff;
  box-shadow: 0 1px 2px rgb(0 0 0 / 15%);
  color: #003b87;
  font-size: 1.4rem;
  line-height: 31px;
  text-align: center;
  text-decoration: none;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease, color .3s ease
}
.p-location_tab .c-tab_item a:hover {
  background: #003b87;
  color: #fff;
  box-shadow: none;
  transform: translateY(1px);
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease, color .3s ease
}
.p-box_location {
  padding-top: 48px
}
.hl-location {
  margin-bottom: 20px;
  padding-left: 8px;
  border-left: 2px solid #022d6a;
  font-weight: 700;
  font-size: 2rem;
  text-align: left
}
.p-location_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-location_list::after {
  content: '';
  display: block;
  width: 31%
}
.c-location_item {
  position: relative;
  width: 31%;
  margin-top: -1px;
  padding: 18px 0 64px;
  border-top: 1px solid #dbdbe9;
  border-bottom: 1px solid #dbdbe9
}
.c-location_item dl {
  display: block
}
.c-location_item dt {
  width: 100%;
  margin-bottom: 10px;
  font-weight: 700
}
.c-location_item dt {
  padding-right: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  text-decoration: none
}
.c-location_item dt a {
  position: relative;
  display: inline-block;
  color: #003b87;
  text-decoration: none;
  border-bottom: 1px solid
}
.c-location_item dt a::before, .c-location_item dt a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  display: block;
  content: ''
}
.c-location_item dt a::before {
  right: -20px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #003b87;
  border-right: 2px solid #003b87;
  transform: rotate(45deg)
}
.c-location_item dt a::after {
  right: -20px;
  width: 10px;
  height: 2px;
  background: #003b87
}
.c-location_item dt a:hover {
  text-decoration: underline
}
.c-location_item .-address {
  width: 100%;
  margin-bottom: 10px;
  padding-right: 0;
  font-size: 1.6rem;
  line-height: 1.4
}
.c-location_item .-tel {
  position: relative;
  padding-left: 30px;
  font-weight: 700;
  font-size: 1.8rem;
  width: 100%
}
.c-location_item .-tel::before, .c-location_item .-tel::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: ''
}
.c-location_item .-tel::before {
  left: 0;
  background: #003b87;
  width: 24px;
  height: 24px;
  border-radius: 50%
}
.c-location_item .-tel::after {
  left: 7px;
  width: 10px;
  height: 10px;
  background: url(/common/img/ico_tel.png) center /contain no-repeat
}
.c-location_item .-property {
  width: 100%
}
.c-location_item .btn-property {
  position: absolute;
  left: 0;
  bottom: 20px;
  display: block;
  width: 100%;
  padding: 8px 0;
  border-radius: 3px;
  background: #26a4aa;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
  color: #fff;
  font-size: 1.4rem;
  font-weight: 400;
  text-decoration: none;
  text-align: center;
  white-space: nowrap;
  transition: background .3s ease, box-shadow .3s ease, transform .3s ease, color .3s ease
}
.c-location_item .btn-property br {
  display: none
}
@media only screen and (max-width:1120px) {
  .p-location_tab.-fixed {
    width: 90%
  }
}
@media only screen and (max-width:900px) {
  .c-location_item {
    padding: 16px 0 60px;
    width: calc((100% - (20px * 2)) / 3)
  }
  .c-location_item dt {
    width: 100%
  }
  .c-location_item .-address {
    width: 100%;
    padding-right: 20px;
    font-size: 1.3rem
  }
  .c-location_item .-tel {
    width: 100%;
    padding-left: 26px;
    font-size: 1.6rem
  }
  .c-location_item .-tel::before {
    width: 20px;
    height: 20px
  }
  .c-location_item .-tel::after {
    left: 6px;
    width: 8px;
    height: 8px
  }
  .c-location_item .-property {
    width: 130px
  }
  .c-location_item .btn-property {
    font-size: 1.2rem
  }
  .c-location_item .btn-property span {
    display: none
  }
}
@media only screen and (max-width:600px) {
  .p-box_location {
    padding-top: 40px
  }
  .p-location_tab {
    padding: 20px 12px 12px
  }
  .p-location_tab .c-tab_item a {
    padding: 0 10px;
    height: 30px;
    font-size: 1.2rem;
    line-height: 29px
  }
  .c-location_item {
    width: 100%;
    padding: 16px 0 12px
  }
  .c-location_item dl {
    display: flex;
    flex-wrap: wrap
  }
  .c-location_item dt {
    width: 100%;
    margin-bottom: 10px
  }
  .c-location_item dt a {
    font-size: 1.6rem
  }
  .c-location_item .-address {
    width: 100%;
    margin-bottom: 10px;
    padding-right: 0;
    font-size: 1.4rem
  }
  .c-location_item .-tel {
    width: calc(100% - 130px);
    padding-top: 6px
  }
  .c-location_item .-tel a {
    text-decoration: none
  }
  .c-location_item .btn-property {
    position: relative;
    left: auto;
    bottom: auto
  }
}
.w-branch_content {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  margin-bottom: -32px
}
.hl-branch {
  margin: 80px 0 24px;
  padding-left: 12px;
  border-left: 2px solid #022d6a;
  font-weight: 700;
  font-size: 2rem;
  text-align: left
}
.w-branch_content .hl-branch {
  margin-top: 32px
}
.p-box_branch {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0 30px;
 /*  border-top: 1px solid #e4e4e4 */
}
.p-box_branch.-underline {
  border-bottom: 1px solid #e4e4e4
}
.p-box_branch .btn-sales {
  display: block;
  margin-top: 10px;
  padding: 10px 10px;
  border-radius: 3px;
  background: #3f80d4;
  font-size: 1.2em;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .2);
  color: #fff;
  text-decoration: none;
  text-align: center
}
.p-box_branch .c-branch_about {
  width: calc(100% - (240px + 30px))
}
.p-branch_table {
  width: 100%;
  border-collapse: collapse
}
.p-branch_table th, .p-branch_table td {
  padding: 6px 0;
  vertical-align: middle;
  font-size: 1.4rem;
  line-height: 1.6
}
.p-branch_table th {
  width: 150px;
  text-align: left;
  white-space: nowrap
}
.p-branch_table th span {
  display: flex;
  padding: 5px;
  border-radius: 2px;
  background: #f2f2f2;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}
.p-branch_table td {
  padding-left: 12px
}
.p-branch_table td > div, .p-branch_table td > p {
  margin: 8px 0
}
.p-branch_table td a {
  font-weight: 700;
  color: #003b87
}
.p-iso_list {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-bottom: 16px;
  padding: 12px;
  border-radius: 4px;
  background: #f6f6f6
}
.c-iso_item {
  margin: 0 12px
}
.c-iso_item img {
  margin-bottom: 4px
}
.c-iso_item span {
  display: block;
  text-align: center;
  font-size: 1.1rem
}
.p-branch_message {
  margin-bottom: 16px;
  padding: 24px 32px;
  border-radius: 4px;
  background: #f0f3f8
}
.p-branch_message h3 {
  margin: 0 0 12px;
  padding: 4px 0 4px 34px;
  background: url(/common/img/ico_message.png) center left /24px 24px no-repeat;
  font-size: 1.6rem;
  color: #003b87
}
.p-branch_message p {
  font-size: 1.4rem;
  line-height: 1.8;
  color: #0c1014
}
.w-branch_message_interview {
  margin: 20px 0 -20px;
  padding-top: 20px;
  border-top: 1px solid #dee3eb
}
.w-branch_message_interview h3 {
  margin-bottom: 16px
}
.p-branch_message_interview {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-branch_message_interview .c-interview_item {
  width: calc((100% - (20px * 1)) / 2);
  margin-bottom: 20px
}
.p-branch_message_interview .c-interview_item:nth-child(n+3) {
  display: none
}
.p-branch_message_interview.-open .c-interview_item {
  display: block
}
.p-branch_message_interview .c-interview_item a {
  display: block;
  transition: color .3s ease
}
.p-branch_message_interview .c-interview_item figure {
  margin: 0;
  display: flex;
  justify-content: space-between;
  align-items: center
}
.p-branch_message_interview .c-interview_item img {
  width: 108px;
  height: auto
}
.p-branch_message_interview .c-interview_item figcaption {
  width: calc(100% - 120px);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.6
}
.p-branch_message_interview .c-interview_item a:hover {
  color: #003b87;
  transition: color .3s ease
}
.btn-interview_more {
  display: block;
  margin-bottom: 20px;
  padding: 10px;
  border: 1px solid #d4dae5;
  font-size: 1.4rem;
  text-align: center;
  cursor: pointer
}
.btn-interview_more span {
  position: relative;
  display: inline-block;
  padding-right: 18px
}
.btn-interview_more span::after {
  position: absolute;
  top: 4px;
  right: 0;
  display: block;
  width: 5px;
  height: 5px;
  border-right: 1px solid #003b87;
  border-bottom: 1px solid #003b87;
  content: '';
  transform: rotate(45deg);
  transition: transform .3s ease
}
.btn-interview_more.-active span::after {
  top: 6px;
  transform: rotate(-135deg);
  transition: transform .3s ease
}
.p-branch_movie iframe {
  width: 100%;
  height: 180px
}
.p-branch_staff {
  width: calc(100% - (280px + 60px));
    display: none;
}
.p-branch_shop {
 /*  width: 280px; */
  margin-bottom: 16px;
}
.p-branch_shop .inner {
  position: sticky;
  top: 0
}
.p-branch_shop .p-box_branch {
  display: flex;
  gap: min(4vw, 40px);
    align-items: flex-start;
}
.p-branch_shop .c-branch_image {
  width: min(40vw, 420px);
  min-height: 320px;
  overflow: hidden;
  margin: 0;
}
.p-branch_shop .c-branch_image img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
    display: block;
    object-position: 50% 50%;
}

.p-branch_shop .c-branch_image .slick-dots {
  bottom: 20px
}
.p-branch_shop .c-branch_image .slick-dots li {
  width: 12px;
  height: 12px
}
.p-branch_shop .c-branch_image .slick-dots li button {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #003b87
}
.p-branch_shop .c-branch_image .slick-dots li.slick-active button {
  background: #003b87
}
.p-branch_shop .c-branch_image .slick-dots li button::before {
  display: none
}
.p-branch_shop .c-branch_about {
  width: calc(100% - min(4vw, 40px) - min(40vw, 420px));
}

.p-branch_shop .p-branch_table {
    border-collapse: separate;
    border-spacing: 2px;
}
.p-branch_shop .p-branch_table th {
  padding: 8px 0;
  font-size: 1.4rem;
  width: 140px;
    background: #f2f2f2;
}
.p-branch_shop .p-branch_table td {
  padding: 8px 0 8px min(2.5vw, 25px);
  font-size: 1.6rem;
  width:calc(100% - 140px);
  color: #0c1014;
    line-height: 1.2;
    border-bottom: 1px solid #eee;
}

.p-branch_shop .p-branch_table a[href="#branchMap"] {
  display: inline-block;
  margin-top: 4px
}
.p-branch_shop .p-branch_message {
  padding: 20px 24px
}
.p-branch_map {
  width: 100%;
  height: 400px;
  margin-bottom: 8px
}
.p-branch_access {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse
}
.p-branch_access .p-branch_table {
  width: calc(100% - 500px)
}
.p-branch_access_send {
  display: flex;
  margin-top: 6px
}
.p-branch_access_send > li + li {
  margin-left: 8px
}
.p-branch_access_send .btn-access {
  display: block;
  width: 160px;
  padding: 6px 10px;
  border-radius: 3px;
  border: 1px solid #888;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
  font-size: 1.3rem;
  text-decoration: none;
  text-align: center
}
.p-branch_access_send .btn-access span {
  display: inline-block;
  padding: 3px 0 2px 40px;
  background: center left /32px auto no-repeat
}
.p-branch_access_send .btn-access.-gmap span {
  padding-left: 0
}
.p-branch_access_send .btn-access.-mail span {
  background-image: url(/common/img/ico_send_mail.png)
}
.p-branch_access_send .btn-access.-line span {
  background-image: url(/common/img/ico_send_line.png)
}
.p-branch_news {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-branch_news::after {
  content: '';
  display: block;
  width: 31%
}
.p-branch_news .c-news_item {
  width: 31%
}
.p-branch_news .c-news_item a {
  display: block;
  text-decoration: none
}
.p-branch_news .c-news_item figure {
  margin: 0
}
.p-branch_news .c-news_item figure img {
  width: 100%;
  height: 240px;
  margin-bottom: 20px;
  object-fit: cover
}
.p-branch_news .c-news_item dt {
  margin-bottom: 4px;
  font-size: 1.2rem
}
.p-branch_news .c-news_item .-name {
  margin-bottom: 12px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4
}
.p-branch_news .c-news_item .-content {
  font-size: 1.4rem;
  color: #0c1014;
  line-height: 1.6
}
.p-visit_news {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-visit_news::after {
  content: '';
  display: block;
  width: 31%
}
.p-visit_news .c-visit_item {
  width: 31%
}
.p-visit_news .c-visit_item a {
  display: block;
  text-decoration: none
}
.p-visit_news .c-visit_item figure {
  margin: 0
}
.p-visit_news .c-visit_item figure img {
  width: 100%;
  height: 240px;
  margin-bottom: 20px;
  object-fit: cover
}
.p-visit_news .c-visit_item figcaption {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4
}
.p-branch_contact {
  margin-top: 100px;
  padding: 32px 48px;
  background: #f7f3ed
}
.p-branch_contact br {
  display: none
}
.p-branch_contact dl {
  margin-bottom: 20px
}
.p-branch_contact dt {
  margin-bottom: 8px;
  font-size: 1.8rem;
  font-weight: 700
}
.p-branch_contact dd {
  font-size: 1.4rem;
  line-height: 1.4
}
.p-branch_contact dd strong {
  margin-right: 4px;
  color: #dc4748;
  font-size: 1.6rem;
  font-weight: 700
}
.p-branch_contact__note {
  margin-top: 16px;
  padding-left: 1em;
  font-size: 1.2rem;
  text-indent: -1em;
  line-height: 1.4
}
.btn-branch_contact {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  text-decoration: none;
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: 700;
  padding: 16px;
  border-radius: 3px;
  background: #f5ac19;
  cursor: pointer;
  box-shadow: 0 2px 1px rgba(0, 0, 0, .2)
}
.btn-branch_contact span {
  position: relative;
  display: inline-block;
  padding-right: 40px
}
.btn-branch_contact span::before, .btn-branch_contact span::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  display: block;
  margin: auto;
  content: ''
}
.btn-branch_contact span::before {
  width: 16px;
  height: 4px;
  background: #fff
}
.btn-branch_contact span::after {
  width: 10px;
  height: 10px;
  border-top: 4px solid #fff;
  border-right: 4px solid #fff;
  transform: rotate(45deg)
}
.btn-branch_contact br {
  display: inherit
}
.btn-branch_contact br.-sp {
  display: none
}
@media only screen and (max-width:1120px) {
    .p-branch_shop .p-branch_table th { width: 100px; }
    .p-branch_shop .p-branch_table td { width: calc(100% - 100px); }
}
@media only screen and (max-width:900px) {
  .w-branch_content {
    display: block;
    margin-bottom: 0
  }
  .w-branch_content .hl-branch {
    margin-top: 80px
  }
  .p-branch_message {
    padding: 24px
  }
  .p-branch_staff {
    width: 100%
  }
  .p-branch_shop {
    width: 100%;
    margin-bottom: 40px
  }
  .p-branch_shop .inner {
    position: relative;
    top: auto !important
  }
  .p-branch_shop .hl-branch {
    margin-top: 32px
  }
  .p-branch_movie iframe {
    height: 54vw
  }
  .p-branch_map {
    height: 320px
  }
  .p-branch_access {
    display: block
  }
  .p-branch_access_send {
    margin: 0 0 10px;
    justify-content: space-between;
    flex-wrap: wrap
  }
  .p-branch_access_send > li {
    width: calc((100% - 8px) / 2);
    margin-bottom: 8px
  }
  .p-branch_access_send > li:first-child {
    width: 100%
  }
  .p-branch_access_send > li + li {
    margin-left: 0
  }
  .p-branch_access_send .btn-access {
    width: 100%
  }
  .p-branch_access .p-branch_table {
    width: 100%
  }
  .p-branch_access .p-branch_table th {
    width: 120px
  }
  .p-branch_news .c-news_item figure img {
    height: 160px
  }
  .p-visit_news .c-visit_item figure img {
    height: 160px
  }
  .p-branch_contact {
    padding: 24px
  }
}
@media only screen and (max-width:768px) {
  .p-branch_shop .p-box_branch {
      flex-direction: column;
      gap: 10px;
      padding:  0 0 20px;
  }
  .p-box_branch .c-branch_image,
  .p-box_branch .c-branch_about {
    width: 100%;
    margin-bottom: 0;
  }
    .p-box_branch .c-branch_image,
    .p-box_branch .c-branch_image img {
        min-height: unset;
    }
  .p-branch_table th {
    width: 100px
  }  
    .p-branch_shop .p-branch_table th {
        font-size: 1.2rem;
        width: 80px;
    }
    .p-branch_shop .p-branch_table td {
        font-size: 1.4rem;
        width: calc(100% - 80px);
    }
}
@media only screen and (max-width:600px) {
  .hl-branch {
    margin: 36px 0 16px;
    padding-left: 8px;
    font-size: 1.6rem
  }
  .w-branch_content .hl-branch {
    margin-top: 36px
  }
  .p-branch_shop .hl-branch {
    margin-top: 24px
  }
  .p-box_branch {
    display: block;
    padding: 16px 0 12px
  }
  .p-branch_table th, .p-branch_table td {
    padding: 5px 0;
    font-size: 1.3rem
  }
  .p-branch_table td {
    padding-left: 12px
  }
  .p-branch_table th span {
    padding: 5px 8px
  }
  .p-branch_message {
    margin-bottom: 24px;
    padding: 12px 16px 16px
  }
  .p-branch_message h3 {
    margin-bottom: 4px;
    padding-left: 24px;
    font-size: 1.5rem;
    background-size: 16px 16px
  }
  .p-branch_message p {
    font-size: 1.3rem
  }
  .w-branch_message_interview {
    margin: 16px 0 -8px;
    padding-top: 16px
  }
  .w-branch_message_interview h3 {
    margin-bottom: 8px
  }
  .p-branch_message_interview .c-interview_item {
    width: 100%;
    max-width: none;
    margin: 0 0 12px
  }
  .p-branch_message_interview .c-interview_item figcaption {
    font-size: 1.1rem
  }
  .btn-interview_more {
    margin-bottom: 10px
  }
  .p-branch_shop .p-branch_message {
    margin-bottom: 16px;
    padding: 12px 16px 16px
  }
  .p-branch_map {
    height: 360px;
    margin-bottom: 12px
  }
  .p-branch_news {
    display: block
  }
  .p-branch_news .c-news_item {
    width: 100%;
    margin-bottom: 24px
  }
  .p-branch_news .c-news_item figure img {
    height: 48vw;
    margin-bottom: 12px
  }
  .p-branch_news .c-news_item dt {
    font-size: 1rem
  }
  .p-branch_news .c-news_item .-name {
    margin-bottom: 6px;
    font-size: 1.5rem
  }
  .p-branch_news .c-news_item .-content {
    font-size: 1.3rem
  }
  .p-visit_news {
    display: block
  }
  .p-visit_news .c-visit_item {
    width: 100%;
    margin-bottom: 24px
  }
  .p-visit_news .c-visit_item figure img {
    height: 48vw;
    margin-bottom: 12px
  }
  .p-visit_news .c-visit_item figcaption {
    font-size: 1.5rem
  }
  .p-branch_contact {
    margin-top: 60px;
    padding: 24px 16px
  }
  .p-branch_contact br {
    display: inherit
  }
  .p-branch_contact dt {
    font-size: 1.6rem
  }
  .p-branch_contact dd strong {
    display: inline-block;
    margin: 0 0 4px
  }
  .p-branch_contact dd strong a {
    color: #dc4748
  }
  .btn-branch_contact {
    font-size: 1.4rem
  }
  .btn-branch_contact span {
    padding-right: 20px
  }
  .btn-branch_contact span::before {
    width: 12px;
    height: 3px
  }
  .btn-branch_contact span::after {
    width: 8px;
    height: 8px;
    border-width: 3px
  }
  .btn-branch_contact br.-sp {
    display: inherit
  }
}
.w-news {
  display: flex;
  justify-content: space-between;
  font-weight: 400
}
.w-news > section {
  width: calc(100% - (280px + 80px))
}
.w-news .w-year_list {
  width: 280px;
  margin-top: 40px;
  padding: 24px 40px 40px;
  border-radius: 8px;
  background: #f6f6f6
}
.w-news .p-year_list {
  position: sticky;
  top: 0
}
.w-news .p-year_list a {
  position: relative;
  display: block;
  padding: 16px 0;
  border-bottom: 1px solid #ddd;
  font-size: 1.6rem;
  text-decoration: none
}
.w-news .p-year_list a::after {
  position: absolute;
  top: 0;
  right: 4px;
  bottom: 0;
  margin: auto;
  display: block;
  width: 5px;
  height: 5px;
  border-top: 1px solid #555;
  border-right: 1px solid #555;
  transform: rotate(45deg);
  content: ''
}
.p-news_list .c-article_item > a {
  display: flex;
  padding-right: 30px;
  line-height: 1.4;
  flex-direction: row
}
.p-news_list .c-article_item time {
  width: 9em;
  margin-bottom: 0
}
.p-news_list .c-article_item span {
  max-width: calc(100% - 9em)
}
.p-news_article {
  font-weight: 400
}
.p-news_article time {
  display: block;
  margin-bottom: 20px;
  font-size: 1.4rem;
  letter-spacing: .02em;
  color: #999
}
.p-news_article h2 {
  margin: 44px 0 20px;
  padding-left: 14px;
  border-left: 2px solid #003b87;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.4
}
.p-news_article h3 {
  margin: 32px 0 14px;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.4
}
.p-news_article p {
  margin-bottom: 20px;
  font-size: 1.6rem;
  line-height: 1.7;
  font-feature-settings: "palt";
  letter-spacing: .06em
}
.p-news_article img {
  max-width: 100%;
  height: auto
}
.p-news_article ul {
  margin: 30px 0
}
.p-news_article ul > li {
  position: relative;
  margin-bottom: .6em;
  padding-left: 14px;
  font-size: 1.6rem;
  font-feature-settings: "palt";
  letter-spacing: .06em;
  line-height: 1.7
}
.p-news_article ul > li::before {
  position: absolute;
  top: 11px;
  left: 0;
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #003b87;
  content: ''
}
.p-news_article ol {
  margin: 30px 0;
  counter-reset: number
}
.p-news_article ol > li {
  position: relative;
  margin-bottom: .6em;
  padding-left: 24px;
  font-size: 1.6rem;
  font-feature-settings: "palt";
  letter-spacing: .06em;
  line-height: 1.7
}
.p-news_article ol > li::before {
  counter-increment: number;
  content: counter(number)".";
  position: absolute;
  top: 2px;
  left: 0;
  color: #003b87;
  font-weight: 700;
  font-size: 1.5rem
}
.p-news_article table {
  margin: 30px 0
}
.p-news_article th, td {
  padding: 20px;
  font-size: 1.6rem;
  line-height: 1.5
}
.p-news_url {
  display: flex;
  align-items: center;
  margin-top: 48px;
  padding: 32px;
  background: #f6f6f6;
  font-size: 1.6rem
}
.p-news_url > dt {
  width: 140px
}
.p-news_url > dd {
  width: calc(100% - 140px)
}
.p-news_url > dd a {
  text-decoration: underline;
  color: #26a4aa;
  word-break: break-all;
  line-height: 1.2
}
.w-news_navigation {
  margin-top: 100px;
  padding: 32px 0;
  border-top: 1px solid #ddd
}
.p-news_navigation {
  display: flex;
  justify-content: center
}
.p-news_navigation > li {
  width: calc((100% - 200px) / 2)
}
.p-news_navigation > li.-list {
  width: 200px
}
.p-news_navigation > li a {
  position: relative;
  height: 100%;
  display: flex;
  justify-content: center;
  font-size: 1.4rem;
  line-height: 1.4;
  align-items: center;
  text-decoration: none
}
.p-news_navigation > li.-list a span {
  display: inline-block;
  padding-left: 28px;
  background: url(/common/img/ico_list.svg) center left /18px 18px no-repeat
}
.p-news_navigation > li.-prev a {
  justify-content: flex-start;
  padding-left: 24px
}
.p-news_navigation > li.-prev a::before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #003b87;
  border-left: 2px solid #003b87;
  content: '';
  transform: rotate(-45deg)
}
.p-news_navigation > li.-next a {
  justify-content: flex-end;
  padding-right: 24px
}
.p-news_navigation > li.-next a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #003b87;
  border-right: 2px solid #003b87;
  content: '';
  transform: rotate(45deg)
}
@media only screen and (max-width:1120px) {
  .w-news > section {
    width: calc(100% - (240px + 60px))
  }
  .w-news .w-year_list {
    width: 240px
  }
}
@media only screen and (max-width:900px) {
  .w-news {
    display: block
  }
  .w-news > section {
    width: 100%;
    margin-bottom: 40px
  }
  .w-news .w-year_list {
    width: 100%;
    margin-top: 20px;
    padding: 10px 24px 12px;
    border-radius: 4px
  }
  .w-news .p-year_list a {
    padding: 12px 0;
    font-size: 1.4rem
  }
  .w-news .p-year_list > li:last-child a {
    border-bottom: none
  }
  .p-news_list .c-article_item {
    font-size: 1.4rem
  }
  .p-news_list .c-article_item > a {
    flex-direction: column;
    padding: 20px 30px 20px 0
  }
  .p-news_list .c-article_item time {
    display: block;
    width: 100%;
    margin-bottom: 5px
  }
  .p-news_list .c-article_item span {
    display: block;
    max-width: none
  }
  .w-news_navigation {
    margin-top: 60px;
    padding: 0
  }
  .p-news_article time {
    font-size: 1.2rem
  }
  .p-news_article h2 {
    margin: 32px 0 14px;
    padding-left: 12px;
    font-size: 2rem
  }
  .p-news_article h3 {
    margin: 24px 0 10px;
    font-size: 1.7rem
  }
  .p-news_article p {
    margin-bottom: 16px;
    font-size: 1.5rem
  }
  .p-news_article ul {
    margin: 24px 0
  }
  .p-news_article ul > li {
    padding-left: 12px;
    font-size: 1.5rem
  }
  .p-news_article ul > li::before {
    top: 9px;
    width: 5px;
    height: 5px
  }
  .p-news_article ol {
    margin: 24px 0
  }
  .p-news_article ol > li {
    padding-left: 20px;
    font-size: 1.5rem
  }
  .p-news_article ol > li::before {
    top: 1px;
    font-size: 1.3rem
  }
  .p-news_article table {
    margin: 24px 0
  }
  .p-news_article th, td {
    padding: 16px 10px;
    font-size: 1.4rem
  }
  .p-news_url {
    margin-top: 32px;
    padding: 24px
  }
  .p-news_navigation {
    flex-wrap: wrap
  }
  .p-news_navigation > li {
    width: 100%
  }
  .p-news_navigation > li.-prev {
    order: 2
  }
  .p-news_navigation > li.-list {
    width: 140px;
    order: 3
  }
  .p-news_navigation > li a {
    padding: 20px 0;
    border-bottom: 1px solid #ddd;
    font-size: 1.3rem
  }
  .p-news_navigation > li.-prev a {
    padding-left: 16px
  }
  .p-news_navigation > li.-next a {
    padding-right: 16px
  }
  .p-news_navigation > li.-list a {
    height: auto;
    padding: 0;
    border-bottom: none;
    margin-top: 24px
  }
}
@media only screen and (max-width:900px) {
  .p-news_url {
    display: block;
    margin-top: 32px;
    padding: 16px;
    font-size: 1.5rem
  }
  .p-news_url > dt {
    width: 100%;
    margin-bottom: 8px
  }
  .p-news_url > dd {
    width: 100%
  }
}
.c-name .-label {
  width: 4.6em
}
.p-faq_tab {
  display: flex;
  margin-top: 48px
}
.p-faq_tab .c-tab_item + .c-tab_item {
  margin-left: 3px
}
.p-faq_tab .c-tab_item a {
  display: block;
  padding: 18px 32px;
  background: #eaeef3;
  border-radius: 8px 8px 0 0;
  font-size: 1.6rem;
  text-decoration: none;
  font-weight: 700;
  color: #7c96b8
}
.p-faq_tab .c-tab_item a.-active {
  background: #003b87;
  color: #fff;
  font-weight: 700
}
.w-faq_list {
  position: relative;
  padding-top: 60px
}
.w-faq_list::before {
  position: absolute;
  top: 0;
  left: -400px;
  z-index: -1;
  display: block;
  width: 200vw;
  height: 200%;
  border-top: 2px solid #003b87;
  content: ''
}
.p-faq_list {
  counter-reset: number 0
}
.c-faq_item {
  margin-bottom: 24px;
  border-radius: 8px;
  border: 1px solid #f0f3f7;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .12);
  overflow: hidden
}
.p-faq > dt {
  position: relative;
  padding: 24px 32px 24px 78px;
  background: #f0f3f7;
  font-size: 2rem;
  line-height: 1.4;
  cursor: pointer
}
.p-faq > dt::before {
  position: absolute;
  top: 0;
  left: 32px;
  bottom: 0;
  margin: auto;
  width: 30px;
  height: 28px;
  line-height: 28px;
  counter-increment: number 1;
  content: "Q"counter(number)"."
}
.p-faq > dd {
  padding: 24px 32px;
  background: #fff
}
.p-faq > dd h3 {
  position: relative;
  padding-right: 150px;
  font-size: 1.8rem;
  color: #003b87;
  line-height: 1.4
}
.p-faq > dd h3 a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 130px;
  height: 40px;
  border-radius: 20px;
  background: #003b87;
  font-size: 1.4rem;
  color: #fff;
  text-align: center;
  font-weight: 400;
  line-height: 40px;
  cursor: pointer
}
.p-faq > dd h3 a span {
  position: relative;
  display: inline-block;
  padding-right: 14px
}
.p-faq > dd h3 a span::after {
  position: absolute;
  display: block;
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  content: ''
}
.p-faq > dd h3 a.-next span::after {
  top: 16px;
  right: 0;
  transform: rotate(135deg);
  transition: transform .3s ease
}
.p-faq > dd h3 a.-next.-active span::after {
  top: 18px;
  transform: rotate(-45deg);
  transition: transform .3s ease
}
.p-faq > dd h3 a.-link span::after {
  transform: rotate(45deg);
  top: 0;
  right: 2px;
  bottom: 0;
  margin: auto
}
.p-faq_detail {
  display: none;
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #e4eaf1
}
.p-faq_detail > *:first-child {
  margin-top: 0
}
.p-faq_detail h4 {
  margin: 20px 0 10px;
  font-size: 1.6rem;
  line-height: 1.4
}
.p-faq_detail a {
  display: inline-block;
  padding: 10px 40px 10px 16px;
  border-radius: 4px;
  text-decoration: none;
  background: #26a4aa url(/common/img/ico_arrow_right.svg) center right 16px /12px 12px no-repeat;
  font-size: 1.6rem;
  color: #fff;
  line-height: 1.3
}
.p-faq_detail a[target="_blank"] {
  background: #26a4aa url(/common/img/ico_blank_w.svg) center right 16px /12px 12px no-repeat
}
.p-faq > dd > *:last-child {
  margin-bottom: 0
}
.p-faq > dd p {
  margin-bottom: 1em;
  font-size: 1.6rem;
  line-height: 1.6
}
.p-faq > dd ul {
  margin: 1em 0
}
.p-faq > dd ul > li {
  position: relative;
  margin-bottom: .6em;
  padding-left: 16px;
  font-size: 1.6rem;
  line-height: 1.6
}
.p-faq > dd ul.-links > li {
  padding-left: 0
}
.p-faq > dd ul > li:last-child {
  margin-bottom: 0
}
.p-faq > dd ul > li::before {
  position: absolute;
  top: 10px;
  left: 0;
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #003b87;
  content: ''
}
.p-faq > dd ul.-links > li::before {
  display: none
}
.p-faq > dd ul.-note > li {
  font-size: 1.2rem
}
.p-faq > dd ul.-note > li::before {
  top: 0;
  width: auto;
  height: auto;
  border-radius: 0;
  background: none;
  content: '※'
}
@media only screen and (max-width:900px) {
  .w-faq_list {
    padding-top: 40px
  }
  .p-faq_tab {
    margin-top: 24px
  }
  .p-faq_tab .c-tab_item a {
    padding: 14px 20px;
    font-size: 1.4rem;
    line-height: 1.25
  }
  .p-faq > dt {
    padding: 16px 20px 16px 58px;
    font-size: 1.6rem
  }
  .p-faq > dt::before {
    left: 20px
  }
  .p-faq > dd {
    padding: 20px
  }
  .p-faq > dd h3 {
    padding-right: 116px;
    font-size: 1.6rem
  }
  .p-faq > dd h3 a {
    width: 100px;
    font-size: 1.1rem
  }
  .p-faq > dd h3 a span {
    padding-right: 12px
  }
  .p-faq > dd h3 a.-next span::after {
    top: 15px
  }
  .p-faq > dd p {
    font-size: 1.4rem
  }
  .p-faq_detail h4 {
    margin: 20px 0 8px;
    font-size: 1.4rem
  }
  .p-faq > dd ul > li {
    font-size: 1.4rem
  }
  .p-faq_detail {
    margin-top: 20px;
    padding-top: 20px
  }
}
@media only screen and (max-width:600px) {
  .p-faq_tab .c-tab_item + .c-tab_item {
    margin-left: 2px
  }
  .p-faq_tab .c-tab_item a {
    padding: 14px 12px;
    font-size: 1.2rem
  }
  .w-faq_list::before {
    width: 100vw;
    left: -5vw
  }
  .c-faq_item {
    margin-bottom: 16px
  }
  .p-faq > dt {
    padding: 16px 16px 16px 50px;
    font-size: 1.4rem;
    line-height: 1.2
  }
  .p-faq > dt::before {
    left: 16px
  }
  .p-faq > dd {
    padding: 16px
  }
  .p-faq > dd h3 {
    padding-right: 0;
    font-size: 1.4rem
  }
  .p-faq > dd h3 a {
    position: relative;
    height: 36px;
    margin: 10px auto 0;
    line-height: 36px
  }
  .p-faq > dd h3 a.-next span::after {
    top: 13px
  }
  .p-faq > dd h3 a.-next.-active span::after {
    top: 17px
  }
  .p-faq_detail h4 {
    margin: 16px 0 6px;
    font-size: 1.3rem
  }
  .p-faq > dd p {
    font-size: 1.3rem;
    line-height: 1.5
  }
  .p-faq > dd ul {
    margin: .8em 0
  }
  .p-faq > dd ul > li {
    padding-left: 12px;
    font-size: 1.3rem;
    line-height: 1.4
  }
  .p-faq > dd ul > li::before {
    top: 6px;
    width: 5px;
    height: 5px
  }
  .p-faq_detail a {
    display: block;
    padding: 9px 30px 9px 12px;
    border-radius: 4px;
    background-position: center right 12px;
    font-size: 1.3rem;
    line-height: 1.3
  }
  .p-faq_detail {
    margin-top: -18px;
    padding-top: 28px
  }
}
.p-process_content .hl-content_large {
  margin: 40px 0 20px
}
.p-process_content > p {
  font-size: 1.6rem;
  line-height: 1.8
}
.p-step_order {
  position: relative;
  margin-top: 60px;
  padding-left: 48px
}
.p-step_order::before {
  position: absolute;
  top: 70px;
  left: 6px;
  display: block;
  width: 1px;
  height: calc(100% - 70px);
  background: #003b87;
  content: ''
}
.c-step_item {
  padding: 40px 0;
  border-bottom: 1px solid #ddd
}
.c-step_item:first-child {
  border-top: 1px solid #ddd
}
.p-step_box {
  display: flex
}
.c-step_title {
  width: 350px
}
.c-step_title > div {
  position: sticky;
  top: 20px;
  padding: 16px 0
}
.c-step_title h3 {
  position: relative;
  font-size: 2.2rem;
  color: #003b87;
  letter-spacing: .04em
}
.c-step_title h3::before {
  position: absolute;
  top: 0;
  left: -47px;
  bottom: 0;
  margin: auto;
  display: block;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #003b87;
  content: ''
}
.c-step_item:last-child .c-step_title h3::after {
  position: absolute;
  top: 10px;
  left: -47px;
  z-index: -1;
  display: block;
  width: 11px;
  height: 480px;
  background: #fff;
  content: ''
}
.c-step_title h3 span {
  display: inline-block;
  width: 80px;
  font-size: 1.8rem
}
.c-step_title h3 span i {
  margin-left: .16em;
  font-style: normal;
  font-size: 2.2rem
}
.p-role_list {
  position: relative;
  display: flex;
  justify-content: center;
  margin-top: 16px;
  width: 300px;
  padding: 12px 0;
  border-radius: 8px;
  background: #ebf0f7
}
.c-step_item:last-child .p-role_list::before {
  display: none
}
.p-role_list > li {
  position: relative;
  width: 49px;
  height: 53px;
  margin-right: 40px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat
}
.p-role_list > li::after {
  position: absolute;
  top: 0;
  right: -32px;
  bottom: 0;
  margin: auto;
  display: block;
  width: 24px;
  height: 24px;
  background: url(/process/img/arrow_1.png) center /contain no-repeat;
  content: ''
}
.p-role_list.-to > li::after {
  background-image: url(/process/img/arrow_2.png)
}
.p-role_list > li:last-child {
  margin-right: 0
}
.p-role_list > li:last-child::after {
  display: none !important
}
.p-role_list > li.-customer {
  background-image: url(/process/img/ico_customer.png)
}
.p-role_list > li.-company {
  background-image: url(/process/img/ico_company.png)
}
.p-role_list > li.-bank {
  background-image: url(/process/img/ico_bank.png)
}
.p-role_list > li.-service {
  background-image: url(/process/img/ico_service.png)
}
.c-step_content {
  position: relative;
  width: calc(100% - 350px);
  padding: 16px 0 16px 40px;
  border-left: 1px solid #ddd
}
.c-step_content.-hidden {
  position: relative;
  max-height: 160px;
  overflow: hidden
}
.c-step_content.-open {
  padding-bottom: 54px
}
.c-step_content.-hidden::before {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: 120px;
  background: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 80%);
  content: ''
}
.c-step_content > h4 {
  margin: 32px 0 20px;
  border-left: 8px solid #ced6e8;
  padding-left: .7em;
  letter-spacing: .08em;
  font-size: 2.2rem;
  color: #003b87;
  line-height: 1.4
}
.c-step_content > h4:first-child {
  margin-top: 0
}
.c-step_content > h5 {
  margin: 24px 0 10px;
  font-size: 1.8rem;
  letter-spacing: .06em
}
.c-step_content > p {
  margin-bottom: .8em;
  font-size: 1.4rem;
  line-height: 1.6
}
.c-step_content > p:last-child {
  margin-bottom: 0
}
.c-step_content > ul {
  margin: 20px 0;
  padding-left: 20px
}
.c-step_content > ul:last-child {
  margin-bottom: 0
}
.c-step_content > ul > li {
  margin-bottom: 8px;
  list-style: disc;
  font-size: 1.4rem;
  line-height: 1.4
}
.c-step_content > ul > li:last-child {
  margin-bottom: 0
}
.c-step_content > table {
  width: 100%;
  margin: 16px 0
}
.c-step_content th, .c-step_content td {
  padding: 16px;
  background: #f4f4f4;
  font-size: 1.4rem
}
.c-step_content > p a, .c-step_content > ul > li a {
  position: relative;
  display: inline-block;
  border-bottom: 1px solid;
  text-decoration: none;
  transition: color .3s ease
}
.c-step_content > p a[target="_blank"], .c-step_content > ul > li a[target="_blank"] {
  padding-right: 20px;
  background: url(/common/img/ico_blank.svg) center right /14px 14px no-repeat
}
.c-step_content > p a:hover, .c-step_content > ul > li a {
  color: #003b87;
  transition: color .3s ease
}
.p-note_list {
  margin: .5em 0 12px !important;
  padding-left: 0 !important
}
.p-note_list.-small {
  margin-top: .5em
}
.p-note_list > li {
  margin-bottom: 6px;
  padding-left: 1.5em;
  text-indent: -1.5em;
  font-size: 1.2rem !important;
  line-height: 1.4;
  list-style: none !important
}
.p-note_list > li:empty {
  display: none
}
.p-note_list > li::before {
  content: '※ '
}
.box-note {
  padding-left: 14px;
  margin-top: 12px;
  border-left: 1px solid #ddd
}
.box-fire-insurance {
  padding: 24px;
  background: #f4f4f4
}
.box-fire-insurance h5 {
  margin-bottom: 16px;
  font-size: 1.6rem;
  letter-spacing: .06em;
  line-height: 1.4
}
.box-fire-insurance .box-flex {
  display: flex;
  justify-content: space-between
}
.box-fire-insurance p {
  font-size: 1.4rem;
  line-height: 1.6
}
.box-fire-insurance figure {
  margin: 0 0 0 24px;
  width: 150px
}
.box-fire-insurance figure img {
  width: 100%
}
.box-fire-insurance figure figcaption {
  margin-top: 8px;
  text-align: center;
  font-size: 1.4rem
}
.box-fire-insurance figure figcaption span {
  position: relative;
  display: inline-block;
  padding-right: 16px
}
.box-fire-insurance figure figcaption span::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 5px;
  height: 5px;
  border-top: 1px solid #003b87;
  border-right: 1px solid #003b87;
  transform: rotate(45deg);
  content: ''
}
.btn-process {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 200px;
  padding: 12px 0;
  border-radius: 20px;
  background: #003b87;
  font-size: 1.4rem;
  color: #fff;
  text-align: center
}
.btn-process span {
  position: relative;
  display: inline-block;
  padding-right: 24px
}
.btn-process span::after {
  position: absolute;
  top: 2px;
  right: 0;
  display: block;
  width: 6px;
  height: 6px;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  content: '';
  transform: rotate(45deg);
  transition: transform .3s ease
}
.btn-process.-active span::after {
  top: 6px;
  transform: rotate(-135deg);
  transition: transform .3s ease
}
.p-customer_message {
  margin-top: 100px;
  padding: 32px 40px;
  border-radius: 8px;
  background: #f4f7fb;
  box-shadow: 0 4px 8px rgba(113, 146, 189, .2)
}
.p-customer_message figure {
  margin: 0 0 14px 32px;
  float: right;
  width: 160px
}
.p-customer_message figure img {
  max-width: 100%
}
.c-message_content h2 {
  margin-bottom: 20px;
  font-size: 2rem;
  letter-spacing: .04em
}
.c-message_content h2 span {
  display: inline-block;
  padding-left: 36px;
  background: url(/common/img/ico_message.png) center left /24px 24px no-repeat
}
@media only screen and (max-width:900px) {
  .p-step_order {
    padding-left: 32px
  }
  .p-step_order::before {
    top: 54px;
    height: calc(100% - 54px)
  }
  .c-step_item {
    padding: 28px 0
  }
  .c-step_title {
    width: 250px
  }
  .c-step_title h3 {
    font-size: 1.6rem
  }
  .c-step_title h3::before {
    left: -30px;
    width: 9px;
    height: 9px
  }
  .c-step_item:last-child .c-step_title h3::after {
    left: -30px
  }
  .c-step_title h3 span {
    width: 54px;
    font-size: 1.3rem
  }
  .c-step_title h3 span i {
    font-size: 1.6rem
  }
  .p-role_list {
    width: 210px
  }
  .p-role_list > li {
    width: 35px;
    height: 42px
  }
  .c-step_content {
    width: calc(100% - 210px);
    padding-left: 24px
  }
  .c-step_content > h4 {
    border-width: 6px;
    font-size: 1.8rem
  }
  .box-fire-insurance figure {
    width: 100px;
    margin: 0 0 0 16px
  }
  .box-fire-insurance figure figcaption {
    font-size: 1.2rem
  }
}
@media only screen and (max-width:600px) {
  .p-step_order {
    padding-left: 20px
  }
  .p-step_order::before {
    left: 0
  }
  .p-process_content .hl-content_large {
    margin: 32px 0 16px;
    line-height: 1.4
  }
  .c-step_item {
    padding: 24px 0
  }
  .p-step_box {
    display: block
  }
  .c-step_title {
    width: 100%
  }
  .c-step_title > div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0
  }
  .c-step_item:last-child .c-step_title h3::after {
    top: 8px;
    left: -24px
  }
  .c-step_title h3::before {
    left: -24px
  }
  .c-step_title h3 span {
    display: block;
    margin: 0 0 4px;
    font-size: 1.2rem
  }
  .c-step_title h3 span i {
    font-size: 1.4rem
  }
  .p-role_list {
    width: auto;
    margin: 0;
    padding: 7px 14px
  }
  .c-step_item:last-child .p-role_list {
    width: auto
  }
  .p-role_list::before {
    display: none
  }
  .p-role_list > li {
    width: 30px;
    height: 35px;
    margin-right: 36px
  }
  .p-role_list > li::after {
    right: -28px;
    width: 20px;
    height: 20px
  }
  .c-step_content {
    width: 100%;
    padding: 20px 0 0;
    border-left: none
  }
  .c-step_content > h4 {
    margin-bottom: 16px;
    font-size: 1.6rem
  }
  .c-step_content > h5 {
    margin: 20px 0 8px;
    font-size: 1.5rem;
    letter-spacing: .04em
  }
  .c-step_content > ul {
    margin: 16px 0
  }
  .c-step_content > ul > li {
    margin-bottom: 6px
  }
  .c-step_content th, .c-step_content td {
    padding: 14px 10px;
    font-size: 1.2rem
  }
  .box-fire-insurance .box-flex {
    flex-direction: column-reverse;
    flex-wrap: wrap
  }
  .box-fire-insurance .box-flex > div {
    width: 100%
  }
  .box-fire-insurance figure {
    width: 64%;
    margin: 0 auto 16px
  }
  .btn-process {
    width: 140px;
    font-size: 1.3rem
  }
  .btn-process span {
    padding-right: 20px
  }
  .p-customer_message {
    padding: 24px
  }
  .p-customer_message figure {
    margin: 0 auto 16px;
    float: none
  }
  .c-message_content h2 {
    margin-bottom: 10px;
    text-align: center;
    font-size: 1.8rem
  }
  .c-message_content h2 span {
    padding: 2px 12px 2px 36px
  }
  .p-point_content p {
    font-size: 1.4rem
  }
}
.p-guide_title {
  position: relative;
  margin: -15px 0 80px;
  padding: 108px 0
}
.p-guide_title::before {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  margin-left: -2000px;
  width: 4000px;
  height: 100%;
  background: url(/process/guide/img/mv.jpg) center /contain repeat-x;
  content: ''
}
.p-guide_title h2 {
  margin-bottom: 3rem;
  color: #fff;
  font-size: 2.8rem;
  letter-spacing: .05em;
  text-align: center
}
.p-guide_title h2::after {
  content: "";
  display: block;
  width: 36px;
  height: 2px;
  background: #f6ac19;
  margin: 20px auto 0
}
.p-guide_title p {
  color: #fff;
  font-size: 1.8rem;
  text-align: center;
  line-height: 1.8
}
.p-guide_title p br.-sp {
  display: none
}
.p-guide_intro {
  margin-bottom: 80px;
  font-size: 1.8rem;
  text-align: center;
  line-height: 2.2
}
.p-guide_intro strong span {
  position: relative;
  display: inline-block
}
.p-guide_intro strong span::before {
  position: absolute;
  left: 5%;
  bottom: 7px;
  z-index: -1;
  display: block;
  width: 90%;
  height: 9px;
  background: #f6e519;
  content: ''
}
.p-guide_intro br.-sp {
  display: none
}
.p-guide_point {
  position: relative;
  display: flex;
  padding: 40px 0 80px
}
.p-guide_point::before {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  margin-left: -2000px;
  width: 4000px;
  height: 100%;
  background: linear-gradient(90deg, #e2e2fd, #e5f9ee);
  content: ''
}
.p-guide_point::after {
  position: absolute;
  top: 40px;
  left: 0;
  right: 0;
  z-index: -1;
  margin: auto;
  display: block;
  width: 1px;
  height: calc(100% - 40px - 80px);
  background: #b5c8cf;
  content: ''
}
.c-point_item {
  width: 50%
}
.c-point_item a {
  display: block;
  padding: 32px;
  border-radius: 8px;
  text-align: center;
  transition: background .3s ease, transform .3s ease
}
.c-point_item a img {
  margin-bottom: 10px
}
.c-point_item a figcaption {
  position: relative;
  margin-top: -6px;
  padding-bottom: 46px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5
}
.c-point_item a figcaption span {
  position: absolute;
  bottom: -2px;
  left: 50%;
  margin-left: -20px;
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .12);
  transition: box-shadow .3s ease
}
.c-point_item a figcaption span::before, .c-point_item a figcaption span::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  box-sizing: border-box;
  content: ''
}
.c-point_item a figcaption span::before {
  width: 12px;
  height: 12px;
  border-top: 2px solid #003b87;
  border-right: 2px solid #003b87;
  transform: rotate(45deg)
}
.c-point_item a figcaption span::after {
  width: 14px;
  height: 2px;
  background: #003b87
}
.c-point_item a:hover {
  transform: scale(1.04);
  transition: background .3s ease, transform .3s ease
}
.c-point_item a.-point1:hover {
  background: #eaf8ff
}
.c-point_item a.-point2:hover {
  background: #edfffd
}
.c-point_item a:hover figcaption span {
  box-shadow: none;
  transition: box-shadow .3s ease
}
.p-guide_useful {
  display: flex;
  justify-content: space-between;
  margin: -40px 0 80px
}
.c-useful_item {
  width: calc((100% - (10px * 2)) / 3);
  padding: 36px 0 40px;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .12)
}
.c-useful_item h3 {
  margin-bottom: 28px;
  font-size: 2rem;
  text-align: center
}
.p-time_figure {
  margin: 0 0 16px;
  text-align: center
}
.p-time_figure img {
  margin-bottom: 8px
}
.p-time_figure figcaption {
  font-size: 1.6rem;
  font-weight: 700;
  color: #003b87
}
.p-time_figure figcaption strong {
  display: inline-block;
  margin-left: .2em;
  font-size: 1.4em
}
.p-time_note {
  padding: 0 24px;
  font-size: 1.3rem;
  line-height: 1.6
}
.p-useful_goods {
  display: flex;
  justify-content: center;
  flex-wrap: wrap
}
.c-goods_item {
  margin-bottom: 24px;
  width: 140px
}
.c-goods_item:nth-child(n+3) {
  margin-bottom: 0
}
.c-goods_item figure {
  position: relative;
  margin: 0;
  text-align: center
}
.c-goods_item figure::before {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -48px;
  display: block;
  width: 96px;
  height: 96px;
  border-radius: 50%;
  background: #f1f5f9;
  content: ''
}
.c-goods_item img {
  position: relative;
  margin-bottom: -13px;
  display: inline-block;
  padding: 24px
}
.c-goods_item figcaption {
  position: relative;
  font-size: 1.6rem;
  font-weight: 700;
  color: #003b87
}
.p-useful_clothes {
  position: relative;
  margin: 0;
  padding-top: 44px;
  text-align: center
}
.p-useful_clothes::before {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -100px;
  display: block;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: #f1f5f9;
  content: ''
}
.p-useful_clothes img {
  position: relative;
  margin-bottom: 16px
}
.p-useful_clothes figcaption {
  position: relative;
  font-size: 1.6rem;
  font-weight: 700;
  color: #003b87;
  line-height: 1.6
}
.p-guide_message {
  margin-bottom: 100px
}
.p-guide_message h2 {
  margin-bottom: 30px;
  font-size: 2.4rem;
  line-height: 2;
  font-weight: 700;
  color: #003b87;
  text-align: center
}
.p-guide_message h2 span {
  border-bottom: 1px solid #003b87;
  padding-bottom: 5px
}
.p-guide_message p {
  margin-bottom: 1em;
  font-size: 1.6rem;
  line-height: 2;
  text-align: center
}
.p-guide_merit {
  margin-bottom: 80px
}
.p-guide_merit h2 {
  margin-bottom: 20px;
  font-size: 3rem;
  text-align: center;
  color: #003b87;
  letter-spacing: .04em
}
.p-guide_merit h2 span {
  position: relative;
  display: inline-block;
  padding: 0 22px 0 24px
}
.p-guide_merit h2 span::before, .p-guide_merit h2 span::after {
  position: absolute;
  top: 3px;
  display: block;
  width: 3px;
  height: 30px;
  background: #003b87;
  border-radius: 2px;
  content: ''
}
.p-guide_merit h2 span::before {
  left: 0;
  transform: rotate(-20deg)
}
.p-guide_merit h2 span::after {
  right: 0;
  transform: rotate(20deg)
}
.p-merit_list {
  padding: 20px;
  background: #f6f6f6;
  counter-reset: meritNum
}
.c-merit_item {
  display: flex;
  margin-bottom: 4px
}
.c-merit_item:last-child {
  margin-bottom: 0
}
.c-merit_item figure {
  width: 300px;
  margin: 0
}
.c-merit_item figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  vertical-align: bottom
}
.c-merit_item > div {
  width: calc(100% - 300px);
  padding: 24px 32px;
  background: #fff
}
.c-merit_item > div h3 {
  margin-bottom: 16px;
  font-size: 1.6rem;
  line-height: 1.4
}
.c-merit_item > div h3::before {
  border-bottom: 1px solid;
  margin-right: 8px;
  color: #26a4aa;
  counter-increment: meritNum;
  content: "MERRIT "counter(meritNum)"."
}
.c-merit_item > div p {
  margin-bottom: 1em;
  font-size: 1.4rem;
  line-height: 1.6
}
.c-merit_item > div ul {
  margin: 1em 0
}
.c-merit_item > div ul > li {
  position: relative;
  margin-bottom: .4em;
  padding-left: 12px;
  font-size: 1.4rem;
  line-height: 1.6
}
.c-merit_item > div ul > li::before {
  position: absolute;
  top: 8px;
  left: 0;
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #003b87;
  content: ''
}
.c-merit_item > div > *:last-child {
  margin-bottom: 0
}
.p-guide_flow h2 {
  margin-bottom: 20px;
  font-size: 3rem;
  text-align: center;
  color: #003b87;
  letter-spacing: .04em
}
.p-guide_flow h2 span {
  position: relative;
  display: inline-block;
  padding: 0 22px 0 24px
}
.p-guide_flow h2 span::before, .p-guide_flow h2 span::after {
  position: absolute;
  top: 3px;
  display: block;
  width: 3px;
  height: 30px;
  background: #003b87;
  border-radius: 2px;
  content: ''
}
.p-guide_flow h2 span::before {
  left: 0;
  transform: rotate(-20deg)
}
.p-guide_flow h2 span::after {
  right: 0;
  transform: rotate(20deg)
}
.p-flow_list {
  position: relative;
  padding: 20px;
  background: #f6f6f6
}
.p-flow_list::before {
  position: absolute;
  top: 20px;
  left: 68px;
  z-index: 1;
  display: block;
  width: 1px;
  height: calc(100% - 40px);
  background: #4abfc5;
  content: ''
}
.c-flow_item {
  position: relative;
  margin-bottom: 4px;
  padding: 24px;
  background: #fff
}
.c-flow_item:last-child {
  margin-bottom: 0
}
.c-flow_item:first-child::before, .c-flow_item:last-child::before {
  position: absolute;
  left: 24px;
  z-index: 1;
  display: block;
  width: 48px;
  height: 50%;
  background: #fff;
  content: ''
}
.c-flow_item:first-child::before {
  top: 0
}
.c-flow_item:last-child::before {
  bottom: 0
}
.c-flow_item dl {
  display: flex;
  align-items: center
}
.c-flow_item dt {
  position: relative;
  width: 300px;
  padding-left: 64px;
  font-size: 1.6rem;
  font-weight: 700
}
.c-flow_item dt span {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 1;
  margin: auto;
  display: block;
  width: 48px;
  height: 48px;
  padding-top: 10px;
  border-radius: 50%;
  background: #26a4aa;
  color: #fff;
  font-size: 1.1rem;
  font-weight: 400;
  text-align: center;
  line-height: 1.1
}
.c-flow_item dt span strong {
  display: block;
  font-size: 1.6rem;
  font-weight: 700
}
.c-flow_item dd {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: calc(100% - 300px);
  padding-left: 24px;
  border-left: 1px solid #ddd
}
.c-flow_item p {
  width: calc(100% - (200px + 20px));
  font-size: 1.4rem;
  line-height: 1.6
}
.c-flow_item figure {
  width: 200px;
  height: 100%;
  margin: 0 0 0 20px
}
.c-flow_item figure img {
  width: 100%;
  height: 100%;
  object-fit: cover
}
.p-point_intro {
  position: relative;
  margin-bottom: 40px;
  padding-right: 140px;
  font-size: 1.6rem
}
.p-point_intro::after {
  position: absolute;
  right: 0;
  bottom: -12px;
  display: block;
  box-sizing: border-box;
  width: 120px;
  height: 120px;
  padding-top: 68px;
  border-radius: 50%;
  background: top 20px center /40px 40px no-repeat;
  font-size: 1rem;
  font-weight: 700;
  white-space: pre;
  text-align: center;
  font-feature-settings: "palt"
}
.p-point_intro.-point1::after {
  background-color: #e7f2f7;
  background-image: url(/process/guide/img/ico_guide_point_1.png);
  content: '建築中物件\A現地見学のポイント'
}
.p-point_intro.-point2::after {
  background-color: #e5f7f5;
  background-image: url(/process/guide/img/ico_guide_point_2.png);
  content: '完成済み物件\A現地見学のポイント'
}
.p-point_mv {
  display: flex;
  padding-bottom: 60px;
  position: relative;
  z-index: 5;
  margin-bottom: 60px
}
.p-point_mv.-mt {
  margin-top: 100px
}
.p-point_mv::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: -15vw;
  z-index: -1;
  width: calc(100vw - 18px);
  height: 50%;
  background: #f7f8fa
}
.p-point_mv .row-img {
  border: none;
  width: 60%;
  padding-top: 400px;
  overflow: hidden;
  box-shadow: 2px 2px 10px rgb(0 0 0 / 10%);
  position: relative
}
.p-point_mv .row-img img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: 50% 0;
  position: absolute;
  left: 0;
  top: 0
}
.p-point_mv .row-text {
  width: 40%;
  padding: 60px 0 0 5%;
  position: relative
}
.p-point_mv .row-text h2 {
  position: relative;
  font-size: 3.5rem;
  line-height: 1.4;
  letter-spacing: .05em
}
.p-point_mv .row-text h2 span {
  display: block;
  position: absolute;
  bottom: -46px;
  background: #003b87;
  padding: 5px 14px;
  border-radius: 17px;
  font-size: 1.6rem;
  color: #fff
}
.p-point_mv .row-text .c-box_read {
  position: absolute;
  bottom: 0
}
.p-point_content > h2 {
  margin: 60px 0 24px;
  font-size: 2.2rem;
  border-left: 8px solid #ced6e8;
  padding-left: .7em;
  color: #003b87;
  font-weight: 700;
  position: relative;
  line-height: 1
}
.p-point_content > h2:first-child {
  margin-top: 0
}
.p-point_content p {
  font-size: 1.5rem;
  line-height: 1.8
}
.p-point_content > figure {
  margin: 20px 0
}
.p-point_content > figure.-div2, .p-point_content > figure.-div3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap
}
.p-point_content > figure.-div2 img {
  width: calc((100% - 10px) / 2)
}
.p-point_content > figure.-div3 img {
  width: calc((100% - (10px * 2)) / 3)
}
.p-point_content > figure img {
  max-width: 100%
}
.p-point_content .-flex {
  display: flex;
  justify-content: space-between
}
.p-point_content .-flex > div {
  width: calc((100% - 48px) / 2)
}
.p-point_content .-flex h2 {
  margin: 60px 0 24px;
  font-size: 2.2rem;
  border-left: 8px solid #ced6e8;
  padding-left: .7em;
  color: #003b87;
  font-weight: 700;
  position: relative;
  line-height: 1
}
.p-point_content .-flex figure {
  margin: 0 0 16px
}
.p-point_content .-flex figure img {
  max-width: 100%
}
.w-check_list {
  margin: 20px 0;
  padding: 20px;
  background: #f6f6f6
}
.p-check_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}
.c-check_item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: calc((100% - 4px) / 2);
  margin-bottom: 4px;
  padding: 24px;
  background: #fff
}
.c-check_item figure {
  width: 165px;
  margin: 0
}
.c-check_item figure img {
  max-width: 100%;
  border-radius: 8px
}
.c-check_item dl {
  width: calc(100% - 165px - 24px)
}
.c-check_item dt {
  margin-bottom: 12px;
  font-size: 1.6rem;
  font-weight: 700
}
.c-check_item dd {
  font-size: 1.4rem;
  line-height: 1.5
}
.p-check_note {
  margin-top: 16px
}
.p-check_note > li {
  position: relative;
  margin-bottom: .4em;
  padding-left: 1.2em;
  font-size: 1.2rem;
  margin-bottom: .4em;
  line-height: 1.4
}
.p-check_note > li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '※'
}
.p-check_note > li:last-child {
  margin-bottom: 0
}
.p-point_reason {
  margin-top: 80px;
  padding: 0 40px 40px;
  background: #eef4fb
}
.p-point_reason h2 {
  position: relative;
  top: -16px;
  margin-bottom: 8px;
  text-align: center
}
.p-point_reason h2 span {
  display: inline-block;
  padding: 12px 28px;
  border-radius: 28px;
  background: #003b87;
  color: #fff;
  font-size: 2.2rem;
  letter-spacing: .04em
}
.p-point_reason p {
  margin-bottom: .8em;
  text-align: center
}
.p-reason_list {
  display: flex;
  justify-content: space-between;
  margin-top: 40px
}
.c-reason_item {
  width: calc((100% - 10px) / 2);
  padding: 24px 32px 28px;
  border-radius: 8px;
  background: #fff
}
.c-reason_item dt {
  margin-bottom: 20px;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center
}
.c-reason_item dd {
  font-size: 1.4rem;
  line-height: 1.5
}
.c-reason_item dd img {
  display: block;
  border: 1px solid #ddd;
  max-width: 100%;
  margin-bottom: 10px
}
.c-reason_item dd a {
  display: block;
  margin-top: 16px;
  padding: 10px 40px 10px 16px;
  border-radius: 4px;
  text-decoration: none;
  background: #26a4aa url(/common/img/ico_arrow_right.svg) center right 16px /12px 12px no-repeat;
  font-size: 1.6rem;
  color: #fff;
  line-height: 1.3
}
.p-point_links {
  display: flex;
  justify-content: space-between;
  margin-top: 80px
}
.c-links_item {
  width: calc((100% - 24px) / 2)
}
.c-links_item a {
  display: block;
  padding: 24px 32px 24px 96px;
  border-radius: 8px;
  font-size: 1.6rem;
  line-height: 1.4;
  text-decoration: none
}
.c-links_item a[href="point_1.html"] {
  background: #e7f2f7 url(/process/guide/img/ico_guide_point_1.png) center left 32px /40px 40px no-repeat
}
.c-links_item a[href="point_2.html"] {
  background: #e5f7f5 url(/process/guide/img/ico_guide_point_2.png) center left 32px /40px 40px no-repeat
}
.c-links_item a span {
  display: block;
  padding-right: 32px;
  background: url(/common/img/ico_arrow_b.svg) center right /16px auto no-repeat
}
@media only screen and (max-width:1300px) {
  .p-point_mv::after {
    width: calc(100vw - (18px + 1.9%))
  }
}
@media only screen and (max-width:1120px) {
  .c-useful_item h3 {
    font-size: 1.8rem
  }
  .c-goods_item {
    width: 44%
  }
  .c-goods_item figcaption {
    font-size: 1.4rem
  }
  .p-point_mv::after {
    left: -5%;
    width: calc(100vw - 21px)
  }
  .p-point_mv .row-text {
    padding: 40px 0 0 5%
  }
}
@media only screen and (max-width:900px) {
  .p-guide_title {
    margin: -15px 0 60px;
    padding: 80px 0
  }
  .p-guide_title h2 {
    margin-bottom: 2rem;
    font-size: 2.4rem
  }
  .p-guide_title p {
    font-size: 1.5rem
  }
  .p-guide_intro {
    margin-bottom: 60px;
    font-size: 1.5rem
  }
  .p-guide_intro strong span::before {
    bottom: 6px;
    height: 7px
  }
  .c-point_item a {
    padding: 20px
  }
  .c-point_item a figcaption {
    font-size: 1.5rem
  }
  .p-guide_useful {
    display: block;
    margin-bottom: 60px
  }
  .c-useful_item {
    margin-bottom: 10px;
    width: 100%
  }
  .p-time_figure figcaption {
    font-size: 1.4rem
  }
  .c-useful_item h3 {
    margin-bottom: 20px
  }
  .c-goods_item {
    max-width: 140px
  }
  .p-useful_clothes figcaption {
    font-size: 1.4rem
  }
  .p-guide_message {
    margin-bottom: 60px
  }
  .p-guide_message h2 {
    font-size: 2rem
  }
  .p-guide_message p {
    font-size: 1.5rem
  }
  .p-guide_merit {
    margin-bottom: 60px
  }
  .p-guide_merit h2 {
    font-size: 2.4rem
  }
  .p-guide_merit h2 span {
    padding: 0 18px 0 20px
  }
  .p-guide_merit h2 span::before, .p-guide_merit h2 span::after {
    height: 24px
  }
  .c-merit_item figure {
    width: 40%
  }
  .c-merit_item > div {
    width: 60%
  }
  .p-guide_flow h2 {
    font-size: 2.4rem
  }
  .p-guide_flow h2 span {
    padding: 0 18px 0 20px
  }
  .p-guide_flow h2 span::before, .p-guide_flow h2 span::after {
    height: 24px
  }
  .p-flow_list::before {
    left: 64px
  }
  .c-flow_item {
    padding: 20px
  }
  .c-flow_item dt {
    width: 180px;
    padding-left: 58px;
    padding-right: 24px;
    font-size: 1.4rem;
    line-height: 1.4
  }
  .c-flow_item dd {
    width: calc(100% - 180px)
  }
  .c-flow_item p {
    width: calc(100% - (140px + 20px))
  }
  .c-flow_item figure {
    width: 140px
  }
  .c-check_item {
    width: 100%
  }
  .p-point_reason h2 span {
    padding: 10px 24px;
    font-size: 2rem
  }
  .p-point_reason {
    padding: 0 20px 40px
  }
  .c-reason_item {
    padding: 24px 20px 20px
  }
  .c-reason_item dt {
    font-size: 1.6rem
  }
  .p-point_content > .-flex {
    display: block
  }
  .p-point_content > .-flex > div {
    width: 100%
  }
  .c-links_item {
    width: calc((100% - 12px) / 2)
  }
}
@media only screen and (max-width:600px) {
  .p-guide_title {
    margin-bottom: 48px;
    padding: 60px 0
  }
  .p-guide_title h2 {
    font-size: 2rem
  }
  .p-guide_title p {
    font-size: 1.4rem
  }
  .p-guide_title p br.-sp {
    display: inherit
  }
  .p-guide_intro br.-sp {
    display: inherit
  }
  .p-guide_intro {
    margin-bottom: 48px;
    font-size: 1.4rem
  }
  .p-guide_point {
    padding: 30px 0 70px
  }
  .c-point_item a figure {
    margin: 0
  }
  .c-point_item a img {
    width: 80px;
    margin-bottom: 6px
  }
  .c-point_item a figcaption {
    padding-bottom: 42px;
    font-size: 1.3rem
  }
  .c-point_item a figcaption span {
    bottom: 0;
    margin-left: -17px;
    width: 34px;
    height: 34px
  }
  .c-point_item a figcaption span::before {
    width: 10px;
    height: 10px
  }
  .c-point_item a figcaption span::after {
    width: 12px
  }
  .p-guide_useful {
    margin-bottom: 48px
  }
  .c-useful_item {
    padding: 24px 0 28px
  }
  .c-useful_item h3 {
    font-size: 1.6rem
  }
  .p-time_figure img {
    margin-bottom: 4px
  }
  .c-goods_item {
    width: 40%
  }
  .p-useful_clothes {
    padding-top: 40px
  }
  .p-useful_clothes::before {
    width: 160px;
    height: 160px;
    margin-left: -80px
  }
  .p-useful_clothes img {
    width: 120px
  }
  .p-guide_message {
    margin-bottom: 48px
  }
  .p-guide_merit {
    margin-bottom: 48px
  }
  .p-guide_merit h2 {
    font-size: 2rem
  }
  .p-guide_merit h2 span {
    padding: 0 16px 0 18px
  }
  .p-guide_merit h2 span::before, .p-guide_merit h2 span::after {
    width: 2px;
    height: 22px;
    border-radius: 1px
  }
  .p-guide_message h2 {
    margin-bottom: 20px
  }
  .p-guide_message p {
    line-height: 1.8;
    text-align: left
  }
  .p-merit_list {
    position: relative;
    left: -5vw;
    width: 100vw
  }
  .c-merit_item {
    display: block
  }
  .c-merit_item figure {
    width: 100%
  }
  .c-merit_item > div {
    width: 100%;
    padding: 20px
  }
  .c-merit_item > div h3 {
    margin-bottom: 12px;
    font-size: 1.5rem
  }
  .c-merit_item > div p {
    font-size: 1.3rem
  }
  .c-merit_item > div ul > li {
    font-size: 1.3rem
  }
  .c-merit_item > div ul > li::before {
    top: 7px
  }
  .p-guide_flow h2 {
    font-size: 2rem
  }
  .p-guide_flow h2 span {
    padding: 0 16px 0 18px
  }
  .p-guide_flow h2 span::before, .p-guide_flow h2 span::after {
    width: 2px;
    height: 22px;
    border-radius: 1px
  }
  .p-flow_list {
    position: relative;
    left: -5vw;
    width: 100vw
  }
  .p-flow_list::before {
    left: 52px
  }
  .c-flow_item {
    padding: 28px 20px 20px
  }
  .c-flow_item:first-child::before, .c-flow_item:last-child::before {
    left: 12px;
    width: 44px
  }
  .c-flow_item:first-child::before {
    height: 28px
  }
  .c-flow_item:last-child::before {
    height: calc(100% - 28px)
  }
  .c-flow_item dl {
    display: block
  }
  .c-flow_item dt {
    width: 100%;
    margin-bottom: 16px;
    padding: 0 0 0 42px;
    font-size: 1.5rem
  }
  .c-flow_item dt span {
    left: -10px;
    width: 44px;
    height: 44px;
    font-size: 1rem
  }
  .c-flow_item dt span strong {
    font-size: 1.4rem
  }
  .c-flow_item dd {
    width: 100%;
    padding-left: 40px;
    border-left: none;
    flex-wrap: wrap;
    flex-direction: column-reverse
  }
  .c-flow_item p {
    width: 100%
  }
  .c-flow_item figure {
    width: 100%;
    margin: 0 0 12px
  }
  .p-point_intro {
    padding-right: calc(24vw + 20px);
    font-size: 1.4rem;
    line-height: 1.4
  }
  .p-point_intro::after {
    width: 24vw;
    height: 24vw;
    padding-top: 15vw;
    border-radius: 50%;
    background: top 4vw center /10vw 10vw no-repeat;
    font-size: 1.8vw;
    line-height: 1.2
  }
  .p-point_mv {
    flex-direction: column;
    padding-bottom: 20px;
    margin-bottom: 40px
  }
  .p-point_mv::after {
    left: -5%;
    width: 100vw
  }
  .p-point_mv .row-img {
    width: 100%;
    padding-top: 300px;
    box-shadow: 2px 2px 10px rgb(0 0 0 / 10%)
  }
  .p-point_mv .row-text {
    width: 100%;
    padding: 25px 5% 20px
  }
  .p-point_mv .row-text h2 {
    font-size: 2rem;
    line-height: 1.2;
    margin-bottom: 20px
  }
  .p-point_mv .row-text h2 span {
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    height: 32px;
    line-height: 32px;
    padding: 0 14px
  }
  .p-point_mv .row-text .c-box_read {
    position: initial
  }
  .p-point_content > h2 {
    font-size: 1.8rem;
    margin: 40px 0 20px;
    border-left: 5px solid #ced6e8;
    padding-left: .5em
  }
  .p-point_content p {
    font-size: 1.4rem
  }
  .p-point_content > figure.-div2 img, .p-point_content > figure.-div3 img {
    width: 100%;
    margin-bottom: 10px
  }
  .p-point_content > figure.-div2 img:last-child .p-point_content > figure.-div3 img:last-child {
    margin-bottom: 0
  }
  .p-point_content .-flex {
    display: block
  }
  .p-point_content .-flex > div {
    width: 100%
  }
  .p-point_content .-flex h2 {
    font-size: 1.8rem;
    margin: 40px 0 20px;
    border-left: 5px solid #ced6e8;
    padding-left: .5em
  }
  .w-check_list {
    position: relative;
    left: -5vw;
    width: 100vw
  }
  .c-check_item {
    padding: 20px
  }
  .c-check_item figure {
    width: 120px
  }
  .c-check_item dl {
    width: calc(100% - 120px - 20px)
  }
  .c-check_item dt {
    margin-bottom: 8px;
    font-size: 1.4rem
  }
  .c-check_item dd {
    font-size: 1.2rem
  }
  .p-point_reason {
    padding: 0 20px 32px
  }
  .p-point_reason h2 {
    top: -18px;
    margin-bottom: 0
  }
  .p-point_reason h2 span {
    padding: 10px 20px;
    font-size: 1.6rem
  }
  .p-point_content p {
    text-align: left
  }
  .p-reason_list {
    display: block;
    margin-top: 20px
  }
  .c-reason_item {
    width: 100%;
    margin-bottom: 10px
  }
  .c-reason_item:last-child {
    margin-bottom: 0
  }
  .c-reason_item dt {
    font-size: 1.4rem
  }
  .c-reason_item dd {
    font-size: 1.2rem
  }
  .c-reason_item dd a {
    font-size: 1.4rem
  }
  .p-point_links {
    display: block;
    margin-top: 60px
  }
  .c-links_item {
    width: 100%;
    margin-bottom: 12px
  }
  .c-links_item:last-child {
    margin-bottom: 0
  }
  .c-links_item a {
    padding: 20px 20px 20px 60px;
    border-radius: 4px;
    font-size: 1.4rem;
    background-size: 28px 28px !important;
    background-position: center left 20px !important
  }
  .c-links_item a span {
    background-size: 12px auto
  }
  .c-links_item a br {
    display: none
  }
}
.p-after_content {
  max-width: 1000px;
  margin: 0 auto
}
.p-after_content .hl-concept {
  margin: 40px 0 64px
}
.p-after_content .hl-concept br.-sp {
  display: none
}
.p-after_content .hl-content_large {
  line-height: 1.4
}
.p-after_content > h3 {
  margin: 40px 0 22px;
  font-size: 2rem;
  line-height: 1.4
}
.p-after_content > p {
  margin-bottom: .8em;
  font-size: 1.6rem;
  line-height: 1.8
}
.box-after {
  padding: 32px 40px;
  background: #f6f6f6
}
.box-after h4 {
  margin-bottom: 20px;
  font-size: 1.8rem;
  line-height: 1.3
}
.p-after_list {
  padding-left: 2em
}
.p-after_list > li {
  margin-bottom: .8em;
  font-size: 1.6rem;
  list-style: disc;
  line-height: 1.4
}
.p-after_list > li:last-child {
  margin-bottom: 0
}
.p-after_content a[target="_blank"] {
  display: inline-block;
  padding-right: 20px;
  border-bottom: 1px solid;
  background: url(/common/img/ico_blank.svg) center right /14px 14px no-repeat;
  text-decoration: none
}
@media only screen and (max-width:600px) {
  .p-after_content .hl-concept {
    margin: 32px 0 48px
  }
  .p-after_content .hl-concept br.-sp {
    display: inherit
  }
  .box-after {
    padding: 28px 24px
  }
}
.p-area_select_sp {
  background: #003b87;
  color: #fff;
  padding: 30px 5%;
  position: relative;
  margin-bottom: 40px;
}
.p-area_select_sp .inner {
  display: flex;
  flex-direction: column
}
.p-area_select_sp .p-box_hl {
  padding: 0 0 15px;
  text-align: center
}
.p-area_select_sp .p-box_hl h2 {
  font-size: 1.5rem
}
.p-area_select_sp .p-box_hl h2::after {
  content: '';
  display: block;
  width: 20px;
  height: 1px;
  background: #fff;
  margin: 15px auto 0
}
.p-area_select_sp .p-box_hl .btn-prev {
  top: 18px;
  left: 20px;
  width: 44px;
  height: 44px;
  padding: 12px;
  z-index: 15
}
.p-select_panel {
  display: flex;
  border-radius: 1px;
  overflow: hidden;
  height: 318px;
  background: #fff
}
.p-select_panel .c-select_item {
  width: 4%;
  overflow: hidden;
  transform-origin: right top;
  transition: .2s all ease;
  z-index: 1;
  position: relative;
  pointer-events: none;
  box-shadow: 0 2px 5px rgba(0, 0, 0, .3)
}
.p-select_panel .c-select_item:nth-of-type(1) {
  z-index: 1
}
.p-select_panel .c-select_item:nth-of-type(2) {
  z-index: 2
}
.p-select_panel .c-select_item:nth-of-type(3) {
  z-index: 1;
  border-radius: 0 3px 3px 0
}
.p-select_panel .c-select_item.-active {
  width: 92%;
  z-index: 5;
  pointer-events: all
}
.p-select_panel .p-list_select-common {
  font-size: 1.4rem;
  position: relative;
  background: #fff;
  width: 100%;
  box-shadow: 0 2px 2px rgba(0, 0, 0, .3);
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden
}
.p-list_select-common .btn-check a {
  text-decoration: none
}
.p-list_select-common .btn-check a::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0
}
.p-list_select-common .btn-check a .ico {
  position: absolute;
  left: 17px;
  top: 15px
}
.p-list_select-common .btn-check a .ico img {
  width: 20px
}
.c-select_item:first-of-type .p-list_select-common .btn-check[data-search="theme"]::before {
  background: url(/common/img/ico_property04_b.png) 50% 50% no-repeat;
  background-size: cover
}
.c-select_item:first-of-type .p-list_select-common .btn-check[data-search="loan"]::before {
  background: url(/common/img/ico_property05_b.png) 50% 50% no-repeat;
  background-size: cover
}
.c-select_item:first-of-type .p-list_select-common .btn-check[data-search="office"]::before {
  background: url(/common/img/ico_property06_b.png) 50% 50% no-repeat;
  background-size: cover
}
.c-status_panel {
  display: flex;
  justify-content: center;
  width: 100%
}
.c-status_panel .dot-stauts {
  width: calc(100% / 3);
  color: rgba(255, 255, 255, .2);
  background: none;
  border: none;
  font-size: 1.4rem
}
.c-status_panel .dot-stauts::before {
  content: '';
  display: block;
  width: 100%;
  height: 5px;
  background: rgba(255, 255, 255, .2);
  border: none;
  margin-bottom: 8px
}
.c-status_panel .dot-stauts.-active {
  color: #fff
}
.c-status_panel .dot-stauts.-active::before {
  background: #88bcff
}
.p-box_select .p-box_btn {
  margin-top: 10px
}
.p-box_select .btn-common {
  width: 100%;
  background: none;
  border: 1px solid #fff;
  box-shadow: none
}
@media only screen and (min-width:751px) {
  .p-area_select_sp {
    display: none
  }
}
.hl-login {
  margin: 30px 0 20px;
  font-size: 2rem;
  text-align: center
}
@media only screen and (min-width:801px) {
  .hl-login {
    margin: 60px 0 25px;
    font-size: 3rem
  }
}
.p-box_login {
  background: #fff;
  border: 1px solid #ced6e8;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  border-radius: 5px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, .1)
}
@media only screen and (max-width:800px) {
  .p-box_login.-register {
    flex-direction: column-reverse
  }
}
.p-box_login h2 {
  margin-bottom: 20px;
  border-left: 4px solid #003b87;
  padding-left: 10px
}
.row-login {
  padding: 30px 20px
}
.p-table_input {
  border-radius: 5px;
  border: 1px solid #a6b5cc;
  padding: 5px 0 20px;
  margin-bottom: 20px;
  position: relative
}
.p-table_input.-disabled .c-input_item {
  opacity: .5
}
.p-table_input.-disabled .p-input_text {
  pointer-events: none !important;
  background: #f5f5f5 !important
}
.p-table_input .c-input-name {
  position: absolute;
  background: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  top: -13px;
  padding: 0 10px
}
.p-table_input .c-input-name.-wide {
  top: -10px;
  padding: 0 0 0 10px
}
.p-table_input > div {
  padding: 20px 15px 0;
  position: relative
}
.p-table_input > div + div {
  margin: 0;
  padding-top: 20px
}
.p-table_input input[type="text"].p-input_text, .p-table_input input[type="password"].p-input_text, .p-table_input input[type="number"].p-input_text, .p-table_input .p-textarea {
  width: 100%;
  background: #fffbe5
}
@media only screen and (max-width:700px) {
  .p-table_input input[type="text"].p-input_text, .p-table_input input[type="password"].p-input_text, .p-table_input input[type="number"].p-input_text, .p-table_input .p-textarea {
    padding: 10px;
    font-size: 1.4rem
  }
}
.p-table_input input[readonly=""].p-input_text, .p-table_input .p-textarea[readonly=""] {
  background: #fff !important;
  border-bottom: none;
  padding: 0 0 5px;
  border-top: none;
  border-left: none;
  border-right: none;
  height: auto
}
.p-table_input input[disabled=""] + .ico, .-confirm .p-table_input input {
  cursor: default;
  pointer-events: none
}
.p-table_input .p-select select[disabled=""] {
  height: auto;
  line-height: 19px;
  padding: 0 0 5px;
  border-radius: 0;
  border: none;
  border-bottom: none;
  background: none;
  font-size: 1.5rem;
  color: #2e3b4c;
  opacity: 1
}
.-confirm .p-table_input .p-select:after {
  display: none
}
.p-table_input .p-select:after {
  right: 15px;
  top: 18px
}
.p-table_input .p-select select {
  min-width: 120px;
  background: #fffbe5;
  height: 44px;
  line-height: 44px;
  border: 1px solid #ced6e8;
  padding: 0 30px 0 15px
}
.p-table_input input[type="text"].p-input_text.-error, .p-table_input input[type="password"].p-input_text.-error, .p-table_input input[type="number"].p-input_text.-error, .p-table_input .p-textarea.-error, .p-table_input .p-select.-error select {
  background: #fff5f5;
  border-color: #dc4748
}
.p-table_input .p-flex {
  align-items: center
}
.p-table_input .p-flex:not(.-row2) * + *:not(.label-error) {
  margin-left: 10px;
  margin-top: 0
}
.p-table_input .p-flex:not(.-row2) *[disabled=""] + * {
  margin-left: 0;
  margin-top: 0
}
.p-table_input .p-flex input[type="text"].p-input_text, .p-table_input .p-flex input[type="password"].p-input_text {
  width: 60%
}
@media only screen and (max-width:1040px) {
  .p-table_input .p-flex:not(.-row2) * + *:not(.label-error) {
    margin-left: 0;
    margin-top: 5px
  }
  .p-table_input .p-flex input[type="text"].p-input_text, .p-table_input .p-flex input[type="password"].p-input_text {
    width: 100%
  }
}
.p-table_input .c-text {
  font-size: 1.2rem;
  line-height: 1.5;
  margin: 10px 0 0 5px
}
.p-table_input .hl-middle {
  font-size: 2rem;
  padding: 20px 1em 10px 30px;
  margin-bottom: 15px;
  color: #003b87;
  display: inline-block;
  border-bottom: 1px solid #a6b5cc
}
.p-table_input > .c-input_item {
  padding: 25px 30px 0;
  position: relative;
  flex-wrap: wrap
}
.p-table_input > .c-input_item.text {
  padding: 0 30px
}
.p-table_input > .c-input_item.text dt {
  width: 100%;
  padding-top: 0 !important;
  margin: 0 !important
}
.c-input_item .fs-default {
  line-height: 1.7;
  padding-top: 10px
}
.c-input_item .fs-default + * {
  margin-top: 15px
}
@media only screen and (max-width:700px) {
  .p-table_input > .c-input_item.text {
    padding: 20px 15px 0
  }
}
@media only screen and (min-width:701px) {
  .p-table_input > .c-input_item:first-of-type {
    padding-top: 20px
  }
  .p-table_input > .c-input_item:first-of-type {
    padding-top: 20px
  }
  .p-table_input > h2 + .c-input_item:first-of-type {
    padding-top: 10px
  }
}
.-confirm .p-table_input > .c-input_item:not(.-questionnaire) > dd::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  margin: 5px auto 0;
  background: #ced6e8;
  opacity: .6
}
.-confirm .p-table_input > .c-input_item:last-of-type > dd::after {
  display: none
}
.p-table_input .c-input_item {
  display: flex;
  flex-wrap: nowrap;
  width: 100%
}
.p-table_input .c-input_item dt {
  width: 150px;
  font-size: 1.4rem;
  color: #2e3b4c;
  padding-top: 12px
}
.-confirm .p-table_input .c-input_item dt {
  padding-top: 0
}
.p-table_input .c-input_item dd {
  width: calc(100% - 150px);
  font-size: 1.4rem;
  position: relative;
  padding-left: 30px
}
.p-table_input .c-input_item dd .box-sub {
  margin-top: 8px;
}
.p-table_input .c-input_item.-only_text {
  align-items: center;
  margin: 0;
  font-size: 1.5rem
}
@media only screen and (max-width:700px) {
  .p-table_input .c-input_item.-only_text {
    font-size: 1.4rem
  }
  .p-table_input .c-input_item.-only_text .p-flex li {
    width: 100%
  }
  .p-table_input .c-input_item.-only_text .p-flex.-row2 > *:nth-of-type(n+2) {
    margin-top: 10px
  }
  .p-table_input .hl-middle {
    font-size: 1.6rem;
    padding: 15px 1em 10px 15px;
    margin-bottom: 0
  }
  .p-table_input > .c-input_item {
    padding: 20px 15px 0
  }
  .p-table_input .c-input_item {
    flex-wrap: wrap;
    padding-top: 20px !important
  }
  .p-table_input .c-input_item dt {
    width: 100%;
    font-size: 1.3rem;
    margin-bottom: 5px;
    padding-top: 0
  }
  .p-table_input > .c-input_item > dt {
    line-height: 1;
    padding: 0;
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 8px
  }
  .p-table_input .c-input_item dd {
    width: 100%;
    padding-left: 0
  }
  .p-table_input .c-input_item dd.-sp_widefull .p-input_text.-w45p, .l-form.p-flex:not(.-confirm) .p-table_input .c-input_item .p-input_text.-w45p {
    width: 100% !important
  }
  .p-table_input .c-input_item input + input {
    margin: 2px 0 0
  }
  .p-table_input .c-input_item.-cell4 dd {
    width: 50%
  }
}
.p-table_input .c-input_item a {
  text-decoration: none;
  transition: .2s all ease
}
.p-table_input .c-input_item a:hover {
  color: #3f80d4;
  border-bottom: 1px solid #3f80d4
}
.p-table_input .c-input_item .c-input_item dt {
  width: 140px;
  white-space: nowrap
}
.-confirm .p-table_input .c-input_item .c-input_item dt {
  display: none
}
.c-input_item * + .c-input_item {
  margin-top: 5px
}
@media only screen and (min-width:701px) and (max-width:1080px) {
  .c-input_item.-cell4:nth-of-type(2) dt:first-of-type {
    display: none
  }
}
.p-table_input .c-input_item .c-input_item dd {
  width: calc(100% - 140px)
}
.p-table_input .c-input_item.-cell4 dd + dd {
  display: flex;
  align-items: flex-start;
  padding-left: 10px
}
@media only screen and (min-width:701px) {
  .p-table_input .c-input_item.-cell4 dd {
    width: auto
  }
  .p-table_input .c-input_item.-cell4 * + dt + dd {
    padding-left: 20px
  }
  .p-table_input .c-input_item.-cell4 * + dt {
    text-align: right;
    padding: 14px 0 0 10px;
    width: auto;
    margin-left: auto
  }
  .p-table_input .p-radio {
    font-size: 1.5rem;
    margin: 0 30px 0 0
  }
}
.-confirm .p-table_input .c-input_item.-cell4 * + dt {
  padding-top: 3px
}
@media only screen and (max-width:700px) {
  .p-table_input .c-input_item .c-input_item dt {
    width: 100%
  }
  .p-table_input .c-input_item .c-input_item dd {
    width: 100%
  }
  .c-input_item.-cell4:nth-of-type(1) {
    margin-top: 10px
  }
  .c-input_item.-cell4:nth-of-type(1) dd {
    width: 50% !important
  }
}
@media only screen and (max-width:400px) {
  .p-table_input .c-input_item.-questionnaire .p-radio + .p-radio {
    margin-top: 15px
  }
}
.p-table_input .c-input_item.-questionnaire {
  flex-direction: column;
  padding: 10px 0
}
.p-table_input .c-input_item.-questionnaire > * {
  width: 100%
}
.p-table_input * + .c-input_item.-questionnaire {
  border-bottom: 1px solid #ced6e8;
  padding: 20px;
  width: auto
}
.p-table_input .c-input_item.-questionnaire dt {
  border: none;
  padding-left: 3rem;
  text-indent: -3rem;
  line-height: 1.3;
  font-weight: 700;
  padding-top: 0;
  margin-bottom: 15px
}
@media only screen and (min-width:701px) {
  .p-table_input * + .c-input_item.-questionnaire {
    padding: 25px 30px
  }
  .p-table_input * + .c-input_item.-questionnaire:first-of-type {
    padding-top: 10px
  }
  .p-table_input .c-input_item.-questionnaire dt {
    font-size: 1.5rem;
    margin-bottom: 15px
  }
  .p-table_input .c-input_item.-questionnaire dd {
    font-size: 1.5rem;
    padding-left: 3.5rem
  }
}
.c-input_item.-questionnaire:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}
.p-flex.-question1 {
  align-items: flex-start;
  flex-wrap: nowrap;
  margin-bottom: 15px
}
.p-flex.-question1 .p-flex.-row2 {
  margin-top: 0;
  align-items: flex-start;
  font-size: 90%
}
.p-flex.-question1 .p-flex.-row2 li {
  margin-top: 0
}
.p-flex.-question1 > div {
  white-space: nowrap;
  padding-top: 5px;
  padding-right: 20px
}
@media only screen and (max-width:700px) {
  .p-flex.-question1 {
    display: block;
    padding-bottom: 15px;
    border-bottom: 1px dotted #ccc
  }
  .p-flex.-question1 > div {
    padding-bottom: 5px
  }
  .p-flex.-question1 .p-flex.-row2 > * {
    width: 100%
  }
}
@media only screen and (min-width:701px) {
  .p-flex.-question1 > div {
    padding-right: 50px;
    width: 130px
  }
  .p-flex.-question1 > ul {
    width: calc(100% - 150px)
  }
  .p-table_input .c-input_item.-questionnaire .p-flex.-row2 li {
    width: 52%;
    margin-left: 0;
    padding-right: 2%
  }
  .p-table_input .c-input_item.-questionnaire .p-flex.-row2 li:nth-of-type(2n) {
    width: 48%
  }
  .p-table_input .c-input_item.-questionnaire .p-flex.-row2 li label {
    margin-bottom: 8px
  }
}
.c-input_item.-questionnaire ul li label {
  margin-bottom: 15px
}
.c-input_item.-questionnaire .-question1 ul li label {
  margin-bottom: 0
}
.c-input_item.-questionnaire ul li:last-of-type label {
  margin-bottom: 0
}
.c-input_item input + input {
  margin-left: 1%
}
.-col_green {
  color: #26a4aa;
  font-size: 120%
}
.label-error {
  color: #dc4748;
  font-size: 1.2rem;
  left: 0;
  z-index: 2;
  margin-top: 5px;
  padding-left: 5px;
  display: none
}
.-error + .label-error, .-error + * + .label-error {
  display: block
}
.c-input_item .p-flex.-error + .label-error {
  display: block;
  position: unset;
  margin: 15px 0 0
}
.p-box_error {
  position: sticky;
  top: 0;
  background: #dc4748;
  color: #fff;
  font-size: 1.6rem;
  padding: 10px 30px;
  z-index: 15;
  font-weight: 700;
  margin-bottom: 5px;
  display: none
}
.p-box_error.-active {
  display: block
}
.l-form.p-flex {
  align-items: unset;
  justify-content: space-between
}
@media only screen and (max-width:900px) {
  .l-form.p-flex {
    flex-direction: column-reverse
  }
  .l-form.p-flex .row-w_25p {
    margin-bottom: 20px
  }
}
.c-license_number .-num01 {
  position: relative;
  display: inline-block;
}
.c-license_number .-num01::before {
  content: '（';
  position: absolute;
  left: 2px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
}
.c-license_number .-num01::after {
  content: '）';
  position: absolute;
  right: 2px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
}
.p-table_input .c-license_number .-num01 input[type="text"].p-input_text {
  width: 5em;
  padding: 12px 20px;
  text-align: center;
}
.c-license_number .-num02 {
  position: relative;
  display: inline-block;
}
.c-license_number .-num02::before {
  content: '第';
  position: absolute;
  left: 12px;
  z-index: 5;
  top: 50%;
  transform: translateY(-50%);
}
.c-license_number .-num02::after {
  content: '号';
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
}
.p-table_input .c-license_number .-num02 input[type="text"].p-input_text {
  width: 14em;
  padding: 12px 36px;
}
.p-table_input .c-license_number .-num01 input[type="text"].p-input_text:read-only {
  width: 5em;
  padding: 0 20px 5px;
  text-align: center;
}
.p-table_input .c-license_number .-num02 input[type="text"].p-input_text:read-only {
  width: 12em;
  padding: 0 36px 5px;
}
.p-table_input .c-license_number .-num01 input[type="text"].p-input_text.-error, .p-table_input .c-license_number .-num02 input[type="text"].p-input_text.-error {
  background: #fff5f5;
  border-color: #dc4748;
}
.row-w_25p .p-flow_common {
  position: sticky;
  top: 30px;
  margin-top: 20px
}
.p-flow_common {
  font-size: 1.1rem;
  z-index: 10;
  display: flex;
  justify-content: space-between
}
.p-flow_common::before {
  content: '';
  display: block;
  width: 92%;
  height: 3px;
  background: #aaa;
  position: absolute;
  top: 27px;
  left: 4.5%
}
.p-flow_common li span {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  position: relative;
  color: #888
}
.p-flow_common li span::before {
  content: '';
  display: block;
  width: 0;
  padding-left: 20px;
  height: 20px;
  border: 1px solid #888;
  border-radius: 50%;
  background: #fff;
  margin-top: 5px
}
.p-flow_common li span::after {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  background: #26a4aa;
  border: 1px solid transparent;
  border-radius: 50%;
  transform: scale(0);
  position: absolute;
  left: calc(50% - 10.5px);
  bottom: 0
}
.p-flow_common li.-active span {
  color: #26a4aa
}
.p-flow_common li.-active span::before {
  border-color: #26a4aa
}
.p-flow_common li.-active span::after {
  transform: scale(.55)
}
@media only screen and (min-width:901px) {
  .p-flow_common {
    font-size: 1.5rem;
    letter-spacing: .3em;
    z-index: 10;
    display: block
  }
  .p-flow_common::before {
    content: '';
    display: block;
    width: 5px;
    height: calc(100% - 40px);
    background: #aaa;
    position: absolute;
    top: 20px;
    left: 12px
  }
  .p-flow_common * + li {
    margin-top: 50px
  }
  .p-flow_common li span {
    flex-direction: row
  }
  .p-flow_common li span::before {
    content: '';
    display: block;
    width: 0;
    padding-left: 27px;
    height: 27px;
    margin: 0 8px 0 0;
    background: #fff
  }
  .p-flow_common li span::after {
    content: '';
    display: block;
    width: 27px;
    height: 27px;
    transform: scale(0);
    position: absolute;
    left: 0;
    top: calc(50% - 13.5px)
  }
}
@media only screen and (max-width:900px) {
  .p-table_input div input[type="text"].p-input_text, .p-table_input div input[type="password"].p-input_text {
    font-size: 1.5rem
  }
}
.label-any {
  display: inline-block;
  padding: 3px 8px;
  width: 50px;
  white-space: nowrap;
  margin-left: auto
}
.label-mandatory {
  display: inline-block;
  padding: 3px 8px;
  border-radius: 2px;
  font-size: 1.1rem;
  width: 40px;
  color: #fff;
  background: #dc4748;
  float: right;
  margin-left: 10px;
  text-align: center;
  font-weight: 400
}
@media only screen and (max-width:700px) {
  .label-mandatory {
    float: none;
    font-weight: 400
  }
}
.row-register {
  padding: 30px 20px;
  border-top: 1px solid #ced6e8
}
.row-register .inner {
  padding: 20px;
  background: #eef2f7;
  border-radius: 3px
}
.row-register .c-text {
  font-size: 1.3rem;
  line-height: 1.7;
  margin-bottom: 20px
}
.row-register .c-img img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto
}
.row-register .inner * + div {
  margin-top: 30px
}
.row-register .inner .btn-function {
  width: 100%;
  display: block;
  margin-left: auto;
  margin-right: auto
}
.c-view_password {
  font-size: 1.2rem;
  margin-top: 10px
}
.row-register .btn-function.-register {
  background: none;
  border: 2px solid #3f80d4;
  color: #3f80d4;
  box-shadow: none
}
.w-mian:not(.-login) .row-register .btn-function.-register {
  background: #ced6e8;
  border-color: #ced6e8
}
.btn-function.-register.-active {
  background: #3f80d4;
  border-color: #3f80d4
}
.btn-function.-contact_send, .p-box_login.-register .btn-function.-register {
  pointer-events: none
}
.btn-function.-contact_send.-active, .p-box_login.-register .btn-function.-register.-active {
  pointer-events: all
}
@media only screen and (min-width:801px) {
  .p-box_login {
    flex-direction: row;
    justify-content: space-between;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 30px
  }
  .p-box_login > div {
    padding: 40px 0
  }
  .p-box_login:not(.-confirm):not(.-complete) > div:first-of-type {
    padding-right: 30px
  }
  .p-box_login:not(.-confirm):not(.-complete) > div:last-of-type {
    padding-left: 30px;
    border-left: 1px solid #ced6e8
  }
  .p-box_login .row-login {
    width: 60%
  }
  .p-box_login.-confirm .row-login {
    width: 100%
  }
  .p-box_login.-confirm, .p-box_login.-complete {
    min-width: unset;
    max-width: 800px;
    width: 90%
  }
  .p-box_login.-complete > div {
    text-align: center;
    width: 100%
  }
  .p-table_input {
    border-radius: 5px;
    padding-bottom: 25px
  }
  .p-table_input > div {
    padding: 20px 0 0;
    margin: 0 20px
  }
  .p-table_input > div + div {
    margin: 0 20px
  }
  .row-register {
    width: 40%;
    border-top: none
  }
  .row-register .inner {
    padding: 25px
  }
  .row-register .c-text {
    font-size: 1.3rem;
    line-height: 1.7;
    margin-bottom: 20px
  }
  .row-register .inner .btn-function {
    width: 100%
  }
  .c-view_password {
    font-size: 1.2rem;
    margin-top: 10px
  }
  .-register .row-login {
    width: 55%
  }
  .-register .row-register {
    width: 45%
  }
  .-register .row-register .c-text {
    font-size: 1.3rem
  }
  .-register .row-register .c-img {
    text-align: center
  }
  .-register .row-register .c-img img {
    width: 80%;
    height: auto
  }
}
.p-box_btn {
  display: flex;
  flex-direction: column;
  margin: 0
}
.row-login .p-box_btn {
  align-items: center;
  justify-content: center
}
.row-login #register + .p-box_btn {
  margin-top: 20px
}
.p-box_btn.-center {
  flex-direction: row;
  justify-content: center
}
.p-box_btn > * + div {
  padding-top: 20px;
  font-size: 1.3rem;
  line-height: 1.5
}
.p-box_btn > div {
  width: 100%
}
.p-box_btn.-no_reverse {
  flex-direction: row;
  align-items: center;
  justify-content: center
}
.p-box_btn.-start {
  flex-direction: row;
  align-items: center;
  justify-content: flex-start
}
.p-box_btn.-no_reverse button, .p-box_btn.-start button {
  width: 45%;
  max-width: 280px
}
.p-box_btn.-no_reverse * + button {
  margin-left: 2%
}
.btn-function {
  padding: 15px 20px;
  display: block;
  text-decoration: none;
  position: relative
}
@media only screen and (min-width:901px) {
  .btn-function {
    min-width: 240px;
    max-width: 360px
  }
}
.btn-function::before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: #0d1b2d;
  transition: .2s all ease;
  opacity: 0;
  z-index: 2;
  top: 0;
  left: 0
}
.btn-function:hover::before {
  opacity: .07
}
.p-box_agree + .p-box_btn {
  margin-top: 20px
}
@media only screen and (max-width:750px) {
  .p-box_btn.-no_reverse {
    margin-top: 40px
  }
  .p-box_btn.-no_reverse button, .p-box_btn.-start button {
    max-width: 320px;
    margin: 0 auto
  }
  .p-box_btn .btn-function {
    width: 100%;
    max-width: none;
    margin: 0 auto
  }
}
.btn-function.-back {
  color: #2e3b4c;
  background: #fff;
  border-color: #ced6e8;
  box-shadow: none
}
.btn-function.-login {
  display: block;
  width: 100%
}
.btn-function.-contact_send {
  background: #ced6e8;
  border-color: #ced6e8;
  font-size: 2rem;
  pointer-events: none
}
.btn-function.-contact_send.-active {
  background: #ff8f1e;
  border-color: #ff8f1e;
  pointer-events: all;
  cursor: pointer
}
.row-login .p-box_text, .p-box_agree {
  font-size: 1.3rem;
  line-height: 1.5;
  margin: 20px 0
}
.row-login .p-box_text:last-of-type {
  margin-bottom: 0
}
.p-box_agree {
  margin-top: 40px
}
.row-login .p-box_text a, .p-box_agree a {
  color: #003b87;
  text-decoration: none
}
.row-login .c-link_text {
  position: relative;
  padding-left: 15px
}
.row-login .c-link_text::before {
  content: '';
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #003b87;
  border-right: 2px solid #003b87;
  position: absolute;
  left: 0;
  top: 5px;
  transform: rotate(45deg)
}
.row-login .p-box_text a:hover, .p-box_agree a:hover {
  color: #3f80d4;
  text-decoration: underline
}
.row-login .p-box_text * + p, .p-box_agree * + p {
  margin-top: 20px
}
.row-login .p-box_text.-center, .p-box_agree {
  text-align: center
}
.p-flow_resister {
  display: flex;
  justify-content: space-between;
  width: 90%;
  margin: 0 5% 20px
}
.p-flow_resister li {
  font-size: 1.4rem;
  text-align: center
}
.p-flow_resister li span::after {
  content: '';
  display: block;
  width: 30px;
  height: 30px;
  background: #ced6e8;
  border-radius: 50%
}
@media only screen and (min-width:751px) {
  .p-box_btn {
    display: flex;
    flex-direction: row-reverse;
    margin: 30px 0 0
  }
  .p-box_login .p-box_btn {
    margin: 20px 0 0
  }
  .p-box_btn > div {
    width: auto
  }
  .p-box_btn > * + div {
    padding-top: 0;
    padding-right: 20px;
    font-size: 1.2rem;
    width: auto
  }
  .p-box_btn .-information {
    font-size: 1.3rem;
    line-height: 1.5;
    width: calc(100% - 300px);
    margin-right: auto
  }
  .btn-function.-send, .btn-function.-register, .btn-function.-login {
    width: 280px
  }
  .row-login .p-box_text {
    font-size: 1.3rem
  }
  .p-box_agree {
    font-size: 1.5rem
  }
}
.c-search-condition_item {
  border: 1px solid #ced6e8;
  border-radius: 3px;
  margin: 0 0 20px;
  padding: 15px
}
.c-search-condition_item.-keep {
  border: 3px solid #f6ac19;
  box-shadow: 0 0 5px rgba(0, 0, 0, .2)
}
.c-search-condition_item .row-hl {
  width: 100%;
  position: relative;
  padding-bottom: 20px
}
.c-search-condition_item .row-hl strong {
  font-size: 1.8rem
}
.c-search-condition_item .row-hl .-label {
  font-size: 1.1rem;
  color: #fff;
  padding: 5px 10px;
  background: #003b87;
  border-radius: 1px;
  margin-right: 10px;
  line-height: 1;
  position: relative;
  top: -1px
}
.c-search-condition_item .p-condition_item {
  font-size: 1.3rem
}
.c-search-condition_item .p-condition_item dt {
  font-weight: 700
}
.c-search-condition_item .row-button {
  margin-top: 20px
}
.c-search-condition_item .row-button * + li {
  margin-top: 10px
}
.c-search-condition_item .p-condition_item {
  border-top: 1px solid #d7dee9;
  padding: 12px 0
}
@media only screen and (min-width:701px) {
  .c-search-condition_item {
    margin: 20px 0;
    padding: 25px 30px
  }
  .c-search-condition_item.-keep {
    box-shadow: 0 0 5px rgba(0, 0, 0, .2)
  }
  .c-search-condition_item .inner {
    display: flex;
    justify-content: space-between
  }
  .c-search-condition_item .row-hl {
    width: 100%;
    position: relative;
    padding-bottom: 20px
  }
  .c-search-condition_item .row-hl strong {
    font-size: 1.8rem
  }
  .c-search-condition_item .row-hl .-label {
    font-size: 1.2rem;
    margin-right: 15px
  }
  .c-search-condition_item .row-text {
    width: calc(100% - 300px)
  }
  .c-search-condition_item .row-button {
    width: 250px;
    margin-top: 0
  }
  .c-search-condition_item .p-condition_item {
    font-size: 1.3rem
  }
  .c-search-condition_item .p-condition_item dt {
    font-weight: 700
  }
  .c-search-condition_item .row-button * + li {
    margin-top: 10px
  }
  .c-search-condition_item .p-condition_item {
    border-top: 1px solid #d7dee9;
    padding: 12px 0
  }
}
.btn-toggle_function.-border {
  color: #3f80d4;
  border: 1px solid #3f80d4;
  background: #fff
}
.btn-toggle_function.-border.-active {
  color: #174ea6;
  border-color: #174ea6;
  background: #e3eefc
}
.c-box_cv.-column .btn-toggle_function, .row-button .btn-toggle_function {
  border-radius: 3px;
  font-size: 1.3rem;
  padding: 10px 15px;
  width: 100%
}
.c-box_cv.-column .btn-toggle_function.-favorite {
  border-color: #ced6e8;
  color: #2e3b4c
}
.c-box_cv.-column .btn-toggle_function.-favorite.-active {
  background: #f5f5f5;
  border-color: #fefefe
}
.btn-toggle_function.-favorite .ico, .btn-toggle_function.-send_mail .ico {
  display: inline-flex;
  align-items: center;
  padding: 0
}
.btn-toggle_function.-send_mail .ico::before {
  content: '';
  display: block;
  background: url(/common/img/ico_mail_b.svg) 50% 50% no-repeat;
  background-size: contain;
  width: 15px;
  height: 15px;
  margin-right: 5px;
  position: relative;
  left: 0
}
.btn-toggle_function.-send_mail .ico::after {
  content: 'この条件の更新情報を通知'
}
.c-box_cv .btn-toggle_function.-send_mail .ico::after {
  content: 'この物件の更新情報を通知'
}
@media only screen and (max-width:700px) {
  .c-box_cv.-agent .btn-toggle_function.-send_mail .ico::after {
    content: '更新情報を通知'
  }
}
.btn-toggle_function.-send_mail.-active .ico::before {
  background: url(/common/img/ico_block_b.svg) 50% 50% no-repeat
}
.btn-toggle_function.-send_mail.-active .ico::after {
  content: 'メール通知を解除'
}
.btn-toggle_function.-favorite .ico::before {
  content: '';
  display: block;
  background: url(/common/img/ico_star.svg) 50% 50% no-repeat;
  background-size: cover;
  width: 15px;
  height: 15px;
  margin-right: 5px;
  position: relative;
  left: 0
}
.btn-toggle_function.-favorite.-active .ico::before {
  background: url(/common/img/ico_star_active.svg) 50% 50% no-repeat
}
.btn-toggle_function.-favorite .ico::after {
  content: 'お気に入り登録'
}
.btn-toggle_function.-favorite.-active .ico::after {
  content: 'お気に入りから外す'
}
.c-search-condition_item .btn-operation {
  display: flex;
  position: absolute;
  right: 0;
  top: 3px
}
.-function .btn-common.-delete, .c-search-condition_item .btn-operation .btn-common {
  border: none;
  background: none;
  color: #033b88;
  font-size: 1.2rem;
  padding: 0;
  margin-left: 15px
}
.-function .btn-common.-delete {
  margin-left: auto;
  margin-top: 7px;
}
.c-search-condition_item .btn-operation .btn-common[hidden=""] {
  display: none
}
.c-search-condition_item .row-button .link-detail {
  background: #f0f3f8;
  display: block;
  padding: 10px 0;
  font-size: 1.4rem;
  text-align: center;
}
.c-search-condition_item .row-button .link-detail span {
  justify-content: center
}
.c-search-condition_item.-delete .inner {
  display: none
}
.c-search-condition_item.-delete .row-hl {
  padding: 0 60px 0 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center
}
.c-search-condition_item.-delete .row-hl::after {
  content: 'を削除しました。';
  display: block;
  font-size: 1.4rem;
  margin: 3px 0 0 8px
}
@media only screen and (max-width:480px) {
  .c-search-condition_item.-delete .row-hl::after {
    margin: 10px 0 0 0
  }
}
@media only screen and (min-width:701px) {
  .c-search-condition_item .btn-operation {
    display: flex;
    position: absolute;
    right: 0;
    top: 3px
  }
  .-function .btn-common.-delete, .c-search-condition_item .btn-operation .btn-common {
    font-size: 1.3rem
  }
  .-function .btn-common.-delete {
    margin-left: auto
  }
  .c-search-condition_item .btn-operation .btn-common[hidden=""] {
    display: none
  }
  .c-search-condition_item .row-button .link-detail {
    font-size: 1.3rem
  }
  .c-search-condition_item .row-button .link-detail span {
    justify-content: center
  }
  .c-search-condition_item.-delete .row-hl::after {
    font-size: 1.5rem;
    display: inline-block;
    margin: 0 0 0 10px
  }
}
.p-nav_mypage {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap
}
.p-nav_mypage li {
  margin-bottom: 5px
}
.p-nav_mypage li strong {
  font-size: 1.6rem
}
.p-nav_mypage li .ico, .p-nav_mail .hl-middle .ico {
  display: flex;
  align-items: center
}
.p-nav_mypage li .ico::before, .p-nav_mail .hl-middle .ico::before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  margin-right: 10px
}
.p-nav_mypage li .ico.-account::before {
  background: url(/common/img/ico_account.svg) 50% 50% no-repeat;
  background-size: cover
}
.p-nav_mypage li .ico.-stop::before {
  background: url(/common/img/ico_mailstop.svg) 50% 50% no-repeat;
  background-size: cover
}
.p-nav_mypage li .ico.-accountblock::before {
  background: url(/common/img/ico_person_off.svg) 50% 50% no-repeat;
  background-size: cover
}
.p-nav_mypage li .ico.-call::before {
  background: url(/common/img/ico_send.svg) 50% 50% no-repeat;
  background-size: cover
}
.p-nav_mail .ico.-setting::before {
  background: url(/common/img/ico_setting.svg) 50% 50% no-repeat;
  background-size: cover
}
.p-nav_mypage li p {
  font-size: 1.3rem;
  margin-top: 10px
}
.p-nav_mypage li p u {
  display: inline-block;
  margin-top: 5px;
  color: #dc4748
}
.p-nav_mypage li a {
  text-decoration: none;
  padding: 15px 35px 15px 15px;
  border: 1px solid #ced6e8;
  border-radius: 5px;
  display: block;
  height: 100%;
  position: relative;
  transition: .2s all ease
}
.p-nav_mypage li a:hover {
  background: #e5edfb
}
.p-nav_mypage li a::after {
  content: '';
  display: block;
  position: absolute;
  right: 15px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #8495af;
  border-right: 2px solid #8495af;
  transform: rotate(45deg);
  top: calc(50% - 3px)
}
@media only screen and (min-width:751px) {
  .p-nav_mypage {
    flex-direction: row;
    justify-content: space-between
  }
  .p-nav_mypage li {
    width: 49.5%;
    margin-bottom: 15px
  }
  .p-nav_mypage li strong {
    font-size: 2rem
  }
  .p-nav_mypage li .ico, .p-nav_mail .hl-middle .ico {
    display: flex;
    align-items: center
  }
  .p-nav_mypage li .ico::before, .p-nav_mail .hl-middle .ico::before {
    content: '';
    display: block;
    width: 32px;
    height: 32px;
    margin-right: 10px
  }
  .p-nav_mypage li .ico.-account::before {
    background: url(/common/img/ico_account.svg) 50% 50% no-repeat;
    background-size: cover
  }
  .p-nav_mypage li .ico.-stop::before {
    background: url(/common/img/ico_mailstop.svg) 50% 50% no-repeat;
    background-size: cover
  }
  .p-nav_mypage li .ico.-accountblock::before {
    background: url(/common/img/ico_person_off.svg) 50% 50% no-repeat;
    background-size: cover
  }
  .p-nav_mypage li .ico.-call::before {
    background: url(/common/img/ico_send.svg) 50% 50% no-repeat;
    background-size: cover
  }
  .p-nav_mail .ico.-setting::before {
    background: url(/common/img/ico_setting.svg) 50% 50% no-repeat;
    background-size: cover
  }
  .p-nav_mypage li p {
    font-size: 1.4rem;
    margin-top: 15px
  }
  .p-nav_mypage li a {
    text-decoration: none;
    padding: 25px 45px 25px 30px;
    border: 1px solid #ced6e8;
    border-radius: 5px;
    display: block;
    height: 100%;
    position: relative;
    transition: .2s all ease
  }
  .p-nav_mypage li a:hover {
    background: #e5edfb
  }
  .p-nav_mypage li a::after {
    content: '';
    display: block;
    position: absolute;
    right: 20px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #8495af;
    border-right: 2px solid #8495af;
    transform: rotate(45deg);
    top: calc(50% - 3px)
  }
}
.p-nav_mail {
  border: 1px solid #ced6e8;
  border-radius: 5px;
  padding: 15px 15px 10px;
  margin-top: 20px
}
.p-nav_mail .hl-middle {
  font-size: 1.6rem
}
.p-nav_mail ul {
  margin-top: 15px;
  font-size: 1.3rem
}
.p-nav_mail a {
  display: block;
  text-decoration: none;
  padding: 15px 0;
  transition: .2s all ease
}
.p-nav_mail a span {
  display: flex;
  align-items: center
}
.p-nav_mail a span::after {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #8495af;
  border-right: 2px solid #8495af;
  transform: rotate(45deg);
  margin-left: 20px
}
.p-nav_mail li {
  border-top: 1px solid #ced6e8
}
@media only screen and (min-width:751px) {
  .p-nav_mail {
    border: 1px solid #ced6e8;
    border-radius: 5px;
    padding: 25px 30px 10px;
    margin-top: 20px
  }
  .p-nav_mail .hl-middle {
    font-size: 2rem
  }
  .p-nav_mail ul {
    margin-top: 30px;
    font-size: 1.6rem
  }
  .p-nav_mail a {
    display: block;
    text-decoration: none;
    padding: 15px 0;
    transition: .2s all ease
  }
  .p-nav_mypage li a:hover, .p-nav_mail a:hover {
    background: #f0f5ff
  }
  .p-nav_mail a span {
    display: flex;
    align-items: center
  }
  .p-nav_mail a span::after {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #8495af;
    border-right: 2px solid #8495af;
    transform: rotate(45deg);
    margin-left: 20px
  }
  .p-nav_mail li {
    border-top: 1px solid #ced6e8
  }
  .p-nav_mypage li a:hover, .p-nav_mail a:hover {
    background: #f0f5ff
  }
}
.p-box_attention {
  padding: 0;
  margin: 30px 0 50px;
  border: 2px solid #f6ac19;
  display: table
}
.p-box_attention h2 {
  display: table-cell;
  padding: 20px 30px;
  background: #f6ac19;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1.5;
  width: 40%;
  vertical-align: middle
}
.p-box_attention .c-box_text {
  padding: 20px 30px;
  vertical-align: middle
}
.p-box_attention .c-text {
  font-size: 1.3rem;
  line-height: 1.7
}
.p-box_attention * + .c-text {
  margin-top: 10px
}
.p-box_attention.-dark {
  padding: 20px;
  margin: 20px auto 0;
  border: 4px solid #ced6e8;
  background: #fff;
  display: block;
  border-radius: 5px;
  max-width: 1100px
}
.c-text * + li {
  margin-top: 10px
}
.l-form.-narrow {
  max-width: 900px
}
.p-list_toggle {
  border: 5px solid #dbdbe9;
  margin: 20px 0 50px
}
.p-list_toggle .p-toggle_item {
  border-bottom: 2px solid #dbdbe9
}
.p-list_toggle .p-toggle_item:last-of-type {
  border: none
}
.p-list_toggle .c-toggle-parent {
  border-bottom: none;
  padding: 0;
  width: 100%;
  display: block;
  transition: .2s all ease
}
.p-list_toggle .c-toggle-parent:hover {
  background: #f5f5f5
}
.p-list_toggle .c-toggle-parent .ico {
  padding: 15px 50px 15px 20px;
  font-size: 1.5rem;
  display: block;
  position: relative;
  height: auto
}
.p-list_toggle .c-toggle-parent .ico.-toggle::before, .p-list_toggle .c-toggle-parent .ico.-toggle::after {
  left: auto;
  right: 20px;
  transform: translateX(0)
}
.p-list_toggle .c-toggle-parent .ico.-toggle::after {
  transform: translateX(0) rotate(90deg)
}
.p-list_toggle .c-toggle-parent.-active .ico.-toggle::after {
  transform: translateX(0) rotate(0)
}
.p-list_toggle .c-toggle-parent.-active {
  background: none;
  border-radius: 0;
  font-weight: 700;
  border-top: 1px solid #ced6e8
}
.p-list_toggle .c-toggle-child {
  padding: 0 20px;
  font-size: 1.5rem;
  overflow: hidden;
  max-height: 0;
  transition: .3s all ease
}
@media only screen and (max-width:700px) {
  .p-list_toggle .c-toggle-parent .ico, .p-list_toggle .c-toggle-child {
    font-size: 1.4rem
  }
}
.p-box_composite-select .c-toggle-child .p-list_checkbox li {
  position: relative
}
.p-box_composite-select .c-toggle-child .p-list_checkbox li::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: -1px;
  height: calc(100% + 1px);
  width: 8px;
  z-index: 2;
  background: #f0f3f8
}
.p-list_toggle .c-toggle-parent.-active + .c-toggle-child {
  padding: 0 20px 10px;
  max-height: none;
  border-bottom: 1px solid #ced6e8
}
.p-list_toggle .c-toggle-child a {
  color: #3f80d4;
  display: inline-flex;
  align-items: center;
  margin-right: 10px;
  text-decoration: none
}
.p-list_toggle .c-toggle-child a:hover {
  text-decoration: underline
}
.p-list_toggle .c-toggle-child a[target="_blank"]::after {
  content: '';
  display: block;
  background: url(/common/img/ico_blank.svg) 50% 50% no-repeat;
  width: 15px;
  height: 15px;
  background-size: cover;
  margin-left: 5px
}
.p-list_circle li {
  position: relative;
  padding-left: 20px
}
.p-list_circle:not(.-row2) * + li {
  margin-top: 10px
}
.p-list_circle li::before {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #ced6e8;
  position: absolute;
  left: 0;
  top: 5px
}
.p-lpsite_list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
/* 特設サイト一覧 */
.c-lpsite_item {
  width: 100%;
  display: flex;
  align-items: stretch
}
.c-lpsite_item a {
  display: flex;
  justify-content: space-between;
  text-decoration: none;
}
.c-lpsite_item .e-thumb {
  display: block;
  width: 100%;
  aspect-ratio: 1.3 / 1;
  overflow: hidden;
}
.c-lpsite_item .e-thumb img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  object-position: 50% 90%;
  transition: .2s all ease;
  border-radius: 3px;
  border: 1px solid rgba(0, 0, 0, .1);
}
.c-lpsite_item a:hover .e-thumb img {
  transform: scale(1.1);
}
.c-lpsite_item em {
  display: flex;
  font-style: normal;
  line-height: 1.4;
  font-weight: bold;
  margin: 18px auto;
}
.c-lpsite_item a:hover em {
  color: #003b87;
}
.c-lpsite_item .-copy {
  font-size: 1.3rem;
  line-height: 1.4;
  height: 3em;
  margin: 15px auto;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  opacity: .85;
}
.c-lpsite_item .btn-special {
  border: 1px solid #c8a347;
  color: #c8a347;
  background: transparent;
  transition: .2s all ease;
}
.c-lpsite_item .btn-special .ico {
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-lpsite_item .btn-special .ico::after {
  content: '';
  display: block;
  background: url("../img/ico_blank_gold.svg") 50% 50% no-repeat;
  background-size: cover;
  width: 15px;
  height: 15px;
  margin-left: 5px;
  transition: .2s all ease;
}
.c-lpsite_item a:hover .btn-special {
  border: 1px solid #c8a347;
  color: #fff;
  background: #c8a347;
}
.c-lpsite_item a:hover .btn-special .ico::after {
  background-image: url("../img/ico_blank_w.svg");
}
@media only screen and (max-width:480px) {
  .p-lpsite_list {
    gap: 4px 0;
  }
  .w-main.-root .p-lpsite_list {
    margin: 0 5% 20px;
  }
  .c-lpsite_item a {}
  .c-lpsite_item .e-thumb {
    width: 40%;
    aspect-ratio: 1.3 / 1;
    border-radius: 0;
  }
  .c-lpsite_item .e-text {
    width: 60%;
    padding-left: 6%;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .c-lpsite_item:nth-of-type(2n) .e-text {
    background: #f5f5f7;
  }
  .c-lpsite_item .-copy {
    display: none;
  }
  .c-lpsite_item em {
    font-size: 1.4rem;
    margin: 0 0 10px;
  }
  .w-main.-root .c-lpsite_item:nth-of-type(n+5) {
    display: none;
  }
  .c-lpsite_item .btn-special {
    padding: 4px 15px;
    font-size: 1.1rem;
    border-radius: 2px;
    display: inline-block;
    margin: 0 0;
  }
}
@media only screen and (min-width:481px) {
  .c-lpsite_item a {
    display: block;
  }
  .p-lpsite_list {
    gap: 40px 40px;
  }
  .c-lpsite_item {
    width: calc((100% - 40px) / 2);
  }
  .c-lpsite_item .btn-special {
    padding: 10px 0;
    border-radius: 2px;
    font-size: 1.3rem;
  }
  .c-lpsite_item em {
    margin: 18px auto 10px;
    font-size: 1.6rem;
    height: 3em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .c-lpsite_item .-copy {
    font-size: 1.3rem;
  }
}
@media only screen and (min-width:481px) and (max-width:750px) {
  .w-main.-root .c-lpsite_item:nth-of-type(n+7) {
    display: none;
  }
}
@media only screen and (min-width:751px) {
  .p-lpsite_list {
    gap: 60px 25px;
  }
  .c-lpsite_item {
    width: calc((100% - 50px) / 3);
  }
}
@media only screen and (max-width:900px) {
  .w-main.-root .p-lpsite_list {
    margin: 0 5%;
  }
}
@media only screen and (min-width:1201px) {
  .p-lpsite_list {
    gap: 60px 25px;
  }
  .c-lpsite_item {
    width: calc((100% - 75px) / 4);
  }
  .w-main.-root .c-lpsite_item:nth-of-type(n+9) {
    display: none;
  }
}
.p-news_list {
  font-size: 1.6rem
}
.p-news_list a {
  text-decoration: none
}
.p-news_list li {
  text-decoration: none
}
.box-img.-cover img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block
}
.p-list_pamphlet {
  display: flex;
  flex-wrap: wrap;
  width: 102%;
  margin-left: -1%;
  margin-top: 40px
}
.c-list_pamphlet-item {
  cursor: pointer;
  font-size: 1.6rem;
  line-height: 1;
  margin: 0 1% 50px;
  position: relative;
  width: 23%;
  z-index: 1
}
.c-list_pamphlet-item_m20 {
  cursor: pointer;
  font-size: 1.6rem;
  line-height: 1;
  margin: 0 1% 20px;
  position: relative;
  width: 23%;
  z-index: 1
}
.c-list_pamphlet-item figure {
  padding: 0;
  margin: 0
}
.c-list_pamphlet-item .c-thumb img {
  width: 100%;
  height: auto;
  display: block
}
.c-list_pamphlet-item .c-title {
  margin-top: 1em;
  font-weight: 700;
  transition: .2s all ease
}
.c-list_pamphlet-item:hover .c-title {
  color: #3f80d4
}
.c-list_pamphlet-item .-hover_item {
  position: absolute;
  background: rgba(43, 60, 82, .8);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  padding: 10%;
  height: calc(100% - 2em);
  top: 0;
  left: 0;
  transition: .3s ease all;
  opacity: 0;
  z-index: -1
}
.c-list_pamphlet-item:hover .-hover_item {
  opacity: 1;
  z-index: 2
}
.c-list_pamphlet-item .-hover_item > div {
  width: 100%
}
.c-list_pamphlet-item a {
  display: block;
  width: 100%;
  padding: 12px 15px;
  font-size: 1.4rem;
  text-align: center;
  font-weight: 700
}
.c-list_pamphlet-item a + a {
  margin-top: 10px
}
.c-list_pamphlet-item .btn-common.-download {
  border: 1px solid #357bd5;
  background: #fff;
  color: #357bd5;
  position: relative
}
.c-list_pamphlet-item .btn-common.-download::after {
  content: '';
  display: block;
  height: 16px;
  width: 16px;
  background: url(/common/img/ico_download_b.svg) 50% 50% no-repeat;
  background-size: cover;
  position: absolute;
  right: 12px;
  top: calc(50% - 8px)
}
.c-list_pamphlet-item .btn-common.-link {
  color: #fff;
  background: none;
  border: 1px solid #fff;
  position: relative
}
.c-list_pamphlet-item .btn-common.-link::after {
  content: '';
  display: block;
  height: 5px;
  width: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  right: 20px;
  top: calc(50% - 2.5px)
}
@media only screen and (max-width:768px) {
  .c-list_pamphlet-item {
    font-size: 1.4rem;
    margin: 0 1% 40px;
    width: 48%
  }
}
.-label.-agent {
  text-align: center;
  color: #fff;
  background: #111;
  padding: 5px 6px;
  font-size: 1.1rem;
  white-space: nowrap;
  position: absolute;
  text-decoration: none;
  margin-top: -10px;
}
.link-back {
  font-size: 1.4rem
}
.link-back:hover {
  text-decoration: none
}
.link-back .ico {
  display: flex;
  align-items: center;
  margin-left: 5px
}
.link-back .ico::before {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #2e3b4c;
  border-left: 2px solid #2e3b4c;
  transform: rotate(-45deg);
  margin-right: 5px
}
.c-box_agent-detail {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
  background: #f9f9f9;
  border: 1px solid #2e3b4c
}
.c-box_agent-detail .row-commission {
  width: 40%
}
.c-box_agent-detail .c-data_item:last-of-type {
  border-bottom: none
}
.c-box_agent-detail .row-commission h4 {
  background: #2e3b4c;
  color: #fff;
  font-size: 1.4rem;
  padding: 6px 10px;
  margin-bottom: 8px
}
.c-box_agent-detail .row-commission dt {
  width: 120px;
  padding-left: 10px
}
.c-box_agent-detail .row-commission dd {
  width: calc(100% - 120px)
}
.c-box_agent-detail .row-office {
  width: 56%
}
.c-box_agent-detail .row-office dt {
  width: 80px;
  padding-left: 10px
}
.c-box_agent-detail .row-office dd {
  width: calc(100% - 80px)
}
@media only screen and (max-width:640px) {
  .c-box_agent-detail {
    flex-direction: column
  }
  .c-box_agent-detail .row-commission {
    width: 100%
  }
  .c-box_agent-detail .row-commission .c-data_item:last-of-type {
    border-bottom: 1px solid #dde5f0
  }
  .c-box_agent-detail .row-commission h4 {
    background: #2e3b4c;
    color: #fff;
    font-size: 1.4rem;
    padding: 10px 10px;
    margin-bottom: 0
  }
  .c-box_agent-detail .row-commission dt {
    width: 70px;
    padding-left: 0
  }
  .c-box_agent-detail .row-commission dd {
    width: calc(100% - 65px)
  }
  .c-box_agent-detail .row-office {
    width: 100%
  }
  .c-box_agent-detail .p-data_table {
    padding: 0 10px
  }
}
.p-list_column {
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px
}
.p-list_column li {
  width: 32.5%;
  margin-bottom: 15px
}
.p-list_column li:not(:nth-of-type(3n+1)) {
  margin-left: 1.25%
}
.p-list_column li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
  border: 1px solid #e5e9ef;
  border-radius: 3px;
  height: 100%;
  transition: .2s all ease
}
.p-list_column li a:hover {
  border-color: #3f80d4;
  color: #003b87
}
.p-list_column li img {
  width: 140px;
  height: 140px;
  display: block;
  object-fit: cover;
  object-position: 50% 50%
}
.p-list_column li b {
  padding: 0 15px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  width: calc(100% - 140px);
  font-size: 1.5rem;
  font-style: normal;
  line-height: 1.5
}
.w-detail_column {
  display: flex;
  margin-top: 40px
}
.w-detail_column .row-content {
  width: 74%;
  max-width: 1000px;
  margin-bottom: 0
}
.w-detail_column .row-list {
  width: 21%;
  margin-left: auto;
  max-width: 250px
}
.w-detail_column .row-list .p-toggle_menu {
  border: 1px solid #ced6e8;
  border-top: none;
  border-bottom: none
}
@media only screen and (max-width:960px) {
  .w-detail_column {
    flex-direction: column
  }
  .w-detail_column .row-content {
    width: 100%
  }
  .w-detail_column .row-list {
    width: 100%;
    max-width: none;
    margin: 80px auto 0
  }
  .p-list_column li img {
    width: 120px;
    height: 120px
  }
  .p-list_column li b {
    width: calc(100% - 120px);
    font-size: 1.4rem
  }
}
@media only screen and (max-width:840px) {
  .p-list_column li {
    width: 49%;
    margin-bottom: 10px
  }
  .p-list_column li:not(:nth-of-type(3n+1)) {
    margin-left: 0
  }
  .p-list_column li:not(:nth-of-type(2n+1)) {
    margin-left: 2%
  }
}
@media only screen and (max-width:750px) {
  .p-list_column li img {
    width: 100px;
    height: 100px
  }
  .p-list_column li b {
    width: calc(100% - 100px);
    font-size: 1.3rem
  }
}
@media only screen and (max-width:600px) {
  .p-list_column li img {
    width: 80px;
    height: 80px
  }
  .p-list_column li b {
    width: calc(100% - 80px)
  }
  .p-list_column li {
    width: 100%;
    margin-bottom: 5px
  }
  .p-list_column li:not(:nth-of-type(2n+1)) {
    margin-left: 0
  }
}
.w-detail_column .row-list .-sticky {
  position: sticky;
  top: 0
}
.w-detail_column .row-list h3 {
  font-size: 1.5rem;
  background: #003b87;
  color: #fff;
  padding: 10px;
  text-align: center
}
.w-detail_column .row-list .p-list_column {
  margin-top: 5px
}
.w-detail_column .row-list .p-list_column li {
  width: 100%;
  margin-bottom: 5px;
  margin-left: 0
}
@media only screen and (min-width:601px) and (max-width:960px) {
  .w-detail_column .row-list .p-list_column li {
    width: 49.5%;
    margin-bottom: 5px
  }
  .w-detail_column .row-list .p-list_column li:nth-of-type(2n) {
    margin-left: 1%
  }
}
.row-list .p-list_column li a {
  background: #ebeff5
}
.row-list .p-list_column li a img {
  height: 80px;
  width: 80px
}
.row-list .p-list_column li b {
  font-size: 1.2rem;
  line-height: 1.4;
  width: calc(100% - 80px)
}
.p-list_aside {
  padding: 0;
  font-size: 1.3rem;
  margin: 5px 0 50px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}
.p-list_aside a {
  padding: 6px;
  width: 100%;
  display: block;
  text-decoration: none;
  align-items: center;
  border-radius: 5px;
  height: 100%;
  text-align: center;
  border: 1px solid #ced6e8;
  box-shadow: 0 1px 2px rgba(0 0 0 .15);
  color: #003b87
}
.p-list_aside a.-active {
  background: #003b87;
  color: #fff
}
.p-list_aside li {
  width: calc((100% - 5px) / 2);
  margin-bottom: 5px
}
.p-list_aside li.-wide {
  width: 100%
}
.w-detail_column .row-content h3 {
  font-size: 2.2rem;
  margin-bottom: 30px;
  color: #003b87;
  font-weight: 700;
  position: relative;
  line-height: 1;
  padding-top: 30px;
}
.w-detail_column .row-content h3 span {
  border-left: 8px solid #ced6e8;
  padding-left: .7em;
  display: block
}
.w-detail_column .row-content > div {
  display: flex;
  justify-content: space-between;
  margin-bottom: 60px
}
.w-detail_column .row-content > div.single {
  display: block;
  margin-bottom: 60px
}
.w-detail_column .row-content > div:last-of-type {
  margin-bottom: 0
}
.w-detail_column .row-content > div.-reverse {
  flex-direction: row-reverse
}
.w-detail_column .row-content > div .img {
  width: 32%
}
.w-detail_column .row-content > div .img .-caption {
  font-size: 1.3rem;
  display: block;
  line-height: 1.4;
  padding: 0 5%;
  margin-top: 10px;
  text-align: center;
  color: #2e3b4c
}
.w-detail_column .row-content > div .img a {
  text-decoration: none;
  transition: .2s all ease
}
.row-content img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: contain
}
.w-detail_column .row-content > div .img img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  transition: .2s all ease
}
.w-detail_column .row-content > div .img a {
  border: 1px solid #2e3b4c;
  display: block;
  position: relative
}
.w-detail_column .row-content a.p-hover_mes span {
  line-height: 1.8;
  font-weight: 700;
  opacity: 0;
  height: 100%;
  width: 100%;
  color: #fff;
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, .7);
  transition: .2s all ease;
  position: absolute;
  top: 0;
  left: 0;
  padding: 40px
}
.w-detail_column .row-content a.p-hover_mes:hover span {
  opacity: 1
}
.w-detail_column .row-content > div .txt {
  width: 64%
}
.w-detail_column .row-content h4 {
  font-size: 1.7rem;
  padding-bottom: 10px;
  border-bottom: 1px solid #ced6e8;
  margin: 0 0 15px
}
.w-detail_column .row-content * + h4 {
  margin-top: 40px
}
.w-detail_column .row-content p {
  font-size: 1.5rem;
  line-height: 1.8
}
.w-detail_column .row-content ul {
  margin-bottom: 30px
}
.w-detail_column .row-content * + ul {
  margin-top: 20px
}
.w-detail_column .row-content h4 + ul {
  margin-top: 0
}
.w-detail_column .row-content p + ul {
  margin-top: 30px
}
.w-detail_column .row-content li {
  font-size: 1.5rem;
  line-height: 1.4
}
.w-detail_column .row-content ul:not(.p-flex) * + li {
  margin-top: .7em
}
.w-detail_column .row-content div * + p {
  margin-top: 20px
}
.w-detail_column .row-content h4 + p {
  margin-top: 10px
}
@media only screen and (max-width:700px) {
  .w-detail_column {
    margin-top: 30px
  }
  .w-detail_column .row-content > div, .w-detail_column .row-content > div.-reverse {
    flex-direction: column;
    margin-bottom: 30px
  }
  .w-detail_column .row-content > div .img {
    width: 100%;
    margin: 0 auto 20px;
    background: #2e3b4c
  }
  .w-detail_column .row-content > div .img img {
    width: auto;
    max-height: 200px;
    margin: 0 auto
  }
  .w-detail_column .row-content > div .txt {
    width: 100%
  }
  .w-detail_column .row-content h4 {
    font-size: 1.6rem;
    padding-bottom: 5px;
    border-bottom: 1px solid #ced6e8;
    margin: 0 0 10px
  }
  .w-detail_column .row-content * + h4 {
    margin-top: 30px
  }
  .w-detail_column .row-content p {
    font-size: 1.3rem;
    line-height: 1.8
  }
  .w-detail_column .row-content div * + p {
    margin-top: 12px
  }
  .w-detail_column .row-content div ul + p {
    margin-top: 30px
  }
  .w-detail_column .row-content ul {
    margin-bottom: 0
  }
  .w-detail_column .row-content p + ul {
    margin-top: 30px
  }
  .w-detail_column .row-content li {
    font-size: 1.3rem;
    line-height: 1.4
  }
  .w-detail_column .row-content h3 {
    font-size: 1.9rem;
    margin-bottom: 20px
  }
  .w-detail_column .row-content h3 span {
    border-left: 5px solid #ced6e8;
    padding-left: .5em
  }
}
@media only screen and (max-width:480px) {
  .w-detail_column .row-content ul.p-flex {
    flex-direction: column
  }
  .w-detail_column .row-content ul li {
    width: 100% !important
  }
  .w-detail_column .row-content ul.p-flex.-row2 > *:nth-of-type(n+2) {
    margin-top: 10px
  }
  .w-detail_column .row-content ul.p-flex.-row2.-gallery > *:nth-of-type(n+2) {
    margin-top: 2px
  }
}
.w-detail_column strong {
  color: #000;
  background: linear-gradient(to top, #fbe21f 0%, #fbe21f .5rem, rgba(251, 226, 31, 0) .5rem, rgba(251, 226, 31, 0) 100%)
}
.p-toggle_menu .c-toggle-parent {
  padding: 10px;
  font-size: 1.5rem;
  border-radius: 0 !important;
  font-weight: 700
}
.p-toggle_menu .c-toggle-child {
  display: none;
  background: #f0f3f8;
  padding-bottom: 10px;
  border-bottom: 1px solid #ced6e8
}
.p-toggle_menu .c-toggle-parent.-active + .c-toggle-child {
  display: block
}
.p-toggle_menu ul {
  font-size: 1.3rem;
  margin: 0 10px;
  padding: 5px 0
}
.p-toggle_menu ul li {
  background: #fff
}
.p-toggle_menu ul li + li {
  margin-top: 1px
}
.p-toggle_menu ul a {
  text-decoration: none;
  padding: 10px 25px 10px 10px;
  display: flex;
  align-items: center;
  width: 100%;
  transition: .2s all ease;
  position: relative
}
.p-toggle_menu ul a:hover {
  opacity: .7
}
.p-toggle_menu ul a::after {
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  border-top: 2px solid #2e3b4c;
  border-right: 2px solid #2e3b4c;
  transform: rotate(45deg);
  position: absolute;
  top: calc(50% - 2px);
  right: 8px
}
p + .p-box_thumblink {
  margin-top: 60px
}
.p-box_thumblink + .p-box_thumblink {
  margin-top: 5px
}
.p-box_thumblink > a, .p-box_thumblink > div {
  display: flex;
  text-decoration: none;
  align-items: center;
  width: 100%;
  border: 1px solid #ced6e8;
  color: #003b87;
  background: #eee
}
.p-box_thumblink > a img {
  width: 25%;
  max-width: 100%;
  height: auto;
  display: block
}
.w-detail_column .p-box_thumblink > a p {
  width: 75%;
  padding: 0 5%;
  font-size: 1.6rem;
  font-weight: 700
}
.p-box_thumblink > div {
  border: none;
  color: unset;
  background: none
}
.p-box_thumblink > div.-reverse {
  flex-direction: row-reverse;
  justify-content: space-between
}
.p-box_thumblink > div .img {
  width: 25% !important
}
.p-box_thumblink > div .img img {
  width: 100% !important;
  height: auto;
  object-fit: contain !important;
  object-position: 50% 0
}
.p-box_thumblink > div .txt {
  width: 75% !important
}
@media only screen and (max-width:700px) {
  p + .p-box_thumblink {
    margin-top: 50px
  }
  .w-detail_column .p-box_thumblink a .img {
    width: 40%;
    height: 90px;
    display: block;
    margin: 0;
    overflow: hidden
  }
  .w-detail_column .p-box_thumblink a .img img {
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    object-fit: cover;
    object-position: 50% 50%
  }
  .w-detail_column .p-box_thumblink a p {
    width: 60%;
    padding: 0 5%;
    font-size: 1.5rem;
    line-height: 1.1;
    font-weight: 700;
    margin: 0
  }
}
.p-list_word_index {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.5rem;
  margin-top: 60px
}
.p-list_word_index .c-word_index-item {
  width: 30%;
  margin-bottom: 80px
}
.p-list_word_index .c-word_index-item dt {
  font-size: 2rem;
  font-weight: 700;
  padding-left: 20px;
  border-left: 5px solid #003b87;
  margin-bottom: 25px
}
.p-list_word_index .c-word_index-item dd * + li {
  margin-top: 15px
}
.p-list_word_index .c-word_index-item li:not(:last-of-type) {
  padding-bottom: 15px;
  border-bottom: 1px solid #dbdbe9
}
.p-list_word_index .c-word_index-item dd {
  color: #ccc
}
.p-list_word_index .c-word_index-item a {
  display: flex;
  position: relative;
  text-decoration: none;
  transition: .2s all ease
}
.p-list_word_index .c-word_index-item a:hover {
  color: #003b87;
  text-decoration: underline
}
.p-list_word_index .c-word_index-item a::before {
  content: '';
  display: block;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: #003b87;
  margin-right: 10px;
  align-items: center
}
.p-list_word_index .c-word_index-item a::after {
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  left: 4.5px;
  top: 6px
}
.p-list_word_index .c-word_index-item:not(:nth-of-type(3n+1)) {
  margin-left: 5%
}
.l-main.-root .sec-recommend .p-list_recommend.slick-slider {
  overflow: initial
}
@media only screen and (max-width:900px) {
  .l-main.-root .sec-recommend .p-list_recommend.slick-slider {
    padding-bottom: 10px
  }
}
@media only screen and (max-width:900px) {
  .p-thumb.slick-slider .slick-next {
    right: 0
  }
  .p-thumb.slick-slider .slick-prev {
    left: 0;
    z-index: 10
  }
  .p-thumb.slick-slider .slick-prev, .p-thumb.slick-slider .slick-next {
    width: 20px;
    height: 20px
  }
  .p-thumb.slick-slider .slick-prev, .p-thumb.slick-slider .slick-next {
    background: #000
  }
  .p-thumb.slick-slider .slick-prev:before {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(-135deg)
  }
  .p-thumb.slick-slider .slick-next:before {
    content: '';
    display: block;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg)
  }
}
@media only screen and (max-width:600px) {
  .sec-flow_pride {
    margin: 40px 0
  }
}
.p-flow_pride {
  display: flex;
  justify-content: space-between;
  padding: 20px;
  margin: 20px 0 40px;
  border-radius: 10px;
  background: #e4edf9
}
.p-flow_pride > li {
  width: 18%;
  border: 1px solid #d0dff2;
  box-shadow: 0 2px 5px rgba(0, 0, 0, .15);
  border-radius: 5px;
  padding: 20px 15px;
  background: #fff;
  position: relative;
  z-index: 5
}
.p-flow_pride > li + li::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12.5px 0 12.5px 20px;
  border-color: transparent transparent transparent #003b87;
  position: absolute;
  top: calc(50% - 12.5px);
  left: -25px
}
.p-flow_pride-end {
  border: 2px solid #003b87;
  border-radius: 10px;
  padding: 30px;
  width: 60%;
  margin: 0 auto;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  background: #003b87;
  color: #fff;
  position: relative
}
.p-flow_pride-end::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 25px 0 25px;
  border-color: #417fce transparent transparent transparent;
  position: absolute;
  left: calc(50% - 25px);
  top: -35px
}
.p-flow_pride > li p {
  font-size: 1.4rem;
  line-height: 1.5;
  min-height: 7.5em
}
.p-flow_pride > li ul {
  font-size: 1.3rem;
  line-height: 1.1;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px dashed #ccc
}
.p-flow_pride > li ul li {
  position: relative;
  padding-left: 12px
}
.p-flow_pride > li ul li::before {
  content: '';
  display: block;
  background: #ccc;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 3px
}
.p-flow_pride > li ul * + li {
  margin-top: 10px
}
@media only screen and (max-width:900px) {
  .p-flow_pride {
    flex-wrap: wrap;
    justify-content: center;
    padding: 20px 25px;
    overflow: hidden;
    border-radius: 5px
  }
  .p-flow_pride > li {
    width: 31%;
    margin: 0 3.5% 20px 0;
    border: 1px solid #d0dff2;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .15);
    padding: 20px 15px;
    background: #fff;
    position: relative;
    z-index: 5
  }
  .p-flow_pride > li:nth-of-type(3n) {
    margin-right: 0
  }
  .p-flow_pride > li + li::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12.5px 0 12.5px 20px;
    border-color: transparent transparent transparent #003b87;
    position: absolute;
    top: calc(50% - 12.5px);
    left: -30px
  }
  .p-flow_pride-end {
    padding: 20px;
    width: 100%
  }
  .p-flow_pride > li p {
    font-size: 1.4rem;
    line-height: 1.5;
    min-height: 7.5em
  }
  .p-flow_pride > li ul {
    font-size: 1.3rem;
    line-height: 1.1;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px dashed #ccc
  }
  .p-flow_pride > li ul li {
    position: relative;
    padding-left: 12px
  }
  .p-flow_pride > li ul li::before {
    content: '';
    display: block;
    background: #ccc;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 3px
  }
  .p-flow_pride > li ul * + li {
    margin-top: 10px
  }
}
@media only screen and (max-width:600px) {
  .p-flow_pride {
    padding: 20px 20px 5px;
    border-radius: 5px
  }
  .p-flow_pride > li {
    width: 100%;
    margin: 0 0 20px 0;
    border: 1px solid #d0dff2;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .15);
    border-radius: 5px;
    padding: 20px 15px;
    background: #fff;
    position: relative;
    z-index: 5
  }
  .p-flow_pride > li + li::before {
    content: '';
    border-style: solid;
    border-width: 16px 12.5px 0 12.5px;
    border-color: #003b87 transparent transparent transparent;
    position: absolute;
    top: -20px;
    left: calc(50% - 12.5px)
  }
  .p-flow_pride-end {
    padding: 20px;
    width: 100%;
    border-radius: 5px
  }
  .p-flow_pride > li p {
    font-size: 1.3rem;
    min-height: initial
  }
  .p-flow_pride > li ul {
    font-size: 1.3rem;
    line-height: 1.1;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dashed #ccc
  }
  .p-flow_pride > li ul li {
    position: relative;
    padding-left: 12px
  }
  .p-flow_pride > li ul * + li {
    margin-top: 5px
  }
}
.c-title_flow {
  font-size: 2.4rem;
  display: flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 20px;
  width: 100%
}
.c-title_flow b {
  font-size: 3rem;
  margin-right: 15px;
  width: 28%;
  background: #003b87;
  border-radius: 3px;
  color: #fff;
  text-align: center;
  padding: 10px 0
}
.c-title_flow > span {
  width: calc(100% - (28% + 15px));
  letter-spacing: .3em;
  text-align: center;
  white-space: nowrap
}
.c-title_flow span span {
  font-size: 1.2rem;
  letter-spacing: .05em;
  display: block;
  margin-top: 6px;
  padding: 4px 0 0;
  font-weight: 400;
  border-top: 1px solid #ccc;
  margin-left: -.3em
}
.hl-concept.-large {
  font-size: 3rem;
  line-height: 2;
  font-weight: 700;
  color: #003b87;
  margin-bottom: 30px
}
.hl-concept.-large span {
  border-bottom: 1px solid #003b87;
  padding-bottom: 5px
}
@media only screen and (max-width:900px) {
  .hl-concept.-large {
    font-size: 2.4rem
  }
}
@media only screen and (max-width:640px) {
  .hl-concept.-large {
    font-size: 2rem;
    line-height: 2;
    margin-bottom: 20px
  }
  .hl-concept.-large span {
    border-bottom: 1px solid #003b87;
    padding-bottom: 3px
  }
}
.hl-middle_content {
  font-size: 2.4rem
}
.hl-middle_content.-center {
  text-align: center
}
.hl-middle_content.-underline::after {
  content: '';
  display: block;
  width: 30px;
  height: 1px;
  margin: 25px auto;
  background: #003b87
}
@media only screen and (max-width:600px) {
  .hl-middle_content {
    font-size: 2rem
  }
  .hl-middle_content.-underline::after {
    content: '';
    display: block;
    width: 20px;
    height: 1px;
    margin: 15px auto;
    background: #003b87
  }
}
.sec-common {
  margin: 80px auto;
  max-width: 1100px
}
.sec-common:last-of-type {
  margin-bottom: 0
}
@media only screen and (max-width:600px) {
  .sec-common {
    margin: 50px auto;
    max-width: 1100px
  }
}
.p-list_case {
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px
}
.p-list_case li {
  width: calc((100% - 20px) / 3);
  margin-right: 10px;
  margin-bottom: 10px;
  border-radius: 2px;
  transition: .2s all ease
}
.p-list_case li a {
  display: block;
  position: relative;
  border-radius: 2px;
  transition: .2s all ease
}
.p-list_case li:nth-of-type(3n) {
  margin-right: 0
}
.p-list_case .c-thumb {
  position: relative;
  padding-top: 66%;
  z-index: 1;
  overflow: hidden;
  border-radius: 2px
}
.p-list_case .c-thumb::after {
  content: '';
  display: block;
  height: 50%;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .7))
}
.p-list_case .c-thumb img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  border-radius: 2px;
  display: block
}
.p-list_case .c-title {
  position: absolute;
  bottom: 20px;
  z-index: 10;
  font-size: 1.7rem;
  width: 100%;
  padding: 0 20px;
  color: #fff
}
.p-list_case .c-title .-label {
  display: inline-block;
  background: #003b87;
  font-size: 1.3rem;
  padding: 2px 10px;
  margin-right: 10px
}
@media only screen and (min-width:901px) {
  .p-list_case:hover li a {
    opacity: .7
  }
  .p-list_case li a:hover {
    opacity: 1;
    box-shadow: 0 5px 15px rgba(0, 0, 0, .2)
  }
}
@media only screen and (max-width:900px) {
  .p-list_case {
    margin-top: 30px
  }
  .p-list_case li {
    width: calc((100% - 10px) / 3);
    margin-right: 5px;
    margin-bottom: 5px;
    border-radius: 0
  }
  .p-list_case .c-thumb::after {
    content: '';
    display: none
  }
  .p-list_case .c-title {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    line-height: 1.5;
    top: 0;
    transition: .2s all ease;
    background: rgba(0, 0, 0, .5)
  }
  .p-list_case .c-title {
    position: absolute;
    bottom: 20px;
    z-index: 10;
    font-size: 1.6rem;
    width: 100%;
    padding: 0 20px;
    color: #fff;
    padding-top: 60px
  }
  .p-list_case .c-title .-label {
    font-size: 1.3rem;
    padding: 2px 10px;
    margin: 0 0 5px
  }
}
@media only screen and (max-width:600px) {
  .p-list_case li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 0;
    border-radius: 0
  }
  .p-list_case * + li {
    margin-top: 3px
  }
  .p-list_case li a {
    display: flex;
    text-decoration: none;
    background: #f5f5f5;
    border: 1px solid #f2f2f2
  }
  .p-list_case li .c-thumb {
    width: 40%;
    padding-top: 25%;
    overflow: hidden
  }
  .p-list_case .c-thumb img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    border-radius: 2px;
    display: block;
    object-fit: cover
  }
  .p-list_case .c-title {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 60%;
    height: initial;
    line-height: 1.5;
    top: 0;
    transition: .2s all ease;
    background: none;
    position: initial;
    padding: 0;
    color: initial;
    font-size: 1.4rem
  }
  .p-list_case .c-title .-label {
    font-size: 1.1rem;
    padding: 2px 10px;
    margin: 0 0 3px;
    color: #fff
  }
}
.p-list_case.-lower li {
  width: calc(100% / 6);
  margin: 0;
  border-radius: 0;
  background: #f5f5f5
}
.p-list_case.-lower:hover a {
  opacity: 1
}
.p-list_case.-lower a.-textonly {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  background: #f5f5f5
}
.p-list_case.-lower a.-textonly:hover {
  text-decoration: none;
  box-shadow: 0 0 0
}
.p-list_case.-lower .c-title {
  opacity: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  line-height: 1.5;
  top: 0;
  transition: .2s all ease
}
.p-list_case.-lower a:hover .c-title {
  opacity: 1;
  background: rgba(0, 0, 0, .5)
}
.p-list_case.-lower .c-thumb::after {
  display: none
}
@media only screen and (max-width:600px) {
  .p-list_case.-lower li {
    width: calc(100% / 2);
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff
  }
  .p-list_case.-lower:hover a {
    opacity: 1;
    background: inherit
  }
  .p-list_case.-lower a.-textonly {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    background: #f5f5f5
  }
  .p-list_case.-lower a.-textonly:hover {
    text-decoration: none;
    box-shadow: 0 0 0
  }
  .p-list_case.-lower .c-title {
    opacity: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    line-height: 1.5;
    top: 0;
    font-size: 1.3rem;
    padding-top: 5px
  }
  .p-list_case.-lower a:hover .c-title {
    background: inherit
  }
  .p-list_case.-lower .c-thumb::after {
    display: none
  }
}
.l-mv_contents .col-img {
  overflow: hidden;
  position: relative;
  min-height: 200px
}
.l-mv_contents .col-img::before {
  content: '';
  display: block;
  padding-top: 38.5%
}
.l-mv_contents .c-img {
  margin-top: 20px
}
.l-mv_contents .c-img img {
  display: block;
  width: 90%;
  max-width: 720px;
  height: auto;
  margin: 0 auto
}
@media only screen and (max-width:750px) {
  .l-mv_contents .col-img::before {
    padding-top: 30%
  }
  .l-mv_contents .c-img img {
    width: 100%
  }
}
.l-mv_contents .col-img img {
  height: 100%;
  width: auto;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  position: absolute
}
.l-mv_contents .col-text {
  padding: 40px 12% 10px
}
.l-mv_contents .col-text .c-read {
  font-size: 1.6rem
}
.l-mv_contents .col-text .c-read + .c-read {
  margin-top: 20px
}
@media only screen and (max-width:750px) {
  .l-mv_contents h1.col-img {
    width: 111.2%;
    position: relative;
    left: -5.6%
  }
  .l-mv_contents .col-text {
    padding: 30px 0 10px
  }
  .l-mv_contents .col-text .c-read {
    font-size: 1.4rem;
    margin-top: 0;
    text-align: left
  }
  .l-mv_contents .col-text .c-read br {
    display: none
  }
}
.sec-detail_pride {
  padding: 50px 50px 60px;
  border-radius: 20px;
  background: #ddedee;
  text-align: center
}
.sec-detail_pride .c-img {
  margin-bottom: 30px
}
.sec-detail_pride .c-img img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto
}
.sec-detail_pride h3 {
  font-size: 2.4rem;
  text-align: center;
  color: #008086
}
.sec-detail_pride ul {
  font-size: 1.5rem;
  margin-top: 30px;
  display: inline-block;
  text-align: left
}
.sec-detail_pride ul li {
  line-height: 1.1
}
.sec-detail_pride ul li b {
  color: #008086
}
.sec-detail_pride ul * + li {
  margin-top: 1em
}
@media only screen and (max-width:750px) {
  .sec-detail_pride {
    padding: 40px 10%;
    border-radius: 10px;
    margin: 40px 0
  }
  .sec-detail_pride .c-img {
    margin-bottom: 20px
  }
  .sec-detail_pride .c-img img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto
  }
  .sec-detail_pride h3 {
    font-size: 2rem
  }
  .sec-detail_pride ul {
    font-size: 1.4rem;
    margin-top: 20px
  }
  .sec-detail_pride ul li {
    line-height: 1.4
  }
}
.sec-staff_mind {
  padding: 20px 0 80px
}
.sec-staff_mind:last-of-type {
  margin-bottom: 40px
}
.p-staff_mind {
  justify-content: space-between;
  align-items: flex-start
}
.p-staff_mind.-reverse {
  flex-direction: row-reverse
}
.p-staff_mind > .row-img {
  width: 35%;
  border: none;
  position: sticky;
  top: 25px
}
.p-staff_mind > .row-img .c-img {
  padding-top: 70%;
  overflow: hidden;
  position: relative;
  border: 2px solid #003b87
}
.cap-staff_mind {
  font-size: 1.3rem;
  padding: 10px 20px;
  background: #003b87;
  color: #fff;
  bottom: 0;
  line-height: 1;
  position: absolute
}
.p-staff_mind.-reverse .cap-staff_mind {
  right: 0
}
.p-staff_mind > .row-img .c-img img {
  position: absolute;
  width: auto;
  height: 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%)
}
.p-staff_mind > .row-text {
  width: 60%;
  font-size: 1.5rem;
  line-height: 1.8
}
@media only screen and (max-width:600px) {
  .sec-staff_mind {
    padding: 20px 0 50px
  }
  .sec-staff_mind:last-of-type {
    margin-bottom: 20px
  }
  .p-staff_mind, .p-staff_mind.-reverse {
    flex-direction: column
  }
  .p-staff_mind > .row-img {
    width: 100%;
    border: none;
    position: initial;
    top: 0;
    margin-bottom: 30px
  }
  .p-staff_mind > .row-img .c-img {
    padding-top: 50%;
    overflow: hidden;
    border: 2px solid #003b87
  }
  .p-staff_mind > .row-img .c-img img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 0;
    left: 0;
    transform: translateX(0)
  }
  .cap-staff_mind {
    font-size: 1.3rem;
    padding: 8px 15px;
    right: 0
  }
  .p-staff_mind > .row-text {
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.8
  }
}
.hl-staff_mind {
  font-size: 3rem;
  color: #003b87;
  overflow: hidden;
  line-height: 1;
  margin-bottom: 50px
}
.hl-staff_mind b {
  position: relative;
  padding-right: 20px;
  display: inline-block
}
.hl-staff_mind b::after {
  content: '';
  display: block;
  width: 400%;
  height: 2px;
  background: #ced6e8;
  top: calc(50% - 1px);
  left: calc(100% + 20px);
  position: absolute
}
@media only screen and (max-width:600px) {
  .hl-staff_mind {
    font-size: 2rem;
    margin-bottom: 30px
  }
}
.p-staff_mind > .row-text h3 {
  font-size: 2rem;
  color: #003b87;
  border-left: 4px solid #ced6e8;
  padding-left: 20px;
  margin-bottom: 15px;
  line-height: 1
}
.p-staff_mind > .row-text p {
  padding-left: 24px
}
.p-staff_mind > .row-text * + p {
  margin-top: 20px
}
.p-staff_mind > .row-text * + h3 {
  margin-top: 40px
}
@media only screen and (max-width:600px) {
  .p-staff_mind > .row-text h3 {
    font-size: 1.7rem;
    border-left: 3px solid #ced6e8;
    padding-left: 15px;
    margin-bottom: 15px;
    line-height: 1
  }
  .p-staff_mind > .row-text p {
    padding-left: 18px
  }
  .p-staff_mind > .row-text * + p {
    margin-top: 20px
  }
  .p-staff_mind > .row-text * + h3 {
    margin-top: 40px
  }
}
.l-mv_contents.-pride {
  display: flex;
  padding-bottom: 60px;
  position: relative;
  z-index: 5;
  margin-bottom: 60px
}
.l-mv_contents.-pride::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: -15vw;
  z-index: -1;
  width: calc(100vw - 18px);
  height: calc(50% + 20px);
  background: #f7f8fa
}
@media only screen and (max-width:1300px) {
  .l-mv_contents.-pride::after {
    width: calc(100vw - (18px + 1.9%))
  }
}
@media only screen and (max-width:1120px) {
  .l-mv_contents.-pride::after {
    left: -5%;
    width: calc(100vw - 21px)
  }
}
@media only screen and (max-width:600px) {
  .l-mv_contents.-pride {
    flex-direction: column;
    padding-bottom: 20px;
    margin-bottom: 40px
  }
}
.l-mv_contents.-pride .row-img {
  border: none;
  width: 60%;
  padding-top: 440px;
  overflow: hidden;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, .1);
  position: relative
}
.l-mv_contents.-pride .row-img img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: 50% 0;
  position: absolute;
  left: 0;
  top: 0
}
.l-mv_contents.-pride .row-text {
  width: 40%;
  padding: 60px 0 0 5%;
  position: relative
}
@media only screen and (max-width:1120px) {
  .l-mv_contents.-pride .row-text {
    padding: 40px 0 0 5%
  }
}
@media only screen and (max-width:600px) {
  .l-mv_contents.-pride .row-img {
    width: 100%;
    padding-top: 300px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, .1)
  }
  .l-mv_contents.-pride .row-text {
    width: 100%;
    padding: 25px 5% 20px
  }
}
.l-mv_contents.-pride .row-text h2 {
  font-size: 3.5rem;
  letter-spacing: .05em
}
.l-mv_contents.-pride .row-text h2 > span {
  font-size: 1.6rem;
  margin-right: 5px;
  letter-spacing: 0
}
.l-mv_contents.-pride .row-text h2 .-label {
  font-size: 2rem;
  background: #003b87;
  padding: 4px 15px 5px;
  color: #fff;
  margin-bottom: 10px;
  display: inline-block;
  letter-spacing: 0
}
.l-mv_contents.-pride .row-text .c-box_read {
  position: absolute;
  bottom: 0
}
.l-mv_contents.-pride .row-text .c-box_read ul {
  margin-top: 20px;
  font-size: 1.4rem
}
@media only screen and (max-width:600px) {
  .l-mv_contents.-pride .row-text h2 {
    font-size: 2rem;
    line-height: 1.2;
    margin-bottom: 20px
  }
  .l-mv_contents.-pride .row-text h2 > span {
    font-size: 1.3rem
  }
  .l-mv_contents.-pride .row-text h2 .-label {
    font-size: 1.2rem;
    background: #003b87;
    padding: 3px 10px;
    color: #fff
  }
  .l-mv_contents.-pride .row-text .c-box_read {
    position: initial
  }
  .l-mv_contents.-pride .row-text .c-box_read ul {
    font-size: 1.3rem
  }
}
.p-box_recomend {
  padding: 40px 10%;
  background: #faf5cc;
  margin: 40px auto 80px;
  border-radius: 5px
}
.p-box_recomend .p-flex_case {
  display: flex;
  flex-direction: row-reverse;
  text-decoration: none;
  border-radius: 3px;
  overflow: hidden;
  box-shadow: 1px 1px 5px rgba(0, 0, 0, .15);
  border: 2px solid #003b87;
  transition: .2s all ease
}
.p-box_recomend .p-flex_case:hover {
  box-shadow: 0 5px 15px rgba(0, 0, 0, .15);
  background: #f5f5f5
}
@media only screen and (max-width:600px) {
  .p-box_recomend {
    padding: 30px 10%;
    margin: 10px auto 50px
  }
  .p-box_recomend .p-flex_case {
    border-radius: 3px;
    flex-direction: column;
    box-shadow: 2px 2px 2px rgba(0, 0, 0, .15)
  }
}
.p-box_recomend .p-flex_case .c-row_thumb {
  width: 33%;
  min-height: 200px
}
.p-box_recomend .p-flex_case .c-row_thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover
}
.p-box_recomend .p-flex_case .c-row_thumb .-label {
  font-size: 1.5rem;
  padding: 5px 15px;
  background: #003b87;
  color: #fff;
  margin-right: 15px;
  display: inline-block;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 10
}
.p-box_recomend .p-flex_case .c-row_text {
  width: 67%;
  display: flex;
  background: #fff;
  padding: 50px 40px 20px;
  align-items: center;
  position: relative
}
.p-box_recomend .p-flex_case .c-row_text > .-label {
  font-size: 1.6rem;
  font-weight: 700;
  position: absolute;
  left: 0;
  top: 0;
  background: #2e3b4c;
  color: #fff;
  padding: 10px 16px
}
.p-box_recomend .p-flex_case .c-row_text .-copy {
  font-size: 2.2rem;
  font-weight: 700
}
.p-box_recomend .p-flex_case .c-row_text .-title {
  font-size: 1.6rem;
  margin-top: 15px
}
.p-box_recomend .p-flex_case .c-row_text .-title .-label {
  font-size: 1.3rem;
  padding: 2px 10px;
  background: #003b87;
  color: #fff;
  margin-right: 15px;
  display: inline-block
}
.p-box_recomend .p-flex_case .c-row_text .p-list_hash {
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
  font-size: 1.1rem
}
.p-box_recomend .p-flex_case .c-row_text .p-list_hash li {
  margin: 0 2px 2px 0;
  padding: 5px 10px;
  background: #f5f5f5;
  border-radius: 20px
}
.p-box_recomend .p-flex_case .c-row_text .p-list_hash li:before {
  content: '#';
  font-size: 1.4rem;
  color: #3f80d4
}
@media only screen and (max-width:600px) {
  .p-box_recomend .p-flex_case .c-row_text > .-label {
    font-size: 1.4rem;
    font-weight: 700;
    position: absolute;
    left: 50%;
    top: -12px;
    transform: translateX(-50%);
    white-space: nowrap;
    background: #2e3b4c;
    color: #fff;
    padding: 5px 15px
  }
  .p-box_recomend .p-flex_case .c-row_thumb {
    width: 100%;
    min-height: 150px;
    position: relative
  }
  .p-box_recomend .p-flex_case .c-row_thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover
  }
  .p-box_recomend .p-flex_case .c-row_thumb .-label {
    font-size: 1.3rem;
    padding: 8px 15px;
    bottom: 2px
  }
  .p-box_recomend .p-flex_case .c-row_text {
    width: 100%;
    padding: 30px 20px 20px
  }
  .p-box_recomend .p-flex_case .c-row_text .-copy {
    font-size: 1.6rem
  }
  .p-box_recomend .p-flex_case .c-row_text .-title {
    font-size: 1.5rem;
    margin-top: 10px;
    text-align: center
  }
  .p-box_recomend .p-flex_case .c-row_text .-title .-label {
    font-size: 1.3rem;
    padding: 2px 10px;
    display: block;
    margin: 0 0 10px
  }
  .p-box_recomend .p-flex_case .c-row_text .p-list_hash {
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px;
    font-size: 1rem
  }
  .p-box_recomend .p-flex_case .c-row_text .p-list_hash li {
    margin: 0 2px 2px 0;
    padding: 3px 8px;
    background: #f5f5f5;
    border-radius: 20px
  }
  .p-box_recomend .p-flex_case .c-row_text .p-list_hash li:before {
    content: '#';
    font-size: 1.3rem;
    color: #3f80d4
  }
}
.hl-earthquake {
  background: #2e3b4c;
  color: #fff;
  display: flex;
  font-size: 2.4rem;
  align-items: center;
  justify-content: center
}
.hl-earthquake .c-img {
  height: 90px;
  width: auto
}
.hl-earthquake .c-img img {
  height: 100%;
  width: auto
}
.hl-earthquake .c-text {
  padding-left: 20px;
  line-height: 1.2
}
.hl-earthquake b {
  display: block;
  color: #ff0
}
@media only screen and (max-width:750px) {
  .hl-earthquake {
    background: #2e3b4c;
    color: #fff;
    display: flex;
    font-size: 1.7rem;
    align-items: center;
    justify-content: center;
    padding: 5px 10px
  }
  .hl-earthquake .c-img {
    height: 45px;
    width: auto
  }
  .hl-earthquake .c-img img {
    height: 100%;
    width: auto
  }
  .hl-earthquake .c-text {
    padding-left: 10px;
    line-height: 1.2
  }
  .hl-earthquake b {
    display: block;
    color: #ff0
  }
}
.p-eq_strong {
  display: flex;
  justify-content: space-between
}
.p-eq_strong .row-img {
  width: 30%;
  border: none
}
.p-eq_strong .row-img .c-img {
  margin-bottom: 20px
}
.p-eq_strong .row-img .c-img img {
  width: 100%;
  height: auto
}
.p-eq_strong .row-img .c-text {
  font-size: 1.4rem;
  line-height: 1.7
}
.p-eq_strong .row-contents {
  width: 65%
}
.c-eq_strong-item {
  display: flex;
  align-items: center;
  background: #f5f5f5;
  padding: 25px
}
* + .c-eq_strong-item {
  margin-top: 5px
}
.c-eq_strong-item .row-img {
  width: 150px
}
.c-eq_strong-item .row-img img {
  width: 100%;
  height: auto;
  display: block
}
.c-eq_strong-item .row-text {
  width: calc(100% - 150px);
  padding-left: 4%
}
.c-eq_strong-item .c-hl {
  font-size: 1.8rem;
  display: flex;
  align-items: center;
  font-weight: 700;
  margin-bottom: 10px
}
.c-eq_strong-item .c-hl b {
  display: inline-block;
  background: #fff000;
  width: 29px;
  padding: 5px 0;
  text-align: center;
  margin-right: 8px
}
.c-eq_strong-item .c-text {
  font-size: 1.4rem;
  line-height: 1.5
}
.tbl-eq_strong {
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #2e3b4c;
  border-left: 1px solid #2e3b4c;
  background: #fff
}
.tbl-eq_strong th {
  width: 25%;
  font-size: 1.8rem;
  padding: 15px
}
.tbl-eq_strong td {
  padding: 15px;
  width: 50%;
  border-right: 1px solid #2e3b4c;
  border-bottom: 1px solid #2e3b4c;
  font-size: 1.3rem
}
.tbl-eq_strong td dl {
  display: flex;
  align-items: center
}
.tbl-eq_strong td dt {
  font-size: 3rem;
  line-height: 1;
  font-weight: 700;
  color: #777
}
.tbl-eq_strong td dd {
  padding-left: 20px
}
.tbl-eq_strong td dd, .tbl-eq_strong td p {
  line-height: 1.4;
  font-size: 1.5rem
}
.tbl-eq_strong td dt span {
  font-size: 1.4rem;
  display: block;
  text-align: center
}
.tbl-eq_strong td dt span.-small {
  font-size: 1.2rem;
  display: inline
}
.tbl-eq_strong .c-itemname {
  background: #2e3b4c;
  color: #fff;
  position: initial;
  border-right: 1px solid #2e3b4c;
  border-bottom: 1px solid #fff
}
.tbl-eq_strong .c-itemname span {
  display: block;
  font-size: 1.2rem;
  font-weight: 400;
  text-align: left;
  margin-top: 15px;
  line-height: 1.4
}
.tbl-eq_strong .c-name_sub {
  font-weight: 700;
  border-right: 1px solid #2e3b4c;
  border-bottom: 1px solid #2e3b4c
}
@media only screen and (max-width:750px) {
  .p-eq_strong {
    flex-direction: column
  }
  .p-eq_strong .row-img {
    width: 100%
  }
  .p-eq_strong .row-img .c-img {
    margin-bottom: 10px
  }
  .p-eq_strong .row-img .c-img img {
    width: 100%;
    height: auto
  }
  .p-eq_strong .row-img .c-text {
    font-size: 1.3rem;
    line-height: 1.7
  }
  .p-eq_strong .row-contents {
    width: 100%;
    margin-top: 30px
  }
  .c-eq_strong-item {
    align-items: center;
    background: #f5f5f5;
    padding: 0
  }
  * + .c-eq_strong-item {
    margin-top: 10px
  }
  .c-eq_strong-item .row-img {
    display: table-cell;
    width: 120px;
    object-fit: cover;
    overflow: hidden
  }
  .c-eq_strong-item .row-img img {
    width: auto;
    height: 100%;
    min-width: 120px
  }
  .c-eq_strong-item .row-text {
    display: table-cell;
    width: calc(100% - 120px);
    padding: 10px 10px 10px 15px
  }
  .c-eq_strong-item .c-hl {
    font-size: 1.5rem;
    display: flex;
    align-items: center;
    font-weight: 700;
    margin-bottom: 10px
  }
  .c-eq_strong-item .c-hl b {
    display: inline-block;
    background: #fff000;
    width: 24px;
    padding: 5px 0;
    text-align: center;
    margin-right: 8px
  }
  .c-eq_strong-item .c-text {
    font-size: 1.2rem;
    line-height: 1.3
  }
  .tbl-eq_strong {
    width: 650px
  }
  .tbl-eq_strong th {
    width: 25%;
    font-size: 1.6rem;
    padding: 10px
  }
  .tbl-eq_strong td {
    padding: 10px;
    width: 50%;
    border-right: 1px solid #2e3b4c;
    border-bottom: 1px solid #2e3b4c;
    font-size: 1.3rem
  }
  .tbl-eq_strong td dl {
    display: flex;
    align-items: center
  }
  .tbl-eq_strong td dt {
    font-size: 3rem;
    line-height: 1;
    font-weight: 700;
    color: #777
  }
  .tbl-eq_strong td dd {
    padding-left: 20px
  }
  .tbl-eq_strong td dd, .tbl-eq_strong td p {
    font-size: 1.3rem;
    line-height: 1.4
  }
  .tbl-eq_strong td dt span {
    font-size: 1.4rem;
    display: block;
    text-align: center
  }
  .tbl-eq_strong td dt span.-small {
    font-size: 1.2rem;
    display: inline
  }
  .tbl-eq_strong .c-itemname {
    background: #2e3b4c;
    color: #fff;
    position: initial;
    border-right: 1px solid #2e3b4c;
    border-bottom: 1px solid #fff
  }
  .tbl-eq_strong .c-itemname span {
    display: block;
    font-size: 1.2rem;
    font-weight: 400;
    text-align: left;
    margin-top: 15px;
    line-height: 1.4
  }
  .tbl-eq_strong .c-name_sub {
    font-weight: 700;
    border-right: 1px solid #2e3b4c;
    border-bottom: 1px solid #2e3b4c
  }
}
.p-box_rough-indication {
  display: flex;
  justify-content: space-between;
  background: #f5f5f5;
  padding: 25px 30px;
  margin-top: 40px;
  align-items: center;
  border: 1px solid #ddd;
  border-radius: 5px
}
.p-box_rough-indication .row-hl {
  width: 200px
}
.p-box_rough-indication .row-hl h3 {
  font-size: 2rem;
  padding-left: 15px;
  line-height: 1
}
.p-box_rough-indication .row-contents {
  width: calc(100% - 200px);
  border-left: 2px solid #fff;
  padding-left: 40px
}
.c-rough-indication_item {
  display: flex;
  align-items: center
}
.c-rough-indication_item .c-img {
  width: 150px
}
.c-rough-indication_item .c-img img {
  width: 100%;
  height: auto
}
* + .c-rough-indication_item {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 2px solid #fff
}
.c-rough-indication_item dl {
  width: calc(100% - 150px);
  padding-left: 30px
}
.c-rough-indication_item .c-hl {
  font-weight: 700;
  display: flex;
  align-items: center;
  line-height: 1
}
.c-rough-indication_item .c-hl strong {
  background: #333;
  color: #fff;
  padding: 8px 15px;
  font-size: 2rem
}
.c-rough-indication_item .c-hl .-label {
  font-size: 1.8rem;
  background: #fff000;
  padding: 10px 15px;
  margin-left: 4px
}
.c-rough-indication_item .c-text {
  font-size: 1.4rem;
  margin-top: 5px;
  line-height: 1.4
}
@media only screen and (max-width:750px) {
  .p-box_rough-indication {
    display: flex;
    flex-direction: column;
    background: #f5f5f5;
    padding: 25px 20px;
    margin-top: 30px;
    border: 1px solid #ddd;
    border-radius: 5px
  }
  .p-box_rough-indication .row-hl {
    width: 100%;
    text-align: center
  }
  .p-box_rough-indication .row-hl h3 {
    font-size: 2rem;
    padding-left: 15px;
    line-height: 1
  }
  .p-box_rough-indication .row-contents {
    width: 100%;
    border-left: none;
    border-top: 2px solid #fff;
    padding: 15px 0 0;
    margin-top: 20px
  }
  .c-rough-indication_item {
    display: flex;
    align-items: center
  }
  .c-rough-indication_item .c-img {
    width: 90px
  }
  .c-rough-indication_item .c-img img {
    width: 100%;
    height: auto
  }
  .c-rough-indication_item dl {
    width: calc(100% - 90px);
    padding-left: 20px
  }
  .c-rough-indication_item .c-hl {
    font-weight: 700;
    display: flex;
    align-items: center;
    line-height: 1
  }
  .c-rough-indication_item .c-hl strong {
    padding: 4px 10px;
    font-size: 1.5rem
  }
  .c-rough-indication_item .c-hl .-label {
    font-size: 1.5rem;
    margin-left: 4px;
    padding: 4px 10px
  }
  .c-rough-indication_item .c-text {
    font-size: 1.3rem;
    line-height: 1.4
  }
}
.sec-annotation .c-inner {
  width: 80%;
  margin: 0 auto
}
.sec-annotation .c-img img {
  display: block;
  width: 90%;
  margin: 0 auto
}
@media only screen and (max-width:750px) {
  .sec-annotation .c-inner {
    width: 100%;
    margin: 0 auto
  }
}
.p-list_annotation {
  font-size: 1.3rem
}
* + .p-list_annotation {
  margin-top: 20px
}
.p-list_annotation li {
  text-indent: -1.3em;
  padding-left: 1.3em;
  line-height: 1.2
}
.p-list_annotation * + li {
  margin-top: .7em
}
@media only screen and (max-width:750px) {
  .p-list_annotation {
    font-size: 1.2rem
  }
  .p-list_annotation li {
    text-indent: -1.3em;
    padding-left: 1.3em;
    line-height: 1.4
  }
  .p-list_annotation * + li {
    margin-top: .7em
  }
}
.hl-eq_large {
  text-align: center;
  margin-bottom: 4rem
}
.hl-eq_large > span {
  font-size: 2rem;
  color: #ff0;
  background: #2e3b4c;
  padding: 8px 20px;
  line-height: 1;
  display: inline-block
}
.hl-eq_large strong {
  display: block;
  margin-top: 10px;
  font-size: 3.5rem;
  letter-spacing: .05em;
  margin-left: -.05em
}
.hl-eq_large strong span {
  border-bottom: double 5px #2e3b4c
}
@media only screen and (max-width:750px) {
  .hl-eq_large {
    text-align: center;
    margin-bottom: 3rem
  }
  .hl-eq_large > span {
    font-size: 1.5rem;
    color: #ff0;
    background: #2e3b4c;
    padding: 5px 20px;
    line-height: 1;
    display: inline-block
  }
  .hl-eq_large strong {
    display: block;
    margin-top: 10px;
    font-size: 2.2rem
  }
  .hl-eq_large strong span {
    border-bottom: double 3px #2e3b4c
  }
}
.p-box_structure {
  display: flex;
  align-items: center;
  width: 65%;
  margin: 0 auto 40px
}
.p-box_structure .row-img {
  border: none
}
.p-box_structure .row-text {
  font-size: 1.5rem;
  line-height: 1.8;
  padding-left: 5%
}
@media only screen and (max-width:750px) {
  .p-box_structure {
    flex-direction: column;
    width: 100%;
    margin: 0 auto 30px
  }
  .p-box_structure .row-img img {
    display: block;
    margin: 0 auto 20px
  }
  .p-box_structure .row-text {
    font-size: 1.3rem;
    line-height: 1.5;
    padding: 0
  }
}
.p-box_youtube {
  max-width: 720px;
  margin: 0 auto;
  position: relative;
  background: #000
}
.p-box_youtube:before {
  content: "";
  display: block;
  padding-top: 56.25%
}
.p-box_youtube iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0
}
.p-eq_strong-detail .c-inner {
  padding: 40px 25px 60px;
  border: 1px solid #2e3b4c
}
.p-eq_strong-detail .-sticky {
  position: sticky;
  top: 0
}
@media only screen and (max-width:750px) {
  .p-eq_strong-detail .c-inner {
    padding: 30px 20px 40px;
    border: 1px solid #2e3b4c
  }
}
.hl-ground_large {
  background: #000;
  color: #fff;
  display: table;
  width: 100%;
  vertical-align: middle;
  overflow: hidden
}
.hl-ground_large span {
  background: #ff0;
  color: #000;
  font-size: 2rem;
  padding: 20px;
  display: table-cell;
  width: 140px;
  vertical-align: middle;
  position: relative
}
.hl-ground_large span::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 67px 15px 0 0;
  border-color: #ff0 transparent transparent transparent;
  position: absolute;
  right: -15px;
  top: 0
}
.hl-ground_large strong {
  font-size: 2.8rem;
  padding: 20px 30px;
  font-style: italic;
  display: table-cell;
  vertical-align: middle
}
.hl-ground_large.-img01 {
  background: #000 url(../../pride/img/pride_07/thumb_ground_large01.jpg) 100% 100% no-repeat;
  background-size: auto 120px
}
.hl-ground_large.-img02 {
  background: #000 url(../../pride/img/pride_07/thumb_ground_large02.jpg) 100% 50% no-repeat;
  background-size: auto 120px
}
.hl-ground_large.-img03 {
  background: #000 url(../../pride/img/pride_07/thumb_ground_large03.jpg) 99% 90% no-repeat;
  background-size: auto 120px
}
@media only screen and (max-width:750px) {
  .hl-ground_large span {
    font-size: 1.5rem;
    padding: 15px 10px 15px 20px;
    width: 70px;
    position: relative
  }
  .hl-ground_large span::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 72px 15px 0 0;
    border-color: #ff0 transparent transparent transparent;
    position: absolute;
    right: -15px;
    top: 0
  }
  .hl-ground_large strong {
    font-size: 1.8rem;
    padding: 15px 15px 15px 30px
  }
  .hl-ground_large.-img01, .hl-ground_large.-img02, .hl-ground_large.-img03 {
    background: #000
  }
}
.p-copy_ground {
  font-size: 2.5rem;
  margin: 40px auto 30px;
  width: 80%;
  padding: 30px;
  position: relative;
  line-height: 1.7;
  color: #000
}
.p-copy_ground + p {
  font-size: 1.6rem;
  margin: 30px auto 40px;
  width: 80%;
  position: relative;
  line-height: 1.7
}
.p-copy_ground::before {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-top: 1px solid #333;
  border-left: 1px solid #333;
  position: absolute;
  top: 0;
  left: 0
}
.p-copy_ground::after {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  position: absolute;
  top: 0;
  right: 0
}
.p-copy_ground span::before {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-bottom: 1px solid #333;
  border-left: 1px solid #333;
  position: absolute;
  bottom: 0;
  left: 0
}
.p-copy_ground span::after {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-bottom: 1px solid #333;
  border-right: 1px solid #333;
  position: absolute;
  bottom: 0;
  right: 0
}
@media only screen and (max-width:750px) {
  .p-copy_ground {
    font-size: 1.5rem;
    margin: 20px auto 20px;
    width: 90%;
    padding: 15px 1.5em;
    line-height: 1.4
  }
  .p-copy_ground + p {
    font-size: 1.4rem;
    margin: 20px auto 30px;
    width: 90%;
    line-height: 1.7
  }
}
.p-box_example {
  padding: 40px 5%;
  background: #f5f5f5;
  border-radius: 5px;
  margin: 30px auto;
  width: 90%
}
.p-box_example h4 {
  font-size: 2rem;
  text-align: center;
  margin-bottom: 15px
}
.p-box_example h4::after {
  content: '';
  display: block;
  width: 30px;
  height: 1px;
  background: #333;
  margin: 15px auto 0
}
.p-box_example .c-text {
  font-size: 1.5rem;
  line-height: 1.7
}
.p-box_example .col-img {
  display: flex;
  justify-content: center;
  margin-top: 20px
}
.p-box_example .col-img li {
  width: 44%;
  margin: 0 2.5%
}
.p-box_example .col-img li figure {
  width: 100%;
  margin: 0
}
.p-box_example .col-img li img {
  display: block;
  width: 100%;
  height: auto
}
.p-box_example .col-img figcaption {
  font-size: 1.3rem;
  line-height: 1.5;
  margin-top: 10px;
  font-weight: 700;
  padding: 0 15px
}
@media only screen and (max-width:750px) {
  .p-box_example {
    padding: 25px 8%;
    background: #f5f5f5;
    border-radius: 5px;
    margin: 0 auto 50px;
    width: 100%
  }
  .p-box_example h4 {
    font-size: 1.6rem;
    text-align: center;
    margin-bottom: 15px
  }
  .p-box_example h4::after {
    content: '';
    display: block;
    width: 30px;
    height: 1px;
    background: #333;
    margin: 15px auto 0
  }
  .p-box_example .c-text {
    font-size: 1.3rem;
    line-height: 1.5
  }
  .p-box_example .col-img {
    display: flex;
    flex-direction: column
  }
  .p-box_example .col-img li {
    width: 100%;
    margin: 15px auto 0
  }
  .p-box_example .col-img li figure {
    width: 100%
  }
  .p-box_example .col-img figcaption {
    width: 100%;
    font-size: 1.2rem;
    line-height: 1.4;
    margin-top: 0;
    font-weight: 700;
    padding: 5px 5px 0
  }
}
.p-flow_check {
  margin: 50px auto;
  width: 90%
}
.p-flow_check .c-check_item {
  display: flex;
  align-items: center;
  margin-bottom: 30px;
  width: 100%;
  padding: 0;
  background: none
}
.p-flow_check .c-check_item.-reverse, .p-flow_check .c-check_item:nth-of-type(2n) {
  flex-direction: row-reverse
}
.p-flow_check .c-check_item .row-img {
  width: 275px;
  border: none
}
.p-flow_check .c-check_item .row-text {
  padding: 0 0 0 50px;
  width: calc(100% - 275px)
}
.p-flow_check .c-check_item.-textonly .row-text {
  padding: 0;
  width: 100%
}
.p-flow_check .c-check_item.-reverse .row-text, .p-flow_check .c-check_item:not(.-textonly):nth-of-type(2n) .row-text {
  padding: 0 50px 0 12px
}
.p-flow_check .c-check_item .row-text h3 {
  font-size: 2.2rem;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid #ccc;
  position: relative;
  z-index: 1
}
.p-flow_check .c-check_item .row-text h3::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 40px 40px 0 0;
  border-color: #ff0 transparent transparent transparent;
  position: absolute;
  left: -12px;
  top: -10px;
  z-index: -1
}
.p-flow_check .c-check_item .row-text p {
  font-size: 1.5rem;
  line-height: 1.7
}
@media only screen and (max-width:750px) {
  .p-flow_check {
    margin: 30px auto 50px;
    width: 90%
  }
  .p-flow_check .c-check_item {
    display: flex;
    flex-direction: column;
    margin-bottom: 40px
  }
  .p-flow_check .c-check_item.-reverse, .p-flow_check .c-check_item:nth-of-type(2n) {
    flex-direction: column
  }
  .p-flow_check .c-check_item .row-img {
    width: 100%;
    margin: 0 auto
  }
  .p-flow_check .c-check_item .row-img img {
    width: 100%;
    height: auto;
    margin: 0 auto
  }
  .p-flow_check .c-check_item .row-text {
    padding: 20px 0 0;
    width: 100%
  }
  .p-flow_check .c-check_item.-textonly .row-text {
    padding: 0;
    width: 100%
  }
  .p-flow_check .c-check_item.-reverse .row-text, .p-flow_check .c-check_item:not(.-textonly):nth-of-type(2n) .row-text {
    padding: 30px 0 0
  }
  .p-flow_check .c-check_item .row-text h3 {
    font-size: 1.7rem;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid #ccc;
    position: relative;
    z-index: 1
  }
  .p-flow_check .c-check_item .row-text p {
    font-size: 1.4rem;
    line-height: 1.5
  }
}
.p-box_confidence {
  margin: 30px auto 60px;
  width: 90%;
  background: #e9e9e9;
  border: 2px solid #e9e9e9;
  border-radius: 5px
}
.p-box_confidence .c-inner {
  padding: 20px 50px;
  display: flex;
  align-items: center;
  border: 3px solid #fff;
  border-radius: 5px
}
.p-box_confidence .row-img {
  border: none
}
.p-box_confidence .row-text {
  border: none;
  padding-left: 50px;
  width: calc(100% - 155px)
}
.p-box_confidence .row-text h3 {
  font-size: 2rem;
  margin-bottom: 20px
}
.p-box_confidence .row-text h3::after {
  content: '';
  display: block;
  width: 1.5em;
  height: 2px;
  background: #333;
  margin-top: 15px
}
.p-box_confidence .row-text p {
  font-size: 1.4rem;
  line-height: 1.7
}
@media only screen and (max-width:750px) {
  .p-box_confidence {
    margin: 0 auto 60px;
    width: 90%;
    background: #e9e9e9;
    border: 2px solid #e9e9e9;
    border-radius: 5px
  }
  .p-box_confidence .c-inner {
    padding: 20px;
    flex-direction: column;
    align-items: center;
    border: 3px solid #fff;
    border-radius: 5px
  }
  .p-box_confidence .row-img {
    border: none
  }
  .p-box_confidence .row-img img {
    width: 40%;
    display: block;
    height: auto;
    margin: 0 auto
  }
  .p-box_confidence .row-text {
    border: none;
    padding: 10px 0 0;
    width: 100%
  }
  .p-box_confidence .row-text h3 {
    font-size: 1.7rem;
    line-height: 1.4;
    margin-bottom: 20px;
    text-align: center
  }
  .p-box_confidence .row-text h3::after {
    content: '';
    display: block;
    width: 1.5em;
    height: 2px;
    background: #333;
    margin: 10px auto 0
  }
  .p-box_confidence .row-text p {
    font-size: 1.3rem
  }
}
.p-flow_check-sub {
  display: flex;
  margin-top: 20px;
  background: #f5f5f5;
  padding: 30px 50px
}
.p-flow_check-sub .c-check_item-sub {
  width: 30%
}
.p-flow_check-sub * + .c-check_item-sub {
  margin-left: 5%
}
.p-flow_check-sub .c-check_item-sub img {
  width: 90%;
  height: auto;
  display: block;
  margin: 0 auto
}
.p-flow_check-sub .c-check_item-sub .c-text {
  margin-top: 15px
}
.p-flow_check-sub .c-check_item-sub .c-text h4 {
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 10px
}
.p-flow_check-sub .c-check_item-sub .c-text p {
  font-size: 1.3rem
}
@media only screen and (max-width:750px) {
  .p-flow_check-sub {
    display: flex;
    flex-direction: column;
    margin-top: 20px;
    background: #f5f5f5;
    padding: 10px
  }
  .p-flow_check-sub .c-check_item-sub {
    width: 100%;
    display: flex
  }
  .p-flow_check-sub * + .c-check_item-sub {
    margin-left: 0;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 2px solid #fff
  }
  .c-check_item-sub .c-img {
    width: 30%
  }
  .p-flow_check-sub .c-check_item-sub img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto
  }
  .p-flow_check-sub .c-check_item-sub .c-text {
    margin: 0 0 0 15px;
    width: calc(100% - 30%)
  }
  .p-flow_check-sub .c-check_item-sub .c-text h4 {
    font-size: 1.4rem;
    text-align: left;
    margin-bottom: 5px
  }
  .p-flow_check-sub .c-check_item-sub .c-text p {
    font-size: 1.2rem;
    line-height: 1.4
  }
}
.p-box_complete {
  background: #000;
  color: #fff;
  padding: 20px;
  position: relative;
  overflow: hidden
}
.p-box_complete::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 200px 200px 0 0;
  border-color: #ff0 transparent transparent transparent;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0
}
.p-box_complete .-label {
  font-size: 2rem;
  font-weight: 700;
  z-index: 2;
  color: #000;
  position: absolute;
  left: 20px;
  top: 20px
}
.p-box_complete h2 {
  font-size: 3.5rem;
  text-align: center;
  margin-bottom: 20px;
  color: #ff0
}
.p-box_complete h2::after {
  content: '';
  display: block;
  width: 30px;
  height: 2px;
  background: #ff0;
  margin: 15px auto 0
}
.p-box_complete p {
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: center
}
@media only screen and (max-width:750px) {
  .p-box_complete {
    background: #000;
    color: #fff;
    padding: 25px;
    position: relative;
    overflow: hidden
  }
  .p-box_complete::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 70px 70px 0 0;
    border-color: #ff0 transparent transparent transparent;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0
  }
  .p-box_complete .-label {
    display: none
  }
  .p-box_complete h2 {
    font-size: 2.2rem;
    text-align: center;
    margin-bottom: 20px;
    color: #ff0
  }
  .p-box_complete p {
    font-size: 1.4rem;
    text-align: left;
    text-align: center
  }
}
.hl-voice_large {
  color: #346ab2;
  border-top: 4px solid #346ab2;
  border-bottom: 1px solid #346ab2;
  padding: 15px 0;
  font-size: 3rem;
  text-align: center;
  margin-bottom: 30px
}
.-partner .hl-voice_large {
  color: #008086;
  border-color: #008086
}
@media only screen and (max-width:750px) {
  .hl-voice_large {
    padding: 15px 0;
    font-size: 2.2rem;
    margin-bottom: 20px
  }
}
.p-list_voice {
  margin: 0 auto
}
.c-voice_item {
  margin-bottom: 40px;
  display: flex;
  border-bottom: 1px solid #ddd
}
.c-voice_item:last-of-type {
  border-bottom: none
}
.c-voice_item .c-title {
  width: 30%;
  border-right: 0
}
.c-voice_item .c-inner {
  width: 70%;
  padding: 15px 0 50px 55px;
  background: #fff
}
.c-voice_item .hl-voice {
  font-size: 2rem;
  line-height: 1.5;
  padding: 30px 0 0 15px;
  position: relative;
  color: #003b87
}
.c-voice_item .hl-voice::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 15px 15px;
  border-color: transparent transparent #ced6e8 transparent;
  position: absolute;
  right: 0;
  bottom: 0
}
.c-voice_item .hl-voice .-num {
  position: absolute;
  top: 10px;
  left: 15px;
  font-size: 2.5rem;
  display: none
}
.c-voice_item .c-inner > div + div {
  margin-top: 30px
}
.c-voice_item .hl-q {
  font-size: 1.8rem;
  line-height: 1.7;
  font-weight: 700;
  margin-bottom: 10px;
  color: #346ab2
}
.c-voice_item .c-answer {
  padding: 10px 0 10px 20px;
  border-left: 1px solid #ced6e8;
  margin-left: 6px
}
.c-voice_item .c-answer p {
  font-size: 1.5rem;
  line-height: 1.8
}
.c-voice_item .c-answer p + p {
  margin-top: 20px
}
.c-voice_item .c-img {
  background: #003b87;
  position: relative
}
.c-voice_item .c-img img {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
  top: 10px;
  left: 10px;
  box-shadow: 2px 5px 10px rgba(0, 0, 0, .1)
}
.-partner .c-voice_item .hl-q {
  color: #008086
}
.-partner .c-voice_item .hl-voice {
  color: #026267
}
.-partner .c-voice_item .hl-voice::after {
  border-color: transparent transparent #98bec0 transparent
}
.-partner .c-voice_item .c-img {
  background: #008086
}
.-partner .c-voice_item .c-answer {
  border-left: 1px solid #98bec0
}
@media only screen and (max-width:750px) {
  .p-list_voice {
    margin: 0 auto
  }
  .c-voice_item {
    margin-bottom: 30px;
    flex-direction: column
  }
  .c-voice_item .c-title {
    width: 100%;
    border-right: 0
  }
  .c-voice_item .c-inner {
    width: 100%;
    padding: 20px 10px
  }
  .c-voice_item .hl-voice {
    font-size: 1.8rem;
    line-height: 1.4;
    padding: 35px 0 0;
    margin: 0 10px 0
  }
  .c-voice_item .hl-voice .-num {
    display: none
  }
  .c-voice_item .c-inner > div + div {
    margin-top: 30px
  }
  .c-voice_item .hl-q {
    font-size: 1.6rem;
    line-height: 1.5;
    margin-bottom: 10px;
    color: #346ab2
  }
  .c-voice_item .c-answer {
    padding: 10px 0 10px 20px;
    border-left: 2px solid #ced6e8;
    margin-left: 6px
  }
  .c-voice_item .c-answer p {
    font-size: 1.4rem;
    line-height: 1.7
  }
  .c-voice_item .c-answer p + p {
    margin-top: 20px
  }
}
.sec-commitment {
  background: #f5f5f5;
  border-radius: 5px;
  padding: 25px 25px 25px 40px;
  margin: 60px auto 40px;
  border: 1px solid #ddd;
  border-bottom: 2px solid #ddd
}
* + .sec-commitment {
  margin: 40px auto
}
.sec-commitment .c-inner {
  display: flex
}
@media only screen and (max-width:750px) {
  .sec-commitment {
    padding: 0;
    margin: 30px auto
  }
  .sec-commitment .c-inner {
    flex-direction: column
  }
}
.sec-commitment .c-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 35%;
  min-width: 325px;
  margin: 0 auto
}
.sec-commitment .c-title h2 {
  color: #119dd4;
  font-size: 2.4rem;
  margin-bottom: 15px;
  position: relative;
  padding-left: 105px;
  line-height: 1.3
}
.sec-commitment .hl-sub {
  margin-top: 20px;
  font-size: 1.6rem;
  line-height: 1.6;
  padding: 15px;
  background: rgba(255, 255, 255, .5);
  border-radius: 3px
}
.sec-commitment .hl-sub span {
  border-bottom: 1px solid #ccc
}
.sec-commitment .row-contents .hl-sub {
  background: none;
  margin: 0 0 20px;
  padding: 0
}
.sec-commitment .c-title h2 span {
  position: absolute;
  left: -10px;
  bottom: -5px
}
.sec-commitment .c-title h2 span img {
  width: 100px;
  height: auto
}
.sec-commitment .c-title p {
  font-size: 1.4rem;
  line-height: 1.5
}
.sec-commitment .c-title .row-img {
  border: none;
  height: 200px;
  margin: 20px auto 0;
  position: relative;
  left: -20px
}
.sec-commitment .c-title .row-img img {
  height: 100%;
  width: auto;
  display: block
}
@media only screen and (max-width:750px) {
  .sec-commitment .c-title {
    width: 100%;
    min-width: initial;
    flex-direction: column;
    padding: 20px 20px 30px
  }
  .sec-commitment .c-title h2 {
    font-size: 1.8rem;
    padding-left: 80px;
    line-height: 1.3
  }
  .sec-commitment .c-title h2 br {
    display: none
  }
  .sec-commitment .hl-sub {
    margin-top: 20px;
    font-size: 1.4rem;
    line-height: 1.5;
    padding: 15px;
    background: rgba(255, 255, 255, .5);
    border-radius: 3px;
    order: 2
  }
  .sec-commitment .hl-sub span {
    border-bottom: 1px solid #ccc
  }
  .sec-commitment .row-contents .hl-sub {
    background: none;
    margin: 0 0 20px;
    padding: 0
  }
  .sec-commitment .c-title h2 span {
    position: absolute;
    left: -10px;
    bottom: -5px
  }
  .sec-commitment .c-title h2 b {
    display: block
  }
  .sec-commitment .c-title h2 span img {
    width: 80px;
    height: auto
  }
  .sec-commitment .c-title p {
    font-size: 1.3rem;
    line-height: 1.4
  }
  .sec-commitment .c-title .row-img {
    width: 100%;
    left: 0;
    height: 150px;
    margin: 0 auto 20px;
    order: 0
  }
  .sec-commitment .c-title .row-text {
    order: 1
  }
  .sec-commitment .c-title .row-img img {
    margin: 0 auto;
    height: 100%;
    width: auto
  }
}
.sec-commitment .row-contents {
  padding: 0 0 0 4.5%;
  width: 65%
}
.sec-commitment .row-contents .p-flex.-row2 {
  align-items: initial
}
.sec-commitment .row-contents .p-flex.-row2 > div {
  width: 49%;
  background: #fff;
  padding: 12px;
  border-radius: 3px;
  border: 1px solid #dde
}
.sec-commitment .row-contents .p-flex.-row2.-gallery > div {
  padding: 0;
  border: 1px solid #119dd4;
  margin-bottom: 10px
}
.sec-commitment .row-contents .p-flex.-row2.-noborder > div {
  padding: 0;
  margin-bottom: 10px;
  border: none;
  background: none;
  width: 48%
}
.sec-commitment .row-contents .p-flex.-row2.-gallery strong {
  background: #119dd4;
  padding: 8px 5px;
  display: block;
  color: #fff;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.2;
  font-weight: 400
}
.sec-commitment .row-contents .p-flex.-row2.-gallery .c-img {
  background: #fff;
  padding: 5%;
  border-radius: 5px
}
.sec-commitment .row-contents .p-flex.-row2.-gallery .c-img span {
  display: block;
  border-radius: 50%;
  width: 100%;
  max-width: 180px;
  height: 100%;
  margin: 0 auto;
  border: 1px solid #dbdbe9
}
.sec-commitment .row-contents .p-flex.-row2.-gallery .c-img span img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 50%
}
.sec-commitment .row-contents .p-flex.-row2 > div:nth-of-type(2n) {
  margin-left: 1%
}
.sec-commitment .row-contents .p-flex.-row2.-noborder > div:nth-of-type(2n) {
  margin-left: 4%
}
.sec-commitment .row-contents .p-flex.-row2 > div .col-img {
  width: 100%
}
.sec-commitment .row-contents .p-flex.-row2 > div .col-img img {
  display: block;
  width: 100%;
  margin: 0 auto
}
.sec-commitment .row-contents .p-flex.-row2 > div .col-img.-contain {
  width: 100%;
  max-height: 180px;
  margin-bottom: 20px
}
.sec-commitment .row-contents .p-flex.-row2 > div .col-img.-contain img {
  height: 100%;
  width: 100%;
  max-height: 160px;
  object-fit: contain
}
.sec-commitment .row-contents .p-flex.-row2 > div .col-text h3 {
  font-size: 1.6rem;
  line-height: 1.4;
  margin-bottom: 20px;
  color: #119dd4;
  padding: 10px 0;
  border-top: 4px solid #119dd4;
  border-bottom: 1px solid #119dd4
}
.sec-commitment .row-contents .p-flex.-row2 > div .col-text p, .sec-commitment .row-contents .p-flex.-row2 > div .col-text li {
  font-size: 1.3rem;
  line-height: 1.4
}
.sec-commitment .row-contents .p-flex.-row2 > div .col-text * + li {
  margin-top: 10px
}
.sec-commitment .row-contents .p-flex.-row2.-noborder > div .col-text {
  padding: 15px 15px 0
}
.sec-commitment .row-contents .p-flex.-row2.-noborder > div .col-text p {
  line-height: 1.7
}
.sec-commitment .row-contents .c-text {
  font-size: 1.4rem;
  line-height: 1.2
}
@media only screen and (max-width:750px) {
  .sec-commitment .row-contents {
    width: 100%;
    padding: 0 20px 20px
  }
  .sec-commitment .row-contents .p-flex.-row2 {
    align-items: initial;
    flex-direction: column
  }
  .sec-commitment .row-contents .p-flex.-row2 > div {
    width: 100%;
    background: #fff;
    padding: 12px 12px 20px;
    border-radius: 3px;
    border: 1px solid #dde
  }
  .sec-commitment .row-contents .p-flex.-row2 > div + div {
    margin-top: 5px
  }
  .sec-commitment .row-contents .p-flex.-row2.-gallery > div {
    padding: 0;
    border: 1px solid #119dd4;
    margin-bottom: 5px
  }
  .sec-commitment .row-contents .p-flex.-row2.-noborder > div {
    padding: 0;
    margin-bottom: 10px;
    border: none;
    background: none;
    width: 100%
  }
  .sec-commitment .row-contents .p-flex.-row2.-gallery strong {
    padding: 5px;
    font-size: 1.3rem
  }
  .sec-commitment .row-contents .p-flex.-row2.-gallery strong br {
    display: none
  }
  .sec-commitment .row-contents .p-flex.-row2.-gallery .c-img {
    background: #fff;
    padding: 5%;
    border-radius: 5px
  }
  .sec-commitment .row-contents .p-flex.-row2.-gallery .c-img span {
    display: block;
    border-radius: 50%;
    width: 100%;
    max-width: 180px;
    height: 100%;
    margin: 0 auto;
    border: 1px solid #dbdbe9
  }
  .sec-commitment .row-contents .p-flex.-row2.-gallery .c-img span img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 50%
  }
  .sec-commitment .row-contents .p-flex.-row2 > div:nth-of-type(2n), .sec-commitment .row-contents .p-flex.-row2.-noborder > div:nth-of-type(2n) {
    margin-left: 0
  }
  .sec-commitment .row-contents .p-flex.-row2 > div .col-img {
    width: 100%
  }
  .sec-commitment .row-contents .p-flex.-row2 > div .col-img img {
    display: block;
    width: 100%;
    margin: 0 auto
  }
  .sec-commitment .row-contents .p-flex.-row2 > div .col-img.-contain {
    width: 100%;
    height: 180px;
    margin-bottom: 20px;
    padding: 10px 0
  }
  .sec-commitment .row-contents .p-flex.-row2 > div .col-img.-contain img {
    width: auto;
    max-height: none;
    height: 100%;
    object-fit: contain
  }
  .sec-commitment .row-contents .p-flex.-row2 > div .col-text h3 {
    font-size: 1.5rem;
    line-height: 1.3;
    margin-bottom: 20px;
    color: #119dd4;
    padding: 10px 0;
    border-top: 3px solid #119dd4;
    border-bottom: 1px solid #119dd4
  }
  .sec-commitment .row-contents .p-flex.-row2 > div .col-text p, .sec-commitment .row-contents .p-flex.-row2 > div .col-text li {
    font-size: 1.3rem;
    line-height: 1.4
  }
  .sec-commitment .row-contents .p-flex.-row2 > div .col-text * + li {
    margin-top: 10px
  }
  .sec-commitment .row-contents .p-flex.-row2.-noborder > div .col-text {
    padding: 10px 0 0
  }
  .sec-commitment .row-contents .p-flex.-row2.-noborder > div .col-text p {
    line-height: 1.5
  }
  .sec-commitment .row-contents .c-text {
    font-size: 1.4rem;
    line-height: 1.2
  }
}
.sec-commitment .c-text.-box {
  font-weight: 700;
  padding: 10px;
  border: 2px dashed #119dd4;
  border-radius: 5px;
  color: #119dd4;
  font-size: 1.8rem;
  line-height: 1.5;
  text-align: center;
  margin: 20px auto 40px
}
@media only screen and (max-width:750px) {
  .sec-commitment .c-text.-box {
    border: 1px dashed #119dd4;
    font-size: 1.4rem;
    text-align: left;
    margin: 0 20px 40px
  }
  .sec-commitment .c-text.-box br {
    display: none
  }
}
.sec-commitment .p-box_other {
  display: flex;
  align-items: center;
  margin: 30px auto 0;
  width: 75%
}
.sec-commitment .p-box_other .row-text {
  width: calc(100% - 180px);
  padding: 0 40px 40px 0
}
.sec-commitment .p-box_other .row-text h3 {
  font-size: 2rem;
  margin-bottom: 20px
}
.sec-commitment .p-box_other .row-text h3 span {
  color: #fff;
  padding: 5px 15px;
  background: #003b87;
  line-height: 1;
  letter-spacing: .1em
}
.sec-commitment .p-box_other .row-text p {
  font-size: 1.5rem;
  line-height: 1.8
}
.sec-commitment .p-box_other .row-img {
  border: none;
  width: 180px
}
.sec-commitment .p-box_other .row-img img {
  width: 100%;
  height: auto;
  display: block
}
@media only screen and (max-width:750px) {
  .sec-commitment .p-box_other {
    display: flex;
    align-items: center;
    margin: 30px auto 0;
    width: 100%
  }
  .sec-commitment .p-box_other .row-text {
    width: 100%;
    padding: 0
  }
  .sec-commitment .p-box_other .row-text h3 {
    font-size: 1.5rem;
    margin-bottom: 0;
    text-align: center
  }
  .sec-commitment .p-box_other .row-text h3 span {
    padding: 5px 10px;
    display: block
  }
  .sec-commitment .p-box_other .row-text p {
    font-size: 1.3rem;
    line-height: 1.5;
    padding: 10px;
    border: 1px solid #003b87;
    border-radius: 0 0 5px 5px
  }
  .sec-commitment .p-box_other .row-img {
    display: none
  }
}
.sec-ranking {
  padding: 0 5%
}
.p-box_rank-intro {
  display: flex;
  margin-bottom: 40px;
  align-items: center
}
.p-box_rank-intro .row-text {
  width: calc(100% - 200px);
  padding-right: 60px
}
.p-box_rank-intro.-center {
  justify-content: center
}
.p-box_rank-intro.-center .row-text {
  width: auto
}
.p-box_rank-intro .row-text h2 {
  font-size: 3rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  letter-spacing: .05em
}
.p-box_rank-intro .row-text h2 span {
  border-bottom: 1px solid #333
}
.p-box_rank-intro .row-text h2 span strong {
  color: red
}
.p-box_rank-intro .row-text p {
  font-size: 1.4rem;
  line-height: 1.7
}
.p-box_rank-intro .row-text p u {
  color: red;
  font-weight: 700
}
.p-box_rank-intro .row-text p + p {
  margin-top: 20px
}
.p-box_rank-intro .row-img {
  width: 200px;
  border: none
}
.p-box_ranking .c-inner {
  display: flex;
  justify-content: space-between
}
.c-ranking_item {
  width: 48%
}
.c-ranking_item .-title {
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 15px;
  color: #007f86
}
.p-list_ranking {
  font-size: 1.5rem;
  font-weight: 700
}
.p-list_ranking li {
  display: flex;
  padding: 8px 30px;
  border-radius: 30px;
  margin-bottom: 10px;
  background: #f1f1f1
}
.p-list_ranking li.-me {
  background: #007f86;
  color: #fff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2)
}
.p-list_ranking li .-num {
  width: 40px
}
.p-list_ranking li .-count {
  margin-left: auto;
  text-align: right;
  letter-spacing: .1em
}
.p-box_ranking .-source {
  font-size: 1.3rem;
  text-align: right;
  margin-top: 10px
}
@media only screen and (max-width:750px) {
  .sec-ranking {
    padding: 0;
    margin-bottom: 0
  }
  .p-box_rank-intro {
    display: flex;
    margin-bottom: 0;
    align-items: center
  }
  .p-box_rank-intro .row-text {
    width: 100%;
    padding-right: 0
  }
  .p-box_rank-intro .row-text h2 {
    font-size: 2.4rem;
    line-height: 1.7;
    margin-bottom: 2rem;
    letter-spacing: .05em;
    text-align: center
  }
  .p-box_rank-intro .row-text p u {
    color: red;
    font-weight: 700
  }
  .p-box_rank-intro .row-text p + p {
    margin-top: 20px
  }
  .p-box_rank-intro .row-img {
    display: none
  }
  .p-box_ranking .c-inner {
    flex-direction: column
  }
  .c-ranking_item {
    width: 90%;
    margin: 20px auto 25px
  }
  .c-ranking_item + .c-ranking_item {
    margin: 25px auto 0
  }
  .c-ranking_item .-title {
    font-size: 1.6rem;
    text-align: center;
    margin-bottom: 15px;
    color: #007f86
  }
  .p-list_ranking {
    font-size: 1.5rem;
    font-weight: 700
  }
  .p-list_ranking li {
    display: flex;
    padding: 8px 30px;
    border-radius: 30px;
    margin-bottom: 10px;
    background: #f1f1f1
  }
  .p-list_ranking li.-me {
    background: #007f86;
    color: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .2)
  }
  .p-list_ranking li .-num {
    width: 40px
  }
  .p-list_ranking li .-count {
    margin-left: auto;
    text-align: right;
    letter-spacing: .1em
  }
  .p-box_ranking .-source {
    font-size: 1.3rem;
    text-align: right;
    margin-top: 10px
  }
}
.w-box_youtube {
  max-width: 720px;
  margin: 40px auto 80px
}
.w-box_youtube h2 {
  text-align: center;
  font-size: 1.7rem;
  margin-bottom: 0;
  background: #222;
  color: #fff;
  padding: 10px
}
.w-box_youtube .c-text {
  margin-top: 15px;
  font-size: 1.4rem;
  line-height: 1.7;
  padding: 0 10px
}
.p-table_grade-technical {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  font-size: 1.6rem;
  margin: 20px auto 40px
}
.p-table_grade-technical th, .p-table_grade-technical td {
  border-bottom: 1px solid #e0e5eb
}
.p-table_grade-technical th {
  padding: 20px 0;
  border-radius: 8px 8px 0 0;
  font-size: 1.7rem
}
.p-table_grade-technical td:nth-of-type(1) {
  padding-right: 30px
}
.p-table_grade-technical td:nth-of-type(1) div {
  display: flex;
  align-items: center
}
.p-table_grade-technical td:nth-of-type(1) .-num {
  font-weight: 700;
  width: 20px;
  text-align: center;
  background: #2e3b4c;
  color: #fff;
  margin-right: 5px;
  border-radius: 1px
}
.p-table_grade-technical td:nth-of-type(1) .-title {
  font-weight: 700;
  white-space: nowrap;
  font-size: 1.7rem
}
.p-table_grade-technical td:nth-of-type(1) .-explanation {
  margin-left: auto;
  font-size: 1.3rem;
  line-height: 1.2;
  padding-left: 2.5em
}
@media only screen and (max-width:1200px) {
  .p-table_grade-technical td:nth-of-type(1) div {
    flex-wrap: wrap
  }
  .p-table_grade-technical td:nth-of-type(1) .-explanation {
    width: 100%;
    padding-left: 0;
    padding-top: 5px
  }
}
.p-table_grade-technical th:nth-of-type(1), .p-table_grade-technical td:nth-of-type(1) {
  background: #f5f5f9
}
.p-table_grade-technical th:nth-of-type(3), .p-table_grade-technical td:nth-of-type(3) {
  background: #f5f5f5;
  text-align: center;
  font-weight: 700;
  width: 25%
}
.p-table_grade-technical th:nth-of-type(2), .p-table_grade-technical td:nth-of-type(2), .p-table_grade-technical th:nth-of-type(4), .p-table_grade-technical td:nth-of-type(4) {
  width: 15px;
  padding: 0
}
.p-table_grade-technical th:nth-of-type(5), .p-table_grade-technical td:nth-of-type(5) {
  background: #e7f2f4;
  width: 340px
}
@media only screen and (max-width:900px) {
  .p-table_grade-technical {
    width: 700px;
    font-size: 1.5rem;
    margin: 10px auto 0
  }
  .p-table_grade-technical th {
    padding: 15px 0;
    font-size: 1.6rem
  }
  .p-table_grade-technical td:nth-of-type(1) {
    padding: 15px 20px;
    width: 180px
  }
  .p-table_grade-technical td:nth-of-type(1) div {
    display: flex;
    align-items: center
  }
  .p-table_grade-technical td:nth-of-type(1) .-num {
    font-weight: 700;
    width: 20px
  }
  .p-table_grade-technical td:nth-of-type(1) .-title {
    font-weight: 700;
    white-space: nowrap;
    font-size: 1.6rem
  }
  .p-table_grade-technical td:nth-of-type(1) .-explanation {
    margin-left: auto;
    font-size: 1.3rem;
    line-height: 1.2
  }
  .p-table_grade-technical th:nth-of-type(3), .p-table_grade-technical td:nth-of-type(3) {
    text-align: center;
    font-weight: 700;
    width: 25%;
    padding: 15px
  }
  .p-table_grade-technical th:nth-of-type(2), .p-table_grade-technical td:nth-of-type(2), .p-table_grade-technical th:nth-of-type(4), .p-table_grade-technical td:nth-of-type(4) {
    width: 8px;
    padding: 0
  }
  .p-table_grade-technical th:nth-of-type(5), .p-table_grade-technical td:nth-of-type(5) {
    background: #e7f2f4;
    width: 200px;
    padding: 15px
  }
}
.sec-grade-technical .hl-middle_content {
  margin: 30px 0 10px;
  color: #0b7e81;
  font-size: 2rem;
  text-align: center
}
.sec-grade-technical .hl-middle_content::before {
  content: '[';
  font-weight: 700;
  font-size: 1.1em;
  margin-right: 5px
}
.sec-grade-technical .hl-middle_content::after {
  content: ']';
  font-weight: 700;
  font-size: 1.1em;
  margin-left: 5px
}
@media only screen and (max-width:900px) {
  .sec-grade-technical .c-inner {
    padding: 0%
  }
}
.sec-grade-technical .c-text {
  font-size: 1.5rem;
  line-height: 1.7
}
.c-box_grade-technical {
  display: flex;
  flex-direction: row-reverse;
  align-items: center
}
.c-box_grade-technical .-label {
  background: #0b7e81;
  color: #fff;
  padding: 4px 20px 4px 35px;
  border-radius: 30px;
  position: relative;
  font-size: 1.4rem;
  font-weight: 700
}
.c-box_grade-technical .-label::before {
  content: '';
  width: 10px;
  height: 5px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  left: 14px;
  top: 10px
}
.c-box_grade-technical ul {
  padding-right: 10px;
  color: #cd3729;
  font-weight: 700;
  width: 100%
}
.hl-excellent_housing {
  font-size: 3rem;
  text-align: center;
  line-height: 1;
  margin-bottom: 30px;
  letter-spacing: .05em;
  color: #007f86
}
.hl-excellent_housing.-demerit {
  color: #2e3b4c
}
.hl-excellent_housing.-demerit strong {
  color: #dc282c
}
.hl-excellent_housing strong {
  display: block;
  overflow: hidden;
  padding-top: 10px
}
.hl-excellent_housing strong span {
  position: relative
}
.hl-excellent_housing strong span::before {
  content: '';
  display: block;
  width: 400%;
  height: 2px;
  background: #36b3b9;
  top: calc(50% - 1px);
  right: calc(100% + 30px);
  position: absolute
}
.hl-excellent_housing strong span::after {
  content: '';
  display: block;
  width: 400%;
  height: 2px;
  background: #36b3b9;
  top: calc(50% - 1px);
  left: calc(100% + 30px);
  position: absolute
}
.hl-excellent_housing.-demerit strong span::before, .hl-excellent_housing.-demerit strong span::after {
  background: #dc282c
}
.hl-excellent_housing > span {
  display: inline-flex;
  font-size: 2rem;
  align-items: center
}
.hl-excellent_housing > span .-merit, .hl-excellent_housing > span .-demerit {
  display: inline-flex;
  align-items: center;
  margin-left: 2px
}
.hl-excellent_housing > span .-merit span {
  font-size: 2rem;
  background: #007f86;
  color: #fff;
  padding: 5px 8px;
  text-align: center
}
.hl-excellent_housing > span .-merit .-num {
  background: #ff0;
  color: #007f86;
  padding: 5px 10px;
  text-align: center
}
.hl-excellent_housing > span .-demerit span {
  font-size: 2rem;
  background: #dc282c;
  color: #fff;
  padding: 5px 8px;
  text-align: center
}
@media only screen and (max-width:750px) {
  .hl-excellent_housing {
    font-size: 2rem;
    line-height: 1.1;
    margin-bottom: 30px;
    letter-spacing: 0em
  }
  .hl-excellent_housing strong {
    display: block;
    overflow: hidden;
    padding: 10px 30px 0
  }
  .hl-excellent_housing strong span {
    position: relative;
    display: inline-block
  }
  .hl-excellent_housing strong span::before {
    width: 200%;
    height: 1px;
    background: #36b3b9;
    top: calc(50% - 1px);
    right: calc(100% + 15px);
    position: absolute
  }
  .hl-excellent_housing strong span::after {
    width: 200%;
    height: 1px;
    background: #36b3b9;
    top: calc(50% - 1px);
    left: calc(100% + 15px);
    position: absolute
  }
  .hl-excellent_housing.-demerit strong span::before, .hl-excellent_housing.-demerit strong span::after {
    background: #dc282c
  }
  .hl-excellent_housing > span {
    font-size: 1.7rem
  }
  .hl-excellent_housing > span .-merit, .hl-excellent_housing > span .-demerit {
    display: inline-flex;
    align-items: center;
    margin-left: 2px
  }
  .hl-excellent_housing > span .-merit span, .hl-excellent_housing > span .-demerit span {
    font-size: 1.7rem
  }
}
.p-flex_between.-excellent_housing {
  margin: 0 auto
}
.p-flex_between.-excellent_housing .row-text p {
  font-size: 1.5rem;
  line-height: 1.8
}
.p-flex_between.-excellent_housing .row-text {
  width: calc(100% - 230px);
  padding-right: 50px
}
.p-flex_between.-excellent_housing .row-img {
  width: 230px;
  border: none
}
@media only screen and (max-width:750px) {
  .p-flex_between.-excellent_housing {
    margin: 0 auto;
    flex-direction: column-reverse
  }
  .p-flex_between.-excellent_housing .row-text p {
    font-size: 1.4rem
  }
  .p-flex_between.-excellent_housing .row-text {
    width: 100%;
    padding-right: 0
  }
  .p-flex_between.-excellent_housing .row-img {
    width: 100%;
    border: none
  }
  .p-flex_between.-excellent_housing .row-img img {
    display: block;
    margin: 0 auto 20px
  }
}
.p-box_demerit {
  margin: 0 auto
}
.p-box_demerit p {
  font-size: 1.5rem;
  line-height: 1.7
}
.p-box_demerit .c-img {
  padding-top: 20px
}
.p-box_demerit .c-img img {
  margin: 0 auto;
  display: block;
  max-width: 100%;
  height: auto
}
.p-box_relief {
  background: #e6f1f5;
  padding: 30px 50px;
  margin-top: 40px;
  text-align: center;
  position: relative;
  border-radius: 5px
}
.p-box_relief::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 15px 0 15px;
  border-color: #008086 transparent transparent transparent;
  position: absolute;
  left: calc(50% - 15px);
  top: -2px
}
.hl-relief {
  font-size: 2.4rem;
  text-align: center;
  margin-bottom: 10px;
  color: #007f85
}
.hl-relief > span {
  display: inline-flex;
  align-items: center
}
.hl-relief .-label {
  padding: 8px 20px;
  background: #007f85;
  border-radius: 30px;
  color: #fff;
  margin-right: 15px;
  font-size: 1.5rem
}
.p-box_relief p {
  font-size: 1.6rem
}
.p-box_relief * + .p-list_annotation {
  margin-top: 10px
}
@media only screen and (max-width:750px) {
  .p-box_demerit p {
    font-size: 1.4rem
  }
  .p-box_demerit .c-img {
    padding-top: 20px
  }
  .p-box_demerit .c-img img {
    margin: 0 auto;
    display: block;
    max-width: 100%;
    height: auto
  }
  .p-box_relief {
    padding: 25px;
    margin-top: 30px
  }
  .hl-relief {
    font-size: 2rem;
    text-align: center;
    margin-bottom: 10px;
    color: #007f85
  }
  .hl-relief > span {
    display: inline-flex;
    align-items: center
  }
  .hl-relief .-label {
    padding: 5px 10px;
    margin-right: 10px;
    font-size: 1.4rem
  }
  .p-box_relief p {
    font-size: 1.4rem
  }
}
.hl-evaluation_large {
  font-size: 2.5rem;
  color: #2667ac;
  text-align: center;
  padding: 15px 0;
  border-top: 4px solid #2667ac;
  border-bottom: 1px solid #acc1dd;
  margin-bottom: 30px
}
.hl-evaluation_middle {
  font-size: 2.2rem;
  display: flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 15px
}
.hl-evaluation_middle .hl-block_sub {
  background: #333;
  color: #fff;
  padding: 5px 10px;
  margin-right: 15px;
  font-size: 1.7rem
}
@media only screen and (max-width:750px) {
  .hl-evaluation_large {
    font-size: 2rem;
    padding: 10px 0;
    border-top: 4px solid #2667ac;
    margin-bottom: 20px
  }
  .hl-evaluation_middle {
    font-size: 1.8rem;
    margin-bottom: 15px
  }
  .hl-evaluation_middle .hl-block_sub {
    background: #333;
    color: #fff;
    padding: 5px 10px;
    margin-right: 15px;
    font-size: 1.3rem
  }
}
.p-box_evaluation {
  margin: 0 auto;
  padding: 40px 0;
  width: 80%
}
.p-box_evaluation .col-img {
  margin-top: 20px;
  text-align: center
}
.p-box_evaluation:not(.-flex) img {
  border: 10px solid #fff;
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block
}
.p-box_evaluation .c-text {
  font-size: 1.4rem;
  line-height: 1.7
}
.p-box_evaluation.-flex {
  display: flex;
  align-items: center;
  border-top: 1px solid #ccc
}
.p-box_evaluation.-flex .row-img {
  border: none
}
.p-box_evaluation.-flex .row-text {
  padding-right: 50px
}
@media only screen and (max-width:750px) {
  .p-box_evaluation {
    padding: 20px;
    width: 100%
  }
  .p-box_evaluation .col-img {
    margin-top: 20px;
    text-align: center
  }
  .p-box_evaluation .col-img {
    margin-top: 20px;
    text-align: center
  }
  .p-box_evaluation:not(.-flex) img {
    border: 10px solid #fff
  }
  .p-box_evaluation .c-text {
    font-size: 1.4rem;
    line-height: 1.7
  }
  .p-box_evaluation.-flex {
    align-items: center;
    border-top: 1px solid #ccc;
    flex-direction: column
  }
  .p-box_evaluation.-flex .row-img {
    border: none;
    width: 100%;
    margin-top: 20px
  }
  .p-box_evaluation.-flex .row-img img {
    display: block;
    margin: 0 auto
  }
  .p-box_evaluation.-flex .row-text {
    width: 100%;
    padding-right: 0
  }
}
.p-box_contents {
  margin: 0 auto
}
.p-box_contents .c-text {
  font-size: 1.4rem;
  line-height: 1.8
}
.p-box_contents.-flex {
  display: flex
}
.p-box_contents.-flex.-reverse {
  flex-direction: row-reverse
}
.p-box_contents.-flex > .row-img {
  border: none
}
.p-box_contents.-flex > .row-img img {
  width: 100%;
  height: 100%;
  object-fit: cover
}
.p-box_contents.-flex > .row-text {
  padding-right: 40px
}
.p-list_evaluation {
  margin: 20px 0
}
.p-list_evaluation li {
  display: flex;
  align-items: center
}
.p-list_evaluation li + li {
  margin-top: 20px
}
.p-list_evaluation .row-img {
  border: none
}
.p-list_evaluation .row-text {
  padding-left: 30px;
  font-size: 1.3rem;
  line-height: 1.5
}
@media only screen and (max-width:750px) {
  .p-list_evaluation li {
    align-items: flex-start
  }
  .p-list_evaluation .row-img {
    width: 25%
  }
  .p-list_evaluation .row-img img {
    width: 100%;
    height: auto
  }
  .p-list_evaluation .row-text {
    width: 75%;
    padding-left: 10px;
    font-size: 1.2rem;
    line-height: 1.4
  }
}
.p-box_reason {
  background: #e1f5f6;
  padding: 30px 50px;
  margin-top: 20px;
  border-radius: 5px
}
.p-box_reason h3 {
  text-align: center;
  font-size: 1.8rem;
  margin-bottom: 20px
}
.p-box_reason p {
  font-size: 1.4rem;
  line-height: 1.8
}
@media only screen and (max-width:750px) {
  .p-box_reason {
    padding: 25px
  }
  .p-box_reason h3 {
    text-align: center;
    font-size: 1.6rem;
    margin-bottom: 20px
  }
  .p-box_reason p {
    font-size: 1.3rem;
    line-height: 1.7
  }
}
.c-costmerit_item {
  position: relative;
  background: #f2f6fb;
  padding: 50px 30px 40px;
  margin-bottom: 10px;
  border-top: 2px solid #2667ac
}
.c-itemname {
  font-size: 1.5rem;
  font-weight: 700;
  padding: 8px 20px;
  line-height: 1;
  color: #fff;
  background: #2667ac;
  position: absolute;
  left: 0;
  top: 0
}
.hl-costmerit {
  font-size: 2.2rem;
  margin-bottom: 20px;
  padding-bottom: 5px;
  border-bottom: 1px solid #425d7f;
  color: #003b87;
  display: flex;
  align-items: center
}
.hl-costmerit span {
  font-size: 1.3rem;
  margin-left: auto;
  font-weight: 400
}
.hl-table_caption {
  font-size: 1.6rem;
  border-left: 4px solid #003b87;
  padding-left: 10px;
  margin-bottom: 20px
}
.c-costmerit_item p {
  font-size: 1.4rem
}
@media only screen and (max-width:750px) {
  .c-itemname {
    font-size: 1.3rem;
    padding: 4px 15px;
    left: 0;
    top: 0
  }
  .c-costmerit_item {
    position: relative;
    background: #f2f6fb;
    padding: 40px 15px 40px;
    margin-bottom: 10px;
    border-top: 2px solid #2667ac
  }
  .hl-costmerit {
    font-size: 1.8rem;
    margin-bottom: 20px;
    flex-direction: column;
    text-align: center
  }
  .hl-costmerit span {
    font-size: 1.2rem;
    margin-top: 5px
  }
  .hl-table_caption {
    font-size: 1.5rem;
    margin: 0 5px 0
  }
  .hl-table_caption + p {
    margin-top: 10px
  }
  .c-costmerit_item p {
    font-size: 1.2rem;
    line-height: 1.3
  }
}
.p-table_cost {
  background: #fff;
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  margin-top: 10px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff
}
.p-table_cost th {
  background: #e0e5eb;
  padding: 10px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #ddd;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.1
}
.p-table_cost td {
  border-right: 1px solid #f5f5f5;
  border-bottom: 1px solid #ddd;
  vertical-align: middle;
  text-align: center;
  font-size: 1.7rem;
  padding: 15px 10px;
  line-height: 1.2
}
.p-table_cost td:first-of-type {
  font-size: 1.5rem
}
.p-table_cost .-bg_emphasis {
  background: #fffce4
}
@media only screen and (max-width:750px) {
  .p-table_cost {
    width: 750px;
    margin-top: 0
  }
  .p-table_cost th {
    background: #e0e5eb;
    padding: 10px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #ddd;
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.1
  }
  .c-costmerit_item:nth-of-type(3) .p-table_cost th {
    width: 220px
  }
  .c-costmerit_item:nth-of-type(3) {
    max-width: 750px;
    margin-top: 0
  }
  .p-table_cost td {
    border-right: 1px solid #f5f5f5;
    border-bottom: 1px solid #ddd;
    vertical-align: middle;
    text-align: center;
    font-size: 1.5rem;
    padding: 15px 10px;
    line-height: 1.2
  }
  .p-table_cost td:first-of-type {
    font-size: 1.5rem
  }
  .p-table_cost .-bg_emphasis {
    background: #fffce4
  }
}
.p-double_acquisition > .row-img {
  width: 35%
}
.p-double_acquisition > .row-text {
  width: 65%
}
@media only screen and (max-width:750px) {
  .p-double_acquisition {
    flex-direction: column !important
  }
  .p-double_acquisition > .row-img {
    width: 100%
  }
  .p-double_acquisition > .row-text {
    width: 100%;
    padding: 15px 0 0 !important
  }
}
.c-costmerit_item .p-list_annotation {
  margin-top: 10px
}
.c-costmerit_item .c-box_result {
  background: #fff;
  font-size: 1.6rem;
  padding: 15px 20px;
  font-weight: 700;
  margin-top: 30px;
  text-align: center;
  color: #003b87;
  border: 1px solid #acc1dd;
  border-radius: 5px
}
.w-evaluation {
  background: #f3f6f9
}
.p-list_merit-evaluation {
  display: flex;
  flex-wrap: wrap
}
.c-merit-evaluation_item {
  width: calc((100% - 12px) / 3);
  margin: 0 6px 6px 0;
  padding: 0 20px 20px;
  background: #f2f6fb;
  border: 1px solid #2667ac;
  border-radius: 2px
}
.c-merit-evaluation_item:nth-of-type(3n) {
  margin-right: 0
}
.c-merit-evaluation_item h3 {
  font-size: 1.7rem;
  letter-spacing: .05em;
  margin-bottom: 10px;
  line-height: 1.4;
  text-align: center;
  color: #193c60
}
.c-merit-evaluation_item h3 .-label {
  background: #2667ac;
  color: #fff;
  padding: 5px 12px;
  font-size: 1.4rem;
  line-height: 1.2;
  display: inline-block;
  margin-bottom: 8px;
  font-weight: 400
}
.c-merit-evaluation_item h3 .-label + span {
  display: block
}
.c-merit-evaluation_item p {
  font-size: 1.4rem;
  line-height: 1.6
}
@media only screen and (max-width:750px) {
  .p-list_merit-evaluation {
    display: flex;
    flex-wrap: wrap
  }
  .c-merit-evaluation_item {
    width: calc((100% - 6px) / 2);
    margin: 0 6px 6px 0;
    padding: 0 20px 20px;
    background: #f2f6fb;
    border: 1px solid #2667ac;
    border-radius: 2px
  }
  .c-merit-evaluation_item:nth-of-type(3n) {
    margin-right: 6px
  }
  .c-merit-evaluation_item:nth-of-type(2n) {
    margin-right: 0
  }
  .c-merit-evaluation_item h3 {
    font-size: 1.7rem;
    letter-spacing: .05em;
    margin-bottom: 10px;
    line-height: 1.4;
    text-align: center;
    color: #193c60
  }
  .c-merit-evaluation_item h3 .-label {
    background: #2667ac;
    color: #fff;
    padding: 5px 12px;
    font-size: 1.4rem;
    line-height: 1.2;
    display: inline-block;
    margin-bottom: 8px;
    font-weight: 400
  }
  .c-merit-evaluation_item h3 .-label + span {
    display: block
  }
  .c-merit-evaluation_item p {
    font-size: 1.4rem;
    line-height: 1.6
  }
}
.p-table_grade-evaluation {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  font-size: 1.6rem;
  margin: 40px auto
}
.scroll-table + p {
  font-size: 1.5rem;
  line-height: 1.4
}
.p-table_grade-evaluation th, .p-table_grade-evaluation td {
  border-bottom: 1px solid #e0e5eb
}
.p-table_grade-evaluation th:nth-of-type(2n), .p-table_grade-evaluation td:nth-of-type(2n) {
  border-bottom: 1px solid #fff
}
.p-table_grade-evaluation th:nth-of-type(2), .p-table_grade-evaluation td:nth-of-type(2) {
  background: #e0e5eb
}
.p-table_grade-evaluation th:nth-of-type(2) {
  padding: 20px;
  color: #396ba3;
  border-radius: 8px 8px 0 0;
  font-size: 1.8rem
}
.p-table_grade-evaluation td:nth-of-type(2) {
  padding: 20px 30px;
  width: 340px
}
.p-table_grade-evaluation td:nth-of-type(2) > div {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center
}
.p-table_grade-evaluation td:nth-of-type(2) .-indent {
  font-size: 1.2rem;
  margin: 10px 0 0;
  text-align: left
}
.p-table_grade-evaluation td:nth-of-type(2) * + p {
  margin: 10px 0 0
}
.p-list_grade-evaluation {
  font-size: 1.6rem;
  font-weight: 700;
  color: #b00;
  margin-right: 20px;
  width: 190px
}
.p-table_grade-evaluation td:nth-of-type(1) {
  padding: 20px 30px 20px 0
}
.p-table_grade-evaluation td:nth-of-type(1) strong {
  font-size: 2rem;
  color: #255fa1;
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  line-height: 1
}
.p-table_grade-evaluation td:nth-of-type(1) strong .-label_mandatory {
  background: #255fa1;
  color: #fff;
  padding: 5px 12px;
  border-radius: 30px;
  margin-left: 15px;
  font-size: 1.3rem
}
.p-table_grade-evaluation td:nth-of-type(1) p {
  padding-left: 26px
}
@media only screen and (max-width:750px) {
  .p-table_grade-evaluation {
    font-size: 1.4rem;
    margin: 30px auto 5px;
    width: 600px
  }
  .p-table_grade-evaluation + p {
    font-size: 1.2rem;
    line-height: 1.4
  }
  .p-table_grade-evaluation th, .p-table_grade-evaluation td {
    border-bottom: 1px solid #e0e5eb
  }
  .p-table_grade-evaluation th:nth-of-type(2n), .p-table_grade-evaluation td:nth-of-type(2n) {
    border-bottom: 1px solid #fff
  }
  .p-table_grade-evaluation th:nth-of-type(2), .p-table_grade-evaluation td:nth-of-type(2) {
    background: #e0e5eb
  }
  .p-table_grade-evaluation th:nth-of-type(2) {
    padding: 15px 15px;
    border-radius: 5px 5px 0 0;
    font-size: 1.6rem
  }
  .p-table_grade-evaluation td:nth-of-type(2) {
    padding: 10px 15px;
    width: 300px
  }
  .p-table_grade-evaluation td:nth-of-type(2) > div {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center
  }
  .p-table_grade-evaluation td:nth-of-type(2) .-indent {
    font-size: 1.2rem;
    margin: 10px 0 0;
    text-align: left
  }
  .p-table_grade-evaluation td:nth-of-type(2) * + p {
    margin: 10px 0 0
  }
  .p-list_grade-evaluation {
    font-size: 1.6rem;
    font-weight: 700;
    color: #b00;
    margin-right: 20px
  }
  .p-table_grade-evaluation th:nth-of-type(1), .p-table_grade-evaluation td:nth-of-type(1) {
    position: relative
  }
  .p-table_grade-evaluation th:nth-of-type(1)::after, .p-table_grade-evaluation td:nth-of-type(1)::after {
    position: absolute;
    content: '';
    display: block;
    width: 10px;
    background: #fff;
    height: calc(100% - 2px);
    top: 1px;
    right: 0
  }
  .p-table_grade-evaluation th:nth-of-type(1) {
    padding: 15px 23px 15px 15px;
    width: 250px
  }
  .p-table_grade-evaluation td:nth-of-type(1) {
    padding: 10px 23px 10px 15px;
    width: 250px;
    background: #f5f7f0
  }
  .p-table_grade-evaluation td:nth-of-type(1) strong {
    font-size: 1.6rem;
    color: #255fa1;
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    line-height: 1
  }
  .p-table_grade-evaluation td:nth-of-type(1) strong .-label_mandatory {
    padding: 5px 5px;
    border-radius: 30px;
    margin-left: 5px;
    font-size: 1rem;
    white-space: nowrap
  }
  .p-table_grade-evaluation td:nth-of-type(1) p {
    padding-left: 0;
    font-size: 1.3rem
  }
  .scroll-table + p {
    font-size: 1.3rem;
    line-height: 1.4
  }
}
* + .p-box_grade-evaluation {
  margin-top: 10px
}
.p-list_grade-evaluation.-wide {
  width: auto
}
.p-list_grade-evaluation + .c-img img {
  display: block
}
.p-list_grade-evaluation li {
  display: flex;
  align-items: center;
  line-height: 1;
  text-align: left
}
.p-list_grade-evaluation li + li {
  margin-top: 5px
}
.p-list_grade-evaluation li span {
  margin-left: auto;
  font-size: 2.4rem;
  position: relative;
  bottom: 2px;
  display: flex;
  align-items: center
}
.p-list_grade-evaluation li span::before {
  content: '：';
  font-size: 1.4rem;
  font-weight: 400;
  position: relative;
  top: 3px
}
.p-table_tax {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  font-size: 1.6rem;
  margin-top: 30px
}
.p-table_tax th {
  font-size: 1.7rem
}
.p-table_tax th, .p-table_tax tr:not(:last-of-type) td {
  border-bottom: 2px solid #fff
}
.p-table_tax th:nth-of-type(1), .p-table_tax th:nth-of-type(2), .p-table_tax td:nth-of-type(1), .p-table_tax td:nth-of-type(2) {
  background: #e7f2f4;
  color: #13817a;
  padding: 20px 20px
}
.p-table_tax th:nth-of-type(1) {
  border-radius: 10px 0 0 0
}
.p-table_tax th:nth-of-type(2) {
  border-radius: 0 10px 0 0
}
.p-table_tax tr:last-of-type td:nth-of-type(1) {
  border-radius: 0 0 0 10px
}
.p-table_tax tr:last-of-type td:nth-of-type(2) {
  border-radius: 0 0 10px 0
}
.p-table_tax th:nth-of-type(1) {
  width: 55%
}
.p-table_tax th:nth-of-type(2), .p-table_tax th:nth-of-type(4) {
  width: 24%
}
.p-table_tax th:nth-of-type(3), .p-table_tax td:nth-of-type(3) {
  width: 10px;
  padding: 10px 5px;
  border-color: #eee !important
}
.p-table_tax th:nth-of-type(4), .p-table_tax td:nth-of-type(4) {
  background: #f2f2f2;
  padding: 15px 20px;
  margin-left: 40px
}
.p-table_tax th:nth-of-type(4) {
  border-radius: 10px 10px 0 0
}
.p-table_tax tr:last-of-type td:nth-of-type(4) {
  border-radius: 0 0 10px 10px
}
.p-table_tax td:first-of-type strong {
  font-size: 2.2rem;
  display: block;
  margin-bottom: 10px
}
.p-table_tax td:first-of-type p {
  font-size: 1.5rem;
  font-weight: 700
}
.p-table_tax td:first-of-type p.-indent {
  margin-top: 10px;
  font-size: 1.3rem;
  color: #2e3b4c;
  font-weight: 400
}
.p-table_tax td:nth-of-type(2) div, .p-table_tax td:nth-of-type(4) div {
  background: #fff;
  border-radius: 8px;
  text-align: center;
  font-size: 1.4rem;
  padding: 10px;
  white-space: nowrap
}
.p-table_tax td:nth-of-type(2) div.-emphasis {
  background: #fd8502;
  color: #fff
}
.p-table_tax td:nth-of-type(2) div + div, .p-table_tax td:nth-of-type(4) div + div {
  margin-top: 5px
}
.p-table_tax td:nth-of-type(2) div strong, .p-table_tax td:nth-of-type(4) div strong {
  display: block;
  font-size: 1.8rem;
  font-weight: 400
}
@media only screen and (max-width:900px) {
  .scroll-table {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    margin: 20px 0;
    padding-bottom: 10px
  }
  .scroll-table table {
    white-space: initial
  }
  .p-table_tax {
    font-size: 1.4rem;
    margin: 0 0 10px;
    width: 720px
  }
  .p-table_tax th {
    font-size: 1.6rem
  }
  .p-table_tax th:nth-of-type(1), .p-table_tax th:nth-of-type(2), .p-table_tax td:nth-of-type(1), .p-table_tax td:nth-of-type(2) {
    padding: 15px
  }
  .p-table_tax th:nth-of-type(1) {
    border-radius: 8px 0 0 0
  }
  .p-table_tax th:nth-of-type(2) {
    border-radius: 0 8px 0 0
  }
  .p-table_tax tr:last-of-type td:nth-of-type(1) {
    border-radius: 0 0 0 8px
  }
  .p-table_tax tr:last-of-type td:nth-of-type(2) {
    border-radius: 0 0 8px 0
  }
  .p-table_tax th:nth-of-type(1) {
    width: 42% !important
  }
  .p-table_tax th:nth-of-type(2), .p-table_tax th:nth-of-type(4) {
    width: 28% !important
  }
  .p-table_tax th:nth-of-type(3), .p-table_tax td:nth-of-type(3) {
    width: 20px;
    padding: 10px 5px
  }
  .p-table_tax th:nth-of-type(4), .p-table_tax td:nth-of-type(4) {
    background: #f2f2f2;
    padding: 15px;
    margin-left: 0;
    width: 28% !important
  }
  .p-table_tax th:nth-of-type(4) {
    border-radius: 8px 8px 0 0
  }
  .p-table_tax tr:last-of-type td:nth-of-type(4) {
    border-radius: 0 0 8px 8px
  }
  .p-table_tax td:first-of-type strong {
    font-size: 1.7rem
  }
  .p-table_tax td:first-of-type p {
    font-size: 1.4rem;
    font-weight: 400
  }
  .p-table_tax td:first-of-type p.-indent {
    font-size: 1.2rem
  }
  .p-table_tax td:nth-of-type(2) div, .p-table_tax td:nth-of-type(4) div {
    border-radius: 5px;
    font-size: 1.4rem
  }
  .p-table_tax td:nth-of-type(2) div + div, .p-table_tax td:nth-of-type(4) div + div {
    margin-top: 5px
  }
  .p-table_tax td:nth-of-type(2) div strong, .p-table_tax td:nth-of-type(4) div strong {
    font-size: 1.6rem
  }
}
.sec-thirdparty {
  background: #f2f6fc;
  padding: 40px 5%;
  border-radius: 5px;
  margin: 50px auto 20px
}
.sec-thirdparty + .sec-thirdparty {
  margin: 20px auto 40px
}
.sec-thirdparty .p-title {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 40px
}
.sec-thirdparty .p-title .row-img {
  border: none
}
.sec-thirdparty .p-title .row-text {
  padding-left: 20px
}
.sec-thirdparty .p-title .row-text h2 {
  font-size: 3rem;
  line-height: 1.4;
  display: block;
  margin-bottom: 10px;
  color: #003b87
}
.sec-thirdparty .p-title .row-text h2 span {
  font-size: .7em;
  display: block
}
.sec-thirdparty .p-title .row-text p {
  font-size: 1.6rem;
  padding: 5px 50px;
  border-radius: 30px;
  background: #2e3b4c;
  color: #fff;
  display: inline-block
}
@media only screen and (max-width:750px) {
  .sec-thirdparty .p-title {
    align-items: flex-start;
    margin-bottom: 30px
  }
  .sec-thirdparty .p-title .row-img {
    border: none;
    width: 20%
  }
  .sec-thirdparty .p-title .row-img img {
    width: 100%;
    height: auto;
    display: block
  }
  .sec-thirdparty .p-title .row-text {
    width: 80%;
    padding-left: 10px
  }
  .sec-thirdparty .p-title .row-text h2 {
    font-size: 2rem;
    line-height: 1.2
  }
  .sec-thirdparty .p-title .row-text h2 span {
    font-size: .7em;
    display: block
  }
  .sec-thirdparty .p-title .row-text p {
    font-size: 1.3rem;
    padding: 5px 20px
  }
}
.sec-thirdparty .hl-middle {
  font-size: 1.8rem;
  line-height: 1.2;
  margin-bottom: 15px;
  color: #003b87;
  padding: 15px 0;
  border-top: 4px solid #003b87;
  border-bottom: 1px solid #003b87
}
.sec-thirdparty .c-text {
  font-size: 1.4rem;
  line-height: 1.7
}
.sec-thirdparty .c-img {
  margin: 30px auto
}
.sec-thirdparty .c-img img {
  max-width: 100%;
  margin: 0 auto;
  display: block
}
.sec-thirdparty .p-flex {
  align-items: flex-start;
  margin-bottom: 40px
}
.sec-thirdparty .p-flex .row-text {
  padding-right: 40px;
  width: calc(100% - 91px)
}
.sec-thirdparty .p-flex .row-img {
  border: none;
  width: 91px
}
@media only screen and (max-width:750px) {
  .sec-thirdparty .hl-middle {
    font-size: 1.5rem;
    line-height: 1.2;
    margin-bottom: 15px;
    color: #003b87;
    padding: 10px 0;
    border-top: 3px solid #003b87;
    border-bottom: 1px solid #003b87
  }
  .sec-thirdparty .c-text {
    font-size: 1.4rem
  }
  .sec-thirdparty .c-img {
    margin: 30px auto
  }
  .sec-thirdparty .c-img img {
    max-width: 100%;
    margin: 0 auto;
    display: block
  }
  .sec-thirdparty .p-flex {
    flex-direction: column
  }
  .sec-thirdparty .p-flex .row-text {
    padding-right: 0;
    width: 100%
  }
  .sec-thirdparty .p-flex .row-img {
    border: none;
    width: 100%;
    text-align: center;
    padding-top: 20px
  }
}
.c-detail-thirdparty_item {
  display: flex;
  flex-direction: row-reverse;
  background: #fff;
  padding: 25px;
  border-radius: 5px;
  align-items: center;
  box-shadow: 0 1px 2px rgba(0, 0, 50, .2)
}
.c-detail-thirdparty_item + .c-detail-thirdparty_item {
  margin-top: 10px
}
.c-detail-thirdparty_item .row-img {
  border: none;
  width: 280px
}
.c-detail-thirdparty_item .row-img img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto
}
.c-detail-thirdparty_item .row-text {
  width: calc(100% - 280px);
  padding-right: 40px
}
.c-detail-thirdparty_item .row-text h4 {
  font-size: 1.8rem;
  line-height: 1.4;
  margin-bottom: 15px;
  color: #003b87;
  border-left: 4px solid #ced6e8;
  padding-left: 15px
}
.c-detail-thirdparty_item .row-text p {
  font-size: 1.4rem;
  line-height: 1.7
}
@media only screen and (max-width:750px) {
  .c-detail-thirdparty_item {
    flex-direction: column;
    padding: 15px;
    border-radius: 5px
  }
  .c-detail-thirdparty_item + .c-detail-thirdparty_item {
    margin-top: 10px
  }
  .c-detail-thirdparty_item .row-img {
    width: 100%;
    padding: 10px
  }
  .c-detail-thirdparty_item .row-img img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto
  }
  .c-detail-thirdparty_item .row-text {
    width: 100%;
    padding: 20px 0 0
  }
  .c-detail-thirdparty_item .row-text h4 {
    font-size: 1.5rem;
    line-height: 1.4;
    margin-bottom: 15px
  }
  .c-detail-thirdparty_item .row-text h4 br {
    display: none
  }
  .c-detail-thirdparty_item .row-text p {
    font-size: 1.3rem
  }
}
.sec-thirdparty_bottom .c-inner {
  padding: 40px
}
.sec-thirdparty_bottom .c-text {
  font-size: 1.6rem;
  line-height: 2;
  text-align: center
}
.sec-thirdparty_bottom .hl-emphasis {
  font-size: 2rem;
  text-align: center;
  margin: 30px 0
}
.sec-thirdparty_bottom strong {
  color: #008086
}
.sec-thirdparty_bottom .c-text strong {
  border-bottom: 1px solid #008086
}
.sec-thirdparty_bottom .c-img {
  margin: 0 auto
}
.sec-thirdparty_bottom .c-img img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto
}
@media only screen and (max-width:750px) {
  .sec-thirdparty_bottom {
    margin-bottom: 0
  }
  .sec-thirdparty_bottom .c-inner {
    padding: 0 5%
  }
  .sec-thirdparty_bottom .c-text {
    font-size: 1.4rem;
    line-height: 2;
    text-align: left
  }
  .sec-thirdparty_bottom .hl-emphasis {
    font-size: 1.8rem;
    line-height: 1.5
  }
}
.p-list_insulation_features {
  display: flex;
  justify-content: space-between
}
.p-list_insulation_features > div {
  width: calc((100% - 4px) /3);
  background: #fae7e3
}
.p-list_insulation_features > div:nth-of-type(2n) {
  background: #f8e8e0
}
.p-list_insulation_features > div:nth-of-type(3) {
  margin-right: 0
}
.c-p-insulation_features_item .col-img img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
  max-width: 100%
}
.c-p-insulation_features_item .col-text {
  padding: 20px 25px
}
.c-p-insulation_features_item h3 {
  font-size: 2rem;
  text-align: center;
  letter-spacing: .05em
}
.c-p-insulation_features_item h3::after {
  content: '';
  display: block;
  width: 25px;
  height: 2px;
  background: #fd4718;
  margin: 15px auto 20px
}
.c-p-insulation_features_item p {
  font-size: 1.4rem;
  line-height: 1.7
}
@media only screen and (max-width:750px) {
  .p-list_insulation_features {
    display: flex;
    flex-direction: column
  }
  .p-list_insulation_features > div {
    display: flex;
    width: 100%;
    margin: 0 0 2px;
    padding: 20px;
    background: #fae7e3
  }
  .p-list_insulation_features > div:nth-of-type(3) {
    margin: 0
  }
  .c-p-insulation_features_item .col-img {
    display: none
  }
  .c-p-insulation_features_item .col-text {
    padding: 0
  }
  .c-p-insulation_features_item h3 {
    font-size: 1.7rem
  }
  .c-p-insulation_features_item h3::after {
    margin: 10px auto 15px
  }
  .c-p-insulation_features_item p {
    font-size: 1.3rem;
    line-height: 1.5
  }
}
.hl-middle_content.-border {
  overflow: hidden;
  text-align: center;
  font-size: 2rem;
  margin-bottom: 30px
}
.hl-middle_content.-border span {
  position: relative;
  display: inline-block
}
.hl-middle_content.-border span::before {
  content: '';
  display: block;
  width: 400%;
  height: 1px;
  background: #2e3b4c;
  top: calc(50% - 1px);
  right: calc(100% + 30px);
  position: absolute;
  opacity: .5
}
.hl-middle_content.-border span::after {
  content: '';
  display: block;
  width: 400%;
  height: 1px;
  background: #2e3b4c;
  top: calc(50% - 1px);
  left: calc(100% + 30px);
  position: absolute;
  opacity: .5
}
@media only screen and (max-width:750px) {
  .hl-middle_content.-border {
    font-size: 1.8rem;
    margin-bottom: 20px
  }
}
.p-list_ranking-insulation {
  margin: 0 auto 20px
}
.c-ranking-insulation_item {
  display: table;
  width: 100%
}
.c-ranking-insulation_item + .c-ranking-insulation_item {
  margin-top: 2px
}
.c-ranking-insulation_item dt {
  display: table-cell;
  background: #666;
  font-size: 1.8rem;
  color: #fff;
  width: 120px;
  padding: 10px;
  text-align: center;
  vertical-align: middle;
  font-weight: 700
}
.c-ranking-insulation_item dd {
  display: table-cell;
  font-size: 1.5rem;
  line-height: 1.5;
  width: calc(100% - 120px);
  padding: 10px 10px 10px 30px;
  vertical-align: middle;
  background: #f5f5f5
}
.c-ranking-insulation_item:first-of-type dt {
  background: #e50b0b
}
.c-ranking-insulation_item:first-of-type dd {
  background: #ffe4e4
}
@media only screen and (max-width:750px) {
  .c-ranking-insulation_item dt {
    font-size: 1.5rem;
    color: #fff;
    width: 80px;
    padding: 5px
  }
  .c-ranking-insulation_item dd {
    font-size: 1.3rem;
    line-height: 1.4;
    width: calc(100% - 80px);
    padding: 10px 10px 10px 20px
  }
  .c-ranking-insulation_item:first-of-type dt {
    background: #e50b0b
  }
  .c-ranking-insulation_item:first-of-type dd {
    background: #ffe4e4
  }
}
.w-ranking-insulation {
  border: 2px solid #e50b0b;
  padding: 15px 30px 20px;
  position: relative;
  z-index: 1
}
.w-ranking-insulation h2 {
  position: relative;
  z-index: 2;
  text-align: center;
  top: -25px;
  font-size: 1.7rem;
  color: #e50b0b
}
.w-ranking-insulation h2 span {
  display: inline-block;
  padding: 0 20px;
  background: #fff
}
.w-ranking-insulation .c-text {
  font-size: 1.4rem;
  line-height: 1.7
}
.p-insulation_detail {
  display: flex;
  background: #ffc581
}
.p-insulation_detail .row-title {
  width: 25%;
  padding-right: 50px;
  background: #ffc581;
  color: #4f2407;
  padding: 25px
}
.p-insulation_detail .row-title h2 {
  font-size: 2.7rem;
  margin-bottom: 25px
}
.p-insulation_detail .row-title p {
  font-size: 1.5rem;
  line-height: 1.7
}
.p-insulation_detail .row-title p span {
  display: block;
  margin-top: 10px
}
.p-insulation_detail .row-contents {
  width: 75%;
  padding: 8px
}
@media only screen and (max-width:750px) {
  .p-insulation_detail {
    flex-direction: column
  }
  .p-insulation_detail .row-title {
    width: 100%;
    padding-right: 0;
    padding: 20px 20px 10px
  }
  .p-insulation_detail .row-title h2 {
    font-size: 2.2rem;
    margin-bottom: 10px
  }
  .p-insulation_detail .row-title p {
    font-size: 1.3rem;
    line-height: 1.5
  }
  .p-insulation_detail .row-title p span {
    display: block;
    margin-top: 10px
  }
  .p-insulation_detail .row-contents {
    width: 100%;
    padding: 8px
  }
}
.c-insulation_detail_item {
  display: flex;
  flex-direction: row-reverse;
  background: #fff;
  padding: 25px;
  border-bottom: 1px solid rgba(0, 0, 0, .2)
}
.c-insulation_detail_item + .c-insulation_detail_item {
  margin-top: 8px
}
.c-insulation_detail_item .row-text {
  padding-right: 30px;
  width: calc(100% - 280px)
}
.c-insulation_detail_item .row-text h3 {
  font-size: 2rem;
  margin-bottom: 20px;
  border-left: 4px solid #ffc581;
  padding-left: 15px;
  line-height: 1
}
.c-insulation_detail_item .row-text p {
  font-size: 1.4rem;
  line-height: 1.7
}
.c-insulation_detail_item .row-img {
  border: none;
  width: 280px
}
.c-insulation_detail_item .row-img img {
  display: block;
  width: 100%;
  height: auto
}
@media only screen and (max-width:750px) {
  .c-insulation_detail_item {
    flex-direction: column-reverse;
    padding: 20px
  }
  .c-insulation_detail_item + .c-insulation_detail_item {
    margin-top: 5px
  }
  .c-insulation_detail_item .row-text {
    padding-right: 0;
    width: 100%
  }
  .c-insulation_detail_item .row-text h3 {
    font-size: 1.7rem;
    margin-bottom: 15px
  }
  .c-insulation_detail_item .row-text p {
    font-size: 1.3rem;
    line-height: 1.5
  }
  .c-insulation_detail_item .row-img {
    border: none;
    width: 100%;
    margin-top: 20px
  }
  .c-insulation_detail_item .row-img img {
    display: block;
    max-width: 90%;
    height: auto;
    margin: 0 auto
  }
}
.p-list_costperformance {
  background: #f3f4f9;
  padding: 40px 60px;
  margin-top: 40px
}
.c-costperformance_item {
  display: table;
  align-items: center;
  background: #fff;
  border-bottom: 2px solid #dbdbe9
}
* + .c-costperformance_item {
  margin-top: 10px
}
@media only screen and (max-width:750px) {
  .p-list_costperformance {
    padding: 10px;
    margin-top: 40px
  }
  .c-costperformance_item {
    display: flex;
    flex-direction: column-reverse
  }
  * + .c-costperformance_item {
    margin-top: 10px
  }
}
.c-costperformance_item .row-text {
  display: table-cell;
  vertical-align: middle;
  width: calc(100% - 300px);
  padding: 20px 40px 20px 40px
}
.c-costperformance_item .row-text h3 {
  font-size: 2.4rem;
  margin-bottom: 20px;
  color: #003b87;
  border-left: 4px solid #ced6e8;
  padding-left: 15px
}
.c-costperformance_item .row-text p {
  font-size: 1.5rem;
  line-height: 1.7
}
.c-costperformance_item .row-img {
  display: table-cell;
  vertical-align: middle;
  border: none;
  width: 300px;
  padding-top: 200px;
  position: relative;
  object-fit: cover;
  object-position: 50% 50%;
  overflow: hidden
}
.c-costperformance_item .row-img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute
}
@media only screen and (max-width:750px) {
  .c-costperformance_item .row-text {
    display: block;
    width: 100%;
    padding: 20px 20px
  }
  .c-costperformance_item .row-text h3 {
    font-size: 1.8rem;
    margin-bottom: 10px
  }
  .c-costperformance_item .row-text p {
    font-size: 1.3rem
  }
  .c-costperformance_item .row-img {
    display: block;
    width: 100%;
    padding-top: 0
  }
  .c-costperformance_item .row-img img {
    width: 100%;
    height: auto;
    display: block;
    position: initial
  }
}
.sec-after10 {
  background: #eaf6fa;
  margin: 60px auto 40px;
  border-radius: 5px
}
.sec-after30 {
  background: #fae4e4;
  margin: 40px auto 40px;
  border-radius: 5px
}
.sec-afterrelief {
  background: #ecf4d6;
  margin: 0 auto 80px;
  border-radius: 5px
}
.sec-after10 .c-inner, .sec-after30 .c-inner, .sec-afterrelief .c-inner {
  padding: 50px 60px 50px
}
@media only screen and (max-width:750px) {
  .sec-after10 {
    margin: 50px auto 30px
  }
  .sec-after30 {
    margin: 30px auto 30px
  }
  .sec-afterrelief {
    margin: 0 auto 0
  }
  .sec-after10 .c-inner, .sec-after30 .c-inner, .sec-afterrelief .c-inner {
    padding: 25px
  }
}
.sec-after10 .hl-middle_content, .sec-after30 .hl-middle_content, .sec-afterrelief .hl-middle_content {
  margin-bottom: 20px;
  letter-spacing: .05em
}
.sec-after10 .hl-middle_content::after {
  content: '';
  display: block;
  width: 36px;
  height: 2px;
  margin: 15px auto 0;
  background: #2f9bcc
}
.sec-after10 .hl-middle_content {
  color: #2f9bcc
}
.sec-after30 .hl-middle_content {
  color: #f28181
}
.sec-after30 .hl-middle_content::after {
  content: '';
  display: block;
  width: 36px;
  height: 2px;
  margin: 15px auto 0;
  background: #f28181
}
.sec-afterrelief .hl-middle_content {
  color: #88af1f
}
.sec-afterrelief .hl-middle_content::after {
  content: '';
  display: block;
  width: 36px;
  height: 2px;
  margin: 15px auto 0;
  background: #88af1f
}
@media only screen and (max-width:750px) {
  .sec-after10 .hl-middle_content, .sec-after30 .hl-middle_content, .sec-afterrelief .hl-middle_content {
    font-size: 1.8rem
  }
}
.p-list_after .c-after_item {
  display: table;
  background: #fff;
  width: 100%
}
.p-list_after .c-after_item + .c-after_item {
  margin-top: 2px
}
.p-list_after .c-after_item dt {
  font-size: 1.6rem;
  font-weight: 700;
  padding: 15px 0;
  background: #2f9bcc;
  color: #fff;
  width: 150px;
  text-align: center;
  display: table-cell;
  vertical-align: middle
}
.p-list_after .c-after_item dd {
  display: table-cell;
  vertical-align: middle;
  font-size: 1.5rem;
  padding: 15px 3%;
  width: calc(100% - 150px)
}
.sec-after30 .p-list_after .c-after_item dt {
  background: #f28181
}
.sec-after30 .c-text, .sec-afterrelief .c-text {
  font-size: 1.5rem;
  line-height: 1.7;
  margin-bottom: 30px
}
.sec-after30 .p-list_img {
  display: flex;
  justify-content: center;
  margin: 0 auto 30px
}
.sec-after30 .p-list_img li {
  margin: 0 10px
}
@media only screen and (max-width:750px) {
  .p-list_after .c-after_item dt {
    font-size: 1.4rem;
    width: 100px
  }
  .p-list_after .c-after_item dd {
    font-size: 1.3rem;
    padding: 15px 3%
  }
  .sec-after10 .p-list_after .c-after_item:last-of-type {
    display: block
  }
  .sec-after10 .p-list_after .c-after_item:last-of-type dt, .sec-after10 .p-list_after .c-after_item:last-of-type dd {
    display: block;
    width: 100%
  }
  .sec-after10 .p-list_after .c-after_item:last-of-type dd img {
    display: block;
    max-width: 100%;
    margin: 0 auto
  }
  .sec-after30 .c-text, .sec-afterrelief .c-text {
    font-size: 1.4rem;
    margin-bottom: 20px
  }
  .sec-after30 .p-list_img li {
    width: calc(100% / 3);
    margin: 0
  }
  .sec-after30 .p-list_img li img {
    width: 100%;
    height: auto
  }
}
.sec-afterrelief .c-img {
  margin: 30px auto 40px
}
.sec-afterrelief .c-img img {
  display: block;
  max-width: 640px;
  width: 100%;
  margin: 0 auto;
  border: 2px solid #6f9606
}
.sec-afterrelief .c-img .-caption {
  max-width: 640px;
  font-size: 1.4rem;
  line-height: 1.7;
  margin: 0 auto;
  background: #6f9606;
  padding: 20px 25px;
  color: #fff
}
.sec-afterrelief .c-relief_item {
  margin: 40px 0 0;
  background: #fff;
  padding: 25px
}
.sec-afterrelief .c-relief_item + .c-relief_item {
  margin-top: 5px
}
.sec-afterrelief .c-relief_item dt {
  color: #6f9606;
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 15px;
  border-left: 4px solid #ecf4d6;
  padding-left: 15px
}
.sec-afterrelief .c-relief_item dd {
  font-size: 1.4rem;
  line-height: 1.7;
  padding-left: 19px
}
@media only screen and (max-width:750px) {
  .sec-afterrelief .c-img {
    margin: 40px auto
  }
  .sec-afterrelief .c-img img {
    border: 2px solid #88af1f
  }
  .sec-afterrelief .c-img .-caption {
    font-size: 1.3rem;
    line-height: 1.5;
    padding: 15px
  }
  .sec-afterrelief .c-relief_item {
    padding: 20px
  }
  .sec-afterrelief .c-relief_item dt {
    color: #88af1f;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 10px;
    border-left: 3px solid #ecf4d6;
    padding-left: 10px
  }
  .sec-afterrelief .c-relief_item dd {
    font-size: 1.3rem;
    line-height: 1.6;
    padding-left: 13px
  }
}
.p-list_pride-root {
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px;
  padding: 0 40px
}
.p-list_pride-root li {
  width: 31%;
  margin-right: 3.5%;
  margin-bottom: 35px
}
.p-list_pride-root li img {
  width: 100%;
  height: auto;
  transition: .2s all ease;
  display: block
}
.p-list_pride-root li a:hover img {
  box-shadow: 2px 3px 15px rgba(0, 0, 0, .3);
  opacity: .8
}
.p-list_pride-root li:nth-of-type(3n) {
  margin-right: 0
}
@media only screen and (max-width:640px) {
  .p-list_pride-root {
    margin-top: 40px;
    padding: 0 0
  }
  .p-list_pride-root li {
    width: 49%;
    margin-right: 2%;
    margin-bottom: 10px
  }
  .p-list_pride-root li:nth-of-type(3n) {
    margin-right: 2%
  }
  .p-list_pride-root li:nth-of-type(2n) {
    margin-right: 0
  }
}
.sec-list_pride-lower {
  max-width: 1100px;
  margin: 120px auto 60px
}
.sec-list_pride-lower {
  max-width: 1100px;
  margin: 120px auto 60px
}
.sec-list_pride-lower .hl-content_large {
  font-size: 2.2rem;
  margin-bottom: 25px
}
.p-list_pride-lower {
  display: flex;
  flex-wrap: wrap
}
.p-list_pride-lower li {
  width: calc((100% / 6) - 2px);
  margin-right: 2px;
  margin-bottom: 2px
}
.p-list_pride-lower li img {
  width: 100%;
  height: auto;
  transition: .2s all ease;
  display: block
}
.p-list_pride-lower li .-active {
  display: block;
  background: #2e3b4c;
  pointer-events: none
}
.p-list_pride-lower li .-active img {
  opacity: .3
}
.p-list_pride-lower li a:not(.-active):hover img {
  box-shadow: 2px 3px 15px rgba(0, 0, 0, .3);
  opacity: .8
}
.p-list_pride-root li:nth-of-type(6n) {
  margin-right: 0
}
@media only screen and (max-width:800px) {
  .p-list_pride-lower {
    padding: 0 20px
  }
  .p-list_pride-lower li {
    width: calc((100% / 4) - 2px);
    margin-right: 2px;
    margin-bottom: 2px
  }
  .p-list_pride-lower li:nth-of-type(6n) {
    margin-right: 2px
  }
  .p-list_pride-lower li:nth-of-type(4n) {
    margin-right: 0
  }
}
@media only screen and (max-width:600px) {
  .sec-list_pride-lower .hl-content_large {
    font-size: 1.7rem
  }
  .p-list_pride-lower li {
    width: calc((100% / 3) - 2px);
    margin-right: 2px;
    margin-bottom: 2px
  }
  .p-list_pride-lower li:nth-of-type(4n) {
    margin-right: 2px
  }
  .p-list_pride-lower li:nth-of-type(3n) {
    margin-right: 0
  }
}
.p-table_common {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  margin: 0 auto;
  border-top: 1px solid #e5e9ef;
  font-size: 14px !important
}
.p-table_common th {
  background: #e5e9ef;
  font-weight: 400;
  border-bottom: 1px solid #fff;
  padding: 8px 15px;
  white-space: nowrap;
  text-align: left
}
.p-table_common td {
  font-weight: 400;
  border-bottom: 1px solid #e5e9ef;
  border-right: 1px solid #e5e9ef;
  padding: 8px 15px;
  font-size: 14px !important
}
.p-table_common td * {
  font-size: 14px !important
}
.p-table_common td *:last-of-type {
  margin-bottom: 0 !important
}
.p-table_common td p + ul {
  margin-top: 10px !important
}
.p-table_common td li + li {
  margin-top: 5px !important
}
.p-notification_email {
  margin: 0 auto
}
.p-notification_email + .sec-recommend {
  margin-top: 60px
}
@media only screen and (max-width:900px) {
  .p-notification_email {
    margin: 60px auto 40px
  }
  .p-notification_email + .sec-recommend {
    margin-top: 40px
  }
}
.p-notification_email .c-read_large {
  text-align: center;
  font-size: 2.5rem;
  letter-spacing: .05em;
  font-weight: 700;
  margin-bottom: 60px;
  color: #003b87
}
.p-notification_email .c-main {
  background: #fbf3a3;
  border-radius: 8px;
  position: relative;
  padding: 60px 30px 40px;
  text-align: center;
  color: #222;
  max-width: 840px;
  margin: 0 auto
}
.p-notification_email .c-main::before {
  content: '';
  display: block;
  background: url(/common/img/img-recomend_notification01.png) 0 0 no-repeat;
  background-size: cover;
  height: 220px;
  width: 290px;
  position: absolute;
  left: -120px;
  bottom: 20px
}
.p-notification_email .c-main::after {
  content: '';
  display: block;
  background: url(/common/img/img-recomend_notification02.png) 0 0 no-repeat;
  background-size: cover;
  height: 193px;
  width: 174px;
  position: absolute;
  right: -20px;
  bottom: 35px
}
.p-notification_email .c-main h2 {
  font-size: 3rem;
  letter-spacing: .05em;
  margin-bottom: 30px
}
.p-notification_email .c-main h2 .-decorate {
  position: relative;
  display: inline-block;
  padding: 0 25px
}
.p-notification_email .c-main h2 .-decorate::before {
  content: '';
  display: block;
  height: 100%;
  width: 1px;
  background: #222;
  position: absolute;
  left: 0;
  bottom: 0;
  transform: rotate(-25deg)
}
.p-notification_email .c-main h2 .-decorate::after {
  content: '';
  display: block;
  height: 100%;
  width: 1px;
  background: #222;
  position: absolute;
  right: 0;
  bottom: 0;
  transform: rotate(25deg)
}
.p-notification_email .c-main h2 .ico_emphasis {
  display: block;
  width: 86px;
  height: 86px;
  border: 4px solid #fff;
  border-radius: 50%;
  position: absolute;
  background: #222 url(/common/img/ico_wifi_w.png) 50% 54% no-repeat;
  background-size: 55% auto;
  left: 50%;
  transform: translateX(-50%);
  top: -43px
}
.p-notification_email .c-main .c-text {
  font-size: 1.6rem;
  line-height: 1.8
}
.p-notification_email .c-main .c-text + .c-text {
  margin-top: 20px
}
.p-notification_email .c-main .btn-common.-radius {
  background: #222;
  font-size: 1.8rem;
  font-weight: 700
}
.p-notification_email .c-main .btn-common.-radius .ico {
  background: url(/common/img/ico_write.png) 0 50% no-repeat;
  background-size: auto 22px;
  padding-left: 30px
}
@media only screen and (max-width:900px) {
  .p-notification_email .c-read_large {
    text-align: center;
    font-size: 2rem;
    margin-bottom: 40px;
    padding: 0 5%
  }
  .p-notification_email .c-main {
    border-radius: 5px;
    padding: 40px 10% 30px;
    text-align: center;
    color: #222;
    width: 100%
  }
  .p-notification_email .c-main::before {
    content: '';
    display: none;
    background: url(/common/img/img-recomend_notification01.png) 0 0 no-repeat;
    background-size: contain;
    height: 220px;
    width: 25%;
    position: absolute;
    left: -10%;
    top: 20px
  }
  .p-notification_email .c-main::after {
    background: url(/common/img/img-recomend_notification02.png) 0 100% no-repeat;
    background-size: contain;
    height: 193px;
    width: 25%;
    position: absolute;
    right: -3%;
    bottom: 0;
  }
  .p-notification_email .c-main h2 {
    font-size: 2rem;
    margin-bottom: 20px
  }
  .p-notification_email .c-main h2 .-decorate {
    padding: 0 15px
  }
  .p-notification_email .c-main h2 .ico_emphasis {
    width: 60px;
    height: 60px;
    border: 3px solid #fff;
    top: -30px
  }
  .p-notification_email .c-main .c-text {
    font-size: 1.3rem;
    line-height: 1.8
  }
  .p-notification_email .c-main .c-text + .c-text {
    margin: 20px 0
  }
  .p-notification_email .c-main .btn-common.-radius {
    font-size: 1.5rem
  }
}
@media only screen and (max-width:480px) {
  .p-notification_email .c-main .btn-common.-radius {
    padding: 15px 20px
  }
  .p-notification_email .c-main .btn-common.-radius span {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    height: 1.5em;
    width: 100%
  }
  .p-notification_email .c-main .btn-common.-radius span::before {
    content: 'ご登録はこちら';
    width: 100%;
    display: inline-block
  }
}
.p-box_404 {
  text-align: center
}
.p-box_404 p {
  font-size: 1.5rem;
  line-height: 2
}
.p-box_404 ul {
  font-size: 1.4rem;
  margin: 20px 0 40px;
  padding: 20px 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd
}
.p-box_404 ul.p-list_circle li::before {
  background-color: #003b87
}
.hl-404 {
  margin: 100px auto 40px;
  font-size: 3rem;
  text-align: center
}
@media only screen and (max-width:900px) {
  .hl-404 {
    margin: 60px auto 40px;
    font-size: 2.7rem
  }
  .p-box_404 {
    padding-bottom: 20px
  }
  .-soldout .p-list_recommend.slick-slider {
    margin-bottom: 0 !important;
    padding-bottom: 0;
    overflow: initial
  }
}
@media only screen and (max-width:750px) {
  .p-box_404 .p-box_btn {
    margin: 40px 0 0
  }
  .p-box_404 p {
    font-size: 1.4rem;
    line-height: 2
  }
  .p-box_404 ul {
    font-size: 1.4rem;
    margin: 20px 0 30px;
    padding: 20px 0;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd
  }
}
@media only screen and (max-width:600px) {
  .hl-404 {
    margin: 50px auto 30px;
    font-size: 2.2rem
  }
  .p-box_404 {
    text-align: left
  }
  .p-box_404 p br {
    display: none
  }
}
.w-progress_gallery {
  margin-bottom: 60px
}
.w-progress_gallery h2 {
  font-size: 2rem;
  overflow: hidden;
  margin-bottom: 15px
}
.w-progress_gallery h2 span {
  position: relative;
  background: url(/common/img/ico_progress.png) 0 50% no-repeat;
  background-size: 25px 25px;
  padding-left: 35px
}
.w-progress_gallery h2 span::after {
  content: '';
  display: block;
  width: 1000%;
  height: 2px;
  border-top: 2px dashed #2e3b4c;
  position: absolute;
  top: 50%;
  left: calc(100% + 30px);
  opacity: .5
}
.p-list_progress-gallery {
  overflow: initial;
  height: 240px
}
.p-list_progress-gallery div.slick-slide {
  height: 240px;
  margin: 0 8px 0 0;
  overflow: hidden;
  position: relative;
  background: #2e3b4c
}
@media only screen and (max-width:800px) {
  .p-list_progress-gallery {
    overflow: initial;
    height: 160px
  }
  .p-list_progress-gallery div.slick-slide {
    height: 160px;
    margin: 0 5px 0 0
  }
  .w-progress_gallery h2 {
    font-size: 1.6rem
  }
  .w-progress_gallery h2 span {
    background-size: 20px 20px;
    padding-left: 30px
  }
  .w-progress_gallery h2 span::after {
    border-top: 1px dashed #2e3b4c
  }
}
@media only screen and (max-width:600px) {
  .p-list_progress-gallery {
    overflow: initial;
    height: 132px
  }
  .p-list_progress-gallery div.slick-slide {
    height: 132px;
    margin: 0 4px 0 0
  }
}
.p-list_progress-gallery div.slick-slide::after {
  content: '';
  display: block;
  height: 33%;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .7))
}
.p-list_progress-gallery div.slick-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: relative;
  display: block;
  transition: .2s all ease
}
.p-list_progress-gallery:hover div.slick-slide img {
  opacity: .6
}
.p-list_progress-gallery div.slick-slide:hover img {
  transform: scale(1.1);
  opacity: 1
}
.p-list_progress-gallery div span {
  position: absolute;
  z-index: 5;
  color: #fff;
  left: 15px;
  bottom: 15px;
  font-size: 1.3rem
}
@media only screen and (max-width:600px) {
  .p-list_progress-gallery div span {
    font-size: 1.2rem
  }
}
.p-list_progress-gallery .slick-next {
  right: 10px
}
.p-img {
  text-align: center
}
.p-img img {
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  display: block
}
.-pride02_ttl {
  justify-content: center;
  align-items: center;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  margin-bottom: 40px
}
.-pride02_ttl .c-img {
  width: 140px
}
.-pride02_ttl .c-img img {
  width: 100%;
  height: auto
}
.-pride02_ttl .hl-concept.-large {
  text-align: left;
  margin: 0;
  padding-left: 20px
}
@media only screen and (max-width:640px) {
  .-pride02_ttl .hl-concept.-large br {
    display: none
  }
}
.p-list_recommend_contents {
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px
}
.p-list_recommend_contents li {
  width: calc((100% / 3) - 5px);
  margin-bottom: 5px
}
.p-list_recommend_contents li:not(:nth-of-type(3n+1)) {
  margin-left: 5px
}
.p-list_recommend_contents li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
  border: 1px solid #e5e9ef;
  border-radius: 3px;
  height: 100%;
  transition: .2s all ease
}
.p-list_recommend_contents li a:hover {
  border-color: #3f80d4;
  color: #003b87
}
.p-list_recommend_contents li .c-img {
  width: 120px;
  height: 120px;
  display: block
}
.p-list_recommend_contents li .c-img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 50% 50%
}
.p-list_recommend_contents li .c-box_text {
  padding: 0 15px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  width: calc(100% - 120px);
  font-size: 1.5rem;
  font-style: normal;
  line-height: 1.5
}
.p-list_recommend_contents li:nth-of-type(n+7) {
  display: none
}
@media only screen and (max-width:960px) {
  .p-list_column li .c-img {
    width: 100px;
    height: 100px
  }
  .p-list_column li .c-box_text {
    width: calc(100% - 100px);
    font-size: 1.4rem
  }
}
@media only screen and (max-width:840px) {
  .p-list_recommend_contents li {
    width: 49%;
    margin-bottom: 10px
  }
  .p-list_recommend_contents li:not(:nth-of-type(3n+1)) {
    margin-left: 0
  }
  .p-list_recommend_contents li:not(:nth-of-type(2n+1)) {
    margin-left: 2%
  }
}
@media only screen and (max-width:600px) {
  .p-list_recommend_contents li {
    width: 100%;
    margin-bottom: 10px
  }
  .p-list_recommend_contents li:not(:nth-of-type(2n+1)) {
    margin-left: 0
  }
  .p-list_recommend_contents li:nth-of-type(n+5) {
    display: none
  }
  .p-list_recommend_contents li .c-img {
    width: 25%;
    height: 80px
  }
  .p-list_recommend_contents li .c-box_text {
    width: calc(100% - 25%);
    font-size: 1.3rem
  }
}
@media only screen and (min-width:901px) {
  .p-list_recommend.-slider_narrow {
    overflow: hidden
  }
  .p-list_recommend.-slider_narrow .slick-prev {
    left: 0;
    background: none !important
  }
  .p-list_recommend.-slider_narrow .slick-next {
    right: 0;
    background: none !important
  }
}
.sec-ground_problem {
  padding: 40px 50px;
  margin: 60px auto 80px;
  background: #e1f1f4;
  position: relative;
  border-radius: 2px
}
.sec-ground_problem::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 100px 0 100px;
  border-color: #e1f1f4 transparent transparent transparent;
  position: absolute;
  left: calc(50% - 100px);
  bottom: -50px
}
.sec-ground_problem .c-inner {
  display: flex
}
.sec-ground_problem .row-text {
  width: 65%;
  padding-right: 40px
}
.sec-ground_problem .row-img {
  width: 35%;
  border: none
}
.sec-ground_problem .row-img img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto
}
.sec-ground_problem .-caption {
  text-align: center;
  font-size: 1rem;
  display: block
}
.sec-ground_problem .-caption b {
  display: block;
  font-size: 1.6rem;
  margin: 8px 0
}
.sec-ground_problem .hl-middle {
  font-size: 3rem;
  margin-bottom: 16px;
  left: -.5em;
  position: relative;
  color: #31a2b4
}
.sec-ground_problem .hl-sub {
  font-size: 1.8rem;
  line-height: 1.6;
  margin-bottom: 25px;
  padding-top: 16px;
  border-top: 1px dotted #aaa
}
.sec-ground_problem .c-text {
  font-size: 1.5rem;
  line-height: 1.7
}
@media only screen and (max-width:750px) {
  .sec-ground_problem {
    padding: 30px;
    margin: 40px auto
  }
  .sec-ground_problem::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 60px 0 60px;
    border-color: #e1f1f4 transparent transparent transparent;
    position: absolute;
    left: calc(50% - 60px);
    bottom: -30px
  }
  .sec-ground_problem .c-inner {
    flex-direction: column
  }
  .sec-ground_problem .row-text {
    width: 100%;
    padding: 0 0 40px
  }
  .sec-ground_problem .row-img {
    width: 100%;
    border: none
  }
  .sec-ground_problem .-caption {
    text-align: center;
    font-size: 1.2rem
  }
  .sec-ground_problem .-caption b {
    display: block;
    font-size: 1.6rem;
    margin: 8px 0
  }
  .sec-ground_problem .hl-middle {
    font-size: 2rem;
    margin-bottom: 16px;
    left: -.5em;
    text-align: center
  }
  .sec-ground_problem .hl-sub {
    font-size: 1.6rem;
    padding-top: 16px;
    margin-bottom: 25px
  }
  .sec-ground_problem .c-text {
    font-size: 1.4rem;
    line-height: 1.6
  }
}
.c-quality_mv-img {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 50vh;
  min-height: 500px;
  z-index: 1
}
.slide-quality_mv-img img {
  width: auto;
  max-height: 500px
}
@media only screen and (max-width:750px) {
  .c-quality_mv-img {
    min-height: initial;
    height: 250px
  }
  .slide-quality_mv-img img {
    width: auto;
    height: auto;
    max-height: 250px
  }
}
.hl-need {
  text-align: center;
  font-size: 3rem;
  margin-bottom: 80px
}
.hl-need b {
  padding-left: 10px;
  background: linear-gradient(to top, #fbe21f 0%, #fbe21f 33%, rgba(251, 226, 31, 0) 33%, rgba(251, 226, 31, 0) 100%)
}
@media only screen and (max-width:750px) {
  .hl-need {
    font-size: 2rem;
    line-height: 1.5;
    margin-bottom: 60px
  }
}
.c-quality_mv-text {
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
  background: #fff;
  margin: -40px auto 60px;
  padding: 50px 50px 0;
  width: 100%;
  border-radius: 10px
}
.c-quality_mv-text p {
  margin: 0 auto;
  font-size: 2rem;
  line-height: 1.5;
  display: flex;
  justify-content: center;
  align-items: center
}
.c-quality_mv-text p .-balloon {
  width: 90px
}
.c-quality_mv-text p .-balloon b {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #003b87
}
.c-quality_mv-text p .-balloon + span {
  padding-left: 20px
}
.c-quality_mv-text p .-balloon + span b {
  color: #3d75bc
}
@media only screen and (max-width:750px) {
  .c-quality_mv-text {
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2;
    background: #fff;
    margin: -30px auto 40px;
    padding: 20px 0 0;
    width: 100%;
    border-radius: 5px
  }
  .c-quality_mv-text p {
    font-size: 1.7rem;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
  }
  .c-quality_mv-text p br {
    display: none
  }
  .c-quality_mv-text p .-balloon {
    width: 80px;
    margin-bottom: 10px
  }
  .c-quality_mv-text p .-balloon b {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #003b87
  }
  .c-quality_mv-text p .-balloon + span {
    padding-left: 20px
  }
  .c-quality_mv-text p .-balloon + span b {
    color: #3d75bc
  }
}
.hl-attempt {
  font-size: 3rem;
  text-align: center;
  margin-bottom: 20px;
  color: #003b87
}
.hl-attempt::after {
  content: '';
  display: block;
  width: 30px;
  height: 2px;
  background: #003b87;
  margin: 20px auto 0
}
.hl-attempt span {
  display: inline-block;
  font-size: 1.8rem;
  padding: 8px 30px;
  background: #003b87;
  color: #fff;
  position: relative;
  border-radius: 30px;
  top: -18px;
  margin-bottom: 10px
}
.hl-attempt strong {
  display: block
}
.hl-attempt u {
  font-size: 1.4rem
}
@media only screen and (max-width:750px) {
  .hl-attempt {
    font-size: 2rem
  }
  .hl-attempt span {
    font-size: 1.5rem;
    padding: 8px 20px;
    top: -15px;
    margin-bottom: 10px
  }
  .hl-attempt strong {
    display: block
  }
  .hl-attempt u {
    font-size: 1.2rem
  }
}
.p-box_attempt {
  margin: 80px auto;
  padding: 0 5% 40px;
  border-radius: 5px
}
.p-box_attempt .c-inner p {
  font-size: 1.5rem
}
.p-box_attempt:nth-of-type(2n+1) {
  background: #f2f6fc
}
.p-box_attempt .c-title {
  margin-bottom: 40px
}
.p-box_attempt .c-title p {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.6
}
@media only screen and (max-width:750px) {
  .p-box_attempt {
    margin: 50px auto;
    padding: 0 5% 20px;
    border-radius: 5px
  }
  .p-box_attempt .c-inner p {
    font-size: 1.3rem
  }
  .p-box_attempt .c-title {
    margin-bottom: 25px
  }
  .p-box_attempt .c-title p {
    text-align: left;
    font-size: 1.4rem
  }
}
.c-img.-triplecheck img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto
}
.box-triplecheck {
  padding: 20px 50px 30px;
  margin: 60px auto 0;
  background: #fff;
  border-radius: 8px;
  border: 1px solid #ddd
}
.box-triplecheck p {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-top: 25px
}
.hl-triplecheck {
  position: relative;
  text-align: center;
  height: 50px
}
.hl-triplecheck span {
  background: #fff;
  display: inline-block;
  padding: 10px 20px;
  border: 1px solid #333;
  position: relative;
  top: -40px;
  font-size: 2rem
}
@media only screen and (max-width:750px) {
  .box-triplecheck {
    padding: 40px 20px;
    margin: 50px auto 0;
    border-radius: 4px;
    border: 1px solid #ddd
  }
  .box-triplecheck p {
    font-size: 1.3rem;
    line-height: 1.6;
    margin-top: 25px
  }
  .hl-triplecheck {
    position: relative;
    text-align: center;
    height: 40px
  }
  .hl-triplecheck span {
    display: inline-block;
    padding: 10px 15px;
    border: 1px solid #333;
    position: relative;
    top: -60px;
    font-size: 1.7rem;
    border-radius: 5px
  }
}
.hl-triplecheck b {
  background: linear-gradient(to top, #fbe21f 0%, #fbe21f 33%, rgba(251, 226, 31, 0) 33%, rgba(251, 226, 31, 0) 100%)
}
.p-list_attempt-img {
  display: flex;
  margin-bottom: 30px
}
.p-list_attempt-img li {
  width: 33%
}
.p-list_attempt-img li .c-caption {
  display: block;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 700;
  margin-top: 15px
}
.p-list_attempt-img li img {
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 10px
}
.p-list_attempt-img li + li {
  margin-left: .5%
}
@media only screen and (max-width:750px) {
  .p-list_attempt-img {
    flex-direction: column;
    margin-bottom: 30px
  }
  .p-list_attempt-img li {
    width: 100%
  }
  .p-list_attempt-img li .c-caption {
    display: block;
    font-size: 1.4rem;
    font-weight: 700;
    margin-top: 10px
  }
  .p-list_attempt-img li img {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 0
  }
  .p-list_attempt-img li + li {
    margin: 25px 0 0 0
  }
}
.p-attempt02_content {
  display: flex;
  align-items: center
}
.p-attempt02_content .row-img {
  width: 35%;
  position: relative;
  z-index: 1;
  background: #f2f2f2;
  border: none;
  padding: 15px
}
.p-attempt02_content .row-img img {
  max-width: 100%;
  height: auto;
  display: block
}
.p-attempt02_content .row-text {
  width: 65%;
  padding-right: 50px;
  position: relative;
  z-index: 2
}
.p-attempt02_content .c-img {
  position: relative;
  left: -10px;
  margin-top: 30px
}
.p-attempt02_content .row-text .hl-attempt {
  text-align: left
}
.p-attempt02_content .row-text .hl-attempt::after {
  display: none
}
.p-attempt02_content .row-text p {
  font-size: 1.4rem;
  line-height: 1.7
}
.p-attempt02_content .row-text p + p {
  margin-top: 20px
}
@media only screen and (max-width:750px) {
  .p-attempt02_content {
    flex-direction: column
  }
  .p-attempt02_content .row-img {
    width: 100%;
    position: relative;
    z-index: 1;
    background: #f2f2f2;
    border: none;
    padding: 10px;
    margin-top: 20px
  }
  .p-attempt02_content .row-img img {
    max-width: 100%;
    height: auto;
    display: block
  }
  .p-attempt02_content .row-text {
    width: 100%;
    padding-right: 0
  }
  .p-attempt02_content .c-img {
    display: none
  }
  .p-attempt02_content .row-text .hl-attempt {
    text-align: center
  }
  .p-attempt02_content .row-text .hl-attempt::after {
    display: none
  }
  .p-attempt02_content .row-text p {
    font-size: 1.4rem;
    line-height: 1.7
  }
  .p-attempt02_content .row-text p + p {
    margin-top: 20px
  }
}
.c-item_attempt03 {
  display: flex;
  flex-wrap: wrap;
  background: #fff;
  border-radius: 5px;
  box-shadow: 0 1px 2px rgb(0, 0, 50, .2)
}
* + .c-item_attempt03 {
  margin: 20px auto 0
}
.p-box_paperlocation {
  padding: 40px 50px;
  background: #fff;
  border-radius: 5px;
  box-shadow: 0 1px 2px rgb(0, 0, 50, .2)
}
.p-box_paperlocation .c-item_attempt03 {
  box-shadow: initial
}
.c-item_attempt03 .row-text {
  width: 65%;
  padding: 30px 50px
}
.c-item_attempt03 .row-text.-full {
  width: 100%;
  padding: 0
}
.c-item_attempt03 .row-text h4 {
  font-size: 2.4rem;
  margin-bottom: 20px;
  color: #003b87;
  border-left: 5px solid #003b87;
  padding-left: 15px
}
.c-item_attempt03 .row-text h4 .-label {
  font-size: 1.3rem;
  background: #ced6e8;
  padding: 4px 10px;
  position: relative;
  top: -2px;
  margin-left: 15px
}
.c-item_attempt03 .row-text p {
  font-size: 1.4rem;
  line-height: 1.7
}
.c-item_attempt03 .row-text p strong {
  font-size: 1.7rem
}
.c-item_attempt03 .row-text * + p {
  margin-top: 15px
}
.c-item_attempt03 .row-img {
  width: 35%;
  border: none;
  overflow: hidden
}
.c-item_attempt03 .row-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  display: block
}
.c-item_attempt03.-reverse {
  flex-direction: row-reverse
}
.p-flex_img {
  display: flex;
  justify-content: space-between
}
.p-flex_img li {
  width: 49%
}
.p-flex_img li img {
  width: 100%;
  height: auto;
  display: block
}
.c-item_attempt03 .col-box {
  margin: 20px 0 0;
  background: #f2f6fc;
  padding: 25px
}
.c-item_attempt03 .col-box p {
  font-size: 1.4rem;
  line-height: 1.6;
  margin-top: 15px
}
@media only screen and (max-width:750px) {
  .p-box_paperlocation {
    padding: 0;
    border-radius: 3px;
    box-shadow: 0 1px 2px rgb(0, 0, 50, .2)
  }
  .c-item_attempt03:not(:nth-of-type(1)) {
    flex-direction: column-reverse !important
  }
  .c-item_attempt03 .row-text {
    width: 100%;
    padding: 0
  }
  .c-item_attempt03 .row-text h4 {
    font-size: 1.8rem;
    margin-bottom: 20px;
    color: #fff;
    border-left: none;
    padding: 10px 20px;
    background: #003b87
  }
  .c-item_attempt03 .row-text h4 .-label {
    font-size: 1.2rem;
    line-height: 1;
    padding: 2px 10px;
    top: 0;
    margin-left: 10px;
    color: #003b87
  }
  .c-item_attempt03 .row-text p {
    font-size: 1.3rem;
    line-height: 1.6;
    padding: 0 20px
  }
  .c-item_attempt03 .p-flex_text {
    margin: 15px 20px;
    width: calc(100% - 40px)
  }
  .c-item_attempt03 .row-text p strong {
    font-size: 1.6rem
  }
  .c-item_attempt03 .row-text * + p {
    margin: 15px 0
  }
  .c-item_attempt03 .row-img {
    width: 100%;
    border: none;
    overflow: hidden
  }
  .c-item_attempt03.-reverse {
    flex-direction: row-reverse
  }
  .p-flex_img {
    flex-direction: column
  }
  .p-flex_img li {
    width: 100%
  }
  .p-flex_img li + li {
    margin-top: 2px
  }
  .c-item_attempt03 .col-box {
    margin: 20px 0 0;
    background: #2e3b4c;
    padding: 15px;
    color: #fff
  }
  .c-item_attempt03 .col-box p {
    font-size: 1.3rem;
    line-height: 1.5;
    margin: 10px 0 0
  }
}
.p-flex_text {
  display: table;
  font-size: 1.4rem;
  margin-top: 30px;
  align-items: center;
  border: 1px solid #2e3b4c;
  width: 100%;
  border-radius: 5px
}
.p-flex_text dt {
  display: table-cell;
  background: #2e3b4c;
  color: #fff;
  padding: 8px 20px;
  white-space: nowrap;
  vertical-align: middle;
  text-align: center
}
.p-flex_text dd {
  display: table-cell;
  padding: 8px 20px;
  line-height: 1.7;
  vertical-align: middle;
  text-align: center;
  background: #fff
}
@media only screen and (max-width:750px) {
  .p-flex_text {
    display: flex;
    flex-direction: column;
    font-size: 1.3rem;
    align-items: flex-start;
    width: 100%;
    border-radius: 3px;
    margin-top: 20px
  }
  .p-flex_text dt {
    display: block;
    padding: 8px 15px;
    line-height: 1;
    width: 100%
  }
  .p-flex_text dd {
    display: block;
    padding: 8px 15px;
    line-height: 1.5;
    text-align: left
  }
}
.p-box_attempt .c-inner .c-text_large {
  font-size: 2.5rem;
  line-height: 1.3;
  font-weight: 700;
  text-align: center;
  background: #f8af16;
  color: #fff;
  padding: 10px;
  border-radius: 5px;
  margin-bottom: 20px
}
.c-text_large span {
  font-size: 1.6rem;
  font-weight: 400;
  display: block;
  margin-top: 10px
}
@media only screen and (max-width:750px) {
  .p-box_attempt .c-inner .c-text_large {
    font-size: 2rem;
    padding: 20px;
    border-radius: 3px;
    margin-bottom: 20px
  }
  .p-box_attempt .c-inner .c-text_large br {
    display: none
  }
  .c-text_large span {
    font-size: 1.3rem;
    margin-top: 10px
  }
}
.p-box_cost-performance {
  display: flex;
  margin-bottom: 300px
}
.p-box_cost-performance .row-text {
  width: 55%;
  position: relative;
  z-index: 2;
  padding-top: 80px
}
.p-box_cost-performance .row-text p {
  font-size: 1.5rem;
  line-height: 1.7
}
.p-box_cost-performance .row-text p + p {
  margin-top: 20px
}
.p-box_cost-performance .row-text .hl-attempt {
  text-align: left;
  line-height: 1.5;
  border-left: 5px solid #003b87;
  padding-left: 15px
}
.p-box_cost-performance .row-text .hl-attempt:after {
  display: none
}
.p-box_cost-performance .row-img {
  width: 45%;
  position: relative;
  z-index: 1;
  border: none
}
.p-box_cost-performance .row-img img {
  position: absolute;
  top: 0;
  right: 0
}
@media only screen and (max-width:750px) {
  .p-box_cost-performance {
    flex-direction: column;
    margin-bottom: 0
  }
  .p-box_cost-performance .row-text {
    width: 100%;
    position: relative;
    z-index: 2;
    padding: 0 0 40px
  }
  .p-box_cost-performance .row-text p {
    font-size: 1.4rem
  }
  .p-box_cost-performance .row-text p + p {
    margin-top: 15px
  }
  .p-box_cost-performance .row-text .hl-attempt {
    font-size: 2rem
  }
  .p-box_cost-performance .row-text .hl-attempt br {
    display: none
  }
  .p-box_cost-performance .row-img {
    width: 100%
  }
  .p-box_cost-performance .row-img::before {
    content: '';
    display: block;
    padding-top: 70%
  }
  .p-box_cost-performance .row-img img {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: auto
  }
}
.p-list_triplecheck {
  display: flex;
  justify-content: space-between
}
.p-list_triplecheck li {
  width: 30%
}
.p-list_triplecheck li + li::before {
  content: '';
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 0 25px 20px;
  border-color: transparent transparent transparent #ddd;
  left: -12.5%;
  top: calc(50% - 25px)
}
@media only screen and (max-width:750px) {
  .box-triplecheck > div {
    display: flex;
    padding-left: 20px
  }
  .p-list_triplecheck {
    width: 90%;
    flex-direction: column
  }
  .p-list_triplecheck li {
    width: 100%
  }
  .p-list_triplecheck li + li {
    margin-top: 30px
  }
  .p-list_triplecheck li + li::before {
    border-width: 20px 25px 0 25px;
    border-color: #ddd transparent transparent transparent;
    top: -28px;
    left: calc(50% - 25px)
  }
}
.triplecheck-item {
  background: #d5d5f3;
  display: flex;
  justify-content: center;
  padding: 20px 0;
  text-align: center;
  position: relative;
  border-radius: 5px
}
.triplecheck-item:nth-of-type(2) {
  background: #31a2b4;
  color: #fff
}
.triplecheck-item:nth-of-type(3) {
  background: #003b87;
  color: #fff
}
@media only screen and (max-width:750px) {
  .triplecheck-item {
    display: flex;
    padding: 10px 0;
    border-radius: 3px
  }
}
.c-system {
  padding-left: 32.5%;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 700;
  margin-top: 5px
}
.c-system span::before {
  content: '';
  width: 100%;
  padding-top: 8px;
  display: block;
  border: 3px solid #2e3b4c;
  border-top: none;
  margin-bottom: 10px
}
.c-system span {
  color: #003b87
}
@media only screen and (max-width:750px) {
  .c-system {
    padding: 0;
    font-size: 1.3rem;
    margin: 0 0 0 5px;
    display: flex;
    align-items: flex-end
  }
  .c-system span::before {
    display: none
  }
  .c-system span::after {
    content: '';
    width: 100%;
    padding-left: 6px;
    display: block;
    border: 2px solid #2e3b4c;
    border-left: none;
    margin: 20% 5px 0 0
  }
  .c-system span {
    color: #003b87;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
    display: flex;
    flex-direction: column
  }
}
.triplecheck-item .department {
  margin: 0 0 8px;
  text-align: center;
  padding: 2px 15px;
  background: #fff;
  border-radius: 15px;
  font-size: 1.2rem;
  color: #2e3b4c;
  font-weight: 700
}
.triplecheck-item .step {
  width: 60px;
  height: 60px;
  position: absolute;
  left: -25px;
  top: -30px;
  background: #fff;
  border-radius: 50%;
  line-height: 1.1;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.2rem;
  flex-direction: column;
  border: 1px solid #2e3b4c;
  color: #2e3b4c
}
.triplecheck-item .step b {
  font-size: 2rem;
  display: block
}
.triplecheck-item h4 {
  font-size: 2.5rem;
  text-align: center;
  letter-spacing: .2em
}
.triplecheck-item p {
  margin-top: 10px
}
.p-box_baseball_bnr {
  margin: 0 auto
}
.p-notification_email {
  padding-top: 80px
}
.p-box_baseball_bnr img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto
}
img[height="1"], img[width="1"] {
  display: none
}
.p-box_mail_permission {
  max-width: 800px;
  padding: 40px;
  background: #fff;
  border: 1px solid #ced6e8;
  margin: 0 auto;
  border-radius: 5px;
  box-shadow: 0 2px 5px rgb(0 0 0 / 10%)
}
.p-box_mail_permission .c-read {
  font-size: 1.6rem;
  line-height: 2
}
@media only screen and (max-width:750px) {
  .p-box_mail_permission {
    margin: 30px auto;
    padding: 25px;
    border: 1px solid #ced6e8
  }
  .p-box_mail_permission .c-read {
    font-size: 1.4rem;
    line-height: 1.7;
    text-align: left
  }
  .p-box_mail_permission .c-read.-center {
    text-align: left
  }
}
.p-list_common {
  margin: 40px 0 0
}
.p-list_common * + li {
  margin-top: 10px
}
.p-list_common li .btn-function {
  max-width: 540px;
  margin: 0 auto
}
.p-box_agree_wide {
  border: 1px solid #ccd5e2;
  margin: 40px auto;
  border-radius: 5px;
  text-align: center
}
.p-box_agree_wide .c-text {
  padding: 20px;
  font-size: 1.5rem;
  line-height: 1.2;
  border-radius: 5px;
  background: #ebf1f8
}
.p-box_agree_wide .c-text a {
  display: inline-block;
  padding-right: 20px;
  background: url(../img/ico_blank.svg) 100% 50% no-repeat;
  background-size: 15px 15px;
  margin-right: 5px
}
.p-box_agree_wide .c-text a:hover {
  color: #3f80d4
}
.p-box_agree_wide .c-check {
  padding: 20px;
  font-size: 1.6rem;
  font-weight: 700;
  border-radius: 5px
}
.btn-function.-large {
  font-size: 1.8rem;
  padding: 20px 30px;
  max-width: 420px;
  width: auto
}
@media only screen and (max-width:750px) {
  .p-box_agree_wide {
    margin: 30px auto
  }
  .p-box_agree_wide .c-text {
    padding: 15px;
    font-size: 1.4rem;
    line-height: 1.5;
    text-align: left
  }
  .p-box_agree_wide .c-text a {
    display: inline;
    padding-right: 15px;
    background-size: 12px 12px
  }
  .p-box_agree_wide .c-check {
    padding: 20px;
    font-size: 1.4rem;
    font-weight: 700;
    border-radius: 5px
  }
  .btn-function.-large {
    font-size: 1.6rem;
    padding: 15px 20px;
    width: auto
  }
}
.w-frame_search {
  display: flex
}
.row-search_result {
  width: calc(100% - 450px)
}
.row-search_box {
  width: 340px;
  margin: 0 0 0 auto
}
@media only screen and (max-width:1100px) {
  .row-search_result {
    width: calc(100% - 400px)
  }
  .row-search_box {
    width: 300px;
    margin: 0 0 0 auto
  }
}
@media only screen and (max-width:900px) {
  .w-frame_search {
    flex-direction: column-reverse
  }
  .row-search_result {
    width: 100%
  }
  .row-search_box {
    width: 100%;
    margin-bottom: 10px
  }
}
.row-search_box .c-box_search {
  margin-bottom: 30px
}
.row-search_box .c-read {
  font-size: 1.5rem
}
.box-sticky {
  position: sticky;
  top: 30px
}
.row-search_box input[type="text"].p-input_search {
  padding: 15px 15px 15px 45px;
  font-size: 16px;
  border-radius: 5px
}
.row-search_box .ico-search {
  top: 13px
}
@media only screen and (max-width:900px) {
  .row-search_box .c-box_search {
    margin-bottom: 15px
  }
  .row-search_box .c-read {
    display: none
  }
  .row-search_box input[type="text"].p-input_search {
    font-size: 15px
  }
}
.p-text_counter {
  font-size: 1.6rem;
  margin-bottom: 40px
}
.p-text_counter b {
  display: inline-block;
  margin-top: 30px;
  font-size: 2rem
}
@media only screen and (max-width:900px) {
  .p-text_counter {
    font-size: 1.5rem;
    line-height: 1.4;
    padding: 12px 0;
    text-align: center;
    border-bottom: 1px solid #c9cedd;
    margin-bottom: 30px
  }
  .p-text_counter b {
    margin-top: 10px
  }
}
.box-no_hit .hl-middle {
  font-size: 1.8rem
}
.box-no_hit .p-list_circle {
  font-size: 1.6rem;
  margin-top: 20px
}
.box-no_hit .p-list_circle li + li {
  margin-top: 10px
}
.p-list_search-result {
  padding: 0 0 20px
}
.result-item {
  margin-bottom: 30px
}
.result-item .target-url {
  display: flex;
  flex-direction: column-reverse;
  text-decoration: none
}
.result-item .page-url {
  font-size: 1.4rem;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-bottom: 12px
}
.result-item .page-title {
  font-size: 2rem;
  color: #1a0dab;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.1;
  margin-bottom: 8px
}
.result-item .target-url:hover .page-title {
  text-decoration: underline
}
.result-item .page-discription {
  font-size: 1.4rem;
  line-height: 1.7;
  color: #555;
  max-width: 1000px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2
}
@media only screen and (max-width:900px) {
  .result-item {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #e5e5e5
  }
  .result-item .page-url {
    font-size: 1.2rem
  }
  .result-item .page-title {
    line-height: 1.4;
    width: 100%;
    text-overflow: initial;
    white-space: normal;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    margin-bottom: 10px
  }
  .result-item .page-discription {
    font-size: 1.3rem;
    line-height: 1.6;
    -webkit-line-clamp: 3
  }
  .row-search_result .p-pagenation {
    display: flex;
    margin-top: 10px
  }
}
@media only screen and (max-width:750px) {
  .row-search_result .p-pagenation {
    font-size: 1.3rem;
    margin-top: 10px
  }
  .p-pagenation > a, .p-pagenation > span {
    padding: 10px
  }
}
.l-form.p-flex:not(.-confirm) .box-radio {
  padding: 8px 10px;
  border-radius: 2px;
  border: 1px solid transparent
}
@media only screen and (max-width:750px) {
  .l-form.p-flex .box-radio {
    flex-direction: column;
    align-items: flex-start
  }
  .l-form.p-flex:not(.-confirm) .box-radio * + .p-radio {
    margin-top: 20px
  }
}
.box-radio.-error {
  background: #fff5f5;
  border-color: #dc4748
}
.box-radio input[type="radio"]:not(:checked):disabled + span {
  display: none !important
}
.is-nodisplay {
  display: none !important
}
.group-prefecture {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}
.p-prefecture_all {
  font-size: 1.7rem;
  margin: 8px 0 24px;
  border-bottom: 1px solid #ddd;
  padding-bottom: 12px;
  display: none;
}
.p-prefecture_all.-disabled, .group-prefecture.-disabled {
  opacity: .5;
}
.group-prefecture.-disabled label, .group-prefecture.-disabled input {
  pointer-events: none;
  cursor: default;
}
.group-prefecture.-checked .p-checkbox input:not(:checked) {
  pointer-events: none;
}
.group-prefecture.-checked .p-checkbox input:not(:checked) + .ico {
  opacity: .5;
}
/* 230828 SEO対策追記 */
.w-detail_column .row-content > .box-contentslist {
  border: 1px dashed rgba(206, 214, 231, 1);
  background: rgba(206, 214, 231, .1);
  padding: 25px;
  border-radius: 4px;
  flex-direction: column;
  margin-bottom: 30px;
}
@media only screen and (max-width:700px) {
  .w-detail_column .row-content > .box-contentslist {
    padding: 15px 10px;
  }
}
.p-case_article .box-contentslist h2 {
  margin: 0;
  color: #003b87;
  font-size: clamp(1.4rem, 1.8vw, 1.6rem);
  font-weight: 700;
}
.p-case_article .box-contentslist .list-page_anchor {
  margin-bottom: 0;
}
@media only screen and (max-width:700px) {
  .p-case_article .box-contentslist .list-page_anchor {
    margin-top: 10px;
  }
}
.box-contentslist .list-page_anchor li {
  display: flex;
}
.box-contentslist .list-page_anchor li::before {
  content: '・';
  display: block;
  font-size: 3rem;
  line-height: 2rem;
  font-weight: 700;
  color: rgba(166, 179, 206, 1);
}
.box-contentslist .list-page_anchor a {
  text-decoration: none;
  transition: .3s all;
}
.box-contentslist .list-page_anchor a:hover {
  color: #004196;
}
.box-contentslist .list-page_anchor a .-ico {
  display: flex;
}
.box-contentslist .list-page_anchor a .-ico::after {
  content: '';
  display: block;
  padding-left: 16px;
  height: 16px;
  background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23003b87%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20class%3D%22ai%20ai-CircleChevronDown%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22M8%2010.5l4%204%204-4%22%2F%3E%3C%2Fsvg%3E') 50% 50% no-repeat;
  background-size: cover;
  margin: 1px 0 0 2px;
}
.box-contentslist .list-page_anchor * + li {
  margin-top: 10px;
}
.hl-update {
  font-size: clamp(1.3rem, 1.8vw, 1.6rem);
  color: #999;
  margin-bottom: .5em;
}
.hl-update .-ico {
  display: flex;
  align-items: center;
}
.hl-update .-ico::before {
  content: '';
  display: block;
  width: clamp(1.3rem, 1.8vw, 1.6rem);
  aspect-ratio: 1/1;
  background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23999%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20class%3D%22ai%20ai-Pencil%22%3E%3Cpath%20d%3D%22M4.333%2016.048L16.57%203.81a2.56%202.56%200%200%201%203.62%203.619L7.951%2019.667a2%202%200%200%201-1.022.547L3%2021l.786-3.93a2%202%200%200%201%20.547-1.022z%22%2F%3E%3Cpath%20d%3D%22M14.5%206.5l3%203%22%2F%3E%3C%2Fsvg%3E') 50% 50% no-repeat;
  background-size: cover;
  margin: 0 8px 0 0;
}
.l-crumb_sp {
  padding: 20px 5%;
}
@media only screen and (min-width:701px) {
  .l-crumb_sp {
    display: none;
  }
}
.p-box_link_around {
  margin-top: 50px
}
.p-box_link_around .hl-content_large {
  margin-bottom: 20px;
  font-size: 2rem;
}
.p-box_link_around .p-toggle_box .c-toggle-parent {
  padding: 0 0 0 20px;
  font-size: 1.6rem;
}
.p-box_link_around .p-toggle_box .c-toggle-child {
  padding: 20px 20px 5px;
}
@media only screen and (max-width:750px) {
  .p-box_link_around.-neighborhood .p-toggle_box .c-toggle-child {
    padding: 20px 20px 5px
  }
}
.p-box_link_around.-neighborhood .p-toggle_box .c-toggle-child .-flex {
  gap: 0 10px;
  flex-direction: row;
}
.c-toggle-parent.-in_btn {
  display: flex;
  align-items: center;
}
.c-toggle-parent.-in_btn .btn-trrige {
  position: relative;
  width: 64px;
  height: 50px;
  cursor: pointer;
  transition: .2s all;
}
.c-toggle-parent.-in_btn .btn-trrige:hover {
  opacity: .7;
}
.c-toggle-parent.-in_btn .btn-trrige::before {
  content: '';
  display: block;
  width: 16px;
  height: 2px;
  background: #333;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-toggle-parent.-in_btn .btn-trrige::after {
  content: '';
  display: block;
  width: 16px;
  height: 2px;
  background: #333;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-90deg);
  transition: .2s all;
}
.c-toggle-parent.-in_btn.-active .btn-trrige::after {
  transform: translate(-50%, -50%) rotate(0);
}
.p-list_checkbox.-flex > li a {
  transition: .2s;
}
.p-list_checkbox.-flex > li a:hover {
  text-decoration: none;
  color: #3f80d4;
}
/* 23.05.23 担当者選択モーダル ----------------------------- */
.mdl-userselect_agent .inner {
  padding: 50px 60px;
  height: auto;
}
.mdl-userselect_agent .c-title {
  font-size: 2.2rem;
  text-align: center;
  margin-bottom: 1.5rem;
  font-weight: bold;
}
.mdl-userselect_agent p {
  font-size: 1.6rem;
  text-align: center;
  padding-top: 40px;
  border-top: 1px solid #ccc;
}
.mdl-userselect_agent .btn-close {
  right: -55px;
}
* + .c-list_userselect {
  margin-top: 20px;
}
.c-list_userselect * + li {
  margin-top: 15px;
}
.c-btn_select {
  font-size: 2rem;
  border: 1px solid #ddd;
  padding: 15px 25px;
  border-radius: 5px;
  display: flex;
  transition: .2s;
  width: 100%;
  background: #fff;
  justify-content: space-between;
}
.c-btn_select .ico {
  display: flex;
  align-items: center;
  gap: 15px;
}
.c-btn_select .ico::before {
  content: '';
  display: flex;
  width: 20px;
  height: 20px;
  background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%23ddd%22%20stroke-width%3D%222%22%20class%3D%22ai%20ai-TriangleRightFill%22%3E%3Cpath%20d%3D%22M8%206a1%201%200%200%201%201.6-.8l8%206a1%201%200%200%201%200%201.6l-8%206A1%201%200%200%201%208%2018V6z%22%2F%3E%3C%2Fsvg%3E') 50% 50% no-repeat;
  background-size: cover;
  transition: .2s
}
.c-btn_select:not(.-active):hover .ico::before, .c-btn_select.-active .ico::before {
  background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22%2300f%22%20stroke-width%3D%222%22%20class%3D%22ai%20ai-TriangleRightFill%22%3E%3Cpath%20d%3D%22M8%206a1%201%200%200%201%201.6-.8l8%206a1%201%200%200%201%200%201.6l-8%206A1%201%200%200%201%208%2018V6z%22%2F%3E%3C%2Fsvg%3E') 50% 50% no-repeat;
  background-size: cover;
}
.c-btn_select:hover, .c-btn_select.-active {
  border-color: #00f;
  background: #f5f5f5;
}
.c-license_number_mdl {
  display: flex;
  align-items: center;
  margin: 0 auto 15px;
  gap: 20px;
}
.c-license_number .label-error {
  width: 100%;
}
.c-license_number_mdl dt {
  background: #003b87;
  color: #fff;
  font-size: 1.4rem;
  padding: 5px 15px;
}
.c-license_number_mdl dd {
  font-size: 1.7rem;
  font-weight: bold;
}
.c-license_number_mdl.-error .label-error {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  background: #fff5f5;
  transition: .2s;
  padding: 4px 0;
  margin-top: 0;
}
.c-license_number_mdl.-error .label-error:hover {
  background: #ffdddd;
}
.c-license_number_mdl.-error .label-error .ico {
  display: inline-flex;
  gap: 4px;
}
.c-license_number_mdl.-error .label-error .ico::before {
  content: '';
  display: block;
  background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23dc4748%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20class%3D%22ai%20ai-Pencil%22%3E%3Cpath%20d%3D%22M4.333%2016.048L16.57%203.81a2.56%202.56%200%200%201%203.62%203.619L7.951%2019.667a2%202%200%200%201-1.022.547L3%2021l.786-3.93a2%202%200%200%201%20.547-1.022z%22%2F%3E%3Cpath%20d%3D%22M14.5%206.5l3%203%22%2F%3E%3C%2Fsvg%3E') 50% 50% no-repeat;
  background-size: cover;
  width: 14px;
  height: 14px;
}
/* 23.05.23 担当者選択モーダル ----------------------------- */
/* ダウンロード機能 */
.box-download_property {
  display: flex;
  border: 1px solid #2e3b4c;
  border-top: none;
  background: #f0f3f8;
  align-items: center;
}
.p-list_dl_check {
  display: flex;
  padding: 12px 15px;
  font-size: 1.3rem;
  gap: 10px;
  line-height: 1;
}
.box-download_property.-column {
  flex-direction: column;
  border: 1px solid #2e3b4c;
  border-radius: 2px;
  margin-bottom: 15px;
}
.-column .p-list_dl_check {
  flex-wrap: wrap;
  padding: 15px 10px;
  font-size: 1.25rem;
  gap: 15px 8px;
    width: 100%;
}
.-column .p-list_dl_check li {
  width: calc((100% - 8px) / 2);
}
.p-list_dl_check > li > label {
  position: relative;
}
.p-list_dl_check > li > label span {
  cursor: pointer
}
.p-list_dl_check > li > label input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.p-list_dl_check > li > label input + span {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  font-weight: bold;
}
.p-list_dl_check > li > label input + span::before {
  content: '';
  display: block;
 padding-left: 16px;
  height: 16px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 3px;
}
.p-list_dl_check > li > label input:disabled + span {
  color: #ccc;
  cursor: default;
}
.p-list_dl_check > li > label input:disabled + span::before {
  border-color: #bcc9de;
  background: #f0f3f8 url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%f0f3f8%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20class%3D%22ai%20ai-Check%22%3E%3Cpath%20d%3D%22M4%2012l6%206L20%206%22%2F%3E%3C%2Fsvg%3E')50% 50% no-repeat;
  background-size: 12px 12px;
}
.p-list_dl_check > li > label input:checked + span::before {
  border-color: #3f80d4;
  background: #3f80d4 url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20class%3D%22ai%20ai-Check%22%3E%3Cpath%20d%3D%22M4%2012l6%206L20%206%22%2F%3E%3C%2Fsvg%3E')50% 50% no-repeat;
  background-size: 12px 12px;
}
.p-list_dl_check > li > label:hover input:not(:disabled):not(:checked) + span {
  color: #003b87;
}
.p-list_dl_check > li > label:hover input:not(:disabled):not(:checked) + span::before {
  border-color: #003b87;
}
/* btn */
.btn_dl-doc {
  display: block;
  border: none;
  cursor: pointer;
  padding: 0 15px;
  background: #2e3b4c;
  color: #fff;
  font-size: 1.4rem;
  margin-left: auto;
  transition: .3s;
  border-bottom: 1px solid #224;
}
.btn_dl-doc:disabled {
  background: #bcc9de;
  pointer-events: none;
  border-bottom: 1px solid #bcc9de;
}
.btn_dl-doc:not(.-disabled):hover {
  opacity: .8;
  border-color: #2e3b4c;
}
.btn_dl-doc .ico {
  display: inline-flex;
  height: max(45px, 49px);
  justify-content: center;
  align-items: center;
  gap: 5px;
}
.btn_dl-doc .ico::after {
  content: '';
  display: block;
  width: 15px;
  height: 15px;
  background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20class%3D%22ai%20ai-Download%22%3E%3Cpath%20d%3D%22M12%2015V3m0%2012l-4-4m4%204l4-4%22%2F%3E%3Cpath%20d%3D%22M2%2017l.621%202.485A2%202%200%200%200%204.561%2021H19.439a2%202%200%200%200%201.94-1.515L22%2017%22%2F%3E%3C%2Fsvg%3E')50% 50% no-repeat;
  background-size: cover;
}
.box-download_property.-column .btn_dl-doc {
  margin-left: 0;
  width: 100%
}