@charset "UTF-8";
.tb-only,
.pc-only {
  display: none;
}

/*バーガーメニュー開いた時背景固定*/
body.fixed {
  width: 100%;
  height: 100%;
  position: fixed;
}

img {
  max-width: 100%;
  height: auto;
}

/*------------------------------------------------------------------------------
基本設定
------------------------------------------------------------------------------*/
body {
  -webkit-text-size-adjust: none;
}

div#wrap {
  width: 100%;
  margin: 0 auto;
}

.mt075 {
  margin-top: 0.75em;
}

.mb0 {
  margin-bottom: 0;
}

.mb075 {
  margin-bottom: 0.75em;
}

.ta-l {
  text-align: left;
}

.ta-c {
  text-align: center;
}

.ta-r {
  text-align: right;
}

.tc-w {
  color: #FFF;
}

/*------------------------------------------------------------------------------
ページトップへ
------------------------------------------------------------------------------*/
.backtotop {
  position: fixed;
  right: 10px;
  bottom: 80px;
  z-index: 9000;
  display: none;
  font-family: 'Jost', sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.5;
  text-align: center;
}
.backtotop a {
  display: block;
  width: 50px;
  height: 34px;
  position: relative;
  color: #FFF;
  background: #8d86b5;
  padding-top: 6px;
}
.backtotop a::after {
  display: block;
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 25px 16px 25px;
  border-color: transparent transparent #8d86b5 transparent;
  top: -16px;
  left: 0;
}

/*------------------------------------------------------------------------------
ヘッダー
------------------------------------------------------------------------------*/
header {
  width: 100%;
  background: #FFF;
  position: fixed;
  height: 68px;
  z-index: 100;
  top: 0;
  left: 0;
}
header .hdr-txt {
  font-size: 0.8rem;
  padding: 6px 60px 4px 10px;
  line-height: 1.3;
}
header .hdr-inr .logo {
  width: 205px;
  padding-left: 10px;
}
header .hdr-inr .hdr-nav-box .hdr-nav {
  height: 68px;
  /* アイコンがクリックされたら真ん中の線を透明にする */
  /* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
  /* アイコンがクリックされたらメニューを表示 */
}
header .hdr-inr .hdr-nav-box .hdr-nav .drawer-hidden {
  display: none;
}
header .hdr-inr .hdr-nav-box .hdr-nav .drawer-open {
  top: 0;
  right: 0px;
  display: flex;
  height: 68px;
  width: 60px;
  justify-content: center;
  align-items: center;
  position: absolute;
  z-index: 100;
  /* 重なり順を一番上にする */
  cursor: pointer;
  order: 1;
}
header .hdr-inr .hdr-nav-box .hdr-nav .drawer-open span,
header .hdr-inr .hdr-nav-box .hdr-nav .drawer-open span::before,
header .hdr-inr .hdr-nav-box .hdr-nav .drawer-open span::after {
  content: '';
  display: block;
  height: 2px;
  width: 20px;
  background: #21176e;
  transition: 0.5s;
  position: absolute;
}
header .hdr-inr .hdr-nav-box .hdr-nav .drawer-open span::before {
  bottom: 8px;
}
header .hdr-inr .hdr-nav-box .hdr-nav .drawer-open span::after {
  top: 8px;
}
header .hdr-inr .hdr-nav-box .hdr-nav #drawer-input:checked ~ .drawer-open span {
  background: rgba(255, 255, 255, 0);
}
header .hdr-inr .hdr-nav-box .hdr-nav #drawer-input:checked ~ .drawer-open span::before {
  bottom: 0;
  transform: rotate(45deg);
}
header .hdr-inr .hdr-nav-box .hdr-nav #drawer-input:checked ~ .drawer-open span::after {
  top: 0;
  transform: rotate(-45deg);
}
header .hdr-inr .hdr-nav-box .hdr-nav .global-nav {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 68px;
  left: 100%;
  /* メニューを画面の外に飛ばす */
  z-index: 99;
  background: #FFF;
  transition: .5s;
  overflow: auto;
  padding-bottom: 100px;
}
header .hdr-inr .hdr-nav-box .hdr-nav .global-nav ul {
  list-style: none;
  padding-left: 0;
}
header .hdr-inr .hdr-nav-box .hdr-nav .global-nav ul li {
  text-align: center;
  border-bottom: 1px solid #21176e;
}
header .hdr-inr .hdr-nav-box .hdr-nav .global-nav ul li a {
  color: #21176e;
  padding: 15px;
  display: block;
}
header .hdr-inr .hdr-nav-box .hdr-nav #drawer-input:checked ~ .global-nav {
  left: 0;
  /* メニューを画面に入れる */
}
header .hdr-inr .hdr-nav-box .hdr-nav .hdr-subnav {
  display: none;
}
header .hdr-inr .hdr-nav-box .hdr-reserv {
  width: 60px;
  height: 68px;
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
  line-height: 1.3;
  font-size: 1.4rem;
}
header .hdr-inr .hdr-nav-box .hdr-reserv a {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFF;
  background: #21176e;
  width: 100%;
  height: 100%;
  transition: all .2s ease;
}
header .hdr-inr .hdr-nav-box .hdr-reserv a:active {
  background: #3c3380;
}

/*------------------------------------------------------------------------------
フッター（下部固定）
------------------------------------------------------------------------------*/
footer {
  width: 100%;
  background: #353535;
  color: #FFF;
  padding: 20px;
}
footer .ftr-nav {
  margin-bottom: 10px;
}
footer .ftr-nav ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
footer .ftr-nav ul li {
  width: 47%;
  text-align: center;
  margin-bottom: 1em;
}
footer .ftr-nav ul li a {
  color: #FFF;
}
footer .ftr-nav ul li a:active {
  text-decoration: underline;
}
footer .ftr-nav ul .ftr-btn {
  margin-top: 10px;
  width: 80%;
}
footer .ftr-nav ul .ftr-btn a {
  display: block;
  padding: 8px 50px 8px 30px;
  border-radius: 8px;
  border: 1px solid #FFF;
  position: relative;
  transition: all .2s ease;
}
footer .ftr-nav ul .ftr-btn a:active {
  text-decoration: none;
  background: #4d4d4d;
}
footer .ftr-nav ul .ftr-btn a::before {
  display: block;
  content: "";
  position: absolute;
  top: 45.5%;
  right: 16px;
  width: 10px;
  height: 1px;
  background-color: #FFF;
  transform: translateY(-45.5%) rotate(25deg);
}
footer .ftr-nav ul .ftr-btn a::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 45.5%;
  right: 16px;
  width: 10px;
  height: 1px;
  background-color: #FFF;
  transform: translateY(45.5%) rotate(-25deg);
}
footer .ftr-info-box {
  padding-bottom: 20px;
}
footer .ftr-info-box .ftr-info-logo {
  width: 100%;
  margin: 4px auto 20px;
}
footer .ftr-copy-box {
  border-top: 1px solid #FFF;
  padding-top: 20px;
  text-align: left;
}
footer .ftr-copy-box .ftr-copy-txt {
  font-size: 1.3rem;
}
footer .ftr-copy-box .ftr-copy {
  font-size: 1.2rem;
}

