@charset "utf-8";

@media screen and (max-width: 1199px) {

 #wcfront_base {
  font-size: 15px;
 }



 .hamburger {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 30px;
  height: 22px;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  margin-left: auto;
  flex-shrink: 0;
  z-index: 1002;
  position: fixed;
  top: 25px;
  right: 20px;
  z-index: 1002;
 }

 .hamburger span {
  display: block;
  width: 100%;
  height: 3px;
  background: #333;
  border-radius: 3px;
  transition: all 0.3s ease;
  transform-origin: center;
 }

 /* × 形（active 時） */
 .hamburger.active span:nth-child(1) {
  transform: translateY(9.5px) rotate(45deg);
 }

 .hamburger.active span:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
 }

 .hamburger.active span:nth-child(3) {
  transform: translateY(-9.5px) rotate(-45deg);
 }

 /* オーバーレイメニュー本体 */
 .overlay-menu {
  display: block;
  position: fixed;
  top: 0;
  right: -320px;
  width: 300px;
  height: 100%;
  background: #fff;
  z-index: 1001;
  padding: 40px 30px 40px;
  transition: right 0.35s ease;
  overflow-y: auto;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.15);
 }

 .overlay-menu.active {
  right: 0;
 }

 /* メニューが開いている時のスクロール禁止 & 背景オーバーレイ */
 body.menu-open {
  overflow: hidden;
 }

 body.menu-open::after {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1000;
 }

 /* オーバーレイ内ナビ */
 .overlay-menu nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
 }

 .overlay-menu nav ul li {
  border-bottom: 1px solid #eee;
 }

 .overlay-menu nav ul li a {
  display: block;
  padding: 16px 4px;
  font-size: 15px;
  font-weight: 700;
  color: #333;
  text-decoration: none;
 }

 .overlay-menu nav ul li a:hover {
  color: #c8a800;
 }

 /* オーバーレイ内連絡先 */
 .overlay-contact {
  margin-top: 30px;
  text-align: center;
 }

 .overlay-contact {
  margin-top: 30px;
  text-align: center;
 }

 .overlay-tel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
  color: #333;
 }

 .overlay-tel img {
  height: 50px;
 }

 .overlay-contact p {
  margin-top: 0;
  margin-bottom: 20px;
 }


 .overlay-tel span {
  font-size: 26px;
  font-weight: 900;
  font-style: italic;
  letter-spacing: 0;
 }

 .overlay-btns {
  display: flex;
  gap: 8px;
  justify-content: center;
 }

 .overlay-btns a {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  height: 120px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
 }

 .overlay-btns a i {
  font-size: 20px;
 }

 .overlay-btns .btn-line {
  background: #06c755;
  color: #fff;
 }

 .overlay-btns .btn-contact {
  background: #333;
  color: #fff;
 }



.header-logo img {
  height: 60px;
 }


#wcfront_base header .circle-btns {
  display: none;
 }

#wcfront_base .global-nav {
  display: none;
 }

.header-contact {
  display: none;
 }








 .title-max {
  font-size: 52px;
  letter-spacing: -2px;
  margin-bottom: 20px;
 }


 .title-large {
  font-size: 45px;
 }

 .title-midium {
  font-size: 40px;
  margin-bottom: 10px;
 }


 .title-regular {
  font-size: 24px;
 }



 .title-small {
  font-size: 24px;
 }

 /* ラッパー共通 */

 .basic-wrap {
  max-width: 95%;
  margin: 0 auto;
  padding: 60px 20px;
 }

 .wide-wrap {
  padding: 60px 0;
 }

 .slim-wrap {
  max-width: 95%;
  margin: 0 auto;
  padding: 60px 20px;
 }



 .fv {
  border-top: 5px solid #ffd400;
  position: relative;

 }

 .fv.under {
  background: #ffd400;
 }

 .fv.under .town-bottom {
  position: absolute;
  bottom: -20px;
 }


 .fv-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
 }


 .fv-area {
  margin-left: 0;
  align-items: stretch;

 }

 .fv-area span:first-child {
  font-size: 14px;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
 }

 .fv-area span.last {
  font-size: 14px;
  font-weight: 700;
  padding: 10px 20px;
  background: #fff;
  border: 2px solid #333;
  border-left: none;
 }



 .fv-left {
  position: relative;
  width: 35%;
 }

 .fv-left img:first-child {
  position: absolute;
  top: 0;
  left: 0;
  width: 130px;
 }

 .fv-left img:last-of-type {
  width: 280px;
  display: block;
  margin: inherit;
  margin-left: auto;
 }

 .title-line {
  font-size: 30px;
  margin-bottom: 20px;
 }





 /* 買取実績 */

 .results {
  text-align: center;
 }

 .results .grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
 }

 .results .img {
  height: 220px;
 }


 /* カウベルとは */
 .about-index {
  flex-direction: column;
  gap: 30px;
  padding: 60px 40px;
  max-width: 100%;
 }

 .about-index .left {
  width: 85%;
  padding-right: 60px;
  text-align: center;
  flex-shrink: 0;
 }

 .about-index .left img {
  width: 100%;
  display: block;
 }


 .about-index .right h2 {
  text-align: center;
 }


 .about-index .right h3 {
  text-align: center;
 }

 .btn-wrap {
  text-align: center;
 }



 .about-index .right {
  width: 75%;
 }



 /* 手続き */
 .flow-index {
  flex-direction: column;
 }

 .flow-index .img {
  width: 100%;
 }

 .flow-index .info {
  width: 70%;
  padding: 45px;
 }

 .flow-index p {
  margin-bottom: 30px;
 }


 .flow-index h2 {
  text-align: center;
 }




 /* よくある質問 */

 .faq-index {
  width: 90%;
 }



 /* 運営会社 */
 #wcfront_base .parts--html .company-index {
  text-align: center;
 }

 #wcfront_base .parts--html .company-index .txt-box {
  text-align: left;
  line-height: 1.8;
  margin: 0 auto;
  margin-bottom: 40px;
  width: 60%;

 }

 #wcfront_base .parts--html .company-index .inner {
  flex-direction: column-reverse;
  gap: 40px;
  margin-bottom: 40px;
 }

 #wcfront_base .parts--html .company-index table {
  width: 70%;
 }


 #wcfront_base .parts--html .company-index th {
  width: 140px;
 }

 #wcfront_base .parts--html .company-index td {
  line-height: 1.8;
 }

 #wcfront_base .parts--html .company-index .inner img {
  width: 70%;
 }



 /* マップ */
 .map iframe {
  height: 300px;

 }




 /* CTA */
 .cta {
  text-align: center;
 }

 .cta .tel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-bottom: 30px;
 }

 .cta .tel img {
  width: 80px;
 }



 .cta .tel .copy {
  font-size: 20px;
 }


 .cta .tel .number {
  font-size: 44px;
 }

 .cta .tel .time {
  font-size: 16px;
 }

 .cta .btns {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 20px;
 }

 .cta .btns a {
  padding: 15px 50px;
  font-size: 16px;
 }



 .town-footer {
  margin-top: 0;
 }




 /* フッター */


