@charset "UTF-8";
/*! sanitize.css v5.0.0 | CC0 License | github.com/jonathantneal/sanitize.css */
/* Document (https://html.spec.whatwg.org/multipage/semantics.html#semantics)
   ========================================================================== */
/**
 * 1. Remove repeating backgrounds in all browsers (opinionated).
 * 2. Add box sizing inheritence in all browsers (opinionated).
 */
*,
::before,
::after {
  background-repeat: no-repeat;
  /* 1 */
  box-sizing: inherit;
  /* 2 */ }

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritence in all browsers (opinionated).
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */ }

/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Add the default cursor in all browsers (opinionated).
 * 3. Prevent font size adjustments after orientation changes in IE and iOS.
 */
html {
  box-sizing: border-box;
  /* 1 */
  cursor: default;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

/* Sections (https://html.spec.whatwg.org/multipage/semantics.html#sections)
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content (https://html.spec.whatwg.org/multipage/semantics.html#grouping-content)
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
nav ol,
nav ul {
  list-style: none; }

/**
 * 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 (https://html.spec.whatwg.org/multipage/semantics.html#text-level-semantics)
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * 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 style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #fff0;
  color: #000; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/*
 * Remove the text shadow on text selections (opinionated).
 * 1. Restore the coloring undone by defining the text shadow (opinionated).
 */
::-moz-selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #000;
  /* 1 */
  text-shadow: none; }

::selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #000;
  /* 1 */
  text-shadow: none; }

/* Embedded content (https://html.spec.whatwg.org/multipage/embedded-content.html#embedded-content)
   ========================================================================== */
/*
 * Change the alignment on media elements in all browers (opinionated).
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
svg {
  fill: currentColor; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Tabular data (https://html.spec.whatwg.org/multipage/tables.html#tables)
   ========================================================================== */
/**
 * Collapse border spacing
 */
table {
  border-collapse: collapse; }

/* Forms (https://html.spec.whatwg.org/multipage/forms.html#forms)
   ========================================================================== */
/**
 * Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  margin: 0; }

/**
 * Inherit styling in all browsers (opinionated).
 */
button,
input,
select,
textarea {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

/**
 * 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; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * 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 {
  border-style: none;
  padding: 0; }

/**
 * 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; }

/**
 * 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 {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * 1. Remove the default vertical scrollbar in IE.
 * 2. Change the resize direction on textareas in all browsers (opinionated).
 */
textarea {
  overflow: auto;
  /* 1 */
  resize: vertical;
  /* 2 */ }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  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"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[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 {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive elements (https://html.spec.whatwg.org/multipage/forms.html#interactive-elements)
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Scripting (https://html.spec.whatwg.org/multipage/scripting.html#scripting-3)
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

/* User interaction (https://html.spec.whatwg.org/multipage/interaction.html#editing)
   ========================================================================== */
/*
 * Remove the tapping delay on clickable elements (opinionated).
 * 1. Remove the tapping delay in IE 10.
 */
a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  /* 1 */
  touch-action: manipulation; }

/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none; }

/* ARIA (https://w3c.github.io/html-aria/)
   ========================================================================== */
/**
 * Change the cursor on busy elements (opinionated).
 */
[aria-busy="true"] {
  cursor: progress; }

/*
 * Change the cursor on control elements (opinionated).
 */
[aria-controls] {
  cursor: pointer; }

/*
 * Change the display on visually hidden accessible elements (opinionated).
 */
[aria-hidden="false"][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute; }

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements (opinionated).
 */
[aria-disabled] {
  cursor: default; }

/* Elements
--------------------------------------------- */
/*body*/
* {
  box-sizing: border-box; }

html * {
  font-feature-settings: "palt"; }

body {
  background: #fff;
  width: 100%;
  min-width: 100%;
  min-height: 100%; }

html,
body {
  height: 100%; }

/*typography*/
html {
  font-size: 62.5%; }

body {
  color: #343434;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  font-size: 1.4em;
  font-size: 1.4rem;
  line-height: 2; }

p {
  font-size: 1.4em;
  font-size: 1.4rem;
  line-height: 2;
  margin-top: 0px;
  margin-bottom: 28px; }

.lead {
  font-size: 1.4em;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.05em;
  margin-top: -0.5em; }

.copyright {
  font-size: 1em;
  font-size: 1rem;
  line-height: 1.5;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  display: block; }
  .copyright small {
    display: block;
    font-size: 1em;
    font-size: 1rem;
    line-height: 1;
    margin-top: 0px;
    margin-bottom: 10px; }

.gothic {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400; }

/*text*/
.small {
  font-size: 75%; }

.x-small {
  font-size: 90%; }

.large {
  font-size: 130%; }

.x-large {
  font-size: 115%; }

.txt-l {
  text-align: left; }

.txt-r {
  text-align: right; }

.txt-c {
  text-align: center; }

