@charset "UTF-8";

/*
Theme Name: ジョブカン 社労士サイト
Theme URI: 
Description: ジョブカン 社労士サイトのStylesheet
Version: 1.1
Author: Donuts Co. Ltd.
Author URI: http://www.donuts.ne.jp/
*/


/*
*******************************************************************************************************
# default common style - compiled from common.scss
  ・foundation
  ・layout
  ・object
*******************************************************************************************************
*/


/* Slider */

.slick-loading .slick-list {
    background: #fff url("../../static/img/common/img_loader.gif") center center no-repeat;
}


/* Icons */

@font-face {
    font-family: "slick";
    font-weight: normal;
    font-style: normal;
    src: url("../../static/slick/fonts/slick.eot?#iefix") format("embedded-opentype"), url("../../static/slick/fonts/slick.woff") format("woff"), url("../../static/slick/fonts/slick.ttf") format("truetype"), url("../../static/slick/fonts/slick.svg#slick") format("svg");
    src: url("../../static/slick/fonts/slick.eot");
}


/* Arrows */

.slick-prev,
.slick-next {
    display: block;
    position: absolute;
    top: 50%;
    width: 20px;
    height: 20px;
    padding: 0;
    border: none;
    outline: none;
    background: transparent;
    color: transparent;
    font-size: 0;
    line-height: 0;
    transform: translate(0, -50%);
    cursor: pointer;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
    color: white;
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
    left: -25px;
}

[dir="rtl"] .slick-prev {
    left: auto;
    right: -25px;
}

.slick-prev:before {
    content: "←";
}

[dir="rtl"] .slick-prev:before {
    content: "→";
}

.slick-next {
    right: -25px;
}

[dir="rtl"] .slick-next {
    left: -25px;
    right: auto;
}

.slick-next:before {
    content: "→";
}

[dir="rtl"] .slick-next:before {
    content: "←";
}


/* Dots */

.slick-dotted.slick-slider {
    /*margin-bottom: 30px;*/
}

.slick-dots {
    display: block;
    position: absolute;
    bottom: 5px;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
}

.slick-dots li {
    display: inline-block;
    position: relative;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    border: 0;
    outline: none;
    background: transparent;
    color: transparent;
    font-size: 0;
    line-height: 0;
    cursor: pointer;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
}

.slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    color: black;
    font-family: "slick";
    font-size: 11px;
    line-height: 20px;
    text-align: center;
    content: "•";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
    color: #ff7aab;
}


/* Slider */

.slick-slider {
    display: block;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    user-select: none;
    -khtml-user-select: none;
    -webkit-tap-highlight-color: transparent;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.slick-list {
    display: block;
    overflow: hidden;
    position: relative;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
}

.slick-track {
    display: block;
    position: relative;
    top: 0;
    left: 0;
    margin-right: auto;
    margin-left: auto;
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: "";
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}

[dir="rtl"] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}


/* Magnific Popup CSS */

.mfp-bg {
    overflow: hidden;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #0b0b0b;
    opacity: 0.8;
    z-index: 1042;
}

.mfp-wrap {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    outline: none !important;
    z-index: 1043;
    -webkit-backface-visibility: hidden;
}

.mfp-container {
    position: absolute;
    top: 0;
    left: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 0 8px;
    text-align: center;
}

.mfp-container:before {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    content: "";
}

.mfp-align-top .mfp-container:before {
    display: none;
}

.mfp-content {
    display: inline-block;
    position: relative;
    margin: 0 auto;
    text-align: left;
    vertical-align: middle;
    z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
    width: 100%;
    cursor: auto;
}

.mfp-ajax-cur {
    cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: -webkit-zoom-out;
    cursor: zoom-out;
}

.mfp-zoom {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
    cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
    -ms-user-select: none;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
}

.mfp-loading.mfp-figure {
    display: none;
}

.mfp-hide {
    display: none !important;
}

.mfp-preloader {
    position: absolute;
    top: 50%;
    left: 8px;
    right: 8px;
    width: auto;
    margin-top: -0.8em;
    color: #ccc;
    text-align: center;
    z-index: 1044;
}

.mfp-preloader a {
    color: #ccc;
}

.mfp-preloader a:hover {
    color: #fff;
}

.mfp-s-ready .mfp-preloader {
    display: none;
}

.mfp-s-error .mfp-content {
    display: none;
}

button.mfp-close,
button.mfp-arrow {
    display: block;
    overflow: visible;
    padding: 0;
    border: 0;
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: transparent;
    cursor: pointer;
    z-index: 1046;
    -webkit-appearance: none;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
}

button::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.mfp-close {
    position: absolute;
    top: 0;
    right: 0;
    width: 44px;
    height: 44px;
    padding: 0 0 18px 10px;
    color: #fff;
    font-family: Arial, Baskerville, monospace;
    font-size: 28px;
    font-style: normal;
    line-height: 44px;
    text-align: center;
    text-decoration: none;
    opacity: 0.65;
}

.mfp-close:hover,
.mfp-close:focus {
    opacity: 1;
}

.mfp-close:active {
    top: 1px;
}

.mfp-close-btn-in .mfp-close {
    color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
    right: -6px;
    width: 100%;
    padding-right: 6px;
    color: #fff;
    text-align: right;
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #ccc;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap;
}

.mfp-arrow {
    position: absolute;
    top: 50%;
    width: 90px;
    height: 110px;
    margin: 0;
    margin-top: -55px;
    padding: 0;
    opacity: 0.65;
    -webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
    margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
    opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent;
    content: "";
}

.mfp-arrow:after {
    top: 8px;
    border-top-width: 13px;
    border-bottom-width: 13px;
}

.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7;
}

.mfp-arrow-left {
    left: 0;
}

.mfp-arrow-left:after {
    margin-left: 31px;
    border-right: 17px solid #fff;
}

.mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3f3f3f;
}

.mfp-arrow-right {
    right: 0;
}

.mfp-arrow-right:after {
    margin-left: 39px;
    border-left: 17px solid #fff;
}

.mfp-arrow-right:before {
    border-left: 27px solid #3f3f3f;
}

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
    width: 100%;
    max-width: 900px;
    line-height: 0;
}

.mfp-iframe-holder .mfp-close {
    top: -40px;
}

.mfp-iframe-scaler {
    overflow: hidden;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000;
}


/* Main image in popup */

img.mfp-img {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 40px 0 40px;
    line-height: 0;
}


/* The shadow behind the image */

.mfp-figure {
    line-height: 0;
}

.mfp-figure:after {
    display: block;
    position: absolute;
    top: 40px;
    left: 0;
    right: 0;
    bottom: 40px;
    width: auto;
    height: auto;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444;
    content: "";
    z-index: -1;
}

.mfp-figure small {
    display: block;
    color: #bdbdbd;
    font-size: 12px;
    line-height: 14px;
}

.mfp-figure figure {
    margin: 0;
}

.mfp-bottom-bar {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    margin-top: -36px;
    cursor: auto;
}

.mfp-title {
    padding-right: 36px;
    color: #f3f3f3;
    line-height: 18px;
    text-align: left;
    word-wrap: break-word;
}

.mfp-image-holder .mfp-content {
    max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape),
screen and (max-height: 300px) {
    /**
       * Remove all paddings around the image on small screen
       */
    .mfp-img-mobile .mfp-image-holder {
        padding-right: 0;
        padding-left: 0;
    }
    .mfp-img-mobile img.mfp-img {
        padding: 0;
    }
    .mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0;
    }
    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px;
    }
    .mfp-img-mobile .mfp-bottom-bar {
        position: fixed;
        top: auto;
        bottom: 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: 0;
        padding: 3px 5px;
        background: rgba(0, 0, 0, 0.6);
    }
    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0;
    }
    .mfp-img-mobile .mfp-counter {
        top: 3px;
        right: 5px;
    }
    .mfp-img-mobile .mfp-close {
        position: fixed;
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        padding: 0;
        background: rgba(0, 0, 0, 0.6);
        line-height: 35px;
        text-align: center;
    }
}

@media all and (max-width: 900px) {
    .mfp-arrow {
        transform: scale(0.75);
        -webkit-transform: scale(0.75);
    }
    .mfp-arrow-left {
        transform-origin: 0;
        -webkit-transform-origin: 0;
    }
    .mfp-arrow-right {
        transform-origin: 100%;
        -webkit-transform-origin: 100%;
    }
    .mfp-container {
        padding-right: 6px;
        padding-left: 6px;
    }
}


/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */


/* Document
   ========================================================================== */


/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
    line-height: 1.15;
    /* 1 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}


/* Sections
   ========================================================================== */


/**
 * Remove the margin in all browsers.
 */

body {
    margin: 0;
}


/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
    margin: 0.67em 0;
    font-size: 2em;
}


/* Grouping content
   ========================================================================== */


/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
    overflow: visible;
    /* 2 */
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
}


/**
 * 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;
}


/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

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


/**
 * 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%;
}


/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

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

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}


/* Embedded content
   ========================================================================== */


/**
 * Remove the border on images inside links in IE 10.
 */

img {
    border-style: none;
}


/* Forms
   ========================================================================== */


/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
    margin: 0;
    /* 2 */
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
}


/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input {
    /* 1 */
    overflow: visible;
}


/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select {
    /* 1 */
    text-transform: none;
}


/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type='button'],
[type='reset'],
[type='submit'] {
    -webkit-appearance: button;
}


/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
    padding: 0;
    border-style: none;
}


/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
    outline: 1px dotted ButtonText;
}


/**
 * Correct the padding in Firefox.
 */

fieldset {
    padding: 0.35em 0.75em 0.625em;
}


/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
    display: table;
    /* 1 */
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    color: inherit;
    /* 2 */
    white-space: normal;
    /* 1 */
}