/*------------------------------------------------------------------------------
メインイメージ
------------------------------------------------------------------------------*/
.hero-area {
  width: 100%;
  padding-top: 68px;
  position: relative;
}
.hero-area .hero-bgi-sp {
  height: 75vh;
  overflow: hidden;
}
.hero-area .hero-bgi-sp div {
  position: relative;
}
.hero-area .hero-bgi-sp div img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-area .hero-bgi-sp div p {
  color: #FFF;
  position: absolute;
  font-size: 2.6rem;
  line-height: 1.5;
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.5));
}
.hero-area .hero-bgi-sp div .hero-txt01 {
  top: 16px;
  left: 20px;
}
.hero-area .hero-bgi-sp div .hero-txt02 {
  top: 16px;
  left: 20px;
}
.hero-area .hero-bgi-sp div .hero-txt03 {
  top: 16px;
  left: 20px;
}
.hero-area .hero-bgi {
  display: none;
}
.hero-area .hero-goen {
  position: absolute;
  top: 69%;
  left: 50%;
  width: 90%;
  z-index: 2;
  transform: translateY(-69%) translateX(-50%);
  /*img {filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.4));}*/
}

/*------------------------------------------------------------------------------
トップページ
------------------------------------------------------------------------------*/
.top-main-ttl {
  color: #21176e;
  font-size: 3.4rem;
  text-align: center;
  font-family: 'Jost', sans-serif;
  font-weight: normal;
  letter-spacing: 0.05em;
}

/*Service
------------------------------------*/
.service-area {
  padding: 20px 0;
}
.service-area .service-txt {
  text-align: center;
  padding: 0 20px;
  margin-bottom: 50px;
}
.service-area .service-txt h1 {
  font-size: 3.0rem;
  color: #21176e;
}
.service-area .service-txt p {
  font-size: 1.8rem;
}
.service-area .service-txt p span {
  display: inline-block;
}
.service-area .service-box {
  border-top: 6px solid #df4643;
  position: relative;
  padding: 30px 0 0;
}
.service-area .service-box::after {
  display: block;
  content: "";
  position: absolute;
  top: -40px;
  left: 50%;
  width: 100px;
  height: 67px;
  transform: translateX(-50%);
  background-image: url("../img/service_ribbon.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100px 67px;
}
.service-area .service-box .service-content {
  padding: 10px 20px 20px;
}
.service-area .service-box .service-content .service {
  width: 100%;
  margin: 0 auto 30px;
  background-color: #FFF;
  box-shadow: 8px 8px 6px rgba(33, 23, 110, 0.1);
  border-radius: 12px;
  position: relative;
}
.service-area .service-box .service-content .service:nth-last-of-type(1) {
  margin-bottom: 0;
}
.service-area .service-box .service-content .service a {
  display: block;
  position: relative;
  color: #353535;
  width: 100%;
  height: 100%;
}
.service-area .service-box .service-content .service a h3 {
  display: inline-block;
  font-size: 1.9rem;
  color: #FFF;
  background-color: #21176e;
  border-radius: 0 8px 8px 0;
  text-align: center;
  width: 130px;
  position: absolute;
  top: 12px;
  left: 0;
  z-index: 2;
}
.service-area .service-box .service-content .service a .service-img {
  border-radius: 12px 12px 0 0;
  overflow: hidden;
}
.service-area .service-box .service-content .service a .service-img img {
  width: 100%;
  height: auto;
  border-radius: 12px 12px 0 0;
  transition: all .3s ease-out;
}
.service-area .service-box .service-content .service a p {
  padding: 12px 30px 12px 15px;
}
.service-area .service-box .service-content .service a:active .service-img img {
  transform: scale(1.1);
}
.service-area .service-box .service-content .service .service-next {
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid #21176e;
}
.service-area .service-box .service-content .service .service-next::before {
  display: block;
  content: "";
  position: absolute;
  top: 41.5%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176e;
  transform: translateY(-41.5%) translateX(-50%) rotate(25deg);
}
.service-area .service-box .service-content .service .service-next::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 41.5%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176e;
  transform: translateY(41.5%) translateX(-50%) rotate(-25deg);
}

/*Information
------------------------------------*/
.info-area {
  padding: 20px 0;
  background-color: #eeedf4;
}
.info-area .info-list-box {
  background-color: #FFF;
  border-radius: 12px;
  box-shadow: 8px 8px 6px rgba(33, 23, 110, 0.1);
  width: 90%;
  padding: 20px;
  margin: 10px auto 0;
}
.info-area .info-list-box .info-list {
  margin-bottom: 20px;
}
.info-area .info-list-box .info-list li {
  border-top: 1px solid #353535;
  padding: 15px 0;
}
.info-area .info-list-box .info-list li:nth-last-of-type(1) {
  border-bottom: 1px solid #353535;
}
.info-area .info-list-box .info-list li a {
  color: #353535;
}
.info-area .info-list-box .info-list li a .info-list-data {
  font-family: 'Jost', sans-serif;
  color: #21176e;
  display: block;
}
.info-area .info-list-box .info-list li a .info-list-ttl {
  display: block;
}
.info-area .info-list-box .info-list li a:active {
  text-decoration: underline;
}
.info-area .info-btn {
  text-align: right;
}
.info-area .info-btn a {
  color: #353535;
  display: inline-block;
  position: relative;
  padding-right: 42px;
}
.info-area .info-btn a:active {
  text-decoration: underline;
}
.info-area .info-btn a span {
  position: absolute;
  top: 50%;
  right: 0px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid #21176e;
  transform: translateY(-50%);
}
.info-area .info-btn a span::before {
  display: block;
  content: "";
  position: absolute;
  top: 43%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176e;
  transform: translateY(-43%) translateX(-50%) rotate(25deg);
}
.info-area .info-btn a span::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 43%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176e;
  transform: translateY(43%) translateX(-50%) rotate(-25deg);
}

