@charset "UTF-8";
/*
! tailwindcss v3.4.10 | MIT License | https://tailwindcss.com
*/
/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: currentColor; /* 2 */
}
::before,
::after {
  --tw-content: '';
}
/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/
html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: Noto Sans JP, sans-serif; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}
/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}
/*
Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}
/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}
/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}
/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
  text-transform: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}
/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto;
}
/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
  box-shadow: none;
}
/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}
/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
/*
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}
/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
legend {
  padding: 0;
}
ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}
/*
Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical;
}
/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
  cursor: pointer;
}
/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}
/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}
/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto;
}
/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden] {
  display: none;
}
*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}
::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}
.container{
  width: 100%;
}
@media (min-width: 480px){
  .container{
    max-width: 480px;
  }
}
@media (min-width: 640px){
  .container{
    max-width: 640px;
  }
}
@media (min-width: 768px){
  .container{
    max-width: 768px;
  }
}
@media (min-width: 1024px){
  .container{
    max-width: 1024px;
  }
}
@media (min-width: 1272px){
  .container{
    max-width: 1272px;
  }
}
@media (min-width: 1280px){
  .container{
    max-width: 1280px;
  }
}
@media (min-width: 1536px){
  .container{
    max-width: 1536px;
  }
}
.custom-margin {
    margin-block: calc((1em - 1lh) / 2);
  }
.invisible{
  visibility: hidden;
}
.fixed{
  position: fixed;
}
.absolute{
  position: absolute;
}
.relative{
  position: relative;
}
.bottom-0{
  bottom: 0px;
}
.bottom-46{
  bottom: 46rem;
}
.left-0{
  left: 0px;
}
.left-46{
  left: 46rem;
}
.right-0{
  right: 0px;
}
.right-10{
  right: 10rem;
}
.right-16{
  right: 16rem;
}
.right-20{
  right: 20rem;
}
.top-0{
  top: 0px;
}
.top-14{
  top: 14rem;
}
.top-7{
  top: 7rem;
}
.top-\[0\]{
  top: 0;
}
.top-\[50\%\]{
  top: 50%;
}
.z-0{
  z-index: 0;
}
.z-\[100\]{
  z-index: 100;
}
.z-\[101\]{
  z-index: 101;
}
.z-\[1\]{
  z-index: 1;
}
.z-\[2\]{
  z-index: 2;
}
.m-0{
  margin: 0px;
}
.mx-auto{
  margin-left: auto;
  margin-right: auto;
}
.ml-auto{
  margin-left: auto;
}
.mt-10{
  margin-top: 10rem;
}
.mt-11{
  margin-top: 11rem;
}
.mt-12{
  margin-top: 12rem;
}
.mt-16{
  margin-top: 16rem;
}
.mt-18{
  margin-top: 18rem;
}
.mt-20{
  margin-top: 20rem;
}
.mt-24{
  margin-top: 24rem;
}
.mt-28{
  margin-top: 28rem;
}
.mt-29{
  margin-top: 29rem;
}
.mt-32{
  margin-top: 32rem;
}
.mt-33{
  margin-top: 33rem;
}
.mt-34{
  margin-top: 34rem;
}
.mt-35{
  margin-top: 35rem;
}
.mt-36{
  margin-top: 36rem;
}
.mt-38{
  margin-top: 38rem;
}
.mt-40{
  margin-top: 40rem;
}
.mt-41{
  margin-top: 41rem;
}
.mt-44{
  margin-top: 44rem;
}
.mt-48{
  margin-top: 48rem;
}
.mt-5{
  margin-top: 5rem;
}
.mt-50{
  margin-top: 50rem;
}
.mt-52{
  margin-top: 52rem;
}
.mt-53{
  margin-top: 53rem;
}
.mt-55{
  margin-top: 55rem;
}
.mt-56{
  margin-top: 56rem;
}
.mt-6{
  margin-top: 6rem;
}
.mt-61{
  margin-top: 61rem;
}
.mt-70{
  margin-top: 70rem;
}
.mt-8{
  margin-top: 8rem;
}
.mt-87{
  margin-top: 87rem;
}
.mt-9{
  margin-top: 9rem;
}
.block{
  display: block;
}
.inline-block{
  display: inline-block;
}
.flex{
  display: flex;
}
.grid{
  display: grid;
}
.hidden{
  display: none;
}
.\!h-642{
  height: 642rem !important;
}
.h-1{
  height: 1rem;
}
.h-16{
  height: 16rem;
}
.h-168{
  height: 168rem;
}
.h-2{
  height: 2rem;
}
.h-20{
  height: 20rem;
}
.h-53{
  height: 53rem;
}
.h-80{
  height: 80rem;
}
.h-full{
  height: 100%;
}
.min-h-1495{
  min-height: 1495rem;
}
.min-h-300{
  min-height: 300rem;
}
.min-h-\[100\%\]{
  min-height: 100%;
}
.\!w-106{
  width: 106rem !important;
}
.\!w-9{
  width: 9rem !important;
}
.\!w-auto{
  width: auto !important;
}
.w-16{
  width: 16rem;
}
.w-20{
  width: 20rem;
}
.w-206{
  width: 206rem;
}
.w-24{
  width: 24rem;
}
.w-28{
  width: 28rem;
}
.w-280{
  width: 280rem;
}
.w-32{
  width: 32rem;
}
.w-40{
  width: 40rem;
}
.w-60{
  width: 60rem;
}
.w-64{
  width: 64rem;
}
.w-\[2em\]{
  width: 2em;
}
.w-auto{
  width: auto;
}
.w-fit{
  width: -moz-fit-content;
  width: fit-content;
}
.w-full{
  width: 100%;
}
.\!max-w-41{
  max-width: 41rem !important;
}
.\!max-w-43{
  max-width: 43rem !important;
}
.\!max-w-48{
  max-width: 48rem !important;
}
.\!max-w-49{
  max-width: 49rem !important;
}
.\!max-w-51{
  max-width: 51rem !important;
}
.\!max-w-none{
  max-width: none !important;
}
.max-w-160{
  max-width: 160rem;
}
.max-w-210{
  max-width: 210rem;
}
.max-w-240{
  max-width: 240rem;
}
.max-w-288{
  max-width: 288rem;
}
.max-w-full{
  max-width: 100%;
}
.-translate-y-\[50\%\]{
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-\[-50\%\]{
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-\[40\%\]{
  --tw-translate-y: 40%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.cursor-pointer{
  cursor: pointer;
}
.grid-cols-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.flex-row{
  flex-direction: row;
}
.flex-col{
  flex-direction: column;
}
.flex-wrap{
  flex-wrap: wrap;
}
.place-content-center{
  place-content: center;
}
.items-end{
  align-items: flex-end;
}
.items-center{
  align-items: center;
}
.justify-end{
  justify-content: flex-end;
}
.justify-center{
  justify-content: center;
}
.justify-between{
  justify-content: space-between;
}
.gap-10{
  gap: 10rem;
}
.gap-12{
  gap: 12rem;
}
.gap-20{
  gap: 20rem;
}
.gap-24{
  gap: 24rem;
}
.gap-30{
  gap: 30rem;
}
.gap-32{
  gap: 32rem;
}
.gap-33{
  gap: 33rem;
}
.gap-34{
  gap: 34rem;
}
.gap-85{
  gap: 85rem;
}
.gap-9{
  gap: 9rem;
}
.gap-x-12{
  -moz-column-gap: 12rem;
       column-gap: 12rem;
}
.gap-x-123{
  -moz-column-gap: 123rem;
       column-gap: 123rem;
}
.gap-y-12{
  row-gap: 12rem;
}
.gap-y-8{
  row-gap: 8rem;
}
.overflow-auto{
  overflow: auto;
}
.overflow-hidden{
  overflow: hidden;
}
.overflow-y-scroll{
  overflow-y: scroll;
}
.whitespace-nowrap{
  white-space: nowrap;
}
.rounded-100{
  border-radius: 100rem;
}
.rounded-\[10em\]{
  border-radius: 10em;
}
.rounded-l-8{
  border-top-left-radius: 8rem;
  border-bottom-left-radius: 8rem;
}
.rounded-br-8{
  border-bottom-right-radius: 8rem;
}
.border{
  border-width: 1px;
}
.border-3{
  border-width: 3px;
}
.border-6{
  border-width: 6px;
}
.border-b{
  border-bottom-width: 1px;
}
.border-t{
  border-top-width: 1px;
}
.border-t-2{
  border-top-width: 2px;
}
.border-solid{
  border-style: solid;
}
.border-line{
  --tw-border-opacity: 1;
  border-color: rgb(68 68 68 / var(--tw-border-opacity));
}
.border-maroon{
  --tw-border-opacity: 1;
  border-color: rgb(128 0 0 / var(--tw-border-opacity));
}
.border-pale_pink{
  --tw-border-opacity: 1;
  border-color: rgb(249 229 229 / var(--tw-border-opacity));
}
.bg-b_body{
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity));
}
.bg-b_footer{
  --tw-bg-opacity: 1;
  background-color: rgb(51 51 51 / var(--tw-bg-opacity));
}
.bg-b_header{
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity));
}
.bg-b_modal{
  --tw-bg-opacity: 1;
  background-color: rgb(51 51 51 / var(--tw-bg-opacity));
}
.bg-b_spMenu{
  --tw-bg-opacity: 1;
  background-color: rgb(51 51 51 / var(--tw-bg-opacity));
}
.bg-black{
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.bg-burgerline{
  --tw-bg-opacity: 1;
  background-color: rgb(51 51 51 / var(--tw-bg-opacity));
}
.bg-darkmaroon{
  --tw-bg-opacity: 1;
  background-color: rgb(62 2 2 / var(--tw-bg-opacity));
}
.bg-gray3{
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity));
}
.bg-maroon{
  --tw-bg-opacity: 1;
  background-color: rgb(128 0 0 / var(--tw-bg-opacity));
}
.bg-pale_pink{
  --tw-bg-opacity: 1;
  background-color: rgb(249 229 229 / var(--tw-bg-opacity));
}
.bg-white{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.bg-opacity-90{
  --tw-bg-opacity: 0.9;
}
.bg-\[url\(\/media\/images\/common\/spmenu_bg\.svg\)\]{
  background-image: url(/media/images/common/spmenu_bg.svg);
}
.bg-\[url\(\/media\/images\/home\/service-bg\.svg\)\]{
  background-image: url(/media/images/home/service-bg.svg);
}
.bg-\[size\:100\%_auto\]{
  background-size: 100% auto;
}
.bg-\[position\:center_0\]{
  background-position: center 0;
}
.bg-no-repeat{
  background-repeat: no-repeat;
}
.bg-repeat-y{
  background-repeat: repeat-y;
}
.p-0{
  padding: 0px;
}
.p-20{
  padding: 20rem;
}
.p-24{
  padding: 24rem;
}
.px-16{
  padding-left: 16rem;
  padding-right: 16rem;
}
.px-20{
  padding-left: 20rem;
  padding-right: 20rem;
}
.px-24{
  padding-left: 24rem;
  padding-right: 24rem;
}
.px-26{
  padding-left: 26rem;
  padding-right: 26rem;
}
.px-28{
  padding-left: 28rem;
  padding-right: 28rem;
}
.px-9{
  padding-left: 9rem;
  padding-right: 9rem;
}
.py-10{
  padding-top: 10rem;
  padding-bottom: 10rem;
}
.py-13{
  padding-top: 13rem;
  padding-bottom: 13rem;
}
.py-18{
  padding-top: 18rem;
  padding-bottom: 18rem;
}
.py-20{
  padding-top: 20rem;
  padding-bottom: 20rem;
}
.py-3{
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.py-5{
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.py-8{
  padding-top: 8rem;
  padding-bottom: 8rem;
}
.pb-100{
  padding-bottom: 100rem;
}
.pb-14{
  padding-bottom: 14rem;
}
.pb-26{
  padding-bottom: 26rem;
}
.pb-30{
  padding-bottom: 30rem;
}
.pb-32{
  padding-bottom: 32rem;
}
.pb-38{
  padding-bottom: 38rem;
}
.pb-40{
  padding-bottom: 40rem;
}
.pb-7{
  padding-bottom: 7rem;
}
.pb-88{
  padding-bottom: 88rem;
}
.pl-16{
  padding-left: 16rem;
}
.pl-20{
  padding-left: 20rem;
}
.pr-30{
  padding-right: 30rem;
}
.pr-52{
  padding-right: 52rem;
}
.pr-6{
  padding-right: 6rem;
}
.pt-10{
  padding-top: 10rem;
}
.pt-16{
  padding-top: 16rem;
}
.pt-160{
  padding-top: 160rem;
}
.pt-20{
  padding-top: 20rem;
}
.pt-35{
  padding-top: 35rem;
}
.pt-52{
  padding-top: 52rem;
}
.pt-6{
  padding-top: 6rem;
}
.pt-80{
  padding-top: 80rem;
}
.pt-\[56\.26\%\]{
  padding-top: 56.26%;
}
.text-center{
  text-align: center;
}
.text-right{
  text-align: right;
}
.font-CabinCondensed{
  font-family: Cabin_Condensed, sans-serif;
}
.font-CabinSemiCondensed{
  font-family: Cabin_SemiCondensed, sans-serif;
}
.font-cabin{
  font-family: Cabin, sans-serif;
}
.font-sans{
  font-family: Noto Sans JP, sans-serif;
}
.text-12{
  font-size: 12rem;
}
.text-14{
  font-size: 14rem;
}
.text-16{
  font-size: 16rem;
}
.text-18{
  font-size: 18rem;
}
.text-20{
  font-size: 20rem;
}
.text-22{
  font-size: 22rem;
}
.text-24{
  font-size: 24rem;
}
.text-32{
  font-size: 32rem;
}
.text-40{
  font-size: 40rem;
}
.text-48{
  font-size: 48rem;
}
.font-\[500\]{
  font-weight: 500;
}
.font-\[600\]{
  font-weight: 600;
}
.font-\[700\]{
  font-weight: 700;
}
.leading-32{
  line-height: 32rem;
}
.leading-\[1\.4\]{
  line-height: 1.4;
}
.leading-\[1\.5\]{
  line-height: 1.5;
}
.leading-\[1\.6\]{
  line-height: 1.6;
}
.leading-\[1\.8\]{
  line-height: 1.8;
}
.leading-\[1\]{
  line-height: 1;
}
.leading-\[2\]{
  line-height: 2;
}
.tracking-\[0\.05em\]{
  letter-spacing: 0.05em;
}
.text-txt_def{
  --tw-text-opacity: 1;
  color: rgb(51 51 51 / var(--tw-text-opacity));
}
.text-white{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.opacity-0{
  opacity: 0;
}
.duration-500{
  transition-duration: 500ms;
}
html {
  /* font-size: calc((100vw / 420) * 1); */
  font-size: calc((100vw / 420) * 1);
}
@media only screen and (min-width: 768px) {
html {
    font-size: calc((100vw / 768) * 0.8)
}
  }