/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
    vertical-align: baseline;
}


/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
    overflow: auto;
}


/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type='checkbox'],
[type='radio'] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}


/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
    height: auto;
}


/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type='search'] {
    outline-offset: -2px;
    /* 2 */
    -webkit-appearance: textfield;
    /* 1 */
}


/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type='search']::-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 {
    font: inherit;
    /* 2 */
    -webkit-appearance: button;
    /* 1 */
}


/* Interactive
   ========================================================================== */


/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
    display: block;
}


/*
 * Add the correct display in all browsers.
 */

summary {
    display: list-item;
}


/* Misc
   ========================================================================== */


/**
 * Add the correct display in IE 10+.
 */

template {
    display: none;
}


/**
 * Add the correct display in IE 10.
 */

[hidden] {
    display: none;
}


/* # reset
----------------------------------- */

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

article,
header,
footer,
aside,
figure,
figcaption,
nav,
section {
    display: block;
}

ul,
ol {
    list-style: none;
    list-style-type: none;
}

p,
li,
dt,
dd,
th,
td,
pre {
    word-break: break-strict;
    line-break: strict;
}

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

img {
    border: none;
    vertical-align: middle;
}

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

input,
button,
textarea,
select {
    border: none;
    border-radius: 0;
    outline: none;
}


/* # fonts
----------------------------------- */

@font-face {
    font-family: 'Noto Sans JP';
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: local("Noto Sans CJK JP Regular"), url(../fonts/NotoSansCJKjp-Regular.woff2) format("woff2"), url(../fonts/NotoSansCJKjp-Regular.woff) format("woff");
}


/* # base
----------------------------------- */

body {
    overflow-x: scroll;
    width: auto;
    min-width: 100%;
    background-color: #fff;
    color: #333;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 300;
    letter-spacing: 0.5px;
    line-height: 1.88;
    -webkit-font-smoothing: antialiased;
}

@media only screen and (min-width: 737px) {
    body {
        min-width: 1160px;
    }
}

@media all and (-ms-high-contrast: none) {
    body {
        font-family: Verdana, Meiryo, sans-serif;
    }
}

@media all and (-ms-high-contrast: active) {
    body {
        font-family: Verdana, Meiryo, sans-serif;
    }
}

html {
    font-size: 16px;
    font-weight: 300;
    -webkit-text-size-adjust: 100%;
}

html,
body {
    height: 100%;
}

img {
    max-width: 100%;
    height: auto;
}


/* # link style
----------------------------------- */

a {
    color: #395780;
    text-decoration: none;
    -webkit-transition: color 0.25s cubic-bezier(0.2, 1.17, 0.4, 1.2);
    transition: color 0.25s cubic-bezier(0.2, 1.17, 0.4, 1.2);
}

a[href^='tel'] {
    color: inherit;
}


/* # hover alpha
----------------------------------- */

.u-hover {
    -webkit-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

.u-hover:hover {
    opacity: 0.7;
    -webkit-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
    filter: alpha(opacity=70);
}

a img.u-hover {
    -webkit-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

a img.u-hover:hover {
    opacity: 0.7;
    -webkit-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
    filter: alpha(opacity=70);
}


/* # for analyze tag
----------------------------------- */

body>img {
    display: none;
}


/* =========================================================
    layout footer
========================================================= */


/* footer
--------------------------------------------------------- */

.l-footer {
    width: 100%;
    background-color: #eaeef2;
}

@media only screen and (min-width: 737px) {
    .l-footer {
        width: 100%;
    }
}

.l-footer__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    width: 100%;
}

@media only screen and (min-width: 737px) {
    .l-footer__inner {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        height: 500px;
    }
}

.l-footer__company {
    padding: 50px 15px 100px;
}

@media only screen and (min-width: 737px) {
    .l-footer__company {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        width: 50%;
        padding: 50px 0;
    }
}

@media only screen and (min-width: 737px) {
    .l-footer__company-inner {
        width: 88.88888%;
    }
}

.l-footer__company-box {
    padding-right: 20px;
}

@media only screen and (min-width: 737px) {
    .l-footer__company-box {
        position: relative;
        height: 100%;
    }
}

.l-footer__company-name {
    color: #333;
    font-family: serif;
    font-size: 25px;
    font-weight: bold;
}

@media only screen and (min-width: 737px) {
    .l-footer__company-name {
        font-size: 30px;
    }
}

.l-footer__company-logo {
    margin-right: 10px;
}

.l-footer__company-address {
    margin-top: 10px;
    font-size: 16px;
    line-height: 1.5;
}

@media only screen and (min-width: 737px) {
    .l-footer__company-address {
        font-size: 20px;
    }
}

.l-footer__company-access {
    margin-top: 10px;
    font-size: 16px;
    line-height: 1.5;
}

@media only screen and (min-width: 737px) {
    .l-footer__company-access {
        font-size: 20px;
    }
}

.l-footer__company-privacy {
    margin-top: 50px;
    font-size: 16px;
}

.l-footer__company-privacy a {
    text-decoration: underline;
}

@media only screen and (min-width: 737px) {
    .l-footer__company-privacy {
        position: absolute;
        left: 0;
        bottom: 0;
        margin-top: 10px;
    }
}

.l-footer__map {
    overflow: hidden;
    background-color: #e0e0e0;
}

@media only screen and (max-width: 736px) {
    .l-footer__map {
        height: 100vw;
    }
}

@media only screen and (min-width: 737px) {
    .l-footer__map {
        width: 50%;
    }
}


/* copyright
--------------------------------------------------------- */

.l-footer__copyright {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 50px;
    background-color: #395780;
    color: #fff;
    font-size: 12px;
    text-align: center;
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .l-footer__copyright {
    background-color: #4f8039;
}

.is-scheme-red .l-footer__copyright {
    background-color: #803939;
}

.is-scheme-black .l-footer__copyright {
    background-color: #424242;
}

.is-scheme-green .l-footer {
    background-color: #e9eee7;
}

.is-scheme-red .l-footer {
    background-color: #eee7e7;
}

.is-scheme-black .l-footer {
    background-color: #e8e8e8;
}


/* =========================================================
    layout header
========================================================= */


/* l-header
--------------------------------------------------------- */

.l-header {
    position: relative;
    width: 100%;
}

@media only screen and (min-width: 737px) {
    .l-header {
        -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1);
        box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1);
        z-index: 100;
    }
}

