/*
 Theme Name: recs-lp_production
*/ 


/* Document
 * ========================================================================== */

/**
 * Add border box sizing in all browsers (opinionated).
 */

 *,
 ::before,
 ::after {
   box-sizing: border-box;
 }
 
 /**
  * 1. Add text decoration inheritance in all browsers (opinionated).
  * 2. Add vertical alignment inheritance in all browsers (opinionated).
  */
 
 ::before,
 ::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */
 }
 
 /**
  * 1. Use the default cursor in all browsers (opinionated).
  * 2. Change the line height in all browsers (opinionated).
  * 3. Use a 4-space tab width in all browsers (opinionated).
  * 4. Remove the grey highlight on links in iOS (opinionated).
  * 5. Prevent adjustments of font size after orientation changes in
  *    IE on Windows Phone and in iOS.
  * 6. Breaks words to prevent overflow in all browsers (opinionated).
  */
 
 html {
  cursor: default;
  /* 1 */
  line-height: 1.5;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
   -o-tab-size: 4;
  tab-size: 4;
  /* 3 */
  -webkit-tap-highlight-color: transparent
    /* 4 */
  ;
  -ms-text-size-adjust: 100%;
  /* 5 */
  -webkit-text-size-adjust: 100%;
  /* 5 */
  word-break: break-word;
  /* 6 */
 }
 
 /* Sections
  * ========================================================================== */
 
 /**
  * Remove the margin in all browsers (opinionated).
  */
 
 body {
   margin: 0;
 }
 
 /**
  * Correct the font size and margin on `h1` elements within `section` and
  * `article` contexts in Chrome, Edge, Firefox, and Safari.
  */
 
 h1 {
   font-size: 2em;
   margin: 0.67em 0;
 }
 
 /* Grouping content
  * ========================================================================== */
 
 /**
  * Remove the margin on nested lists in Chrome, Edge, IE, and Safari.
  */
 
 dl dl,
 dl ol,
 dl ul,
 ol dl,
 ul dl {
   margin: 0;
 }
 
 /**
  * Remove the margin on nested lists in Edge 18- and IE.
  */
 
 ol ol,
 ol ul,
 ul ol,
 ul ul {
   margin: 0;
 }
 
 /**
  * 1. Add the correct sizing in Firefox.
  * 2. Show the overflow in Edge 18- and IE.
  */
 
 hr {
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
 }
 
 /**
  * Add the correct display in IE.
  */
 
 main {
   display: block;
  max-width: 1200px;
  margin: 0 auto;
 }
 
 /**
  * Remove the list style on navigation lists in all browsers (opinionated).
  */
 
 nav ol,
 nav ul {
   list-style: none;
   padding: 0;
 }
 
 /**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
 
 pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
 }
 
 /* Text-level semantics
  * ========================================================================== */
 
 /**
  * Remove the gray background on active links in IE 10.
  */
 
 a {
   background-color: transparent;
 }
 
 /**
  * Add the correct text decoration in Edge 18-, IE, and Safari.
  */
 
 abbr[title] {
   text-decoration: underline;
   -webkit-text-decoration: underline dotted;
           text-decoration: underline dotted;
 }
 
 /**
  * Add the correct font weight in Chrome, Edge, and Safari.
  */
 
 b,
 strong {
   font-weight: bolder;
 }
 
 /**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
 
 code,
 kbd,
 samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
 }
 
 /**
  * Add the correct font size in all browsers.
  */
 
 small {
   font-size: 80%;
 }
 
 /* Embedded content
  * ========================================================================== */
 
 /*
  * Change the alignment on media elements in all browsers (opinionated).
  */
 
 audio,
 canvas,
 iframe,
 img,
 svg,
 video {
   vertical-align: middle;
 }
 
 /**
  * Add the correct display in IE 9-.
  */
 
 audio,
 video {
   display: inline-block;
 }
 
 /**
  * Add the correct display in iOS 4-7.
  */
 
 audio:not([controls]) {
   display: none;
   height: 0;
 }
 
 /**
  * Remove the border on iframes in all browsers (opinionated).
  */
 
 iframe {
   border-style: none;
 }
 
 /**
  * Remove the border on images within links in IE 10-.
  */
 
 img {
   border-style: none;
 }
 
 /**
  * Change the fill color to match the text color in all browsers (opinionated).
  */
 
 svg:not([fill]) {
   fill: currentColor;
 }
 
 /**
  * Hide the overflow in IE.
  */
 
 svg:not(:root) {
   overflow: hidden;
 }
 
 /* Tabular data
  * ========================================================================== */
 
 /**
  * Collapse border spacing in all browsers (opinionated).
  */
 
 table {
   border-collapse: collapse;
 }
 
 /* Forms
  * ========================================================================== */
 
 /**
  * Remove the margin on controls in Safari.
  */
 
 button,
 input,
 select {
   margin: 0;
 }

input,
textarea,
select {
  background-color: rgba(0, 0, 0, 0);
  border: solid 1px var(--black-ink-ultrapale);
  -webkit-appearance: none;
  appearance: none;
 }

option {
  background-color: var(--body-background-color);
  color: var(--black-ink);
  -webkit-appearance: none;
  appearance: none;
}

input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: none;
  border: solid 1px var(--black-ink);
 }
 
 /**
  * 1. Show the overflow in IE.
  * 2. Remove the inheritance of text transform in Edge 18-, Firefox, and IE.
  */
 
 button {
  overflow: visible;
  /* 1 */
  text-transform: none;
  /* 2 */
 }
 
 /**
  * Correct the inability to style buttons in iOS and Safari.
  */
 
 button,
 [type="button"],
 [type="reset"],
 [type="submit"] {
   -webkit-appearance: button;
 }
 
 /**
  * 1. Change the inconsistent appearance in all browsers (opinionated).
  * 2. Correct the padding in Firefox.
  */
 
 fieldset {
  border: 1px solid #a0a0a0;
  /* 1 */
  padding: 0.35em 0.75em 0.625em;
  /* 2 */
 }
 
 /**
  * Show the overflow in Edge 18- and IE.
  */
 
 input {
   overflow: visible;
 }
 
 /**
  * 1. Correct the text wrapping in Edge 18- and IE.
  * 2. Correct the color inheritance from `fieldset` elements in IE.
  */
 
 legend {
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  white-space: normal;
  /* 1 */
 }
 
 /**
  * 1. Add the correct display in Edge 18- and IE.
  * 2. Add the correct vertical alignment in Chrome, Edge, and Firefox.
  */
 
 progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
 }
 
 /**
  * Remove the inheritance of text transform in Firefox.
  */
 
 select {
   text-transform: none;   
  -webkit-appearance: none;
  /* need for safari */
   position: relative;
 }

 .wrap_of-select {
  position: relative;
 }

 .wrap_of-select::after {
  content: "";
  position: absolute;
  right: .75em;
  /* background-image: url("asset/arrow-down.svg");
     background-repeat: no-repeat; */
  background-color: var(--black-ink-pale);
  -webkit-mask-image: url("asset/arrow-down.svg");
  mask-image: url("asset/arrow-down.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  width: .75em;
  height: .375em;
  pointer-events: none;
  top: 50%;
  transform: translate(0, -50%);
 }
 
 /**
  * 1. Remove the margin in Firefox and Safari.
  * 2. Remove the default vertical scrollbar in IE.
  * 3. Change the resize direction in all browsers (opinionated).
  */
 
 textarea {
  margin: 0;
  /* 1 */
  overflow: auto;
  /* 2 */
  resize: vertical;
  /* 3 */
 }
 
 /**
  * Remove the padding in IE 10-.
  */
 
 [type="checkbox"],
 [type="radio"] {
   padding: 0;
 }
 
 /**
  * 1. Correct the odd appearance in Chrome, Edge, and Safari.
  * 2. Correct the outline style in Safari.
  */
 
 [type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
 }
 
 /**
  * Correct the cursor style of increment and decrement buttons in Safari.
  */
 
 ::-webkit-inner-spin-button,
 ::-webkit-outer-spin-button {
   height: auto;
 }
 
 /**
  * Correct the text style of placeholders in Chrome, Edge, and Safari.
  */
 
 ::-webkit-input-placeholder {
   color: inherit;
   opacity: 0.54;
 }
 
 /**
  * Remove the inner padding in Chrome, Edge, and Safari on macOS.
  */
 
 ::-webkit-search-decoration {
   -webkit-appearance: none;
 }
 
 /**
  * 1. Correct the inability to style upload buttons in iOS and Safari.
  * 2. Change font properties to `inherit` in Safari.
  */
 
 ::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
 }
 
 /**
  * Remove the inner border and padding of focus outlines in Firefox.
  */
 
 ::-moz-focus-inner {
   border-style: none;
   padding: 0;
 }
 
 /**
  * Restore the focus outline styles unset by the previous rule in Firefox.
  */
 
 :-moz-focusring {
   outline: 1px dotted ButtonText;
 }
 
 /**
  * Remove the additional :invalid styles in Firefox.
  */
 
 :-moz-ui-invalid {
   box-shadow: none;
 }
 
 /* Interactive
  * ========================================================================== */
 
 /*
  * Add the correct display in Edge 18- and IE.
  */
 
 details {
   display: block;
 }
 
 /*
  * Add the correct styles in Edge 18-, IE, and Safari.
  */
 
 dialog {
   background-color: white;
   border: solid;
   color: black;
   display: block;
   height: -moz-fit-content;
   height: -webkit-fit-content;
   height: fit-content;
   left: 0;
   margin: auto;
   padding: 1em;
   position: absolute;
   right: 0;
   width: -moz-fit-content;
   width: -webkit-fit-content;
   width: fit-content;
 }
 
 dialog:not([open]) {
   display: none;
 }
 
 /*
  * Add the correct display in all browsers.
  */
 
 summary {
   display: list-item;
 }
 
 /* Scripting
  * ========================================================================== */
 
 /**
  * Add the correct display in IE 9-.
  */
 
 canvas {
   display: inline-block;
 }
 
 /**
  * Add the correct display in IE.
  */
 
 template {
   display: none;
 }
 
 /* User interaction
  * ========================================================================== */
 
 /*
  * 1. Remove the tapping delay in IE 10.
  * 2. Remove the tapping delay on clickable elements
       in all browsers (opinionated).
  */
 
 a,
 area,
 button,
 input,
 label,
 select,
 summary,
 textarea,
