*{font-family:inherit
}
:root{--color-theme-primary: #004275;
  --color-theme-secondary: #EFBE00;
--color-theme-tertiary: #BD1A21;
--color-theme-grey: #e6e6e6;
--color-theme-grey2: #808080;
--color-theme-grey3: #BEBEBE;
--color-theme-grey4: #EAEAEA;
--color-theme-grey5: #9B9B9B;
--color-theme-dark: #1A1A1C;
--color-theme-dark2: #3D3D3D;
--background-color-base: #f9f9f9;
--color-link: --color-theme-link;
--color-body: --color-theme-dark;
--font-family-base: "Noto Sans JP", Meiryo, sans-serif;
--font-family-en: "Kumbh Sans", sans-serif;
--transition-delay-main: 0.2s;
--transition-duration-common: 0.2s;
--transition-timing-function-common: ease-in;
--z-index-main: 0;
--z-index-modal: 20000;
--z-index-modal-overlay: calc(var(--z-index-modal) - 10);
--z-index-menuButton: 12000;
--z-index-menu: 11900;
--z-index-stalker: 11100;
--z-index-nav: 11000;
--z-index-header: 1000;
--z-index-loader: calc(var(--z-index-header) - 10);
--z-index-nav-overlay: calc(var(--z-index-loader) - 10);
--z-index-floating: calc(var(--z-index-nav-overlay) - 10);
--z-index-kv: 100;
--pointer-x: 0;
--pointer-y: 0;
--section-margin-top-common: 6rem;
--section-margin-bottom-common: 6rem;
--section-margin-top-short: 4.8rem;
--section-margin-bottom-short: 4.8rem;
--section-padding-top-common: 6rem;
--section-padding-bottom-common: 6rem;
--gutter: 16%
}
@media(min-width: 850px){:root{--section-margin-top-common: 12rem;
  --section-margin-bottom-common: 12rem;
--section-margin-top-short: 7.2rem;
--section-margin-bottom-short: 7.2rem;
--section-padding-top-common: 12rem;
--section-padding-bottom-common: 12rem
}

}
@media(min-width: 850px){:root{--gutter: 60px
}

}
@media(min-width: 850px){:root{--container-max-width: 117.6rem;
  --container-max-width-short: 108rem;
--container-max-width-large: 86%
}

}
html{font-size:2.6666666667vw
}
@media(min-width: 850px){html{font-size:min(.78125vw,10px)
}

}
@media(min-width: 1600px){html{font-size:10.9375px
}

}
html.is-type01{--border-color-header: #E1E1E1
}
html.is-type02{--border-color-header: #FFF
}
body{width:100%;
  font-family:var(--font-family-base);
font-weight:400;
font-size:1.4rem;
line-height:1.8;
background-color:#f9f9f9;
color:var(--color-body);
letter-spacing:.05em
}
body *{box-sizing:border-box
}
body.is-loading{overflow:hidden
}
body.is-loaded{overflow:revert
}
body.is-menuOpen,body.is-modal-open{overflow:hidden;
  position:fixed}

  @media(min-width: 850px){body{font-size:1.6rem
  }
}

a{box-sizing:border-box;
  word-break:break-all;
color:var(--color-link);
text-decoration:underline;
transition:opacity .1s ease-in-out 0s
}
a:where(:link){text-decoration:none
}
a:where(:visited){text-decoration:none
}
a:where(:hover){text-decoration:none
}
li img,li a,li a img{vertical-align:bottom
}
[role=button]{cursor:pointer
}
picture{width:100%;
  height:100%}

  .u-d-b{display:block !important}

  .u-d-n{display:none !important}

  @media(min-width: 375px){.u-d-ss-b{display:block !important}

  .u-d-ss-n{display:none !important
  }
}

@media(min-width: 576px){.u-d-sm-b{display:block !important}

  .u-d-sm-n{display:none !important
  }
}

@media(min-width: 768px){.u-d-md-b{display:block !important}

  .u-d-md-n{display:none !important
  }
}

@media(min-width: 992px){.u-d-lg-b{display:block !important}

  .u-d-lg-n{display:none !important
  }
}

@media(min-width: 1025px){.u-d-ll-b{display:block !important}

  .u-d-ll-n{display:none !important
  }
}

@media(min-width: 1280px){.u-d-xl-b{display:block !important}

  .u-d-xl-n{display:none !important
  }
}

@media(min-width: 1400px){.u-d-xxl-b{display:block !important}

  .u-d-xxl-n{display:none !important
  }
}

@media(min-width: 1600px){.u-d-xxl2-b{display:block !important}

  .u-d-xxl2-n{display:none !important
  }
}

.l-wrapper{
  position:relative;
  padding-bottom: 25px;
}

  .l-wrapper__bg{position:absolute;
  top:0;
left:0;
z-index:-1;
width:100%;
height:100%;
pointer-events:none;
/*
background-image:url(../common_img/bg-noise.webp);
background-repeat:repeat;
*/
mix-blend-mode:overlay

}

.l-wrapper__bg.-base{z-index:-2;
  mix-blend-mode:normal;
background-image:none;
background-color:var(--background-color-base)
}
.l-wrapper__overlay{display:block;
  position:fixed;
inset:0 0 auto;
height:100vh;
z-index:var(--z-index-nav-overlay);
visibility:hidden;
opacity:0;
-webkit-backdrop-filter:blur(10px);
backdrop-filter:blur(10px);
pointer-events:none;
background-color:rgba(0,0,0,.1);
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common)
}
body.is-visible-overlay .l-wrapper__overlay{opacity:1;
  visibility:visible;
pointer-events:inherit;
cursor:pointer
}
body.is-modal-active .l-wrapper__overlay{z-index:var(--z-index-modal-overlay)
}
.l-main{position:relative;
  z-index:var(--z-index-main);
transition-property:opacity;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common);
transition-delay:var(--transition-delay-main)
}
body.is-loading .l-main{opacity:0
}
body.is-loaded .l-main{opacity:1
}
.l-container{margin-right:auto;
  margin-left:auto;
width:100%;
padding-right:calc(var(--gutter)/2);
padding-left:calc(var(--gutter)/2);
position:relative
}
@media(min-width: 850px){.l-container{max-width:calc(var(--container-max-width) + var(--gutter))
}

}
.l-container-fluid{max-width:100%;
  padding-right:0;
padding-left:0;
position:relative
}
.l-container-large{max-width:calc(var(--container-max-width-large) + var(--gutter))
}
.l-header{position:fixed;
  top:0;
left:0;
z-index:var(--z-index-header);
padding-left:1.6rem;
width:100%;
height:6rem;
transition-property:background-color;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common);
border-bottom-width:1px;
border-bottom-style:solid;
border-bottom-color:var(--border-color-header);
display:grid;
grid-gap:0px 0px;
gap:0px 0px;
grid-template-columns:auto 6rem 6rem 6rem;
grid-auto-flow:row;
grid-template-areas:"area-header__content area-header__tel area-header__contact area-header__menu"
}
@media(min-width: 850px){.l-header{height:auto;
  padding-left:4rem;
grid-template-columns:auto 20rem 10rem;
grid-template-rows:1fr 1fr;
grid-template-areas:"area-header__content area-header__tel area-header__menu" "area-header__content area-header__contact area-header__menu"
}

}
.l-header .p-tel{-ms-grid-row:1;
  -ms-grid-column:3;
align-items:center;
justify-content:center;
border-right-width:1px;
border-right-style:solid;
border-right-color:var(--border-color-header);
grid-area:area-header__tel
}
@media(min-width: 850px){.l-header .p-tel{padding-left:2rem;
  justify-content:revert;
pointer-events:none
}

}
@media(min-width: 850px){.l-header .p-tel .c-icon{margin-right:.8rem
}

}
.l-header .p-tel .c-icon svg{width:2.4rem;
  height:2.4rem}

  .l-header .p-tel__text{display:none}

  @media(min-width: 850px){.l-header .p-tel__text{display:inline-flex
  }
}

.l-header .p-tel__number{font-size:1.8rem}

  .l-header .p-tel__small{font-size:1rem;
  margin-top:.5rem}

  .l-header .p-contact{-ms-grid-row:1;
  -ms-grid-column:5;
grid-area:area-header__contact;
display:flex;
align-items:center;
justify-content:center;
border-top-width:1px;
border-right-width:1px;
border-right-style:solid;
border-right-color:var(--border-color-header)
}
@media(min-width: 850px){.l-header .p-contact{border-top-style:solid;
  border-top-color:var(--border-color-header);
padding-top:.8rem;
padding-bottom:1rem;
padding-left:2rem;
justify-content:revert
}

}
@media(min-width: 850px){.l-header .p-contact .c-icon{margin-right:.8rem
}

}
.l-header .p-contact .c-icon svg{width:2.4rem;
  height:2.4rem}

  @media(hover: hover){.l-header .p-contact:hover{color:var(--color-theme-tertiary)}

  .l-header .p-contact:hover .c-link-line-hover{background-position:0 100%;
  background-size:100% 1px
}
}

