@charset "UTF-8";
/* CSS Document */

/* =====
 * LAYOUT :: ALL DEVICE
=================================================================== */
:root {
  --codate-color2: #0c6698;
  --codate-color3: #f18c47;
  --codate-color4: #3eabaa;
  --codate-grad2: linear-gradient(to right, #0c6698, #2583b8);
  --codate-grad3: linear-gradient(130deg, #b7cfdf 0%, #cfdee6 100%);
  --codate-grad4: linear-gradient(130deg, #eaf3f8 0%, #d7e4ee 100%);
  --codate-grad5: linear-gradient(to right, #efa048, #f37346);
  --codate-grad6: linear-gradient(130deg, #d6e2ea 0%, #ccdde9 100%);
  --codate-grad7: linear-gradient(130deg, #dfbfae 0%, #e6d8d0 100%);
  --codate-grad8: linear-gradient(130deg, #fffbfa 0%, #e5ddd2 100%);
  --codate-grad9: linear-gradient(130deg, #38a9a8 0%, #4dbbba 100%);
  --exterior-color: #2e9088;
  --exterior-grad: linear-gradient(to right, #3d7480, #2b8194);
  --exterior-grad2: linear-gradient(to right, #e1f5f5, #f5fbfb);
  --ownedland-color: #b68870;
  --ownedland-grad: linear-gradient(to right, #a97960, #c69a83);
}
.block-common-mv {position: relative;}
.block-common-mv h2 {padding: 2em 1em 1.5em;}
.block-common-mv p {color: #fff;font-size: 87.5%;padding: 0 1.15em 5em;margin: 0;}
.block-common-mv p::before {display: inline-block;content: '';width: 1em;height: 1px;margin-right: 0.5em;background: #fff;vertical-align: super;}
.codate .block-common-mv {background: var(--codate-grad);}
.exterior .block-common-mv {background: var(--exterior-grad);}
.ownedland .block-common-mv {background: var(--ownedland-grad);}
.swiper-slide {z-index: 1 !important;}
.swiper-slide-active {z-index: 2 !important;}
.nav-container-01 {margin-bottom: 5em;}
.nav-style-01 {margin: 0 auto;background: linear-gradient(to bottom,#fff 50%,#f5f7f9);border-radius: 0.5em;box-shadow: 0 3px 10px rgba(61, 61, 61, 0.22);position: absolute;top: 100%;left: 0;right: 0;z-index: 2;overflow: hidden;}
.nav-style-01 ul {display: flex;}
.nav-style-01 ul li {text-align: center;margin: 0;width: 100%;}
.nav-style-01 ul li a {display: block;padding: 1.5em 0;text-decoration: none;position: relative;}
.nav-style-01 ul li + li a::before {display: block;content: '';width: 1px;height: 60%;background: #bcc8d1;position: absolute;top: 20%;left: 0;}
.nav-style-01 ul li a span {color: var(--default);font-weight: bold;padding-right: 1.75em;position: relative;}
.nav-style-01 ul li a span svg {color: var(--codate-color2);width: 1.25em;height: 1.25em;position: absolute;top: 50%;right: 0;transform: translateY(-50%);}
.nav-style-01 ul li.on a::after {display: block;content: '';width: 8.5em;height: 6px;margin: 0 auto;background: var(--codate-grad2);position: absolute;left: 0;right: 0;bottom: 0;}
.nav-style-01 ul li.on a span svg {transform: translateY(-50%) rotate(0deg);}
.exterior .nav-style-01 ul li a span svg {color: var(--exterior-color);}
.ownedland .nav-style-01 ul li a span svg {color: var(--ownedland-color);}
.nav-style-02 {padding: 22em 0 4em;overflow: hidden;position: relative;}
.nav-style-02 .container {margin: 0 auto;background: linear-gradient(to bottom,rgba(255,255,255,0.88) 50%,rgba(245,247,249,0.88));border-radius: 0.5em;box-shadow: 0 3px 10px rgba(61, 61, 61, 0.22);overflow: hidden;position: relative;z-index: 1;}
.nav-style-02 .container h2 {color: var(--codate-color2);font-size: 118.75%;font-weight: bold;text-align: center;padding-top: 1.5em;}
.nav-style-02 .container h2 span::after {display: block;content: attr(data-title);font-size: 52.6%;font-weight: normal;letter-spacing: 0.3em;}
.nav-style-02 .container ul {display: flex;flex-wrap: wrap;}
.nav-style-02 .container ul li {text-align: center;margin: 0;}
.nav-style-02 .container ul li a {display: block;padding: 1.5em;text-decoration: none;position: relative;}
.nav-style-02 .container ul li + li a::before {display: block;content: '';width: 1px;height: 60%;background: #bcc8d1;position: absolute;top: 20%;left: 0;}
.nav-style-02 .container ul li a span {color: var(--default);font-weight: bold;padding-right: 1.75em;position: relative;}
.nav-style-02 .container ul li a span svg {color: var(--codate-color2);width: 1.25em;height: 1.25em;position: absolute;top: 50%;right: 0;transform: translateY(-50%) rotate(-90deg);}
.nav-style-02 figure {width: 100%;height: 100%;position: absolute;top: 0;left: 0;}
.nav-style-02 figure img {width: 100%;height: 100%;object-fit: cover;}
.nav-style-03 ul {display: flex;flex-wrap: wrap;justify-content: space-between;}
.nav-style-03 ul li {width: calc(50% - 1.25em);margin: 1.25em 1.25em 0 0;border-radius: 0.4em;overflow: hidden;}
.nav-style-03 ul li a {padding-top: 64.4%;position: relative;}
.nav-style-03 ul li a::before {display: block;content: '';width: 100%;height: 100%;background: linear-gradient(to bottom,rgba(0,0,0,0.5) 30%,rgba(0,0,0,0) 50%);position: absolute;top: 0;left: 0;}
.nav-style-03 ul li a[data-vbtype="video"]::after {width: 16%;height: 25%;background: url("../../codate/img/icon_movie.svg") no-repeat center/cover;top: 50%;left: 50%;transform: translate(-50%,-50%);filter: invert(0);}
.nav-style-03 ul li a div {position: absolute;top: 2em;left: 2em;}
.nav-style-03 ul li a div p {color: #fff;font-weight: bold;}
.nav-style-03 ul li a div p:nth-last-child(2) {font-size: 87.5%;border-bottom: 1px solid #fff;margin-bottom: 0.2em;}
.nav-style-03 ul li a div p:nth-last-child(1) {font-size: 118.75%;margin: 0;}
.nav-style-03 ul li a div p:nth-last-child(1)::after {display: block;content: attr(data-title);font-size: 10px;font-weight: normal;margin-top: 0.25em;}
.nav-style-03 ul li a .btn {position: absolute;right: 0;bottom: 0;}
.nav-style-03 ul li.lineup a {background: url("../../codate/img/bg_02.webp") no-repeat center/cover;}
.nav-style-03 ul li.concept a {background: url("../../codate/img/bg_03.webp") no-repeat center/cover;}
.nav-style-03 ul li.zeh a {background: url("../../codate/img/bg_04.webp") no-repeat center/cover;}
.nav-style-03 ul li.exterior a {background: url("../../codate/img/bg_05.webp") no-repeat center/cover;}
.nav-style-03 ul li.land a {background: url("../../ownedland/img/bg_01.webp") no-repeat center/cover;}
.nav-style-03 ul li.reservation a {background: url("../../ownedland/img/bg_02.webp") no-repeat center/cover;}
.nav-style-03 ul li.reservation a::before {background: linear-gradient(180deg, #c69983 0%, #fff 50%);mix-blend-mode: multiply;}
.nav-style-04 {margin: 0 auto;position: absolute;top: 100%;left: 0;right: 0;z-index: 2;overflow: hidden;}
.nav-style-04 ul {display: flex;flex-wrap: wrap;}
.nav-style-04 ul li {margin: 0;width: 31.5%;background: var(--codate-grad2);border-radius: 0.4em;}
.nav-style-04 ul li a {display: block;color: #fff;padding: 1em 3.5em 1em 1em;text-decoration: none;position: relative;}
.nav-style-04 ul li a p:nth-child(1) {font-size: 112.5%;font-weight: bold;padding: 0 0 0.5em 2.25em;margin-bottom: 0.75em;position: relative;}
.nav-style-04 ul li a p:nth-child(1)::before {display: block;content: attr(data-num);color: var(--codate-color3);font-size: 133.33%;line-height: 1.2;position: absolute;top: 0;left: 0;}
.nav-style-04 ul li a p:nth-child(1)::after {display: block;content: '';width: 2em;height: 1px;background: #fff;position: absolute;left: 0;bottom: 0;}
.nav-style-04 ul li a p:nth-child(2) {font-size: 87.5%;margin: 0;}
.nav-style-04 ul li a svg {width: 2.5em;height: 2.5em;position: absolute;right: 0.75em;bottom: 0.75em;filter: invert(0);}
.nav-style-04 ul li.on a::after {display: block;content: '';width: 8.5em;height: 6px;margin: 0 auto;background: var(--codate-grad2);position: absolute;left: 0;right: 0;bottom: 0;}
.nav-style-04 ul li.on a svg {transform: translateY(-50%) rotate(0deg);}
.nav-style-05 {padding: 1.5em 3em;background: var(--codate-grad2);}
.nav-style-05 h4 {color: #fff;font-weight: bold;letter-spacing: 0.3em;margin: 0;}
.nav-style-05 h4::after {display: block;content: '';width: 2em;height: 1px;margin: 0.5em 0 1em;background: #c4d8e3;}
.nav-style-05 ul {display: flex;flex-wrap: wrap;justify-content: space-between;}
.nav-style-05 ul li {width: 50%;max-width: 410px;}
.nav-style-05 ul li a {display: block;color: #fff;font-size: 112.5%;font-weight: bold;text-decoration: none;padding: 0.5em 2.5em;position: relative;}
.nav-style-05 ul li a::before {display: block;content: attr(data-num);color: var(--codate-color3);font-size: 133.33%;line-height: 1.2;position: absolute;top: 50%;left: 0;transform: translateY(-50%);}
.nav-style-05 ul li a svg {width: 1.5em;height: 1.5em;position: absolute;top: 50%;right: 2em;transform: translateY(-50%);filter: invert(0);}
.nav-style-06 ul {display: flex;flex-wrap: wrap;justify-content: space-between;}
.nav-style-06 ul li {width: 18.5%;margin: 0;}
.nav-style-06 ul li a {display: block;color: var(--codate-color2);font-weight: bold;text-decoration: none;padding: 1.5em 1em;border-radius: 0.4em;background: linear-gradient(to bottom,#fff 50%,#f5f7f9);box-shadow: 0 3px 10px rgba(61, 61, 61, 0.22);position: relative;}
.nav-style-06 ul li a span {display: block;font-size: 125%;}
.nav-style-06 ul li a svg {color: var(--codate-color2);width: 1.5em;height: 1.5em;position: absolute;right: 0.75em;bottom: 0.5em;}
.btn-style-01 {display: block;color: #fff;font-size: 87.5%;font-weight: bold;text-align: center;padding: 1.1em;margin-top: 2em;background: var(--codate-grad);text-decoration: none;position: relative;transition: 0.4s;}
.btn-style-01 svg {width: 1.5em;height: 1.5em;position: absolute;top: 50%;right: 1em;transform: translateY(-50%);}
.btn-style-02 {color: #fff;font-size: 81.25%;padding: 0.2em 3em 0.2em 1em;border-radius: 0.5em 0 0 0;background: rgba(12,102,152,0.9);}
.btn-style-02 svg {width: 1.6em;height: 1em;position: absolute;top: 50%;right: 0.75em;transform: translateY(-50%);}
.btn-style-03 {font-size: 87.5%;padding: 1.5em;border: none;border-radius: 0;position: relative;cursor: pointer;}
.btn-style-03::after {content: "＋";position: absolute;top: 50%;right: 1.5em;transform: translateY(-50%);}
.btn-style-03.open::after {content: "ー";}
.btn-style-04 {text-align: right;}
.btn-style-04 a {display: inline-block;font-size: 87.5%;font-weight: bold;text-align: right;padding: 1em 2.5em;text-decoration: none;position: relative;}
.btn-style-04 a svg {width: 1.5em;height: 1em;position: absolute;top: 50%;right: 0;transform: translateY(-50%);}
.btn-style-05 {text-align: center;max-width: 26em;margin-top: 2em;}
.btn-style-05 a {display: block;color: #fff;font-size: 87.5%;font-weight: bold;padding: 1.1em;border-radius: 3em;background: var(--codate-grad9);text-decoration: none;position: relative;transition: 0.4s;}
.btn-style-05 a svg {width: 1.5em;height: 1.5em;position: absolute;top: 50%;right: 1.75em;transform: translateY(-50%);}
.ttl-style-01 {font-size: 187.5%;font-weight: bold;text-align: center;letter-spacing: 0.1em;}
.ttl-style-01::before {display: block;content: attr(data-title);font-size: 280%;line-height: 1.2;background: var(--codate-grad3);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;color: transparent;}
.ttl-style-01 + p {font-size: 87.5%;line-height: 1.7;text-align: center;margin-top: 2em;}
.ttl-style-02 {padding: 0.25em 0 0.35em;position: relative;}
.ttl-style-02::before {display: block;content: '';width: 0.4em;height: 100%;border-radius: 1em;position: absolute;top: 0;right: calc(100% + 1.5em);bottom: 0;}
.ttl-style-02 h5 {font-size: 156.25%;font-weight: bold;}
.ttl-style-02 p {font-size: 87.5%;margin: 1em 0 0;}
.ttl-style-03 {display: flex;align-items: center;margin: 0;}
.ttl-style-03::after {content: "";flex: 1; height: 1px;margin-left: 0.5em;background: #eee;}
.ttl-style-03 span {font-weight: bold;white-space: nowrap;}
.ttl-style-04 {color: var(--codate-color2);font-size: 156.25%;font-weight: bold;line-height: 1.4;margin: 0;}
.ttl-style-04 strong {display: block;color: var(--codate-color3);font-size: 64%;}
.ttl-style-04 strong::after {display: block;content: '';width: 2.5em;height: 1px;margin: 0.5em 0;background: var(--codate-color2);}
.ttl-style-04 + p {font-size: 87.5%;margin: 1.5em 0 0;}
.ttl-style-04 + p strong {color: var(--codate-color2);font-weight: bold;}
.ttl-style-05 {color: var(--codate-color4);font-size: 218.25%;font-weight: bold;text-align: center;letter-spacing: 0.1em;margin: 0;}
.ttl-style-05 strong {display :block;font-size: 57.14%;letter-spacing: 0.4em;background: var(--codate-grad5);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}
.ttl-style-05 strong::before,
.ttl-style-05 strong::after {display: inline-block;content: '';width: 6em;height: 2px;background: #f18c47;vertical-align: super;}
.ttl-style-05 strong::before {margin-right: 1em;}
.ttl-style-05 strong::after {margin-left: 1em;}
.ttl-style-06 h4 {font-size: 156.25%;font-weight: bold;}
.ttl-style-06 h4::before {display: block;content: attr(data-title);font-size: 56%;letter-spacing: 0.1em;margin-bottom: 0.5em;background: var(--codate-grad5);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}
.ttl-style-06 h4 + p {font-size: 87.5%;margin: 1.5em 0 0;}
.ttl-style-06 h4 + p strong {color: var(--codate-color4);font-weight: bold;}
.ttl-style-06 h4 + p strong {color: var(--codate-color4);font-weight: bold;}
.bnr-container-01 {max-width: 860px;margin: 4em auto 0;}
/* =====
* LAYOUT :: PC
=================================================================== */
@media only screen and (max-width: 1450px) {
  .block-common-mv p {padding-bottom: 6em;}
  .nav-style-01 ul li a span {font-size: 87.5%;letter-spacing: 0;}
  .nav-style-02 .container ul li a {padding: 1.5em 1em;}
  .nav-style-03 ul li a div {top: 1em;left: 1em;}
  .nav-style-04 ul li a {padding: 1.25em;}
  .nav-style-04 ul li a span {font-size: 87.5%;letter-spacing: 0;}
  .nav-style-05 {padding: 1em 1.5em;}
  .nav-style-05 ul li a {font-size: 100%;}
}
@media only screen and (max-width: 1240px) {
  .nav-style-01 {max-width: 100% !important;}
  .nav-style-01:not(.odd) ul::before,
  .nav-style-01:not(.odd) ul::after {display: block;content: '';background: #bcc8d1;position: absolute;}
  .nav-style-01:not(.odd) ul::before {width: calc(100% - 2em);height: 1px;top: 50%;left: 1em;}
  .nav-style-01:not(.odd) ul::after {width: 1px;height: calc(100% - 1.6em);top: 0.8em;left: 50%;}
  .nav-style-01:not(.odd) ul {flex-wrap: wrap;}
  .nav-style-01:not(.odd) ul li {width: 50%;}
  .nav-style-01:not(.odd) ul li a {padding: 0.5em 0;}
  .nav-style-01:not(.odd) ul li + li a::before {display: none;}
  .nav-style-01:not(.odd) ul li a span {padding: 0 1.75em;}
  .nav-style-01.odd ul li a {padding: 0.75em 0;}
  .nav-style-01.odd ul li a span {line-height: 1.5;}
  .ownedland .nav-style-01 ul::before {display: none;}
  .nav-style-04 {max-width: 100% !important;}
  .nav-style-04 ul li {width: 33%;}
  .nav-style-04 ul li a {padding: 0.5em;}
  .nav-style-04 ul li a p:nth-child(2) {font-size: 75%;}
  .nav-style-04 ul li a svg {width: 1.5em;height: 1.5em;}
  .nav-style-05 h4 {text-align: center;}
  .nav-style-05 h4::after {margin: 0.5em auto 1em;}
  .nav-style-05 ul {max-width: 400px;margin: 0 auto;}
  .nav-style-05 ul li {width: 100%;max-width: 100%;}
}
@media only screen and (min-width: 769px) and (max-width: 1240px) {
  .nav-style-01 ul li a span {display: inline-block;width: 13em;}
  .nav-style-01 ul li a span br {display: block !important;}
  .nav-style-02 .container ul::before,
  .nav-style-02 .container ul::after {display: block;content: '';background: #bcc8d1;position: absolute;}
  .nav-style-02 .container ul::before {width: calc(100% - 2em);height: 1px;top: 50%;left: 1em;}
  .nav-style-02 .container ul::after {width: 1px;height: calc(100% - 1.6em);top: 0.8em;left: 50%;}
  .nav-style-02 .container ul li {width: 50%;}
  .nav-style-02 .container ul li a {padding: 0.75em 0;}
  .nav-style-02 .container ul li + li a::before {display: none;}    
  .nav-style-02 .container ul li a span {display: inline-block;width: 13em;}
  .nav-style-04 ul li a span {display: inline-block;width: 13em;}
  .nav-style-04 ul li a span br {display: block !important;}
}
@media only screen and (min-width: 1025px) {
  #Breadcrumb ul li:first-child::before {display: none;}
}
/* =====
* LAYOUT :: TAB
=================================================================== */
@media only screen and (max-width: 1024px) {
  .nav-style-03 ul {margin: 0 0.5em;}
  .nav-style-03 ul li {width: calc(50% - 1em);margin: 1em 0.5em 0;}  
}
@media only screen and (min-width: 769px) {
  .nav-style-01 {width: 90%;max-width: 1000px;transform: translateY(-50%);}
  .nav-style-01 h3 {display: none;}
  .nav-style-01 ul {justify-content: center;position: relative;}
  .nav-style-02 .container {width: 90%;max-width: 1000px;margin: 0 auto;}
  .nav-style-02 .container ul {justify-content: center;position: relative;}
  .btn-style-01:hover {opacity: 0.8;}
  .nav-style-04 {width: 90%;max-width: 950px;transform: translateY(-65%);}
  .nav-style-04 h3 {display: none;}
  .nav-style-04 ul {justify-content: space-between;position: relative;}
}
/* =====
* LAYOUT :: SP
=================================================================== */
@media only screen and (max-width: 768px) {
  .block-common-mv p {text-indent: -1.5em;padding-left: 2.6em;padding-bottom: 4em;}
  .nav-container-01 {margin-bottom: 3em;}
  .nav-style-01 {width: calc(100% - 3em);top: calc(100% - 2.15em);}
  .nav-style-01 h3 {font-size: 112.5%;text-align: center;padding: 1em 0;position: relative;cursor: pointer;}
  .nav-style-01 h3::after {content: "＋";font-size: 125%;position: absolute;top: 50%;right: 1em;transform: translateY(-50%);}
  .nav-style-01 h3 span {color: var(--codate-color2);font-weight: bold;}
  .nav-style-01 ul {flex-wrap: wrap;max-height: 0;overflow: hidden;transition: max-height 0.4s ease;}
  .nav-style-01:not(.odd) ul::before,
  .nav-style-01:not(.odd) ul::after {display: none;}
  .nav-style-01 ul li {font-size: 112.5%;width: 100% !important;}
  .nav-style-01 ul li a {padding: 1.25em 0 !important;}
  .nav-style-01 ul li + li a::before {display: block!important;width: 90%;height: 1px;top: 0;left: 5%;}
  .nav-style-01 ul li a span {font-size: 100%;padding: 0;position: static;}
  .nav-style-01 ul li a span svg {right: 1.5em;}
  .nav-style-01 ul li a span br {display: none !important;}
  .nav-style-01 ul li.on a::after {width: 9em;}
  .nav-style-01.on h3 {background: #f0f0f0;}
  .nav-style-01.on h3::after {content: "ー";}
  .nav-style-01.on ul::before,
  .nav-style-01.on ul::after {opacity: 1;}
  .ownedland .nav-style-01 h3 span {color: var(--ownedland-color);}
  .exterior .nav-style-01 h3 span {color: var(--exterior-color);}
  .nav-style-02 {padding: 8em 0 3em;}
  .nav-style-02 .container {width: calc(100% - 3em);}
  .nav-style-02 .container h2 {font-size: 112.5%;text-align: center;padding: 1em 0;background: #fff;position: relative;cursor: pointer;}
  .nav-style-02 .container h2 span {font-weight: bold;}
  .nav-style-02 .container h2 span::after {font-size: 70%;}
  .nav-style-02 .container ul::before {top: calc(50% + 2.75em);}
  .nav-style-02 .container ul::after {height: calc(100% - 6.5em);top: 5.8em;}
  .nav-style-02 .container ul li {font-size: 112.5%;width: 100%;}
  .nav-style-02 .container ul li a {padding: 1.25em 0;}
  .nav-style-02 .container ul li + li a::before {width: 90%;height: 1px;top: 0;left: 5%;}
  .nav-style-02 .container ul li a span {padding: 0;position: static;}
  .nav-style-02 .container ul li a span svg {right: 1.5em;}
  .nav-style-03 ul li {width: 100%;}
  .nav-style-04 {width: calc(100% - 3em);top: calc(100% - 2.15em);background: var(--codate-grad2);border-radius: 0.5em;box-shadow: 0 3px 10px rgba(61, 61, 61, 0.22);}
  .nav-style-04 h3 {font-size: 112.5%;text-align: center;padding: 1em 0;position: relative;cursor: pointer;}
  .nav-style-04 h3::after {color: #fff;content: "＋";font-size: 125%;position: absolute;top: 50%;right: 1em;transform: translateY(-50%);}
  .nav-style-04 h3 span {color: #fff;font-weight: bold;}
  .nav-style-04.on h3 {background: var(--codate-grad);}
  .nav-style-04 ul {max-height: 0;overflow: hidden;transition: max-height 0.4s ease;}
  .nav-style-04 ul::before,
  .nav-style-04 ul::after {display: none;}
  .nav-style-04 ul li {font-size: 112.5%;width: 100% !important;background: transparent;}
  .nav-style-04 ul li a {padding: 1.25em 5% !important;}
  .nav-style-04 ul li + li a::before {display: block;content: '';width: 90%;background: #fff;height: 1px;position: absolute;top: 0;left: 5%;opacity: 0.6;}
  .nav-style-04 ul li a span {font-size: 100%;padding: 0;position: static;}
  .nav-style-04 ul li a svg {width: 2.5em;height: 2.5em;right: 1.1em;bottom: 1em;}
  .nav-style-04 ul li a span br {display: none !important;}
  .nav-style-04 ul li a p:nth-child(1) {padding: 0 0 0 2.5em;margin-bottom: 0.25em;}
  .nav-style-04 ul li a p:nth-child(1)::after {display: none;}
  .nav-style-04 ul li a p:nth-child(2) {font-size: 87.5%;}
  .nav-style-04 ul li a p:nth-child(2) br {display: none;}
  .nav-style-04.on h3::after {content: "ー";}
  .nav-style-04.on ul::before,
  .nav-style-04.on ul::after {opacity: 1;}
  .nav-style-05 {padding: 0;background: var(--codate-grad2);border-radius: 0.5em;box-shadow: 0 3px 10px rgba(61, 61, 61, 0.22);overflow: hidden;}
  .nav-style-05 h4 {font-size: 112.5%;text-align: center;padding: 1em 0;position: relative;cursor: pointer;}
  .nav-style-05 h4::after {color: #fff;content: "＋";font-size: 125%;line-height: 1;width: 1em;height: 1em;margin: 0;background: transparent;position: absolute;top: 50%;right: 1em;transform: translateY(-50%);}
  .nav-style-05 h4 span {color: #fff;font-weight: bold;}
  .nav-style-05.on h4 {background: var(--codate-grad);}
  .nav-style-05 ul {max-height: 0;overflow: hidden;transition: max-height 0.4s ease;}
  .nav-style-05 ul::before,
  .nav-style-05 ul::after {display: none;}
  .nav-style-05 ul li {font-size: 112.5%;width: 100% !important;margin: 0;background: transparent;}
  .nav-style-05 ul li a {padding: 1.25em 5% 1.25em 15% !important;}
  .nav-style-05 ul li a::before{left: 5%;}
  .nav-style-05 ul li + li a::after {display: block;content: '';width: 90%;background: #fff;height: 1px;position: absolute;top: 0;left: 5%;opacity: 0.6;}
  .nav-style-05 ul li a span {font-size: 100%;padding: 0;position: static;}
  .nav-style-05 ul li a svg {width: 2.5em;height: 2.5em;right: 1.1em;bottom: 1em;}
  .nav-style-05 ul li a span br {display: none !important;}
  .nav-style-05 ul li a p:nth-child(1) {padding: 0 0 0 2.5em;margin-bottom: 0.25em;}
  .nav-style-05 ul li a p:nth-child(2) {font-size: 87.5%;}
  .nav-style-05 ul li a p:nth-child(2) br {display: none;}
  .nav-style-05.on h4::after {content: "ー";}
  .nav-style-05.on ul::before,
  .nav-style-05.on ul::after {opacity: 1;}
  .nav-style-06 ul li {width: 100%;}
  .nav-style-06 ul li + li {margin-top: 1em;}
  .nav-style-06 ul li a {padding: 0.75em 1em;}
  .nav-style-06 ul li a span {display: inline;margin-right: 0.25em;}
  .nav-style-06 ul li a svg {top: 50%;right: 1em;transform: translateY(-50%);}
  .btn-style-01 {font-size: 100%;margin-top: 1em;}
  .btn-style-03 {font-size: 100%;padding: 1.1em 0 0.6em;}
  .btn-style-04 a {font-size: 112.5%;}
  .btn-style-05 {width: 80%;margin: 2em auto 0;}
  .btn-style-05 a {font-size: 100%;padding: 1em 0;}
  .ttl-style-01 {font-size: 150%;}
  .ttl-style-01::before {font-size: 200%;}
  .ttl-style-01 + p {font-size: 100%;}
  .ttl-style-02 {padding-left: 1.5em;}
  .ttl-style-02::before {left: 0;right: auto;}
  .ttl-style-02 h5 {font-size: 137.5%;}
  .ttl-style-02 p {font-size: 100%;margin-top: 0.5em;}
  .ttl-style-03 {font-size: 112.5%;}
  .ttl-style-04 {font-size: 137.5%;}
  .ttl-style-04 + p {font-size: 100%;}
  .ttl-style-05 {font-size: 175%;width: 90%;margin: 0 auto;}
  .ttl-style-05 strong {display: flex;align-items: center;font-size: 75%;letter-spacing: 0.2em;}
  .ttl-style-05 strong::before,
  .ttl-style-05 strong::after {flex: 1;}
  .ttl-style-06 h4 {font-size: 137.5%;}
  .ttl-style-06 h4::before {font-size: 75%;}
  .ttl-style-06 h4 + p {font-size: 100%;}
}
@media only screen and (max-width: 768px) and (orientation: landscape) {}
@media only screen and (max-width: 640px) {}
@media only screen and (max-width: 480px) {}