.color-danger {
  color: #d41d41; }

@media screen and (min-width: 1024px) {
  .lead {
    font-size: 2.4em;
    font-size: 2.4rem;
    line-height: 2; } }
/*fonts*/
/* ==========================================================================
license
========================================================================== */
/*
 * Noto Serif JP is lisenced under the SIL Open Font License 1.1
 * https://fonts.google.com/attribution
 * http://scripts.sil.org/OFL
 */
/*
 * Noto Sans JP is lisenced under the SIL Open Font License 1.1
 * https://fonts.google.com/attribution
 * http://scripts.sil.org/OFL
 */
/* ==========================================================================
web icon
========================================================================== */
@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?8thylv");
  src: url("../fonts/icomoon.eot?8thylv#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?8thylv") format("truetype"), url("../fonts/icomoon.woff?8thylv") format("woff"), url("../onts/icomoon.svg?8thylv#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-window-restore-regular:before {
  content: "\e903"; }

.icon-file-pdf-solid:before {
  content: "\e904"; }

.icon-youtube:before {
  content: "\e900"; }

.icon-facebook:before {
  content: "\e901"; }

.icon-arrow-r:before {
  content: "\e902"; }

/*heading*/
h1, h2, h3 {
  font-weight: 400; }

h1 {
  font-size: 3em;
  font-size: 3rem;
  line-height: 1.3333333333;
  margin-top: 0px;
  margin-bottom: 15px; }

h2 {
  font-size: 3.3em;
  font-size: 3.3rem;
  line-height: 1.0606060606;
  padding-top: 20px;
  padding-bottom: 20px;
  margin-top: 0px;
  margin-bottom: 30px; }

h3 {
  font-size: 2.6em;
  font-size: 2.6rem;
  line-height: 1.3461538462;
  margin-top: 30px;
  margin-bottom: 20px; }

h4 {
  font-weight: 400;
  font-size: 2em;
  font-size: 2rem;
  line-height: 1.25;
  margin-top: 60px;
  margin-bottom: 40px; }

h5, h6 {
  font-weight: 400;
  font-size: 1.8em;
  font-size: 1.8rem;
  line-height: 1.1111111111;
  margin-top: 20px;
  margin-bottom: 10px; }

h1 small, h2 small, h3 small, h1 .small, h2 .small, h3 .small {
  font-size: 80%; }

@media screen and (min-width: 1024px) {
  h2 {
    font-size: 3.6em;
    font-size: 3.6rem;
    line-height: 1;
    padding-top: 23px;
    padding-bottom: 24px;
    margin-top: 0px;
    margin-bottom: 55px; }

  h3 {
    font-size: 2.5em;
    font-size: 2.5rem;
    line-height: 1.4;
    margin-top: 40px;
    margin-bottom: 40px; }

  h4 {
    font-size: 2.3em;
    font-size: 2.3rem;
    line-height: 1.3043478261;
    margin-top: 145px;
    margin-bottom: 50px; }

  h5, h6 {
    font-size: 2em;
    font-size: 2rem;
    line-height: 1.25;
    margin-top: 20px;
    margin-bottom: 10px; }

  h1 small, h2 small, h3 small, h1 .small, h2 .small, h3 .small {
    font-size: 90%; } }
/*links*/
a {
  /*outline: none;*/
  text-decoration: underline;
  color: #343434;
  display: inline-block;
  -webkit-transition: 0.35s ease-in-out;
  -moz-transition: 0.35s ease-in-out;
  transition: 0.35s ease-in-out;
  -webkit-transition-property: all;
  transition-property: all; }
  a:hover {
    color: #676767;
    text-decoration: none; }
  a:focus {
    /*outline: none;*/ }

*:focus {
  /* outline: none;*/ }

a.disabled {
  color: #ccc !important;
  text-decoration: none;
  cursor: auto; }
  a.disabled:hover {
    color: #ccc; }

.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  padding: 0;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */ }

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  padding: 15px 23px 14px;
  text-decoration: none;
  width: auto;
  z-index: 100000;
  height: auto; }

/* Do not show the outline on the skip link target. */
.hm-ttl--fawad[tabindex="0"]:focus {
  outline: 0; }

/*-- Text --*/
.ft-w--bold {
	font-weight: bold;
}

.ft--italic {
	font-style: italic;
}

.txt--center {
	text-align: center;
}

.txt--right {
	text-align: right;
}

.txt--left {
	text-align: left;
}

.txt--under-line {
	text-decoration: underline;
}

.txt--strikethrough {
	text-decoration: line-through;
}

/*-- Margin --*/
.m-btm--05 {
	margin-bottom: .5rem;
}
.m-btm--1 {
	margin-bottom: 1rem;
}
.m-btm--2 {
	margin-bottom: 2rem;
}
.m-btm--3 {
	margin-bottom: 3rem;
}
.m-btm--4 {
	margin-bottom: 4rem;
}
.m-btm--5 {
	margin-bottom: 5rem;
}
.m-top--05 {
	margin-top: .5rem;
}
.m-top--1 {
	margin-top: 1rem;
}
.m-top--2 {
	margin-top: 2rem;
}
.m-top--3 {
	margin-top: 3rem;
}
.m-top--4 {
	margin-top: 4rem;
}
.m-left--1 {
	margin-left: 1rem;
}
.m-left--2 {
	margin-left: 2rem;
}
.m-left--4 {
	margin-left: 4rem;
}

/*list */
ul, ol, dt, dd, dl {
  margin: 0;
  padding: 0; }

ul, ol {
  margin-bottom: 0; }

ul > li, ol > li {
  margin-bottom: 0;
  list-style-position: inside; }

ul > li > ul > li, ol > li > ol > li {
  margin: 0; }

/*list-style*/
.list-position--initial{
list-style-position: initial !important;
}

.list-unstyled {
  list-style-type: none;
  padding-left: 0; }

.list-disc {
  list-style: none; }
  .list-disc > li {
    position: relative;
    padding-left: 1.5em; }
    .list-disc > li::before {
      background-color: #676767;
      content: "";
      position: absolute;
      left: 0;
      top: 12px;
      display: block;
      border-radius: 100%;
      height: 6px;
      width: 6px;
      overflow: hidden; }

.list-counte {
  list-style: none;
  counter-reset: number 0; }
  .list-counte > li {
    position: relative;
    padding-left: 1.5em;
    margin-bottom: 3em; }
    .list-counte > li::before {
      content: "";
      counter-increment: number 1;
      /* number カウンタの増加数をセット */
      content: counter(number) "";
      /* 表示形式を指定 */
      position: absolute;
      left: 0;
      top: 0px;
      display: block;
      font-size: 2em;
      font-size: 2rem;
      line-height: 1; }

.list-counte--brackets {
  list-style: none;
  counter-reset: number 0; }
  .list-counte--brackets > li {
    position: relative;
    padding-left: 2.5em; }
    .list-counte--brackets > li::before {
      content: "";
      counter-increment: number 1;
      /* number カウンタの増加数をセット */
      content: "(" counter(number) ")";
      /* 表示形式を指定 */
      position: absolute;
      left: 0;
      top: 0px;
      display: block;
      font-size: 1.5em;
      font-size: 1.5rem;
      line-height: 1.8666666667; }

.list-counte--kana {
  list-style: none;
  counter-reset: number 0; }
  .list-counte--kana > li {
    position: relative;
    padding-left: 2.5em; }
    .list-counte--kana > li::before {
      content: "";
      counter-increment: number 1;
      /* number カウンタの増加数をセット */
      content: "(" counter(number,katakana-iroha) ")";
      /* 表示形式を指定 */
      position: absolute;
      left: 0;
      top: 0px;
      display: block;
      font-size: 1.5em;
      font-size: 1.5rem;
      line-height: 1.8666666667; }

.list-kana {
  list-style: none;
  counter-reset: number 0; }
  .list-kana > li {
    position: relative;
    padding-left: 2.5em; }
    .list-kana > li::before {
      content: "";
      counter-increment: number 1;
      /* number カウンタの増加数をセット */
      content:  counter(number,katakana)  ".";
      /* 表示形式を指定 */
      position: absolute;
      left: 0;
      top: 0px;
      display: block;
      font-size: 1.5em;
      font-size: 1.5rem;
      line-height: 1.8666666667; }