/*Access
------------------------------------*/
.access-area {
  padding: 20px 0;
  background-color: #eeedf4;
}
.access-area .access-box {
  width: 90%;
  margin: 10px auto 0;
}
.access-area .access-box .access {
  width: 100%;
  background-color: #FFF;
  border-radius: 12px;
  box-shadow: 8px 8px 6px rgba(33, 23, 110, 0.1);
}
.access-area .access-box .access:nth-of-type(n+2) {
  margin-top: 30px;
}
.access-area .access-box .access .access-ttl {
  border-radius: 12px 12px 0 0;
  background-color: #8d86b5;
  color: #FFF;
  font-size: 2.0rem;
  padding: 6px 15px;
}
.access-area .access-box .access .access-map {
  height: 280px;
}
.access-area .access-box .access .access-info {
  padding: 10px 15px;
}

/*お問い合わせ・資料請求
------------------------------------*/
.contact-area {
  padding: 20px 0;
  background-color: #eeedf4;
}
.contact-area .contact-btn {
  width: 90%;
  height: 60px;
  line-height: 60px;
  margin: 0 auto;
  text-align: center;
  font-size: 1.8rem;
}
.contact-area .contact-btn a {
  background-color: #21176e;
  border-radius: 12px;
  display: block;
  color: #FFF;
  position: relative;
  transition: all .2s ease;
}
.contact-area .contact-btn a::before {
  display: block;
  content: "";
  position: absolute;
  top: 46.5%;
  right: 20px;
  width: 10px;
  height: 1px;
  background-color: #FFF;
  transform: translateY(-46.5%) rotate(25deg);
}
.contact-area .contact-btn a::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 46.5%;
  right: 20px;
  width: 10px;
  height: 1px;
  background-color: #FFF;
  transform: translateY(46.5%) rotate(-25deg);
}
.contact-area .contact-btn a:active {
  background-color: #332a7a;
}

/*------------------------------------------------------------------------------
階層ページ
------------------------------------------------------------------------------*/
/*共通
------------------------------------*/
.page-main {
  width: 100%;
  padding-top: 68px;
  position: relative;
}
.page-main h1 {
  position: absolute;
  top: 54%;
  left: 30px;
  color: #FFF;
  font-size: 3.2rem;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.8), 0 0 8px rgba(0, 0, 0, 0.6), 0 0 12px rgba(0, 0, 0, 0.4), 0 0 16px rgba(0, 0, 0, 0.2);
}
.page-main .page-mein-img {
  height: 200px;
  overflow: hidden;
}
.page-main .page-mein-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-content {
  padding: 20px;
}
.page-content .page-inr .page-nav {
  display: flex;
  justify-content: space-between;
  font-size: 1.1rem;
  text-align: center;
  margin-bottom: 20px;
}
.page-content .page-inr .page-nav .page-nav-down {
  width: 32%;
}
.page-content .page-inr .page-nav .page-nav-down a {
  display: block;
  position: relative;
  background: #21176E;
  border-radius: 10px;
  padding: 8px 0px;
  color: #FFF;
}
.page-content .page-inr .page-nav .page-nav-down a::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 8px;
  width: 6px;
  height: 1px;
  background-color: #FFF;
  transform: translateY(-50%) rotate(-115deg);
}
.page-content .page-inr .page-nav .page-nav-down a::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 50%;
  right: 6px;
  width: 6px;
  height: 1px;
  background-color: #FFF;
  transform: translateY(50%) rotate(115deg);
}
.page-content .page-inr .page-box {
  margin-bottom: 30px;
  /*.page-hl2 {
  	font-size: 2.4rem;
  	background-color: #21176e;
  	color: #FFF;
  	border-radius: 26px;
  	padding: 8px 20px;
  	margin-bottom: 10px;
  	line-height: 1.5;
  	>span {
  		font-size: 1.6rem;
  		display: block;
  		margin-top: 4px;
  	}
  }*/
}
.page-content .page-inr .page-box:nth-last-of-type(1) {
  margin-bottom: 0;
}
.page-content .page-inr .page-box .page-ttl-c {
  text-align: center;
  font-size: 2.8rem;
  color: #21176e;
  margin-bottom: 16px;
}
.page-content .page-inr .page-box .page-ttl-c > span {
  display: inline-block;
  border-bottom: 3px solid #21176e;
}
.page-content .page-inr .page-box .page-subbox {
  margin-bottom: 15px;
}
.page-content .page-inr .page-box .page-subbox:nth-last-of-type(1) {
  margin-bottom: 0;
}
.page-content .page-inr .page-box ul {
  padding-left: 1.5em;
  list-style: disc;
}
.page-content .page-inr .page-box ol {
  padding-left: 1.5em;
}
.page-content .page-inr .page-box ol.number {
  list-style: decimal;
}

/* ページ内ジャンプ */
.page-jump {
  padding-top: 68px;
  margin-top: -68px;
}

/* 注釈 */
.note {
  list-style: none !important;
  text-indent: -1em !important;
  padding-left: 1em !important;
}

/*ボタン*/
.btn {
  height: 60px;
  line-height: 60px;
  margin: 0 auto;
  text-align: center;
  font-size: 1.8rem;
}
.btn a {
  background-color: #21176e;
  border-radius: 12px;
  display: block;
  color: #FFF;
  position: relative;
  transition: all .2s ease;
  padding: 0 20px 0 10px;
}
.btn a::before {
  display: block;
  content: "";
  position: absolute;
  top: 46.5%;
  right: 20px;
  width: 10px;
  height: 1px;
  background-color: #FFF;
  transform: translateY(-46.5%) rotate(25deg);
}
.btn a::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 46.5%;
  right: 20px;
  width: 10px;
  height: 1px;
  background-color: #FFF;
  transform: translateY(46.5%) rotate(-25deg);
}
.btn a:hover {
  background-color: #332a7a;
}

/*会社情報
------------------------------------*/
.company-goen .company-goen-zu {
  margin: 0 auto 20px;
}
.company-goen .company-goen-txt {
  background-color: #E9E8F0;
  border-radius: 12px;
  box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.3);
  padding: 20px;
}
.company-goen .company-goen-txt > div {
  padding: 16px 0;
}
.company-goen .company-goen-txt > div + div {
  border-top: 1px solid #353535;
}
.company-goen .company-goen-txt > div h3 {
  color: #21176E;
}
.company-goen .company-goen-txt > div h3 .goen-txt-en {
  width: 90%;
  max-width: 280px;
  display: block;
}
.company-goen .company-goen-txt > div h3 .goen-txt-ja {
  font-size: 2.0rem;
}
.company-goen .company-goen-txt > div h3 br {
  display: none;
}
.company-goen .company-goen-txt > div:nth-of-type(1) {
  padding-top: 0;
}
.company-goen .company-goen-txt > div:nth-last-of-type(1) {
  padding-bottom: 0;
}