@media only screen and (min-width: 1272px) {
html {
    font-size: calc((100vw / 1920) * 1)
}
  }
/* 追加で記述 */
/* base.cssをインポート */
.after\:absolute::after{
  content: var(--tw-content);
  position: absolute;
}
.after\:bottom-7::after{
  content: var(--tw-content);
  bottom: 7rem;
}
.after\:right-8::after{
  content: var(--tw-content);
  right: 8rem;
}
@media (min-width: 768px){
  .md\:-top-200{
    top: -200rem;
  }
  .md\:left-0{
    left: 0px;
  }
  .md\:right-0{
    right: 0px;
  }
  .md\:right-20{
    right: 20rem;
  }
  .md\:order-1{
    order: 1;
  }
  .md\:order-2{
    order: 2;
  }
  .md\:mx-auto{
    margin-left: auto;
    margin-right: auto;
  }
  .md\:mb-10{
    margin-bottom: 10rem;
  }
  .md\:ml-4{
    margin-left: 4rem;
  }
  .md\:ml-auto{
    margin-left: auto;
  }
  .md\:mr-auto{
    margin-right: auto;
  }
  .md\:mt-0{
    margin-top: 0px;
  }
  .md\:mt-120{
    margin-top: 120rem;
  }
  .md\:mt-14{
    margin-top: 14rem;
  }
  .md\:mt-20{
    margin-top: 20rem;
  }
  .md\:mt-24{
    margin-top: 24rem;
  }
  .md\:mt-270{
    margin-top: 270rem;
  }
  .md\:mt-28{
    margin-top: 28rem;
  }
  .md\:mt-30{
    margin-top: 30rem;
  }
  .md\:mt-32{
    margin-top: 32rem;
  }
  .md\:mt-34{
    margin-top: 34rem;
  }
  .md\:mt-40{
    margin-top: 40rem;
  }
  .md\:mt-46{
    margin-top: 46rem;
  }
  .md\:mt-50{
    margin-top: 50rem;
  }
  .md\:mt-6{
    margin-top: 6rem;
  }
  .md\:mt-8{
    margin-top: 8rem;
  }
  .md\:inline-block{
    display: inline-block;
  }
  .md\:flex{
    display: flex;
  }
  .md\:hidden{
    display: none;
  }
  .md\:h-24{
    height: 24rem;
  }
  .md\:h-auto{
    height: auto;
  }
  .md\:min-h-325{
    min-height: 325rem;
  }
  .md\:min-h-\[2262rem\]{
    min-height: 2262rem;
  }
  .md\:w-1\/2{
    width: 50%;
  }
  .md\:w-180{
    width: 180rem;
  }
  .md\:w-24{
    width: 24rem;
  }
  .md\:w-475{
    width: 475rem;
  }
  .md\:w-800{
    width: 800rem;
  }
  .md\:w-\[4\.2em\]{
    width: 4.2em;
  }
  .md\:w-\[8\.5em\]{
    width: 8.5em;
  }
  .md\:w-fit{
    width: -moz-fit-content;
    width: fit-content;
  }
  .md\:max-w-1317{
    max-width: 1317rem;
  }
  .md\:max-w-1320{
    max-width: 1320rem;
  }
  .md\:max-w-1323{
    max-width: 1323rem;
  }
  .md\:max-w-308{
    max-width: 308rem;
  }
  .md\:flex-shrink-0{
    flex-shrink: 0;
  }
  .md\:flex-grow-0{
    flex-grow: 0;
  }
  .md\:-translate-y-40{
    --tw-translate-y: -40rem;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .md\:translate-y-40{
    --tw-translate-y: 40rem;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .md\:translate-y-\[34\%\]{
    --tw-translate-y: 34%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .md\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .md\:flex-row{
    flex-direction: row;
  }
  .md\:flex-wrap{
    flex-wrap: wrap;
  }
  .md\:flex-nowrap{
    flex-wrap: nowrap;
  }
  .md\:items-center{
    align-items: center;
  }
  .md\:justify-end{
    justify-content: flex-end;
  }
  .md\:justify-between{
    justify-content: space-between;
  }
  .md\:gap-12{
    gap: 12rem;
  }
  .md\:gap-20{
    gap: 20rem;
  }
  .md\:gap-24{
    gap: 24rem;
  }
  .md\:gap-25{
    gap: 25rem;
  }
  .md\:gap-30{
    gap: 30rem;
  }
  .md\:gap-34{
    gap: 34rem;
  }
  .md\:gap-70{
    gap: 70rem;
  }
  .md\:border-8{
    border-width: 8px;
  }
  .md\:border-line2{
    --tw-border-opacity: 1;
    border-color: rgb(206 206 206 / var(--tw-border-opacity));
  }
  .md\:bg-\[url\(\/media\/images\/home\/service-bg-tb\.svg\)\]{
    background-image: url(/media/images/home/service-bg-tb.svg);
  }
  .md\:px-20{
    padding-left: 20rem;
    padding-right: 20rem;
  }
  .md\:px-24{
    padding-left: 24rem;
    padding-right: 24rem;
  }
  .md\:px-30{
    padding-left: 30rem;
    padding-right: 30rem;
  }
  .md\:px-40{
    padding-left: 40rem;
    padding-right: 40rem;
  }
  .md\:py-14{
    padding-top: 14rem;
    padding-bottom: 14rem;
  }
  .md\:py-32{
    padding-top: 32rem;
    padding-bottom: 32rem;
  }
  .md\:py-50{
    padding-top: 50rem;
    padding-bottom: 50rem;
  }
  .md\:pb-12{
    padding-bottom: 12rem;
  }
  .md\:pb-16{
    padding-bottom: 16rem;
  }
  .md\:pb-26{
    padding-bottom: 26rem;
  }
  .md\:pb-5{
    padding-bottom: 5rem;
  }
  .md\:pl-34{
    padding-left: 34rem;
  }
  .md\:pr-0{
    padding-right: 0px;
  }
  .md\:pr-8{
    padding-right: 8rem;
  }
  .md\:pt-12{
    padding-top: 12rem;
  }
  .md\:pt-22{
    padding-top: 22rem;
  }
  .md\:pt-24{
    padding-top: 24rem;
  }
  .md\:pt-3{
    padding-top: 3rem;
  }
  .md\:pt-555{
    padding-top: 555rem;
  }
  .md\:text-left{
    text-align: left;
  }
  .md\:\!text-22{
    font-size: 22rem !important;
  }
  .md\:text-16{
    font-size: 16rem;
  }
  .md\:text-20{
    font-size: 20rem;
  }
  .md\:text-22{
    font-size: 22rem;
  }
  .md\:text-24{
    font-size: 24rem;
  }
  .md\:text-48{
    font-size: 48rem;
  }
  .md\:text-52{
    font-size: 52rem;
  }
  .md\:leading-28{
    line-height: 28rem;
  }
  .md\:leading-46{
    line-height: 46rem;
  }
  .md\:leading-\[1\.5\]{
    line-height: 1.5;
  }
  .md\:leading-\[1\.6\]{
    line-height: 1.6;
  }
  .md\:leading-\[1\.8\]{
    line-height: 1.8;
  }
  .md\:leading-\[2\]{
    line-height: 2;
  }
  .md\:tracking-\[0\.05em\]{
    letter-spacing: 0.05em;
  }
}
@media (min-width: 1272px){
  .pc\:-top-56{
    top: -56rem;
  }
  .pc\:bottom-118{
    bottom: 118rem;
  }
  .pc\:left-184{
    left: 184rem;
  }
  .pc\:order-1{
    order: 1;
  }
  .pc\:order-2{
    order: 2;
  }
  .pc\:mx-auto{
    margin-left: auto;
    margin-right: auto;
  }
  .pc\:ml-\[0\.2em\]{
    margin-left: 0.2em;
  }
  .pc\:mt-0{
    margin-top: 0px;
  }
  .pc\:mt-100{
    margin-top: 100rem;
  }
  .pc\:mt-11{
    margin-top: 11rem;
  }
  .pc\:mt-116{
    margin-top: 116rem;
  }
  .pc\:mt-150{
    margin-top: 150rem;
  }
  .pc\:mt-152{
    margin-top: 152rem;
  }
  .pc\:mt-230{
    margin-top: 230rem;
  }
  .pc\:mt-48{
    margin-top: 48rem;
  }
  .pc\:mt-50{
    margin-top: 50rem;
  }
  .pc\:mt-56{
    margin-top: 56rem;
  }
  .pc\:mt-8{
    margin-top: 8rem;
  }
  .pc\:block{
    display: block;
  }
  .pc\:flex{
    display: flex;
  }
  .pc\:h-480{
    height: 480rem;
  }
  .pc\:h-640{
    height: 640rem;
  }
  .pc\:min-h-0{
    min-height: 0px;
  }
  .pc\:min-h-400{
    min-height: 400rem;
  }
  .pc\:min-h-96{
    min-height: 96rem;
  }
  .pc\:\!w-482{
    width: 482rem !important;
  }
  .pc\:w-1\/2{
    width: 50%;
  }
  .pc\:w-1018{
    width: 1018rem;
  }
  .pc\:w-206{
    width: 206rem;
  }
  .pc\:w-288{
    width: 288rem;
  }
  .pc\:w-350{
    width: 350rem;
  }
  .pc\:w-408{
    width: 408rem;
  }
  .pc\:w-460{
    width: 460rem;
  }
  .pc\:w-505{
    width: 505rem;
  }
  .pc\:w-560{
    width: 560rem;
  }
  .pc\:w-64{
    width: 64rem;
  }
  .pc\:w-642{
    width: 642rem;
  }
  .pc\:w-790{
    width: 790rem;
  }
  .pc\:w-880{
    width: 880rem;
  }
  .pc\:max-w-1206{
    max-width: 1206rem;
  }
  .pc\:flex-shrink-0{
    flex-shrink: 0;
  }
  .pc\:flex-grow-0{
    flex-grow: 0;
  }
  .pc\:-translate-y-80{
    --tw-translate-y: -80rem;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .pc\:translate-y-80{
    --tw-translate-y: 80rem;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .pc\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .pc\:grid-cols-5{
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .pc\:flex-row{
    flex-direction: row;
  }
  .pc\:items-start{
    align-items: flex-start;
  }
  .pc\:justify-between{
    justify-content: space-between;
  }
  .pc\:gap-0{
    gap: 0px;
  }
  .pc\:gap-18{
    gap: 18rem;
  }
  .pc\:gap-24{
    gap: 24rem;
  }
  .pc\:gap-32{
    gap: 32rem;
  }
  .pc\:gap-37{
    gap: 37rem;
  }
  .pc\:rounded-l-24{
    border-top-left-radius: 24rem;
    border-bottom-left-radius: 24rem;
  }
  .pc\:rounded-br-24{
    border-bottom-right-radius: 24rem;
  }
  .pc\:border-4{
    border-width: 4px;
  }
  .pc\:border-l{
    border-left-width: 1px;
  }
  .pc\:bg-\[url\(\/media\/images\/home\/service-bg-pc\.svg\)\]{
    background-image: url(/media/images/home/service-bg-pc.svg);
  }
  .pc\:p-32{
    padding: 32rem;
  }
  .pc\:px-0{
    padding-left: 0px;
    padding-right: 0px;
  }
  .pc\:px-32{
    padding-left: 32rem;
    padding-right: 32rem;
  }
  .pc\:px-56{
    padding-left: 56rem;
    padding-right: 56rem;
  }
  .pc\:px-96{
    padding-left: 96rem;
    padding-right: 96rem;
  }
  .pc\:py-53{
    padding-top: 53rem;
    padding-bottom: 53rem;
  }
  .pc\:py-6{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .pc\:py-95{
    padding-top: 95rem;
    padding-bottom: 95rem;
  }
  .pc\:pb-100{
    padding-bottom: 100rem;
  }
  .pc\:pb-200{
    padding-bottom: 200rem;
  }
  .pc\:pb-23{
    padding-bottom: 23rem;
  }
  .pc\:pb-42{
    padding-bottom: 42rem;
  }
  .pc\:pb-43{
    padding-bottom: 43rem;
  }
  .pc\:pl-24{
    padding-left: 24rem;
  }
  .pc\:pl-29{
    padding-left: 29rem;
  }
  .pc\:pr-0{
    padding-right: 0px;
  }
  .pc\:pr-29{
    padding-right: 29rem;
  }
  .pc\:pt-108{
    padding-top: 108rem;
  }
  .pc\:pt-188{
    padding-top: 188rem;
  }
  .pc\:pt-38{
    padding-top: 38rem;
  }
  .pc\:text-144{
    font-size: 144rem;
  }
  .pc\:text-20{
    font-size: 20rem;
  }
  .pc\:text-24{
    font-size: 24rem;
  }
  .pc\:text-48{
    font-size: 48rem;
  }
  .pc\:text-72{
    font-size: 72rem;
  }
  .pc\:leading-\[2\.8\]{
    line-height: 2.8;
  }
  .pc\:duration-500{
    transition-duration: 500ms;
  }
  .pc\:hover\:opacity-\[0\.7\]:hover{
    opacity: 0.7;
  }
  .group:hover .pc\:group-hover\:scale-110{
    --tw-scale-x: 1.1;
    --tw-scale-y: 1.1;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .group:hover .pc\:group-hover\:bg-darkmaroon{
    --tw-bg-opacity: 1;
    background-color: rgb(62 2 2 / var(--tw-bg-opacity));
  }
  .group:hover .pc\:group-hover\:text-maroon{
    --tw-text-opacity: 1;
    color: rgb(128 0 0 / var(--tw-text-opacity));
  }
}
.\[\&\>li\>a\]\:block>li>a{
  display: block;
}
.\[\&_\.arrow\]\:absolute .arrow{
  position: absolute;
}
.\[\&_\.arrow\]\:right-7 .arrow{
  right: 7rem;
}
.\[\&_\.arrow\]\:top-\[50\%\] .arrow{
  top: 50%;
}
.\[\&_\.arrow\]\:block .arrow{
  display: block;
}
.\[\&_\.arrow\]\:w-10 .arrow{
  width: 10rem;
}
.\[\&_\.arrow\]\:translate-y-\[-50\%\] .arrow{
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.\[\&_\.block\]\:w-fit .block{
  width: -moz-fit-content;
  width: fit-content;
}
.\[\&_\.block\]\:bg-white .block{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.\[\&_\.box\.-L\]\:w-full .box.-L{
  width: 100%;
}
@media (min-width: 768px){
  .md\:\[\&_\.box\.-L\]\:w-\[calc\(50\%-6rem\)\] .box.-L{
    width: calc(50% - 6rem);
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_\.box\.-L\]\:w-654 .box.-L{
    width: 654rem;
  }
}
.\[\&_\.box\.-S\]\:w-\[calc\(\(50\%-6rem\)\)\] .box.-S{
  width: calc((50% - 6rem));
}
.\[\&_\.box\.-S\]\:px-28 .box.-S{
  padding-left: 28rem;
  padding-right: 28rem;
}
.\[\&_\.box\.-S\]\:pb-22 .box.-S{
  padding-bottom: 22rem;
}
.\[\&_\.box\.-S\]\:pt-20 .box.-S{
  padding-top: 20rem;
}
@media (min-width: 768px){
  .md\:\[\&_\.box\.-S\]\:w-\[calc\(\(100\%-24rem\)\/3\)\] .box.-S{
    width: calc((100% - 24rem) / 3);
  }
  .md\:\[\&_\.box\.-S\]\:px-40 .box.-S{
    padding-left: 40rem;
    padding-right: 40rem;
  }
  .md\:\[\&_\.box\.-S\]\:pb-50 .box.-S{
    padding-bottom: 50rem;
  }
  .md\:\[\&_\.box\.-S\]\:pt-40 .box.-S{
    padding-top: 40rem;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_\.box\.-S\]\:w-432 .box.-S{
    width: 432rem;
  }
}
.\[\&_\.box\]\:bg-white .box{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
@media (min-width: 768px){
  .md\:\[\&_\.info\]\:relative .info{
    position: relative;
  }
  .md\:\[\&_\.inner\]\:mx-auto .inner{
    margin-left: auto;
    margin-right: auto;
  }
  .md\:\[\&_\.inner\]\:w-fit .inner{
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_\.inner\]\:min-w-250 .inner{
    min-width: 250rem;
  }
}
.\[\&_\.modal-open\]\:cursor-pointer .modal-open{
  cursor: pointer;
}
.\[\&_\.more\]\:mt-8 .more{
  margin-top: 8rem;
}
@media (min-width: 768px){
  .md\:\[\&_\.more\]\:mt-20 .more{
    margin-top: 20rem;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_\.more\]\:absolute .more{
    position: absolute;
  }
  .pc\:\[\&_\.more\]\:bottom-44 .more{
    bottom: 44rem;
  }
  .pc\:\[\&_\.more\]\:right-56 .more{
    right: 56rem;
  }
  .pc\:\[\&_\.more\]\:mt-0 .more{
    margin-top: 0px;
  }
}
.\[\&_\.more_a\]\:ml-auto .more a{
  margin-left: auto;
}
.\[\&_\.more_a\]\:w-fit .more a{
  width: -moz-fit-content;
  width: fit-content;
}
.\[\&_\.num\]\:absolute .num{
  position: absolute;
}
.\[\&_\.num\]\:-bottom-1 .num{
  bottom: -1rem;
}
.\[\&_\.num\]\:right-0 .num{
  right: 0px;
}
.\[\&_\.num\]\:z-0 .num{
  z-index: 0;
}
.\[\&_\.num\]\:text-18 .num{
  font-size: 18rem;
}
.\[\&_\.num\]\:font-\[800\] .num{
  font-weight: 800;
}
.\[\&_\.num\]\:text-maroon .num{
  --tw-text-opacity: 1;
  color: rgb(128 0 0 / var(--tw-text-opacity));
}
@media (min-width: 768px){
  .md\:\[\&_\.num\]\:text-24 .num{
    font-size: 24rem;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_\.num\]\:text-36 .num{
    font-size: 36rem;
  }
}
.\[\&_\.num_em\]\:text-50 .num em{
  font-size: 50rem;
}
.\[\&_\.num_em\]\:font-\[600\] .num em{
  font-weight: 600;
}
.\[\&_\.num_em\]\:leading-\[1\] .num em{
  line-height: 1;
}
@media (min-width: 768px){
  .md\:\[\&_\.num_em\]\:text-70 .num em{
    font-size: 70rem;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_\.num_em\]\:text-104 .num em{
    font-size: 104rem;
  }
}
.\[\&_\.pic\]\:overflow-hidden .pic{
  overflow: hidden;
}
@media (min-width: 768px){
  .md\:\[\&_\.pic\]\:absolute .pic{
    position: absolute;
  }
  .md\:\[\&_\.pic\]\:z-0 .pic{
    z-index: 0;
  }
}
.\[\&_\.swiper-slide\]\:px-5 .swiper-slide{
  padding-left: 5rem;
  padding-right: 5rem;
}
@media (min-width: 768px){
  .md\:\[\&_\.swiper-slide\]\:h-full .swiper-slide{
    height: 100%;
  }
  .md\:\[\&_\.swiper-slide\]\:px-6 .swiper-slide{
    padding-left: 6rem;
    padding-right: 6rem;
  }
}
.\[\&_\.ttl-en\]\:font-cabin .ttl-en{
  font-family: Cabin, sans-serif;
}
.\[\&_\.ttl-en\]\:text-40 .ttl-en{
  font-size: 40rem;
}
.\[\&_\.ttl-en\]\:leading-\[1\.2\] .ttl-en{
  line-height: 1.2;
}
@media (min-width: 768px){
  .md\:\[\&_\.ttl-en\]\:text-55 .ttl-en{
    font-size: 55rem;
  }
  .md\:\[\&_\.ttl-en\]\:tracking-\[0\] .ttl-en{
    letter-spacing: 0;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_\.ttl-en\]\:text-56 .ttl-en{
    font-size: 56rem;
  }
}
.\[\&_\.ttl-jp\]\:mt-2 .ttl-jp{
  margin-top: 2rem;
}
.\[\&_\.ttl-jp\]\:text-24 .ttl-jp{
  font-size: 24rem;
}
.\[\&_\.ttl-jp\]\:leading-\[1\.4\] .ttl-jp{
  line-height: 1.4;
}
@media (min-width: 768px){
  .md\:\[\&_\.ttl-jp\]\:mt-8 .ttl-jp{
    margin-top: 8rem;
  }
  .md\:\[\&_\.ttl-jp\]\:text-25 .ttl-jp{
    font-size: 25rem;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_\.ttl-jp\]\:mt-5 .ttl-jp{
    margin-top: 5rem;
  }
  .pc\:\[\&_\.ttl-jp\]\:text-24 .ttl-jp{
    font-size: 24rem;
  }
}
.\[\&_\.txt\]\:mt-10 .txt{
  margin-top: 10rem;
}
.\[\&_\.txt\]\:text-16 .txt{
  font-size: 16rem;
}
.\[\&_\.txt\]\:font-\[500\] .txt{
  font-weight: 500;
}
.\[\&_\.txt\]\:leading-\[1\.75\] .txt{
  line-height: 1.75;
}
@media (min-width: 768px){
  .md\:\[\&_\.txt\]\:mt-20 .txt{
    margin-top: 20rem;
  }
  .md\:\[\&_\.txt\]\:text-22 .txt{
    font-size: 22rem;
  }
  .md\:\[\&_\.txt\]\:leading-\[1\.8\] .txt{
    line-height: 1.8;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_\.txt\]\:mt-34 .txt{
    margin-top: 34rem;
  }
  .pc\:\[\&_\.txt\]\:text-24 .txt{
    font-size: 24rem;
  }
  .pc\:\[\&_a\:hover\]\:opacity-\[0\.7\] a:hover{
    opacity: 0.7;
  }
}
.\[\&_a\]\:relative a{
  position: relative;
}
.\[\&_a\]\:block a{
  display: block;
}
.\[\&_a\]\:flex a{
  display: flex;
}
.\[\&_a\]\:grid a{
  display: grid;
}
.\[\&_a\]\:h-80 a{
  height: 80rem;
}
.\[\&_a\]\:w-full a{
  width: 100%;
}
.\[\&_a\]\:place-content-center a{
  place-content: center;
}
.\[\&_a\]\:items-center a{
  align-items: center;
}
.\[\&_a\]\:justify-center a{
  justify-content: center;
}
.\[\&_a\]\:gap-16 a{
  gap: 16rem;
}
.\[\&_a\]\:bg-maroon a{
  --tw-bg-opacity: 1;
  background-color: rgb(128 0 0 / var(--tw-bg-opacity));
}
.\[\&_a\]\:pb-22 a{
  padding-bottom: 22rem;
}
.\[\&_a\]\:pt-16 a{
  padding-top: 16rem;
}
.\[\&_a\]\:text-center a{
  text-align: center;
}
.\[\&_a\]\:text-20 a{
  font-size: 20rem;
}
.\[\&_a\]\:font-\[600\] a{
  font-weight: 600;
}
.\[\&_a\]\:text-white a{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.\[\&_a\]\:duration-500 a{
  transition-duration: 500ms;
}
@media (min-width: 768px){
  .md\:\[\&_a\]\:h-96 a{
    height: 96rem;
  }
  .md\:\[\&_a\]\:text-24 a{
    font-size: 24rem;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_a\]\:w-460 a{
    width: 460rem;
  }
}
.\[\&_b\]\:text-21 b{
  font-size: 21rem;
}
.\[\&_b\]\:font-\[600\] b{
  font-weight: 600;
}
@media (min-width: 1272px){
  .pc\:\[\&_b\]\:text-56 b{
    font-size: 56rem;
  }
}
.\[\&_dl\:nth-child\(odd\)\]\:bg-white dl:nth-child(odd){
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.\[\&_dl\]\:flex dl{
  display: flex;
}
.\[\&_dl\]\:gap-20 dl{
  gap: 20rem;
}
.\[\&_dl\]\:px-20 dl{
  padding-left: 20rem;
  padding-right: 20rem;
}
.\[\&_dl\]\:py-10 dl{
  padding-top: 10rem;
  padding-bottom: 10rem;
}
@media (min-width: 768px){
  .md\:\[\&_dl\]\:px-32 dl{
    padding-left: 32rem;
    padding-right: 32rem;
  }
  .md\:\[\&_dl\]\:py-16 dl{
    padding-top: 16rem;
    padding-bottom: 16rem;
  }
}
.\[\&_dl_dt\]\:w-\[7\.5em\] dl dt{
  width: 7.5em;
}
.\[\&_dl_dt\]\:flex-shrink-0 dl dt{
  flex-shrink: 0;
}
.\[\&_dl_dt\]\:flex-grow-0 dl dt{
  flex-grow: 0;
}
.\[\&_em\]\:not-italic em{
  font-style: normal;
}
.\[\&_em\]\:text-maroon em{
  --tw-text-opacity: 1;
  color: rgb(128 0 0 / var(--tw-text-opacity));
}
.\[\&_h4\]\:-mt-\[0\.3em\] h4{
  margin-top: -0.3em;
}
.\[\&_h4\]\:flex-shrink-0 h4{
  flex-shrink: 0;
}
.\[\&_h4\]\:flex-grow-0 h4{
  flex-grow: 0;
}
.\[\&_h4\]\:text-14 h4{
  font-size: 14rem;
}
.\[\&_h4\]\:text-20 h4{
  font-size: 20rem;
}
.\[\&_h4\]\:font-\[600\] h4{
  font-weight: 600;
}
.\[\&_h4\]\:font-\[700\] h4{
  font-weight: 700;
}
.\[\&_h4\]\:leading-\[1\.8\] h4{
  line-height: 1.8;
}
@media (min-width: 768px){
  .md\:\[\&_h4\]\:text-20 h4{
    font-size: 20rem;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_h4\]\:text-28 h4{
    font-size: 28rem;
  }
}
.\[\&_img\]\:\!w-fit img{
  width: -moz-fit-content !important;
  width: fit-content !important;
}
.\[\&_img\]\:w-full img{
  width: 100%;
}
@media (min-width: 768px){
  .md\:\[\&_img\]\:h-full img{
    height: 100%;
  }
  .md\:\[\&_img\]\:object-cover img{
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.\[\&_li\:last-child\]\:border-b li:last-child{
  border-bottom-width: 1px;
}
.\[\&_li\]\:relative li{
  position: relative;
}
.\[\&_li\]\:flex li{
  display: flex;
}
.\[\&_li\]\:w-full li{
  width: 100%;
}
.\[\&_li\]\:flex-col li{
  flex-direction: column;
}
.\[\&_li\]\:items-center li{
  align-items: center;
}
.\[\&_li\]\:justify-start li{
  justify-content: flex-start;
}
.\[\&_li\]\:gap-10 li{
  gap: 10rem;
}
.\[\&_li\]\:rounded-16 li{
  border-radius: 16rem;
}
.\[\&_li\]\:border-t li{
  border-top-width: 1px;
}
.\[\&_li\]\:border-solid li{
  border-style: solid;
}
.\[\&_li\]\:border-line li{
  --tw-border-opacity: 1;
  border-color: rgb(68 68 68 / var(--tw-border-opacity));
}
.\[\&_li\]\:bg-pale_pink li{
  --tw-bg-opacity: 1;
  background-color: rgb(249 229 229 / var(--tw-bg-opacity));
}
.\[\&_li\]\:bg-white li{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.\[\&_li\]\:p-50 li{
  padding: 50rem;
}
.\[\&_li\]\:px-10 li{
  padding-left: 10rem;
  padding-right: 10rem;
}
.\[\&_li\]\:py-20 li{
  padding-top: 20rem;
  padding-bottom: 20rem;
}
.\[\&_li\]\:text-14 li{
  font-size: 14rem;
}
.\[\&_li\]\:font-\[600\] li{
  font-weight: 600;
}
.\[\&_li\]\:leading-\[1\.5\] li{
  line-height: 1.5;
}
.\[\&_li\]\:text-maroon li{
  --tw-text-opacity: 1;
  color: rgb(128 0 0 / var(--tw-text-opacity));
}
@media (min-width: 768px){
  .md\:\[\&_li\]\:min-h-96 li{
    min-height: 96rem;
  }
  .md\:\[\&_li\]\:w-1\/3 li{
    width: 33.333333%;
  }
  .md\:\[\&_li\]\:flex-row li{
    flex-direction: row;
  }
  .md\:\[\&_li\]\:p-25 li{
    padding: 25rem;
  }
  .md\:\[\&_li\]\:px-26 li{
    padding-left: 26rem;
    padding-right: 26rem;
  }
  .md\:\[\&_li\]\:py-10 li{
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
  .md\:\[\&_li\]\:text-16 li{
    font-size: 16rem;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_li\]\:w-416 li{
    width: 416rem;
  }
  .pc\:\[\&_li\]\:p-48 li{
    padding: 48rem;
  }
  .pc\:\[\&_li\]\:pb-66 li{
    padding-bottom: 66rem;
  }
  .pc\:\[\&_li\]\:pt-56 li{
    padding-top: 56rem;
  }
}
.\[\&_p\:first-of-type\]\:mt-0 p:first-of-type{
  margin-top: 0px;
}
.\[\&_p\]\:mt-16 p{
  margin-top: 16rem;
}
@media (min-width: 768px){
  .md\:\[\&_p\]\:mt-28 p{
    margin-top: 28rem;
  }
}
.\[\&_picture\]\:block picture{
  display: block;
}
.\[\&_picture\]\:w-360 picture{
  width: 360rem;
}
.\[\&_picture\]\:overflow-hidden picture{
  overflow: hidden;
}
.\[\&_picture\]\:rounded-l-32 picture{
  border-top-left-radius: 32rem;
  border-bottom-left-radius: 32rem;
}
@media (min-width: 768px){
  .md\:\[\&_picture\]\:w-full picture{
    width: 100%;
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_picture\]\:h-640 picture{
    height: 640rem;
  }
  .pc\:\[\&_picture\]\:w-full picture{
    width: 100%;
  }
}
.\[\&_sup\]\:ml-4 sup{
  margin-left: 4rem;
}
.\[\&_sup\]\:inline-block sup{
  display: inline-block;
}
.\[\&_sup\]\:translate-y-1 sup{
  --tw-translate-y: 1rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.\[\&_sup\]\:text-10 sup{
  font-size: 10rem;
}
@media (min-width: 768px){
  .md\:\[\&_sup\]\:-translate-y-8 sup{
    --tw-translate-y: -8rem;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
}
@media (min-width: 1272px){
  .pc\:\[\&_sup\]\:ml-8 sup{
    margin-left: 8rem;
  }
  .pc\:\[\&_sup\]\:text-12 sup{
    font-size: 12rem;
  }
}