.l-header .p-contact__text{display:none}

  @media(min-width: 850px){.l-header .p-contact__text{font-size:1.2rem;
  font-weight:700;
line-height:1.3;
display:block
}

}
html.is-type01 .l-header{background-color:var(--background-color-base)
}
html.is-type01 .l-header::before{content:"";
display:block;
width:100%;
height:100%;
background-image:url(../common_img/bg-noise.webp);
background-repeat:repeat;
position:absolute;
top:0;
left:0;
z-index:-1;
mix-blend-mode:overlay
}
.l-header__content{-ms-grid-row:1;
  -ms-grid-column:1;
display:flex;
justify-content:space-between;
grid-area:area-header__content;
padding-right:2.8rem;
border-right-width:1px;
border-right-style:solid;
border-right-color:var(--border-color-header)
}
.l-header__content .c-logo{display:flex;
  align-items:center}

  .l-header__content .c-logo img{width:10.8rem}

  @media(min-width: 850px){.l-header__content .c-logo img{width:14.8rem
  }
}

.l-header__humberger{-ms-grid-row:1;
  -ms-grid-column:7;
grid-area:area-header__menu
}
@media (min-width: 850px){.l-header .p-tel{-ms-grid-row:1;
  -ms-grid-column:3}

  .l-header .p-contact{-ms-grid-row:3;
  -ms-grid-column:3}

  .l-header__content{-ms-grid-row:1;
  -ms-grid-row-span:3;
-ms-grid-column:1
}
.l-header__humberger{-ms-grid-row:1;
  -ms-grid-row-span:3;
-ms-grid-column:5
}

}
.l-footer{--background-color-footer: #313131;
  --border-color-footer: #3D3D3D;
color:var(--color-theme-grey5);
background-color:var(--background-color-footer);
margin-top:8rem;
padding-top:5.2rem;
padding-bottom:4rem;
max-width:100%;
padding-right:0;
padding-left:0;
position:relative
}
body.is-loading .l-footer{opacity:0
}
body.is-loaded .l-footer{opacity:1
}
@media(min-width: 850px){.l-footer{margin-top:13.6rem;
  padding-top:10rem
}
}

.l-nav{height:100%;
  padding-top:.6rem}

  @media(max-width: 849px){.l-nav{display:none
  }
}

.l-nav__list{display:flex;
  grid-column-gap:2.8rem;
height:100%
}
.l-nav__link{cursor:pointer;
  font-size:1.3rem;
display:inline-flex;
align-items:center;
height:100%
}
.l-nav__link .c-icon{display:inline-block;
  color:currentColor;
width:0px;
height:0px;
border-style:solid;
border-width:.6rem .4rem 0 .4rem;
border-color:currentColor rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);
transform:rotate(0deg);
margin-left:.8rem;
transition-property:all;
transition-timing-function:var(--transition-timing-function-common);
transition-duration:var(--transition-duration-common)
}
@media(hover: hover){.l-nav__link:hover .l-nav__text,.l-nav__link.is-active .l-nav__text{background-position:0 100%;
  background-size:100% 1px}

  .l-nav__link:hover .c-icon,.l-nav__link.is-active .c-icon{rotate:180deg
  }
}

.l-nav__text{background-image:linear-gradient(90deg, currentColor, currentColor);
  background-repeat:no-repeat;
transition-property:background-size;
transition-timing-function:var(--transition-timing-function-common);
transition-duration:var(--transition-duration-common);
background-position:100% 100%;
background-size:0 1px
}
.l-nav-menu{--font-size-nav-menu-title: 1.6rem;
  --l-nav-menu__body-margin-top: 2.4rem;
margin-top:4rem
}
@media(min-width: 850px){.l-nav-menu{--font-size-nav-menu-title: 1.4rem
}

}
@media(min-width: 850px){.l-nav-menu{--l-nav-menu__body-margin-top: 0
}

}
@media(min-width: 850px){.l-nav-menu{margin-top:5.4rem;
  display:flex;
justify-content:space-between
}

}
.l-nav-menu__column{display:flex;
  flex-direction:column}

  @media(min-width: 850px){.l-nav-menu__column{grid-row-gap:5.2rem
  }
}

.l-nav-menu__group{border-top-width:1px;
  border-top-color:var(--color-theme-grey4);
border-top-style:solid;
padding-top:2.4rem;
padding-bottom:2.4rem;
position:relative
}
@media(min-width: 850px){.l-nav-menu__group{border:none;
  padding-top:0;
padding-bottom:0
}

}
.l-footer .l-nav-menu__group{border-top-color:var(--border-color-footer)
}
.l-footer .l-nav-menu__group .l-nav-menu__title .c-icon svg{stroke:var(--color-theme-dark)
}
.l-nav-menu__title{font-weight:700;
  font-size:1.3rem;
font-size:var(--font-size-nav-menu-title);
display:inline-flex;
align-items:center;
pointer-events:none
}
@media(min-width: 850px){.l-nav-menu__title{pointer-events:revert;
  font-size:1.4rem
}
}

.l-nav-menu__title.p-button-text{line-height:inherit;
  font-size:var(--font-size-nav-menu-title)}

  .l-nav-menu__title.p-button-text .c-icon{display:none}

  @media(min-width: 850px){.l-nav-menu__title.p-button-text .c-icon{width:1.6rem;
  height:1.6rem;
background-color:currentColor;
border-radius:50%;
color:currentColor;
margin-left:.8rem;
display:inline-flex;
align-items:center;
justify-content:center
}

}
.l-nav-menu__title.p-button-text .c-icon svg{width:1rem;
  height:1rem;
stroke:#fff
}
.l-nav-menu__category{font-weight:700;
  font-size:1.2rem;
margin-top:3rem
}
.l-nav-menu__category::before{content:"";
display:inline-block;
width:.6rem;
height:.6rem;
border-radius:50%;
background-color:currentColor;
margin-right:.4rem;
vertical-align:.1rem
}
.l-nav-menu__category:first-of-type{margin-top:var(--l-nav-menu__body-margin-top)
}
.l-nav-menu__body{height:0;
  overflow:hidden}

  @media(min-width: 850px){.l-nav-menu__body{height:auto;
  overflow:visible;
margin-top:2rem
}

}
.l-nav-menu__list{display:grid;
  grid-template-columns:1fr 1fr;
grid-column-gap:20px
}
@media(min-width: 850px){.l-nav-menu__list{grid-template-columns:1fr;
  grid-row-gap:.4rem
}
}

.l-nav-menu__list.-child{margin-left:1.6rem}

  .l-nav-menu__category+.l-nav-menu__list{margin-top:.3rem}

  .l-nav-menu__icon{position:absolute;
  top:2.8rem;
right:0;
width:2rem;
height:2rem
}
@media(min-width: 850px){.l-nav-menu__icon{display:none
}

}
.l-nav-menu__icon .c-icon{display:flex;
  align-items:center;
justify-content:center;
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
border-radius:50%;
background-color:currentColor
}
.l-nav-menu__icon .c-icon.-open{display:flex
}
.l-nav-menu__icon .c-icon.-close{display:none
}
.l-nav-menu__icon svg{width:1.4rem;
  height:1.4rem;
stroke:#fff
}
.l-footer .l-nav-menu__icon svg{stroke:var(--color-theme-dark)
}
.l-nav-menu__group.is-active .l-nav-menu__icon .c-icon.-open{display:none
}
.l-nav-menu__group.is-active .l-nav-menu__icon .c-icon.-close{display:flex
}
.l-nav-menu__item{font-size:1.2rem;
  margin-top:1.6rem}

  @media(min-width: 850px){.l-nav-menu__item{margin-top:0
  }
}

.l-nav-menu__item:nth-child(1),.l-nav-menu__item:nth-child(2){margin-top:var(--l-nav-menu__body-margin-top)}

  .l-nav-menu__list .l-nav-menu__item:nth-child(1),.l-nav-menu__list .l-nav-menu__item:nth-child(2){margin-top:1.2rem}

  @media(min-width: 850px){.l-nav-menu__list .l-nav-menu__item:nth-child(1),.l-nav-menu__list .l-nav-menu__item:nth-child(2){margin-top:var(--l-nav-menu__body-margin-top)
  }
}