[tabindex] {
  /* 1 */
  touch-action: manipulation;
  /* 2 */
 }
 
 /**
  * Add the correct display in IE 10-.
  */
 
 [hidden] {
   display: none;
 }
 
 /* Accessibility
  * ========================================================================== */
 
 /**
  * Change the cursor on busy elements in all browsers (opinionated).
  */
 
 [aria-busy="true"] {
   cursor: progress;
 }
 
 /*
  * Change the cursor on control elements in all browsers (opinionated).
  */
 
 [aria-controls] {
   cursor: pointer;
 }
 
 /*
  * Change the cursor on disabled, not-editable, or otherwise
  * inoperable elements in all browsers (opinionated).
  */
 
 [aria-disabled="true"],
 [disabled] {
   cursor: not-allowed;
 }
 
 /*
  * Change the display on visually hidden accessible elements
  * in all browsers (opinionated).
  */
 
 [aria-hidden="false"][hidden] {
   display: inline;
   display: initial;
 }
 
 [aria-hidden="false"][hidden]:not(:focus) {
   clip: rect(0, 0, 0, 0);
   position: absolute;
 }
 
 /**
  * Swiper 4.5.1
  * Most modern mobile touch slider and framework with hardware accelerated transitions
  * http://www.idangero.us/swiper/
  *
  * Copyright 2014-2019 Vladimir Kharlampidi
  *
  * Released under the MIT License
  *
  * Released on: September 13, 2019
  */
 .swiper-container {
   margin-left: auto;
   margin-right: auto;
   position: relative;
   overflow: hidden;
   list-style: none;
   padding: 0;
   /* Fix of Webkit flickering */
   z-index: 1;
 }

 .swiper-container-no-flexbox .swiper-slide {
   float: left;
 }

.swiper-container-vertical>.swiper-wrapper {
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   -webkit-flex-direction: column;
   -ms-flex-direction: column;
   flex-direction: column;
 }

 .swiper-wrapper {
   position: relative;
   width: 100%;
   height: 100%;
   z-index: 1;
   display: -webkit-box;
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-transition-property: -webkit-transform;
   transition-property: -webkit-transform;
   -o-transition-property: transform;
   transition-property: transform;
   transition-property: transform, -webkit-transform;
   -webkit-box-sizing: content-box;
   box-sizing: content-box;
 }

 .swiper-container-android .swiper-slide,
 .swiper-wrapper {
   -webkit-transform: translate3d(0px, 0, 0);
   transform: translate3d(0px, 0, 0);
 }

.swiper-container-multirow>.swiper-wrapper {
   -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
 }

.swiper-container-free-mode>.swiper-wrapper {
   -webkit-transition-timing-function: ease-out;
   -o-transition-timing-function: ease-out;
   transition-timing-function: ease-out;
   margin: 0 auto;
 }

 .swiper-slide {
   -webkit-flex-shrink: 0;
   -ms-flex-negative: 0;
   flex-shrink: 0;
   width: 100%;
   height: 100%;
   position: relative;
   -webkit-transition-property: -webkit-transform;
   transition-property: -webkit-transform;
   -o-transition-property: transform;
   transition-property: transform;
   transition-property: transform, -webkit-transform;
 }

 .swiper-slide-invisible-blank {
   visibility: hidden;
 }

 /* Auto Height */
 .swiper-container-autoheight,
 .swiper-container-autoheight .swiper-slide {
   height: auto;
 }

 .swiper-container-autoheight .swiper-wrapper {
   -webkit-box-align: start;
   -webkit-align-items: flex-start;
   -ms-flex-align: start;
   align-items: flex-start;
   -webkit-transition-property: height, -webkit-transform;
   transition-property: height, -webkit-transform;
   -o-transition-property: transform, height;
   transition-property: transform, height;
   transition-property: transform, height, -webkit-transform;
 }

 /* 3D Effects */
 .swiper-container-3d {
   -webkit-perspective: 1200px;
   perspective: 1200px;
 }

 .swiper-container-3d .swiper-wrapper,
 .swiper-container-3d .swiper-slide,
 .swiper-container-3d .swiper-slide-shadow-left,
 .swiper-container-3d .swiper-slide-shadow-right,
 .swiper-container-3d .swiper-slide-shadow-top,
 .swiper-container-3d .swiper-slide-shadow-bottom,
 .swiper-container-3d .swiper-cube-shadow {
   -webkit-transform-style: preserve-3d;
   transform-style: preserve-3d;
 }

 .swiper-container-3d .swiper-slide-shadow-left,
 .swiper-container-3d .swiper-slide-shadow-right,
 .swiper-container-3d .swiper-slide-shadow-top,
 .swiper-container-3d .swiper-slide-shadow-bottom {
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   pointer-events: none;
   z-index: 10;
 }

 .swiper-container-3d .swiper-slide-shadow-left {
   background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
   background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
   background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
   background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
 }

 .swiper-container-3d .swiper-slide-shadow-right {
   background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
   background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
   background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
   background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
 }

 .swiper-container-3d .swiper-slide-shadow-top {
   background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
   background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
   background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
   background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
 }

 .swiper-container-3d .swiper-slide-shadow-bottom {
   background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
   background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
   background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
   background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
 }

 /* IE10 Windows Phone 8 Fixes */
 .swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal>.swiper-wrapper {
   -ms-touch-action: pan-y;
   touch-action: pan-y;
 }

 .swiper-container-wp8-vertical,
.swiper-container-wp8-vertical>.swiper-wrapper {
   -ms-touch-action: pan-x;
   touch-action: pan-x;
 }

 .swiper-button-prev,
 .swiper-button-next {
   position: absolute;
   top: 50%;
   width: 27px;
   height: 44px;
   margin-top: -22px;
   z-index: 10;
   cursor: pointer;
   background-size: 27px 44px;
   background-position: center;
   background-repeat: no-repeat;
 }

 .swiper-button-prev.swiper-button-disabled,
 .swiper-button-next.swiper-button-disabled {
   opacity: 0.35;
   cursor: auto;
   pointer-events: none;
 }

 .swiper-button-prev,
 .swiper-container-rtl .swiper-button-next {
   background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
   left: 10px;
   right: auto;
 }

 .swiper-button-next,
 .swiper-container-rtl .swiper-button-prev {
   background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
   right: 10px;
   left: auto;
 }

 .swiper-button-prev.swiper-button-white,
 .swiper-container-rtl .swiper-button-next.swiper-button-white {
   background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
 }

 .swiper-button-next.swiper-button-white,
 .swiper-container-rtl .swiper-button-prev.swiper-button-white {
   background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
 }

 .swiper-button-prev.swiper-button-black,
 .swiper-container-rtl .swiper-button-next.swiper-button-black {
   background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
 }

 .swiper-button-next.swiper-button-black,
 .swiper-container-rtl .swiper-button-prev.swiper-button-black {
   background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
 }

 .swiper-button-lock {
   display: none;
 }

 .swiper-pagination {
   position: absolute;
   text-align: center;
   -webkit-transition: 300ms opacity;
   -o-transition: 300ms opacity;
   transition: 300ms opacity;
   -webkit-transform: translate3d(0, 0, 0);
   transform: translate3d(0, 0, 0);
   z-index: 10;
 }

 .swiper-pagination.swiper-pagination-hidden {
   opacity: 0;
 }

 /* Common Styles */
 .swiper-pagination-fraction,
 .swiper-pagination-custom,