@media only screen and (max-width: 736px) {
    .l-header__inner {
        position: relative;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding-left: 1.6666666666667%;
        height: 100px;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(90%, #fff), color-stop(90%, #395780), to(#395780));
        background: -webkit-linear-gradient(top, #fff 90%, #395780 90%, #395780 100%);
        background: linear-gradient(to bottom, #fff 90%, #395780 90%, #395780 100%);
    }
}


/* l-header
--------------------------------------------------------- */

@media only screen and (max-width: 736px) {
    .l-header__logos {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        height: 60px;
        width: 100%;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(90%, #fff), color-stop(90%, #395780), to(#395780));
        background: -webkit-linear-gradient(top, #fff 90%, #395780 90%, #395780 100%);
        background: linear-gradient(to bottom, #fff 90%, #395780 90%, #395780 100%);
        -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1);
        box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1);
        padding: 15px 15px;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__logos {
        white-space: nowrap;
    }
}

@media only screen and (max-width: 736px) {
    .l-header__lead {
        display: none;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__lead {
        font-size: 12px;
        text-align: left;
        color: #333;
    }
}

.l-header__title {
    width: 100%;
    font-family: "Noto Serif JP", serif;
    font-size: 14px;
    font-weight: bold;
    text-align: left;
    color: #333;
}

@media only screen and (min-width: 737px) {
    .l-header__title {
        font-size: 25px;
    }
}

.l-header__logo {
    margin-right: 10px;
}

.l-header__logo img {
    width: auto;
    height: auto;
    max-width: 80px;
    max-height: 25px;
}

@media only screen and (min-width: 737px) {
    .l-header__logo {
        vertical-align: bottom;
    }
    .l-header__logo img {
        position: relative;
        top: -2px;
        width: auto;
        height: auto;
        max-width: 80px;
        max-height: 40px;
    }
}


/* l-header__gnavi
--------------------------------------------------------- */

.l-header__gnavi {
    padding: 0 20px;
}

@media only screen and (max-width: 736px) {
    .l-header__gnavi {
        background-color: #395780;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__gnavi {
        padding: 0;
        height: 100px;
    }
}

.l-header__splead {
    padding: 20px 0;
    font-size: 11px;
    line-height: 1.36;
    text-align: left;
    color: #fff;
}

@media only screen and (min-width: 737px) {
    .l-header__splead {
        display: none;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__nav {
        height: 100%;
    }
}

@media only screen and (max-width: 736px) {
    .l-header__nav-list {
        border-top: 1px solid #fff;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__nav-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        height: 100%;
    }
}

.l-header__nav-item a {
    display: block;
    padding: 12px 0;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    border-bottom: 1px solid #fff;
}

@media only screen and (min-width: 737px) {
    .l-header__nav-item a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        height: 100px;
        padding: 0 15px;
        font-size: 16px;
        font-weight: 500;
        color: #333;
        border-bottom: none;
    }
}


/* l-header__tel
--------------------------------------------------------- */

.l-header__tel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media only screen and (max-width: 736px) {
    .l-header__tel {
        padding: 20px 20px 0;
        background-color: #395780;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__tel {
        position: absolute;
        top: 0;
        right: 200px;
        width: 290px;
        height: 100px;
        background-color: #395780;
        height: 100px;
    }
}

@media only screen and (max-width: 736px) {
    .l-header__tel-inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        height: 100px;
        background-color: #fff;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__tel-inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.l-header__tel-number {
    text-align: left;
    font-family: "Noto Serif JP", serif;
    font-weight: bold;
    line-height: 1.4;
}

@media only screen and (max-width: 736px) {
    .l-header__tel-number {
        font-size: 25px;
        color: #395780;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__tel-number {
        color: #fff;
        font-size: 18px;
    }
}

.l-header__tel-label {
    font-size: 23px;
}

@media only screen and (min-width: 737px) {
    .l-header__tel-label {
        font-size: 20px;
        font-weight: 500;
    }
}

.l-header__tel-time {
    color: #616161;
    font-size: 12px;
    text-align: center;
}

@media only screen and (min-width: 737px) {
    .l-header__tel-time {
        color: #fff;
        font-size: 12px;
        text-align: left;
    }
}


/* l-header__gnavi-btn
--------------------------------------------------------- */

@media only screen and (max-width: 736px) {
    .l-header__inquiry {
        padding: 20px;
        background-color: #395780;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__inquiry {
        position: absolute;
        top: 0;
        right: 0;
    }
}

.l-header__inquiry-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 100px;
    color: #fff;
    font-size: 25px;
    font-weight: 500;
    color: #fff;
    background-color: #d19722;
}

@media only screen and (min-width: 737px) {
    .l-header__inquiry-btn {
        padding: 0 10%;
        min-width: 200px;
        height: 100px;
        font-size: 18px;
        white-space: nowrap;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__inquiry-icn {
        padding-left: 35px;
        background-image: url(../img/icn/icn_contact_white.svg);
        background-position: 0 50%;
        background-repeat: no-repeat;
        background-size: 25px 19px;
    }
}


/* l-header__gnavi-btn
--------------------------------------------------------- */

.l-header__spbtn {
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 60px;
    background-color: #395780;
}

.l-header__spbtn span {
    position: absolute;
    left: 20px;
    width: 20px;
    height: 2px;
    background-color: #fff;
}

.l-header__spbtn span:first-of-type {
    top: 24px;
}

.l-header__spbtn span:nth-of-type(2) {
    top: 33px;
}

.l-header__spbtn.is-open span:first-of-type {
    top: 26px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.l-header__spbtn.is-open span:nth-of-type(2) {
    top: 26px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

@media only screen and (min-width: 737px) {
    .l-header__spbtn {
        display: none;
    }
}

@media only screen and (max-width: 736px) {
    .l-header__spwrap {
        display: none;
    }
    .l-header__spwrap.is-open {
        display: block;
    }
}

@media only screen and (min-width: 737px) {
    .l-header__spwrap {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding-right: 510px;
    }
}


/* color scheme
--------------------------------------------------------- */

@media only screen and (min-width: 737px) {
    .is-scheme-green .l-header__inner {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(90%, #fff), color-stop(90%, #4f8039), to(#4f8039));
        background: -webkit-linear-gradient(top, #fff 90%, #4f8039 90%, #4f8039 100%);
        background: linear-gradient(to bottom, #fff 90%, #4f8039 90%, #4f8039 100%);
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-green .l-header__logos {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(90%, #fff), color-stop(90%, #4f8039), to(#4f8039));
        background: -webkit-linear-gradient(top, #fff 90%, #4f8039 90%, #4f8039 100%);
        background: linear-gradient(to bottom, #fff 90%, #4f8039 90%, #4f8039 100%);
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-green .l-header__gnavi {
        background-color: #4f8039;
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-green .l-header__tel {
        background-color: #4f8039;
    }
}

@media only screen and (min-width: 737px) {
    .is-scheme-green .l-header__tel {
        background-color: #4f8039;
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-green .l-header__inquiry {
        background-color: #4f8039;
    }
}

.is-scheme-green .l-header__spbtn {
    background-color: #4f8039;
}

@media only screen and (max-width: 736px) {
    .is-scheme-green .l-header__tel-number {
        color: #4f8039;
    }
}

@media only screen and (min-width: 737px) {
    .is-scheme-red .l-header__inner {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(90%, #fff), color-stop(90%, #803939), to(#803939));
        background: -webkit-linear-gradient(top, #fff 90%, #803939 90%, #803939 100%);
        background: linear-gradient(to bottom, #fff 90%, #803939 90%, #803939 100%);
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-red .l-header__logos {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(90%, #fff), color-stop(90%, #803939), to(#803939));
        background: -webkit-linear-gradient(top, #fff 90%, #803939 90%, #803939 100%);
        background: linear-gradient(to bottom, #fff 90%, #803939 90%, #803939 100%);
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-red .l-header__gnavi {
        background-color: #803939;
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-red .l-header__tel {
        background-color: #803939;
    }
}

@media only screen and (min-width: 737px) {
    .is-scheme-red .l-header__tel {
        background-color: #803939;
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-red .l-header__inquiry {
        background-color: #803939;
    }
}

.is-scheme-red .l-header__spbtn {
    background-color: #803939;
}

@media only screen and (max-width: 736px) {
    .is-scheme-red .l-header__tel-number {
        color: #803939;
    }
}

@media only screen and (min-width: 737px) {
    .is-scheme-black .l-header__inner {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(90%, #fff), color-stop(90%, #424242), to(#424242));
        background: -webkit-linear-gradient(top, #fff 90%, #424242 90%, #424242 100%);
        background: linear-gradient(to bottom, #fff 90%, #424242 90%, #424242 100%);
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-black .l-header__logos {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(90%, #fff), color-stop(90%, #424242), to(#424242));
        background: -webkit-linear-gradient(top, #fff 90%, #424242 90%, #424242 100%);
        background: linear-gradient(to bottom, #fff 90%, #424242 90%, #424242 100%);
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-black .l-header__gnavi {
        background-color: #424242;
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-black .l-header__tel {
        background-color: #424242;
    }
}

@media only screen and (min-width: 737px) {
    .is-scheme-black .l-header__tel {
        background-color: #424242;
    }
}

@media only screen and (max-width: 736px) {
    .is-scheme-black .l-header__inquiry {
        background-color: #424242;
    }
}

.is-scheme-black .l-header__spbtn {
    background-color: #424242;
}

@media only screen and (max-width: 736px) {
    .is-scheme-black .l-header__tel-number {
        color: #424242;
    }
}

.is-scheme-green .l-header__inquiry-btn {
    background-color: #88a061;
}

.is-scheme-red .l-header__inquiry-btn {
    background-color: #c49734;
}

.is-scheme-black .l-header__inquiry-btn {
    background-color: #9b3e49;
}

.l-wrapper {
    overflow: hidden;
    position: relative;
}

@media only screen and (min-width: 737px) {
    .l-wrapper {
        min-width: 1280px;
    }
}

.l-shift-sptop {
    padding-top: 58px;
}

@media only screen and (min-width: 737px) {
    .l-shift-sptop {
        padding-top: 0;
    }
    .l-shift-top {
        padding-top: 84px;
    }
    .l-simple-shift-top {
        padding-top: 47px;
    }
}

.l-inner {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding: 0 5.55556%;
}

.c-block-card {
    padding: 100px 0;
}

.c-block-card__list {
    display: -ms-grid;
    display: grid;
}

@media only screen and (min-width: 737px) and (-ms-high-contrast: none) {
    .c-block-card__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .c-block-card__list>* {
        width: calc( 100% / 3 - 3%);
        margin: 0 3% 3% 0;
    }
    .c-block-card__list>*:nth-of-type(3n) {
        margin-right: 0;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-card__list {
        -ms-grid-rows: auto;
        grid-template-rows: auto;
        -ms-grid-columns: (1fr)[1];
        grid-template-columns: repeat(1, 1fr);
        gap: 30px;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-card__list {
        -ms-grid-rows: auto;
        grid-template-rows: auto;
        -ms-grid-columns: (1fr)[3];
        grid-template-columns: repeat(3, 1fr);
        gap: 30px;
    }
}

.c-block-card__btn {
    text-align: center;
}

@media only screen and (max-width: 736px) {
    .c-block-card__btn {
        padding: 0 20px;
    }
    .c-block-card__btn .c-btn {
        width: 100%;
    }
}

.c-block-image-left {
    padding: 100px 0;
}

.c-block-image-left__inner {
    display: -ms-grid;
    display: grid;
}

@media only screen and (max-width: 736px) {
    .c-block-image-left__inner {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        grid-row-gap: 50px;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-image-left__inner {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 33.3333333333333% 58.3333333333333%;
        grid-template-columns: 33.3333333333333% 58.3333333333333%;
        -ms-grid-rows: auto 1fr;
        grid-template-rows: auto 1fr;
        grid-column-gap: 8.3333333333333333%;
        grid-row-gap: 40px;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-image-left__title {
        -ms-grid-row: 1;
        grid-row: 1;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-image-left__title {
        -ms-grid-column: 2;
        grid-column: 2;
        -ms-grid-row: 1;
        grid-row: 1;
    }
    .c-block-image-left__title.c-title {
        text-align: left;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-image-left__content {
        -ms-grid-row: 3;
        grid-row: 3;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-image-left__content {
        -ms-grid-column: 2;
        grid-column: 2;
        -ms-grid-row: 2;
        grid-row: 2;
    }
}

.c-block-image-left__image img {
    width: 100%;
}

@media only screen and (max-width: 736px) {
    .c-block-image-left__image {
        -ms-grid-row: 2;
        grid-row: 2;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-image-left__image {
        -ms-grid-column: 1;
        grid-column: 1;
        -ms-grid-row: 1;
        -ms-grid-row-span: 2;
        grid-row: 1 / 3;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-image-left__btn a {
        width: 100%;
    }
}

.c-block-image-right {
    padding: 100px 0;
}

.c-block-image-right__inner {
    display: -ms-grid;
    display: grid;
}

@media only screen and (max-width: 736px) {
    .c-block-image-right__inner {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        grid-row-gap: 50px;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-image-right__inner {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 58.3333333333333% 33.3333333333333%;
        grid-template-columns: 58.3333333333333% 33.3333333333333%;
        -ms-grid-rows: auto 1fr;
        grid-template-rows: auto 1fr;
        grid-column-gap: 8.3333333333333333%;
        grid-row-gap: 40px;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-image-right__title {
        -ms-grid-row: 1;
        grid-row: 1;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-image-right__title {
        -ms-grid-column: 1;
        grid-column: 1;
        -ms-grid-row: 1;
        grid-row: 1;
    }
    .c-block-image-right__title.c-title {
        text-align: left;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-image-right__content {
        -ms-grid-row: 3;
        grid-row: 3;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-image-right__content {
        -ms-grid-column: 1;
        grid-column: 1;
        -ms-grid-row: 2;
        grid-row: 2;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-image-right__image {
        -ms-grid-row: 2;
        grid-row: 2;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-image-right__image {
        -ms-grid-column: 2;
        grid-column: 2;
        -ms-grid-row: 1;
        -ms-grid-row-span: 2;
        grid-row: 1 / 3;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-image-right__btn a {
        width: 100%;
    }
}

.c-block-image-right__btn--double {
    display: -ms-grid;
    display: grid;
}

@media only screen and (max-width: 736px) {
    .c-block-image-right__btn--double {
        -ms-grid-rows: (auto)[2];
        grid-template-rows: repeat(2, auto);
        grid-row-gap: 30px;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-image-right__btn--double {
        -ms-grid-columns: (280px)[2];
        grid-template-columns: repeat(2, 280px);
        grid-column-gap: 30px;
    }
}

.c-block-noimage {
    padding: 100px 0;
}

.c-block-noimage__grid {
    display: -ms-grid;
    display: grid;
}

@media only screen and (max-width: 736px) {
    .c-block-noimage__grid {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        grid-row-gap: 50px;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-noimage__grid {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 38.3333333333333% 58.3333333333333%;
        grid-template-columns: 38.3333333333333% 58.3333333333333%;
        grid-column-gap: 3.333333333333333%;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-noimage__title {
        -ms-grid-row: 1;
        grid-row: 1;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-noimage__title {
        -ms-grid-column: 1;
        grid-column: 1;
    }
    .c-block-noimage__title .c-title {
        text-align: left;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-noimage__content {
        -ms-grid-row: 2;
        grid-row: 2;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-noimage__content {
        -ms-grid-column: 2;
        grid-column: 2;
        text-align: left;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-noimage__btn {
        margin: 0 20px;
    }
    .c-block-noimage__btn .c-btn {
        width: 100%;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-noimage__btn {
        -ms-grid-columns: (280px)[2];
        grid-template-columns: repeat(2, 280px);
        grid-column-gap: 30px;
    }
}

.c-block-noimage__btn--double {
    display: -ms-grid;
    display: grid;
}

@media only screen and (max-width: 736px) {
    .c-block-noimage__btn--double {
        -ms-grid-rows: (auto)[2];
        grid-template-rows: repeat(2, auto);
        grid-row-gap: 30px;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-noimage__btn--double {
        -ms-grid-columns: (280px)[2];
        grid-template-columns: repeat(2, 280px);
        grid-column-gap: 30px;
    }
}

.c-block-text {
    padding: 100px 0;
}

.c-block-text__grid {
    display: -ms-grid;
    display: grid;
}

@media only screen and (max-width: 736px) {
    .c-block-text__grid {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        grid-row-gap: 50px;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-text__grid {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 38.3333333333333% 58.3333333333333%;
        grid-template-columns: 38.3333333333333% 58.3333333333333%;
        grid-column-gap: 3.333333333333333%;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-text__title {
        -ms-grid-row: 1;
        grid-row: 1;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-text__title {
        -ms-grid-column: 1;
        grid-column: 1;
    }
    .c-block-text__title .c-title {
        text-align: left;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-text__content {
        -ms-grid-row: 2;
        grid-row: 2;
    }
}

@media only screen and (min-width: 737px) {
    .c-block-text__content {
        -ms-grid-column: 2;
        grid-column: 2;
        text-align: left;
    }
}

@media only screen and (max-width: 736px) {
    .c-block-text__btn {
        margin: 0 20px;
    }
    .c-block-text__btn .c-btn {
        width: 100%;
    }
}

.c-block {
    padding: 100px 0;
}

.c-breadcrumb {
    padding: 20px 0 0;
    font-size: 12px;
}

@media only screen and (min-width: 737px) {
    .c-breadcrumb {
        padding: 30px 0 0;
        font-size: 16px;
    }
}

.c-breadcrumb a {
    position: relative;
    color: #333;
}

.c-breadcrumb a::after {
    display: block;
    position: absolute;
    top: calc(50% - 1px);
    right: 10px;
    width: 5px;
    height: 5px;
    border-color: #333;
    border-top: solid 1px;
    border-right: solid 1px;
    content: "";
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
}

.c-breadcrumb__link {
    padding-right: 20px;
    background-repeat: no-repeat;
    background-position: right 5px top 50%;
    background-size: 6px 8px;
    color: #333;
}

.c-breadcrumb__here {
    color: #333;
}

.c-btn {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px;
    border: 1px solid #395780;
    background-color: #395780;
    background-image: url(../img/icn/icn_arrow_white.svg);
    background-repeat: no-repeat;
    background-position: 92% 55%;
    background-size: 30px 5px;
    color: #fff;
    font-size: 16px;
    text-align: center;
}

@media only screen and (min-width: 737px) {
    .c-btn {
        width: 280px;
        height: 60px;
        padding: 10px;
        font-weight: 500;
        -webkit-transition: background-color 0.3s, color 0.3s;
        transition: background-color 0.3s, color 0.3s;
        -webkit-transition-timing-function: ease-out;
        transition-timing-function: ease-out;
    }
    .c-btn:hover {
        background-color: #fff;
        background-image: url(../img/icn/icn_arrow_navy.svg);
        color: #395780;
        -webkit-transition: background-color 0.3s, color 0.3s;
        transition: background-color 0.3s, color 0.3s;
        -webkit-transition-timing-function: ease-out;
        transition-timing-function: ease-out;
    }
}

.c-btn__contact {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px;
    border: 1px solid #d19722;
    background-color: #d19722;
    color: #fff;
    font-size: 25px;
    text-align: center;
}

@media only screen and (min-width: 737px) {
    .c-btn__contact {
        padding: 10px;
        padding-left: 35px;
        font-weight: 500;
        -webkit-transition: background-color 0.3s, color 0.3s;
        transition: background-color 0.3s, color 0.3s;
        -webkit-transition-timing-function: ease-out;
        transition-timing-function: ease-out;
    }
    .c-btn__contact:hover {
        background-color: #fff;
        color: #d19722;
        -webkit-transition: background-color 0.3s, color 0.3s;
        transition: background-color 0.3s, color 0.3s;
        -webkit-transition-timing-function: ease-out;
        transition-timing-function: ease-out;
    }
    .c-btn__contact:hover .c-btn__contact-icn {
        background-image: url(../img/icn/icn_contact_yellow.svg);
    }
}

.c-btn__contact-icn {
    padding-left: 50px;
    background-image: url(../img/icn/icn_contact_white.svg);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 40px 30px;
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-btn {
    border: 1px solid #4f8039;
    background-color: #4f8039;
}

@media only screen and (min-width: 737px) {
    .is-scheme-green .c-btn:hover {
        background-image: url(../img/icn/icn_arrow_green.svg);
        background-attachment: #fff;
        color: #4f8039;
    }
}

.is-scheme-green .c-btn__contact {
    border: 1px solid #88a061;
    background-color: #88a061;
}

@media only screen and (min-width: 737px) {
    .is-scheme-green .c-btn__contact:hover {
        background-color: #fff;
        color: #88a061;
    }
}

.is-scheme-green .c-btn {
    border: 1px solid #4f8039;
    background-color: #4f8039;
}

@media only screen and (min-width: 737px) {
    .is-scheme-green .c-btn:hover {
        background-color: #fff;
        background-image: url(../img/icn/icn_arrow_green.svg);
        color: #4f8039;
    }
}

.is-scheme-red .c-btn {
    border: 1px solid #803939;
    background-color: #803939;
}

@media only screen and (min-width: 737px) {
    .is-scheme-red .c-btn:hover {
        background-color: #fff;
        background-image: url(../img/icn/icn_arrow_red.svg);
        color: #803939;
    }
}

.is-scheme-black .c-btn {
    border: 1px solid #424242;
    background-color: #424242;
}

@media only screen and (min-width: 737px) {
    .is-scheme-black .c-btn:hover {
        background-color: #fff;
        background-image: url(../img/icn/icn_arrow_black.svg);
        color: #424242;
    }
}

.is-scheme-green .c-btn__contact {
    border: 1px solid #88a061;
    background-color: #88a061;
}

@media only screen and (min-width: 737px) {
    .is-scheme-green .c-btn__contact:hover {
        background-color: #fff;
        color: #88a061;
    }
    .is-scheme-green .c-btn__contact:hover .c-btn__contact-icn {
        background-image: url(../img/icn/icn_contact_green.svg);
    }
}

.is-scheme-red .c-btn__contact {
    border: 1px solid #c49734;
    background-color: #c49734;
}

@media only screen and (min-width: 737px) {
    .is-scheme-red .c-btn__contact:hover {
        background-color: #fff;
        color: #c49734;
    }
    .is-scheme-red .c-btn__contact:hover .c-btn__contact-icn {
        background-image: url(../img/icn/icn_contact_red.svg);
    }
}

.is-scheme-black .c-btn__contact {
    border: 1px solid #9b3e49;
    background-color: #9b3e49;
}

@media only screen and (min-width: 737px) {
    .is-scheme-black .c-btn__contact:hover {
        background-color: #fff;
        color: #9b3e49;
    }
    .is-scheme-black .c-btn__contact:hover .c-btn__contact-icn {
        background-image: url(../img/icn/icn_contact_black.svg);
    }
}

.c-card {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    -ms-grid-rows: auto auto 1fr;
    grid-template-rows: auto auto 1fr;
    grid-row-gap: 20px;
    border: solid 1px #395780;
    background-color: #fff;
}

.c-card__image {
    -ms-grid-row: 1;
    grid-row: 1;
}

.c-card__image img {
    width: 100%;
    height: auto;
}

.c-card__title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-grid-row: 2;
    grid-row: 2;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 2em;
    padding: 0 7.8947368421053%;
    color: #395780;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.25;
    text-align: center;
}

@media only screen and (min-width: 737px) {
    .c-card__title {
        font-size: 25px;
    }
}

.c-card__text {
    -ms-grid-row: 3;
    grid-row: 3;
    padding: 0 7.8947368421053% 24px;
    color: #333;
    font-size: 16px;
    line-height: 1.67;
    text-align: left;
}

@media only screen and (min-width: 737px) {
    .c-card__text {
        font-size: 18px;
    }
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-card {
    border: solid 1px #4f8039;
}

.is-scheme-green .c-card__title {
    color: #4f8039;
}

.is-scheme-red .c-card {
    border: solid 1px #803939;
}

.is-scheme-red .c-card__title {
    color: #803939;
}

.is-scheme-black .c-card {
    border: solid 1px #424242;
}

.is-scheme-black .c-card__title {
    color: #424242;
}

.c-category {
    display: inline-block;
    padding: 6px 5px;
    background-color: #395780;
    color: #fff;
    font-size: 11px;
    font-weight: 500;
    line-height: 1;
}

@media only screen and (min-width: 737px) {
    .c-category {
        padding: 6px 5px;
        font-size: 12px;
    }
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-category {
    background-color: #4f8039;
}

.is-scheme-green .c-category {
    background-color: #4f8039;
}

.is-scheme-red .c-category {
    background-color: #803939;
}

.is-scheme-black .c-category {
    background-color: #424242;
}

.c-contact-item {
    position: relative;
    margin: 30px 0;
}

@media only screen and (min-width: 737px) {
    .c-contact-item {
        margin: 40px 0;
    }
}

.c-contact-item__label {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.88;
    color: #333;
}

.c-contact-item__input,
.c-contact-item__textarea {
    border: solid 1px #cbd6e6;
    padding: 10px;
    width: 100%;
    background-color: #f5f8fa;
}

.c-contact-item__input:focus,
.c-contact-item__textarea:focus {
    border: solid 1px #395780;
}

.c-contact-item__input::-webkit-input-placeholder,
.c-contact-item__textarea::-webkit-input-placeholder {
    color: #cbd6e6;
}

.c-contact-item__input::-moz-placeholder,
.c-contact-item__textarea::-moz-placeholder {
    color: #cbd6e6;
}

.c-contact-item__input:-ms-input-placeholder,
.c-contact-item__textarea:-ms-input-placeholder {
    color: #cbd6e6;
}

.c-contact-item__input::-ms-input-placeholder,
.c-contact-item__textarea::-ms-input-placeholder {
    color: #cbd6e6;
}

.c-contact-item__input::placeholder,
.c-contact-item__textarea::placeholder {
    color: #cbd6e6;
}

.c-contact-item__input {
    height: 40px;
}

.c-contact-item__input--error {
    border: solid 1px #d32f2f;
}

.c-contact-item__submit {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px;
    border: 1px solid #395780;
    width: 100%;
    height: 60px;
    background-color: #395780;
    color: #fff;
    font-size: 16px;
    text-align: center;
    cursor: pointer;
}

@media only screen and (min-width: 737px) {
    .c-contact-item__submit {
        width: 280px;
    }
}

.c-contact-item__cancel {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: 20px;
    padding: 10px;
    border: 1px solid #395780;
    width: 100%;
    height: 60px;
    background-color: #fff;
    color: #333;
    font-size: 16px;
    text-align: center;
}

@media only screen and (min-width: 737px) {
    .c-contact-item__cancel {
        width: 280px;
    }
}

.c-contact-item__danger {
    position: relative;
    top: -2px;
    padding: 0.3em 0.5em;
    font-size: 13px;
    font-weight: bold;
    color: #fff;
    background-color: #d32f2f;
    margin-left: 10px;
    vertical-align: middle;
    border-radius: 3px;
}

.c-contact-item__error {
    position: absolute;
    bottom: -2em;
    color: #d32f2f;
    font-size: 14px;
}

.c-contact {
    padding: 50px 0;
    background-color: #fafafa;
}

@media only screen and (min-width: 737px) {
    .c-contact {
        padding: 100px 0;
    }
}

.c-contact__btns {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto;
    grid-row-gap: 20px;
    margin-top: 50px;
}

@media only screen and (min-width: 737px) {
    .c-contact__btns {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
        -ms-grid-rows: 100%;
        grid-template-rows: 100%;
        grid-column-gap: 40px;
        width: 100%;
        max-width: 1140px;
        margin: 0 auto;
        margin-top: 50px;
    }
}

@media only screen and (min-width: 737px) {
    .c-contact__tel {
        width: 100%;
    }
}

.c-contact__tel-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100px;
    border: solid 1px #3f577d;
    background-color: #fff;
}

@media only screen and (min-width: 737px) {
    .c-contact__tel-link {
        height: 170px;
    }
}

.c-contact__tel-number {
    color: #395780;
    font-family: "Noto Serif JP", serif;
    font-size: 25px;
    font-weight: bold;
    line-height: 1.4;
    text-align: left;
}

@media only screen and (min-width: 737px) {
    .c-contact__tel-number {
        font-size: 25px;
    }
}

.c-contact__tel-label {
    font-size: 23px;
}

@media only screen and (min-width: 737px) {
    .c-contact__tel-label {
        font-size: 38px;
        font-weight: 500;
    }
}

.c-contact__tel-time {
    color: #616161;
    font-size: 14px;
    text-align: center;
}

@media only screen and (min-width: 737px) {
    .c-contact__tel-time {
        font-size: 25px;
    }
}

@media only screen and (max-width: 736px) {
    .c-contact__inquiry a {
        width: 100%;
        height: 100px;
    }
}

@media only screen and (min-width: 737px) {
    .c-contact__inquiry {
        width: 100%;
    }
    .c-contact__inquiry a {
        width: 100%;
        height: 170px;
    }
}

.c-contact__notes {
    margin-top: 20px;
    font-size: 11px;
    line-height: 1.45;
    text-align: left;
}

@media only screen and (min-width: 737px) {
    .c-contact__notes {
        font-size: 12px;
        line-height: 2.5;
        text-align: center;
    }
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-contact__tel-number {
    color: #4f8039;
}

.is-scheme-red .c-contact__tel-number {
    color: #803939;
}

.is-scheme-black .c-contact__tel-number {
    color: #424242;
}

.is-scheme-green .c-contact__tel-link {
    border: solid 1px #5a7e42;
}

.is-scheme-red .c-contact__tel-link {
    border: solid 1px #803939;
}

.is-scheme-black .c-contact__tel-link {
    border: solid 1px #3f577d;
}

.c-image {
    text-align: center;
}

.c-image img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 450px;
}

@media only screen and (min-width: 737px) {
    .c-image img {
        max-width: 1400px;
    }
}

.c-list {
    padding: 20px;
    border: solid 1px #395780;
}

.c-list__item {
    position: relative;
    padding-left: 20px;
    color: #333;
    font-size: 14px;
    text-align: left;
}

.c-list__item:before {
    position: absolute;
    top: 9px;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background-color: #395780;
    content: "";
}

.c-mainvisual {
    position: relative;
}

.c-mainvisual__inner {
    position: relative;
    height: 500px;
}

@media only screen and (min-width: 737px) {
    .c-mainvisual__inner {
        height: 50vw;
        max-height: 700px;
    }
}

.c-mainvisual__lead {
    color: #fff;
    font-family: "Noto Serif JP", serif;
    font-size: 22px;
    font-weight: bold;
    line-height: 1.45;
    text-align: left;
}

@media only screen and (min-width: 737px) {
    .c-mainvisual__lead {
        padding: 50px 75px;
        font-size: 50px;
        line-height: 1.5;
    }
}

.c-mainvisual__bg {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 100%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media only screen and (min-width: 737px) {
    .c-mainvisual__bg {
        width: 100%;
    }
}

.c-mainvisual__bg-picture {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    max-height: 500px;
}

@media only screen and (min-width: 737px) {
    .c-mainvisual__bg-picture {
        height: 50vw;
        max-height: 700px;
    }
}


/* c-mainvisual__lead パターン
--------------------------------------------------------- */

@media only screen and (max-width: 736px) {
    .c-mainvisual.c-mainvisual--lead1 .c-mainvisual__lead {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: auto;
        padding: 20px 10px;
        background-color: #395780;
        text-align: center;
    }
}

@media only screen and (min-width: 737px) {
    .c-mainvisual.c-mainvisual--lead1 .c-mainvisual__lead {
        position: absolute;
        left: 0;
        bottom: 100px;
        background-color: rgba(57, 87, 128, 0.8);
    }
}

@media only screen and (min-width: 737px) {
    .c-mainvisual.c-mainvisual--lead2 .c-mainvisual__bg:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.25);
        content: "";
        z-index: 1;
    }
}

@media only screen and (max-width: 736px) {
    .c-mainvisual.c-mainvisual--lead2 .c-mainvisual__lead {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: auto;
        padding: 20px 10px;
        background-color: #395780;
        text-align: center;
    }
}

@media only screen and (min-width: 737px) {
    .c-mainvisual.c-mainvisual--lead2 .c-mainvisual__lead {
        position: absolute;
        top: 50%;
        left: 50%;
        white-space: nowrap;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
}

.c-news-article {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    -ms-grid-rows: auto auto 1fr;
    grid-template-rows: auto auto 1fr;
    grid-row-gap: 20px;
    padding: 0;
}

@media only screen and (min-width: 737px) {
    .c-news-article {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        -ms-grid-rows: auto auto 1fr;
        grid-template-rows: auto auto 1fr;
        grid-row-gap: 20px;
        padding: 0;
    }
}

.c-news-article__image {
    -ms-grid-row: 3;
    grid-row: 3;
    padding-top: 10px;
}

@media only screen and (max-width: 736px) {
    .c-news-article__image {
        width: 100vw;
        margin: 0 calc(50% - 50vw);
    }
}

@media only screen and (min-width: 737px) {
    .c-news-article__image {
        padding-top: 30px;
    }
}

.c-news-article__image img {
    width: 100%;
    height: auto;
}

.c-news-article__head {
    -ms-grid-row: 1;
    grid-row: 1;
    font-size: 16px;
}

@media only screen and (min-width: 737px) {
    .c-news-article__head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-grid-row: 1;
        grid-row: 1;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.c-news-article__date {
    color: #395780;
    font-weight: 500;
    line-height: 1.5;
}

@media only screen and (min-width: 737px) {
    .c-news-article__date {
        font-size: 20px;
    }
}

.c-news-article__category {
    margin-left: 15px;
}

.c-news-article__title {
    -ms-grid-row: 2;
    grid-row: 2;
    color: #333;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}

@media only screen and (min-width: 737px) {
    .c-news-article__title {
        -ms-grid-row: 2;
        grid-row: 2;
        font-size: 20px;
        text-align: left;
    }
}

.c-news-article__content {
    -ms-grid-row: 4;
    grid-row: 4;
    color: #333;
    font-size: 14px;
    line-height: 1.88;
}

@media only screen and (min-width: 737px) {
    .c-news-article__content {
        -ms-grid-row: 4;
        grid-row: 4;
        padding-top: 30px;
        font-size: 16px;
    }
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-news-article__date {
    color: #4f8039;
}

.is-scheme-red .c-news-article__date {
    color: #803939;
}

.is-scheme-black .c-news-article__date {
    color: #424242;
}

.c-news-list {
    border-bottom: 1px solid #3f577d;
}

.c-news-list__link {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 100px 1fr;
    grid-template-columns: 100px 1fr;
    -ms-grid-rows: auto 1fr;
    grid-template-rows: auto 1fr;
    padding: 10px 0;
}

@media only screen and (min-width: 737px) {
    .c-news-list__link {
        -ms-grid-columns: 120px 1fr;
        grid-template-columns: 120px 1fr;
        padding: 20px 0;
    }
}

.c-news-list__date {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
    color: #395780;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    text-align: left;
}

@media only screen and (min-width: 737px) {
    .c-news-list__date {
        font-size: 20px;
    }
}

.c-news-list__category {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    font-size: 16px;
}

.c-news-list__title {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / 3;
    -ms-grid-row: 2;
    grid-row: 2;
    color: #333;
    font-size: 16px;
    line-height: 1.5;
    text-align: left;
}

@media only screen and (min-width: 737px) {
    .c-news-list__title {
        font-size: 20px;
    }
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-news-list__date {
    color: #4f8039;
}

.is-scheme-red .c-news-list__date {
    color: #803939;
}

.is-scheme-black .c-news-list__date {
    color: #424242;
}

.c-news {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    -ms-grid-rows: auto auto auto 1fr auto;
    grid-template-rows: auto auto auto 1fr auto;
    grid-row-gap: 10px;
    padding: 10px 0;
}

@media only screen and (min-width: 737px) {
    .c-news {
        /*
        -ms-grid-columns: 33.3333333333333% 58.3333333333333%;
        grid-template-columns: 33.3333333333333% 58.3333333333333%;
        */
        -ms-grid-columns: 0% 58.3333333333333%;
        grid-template-columns: 0% 58.3333333333333%;
        -ms-grid-rows: auto auto 1fr auto;
        grid-template-rows: auto auto 1fr auto;
        grid-column-gap: 8.3333333333333%;
        grid-row-gap: 10px;
        padding: 20px 0;
    }
}

.c-news__image {
    -ms-grid-row: 1;
    grid-row: 1;
}

@media only screen and (min-width: 737px) {
    .c-news__image {
        -ms-grid-column: 1;
        grid-column: 1;
        -ms-grid-row: 1;
        -ms-grid-row-span: 4;
        grid-row: 1 / 5;
    }
}

.c-news__image img {
    width: 100%;
    height: auto;
}

.c-news__head {
    -ms-grid-row: 2;
    grid-row: 2;
    font-size: 16px;
}

@media only screen and (min-width: 737px) {
    .c-news__head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-grid-column: 2;
        grid-column: 2;
        -ms-grid-row: 1;
        grid-row: 1;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.c-news__date {
    color: #395780;
    font-weight: 500;
    line-height: 1.5;
}

@media only screen and (min-width: 737px) {
    .c-news__date {
        font-size: 20px;
    }
}

.c-news__category {
    margin-left: 15px;
}

.c-news__title {
    -ms-grid-row: 3;
    grid-row: 3;
    color: #333;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}

@media only screen and (min-width: 737px) {
    .c-news__title {
        -ms-grid-column: 2;
        grid-column: 2;
        -ms-grid-row: 2;
        grid-row: 2;
        font-size: 20px;
    }
}

.c-news__content {
    position: relative;
    overflow: hidden;
    -ms-grid-row: 4;
    grid-row: 4;
    max-height: 9.4em;
    color: #333;
    font-size: 14px;
    line-height: 1.88;
}

@media only screen and (min-width: 737px) {
    .c-news__content {
        -ms-grid-column: 2;
        grid-column: 2;
        -ms-grid-row: 3;
        grid-row: 3;
        max-height: 13.16em;
        padding-top: 5px;
        font-size: 16px;
    }
}

.c-news__detail {
    -ms-grid-row: 5;
    grid-row: 5;
    margin: 0 25px;
    padding-top: 20px;
}

@media only screen and (max-width: 736px) {
    .c-news__detail a {
        width: 100%;
    }
}

@media only screen and (min-width: 737px) {
    .c-news__detail {
        -ms-grid-column: 2;
        grid-column: 2;
        -ms-grid-row: 4;
        grid-row: 4;
        margin: 0;
        padding-top: 0;
    }
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-news__date {
    color: #4f8039;
}

.is-scheme-red .c-news__date {
    color: #803939;
}

.is-scheme-black .c-news__date {
    color: #424242;
}

.c-notes__item {
    margin-left: 1.3em;
    color: #333;
    font-size: 11px;
    line-height: 1.45;
    text-align: left;
    text-indent: -1.3em;
}

@media only screen and (max-width: 736px) {
    .c-notes__item {
        font-size: 12px;
        line-height: 1.67;
    }
}

.c-pager__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.c-pager__list li {
    margin: 0 5px;
}

@media only screen and (min-width: 737px) {
    .c-pager__list li a:hover {
        background-color: #fff;
        color: #395780;
    }
}

.c-pager__item {
    display: block;
    min-width: 40px;
    height: 40px;
    border: 1px solid #395780;
    background-color: #395780;
    color: #fff;
    font-size: 18px;
    line-height: 40px;
    text-align: center;
}

.c-pager__item--current {
    background-color: #fff;
    color: #395780;
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-pager__item {
    border: 1px solid #4f8039;
}

.is-scheme-green .c-pager__item--current {
    background-color: #4f8039;
}

.is-scheme-red .c-pager__item {
    border: 1px solid #803939;
}

.is-scheme-red .c-pager__item--current {
    background-color: #803939;
}

.is-scheme-black .c-pager__item {
    border: 1px solid #424242;
}

.is-scheme-black .c-pager__item--current {
    background-color: #424242;
}

@media only screen and (max-width: 736px) {
    .c-table__wrap {
        overflow: auto;
        white-space: nowrap;
    }
}

.c-table {
    width: 100%;
    border: 1px solid #395780;
}

.c-table tr {
    border-bottom: 1px solid #395780;
}

.c-table td {
    padding: 20px;
    border-right: 1px solid #395780;
    background: #fff;
    font-size: 16px;
}

@media only screen and (min-width: 737px) {
    .c-table td {
        font-size: 20px;
    }
}

.c-table td:last-child {
    border-right: 0;
}

.c-table th {
    padding: 20px 25px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    background-color: #395780;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
}

@media only screen and (min-width: 737px) {
    .c-table th {
        font-size: 20px;
    }
}

.c-table th:last-child {
    border-right: 0;
}

.c-table__label {
    width: 300px;
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-table tr {
    border-bottom: 1px solid #4f8039;
}

.is-scheme-green .c-table td {
    border-right: 1px solid #4f8039;
}

.is-scheme-green .c-table th {
    background-color: #4f8039;
}

.is-scheme-red .c-table tr {
    border-bottom: 1px solid #803939;
}

.is-scheme-red .c-table td {
    border-right: 1px solid #803939;
}

.is-scheme-red .c-table th {
    background-color: #803939;
}

.is-scheme-black .c-table tr {
    border-bottom: 1px solid #424242;
}

.is-scheme-black .c-table td {
    border-right: 1px solid #424242;
}

.is-scheme-black .c-table th {
    background-color: #424242;
}

.c-text {
    color: #333;
    font-size: 14px;
    font-weight: normal;
    letter-spacing: normal;
    line-height: 1.79;
    text-align: left;
}

@media only screen and (min-width: 737px) {
    .c-text {
        font-size: 16px;
        line-height: 1.88;
    }
}

.c-title {
    color: #395780;
    font-family: "Noto Serif JP", serif;
    font-size: 25px;
    font-weight: bold;
    letter-spacing: 2.5px;
    text-align: center;
}

.c-title span {
    padding: 0 15px 15px;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #eaeef2));
    background: -webkit-linear-gradient(transparent 40%, #eaeef2 40%);
    background: linear-gradient(transparent 40%, #eaeef2 40%);
}

@media only screen and (min-width: 737px) {
    .c-title {
        font-size: 40px;
    }
}

@media only screen and (min-width: 737px) {
    .c-title__sub {
        margin: 40px 0 0;
        color: #333;
        font-size: 20px;
        letter-spacing: normal;
        line-height: 1.5;
        text-align: center;
    }
}

.c-title__page {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 40px 20px;
    background-color: #395780;
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.45;
    text-align: center;
}

@media only screen and (min-width: 737px) {
    .c-title__page {
        height: 257px;
        padding: 0;
        font-size: 40px;
        letter-spacing: 4px;
        line-height: 2;
    }
}

.c-title__section {
    position: relative;
    padding-left: 20px;
    color: #333;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.48;
    text-align: left;
}

.c-title__section:before {
    position: absolute;
    top: calc(50% - 0.75em);
    left: 0;
    width: 5px;
    height: 30px;
    background-color: #395780;
    content: "";
}

@media only screen and (min-width: 737px) {
    .c-title__section {
        padding-left: 20px;
        font-size: 25px;
    }
    .c-title__section:before {
        top: calc(50% - 0.58em);
        width: 5px;
        height: 30px;
    }
}


/* color scheme
--------------------------------------------------------- */

.is-scheme-green .c-title {
    color: #4f8039;
}

.is-scheme-green .c-title__page {
    background-color: #4f8039;
}

.is-scheme-green .c-title__section:before {
    background-color: #4f8039;
}

.is-scheme-red .c-title {
    color: #803939;
}

.is-scheme-red .c-title__page {
    background-color: #803939;
}

.is-scheme-red .c-title__section:before {
    background-color: #803939;
}

.is-scheme-black .c-title {
    color: #424242;
}

.is-scheme-black .c-title__page {
    background-color: #424242;
}

.is-scheme-black .c-title__section:before {
    background-color: #424242;
}

.is-scheme-green .c-title span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #e9eee7));
    background: -webkit-linear-gradient(transparent 40%, #e9eee7 40%);
    background: linear-gradient(transparent 40%, #e9eee7 40%);
}

.is-scheme-red .c-title span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #eee7e7));
    background: -webkit-linear-gradient(transparent 40%, #eee7e7 40%);
    background: linear-gradient(transparent 40%, #eee7e7 40%);
}

.is-scheme-black .c-title span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #e8e8e8));
    background: -webkit-linear-gradient(transparent 40%, #e8e8e8 40%);
    background: linear-gradient(transparent 40%, #e8e8e8 40%);
}

.p-contact {
    margin: 20px 0 100px;
}

@media only screen and (min-width: 737px) {
    .p-contact {
        margin: 40px 0 100px;
    }
}

@media only screen and (min-width: 737px) {
    .p-contact__list {
        margin: 0 auto;
        max-width: 700px;
    }
}

.p-contact__confirm {
    font-size: 18px;
    text-align: center;
}

.p-contact__thanks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media only screen and (min-width: 737px) {
    .p-contact__thanks {
        height: 30vh;
    }
}

.p-contact__thanks-text {
    padding-top: 80px;
    font-size: 18px;
    text-align: center;
}

@media only screen and (min-width: 737px) {
    .p-contact__thanks-text {
        padding-top: 40px;
    }
}

@media only screen and (min-width: 737px) {
    .p-news__list {
        padding-top: 80px;
    }
}

.p-news__item {
    padding: 30px 0;
    border-bottom: 1px solid #395780;
}

.p-news__item:first-child {
    padding-top: 0;
}

.p-news__pager {
    padding: 100px 0;
}

.p-news__article {
    padding: 30px 0 50px;
}

@media only screen and (min-width: 737px) {
    .p-news__article {
        margin: 0 auto;
        padding: 80px 0 100px;
        max-width: 1200px;
    }
}

.p-news__article .c-news-article__title {
    text-align: left;
}

@media only screen and (max-width: 736px) {
    .p-news__article .c-news-article__title span {
        padding-left: 5px;
        padding-right: 5px;
    }
}

.u-mt0 {
    margin-top: 0 !important;
}

.u-mt5 {
    margin-top: 5px !important;
}

.u-mt10 {
    margin-top: 10px !important;
}

.u-mt15 {
    margin-top: 15px !important;
}

.u-mt20 {
    margin-top: 20px !important;
}

.u-mt30 {
    margin-top: 30px !important;
}

.u-mt40 {
    margin-top: 40px !important;
}

.u-mt50 {
    margin-top: 50px !important;
}

.u-mt60 {
    margin-top: 60px !important;
}

.u-mt70 {
    margin-top: 70px !important;
}

.u-mt80 {
    margin-top: 80px !important;
}

.u-mt90 {
    margin-top: 90px !important;
}

.u-mt100 {
    margin-top: 100px !important;
}

@media only screen and (min-width: 737px) {
    .u-pc-mt0 {
        margin-top: 0 !important;
    }
    .u-pc-mt5 {
        margin-top: 5px !important;
    }
    .u-pc-mt10 {
        margin-top: 10px !important;
    }
    .u-pc-mt15 {
        margin-top: 15px !important;
    }
    .u-pc-mt20 {
        margin-top: 20px !important;
    }
    .u-pc-mt30 {
        margin-top: 30px !important;
    }
    .u-pc-mt40 {
        margin-top: 40px !important;
    }
    .u-pc-mt50 {
        margin-top: 50px !important;
    }
    .u-pc-mt60 {
        margin-top: 60px !important;
    }
    .u-pc-mt70 {
        margin-top: 70px !important;
    }
    .u-pc-mt80 {
        margin-top: 80px !important;
    }
    .u-pc-mt90 {
        margin-top: 90px !important;
    }
    .u-pc-mt100 {
        margin-top: 100px !important;
    }
}

@media only screen and (max-width: 736px) {
    .u-sp-mt0 {
        margin-top: 0 !important;
    }
    .u-sp-mt5 {
        margin-top: 5px !important;
    }
    .u-sp-mt10 {
        margin-top: 10px !important;
    }
    .u-sp-mt15 {
        margin-top: 15px !important;
    }
    .u-sp-mt20 {
        margin-top: 20px !important;
    }
    .u-sp-mt30 {
        margin-top: 30px !important;
    }
    .u-sp-mt40 {
        margin-top: 40px !important;
    }
    .u-sp-mt50 {
        margin-top: 50px !important;
    }
    .u-sp-mt60 {
        margin-top: 60px !important;
    }
    .u-sp-mt70 {
        margin-top: 70px !important;
    }
    .u-sp-mt80 {
        margin-top: 80px !important;
    }
    .u-sp-mt90 {
        margin-top: 90px !important;
    }
}

.u-mb0 {
    margin-bottom: 0 !important;
}

.u-mb5 {
    margin-bottom: 5px !important;
}

.u-mb10 {
    margin-bottom: 10px !important;
}

.u-mb15 {
    margin-bottom: 15px !important;
}

.u-mb20 {
    margin-bottom: 20px !important;
}

.u-mb30 {
    margin-bottom: 30px !important;
}

.u-mb40 {
    margin-bottom: 40px !important;
}

.u-mb50 {
    margin-bottom: 50px !important;
}

.u-mb60 {
    margin-bottom: 60px !important;
}

.u-mb70 {
    margin-bottom: 70px !important;
}

.u-mb80 {
    margin-bottom: 80px !important;
}

.u-mb90 {
    margin-bottom: 90px !important;
}

.u-mb100 {
    margin-bottom: 100px !important;
}

@media only screen and (min-width: 737px) {
    .u-pc-mb0 {
        margin-bottom: 0 !important;
    }
    .u-pc-mb5 {
        margin-bottom: 5px !important;
    }
    .u-pc-mb10 {
        margin-bottom: 10px !important;
    }
    .u-pc-mb15 {
        margin-bottom: 15px !important;
    }
    .u-pc-mb20 {
        margin-bottom: 20px !important;
    }
    .u-pc-mb30 {
        margin-bottom: 30px !important;
    }
    .u-pc-mb40 {
        margin-bottom: 40px !important;
    }
    .u-pc-mb50 {
        margin-bottom: 50px !important;
    }
    .u-pc-mb60 {
        margin-bottom: 60px !important;
    }
    .u-pc-mb70 {
        margin-bottom: 70px !important;
    }
    .u-pc-mb80 {
        margin-bottom: 80px !important;
    }
    .u-pc-mb90 {
        margin-bottom: 90px !important;
    }
    .u-pc-mb100 {
        margin-bottom: 100px !important;
    }
}

@media only screen and (max-width: 736px) {
    .u-sp-mb0 {
        margin-bottom: 0 !important;
    }
    .u-sp-mb5 {
        margin-bottom: 5px !important;
    }
    .u-sp-mb10 {
        margin-bottom: 10px !important;
    }
    .u-sp-mb15 {
        margin-bottom: 15px !important;
    }
    .u-sp-mb20 {
        margin-bottom: 20px !important;
    }
    .u-sp-mb30 {
        margin-bottom: 30px !important;
    }
    .u-sp-mb40 {
        margin-bottom: 40px !important;
    }
    .u-sp-mb50 {
        margin-bottom: 50px !important;
    }
    .u-sp-mb60 {
        margin-bottom: 60px !important;
    }
    .u-sp-mb70 {
        margin-bottom: 70px !important;
    }
    .u-sp-mb80 {
        margin-bottom: 80px !important;
    }
    .u-sp-mb90 {
        margin-bottom: 90px !important;
    }
    .u-sp-mb100 {
        margin-bottom: 100px !important;
    }
}

.u-pt0 {
    padding-top: 0 !important;
}

.u-pt5 {
    padding-top: 5px !important;
}

.u-pt10 {
    padding-top: 10px !important;
}

.u-pt15 {
    padding-top: 15px !important;
}

.u-pt20 {
    padding-top: 20px !important;
}

.u-pt30 {
    padding-top: 30px !important;
}

.u-pt40 {
    padding-top: 40px !important;
}

.u-pt50 {
    padding-top: 50px !important;
}

.u-pt60 {
    padding-top: 60px !important;
}

.u-pt70 {
    padding-top: 70px !important;
}

.u-pt80 {
    padding-top: 80px !important;
}

.u-pt90 {
    padding-top: 90px !important;
}

.u-pt100 {
    padding-top: 100px !important;
}

@media only screen and (min-width: 737px) {
    .u-pc-pt0 {
        padding-top: 0 !important;
    }
    .u-pc-pt5 {
        padding-top: 5px !important;
    }
    .u-pc-pt10 {
        padding-top: 10px !important;
    }
    .u-pc-pt15 {
        padding-top: 15px !important;
    }
    .u-pc-pt20 {
        padding-top: 20px !important;
    }
    .u-pc-pt30 {
        padding-top: 30px !important;
    }
    .u-pc-pt40 {
        padding-top: 40px !important;
    }
    .u-pc-pt50 {
        padding-top: 50px !important;
    }
    .u-pc-pt60 {
        padding-top: 60px !important;
    }
    .u-pc-pt70 {
        padding-top: 70px !important;
    }
    .u-pc-pt80 {
        padding-top: 80px !important;
    }
    .u-pc-pt90 {
        padding-top: 90px !important;
    }
    .u-pc-pt100 {
        padding-top: 100px !important;
    }
}

@media only screen and (max-width: 736px) {
    .u-sp-pt0 {
        padding-top: 0 !important;
    }
    .u-sp-pt5 {
        padding-top: 5px !important;
    }
    .u-sp-pt10 {
        padding-top: 10px !important;
    }
    .u-sp-pt15 {
        padding-top: 15px !important;
    }
    .u-sp-pt20 {
        padding-top: 20px !important;
    }
    .u-sp-pt30 {
        padding-top: 30px !important;
    }
    .u-sp-pt40 {
        padding-top: 40px !important;
    }
    .u-sp-pt50 {
        padding-top: 50px !important;
    }
    .u-sp-pt60 {
        padding-top: 60px !important;
    }
    .u-sp-pt70 {
        padding-top: 70px !important;
    }
    .u-sp-pt80 {
        padding-top: 80px !important;
    }
    .u-sp-pt90 {
        padding-top: 90px !important;
    }
    .u-sp-pt100 {
        padding-top: 100px !important;
    }
}

.u-pb0 {
    padding-bottom: 0 !important;
}

.u-pb5 {
    padding-bottom: 5px !important;
}

.u-pb10 {
    padding-bottom: 10px !important;
}

.u-pb15 {
    padding-bottom: 15px !important;
}

.u-pb20 {
    padding-bottom: 20px !important;
}

.u-pb30 {
    padding-bottom: 30px !important;
}

.u-pb40 {
    padding-bottom: 40px !important;
}

.u-pb50 {
    padding-bottom: 50px !important;
}

.u-pb60 {
    padding-bottom: 60px !important;
}

.u-pb70 {
    padding-bottom: 70px !important;
}

.u-pb80 {
    padding-bottom: 80px !important;
}

.u-pb90 {
    padding-bottom: 90px !important;
}

.u-pb100 {
    padding-bottom: 100px !important;
}

@media only screen and (min-width: 737px) {
    .u-pc-pb0 {
        padding-bottom: 0 !important;
    }
    .u-pc-pb5 {
        padding-bottom: 5px !important;
    }
    .u-pc-pb10 {
        padding-bottom: 10px !important;
    }
    .u-pc-pb15 {
        padding-bottom: 15px !important;
    }
    .u-pc-pb20 {
        padding-bottom: 20px !important;
    }
    .u-pc-pb30 {
        padding-bottom: 30px !important;
    }
    .u-pc-pb40 {
        padding-bottom: 40px !important;
    }
    .u-pc-pb50 {
        padding-bottom: 50px !important;
    }
    .u-pc-pb60 {
        padding-bottom: 60px !important;
    }
    .u-pc-pb70 {
        padding-bottom: 70px !important;
    }
    .u-pc-pb80 {
        padding-bottom: 80px !important;
    }
    .u-pc-pb90 {
        padding-bottom: 90px !important;
    }
    .u-pc-pb100 {
        padding-bottom: 100px !important;
    }
}

@media only screen and (max-width: 736px) {
    .u-sp-pb0 {
        padding-bottom: 0 !important;
    }
    .u-sp-pb5 {
        padding-bottom: 5px !important;
    }
    .u-sp-pb10 {
        padding-bottom: 10px !important;
    }
    .u-sp-pb15 {
        padding-bottom: 15px !important;
    }
    .u-sp-pb20 {
        padding-bottom: 20px !important;
    }
    .u-sp-pb30 {
        padding-bottom: 30px !important;
    }
    .u-sp-pb40 {
        padding-bottom: 40px !important;
    }
    .u-sp-pb50 {
        padding-bottom: 50px !important;
    }
    .u-sp-pb60 {
        padding-bottom: 60px !important;
    }
    .u-sp-pb70 {
        padding-bottom: 70px !important;
    }
    .u-sp-pb80 {
        padding-bottom: 80px !important;
    }
    .u-sp-pb90 {
        padding-bottom: 90px !important;
    }
    .u-sp-pb100 {
        padding-bottom: 100px !important;
    }
}

.u-ta-c {
    text-align: center !important;
}

.u-ta-l {
    text-align: left !important;
}

.u-ta-r {
    text-align: right !important;
}

.u-va-t {
    vertical-align: top !important;
}

.u-va-m {
    vertical-align: middle !important;
}

.u-va-b {
    vertical-align: bottom !important;
}

.u-pos-r {
    position: relative !important;
}

.u-pos-a {
    position: absolute !important;
}

.u-show {
    display: block !important;
}

.u-hide {
    display: none !important;
}

.u-visible {
    visibility: visible !important;
}

.u-invisible {
    visibility: hidden !important;
}

.u-cfx {
    *zoom: 1;
}

.u-cfx:before,
.u-cfx:after {
    display: table;
    content: '';
}

.u-cfx:after {
    clear: both;
}

@media only screen and (min-width: 737px) {
    .u-pc-none {
        display: none !important;
    }
}

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

.u-bg-white {
    background-color: #fff;
}

.u-bg-gray {
    background-color: #e4e4e4;
}

.u-color-white {
    color: #fff;
}

.u-color-333 {
    color: #333;
}

.u-grid {
    display: -ms-grid;
    display: grid;
    grid-row-gap: 50px;
}

.u-grid-s {
    display: -ms-grid;
    display: grid;
    grid-row-gap: 15px;
}

.u-bg-alternate:nth-child(odd) {
    background-color: #fff;
}

.u-bg-alternate:nth-child(even) {
    background-color: #eaeef2;
}

.u-bg-alternate:nth-child(even) .c-title span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #fff));
    background: -webkit-linear-gradient(transparent 40%, #fff 40%);
    background: linear-gradient(transparent 40%, #fff 40%);
}

.is-scheme-navy .u-bg-alternate:nth-child(even) {
    background-color: #eaeef2;
}

.is-scheme-navy .u-bg-alternate:nth-child(even) .c-title span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #fff));
    background: -webkit-linear-gradient(transparent 40%, #fff 40%);
    background: linear-gradient(transparent 40%, #fff 40%);
}

.is-scheme-green .u-bg-alternate:nth-child(even) {
    background-color: #e9eee7;
}

.is-scheme-green .u-bg-alternate:nth-child(even) .c-title span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #fff));
    background: -webkit-linear-gradient(transparent 40%, #fff 40%);
    background: linear-gradient(transparent 40%, #fff 40%);
}

.is-scheme-red .u-bg-alternate:nth-child(even) {
    background-color: #eee7e7;
}

.is-scheme-red .u-bg-alternate:nth-child(even) .c-title span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #fff));
    background: -webkit-linear-gradient(transparent 40%, #fff 40%);
    background: linear-gradient(transparent 40%, #fff 40%);
}

.is-scheme-black .u-bg-alternate:nth-child(even) {
    background-color: #e8e8e8;
}

.is-scheme-black .u-bg-alternate:nth-child(even) .c-title span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #fff));
    background: -webkit-linear-gradient(transparent 40%, #fff 40%);
    background: linear-gradient(transparent 40%, #fff 40%);
}


/* */

.jobcanad-img {
    margin-right: 10px;
    padding: 5px;
    max-height: 100%;
    height: 100%;
}

.c-table td,
.c-table th {
    white-space: pre-wrap;
}