.l-nav-child{position:absolute;
  top:100%;
left:0;
width:100%;
border-top-width:1px;
border-top-style:solid;
border-top-color:var(--border-color-header);
border-bottom-width:1px;
border-bottom-style:solid;
border-bottom-color:var(--border-color-header);
opacity:0;
visibility:hidden;
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common);
max-height:calc(100vh - 10rem);
overflow-y:auto
}
body.is-dropDownNav-visible .l-nav-child.is-active{opacity:1;
  visibility:visible}

  .l-nav-child__inner{position:relative;
  padding-top:4.6rem;
padding-bottom:6rem
}
html.is-type01 .l-nav-child__inner::before,html.is-type01 .l-nav-child__inner::after{pointer-events:none
}
html.is-type01 .l-nav-child__inner::before{content:"";
display:block;
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
z-index:-2;
background-color:var(--background-color-base)
}
html.is-type01 .l-nav-child__inner::after{content:"";
display:block;
width:100%;
height:100%;
background-image:url(../common_img/bg-noise.webp);
background-repeat:repeat;
position:absolute;
top:0;
left:0;
z-index:-1;
mix-blend-mode:overlay
}
.l-nav-child__close{margin-top:-4.6rem;
  cursor:pointer;
border-left-width:1px;
border-bottom-width:1px;
border-left-style:solid;
border-bottom-style:solid;
border-left-color:var(--border-color-header);
border-bottom-color:var(--border-color-header);
border-right:none;
border-top:none;
width:calc(10rem + 1px);
height:10rem;
display:flex;
align-items:center;
justify-content:center
}
.l-nav-child__close .c-icon{background-color:var(--color-theme-dark);
  color:#fff;
width:1.6rem;
height:1.6rem;
border-radius:50%;
display:inline-flex;
margin-right:.8rem;
align-items:center;
justify-content:center
}
.l-nav-child__close .c-icon svg{width:1.2rem;
  height:1.2rem}

  .l-nav-child__close .c-link{font-size:1.4rem}

  @media(hover: hover){.l-nav-child__close:hover .c-link-line-hover{background-position:0 100%;
  background-size:100% 1px
}
}

.l-nav-child__content{width:100%;
  display:grid;
grid-template-columns:28.4rem 1fr 10.1rem;
padding-left:6.9546%
}
.l-nav-child__head{padding-right:6rem;
  border-right-width:2px;
border-right-style:dotted;
border-right-color:var(--border-color-header)
}
.l-nav-child__title{font-size:2rem;
  font-weight:700}

  .l-nav-child__lead{font-size:1.2rem;
  margin-top:1.6rem}

  .l-nav-child__body{padding-right:10.4rem;
  padding-left:4.8rem}

  .l-nav-child__links{display:grid;
  grid-template-columns:1fr 1fr 1fr;
grid-column-gap:12.6%;
grid-row-gap:2.8rem;
line-height:1.2;
margin-bottom:8rem
}
.l-nav-child__links:last-child{margin-bottom:0
}
.l-nav-child__links .c-link-line-hover{font-size:1.4rem
}
.l-nav-child__item{position:relative;
  padding-left:1rem;
line-height:1.5
}
.l-nav-child__item::before{content:"";
display:inline-block;
width:4px;
height:4px;
border-radius:50%;
background-color:currentColor;
position:absolute;
top:1.25rem;
left:0
}
.l-menu{width:100%;
  height:100%;
overscroll-behavior:none
}
.l-header .l-menu{position:fixed;
  top:0;
left:0;
z-index:var(--z-index-menu);
background-color:#fff;
padding-top:8rem;
padding-bottom:2rem;
overflow-y:scroll;
opacity:0;
visibility:hidden
}
@media(min-width: 850px){.l-header .l-menu{padding-top:12rem;
  padding-bottom:4rem
}
}

body.is-menuOpen .l-header .l-menu{opacity:1;
  visibility:visible}

  body.is-menuClosing .l-header .l-menu{pointer-events:none}

  .l-menu__content{margin-right:auto;
  margin-left:auto;
width:100%;
padding-right:calc(var(--gutter)/2);
padding-left:calc(var(--gutter)/2);
position:relative
}
@media(min-width: 850px){.l-menu__content{max-width:calc(var(--container-max-width) + var(--gutter))
}

}
.l-menu__head{display:flex;
  align-items:center;
justify-content:space-between;
grid-column-gap:2rem
}
@media(min-width: 850px){.l-menu__head .c-logo{display:block;
  width:23.5rem
}
}

.l-menu__head .p-button{padding-top:.8rem;
  padding-right:1.6rem;
padding-bottom:.8rem;
padding-left:1.6rem;
min-width:auto
}
@media(min-width: 850px){.l-menu__head .p-button{padding-top:1.7rem;
  padding-right:3.5rem;
padding-bottom:1.8rem;
padding-left:3rem
}

}
.l-menu__head .p-button .c-icon{margin-right:.4rem
}
@media(min-width: 850px){.l-menu__head .p-button .c-icon{margin-right:.8rem
}

}
.l-menu__head .p-button__text{font-size:1.1rem;
  padding-right:0}

  @media(min-width: 850px){.l-menu__head .p-button__text{font-size:1.4rem
  }
}

.l-footer .l-menu__head .p-button{background-color:var(--color-theme-tertiary);
  border-color:var(--color-theme-tertiary);
color:#fff
}
@media(hover: hover){.l-footer .l-menu__head .p-button:hover{background-color:#fff;
  color:var(--color-theme-tertiary)}

  .l-footer .l-menu__head .p-button:hover .c-icon{color:var(--color-theme-tertiary)
  }
}

.l-menu__foot{border-top-width:1px;
  border-top-color:var(--color-theme-grey4);
border-top-style:solid;
margin-top:4.5rem;
padding-top:2.8rem;
font-size:1.2rem;
position:relative
}
@media(min-width: 850px){.l-menu__foot{padding-top:4.8rem
}

}
.l-menu__foot .c-logo{width:28.8rem
}
.l-footer .l-menu__foot{border-top-color:var(--border-color-footer)
}
.l-menu__info{margin-top:2rem
}
@media(min-width: 850px){.l-menu__info{margin-top:3.8rem
}

}
.l-menu__address{margin-top:1.2rem
}
@media(min-width: 850px){.l-menu__address{margin-top:2.1rem
}

}
.l-menu__address .p-button-text{font-size:1.2rem
}
.l-menu__address .p-button-text .c-icon{margin-left:.4rem
}
.l-menu__address .p-button-text .c-icon svg{width:1.6rem;
  height:1.6rem}

  .l-menu__links{display:flex;
  flex-wrap:wrap;
grid-column-gap:2.8rem;
grid-row-gap:.6rem;
margin-top:5rem;
margin-top:3.2rem;
padding-bottom:4rem
}
@media(min-width: 850px){.l-menu__links{padding-bottom:0
}

}
.l-menu__links .p-button-text{font-size:1.1rem
}
@media(min-width: 850px){.l-menu__links .p-button-text{font-size:1.2rem
}

}
.l-menu__copy{position:absolute;
  bottom:0;
right:0
}
.l-section{position:relative;
  z-index:10}

  .l-section.-section-marginBlockStart-common{margin-top:var(--section-margin-top-common)}

  .l-section.-section-marginBlockStart-short{margin-top:var(--section-margin-top-short)}

  .l-section.-section-marginBlockEnd-short{margin-bottom:var(--section-margin-bottom-short)}

  .l-section.-section-paddingStart-common{padding-top:var(--section-padding-top-common)}

  .l-section.-section-paddingEnd-common{padding-bottom:var(--section-padding-bottom-common)}

  .l-section.-bg-grey{background-color:var(--background-color-base)}

  .l-section.-bg-grey::before,.l-section.-bg-grey::after{content:"";
display:block;
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
pointer-events:none
}
.l-section.-bg-grey::before{mix-blend-mode:overlay;
  background-image:url(../common_img/bg-noise.webp);
background-repeat:repeat;
z-index:0
}
.l-section.-bg-grey::after{z-index:1;
  background-color:var(--background-color-base);
mix-blend-mode:multiply
}
.l-loader{position:fixed;
  top:0;
left:0;
width:100%;
height:100vh;
z-index:var(--z-index-loader);
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common);
display:flex;
align-items:center;
justify-content:center
}
body.is-loaded .l-loader{pointer-events:none;
  opacity:0;
visibility:hidden
}
.l-loader__text{width:-moz-fit-content;
  width:fit-content;
font-weight:500;
font-family:var(--font-family-en);
-webkit-clip-path:inset(0 1em 0 0);
clip-path:inset(0 1em 0 0);
animation:animation-loading 1s steps(4) infinite;
font-size:1.1rem
}
.l-loader__text::before{content:"Loading..."
}
.l-humberger{border:none;
  padding:0;
cursor:pointer;
position:relative;
z-index:var(--z-index-menuButton)
}
.l-humberger::before,.l-humberger::after{content:"";
display:block;
position:absolute;
top:50%;
left:calc(50% - .9rem);
width:1.8rem;
height:2px;
background-color:var(--color-theme-dark);
transition-property:scale;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common);
scale:0
}
.l-humberger::before{rotate:45deg
}
.l-humberger::after{rotate:-45deg
}
@media(hover: hover){.l-humberger:hover .l-humberger__dot.-left{margin-left:0
}
.l-humberger:hover .l-humberger__dot.-right{margin-left:0
}

}
body.is-menuOpen .l-humberger .l-humberger__dot{opacity:0
}
body.is-menuOpen .l-humberger .l-humberger__child.-open{opacity:0;
  transform:translateY(50%)}

  body.is-menuOpen .l-humberger .l-humberger__child.-close{opacity:1;
  transform:translateY(0)}

  body.is-menuOpen .l-humberger::before,body.is-menuOpen .l-humberger::after{scale:1}

  .l-humberger__dot{width:.4rem;
  height:.4rem;
border-radius:50%;
background-color:var(--color-theme-dark);
position:absolute;
top:calc(47% - .2rem);
left:calc(50% - .2rem);
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common)
}
@media(min-width: 850px){.l-humberger__dot{top:calc(50% - .2rem)
}

}
.l-humberger__dot.-left{margin-left:-0.8rem
}
.l-humberger__dot.-right{margin-left:.8rem
}
.l-humberger__text{font-family:var(--font-family-en);
  font-size:1rem;
margin-top:2rem;
display:inline-block;
position:relative;
width:100%
}
@media(min-width: 850px){.l-humberger__text{font-size:1.2rem;
  margin-top:3rem
}
}