.swiper-container-horizontal>.swiper-pagination-bullets {
   bottom: 10px;
   left: 0;
   width: 100%;
 }

 /* Bullets */
 .swiper-pagination-bullets-dynamic {
   overflow: hidden;
   font-size: 0;
 }

 .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
   -webkit-transform: scale(0.33);
   -ms-transform: scale(0.33);
   transform: scale(0.33);
   position: relative;
 }

 .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
   -webkit-transform: scale(1);
   -ms-transform: scale(1);
   transform: scale(1);
 }

 .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
   -webkit-transform: scale(1);
   -ms-transform: scale(1);
   transform: scale(1);
 }

 .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
   -webkit-transform: scale(0.66);
   -ms-transform: scale(0.66);
   transform: scale(0.66);
 }

 .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
   -webkit-transform: scale(0.33);
   -ms-transform: scale(0.33);
   transform: scale(0.33);
 }

 .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
   -webkit-transform: scale(0.66);
   -ms-transform: scale(0.66);
   transform: scale(0.66);
 }

 .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
   -webkit-transform: scale(0.33);
   -ms-transform: scale(0.33);
   transform: scale(0.33);
 }

 .swiper-pagination-bullet {
   width: 8px;
   height: 8px;
   display: inline-block;
   border-radius: 100%;
   background: #000;
   opacity: 0.2;
 }

 button.swiper-pagination-bullet {
   border: none;
   margin: 0;
   padding: 0;
   -webkit-box-shadow: none;
   box-shadow: none;
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
 }

 .swiper-pagination-clickable .swiper-pagination-bullet {
   cursor: pointer;
 }

 .swiper-pagination-bullet-active {
   opacity: 1;
   background: #007aff;
 }

.swiper-container-vertical>.swiper-pagination-bullets {
   right: 10px;
   top: 50%;
   -webkit-transform: translate3d(0px, -50%, 0);
   transform: translate3d(0px, -50%, 0);
 }

.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
   margin: 6px 0;
   display: block;
 }

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
   top: 50%;
   -webkit-transform: translateY(-50%);
   -ms-transform: translateY(-50%);
   transform: translateY(-50%);
   width: 8px;
 }

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
   display: inline-block;
   -webkit-transition: 200ms top, 200ms -webkit-transform;
   transition: 200ms top, 200ms -webkit-transform;
   -o-transition: 200ms transform, 200ms top;
   transition: 200ms transform, 200ms top;
   transition: 200ms transform, 200ms top, 200ms -webkit-transform;
 }

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
   margin: 0 4px;
 }

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
   left: 50%;
   -webkit-transform: translateX(-50%);
   -ms-transform: translateX(-50%);
   transform: translateX(-50%);
   white-space: nowrap;
 }

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
   -webkit-transition: 200ms left, 200ms -webkit-transform;
   transition: 200ms left, 200ms -webkit-transform;
   -o-transition: 200ms transform, 200ms left;
   transition: 200ms transform, 200ms left;
   transition: 200ms transform, 200ms left, 200ms -webkit-transform;
 }

.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
   -webkit-transition: 200ms right, 200ms -webkit-transform;
   transition: 200ms right, 200ms -webkit-transform;
   -o-transition: 200ms transform, 200ms right;
   transition: 200ms transform, 200ms right;
   transition: 200ms transform, 200ms right, 200ms -webkit-transform;
 }

 /* Progress */
 .swiper-pagination-progressbar {
   background: rgba(0, 0, 0, 0.25);
   position: absolute;
 }

 .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
   background: #007aff;
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   -webkit-transform: scale(0);
   -ms-transform: scale(0);
   transform: scale(0);
   -webkit-transform-origin: left top;
   -ms-transform-origin: left top;
   transform-origin: left top;
 }

 .swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
   -webkit-transform-origin: right top;
   -ms-transform-origin: right top;
   transform-origin: right top;
 }

.swiper-container-horizontal>.swiper-pagination-progressbar,
.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
   width: 100%;
   height: 4px;
   left: 0;
   top: 0;
 }

.swiper-container-vertical>.swiper-pagination-progressbar,
.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
   width: 4px;
   height: 100%;
   left: 0;
   top: 0;
 }

 .swiper-pagination-white .swiper-pagination-bullet-active {
   background: #ffffff;
 }

 .swiper-pagination-progressbar.swiper-pagination-white {
   background: rgba(255, 255, 255, 0.25);
 }

 .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
   background: #ffffff;
 }

 .swiper-pagination-black .swiper-pagination-bullet-active {
   background: #000000;
 }

 .swiper-pagination-progressbar.swiper-pagination-black {
   background: rgba(0, 0, 0, 0.25);
 }

 .swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
   background: #000000;
 }

 .swiper-pagination-lock {
   display: none;
 }

 /* Scrollbar */
 .swiper-scrollbar {
   border-radius: 10px;
   position: relative;
   -ms-touch-action: none;
   background: rgba(0, 0, 0, 0.1);
 }

.swiper-container-horizontal>.swiper-scrollbar {
   position: absolute;
   left: 1%;
   bottom: 3px;
   z-index: 50;
   height: 5px;
   width: 98%;
 }

.swiper-container-vertical>.swiper-scrollbar {
   position: absolute;
   right: 3px;
   top: 1%;
   z-index: 50;
   width: 5px;
   height: 98%;
 }

 .swiper-scrollbar-drag {
   height: 100%;
   width: 100%;
   position: relative;
   background: rgba(0, 0, 0, 0.5);
   border-radius: 10px;
   left: 0;
   top: 0;
 }

 .swiper-scrollbar-cursor-drag {
   cursor: move;
 }

 .swiper-scrollbar-lock {
   display: none;
 }

 .swiper-zoom-container {
   width: 100%;
   height: 100%;
   display: -webkit-box;
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: center;
   -webkit-justify-content: center;
   -ms-flex-pack: center;
   justify-content: center;
   -webkit-box-align: center;
   -webkit-align-items: center;
   -ms-flex-align: center;
   align-items: center;
   text-align: center;
 }

