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

:root{
--clr-yel:#f5d11f;
--clr-bg:#ffe9a9;
--btn-hover:#dabb1c;
}
:root{ --sp-set: clamp(3.2rem, 4.8vw, 8.0rem);}

/*=============================================================
	layout
=============================================================*/
#wrapper{ width: 100%; margin: 0px auto; padding: 0; position: relative; overflow: hidden;}

/* header
-------------------------------------------------------------*/
header{ padding: 1.6rem 2%;}
header section{}
header section p.site-logo{ width: 20%;}
header section p.site-logo a{ display: inline-block;}
header section p.site-logo a img{ width: 100%; height: auto;}

header section nav .button{ margin-left: 2.4rem;}
header section nav .button a{ display: block; color: #111; font-weight: 600; line-height: 1.0em; text-decoration: none; text-align: center; background-image: linear-gradient(#f5d11f 50%, #dabb1c 50%); padding: 1.0em 2.4em; border-radius: 8px; position: relative; overflow: hidden; margin-top: 1.5em;}
header section nav .button a:hover{}
header section nav .button a:before{ content: ""; width: 100%; height: 100%; background: rgba(255,255,255,0.0); position: absolute; top: 0; left: 0; transition: all 0.3s ease 0s;}
header section nav .button a:hover:before{ background: rgba(255,255,255,0.32);}
header section nav .button a span{ display: inline-block; padding-left: 2.0em; position: relative; z-index: 10;}
header section nav .button a span:before{ content: "\e0e1"; font-family: "Material Icons"; font-size: 2.4rem; line-height: 1.0em; position: absolute; top: 50%; left: 0; transform: translateY(-50%);}
header section nav .sns{ display: none;}

/* sp.css（例：ドロワー関連だけ抜粋） */
.nav-toggle { position:fixed; top:2%; right:2%; display:inline-block; width:40px; height:40px; border:0; background:transparent; cursor:pointer; z-index:1100; }
.nav-toggle__bar, .nav-toggle__bar::before, .nav-toggle__bar::after { position:absolute; left:50%; top:50%; width:24px; height:2px; background:#333; content:""; transform:translate(-50%, -50%); transition:transform .25s ease, opacity .25s ease; }
.nav-toggle__bar::before { transform:translate(-50%, calc(-50% - 7px)); }
.nav-toggle__bar::after { transform:translate(-50%, calc(-50% + 7px)); }
.nav-toggle.is-active .nav-toggle__bar { background:transparent; }
.nav-toggle.is-active .nav-toggle__bar::before { transform:translate(-50%, -50%) rotate(45deg); }
.nav-toggle.is-active .nav-toggle__bar::after { transform:translate(-50%, -50%) rotate(-45deg); }

header section { display:flex; align-items:center; justify-content:space-between; gap:12px; }
header section nav#global-nav { order:3; position:fixed; inset:0; width:100vw; height:100vh; display:flex; flex-direction:column; align-items:stretch; gap:0; padding:16px 20px 24px; background:#fff; transform:translateX(100%); transition:transform .28s ease; z-index:1000; overflow:auto; }
header section nav#global-nav.is-open { transform:translateX(0); }
header section nav#global-nav ul { display:flex; flex-direction:column; gap:0; width:100%; margin:0; padding:0; list-style:none; }
header section nav#global-nav ul:before { display:none; }
header section nav#global-nav ul li { margin:0; padding:0; position:static; }
header section nav#global-nav ul li:after { display:none; }
header section nav#global-nav ul li a { display:block; padding:14px 6px; border-bottom:1px solid #f0f0f0; color:#333; text-decoration:none; }
body.nav-open::before { content:""; position:fixed; inset:0; background:rgba(0,0,0,.35); z-index:900; }
body.nav-open { overflow:hidden; }


/* footer
-------------------------------------------------------------*/
footer{ width: 100%; margin: 0px auto; padding: 4.0rem 0; background: var(--clr-yel);}
footer section{ width: 90%; margin: 0px auto; max-width: 1200px;}
footer section nav{ display: flex; justify-content: center; flex-wrap: wrap; align-items: center;}
footer section nav ul{ display: none;}
footer section nav .sns{ width: 48px; height: 48px; margin-left: 1.6rem;}
footer section nav .sns a{ display: block; transition: all 0.3s ease 0s;}
footer section nav .sns a:hover{opacity: 0.64;}
footer section nav .sns a img{ width: 100%; height: auto;}
footer section nav .button{ margin-left: 1.6rem;}
footer section nav .button a{ font-weight: 600; line-height: 1.0em; text-decoration: none; color: var(--clr-yel); background: #000; padding: 0.4em 2.0em; border-radius: 100px;}
footer section nav .button a:hover{ background: rgba(0,0,0,0.72);}
footer section h2{ width: 80%; margin: 2.4rem auto 0;}
footer section h2 img{ width: 100%; height: auto;}
footer section h3{ font-weight: 600; text-align: center; line-height: 1.6em; color: #000; margin-top: 1.6em; font-size: 1.6rem;}
footer section .phone{ text-align: center; font-size: 2.4rem; line-height: 1.2em; color: #000; margin-top: 0.5em; font-weight: 600;}
footer section .phone a{ display: inline-block; color: #000; text-decoration: none;}
footer section .phone a:hover{ color: rgba(0,0,0,0.72);}
footer section .phone span{ display: block; font-size: 1.6rem; line-height: 1.2em; text-align: center; font-weight: normal; margin-top: 1.0em;}
footer section .copyright{ text-align: center; margin-top: 2.4rem; color: #000;}

/* main
-------------------------------------------------------------*/
main{ width: 100%; margin: 0px auto; padding: 0;}
main article.contents{ width: 100%; height: auto; padding-block: var(--sp-set); position: relative;}
main article section{ width: 90%; margin: 0px auto; max-width: 1200px; padding: 0; position: relative;}
main article section p{ margin-top: 1.0em;}

main article.belt{}
main article.belt h2{ font-size: 2.0rem; line-height: 1.2em; font-weight: 600; text-align: center; color: #111; background: var(--clr-yel); padding: 1.2em 0;}
main article.belt strong{ display: flex; justify-content: center; align-items: center; flex-wrap: wrap;}
main article.belt h2 strong span{ display: inline-block; width: 100px; margin: 0 0.5em; position: relative; top: -4px;}
main article.belt h2 strong span img{ width: 100%; height: auto;}
main article.belt h2 em{ display: block; width: 120px; margin: 0px auto 0.5em;}
main article.belt h2 em img{ width: 100%; height: auto;}
main article.belt section{ padding-block: var(--sp-set);}

/* hero area */
#hero-area{ background: url("../images/index/hero_bg_sp.webp") no-repeat center center; background-size: contain; position: relative; width: 100%;}
#hero-area section{ width: 100%; z-index: 100;}
#hero-area section div{ width: 100%;}
#hero-area section div h1{ width: 60%; margin: 0px auto; background: #FFF; padding: 0vw 4%;}
#hero-area section div h1 img{ width: 100%; height: auto;}
#hero-area section div p{ font-size: 1.6rem; line-height: 1.4em; font-weight: 600; color: #000; background: #FFF; margin-top: 45vw; text-align: center; padding: 5vw 4%;}

/* 時間駐車場TOP24にお任せください!! */
.index-intro{ background: var(--clr-bg);}
.index-intro section{}
.index-intro section div{}
.index-intro section div h3{ font-size: 2.0rem; text-align: center; line-height: 1.2em; font-weight: 600;}
.index-intro section div ul{ margin-top: 0.5em;}

.index-intro section div ul li { position:relative; z-index:0; margin-top:0.5em; padding:0.5em 1.0em; font-size:1.6rem; font-weight:600; line-height:1.2; background:transparent; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'><path d='M1 1 H999 L900 999 H1 Z' fill='%23FFF' stroke='%23000' stroke-width='2' vector-effect='non-scaling-stroke' stroke-linejoin='miter' shape-rendering='geometricPrecision'/></svg>"); background-repeat:no-repeat; background-size:100% 100%; }
.index-intro section div ul li::before { content:""; position:absolute; inset:0; background:var(--stroke); -webkit-clip-path:polygon(0 0, 100% 0, calc(100% - var(--cut)) 100%, 0 100%); clip-path:polygon(0 0, 100% 0, calc(100% - var(--cut)) 100%, 0 100%); z-index:-1; }
.index-intro section div ul li::after { content:""; position:absolute; inset:var(--bw); background:var(--bg); -webkit-clip-path:polygon(0 0, 100% 0, calc(100% - var(--cut) - var(--bw)) calc(100% - var(--bw)), 0 100%); clip-path:polygon(0 0, 100% 0, calc(100% - var(--cut) - var(--bw)) calc(100% - var(--bw)), 0 100%); z-index:-1; }

/* 敷地を有効活用しませんか？ / 豊富な実績とノウハウ。 */
.half{ display: flex; justify-content: space-between; flex-wrap: wrap;}
.half figure{ width: 100%;}
.half figure img{ width: 100%; height: auto;}
.half .inner{ width: 100%; margin-top: 1.5em;}
main article section .half + .half{ margin-top: 6.4rem;}

.half .inner h2{ font-size: 2.0rem; line-height: 1.2em; font-weight: 600;}
.half .inner .more-button a{ display: inline-block; font-size: 1.4rem; line-height: 1.2em; font-weight: 600; color: #111; text-decoration: none; padding: 1.0em 1.6em; padding-right: 4.0em; position: relative; clip-path: polygon(0 0, 100% 0%, 90% 100%, 0 100%); background: var(--clr-yel);}
.half .inner .more-button a:after{ content: "\e5e1"; font-family: "Material Icons"; position: absolute; top: 50%; right: 2.4em; transform: translateY(-50%);}
.half .inner .more-button a em{ display: inline-block; font-style: normal; position: relative; top: 0.48em;}
.half .inner .more-button a span{ display: inline-block; width: 80px; margin-right: 0.8em;}
.half .inner .more-button a span img{ width: 100%; height: auto;}
.half .inner .more-button a:hover{ color: #111; background: var(--btn-hover);}

/* よくある質問 */
main article.belt .banner{}
main article.belt .banner img{ width: 100%; height: auto;}
main article.belt .banner a{ display: block; transition: all 0.3s ease 0s;}
main article.belt .banner a:hover{ opacity: 0.64;}
main article.belt .column{ display: flex; justify-content: space-between; flex-wrap: wrap; width: 72%; margin: 4.0rem auto 0;}
main article.belt .column .inner{ width: 100%;}
main article.belt .column .inner:nth-child(n+2){ margin-top: 4.0rem;}

main article.belt .column .inner.facebook{ position: relative;}
main article.belt .column .inner.facebook .fb-wrap{ position: relative; width: 100%; overflow: hidden; padding-top: 120%;}
main article.belt .column .inner.facebook iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none;}

main article.belt .column .inner p.bikeland{ margin-top: 0 !important;}
main article.belt .column .inner p.bikeland img{ width: 100%; height: auto;}
main article.belt .column .inner .youtube{ width: 100%; padding-bottom: 56.25%; margin-top: 1.0em; position: relative;}
main article.belt .column .inner .youtube iframe{ width: 100%; height: 100%; position: absolute; top: 0; right: 0;}

.blank-links{ width: 64%; margin: 4.0rem auto 0; display: flex; justify-content: center; flex-wrap: wrap;}
.blank-links li{ margin: 0.5em;}
.blank-links li img{ width: 100%; height: auto;}

.large_button{ display: none;}
.brDisp480{ display: none;}


/* 固定ページ共通 */
section.sec-title { background: url("../images/merit/merit-section-img.webp") no-repeat center center; background-size: 100%; padding-bottom: 9.8%; position: relative; width: 100%;}
section.sec-title h1,
section.sec-title h2 { top: 50%; left: 50%; max-width: 1200px; position: absolute; transform: translate(-50%,-50%); z-index: 100;}

/* TOP24のメリット */
#merit-hero-area { display: none;}
main#merit .contents.belt { display: none;}
section.merit-title.sec-title h1 { text-align: center;}
section.merit-title.sec-title h1 img { width: 70%;}
section.merit-title.sec-title h2 { top: 50%; left: 50%; font-size: 2.5rem; font-weight: bold; line-height: 1.0em; text-align: center; transform: translate(-50%,-50%); width: 100%;}
main article.merit-intro { height: auto; padding-block: var(--sp-set); position: relative; width: 100%;}
main article.merit-intro > div { margin: 0px auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
main article.merit-intro div ul { display: flex; flex-wrap: wrap; justify-content: center;}
main article.merit-intro div ul li { margin-bottom: 4.0em; width: 80%;}
main article.merit-intro div ul li div { position: relative;}
main article.merit-intro div ul li div span { bottom: 14.5%; color: #fff; font-size: 9.5rem; left: 7%; line-height: 1.0em; position: absolute;}
main article.merit-intro div ul li div > p { background: #595757; bottom: 0; color: #fff; font-size: 2.4rem; margin-top: 0; mix-blend-mode: hard-light; padding: 0.6em 0; position: absolute; text-align: center; width: 100%;}
main article.merit-intro div ul li p { font-size: 1.7rem; line-height: 1.8em; margin-top: 0.5em;}
main article.merit-intro div ul li div figure img { width: 100%;}

main article.merit-tproduction { margin: 3.0em auto; max-width: 80%;}
main article.merit-tproduction p { font-size: 1.5rem; line-height: 1.5em; margin-bottom: 4.0em; text-align: left;}
main article.merit-tproduction figure { margin: 3.0em 0 0; text-align: center;}
main article.merit-tproduction figure img { max-width: 100%;}

/* 駐車場経営の流れ */
#flow-hero-area { display: none;}
main#flow .contents.belt { display: none;}
section.flow-title.sec-title h1,
section.flow-title.sec-title h2 { top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 2.5rem; font-weight: bold; line-height: 1.0em; text-align: center; width: 100%;}
main article.flow-intro > div { margin: 4.0em auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
main article.flow-intro > div .flow-item { display: flex; flex-direction: column; align-items: center; margin-bottom: 4.0em;}
main article.flow-intro > div .flow-item .num { background: #000; border-radius: 50%; color: #fff; font-size: 2.4rem; font-weight: bold; line-height: 1.8em; padding: 0 0.4em;}
main article.flow-intro > div .flow-item .title { font-size: 3.0rem; font-weight: bold; line-height: 1.0em; margin: 0.5em 0;}
main article.flow-intro > div .flow-item .text01 { font-size: 1.8rem; line-height: 1.6em; margin-bottom: 1.2em; text-align: center;}
main article.flow-intro > div .flow-item .underline {}
main article.flow-intro > div .flow-item .underline img { height: 40px; max-width: 100%; object-fit: cover;}

main article.flow-plan { background: #EEEFEF; padding: 4.0em 0;}
main article.flow-plan .flow-plan-inner { margin: 0 auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
main article.flow-plan .flow-plan-sec01 { display: flex; justify-content: space-between; margin-bottom: 5.0em;}
main article.flow-plan .flow-plan-sec01 .plan-item { background: #fff; width: 30%;}
main article.flow-plan .flow-plan-sec01 .plan-item .plan-item-title { background: #F4D01E; min-height: 70px; padding: 0 1.0em; position: relative; text-align: center;}
main article.flow-plan .flow-plan-sec01 .plan-item .plan-item-title span { font-size: 2.1rem; font-weight: bold; left: 50%; line-height: 1.4em; position: absolute; top: 50%; transform: translate(-50%, -50%); width: 100%;}
main article.flow-plan .flow-plan-sec01 .plan-item ul { list-style-type: none; padding: 1.0em;}
main article.flow-plan .flow-plan-sec01 .plan-item ul li { font-size: 1.6rem; line-height: 1.4em; margin: 0 0 0.5em 0; padding-left: 1.0em; position: relative;}
main article.flow-plan .flow-plan-sec01 .plan-item ul li::before { background-color: #F4D01E; border-radius: 50%; content: ""; display: inline-block; height: 16px; margin-left: -1.0em; position: relative; width: 16px; top: 0.1em;}

main article.flow-plan .flow-plan-sec02 {}
.flow-plan-sec02-box {}
.flow-plan-sec02-title { border-bottom: 1px solid #221814; font-size: 2.4rem; font-weight: bold; margin-bottom: 1.0em; padding-bottom: 0.5em; text-align: center;}
.flow-plan-sec02-box-mini { margin: 0 auto 5.0em; max-width: 72%;}
.flow-plan-sec02-box-mini:last-child { margin: 0 auto;}
.flow-plan-sec02-box-mini .ul01 { display: flex; flex-wrap: wrap; margin-bottom: 0.5em;}
.flow-plan-sec02-box-mini .ul01 li { font-size: 1.9rem; line-height: 1.2em; margin: 0 0 0.5em 0.8em; padding-left: 1.0em; position: relative;}
.flow-plan-sec02-box-mini .ul01 li::before { background-color: #F4D01E; border-radius: 50%; content: ""; display: inline-block; height: 16px; margin-left: -1.0em; position: relative; width: 16px;}
.flow-plan-sec02-box-mini .ul02 { display: flex; flex-wrap: wrap; margin-bottom: 0.5em;}
.flow-plan-sec02-box-mini .ul02 li { font-size: 1.4rem; line-height: 1.6em; margin: 0 0.8em 0.8em 0; padding-left: 1.0em; position: relative;}
.flow-plan-sec02-box-mini .ul02 li::before { content: "※"; display: inline-block; margin-left: -1.0em; position: relative;}
.flow-plan-sec02-waku { background: #fff; border: 1px solid #221814; padding: 0.7em 0; display: flex; justify-content: space-between; align-items: center; border-radius: 20px;}
.flow-plan-sec02-waku-left { text-align: center; width: 40%;}
.flow-plan-sec02-waku-left span { background: #F4D01E; border-radius: 20px; display: inline-block; font-size: 2.0rem; font-weight: bold; line-height: 1.0em; padding: 0.5em 2.2em;}
.flow-plan-sec02-waku-right { font-size: 2.0rem; line-height: 1.0em; text-align: center; width: 60%;}

.flow-plan-sec02-box-mini .ol01 { list-style: none; counter-reset: num; padding-left: 2.5em;}
.flow-plan-sec02-box-mini .ol01 li { counter-increment: num; position: relative; margin-bottom: 0.5em; font-size: 1.6rem; line-height: 1.4em;}
.flow-plan-sec02-box-mini .ol01 li::before { content: counter(num); position: absolute; left: -2em; width: 1.4em; height: 1.4em; line-height: 1.4em; text-align: center; border: 1px solid #000; border-radius: 50%; font-size: 0.9em;}

/* よくある質問 */
#qa-hero-area { display: none;}
main#qa .contents.belt { display: none;}
section.qa-title.sec-title h1 { top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 2.5rem; font-weight: bold; line-height: 1.0em; text-align: center;}
main article.qa-sec > div { margin: 4.0em auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
.qa-item { border-bottom: 3px solid #F4D01E; margin-bottom: 2.0em; padding-bottom: 1.0em;}
.qa-q-box { margin-bottom: 0.5em; position: relative; display: flex; justify-content: flex-start; align-items: flex-start;}
.qa-q-box span {background: #F4D01E; border-radius: 50%; font-size: 4.4rem; font-weight: bold; line-height: 1.0em; padding: 0.27em 0.4em;}
.qa-q-box p { font-size: 2.8rem; font-weight: bold; line-height: 1.4em; margin-left: 0.8em;}
.qa-a-box { position: relative; display: flex; justify-content: flex-start; align-items: flex-start;}
.qa-a-box span { font-size: 4.4rem; font-weight: bold; line-height: 1.0em; padding: 0.27em 0.4em;}
.qa-a-box p { font-size: 1.8rem; line-height: 1.6em; margin-left: 1.2em;}


/* 運用駐車場のご案内 */
#parking-hero-area { display: none;}
main#parking .contents.belt { display: none;}
section.parking-title.sec-title h1 { top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 2.5rem; font-weight: bold; line-height: 1.0em; text-align: center;}
main article.parking-intro { margin: 3.0em 0;}
main article.parking-intro .parking-text01 { font-size: 2.0rem; line-height: 1.6em; text-align: center;}
main article.parking-top24 {}
main article.parking-top24 > div { margin: 4.0em auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
.parking-sec-title { border-bottom: 4px solid #F4D01E; font-size: 2.8rem; font-weight: bold; line-height: 1.0em; margin-bottom: 1.0em; padding-bottom: 0.5em; text-align: center;}
main article.parking-top24 ul { display: flex; justify-content: space-between;}
main article.parking-top24 ul li { width: 30%;}
main article.parking-top24 ul li figure { margin-bottom: 1.0em;}
main article.parking-top24 ul li figure img { max-width: 100%;}
main article.parking-top24 ul li p { font-size: 2.1rem; font-weight: bold; line-height: 1.0em; text-align: center;}

main article.parking-guide > div { margin: 4.0em auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
.parking-guide-box { background: #EEEFEF; margin-bottom: 3.0em; padding: 2.0em 1.0em;}
.parking-guide-box-title { font-size: 2.2rem; font-weight: bold; line-height: 1.4em; margin-bottom: 2.0em; text-align: center;}
.sp-kic-outer { display: none;}
.parking-guide-box ul { display: flex; justify-content: flex-start; flex-wrap: wrap;}
.parking-guide-box ul li { font-size: 1.5rem; line-height: 1.8em; width: calc(100%/4);}

main article.parking-management > div { margin: 4.0em auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
main article.parking-management .parking-guide-box-title { margin-bottom: 0;}


/* お問い合わせ */
#contact-hero-area { display: none;}
main#contact .contents.belt { display: none;}
section.contact-title.sec-title h1 { top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 2.5rem; font-weight: bold; line-height: 1.0em; text-align: center;  width: 100%;}
main article.contact-intro { margin: 3.0em 0;}
main article.contact-intro > div { margin: 4.0em auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
main article.contact-intro .contact-text01 { font-size: 2.0rem; line-height: 1.6em; text-align: left;}
main article.contact-intro ul { text-align: left;}
main article.contact-intro ul li { font-size: 2.0rem; line-height: 1.6em;  padding-left: 1.0em; position: relative;}
main article.contact-intro ul li::before {  content: "※"; display: inline-block; margin-left: -1.0em; position: relative;}

main article.contact-tel {}
main article.contact-tel > div { margin: 4.0em auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
.contact-sec-title { border-bottom: 4px solid #F4D01E; font-size: 2.8rem; font-weight: bold; line-height: 1.0em; margin-bottom: 1.0em; padding-bottom: 0.5em; text-align: center;}
.contact-sec { margin: 0 auto; max-width: 780px;}
.contact-box { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; border: 1px solid #221814; margin-bottom: 2.0em; padding: 0.5em 1.0em;}
.contact-box .contact-box-left { font-size: 2.7rem; font-weight: bold; line-height: 1.5em;}
.contact-box {} .contact-box-line { display: none;}
.contact-box {} .contact-box-right { font-size: 3.3rem; font-weight: bold; line-height: 1.5em;}
.contact-sec ul { text-align: left;}
.contact-sec ul li { font-size: 1.6rem; line-height: 1.8em;  padding-left: 1.0em; position: relative;}
.contact-sec ul li::before {  content: "※"; display: inline-block; margin-left: -1.0em; position: relative;}

main article.contact-internet {}
main article.contact-internet > div { margin: 4.0em auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
.contact-sec02 { text-align: center;}
.contact-sec02 p { font-size: 1.8rem; line-height: 1.2em; margin-bottom: 2.0em; text-align: center;}
.contact-form-btn { display: inline-block;}
.contact-form-btn a { display: block; color: #111; font-size: 1.8rem; font-weight: 600; line-height: 1.0em; text-decoration: none; background-image: linear-gradient(#f5d11f 50%, #dabb1c 50%); padding: 1.0em 2.2em; border-radius: 100px; position: relative; overflow: hidden;}
.contact-form-btn a::before { content: ""; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.0); position: absolute; top: 0; left: 0; transition: all 0.3s ease 0s;}
.contact-form-btn a span { display: inline-block; padding-left: 3.0em; position: relative; z-index: 10;}
.contact-form-btn a span::before { content: "\e0e1";font-family: "Material Icons";font-size: 4.0rem;line-height: 1.0em;position: absolute;top: 50%;left: 0;transform: translateY(-50%);}
main article.contact-privacy {}
main article.contact-privacy > div { margin: 4.0em auto; max-width: 1200px; padding: 0; position: relative; width: 90%;}
.contact-sec03 {}
.contact-sec03 p { font-size: 1.7rem; letter-spacing: 0.1em; line-height: 1.6em;}

/* お問い合わせフォーム */
#inquiry article.contents, #inquiry-form article.contents  { padding-block: unset;}
#inquiry article.contents.note, #inquiry-form article.contents.note  { margin-bottom: 1.0em; padding-top: 2.0em;}
#inquiry article.contents.note span { display: block; margin-top: 2.0em; text-align: left;}
#inquiry article section p, #inquiry-form article section p { margin-top: 0.5em; }
article.contents span em { color: #f00;}
article.contents.form { padding-top: 1.0em;}
article.contents.form section { margin: 0px auto; max-width: 1200px; width: calc(100% - 10%);}
article.contents.form section p { margin-top: 1.0em;}
.wpcf7 { background: #FFF; border-radius: 16px; box-shadow: 0 0 16px rgba(0, 0, 0, 0.08); padding: 1.0em 2.0em 2.0em;}
.wpcf7 .screen-reader-response { border: 0;clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; }
.wpcf7-not-valid-tip { color: #FF0000 !important; font-size: 1.4rem !important; font-weight: 600; line-height: 1.2em !important; margin-top: 0.5em;}
.wpcf7-not-valid-tip { color: #dc3232; display: block; font-size: 1em; font-weight: normal; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output { border-color: #ffb900;}
.wpcf7 form.init .wpcf7-response-output, .wpcf7 form.resetting .wpcf7-response-output, .wpcf7 form.submitting .wpcf7-response-output { display: none;}
.wpcf7 form .wpcf7-response-output { border: 2px solid #00a0d2; margin: 2em 0.5em 1em; padding: 0.2em 1em; }
.wpcf7-response-output { background: #FFF; text-align: center;}
.wpcf7-form dl { display: flex; justify-content: space-between; flex-wrap: wrap; }
.wpcf7-form dl dt { padding: 1.6em 0 0; position: relative; width: 100%; display: flex; flex-wrap: wrap; align-items: center;}
.wpcf7-form dl dt .require { color: #FF0000; display: inline-block; font-size: 1.4rem; font-weight: 700; line-height: 1.2em; margin-left: 0.5em;}
.wpcf7-form dl dd { border-bottom: solid 1px #EEE; padding: 0 0 2.0em 0; width: 100%;}
.wpcf7-form-control-wrap { position: relative;}
.wpcf7-form dl dd input[type="tel"], .wpcf7-form dl dd input[type="text"], .wpcf7-form dl dd input[type="email"], .wpcf7-form dl dd textarea { background: #F9F9F9; border: solid 1px #DDD; border-radius: 4px; margin: 0.2em 0; padding: 0.64em; transition: all 0.3s ease 0s;}
.wpcf7-form dl dd input[type="tel"], .wpcf7-form dl dd input[type="text"], .wpcf7-form dl dd input[type="email"], .wpcf7-form dl dd textarea { background: #F9F9F9; border: solid 1px #DDD; border-radius: 4px; margin: 0.2em 0; padding: 0.32em; transition: all 0.3s ease 0s; max-width: 100%;}
.wpcf7-form dl dd p { word-break: break-all;}

.backBtn{ width: 20%; margin: 4.0rem auto 0 !important;}
.backBtn a{ display: block; color: #FFF; background: #184493; text-decoration: none; line-height: 1.0em; font-weight: 600; padding: 1.6em 0; text-align: center; position: relative; z-index: 10; overflow: hidden; border-radius: 8px;}
.backBtn a:hover{ color: #FFF; background: #184493;}
.submit-container { text-align: center;}
.submit-container input[type="submit"] { background: #184493; border-color: #184493; border-radius: 8px; color: #FFF; cursor: pointer; font-size: 1.6rem; font-weight: 600; line-height: 1.0em; padding: 1.25em 4.0em;}
input[type="submit"] { appearance: none; background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0;}
.submit-container input[type="button"] {background: #EEE; border-color: #E4E4E4; border-radius: 8px; cursor: pointer; font-size: 1.6rem; font-weight: 600; line-height: 1.0em; margin-right: 2.0em; padding: 1.25em 2.0em;}
textarea { width: 100%;}
.wpcf7-spinner { display: none !important;}
.wpcf7-spinner { background-color: #23282d; border: none; border-radius: 100%; display: inline-block; height: 24px; margin: 0 24px; opacity: 0.75; padding: 0; position: relative; visibility: hidden; width: 24px;}