.footer-inner {
  padding: 20px 40px;
 }

.footer-left img {
  width: 280px;
 }



.footer-contact {
  display: flex;
  align-items: center;
  gap: 10px;
 }

.footer-contact img {
  height: 60px;
 }

.footer-contact .info {
  text-align: center;
 }

.footer-contact p {
  margin-top: 0;
  font-weight: 700;
 }

.footer-contact p:last-child {
  font-size: 13px;
  font-weight: normal;
  margin-top: 5px;
 }

.footer-tel {
  display: block;
  text-decoration: none;
  color: #333;
 }

.footer-tel span {
  font-size: 33px;
 }

#wcfront_base footer .circle-btns {
  display: none;
 }


 /* フッターナビ */
.footer-nav {
  border-top: 1px solid rgba(0, 0, 0, .15);
 }

.footer-nav ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 20px;
  max-width: 100%;
  height: inherit;
 }

.footer-nav li a {
  font-size: 14px;
 }

.footer-copy span {
  font-size: 11px;
 }



 .cont {
  width: 100%;
 }

 .cont .left {
  width: 40%;
 }



 .cont .right {
  width: 55%;
 }




 .box-grid {
  width: 80%;
  margin: 0 auto;
  grid-template-columns: repeat(1, 1fr);
  gap: 20px;
 }




 .cont-2 {
  width: 100%;
  flex-direction: column-reverse;

 }

 .cont-2 .img {
  width: 60%;
 }



 .cont-2 .info {
  width: 60%;
  padding: 0;
  margin-top: 40px;
 }


 .cont-2 p {
  margin-bottom: 20px;
 }




 /* スタッフリスト */
 .staff-list {
  width: 100%;
 }



 /* 手続きの流れ */
 .flow-steps {
  width: 80%;
  margin: 0 auto;
 }

 .flow-steps .step {
  font-size: 20px;
 }



 .flow-steps .arrow {
  margin: 15px auto;
 }

 /* 手続きリスト */


 .flow-list {
  width: 80%;
 }


 .flow-list .item .text h3 {
  font-style: italic;

 }

 /* アクセス */
 .access-info {
  max-width: 80%;
  margin-bottom: 0;
 }

 .access-info table {
  width: 100%;
  border-collapse: collapse;
 }

 .access-info th,
 .access-info td {
  padding: 16px 0;
  border-bottom: 1px solid #ccc;
  font-size: 15px;
  vertical-align: top;
 }

 .access-info th {
  font-weight: 700;
  white-space: nowrap;
  width: 140px;
 }

 .access-info td {
  line-height: 1.8;
 }




 /* お問い合わせフォーム */
 .contact-form {
  max-width: 80%;
  ;
 }

 .contact-form .field {
  margin-bottom: 30px;
 }

 .contact-form label {
  font-size: 17px;
 }


 .contact-form .checks label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 500;
  margin-bottom: 20px;
 }

 .contact-form .checks label:last-child {
  margin-bottom: 0;
 }

 .contact-form input[type="text"],
 .contact-form input[type="email"],
 .contact-form input[type="tel"],
 .contact-form textarea {
  width: 100%;
  padding: 15px;
  font-size: 14px;
 }



 .contact-tel img {
  height: 80px;
 }


 .contact-tel .time {
  font-size: 16px;
 }



 .txt-box {
  width: 100%;
 }


 .breadcrumb {
  font-size: 14px;
  margin-top: 20px;
  margin-left: 0;
 }

 .breadcrumb span {
  margin-left: 5px;
  margin-right: 5px;
 }




 #wcfront_base .parts--html .pc {
  display: none;
 }


 #wcfront_base .parts--html .sp {
  display: none;
 }

 #wcfront_base .parts--html .tab {
  display: block;
 }



}