.swiper-zoom-container>img,
.swiper-zoom-container>svg,
.swiper-zoom-container>canvas {
   max-width: 100%;
   max-height: 100%;
   -o-object-fit: contain;
   object-fit: contain;
 }

 .swiper-slide-zoomed {
   cursor: move;
 }

 /* Preloader */
 .swiper-lazy-preloader {
   width: 42px;
   height: 42px;
   position: absolute;
   left: 50%;
   top: 50%;
   margin-left: -21px;
   margin-top: -21px;
   z-index: 10;
   -webkit-transform-origin: 50%;
   -ms-transform-origin: 50%;
   transform-origin: 50%;
   -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
   animation: swiper-preloader-spin 1s steps(12, end) infinite;
 }

 .swiper-lazy-preloader:after {
   display: block;
   content: '';
   width: 100%;
   height: 100%;
   background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
   background-position: 50%;
   background-size: 100%;
   background-repeat: no-repeat;
 }

 .swiper-lazy-preloader-white:after {
   background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
 }

 @-webkit-keyframes swiper-preloader-spin {
   100% {
     -webkit-transform: rotate(360deg);
     transform: rotate(360deg);
   }
 }

 @keyframes swiper-preloader-spin {
   100% {
     -webkit-transform: rotate(360deg);
     transform: rotate(360deg);
   }
 }

 /* a11y */
 .swiper-container .swiper-notification {
   position: absolute;
   left: 0;
   top: 0;
   pointer-events: none;
   opacity: 0;
   z-index: -1000;
 }

 .swiper-container-fade.swiper-container-free-mode .swiper-slide {
   -webkit-transition-timing-function: ease-out;
   -o-transition-timing-function: ease-out;
   transition-timing-function: ease-out;
 }

 .swiper-container-fade .swiper-slide {
   pointer-events: none;
   -webkit-transition-property: opacity;
   -o-transition-property: opacity;
   transition-property: opacity;
 }

 .swiper-container-fade .swiper-slide .swiper-slide {
   pointer-events: none;
 }

 .swiper-container-fade .swiper-slide-active,
 .swiper-container-fade .swiper-slide-active .swiper-slide-active {
   pointer-events: auto;
 }

 .swiper-container-cube {
   overflow: visible;
 }

 .swiper-container-cube .swiper-slide {
   pointer-events: none;
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
   z-index: 1;
   visibility: hidden;
   -webkit-transform-origin: 0 0;
   -ms-transform-origin: 0 0;
   transform-origin: 0 0;
   width: 100%;
   height: 100%;
 }

 .swiper-container-cube .swiper-slide .swiper-slide {
   pointer-events: none;
 }

 .swiper-container-cube.swiper-container-rtl .swiper-slide {
   -webkit-transform-origin: 100% 0;
   -ms-transform-origin: 100% 0;
   transform-origin: 100% 0;
 }

 .swiper-container-cube .swiper-slide-active,
 .swiper-container-cube .swiper-slide-active .swiper-slide-active {
   pointer-events: auto;
 }

 .swiper-container-cube .swiper-slide-active,
 .swiper-container-cube .swiper-slide-next,
 .swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next+.swiper-slide {
   pointer-events: auto;
   visibility: visible;
 }

 .swiper-container-cube .swiper-slide-shadow-top,
 .swiper-container-cube .swiper-slide-shadow-bottom,
 .swiper-container-cube .swiper-slide-shadow-left,
 .swiper-container-cube .swiper-slide-shadow-right {
   z-index: 0;
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .swiper-container-cube .swiper-cube-shadow {
   position: absolute;
   left: 0;
   bottom: 0px;
   width: 100%;
   height: 100%;
   background: #000;
   opacity: 0.6;
   -webkit-filter: blur(50px);
   filter: blur(50px);
   z-index: 0;
 }

 .swiper-container-flip {
   overflow: visible;
 }

 .swiper-container-flip .swiper-slide {
   pointer-events: none;
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
   z-index: 1;
 }

 .swiper-container-flip .swiper-slide .swiper-slide {
   pointer-events: none;
 }

 .swiper-container-flip .swiper-slide-active,
 .swiper-container-flip .swiper-slide-active .swiper-slide-active {
   pointer-events: auto;
 }

 .swiper-container-flip .swiper-slide-shadow-top,
 .swiper-container-flip .swiper-slide-shadow-bottom,
 .swiper-container-flip .swiper-slide-shadow-left,
 .swiper-container-flip .swiper-slide-shadow-right {
   z-index: 0;
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .swiper-container-coverflow .swiper-wrapper {
   /* Windows 8 IE 10 fix */
   -ms-perspective: 1200px;
 }
 
 :root {
     font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, Segoe UI, Hiragino Kaku Gothic ProN, Hiragino Sans, ヒラギノ角ゴ ProN W3, Arial, メイリオ, Meiryo, sans-serif;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, メイリオ, sans-serif;
     font-feature-settings: "palt";
     letter-spacing: .075rem;
     /* text-align: justify; */   
 
     --content-width-min: 320px;
  --content-width-max: 1920px;
  --content-width-max-half: 960px;
 
     --brand-color: #0177FF;
     --black-ink: #222528;
     --black-ink-pale: #555C66;
     --black-ink-ultrapale: #f9f9f9;
 
     --header-height: 4.5rem;
     font-size: 81.25%;
     line-height: 1.625
 }
 
 @media (min-width: 375px) {
 
 :root {        
         font-size: 87.5%
 }       
     }
 
 @media (min-width: 375px) {
 
 :root {        
         font-size: 93.75%
 }       
     }
 
 @media (min-width: 768px) {
 
 :root {        
         font-size: 100%
 }
     }
 
 @media (min-width: 992px) {
 
 :root {
         font-size: 106.25%
 }
     }
 
 @media (min-width: 1200px) {
 
 :root {
         font-size: 112.5%
 }
     }
 
_::-webkit-full-page-media,
_:future,
:root {
     font-feature-settings: "pkna";
 }
 
_::-webkit-full-page-media,
_:future,
:root input[type="search"] {
   -webkit-appearance: none;
 }
 
 /*
 _::-webkit-full-page-media, _:future, :root input[type="search"]::-webkit-search-decoration {
   display: none;
 }
 */
 
 button,
 /* input, 20200714
 select,
 textarea, */
pre,
textarea,
input,
label,
select {
     font-family: inherit;    
     font-size: inherit;
 }
 
 /* 20200714 */
input,
select,
textarea {
   font-size: 16px;
 }
 
 @media (min-width: 992px) {
 
  input,
  select,
  textarea {
           font-size: 17px;
       
   }
       }
   
   @media (min-width: 1200px) {
   
  input,
  select,
  textarea {
           font-size: 18px;
       
   }
       }
 
 
 h1,
 h2,
 h3 {
     color: #222528;
     color: var(--black-ink);
 }
 
 p,
 a,
 li,
 pre,
 th,
 td,
 label,
 input,
 textarea,
 select,
  address,
 small,
 dt,
 dd {
     color: #555C66;
     color: var(--black-ink-pale);
 }
 
 .edge {
     padding-left: 1.25rem;
     padding-right: 1.25rem
 }
 
 @media(min-width: 576px) {
 
 .edge {
         padding-left: 1.5rem;
         padding-right: 1.5rem
 }
     }
 
 @media(min-width: 768px) {
 
 .edge {
         padding-left: 1.75rem;
         padding-right: 1.75rem
 }        
     }
 
 @media(min-width: 992px) {
 
 .edge {
         padding-left: 2rem;
         padding-right: 2rem
 }        
     }
 
 .bg-overflow {
     background-size: cover;
     background-position: center
 }
 
@media (min-width: 1920px) {
 
 .bg-overflow {
    margin-left: calc(-50vw + var(--content-width-max-half));
    margin-right: calc(-50vw + var(--content-width-max-half));
    padding-left: calc(50vw - var(--content-width-max-half));
    padding-right: calc(50vw - var(--content-width-max-half))
  }
}
   
@media (min-width: 1200px) {
  main .bg-overflow {
  margin-left: calc(-50vw + 600px);
  margin-right: calc(-50vw + 600px);
  padding-left: calc(50vw - 600px);
    padding-right: calc(50vw - 600px)
 }        

     }
 
 body {
     overflow-x: hidden;
     width: 100%;
     max-width: var(--content-width-max);
     margin: 0 auto;
 }
 
 
 /* デフォルトのボタンデザイン */
button,
a.button {
     -webkit-appearance: none;
        -moz-appearance: none;
             appearance: none;
     display: block;
     color: var(--button-color);
     background-color: #0177FF;
     background-color: var(--brand-color);
     padding: 1rem 2rem;    
     border: none;
     outline: none;
     cursor: pointer;
     border-radius: 9999px;
     -webkit-transition: opacity .25s;
     transition: opacity .25s;
     box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.5);
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.2);
     text-align: center
 }

button:hover,
a.button:hover {
         opacity: 0.75;
     }

button:active,
a.button:active {
         box-shadow: none;
         -webkit-transform: translateY(1px);
                 transform: translateY(1px);
     }
 
 /* デフォルトのimg */
 img {
     vertical-align: bottom;
 }
 
 /* デフォルトのul */
 ul {
     list-style: none;
     padding-left: 0;
 }
 
 /* デフォルトのaタグ */
 a {
     text-decoration: none;
     -webkit-transition: opacity .25s;
     transition: opacity .25s
 }

 a:hover {
         opacity: 0.5;
     }
 
 /* 任意表示のh1 */
 h1.optional {
   font-size: 1.5rem;	
 }
 
 /* L字型見出し用飾り線 */
  .l-shaped {
   display: inline-block;
   border-left: solid 0.5rem #0177FF;
   border-left: solid 0.5rem var(--brand-color);
   border-bottom: solid 1px #0177FF;
   border-bottom: solid 1px var(--brand-color);
   padding: 0 1rem;
   margin-left: 1rem;
 }
 
 /* 拍子木型見出し用飾り */
 .clapper {
   display: inline-block;
   border-left: solid 0.25rem #0177FF;
   border-left: solid 0.25rem var(--brand-color);	
   padding-left: 0.5rem;	
 }
 
 
 /* バー型字型見出し用飾り線 */
 .rod {
     color: #555C66;
     color: var(--black-ink);
     padding: 1rem 1.25rem;
     text-align: center;
     /* border: 1px lightgrey;
     border-style: none none solid none; */
     position: relative;
     margin-top: 0;
     background-color: #f9f9f9;
     border-bottom: solid 1px var(--black-ink-ultrapale);
     background-color: var(--black-ink-ultimatepale);
 /*
     &::before {
         left: 0;
         top: 0;
         display: block;
         position: absolute;
         content: '';
         width: 100%;
         height: 100%;
         background-color: var(--brand-color);
         opacity: .075;
     } */
 }
 
 h1.rod {
     font-size: 1.5rem;
 }
 
 /* 2等分 */
 .bisect {
     display: -webkit-box;
     display: flex;
     -webkit-box-orient: vertical;
     -webkit-box-direction: normal;
             flex-direction: column;
     -webkit-box-align: center;
             align-items: center
 }

.bisect>div {
         width: 100%;
         min-height: 0%
     }

.bisect>div>img {
             width: 100%;
         }

 @media (min-width: 768px) {
 .bisect {
         -webkit-box-orient: horizontal;
         -webkit-box-direction: normal;
                 flex-direction: row
 }

  .bisect>div {
             min-width: 0;        
             width: 50%;  
         }
     }
 
 /* ページネーション */
 .page-numbers {
     display: -webkit-box;
     display: flex;
     -webkit-box-pack: center;
             justify-content: center
 }

.page-numbers>li {
         padding: .5rem 1rem
     }

.page-numbers>li:not(:last-of-type) {
             border-right: solid 1px var(--black-ink-ultrapale);            
         }