.l-humberger__child{font-weight:700;
  transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common);
position:absolute;
top:0;
left:0;
width:100%
}
.l-humberger__child.-close{opacity:0;
  transform:translateY(-50%)}

  .l-title{padding-top:11.6rem;
  padding-bottom:2.8rem;
border-bottom-width:1px;
border-bottom-style:solid;
border-bottom-color:var(--border-color-header);
position:relative
}
@media(min-width: 850px){.l-title{padding-top:13.6rem;
  padding-bottom:4.8rem
}
}

.c-title-page{margin-right:auto;
  margin-left:auto;
width:100%;
padding-right:calc(var(--gutter)/2);
padding-left:calc(var(--gutter)/2);
position:relative;
display:flex;
flex-direction:column
}
@media(min-width: 850px){.c-title-page{max-width:calc(var(--container-max-width) + var(--gutter))
}

}
.c-title-page__large{font-size:2.8rem;
  line-height:1.7}

  @media(min-width: 850px){.c-title-page__large{font-size:4rem
  }
}

.c-title-page__small{font-size:.9rem;
  font-family:var(--font-family-en);
font-weight:400
}
@media(min-width: 850px){.c-title-page__small{font-size:1.4rem
}

}
.c-title-section{display:flex;
  flex-direction:column;
align-items:flex-start
}
.c-title-section__large{font-size:2.8rem;
  line-height:1.3;
letter-spacing:0
}
@media(min-width: 850px){.c-title-section__large{font-size:3.2rem
}

}
.c-title-section__small{font-size:1.1rem;
  font-weight:400;
font-family:var(--font-family-en);
margin-top:1rem
}
@media(min-width: 850px){.c-title-section__small{font-size:1.2rem
}

}
.c-title-dot{font-size:1.5rem;
  font-weight:700;
display:flex;
align-items:center;
margin-bottom:2.8rem
}
@media(min-width: 850px){.c-title-dot{font-size:1.6rem
}

}
.c-title-dot::before{content:"";
display:block;
width:.8rem;
height:.8rem;
border-radius:50%;
background-color:var(--color-theme-grey2);
flex-shrink:0
}
.c-title-dot::after{content:"";
display:block;
width:100%;
height:2px;
background-size:8px 2px;
background-image:linear-gradient(to right, #000000 2px, transparent 2px);
background-repeat:repeat-x;
background-position:left bottom
}
.c-title-dot__text{flex-shrink:0;
  padding-left:1rem;
padding-right:2rem;
max-width:24rem;
line-height:1.5
}
@media(min-width: 850px){.c-title-dot__text{max-width:none
}

}
.marker{background:linear-gradient(transparent 67.5%, #fbd317 67.5%);
  font-weight:700}

  .c-link-line{background:linear-gradient(to right, currentColor, currentColor) no-repeat right 0px bottom;
  background-size:calc(100% - 0px) 1px}

  @media(hover: hover){.c-link-line:hover{animation-name:animation-link-line;
  animation-duration:var(--transition-duration-common);
animation-timing-function:var(--transition-timing-function-common);
animation-delay:0s;
animation-fill-mode:none
}

}
.c-link-line-hover{background-image:linear-gradient(90deg, currentColor, currentColor);
  background-repeat:no-repeat;
transition-property:background-size;
transition-timing-function:var(--transition-timing-function-common);
transition-duration:var(--transition-duration-common);
background-position:100% 100%;
background-size:0 1px
}
@media(hover){.c-link-line-hover:hover{background-position:0 100%;
  background-size:100% 1px
}
}

.c-control{border-radius:4px;
  border-color:var(--color-theme-dark);
border-width:2px;
border-style:solid;
background-color:#fff;
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common)
}
@media(hover: hover){.c-control:hover{background-color:var(--color-theme-dark);
  color:#fff
}
}

.p-banner{display:grid;
  grid-row-gap:2rem}

  @media(min-width: 850px){.p-banner{grid-template-columns:1fr 30.1rem;
  grid-column-gap:2.8rem
}
}

.p-banner .p-button__text{padding-right:0}

  .p-banner__contents{display:inline-block;
  position:relative;
box-shadow:0px 20px 48px rgba(0,0,0,.16);
width:100%
}
@media(min-width: 850px){.p-banner__contents{width:auto
}

}
.p-banner__contents.-contact{height:100%;
  border-width:6px;
border-style:solid;
border-color:#01214a;
background-color:#fff;
text-align:center;
padding-top:1.2rem;
padding-right:1.2rem;
padding-bottom:2rem;
padding-left:1.2rem
}
@media(min-width: 850px){.p-banner__contents.-contact{padding:0
}

}
.p-banner__contents.-subsidy .__bg{width:100%;
  height:100%;
-o-object-fit:cover;
object-fit:cover
}
.p-banner__contents.-subsidy .p-button{position:absolute;
  left:calc((100% - 18.2rem)/2);
bottom:2.6rem;
width:18.2rem
}
.p-banner__contents.-subsidy .p-button__text{padding-right:0
}
@media(hover: hover){.p-banner__contents.-subsidy:hover .p-button{color:#fff;
  background-color:var(--color-theme-dark);
border-color:var(--color-theme-dark)
}
.p-banner__contents.-subsidy:hover .p-button .p-button__icon{background-color:#fff;
  color:var(--color-theme-dark)}

  .p-banner__contents.-subsidy:hover .p-button .p-button__icon svg{animation-name:animation-link-arrow;
  animation-duration:var(--transition-duration-common);
animation-timing-function:var(--transition-timing-function-common);
animation-delay:.12s;
animation-fill-mode:none
}

}
.p-banner__ribbon{position:absolute;
  top:-6px;
left:-6px;
width:12.2rem
}
@media(min-width: 850px){.p-banner__ribbon{width:18.2rem
}

}
.p-banner__contents.-contact .p-banner__head{margin-top:3rem;
  font-weight:700;
font-size:1.8rem;
text-align:center;
line-height:1.3
}
@media(min-width: 850px){.p-banner__contents.-contact .p-banner__head{margin-top:2.4rem;
  font-size:2.4rem
}
}

.p-banner__contents.-subsidy .p-banner__head{color:#fff;
  font-weight:700;
font-size:2rem;
letter-spacing:0;
line-height:1.5;
text-align:center;
position:absolute;
top:5.5rem;
margin:auto;
width:100%
}
.p-banner__strong{color:var(--color-theme-tertiary)
}
.p-banner__strong img{width:3.6rem;
  margin-left:-0.8rem;
margin-top:-0.4rem
}
.p-banner__foot{display:flex;
  justify-content:center;
align-items:center;
flex-direction:column;
grid-column-gap:4.8rem;
margin-top:2rem
}
@media(min-width: 850px){.p-banner__foot{flex-direction:row;
  margin-top:3rem
}
}

.p-banner__foot .p-tel{align-items:flex-start}

  .p-banner__foot .p-tel .c-icon{margin-top:.4rem;
  margin-right:.8rem}

  .p-banner__foot .p-tel .c-icon svg{width:2.4rem;
  height:2.4rem}

  @media(min-width: 850px){.p-banner__foot .p-tel .c-icon svg{width:3.2rem;
  height:3.2rem
}
}

@media(hover: hover){.p-banner__foot .p-tel{pointer-events:none
  }
}

.p-banner__foot .p-tel__text{align-items:flex-start}

  .p-banner__foot .p-tel__number{font-size:3.2rem}

  @media(min-width: 850px){.p-banner__foot .p-tel__number{font-size:4rem
  }
}

.p-banner__foot .p-tel__small{font-size:1.2rem;
  font-weight:500;
margin-top:.6rem
}
@media(min-width: 850px){.p-banner__foot .p-tel__small{font-size:1.4rem;
  margin-top:.8rem
}
}

.p-banner__foot .p-button{margin-top:1.2rem;
  padding-top:1.2rem;
padding-right:2rem;
padding-bottom:1.3rem;
padding-left:2rem;
min-width:auto
}
@media(min-width: 850px){.p-banner__foot .p-button{margin-top:0;
  padding-top:1.4rem;
padding-right:3.9rem;
padding-bottom:1.7rem;
padding-left:3.9rem
}

}
.p-banner__foot .p-button .c-icon{margin-right:.8rem
}
.p-banner__foot .p-button .c-icon svg{width:3.2rem;
  height:3.2rem}

  .p-banner__foot .p-button__text{display:flex;
  flex-direction:column;
align-items:flex-start;
font-size:1.5rem;
line-height:1
}
@media(min-width: 850px){.p-banner__foot .p-button__text{font-size:1.8rem
}

}
.p-banner__foot .p-button__text small{font-size:1.1rem;
  font-weight:400;
margin-bottom:.6rem
}
@media(min-width: 850px){.p-banner__foot .p-button__text small{font-size:1.3rem;
  margin-bottom:.8rem
}
}

.p-button{--font-size-button: 1.3rem;
  --padding-top-button: 1.3rem;
--padding-right-button: 1.6rem;
--padding-bottom-button: 1.4rem;
--padding-left-button: 2rem;
min-width:27.8rem;
cursor:pointer;
font-size:var(--font-size-button);
font-weight:500;
text-align:left;
line-height:1.5;
border-style:solid;
border-width:2px;
border-radius:10rem;
padding-top:var(--padding-top-button);
padding-right:var(--padding-right-button);
padding-bottom:var(--padding-bottom-button);
padding-left:var(--padding-left-button);
position:relative;
display:inline-flex;
align-items:center;
justify-content:space-between;
overflow:hidden;
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common)
}
@media(min-width: 850px){.p-button{--font-size-button: 1.4rem;
  --padding-right-button: 2rem;
--padding-left-button: 3.2rem
}

}
@media(hover: hover){.p-button:hover .p-button__icon svg{animation-name:animation-link-arrow;
  animation-duration:var(--transition-duration-common);
animation-timing-function:var(--transition-timing-function-common);
animation-delay:.12s;
animation-fill-mode:none
}

}
.p-button-text{padding:0;
  border:none;
border-radius:0;
min-width:auto;
overflow:visible;
line-height:1.5;
font-weight:700
}
@media(min-width: 850px){.p-button-text .c-icon{margin-left:.8rem
}

}
.p-button-text .c-icon svg{width:2rem;
  height:2rem}

  @media(hover: hover){.p-button-text:hover .c-link-line{animation-name:animation-link-line;
  animation-duration:var(--transition-duration-common);
animation-timing-function:var(--transition-timing-function-common);
animation-delay:0s;
animation-fill-mode:none
}
.p-button-text:hover .c-link-line-hover{background-position:0 100%;
  background-size:100% 1px}

  .p-button-text:hover .c-icon svg{animation-name:animation-link-arrow;
  animation-duration:var(--transition-duration-common);
animation-timing-function:var(--transition-timing-function-common);
animation-delay:.12s;
animation-fill-mode:none
}

}
.p-button-small{min-width:auto;
  font-size:1.2rem;
font-weight:700;
line-height:1.3;
margin-top:4rem;
padding-top:.8rem;
padding-right:1.2rem;
padding-bottom:.9rem;
padding-left:2.4rem
}
.p-button-small .p-button__text{padding-right:3.6rem
}
.p-button-small .p-button__icon{width:2.4rem;
  height:2.4rem}

  .p-button-small .p-button__icon svg{width:1.2rem;
  height:1.2rem}

  .p-button-primary{color:#fff;
  background-color:#004275;
border-color:#004275
}
@media(hover: hover){.p-button-primary:hover{background-color:#fff;
  border-color:#004275;
color:#004275
}

}
.p-button-secondary{color:#fff;
  background-color:#EFBE00;
border-color:#EFBE00
}
@media(hover: hover){.p-button-secondary:hover{background-color:#fff;
  border-color:#EFBE00;
color:#EFBE00
}

}
.p-button-tertiary{color:#fff;
  background-color:#BD1A21;
border-color:#BD1A21
}
@media(hover: hover){.p-button-tertiary:hover{background-color:#fff;
  border-color:#BD1A21;
color:#BD1A21
}

}
.p-button-grey{color:#fff;
  background-color:#e6e6e6;
border-color:#e6e6e6
}
@media(hover: hover){.p-button-grey:hover{background-color:#fff;
  border-color:#e6e6e6;
color:#e6e6e6
}

}
.p-button-grey2{color:#fff;
  background-color:#808080;
border-color:#808080
}
@media(hover: hover){.p-button-grey2:hover{background-color:#fff;
  border-color:#808080;
color:#808080
}

}
.p-button-grey3{color:#fff;
  background-color:#BEBEBE;
border-color:#BEBEBE
}
@media(hover: hover){.p-button-grey3:hover{background-color:#fff;
  border-color:#BEBEBE;
color:#BEBEBE
}

}
.p-button-grey4{color:#fff;
  background-color:#EAEAEA;
border-color:#EAEAEA
}
@media(hover: hover){.p-button-grey4:hover{background-color:#fff;
  border-color:#EAEAEA;
color:#EAEAEA
}

}
.p-button-grey5{color:#fff;
  background-color:#9B9B9B;
border-color:#9B9B9B
}
@media(hover: hover){.p-button-grey5:hover{background-color:#fff;
  border-color:#9B9B9B;
color:#9B9B9B
}

}
.p-button-dark{color:#fff;
  background-color:#1A1A1C;
border-color:#1A1A1C
}
@media(hover: hover){.p-button-dark:hover{background-color:#fff;
  border-color:#1A1A1C;
color:#1A1A1C
}

}
.p-button-dark2{color:#fff;
  background-color:#3D3D3D;
border-color:#3D3D3D
}
@media(hover: hover){.p-button-dark2:hover{background-color:#fff;
  border-color:#3D3D3D;
color:#3D3D3D
}

}
.p-button-white{color:var(--color-theme-dark);
  background-color:#fff}

  @media(hover: hover){.p-button-white:hover{color:#fff;
  background-color:var(--color-theme-dark);
border-color:var(--color-theme-dark)
}
.p-button-white:hover .p-button__icon{background-color:#fff;
  color:var(--color-theme-dark)
}
}

.p-button-outline{background-color:rgba(0,0,0,0)}

  .p-button-outline.p-button-primary{color:#004275}

  .p-button-outline.p-button-secondary{color:#EFBE00}

  .p-button-outline.p-button-tertiary{color:#BD1A21}

  .p-button-outline.p-button-grey{color:#e6e6e6}

  .p-button-outline.p-button-grey2{color:#808080}

  .p-button-outline.p-button-grey3{color:#BEBEBE}

  .p-button-outline.p-button-grey4{color:#EAEAEA}

  .p-button-outline.p-button-grey5{color:#9B9B9B}

  .p-button-outline.p-button-dark{color:#1A1A1C}

  .p-button-outline.p-button-dark2{color:#3D3D3D}

  @media(hover: hover){.p-button-outline:hover{color:#fff}

  .p-button-outline:hover.p-button-primary{background-color:#004275}

  .p-button-outline:hover.p-button-secondary{background-color:#EFBE00}

  .p-button-outline:hover.p-button-tertiary{background-color:#BD1A21}

  .p-button-outline:hover.p-button-grey{background-color:#e6e6e6}

  .p-button-outline:hover.p-button-grey2{background-color:#808080}

  .p-button-outline:hover.p-button-grey3{background-color:#BEBEBE}

  .p-button-outline:hover.p-button-grey4{background-color:#EAEAEA}

  .p-button-outline:hover.p-button-grey5{background-color:#9B9B9B}

  .p-button-outline:hover.p-button-dark{background-color:#1A1A1C}

  .p-button-outline:hover.p-button-dark2{background-color:#3D3D3D
  }
}

.p-button__text{position:relative;
  z-index:1;
font-weight:700;
padding-right:2rem
}
@media(min-width: 850px){.p-button__text{padding-right:4.8rem
}

}
.p-button-menu[aria-expanded=true] .p-button__text{display:none
}
.p-button__icon{flex-shrink:0;
  border-radius:50%;
display:inline-flex;
align-items:center;
justify-content:center;
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common);
width:2.8rem;
height:2.8rem
}
@media(min-width: 850px){.p-button__icon{width:3.2rem;
  height:3.2rem
}
}

.p-button__icon svg{width:1.4rem;
  height:1.4rem}

  @media(min-width: 850px){.p-button__icon svg{width:1.6rem;
  height:1.6rem
}
}

.p-button-dark .p-button__icon{background-color:#fff;
  color:var(--color-theme-dark)}

  .p-button-white .p-button__icon{background-color:var(--color-theme-dark);
  color:#fff}

  .p-button-outline .p-button__icon{background-color:currentColor}

  .p-button-outline .p-button__icon svg{stroke:#fff}

  @media(hover: hover){.p-button-dark:hover .p-button__icon{background-color:var(--color-theme-dark);
  color:#fff}

  .p-button-white:hover .p-button__icon{background-color:#fff;
  color:var(--color-theme-dark)
}
}

.p-tel{display:flex}

  .p-tel__text{display:flex;
  flex-direction:column;
line-height:1
}
.p-tel__number{font-family:var(--font-family-en);
  font-weight:700}

  .p-contents .__button.-buttonLayout-wideCenter{text-align:center}

  @media(min-width: 850px){.p-contents__head.-leadLayout-wideHorizontal{display:grid;
  grid-column-gap:20rem;
grid-template-columns:auto 1fr
}

}
@media(min-width: 850px){.p-contents__head.-leadLayout-wideHorizontal .p-lead{margin-top:0
}

}
.p-contents__body{margin-top:3.2rem
}
@media(min-width: 850px){.p-contents__body{margin-top:6rem
}

}
.p-contents__foot{margin-top:5.2rem
}
@media(min-width: 850px){.p-contents__foot{margin-top:7.2rem
}

}
.p-lead{margin-top:2.4rem;
  line-height:2}

  .p-service{display:grid;
  grid-template-columns:1fr;
grid-row-gap:1.6rem;
margin-bottom:8rem
}
@media(min-width: 850px){.p-service{grid-template-columns:1fr 1fr 1fr;
  grid-column-gap:4rem;
grid-row-gap:2.8rem;
margin-bottom:10rem
}

}
.p-service:last-of-type{margin-bottom:0
}
.p-service__item{background-color:#fff;
  display:table;
height:8rem;
table-layout:fixed;
padding-right:2rem;
transition-property:background-color;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common)
}
@media(min-width: 850px){.p-service__item{height:10rem
}

}
@media(hover: hover){.p-service__item:hover{background-color:var(--color-theme-grey)
}
.p-service__item:hover .c-link-line{animation-name:animation-link-line;
  animation-duration:var(--transition-duration-common);
animation-timing-function:var(--transition-timing-function-common);
animation-delay:0s;
animation-fill-mode:none
}

}
.p-service__cell{display:table-cell;
  vertical-align:middle;
padding-left:1.6rem;
line-height:1.6
}
.p-service__cell.-icon{width:6rem
}
@media(min-width: 850px){.p-service__cell.-icon{width:8rem
}

}
.p-service__cell .c-link-line{font-size:1.3rem;
  font-weight:700}

  @media(min-width: 850px){.p-service__cell .c-link-line{font-size:1.4rem
  }
}

.p-strength{display:grid;
  grid-template-columns:1fr;
grid-row-gap:1.6rem
}
@media(min-width: 850px){.p-strength{grid-template-columns:1fr 1fr 1fr 1fr;
  grid-column-gap:3.6rem
}
}

.p-strength__item{background-color:#fff;
  display:flex;
flex-direction:column;
align-items:flex-start;
border-width:1px;
border-style:solid;
border-color:var(--color-theme-dark);
padding-bottom:2rem
}
@media(hover: hover){.p-strength__item:hover .p-button-text .c-link-line{animation-name:animation-link-line;
  animation-duration:var(--transition-duration-common);
animation-timing-function:var(--transition-timing-function-common);
animation-delay:0s;
animation-fill-mode:none
}
.p-strength__item:hover .p-button-text .c-icon svg{animation-name:animation-link-arrow;
  animation-duration:var(--transition-duration-common);
animation-timing-function:var(--transition-timing-function-common);
animation-delay:.12s;
animation-fill-mode:none
}

}
.p-strength__item .p-button-text{font-size:1.3rem;
  display:block;
margin-top:3.2rem;
margin-right:2rem;
margin-left:auto
}
@media(min-width: 850px){.p-strength__item .p-button-text{font-size:1.4rem;
  margin-top:4rem
}
}

.p-strength__item .p-button-text .c-icon{margin-left:.3rem}

  .p-strength__item .p-button-text .c-icon svg{width:2rem;
  height:2rem}

  .p-strength__fukidashi{background-color:var(--color-theme-dark);
  color:#fff;
font-weight:700;
position:relative;
display:inline-block;
line-height:1.5;
padding-top:.6rem;
padding-right:2rem;
padding-bottom:.9rem;
padding-left:2rem
}
.p-strength__fukidashi::before{content:"";
display:block;
width:0px;
height:0px;
border-style:solid;
border-width:0 1.6rem 1.6rem 0;
border-color:rgba(0,0,0,0) var(--color-theme-dark) rgba(0,0,0,0) rgba(0,0,0,0);
transform:rotate(0deg);
position:absolute;
top:100%;
left:1.2rem
}
.p-strength__image{margin-top:1.6rem;
  margin-right:auto;
margin-left:auto
}
@media(min-width: 850px){.p-strength__image{margin-top:3.6rem
}

}
.p-strength__title{margin-right:auto;
  margin-left:auto;
font-size:1.8rem;
margin-top:1.6rem
}
@media(min-width: 850px){.p-strength__title{font-size:2rem;
  margin-top:2.8rem
}
}

.p-strength__strong{font-size:2.4rem;
  line-height:1}

  @media(min-width: 850px){.p-strength__strong{font-size:3.2rem
  }
}

.p-strength__strong.-en{font-size:2.8rem;
  font-family:var(--font-family-en)}

  @media(min-width: 850px){.p-strength__strong.-en{font-size:4rem
  }
}

.p-strength__strong.-en.marker{background:linear-gradient(transparent 70%, #fbd317 70%)}

  .p-strength__text{font-size:1.3rem;
  padding-right:2rem;
padding-left:2rem;
margin-top:1rem;
margin-bottom:auto
}
@media(min-width: 850px){.p-strength__text{font-size:1.4rem
}

}
@media(hover: hover){.p-case:hover .p-case__foot .c-link-line-hover{background-position:0 100%;
  background-size:100% 1px}

  .p-case:hover img{scale:1.05
  }
}

.p-case__image{overflow:hidden;
  width:100%;
aspect-ratio:700/393
}
.p-case__image img{scale:1;
  transition-property:scale;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common);
width:100%;
height:100%;
-o-object-fit:cover;
object-fit:cover
}
.p-case__body{display:flex;
  grid-column-gap:.8rem;
grid-row-gap:.8rem;
margin-top:2rem
}
.p-case__label{font-size:1.2rem;
  border-radius:4px;
border-width:1px;
border-style:solid;
border-color:var(--color-theme-grey2);
text-align:center;
display:inline-block;
padding-right:1.2rem;
padding-left:1.2rem
}
.p-case__foot{margin-top:2.2rem;
  background-image:linear-gradient(90deg, currentColor, currentColor);
background-repeat:no-repeat;
transition-property:background-size;
transition-timing-function:var(--transition-timing-function-common);
transition-duration:var(--transition-duration-common);
background-position:100% 100%;
background-size:0 1px
}
.p-block-blockLayout01{padding-top:3.2rem;
  border-top-width:1px;
border-top-style:solid;
border-top-color:var(--color-theme-grey3);
display:flex;
flex-direction:column;
grid-row-gap:2.4rem
}
@media(min-width: 850px){.p-block-blockLayout01{flex-direction:row;
  justify-content:space-between;
grid-column-gap:4.8rem;
grid-row-gap:0;
padding-top:4rem
}

}
.p-block-blockLayout01+.p-block-blockLayout01{margin-top:4.8rem
}
@media(min-width: 850px){.p-block-blockLayout01+.p-block-blockLayout01{margin-top:4rem
}

}
.p-block-blockLayout01 .p-blcok__image{width:100%
}
@media(min-width: 850px){.p-block-blockLayout01 .p-blcok__image{width:54rem
}

}
.p-block-blockLayout01 .p-blcok__image img{width:100%
}
.p-block-blockLayout01 .p-block__head{margin-bottom:4rem
}
.p-block-blockLayout01 .p-block__title{font-size:2.4rem;
  font-weight:700}

  @media(min-width: 850px){.p-block-blockLayout01 .p-block__title{font-size:2.8rem
  }
}

.p-block-blockLayout01 .p-block__text{margin-top:1rem}

  .p-block-blockLayout01 .p-block__button{display:flex;
  flex-wrap:wrap;
grid-column-gap:1.6rem;
grid-row-gap:1.6rem
}
@media(min-width: 850px){.p-block-blockLayout01 .p-block__button{margin-top:10rem;
  grid-column-gap:2.4rem;
grid-row-gap:2.4rem
}

}
.p-list+.p-list{margin-top:1.6rem
}
.p-list-listLayout01{display:grid;
  grid-row-gap:.8rem}

  .p-list__item{display:flex;
  align-items:baseline}

  .p-list__title{display:inline-flex;
  align-items:center;
grid-column-gap:.8rem;
flex-shrink:0
}
.p-list__title::before{content:"";
display:inline-block;
border-radius:50%;
border-color:var(--color-theme-dark);
border-width:1px;
border-style:solid;
width:.7rem;
height:.7rem
}
@media(min-width: 850px){.p-media{display:grid;
  height:42.6rem;
overflow-y:scroll;
padding-bottom:2.8rem
}

}
.p-media__item{display:flex;
  padding-top:2rem;
padding-bottom:2.8rem;
padding-right:1.2rem;
border-top-width:1px;
border-top-style:solid;
border-top-color:var(--color-theme-grey4)
}
@media(min-width: 850px){.p-media__item{flex-direction:row;
  grid-column-gap:2.4rem;
padding-top:2.8rem;
padding-bottom:4.8rem
}

}
@media(hover: hover){.p-media__item:hover .c-link-line-hover{background-position:0 100%;
  background-size:100% 1px
}
}

.p-media__image{display:none}

  @media(min-width: 850px){.p-media__image{display:block;
  width:20rem;
flex-shrink:0
}

}
.p-media__contents{line-height:1.5
}
@media(min-width: 850px){.p-media__contents{line-height:inherit
}

}
.p-media__contents .c-time{font-size:1.1rem;
  font-weight:500;
color:var(--color-theme-grey2);
display:block;
margin-bottom:.4rem
}
@media(min-width: 850px){.p-media__contents .c-time{font-size:1.2rem;
  margin-top:.8rem
}
}

.p-media__contents .c-link-line-hover{font-size:1.2rem}

  @media(min-width: 850px){.p-media__contents .c-link-line-hover{font-size:1.4rem
  }
}

.p-advertisement{position:relative;
  width:100%;
padding:2.4rem
}
@media(min-width: 850px){.p-advertisement{padding-top:5.7rem;
  padding-right:4.8rem;
padding-bottom:5.6rem;
padding-left:4.8rem
}

}
.p-advertisement::after{content:"";
display:block;
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
pointer-events:none;
z-index:1;
background-color:var(--color-theme-grey4);
mix-blend-mode:multiply
}
.p-advertisement .p-contents{position:relative;
  z-index:10}

  .p-advertisement .p-contents__body{margin-top:1.2rem}

  @media(min-width: 850px){.p-advertisement .p-contents__body{margin-top:1.6rem
  }
}

.p-advertisement__bg{position:absolute;
  top:0;
left:0;
z-index:2;
width:100%;
height:100%;
pointer-events:none;
background-image:url(../images/index/bg-strength.webp);
background-repeat:repeat;
mix-blend-mode:screen;
opacity:.8
}
.p-advertisement__title{font-size:2rem;
  font-weight:700;
line-height:1.5
}
@media(min-width: 850px){.p-advertisement__title{font-size:2.8rem
}

}
.p-advertisement__title.-small{font-weight:400;
  font-size:1.2rem;
margin-top:2.3rem;
margin-bottom:.1rem
}
@media(min-width: 850px){.p-advertisement__title.-small{font-size:1.4rem
}

}
.p-advertisement__text.-small{font-size:1.2rem
}
@media(min-width: 850px){.p-advertisement__text.-small{font-size:1.4rem
}

}
.p-modal{position:fixed;
  top:0;
left:0;
visibility:hidden;
opacity:0;
z-index:var(--z-index-modal);
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common)
}
.p-modal.is-open{visibility:visible;
  opacity:1;
touch-action:auto;
pointer-events:auto
}
.p-modal__close{position:absolute;
  top:-1.6rem;
right:-1.6rem;
z-index:1;
display:block;
width:4.8rem;
height:4.8rem;
border-radius:50%;
border-style:solid;
border-width:2px;
border-color:var(--color-theme-dark);
background-color:var(--color-theme-dark);
cursor:pointer;
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common);
display:flex;
align-items:center;
justify-content:center
}
@media(min-width: 850px){.p-modal__close{top:-2rem;
  right:-2rem
}
}

.p-modal__close .c-icon{width:2.4rem;
  height:2.4rem;
color:#fff;
display:flex;
align-items:center;
justify-content:center
}
@media(hover: hover){.p-modal__close:hover{background-color:#fff
}
.p-modal__close:hover .c-icon{color:var(--color-theme-dark)
}

}
.p-modal-works{background-color:#fff;
  border-radius:4px;
position:fixed;
top:50%;
left:50%;
transform:translate(-50%, -50%);
width:84%
}
@media(min-width: 850px){.p-modal-works{width:90.4rem
}

}
.p-modal-works__inner{padding-top:2.7rem;
  padding-bottom:3.6rem;
max-height:80svh;
overflow-y:auto
}
@media(min-width: 850px){.p-modal-works__inner{height:auto
}

}
.p-modal-works__head,.p-modal-works__body{padding-right:2rem;
  padding-left:2rem}

  @media(min-width: 850px){.p-modal-works__head,.p-modal-works__body{padding-right:4.8rem;
  padding-left:4.8rem
}
}

.p-modal-works__head{border-bottom-color:var(--color-theme-grey4);
  border-bottom-width:1px;
border-bottom-style:solid;
padding-bottom:2.5rem;
margin-bottom:2.8rem
}
@media(min-width: 850px){.p-modal-works__head{margin-bottom:3.6rem
}

}
.p-modal-works__head .c-title{display:flex;
  flex-direction:column}

  .p-modal-works__head .c-title__large{font-weight:700;
  font-size:2rem}

  @media(min-width: 850px){.p-modal-works__head .c-title__large{font-size:2.4rem
  }
}

.p-modal-works__head .c-title__small{font-family:var(--font-family-en);
  font-size:.8rem}

  @media(min-width: 850px){.p-modal-works__head .c-title__small{font-size:1rem
  }
}

.p-modal-works__body{display:flex;
  flex-wrap:wrap;
grid-column-gap:2rem;
grid-row-gap:1.6rem
}
@media(min-width: 850px){.p-modal-works__body{display:grid;
  grid-template-columns:1fr 1fr 1fr 1fr;
grid-column-gap:2.4rem;
grid-row-gap:2rem
}

}
.p-modal-works__body .c-control{font-size:1.2rem;
  font-weight:700;
padding-top:1rem;
padding-right:2rem;
padding-bottom:1rem;
padding-left:2rem
}
@media(min-width: 850px){.p-modal-works__body .c-control{padding-top:1.1rem;
  padding-right:2.4rem;
padding-bottom:1.1rem;
padding-left:2.4rem
}

}
.p-modal-youtube,.p-modal-lightbox{width:100vw;
  height:100%;
overflow:auto;
touch-action:none;
pointer-events:none;
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common)
}
.p-modal-youtube__bg,.p-modal-lightbox__bg{position:fixed;
  top:0;
left:0;
cursor:pointer;
width:100%;
height:100%
}
.p-modal-youtube__bg::after,.p-modal-lightbox__bg::after{content:"";
display:block;
position:absolute;
top:0;
left:0;
opacity:.8;
background:#000;
width:100%;
height:100%
}
.p-modal-youtube__close,.p-modal-lightbox__close{display:block;
  position:fixed;
top:30px;
right:30px;
transition:opacity 0s linear 1s;
cursor:pointer;
width:3.6rem;
height:3.6rem;
background-color:rgba(0,0,0,0);
border:none
}
@media(min-width: 850px){.p-modal-youtube__close,.p-modal-lightbox__close{width:5rem;
  height:5rem
}
}

.p-modal-youtube__close::before,.p-modal-youtube__close::after,.p-modal-lightbox__close::before,.p-modal-lightbox__close::after{content:"";
display:block;
position:absolute;
top:50%;
left:50%;
width:133%;
height:1px;
background-color:#fff
}
.p-modal-youtube__close::before,.p-modal-lightbox__close::before{transform:translate(-50%, -50%) rotate(45deg)
}
.p-modal-youtube__close::after,.p-modal-lightbox__close::after{transform:translate(-50%, -50%) rotate(-45deg)
}
.p-modal-youtube__body{position:fixed;
  top:50%;
left:50%;
transform:translate(-50%, -50%);
width:72.039%;
max-width:159.993vh;
height:auto;
font-size:0;
text-align:center
}
.p-modal-youtube__inner{position:relative
}
.p-modal-youtube__inner::before{content:"";
display:block;
width:100%;
padding-top:56.25%
}
.p-modal-youtube__inner iframe{position:absolute;
  top:0;
left:0;
width:100%;
height:100%
}
.p-modal-lightbox__body{position:fixed;
  top:10svh;
right:0;
bottom:0;
left:0;
margin:2rem;
overflow:auto;
text-align:center;
overscroll-behavior:none
}
@media(min-width: 850px){.p-modal-lightbox__body{top:0;
  margin:inherit
}
}

.p-modal-lightbox__inner{position:absolute;
  top:0;
left:0
}
@media(min-width: 850px){.p-modal-lightbox__inner{position:relative;
  top:inherit;
left:inherit;
padding:2rem
}

}
.p-modal-lightbox__inner img{pointer-events:auto;
  position:relative;
z-index:1
}
.p-modal-lightbox__transparent{position:absolute;
  top:0;
left:0;
z-index:0;
width:100%;
height:100%;
display:block;
cursor:pointer
}
.p-floating{width:calc(100vw - .8rem);
  position:fixed;
right:.4rem;
bottom:.4rem;
z-index:var(--z-index-floating);
transform:translateY(calc(2.8rem + 101% + 2.4rem));
transition-property:all;
transition-duration:var(--transition-duration-common);
transition-timing-function:var(--transition-timing-function-common)
}
@media(min-width: 850px){.p-floating{width:auto;
  right:2.6rem;
bottom:2rem
}

}
.p-floating.is-visible,body.is-modal-open .p-floating{transform:translateY(0)
}
.p-floating__button{position:absolute;
  border:none;
padding:0;
top:-1rem;
right:1rem;
cursor:pointer
}
@media(min-width: 850px){.p-floating__button{right:-1rem
}

}
.p-floating__button .c-icon{color:#fff;
  border-color:#fff;
border-width:1px;
border-style:solid;
border-radius:50%;
background-color:var(--color-theme-dark);
width:2.8rem;
height:2.8rem;
filter:drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
display:inline-flex;
align-items:center;
justify-content:center
}
.p-floating__button .c-icon svg{width:1.4rem;
  height:1.4rem}

  .p-floating__body{border-radius:4px;
  display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
width:100%;
padding:.8rem;
background:linear-gradient(135deg, #bd1a21 0%, #550987 52.3%, #000959 100%);
box-shadow:0px 12px 20px rgba(0,0,0,.25)
}
@media(min-width: 850px){.p-floating__body{width:22.2rem;
  padding-top:2.1rem;
padding-right:0;
padding-bottom:1.6rem;
padding-left:0
}

}
.p-floating__body .p-button{margin-top:.6rem;
  min-width:auto;
width:80%;
font-size:1.2rem;
font-weight:700;
line-height:1.3;
border:none;
padding-top:.8rem;
padding-right:1.2rem;
padding-bottom:.9rem;
padding-left:2.4rem
}
@media(min-width: 850px){.p-floating__body .p-button{margin-top:1.6rem;
  width:auto
}
}

.p-floating__body .p-button__text{padding-right:1rem}

  .p-floating__body .p-button__text br{display:none}

  @media(min-width: 850px){.p-floating__body .p-button__text br{display:inherit
  }
}

.p-floating__body .p-button__icon{width:2.4rem;
  height:2.4rem}

  .p-floating__body .p-button__icon svg{width:1.2rem;
  height:1.2rem}

  @media(hover: hover){.p-floating__body:hover .p-button{background-color:var(--color-theme-dark);
  color:#fff}

  .p-floating__body:hover .p-button__icon{background-color:#fff}

  .p-floating__body:hover .p-button__icon svg{animation-name:animation-link-arrow;
  animation-duration:var(--transition-duration-common);
animation-timing-function:var(--transition-timing-function-common);
animation-delay:.12s;
animation-fill-mode:none;
stroke:var(--color-theme-dark)
}

}
.p-floating__title{color:#fff;
  line-height:1.4;
font-weight:700;
font-size:1.2rem
}
@media(min-width: 850px){.p-floating__title{font-size:1.4rem
}

}
.p-floating__title br{display:none
}
@media(min-width: 850px){.p-floating__title br{display:inherit
}

}
.p-breadcrumb{position:absolute;
  top:6.8rem;
left:2rem;
font-size:.9rem;
display:flex;
align-items:center;
grid-column-gap:.6rem
}
@media(min-width: 850px){.p-breadcrumb{font-size:1.1rem;
  top:inherit;
right:calc((100% - var(--container-max-width))/2);
bottom:1.3rem;
left:inherit
}

}
.p-breadcrumb__link{color:var(--color-theme-grey2)
}
.p-breadcrumb__dot{border-radius:50%;
  width:.3rem;
height:.3rem;
background-color:var(--color-theme-grey2);
display:inline-block
}
@media(min-width: 850px){.p-breadcrumb__dot{width:.4rem;
  height:.4rem
}
}

.p-pagination{display:flex;
  justify-content:center;
grid-column-gap:.4rem
}
@media(min-width: 850px){.p-pagination{grid-column-gap:.8rem;
  justify-content:flex-end
}
}

.p-pagination__item{width:4rem;
  height:4rem;
display:flex;
align-items:center;
justify-content:center
}
@media(min-width: 850px){.p-pagination__item{width:6.4rem;
  height:6.4rem
}
}

.p-pagination__item.-current{border-color:var(--color-theme-grey3);
  background-color:var(--color-theme-grey3);
color:var(--color-theme-dark)
}
.p-pagination__item.-dot{background-color:rgba(0,0,0,0);
  border-color:rgba(0,0,0,0)}

  .p-pagination__item.-arrow .c-icon{display:flex;
  align-items:center;
justify-content:center
}
.p-pagination__item.-arrow svg{width:2rem;
  height:2rem}

  @media(min-width: 850px){.p-pagination__item.-arrow svg{width:auto;
  height:auto
}
}

@media(hover: hover){.p-pagination__item:not(.-current):not(.-dot):hover{background-color:var(--color-theme-dark);
  color:#fff
}
}

.p-pagination__dot{width:.4rem;
  height:.4rem;
border-radius:50%;
display:inline-block;
margin-right:.2rem;
margin-left:.2rem;
background-color:var(--color-theme-grey3)
}
@media(min-width: 850px){.p-pagination__dot{width:.6rem;
  height:.6rem;
margin-right:.4rem;
margin-left:.4rem
}

}
@keyframes animation-link-line{0%{background-position:right 0px bottom;
  background-size:calc(100% - 0px) 1px}

  50%{background-position:right 0px bottom;
  background-size:0% 1px}

  51%{background-position:left 0 bottom;
  background-size:0% 1px}

  100%{background-position:left 0 bottom;
  background-size:calc(100% - 0px) 1px
}
}

@keyframes animation-link-arrow{0%{translate:0% 0%;
  opacity:1}

  50%{translate:100% 0%;
  opacity:0}

  50.1%{translate:-100% 0%;
  opacity:0}

  100%{translate:0% 0%;
  opacity:1
}
}

@keyframes animation-loading{to{-webkit-clip-path:inset(0 -1ch 0 0);
  clip-path:inset(0 -1ch 0 0)
}
}