.company-info {
  border-bottom: 1px solid #353535;
}
.company-info dt {
  border-top: 1px solid #353535;
  padding: 16px;
  background-color: #E9E8F0;
}
.company-info dd {
  padding: 16px;
}

.company-access-box {
  margin: 10px auto 0;
}
.company-access-box .company-access {
  width: 100%;
  background-color: #FFF;
  border-radius: 12px;
  box-shadow: 8px 8px 6px rgba(33, 23, 110, 0.1);
}
.company-access-box .company-access:nth-of-type(n+2) {
  margin-top: 30px;
}
.company-access-box .company-access .company-access-ttl {
  border-radius: 12px 12px 0 0;
  background-color: #8d86b5;
  color: #FFF;
  font-size: 2.0rem;
  padding: 6px 15px;
}
.company-access-box .company-access .company-access-map {
  height: 280px;
}
.company-access-box .company-access .company-access-info {
  padding: 10px 15px;
}

/*借りたい人
------------------------------------*/
.rent-ttl {
  color: #21176E;
  font-size: 2.4rem;
  line-height: 1.5;
  margin-bottom: 8px;
}
.rent-ttl br {
  display: none;
}

.rent-box .rent-area {
  border-radius: 12px;
  background-color: #EEEDF4;
  box-shadow: 8px 8px 6px rgba(33, 23, 110, 0.1);
  color: #21176E;
  padding: 16px;
}
.rent-box .rent-area:nth-last-of-type(1) {
  margin-top: 20px;
}
.rent-box .rent-area > a {
  display: block;
  color: #21176E;
  position: relative;
}
.rent-box .rent-area > a:active img {
  opacity: 0.7;
}
.rent-box .rent-area h3 {
  font-size: 2.2rem;
  margin-bottom: 10px;
  position: relative;
  line-height: 1.5;
  display: inline-block;
  color: #21176E;
}
.rent-box .rent-area h3 span {
  position: absolute;
  bottom: 3px;
  right: -30px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid #21176E;
}
.rent-box .rent-area h3 span::before {
  display: block;
  content: "";
  position: absolute;
  top: 41.5%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176E;
  transform: translateY(-41.5%) translateX(-50%) rotate(25deg);
}
.rent-box .rent-area h3 span::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 41.5%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176E;
  transform: translateY(41.5%) translateX(-50%) rotate(-25deg);
}
.rent-box .rent-area p {
  line-height: 1.1;
  margin-bottom: 10px;
}
.rent-box .rent-area p > a {
  color: #21176E;
  text-decoration: underline;
}
.rent-box .rent-area p > a:hover {
  text-decoration: none;
}
.rent-box .rent-area img {
  width: 100%;
  height: auto;
  transition: all .2s ease;
}

.rent-tenant-box {
  border-radius: 12px;
  background-color: #EEEDF4;
  box-shadow: 8px 8px 6px rgba(33, 23, 110, 0.1);
}
.rent-tenant-box a {
  position: relative;
  border-radius: 8px;
  padding: 16px;
  color: #21176E;
  display: flex;
  flex-wrap: wrap;
}
.rent-tenant-box a .rent-tenant-img {
  order: 3;
  width: 80%;
  margin: 0 auto;
}
.rent-tenant-box a .rent-tenant-img img {
  width: 100%;
  height: auto;
  transition: all .2s ease;
}
.rent-tenant-box a:active .rent-tenant-img img {
  opacity: 0.7;
}
.rent-tenant-box a h3 {
  font-size: 2.2rem;
  width: 100%;
  order: 1;
}
.rent-tenant-box a p {
  order: 2;
  margin-bottom: 10px;
}
.rent-tenant-box a p br {
  display: none;
}
.rent-tenant-box a span {
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid #21176E;
}
.rent-tenant-box a span::before {
  display: block;
  content: "";
  position: absolute;
  top: 41.5%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176E;
  transform: translateY(-41.5%) translateX(-50%) rotate(25deg);
}
.rent-tenant-box a span::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 41.5%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176E;
  transform: translateY(41.5%) translateX(-50%) rotate(-25deg);
}

.rent-flow {
  margin-top: 10px;
}
.rent-flow > div {
  text-align: center;
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  color: #21176E;
  background-color: #EEEDF4;
  border-radius: 12px;
  line-height: 1.5;
  padding: 16px;
  position: relative;
  margin-bottom: 40px;
}
.rent-flow > div br {
  display: none;
}
.rent-flow > div::after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 15px 0 16px;
  border-color: #21176E transparent transparent transparent;
  position: absolute;
  left: 50%;
  bottom: -28px;
  transform: translateX(-50%);
  display: block;
  content: "";
}
.rent-flow > div:nth-last-of-type(1)::after {
  display: none;
}
.rent-flow > div > span {
  display: block;
  width: 100%;
}
.rent-flow > div > span > span {
  font-size: 1.5rem;
}

/*買いたい人
------------------------------------*/
.buysell-box .buysell-txt p {
  font-size: 1.8rem;
  margin-bottom: 0.75em;
}
.buysell-box .buysell-concierge img {
  border-radius: 12px;
}
.buysell-box .buysell-concierge a {
  transition: all .2s ease;
}
.buysell-box .buysell-concierge a:active {
  opacity: 0.7;
}

.buysell-flow-txt {
  font-size: 1.8rem;
}

.buysell-flow {
  margin-top: 10px;
}
.buysell-flow > div {
  text-align: center;
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  color: #21176E;
  background-color: #FFF;
  border-radius: 12px;
  line-height: 1.5;
  padding: 16px;
  position: relative;
  margin-bottom: 40px;
}
.buysell-flow > div br {
  display: none;
}
.buysell-flow > div::after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 15px 0 16px;
  border-color: #21176E transparent transparent transparent;
  position: absolute;
  left: 50%;
  bottom: -28px;
  transform: translateX(-50%);
  display: block;
  content: "";
}
.buysell-flow > div:nth-last-of-type(1)::after {
  display: none;
}
.buysell-flow > div > span {
  display: block;
  width: 100%;
}
.buysell-flow > div > span > span {
  font-size: 1.5rem;
}