.page-numbers>li .current {
             color: #0177FF;
             color: var(--brand-color);
         }
 
 p.found {
     text-align: center;
     margin: auto;
     margin-top: 0.75rem;
     margin-bottom: 0.75rem;
 }
 
 
 header {
     --color: inherit;
     --background-color: inherit;
 
     height: var(--header-height);
     box-sizing: content-box;
     position: relative;
     z-index: 9999;
     color: var(--color);
     background-color: var(--background-color);
     border-top: solid 3px var(--brand-color);
     border-bottom: solid 1px var(--black-ink-ultrapale);
 }
 
 header .switch-layout {
         /* padding: 0 2rem 0 1.5rem; */
     }
 
 header h1 {
         color: inherit;
         margin: 1rem 0;
         display: -webkit-box;
         display: flex;
         -webkit-box-align: center;
                 align-items: center
     }
 
 header h1 a {
             color: inherit;
             display: block;
             max-height: 2.5rem;            
             font-size: 1.17rem;
             line-height: 2.2
         }
 
 @media (min-width: 576px) {
 
     header h1 a {        
                 font-size: 1.4rem;
                 line-height: 1.8
         }
             }
 
 @media (min-width: 768px) {
 
     header h1 a {        
                 font-size: 1.5rem;
                 line-height: 1.6
         }
             }
 
 header h1 a img {
                 display: block;
                 max-height: 2.5rem;
                 max-width: calc(100vw - var(--header-height) - 1rem);
             }
 
 header nav {
         -webkit-transition: top 0.5s, opacity 0.5s;
         transition: top 0.5s, opacity 0.5s;
         background-color: var(--brand-color);
         position: fixed;
         left: 0;
         right: 0;
         top: calc(-100% + var(--header-height));
         opacity: 0
     }
 
 header nav.show {
             top: var(--header-height);
             opacity: 1;
         }
 
 header nav ul {
             margin: 0;
             display: -webkit-box;
             display: flex;
             -webkit-box-orient: vertical;
             -webkit-box-direction: normal;
                     flex-direction: column;
             -webkit-box-align: end;
                     align-items: flex-end
             /* align-items: center; */
         }
 
 header nav ul li {                
                 padding: 1.5rem
             }
 
 header nav ul li a {
                     font-size: .9375rem;
                     color: white;
                 }
 
 header .toggle {
         position: absolute;
         top: 0;
         right: 0;
         width: var(--header-height);
         height: var(--header-height);
         text-align: center;
         line-height: 32px;
         -webkit-transition: background-color .5s;
         transition: background-color .5s;
         display: -webkit-box;
         display: flex;
         -webkit-box-pack: center;
                 justify-content: center;
         -webkit-box-align: center;
                 align-items: center
     }
 
 header .toggle::before {
             content: "\e902";
             font-family: icomoon;
             font-size: 2rem; 
         }
 
 header .toggle.on::before {
             color: white;
             content: "\e900";
         }
 
 header .toggle.on {
             background-color: var(--brand-color);
         }
 
  header .switch-layout {            
      display: -webkit-box;            
      display: flex;
      height: var(--header-height);
  }

 @media (min-width: 768px) {
 
     header {
         height: auto
 } 

             header .switch-layout.column {
                 -webkit-box-orient: vertical;
                 -webkit-box-direction: normal;
                         flex-direction: column;
                 -webkit-box-align: start;
                         align-items: flex-start;
    height: auto;
    max-width: 1200px;
    margin: 0 auto;
             }
 
                 header .switch-layout.column h1 {
                     margin-bottom: 0;
                 }
 
             header .switch-layout.row {
                 -webkit-box-orient: horizontal;
                 -webkit-box-direction: normal;
                         flex-direction: row;
                 -webkit-box-align: center;
                         align-items: center;
                 -webkit-box-pack: justify;
                         justify-content: space-between;
             }
     }
 
 @media (min-width: 768px) and (min-width: 768px) {            
 
             header .switch-layout nav {
                     display: block
             }
 
                     header .switch-layout nav ul {
                         display: -webkit-box;
                         display: flex;
                         margin: .75rem 0
                     }
 
                         header .switch-layout nav ul li {
                             padding: 0;
                             color: inherit
                         }

                             header .switch-layout nav ul li:not(:last-of-type) {
                                 margin-right: 1rem;
                             }

                             header .switch-layout nav ul li a {
                                 font-size: .75rem;
                                 color: inherit;
                             }
                 }
 
 @media (min-width: 768px) {
 
         header nav {
             position: static;
             display: block;
             opacity: 1;
             background-color: transparent
         }
 
             header nav ul {
                 -webkit-box-orient: horizontal;
                 -webkit-box-direction: normal;
                         flex-direction: row
             }

                     header nav ul li:not(:last-of-type) {
                         margin-right: 1rem;
                     }
 
         header>.toggle {
             display: none;
         }
     }

 footer {
     --color: var(--black-ink);
     --background-color: white;
 
     color: var(--color);
     background-color: var(--background-color);
     border-top: solid 1px var(--black-ink-ultrapale);
     padding: 1.5rem 0
 }
 
 footer a {
         color: inherit;
         text-decoration: none;
         list-style: none;
     }
 
 footer .sns {
         display: -webkit-box;
         display: flex;
         -webkit-box-pack: center;
                 justify-content: center;
         margin-bottom: 2rem
     }
 
 footer .sns a {
             margin: 0 1rem;
             width: 2rem;
             font-size: 2rem;
         }
 
 @media(min-width: 768px) {
 
 footer .bisect {
             -webkit-box-align: end;
                     align-items: flex-end
     }
         }
 
footer .bisect>* {
             display: -webkit-box;
             display: flex;
             -webkit-box-pack: center;
                     justify-content: center;
             -webkit-box-align: center;
                     align-items: center;
         }
 
 footer address {
         color: inherit;
         font-style: normal;
         text-align: center;
         font-size: 12px;
     }
 
footer nav>ul {
 
             display: -webkit-box;
 
             display: flex;
             -webkit-box-orient: vertical;
             -webkit-box-direction: normal;
                     flex-direction: column;
             -webkit-box-align: center;
                     align-items: center;
             -webkit-box-pack: center;
                     justify-content: center;
             margin-bottom: 2rem
         }
 
footer nav>ul>li {
                 color: inherit;
             }
 
 @media(min-width: 375px) {
  
  footer nav>ul {
             margin-left: auto;
             margin-right: auto;
             display: grid;
             display: -ms-inline-grid;
             grid-template-columns: auto auto;
             -ms-grid-columns: auto auto;             
             -ms-grid-rows: auto;
         }

  footer nav>ul>li:nth-of-type(odd) {
                                 margin-right: 2rem;
                             }

  footer nav>ul>li:nth-of-type(1) {
                              -ms-grid-column: 1;
                              -ms-grid-row: 1;
                              -ms-grid-column-span: 1;                               
                             }

  footer nav>ul>li:nth-of-type(2) {
                              -ms-grid-column: 2;
                              -ms-grid-row: 1;
                              -ms-grid-column-span: 1;                               
                             }

  footer nav>ul>li:nth-of-type(3) {
                              -ms-grid-column: 1;
                              -ms-grid-row: 2;
                              -ms-grid-column-span: 1;                               
                             }

  footer nav>ul>li:nth-of-type(4) {
                              -ms-grid-column: 2;
                              -ms-grid-row: 2;
                              -ms-grid-column-span: 1;                               
                             }

  footer nav>ul>li:nth-of-type(5) {
                              -ms-grid-column: 1;
                              -ms-grid-row: 3;
                              -ms-grid-column-span: 1;                               
                             }

  footer nav>ul>li:nth-of-type(6) {
                              -ms-grid-column: 2;
                              -ms-grid-row: 3;
                              -ms-grid-column-span: 1;                               
                             }

  _:-ms-lang(x)::-ms-backdrop,
  footer nav {
                               text-align: center;
                             }
             }
 
 @media(min-width: 375px) and (max-width: 768px) { 
  footer nav>ul>li>a {
                         font-size: 0.875rem
                 }
                     }
 
 @media(min-width: 768px) {
 
  footer nav>ul {
                 display: -webkit-box;
                 display: flex;
                 -webkit-box-orient: horizontal;
                 -webkit-box-direction: normal;
                         flex-direction: row
         }                
                 
  footer nav>ul>li {
                     width: auto
                 }

  footer nav>ul>li:nth-of-type(odd) {
                         margin-right: 0;
                     }

  footer nav>ul>li:not(:last-of-type) {
                         margin-right: 2rem;
                     }
             }
 
 footer>#scroll_top {
         text-align: center;
         line-height: 1.825rem;
         border-radius: 3rem;
         width: 3rem;
         height: 3rem;
         position: fixed;
         right: 1rem;
         bottom: 1rem;
         background-color: rgba(0, 0, 0, .5);
         opacity: 0;
         pointer-events: none;
         -webkit-transition: opacity 0.5s;
         transition: opacity 0.5s;
         z-index: 9999
     }
 
 footer>#scroll_top>img {
             width: 1.5rem;
         }
 
 footer>#scroll_top.show {
             opacity: 0.75;
             pointer-events: auto;
         }
 

 
