@charset "UTF-8";
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, menu, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

section, article, aside, main, dialog, figure, footer, header, hgroup, nav, section {
  display: block;
}

address {
  font-style: normal;
}

ul, ol {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

* {
  -webkit-appearance: none;
}

*:after,
*:before {
  font-family: inherit;
  color: inherit;
}

*,
*:after,
*:before {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  outline: none;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea) {
  resize: vertical;
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed;
}

:where(input, button, select, option, textarea) {
  background: transparent;
  border: none;
  border-radius: 0;
}

:root {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  cursor: default;
  text-rendering: optimizeLegibility;
}

:root {
  --icon-mail: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2020%2016%22%3E%3Cpath%20d%3D%22M127.884-738.46a1.649,1.649,0,0,1-1.231-.519,1.756,1.756,0,0,1-.5-1.27v-12.422a1.756,1.756,0,0,1,.5-1.27,1.649,1.649,0,0,1,1.231-.519h16.531a1.649,1.649,0,0,1,1.231.519,1.756,1.756,0,0,1,.5,1.27v12.422a1.756,1.756,0,0,1-.5,1.27,1.649,1.649,0,0,1-1.231.519Zm8.266-7.939-8.956-6.043v12.188a.711.711,0,0,0,.2.516.666.666,0,0,0,.5.2h16.522a.666.666,0,0,0,.5-.2.711.711,0,0,0,.2-.516v-12.188Zm0-1.208,8.591-5.776H127.559Zm-8.956-4.834v12.188a.711.711,0,0,0,.2.516.666.666,0,0,0,.5.2h-.7Z%22%20transform%3D%22translate(-126.15%20754.46)%22%20fill%3D%22%23fff%22/%3E%3C/svg%3E");
  --icon-arrow: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2012%2012%22%3E%3Cpath%20d%3D%22M177.522-785.346H168v-1.269h9.522l-4.456-4.456.914-.929L180-785.981%2C174.019-780l-.914-.929Z%22%20transform%3D%22translate(-168%20792)%22%20fill%3D%22white%22/%3E%3C/svg%3E");
  --icon-building: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040%2034.483%22%3E%3Cpath%20d%3D%22M38.31%2C44.746H29.345V39.919a.652.652%2C0%2C0%2C0-.69-.69H14.862V34.4a.652.652%2C0%2C0%2C0-.69-.69H-.31A.652.652%2C0%2C0%2C0-1%2C34.4v33.1a.652.652%2C0%2C0%2C0%2C.69.69H38.31a.652.652%2C0%2C0%2C0%2C.69-.69V45.436A.652.652%2C0%2C0%2C0%2C38.31%2C44.746ZM28.655%2C61.3H24.517V57.16h8.276V61.3ZM19%2C61.3H14.862V57.16h8.276V61.3Zm-9.655%2C0H5.207V57.16h8.276V61.3Zm-8.965%2C0V57.16H3.828V61.3Zm4.138-20.69H8.655v4.138H.379V40.609ZM19%2C46.126h4.138v4.138H14.862V46.126Zm14.483%2C5.517h4.138v4.138H29.345V51.643Zm-5.517%2C4.138H19.69V51.643h8.276Zm-13.793%2C0H10.034V51.643H18.31v4.138Zm-9.655%2C0H.379V51.643H8.655v4.138ZM.379%2C46.126H3.828v4.138H.379V46.126Zm13.1%2C4.138H5.207V46.126h8.276v4.138Zm20.69%2C6.9h3.448V61.3H34.172Zm3.448-6.9H34.172V46.126h3.448Zm-4.828%2C0H24.517V46.126h8.276Zm-4.828-5.517H19.69V40.608h8.276v4.138Zm-9.655%2C0H10.034V40.608H18.31Zm-4.828-5.517H5.207V35.091h8.276v4.138ZM.379%2C35.091H3.828v4.138H.379V35.091Zm0%2C27.586H8.655v4.138H.379Zm9.655%2C0H18.31v4.138H10.034Zm9.655%2C0h8.276v4.138H19.69Zm17.931%2C4.138H29.345V62.677h8.276v4.138Z%22%20transform%3D%22translate%281%20-33.712%29%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
  --icon-roofing: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2040%2025.053%22%3E%3Cpath%20d%3D%22M54.939%2C129.389%2C46.6%2C113.633v-8.065a.5.5%2C0%2C0%2C0-.5-.5H40.312a.5.5%2C0%2C0%2C0-.5.5v2.176H26.758a.5.5%2C0%2C0%2C0-.441.266L23.5%2C113.355%2C20.686%2C118.7l-2.816%2C5.345-2.816%2C5.344a.5.5%2C0%2C0%2C0%2C.828.545%2C3.054%2C3.054%2C0%2C0%2C1%2C2.338-1.3%2C3.125%2C3.125%2C0%2C0%2C1%2C2.365%2C1.3h0a.488.488%2C0%2C0%2C0%2C.111.1.493.493%2C0%2C0%2C0%2C.273.082.5.5%2C0%2C0%2C0%2C.388-.185%2C3.054%2C3.054%2C0%2C0%2C1%2C2.338-1.3%2C3.116%2C3.116%2C0%2C0%2C1%2C2.365%2C1.3h0a.488.488%2C0%2C0%2C0%2C.111.1.493.493%2C0%2C0%2C0%2C.273.082.5.5%2C0%2C0%2C0%2C.388-.185%2C3.054%2C3.054%2C0%2C0%2C1%2C2.338-1.3h.006a3.041%2C3.041%2C0%2C0%2C1%2C2.227%2C1.148.475.475%2C0%2C0%2C0%2C.045.1.5.5%2C0%2C0%2C0%2C.427.241H54.5a.5.5%2C0%2C0%2C0%2C.44-.734Zm-14.13-23.323h4.8v5.685l-1.979-3.742a.5.5%2C0%2C0%2C0-.44-.265h-2.38Zm-2.8%2C2.675h4.35l-2.11%2C3.988a3.848%2C3.848%2C0%2C0%2C0-2.625-1.126H37.62a3.4%2C3.4%2C0%2C0%2C0-1.242.241ZM34.606%2C123.4A3.843%2C3.843%2C0%2C0%2C0%2C32%2C122.292h-.008a3.4%2C3.4%2C0%2C0%2C0-1.242.241l1.75-3.322a3.037%2C3.037%2C0%2C0%2C1%2C2.31-1.268h.006a2.982%2C2.982%2C0%2C0%2C1%2C2.13%2C1.043Zm-5.454.022a3.851%2C3.851%2C0%2C0%2C0-2.632-1.133h-.008a3.4%2C3.4%2C0%2C0%2C0-1.242.241l1.75-3.322a3.037%2C3.037%2C0%2C0%2C1%2C2.31-1.268h.006A2.992%2C2.992%2C0%2C0%2C1%2C31.482%2C119Zm.684-9.559a3.037%2C3.037%2C0%2C0%2C1%2C2.31-1.268h.006a2.992%2C2.992%2C0%2C0%2C1%2C2.146%2C1.06l-2.329%2C4.422a3.851%2C3.851%2C0%2C0%2C0-2.632-1.133h-.008a3.4%2C3.4%2C0%2C0%2C0-1.242.241Zm7.594%2C4.2a3.846%2C3.846%2C0%2C0%2C0-2.617-1.118H34.8a3.4%2C3.4%2C0%2C0%2C0-1.242.241l1.75-3.323a3.037%2C3.037%2C0%2C0%2C1%2C2.31-1.268h.006a2.986%2C2.986%2C0%2C0%2C1%2C2.138%2C1.051Zm-4.895-9.325h4.352l-2.1%2C3.995a3.851%2C3.851%2C0%2C0%2C0-2.632-1.133h-.008a3.4%2C3.4%2C0%2C0%2C0-1.242.241Zm-5.477%2C0H31.41l-2.1%2C3.995a3.851%2C3.851%2C0%2C0%2C0-2.632-1.133h-.008a3.4%2C3.4%2C0%2C0%2C0-1.242.241Zm-2.7%2C5.125a3.037%2C3.037%2C0%2C0%2C1%2C2.31-1.268h.006a2.992%2C2.992%2C0%2C0%2C1%2C2.146%2C1.06L26.49%2C118.08a3.851%2C3.851%2C0%2C0%2C0-2.632-1.133h-.008a3.4%2C3.4%2C0%2C0%2C0-1.242.241Zm-2.816%2C5.345a3.037%2C3.037%2C0%2C0%2C1%2C2.31-1.268h.006A2.992%2C2.992%2C0%2C0%2C1%2C26%2C119l-2.329%2C4.422a3.851%2C3.851%2C0%2C0%2C0-2.632-1.133h-.008a3.4%2C3.4%2C0%2C0%2C0-1.242.241Zm-.684%2C9.559a3.851%2C3.851%2C0%2C0%2C0-2.632-1.133h-.008a3.4%2C3.4%2C0%2C0%2C0-1.242.241l1.75-3.323a3.037%2C3.037%2C0%2C0%2C1%2C2.31-1.268h.006a2.992%2C2.992%2C0%2C0%2C1%2C2.146%2C1.06Zm5.477%2C0a3.851%2C3.851%2C0%2C0%2C0-2.632-1.133H23.7a3.4%2C3.4%2C0%2C0%2C0-1.242.241l1.75-3.323a3.037%2C3.037%2C0%2C0%2C1%2C2.31-1.268h.006a2.992%2C2.992%2C0%2C0%2C1%2C2.146%2C1.06Zm2.846-1.133h-.008a3.4%2C3.4%2C0%2C0%2C0-1.242.241l1.75-3.323a3.037%2C3.037%2C0%2C0%2C1%2C2.31-1.268H32a2.978%2C2.978%2C0%2C0%2C1%2C2.123%2C1.035l-2.337%2C4.418A3.842%2C3.842%2C0%2C0%2C0%2C29.182%2C127.637Zm5.983%2C1.487L43.19%2C114l8.026%2C15.124Zm17.178%2C0L43.629%2C112.7a.5.5%2C0%2C0%2C0-.88%2C0l-8.713%2C16.421h-1.33l10.483-19.817%2C10.483%2C19.817Z%22%20transform%3D%22translate(-14.997%20-105.07)%22%20fill%3D%22white%22/%3E%3C/svg%3E");
  --icon-reform: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2040%2040%22%3E%3Cg%20transform%3D%22translate(-2.009%20-2)%22%3E%3Cpath%20d%3D%22M42.05%2C18.674a.666.666%2C0%2C0%2C0-.319.886A18.665%2C18.665%2C0%2C0%2C1%2C12.884%2C41.842h2.079a.666.666%2C0%2C1%2C0%2C0-1.332h-3.8a.665.665%2C0%2C0%2C0-.617.419c-.006.015%2C0%2C.031-.009.047a.654.654%2C0%2C0%2C0-.041.2v3.792a.667.667%2C0%2C0%2C0%2C1.334%2C0V42.695a20%2C20%2C0%2C0%2C0%2C31.107-23.7.667.667%2C0%2C0%2C0-.888-.318Z%22%20transform%3D%22translate(-2.837%20-5.491)%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M8.8%2C8.794A18.729%2C18.729%2C0%2C0%2C1%2C33.972%2C7.657h-2.08a.666.666%2C0%2C1%2C0%2C0%2C1.332h3.8a.67.67%2C0%2C0%2C0%2C.474-.194.657.657%2C0%2C0%2C0%2C.191-.494V4.531a.667.667%2C0%2C0%2C0-1.334%2C0V6.8a20%2C20%2C0%2C0%2C0-31.107%2C23.7.668.668%2C0%2C0%2C0%2C.6.382.657.657%2C0%2C0%2C0%2C.284-.064.666.666%2C0%2C0%2C0%2C.319-.886A18.66%2C18.66%2C0%2C0%2C1%2C8.8%2C8.794Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M16.472%2C35.775h18.3a.666.666%2C0%2C0%2C0%2C.667-.666V23.363a2.1%2C2.1%2C0%2C0%2C0%2C.912.22%2C2.071%2C2.071%2C0%2C0%2C0%2C1.33-3.659L27%2C11.014a.679.679%2C0%2C0%2C0-.1-.081%2C1.47%2C1.47%2C0%2C0%2C0-.172-.118%2C1.244%2C1.244%2C0%2C0%2C0-.166-.1.521.521%2C0%2C0%2C0-.119-.045c-.049-.025-.113-.051-.176-.076a.66.66%2C0%2C0%2C0-.093-.029c-.042-.011-.085-.017-.157-.029a1.17%2C1.17%2C0%2C0%2C0-.2-.034%2C1.05%2C1.05%2C0%2C0%2C0-.2%2C0%2C1.064%2C1.064%2C0%2C0%2C0-.2%2C0%2C1.1%2C1.1%2C0%2C0%2C0-.212.04c-.029%2C0-.116.017-.144.024a.685.685%2C0%2C0%2C0-.139.051c-.021.011-.048.021-.108.044-.029.01-.117.045-.146.059a.291.291%2C0%2C0%2C0-.1.062.631.631%2C0%2C0%2C0-.126.078.834.834%2C0%2C0%2C0-.153.114L13.567%2C19.921a2.062%2C2.062%2C0%2C0%2C0-.272%2C2.908%2C2.121%2C2.121%2C0%2C0%2C0%2C2.51.529v11.75a.666.666%2C0%2C0%2C0%2C.667.666ZM22.2%2C34.443V24.934h6.842v9.509Zm11.9%2C0H30.377V24.269a.666.666%2C0%2C0%2C0-.667-.666H21.533a.666.666%2C0%2C0%2C0-.667.666V34.443H17.139v-12.1l4.5-3.75%2C3.985-3.321%2C8.482%2C7.08ZM14.325%2C21.983a.734.734%2C0%2C0%2C1%2C.1-1.039L25.15%2C12l.017-.015c.02-.013.041-.026.062-.041l.041-.026a.438.438%2C0%2C0%2C0%2C.062-.024h0l.08-.032.059-.01.078-.018.076%2C0c.007%2C0%2C.028%2C0%2C.05%2C0a.242.242%2C0%2C0%2C0%2C.062.008.78.78%2C0%2C0%2C0%2C.1.02l.067.03.067.024c.011.007.054.028.065.035a.666.666%2C0%2C0%2C0%2C.11.089l10.68%2C8.909a.739.739%2C0%2C0%2C1%2C.1%2C1.04h0a.766.766%2C0%2C0%2C1-1.053.093l-9.815-8.188a.706.706%2C0%2C0%2C0-.858%2C0l-6.472%2C5.4-3.349%2C2.792a.748.748%2C0%2C0%2C1-1.047-.093Z%22%20transform%3D%22translate(-3.612%20-2.84)%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M34.415%2C37.882a.665.665%2C0%2C0%2C0-.666.666v.519a.666.666%2C0%2C0%2C0%2C1.332%2C0v-.519A.665.665%2C0%2C0%2C0%2C34.415%2C37.882Z%22%20transform%3D%22translate(-10.572%20-11.954)%22%20fill%3D%22white%22/%3E%3C/g%3E%3C/svg%3E");
  --icon-service: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2239.999%22%20height%3D%2240%22%20viewBox%3D%220%200%2039.999%2040%22%3E%3Cpath%20id%3D%22home-renovation%22%20d%3D%22M32%2C2H29.335A1.335%2C1.335%2C0%2C0%2C0%2C28%2C3.332V4.457L21.4.394a2.655%2C2.655%2C0%2C0%2C0-2.795%2C0L1.269%2C11.06A2.66%2C2.66%2C0%2C0%2C0%2C2%2C15.906V32a2%2C2%2C0%2C0%2C0%2C2%2C2H7.557A4.554%2C4.554%2C0%2C0%2C0%2C7.591%2C36.9a.819.819%2C0%2C0%2C0%2C1.36.322L10.9%2C35.279l1.151%2C1.151L10.1%2C38.378a.823.823%2C0%2C0%2C0-.213.785.788.788%2C0%2C0%2C0%2C.518.568%2C4.559%2C4.559%2C0%2C0%2C0%2C1.531.263%2C4.6%2C4.6%2C0%2C0%2C0%2C4.544-5.415L17.062%2C34h2.845a2.1%2C2.1%2C0%2C0%2C0%2C.54.956%2C2.142%2C2.142%2C0%2C0%2C0%2C2.475.4l3.593%2C3.587A3.593%2C3.593%2C0%2C0%2C0%2C31.733%2C34H36a2%2C2%2C0%2C0%2C0%2C2-2V15.915a2.667%2C2.667%2C0%2C0%2C0%2C.731-4.853l-5.4-3.321V3.335A1.335%2C1.335%2C0%2C0%2C0%2C32%2C2ZM29.335%2C3.332H32V6.918l-2.667-1.64V3.333ZM15.279%2C33.893a.666.666%2C0%2C0%2C0-.173.645%2C3.267%2C3.267%2C0%2C0%2C1-3.393%2C4.111l1.4-1.4a1.158%2C1.158%2C0%2C0%2C0%2C0-1.637l-1.4-1.4a1.173%2C1.173%2C0%2C0%2C0-1.643%2C0l-1.4%2C1.4a3.273%2C3.273%2C0%2C0%2C1%2C4.115-3.389.662.662%2C0%2C0%2C0%2C.643-.173l4.134-4.133%2C1.843%2C1.842ZM24.9%2C20.115a3.262%2C3.262%2C0%2C0%2C1%2C3.391-4.1l-1.405%2C1.4a1.172%2C1.172%2C0%2C0%2C0%2C.008%2C1.637l1.388%2C1.381a1.2%2C1.2%2C0%2C0%2C0%2C1.644.008l1.4-1.4a3.271%2C3.271%2C0%2C0%2C1-4.107%2C3.4.664.664%2C0%2C0%2C0-.645.171l-4.14%2C4.134L20.59%2C24.9l4.134-4.14a.667.667%2C0%2C0%2C0%2C.172-.644Zm-1.8%2C9.171L21.959%2C30.42%2C12.4%2C20.863a.672.672%2C0%2C0%2C0-.259-.161l-1.365-.465L8.679%2C17.3a.068.068%2C0%2C0%2C1%2C.005-.085l1.19-1.19a.072.072%2C0%2C0%2C1%2C.1-.009l2.956%2C2.128.447%2C1.329a.682.682%2C0%2C0%2C0%2C.161.259ZM20.356%2C30.7l.66.66-.568.568a2.1%2C2.1%2C0%2C0%2C0-.474.732H18.4L20.355%2C30.7Zm10.312%2C7.288%2C0%2C0a2.305%2C2.305%2C0%2C0%2C1-3.2%2C0l-3.991-3.984a.666.666%2C0%2C0%2C0-.942%2C0%2C.8.8%2C0%2C0%2C1-1.135%2C0%2C.813.813%2C0%2C0%2C1%2C0-1.135l4.154-4.152a.814.814%2C0%2C0%2C1%2C1.137%2C0%2C.78.78%2C0%2C0%2C1%2C.231.585.75.75%2C0%2C0%2C1-.231.55.665.665%2C0%2C0%2C0%2C0%2C.942l3.986%2C3.994a2.251%2C2.251%2C0%2C0%2C1%2C0%2C3.2ZM36%2C32.663H30.429l-2.408-2.412a2%2C2%2C0%2C0%2C0%2C.225-.947%2C2.085%2C2.085%2C0%2C0%2C0-.625-1.531%2C2.154%2C2.154%2C0%2C0%2C0-3.017%2C0l-.569.569-.659-.659%2C3.88-3.874a4.605%2C4.605%2C0%2C0%2C0%2C5.158-6.041.8.8%2C0%2C0%2C0-.579-.551.823.823%2C0%2C0%2C0-.784.212L29.1%2C19.373l-1.15-1.145%2C1.95-1.944a.824.824%2C0%2C0%2C0%2C.213-.777.8.8%2C0%2C0%2C0-.52-.576%2C4.6%2C4.6%2C0%2C0%2C0-6.073%2C5.146l-3.875%2C3.88L14.588%2C18.9l-.39-1.16a1.367%2C1.367%2C0%2C0%2C0-.516-.718L10.75%2C14.932a1.4%2C1.4%2C0%2C0%2C0-1.81.142l-1.2%2C1.2a1.4%2C1.4%2C0%2C0%2C0-.139%2C1.8l2.09%2C2.933a1.361%2C1.361%2C0%2C0%2C0%2C.7.513l1.181.4%2C5.06%2C5.059-3.875%2C3.875a4.589%2C4.589%2C0%2C0%2C0-3.611.877%2C4.646%2C4.646%2C0%2C0%2C0-.9.934H4A.667.667%2C0%2C0%2C1%2C3.336%2C32V15.9a2.654%2C2.654%2C0%2C0%2C0%2C.731-.3L20%2C5.8%2C35.939%2C15.6a2.67%2C2.67%2C0%2C0%2C0%2C.731.308V32a.667.667%2C0%2C0%2C1-.667.667Zm2.469-18.632a1.362%2C1.362%2C0%2C0%2C1-1.834.436L20.351%2C4.446a.668.668%2C0%2C0%2C0-.7%2C0L3.367%2C14.465a1.333%2C1.333%2C0%2C1%2C1-1.4-2.27L19.3%2C1.529a1.333%2C1.333%2C0%2C0%2C1%2C1.4%2C0L38.034%2C12.195a1.336%2C1.336%2C0%2C0%2C1%2C.437%2C1.835Z%22%20transform%3D%22translate(-0.001%200.003)%22%20fill%3D%22%23333%22%2F%3E%3C%2Fsvg%3E");
}

html {
  font-size: 62.5%;
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  overflow-x: hidden;
}

body {
  font-size: 1.0810810811vw;
  color: #333;
  font-family: "Zen Kaku Gothic New", YuGothic, "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.04em;
  font-feature-settings: "palt";
  word-break: break-word;
  line-break: strict;
  overflow-wrap: break-word;
  overflow-x: visible;
  background: #fdf9f7;
  position: relative;
}
@media screen and (max-width: 992px) {
  body {
    font-size: 4.2666666667vw;
  }
}

a {
  color: #333;
  text-decoration: none;
  transition: all 0.3s ease;
}

a[href^="tel:"] {
  pointer-events: all;
}
@media screen and (min-width: 993px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

span {
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

img,
svg {
  width: auto;
  max-width: 100%;
  vertical-align: bottom;
}

img {
  height: auto;
}

picture {
  display: block;
}

strong,
em {
  font-weight: 700;
}

pre {
  white-space: pre-wrap;
}

table {
  max-width: 100%;
  width: 100%;
}
table th,
table td {
  word-break: break-all;
}

sup {
  font-size: 0.75em;
  vertical-align: super;
}

sub {
  font-size: 0.75em;
  vertical-align: sub;
}

.grecaptcha-badge {
  visibility: hidden;
}

.l-content {
  position: relative;
  overflow-x: clip;
  z-index: 1;
}

.l-container {
  max-width: 81.0810810811vw;
  margin: 0 auto;
  width: 100%;
}
@media screen and (max-width: 992px) {
  .l-container {
    max-width: 100%;
    padding: 0 5.3333333333vw;
  }
}
.l-container.--company {
  background: url(../img/index/bg-company.jpg) no-repeat;
  background-size: 100% 100%;
  border-radius: 2.1621621622vw;
  padding: 4.3243243243vw 5.4054054054vw 9.7297297297vw;
}
@media screen and (max-width: 992px) {
  .l-container.--company {
    background-size: auto 100%;
    border-radius: 4vw;
    max-width: calc(100% - 10.6666666667vw);
    padding: 13.3333333333vw 5.3333333333vw 21.3333333333vw;
  }
}

.l-header {
  width: 100%;
  position: sticky;
  top: 0;
  z-index: 999;
}

.l-header__inner {
  background: #fcf9f7;
  border-radius: 0 0 2.1621621622vw 2.1621621622vw;
  width: 100%;
  padding-inline: 2.7027027027vw;
  padding-block: 1.25vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  transition: background-color 0.3s ease;
}
@media screen and (max-width: 992px) {
  .l-header__inner {
    border-radius: unset;
    min-width: auto;
    padding-inline: 5.3333333333vw;
    padding-block: 2.6666666667vw;
  }
}

@media screen and (max-width: 992px) {
  .l-header__logo {
    z-index: 999;
  }
}

.l-header__logo__catch {
  font-size: 0.6081081081vw;
  display: block;
  font-weight: 400;
  margin-bottom: 0.5405405405vw;
  white-space: nowrap;
}
@media screen and (max-width: 992px) {
  .l-header__logo__catch {
    display: none;
  }
}

.l-header__logo__link {
  transition: 0.3s ease;
}
@media screen and (min-width: 993px) {
  .l-header__logo__link:hover {
    opacity: 0.6;
  }
}

.l-header__logo__img {
  width: 14.8648648649vw;
}
@media screen and (max-width: 992px) {
  .l-header__logo__img {
    width: 45.3333333333vw;
  }
}

.l-header__nav {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: 2.1621621622vw;
}
@media screen and (max-width: 992px) {
  .l-header__nav {
    display: none;
    padding: 21.3333333333vw 0;
    background: #988e86;
    position: fixed;
    width: 100%;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 100;
    overflow-y: scroll;
    transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1);
  }
}
.l-header__nav .l-header__nav__inner {
  display: flex;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__inner {
    display: block;
  }
}
.l-header__nav .l-header__nav__gl {
  display: flex;
  gap: 2.027027027vw;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__gl {
    display: block;
  }
}
.l-header__nav .l-header__nav__gl__item {
  position: relative;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__gl__item:last-child .l-header__nav__gl__item__inner {
    border-bottom: solid 1px #a0a0a0;
  }
}
.l-header__nav .l-header__nav__gl__item__inner {
  transition: all 0.3s ease;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__gl__item__inner {
    padding: 5.3333333333vw;
    display: block;
    border-top: solid 1px #a0a0a0;
  }
}
.l-header__nav .l-header__nav__gl__item__inner:hover {
  color: #ec6c00;
  transition: all 0.3s ease;
}
.l-header__nav .l-header__nav__gl__item__link {
  font-size: 1.0135135135vw;
  font-weight: 700;
  line-height: 1.47;
  letter-spacing: 0.05em;
  border-bottom: solid 1px transparent;
  display: inline-block;
  transition: border-bottom 0.3s ease;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__gl__item__link {
    color: #fff;
    padding: 1.3333333333vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 4.2666666667vw;
  }
  .l-header__nav .l-header__nav__gl__item__link:hover {
    color: #ec6c00;
  }
}
.l-header__nav .l-header__nav__gl__item__link .c-linkButton__icon {
  display: none;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__gl__item__link .c-linkButton__icon {
    display: block;
  }
  .l-header__nav .l-header__nav__gl__item__link .c-linkButton__icon img {
    vertical-align: middle;
    width: 3.7333333333vw;
  }
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__sub {
    margin: 10.6666666667vw 4vw 0;
  }
}
.l-header__nav .l-header__nav__sub .l-header__nav__button__icon img {
  margin-right: 0.5405405405vw;
  vertical-align: text-top;
  width: 1.3513513514vw;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__sub .l-header__nav__button__icon img {
    margin-right: 4.2666666667vw;
    width: 8vw;
  }
}
.l-header__nav .l-header__nav__button {
  text-align: center;
  border-radius: 67.5vw;
  padding: 1.0135135135vw 1.7567567568vw;
  transition: opacity 0.3s ease;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__button {
    padding: 4vw;
    display: block;
  }
}
.l-header__nav .l-header__nav__button.--orange {
  font-size: 0.8783783784vw;
  line-height: 1.69;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__button.--orange {
    font-size: 4.2666666667vw;
  }
}
.l-header__nav .l-header__nav__button.--orange .l-header__nav__button__icon {
  display: inline-block;
  width: 1.3513513514vw;
  aspect-ratio: 5/4;
  background-color: #fff;
  margin-right: 0.5405405405vw;
  -webkit-mask: var(--icon-mail) no-repeat center/contain;
  mask: var(--icon-mail) no-repeat center/contain;
  vertical-align: middle;
}
@media screen and (max-width: 992px) {
  .l-header__nav .l-header__nav__button.--orange .l-header__nav__button__icon {
    margin-right: 4.2666666667vw;
    width: 8vw;
  }
}
.l-header__nav .l-header__nav__button:hover {
  opacity: 0.6;
}

.l-header__hm {
  display: none;
}
@media screen and (max-width: 992px) {
  .l-header__hm {
    background: #897d73;
    border-radius: 50%;
    width: 11.7333333333vw;
    height: 11.7333333333vw;
    position: relative;
    display: block;
    z-index: 999;
  }
}
.l-header__hm.is-active .l-header__hm__bar:nth-child(1) {
  transform: translateY(1.6vw) rotate(-45deg);
}
.l-header__hm.is-active .l-header__hm__bar:nth-child(2) {
  opacity: 0;
  transform: translateX(5.3333333333vw);
}
.l-header__hm.is-active .l-header__hm__bar:nth-child(3) {
  transform: translateY(-1.6vw) rotate(45deg);
}

.l-header__hm__inner {
  width: 100%;
  height: 100%;
  display: inline-block;
}

.l-header__hm__bar {
  background: #fff;
  width: 1.0810810811vw;
  height: 1px;
  margin: 0 auto;
  position: relative;
  z-index: 100;
  position: absolute;
  right: 0;
  left: 0;
  transition: transform 0.3s ease;
}
@media screen and (max-width: 992px) {
  .l-header__hm__bar {
    width: 4.2666666667vw;
  }
}
.l-header__hm__bar:nth-child(1) {
  top: calc(50% - 1.6vw);
}
.l-header__hm__bar:nth-child(2) {
  top: 50%;
}
.l-header__hm__bar:nth-child(3) {
  top: calc(50% + 1.6vw);
}

.l-footer {
  margin-top: 10.8108108108vw;
  text-align: center;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 992px) {
  .l-footer {
    max-width: 100%;
    min-width: auto;
    margin-top: 21.3333333333vw;
  }
}
.l-footer .l-footer__contact__txt {
  margin-bottom: 4.3243243243vw;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__contact__txt {
    margin-bottom: 8vw;
  }
}
.l-footer .l-footer__contact__inner {
  display: grid;
  grid-template-columns: 35.6756756757vw 35.6756756757vw;
  column-gap: 1.6216216216vw;
  justify-content: center;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__contact__inner {
    grid-template-columns: 1fr;
    gap: 5.3333333333vw;
  }
}
.l-footer .l-footer__contact__item {
  background: #fdf9f8;
  font-weight: 700;
  padding: 3.2432432432vw;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__contact__item {
    padding: 5.3333333333vw;
  }
}
.l-footer .l-footer__contact__item__ttl {
  font-size: 1.0810810811vw;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__contact__item__ttl {
    font-size: 4.2666666667vw;
  }
}
.l-footer .l-footer__contact__cont {
  position: relative;
}
.l-footer .l-footer__contact__cont:before {
  content: "";
  background: url(../img/common/bg-brown.jpg) no-repeat bottom/cover;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  bottom: 0;
  z-index: -1;
}
.l-footer .l-footer__contact__cont__inner {
  background: #fff;
  border-radius: 4.3243243243vw;
  box-shadow: rgba(145, 145, 145, 0.2) 0.5405405405vw 0.5405405405vw 2.7027027027vw;
  max-width: 94.5945945946vw;
  margin: 0 auto;
  padding: 5.4054054054vw 1.3513513514vw 6.7567567568vw;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__contact__cont__inner {
    border-radius: 4vw;
    max-width: calc(100% - 10.6666666667vw);
    padding: 13.3333333333vw 0;
  }
}
.l-footer .l-footer__company {
  display: flex;
  justify-content: space-between;
  gap: 3.7162162162vw;
  flex-wrap: wrap;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__company {
    gap: 4vw;
  }
}
.l-footer .l-footer__company__logo {
  font-size: 1.3513513514vw;
  margin-bottom: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__company__logo {
    font-size: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
.l-footer .l-footer__company__item .l-footer__nav__link {
  background: #fff;
  border-radius: 67.5vw;
  color: #333;
  display: inline-block;
  font-size: 0.8108108108vw;
  line-height: 1.4;
  margin-top: 0.8108108108vw;
  padding: 0.5405405405vw 1.3513513514vw;
  text-align: center;
  transition: all 0.3s ease;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__company__item .l-footer__nav__link {
    font-size: 3.2vw;
    margin-top: 3.2vw;
    padding: 1.3333333333vw 2.6666666667vw;
  }
}
.l-footer .l-footer__company__item .l-footer__nav__link:hover {
  background: #333;
  color: #fff;
  transition: all 0.3s ease;
}
.l-footer .l-footer__company__info {
  display: block;
  font-size: 1.0810810811vw;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__company__info {
    font-size: 4.2666666667vw;
  }
}
.l-footer .l-footer__company__info.--add {
  font-size: 0.9459459459vw;
  font-weight: 500;
  margin-top: 0.8108108108vw;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__company__info.--add {
    font-size: 3.7333333333vw;
    margin-top: 3.2vw;
    text-decoration: none;
  }
}
.l-footer .l-footer__main {
  background: url(../img/common/bg-brown.jpg) repeat center center;
  text-align: left;
  padding-bottom: 6.7567567568vw;
  width: 100%;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__main {
    display: block;
    padding-bottom: 21.3333333333vw;
  }
}
.l-footer .l-footer__main__navMain {
  display: flex;
  justify-content: space-between;
  margin-bottom: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__main__navMain {
    flex-direction: column;
    margin-bottom: 0;
  }
}
.l-footer .l-footer__main__navSub {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__main__navSub {
    align-items: flex-start;
    flex-direction: column;
  }
}
.l-footer .l-footer__main__navSub .l-footer__nav__link {
  color: #fff;
  font-size: 0.8783783784vw;
  padding: 0;
  transition: all 0.3s ease;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__main__navSub .l-footer__nav__link {
    font-size: 4.2666666667vw;
    padding: 1.3333333333vw 0;
  }
}
.l-footer .l-footer__main__navSub .l-footer__nav__link:hover {
  color: #ec6c00;
  transition: all 0.3s ease;
}
.l-footer .l-footer__main__inner {
  max-width: 94.5945945946vw;
  margin: 0 auto;
  padding-top: 9.4594594595vw;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__main__inner {
    max-width: 100%;
    padding: 21.3333333333vw 5.3333333333vw 0;
  }
}
.l-footer .l-footer__main__cont__item {
  color: #fff;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__main__cont__item.--nav {
    margin-top: 8vw;
  }
}
.l-footer .l-footer__nav {
  display: flex;
  justify-content: space-between;
  gap: 4.0540540541vw;
  flex-wrap: wrap;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__nav {
    flex-direction: column;
    gap: 0;
  }
}
.l-footer .l-footer__nav .l-footer__nav__link {
  color: #fff;
  font-size: 1.0135135135vw;
  padding: 0.4054054054vw 0;
  display: block;
  transition: color 0.3s ease;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__nav .l-footer__nav__link {
    font-size: 4.2666666667vw;
    padding: 1.3333333333vw 0;
  }
}
.l-footer .l-footer__nav .l-footer__nav__link:hover {
  color: #ec6c00;
}
.l-footer .l-footer__nav .l-footer__nav__list.--sub {
  width: auto;
}
.l-footer .l-footer__nav .l-footer__nav__list.--sub .l-footer__nav__item {
  display: flex;
  align-items: center;
  gap: 0.6756756757vw;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__nav .l-footer__nav__list.--sub .l-footer__nav__item {
    gap: 2.1333333333vw;
  }
}
.l-footer .l-footer__nav .l-footer__nav__list.--sub .l-footer__nav__item::before {
  content: "";
  background: #b7b7b7;
  display: block;
  height: 1px;
  width: 0.8108108108vw;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__nav .l-footer__nav__list.--sub .l-footer__nav__item::before {
    width: 2.1333333333vw;
  }
}
.l-footer .l-footer__copyright {
  text-align: center;
}
.l-footer .l-footer__copyright__txt {
  font-size: 0.8783783784vw;
  color: #fff;
  font-weight: 400;
}
@media screen and (max-width: 992px) {
  .l-footer .l-footer__copyright__txt {
    font-size: 4.2666666667vw;
    padding: 1.3333333333vw 0;
  }
}

.c-sec__ttl {
  margin-bottom: 2.027027027vw;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl {
    margin-bottom: 4vw;
  }
}
.c-sec__ttl.--white {
  color: #fff;
}
.c-sec__ttl.--services {
  margin-bottom: 1.0135135135vw;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl.--services {
    margin-bottom: 4vw;
  }
}
.c-sec__ttl.--services .c-sec__ttl__main {
  font-size: 1.0810810811vw;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl.--services .c-sec__ttl__main {
    font-size: 3.7333333333vw;
  }
}
.c-sec__ttl.--services .c-sec__ttl__sub {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  font-size: 2.2972972973vw;
  margin-top: 0.3378378378vw;
  transition: color 0.3s ease;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl.--services .c-sec__ttl__sub {
    font-size: 6.4vw;
    margin-top: 1.3333333333vw;
  }
}
.c-sec__ttl.--hasLineLest {
  display: flex;
  align-items: center;
  font-size: 2.027027027vw;
  font-weight: 700;
  line-height: 1.4;
  margin: 1.6891891892vw auto 1.0135135135vw;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl.--hasLineLest {
    font-size: 5.3333333333vw;
    margin: 5.3333333333vw auto 4vw;
  }
}
.c-sec__ttl.--hasLineLest:before {
  content: "";
  background: #ec6c00;
  border-radius: 67.5vw;
  display: block;
  height: 0.1351351351vw;
  margin-right: 1.0135135135vw;
  width: 1.3513513514vw;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl.--hasLineLest:before {
    height: 0.5333333333vw;
    margin-right: 2.6666666667vw;
    width: 5.3333333333vw;
  }
}
.c-sec__ttl.--hasLineTop {
  font-size: 2.7027027027vw;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 0;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl.--hasLineTop {
    font-size: 6.9333333333vw;
    margin-bottom: 4vw;
  }
}
.c-sec__ttl.--hasLineTop:before {
  content: "";
  background: #ec6c00;
  border-radius: 67.5vw;
  display: block;
  height: 0.2702702703vw;
  margin-bottom: 0.4054054054vw;
  width: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl.--hasLineTop:before {
    height: 0.5333333333vw;
    margin-bottom: 1.0666666667vw;
    width: 5.3333333333vw;
  }
}
.c-sec__ttl.--hasLineTop.--white {
  color: #fff;
}
.c-sec__ttl.--hasLineTop.--white:before {
  background: #fff;
}
.c-sec__ttl.--nonLine {
  font-size: 1.6216216216vw;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 1.0135135135vw;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl.--nonLine {
    font-size: 5.3333333333vw;
    margin-bottom: 4vw;
  }
}
.c-sec__ttl.--nonLine.--md {
  font-size: 1.7567567568vw;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl.--nonLine.--md {
    font-size: 5.3333333333vw;
  }
}

.c-sec__ttl__main {
  color: #ec6c00;
  font-size: 1.2162162162vw;
  font-weight: 700;
  display: block;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl__main {
    font-size: 4.2666666667vw;
  }
}
.c-sec__ttl__main.--white {
  color: #fff;
}

.c-sec__ttl__sub {
  font-size: 2.7027027027vw;
  font-weight: 700;
  line-height: 1.4;
  display: block;
}
@media screen and (max-width: 992px) {
  .c-sec__ttl__sub {
    font-size: 7.4666666667vw;
  }
}

.l-container.--company .c-sec__ttl {
  margin-bottom: 0;
}
.l-container.--company .c-linkButton__circle {
  margin-top: 0;
  text-align: right;
}
@media screen and (max-width: 992px) {
  .l-container.--company .c-linkButton__circle {
    margin-top: 5.3333333333vw;
    text-align: center;
  }
}

.c-numberLabel {
  background: #ec6c00;
  border-radius: 67.5vw;
  color: #fff;
  display: inline-block;
  font-size: 1.0810810811vw;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 1.0135135135vw;
  padding: 0.472972973vw 1.6891891892vw;
}
@media screen and (max-width: 992px) {
  .c-numberLabel {
    font-size: 3.7333333333vw;
    padding: 1.3333333333vw 2.6666666667vw;
  }
}
.p-strengths__item .c-numberLabel.--vertical {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(50%, -50%);
  padding: 1.6891891892vw 0.472972973vw;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 992px) {
  .p-strengths__item .c-numberLabel.--vertical {
    line-height: 1.4;
    padding: 2.6666666667vw 1.3333333333vw;
    right: 10.6666666667vw;
  }
}
.p-strengths__item:nth-child(even) .c-numberLabel.--vertical {
  left: 0;
  right: auto;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 992px) {
  .p-strengths__item:nth-child(even) .c-numberLabel.--vertical {
    left: 10.6666666667vw;
  }
}
.c-numberLabel.--sm {
  font-size: 0.8783783784vw;
  margin-bottom: 1.6216216216vw;
  padding: 0.5405405405vw 1.4864864865vw;
}
@media screen and (max-width: 992px) {
  .c-numberLabel.--sm {
    font-size: 2.9333333333vw;
    margin-bottom: 2.6666666667vw;
    padding: 1.3333333333vw 2.6666666667vw;
  }
}

.c-prosCons__label {
  font-size: 1.2162162162vw;
  font-weight: 700;
  padding-left: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .c-prosCons__label {
    font-size: 4.8vw;
    padding-left: 4vw;
  }
}

.c-servicePage__read {
  padding-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .c-servicePage__read {
    padding-top: 21.3333333333vw;
  }
}

.c-prosCons.--demerit .c-prosCons__list.--points {
  background: #edf0f2;
}

.c-prosCons__list.--points {
  background: #ffead9;
  border-radius: 1.0810810811vw;
  margin-top: -1.0810810811vw;
  padding: 1.6216216216vw 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .c-prosCons__list.--points {
    border-radius: 2.6666666667vw;
    margin-top: -4vw;
    padding: 4vw;
  }
}

.c-prosCons__point {
  display: flex;
  align-items: center;
  line-height: 1.5;
}
.c-prosCons__point:not(:last-child) {
  margin-bottom: 0.5405405405vw;
}
@media screen and (max-width: 992px) {
  .c-prosCons__point:not(:last-child) {
    margin-bottom: 1.3333333333vw;
  }
}

.c-container {
  position: relative;
  z-index: -1;
}

.c-pageHeader__heading {
  position: absolute;
  left: 9.4594594595vw;
  top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .c-pageHeader__heading {
    left: 5.3333333333vw;
    top: 5.3333333333vw;
  }
}

.c-pageHeader__heading__en {
  color: #fff;
  font-size: 1.4864864865vw;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .c-pageHeader__heading__en {
    font-size: 4.2666666667vw;
  }
}
.--headingColor .c-pageHeader__heading__en {
  color: #ec6c00;
}

.c-pageHeader__heading__ja {
  color: #fff;
  font-size: 3.2432432432vw;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .c-pageHeader__heading__ja {
    font-size: 6.9333333333vw;
  }
}
.--headingColor .c-pageHeader__heading__ja {
  color: #333;
}

.c-infoBox {
  background: #fff;
  border-radius: 2.1621621622vw;
  font-weight: 700;
  padding: 2.1621621622vw 4.1891891892vw;
}
@media screen and (max-width: 992px) {
  .c-infoBox {
    padding: 5.3333333333vw;
  }
}

.c-infoTel {
  font-size: 3.2432432432vw;
  line-height: 1.33;
  margin-top: 1.0135135135vw;
}
@media screen and (max-width: 992px) {
  .c-infoTel {
    font-size: 7.4666666667vw;
    margin-top: 2.6666666667vw;
  }
}

.c-infoTxt {
  font-size: 0.8783783784vw;
}
@media screen and (max-width: 992px) {
  .c-infoTxt {
    font-size: 3.4666666667vw;
  }
}

.c-required {
  background: #d32222;
  border-radius: 67.5vw;
  color: #fff;
  display: inline-block;
  line-height: 1.4;
  margin-right: 0.3378378378vw;
  font-size: 0.8108108108vw;
  padding: 0.2702702703vw 0.8108108108vw;
}
@media screen and (max-width: 992px) {
  .c-required {
    font-size: 3.2vw;
    padding: 1.0666666667vw 3.2vw;
  }
}

.c-linkButton__icon {
  background: #fff;
  width: 0.9459459459vw;
  height: 0.9459459459vw;
  -webkit-mask: var(--icon-arrow) no-repeat center/contain;
  mask: var(--icon-arrow) no-repeat center/contain;
}
@media screen and (max-width: 992px) {
  .c-linkButton__icon {
    width: 3.7333333333vw;
    height: 3.7333333333vw;
  }
}

.c-linkButton__circle {
  margin-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .c-linkButton__circle {
    margin-top: 8vw;
  }
}
.c-linkButton__circle.--question {
  margin-top: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .c-linkButton__circle.--question {
    margin-top: 8vw;
  }
}
.c-linkButton__circle.--center {
  text-align: center;
}
.c-linkButton__circle.--contact {
  margin-top: 2.1621621622vw;
}
@media screen and (max-width: 992px) {
  .c-linkButton__circle.--contact {
    margin-top: 5.3333333333vw;
  }
}
.c-linkButton__circle .c-linkButton__circle__link {
  align-items: center;
  display: inline-flex;
  font-weight: 700;
  justify-content: center;
  text-decoration: none;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, opacity 0.3s ease;
  border: solid 2px #ec6c00;
  border-radius: 67.5vw;
  background: #fff;
  font-size: 1.0810810811vw;
  max-width: 24.3243243243vw;
  padding: 1.0810810811vw;
  width: 100%;
}
@media screen and (max-width: 1150px) {
  .c-linkButton__circle .c-linkButton__circle__link {
    max-width: 30.4054054054vw;
  }
}
@media screen and (max-width: 992px) {
  .c-linkButton__circle .c-linkButton__circle__link {
    font-size: 4.2666666667vw;
    margin-bottom: 0;
    max-width: 100%;
    padding: 3.2vw;
  }
}
.c-linkButton__circle .c-linkButton__circle__link.--orange {
  background: #ec4900;
  border: none;
  color: #fff;
}
.c-linkButton__circle .c-linkButton__circle__link.--orange:hover {
  opacity: 0.6;
}
.c-linkButton__circle .c-linkButton__circle__link.--orange .c-linkButton__circle__link__icon {
  display: inline-block;
  width: 2.027027027vw;
  aspect-ratio: 5/4;
  background-color: #fff;
  margin-right: 1.0810810811vw;
  -webkit-mask: var(--icon-mail) no-repeat center/contain;
  mask: var(--icon-mail) no-repeat center/contain;
  vertical-align: middle;
}
@media screen and (max-width: 992px) {
  .c-linkButton__circle .c-linkButton__circle__link.--orange .c-linkButton__circle__link__icon {
    margin-right: 2.6666666667vw;
    width: 8vw;
  }
}
.c-linkButton__circle .c-linkButton__circle__link.--white {
  color: #fff;
}
.c-linkButton__circle .c-linkButton__circle__link.--white .c-linkButton__circle__icon::before {
  background: #fff;
}

.c-contactButton {
  align-items: center;
  display: inline-flex;
  font-weight: 700;
  justify-content: center;
  text-decoration: none;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, opacity 0.3s ease;
}
.c-contactButton.--orange {
  background: #ec4900;
  border: none;
  color: #fff;
}
.c-contactButton .c-contactButton__icon {
  display: inline-block;
}
.c-contactButton .c-contactButton__label {
  display: inline-block;
}

.c-linkButton__circle__icon {
  background: #ec6c00;
  border-radius: 50%;
  width: 2.1621621622vw;
  height: 2.1621621622vw;
  margin-left: 1.0810810811vw;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}
@media screen and (max-width: 992px) {
  .c-linkButton__circle__icon {
    margin-left: 4vw;
    width: 7.4666666667vw;
    height: 7.4666666667vw;
  }
}
.c-pager__link--nav.--prev .c-linkButton__circle__icon, .c-pager__link--nav.--next .c-linkButton__circle__icon {
  background: #fff;
  border: solid 1px #dedede;
  margin-left: 0;
  width: 3.3783783784vw;
  height: 3.3783783784vw;
}
@media screen and (max-width: 992px) {
  .c-pager__link--nav.--prev .c-linkButton__circle__icon, .c-pager__link--nav.--next .c-linkButton__circle__icon {
    width: 12.8vw;
    height: 12.8vw;
  }
}
.c-linkButton__circle__icon i {
  color: #fff;
}
.c-linkButton__circle__icon::before {
  content: "";
  background: #fff;
  width: 0.8108108108vw;
  height: 0.8108108108vw;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-mask: var(--icon-arrow) no-repeat center/contain;
  mask: var(--icon-arrow) no-repeat center/contain;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
@media screen and (max-width: 992px) {
  .c-linkButton__circle__icon::before {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
}
.c-pager__link--nav.--prev .c-linkButton__circle__icon::before, .c-pager__link--nav.--next .c-linkButton__circle__icon::before {
  background: #333;
  width: 0.9459459459vw;
  height: 0.9459459459vw;
}
@media screen and (max-width: 992px) {
  .c-pager__link--nav.--prev .c-linkButton__circle__icon::before, .c-pager__link--nav.--next .c-linkButton__circle__icon::before {
    width: 3.2vw;
    height: 3.2vw;
  }
}
.c-pager__link--nav.--prev .c-linkButton__circle__icon::before {
  transform: rotate(180deg);
}
.u-hover:hover .c-linkButton__circle__icon {
  transform: translateX(0.6756756757vw);
}
.c-linkButton__circle__icon.--iconBottom {
  position: absolute;
  bottom: 2.1621621622vw;
  right: 2.1621621622vw;
  z-index: 1;
}
@media screen and (max-width: 992px) {
  .c-linkButton__circle__icon.--iconBottom {
    bottom: 8.5333333333vw;
    right: 8.5333333333vw;
  }
}

.c-bg-circles {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}

.c-bg-circle {
  position: absolute;
  z-index: 0;
}

.c-bg-circle--1 {
  left: -11.8243243243vw;
  top: -122.6351351351vw;
  z-index: 1;
}
@media screen and (max-width: 992px) {
  .c-bg-circle--1 {
    left: -133.3333333333vw;
    top: -346.6666666667vw;
  }
}
.home .c-bg-circle--1 {
  left: -11.8243243243vw;
  top: -75.3378378378vw;
}
@media screen and (max-width: 992px) {
  .home .c-bg-circle--1 {
    left: -133.3333333333vw;
    top: -256vw;
  }
}
.c-bg-circle--1::before {
  content: "";
  background: #fcf9f7;
  border-radius: 50%;
  display: block;
  height: 227.3648648649vw;
  pointer-events: none;
  width: 197.2297297297vw;
}
@media screen and (max-width: 992px) {
  .c-bg-circle--1::before {
    height: 613.3333333333vw;
    width: 506.6666666667vw;
  }
}

.c-bg-circle--2 {
  left: -64.1216216216vw;
  top: 43.0405405405vw;
  z-index: -2;
}
@media screen and (max-width: 992px) {
  .c-bg-circle--2 {
    left: -426.6666666667vw;
    top: 94.6666666667vw;
  }
}
.home .c-bg-circle--2 {
  left: -64.1216216216vw;
  top: 91.5540540541vw;
  z-index: -2;
}
@media screen and (max-width: 992px) {
  .home .c-bg-circle--2 {
    left: -133.3333333333vw;
    top: 233.3333333333vw;
  }
}
.c-bg-circle--2::before {
  content: "";
  background: #f8f3ef;
  border-radius: 50%;
  display: block;
  height: 169.527027027vw;
  pointer-events: none;
  width: 169.527027027vw;
}
@media screen and (max-width: 992px) {
  .c-bg-circle--2::before {
    height: 613.3333333333vw;
    width: 613.3333333333vw;
  }
}

.c-bg-circle--3 {
  left: 9.4594594595vw;
  top: 216.5540540541vw;
}
@media screen and (max-width: 992px) {
  .c-bg-circle--3 {
    left: -133.3333333333vw;
    top: 668vw;
  }
}
.home .c-bg-circle--3 {
  left: 9.4594594595vw;
  top: 265.2027027027vw;
}
@media screen and (max-width: 992px) {
  .home .c-bg-circle--3 {
    left: -133.3333333333vw;
    top: 958.6666666667vw;
  }
}
.c-bg-circle--3::before {
  content: "";
  background: #fffefd;
  border-radius: 50%;
  display: block;
  height: 133.5810810811vw;
  pointer-events: none;
  width: 133.5810810811vw;
}
@media screen and (max-width: 992px) {
  .c-bg-circle--3::before {
    height: 613.3333333333vw;
    width: 613.3333333333vw;
  }
}

.c-bg-circle--4 {
  left: -64.1216216216vw;
  top: 364.1891891892vw;
}
@media screen and (max-width: 992px) {
  .c-bg-circle--4 {
    left: -346.6666666667vw;
    top: 1113.3333333333vw;
  }
}
.home .c-bg-circle--4 {
  left: -64.1216216216vw;
  top: 413.8513513514vw;
}
@media screen and (max-width: 992px) {
  .home .c-bg-circle--4 {
    left: -346.6666666667vw;
    top: 1673.3333333333vw;
  }
}
.c-bg-circle--4::before {
  content: "";
  background: #f8f3ef;
  border-radius: 50%;
  display: block;
  height: 169.527027027vw;
  pointer-events: none;
  width: 169.527027027vw;
}
@media screen and (max-width: 992px) {
  .c-bg-circle--4::before {
    height: 533.3333333333vw;
    width: 560vw;
  }
}

.c-detailBlock {
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .c-detailBlock {
    margin-top: 21.3333333333vw;
  }
}
.c-detailBlock .c-detailBlock__items {
  display: grid;
  grid-template-columns: 39.7297297297vw 39.7297297297vw;
  justify-content: space-between;
  margin-top: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .c-detailBlock .c-detailBlock__items {
    grid-template-columns: 100%;
    margin-top: 13.3333333333vw;
    row-gap: 13.3333333333vw;
  }
  .c-detailBlock .c-detailBlock__items:nth-of-type(2) {
    margin-top: 0;
  }
}
.c-detailBlock .c-detailBlock__text {
  letter-spacing: 0;
}
.c-detailBlock.c-detailBlockMediaText .c-detailBlockMediaText__items {
  display: grid;
  align-items: center;
  grid-template-columns: 39.7297297297vw 38.1081081081vw;
  justify-content: space-between;
  margin-top: 2.027027027vw;
}
@media screen and (max-width: 992px) {
  .c-detailBlock.c-detailBlockMediaText .c-detailBlockMediaText__items {
    grid-template-columns: 100%;
    row-gap: 4vw;
    margin-top: 13.3333333333vw;
  }
  .c-detailBlock.c-detailBlockMediaText .c-detailBlockMediaText__items:nth-child(2) {
    margin-top: 0;
  }
}
.c-detailBlock.c-detailBlockMediaText .c-detailBlockMediaText__text {
  letter-spacing: 0;
}
.c-detailBlock.c-detailBlockMediaTextWide .c-detailBlockMediaTextWide__items {
  display: grid;
  align-items: center;
  grid-template-columns: 27.2972972973vw 50.1351351351vw;
  justify-content: space-between;
  margin-top: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .c-detailBlock.c-detailBlockMediaTextWide .c-detailBlockMediaTextWide__items {
    grid-template-columns: 100%;
    margin-top: 13.3333333333vw;
    row-gap: 5.3333333333vw;
  }
  .c-detailBlock.c-detailBlockMediaTextWide .c-detailBlockMediaTextWide__items:nth-child(2) {
    margin-top: 0;
  }
}
.c-detailBlock.c-detailBlockMediaTextWide .c-detailBlockMediaTextWide__text {
  letter-spacing: 0;
}
.c-detailBlock.c-detailBlockMediaTextWide .c-detailBlockMediaTextWide__figImg {
  width: 100%;
}
.c-detailBlock .c-detail__read {
  padding-top: 5.4054054054vw;
}
.c-detailBlock .c-detailBlock__read,
.c-detailBlock .c-detailBlockMediaTextWide__read {
  margin-top: 1.6216216216vw;
}

.c-categoryLinks {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  max-width: 90.5405405405vw;
  margin-top: 2.7027027027vw;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .c-categoryLinks {
    grid-template-columns: 1fr;
    margin-top: 10.6666666667vw;
  }
}
.c-categoryLinks.--bannerLeft {
  border-radius: 0 4.3243243243vw 4.3243243243vw 0;
}
@media screen and (max-width: 992px) {
  .c-categoryLinks.--bannerLeft {
    margin-top: 0;
  }
}
.c-categoryLinks.--bannerRight {
  border-radius: 4.3243243243vw 0 0 4.3243243243vw;
  margin-left: auto;
}
.c-categoryLinks .c-categoryLinks__item {
  position: relative;
}
.c-categoryLinks .c-categoryLinks__item__ttl {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
  z-index: 1;
  pointer-events: none;
}
.c-categoryLinks .c-categoryLinks__item__ttl__txt {
  color: #fff;
  font-size: 1.8918918919vw;
  font-weight: 700;
}
@media screen and (max-width: 992px) {
  .c-categoryLinks .c-categoryLinks__item__ttl__txt {
    font-size: 6.9333333333vw;
  }
}

.c-bannerLinks {
  display: grid;
  grid-template-columns: repeat(3, 25vw);
  column-gap: 2.7027027027vw;
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .c-bannerLinks {
    grid-template-columns: 1fr;
    margin-top: 21.3333333333vw;
    row-gap: 2.6666666667vw;
  }
}
.c-bannerLinks .c-bannerLinks__item:hover .c-bannerLinks__item__fig {
  opacity: 0.6;
  transition: opacity 0.3s ease;
}

.c-post__single__meta a {
  pointer-events: none;
}

.c-worksSection {
  background: url(../img/common/bg-brown.jpg) repeat center center;
  border-radius: 4.3243243243vw;
  margin-top: 8.1081081081vw;
  padding: 8.1081081081vw 9.4594594595vw;
}
@media screen and (max-width: 992px) {
  .c-worksSection {
    border-radius: 4vw;
    margin-top: 21.3333333333vw;
    padding: 21.3333333333vw 0;
  }
}

.c-worksSection.--top .c-works__inner {
  display: grid;
  grid-template-columns: 35.1351351351vw 40.5405405405vw;
  column-gap: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .c-worksSection.--top .c-works__inner {
    display: block;
    margin-bottom: 8vw;
  }
}

.c-works__inner__cont {
  display: grid;
  grid-template-columns: repeat(3, 25.1351351351vw);
  justify-content: space-between;
  margin-top: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .c-works__inner__cont {
    grid-template-columns: 100%;
    row-gap: 8vw;
  }
}
.c-worksSection.--top .c-works__inner__cont {
  display: block;
  margin-top: 0;
}

.c-worksSection.--top .c-works__list {
  display: block;
}

@media screen and (max-width: 992px) {
  .c-worksSection.--top .c-works__item {
    margin-bottom: 8vw;
  }
}
.c-works__item.--small {
  display: grid;
  grid-template-columns: 17.8378378378vw 21.0810810811vw;
  column-gap: 1.6216216216vw;
  margin-bottom: 4.3243243243vw;
}
@media screen and (max-width: 992px) {
  .c-works__item.--small {
    grid-template-columns: 37.3333333333vw 1fr;
    column-gap: 4vw;
    margin-bottom: 8vw;
  }
}
.c-works__item.--small:last-child {
  margin-bottom: 0;
}

.c-works__thumb {
  aspect-ratio: 372/249;
  overflow: hidden;
}
.c-worksSection.--top .c-works__thumb {
  aspect-ratio: 520/347;
}
.c-works__item.--small .c-works__thumb {
  aspect-ratio: 264/176;
}

.c-works__thumb__img {
  display: block;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
  width: 100%;
}
.c-worksSection .c-works__item:has(.c-works__link:hover) .c-works__thumb__img, .c-worksSection .c-works__item:has(.c-works__link:focus-visible) .c-works__thumb__img, .p-works__archive .c-works__item:has(.c-works__link:hover) .c-works__thumb__img, .p-works__archive .c-works__item:has(.c-works__link:focus-visible) .c-works__thumb__img, .p-works__otherWorks .c-works__item:has(.c-works__link:hover) .c-works__thumb__img, .p-works__otherWorks .c-works__item:has(.c-works__link:focus-visible) .c-works__thumb__img {
  transform: scale(1.05);
}

.c-works__title {
  color: #fff;
  display: -webkit-box;
  font-size: 1.4864864865vw;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 1.0810810811vw;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.3s ease;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (max-width: 992px) {
  .c-works__title {
    font-size: 4.8vw;
    margin-top: 4vw;
  }
}
.c-worksSection .c-works__item:has(.c-works__link:hover) .c-works__title, .c-worksSection .c-works__item:has(.c-works__link:focus-visible) .c-works__title {
  color: #c1c1c1;
}
.p-works__archive .c-works__item:has(.c-works__link:hover) .c-works__title, .p-works__archive .c-works__item:has(.c-works__link:focus-visible) .c-works__title, .p-works__otherWorks .c-works__item:has(.c-works__link:hover) .c-works__title, .p-works__otherWorks .c-works__item:has(.c-works__link:focus-visible) .c-works__title {
  color: #ec6c00;
}
.c-worksSection.--top .c-works__title {
  font-size: 1.8918918919vw;
}
@media screen and (max-width: 992px) {
  .c-worksSection.--top .c-works__title {
    font-size: 4.8vw;
  }
}
.c-works__item.--small .c-works__title {
  font-size: 1.6216216216vw;
  margin-top: 0;
}
@media screen and (max-width: 992px) {
  .c-works__item.--small .c-works__title {
    font-size: 4.2666666667vw;
  }
}
.c-post__archive__meta .c-works__title, .c-post__related__meta .c-works__title, .c-post__single__meta--works .c-works__title {
  color: #333;
  font-size: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .c-post__archive__meta .c-works__title, .c-post__related__meta .c-works__title, .c-post__single__meta--works .c-works__title {
    font-size: 4.8vw;
  }
}
.p-works__otherWorks .c-post__archive__meta .c-works__title, .p-works__otherWorks .c-post__related__meta .c-works__title, .p-works__otherWorks .c-post__single__meta--works .c-works__title {
  font-size: 1.3513513514vw;
}
@media screen and (max-width: 992px) {
  .p-works__otherWorks .c-post__archive__meta .c-works__title, .p-works__otherWorks .c-post__related__meta .c-works__title, .p-works__otherWorks .c-post__single__meta--works .c-works__title {
    font-size: 4.8vw;
  }
}

.c-works__body {
  line-height: normal;
}
.c-works__item.--small .c-works__body {
  min-width: 0;
}

.c-works__location__cont {
  line-height: 1.4;
  margin-top: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .c-works__location__cont {
    margin-top: 1.3333333333vw;
  }
}
.c-worksSection.--top .c-works__location__cont {
  line-height: 1;
}

.c-works__location__item {
  color: #cbcbcb;
  display: block;
  font-size: 0.8783783784vw;
}
@media screen and (max-width: 992px) {
  .c-works__location__item {
    font-size: 3.2vw;
    margin-top: 1.3333333333vw;
  }
}
.c-worksSection.--top .c-works__location__item {
  font-size: 0.9459459459vw;
}
@media screen and (max-width: 992px) {
  .c-worksSection.--top .c-works__location__item {
    font-size: 3.2vw;
  }
}
.c-works__item.--small .c-works__location__item {
  font-size: 0.8783783784vw;
}
@media screen and (max-width: 992px) {
  .c-works__item.--small .c-works__location__item {
    font-size: 2.9333333333vw;
  }
}
.c-post__archive__meta .c-works__location__item, .c-post__related__meta .c-works__location__item, .c-post__single__meta--works .c-works__location__item {
  color: #989898;
}

.c-works__tags__cont {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5405405405vw;
  line-height: 1;
  margin-top: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .c-works__tags__cont {
    gap: 2.6666666667vw;
    margin-top: 2.6666666667vw;
  }
}

.c-works__categories__cont {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5405405405vw;
  margin-top: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .c-works__categories__cont {
    gap: 1.3333333333vw;
    margin-top: 2.6666666667vw;
  }
}

.c-works__categories__link {
  background: #fff;
  border-radius: 6.6891891892vw;
  font-size: 0.8783783784vw;
  line-height: 1.4;
  padding: 0.4054054054vw 1.0810810811vw;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
}
@media screen and (max-width: 992px) {
  .c-works__categories__link {
    font-size: 3.2vw;
    padding: 0.8vw 2.6666666667vw;
  }
}
.c-works__categories__link:hover, .c-works__categories__link:focus-visible {
  background: #ec6c00;
  color: #fff;
}
.c-worksSection.--top .c-works__categories__link {
  font-size: 0.9459459459vw;
}
@media screen and (max-width: 992px) {
  .c-worksSection.--top .c-works__categories__link {
    font-size: 3.2vw;
  }
}
.c-works__item.--small .c-works__categories__link {
  font-size: 0.8783783784vw;
}
@media screen and (max-width: 992px) {
  .c-works__item.--small .c-works__categories__link {
    font-size: 2.9333333333vw;
  }
}
.c-post__archive__meta .c-works__categories__link, .c-post__related__meta .c-works__categories__link, .c-post__single__meta--works .c-works__categories__link {
  border: solid 1px #dedede;
  color: #333;
}
.c-post__archive__meta .c-works__categories__link:hover, .c-post__archive__meta .c-works__categories__link:focus-visible, .c-post__related__meta .c-works__categories__link:hover, .c-post__related__meta .c-works__categories__link:focus-visible, .c-post__single__meta--works .c-works__categories__link:hover, .c-post__single__meta--works .c-works__categories__link:focus-visible {
  background: #ec6c00;
  color: #fff;
}

.c-works__tags__link {
  color: #fff;
  font-size: 0.8783783784vw;
  transition: color 0.3s ease;
}
@media screen and (max-width: 992px) {
  .c-works__tags__link {
    font-size: 3.2vw;
  }
}
.c-works__tags__link:hover, .c-works__tags__link:focus-visible {
  color: #c1c1c1;
}
.p-works__archive .c-works__tags__link:hover, .p-works__otherWorks .c-works__tags__link:hover, .p-works__archive .c-works__tags__link:focus-visible, .p-works__otherWorks .c-works__tags__link:focus-visible {
  color: #ec6c00;
}
.c-worksSection.--top .c-works__tags__link {
  font-size: 0.9459459459vw;
}
@media screen and (max-width: 992px) {
  .c-worksSection.--top .c-works__tags__link {
    font-size: 3.2vw;
  }
}
.c-works__item.--small .c-works__tags__link {
  font-size: 0.8783783784vw;
}
@media screen and (max-width: 992px) {
  .c-works__item.--small .c-works__tags__link {
    font-size: 2.9333333333vw;
  }
}
.c-post__archive__meta .c-works__tags__link, .c-post__related__meta .c-works__tags__link, .c-post__single__meta--works .c-works__tags__link {
  color: #333;
}

.c-works__tags__item::before {
  content: "#";
}

.c-post__footer__nav {
  border-top: solid 2px #dedede;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6216216216vw;
  margin-top: 5.4054054054vw;
  padding-top: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .c-post__footer__nav {
    gap: 4vw;
    margin-top: 13.3333333333vw;
    padding-top: 5.3333333333vw;
  }
}
.c-post__footer__nav .c-post__footer__nav__link {
  margin-top: 0;
}
.c-post__footer__nav .c-post__footer__nav__link.--index {
  background: #fff;
  border: solid 1px #dedede;
  border-radius: 67.5vw;
  color: #333;
  display: inline-block;
  padding: 0.8783783784vw 2.7027027027vw;
  text-decoration: none;
}
@media screen and (max-width: 992px) {
  .c-post__footer__nav .c-post__footer__nav__link.--index {
    padding: 2.1333333333vw 5.3333333333vw;
  }
}

.c-post__single__body :where(h2) {
  font-size: 1.6216216216vw;
  font-weight: 700;
}
@media screen and (max-width: 992px) {
  .c-post__single__body :where(h2) {
    font-size: 5.3333333333vw;
  }
}
.c-post__single__body :where(h3) {
  font-size: 1.3513513514vw;
  font-weight: 700;
  margin-top: 3.3783783784vw;
}
@media screen and (max-width: 992px) {
  .c-post__single__body :where(h3) {
    font-size: 4.8vw;
    margin-top: 8vw;
  }
}
.c-post__single__body :where(ol) {
  list-style: auto;
  margin-top: 2.027027027vw;
  padding-left: 1.1486486486vw;
}
@media screen and (max-width: 992px) {
  .c-post__single__body :where(ol) {
    margin-top: 8vw;
    padding-left: 5.3333333333vw;
  }
}
.c-post__single__body :where(ul) {
  list-style: disc;
  margin-top: 2.027027027vw;
  padding-left: 1.1486486486vw;
}
@media screen and (max-width: 992px) {
  .c-post__single__body :where(ul) {
    margin-top: 8vw;
    padding-left: 5.3333333333vw;
  }
}
.c-post__single__body :where(p) {
  margin-top: 2.027027027vw;
}
@media screen and (max-width: 992px) {
  .c-post__single__body :where(p) {
    margin-top: 4vw;
  }
}
.c-post__single__body :where(a) {
  color: #ec6c00;
  text-decoration: underline;
}
.c-post__single__body :where(a):hover {
  text-decoration: none;
}
.c-post__single__body :where(li) {
  margin-top: 0.6756756757vw;
}
@media screen and (max-width: 992px) {
  .c-post__single__body :where(li) {
    margin-top: 4vw;
  }
}
.c-post__single__body ::marker {
  font-weight: 400;
}

.c-post__single__body {
  margin-top: 3.6486486486vw;
}
@media screen and (max-width: 992px) {
  .c-post__single__body {
    margin-top: 8vw;
  }
}

.c-post__single__ttl {
  font-size: 2.2972972973vw;
  font-weight: 700;
  line-height: 1.59;
}
@media screen and (max-width: 992px) {
  .c-post__single__ttl {
    font-size: 6.4vw;
  }
}

.c-post__single__category {
  font-size: 1.4864864865vw;
  font-weight: 700;
}
@media screen and (max-width: 992px) {
  .c-post__single__category {
    font-size: 4.8vw;
  }
}

.c-post__single__meta--news {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.0810810811vw;
  margin-top: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .c-post__single__meta--news {
    gap: 2.6666666667vw;
    margin-top: 4vw;
  }
}

.c-post__single__meta--works {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}

.c-post__single__categoryTag {
  background: #fff;
  border: solid 1px #ec6c00;
  border-radius: 67.5vw;
  display: inline-block;
  font-size: 0.8108108108vw;
  font-weight: 500;
  line-height: 1.4;
  padding: 0.4054054054vw 1.3513513514vw;
}
@media screen and (max-width: 992px) {
  .c-post__single__categoryTag {
    font-size: 3.2vw;
    padding-inline: 2.6666666667vw;
  }
}

.c-post__single__date {
  color: #ec6c00;
  font-size: 0.9459459459vw;
  font-weight: 700;
}
@media screen and (max-width: 992px) {
  .c-post__single__date {
    font-size: 3.2vw;
  }
}

.c-post__thumb {
  aspect-ratio: 1480/989;
  margin-top: 3.6486486486vw;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .c-post__thumb {
    margin-top: 8vw;
  }
}

.c-post__thumb__img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.c-postLayout {
  display: grid;
  grid-template-columns: 1fr 18.9189189189vw;
  column-gap: 3.7837837838vw;
  align-items: start;
}
@media screen and (max-width: 992px) {
  .c-postLayout {
    grid-template-columns: 100%;
    row-gap: 13.3333333333vw;
  }
}

.c-post__archive__ttl {
  display: flex;
  align-items: center;
  font-size: 2.2972972973vw;
  font-weight: 700;
}
@media screen and (max-width: 992px) {
  .c-post__archive__ttl {
    font-size: 6.4vw;
  }
}
.c-post__archive__ttl:before {
  content: "";
  background: #ec6c00;
  border-radius: 50%;
  display: block;
  margin-right: 0.8108108108vw;
  height: 0.8108108108vw;
  width: 0.8108108108vw;
}
@media screen and (max-width: 992px) {
  .c-post__archive__ttl:before {
    margin-right: 2.6666666667vw;
    height: 2.6666666667vw;
    width: 2.6666666667vw;
  }
}

.c-post__archive__list {
  display: grid;
  gap: 2.8378378378vw;
  margin-top: 2.7027027027vw;
}
.c-post__archive__list.--col2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media screen and (max-width: 992px) {
  .c-post__archive__list.--col2 {
    grid-template-columns: 100%;
    gap: 8vw;
    margin-top: 8vw;
  }
}
.c-post__archive__list.--col3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media screen and (max-width: 992px) {
  .c-post__archive__list.--col3 {
    grid-template-columns: 1fr;
    gap: 8vw;
  }
}

.c-newsCard__thumb {
  aspect-ratio: 4/3;
  margin-bottom: 1.0810810811vw;
  overflow: hidden;
  width: 100%;
}

.c-newsCard__thumb__img {
  display: block;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform 0.3s ease;
  width: 100%;
}

.c-newsCard__meta {
  display: flex;
  justify-content: space-between;
}

.c-newsCard__categoryItem {
  background: #fff;
  border: solid 1px #ec6c00;
  border-radius: 67.5vw;
  font-size: 0.8108108108vw;
  font-weight: 500;
  padding: 0.4054054054vw 1.3513513514vw;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
}
@media screen and (max-width: 992px) {
  .c-newsCard__categoryItem {
    font-size: 3.2vw;
    padding-inline: 2.6666666667vw;
  }
}

.c-newsCard__categoryLink:hover .c-newsCard__categoryItem,
.c-newsCard__categoryLink:focus-visible .c-newsCard__categoryItem {
  background: #ec6c00;
  color: #fff;
}

.c-newsCard__dateItem {
  color: #ec6c00;
  font-size: 0.9459459459vw;
  font-weight: 700;
}
@media screen and (max-width: 992px) {
  .c-newsCard__dateItem {
    font-size: 3.2vw;
  }
}

.c-newsCard__title {
  display: -webkit-box;
  font-size: 1.2162162162vw;
  font-weight: 700;
  margin-top: 0.6756756757vw;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.3s ease;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (max-width: 992px) {
  .c-newsCard__title {
    font-size: 4.8vw;
  }
}

.c-newsCard__item:has(.c-newsCard__link:hover) .c-newsCard__thumb__img,
.c-newsCard__item:has(.c-newsCard__link:focus-visible) .c-newsCard__thumb__img {
  transform: scale(1.05);
}
.c-newsCard__item:has(.c-newsCard__link:hover) .c-newsCard__title,
.c-newsCard__item:has(.c-newsCard__link:focus-visible) .c-newsCard__title {
  color: #ec6c00;
}

.c-pager {
  border-top: solid 2px #dedede;
  margin-top: 4.0540540541vw;
  padding-top: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .c-pager {
    margin-top: 13.3333333333vw;
    padding-top: 5.3333333333vw;
  }
}

.c-pager__list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.3513513514vw;
  list-style: none;
  padding: 0;
}
@media screen and (max-width: 992px) {
  .c-pager__list {
    gap: 2.6666666667vw;
  }
}

.c-pager__link {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0;
  text-decoration: none;
}

.c-pager--archive {
  border: none;
}

.c-pager__link--num {
  background: #fff;
  border: 1px solid #dedede;
  border-radius: 67.5vw;
  width: 3.3783783784vw;
  height: 3.3783783784vw;
}
@media screen and (max-width: 992px) {
  .c-pager__link--num {
    width: 12.8vw;
    height: 12.8vw;
  }
}

.c-pager__ellipsis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.6216216216vw;
  height: 2.7027027027vw;
}

.c-pager__link--nav {
  padding: 0;
}

.c-pager__link--index {
  background: #fff;
  border: solid 1px #dedede;
  border-radius: 67.5vw;
  color: #333;
  padding: 0.8783783784vw 2.3648648649vw;
}
@media screen and (max-width: 992px) {
  .c-pager__link--index {
    padding: 2.1333333333vw 5.3333333333vw;
  }
}

.c-pager__link--num:hover,
.c-pager__link--num.is-current,
.c-pager__link--index:hover {
  background: #ec6c00;
  border-color: #ec6c00;
  color: #fff;
}

.c-pager__link--nav:hover .c-linkButton__circle__icon {
  background: #ec6c00;
}
.c-pager__link--nav:hover .c-linkButton__circle__icon:before {
  background: #fff;
}

.c-pager--single .c-pager__list {
  display: grid;
  grid-template-columns: 3.3783783784vw 10.8108108108vw 3.3783783784vw;
  grid-template-areas: "prev index next";
  column-gap: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .c-pager--single .c-pager__list {
    grid-template-columns: 12.8vw 34.6666666667vw 12.8vw;
    column-gap: 4vw;
  }
}
.c-pager--single .c-pager__item.--prev {
  grid-area: prev;
}
.c-pager--single .c-pager__item.--index {
  grid-area: index;
}
.c-pager--single .c-pager__item.--next {
  grid-area: next;
}

@media screen and (max-width: 992px) {
  .c-sidebar {
    margin-top: 8vw;
  }
}

.c-sidebar__item:not(:first-child) {
  margin-top: 2.027027027vw;
}
@media screen and (max-width: 992px) {
  .c-sidebar__item:not(:first-child) {
    margin-top: 8vw;
  }
}

.c-sidebar__ttl {
  color: #ec6c00;
  font-size: 1.3513513514vw;
  font-weight: 700;
}
@media screen and (max-width: 992px) {
  .c-sidebar__ttl {
    font-size: 4.8vw;
  }
}

.c-sidebar__categoryItem {
  display: flex;
  align-items: center;
  gap: 0.5405405405vw;
  margin-bottom: 0.6756756757vw;
}
.c-sidebar__item.--category .c-sidebar__categoryItem::before {
  content: "";
  background: #b7b7b7;
  display: block;
  flex: 0 0 auto;
  height: 1px;
  width: 0.8108108108vw;
}
@media screen and (max-width: 992px) {
  .c-sidebar__item.--category .c-sidebar__categoryItem::before {
    width: 2.1333333333vw;
  }
}
.c-sidebar__item.--keyword .c-sidebar__categoryItem::before {
  content: "#";
  color: #333;
  display: block;
  flex: 0 0 auto;
  font-weight: 700;
}
@media screen and (max-width: 992px) {
  .c-sidebar__categoryItem {
    gap: 2.1333333333vw;
    margin-bottom: 2.6666666667vw;
  }
}

.c-sidebar__categoryItem__link {
  font-weight: 700;
}
.--keyword .c-sidebar__categoryItem__link {
  font-weight: 500;
}
.c-sidebar__categoryItem__link:hover {
  color: #ec6c00;
}

.u-font-robot {
  font-family: "Roboto", sans-serif !important;
  font-size: 3.2432432432vw;
  line-height: 1.33;
  margin-top: 1.0135135135vw;
}
@media screen and (max-width: 992px) {
  .u-font-robot {
    font-size: 7.4666666667vw;
    margin-top: 2.6666666667vw;
  }
}

.u-visible-sp {
  display: none !important;
}
@media screen and (max-width: 992px) {
  .u-visible-sp {
    display: block !important;
  }
}

@media screen and (max-width: 992px) {
  .u-hidden-sp {
    display: none !important;
  }
}

@media screen and (min-width: 993px) {
  .u-hidden-pc {
    display: none;
  }
}

.u-hover {
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, opacity 0.3s ease;
}
.u-hover .u-img-cover {
  overflow: hidden;
}
.u-hover .u-img-cover img {
  transition: transform 0.3s ease;
}
.u-hover .u-img-cover img:hover {
  transform: scale(1.05);
}

.u-hover-orange {
  transition: color 0.3s ease;
}

.u-hover-orange:hover,
.u-hover:hover .u-hover-orange {
  color: #ec6c00;
}

.u-mt8 {
  margin-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .u-mt8 {
    margin-top: 10.6666666667vw;
  }
}

.u-position {
  position: static !important;
}

.u-radius64 {
  border-radius: 4.3243243243vw;
  overflow: hidden;
}

.u-radius32 {
  border-radius: 2.1621621622vw;
  overflow: hidden;
}

.u-radius64-sp15 {
  border-radius: 4.3243243243vw;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .u-radius64-sp15 {
    border-radius: 4vw;
  }
}

.u-radius32-sp15 {
  border-radius: 2.1621621622vw;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .u-radius32-sp15 {
    border-radius: 4vw;
  }
}

.u-dot-gray {
  padding-left: 1.0810810811vw;
  position: relative;
}
@media screen and (max-width: 992px) {
  .u-dot-gray {
    padding-left: 3.7333333333vw;
  }
}
.u-dot-gray::before {
  content: "";
  border-radius: 50%;
  background: #c1c1c1;
  display: block;
  margin-right: 0.5405405405vw;
  height: 0.5405405405vw;
  width: 0.5405405405vw;
  position: absolute;
  left: 0;
  top: 0.75em;
  transform: translateY(-50%);
}
@media screen and (max-width: 992px) {
  .u-dot-gray::before {
    height: 2.1333333333vw;
    width: 2.1333333333vw;
  }
}

.u-dot-peach {
  padding-left: 1.2162162162vw;
  position: relative;
}
@media screen and (max-width: 992px) {
  .u-dot-peach {
    padding-left: 4vw;
  }
}
.u-dot-peach::before {
  content: "";
  background: #ffd3ad;
  border-radius: 50%;
  display: block;
  height: 0.5405405405vw;
  margin-right: 0.6756756757vw;
  width: 0.5405405405vw;
  position: absolute;
  top: 0.7em;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 992px) {
  .u-dot-peach::before {
    height: 2.1333333333vw;
    width: 2.1333333333vw;
  }
}

.hd-txt {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}

.js-fadein-up {
  opacity: 0;
  transform: translate(0, 1.3513513514vw);
}

body .js-fadein-up.is-scrollin {
  animation: fadein-up 1s forwards;
}

@keyframes fadein-up {
  25% {
    opacity: 0;
    transform: translate(0, 1.3513513514vw);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}
.js-fadein-right {
  opacity: 0;
  transform: translate(1.3513513514vw, 0);
}

.js-fadein-right.is-scrollin {
  animation: fadein-right 1s forwards;
}

@keyframes fadein-right {
  25% {
    opacity: 0;
    transform: translate(1.3513513514vw, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}
.js-fadein-left {
  opacity: 0;
  transform: translate(-1.3513513514vw, 0);
}

.js-fadein-left.is-scrollin {
  animation: fadein-left 1s forwards;
}

@keyframes fadein-left {
  25% {
    opacity: 0;
    transform: translate(-1.3513513514vw, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}
@keyframes sd_st {
  0% {
    bottom: 0;
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    bottom: -1.3513513514vw;
    opacity: 0;
  }
}
@keyframes hv_arrow {
  0% {
    opacity: 1;
    transform: translate(0, -50%);
  }
  25% {
    opacity: 0;
    transform: translate(0.6756756757vw, -50%);
  }
  50% {
    opacity: 0;
    transform: translate(-0.6756756757vw, -50%);
  }
  100% {
    opacity: 1;
    transform: translate(0, -50%);
  }
}
.p-index__mv {
  position: relative;
}
.p-index__mv .p-index__mv__visual {
  width: 100%;
  margin-inline: auto;
  margin-bottom: 2.027027027vw;
  padding-inline: calc(40 / 1480 * 100vw);
}
@media screen and (max-width: 992px) {
  .p-index__mv .p-index__mv__visual {
    margin-bottom: 4vw;
    padding-inline: 2.6666666667vw;
  }
}
.p-index__mv .p-index__mv__visual__fig {
  overflow: hidden;
  aspect-ratio: 1400/724;
}
@media screen and (max-width: 992px) {
  .p-index__mv .p-index__mv__visual__fig {
    aspect-ratio: 1;
  }
}
.p-index__mv .p-index__mv__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-index__mv .p-index__mv__top {
  position: absolute;
  top: 6.4189189189vw;
  left: 6.7567567568vw;
}
@media screen and (max-width: 992px) {
  .p-index__mv .p-index__mv__top {
    top: 5.3333333333vw;
  }
}
.p-index__mv .p-index__mv__top__ttl {
  display: flex;
  align-items: flex-start;
  flex-direction: row-reverse;
}
.p-index__mv .p-index__mv__top__ttl span {
  background: #fff;
  font-size: 2.5vw;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin-right: 0.6756756757vw;
  padding: 1.8918918919vw 0 1.3513513514vw;
  vertical-align: top;
  writing-mode: tb-rl;
}
@media screen and (max-width: 992px) {
  .p-index__mv .p-index__mv__top__ttl span {
    font-size: 5.3333333333vw;
    padding: 2.1333333333vw 0 0.8vw;
  }
}
.p-index__mv .p-index__mv__top__txt {
  font-size: 1.2162162162vw;
  font-weight: 700;
  max-width: none;
  margin-inline: auto;
  margin-bottom: 2.027027027vw;
  padding-inline: 2.7027027027vw;
  text-align: right;
}
@media screen and (max-width: 992px) {
  .p-index__mv .p-index__mv__top__txt {
    font-size: 4.2666666667vw;
    margin-bottom: 4vw;
    padding-inline: 5.3333333333vw;
    text-align: left;
  }
}

.p-index__concept {
  position: relative;
}
.p-index__concept .p-index__concept__inner {
  background: url(../img/index/bg-concept.jpg) no-repeat center bottom/cover;
  border-radius: 4.3243243243vw;
  padding: 5.4054054054vw 0 35.6756756757vw;
}
@media screen and (max-width: 992px) {
  .p-index__concept .p-index__concept__inner {
    border-radius: 4vw;
    background-position: center bottom;
    padding: 13.3333333333vw 0 104vw;
  }
}
.p-index__concept .p-index__concept__txt {
  color: #fff;
  font-size: 1.2162162162vw;
  font-weight: 700;
  line-height: 2.22;
  margin-bottom: 2.027027027vw;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-index__concept .p-index__concept__txt {
    font-size: 4.2666666667vw;
  }
}

.p-index__question {
  padding-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-index__question {
    padding-top: 21.3333333333vw;
  }
}
.p-index__question .p-index__question__item {
  margin-bottom: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item {
    margin-bottom: 21.3333333333vw;
  }
}
.p-index__question .p-index__question__item.--last {
  margin-bottom: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item.--last {
    margin-bottom: 0;
  }
}
.p-index__question .p-index__question__item:nth-child(even) .p-index__question__item__inner {
  display: grid;
  justify-content: end;
  grid-template-columns: 35.1351351351vw 50vw;
  grid-template-areas: "item-txt item-img";
  column-gap: 5.4054054054vw;
  margin-left: auto;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item:nth-child(even) .p-index__question__item__inner {
    display: block;
  }
}
.p-index__question .p-index__question__item:nth-child(even) .p-index__question__item__cont {
  grid-area: item-txt;
  margin-left: 0;
}
.p-index__question .p-index__question__item:nth-child(even) .p-index__question__item__fig {
  grid-area: item-img;
  border-radius: 4.3243243243vw 0 0 4.3243243243vw;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item:nth-child(even) .p-index__question__item__fig {
    margin-left: auto;
    border-radius: 4vw 0 0 4vw;
  }
}
.p-index__question .p-index__question__item__inner {
  display: grid;
  grid-template-columns: 50vw 35.1351351351vw;
  grid-template-areas: "item-img item-txt";
  column-gap: 5.4054054054vw;
  align-items: center;
  justify-content: start;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item__inner {
    display: block;
  }
}
.p-index__question .p-index__question__item__inner.--start {
  align-items: flex-start;
}
.p-index__question .p-index__question__item__fig {
  grid-area: item-img;
  border-radius: 0 4.3243243243vw 4.3243243243vw 0;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item__fig {
    margin-bottom: 8vw;
    width: calc(100% - 10.6666666667vw);
    border-radius: 0 4vw 4vw 0;
  }
}
.p-index__question .p-index__question__item__ttl__sub {
  display: block;
  font-size: 2.7027027027vw;
  font-weight: 700;
  margin-bottom: 2.7027027027vw;
  line-height: 1.5;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item__ttl__sub {
    margin-top: 4vw;
    font-size: 6.9333333333vw;
  }
}
.p-index__question .p-index__question__item__cont {
  grid-area: item-txt;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item__cont {
    width: auto;
  }
}
.p-index__question .p-index__question__item__txt {
  font-size: 1.8918918919vw;
  font-weight: 700;
  line-height: 1.57;
  margin-bottom: 1.3513513514vw;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item__txt {
    margin-bottom: 8vw;
    font-size: 5.8666666667vw;
  }
}
.p-index__question .p-index__question__item__list__ttl {
  color: #ec6c00;
  display: flex;
  font-size: 1.3513513514vw;
  font-weight: 700;
  align-items: center;
  line-height: 1.4;
  margin-bottom: 0.6756756757vw;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item__list__ttl {
    font-size: 4.8vw;
    margin: 2.6666666667vw auto;
  }
}
.p-index__question .p-index__question__item__list__item:not(:first-child) {
  margin-top: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .p-index__question .p-index__question__item__list__item:not(:first-child) {
    margin-top: 5.3333333333vw;
  }
}

.p-index__service {
  padding-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-index__service {
    padding-top: 21.3333333333vw;
  }
}
.p-index__service .p-index__service__inner {
  display: grid;
  align-items: center;
  grid-template-columns: 39.7297297297vw 47.2972972973vw;
  grid-template-areas: "item-txt item-img";
  column-gap: 3.5135135135vw;
  justify-content: flex-end;
}
@media screen and (max-width: 992px) {
  .p-index__service .p-index__service__inner {
    grid-template-columns: 1fr;
    grid-template-areas: "item-img" "item-txt";
  }
}
.p-index__service .p-index__service__txt {
  margin-bottom: 5.4054054054vw;
}
.p-index__service .p-index__service__img {
  grid-area: item-img;
  border-radius: 4.3243243243vw 0 0 4.3243243243vw;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .p-index__service .p-index__service__img {
    margin-left: auto;
    margin-bottom: 8vw;
    width: 93%;
    border-radius: 4vw 0 0 4vw;
  }
}
.p-index__service .p-index__service__list__link {
  display: flex;
  justify-content: space-between;
  font-size: 1.8918918919vw;
  font-weight: 700;
  padding: 1.3513513514vw 1.0135135135vw 1.3513513514vw 1.6216216216vw;
  width: 100%;
  align-items: center;
  transition: color 0.3s ease;
}
@media screen and (max-width: 992px) {
  .p-index__service .p-index__service__list__link {
    font-size: 4.8vw;
    padding: 4vw 2.6666666667vw 4vw 4vw;
  }
}
.p-index__service .p-index__service__list__link:hover {
  color: #ec6c00;
}
.p-index__service .p-index__service__list__link__item {
  display: flex;
  align-items: center;
}
.p-index__service .p-index__service__list__link__img {
  background-color: #333;
  display: inline-block;
  margin-right: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .p-index__service .p-index__service__list__link__img {
    margin-right: 4vw;
  }
}
.p-index__service .p-index__service__list__link__img.--building {
  height: 2.2972972973vw;
  width: 2.7027027027vw;
  -webkit-mask: var(--icon-building) no-repeat center/contain;
  mask: var(--icon-building) no-repeat center/contain;
}
@media screen and (max-width: 992px) {
  .p-index__service .p-index__service__list__link__img.--building {
    height: 6.4vw;
    width: 8vw;
  }
}
.p-index__service .p-index__service__list__link__img.--roofing {
  height: 1.6891891892vw;
  width: 2.7027027027vw;
  -webkit-mask: var(--icon-roofing) no-repeat center/contain;
  mask: var(--icon-roofing) no-repeat center/contain;
}
@media screen and (max-width: 992px) {
  .p-index__service .p-index__service__list__link__img.--roofing {
    height: 5.3333333333vw;
    width: 8vw;
  }
}
.p-index__service .p-index__service__list__link__img.--reform {
  height: 2.7027027027vw;
  width: 2.7027027027vw;
  -webkit-mask: var(--icon-reform) no-repeat center/contain;
  mask: var(--icon-reform) no-repeat center/contain;
}
@media screen and (max-width: 992px) {
  .p-index__service .p-index__service__list__link__img.--reform {
    height: 8vw;
    width: 8vw;
  }
}
.p-index__service .p-index__service__list__link__img.--service {
  height: 2.7027027027vw;
  width: 2.7027027027vw;
  -webkit-mask: var(--icon-service) no-repeat center/contain;
  mask: var(--icon-service) no-repeat center/contain;
}
@media screen and (max-width: 992px) {
  .p-index__service .p-index__service__list__link__img.--service {
    height: 8vw;
    width: 8vw;
  }
}
.p-index__service .p-index__service__list__item {
  border-top: solid 1px #dedede;
}
.p-index__service .p-index__service__list__item:last-child {
  border-bottom: solid 1px #dedede;
}
.p-index__service .p-index__service__cont {
  grid-area: item-txt;
}
@media screen and (max-width: 992px) {
  .p-index__service .p-index__service__cont {
    margin: 0 auto;
    padding: 0 5.3333333333vw;
    width: 100%;
  }
}

.p-index__company {
  padding-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-index__company {
    padding-top: 21.3333333333vw;
  }
}

.p-index__news {
  padding-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-index__news {
    padding-top: 21.3333333333vw;
  }
}

.p-error404 {
  margin-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .p-error404 {
    margin-top: 13.3333333333vw;
  }
}

.p-error404__inner {
  max-width: 66.8918918919vw;
  margin: 4.0540540541vw auto 0;
}
@media screen and (max-width: 992px) {
  .p-error404__inner {
    max-width: 100%;
    margin-top: 8vw;
  }
}

.p-contact__form {
  margin-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .p-contact__form {
    margin-top: 13.3333333333vw;
  }
}

.p-contact__form__inner {
  max-width: 66.8918918919vw;
  margin: 0 auto;
}
@media screen and (max-width: 992px) {
  .p-contact__form__inner {
    max-width: 100%;
  }
}

.p-contact__form__txt {
  margin-bottom: 5.4054054054vw;
  margin-top: 4.0540540541vw;
}
@media screen and (max-width: 992px) {
  .p-contact__form__txt {
    margin-bottom: 13.3333333333vw;
  }
}

.p-contact__form__info {
  max-width: 33.7837837838vw;
  margin-top: 2.7027027027vw;
  text-align: center;
}
@media screen and (max-width: 992px) {
  .p-contact__form__info {
    max-width: 100%;
  }
}

.p-contact__form__main {
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-contact__form__main {
    margin-top: 13.3333333333vw;
  }
}

.p-contact__form__main__txt {
  margin-bottom: 3.7162162162vw;
  margin-top: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .p-contact__form__main__txt {
    margin-bottom: 8vw;
  }
}

.p-contact__form__main__list {
  display: grid;
  row-gap: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .p-contact__form__main__list {
    row-gap: 8vw;
  }
}

.p-contact__form__item {
  display: grid;
  grid-template-columns: 17.027027027vw 1fr;
  align-items: center;
  column-gap: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .p-contact__form__item {
    grid-template-columns: 1fr;
    row-gap: 2.6666666667vw;
  }
}

.p-contact__form__label {
  display: flex;
  justify-content: space-between;
  font-weight: 700;
  line-height: 1.6;
  align-self: start;
  padding: 1.3513513514vw 0;
}
.p-contact__form__label.--required::after {
  content: "必須";
  background: #d32222;
  border-radius: 67.5vw;
  color: #fff;
  display: inline-block;
  font-weight: 500;
  line-height: 1.4;
  margin-right: 0.3378378378vw;
  font-size: 0.8108108108vw;
  padding: 0.2702702703vw 0.8108108108vw;
}
@media screen and (max-width: 992px) {
  .p-contact__form__label.--required::after {
    margin-right: 0;
    padding: 1.0666666667vw 3.2vw;
    font-size: 3.2vw;
  }
}
.p-contact__form__label.--add {
  align-self: flex-start;
}

.p-contact__form__add__txt:not(:first-child) {
  display: block;
  margin-top: 1.0135135135vw;
}
@media screen and (max-width: 992px) {
  .p-contact__form__add__txt:not(:first-child) {
    margin-top: 4vw;
  }
}

.p-contact__form__policy__link__btn {
  display: block;
  font-size: 0.8783783784vw;
  margin-top: 0.6756756757vw;
  text-decoration: underline;
}
@media screen and (max-width: 992px) {
  .p-contact__form__policy__link__btn {
    font-size: 3.4666666667vw;
    margin-top: 2.6666666667vw;
  }
}
.p-contact__form__policy__link__btn:hover {
  text-decoration: none;
}

.p-contact__form__policy {
  grid-column: 2;
}
@media screen and (max-width: 992px) {
  .p-contact__form__policy {
    grid-column: auto;
  }
}

.privacy-policy .wpcf7-list-item {
  margin: auto;
  width: 100%;
}
.privacy-policy .wpcf7-list-item label {
  background: #fff;
  border-radius: 0.6756756757vw;
  border: solid 1px #e3e3e3;
  display: grid;
  grid-template-columns: 1.7567567568vw 1fr;
  column-gap: 0.6756756757vw;
  align-items: center;
  padding: 2.027027027vw;
}
@media screen and (max-width: 992px) {
  .privacy-policy .wpcf7-list-item label {
    border-radius: 2.6666666667vw;
    grid-template-columns: 6.9333333333vw 1fr;
    padding: 3.2vw;
  }
}

.privacy-policy input[type=checkbox] {
  -webkit-appearance: none;
  appearance: none;
  background: #fff;
  border: solid 1px #d3d3d3;
  border-radius: 0.3378378378vw;
  cursor: pointer;
  height: 1.7567567568vw;
  margin: 0;
  padding: 0;
  position: relative;
  width: 1.7567567568vw;
}
@media screen and (max-width: 992px) {
  .privacy-policy input[type=checkbox] {
    height: 4.8vw;
    width: 4.8vw;
  }
}
.privacy-policy input[type=checkbox]::before {
  content: "";
  border: solid #fff;
  border-width: 0 1px 1px 0;
  height: 0.8108108108vw;
  left: 50%;
  position: absolute;
  top: 46%;
  transform: translate(-50%, -50%) rotate(45deg) scale(0);
  transform-origin: center;
  width: 0.4054054054vw;
}
@media screen and (max-width: 992px) {
  .privacy-policy input[type=checkbox]::before {
    height: 1.6vw;
    width: 0.8vw;
  }
}
.privacy-policy input[type=checkbox]:checked {
  background: #f27e02;
  border-color: #f27e02;
}
.privacy-policy input[type=checkbox]:checked::before {
  transform: translate(-50%, -50%) rotate(45deg) scale(1);
}

input,
textarea {
  width: 100%;
  background: #fff;
  border: 1px solid #dedede;
  border-radius: 0.6756756757vw;
  padding: 1.0810810811vw 1.6891891892vw;
}
@media screen and (max-width: 992px) {
  input,
  textarea {
    border-radius: 2.6666666667vw;
    padding: 3.2vw;
  }
}

.p-contact__radio {
  display: flex;
  flex-wrap: wrap;
  gap: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .p-contact__radio {
    gap: 3.2vw;
    flex-direction: column;
  }
}

::placeholder {
  color: #959595;
  font-size: 1.0810810811vw;
  font-weight: 400;
}
@media screen and (max-width: 992px) {
  ::placeholder {
    font-size: 3.7333333333vw;
  }
}

@media screen and (max-width: 992px) {
  .p-contact__radio__item .wpcf7-list-item {
    display: block;
    margin-left: 0;
  }
}
.p-contact__radio__item .wpcf7-list-item.first {
  margin-left: 0;
}
.p-contact__radio__item label {
  display: inline-flex;
  align-items: center;
  column-gap: 0.5405405405vw;
}
@media screen and (max-width: 992px) {
  .p-contact__radio__item label {
    column-gap: 2.1333333333vw;
  }
}

.p-contact__radio__item input[type=radio] {
  -webkit-appearance: none;
  appearance: none;
  background: #fff;
  border: 1px solid #dedede;
  border-radius: 50%;
  height: 1.7567567568vw;
  width: 1.7567567568vw;
  padding: 0;
}
@media screen and (max-width: 992px) {
  .p-contact__radio__item input[type=radio] {
    height: 4.8vw;
    width: 4.8vw;
  }
}

.p-contact__radio__item input[type=radio]:checked {
  background: radial-gradient(circle, #ec6c00 0 35%, #fff 40% 100%);
}

.p-contact__error {
  color: #d32222;
  display: none;
  font-size: 0.8783783784vw;
  line-height: 1.5;
  margin-top: 0.5405405405vw;
}
@media screen and (max-width: 992px) {
  .p-contact__error {
    font-size: 3.2vw;
    margin-top: 1.6vw;
  }
}
.p-contact__error.is-visible {
  display: block;
}

.p-contact__form__box.is-error .p-contact__control,
.p-contact__control.is-error {
  border-color: #d32222;
}

.privacy-policy.is-error,
.p-contact__radio.is-error {
  border: 1px solid #d32222;
  border-radius: 0.6756756757vw;
  padding: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .privacy-policy.is-error,
  .p-contact__radio.is-error {
    border-radius: 2.6666666667vw;
    padding: 2.6666666667vw;
  }
}

.p-contact__button {
  background: #ec4900;
  border-radius: 67.5vw;
  color: #fff;
  cursor: pointer;
  display: block;
  font-weight: 700;
  max-width: 22.2972972973vw;
  margin: 4.3243243243vw auto 0;
  padding: 1.3513513514vw;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 992px) {
  .p-contact__button {
    max-width: 100%;
    margin-top: 13.3333333333vw;
    padding: 3.7333333333vw 6.4vw;
  }
}
.p-contact__button:before {
  content: "";
  background: #ec4900;
  width: 0.8108108108vw;
  height: 0.8108108108vw;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-mask: var(--icon-arrow) no-repeat center/contain;
  mask: var(--icon-arrow) no-repeat center/contain;
  position: absolute;
  right: 2.8378378378vw;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
  z-index: 1;
}
@media screen and (max-width: 992px) {
  .p-contact__button:before {
    height: 2.6666666667vw;
    right: 8.2666666667vw;
    width: 2.6666666667vw;
  }
}
.p-contact__button:after {
  content: "";
  background: #fff;
  border-radius: 50%;
  height: 2.1621621622vw;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 2.1621621622vw;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
  width: 2.1621621622vw;
  z-index: 0;
}
@media screen and (max-width: 992px) {
  .p-contact__button:after {
    height: 7.4666666667vw;
    right: 5.8666666667vw;
    width: 7.4666666667vw;
  }
}
.p-contact__button:hover:before, .p-contact__button:hover:after {
  transition: all 0.3s ease;
  transform: translate(0.6756756757vw, -50%);
}
@media screen and (max-width: 992px) {
  .p-contact__button:hover:before, .p-contact__button:hover:after {
    transform: translate(2.6666666667vw, -50%);
  }
}

.p-contact__form__box.--zipcode > p {
  display: grid;
  grid-template-columns: 6.7567567568vw 0.472972973vw 6.7567567568vw 8.6486486486vw;
  grid-template-areas: "item01 item02 item03 item04";
  column-gap: 0.6756756757vw;
  align-items: center;
  margin: 0;
}
@media screen and (max-width: 992px) {
  .p-contact__form__box.--zipcode > p {
    grid-template-columns: 1fr 1.8666666667vw 1fr;
    grid-template-areas: "item01 item02 item03" "item04 item04 item04";
    row-gap: 2.6666666667vw;
  }
}
.p-contact__form__box.--zipcode .wpcf7-form-control-wrap[data-name=zip-code1],
.p-contact__form__box.--zipcode .__item01 {
  grid-area: item01;
  display: block;
}
.p-contact__form__box.--zipcode .__item02 {
  grid-area: item02;
}
.p-contact__form__box.--zipcode .wpcf7-form-control-wrap[data-name=zip-code2],
.p-contact__form__box.--zipcode .__item03 {
  grid-area: item03;
  display: block;
}
.p-contact__form__box.--zipcode .__item04 {
  grid-area: item04;
}
@media screen and (max-width: 992px) {
  .p-contact__form__box.--zipcode .__item04 {
    grid-column: 1/-1;
    width: 100%;
  }
}
.p-contact__form__box.--zipcode .wpcf7-form-control-wrap .p-contact__control {
  width: 100%;
}

._zipSearchButton {
  background: #555555;
  border-radius: 67.5vw;
  color: #fff;
  padding: 0.7432432432vw 2.1621621622vw;
}

.p-contact__form__add__txt {
  display: block;
  margin-top: 10px;
}

.p-strengths .p-strengths__item {
  display: grid;
  grid-template-columns: 50vw 35.1351351351vw;
  grid-template-areas: "item-img item-txt";
  column-gap: 5.4054054054vw;
  align-items: center;
  justify-content: start;
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-strengths .p-strengths__item {
    grid-template-columns: 1fr;
    grid-template-areas: "item-img" "item-txt";
    row-gap: 8vw;
    margin-top: 21.3333333333vw;
  }
}
.p-strengths .p-strengths__item:first-child {
  margin-top: -8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-strengths .p-strengths__item:first-child {
    margin-top: -8vw;
  }
}
.p-strengths .p-strengths__item:nth-child(even) {
  grid-template-columns: 35.1351351351vw 50vw;
  grid-template-areas: "item-txt item-img";
  justify-content: end;
}
@media screen and (max-width: 992px) {
  .p-strengths .p-strengths__item:nth-child(even) {
    grid-template-columns: 1fr;
    grid-template-areas: "item-img" "item-txt";
  }
}
.p-strengths .p-strengths__item__media {
  grid-area: item-img;
  position: relative;
}
.p-strengths .p-strengths__item__fig {
  border-radius: 0 4.3243243243vw 4.3243243243vw 0;
  overflow: hidden;
}
@media screen and (max-width: 992px) {
  .p-strengths .p-strengths__item__fig {
    width: calc(100% - 10.6666666667vw);
  }
}
.p-strengths__item:nth-child(even) .p-strengths__item__fig {
  border-radius: 4.3243243243vw 0 0 4.3243243243vw;
}
@media screen and (max-width: 992px) {
  .p-strengths__item:nth-child(even) .p-strengths__item__fig {
    margin-left: auto;
  }
}

.p-strengths .p-strengths__item__fig__img {
  display: block;
  width: 100%;
}
.p-strengths .p-strengths__item__cont {
  grid-area: item-txt;
}
.p-strengths .p-strengths__item__ttl__main {
  color: #ec6c00;
  font-size: 2.2972972973vw;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .p-strengths .p-strengths__item__ttl__main {
    font-size: 6.9333333333vw;
  }
}
.p-strengths .p-strengths__item__ttl__sub {
  font-size: 1.6216216216vw;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 0.6756756757vw;
}
@media screen and (max-width: 992px) {
  .p-strengths .p-strengths__item__ttl__sub {
    font-size: 4.8vw;
    margin-top: 2.6666666667vw;
  }
}
.p-strengths .p-strengths__item__txt {
  margin-top: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .p-strengths .p-strengths__item__txt {
    margin-top: 8vw;
  }
}

.p-strengths__links {
  display: flow-root;
  margin-top: 5.0675675676vw;
}
@media screen and (max-width: 992px) {
  .p-strengths__links {
    margin-top: 18.6666666667vw;
  }
}

.p-services .p-services__block {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-services .p-services__block {
    row-gap: 21.3333333333vw;
    margin-top: 21.3333333333vw;
  }
  .p-services .p-services__block:first-child {
    margin-top: -8vw;
  }
  .p-services .p-services__block:not(:first-child) .p-services__item:first-child {
    margin-top: auto;
  }
}
.p-services .p-services__item {
  max-width: 37.8378378378vw;
}
@media screen and (max-width: 992px) {
  .p-services .p-services__item {
    max-width: 100%;
  }
}
.p-services .p-services__item:first-child {
  margin-top: -16.2162162162vw;
}
@media screen and (max-width: 992px) {
  .p-services .p-services__item:first-child {
    margin-top: 0;
  }
}
.p-services .p-services__item__heading {
  margin-top: 1.0135135135vw;
}
@media screen and (max-width: 992px) {
  .p-services .p-services__item__heading {
    margin-top: 8vw;
  }
}
.p-services .p-services__item__txt {
  margin-bottom: 2.027027027vw;
}
@media screen and (max-width: 992px) {
  .p-services .p-services__item__txt {
    margin-top: 0;
  }
}

.p-services__links {
  display: flow-root;
  margin-top: 5.4054054054vw;
}

.p-exterior__links {
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-exterior__links {
    margin-top: 21.3333333333vw;
  }
}

.p-roofing__links {
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-roofing__links {
    margin-top: 21.3333333333vw;
  }
}

.p-renovation__links {
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-renovation__links {
    margin-top: 21.3333333333vw;
  }
}

.p-other__links {
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-other__links {
    margin-top: 21.3333333333vw;
  }
}

.p-quality__read {
  padding-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .p-quality__read {
    padding-top: 21.3333333333vw;
  }
}

.p-quality__links {
  margin-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .p-quality__links {
    margin-top: 10.6666666667vw;
  }
}

.p-policy__detail {
  margin-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .p-policy__detail {
    margin-top: 13.3333333333vw;
  }
}

.p-policy__detail__inner {
  max-width: 66.8918918919vw;
  margin: 0 auto;
}
@media screen and (max-width: 992px) {
  .p-policy__detail__inner {
    max-width: 100%;
  }
}

.p-policy__detail__ttl {
  font-size: 2.1621621622vw;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 3.6486486486vw;
  margin-bottom: 1.3513513514vw;
}
@media screen and (max-width: 992px) {
  .p-policy__detail__ttl {
    font-size: 5.8666666667vw;
    margin-top: 8vw;
    margin-bottom: 4vw;
  }
}

.p-company__greeting__inner {
  display: grid;
  grid-template-columns: 50% 35.1351351351vw;
  justify-content: space-between;
  align-items: center;
  margin-top: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .p-company__greeting__inner {
    grid-template-columns: 1fr;
    margin-top: 4vw;
    row-gap: 5.3333333333vw;
  }
}

.p-company__block {
  padding-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-company__block {
    padding-top: 21.3333333333vw;
  }
}

.p-company__greeting__ttl {
  font-size: 1.7567567568vw;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .p-company__greeting__ttl {
    font-size: 5.3333333333vw;
  }
}

.p-company__greeting__txt {
  line-height: 2.5;
  margin-top: 2.7027027027vw;
}
@media screen and (max-width: 992px) {
  .p-company__greeting__txt {
    margin-top: 5.3333333333vw;
  }
}

.p-company__greeting__position {
  font-size: 0.9459459459vw;
}
@media screen and (max-width: 992px) {
  .p-company__greeting__position {
    font-size: 3.2vw;
  }
}

.p-company__greeting__name {
  font-size: 1.8918918919vw;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .p-company__greeting__name {
    font-size: 5.3333333333vw;
  }
}

.p-company__greeting__sign {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  margin-top: 2.3648648649vw;
}
@media screen and (max-width: 992px) {
  .p-company__greeting__sign {
    margin-top: 2.6666666667vw;
  }
}

.p-company__profile__inner {
  background: #fff;
  max-width: 67.5675675676vw;
  margin: 2.7027027027vw auto 0;
}
@media screen and (max-width: 992px) {
  .p-company__profile__inner {
    max-width: 100%;
    margin-top: 4vw;
  }
}

.p-company__profile__table {
  border: solid 1px #dedede;
  border-width: 1px 1px 0 1px;
  display: grid;
  grid-template-columns: 16.2162162162vw 51.3513513514vw;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .p-company__profile__table {
    grid-template-columns: 26.6666666667vw auto;
  }
}
.p-company__profile__table:last-child {
  border-bottom-width: 1px;
}

.p-company__profile__label {
  border-right: solid 1px #dedede;
  font-weight: 700;
  padding: 2.027027027vw 2.3648648649vw;
}
@media screen and (max-width: 992px) {
  .p-company__profile__label {
    padding: 4vw;
  }
}

.p-company__profile__officeItem:not(:first-child) {
  margin-top: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .p-company__profile__officeItem:not(:first-child) {
    margin-top: 4vw;
  }
}

.p-company__profile__officeName {
  font-weight: 700;
  padding-left: 1.3513513514vw;
}
@media screen and (max-width: 992px) {
  .p-company__profile__officeName {
    padding-left: 5.3333333333vw;
  }
}

.p-company__profile__data {
  padding: 2.027027027vw 2.3648648649vw;
}
@media screen and (max-width: 992px) {
  .p-company__profile__data {
    padding: 3.2vw;
  }
}

.p-company__profile__officeAddress {
  margin-top: 0.5405405405vw;
}
@media screen and (max-width: 992px) {
  .p-company__profile__officeAddress {
    margin-top: 2.6666666667vw;
  }
}

.p-company__profile__officeMap {
  display: block;
  margin-top: 0.2702702703vw;
  text-decoration: underline;
}
@media screen and (max-width: 992px) {
  .p-company__profile__officeMap {
    margin-top: 2.6666666667vw;
  }
}
.p-company__profile__officeMap:hover {
  text-decoration: none;
}

.p-company__profile__officeTel {
  margin-top: 0.2702702703vw;
}
@media screen and (max-width: 992px) {
  .p-company__profile__officeTel {
    margin-top: 2.6666666667vw;
  }
}

.p-company__profile__listItem {
  line-height: 2;
}

.p-company__history__inner {
  max-width: 67.5675675676vw;
  margin: 2.7027027027vw auto 0;
}
@media screen and (max-width: 992px) {
  .p-company__history__inner {
    max-width: 100%;
    margin-top: 4vw;
  }
}

.p-company__history__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 2.7027027027vw;
  padding-left: 2.027027027vw;
  position: relative;
}
@media screen and (max-width: 992px) {
  .p-company__history__item {
    flex-wrap: wrap;
    padding-bottom: 4vw;
    padding-left: 5.3333333333vw;
  }
}
.p-company__history__item:before {
  content: "";
  border: solid 2px #ec4900;
  border-radius: 50%;
  display: block;
  height: 1.2162162162vw;
  position: absolute;
  left: 0;
  top: calc((100% - 2.7027027027vw) / 2);
  transform: translateY(-50%);
  width: 1.2162162162vw;
}
@media screen and (max-width: 992px) {
  .p-company__history__item:before {
    height: 2.6666666667vw;
    top: 2.1333333333vw;
    transform: translateY(50%);
    width: 2.6666666667vw;
  }
}
.p-company__history__item:last-child {
  padding-bottom: 0;
}
.p-company__history__item:last-child:before {
  top: 50%;
}
@media screen and (max-width: 992px) {
  .p-company__history__item:last-child:before {
    top: 2.1333333333vw;
  }
}
.p-company__history__item:not(:last-child):after {
  content: "";
  background: #6f6f6f;
  display: block;
  height: 2.7027027027vw;
  position: absolute;
  left: 0.6081081081vw;
  bottom: 0;
  transform: translateX(-50%);
  width: 1px;
}
@media screen and (max-width: 992px) {
  .p-company__history__item:not(:last-child):after {
    height: auto;
    top: 8vw;
    bottom: 0;
    left: 1.3333333333vw;
  }
}

.p-company__history__year {
  font-size: 1.4864864865vw;
  font-weight: 700;
  width: 14.527027027vw;
}
@media screen and (max-width: 992px) {
  .p-company__history__year {
    font-size: 4.2666666667vw;
    width: 100%;
  }
}

.p-company__history__txt {
  font-size: 1.4864864865vw;
  font-weight: 700;
  width: 52.7027027027vw;
}
@media screen and (max-width: 992px) {
  .p-company__history__txt {
    font-size: 4.2666666667vw;
    width: 100%;
  }
}

.p-company__quality .c-linkButton__circle {
  margin-top: 3.2432432432vw;
}
@media screen and (max-width: 992px) {
  .p-company__quality .c-linkButton__circle {
    margin-top: 10.6666666667vw;
  }
}
.p-company__quality .p-company__quality__inner {
  display: grid;
  align-items: center;
  align-content: center;
  grid-template-areas: "item-ttl item-img" "item-content item-img";
  grid-template-columns: 35.1351351351vw 50%;
  justify-content: space-between;
}
@media screen and (max-width: 992px) {
  .p-company__quality .p-company__quality__inner {
    grid-template-areas: "item-ttl" "item-img" "item-content";
    grid-template-columns: 1fr;
  }
}
.p-company__quality .p-company__quality__ttl {
  align-self: end;
  grid-area: item-ttl;
}
.p-company__quality .p-company__quality__content {
  align-self: start;
  grid-area: item-content;
}
.p-company__quality .p-company__quality__fig {
  grid-area: item-img;
}
.p-company__quality .p-company__quality__txt {
  margin-top: 2.1621621622vw;
}
@media screen and (max-width: 992px) {
  .p-company__quality .p-company__quality__txt {
    margin-top: 4vw;
  }
}

.p-company__members__list {
  display: grid;
  grid-template-columns: repeat(3, 25.1351351351vw);
  justify-content: space-between;
  margin-top: 2.7027027027vw;
  row-gap: 3.6486486486vw;
}
@media screen and (max-width: 992px) {
  .p-company__members__list {
    grid-template-columns: 1fr;
    margin-top: auto;
    row-gap: 8vw;
  }
}

.p-company__members__fig {
  aspect-ratio: 1/1;
  border-radius: 50%;
  overflow: hidden;
}

.p-company__members__img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.p-company__members__meta {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .p-company__members__meta {
    margin-top: 4.2666666667vw;
  }
}

.p-company__members__position {
  color: #747474;
  font-size: 0.9459459459vw;
  line-height: 1.4;
}
@media screen and (max-width: 992px) {
  .p-company__members__position {
    font-size: 3.2vw;
  }
}

.p-company__members__name {
  font-size: 1.6216216216vw;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 0.2702702703vw;
}
@media screen and (max-width: 992px) {
  .p-company__members__name {
    font-size: 5.8666666667vw;
    margin-top: 1.0666666667vw;
  }
}

.p-company__members__txt {
  margin-top: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .p-company__members__txt {
    margin-top: 4.2666666667vw;
  }
}

.p-company__members__skills {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.5405405405vw;
  margin-top: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .p-company__members__skills {
    gap: 2.1333333333vw;
    margin-top: 4.2666666667vw;
  }
}

.p-company__members__skill {
  background: #fff;
  border: solid 1px #dedede;
  border-radius: 67.5vw;
  font-size: 0.8108108108vw;
  line-height: 1.4;
  padding: 0.4054054054vw 0.8108108108vw;
}
@media screen and (max-width: 992px) {
  .p-company__members__skill {
    font-size: 3.2vw;
    padding: 1.6vw 3.2vw;
  }
}

.p-company__links {
  display: flow-root;
  margin-top: 8.1081081081vw;
}

.p-news__archive {
  padding-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .p-news__archive {
    padding-top: 10.6666666667vw;
  }
}

.p-news__container {
  display: grid;
  grid-template-columns: 60.1351351351vw 16.4864864865vw;
  justify-content: space-between;
  max-width: 81.0810810811vw;
  margin: 5.4054054054vw auto 0;
}
@media screen and (max-width: 992px) {
  .p-news__container {
    grid-template-columns: 1fr;
    max-width: 100%;
  }
}

.p-works__archive {
  padding-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .p-works__archive {
    padding-top: 10.6666666667vw;
  }
}

.p-works__container {
  margin-top: 5.4054054054vw;
}

.p-works__section {
  margin-top: 5.4054054054vw;
}
@media screen and (max-width: 992px) {
  .p-works__section {
    margin-top: 13.3333333333vw;
  }
}

.p-works__beforeAfter {
  display: grid;
  grid-template-columns: 39.1891891892vw 39.1891891892vw;
  justify-content: space-between;
}
@media screen and (max-width: 992px) {
  .p-works__beforeAfter {
    grid-template-columns: 1fr;
    row-gap: 8vw;
  }
}

.p-works__beforeAfter__label {
  background: #fff;
  border: solid 1px #ec6c00;
  border-radius: 67.5vw;
  color: #ec6c00;
  display: inline-block;
  font-size: 0.9459459459vw;
  line-height: 1.4;
  padding: 0.4054054054vw 2.027027027vw;
}
@media screen and (max-width: 992px) {
  .p-works__beforeAfter__label {
    font-size: 3.2vw;
    padding: 0.8vw 4vw;
  }
}
.p-works__beforeAfter__label.--after {
  background: #ec6c00;
  color: #fff;
}

.p-works__beforeAfter__fig {
  margin-top: 1.5540540541vw;
}
@media screen and (max-width: 992px) {
  .p-works__beforeAfter__fig {
    margin-top: 4vw;
  }
}

.p-works__summary__table {
  border: solid 1px #dedede;
  border-collapse: collapse;
  margin: 0 auto;
  max-width: 67.027027027vw;
  table-layout: fixed;
  width: 100%;
}
@media screen and (max-width: 992px) {
  .p-works__summary__table {
    max-width: 100%;
  }
}

.p-works__summary__term,
.p-works__summary__desc {
  line-height: 1.4;
  padding: 1.0135135135vw 1.3513513514vw;
}
@media screen and (max-width: 992px) {
  .p-works__summary__term,
  .p-works__summary__desc {
    padding: 2.6666666667vw 4vw;
  }
}

.p-works__summary__term {
  background: #f2efec;
  border-right: solid 1px #dedede;
  text-align: left;
  width: 18.6486486486vw;
}
@media screen and (max-width: 992px) {
  .p-works__summary__term {
    display: block;
    border-right: 0;
    width: 100%;
  }
}

.p-works__summary__desc {
  background: #fff;
}
@media screen and (max-width: 992px) {
  .p-works__summary__desc {
    display: block;
  }
}

.p-works__summary__table tr + tr .p-works__summary__term,
.p-works__summary__table tr + tr .p-works__summary__desc {
  border-top: solid 1px #dedede;
}

@media screen and (max-width: 992px) {
  .p-works__summary__desc {
    border-top: solid 1px #dedede;
  }
}
.p-works__details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2.7027027027vw;
  row-gap: 3.2432432432vw;
}
@media screen and (max-width: 992px) {
  .p-works__details {
    grid-template-columns: 1fr;
    row-gap: 8vw;
  }
}

.p-works__details__caption {
  font-size: 0.9459459459vw;
  margin-top: 1.0810810811vw;
}
@media screen and (max-width: 992px) {
  .p-works__details__caption {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
}

.p-works__voice__ttl {
  display: flex;
  align-items: center;
  font-size: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .p-works__voice__ttl {
    font-size: 4.8vw;
    margin-top: auto;
  }
}
.p-works__voice__ttl:before {
  content: "";
  background: #ec6c00;
  border-radius: 67.5vw;
  display: inline-flex;
  align-items: center;
  margin-right: 1.0810810811vw;
  height: 2.3648648649vw;
  width: 0.2702702703vw;
}
@media screen and (max-width: 992px) {
  .p-works__voice__ttl:before {
    margin-right: 4vw;
    height: 9.3333333333vw;
    width: 1.0666666667vw;
  }
}

.p-works__voice__content {
  display: grid;
  align-items: center;
  grid-template-columns: 39.1891891892vw 39.1891891892vw;
  justify-content: space-between;
  margin-top: 1.6216216216vw;
}
@media screen and (max-width: 992px) {
  .p-works__voice__content {
    grid-template-columns: 1fr;
    margin-top: 5.3333333333vw;
  }
}

.p-works__otherWorks {
  margin-top: 8.1081081081vw;
}
@media screen and (max-width: 992px) {
  .p-works__otherWorks {
    margin-top: 21.3333333333vw;
  }
}

.p-works__voice__thumb,
.p-works__beforeAfter__thumb,
.p-works__details__thumb {
  aspect-ratio: 580/385;
  overflow: hidden;
}

.p-works__voice__img,
.p-works__beforeAfter__img,
.p-works__details__img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