.buysell-qa {
  margin-top: 10px;
}
.buysell-qa .buysell-qa-q {
  position: relative;
  font-weight: bold;
  padding-left: 50px;
  font-size: 1.8rem;
}
.buysell-qa .buysell-qa-q::before {
  display: block;
  content: "Q";
  position: absolute;
  top: 0;
  left: 0px;
  width: 40px;
  height: 40px;
  font-family: 'Jost', sans-serif;
  background-color: #21176E;
  color: #FFF;
  text-align: center;
  border-radius: 20px;
  line-height: 1.45;
  font-size: 2.8rem;
}
.buysell-qa .buysell-qa-a {
  position: relative;
  padding-left: 50px;
  padding-bottom: 15px;
  margin-bottom: 15px;
  margin-top: 10px;
  border-bottom: 1px solid #353535;
}
.buysell-qa .buysell-qa-a::before {
  display: block;
  content: "A";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 40px;
  height: 40px;
  font-family: 'Jost', sans-serif;
  background-color: #DF4643;
  color: #FFF;
  text-align: center;
  border-radius: 20px;
  line-height: 1.45;
  font-size: 2.8rem;
}
.buysell-qa .buysell-qa-a:nth-last-of-type(1) {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.buysell-consul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 10px;
}
.buysell-consul > div {
  width: 48%;
  text-align: center;
  color: #21176E;
  background-color: #FFF;
  border-radius: 12px;
  padding: 20px;
}
.buysell-consul > div:nth-of-type(n+3) {
  margin-top: 10px;
}
.buysell-consul > div img {
  width: 60%;
  display: block;
  margin: 0 auto 8px;
}
.buysell-consul > div span {
  font-size: 1.8rem;
}

/*.buysell-search-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 30px;
	>div {
		width: 46%;
		text-align: center;
		line-height: 1.5;
		&:nth-of-type(n+3) {
			margin-top: 20px;
		}
		a {
			display: block;
			padding: 15px 10px;
			color: #21176E;
			background-color: #EEEDF4;
			border-radius: 12px;
			box-shadow: 8px 8px 6px rgba(33, 23, 110, 0.1);
			&:hover {
				img {transform: scale(1.05);}
			}
			img {
				width: 70px;
				display: block;
				margin: 0 auto 12px;
				transition: all .3s ease-out;
			}
			span {
				font-size: 1.8rem;
			}
		}
	}
}*/
.buysell-ttl {
  text-align: center;
  font-size: 2.2rem;
  color: #21176E;
  line-height: 1.5;
}

.buysell-note {
  margin-top: 20px;
  text-indent: -1em;
  padding-left: 1em;
}

.buysell-search .buysell-search-area {
  border-radius: 12px;
  background-color: #EEEDF4;
  box-shadow: 8px 8px 6px rgba(33, 23, 110, 0.1);
}
.buysell-search .buysell-search-area:nth-last-of-type(1) {
  margin-top: 20px;
}
.buysell-search .buysell-search-area a {
  display: block;
  padding: 16px;
  color: #21176E;
  position: relative;
}
.buysell-search .buysell-search-area a h3 {
  font-size: 2.2rem;
  margin-bottom: 10px;
  position: relative;
  line-height: 1.5;
  display: inline-block;
}
.buysell-search .buysell-search-area a h3 span {
  position: relative;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid #21176E;
  display: inline-block;
  margin-bottom: -5px;
  margin-left: 4px;
}
.buysell-search .buysell-search-area a h3 span::before {
  display: block;
  content: "";
  position: absolute;
  top: 41.5%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176E;
  transform: translateY(-41.5%) translateX(-50%) rotate(25deg);
}
.buysell-search .buysell-search-area a h3 span::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 41.5%;
  left: 50%;
  width: 10px;
  height: 1px;
  background-color: #21176E;
  transform: translateY(41.5%) translateX(-50%) rotate(-25deg);
}
.buysell-search .buysell-search-area a h3 br {
  display: none;
}
.buysell-search .buysell-search-area a img {
  width: 100%;
  height: auto;
  transition: all .2s ease;
}
.buysell-search .buysell-search-area a:active img {
  opacity: 0.7;
}

/*オーナー様へ
------------------------------------*/
.owner-txt {
  font-size: 1.8rem;
}
.owner-txt p {
  margin-bottom: 0.75em;
}
.owner-txt p br {
  display: none;
}

.owner-plan-box {
  margin-bottom: 20px;
}
.owner-plan-box .owner-plan {
  background: #FFF;
  border-radius: 12px;
  width: 100%;
  padding: 15px;
}
.owner-plan-box .owner-plan:nth-of-type(n+2) {
  margin-top: 20px;
}
.owner-plan-box .owner-plan h3 {
  font-size: 2.0rem;
  color: #21176E;
}
.owner-plan-box .owner-plan .owner-plan-img {
  margin: 8px auto;
}
.owner-plan-box .owner-plan .owner-plan-point h4 {
  color: #21176E;
  margin-top: 1em;
}

.owner-kawaraban {
  display: flex;
  flex-wrap: wrap;
}
.owner-kawaraban > div {
  width: 47%;
  margin: 0 6% 0 0;
}
.owner-kawaraban > div:nth-of-type(2n) {
  margin-right: 0;
}
.owner-kawaraban > div:nth-of-type(n+3) {
  margin-top: 20px;
}
.owner-kawaraban > div a {
  color: #21176E;
  display: block;
}
.owner-kawaraban > div a:active .owner-kawara-img img {
  transform: scale(1.1);
}
.owner-kawaraban > div a .owner-kawara-img {
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0px 0px 8px rgba(33, 23, 110, 0.3);
  margin-bottom: 5px;
}
.owner-kawaraban > div a .owner-kawara-img img {
  transition: all .3s ease-out;
}
.owner-kawaraban > div a .owner-kawara-date {
  font-family: 'Jost', sans-serif;
}

.owner-mngnt-box .owner-mngnt-img .owner-mngnt-img-ba {
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
}
.owner-mngnt-box .owner-mngnt-img .owner-mngnt-img-ba > div {
  width: 45%;
  position: relative;
}
.owner-mngnt-box .owner-mngnt-img .owner-mngnt-img-ba > div::after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 0 15px 16px;
  border-color: transparent transparent transparent #21176E;
  position: absolute;
  top: 50%;
  right: -18%;
  transform: translateY(-50%);
  display: block;
  content: "";
}
.owner-mngnt-box .owner-mngnt-img .owner-mngnt-img-ba > div:nth-last-of-type(1)::after {
  display: none;
}