.pr .hero>* {
             width: 100%;
         }                                      

 @media(min-width: 1200px) {                                      
             .pr .hero._100vw {
    padding-right: calc(50vw - 600px)
         }                                      

  .pr .hero._100vw>* {
    margin-right: calc(600px - 50vw);
    margin-left: calc(600px - 50vw);
                     width: 100vw;
                 }  
             }                                      

 .pr h1 {
         font-size: 1.25rem;
         font-size: 1rem;
         font-weight: 400;
     }                                      

 .pr h2.rod {
         margin-top: 0;
         margin-bottom: 5rem;
         font-size: 1.25rem;
         font-weight: normal;
         font-weight: 400;         
     }                                      

 .pr h3 {
         font-size: 1.5rem;        
         font-weight: 600;         
     }                                      

 .pr .bisect {    
 
         margin-bottom: 5rem;
         -webkit-box-orient: vertical;
         -webkit-box-direction: reverse;
                 flex-direction: column-reverse
     }                                      

 @media(min-width: 768px) {                                      
             .pr .bisect {
             margin-left: -1rem;
             margin-right: -1rem;  
             -webkit-box-orient: horizontal;  
             -webkit-box-direction: normal;  
                     flex-direction: row
     }  
         }                                      

 @media (min-width: 768px) {                                      
             .pr .bisect:nth-of-type(even) {
                 -webkit-box-orient: horizontal;
                 -webkit-box-direction: reverse;
                         flex-direction: row-reverse
         }           
             }                                      

 @media (min-width: 768px) {                                      
  .pr .bisect>div {
                 margin: 0 1rem            
         }
             }                                      

.pr .bisect>div:nth-of-type(2) {
             margin-bottom: 1.5rem
         }                                      

 @media(min-width: 768px) {                                      
  .pr .bisect>div:nth-of-type(2) {
                 margin-bottom: 0
         }                
             }
   
   .joblist a.button {
     max-width: 32rem;
     margin: 0 auto;
   }

 .joblist a.button.link2archive {
     margin: 2rem auto 5rem auto;		
   }
 
 
   .thumbs h2 {
     text-align: center;
       font-size: 1.17rem;
   }

 .thumbs .swiper-container2 {
     width: 100%;
     overflow: hidden;
   }

 .thumbs ul {
     display: -webkit-box;
     display: flex;
     margin-bottom: 2rem
   }

 @media(min-width: 576px) {
     .thumbs ul {
       -webkit-box-pack: center;
               justify-content: center
   }
     }

 .thumbs ul li:not(:last-of-type) {
       margin-right: 1rem;
     }

 .thumbs ul li a {
       display: block;
     }

 .thumbs ul li {
     width: calc(100% / 1.1 - 1rem);
     flex-shrink: 0
   }

 @media(min-width: 576px) {
     .thumbs ul li {
       width: calc(100% / 3 - 2rem)
   }			
     }

 .thumbs ul li div.crop {
       background-color: var(--black-ink-ultrapale);
       position: relative;
       overflow: hidden;
       padding-top: calc(3 / 4 * 100%)
     }

 .thumbs ul li div.crop img {
  -o-object-fit: cover;
  object-fit: cover;
         max-width: 100%;
         min-height: 100%;
         position: absolute;
         top: 50%;
         left: 50%;
         -webkit-transform: translate(-50%, -50%);
                 transform: translate(-50%, -50%);
       }

 .thumbs ul li p {
       margin-bottom: 0;
     }

 .thumbs a.button.link2archive {
     max-width: 32rem;
     margin: 0 auto 5rem auto;		
   }
 
   section.newslist h2 {
     text-align: center;
     font-size: 1.17rem;
   }

 section.newslist {
   margin-bottom: 5rem
 }

section.newslist>div {
     display: -webkit-box;
     display: flex;
     -webkit-box-pack: center;
             justify-content: center
   }

section.newslist>div ul {
       margin: 0
     }

section.newslist>div ul li {
         border-bottom: solid 1px var(--black-ink-ultrapale);
         padding-bottom: .25rem;
         margin-bottom: .5rem;
         
         position: relative
       }

section.newslist>div ul li a {
           display: block
         }

section.newslist>div ul li a span.date {
             display: block
           }

 @media(min-width: 768px) {
  section.newslist>div ul li a span.date {
               display: inline;
               margin-right: 3rem
           }
             }

section.newslist>div ul li a span.title {
             margin-right: 4rem;
             /* white-space: nowrap; */
           }

section.newslist>div ul li a::after {
  position: absolute;
           content: ">";
           right: 0;
           bottom: .25rem;
         }

 #search {
     margin: 0 1rem 5rem 1rem;
     border: solid 1px var(--black-ink-ultrapale);
     box-sizing: border-box
 }

#search>h2 {
         margin-top: 0;        
         text-align: center;      
         font-size: 1.5rem;
         font-weight: 400;  
     }

 #search h3 {
         font-size: 1rem;
     }

 #search form {
         padding: 1rem
     }

 #search form input[type="search"] {
             margin-left: 0.5rem;
             padding: 0.5rem 1rem;
             width: 24rem;
             max-width: 90%;
             border-color: var(--black-ink-ultrapale);
         }

 #search form .terms {
             margin-bottom: 1.5rem;
             display: flex;
             flex-wrap: wrap;
             
         }

 #search form .terms:last-of-type {
                 margin-bottom: 3rem;
             }

#search form .terms>label:not(:first-child) {
                     margin-left: 0.5rem;
                 }

 #search form button {
             width: 100%;
       max-width: 32rem;
             text-align: center;
             margin: 0 auto 1rem auto; 
         }

 .archive-job {
     margin-bottom: 5rem
 }

 .archive-job ul.jobs {
         margin-top: 2rem;
         margin-bottom: 2rem;
     }

 .archive-job h2.rod {
         margin-top: 0;
         border-top: none;
     }
 
     
 
     article.job h1 {
         font-size: 1.25rem;
     }

 article.job div.max {
         max-width: 800px;
         margin: 0 auto;
     }

 article.job .swiper-container:before {
             content: "";
             display: block;
             padding-top: calc(9 / 16 * 100%);
         }

article.job .swiper-container .swiper-button-prev,
article.job .swiper-container .swiper-button-next {
             background-image: none
         }

article.job .swiper-container .swiper-button-prev svg .cls-1,
article.job .swiper-container .swiper-button-next svg .cls-1 {
                 fill: var(--brand-color);
             }

 article.job .swiper-container .swiper-wrapper {
             position: absolute;
             top: 0;
             left: 0
         }

 article.job .swiper-container .swiper-wrapper .swiper-slide {
                  background-color: dimgrey;
                  text-align: center
             }

article.job .swiper-container .swiper-wrapper .swiper-slide>img {
                      width: 100%;
                      min-height: 100%;
                      position: absolute;
                      left: 50%;
                      top: 50%;
                      -webkit-transform: translate(-50%, -50%);
                              transform: translate(-50%, -50%);                     
                  }

 article.job .swiper-pagination-bullets {
         position: static
     }

 article.job .swiper-pagination-bullets .swiper-pagination-bullet {
             margin: 0 4px;    
         }

 article.job .swiper-pagination-bullets .swiper-pagination-bullet-active {
             background-color: var(--brand-color);
         }

 article.job .index {
     margin-bottom: 4rem;
   }

 article.job ul.employment_type {
         display: -webkit-box;
         display: flex;
         flex-wrap: wrap
     }

 article.job ul.employment_type li {
             color: white;
             color: var(--button-color);
             background-color: var(--brand-color);
             white-space: nowrap;
             font-size: .75rem;
             padding: .19rem .38rem
         }

 article.job ul.employment_type li:not(:last-of-type) {
                 margin-right: .75rem;
             }

 article.job ul.free_taxonomy {
         display: -webkit-box;
         display: flex;
         flex-wrap: wrap;
 
         border-bottom: solid 1px var(--black-ink-ultrapale);        
         margin-bottom: .75rem
     }

 article.job ul.free_taxonomy li {
             
             white-space: nowrap;
             font-size: .75rem;
             padding: .19rem .38rem;
             color: var(--brand-color);
             border: solid 2px var(--brand-color);
             border-radius: 1rem;
             margin-bottom: .75rem
         }

 article.job ul.free_taxonomy li:not(:last-of-type) {
                 margin-right: .75rem;
             }

 article.job dl.hard_data {
         display: -webkit-box;
         display: flex;
         flex-wrap: wrap;
     }

 article.job dl.hard_data dt {
             margin: 0 auto .5rem 0;            
             width: 100%;
             font-weight: bold
         }

 @media(min-width: 576px) {
         article.job dl.hard_data dt {
                 margin: 0;
    width: 7.75rem;
                 padding: 1rem 0;			
                 padding-right: 1rem;
                 border-right: solid 1px var(--black-ink-ultrapale);            
    /* text-align: right */
         }
             }

 article.job dl.hard_data dd {           
             margin: 0 auto 2rem 0;
             width: 100%
         }

 article.job dl.hard_data dd:last-of-type {
                 margin-bottom: 0;
             }

 @media(min-width: 576px) {
         article.job dl.hard_data dd {
                 margin: 0;
    width: calc(100% - 7.75rem);
                 padding: 1rem 0;			
                 padding-left: 1rem
         }            
             }

 article.job dl.hard_data {        
 
         margin-bottom: 4rem;
     }

 article.job .google_maps {
         margin-top: 1rem;
         position: relative;
         padding-bottom: 56.25%;
         padding-top: 30px;
         height: 0;
         overflow: hidden
     }

 article.job .google_maps iframe,
         article.job .google_maps object,
         article.job .google_maps embed {
             position: absolute;
             top: 0;
             left: 0;
             width: 100%;
             height: 100%;
         }

 article.job dl.free_items dt {
             font-weight: bold;
             border: 1px var(--black-ink-ultrapale);
             border-style: solid none;
             background-color: var(--black-ink-ultimatepale);
             padding: 1rem;
         }

 article.job dl.free_items dd {
             margin: 0;
             padding: 1rem 1rem 2rem 1rem
             }

 article.job dl.free_items dd .ho {
                     display: -webkit-box;
                     display: flex;
                     -webkit-box-align: center;
                             align-items: center
                     /* justify-content: center;
                     padding: 1rem; */
                 }