.list-asterisk {
  list-style: none; }
  .list-asterisk > li {
    position: relative;
    padding-left: 1em; }
    .list-asterisk > li::before {
      content:  "*";
      /* 表示形式を指定 */
      position: absolute;
      left: 0;
      top: 0px;
      display: block;
      font-size: 1.5em;
      font-size: 1.5rem;
      line-height: 1.8666666667; }

.list-counte--lroman {
  list-style: none;
  counter-reset: number 0; }
  .list-counte--lroman > li {
    position: relative;
    padding-left: 2.5em; }
    .list-counte--lroman > li::before {
      content: "";
      counter-increment: number 1;
      /* number カウンタの増加数をセット */
      content: "(" counter(number,lower-roman) ")";
      /* 表示形式を指定 */
      position: absolute;
      left: 0;
      top: 0px;
      display: block;
      font-size: 1.5em;
      font-size: 1.5rem;
      line-height: 1.8666666667; }

.list-info li {
  margin: 0;
  letter-spacing: 0.06em; }
.list-info a {
  display: block; }
  .list-info a .date {
    font-size: 1em;
    font-size: 1rem;
    line-height: 2;
    margin-top: 0px;
    margin-bottom: 20px;
    display: block; }
  .list-info a .txt {
    font-size: 1.4em;
    font-size: 1.4rem;
    line-height: 1.4285714286;
    margin-top: 0px;
    margin-bottom: 25px;
    display: block; }
  .list-info a .img {
    width: 30px;
    margin-left: 5px; }

.list-txt {
  margin: 0; }


@media screen and (min-width: 1024px) {
  .list-info {
    margin: 0; }
    .list-info a {
      display: flex;
      flex-direction: row;
      justify-content: space-between; }
      .list-info a .date {
        width: 11em;
        font-size: 2em;
        font-size: 2rem;
        line-height: 1.9;
        margin-top: 0px;
        margin-bottom: 10px; }
      .list-info a .txt {
        flex: 1;
        font-size: 2.4em;
        font-size: 2.4rem;
        line-height: 1.5833333333;
        margin-top: 0px;
        margin-bottom: 10px; } }
/*buttons*/
input[type="button"], input[type="submit"], input[type="reset"] {
  cursor: pointer;
  line-height: 1;
  -webkit-appearance: none;
  border-radius: 0; }

button {
  cursor: pointer;
  line-height: 1;
  -webkit-appearance: none;
  border-radius: 0; }

input[type="button"][disabled], input[type="button"][readonly], input[type="button"][disabled]:hover, input[type="button"][readonly]:hover, input[type="submit"][disabled], input[type="submit"][readonly], input[type="submit"][disabled]:hover, input[type="submit"][readonly]:hover, input[type="reset"][disabled], input[type="reset"][readonly], input[type="reset"][disabled]:hover, input[type="reset"][readonly]:hover {
  color: #ccc !important;
  cursor: default !important;
  background-color: #f4f4f4 !important;
  border: solid 1px;
  border-color: #ccc !important;
  box-shadow: inset 1px 1px 1px rgba(255, 255, 255, 0.3) !important; }

button[disabled], button[readonly], button[disabled]:hover, button[readonly]:hover {
  color: #ccc !important;
  cursor: default !important;
  background-color: #f4f4f4 !important;
  border: solid 1px;
  border-color: #ccc !important;
  box-shadow: inset 1px 1px 1px rgba(255, 255, 255, 0.3) !important; }