/*タブ*/
.owner-tab-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  /* アクティブなタブ */
  /* ラジオボタン非表示 */
}
.owner-tab-wrap .owner-tab-label {
  color: #FFF;
  background: #B3B3B3;
  padding: 6px 10px;
  order: -1;
  width: 49%;
  border-radius: 12px 12px 0 0;
  text-align: center;
  font-size: 2.0rem;
}
.owner-tab-wrap .owner-tab-content {
  width: 100%;
  display: none;
  background: #EEEDF4;
  border-radius: 0 0 12px 12px;
  padding: 20px;
}
.owner-tab-wrap .owner-tab-content .owner-tab-txt {
  font-size: 1.7rem;
}
.owner-tab-wrap .owner-tab-content .owner-tab-txt .owner-tab-txt-br {
  display: none;
}
.owner-tab-wrap .owner-tab-content .owner-example {
  font-size: 2.0rem;
  display: flex;
  align-items: center;
  color: #21176E;
  margin-bottom: 8px;
}
.owner-tab-wrap .owner-tab-content .owner-example span {
  background-color: #8D86B5;
  display: inline-block;
  border-radius: 8px;
  color: #FFF;
  padding: 4px 10px;
  font-size: 1.6rem;
  margin-right: 0.7em;
}
.owner-tab-wrap .owner-tab-switch:checked + .owner-tab-label {
  background: #21176E;
}
.owner-tab-wrap .owner-tab-switch:checked + .owner-tab-label + .owner-tab-content {
  display: block;
}
.owner-tab-wrap .owner-tab-switch {
  display: none;
}

/*法人の方へ
------------------------------------*/
.corp-maintxt {
  font-size: 2.0rem;
  text-align: center;
}
.corp-maintxt span {
  display: inline-block;
}

.corp-service {
  background-color: #eeedf4;
  border-radius: 12px;
  padding: 20px;
}
.corp-service h2 {
  color: #332a7a;
  font-size: 2.8rem;
  text-align: center;
  margin-bottom: 10px;
  line-height: 1.5;
}
.corp-service .corp-service-box {
  display: flex;
  justify-content: space-between;
}
.corp-service .corp-service-box .corp-service-part {
  width: 60px;
  height: 60px;
  background-color: #332a7a;
  color: #FFF;
  text-align: center;
  border-radius: 50%;
  position: relative;
  line-height: 60px;
}
.corp-service .corp-service-box .corp-service-part span {
  font-size: 2.4rem;
}
.corp-service .corp-service-box .corp-service-part::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: -8px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 10.4px;
  border-color: transparent transparent transparent #332a7a;
  transform: translateY(-50%);
}
.corp-service .corp-service-box .corp-service-txt {
  width: calc(100% - 80px);
}
.corp-service .corp-service-box .corp-service-txt h3 {
  font-size: 2.0rem;
  line-height: 1.5;
}
.corp-service .corp-service01 {
  margin-bottom: 20px;
}
.corp-service .corp-service01 .corp-service-img > div {
  margin-top: 20px;
}
.corp-service .corp-service02 > div {
  margin-bottom: 15px;
}
.corp-service .corp-service02 > div:nth-last-of-type(1) {
  margin-bottom: 0;
}

.corp-partner {
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 20px 0;
  text-align: center;
}
.corp-partner h3 {
  font-size: 2.0rem;
  line-height: 1.5;
  margin-bottom: 10px;
}
.corp-partner ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  list-style: none !important;
}
.corp-partner ul li {
  width: 100%;
  margin: 0 0 0.75em;
}

.corp-contact {
  text-align: center;
  line-height: 1.3;
}
.corp-contact div {
  font-size: 3.6rem;
  font-family: 'Jost', sans-serif;
}
.corp-contact div a {
  color: #DF4643;
}

/*入居者様へ
------------------------------------*/
.resid-ttl > span > span {
  font-size: 1.8rem;
  display: block;
  padding-bottom: 10px;
}

.resid-maintxt {
  text-align: center;
}
.resid-maintxt h3 {
  font-size: 2.2rem;
  margin-bottom: 20px;
}
.resid-maintxt p {
  font-size: 1.8rem;
  text-align: left;
}
.resid-maintxt .resid-free {
  margin-top: 20px;
  line-height: 1.2;
}
.resid-maintxt .resid-free h4 {
  font-size: 1.8rem;
}
.resid-maintxt .resid-free .resid-free-number {
  font-size: 4.2rem;
  font-family: 'Jost', sans-serif;
}
.resid-maintxt .resid-free .resid-free-number > a {
  color: #DF4643;
}

.resid-support > div {
  background-color: #EEEDF4;
  border-radius: 12px;
  padding: 16px;
  position: relative;
  margin-bottom: 40px;
}
.resid-support > div::after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 15px 0 16px;
  border-color: #21176E transparent transparent transparent;
  position: absolute;
  left: 50%;
  bottom: -28px;
  transform: translateX(-50%);
  display: block;
  content: "";
}
.resid-support > div:nth-last-of-type(1)::after {
  display: none;
}
.resid-support > div h3 {
  font-size: 1.5em;
  color: #21176E;
}
.resid-support .resid-spt01 .resid-spt-free {
  line-height: 1.2;
  font-size: 1.8rem;
}
.resid-support .resid-spt01 .resid-spt-free a {
  font-size: 4.2rem;
  font-family: 'Jost', sans-serif;
  color: #DF4643;
}
.resid-support .resid-spt03 {
  text-align: center;
  background-color: #8D86B5;
}
.resid-support .resid-spt03::after {
  display: none;
}
.resid-support .resid-spt03 h3 {
  width: 100%;
  line-height: 1.4;
  color: #FFF;
}
.resid-support .resid-spt03 h3 br {
  display: none;
}