article.job dl.free_items dd .ho>div:first-of-type {
                             margin-right: 2rem
                         }

article.job dl.free_items dd .ho>div:first-of-type img {
                                 max-height: 6rem;
                                 max-width: 6rem;
                             }

article.job dl.free_items dd .ho>div:nth-of-type(2) p {
                                 margin: 0;
                             }

 article.job dl.free_items {
         
     margin-bottom: 2rem;
     }

 article.job .hiring_organization {
     border: solid 1px var(--black-ink-ultrapale);
     margin-bottom: 4rem;
     display: -webkit-box;
     display: flex;
     -webkit-box-orient: vertical;
     -webkit-box-direction: normal;
             flex-direction: column
   }

 @media(min-width: 576px) {
         article.job .hiring_organization {
       -webkit-box-orient: horizontal;
       -webkit-box-direction: normal;
               flex-direction: row;
       max-width: 32rem;
       margin-left: auto;
       margin-right: auto
   }
     }

article.job .hiring_organization>*:first-of-type {
         padding: 0 1rem;
         white-space: nowrap;
         display: -webkit-box;
         display: flex;
         -webkit-box-pack: center;
                 justify-content: center;
         -webkit-box-align: center;
                 align-items: center;
         width: 100%;
         background-color: snow;
         border: 1px var(--black-ink-ultrapale);
         border-style: none none solid none
       }

 @media(min-width: 576px) {
  article.job .hiring_organization>*:first-of-type {
           border-style: none solid none none;
           width: auto
       }
         }

article.job .hiring_organization>*:nth-of-type(2) {
         display: -webkit-box;
         display: flex;
         -webkit-box-align: center;
                 align-items: center;
         -webkit-box-pack: center;
                 justify-content: center;
         padding: 1rem				
       }

article.job .hiring_organization>*:nth-of-type(2)>div:first-of-type {
             margin-right: 2rem
           }

article.job .hiring_organization>*:nth-of-type(2)>div:first-of-type img {
               max-height: 6rem;
               max-width: 6rem;
             }

article.job .hiring_organization>*:nth-of-type(2)>div:nth-of-type(2) p {
               margin: 0;
             }

             article.job form {
               margin-bottom: 5rem;
             }

 article.job button.entry {
         margin: 0 auto;
         width: 100%;
         max-width: 32rem;
     }
 
#entry_button_fixed_container {
  background-color: rgba(255, 255, 255, .825);  
  background-color: var(--popup-layer-color);
  padding: 1rem;
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  visibility: hidden;
}    

#entry_button_fixed_container.show {
  visibility: visible;
  z-index: 1;
}

#entry_button_fixed {}

     #single-entry h2.rod {
         margin-top: 0;
         border-top: none;
     }

 #single-entry div.edge>p {
         text-align: center;
         margin: 2.5rem 0;
       }

 #single-entry form {
       margin: 0 auto;
       max-width: 48rem;
       max-width: 35rem;       
       margin-bottom: 4rem
     }

 #single-entry #resume {
         display: -webkit-box;
         display: flex;
         width: 100%;
         -webkit-box-orient: vertical;
         -webkit-box-direction: normal;
                 flex-direction: column;
         -webkit-box-align: left;
                 align-items: left;
                 margin-bottom: 3rem;
       }

 #single-entry #resume>div {
           display: -webkit-box;
           display: flex;
           -webkit-box-align: center;
                   align-items: center;
           flex-wrap: wrap;
           margin-bottom: 1.5rem
         }

 #single-entry #resume>div>p,
#single-entry form>div>div>label,
.tksc-form .resume>div>label {
             vertical-align: bottom;  
             margin-bottom: .5rem;  
             display: inline-block;               
           }

#single-entry #resume>div>p.required,
#single-entry #resume>div>label,
.tksc-form .resume>div>label {
            position: relative
          }

#single-entry #resume>div>p.required::after,
#single-entry #resume>div>label::after,
.tksc-form .resume>div>label::after {
              content: "任意";              
              color: white;
              background-color: #c0c0c0;
              font-size: 0.75rem;
              padding: 0.2rem .25rem .3rem;
              margin: 0.25rem;  
              line-height: 2.25;  
            }

#single-entry #resume>div>p.required::after,
#single-entry #resume>div>label.required::after,
.tksc-form .resume>div>label.required::after {
content: "必須";
color: white;             
              background-color: #ff6767;
}

#single-entry #resume>div>input,
#single-entry #resume>div select,
.tksc-form .resume>div select {
          padding-left: 0.5rem;
          padding: 8px;
          height: 2.75rem;
          width: 100%;
        }

 #single-entry #resume>div>textarea {
             padding: 0.5rem;          
             padding: 8px;          
           }

#single-entry #resume>div>div>input+label {
            /* margin-right: 1rem; */
            line-height: 2rem;
          }
        
        
          /* コピペ */
          input[type="radio"] {
            display: none;
        }

input[type="radio"]+label {
            display: inline-flex;
            position: relative;
            margin: 0;
            padding: 8px 24px 8px 32px;
        }

input[type="radio"]+label:before {
            content: "";
            display: block;
            position: absolute;
            top: 0;
            bottom: 0;
            left: 4px;
            margin: auto;
            width: 20px;
            height: 20px;
            border: 1px solid #ddd;
            border-radius: 50px;
        }

input[type="radio"]:checked+label {
            color: #ee5253;
        }

input[type="radio"]:checked+label:after {
            content: "";
            display: block;
            position: absolute;
            top: 0;
            left: 4px;
            bottom: 0;
            margin: auto;
            width: 20px;
            height: 20px;
            border: solid 4px #fff;
            background: #ee5253;
            border-radius: 50px;
            box-shadow: 0 0 0 2px #ee5253;
        }

        input[type=checkbox] {
  /* checkboxを非表示にする */
  opacity: 0;
          }

input[type=checkbox]+label {
  position: relative;
  /* ボックスの位置を指定する */
  padding: 0 0 0 1.5em;
  /* ボックス内側の余白を指定する */
          transition: opacity .25s;
          line-height: 1.75em;          
          }          

input[type=checkbox]+label::after,
input[type=checkbox]+label::before {
  position: absolute;
  /* ボックスの位置を指定する */
  content: "";
  /* ボックスのコンテンツ */
  display: block;
  /* ブロックレベル要素化する */
          left: 0;
          top: .25em;
          transition: opacity .25s;
          }

input[type=checkbox]+label::after {
  width: 1.25em;
  /* ボックスの横幅を指定する */
  height: 1.25em;
  /* ボックスの高さを指定する */
  border: 1px solid var(--black-ink-ultrapale);
  /* ボックスの境界線を実線で指定する */
          background-color: white;
          background-color: var(--black-ink-ultimatepale);          
          }

input[type=checkbox]+label::before {
  left: .375em;
  /* 左から配置の基準位置を決める */
          z-index: 1;
          top: .25em;
  width: .5em;
  /* ボックスの横幅を指定する */
  height: 1em;
  /* ボックスの高さを指定する */
  border-right: 2px solid var(--brand-color);
  /* 境界線（右）のスタイルを指定する */
  border-bottom: 2px solid var(--brand-color);
  /* 境界線（下）のスタイルを指定する */
  transform: rotate(45deg);
  /* 要素を回転させる */
  visibility: hidden;
  /* 要素を透過指定する */
          }

input[type=checkbox]:checked+label::before {
  visibility: visible;
  /* 要素を表示する */
          }

input[type=checkbox]+label:hover::after,
input[type=checkbox]+label:hover::before {
            /* opacity: .5; */
          }
          
        /* ここまでコピペ */

input:-ms-input-placeholder {
  color: #bbbbbb;
  /* opacity: .5; */
}
           
input:-webkit-autofill,
input:-webkit-autofill:focus {
  transition: background-color 600000s 0s, color 600000s 0s;
}

 #single-entry #resume>div>*:nth-child(1) {
             -webkit-box-flex: 0;
             flex: 0 0 100%;
            }

  @media(min-width: 640px) {
   #single-entry #resume>div>*:nth-child(1) {    
                     flex: 0 0 12rem
           }
          }

 #single-entry #resume>div>*:nth-child(1).long-label {
               -webkit-box-flex: 0;
                       flex: 0 0 100%;
               white-space: normal;
             }

 #single-entry #resume>div>*:nth-child(2) {
             -webkit-box-flex: 1;
                     flex: 1 1 24rem;
           }

