@charset "UTF-8";
:root{
  font-size:16px;
  --qu-gothic:Noto Sans JP, sans-serif;
  --qu-eng:Ubuntu, sans-serif;
  --qu-color-black:#000;
  --qu-color-white:#fff;
  --qu-color-pink:#E683D0;
  --qu-color-red:#CC1D6E;
  --qu-color-blue:#5988BD;
  --qu-color-green:#6DB160;
  --qu-color-yellow:#FEF517;
  --qu-color-gray:#d1d1d1;
  --qu-color-pale:#F2F2F2;
  --qu-color-dark:#2E2E2E;
  --qu-color-hover:rgba(46, 46, 46, 0.6);
}

*,
*::before,
*::after{
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6{
  margin:0;
  padding:0;
}

h1,
h2,
h3,
h4,
h5,
h6{
  font-size:100%;
  font-weight:normal;
}

ul{
  list-style:none;
}

button,
input,
select,
textarea{
  margin:0;
}

img,
svg,
video{
  width:100%;
  height:auto;
  max-width:100%;
  border-style:none;
}

iframe{
  border:0;
}

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

td,
th{
  padding:0;
}
td:not([align]),
th:not([align]){
  text-align:inherit;
}
main{
  display:block;
}
hr{
  -webkit-box-sizing:content-box;
  box-sizing:content-box;
  height:0;
  overflow:visible;
}

pre{
  font-family:monospace, monospace;
  font-size:1em;
}
a{
  background-color:transparent;
}

abbr[title]{
  border-bottom:none;
  text-decoration:underline;
  -webkit-text-decoration:underline dotted;
  text-decoration:underline dotted;
}

b,
strong{
  font-weight:bolder;
}

code,
kbd,
samp{
  font-family:monospace, monospace;
  font-size:1em;
}

small{
  font-size:80%;
}

sub,
sup{
  font-size:75%;
  line-height:0;
  position:relative;
  vertical-align:baseline;
}

sub{
  bottom:-0.25em;
}

sup{
  top:-0.5em;
}
button,
input,
optgroup,
select,
textarea{
  font-family:inherit;
  font-size:100%;
  line-height:1.15;
  margin:0;
}
button,
input{
  overflow:visible;
}
button,
select{
  text-transform:none;
}
button,
[type=button],
[type=reset],
[type=submit]{
  -webkit-appearance:button;
}
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner{
  border-style:none;
  padding:0;
}
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring{
  outline:1px dotted ButtonText;
}
fieldset{
  padding:0.35em 0.75em 0.625em;
}
legend{
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  color:inherit;
  display:table;
  max-width:100%;
  padding:0;
  white-space:normal;
}
progress{
  vertical-align:baseline;
}
textarea{
  overflow:auto;
}
[type=checkbox],
[type=radio]{
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  padding:0;
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button{
  height:auto;
}
[type=search]{
  -webkit-appearance:textfield;
  outline-offset:-2px;
}
[type=search]::-webkit-search-decoration{
  -webkit-appearance:none;
}
::-webkit-file-upload-button{
  -webkit-appearance:button;
  font:inherit;
}
details{
  display:block;
}
summary{
  display:list-item;
}

.gothick{
  font:var(--qu-gothic);
}

.serif{
  font:var(--qu-serif);
}

.eng{
  font:var(--qu-eng);
}

body{
  font-size:1rem;
  line-height:1.8;
  letter-spacing:0.025em;
  font-weight:500;
  color:#707070;
}
p:not(:has(.header, .footer) p){
  margin-block:1.5em;
}

.fnt-60, .sec-title{
  font-size:3.75rem;
  line-height:1.4;
}

.fnt-60, .sec-title{
  font-size:3.75rem;
  line-height:1.4;
}

.fnt-46, .message-ttl::after, .outline-ttl::after{
  font-size:2.875rem;
  line-height:1.4;
}

.fnt-24, .profile-name{
  font-size:1.5rem;
  line-height:1.4;
}

.fnt-22, .about-dl > div dt{
  font-size:1.375rem;
  line-height:1.8;
}

.fnt-20, .date-day, .entry-ttl, .service-list li{
  font-size:1.25rem;
  line-height:1.8;
}

.fnt-18, .about-dl > div dd, .origin-ttl{
  font-size:1.125rem;
  line-height:1.8;
}

.fnt-16{
  font-size:1rem;
  line-height:1.8;
}

.fnt-14, .date-year, .works-caption, .works-lead p, .works-archives-details, .certification-list li, .service-explain, .end-mark, .entry-close, .entry-date, .breadcrumb-item, .btn-more{
  font-size:0.875rem;
  line-height:1.8;
}

.fnt-12, .scroll-down, .about-ol li::before, .message-ttl, .profile-pos, .outline-ttl, .note, .footer-address-list > div dt{
  font-size:0.75rem;
  line-height:1.8;
}

.fnt-10, .works-caption::before, .works-archives-client::before{
  font-size:0.625rem;
  line-height:1.6;
}

small{
  font-size:0.75rem;
  line-height:1;
  font-weight:600;
}

html{
  scroll-behavior:smooth;
  max-width:1920px;
  margin:auto;
}
body{
  width:100%;
  background-color:#fff;
  font-family:"Ubuntu", "Noto Sans JP", sans-serif;
  -webkit-font-feature-settings:"palt";
  font-feature-settings:"palt";
}

.main{
  width:100%;
  overflow:clip;
}

.screen-reader-text{
  clip:rect(1px, 1px, 1px, 1px);
  position:absolute !important;
  height:1px;
  width:1px;
  overflow:hidden;
}

.clearfix::after{
  display:table;
  content:"";
  clear:both;
}

[href^="#"]{
  scroll-margin-top:80px;
}

a{
  text-decoration:none;
  -webkit-transition:0.4s ease-out all;
  transition:0.4s ease-out all;
}

img,
svg{
  vertical-align:bottom;
  -webkit-transition:0.4s ease-out all;
  transition:0.4s ease-out all;
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
}

img[sizes=auto],
img[sizes^="auto,"]{
  contain-intrinsic-size:3000px 1500px;
}

video{
  width:100%;
  max-width:100%;
  aspect-ratio:16/9;
}

.blk,
.br{
  display:block;
}
.blk-sm-down,
.br-sm-down{
  display:inline;
}
.blk-sm-up,
.br-sm-up{
  display:inline;
}
.blk-md-down,
.br-md-down{
  display:inline;
}
.blk-md-up,
.br-md-up{
  display:inline;
}
.blk-lg-down,
.br-lg-down{
  display:inline;
}
.blk-lg-up,
.br-lg-up{
  display:inline;
}
.blk-xl-down,
.br-xl-down{
  display:inline;
}
.blk-xl-up,
.br-xl-up{
  display:inline;
}

.btn-wrap{
  margin-top:50px;
  text-align:right;
}
.btn-more{
  position:relative;
  display:inline-block;
  color:#000;
}
.btn-more::before{
  position:absolute;
  bottom:-12px;
  left:-12px;
  display:block;
  width:24px;
  aspect-ratio:1/1;
  border-radius:50%;
  background-color:#D9D9D9;
  -webkit-transition:0.4s ease-out all;
  transition:0.4s ease-out all;
  content:"";
}
.btn-more > span{
  position:relative;
  display:inline-block;
  width:125px;
  padding-left:0;
  -webkit-transition:0.4s ease-out all;
  transition:0.4s ease-out all;
  text-align:left;
}
.btn-more > span::before{
  position:absolute;
  bottom:0;
  right:0;
  display:block;
  width:30px;
  height:1px;
  background-color:#707070;
  -webkit-transform-origin:right bottom;
  transform-origin:right bottom;
  -webkit-transform:rotate(15deg);
  transform:rotate(15deg);
  -webkit-transition:0.4s ease-out all;
  transition:0.4s ease-out all;
  content:"";
}
.btn-more > span::after{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  width:100%;
  height:1px;
  background-color:#707070;
  -webkit-transform-origin:right bottom;
  transform-origin:right bottom;
  -webkit-transition:0.4s ease-out all;
  transition:0.4s ease-out all;
  content:"";
}

#mailtoui-button-4{
  display:none !important;
}

.mailtoui-button-copy{
  font-size:12px !important;
  font-weight:600 !important;
}

.header{
  position:sticky;
  top:0;
  height:60px;
  z-index:100;
  -webkit-box-shadow:0 0 6px rgba(0, 0, 0, 0.16);
  box-shadow:0 0 6px rgba(0, 0, 0, 0.16);
  background-color:var(--qu-color-white);
  -webkit-transition:0.4s ease-out all;
  transition:0.4s ease-out all;
}
.header-wrap{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:justify;
  -ms-flex-pack:justify;
  justify-content:space-between;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  height:100%;
  padding-inline:30px;
  -webkit-transition:0.4s ease-out all;
  transition:0.4s ease-out all;
}
.header-logo{
  width:100px;
  height:auto;
  -webkit-transition:0.4s ease-out all;
  transition:0.4s ease-out all;
}
.home.h-key .header{
  position:sticky;
  -webkit-box-shadow:0 0 6px rgba(0, 0, 0, 0.16);
  box-shadow:0 0 6px rgba(0, 0, 0, 0.16);
  background-color:var(--qu-color-white);
}
.home.h-key .header-logo{
  opacity:1;
}

.nav{
  z-index:900;
}
.nav-toggle{
  border:none;
  background:transparent 50% 50% no-repeat;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2230%22%20viewBox%3D%220%200%2040%2030%22%3E%20%3Cpath%20d%3D%22M2.5%2C30a2.5%2C2.5%2C0%2C1%2C1%2C0-5h35a2.5%2C2.5%2C0%2C0%2C1%2C0%2C5Zm0-13a2.5%2C2.5%2C0%2C0%2C1%2C0-5h35a2.5%2C2.5%2C0%2C0%2C1%2C0%2C5Zm0-12a2.5%2C2.5%2C0%2C0%2C1%2C0-5h35a2.5%2C2.5%2C0%2C0%2C1%2C0%2C5Z%22%20fill%3D%22%23707070%22%2F%3E%3C%2Fsvg%3E");
  width:40px;
  aspect-ratio:1/1;
  margin-top:3.375px;
}
.nav-list{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  gap:25px;
}
.nav-item{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
.nav-home{
  display:none;
}
.nav-mail{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  width:32px;
  height:32px;
  border-radius:50%;
  background:#707070 url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2230%22%20height%3D%2219.052%22%20viewBox%3D%220%200%2030%2019.052%22%3E%20%3Cpath%20d%3D%22M22.53%2C17.208H19.4a.406.406%2C0%2C0%2C1-.4-.348%2C2.964%2C2.964%2C0%2C0%2C1%2C1.81-3.173V11.107A3.73%2C3.73%2C0%2C0%2C1%2C23.1%2C7.67V7.421a1.376%2C1.376%2C0%2C1%2C1%2C2.751%2C0v.2a3.73%2C3.73%2C0%2C0%2C1%2C2.4%2C3.481v2.581A2.673%2C2.673%2C0%2C0%2C1%2C29.9%2C16.917a.405.405%2C0%2C0%2C1-.389.291H26.431a1.954%2C1.954%2C0%2C0%2C1-3.9%2C0Zm1.942%2C1.033a1.163%2C1.163%2C0%2C0%2C0%2C1.139-1.033H23.349A1.158%2C1.158%2C0%2C0%2C0%2C24.472%2C18.241Zm-2.849-7.134v2.857a.407.407%2C0%2C0%2C1-.282.387A2.269%2C2.269%2C0%2C0%2C0%2C19.778%2C16.4h9.4a1.894%2C1.894%2C0%2C0%2C0-1.462-2.05.406.406%2C0%2C0%2C1-.269-.383V11.107a2.912%2C2.912%2C0%2C1%2C0-5.824%2C0Zm2.291-3.686v.015a3.747%2C3.747%2C0%2C0%2C1%2C1.129-.017.565.565%2C0%2C0%2C0-1.129%2C0ZM1.969%2C17.478A1.972%2C1.972%2C0%2C0%2C1%2C0%2C15.509V1.969A1.971%2C1.971%2C0%2C0%2C1%2C1.969%2C0H23.237a1.971%2C1.971%2C0%2C0%2C1%2C1.969%2C1.969V5.058a.405.405%2C0%2C1%2C1-.811%2C0V1.969a1.151%2C1.151%2C0%2C0%2C0-.129-.531l-8.4%2C7.142a.407.407%2C0%2C0%2C1%2C.064.047l4.135%2C3.727a.406.406%2C0%2C0%2C1-.544.6L15.385%2C9.229a.4.4%2C0%2C0%2C1-.106-.153L13.711%2C10.41a1.881%2C1.881%2C0%2C0%2C1-2.444-.008L9.809%2C9.122%2C1.49%2C16.564a1.153%2C1.153%2C0%2C0%2C0%2C.479.1h15.8a.405.405%2C0%2C1%2C1%2C0%2C.811ZM.811%2C1.969v13.54a1.152%2C1.152%2C0%2C0%2C0%2C.1.481L9.195%2C8.583.978%2C1.369A1.152%2C1.152%2C0%2C0%2C0%2C.811%2C1.969ZM11.8%2C9.791a1.065%2C1.065%2C0%2C0%2C0%2C1.384%2C0L23.658.89a1.152%2C1.152%2C0%2C0%2C0-.421-.079H1.969A1.156%2C1.156%2C0%2C0%2C0%2C1.63.862Zm14.24%2C1.38c-.041-.88-.386-1.384-1.024-1.5a.406.406%2C0%2C0%2C1%2C.143-.8%2C2.141%2C2.141%2C0%2C0%2C1%2C1.691%2C2.258.4.4%2C0%2C0%2C1-.385.424h-.02A.406.406%2C0%2C0%2C1%2C26.04%2C11.171Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E") no-repeat center/20px auto;
}
.nav-link{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  color:#707070;
  font-size:1.25rem;
  letter-spacing:0.05em;
}
.nav-active{
  overflow:hidden;
}
.nav-active .nav-toggle{
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229.749%22%20height%3D%2229.749%22%20viewBox%3D%220%200%2029.749%2029.749%22%3E%20%3Cpath%20d%3D%22M26.517%2C30.052%2C15.91%2C19.446%2C5.3%2C30.052a2.5%2C2.5%2C0%2C0%2C1-3.536-3.535L12.374%2C15.91%2C1.768%2C5.3A2.5%2C2.5%2C0%2C0%2C1%2C5.3%2C1.768L15.91%2C12.374%2C26.517%2C1.768A2.5%2C2.5%2C0%2C0%2C1%2C30.052%2C5.3L19.446%2C15.91%2C30.052%2C26.517a2.5%2C2.5%2C0%2C1%2C1-3.535%2C3.535Z%22%20transform%3D%22translate(-1.035%20-1.035)%22%20fill%3D%22%23707070%22%2F%3E%3C%2Fsvg%3E");
}
.nav-active .nav-bar{
  display:block;
}

.footer{
  background-color:#2E2E2E;
  color:var(--qu-color-white);
}
.footer-wrap{
  max-width:1200px;
  width:100%;
  margin-inline:auto;
  padding-inline:30px;
  padding-block:70px;
  display:grid;
  grid-template-columns:130px 1fr;
  grid-template-rows:repeat(2, -webkit-min-content);
  grid-template-rows:repeat(2, min-content);
  gap:0 50px;
  grid-template-areas:"f_logo f_address" "f_copy f_copy";
}
.footer-logo{
  grid-area:f_logo;
}
.footer-address{
  font-style:normal;
  grid-area:f_address;
}
.footer-address-list{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  gap:2em;
}
.footer-address-list > div dt{
  font-weight:500;
}
.footer-address-list > div dd{
  margin-top:5px;
}
.footer-mail{
  color:var(--qu-color-white);
}

.address-post{
  display:block;
  line-height:1.2;
}
.address-inf{
  line-height:1.2;
}
.address-build{
  display:inline-block;
  padding-left:0.5em;
  line-height:1.2;
}

.copyright{
  font-weight:300;
  list-style:1;
  grid-area:f_copy;
}

.ic-mail{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  height:20px;
  padding-left:35px;
  background:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2230%22%20height%3D%2219.052%22%20viewBox%3D%220%200%2030%2019.052%22%3E%20%3Cpath%20d%3D%22M22.53%2C17.208H19.4a.406.406%2C0%2C0%2C1-.4-.348%2C2.964%2C2.964%2C0%2C0%2C1%2C1.81-3.173V11.107A3.73%2C3.73%2C0%2C0%2C1%2C23.1%2C7.67V7.421a1.376%2C1.376%2C0%2C1%2C1%2C2.751%2C0v.2a3.73%2C3.73%2C0%2C0%2C1%2C2.4%2C3.481v2.581A2.673%2C2.673%2C0%2C0%2C1%2C29.9%2C16.917a.405.405%2C0%2C0%2C1-.389.291H26.431a1.954%2C1.954%2C0%2C0%2C1-3.9%2C0Zm1.942%2C1.033a1.163%2C1.163%2C0%2C0%2C0%2C1.139-1.033H23.349A1.158%2C1.158%2C0%2C0%2C0%2C24.472%2C18.241Zm-2.849-7.134v2.857a.407.407%2C0%2C0%2C1-.282.387A2.269%2C2.269%2C0%2C0%2C0%2C19.778%2C16.4h9.4a1.894%2C1.894%2C0%2C0%2C0-1.462-2.05.406.406%2C0%2C0%2C1-.269-.383V11.107a2.912%2C2.912%2C0%2C1%2C0-5.824%2C0Zm2.291-3.686v.015a3.747%2C3.747%2C0%2C0%2C1%2C1.129-.017.565.565%2C0%2C0%2C0-1.129%2C0ZM1.969%2C17.478A1.972%2C1.972%2C0%2C0%2C1%2C0%2C15.509V1.969A1.971%2C1.971%2C0%2C0%2C1%2C1.969%2C0H23.237a1.971%2C1.971%2C0%2C0%2C1%2C1.969%2C1.969V5.058a.405.405%2C0%2C1%2C1-.811%2C0V1.969a1.151%2C1.151%2C0%2C0%2C0-.129-.531l-8.4%2C7.142a.407.407%2C0%2C0%2C1%2C.064.047l4.135%2C3.727a.406.406%2C0%2C0%2C1-.544.6L15.385%2C9.229a.4.4%2C0%2C0%2C1-.106-.153L13.711%2C10.41a1.881%2C1.881%2C0%2C0%2C1-2.444-.008L9.809%2C9.122%2C1.49%2C16.564a1.153%2C1.153%2C0%2C0%2C0%2C.479.1h15.8a.405.405%2C0%2C1%2C1%2C0%2C.811ZM.811%2C1.969v13.54a1.152%2C1.152%2C0%2C0%2C0%2C.1.481L9.195%2C8.583.978%2C1.369A1.152%2C1.152%2C0%2C0%2C0%2C.811%2C1.969ZM11.8%2C9.791a1.065%2C1.065%2C0%2C0%2C0%2C1.384%2C0L23.658.89a1.152%2C1.152%2C0%2C0%2C0-.421-.079H1.969A1.156%2C1.156%2C0%2C0%2C0%2C1.63.862Zm14.24%2C1.38c-.041-.88-.386-1.384-1.024-1.5a.406.406%2C0%2C0%2C1%2C.143-.8%2C2.141%2C2.141%2C0%2C0%2C1%2C1.691%2C2.258.4.4%2C0%2C0%2C1-.385.424h-.02A.406.406%2C0%2C0%2C1%2C26.04%2C11.171Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E") no-repeat 0 0/30px auto;
}
.wrap{
  max-width:100%;
  width:100%;
  margin-inline:auto;
  padding-inline:30px;
}
.wrap-inner, .sec-inner{
  max-width:1200px;
  width:100%;
  margin-inline:auto;
  padding-inline:30px;
}
.wrap-outer{
  max-width:1400px;
  width:100%;
  margin-inline:auto;
  padding-inline:30px;
}

.sec{
  margin-block:100px;
  scroll-margin-top:90px;
}
.grid-content{
  display:grid;
  grid-auto-flow:row dense;
  grid-template-columns:270px 1fr;
  gap:40px 60px;
}

.breadcrumb{
  margin-block:1rem;
  max-width:1200px;
  width:100%;
  margin-inline:auto;
  padding-inline:30px;
}
.breadcrumb-list li:not(:first-child)::before{
  content:">";
  padding-inline:8px;
}
.breadcrumb-item{
  display:inline-block;
}
.breadcrumb-item a{
  text-decoration:underline;
}

.entry .block-heading{
  margin-bottom:1.2em;
}
.entry h2.block-heading{
  font-size:1.375rem;
  line-height:1.4;
  letter-spacing:0.05em;
  font-weight:600;
  padding-left:5px;
  border-left:5px solid;
}
.entry h3.block-heading{
  font-size:1.25rem;
  line-height:1.4;
  letter-spacing:0.05em;
  font-weight:600;
  border-bottom:1px solid;
  padding-bottom:3px;
}
.entry h4.block-heading,
.entry h5.block-heading,
.entry h6.block-heading{
  font-size:1.125rem;
  line-height:1.4;
  letter-spacing:0.05em;
  font-weight:600;
}
.entry h5 .block-heading{
  font-size:1.25rem;
  line-height:1.4;
  letter-spacing:0.05em;
  font-weight:600;
}
.sec-title{
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  margin-bottom:35px;
  -webkit-padding-before:16px;
  padding-block-start:16px;
  -webkit-padding-end:32px;
  padding-inline-end:32px;
  color:#A8A8A8;
  font-weight:300;
  line-height:1;
}
.sec-title::before{
  position:absolute;
  top:3px;
  right:2px;
  border:1px solid #e0dada;
  border-radius:50%;
  width:50px;
  aspect-ratio:1/1;
  content:"";
  z-index:-1;
}
.sec-title::after{
  position:absolute;
  top:0;
  right:0;
  width:20px;
  aspect-ratio:1/1;
  background-color:aquamarine;
  border-radius:50%;
  content:"";
  z-index:-1;
}
.sec-title-cap{
  color:var(--qu-color-dark);
}

.ttl-line{
  margin-bottom:15px;
  padding-bottom:2px;
  border-bottom:1px solid;
}

a:not(.btn, .link-text, :where(.contents) p a){
  color:var(--dp-color-dark);
  text-underline-offset:6px;
}
a.sns-link[target=_blank]::after{
  content:none;
}
a[target=_blank]{
}
a[target=_blank]::before{
  right:25px;
}
a[target=_blank]::after{
  display:inline-block;
  width:1em;
  aspect-ratio:1/1;
  text-decoration:none;
  margin-inline:2px;
  background:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22800px%22%20height%3D%22800px%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cg%20id%3D%22Interface%20%2F%20External_Link%22%3E%3Cpath%20id%3D%22Vector%22%20d%3D%22M10.0002%205H8.2002C7.08009%205%206.51962%205%206.0918%205.21799C5.71547%205.40973%205.40973%205.71547%205.21799%206.0918C5%206.51962%205%207.08009%205%208.2002V15.8002C5%2016.9203%205%2017.4801%205.21799%2017.9079C5.40973%2018.2842%205.71547%2018.5905%206.0918%2018.7822C6.5192%2019%207.07899%2019%208.19691%2019H15.8031C16.921%2019%2017.48%2019%2017.9074%2018.7822C18.2837%2018.5905%2018.5905%2018.2839%2018.7822%2017.9076C19%2017.4802%2019%2016.921%2019%2015.8031V14M20%209V4M20%204H15M20%204L13%2011%22%20stroke%3D%22%23000000%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center center;
  background-size:contain;
  -webkit-transform:translateY(2px);
  transform:translateY(2px);
  content:"";
}

.active-underline, :where(.contents) h2 a,
:where(.contents) h3 a,
:where(.contents) h4 a,
:where(.contents) h5 a,
:where(.contents) h6 a,
:where(.contents) p a,
:where(.contents) li a,
:where(.contents) cite a{
  text-underline-offset:4px;
  text-decoration:underline;
  text-decoration-color:var(--dp-color-hover);
}

:where(.contents) h2 a,
:where(.contents) h3 a,
:where(.contents) h4 a,
:where(.contents) h5 a,
:where(.contents) h6 a,
:where(.contents) p a,
:where(.contents) li a,
:where(.contents) cite a{
  color:var(--dp-color-dark);
}
.entry a{
  text-decoration:underline;
}

.stretched-link::before{
  position:absolute;
  inset:0;
  z-index:3;
  content:"";
}
.stretched-link[target=_blank]::before{
  right:0;
}

:where(.contents) p{
  margin-top:20px;
}

.end-mark{
  text-align:right;
  font-weight:600;
}

.entry-close, .entry-date{
  text-align:right;
  font-weight:600;
}
.note{
  margin-top:-30px;
  margin-left:1em;
  text-indent:-1em;
}
.note::before{
  content:"※";
}

ul.block-list,
ol.block-list{
  margin-block:30px;
}
ul.block-list li,
ol.block-list li{
  margin-block:0.5em;
}
ul.block-list ul.block-list,
ul.block-list ol.block-list,
ol.block-list ul.block-list,
ol.block-list ol.block-list{
  margin-block:0;
}
ul.block-list ul.block-list > li,
ol.block-list ul.block-list > li{
  list-style:disc;
}
ul.block-list ul.block-list > li::before,
ol.block-list ul.block-list > li::before{
  content:none;
}
ul.block-list ol.block-list > li::before,
ol.block-list ol.block-list > li::before{
  width:18px;
  height:18px;
  background-color:#fff;
  border:1.2px solid var(--dp-color-black);
  border-radius:50%;
  font-weight:500;
  font-size:0.625rem;
  line-height:1;
  -webkit-transform:translateY(7px);
  transform:translateY(7px);
  content:counter(my-counter);
}

ul.block-list:not(.annotation) > li{
  position:relative;
  margin-left:20px;
}
ul.block-list:not(.annotation) > li::before{
  position:absolute;
  top:calc(0.5em + 2.5px);
  left:-18px;
  display:block;
  width:8px;
  height:8px;
  border-radius:100%;
  content:"";
  background-color:#5988BD;
}
ul.block-list:not(.annotation).list-line > li{
  margin-left:24px;
}
ul.block-list:not(.annotation).list-line > li::before{
  top:calc(0.5em + 5px);
  left:-22px;
  width:14px;
  height:2px;
  border-radius:0;
  background-color:#000;
}

ol.block-list{
  counter-reset:my-counter;
  list-style:none;
}
ol.block-list > li{
  position:relative;
  margin-left:28px;
}
ol.block-list > li::before{
  position:absolute;
  left:-24px;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:anchor-center;
  -ms-flex-align:anchor-center;
  align-items:anchor-center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  width:1.6em;
  content:counter(my-counter) ".";
  counter-increment:my-counter;
}

.list-wrap{
  padding:20px;
  background-color:var(--dp-color-pale);
}

blockquote:not(.twitter-tweet){
  margin-block:50px;
  padding:40px 80px;
  background:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22800px%22%20height%3D%22800px%22%20viewBox%3D%220%200%2024%2024%22%20version%3D%221.1%22%3E%20%3Ctitle%3Equote_left_fill%3C%2Ftitle%3E%20%3Cg%20id%3D%22%E9%A1%B5%E9%9D%A2-1%22%20stroke%3D%22none%22%20stroke-width%3D%221%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%20%3Cg%20id%3D%22Editor%22%20transform%3D%22translate(-624.000000%2C%20-144.000000)%22%20fill-rule%3D%22nonzero%22%3E%20%3Cg%20id%3D%22quote_left_fill%22%20transform%3D%22translate(624.000000%2C%20144.000000)%22%3E%20%3Cpath%20d%3D%22M24%2C0%20L24%2C24%20L0%2C24%20L0%2C0%20L24%2C0%20Z%20M12.5934901%2C23.257841%20L12.5819402%2C23.2595131%20L12.5108777%2C23.2950439%20L12.4918791%2C23.2987469%20L12.4918791%2C23.2987469%20L12.4767152%2C23.2950439%20L12.4056548%2C23.2595131%20C12.3958229%2C23.2563662%2012.3870493%2C23.2590235%2012.3821421%2C23.2649074%20L12.3780323%2C23.275831%20L12.360941%2C23.7031097%20L12.3658947%2C23.7234994%20L12.3769048%2C23.7357139%20L12.4804777%2C23.8096931%20L12.4953491%2C23.8136134%20L12.4953491%2C23.8136134%20L12.5071152%2C23.8096931%20L12.6106902%2C23.7357139%20L12.6232938%2C23.7196733%20L12.6232938%2C23.7196733%20L12.6266527%2C23.7031097%20L12.609561%2C23.275831%20C12.6075724%2C23.2657013%2012.6010112%2C23.2592993%2012.5934901%2C23.257841%20L12.5934901%2C23.257841%20Z%20M12.8583906%2C23.1452862%20L12.8445485%2C23.1473072%20L12.6598443%2C23.2396597%20L12.6498822%2C23.2499052%20L12.6498822%2C23.2499052%20L12.6471943%2C23.2611114%20L12.6650943%2C23.6906389%20L12.6699349%2C23.7034178%20L12.6699349%2C23.7034178%20L12.678386%2C23.7104931%20L12.8793402%2C23.8032389%20C12.8914285%2C23.8068999%2012.9022333%2C23.8029875%2012.9078286%2C23.7952264%20L12.9118235%2C23.7811639%20L12.8776777%2C23.1665331%20C12.8752882%2C23.1545897%2012.8674102%2C23.1470016%2012.8583906%2C23.1452862%20L12.8583906%2C23.1452862%20Z%20M12.1430473%2C23.1473072%20C12.1332178%2C23.1423925%2012.1221763%2C23.1452606%2012.1156365%2C23.1525954%20L12.1099173%2C23.1665331%20L12.0757714%2C23.7811639%20C12.0751323%2C23.7926639%2012.0828099%2C23.8018602%2012.0926481%2C23.8045676%20L12.108256%2C23.8032389%20L12.3092106%2C23.7104931%20L12.3186497%2C23.7024347%20L12.3186497%2C23.7024347%20L12.3225043%2C23.6906389%20L12.340401%2C23.2611114%20L12.337245%2C23.2485176%20L12.337245%2C23.2485176%20L12.3277531%2C23.2396597%20L12.1430473%2C23.1473072%20Z%22%20id%3D%22MingCute%22%20fill-rule%3D%22nonzero%22%3E%3C%2Fpath%3E%20%3Cpath%20d%3D%22M8.40001%2C6.20006%20C8.84184%2C5.86869%209.46864%2C5.95823%209.80001%2C6.40005%20C10.1314%2C6.84188%2010.0418%2C7.46868%209.60002%2C7.80006%20C8.03605%2C8.97305%207.13907%2C10.1135%206.62712%2C11.1097%20C6.90615%2C11.0381%207.19863%2C11.0000002%207.5%2C11.0000002%20C9.433%2C11.0000002%2011%2C12.567%2011%2C14.5000002%20C11%2C16.433%209.433%2C18.0000002%207.5%2C18.0000002%20C5.58635%2C18.0000002%204.0314%2C16.4642%204.00047%2C14.5579%20C3.91027%2C13.6929%203.92344%2C12.4169%204.50804%2C10.9437%20C5.10548%2C9.43818%206.27242%2C7.79577%208.40001%2C6.20006%20Z%20M17.4%2C6.20006%20C17.8418%2C5.86869%2018.4686%2C5.95823%2018.8%2C6.40005%20C19.1314%2C6.84188%2019.0418%2C7.46868%2018.6%2C7.80006%20C17.036%2C8.97305%2016.1391%2C10.1135%2015.6271%2C11.1097%20C15.9061%2C11.0381%2016.1986%2C11.0000002%2016.5%2C11.0000002%20C18.433%2C11.0000002%2020%2C12.567%2020%2C14.5000002%20C20%2C16.433%2018.433%2C18.0000002%2016.5%2C18.0000002%20C14.5863%2C18.0000002%2013.0314%2C16.4642%2013.0005%2C14.5579%20C12.9103%2C13.6929%2012.9234%2C12.4169%2013.508%2C10.9437%20C14.1055%2C9.43818%2015.2724%2C7.79577%2017.4%2C6.20006%20Z%22%20id%3D%22%E5%BD%A2%E7%8A%B6%E7%BB%93%E5%90%88%22%20fill%3D%22%2309244B%22%3E%3C%2Fpath%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 20px 20px/45px auto, url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22800px%22%20height%3D%22800px%22%20viewBox%3D%220%200%2024%2024%22%20version%3D%221.1%22%3E%20%3Ctitle%3Equote_right_fill%3C%2Ftitle%3E%20%3Cg%20id%3D%22%E9%A1%B5%E9%9D%A2-1%22%20stroke%3D%22none%22%20stroke-width%3D%221%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%20%3Cg%20id%3D%22Editor%22%20transform%3D%22translate(-672.000000%2C%20-144.000000)%22%20fill-rule%3D%22nonzero%22%3E%20%3Cg%20id%3D%22quote_right_fill%22%20transform%3D%22translate(672.000000%2C%20144.000000)%22%3E%20%3Cpath%20d%3D%22M24%2C0%20L24%2C24%20L0%2C24%20L0%2C0%20L24%2C0%20Z%20M12.5934901%2C23.257841%20L12.5819402%2C23.2595131%20L12.5108777%2C23.2950439%20L12.4918791%2C23.2987469%20L12.4918791%2C23.2987469%20L12.4767152%2C23.2950439%20L12.4056548%2C23.2595131%20C12.3958229%2C23.2563662%2012.3870493%2C23.2590235%2012.3821421%2C23.2649074%20L12.3780323%2C23.275831%20L12.360941%2C23.7031097%20L12.3658947%2C23.7234994%20L12.3769048%2C23.7357139%20L12.4804777%2C23.8096931%20L12.4953491%2C23.8136134%20L12.4953491%2C23.8136134%20L12.5071152%2C23.8096931%20L12.6106902%2C23.7357139%20L12.6232938%2C23.7196733%20L12.6232938%2C23.7196733%20L12.6266527%2C23.7031097%20L12.609561%2C23.275831%20C12.6075724%2C23.2657013%2012.6010112%2C23.2592993%2012.5934901%2C23.257841%20L12.5934901%2C23.257841%20Z%20M12.8583906%2C23.1452862%20L12.8445485%2C23.1473072%20L12.6598443%2C23.2396597%20L12.6498822%2C23.2499052%20L12.6498822%2C23.2499052%20L12.6471943%2C23.2611114%20L12.6650943%2C23.6906389%20L12.6699349%2C23.7034178%20L12.6699349%2C23.7034178%20L12.678386%2C23.7104931%20L12.8793402%2C23.8032389%20C12.8914285%2C23.8068999%2012.9022333%2C23.8029875%2012.9078286%2C23.7952264%20L12.9118235%2C23.7811639%20L12.8776777%2C23.1665331%20C12.8752882%2C23.1545897%2012.8674102%2C23.1470016%2012.8583906%2C23.1452862%20L12.8583906%2C23.1452862%20Z%20M12.1430473%2C23.1473072%20C12.1332178%2C23.1423925%2012.1221763%2C23.1452606%2012.1156365%2C23.1525954%20L12.1099173%2C23.1665331%20L12.0757714%2C23.7811639%20C12.0751323%2C23.7926639%2012.0828099%2C23.8018602%2012.0926481%2C23.8045676%20L12.108256%2C23.8032389%20L12.3092106%2C23.7104931%20L12.3186497%2C23.7024347%20L12.3186497%2C23.7024347%20L12.3225043%2C23.6906389%20L12.340401%2C23.2611114%20L12.337245%2C23.2485176%20L12.337245%2C23.2485176%20L12.3277531%2C23.2396597%20L12.1430473%2C23.1473072%20Z%22%20id%3D%22MingCute%22%20fill-rule%3D%22nonzero%22%3E%3C%2Fpath%3E%20%3Cpath%20d%3D%22M16.5%2C6%20C18.4137%2C6%2019.9686%2C7.5358%2019.9995%2C9.44208%20C20.0897%2C10.3071%2020.0766%2C11.5831%2019.492%2C13.0563%20C18.8945%2C14.5618%2017.7276%2C16.2042%2015.6%2C17.7999%20C15.1582%2C18.1313%2014.5314%2C18.0418%2014.2%2C17.5999%20C13.8686%2C17.1581%2013.9582%2C16.5313%2014.4%2C16.1999%20C15.964%2C15.027%2016.8609%2C13.8865%2017.3729%2C12.8903%20C17.0938%2C12.9619%2016.8014%2C13%2016.5%2C13%20C14.567%2C13%2013%2C11.433%2013%2C9.5%20C13%2C7.567%2014.567%2C6%2016.5%2C6%20Z%20M7.5%2C6%20C9.41366%2C6%2010.9686%2C7.5358%2010.9995%2C9.44209%20C11.0897%2C10.3071%2011.0766%2C11.5831%2010.492%2C13.0563%20C9.89452%2C14.5618%208.72758%2C16.2042%206.59999%2C17.7999%20C6.15816%2C18.1313%205.53136%2C18.0418%205.19999%2C17.5999%20C4.86861%2C17.1581%204.95815%2C16.5313%205.39998%2C16.1999%20C6.96395%2C15.027%207.86093%2C13.8865%208.37288%2C12.8903%20C8.09385%2C12.9619%207.80137%2C13%207.5%2C13%20C5.567%2C13%204%2C11.433%204%2C9.5%20C4%2C7.567%205.567%2C6%207.5%2C6%20Z%22%20id%3D%22%E5%BD%A2%E7%8A%B6%22%20fill%3D%22%2309244B%22%3E%3C%2Fpath%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat calc(100% - 20px) calc(100% - 20px)/45px auto, #f5f6f9;
}
blockquote:not(.twitter-tweet) p{
  margin-block:0 15px;
}
blockquote:not(.twitter-tweet) cite{
  display:block;
  text-align:right;
  width:100%;
}
blockquote:not(.twitter-tweet) cite > em{
  font-style:normal;
}

.twitter-tweet{
  margin-block:50px;
}

.block-embed-twitter{
  margin-block:50px;
}
.block-embed-youtube{
  margin-block:50px;
  width:100%;
  aspect-ratio:16/9;
}
.block-embed-youtube iframe{
  width:100%;
  height:100%;
  aspect-ratio:16/9;
}

.main-header{
  height:100vh;
  margin-top:-60px;
  background:calc(50% - 300px) 54px/1060px auto no-repeat, 50% 50%/cover no-repeat;
  background-image:url(../images/bg_home.webp), url(../images/bg.webp);
  background-blend-mode:hard-light, normal;
}
.main-header-wrap{
  height:100%;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:reverse;
  -ms-flex-direction:column-reverse;
  flex-direction:column-reverse;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:end;
  -ms-flex-align:end;
  align-items:flex-end;
  margin-right:50px;
  gap:50px;
}

.home-title{
  display:block;
  width:850px;
  aspect-ratio:17/7;
  background:url(../images/home_quaju.svg) no-repeat center/contain;
}
.home-lead{
  font-size:3.125rem;
  font-weight:700;
  line-height:1.4;
  color:#000;
}

.scroll-down{
  position:absolute;
  display:inline-block;
  bottom:0px;
  left:-125px;
  -webkit-transform:rotate(90deg);
  transform:rotate(90deg);
  font-weight:300;
  font-style:italic;
  -webkit-transform-origin:right bottom;
  transform-origin:right bottom;
  padding-bottom:3px;
  padding-right:50px;
  border-bottom:1px solid #000;
  color:#000;
}

.about-lead{
  padding-left:45px;
  max-width:750px;
  margin-bottom:35px;
}
.about-concept{
  padding-left:45px;
  max-width:750px;
}
.about-dl > div{
  margin-top:16px;
}
.about-dl > div dt{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  font-style:italic;
  font-weight:700;
  gap:8px;
}
.about-dl > div dt::before{
  display:block;
  width:14px;
  height:2px;
  background-color:#707070;
  content:"";
}
.about-dl > div dd{
  padding-left:22px;
}
.about-ol{
  display:grid;
  grid-auto-flow:column;
  grid-template-rows:repeat(3, auto);
  margin-top:8px;
  padding-left:0;
  list-style:none;
  gap:20px 80px;
}
.about-ol li{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  height:30px;
  counter-increment:mycounter;
  gap:5px;
}
.about-ol li::before{
  color:var(--qu-color-black);
  font-style:italic;
  font-weight:700;
  content:counter(mycounter, decimal-leading-zero);
}
.about-ol li::after{
  position:absolute;
  width:30px;
  left:5px;
  aspect-ratio:1/1;
  border-radius:50%;
  background-color:#EDEDED;
  z-index:-1;
  content:"";
}

.message{
  display:grid;
  grid-auto-flow:row dense;
  grid-template-columns:370px 1fr;
  grid-template-rows:repeat(2, auto);
  gap:30px 80px;
  grid-template-areas:"profile message" "certification message" "outline outline";
  margin-block:70px;
}
.message-wrap{
  grid-area:message;
}
.message-ttl{
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:reverse;
  -ms-flex-direction:column-reverse;
  flex-direction:column-reverse;
  margin-bottom:25px;
  font-weight:600;
  line-height:1;
  gap:5px;
}
.message-ttl::before{
  position:absolute;
  bottom:5.5px;
  display:block;
  width:calc(100% - 9em);
  height:1px;
  margin-left:9em;
  background-color:#707070;
  z-index:-1;
  content:"";
}
.message-ttl::after{
  display:block;
  font-weight:300;
  content:"MESSAGE";
  color:#A8A8A8;
  line-height:1;
}
.message-ttl > span{
  padding-right:8px;
}
.message-inner p{
  margin-top:2.5em;
  line-height:1.8;
}
.message-inner p:first-child{
  margin-top:0;
}

.profile{
  grid-area:profile;
}
.profile-img{
  -webkit-mask-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22526.503%22%20height%3D%22525.723%22%20viewBox%3D%220%200%20526.503%20525.723%22%3E%20%3Cpath%20d%3D%22M4.544%2C212.409C-6.209%2C137.509.478%2C83.316%2C42.479%2C51.7c45-33.9%2C150.823-75.611%2C201.331-34.832%2C30.249%2C24.416%2C67.07%2C89.585%2C82.91%2C125.048%2C39.407%2C88.321%2C37.413%2C93.538%2C5.833%2C172.727-43.134%2C108.18-130.666%2C70.722-232.635%2C48.412C25.323%2C346.77%2C11.336%2C259.8%2C4.544%2C212.409%22%20transform%3D%22matrix(0.695%2C%200.719%2C%20-0.719%2C%200.695%2C%20279.013%2C%200)%22%20fill%3D%22%23FFF%22%2F%3E%3C%2Fsvg%3E");
  mask-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22526.503%22%20height%3D%22525.723%22%20viewBox%3D%220%200%20526.503%20525.723%22%3E%20%3Cpath%20d%3D%22M4.544%2C212.409C-6.209%2C137.509.478%2C83.316%2C42.479%2C51.7c45-33.9%2C150.823-75.611%2C201.331-34.832%2C30.249%2C24.416%2C67.07%2C89.585%2C82.91%2C125.048%2C39.407%2C88.321%2C37.413%2C93.538%2C5.833%2C172.727-43.134%2C108.18-130.666%2C70.722-232.635%2C48.412C25.323%2C346.77%2C11.336%2C259.8%2C4.544%2C212.409%22%20transform%3D%22matrix(0.695%2C%200.719%2C%20-0.719%2C%200.695%2C%20279.013%2C%200)%22%20fill%3D%22%23FFF%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-size:120% auto;
  mask-size:120% auto;
}
.profile-caption{
  text-align:center;
}
.profile-pos{
  grid-area:pos;
}
.profile-name{
  grid-area:name;
}

.certification{
  grid-area:certification;
}
.certification-list{
  list-style:disc outside;
  margin-left:0.8em;
}
.certification-imgs{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}
.certification-imgs li{
  -webkit-box-flex:0;
  -ms-flex:0 0 calc((100% - 30px) / 3);
  flex:0 0 calc((100% - 30px) / 3);
}
.outline{
  display:grid;
  grid-auto-flow:row dense;
  grid-template-columns:270px 1fr;
  gap:40px 60px;
  margin-top:50px;
  grid-area:outline;
}
.outline-ttl{
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:reverse;
  -ms-flex-direction:column-reverse;
  flex-direction:column-reverse;
  margin-bottom:auto;
  font-weight:600;
  line-height:1;
  gap:5px;
}
.outline-ttl::before{
  position:absolute;
  bottom:5.5px;
  display:block;
  width:calc(100% - 5em);
  height:1px;
  margin-left:5em;
  background-color:#707070;
  z-index:-1;
  content:"";
}
.outline-ttl::after{
  display:block;
  font-weight:300;
  content:"OUTLINE";
  color:#A8A8A8;
  line-height:1;
}
.outline-ttl > span{
  padding-right:8px;
}
.outline-dl > div{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  margin-bottom:20px;
  gap:40px;
}
.outline-dl > div dt{
  position:relative;
  -webkit-box-flex:0;
  -ms-flex:0 0 5em;
  flex:0 0 5em;
  line-height:1.8;
}
.outline-dl > div dt::after{
  position:absolute;
  top:10px;
  left:5.6em;
  display:block;
  width:8px;
  border-radius:50%;
  aspect-ratio:1/1;
  background-color:#707070;
  content:"";
}
.outline-dl > div dd{
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
}

.origin{
  margin-top:50px;
  border-radius:25px;
  background-color:#F2F2F2;
}
.origin-fig{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  gap:30px;
  padding:1rem;
}
.origin-fig img{
  -webkit-box-flex:0;
  -ms-flex:0 0 145px;
  flex:0 0 145px;
  max-width:145px;
}
.origin-caption{
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
}
.origin-ttl{
  font-weight:600;
}

.sec-service{
  position:relative;
}
.sec-service.sec{
  margin-block:240px;
}
.sec-service::after{
  position:absolute;
  inset:-80px;
  width:calc(100% + 120px);
  -webkit-transform:rotate(2deg);
  transform:rotate(2deg);
  -webkit-transform-origin:center;
  transform-origin:center;
  background-color:#4B4B4B;
  content:"";
  z-index:-2;
}

.service-wrap{
  display:grid;
  grid-auto-columns:1fr;
  grid-template-columns:380px 1fr;
  grid-template-rows:repeat(3, auto);
  gap:0 60px;
  grid-template-areas:"s_ttl s_img" "s_list s_img" ". s_img";
}
.service-ttl{
  color:#b4b4b4;
}
.service-ttl .sec-title-cap{
  color:#FFF;
}
.service-ttl-wrap{
  grid-area:s_ttl;
}
.service-list{
  padding-block:20px;
  padding-left:20px;
  border-left:1px solid #FFF;
  grid-area:s_list;
}
.service-list li{
  font-weight:600;
  color:#FFF;
}
.service-list li:not(:last-child){
  margin-bottom:20px;
}
.service-explain{
  display:block;
}
.service-img{
  grid-area:s_img;
}

.sec-about{
  position:relative;
}
.sec-about:after{
  position:absolute;
  top:60px;
  left:calc(50% + 270px);
  width:690px;
  height:627px;
  background:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22690.932%22%20height%3D%22627.172%22%20viewBox%3D%220%200%20690.932%20627.172%22%3E%20%3Cpath%20d%3D%22M8.813%2C343.455C-12.042%2C222.345.927%2C134.718%2C82.38%2C83.6%2C169.651%2C28.792%2C374.874-38.658%2C472.825%2C27.28c58.663%2C39.479%2C130.07%2C144.855%2C160.789%2C202.2%2C76.422%2C142.811%2C72.555%2C151.246%2C11.311%2C279.291-83.65%2C174.921-253.4%2C114.354-451.154%2C78.279C49.109%2C560.71%2C21.983%2C420.084%2C8.813%2C343.455%22%20transform%3D%22translate(0%20-0.001)%22%20fill%3D%22%23fcf9f9%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
  content:"";
  z-index:-1;
}

.message-inner{
  position:relative;
}
.message-inner::after{
  position:absolute;
  right:-90px;
  bottom:-385px;
  width:646px;
  height:623px;
  background:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22647.215%22%20height%3D%22624.941%22%20viewBox%3D%220%200%20647.215%20624.941%22%3E%20%3Cpath%20d%3D%22M484.839%2C335.557c-29.208-7.467-34.684-47.336-37.344-69.062-4.21-34.336-1.592-59.179%2C14.854-73.671%2C17.62-15.539%2C59.054-34.663%2C78.831-15.968%2C11.844%2C11.192%2C26.261%2C41.068%2C32.463%2C57.325%2C15.43%2C40.488%2C14.649%2C42.88%2C2.284%2C79.182-8.808%2C25.865-22.347%2C33.569-38.948%2C33.569C521.749%2C346.933%2C503.941%2C340.45%2C484.839%2C335.557ZM95.21%2C239.33C-21.41%2C216.165-43.278%2C92.479-53.9%2C25.081-58.443-3.733-61-30.387-61-54.839v-.024C-61.008-120.8-42.486-170.675%2C5.411-203.469%2C75.765-251.677%2C241.207-311%2C320.171-253.006%2C367.463-218.282%2C425.028-125.6%2C449.792-75.167%2C511.4%2C50.441%2C508.283%2C57.86%2C458.911%2C170.48c-35.17%2C80.24-89.227%2C104.14-155.514%2C104.142C242.587%2C274.622%2C171.485%2C254.51%2C95.21%2C239.33Z%22%20transform%3D%22translate(61.5%20277.509)%22%20fill%3D%22%23fcf9f9%22%20stroke%3D%22rgba(0%2C0%2C0%2C0)%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E") 50% 50%/contain no-repeat;
  content:"";
  z-index:-1;
}

.outline{
  position:relative;
}
.outline::after{
  position:absolute;
  top:30px;
  right:calc(100% - 250px);
  width:522px;
  height:482px;
  background:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22522.426%22%20height%3D%22482.615%22%20viewBox%3D%220%200%20522.426%20482.615%22%3E%20%3Cpath%20d%3D%22M3.339%2C276.511c-10.794-93%2C2.8-161.133%2C67.1-203.127C139.337%2C28.359%2C298.755-30.023%2C370.7%2C17.975c43.087%2C28.738%2C93.112%2C108.033%2C114.125%2C151.43%2C52.27%2C108.083%2C48.963%2C114.722-3.17%2C215.573-71.207%2C137.772-198.155%2C96.108-347.5%2C74.23C24.9%2C443.244%2C10.149%2C335.352%2C3.339%2C276.511%22%20transform%3D%22translate(0)%22%20fill%3D%22%23fcf9f9%22%2F%3E%3C%2Fsvg%3E") 50% 50%/contain no-repeat;
  content:"";
  z-index:-2;
}

.about-ttl::after{
  background-color:var(--qu-color-blue);
}

.service-ttl::after{
  background-color:var(--qu-color-yellow);
}

.works-ttl::after{
  background-color:var(--qu-color-pink);
}

.news-ttl::after{
  background-color:var(--qu-color-green);
}

.sec-news:not(.home-news){
  min-height:440px;
}
.sec-news.sec{
  position:relative;
}
.sec-news.sec.home-news{
  margin-bottom:0;
  padding-block:70px;
}
.sec-news.sec.home-news::after{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  background-color:#F7F7F7;
  content:"";
  z-index:-2;
}
.news-wrap{
  display:grid;
  grid-template-columns:270px 1fr;
  gap:40px 60px;
}
.news-list{
  margin-top:20px;
}
.news-article{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  gap:30px;
  padding-block:20px;
  border-bottom:1px solid #D9D9D9;
}
.news-parmalink{
  color:#707070;
}

.date-news{
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  gap:8px;
  -webkit-box-flex:0;
  -ms-flex:0;
  flex:0;
}
.date-year{
  display:block;
  text-align:center;
  line-height:1;
}
.date-day{
  display:block;
  text-align:center;
  line-height:1;
}

.entry{
  margin-top:50px;
}
.entry-date{
  font-size:0.875rem;
  line-height:1.8;
  color:#A8A8A8;
}
.entry-header{
  position:relative;
  margin-bottom:25px;
  padding-bottom:10px;
}
.entry-header::after{
  position:absolute;
  left:0;
  bottom:4px;
  height:4px;
  width:60px;
  border-radius:4px;
  background-color:#A8A8A8;
  content:"";
}
.entry-ttl{
  font-weight:600;
  line-height:1.6;
}
.entry-content p,
.entry-content ul,
.entry-content ol{
  line-height:1.8;
  margin-top:1rem;
}

.works-wrap{
  display:grid;
  grid-template-columns:270px 1fr;
  gap:40px 60px;
}
.works-list{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:35px;
}
.works-fig{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  border:1px solid #F7F7F7;
  border-radius:15px;
  -webkit-box-shadow:0 0 6px rgba(10, 10, 10, 0.16);
  box-shadow:0 0 6px rgba(10, 10, 10, 0.16);
  overflow:clip;
  background-color:#FFF;
  aspect-ratio:27/16;
}
.works-caption{
  position:absolute;
  right:5px;
  bottom:5px;
  line-height:1;
  z-index:10;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
.works-caption::before{
  display:inline;
  content:"Client.";
  color:#aaaaaa;
}
.works-lead{
  margin-top:20px;
}
.works-archives{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  gap:50px;
}
.works-archives-article{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  gap:40px;
}
.works-archives-article .works-fig{
  -webkit-box-flex:0;
  -ms-flex:0 0 270px;
  flex:0 0 270px;
}
.works-archives-client::before{
  content:"Client.";
  color:#aaaaaa;
  content:"Client.";
  line-height:1;
}
.works-archives-client .client{
  font-weight:700;
  line-height:1;
  margin-bottom:15px;
}
.works-archives-details{
  padding-left:1.2rem;
  list-style:outside circle;
}
@media (max-width: 991.98px){
  .nav-list{
    gap:2.5641025641vw;
  }
  .footer-wrap{
    padding-inline:30px;
  }
  .footer-wrap{
    padding-block:40px;
  }
  .wrap{
    padding-inline:30px;
  }
  .wrap-inner, .sec-inner{
    padding-inline:30px;
  }
  .wrap-outer{
    padding-inline:30px;
  }
  .sec{
    margin-block:60px;
  }
  .breadcrumb{
    padding-inline:30px;
  }
  blockquote:not(.twitter-tweet){
    padding:45px 70px;
    background-size:30px auto, 30px auto, auto;
    background-position:15px 15px, calc(100% - 15px) calc(100% - 15px), 0 0;
  }
  .main-header{
    background-position:-13vw calc(100% - 3vw), 50% 50%;
    background-size:130vw auto, cover;
  }
  .home-title{
    width:540px;
  }
  .message{
    grid-template-columns:270px 1fr;
    grid-template-rows:repeat(3, auto);
    grid-template-areas:"message message" "profile certification" "outline outline";
    gap:30px 30px;
  }
  .message{
    margin-block:40px;
  }
  .sec-service.sec{
    margin-block:160px;
  }
  .service-wrap{
    gap:0 10px;
  }
  .sec-news.sec.home-news{
    padding-block:40px;
  }
  .works-wrap{
    display:block;
  }
}
@media (max-width: 767.98px){
  body{
    font-size:0.9375rem;
    line-height:1.75;
  }
  p:not(:has(.header, .footer) p){
    margin-block:1.2em;
  }
  .fnt-60, .sec-title{
    font-size:2.875rem;
  }
  .fnt-60, .sec-title{
    font-size:2.875rem;
  }
  .fnt-46, .message-ttl::after, .outline-ttl::after{
    font-size:2.5rem;
  }
  .fnt-24, .profile-name{
    font-size:1.375rem;
  }
  .fnt-22, .about-dl > div dt{
    font-size:1.25rem;
  }
  .fnt-20, .date-day, .entry-ttl, .service-list li{
    font-size:1.125rem;
  }
  .fnt-18, .about-dl > div dd, .origin-ttl{
    font-size:1rem;
  }
  .fnt-16{
    font-size:0.875rem;
  }
  .fnt-14, .date-year, .works-caption, .works-lead p, .works-archives-details, .certification-list li, .service-explain, .end-mark, .entry-close, .entry-date, .breadcrumb-item, .btn-more{
    font-size:0.8125rem;
  }
  .fnt-12, .scroll-down, .about-ol li::before, .message-ttl, .profile-pos, .outline-ttl, .note, .footer-address-list > div dt{
    font-size:0.6875rem;
  }
  .fnt-10, .works-caption::before, .works-archives-client::before{
    font-size:0.625rem;
  }
  small{
    font-size:0.625rem;
  }
  .btn-wrap{
    margin-top:30px;
  }
  .nav-list{
    display:block;
  }
  .nav-bar{
    position:fixed;
    top:60px;
    bottom:0;
    inset-inline:0;
    display:none;
    padding-block:40px;
    background-color:var(--qu-color-white);
    z-index:600;
  }
  .nav-home{
    display:block;
  }
  .nav-mail{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    width:12.8205128205vw;
    height:12.8205128205vw;
    background-size:8.9743589744vw;
    margin:10.2564102564vw;
  }
  .nav-link{
    height:60px;
    font-size:1.625rem;
    margin-inline:40px;
  }
  .footer-wrap{
    padding-inline:30px;
  }
  .footer-wrap{
    grid-template-columns:1fr;
    grid-template-rows:repeat(3, -webkit-min-content);
    grid-template-rows:repeat(3, min-content);
    grid-template-areas:"f_logo" "f_address" "f_copy";
    row-gap:15px;
  }
  .footer-logo{
    width:120px;
  }
  .wrap{
    padding-inline:30px;
  }
  .wrap-inner, .sec-inner{
    padding-inline:30px;
  }
  .wrap-outer{
    padding-inline:30px;
  }
  .breadcrumb{
    padding-inline:30px;
  }
  .entry h2.block-heading{
    font-size:1.25rem;
  }
  .entry h3.block-heading{
    font-size:1.125rem;
  }
  .entry h4.block-heading,
  .entry h5.block-heading,
  .entry h6.block-heading{
    font-size:1rem;
  }
  .entry h5 .block-heading{
    font-size:1.125rem;
  }
  .sec-title{
    margin-bottom:25px;
    -webkit-padding-before:16px;
    padding-block-start:16px;
    -webkit-padding-end:32px;
    padding-inline-end:32px;
  }
  .sec-title::before{
    width:45px;
  }
  .sec-title::after{
    width:16px;
  }
  .ttl-line{
    margin-bottom:10px;
  }
  .main-header-wrap{
    margin-right:5.1282051282vw;
  }
  .home-title{
    width:87.1794871795vw;
  }
  .home-lead{
    font-size:2.5rem;
  }
  .about-lead{
    margin-bottom:25px;
    padding-left:36px;
  }
  .about-concept{
    padding-left:36px;
  }
  .about-dl > div{
    margin-top:14px;
  }
  .about-ol{
    grid-template-rows:repeat(6, auto);
    gap:15px 0;
  }
  .message{
    grid-template-columns:200px 1fr;
    grid-template-rows:repeat(3, auto);
    grid-template-areas:"message message" "profile certification" "outline outline";
    gap:15px 15px;
  }
  .profile-caption{
    margin-top:0;
    text-align:center;
  }
  .outline{
    display:block;
  }
  .outline-ttl{
    margin-bottom:25px;
  }
  .origin{
    border-radius:15px;
  }
  .origin-fig{
    gap:20px;
  }
  .service-wrap{
    grid-template-columns:1fr;
    grid-template-rows:repeat(3, auto);
    grid-template-areas:"s_ttl" "s_list" "s_img";
    gap:5.1282051282vw 0;
  }
  .sec-about:after{
    left:auto;
    right:-370px;
  }
  .message-inner::after{
    bottom:-90px;
    left:-100px;
    width:348px;
    height:336px;
  }
  .outline::after{
    top:40px;
    right:-100px;
    width:372px;
    height:343px;
  }
  .news-wrap{
    display:block;
  }
  .entry-date{
    font-size:0.8125rem;
  }
  .works-list{
    grid-template-columns:1fr;
    max-width:400px;
    margin-inline:auto;
    gap:7.6923076923vw;
  }
  .works-archives-article{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:20px;
  }
}
@media (max-width: 575.98px){
  :root{
    scroll-behavior:auto;
  }
  body{
    font-size:3.5897435897vw;
  }
  p:not(:has(.header, .footer) p){
    margin-block:1em;
  }
  .fnt-60, .sec-title{
    font-size:8.2051282051vw;
  }
  .fnt-60, .sec-title{
    font-size:8.2051282051vw;
  }
  .fnt-46, .message-ttl::after, .outline-ttl::after{
    font-size:7.6923076923vw;
  }
  .fnt-24, .profile-name{
    font-size:5.641025641vw;
  }
  .fnt-22, .about-dl > div dt{
    font-size:5.1282051282vw;
  }
  .fnt-20, .date-day, .entry-ttl, .service-list li{
    font-size:4.6153846154vw;
  }
  .fnt-18, .about-dl > div dd, .origin-ttl{
    font-size:4.1025641026vw;
  }
  .fnt-16{
    font-size:3.5897435897vw;
  }
  .fnt-14, .date-year, .works-caption, .works-lead p, .works-archives-details, .certification-list li, .service-explain, .end-mark, .entry-close, .entry-date, .breadcrumb-item, .btn-more{
    font-size:3.0769230769vw;
  }
  .fnt-12, .scroll-down, .about-ol li::before, .message-ttl, .profile-pos, .outline-ttl, .note, .footer-address-list > div dt{
    font-size:2.5641025641vw;
  }
  .fnt-10, .works-caption::before, .works-archives-client::before{
    font-size:2.5641025641vw;
  }
  small{
    font-size:2.5641025641vw;
  }
  .blk-sm-down,
  .br-sm-down{
    display:block;
  }
  .blk-md-down,
  .br-md-down{
    display:block;
  }
  .blk-lg-down,
  .br-lg-down{
    display:block;
  }
  .blk-xl-down,
  .br-xl-down{
    display:block;
  }
  .btn-wrap{
    margin-top:10.2564102564vw;
  }
  .header-wrap{
    padding-inline:4.1025641026vw;
  }
  .nav-link{
    height:15.3846153846vw;
    margin-inline:10.2564102564vw;
    font-size:8.2051282051vw;
  }
  .footer-wrap{
    padding-inline:4.1025641026vw;
  }
  .footer-wrap{
    padding-block:8.9743589744vw;
  }
  .footer-wrap{
    row-gap:3.8461538462vw;
  }
  .footer-logo{
    width:100px;
  }
  .footer-address-list{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:2.5641025641vw;
  }
  .wrap{
    padding-inline:4.1025641026vw;
  }
  .wrap-inner, .sec-inner{
    padding-inline:4.1025641026vw;
  }
  .wrap-outer{
    padding-inline:4.1025641026vw;
  }
  .sec{
    margin-block:11.5384615385vw;
  }
  .sec{
    scroll-margin-top:23.0769230769vw;
  }
  .breadcrumb{
    padding-inline:4.1025641026vw;
  }
  .entry h2.block-heading{
    font-size:5.1282051282vw;
  }
  .entry h3.block-heading{
    font-size:4.6153846154vw;
  }
  .entry h4.block-heading,
  .entry h5.block-heading,
  .entry h6.block-heading{
    font-size:4.1025641026vw;
  }
  .entry h5 .block-heading{
    font-size:4.6153846154vw;
  }
  .sec-title{
    margin-bottom:5.1282051282vw;
    -webkit-padding-before:3.0769230769vw;
    padding-block-start:3.0769230769vw;
    -webkit-padding-end:5.641025641vw;
    padding-inline-end:5.641025641vw;
  }
  .sec-title::before{
    top:0.5128205128vw;
    right:0.2564102564vw;
    width:8.2051282051vw;
    border-width:1px;
  }
  .sec-title::after{
    width:3.0769230769vw;
  }
  .ttl-line{
    margin-bottom:2.5641025641vw;
  }
  :where(.contents) p{
    margin-top:10.2564102564vw;
  }
  .note{
    margin-top:-10.2564102564vw;
  }
  ul.block-list,
  ol.block-list{
    margin-block:7.6923076923vw;
  }
  ul.block-list:not(.annotation) > li::before{
    top:calc(0.5em + 1px);
  }
  .list-wrap{
    padding:7.6923076923vw;
  }
  blockquote:not(.twitter-tweet){
    padding:12.8205128205vw 17.9487179487vw;
    background-size:10.2564102564vw auto, 10.2564102564vw auto, auto;
    background-position:5.1282051282vw 5.1282051282vw, calc(100% - 5.1282051282vw) calc(100% - 5.1282051282vw), 0 0;
  }
  .home-lead{
    font-size:6.6666666667vw;
  }
  .about-lead{
    margin-bottom:5.1282051282vw;
    padding-left:5.1282051282vw;
  }
  .about-concept{
    padding-left:5.1282051282vw;
  }
  .about-dl > div{
    margin-top:2.5641025641vw;
  }
  .about-ol{
    margin-top:2.0512820513vw;
    gap:3.8461538462vw;
  }
  .about-ol li{
    height:6.6666666667vw;
    gap:1.2820512821vw;
  }
  .about-ol li::after{
    left:1.2820512821vw;
    width:6.6666666667vw;
  }
  .message{
    grid-template-columns:1fr;
    grid-template-rows:repeat(4, auto);
    grid-template-areas:"message" "profile" "certification" "outline";
    gap:5.1282051282vw;
  }
  .message{
    margin-block:8.9743589744vw;
  }
  .message-ttl{
    margin-bottom:5.1282051282vw;
  }
  .message-ttl::before{
    bottom:1.1538461538vw;
  }
  .outline{
    margin-top:12.8205128205vw;
  }
  .outline-ttl{
    margin-bottom:5.1282051282vw;
  }
  .outline-ttl::before{
    bottom:1.1538461538vw;
  }
  .outline-dl > div dt::after{
    top:2.0512820513vw;
    width:1.5384615385vw;
  }
  .origin{
    border-radius:3.8461538462vw;
  }
  .origin-fig{
    display:block;
    text-align:center;
    padding:3.8461538462vw;
  }
  .origin-fig img{
    max-width:120px;
  }
  .origin-caption{
    margin-top:2.5641025641vw;
    text-align:left;
  }
  .sec-service.sec{
    margin-block:51.2820512821vw;
  }
  .sec-service::after{
    inset:-20.5128205128vw;
  }
  .sec-news.sec.home-news{
    padding-block:8.9743589744vw;
  }
  .entry-date{
    font-size:3.0769230769vw;
  }
}
@media screen and (max-height: 450px){
  .main-header{
    background-position:-13vw calc(100% + 13vw), 50% 50%;
    background-size:70vw auto, cover;
  }
  .main-header-wrap{
    -webkit-box-pack:start;
    -ms-flex-pack:start;
    justify-content:flex-start;
    gap:10px;
    padding-bottom:7vh;
  }
  .home-title{
    width:400px;
  }
  .home-lead{
    font-size:1.5rem;
  }
}
@media (min-width: 576px){
  .blk-sm-up,
  .br-sm-up{
    display:block;
  }
  .blk-md-up,
  .br-md-up{
    display:block;
  }
  .blk-lg-up,
  .br-lg-up{
    display:block;
  }
  .blk-xl-up,
  .br-xl-up{
    display:block;
  }
  ul.block-list ol.block-list > li::before,
  ol.block-list ol.block-list > li::before{
    -webkit-transform:translateY(5px);
    transform:translateY(5px);
  }
}
@media (min-width: 768px){
  .home .header{
    position:initial;
    -webkit-box-shadow:none;
    box-shadow:none;
    background-color:transparent;
  }
  .home .header-logo{
    opacity:0;
  }
  .nav-toggle{
    display:none;
  }
  .nav-bar{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
  }
  .nav-link{
    height:40px;
  }
  .nav-link::after{
    position:absolute;
    bottom:2px;
    left:0;
    right:0;
    width:100%;
    height:4px;
    border-radius:4px;
    background-color:var(--qu-color-black);
    content:"";
    opacity:0;
    -webkit-transition:0.4s ease-out all;
    transition:0.4s ease-out all;
  }
  .footer-address{
    justify-self:end;
  }
  .profile-caption{
    display:grid;
    grid-template-columns:1fr auto;
    grid-template-rows:repeat(2, auto);
    grid-template-areas:"after pos" "after name";
    margin-right:3em;
    margin-top:-15px;
    gap:3px;
  }
  .profile-caption::before{
    content:"";
    grid-area:after;
  }
}
@media (hover: hover) and (min-width: 768px){
  .nav-link:hover::after{
    opacity:1;
  }
}
@media (min-width: 992px){
  .mx-300{
    width:300px;
  }
  .mx-350{
    width:350px;
  }
  .mx-400{
    width:400px;
  }
  .mx-450{
    width:450px;
  }
  .mx-500{
    width:500px;
  }
  .note{
    text-align:right;
  }
}
@media (hover: hover){
  .btn-more:hover{
    color:#5C5454;
  }
  .btn-more:hover::before{
    left:0;
  }
  .btn-more:hover > span{
    padding-left:10px;
  }
  .btn-more:hover > span::before{
    -webkit-transform:rotate(0deg);
    transform:rotate(0deg);
  }
  .btn-more:hover > span::after{
    left:10px;
    width:calc(100% - 10px);
  }
  .nav-mail:hover{
    background-color:#000;
  }
  .nav-link:hover{
    color:#7B7B7B;
  }
  .footer-mail:hover{
    text-decoration:underline;
    opacity:0.6;
  }
  .breadcrumb-item a:hover{
    text-decoration:none;
  }
  a:not(.btn, .link-text, :where(.contents) p a):hover{
    color:var(--dp-color-hover);
    text-underline-offset:3px;
    text-decoration-color:var(--dp-color-hover);
  }
  a.sns-link:hover{
    opacity:0.6;
  }
  .active-underline:hover, :where(.contents) h2 a:hover,
  :where(.contents) h3 a:hover,
  :where(.contents) h4 a:hover,
  :where(.contents) h5 a:hover,
  :where(.contents) h6 a:hover,
  :where(.contents) p a:hover,
  :where(.contents) li a:hover,
  :where(.contents) cite a:hover{
    text-underline-offset:1px;
    text-decoration-color:rgba(255, 255, 255, 0);
  }
  .entry a:hover{
    text-decoration:none;
  }
  blockquote:not(.twitter-tweet) cite a:hover{
    text-underline-offset:1px;
    text-decoration-color:rgba(255, 255, 255, 0) !important;
  }
  .news-parmalink:hover{
    color:#707070;
    opacity:0.6;
    text-decoration:underline;
    text-underline-offset:4px;
  }
}
@media (prefers-reduced-motion: no-preference){
  :root{
    scroll-behavior:smooth;
  }
}
/*# sourceMappingURL=style.css.map */