.resid-dispatch > div {
  background-color: #EEEDF4;
  border-radius: 12px;
  padding: 16px 20px;
}
.resid-dispatch > div:nth-of-type(n+2) {
  margin-top: 20px;
}
.resid-dispatch > div .resid-dispatch-ttl {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
.resid-dispatch > div .resid-dispatch-ttl .resid-dispatch-ttl-icon {
  width: 60px;
  margin-right: 8px;
}
.resid-dispatch > div .resid-dispatch-ttl .resid-dispatch-ttl-icon img {
  width: 100%;
  height: auto;
}
.resid-dispatch > div .resid-dispatch-ttl h3 {
  font-size: 2.0rem;
  color: #21176E;
  line-height: 1.3;
  margin-bottom: 10px;
}
.resid-dispatch > div .resid-dispatch-ttl h3 > span {
  font-size: 3.0rem;
}
.resid-dispatch > div .resid-dispatch-txt {
  font-size: 1.8rem;
  margin-bottom: 10px;
}
.resid-dispatch > div .note {
  font-size: 1.4rem;
}

.resid-taiou {
  border: 2px solid #21176E;
  border-radius: 20px;
  padding: 20px;
}
.resid-taiou h3 {
  color: #21176e;
  font-size: 2.0rem;
  line-height: 1.5;
}
.resid-taiou ul li + li {
  margin-top: 0.75em;
}

.resid-app,
.resid-app-dl {
  display: none;
}

.resid-app-sp .resid-app-sp-img {
  margin-bottom: 10px;
}
.resid-app-sp .resid-app-sp-txt {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}
.resid-app-sp .resid-app-sp-txt h3 {
  width: 68%;
  font-size: 1.8rem;
  color: #21176e;
}
.resid-app-sp .resid-app-sp-txt > div {
  width: 30%;
}
.resid-app-sp .resid-app-sp-note {
  margin-bottom: 10px;
}
.resid-app-sp .resid-app-sp-note h4 {
  position: relative;
  margin-bottom: 5px;
}
.resid-app-sp .resid-app-sp-note h4::after {
  width: 100%;
  height: 1px;
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 0;
  background: #21176E;
}
.resid-app-sp .resid-app-sp-note h4 span {
  display: inline-block;
  color: #FFF;
  background: #21176e;
  padding: 8px 10px;
  z-index: 1;
  position: relative;
  line-height: 1.1;
}
.resid-app-sp .resid-app-sp-note ul {
  font-size: 1.4rem;
}
.resid-app-sp .resid-app-sp-flow-box {
  margin-top: 20px;
  margin-bottom: 20px;
}
.resid-app-sp .resid-app-sp-flow-box .resid-app-sp-flow {
  display: flex;
  justify-content: space-between;
  position: relative;
  margin-bottom: 40px;
}
.resid-app-sp .resid-app-sp-flow-box .resid-app-sp-flow::after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 15px 0 16px;
  border-color: #21176E transparent transparent transparent;
  position: absolute;
  left: 50%;
  bottom: -28px;
  transform: translateX(-50%);
  display: block;
  content: "";
}
.resid-app-sp .resid-app-sp-flow-box .resid-app-sp-flow:nth-last-of-type(1) {
  margin-bottom: 0;
}
.resid-app-sp .resid-app-sp-flow-box .resid-app-sp-flow:nth-last-of-type(1)::after {
  display: none;
}
.resid-app-sp .resid-app-sp-flow-box .resid-app-sp-flow .resid-app-sp-flow-img {
  width: 30%;
}
.resid-app-sp .resid-app-sp-flow-box .resid-app-sp-flow .resid-app-sp-flow-txt {
  width: 68%;
}
.resid-app-sp .resid-app-sp-flow-box .resid-app-sp-flow .resid-app-sp-flow-txt h4 {
  font-size: 1.8rem;
  color: #21176e;
}
.resid-app-sp .resid-app-sp-flow-box .resid-app-sp-flow .resid-app-sp-flow-txt p span {
  color: #DF4643;
}
.resid-app-sp .resid-app-sp-flow-box .resid-app-sp-flow .resid-app-sp-flow-txt ul {
  color: #DF4643;
}

/*お問い合わせ
------------------------------------*/
.contact-icon {
  width: 130px;
  margin: 15px auto;
}

.contact-area-btn > div {
  text-align: center;
}
.contact-area-btn > div:nth-of-type(n+2) {
  margin-top: 15px;
}
.contact-area-btn > div > a {
  background-color: #FFF;
  border: 2px solid #21176E;
  border-radius: 12px;
  display: block;
  color: #21176E;
  padding: 12px 16px;
  position: relative;
  transition: all .2s ease;
}
.contact-area-btn > div > a br {
  display: none;
}
.contact-area-btn > div > a::before {
  display: block;
  content: "";
  position: absolute;
  top: 44.5%;
  right: 14px;
  width: 14px;
  height: 1px;
  background-color: #21176E;
  transform: translateY(-44.5%) rotate(25deg);
}
.contact-area-btn > div > a::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 44.5%;
  right: 14px;
  width: 14px;
  height: 1px;
  background-color: #21176E;
  transform: translateY(44.5%) rotate(-25deg);
}
.contact-area-btn > div > a:active {
  background-color: #21176E;
  color: #FFF;
}
.contact-area-btn > div > a:active::before {
  background-color: #FFF;
}
.contact-area-btn > div > a:active::after {
  background-color: #FFF;
}

.contact-inhab {
  display: flex;
  justify-content: space-between;
}
.contact-inhab > div {
  width: 47%;
  text-align: center;
  font-size: 1.4rem;
}
.contact-inhab > div > a {
  background-color: #FFF;
  border: 2px solid #21176E;
  border-radius: 12px;
  display: block;
  color: #21176E;
  padding: 8px 0 20px;
  transition: all .2s ease;
  position: relative;
}
.contact-inhab > div > a:active {
  background-color: #EEEDF4;
}
.contact-inhab > div > a::before {
  display: block;
  content: "";
  position: absolute;
  bottom: 10px;
  left: 50%;
  width: 8px;
  height: 1px;
  background-color: #21176E;
  transform: translateX(-50%) translateY(-2px) rotate(25deg);
}
.contact-inhab > div > a::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 10px;
  left: 50%;
  width: 8px;
  height: 1px;
  background-color: #21176E;
  transform: translateX(-50%) translateY(2px) rotate(-25deg);
}
.contact-inhab > div > a img {
  width: 60%;
  height: auto;
  display: block;
  margin: 0 auto;
}

.contact-list .contact-list-box {
  background-color: #EEEDF4;
  border-radius: 20px;
  padding: 20px;
}
.contact-list .contact-list-box:nth-of-type(n+2) {
  margin-top: 20px;
}
.contact-list .contact-list-box h3 {
  color: #21176E;
  font-size: 2.0rem;
}
.contact-list .contact-list-box .tel span {
  font-size: 3.4rem;
  font-family: 'Jost', sans-serif;
  line-height: 1.3;
}
.contact-list .contact-list-box .tel span a {
  color: #000;
}

.contact-support-txt {
  text-align: center;
  font-size: 1.8rem;
  margin-bottom: 10px;
}