#single-entry #privacy_policy {
  display: flex;
  flex-direction: column;
  align-items: center;  
}

#single-entry #privacy_policy a {
  color: #0177FF;
  text-decoration: underline;
}

#single-entry #privacy_policy input[type=checkbox]+label a {
  margin-left: .25em;  
}



#single-entry form>p {
         background-color: #E0E8F0;     
         padding: 1rem;
         margin-bottom: 3rem;
         color: var(--black-ink-ultrapale);
         height: 12rem;
         overflow-y: scroll;
       }

#single-entry form>button {
         display: block;
         margin: 0 auto;
         margin-top: 2rem;
         background-color: var(--brand-color);
         border-radius: 2rem;
         padding: 0.75rem;
         border: none;
         color: white;
         color: var(--button-color);
         width: 24rem;
         max-width: 100%;      
         box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.175);
         transition: opacity .25s, background-color .25s;
       }

#single-entry form>button.not_committed {
  background-color: #ccc;
  pointer-events: none;
  box-shadow: none;
}

 li.card-job {
   width: 100%;
     border-bottom: solid 1px var(--black-ink-ultrapale);
     padding: 3rem 1rem
 }

li.card-job>div:first-of-type {
         margin-bottom: 1.5rem;
     height: 100%
     }

 @media(min-width: 768px) {
  li.card-job>div:first-of-type {
             margin-bottom: 0;
             margin-right: 1.5rem
     }
         }

li.card-job>div:nth-of-type(2)>h3 {
             margin: 0 0 .5rem 0;
         }

li.card-job>div:nth-of-type(2)>dl {
             display: -webkit-box;
             display: flex;
             flex-wrap: wrap;
             margin: 0 0 2.5rem 0
         }

li.card-job>div:nth-of-type(2)>dl>dt {
                 font-size: 0.875rem;                
                 color: var(--black-ink-pale);
                 width: 2rem;
                 display: -webkit-box;
                 display: flex;
                 height: calc(0.875rem * 1.625);
                 -webkit-box-align: center;
                         align-items: center;
                 -webkit-box-pack: center;
                         justify-content: center;
                 padding-right: 1rem;
                 /* border-right: solid 1px lightgrey; */
             }

li.card-job>div:nth-of-type(2)>dl>dd {
                 font-size: 0.875rem;
                 color: var(--black-ink-pale);
                 width: calc(100% - 2rem); 
                 margin: 0
                 /* padding-left: .75rem; */               
             }

li.card-job>div:nth-of-type(2)>dl>dd>p {
                     color: inherit;
                     margin: 0;
                 }

li.card-job>div:nth-of-type(2)>dl>dd:not(:last-of-type) {
                     padding-bottom: 0.5rem;
                 }

 #instagram {
     margin-bottom: 5rem
 }

 #instagram h2 {
         text-align: center;
         font-size: 1.17rem;
     }

 #instagram ul {
         display: -webkit-box;
         display: flex;
         flex-wrap: wrap;
         opacity: inherit;
         padding-left: .5rem;
         padding-right: .5rem
     }

 #instagram ul li {
             width: calc(100% / 2 - 1rem);
             margin: .5rem;
             display: none
         }

 #instagram ul li:nth-of-type(-n + 4) {
                 display: block;
             }

 @media (min-width: 576px) {
     #instagram ul li {
                 width: calc(100% / 3 - 1rem)
         }

                 #instagram ul li:nth-of-type(-n + 6) {
                     display: block;
                 }
             }

 @media (min-width: 768px) {
     #instagram ul li {
                 width: calc(100% / 4 - 1rem)
         }

                 #instagram ul li:nth-of-type(-n + 8) {
                     display: block;
                 }
             }

 @media (min-width: 992px) {
     #instagram ul li {
                 width: calc(100% / 5 - 1rem)
         }

                 #instagram ul li:nth-of-type(-n + 10) {
                     display: block;
                 }
             }

 #instagram ul li img {
                 width: 100%;
             }
     
     #page-thanks h2.rod {
         margin-top: 0;
         border-top: none;
     }

 #page-thanks div.edge {
     margin-top: 3rem;
     margin-bottom: 3rem;
 
     text-align: center
 }

 #page-thanks div.edge img {
         max-width: 100%;
         margin-bottom: 2rem;
  
        }

        #page-thanks div.edge h3 {
          margin-top: 3rem;
        }

  #page-thanks div.edge dl {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  #page-thanks div.edge dl div {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 40rem;
    padding: 1rem;
    margin: 1px 0;
    background-color: #eeeeee;    
  background-color: var(--popup-layer-color);
  }

  #page-thanks div.edge dl div dt {
    width: 100%;
    font-weight: bold;
    text-align: left;
    margin-right: .5rem;
  }

  #page-thanks div.edge dl div dd {
    width: 100%;
    text-align: left;
    margin-left: 0;
  }

  @media (min-width: 768px) {
    #page-thanks div.edge dl div {
      flex-direction: row;
    }

    #page-thanks div.edge dl div dt {
      width: 25%;
    }

    #page-thanks div.edge dl div dd {
      width: 75%;
    }
  }

 #category {
     margin-bottom: 5rem
 }

 #category h2.rod {
         margin-top: 0;
         border-top: none;
     }

 #category ul {
         display: -webkit-box;
         display: flex;
         flex-wrap: wrap;
         margin: 2rem auto;
         -webkit-box-pack: justify;
     }

 #category li.card {
         width: calc(100% - 1rem);
         margin: 1rem
     }

 @media(min-width: 576px) {
     #category li.card {
             width: calc(100% / 2 - 2rem)
     }
         }

 @media(min-width: 992px) {
     #category li.card {
             width: calc(100% / 3 - 3rem)
     }
         }

#category li.card a>div {
             opacity: inherit;
          }

 #category li.card div.crop {            
       background-color: var(--black-ink-ultrapale);
       position: relative;
       overflow: hidden;
       padding-top: calc(3 / 4 * 100%)
     }

 #category li.card div.crop img {
  -o-object-fit: cover;
  object-fit: cover;
         max-width: 100%;
         min-height: 100%;
         position: absolute;
         top: 50%;
         left: 50%;
         -webkit-transform: translate(-50%, -50%);
                 transform: translate(-50%, -50%);
       }
 
     #post-basic h1 {
         margin-bottom: 2rem;
     }
 
 #post-basic article {
         max-width: 800px;
         margin: 0 auto 5rem auto
     }
 
 #post-basic article div.crop {
             background-color: var(--black-ink-ultrapale);
             position: relative;
             overflow: hidden;
             padding-top: calc(9 / 16 * 100%);
             margin-bottom: 2rem
         }
 
 #post-basic article div.crop img {
  -o-object-fit: cover;
  object-fit: cover;
                 max-width: 100%;
                 min-height: 100%;
                 position: absolute;
                 top: 50%;
                 left: 50%;
                 -webkit-transform: translate(-50%, -50%);
                         transform: translate(-50%, -50%);
             }
 
#post-basic article .content p,
#post-basic article .content a,
#post-basic article .content pre,
#post-basic article .content ul,
#post-basic article .content ol,
#post-basic article .content dl,
#post-basic article .content figure,
#post-basic article .content blockquote {
                 margin: 1rem 0 2rem 0;
             }
 
 #post-basic article .content ul {
                 list-style-type: disc;
                 padding-left: 1.25rem;
             }
 
 #post-basic article .content .is-style-border-thin {
                 padding: 1rem;
                 border: 1px solid var(--black-ink-ultrapale);
             }
 
 #post-basic article .content {
 
  & h2,
  h3 {
                 /* margin: 1rem 0 1rem 0; */                
             }
         }
 
 #post-basic article .content a {
                 color: inherit;
                 text-decoration: underline;
             }
 
 #post-basic article .content .is-style-wide {                
                 text-align: center
             }
 
 #post-basic article .content .is-style-wide .wp-block-button__link {
                     font-size: 1rem;
                     width: 100%;
                     max-width: 32rem;     
                     padding: 1rem 2rem;
                 }
 
 #post-basic article .content .wp-block-button__link {
                 text-decoration: none;                
             }
 
 #post-basic article .content blockquote {
                 border-left: 2px solid var(--black-ink-ultrapale);
             }
 
#post-basic article .content table td,
#post-basic article .content table th {
                     padding-top: 1.25rem;
                     padding-bottom: 1.25rem;
                 }
 
 #post-basic .post-navigation {
         margin-bottom: 5rem;
     }
 
 #post-basic .button.link2archive {
         margin: 0 auto 5rem auto;
         width: 100%;
         max-width: 32rem;
     }
 
.tksc-form .tksc-modal .tksc-dialog {    
    background-color: var(--body-background-color);
    border: solid 1px var(--black-ink-ultrapale);
}