/*
fieldset:disabled {
  button {
    @include btn-disabled();
  }
  input {
    &[type="button"], &[type="submit"], &[type="reset"] {
      @include btn-disabled();
    }
  }
}

*/
/*btn style*/
.btn, input.btn, button.btn {
  display: block;
  width: auto;
  font-size: 1.3em;
  font-size: 1.3rem;
  cursor: pointer;
  text-decoration: none;
  /*outline: none;*/
  vertical-align: middle;
  text-align: center;
  padding-top: 6px;
  padding-bottom: 6px;
  padding-left: 10px;
  padding-right: 10px;
  line-height: 1em;
  background-color: #343434;
  color: #fff;
  border: 1px solid #343434;
  -webkit-transition: 0.35s ease-in-out;
  -moz-transition: 0.35s ease-in-out;
  transition: 0.35s ease-in-out;
  -webkit-transition-property: all;
  transition-property: all;
  /*&.btn-rounded {
    border-radius: $btn_raund !important;
  }
	*/ }
  .btn i, input.btn i, button.btn i {
    margin-left: 3px;
    color: #fff;
    font-size: 1.2em;
    font-size: 1.2rem; }
  .btn:hover, input.btn:hover, button.btn:hover {
    background-color: #fff;
    color: #343434;
    border: 1px solid #343434; }
    .btn:hover i, input.btn:hover i, button.btn:hover i {
      color: #343434; }
  .btn.disabled, .btn.readonly, input.btn.disabled, input.btn.readonly, button.btn.disabled, button.btn.readonly {
    color: #eee !important;
    cursor: default !important;
    background-color: #ddd !important;
    border: solid 1px;
    border-color: #ddd !important;
    box-shadow: inset 1px 1px 1px rgba(255, 255, 255, 0.3) !important; }
    .btn.disabled:hover, .btn.readonly:hover, input.btn.disabled:hover, input.btn.readonly:hover, button.btn.disabled:hover, button.btn.readonly:hover {
      color: #eee !important;
      cursor: default !important;
      background-color: #ddd !important;
      border: solid 1px;
      border-color: #ddd !important;
      box-shadow: inset 1px 1px 1px rgba(255, 255, 255, 0.3) !important; }
  .btn.btn-l, input.btn.btn-l, button.btn.btn-l {
    display: block;
    width: auto;
    font-size: 1.6em;
    font-size: 1.6rem;
    cursor: pointer;
    text-decoration: none;
    /*outline: none;*/
    vertical-align: middle;
    text-align: center;
    padding-top: 32px;
    padding-bottom: 32px;
    padding-left: 20px;
    padding-right: 20px;
    line-height: 1em;
    letter-spacing: 0.06em; }

@media screen and (min-width: 1024px) {
  .btn, input.btn, button.btn {
    display: block;
    width: auto;
    font-size: 1.8em;
    font-size: 1.8rem;
    cursor: pointer;
    text-decoration: none;
    /*outline: none;*/
    vertical-align: middle;
    text-align: center;
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 10px;
    padding-right: 10px;
    line-height: 1em; }
    .btn i, input.btn i, button.btn i {
      margin-left: 10px;
      color: #fff;
      font-size: 1.6em;
      font-size: 1.6rem;
      line-height: 1em; }
    .btn.btn-l, input.btn.btn-l, button.btn.btn-l {
      display: block;
      width: auto;
      font-size: 3em;
      font-size: 3rem;
      cursor: pointer;
      text-decoration: none;
      /*outline: none;*/
      vertical-align: middle;
      text-align: center;
      padding-top: 44px;
      padding-bottom: 44px;
      padding-left: 10px;
      padding-right: 10px;
      line-height: 1em; }
      .btn.btn-l i, input.btn.btn-l i, button.btn.btn-l i {
        font-size: 2.8em;
        font-size: 2.8rem; } }
/* Layouts
--------------------------------------------------------------*/
/*-- header--*/
header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between; }

.header {
  width: 100%;
  height: 50px;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1;
  background-color: #fff; }

@media screen and (min-width: 1024px) {
  .header {
    height: 75px; } }
/*-- footer--*/
footer {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column; }

.footer {
  padding: 0 20px;
  text-align: center; }
  .footer .copyright {
    text-align: left;
    margin-bottom: 0; }
  .footer .footer-sns {
    text-align: center;
    margin-top: 50px; }
    .footer .footer-sns a {
      display: inline-block;
      margin: 0 10px;
      width: 35px;
      color: #343434;
      text-decoration: none; }
      .footer .footer-sns a i {
        font-size: 3.5em;
        font-size: 3.5rem;
        letter-spacing: 0; }

.footer-branding {
  padding: 50px 0 70px 0; }
  .footer-branding img {
    max-width: 100%; }

@media screen and (min-width: 1024px) {
  .footer {
    width: 960px;
    margin: 0 auto;
    padding: 0 0 25px 0;
    display: flex;
    flex-direction: row;
    text-align: left; }
    .footer .footer-sns {
      margin: 0 -10px 0 auto; }
      .footer .footer-sns a:hover {
        color: #676767; }

  .footer-branding {
    display: none; } }
/*--contents--*/
.wrap {
  width: 100%;
  height: 100%;
  text-align: center; }

.container {
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 0 20px;
  text-align: left; }
  .container section {
    padding: 100px 0 0 0; }

.row {
  list-style: none; }
  .row li {
    margin-bottom: 45px; }
    .row li:last-child {
      margin-bottom: 0; }

.column {
  list-style: none;
  margin: 0; }
  .column li {
    width: 100%;
    margin-bottom: 10px; }

@media screen and (min-width: 1024px) {
  .container {
    width: 960px;
    padding: 0; }
    .container section {
      padding: 140px 0 10px 0; }

  .row {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    margin: 0 -30px;
    flex-wrap: wrap; }
    .row.row-col3 li {
      width: calc(100% / 3);
      padding: 0 30px;
      margin-bottom: 0; }
    .row.row-col2 li {
      width: calc(100% / 2);
      padding: 0 30px;
      margin-bottom: 0; } }
/*Components
--------------------------------------------------------------*/
/*figure*/
figure {
  margin: 0;
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0;
  max-width: 100%; }

.figure {
  position: relative;
  height: auto;
  max-width: 360px;
  width: 100%;
  margin: 0 auto; }
  .figure .figure-ttl {
    font-size: 2em;
    font-size: 2rem;
    line-height: 1.25;
    margin-top: 0px;
    margin-bottom: 0px; }
    .figure .figure-ttl .figure-ttl--en {
      margin-bottom: 35px; }
  .figure.figure--s .figure-ttl {
    font-size: 2em;
    font-size: 2rem;
    line-height: 1.25;
    margin-top: 0px;
    margin-bottom: 0px; }
    .figure.figure--s .figure-ttl .figure-ttl--en {
      margin-bottom: 0; }

.figure-copy {
  font-size: 1.4em;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  margin-top: 28px;
  margin-bottom: 0px;
  word-wrap: break-word; }

.figure-auther {
  font-size: 2em;
  font-size: 2rem;
  line-height: 1.25;
  margin-top: 10px;
  margin-bottom: 0px; }

.figure-img {
  height: auto;
  width: 100%;
  display: block;
  border: solid 1px #343434;
  vertical-align: top; }

.figure-caption {
  text-align: left;
  word-break: break-all;
  position: relative;
  padding: 20px 0; }
  .figure-caption i {
    position: absolute;
    right: 0;
    top: 14px;
    width: 16px;
    height: 16px;
    display: none; }

.figure-ttl .figure-ttl--en, .figure-ttl .figure-ttl--jp {
  display: block; }

a:hover img {
  opacity: 0.8; }

.figure .arrow {
  display: none; }

@media screen and (min-width: 1024px) {
  .figure .figure-copy {
    margin-top: 35px; }
  .figure .figure-ttl {
    font-size: 2em;
    font-size: 2rem;
    line-height: 1.4; }
 .figure .figure-copy {
    font-size: 1.4em;
    font-size: 1.4rem;
    line-height: 1.4285714286; }
  .figure .figure-ttl {
    margin-bottom: 28px; }
  .figure .figure-img {
    object-fit: cover;
    height: 390px;
    width: 282px; }
  .figure .figure-caption {
    padding-top: 55px; }
    .figure .figure-caption i {
      display: block; }
  .figure.figure--s {
    width: 380px;
    max-width: 380px; }
    .figure.figure--s .figure-ttl{
      /*font-size: 1.4em;
      font-size: 1.4rem;*/
		font-size: 2em;
      font-size: 2rem;
      line-height: 1.4; }
	.figure.figure--s .figure-copy {
      font-size: 1.4em;
      font-size: 1.4rem;
      line-height: 1.4285714286; }
    .figure.figure--s .figure-img {
      height: auto;
      width: 380px; }
  .figure.figure-row {
    display: flex;
    flex-direction: row;
    width: 100%;
    max-width: 100%;
    margin: 0; }
    .figure.figure-row .figure-img {
      width: 201px;
      height: 280px; }
    .figure.figure-row .figure-caption {
      width: calc(100% - 200px);
      padding-left: 50px;
      padding-top: 30px; } }
/*navbar*/
.navbar {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-content: center; }

.header-navbar {
  margin-left: auto;
  height: 50px; }

.site-branding {
  display: none;
  height: 100%;
  width: auto;
  padding-right: 16px;
  margin: 0; }
  .site-branding a {
    height: 100%; }
    .site-branding a img {
      height: 100%; }

.site-lang {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  border: solid 1px #343434;
  display: block;
  margin-right: 20px;
  font-size: 1.2em;
  font-size: 1.2rem;
  line-height: 1;
  padding: 4px 0;
  text-decoration: none;
  text-align: center;
  width: 80px; }
  .site-lang .icon-global {
    background-image: url("../../img/global.svg");
    width: 14px;
    height: 14px;
    display: inline-block;
    margin-right: 4px;
    vertical-align: middle; }
  .site-lang span {
    letter-spacing: 0.12em;
    vertical-align: middle;
    display: inline-block;
    font-size: 1.2em;
    font-size: 1.2rem;
    line-height: 1.1666666667; }
  .site-lang--en {
    width: 100px; }

@media screen and (min-width: 1024px) {
  .header-navbar {
    height: 75px; }

  .site-branding {
    display: flex;
    align-items: center; }
    .site-branding a {
      height: 69px;
      display: block; }
      .site-branding a img {
        display: block; }

  .site-lang {
    padding: 8px 0;
    margin-right: 14px;
    width: 120px; }
    .site-lang span {
      font-size: 1.6em;
      font-size: 1.6rem;
      line-height: 1.125; }
    .site-lang .icon-global {
      width: 18px;
      height: 18px;
      margin-right: 10px; }
    .site-lang--en {
      width: 140px; } }
/*fullnav*/
.fullnav {
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  position: fixed;
  left: 0;
  top: 0;
  display: none;
  z-index: 1;
  overflow: auto;
  padding: 95px 20px 55px 20px;
  color: #000; }
  .fullnav .fullnav-container {
    height: auto;
    margin: 0 auto;
    text-align: center; }

.is-hidden {
  overflow: hidden; }

.fullnav-sns {
  text-align: center; }
  .fullnav-sns a {
    display: inline-block;
    margin: 0 10px;
    width: 35px;
    color: #000;
    text-decoration: none; }
    .fullnav-sns a i {
      font-size: 3.5em;
      font-size: 3.5rem;
      letter-spacing: 0; }
  .fullnav-sns.sns--sp {
    display: block;
    margin-top: 50px; }
  .fullnav-sns.sns--pc {
    display: none;
    margin-top: 100px; }

.fullnav-footer {
  text-align: left;
  padding-top: 50px; }

/*gnav*/
.gnav {
  /*display: flex;
  flex-direction: column;
  align-items: center;*/ }
  .gnav .gnav-list {
    width: 100%;
    max-width: 100%;
    flex-direction: column;
    margin-bottom: 5px; }
    .gnav .gnav-list .gnav-item {
      margin: 0; }
      .gnav .gnav-list .gnav-item a {
        padding: 20px 0 30px 0;
        display: block;
        border-top: solid 1px #000;
        color: #000; }
        .gnav .gnav-list .gnav-item a span {
          font-size: 2.5em;
          font-size: 2.5rem;
          line-height: 1;
          letter-spacing: 1.5px;
          display: block; }
        .gnav .gnav-list .gnav-item a small {
          display: block;
          font-size: 1.3em;
          font-size: 1.3rem;
          line-height: 1.1538461538;
          margin-top: 10px;
          letter-spacing: 0.78px; }
    .gnav .gnav-list .item-5 {
      border-bottom: solid 1px #000; }
    .gnav .gnav-list.gnav-list--aw {
      margin-bottom: 15px;
      display: none; }
      .gnav .gnav-list.gnav-list--aw a {
        border-top: none;
        padding: 15px 0; }
        .gnav .gnav-list.gnav-list--aw a span {
          display: block;
          font-size: 1.8em;
          font-size: 1.8rem;
          line-height: 1;
          letter-spacing: 0.9px; }
      .gnav .gnav-list.gnav-list--aw .gnav-item:first-child a {
        border-top: none;
        padding-top: 0; }

@media screen and (min-width: 1024px) {
  .fullnav {
    padding: 100px 20px 55px 20px; }

  .fullnav-container {
    width: 500px; }
    .fullnav-container > .gnav {
      -webkit-transition: 0.35s ease-in-out;
      -moz-transition: 0.35s ease-in-out;
      transition: 0.35s ease-in-out;
      -webkit-transition-property: all;
      transition-property: all; }
      .fullnav-container > .gnav > .gnav-list {
        display: -ms-grid;
        display: grid;
        -ms-grid-template-rows: repeat(4, 120px) auto;
        grid-template-rows: repeat(4, 120px) auto;
        -ms-grid-template-columns: 500px;
        grid-template-columns: 500px;
        margin-bottom: 0; }
        .fullnav-container > .gnav > .gnav-list > .gnav-item {
          -ms-grid-row: 1;
          -ms-grid-column: 1;
          grid-row: 1 /2;
          grid-column: 1 / 2; }
          .fullnav-container > .gnav > .gnav-list > .gnav-item.item-2 {
            -ms-grid-row: 2;
            grid-row: 2 /3; }
          .fullnav-container > .gnav > .gnav-list > .gnav-item.item-3 {
            -ms-grid-row: 3;
            grid-row: 3 /4; }
          .fullnav-container > .gnav > .gnav-list > .gnav-item.item-4 {
            -ms-grid-row: 4;
            grid-row: 4 /5; }
            .fullnav-container > .gnav > .gnav-list > .gnav-item.item-4 a {
              border-bottom: solid 1px #000; }
          .fullnav-container > .gnav > .gnav-list > .gnav-item > a small {
            font-size: 1.8em;
            font-size: 1.8rem;
            line-height: 1;
            margin-top: 15px; }
          .fullnav-container > .gnav > .gnav-list > .gnav-item > a span {
            font-size: 3.6em;
            font-size: 3.6rem;
            line-height: 1; }
        .fullnav-container > .gnav > .gnav-list .item-5 {
          border-bottom: none;
          -ms-grid-column: 2;
          -ms-grid-row: 1;
          -ms-grid-row-span: 6;
          grid-column: 2 / 3;
          grid-row: 1 /6;
          display: none; }
          .fullnav-container > .gnav > .gnav-list .item-5 .gnav-list--aw {
            text-align: left;
            padding-left: 100px; }
            .fullnav-container > .gnav > .gnav-list .item-5 .gnav-list--aw span {
              font-size: 2em;
              font-size: 2rem;
              line-height: 1; }
        .fullnav-container > .gnav > .gnav-list .item-6 {
          -ms-grid-row: 6;
          grid-row: 5 /6; }
    .fullnav-container.is-full {
      width: 815px; }
      .fullnav-container.is-full .gnav > .gnav-list > .gnav-item {
        width: 500px; }
      .fullnav-container.is-full .gnav .item-5 {
        display: block; }

  .gnav .gnav-list.gnav-list--aw {
    margin-bottom: 0; }

  .fullnav-footer {
    text-align: center;
    padding-top: 150px; }
    .fullnav-footer .copyright {
      text-align: left;
      display: inline-block; }

  .fullnav-sns.sns--sp {
    display: none; }
  .fullnav-sns.sns--pc {
    display: block; }
  .fullnav-sns a:hover {
    color: #676767; } }
/*Toggle Button*/
.toggle {
  width: auto;
  height: auto;
  display: flex;
  flex-direction: column;
  margin-left: 10px;
  margin-top: 10px;
  padding: 0;
  text-decoration: none; }
  .toggle .toggle-btn {
    width: 48px;
    height: 20px;
    z-index: 2;
    cursor: pointer;
    -webkit-transition: 0.35s ease-in-out;
    -moz-transition: 0.35s ease-in-out;
    transition: 0.35s ease-in-out;
    -webkit-transition-property: all;
    transition-property: all;
    border-radius: 1.5em;
    border: solid 1px transparent;
    position: relative; }
    .toggle .toggle-btn span {
      display: block;
      position: absolute;
      height: 1px;
      width: 25px;
      left: 0;
      top: -1px;
      border-top: solid 1px #343434;
      -webkit-transition: 0.35s ease-in-out;
      -moz-transition: 0.35s ease-in-out;
      transition: 0.35s ease-in-out;
      -webkit-transition-property: all;
      transition-property: all;
      z-index: 2; }
      .toggle .toggle-btn span:before, .toggle .toggle-btn span:after {
        display: block;
        width: 48px;
        content: "";
        height: 1px;
        left: 0;
        position: absolute;
        border-top: solid 1px #343434;
        -webkit-transition: 0.35s ease-in-out;
        -moz-transition: 0.35s ease-in-out;
        transition: 0.35s ease-in-out;
        -webkit-transition-property: all;
        transition-property: all; }
      .toggle .toggle-btn span:before {
        top: 9px; }
      .toggle .toggle-btn span:after {
        top: 19px; }

.toggle-name {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1em;
  font-size: 1rem;
  line-height: 2;
  font-weight: 400;
  color: #343434;
  letter-spacing: 0.12em; }

/* --#nav-toggle 切り替えアニメーション-- */
.toggle.is-active {
  position: fixed;
  z-index: 2;
  height: 35px;
  top: 0;
  left: 0; }
  .toggle.is-active .toggle-btn {
    border: solid 1px #000;
    border-radius: 100%;
    height: 35px;
    width: 35px;
    overflow: hidden; }
    .toggle.is-active .toggle-btn span {
      top: 15px;
      left: 8px;
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      transform: rotate(45deg);
      border-top: solid 1px #000;
      width: 18px; }
      .toggle.is-active .toggle-btn span:before {
        width: 0;
        left: 0; }
      .toggle.is-active .toggle-btn span:after {
        -webkit-transform: rotate(-85deg);
        -moz-transform: rotate(-85deg);
        transform: rotate(-85deg);
        width: 18px;
        top: 0; }
    .toggle.is-active .toggle-btn:hover span {
      width: 18px; }
  .toggle.is-active .toggle-btn + .toggle-name {
    display: none; }

@media screen and (min-width: 1024px) {
  .toggle {
    height: 56px;
    margin-left: 20px;
    margin-top: 20px; }
    .toggle .toggle-btn {
      width: 48px;
      height: 22px; }
      .toggle .toggle-btn span {
        top: 0; }
        .toggle .toggle-btn span:before {
          top: 10px; }
        .toggle .toggle-btn span:after {
          top: 20px; }
    .toggle:hover .toggle-btn span {
      width: 48px; }

  /* --#nav-toggle 切り替えアニメーション-- */
  .toggle.is-active {
    height: 66px; }
    .toggle.is-active .toggle-btn {
      border-radius: 100%;
      height: 66px;
      width: 66px;
      overflow: hidden; }
      .toggle.is-active .toggle-btn span {
        top: 24px;
        left: 0px;
        border-top: solid 1px #000;
        width: 40px;
        height: 40px; }
        .toggle.is-active .toggle-btn span:after {
          width: 40px;
          top: 0; }
      .toggle.is-active .toggle-btn:hover span {
        width: 40px; }

  /* --name-- */
  .toggle-name {
    display: block;
    font-size: 1.2em;
    font-size: 1.2rem;
    line-height: 1.6666666667;
    margin-top: 10px;
    margin-bottom: 0px;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif; } }
/*breadcrumb*/
.breadcrumb-wrapper {
  width: 90%;
  max-width: 960px;
  height: auto;
  margin: auto;
  text-align: left;
  position: relative; }

.breadcrumb {
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400; }
  .breadcrumb ol {
    margin: 0; }
    .breadcrumb ol li {
      /*-- liを横並び＆ブレットを消す --*/
      display: inline;
      list-style-type: none;
      margin-left: 0.5em; }
      .breadcrumb ol li:first-child {
        margin-left: 0; }
      .breadcrumb ol li::after {
        /*-- liの後に記号追加 --*/
        content: " > ";
        margin-left: 0.5em; }
      .breadcrumb ol li:last-child::after {
        /*-- liの後に記号追加 --*/
        content: ""; }
      .breadcrumb ol li > a {
        width: auto;
        font-size: 1.3em;
        font-size: 1.3rem;
        line-height: 1.1538461538;
        padding-top: 15px;
        padding-bottom: 0px; }

@media screen and (max-width: 768px) {
  .breadcrumb-wrapper {
    width: 100%;
    padding: 0 2em; } }
@media screen and (max-width: 560px) {
  .breadcrumb-wrapper {
    padding: 0 1em; }

  .breadcrumb {
    padding-top: 0.5em;
    margin-bottom: 0.5em; } }
/*hero*/
.hero {
  width: 100%;
  height: calc(100% - 50px);
  position: relative;
  overflow: hidden;
  background-color: #fff;
  margin-top: 50px;
  z-index: 0; }
  .hero::before {
    background-image: url("../../img/logo.png");
    width: 244px;
    height: 70px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "";
    display: block;
    z-index: 1; }
  .hero img {
    object-fit: cover;
    width: 100%;
    height: calc(100vh - 50px) !important; }

@media screen and (min-width: 1024px) {
  .hero {
    height: calc(100% - 75px);
    margin-top: 75px; }
    .hero img {
      height: calc(100vh - 75px) !important; } }
/* home
--------------------------------------------- */
/*heading*/
.hm-ttl--h2 {
  text-align: center;
  border-top: solid 1px #343434;
  border-bottom: solid 1px #343434;
  font-size: 2.5em;
  font-size: 2.5rem;
  line-height: 1;
  padding-top: 15px;
  padding-bottom: 18px;
  margin-top: 0px;
  margin-bottom: 20px; }
  .hm-ttl--h2.hm-ttl--fawad {
    padding-top: 9px;
    padding-bottom: 10px;
    min-height: 85px;
    margin-bottom: 50px; }
    .hm-ttl--h2.hm-ttl--fawad.hm-ttl--en {
      line-height: 1.2; }
  .hm-ttl--h2.hm-ttl--hmFacebook {
    margin-bottom: 50px; }
  .hm-ttl--h2 span.en {
    display: block;
    font-size: 1.2em;
    font-size: 1.2rem;
    line-height: 1.25;
    margin-top: 10px;
    margin-bottom: 0px;
    letter-spacing: 0.72px; }

.hm-ttl--h3 {
  text-align: center;
  font-size: 2.6em;
  font-size: 2.6rem;
  line-height: 1.1538461538;
  margin-top: 10px;
  margin-bottom: 30px; }

/*contents*/
section.hmAbout {
  padding-top: 100px; }

.hmAbout-container figure {
  padding: 0;
  margin: 0 0 20px 0;
  text-align: center; }
  .hmAbout-container figure img {
    width: 176px;
    max-width: 100%;
    margin: 0 auto; }

.hmAboun-btn {
  padding-top: 72px;
  text-align: center; }

.hmFacebook-container {
  margin-bottom: 25px;
  margin: 0 auto 0 auto;
  height: 1000px;
  width: 100%;
  max-width: 500px;
  overflow: hidden;
  box-sizing: content-box; }

@media screen and (min-width: 1024px) {
  /*heading*/
  .hm-ttl--h2 {
    font-size: 3.6em;
    font-size: 3.6rem;
    line-height: 1;
    padding-top: 23px;
    padding-bottom: 24px;
    margin-top: 0px;
    margin-bottom: 58px; }
    .hm-ttl--h2 span.en {
      font-size: 1.8em;
      font-size: 1.8rem;
      line-height: 1.1111111111;
      margin-top: 15px; }
    .hm-ttl--h2.hm-ttl--fawad {
      padding-top: 23px;
      padding-bottom: 24px;
      margin-bottom: 55px; }
    .hm-ttl--h2.hm-ttl--hmFacebook {
      margin-bottom: 46px; }

  .hm-ttl--h3 {
    font-size: 2.8em;
    font-size: 2.8rem;
    line-height: 1.0714285714;
    margin-top: 20px;
    margin-bottom: 30px; }

  /*contents*/
  section.hmAbout {
    padding-top: 250px; }

  .hmAbout-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between; }
    .hmAbout-container figure {
      flex: 0 0 300px; }
      .hmAbout-container figure img {
        width: 300px; }
    .hmAbout-container .hmAbout-txt {
      padding: 0 0 0 2em; }

  .hmAboun-btn {
    padding-top: 180px; }
    .hmAboun-btn a {
      display: inline-block;
      width: auto;
      padding-left: 1em;
      padding-right: 1em; }

  .hmFacebook-container {
    padding: 48px;
    width: auto;
    border: solid 1px #343434; }

  .hmFAward-btn {
    text-align: right;
    padding: 20px 0 0 0; }
    .hmFAward-btn .btn {
      text-align: right;
      background-color: transparent;
      color: #343434;
      border: none;
      text-decoration: underline;
      padding: 0; }
      .hmFAward-btn .btn i {
        color: #343434; }
      .hmFAward-btn .btn:hover {
        text-decoration: none;
        color: #676767; } }
/* page
--------------------------------------------- */
/*heading*/
.pg-ttl--h2 {
  display: inline-block;
  border-top: solid 1px #343434; }
  .pg-ttl--h2 span {
    display: block;
    font-size: 1.3em;
    font-size: 1.3rem;
    line-height: 1.1538461538;
    margin-top: 15px;
    margin-bottom: 0px;
    margin-left: 5px; }
  .pg-ttl--h2.pg-ttl--en {
    line-height: 1.2; }

.pg-ttl--h4 {
  font-weight: 400;
  font-size: 1.8em;
  font-size: 1.8rem;
  line-height: 1.1111111111;
  margin-top: 20px;
  margin-bottom: 10px; }

.FAward-ttl {
  font-weight: 400;
  font-size: 2em;
  font-size: 2rem;
  line-height: 1.25;
  margin-top: 80px;
  margin-bottom: 40px; }

/*contents*/
.FAward-list--front {
  text-align: center; }
  .FAward-list--front a {
    display: inline-block;
    margin: 0 auto; }

.FAward-list--block {
  padding: 15px 0 0 0; }
  .FAward-list--block ul li {
    text-align: center; }
    .FAward-list--block ul li a {
      display: block; }

.FAward-list--exe dt {
  font-size: 1em;
  font-size: 1rem;
  line-height: 1;
  margin-top: 0px;
  margin-bottom: 15px;
  letter-spacing: 0.05em; }
.FAward-list--exe dd {
  font-size: 1.2em;
  font-size: 1.2rem;
  line-height: 1.25;
  margin-top: 0px;
  margin-bottom: 20px; }
  .FAward-list--exe dd ul {
    list-style: none;
    margin-left: 0; }
    .FAward-list--exe dd ul li {
      margin-bottom: 8px; }
      .FAward-list--exe dd ul li a {
        display: block; }

.FAward-list--copy2 {
  display: block;
  padding-left: 2em; }

.hmFAward-container {
  padding-top: 20px; }

.hmFAward .hmFAward-lead {
  letter-spacing: 0.06em; }

.hmFAward-btn {
  text-align: center;
  padding: 15px 0 20px 0; }

.FAward-list--awd {
  font-size: 1em;
  font-size: 1rem;
  line-height: 2.5;
  margin-top: 0px;
  margin-bottom: 0px;
  padding: 80px 0 100px 0; }

.pg-container {
  padding: 70px 20px 40px 20px; }

@media screen and (min-width: 1024px) {
  /*heading*/
  .pg-ttl--h4 {
    font-size: 2em;
    font-size: 2rem;
    line-height: 1;
    margin-top: 0px;
    margin-bottom: 10px; }

  .FAward-ttl {
    font-size: 2.5em;
    font-size: 2.5rem;
    line-height: 1.2;
    margin-top: 150px;
    margin-bottom: 50px; }

  /*contents*/
  .FAward-list--front a:hover img {
    opacity: 0.8; }

  .hmFAward .hmFAward-lead {
    font-size: 2em;
    font-size: 2rem;
    line-height: 1.8;
    margin-top: 7px;
    margin-bottom: 20px; }

  .hmFAward-container {
    padding-top: 62px; }

  .FAward-list--block {
    padding-top: 90px; }
    .FAward-list--block ul li {
      text-align: left; }
      .FAward-list--block ul li ahover img {
        opacity: 0.8; }

  .FAward-list--exe {
    margin-bottom: 40px; }
    .FAward-list--exe dt {
      font-size: 1.6em;
      font-size: 1.6rem;
      line-height: 1;
      margin-top: 0px;
      margin-bottom: 18px;
      letter-spacing: 0.05em; }
    .FAward-list--exe dd {
      font-size: 2em;
      font-size: 2rem;
      line-height: 1;
      margin-top: 0px;
      margin-bottom: 35px; }
      .FAward-list--exe dd ul li {
        margin-bottom: 20px; }

  .FAward-list--awd {
    padding-top: 110px;
    padding-bottom: 140px; }

  .pg-container {
    padding: 100px 0px 60px 0px; }

  .FAward-list--copy2 {
    padding-left: 12.5em; } }
.fullnav-container.fullnav-container--en .gnav > .gnav-list .gnav-list--aw span {
  font-size: 1.5em;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: 0.7px; }

.FAward-list--recep p{
    font-size: 1.6em;
    font-size: 1.6rem;
}

@media screen and (min-width: 1024px) {
  /* 英語サイト用にレイアウトの微調整 */
  .fullnav-container.fullnav-container--en.is-full {
    width: 990px; }
    .fullnav-container.fullnav-container--en.is-full .gnav > .gnav-list .gnav-list--aw {
      padding-left: 80px; }
      .fullnav-container.fullnav-container--en.is-full .gnav > .gnav-list .gnav-list--aw span {
        font-size: 1.7em;
        font-size: 1.7rem;
        line-height: 1; }

  .fullnav-container > .gnav > .gnav-list.gnav-list--en {
    -ms-grid-template-rows: repeat(4, 88px) auto;
    grid-template-rows: repeat(4, 88px) auto; }

  .hm-ttl--fawad.hm-ttl--en {
    padding-top: 20px;
    padding-bottom: 20px; } }
/* libs
--------------------------------------------- */
/* Slider */
.slick {
  height: 100%;
  width: 100%; }

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
  height: 100%;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer; }

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }
  .slick-track::before {
    display: table;
    content: ""; }
  .slick-track::after {
    display: table;
    content: "";
    clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }

[dir="rtl"] .slick-slide {
  float: right; }

.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; }

/* Arrows */
.slick-prev, .slick-next {
  position: absolute;
  bottom: -60px;
  display: block;
  width: 40px;
  height: 40px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  z-index: 1;
  line-height: 40px;
  border-radius: 50%;
  background-color: transparent; }

.slick-prev {
  right: 60px; }
  .slick-prev::before {
    font-size: 2.0em;
    font-size: 2.0rem;
    line-height: 40px;
    opacity: 0.75;
    color: #111;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "←"; }
  .slick-prev:hover, .slick-prev:focus {
    color: transparent;
    outline: none;
    background: transparent; }
  .slick-prev:hover::before, .slick-prev:focus::before {
    opacity: 1; }

.slick-next {
  right: 0; }
  .slick-next::before {
    font-size: 2.0em;
    font-size: 2.0rem;
    line-height: 40px;
    opacity: 0.75;
    color: #111;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "→"; }
  .slick-next:hover, .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
    .slick-next:hover::before, .slick-next:focus::before {
      opacity: 1; }

.slick-prev.slick-disabled::before, .slick-next.slick-disabled::before {
  opacity: 0.25; }

[dir="rtl"] .slick-prev {
  right: 0;
  left: auto; }

[dir="rtl"] .slick-prev::before {
  content: "→"; }

[dir="rtl"] .slick-next {
  right: auto;
  left: 0; }

[dir="rtl"] .slick-next::before {
  content: "←"; }

.slick-slide img {
  object-fit: cover;
  height: 100%;
  width: 100%; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: 0;
  left: 100%;
  display: inline-block;
  width: 300px;
  padding: 0 0 1em 0;
  margin: 0 0 0 1.666666em;
  border-bottom: solid 1px #5b5b5b;
  list-style: none;
  text-align: left;
  z-index: 1; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 0.666666em;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 20px;
      height: 20px;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .slick-dots li button::before {
        font-size: 2.0em;
        font-size: 2.0rem;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: "1";
        text-align: center;
        opacity: 0.25;
        color: #111; }
      .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:nth-child(2) button::before {
      content: "2"; }
    .slick-dots li:nth-child(3) button::before {
      content: "3"; }
    .slick-dots li:nth-child(4) button::before {
      content: "4"; }
    .slick-dots li.slick-active button::before {
      opacity: 0.75;
      color: #111; }

.object-fit-img {
  object-fit: cover;
  object-position: 50% 50%;
  font-family: "object-fit: cover; object-position: 50% 50%;"; }


/*  試読版： add 210506  -------------------------------------*/
.figure-view {
    margin: 0;
}
.figure-view a > img {
  width: 30px;
  margin-left: 5px;
	-webkit-transition: 0.35s ease-in-out;
	-moz-transition: 0.35s ease-in-out;
	transition: 0.35s ease-in-out;
	-webkit-transition-property: all;
	transition-property: all;
}
.figure-view .btn {
	padding: 1em 0.5em;
	width: 100%;
	font-size: 1.8rem;
    margin: 10px 0 0 0;
	background-color: #ffffff;
    color: #343434;
    text-decoration: underline;
}
.figure-view .btn i {
    line-height: 1.5rem;
    vertical-align: bottom;
    margin-left: 10px;
}
.figure-view .btn:hover {
    color: #676767;
    text-decoration: none;
}
.figure-view.fv2 {
	margin: 0;
}
.figure-view.fv2 .btn img {
  width: 30px;
}
@media screen and (min-width: 1024px) {
	.figure-view .btn {
		font-size: 1.6rem;
	}
	.figure-view .btn i {
		font-size: 1.2rem;
		line-height: 1.6rem;
		position: static;
		display: inline;
	}
	.figure-view.fv2 .btn {
		width: 201px;
		margin: 5px 0 0 0;
		font-size: 1.2rem;
  }
  /*
  .figure-view.fv2 .btn img {
    width: 30px;
  }
  */
}
/* 入賞部分の上書き*/
.fv-on .figure.figure-row {
    margin-bottom: 30px;
}
@media screen and (min-width: 1024px) {
	.fv-on .figure.figure-row .figure-caption {
		padding-top: 50px;
	}
}


.anker-adjust{
	margin-top:-8rem;
	padding-top: 8rem;
}