.contact-box .contact {
  background-color: #EEEDF4;
  border-radius: 15px;
  padding: 15px;
  margin: 0 2%;
}
.contact-box .contact:nth-of-type(n+2) {
  margin-top: 20px;
}
.contact-box .contact h3 {
  color: #21176E;
  font-size: 2.2rem;
  text-align: center;
  line-height: 1.3;
  margin-bottom: 10px;
}
.contact-box .contact p {
  text-align: center;
  margin-bottom: 15px;
  line-height: 1.3;
}
.contact-box .contact .contact-club {
  text-align: center;
  font-size: 3.0rem;
  color: #21176E;
}
.contact-box .contact .contact-free {
  line-height: 1.2;
  text-align: center;
}
.contact-box .contact .contact-free .contact-free-number {
  font-size: 4.0rem;
  font-family: 'Jost', sans-serif;
}
.contact-box .contact .contact-free .contact-free-number > a {
  color: #DF4643;
}
.contact-box .contact .contact-app {
  width: 96%;
  margin: 0 auto 10px;
}
.contact-box .contact .contact-app-dl a {
  padding-left: 20px;
  font-size: 16px;
}

/*お問い合わせフォーム*/
.form-box {
  border-bottom: 1px solid #353535;
}
.form-box dt {
  border-top: 1px solid #353535;
  padding: 10px 16px;
  background-color: #E9E8F0;
}
.form-box dt .rec {
  background: #DF4643;
  color: #FFFFFF;
  font-size: 1.3rem;
  padding: 4px 8px;
  line-height: 1.1;
}
.form-box dt .opt {
  background: #423A84;
  color: #FFFFFF;
  font-size: 1.3rem;
  padding: 4px 8px;
  line-height: 1.1;
}
.form-box dd {
  padding: 16px 0;
}
.form-box dd input,
.form-box dd textarea {
  padding: 10px;
  border: 1px solid #B3B3B3;
  border-radius: 8px;
}
.form-box dd input:focus,
.form-box dd textarea:focus {
  outline: solid 2px #908BB6;
}
.form-box dd input.contact-text,
.form-box dd textarea.contact-textarea,
.form-box dd input.contact-address {
  width: 100%;
}
.form-box dd input.contact-zipcode {
  width: 30%;
  margin-bottom: 15px;
}
.form-box dd .contact-checkbox p {
  margin-bottom: 0;
}
.form-box dd .contact-checkbox br {
  display: none;
}
.form-box dd .contact-checkbox span.wpcf7-list-item {
  display: block;
}
.form-box dd .contact-checkbox label span {
  padding: 8px 10px 8px 40px;
  position: relative;
  border: 1px solid #CCC;
  display: block;
  border-radius: 8px;
  margin-bottom: 10px;
}
.form-box dd .contact-checkbox label span::before {
  background: #FFFFFF;
  border: 2px solid #CCCCCC;
  border-radius: 2px;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 12px;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
}
.form-box dd .contact-checkbox label input[type="checkbox"]:checked + span {
  background: #21176e;
  border: 1px solid #21176e;
  color: #FFF;
}
.form-box dd .contact-checkbox label input[type="checkbox"]:checked + span::before {
  background: #FFF;
  border: 2px solid #FFF;
  border-radius: 2px;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 12px;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
}
.form-box dd .contact-checkbox label input[type="checkbox"]:checked + span::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 17px;
  width: 10px;
  height: 8px;
  border-bottom: solid 3px #21176e;
  border-left: solid 3px #21176e;
  transform: translateY(-60%) rotate(-45deg);
}

.wpcf7-btn-box {
  margin-top: 10px;
}
.wpcf7-btn-box input[type="submit"] {
  text-align: center;
  background-color: #21176e;
  border-radius: 12px;
  color: #FFF;
  padding: 15px 20px;
  width: 100%;
  margin-top: 15px;
}
.wpcf7-btn-box input[type="button"] {
  text-align: center;
  background-color: #B3B3B3;
  border-radius: 12px;
  color: #FFF;
  padding: 15px 20px;
  width: 100%;
  margin-top: 15px;
}

/*404
------------------------------------*/
.ttl404 {
  font-size: 2.4rem;
  color: #21176e;
  margin-bottom: 10px;
}

.txt404 {
  font-size: 1.8rem;
  margin-bottom: 15px;
}

/*------------------------------------------------------------------------------
投稿
------------------------------------------------------------------------------*/
/*投稿一覧
------------------------------------*/
.post-list {
  padding-left: 0 !important;
}
.post-list li {
  border-top: 1px solid #353535;
  padding: 15px 0;
  list-style: none;
}
.post-list li:nth-last-of-type(1) {
  border-bottom: 1px solid #353535;
}
.post-list li a {
  color: #353535;
}
.post-list li a span.post-list-date {
  font-family: 'Jost', sans-serif;
  color: #21176e;
  display: block;
}
.post-list li a span.post-list-ttl {
  display: block;
}
.post-list li a:active {
  text-decoration: underline;
}

/* ページャー*/
.pagination {
  display: flex;
  align-items: center;
  margin: 20px auto 0px;
  position: relative;
  width: 100%;
  line-height: 1.2;
  overflow-x: scroll;
  font-size: 1.3rem;
}
.pagination .current {
  background: #21176E;
  color: #FFF;
  padding: 8px 10px;
  margin: 4px;
  border: 1px solid #21176E;
  border-radius: 10px;
}
.pagination .dots {
  padding: 8px 10px;
}
.pagination > a {
  display: block;
  width: auto;
  margin: 4px;
  padding: 8px 10px;
  border: 1px solid #21176E;
  background-color: #FFFFFF;
  text-decoration: none;
  text-align: center;
  color: #21176E;
  border-radius: 10px;
  white-space: nowrap;
}
.pagination > a:hover {
  color: #FFF;
  border-color: #21176E;
  background: #21176E;
}

/*投稿（single）
------------------------------------*/
.post-data {
  color: #21176E;
  font-family: 'Jost', sans-serif;
  font-weight: bold;
}

.post-ttl {
  font-size: 2.8rem;
  margin-bottom: 20px;
  line-height: 1.5;
}

.post-box p {
  margin-bottom: 1em;
}
.post-box ul {
  padding-left: 1.5em;
  list-style: disc;
}
.post-box ol {
  padding-left: 1.5em;
  list-style: decimal;
}
.post-box h3 {
  font-size: 2.2rem;
  color: #21176E;
  border-bottom: 1px solid #21176E;
  margin-bottom: 10px;
  padding-bottom: 8px;
}
.post-box h4 {
  color: #21176E;
  font-size: 1.8rem;
}
.post-box a:hover {
  text-decoration: underline;
}
.post-box img {
  max-width: 100%;
  height: auto;
}
.post-box .post-img {
  width: 100%;
  margin-bottom: 1.5em;
}
