@charset "UTF-8";
/*!
---- SWDesign Original Stylesheet Template. ----
Thema Name:     model
Description:    model
Version:        1.0.0
Last Update:    2020/2/4
Author:         Naoto Ebitani
Company URL:    https://swdesign.jp
License:        GPL
License URL:    http://www.gnu.org/licenses/gpl.html
*/
/*@mixin tb {
	@media screen and (min-width: 768px) and (max-width: 1299px)  {
		@content;
	}
}*/
html {
  font-display: swap;
}

.qs {
  font-family: 'Quicksand', sans-serif;
}

select::-ms-expand {
  display: none;
}

select {
  -moz-appearance: none;
  text-indent: 0.01px;
}

address {
  margin-bottom: 0 !important;
}

ol, ul, dl {
  list-style: none;
  margin-bottom: 0 !important;
  padding-left: 0;
}

dd {
  margin-bottom: 0 !important;
  margin-left: 0 !important;
}

label {
  margin-bottom: 0 !important;
}

a:hover {
  text-decoration: none !important;
}

img {
  display: block;
  /*height: auto;
	margin: auto;
	max-width: 100%;*/
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@-ms-viewport {
  width: device-width;
}

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

body {
  margin: 0;
  font-family: "Noto Sans JP", "Hiragino Sans", "メイリオ", "Helvetica Neue", Arial, Meiryo, sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500 !important;
  line-height: 1.8;
  color: #333;
  text-align: left;
  background-color: #f3f3f3;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0;
}

p {
  margin-top: 0;
  margin-bottom: 0;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
}

address {
  margin-bottom: 10px;
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 10px;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: bold;
}

dd {
  margin-bottom: 5px;
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 10px;
  margin: 0 0 1rem;
}

dfn {
  font-style: italic;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: inherit;
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 10px;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 10px;
  margin: 0 0 1rem;
}

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

svg:not(:root) {
  overflow: hidden;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 7.5px;
  padding-top: 0.75rem;
  padding-bottom: 7.5px;
  padding-bottom: 0.75rem;
  color: #000;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 5px;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

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

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

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 5px;
  margin-bottom: .5rem;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

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

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

/* スクロールCSS */
.fade-in {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transition-duration: 500ms;
  transition-property: opacity, transform;
}

.fade-in-up {
  transform: translate(0, 80px);
}

.fade-in-down {
  transform: translate(0, -50px);
}

.fade-in-left {
  transform: translate(-80px, 0);
}

.fade-in-right {
  transform: translate(50px, 0);
}

.scroll-in {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  transform: translate(0, 0);
}

a.hov {
  display: inline-block;
  transition: all .4s;
}

a.hov:hover {
  transform: translateX(4px);
}

.icon-titleLine:before {
  position: absolute;
  content: "";
  background-image: url(../image/icon/icon_titleLine.svg);
  width: 25px;
  height: 26px;
  left: 0;
  bottom: 0;
  margin: 0px 0px 0 -24px;
}

.lsAV50 {
  letter-spacing: 0.05em;
}

.lsAV100 {
  letter-spacing: 0.1em;
}

.lhM {
  line-height: 1;
}

.lhL {
  line-height: 1.2;
}

.lhXL {
  line-height: 1.4;
}

.lhXXL {
  line-height: 1.8;
}

.lhXXXL {
  line-height: 2;
}

.normal {
  font-weight: 400 !important;
}

.regular {
  font-weight: 500 !important;
}

.medium {
  font-weight: 600 !important;
}

.bold {
  font-weight: 700 !important;
}

.black {
  color: #000;
}

.carbon {
  color: #333;
}

.white {
  color: #fff !important;
}

.blue {
  color: #224B8F;
}

.sky {
  color: #007AFF;
}

.carbonBg {
  background: #333;
}

.whiteBg {
  background: #fff;
}

.taL {
  text-align: left !important;
}

.taC {
  text-align: center !important;
}

.taR {
  text-align: right !important;
}

.lb {
  line-break: auto;
}

.indent {
  text-indent: -1em;
  padding-left: 1em;
}

.marker {
  background: linear-gradient(transparent 70%, #ffdcb8 0%);
  display: inline;
  padding: 0 2px 4px;
}

.objectFit {
  -o-object-fit: cover;
  object-fit: cover;
}

/*----------▼▼ centering ▼▼----------*/
.mAuto {
  margin: auto !important;
}

.clearText {
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
}

.autoImg {
  width: 100%;
  height: auto;
}

.autoImg.full {
  width: auto;
  max-width: 100%;
  height: auto;
  display: table;
  margin: 0 auto;
}

.autoImg.lg {
  width: 80%;
  margin: 0 auto;
  display: block;
}

.autoImg.md {
  width: 50%;
  margin: 0 auto;
  display: block;
}

.autoImg.sm {
  width: 30%;
  margin: 0 auto;
  display: block;
}

.hAuto {
  height: auto !important;
}

.icon {
  position: relative;
}

.icon:before, .icon:after {
  background: no-repeat center/contain;
  content: "";
  position: absolute;
}

.logo {
  position: relative;
}

.logo:before, .logo:after {
  background: no-repeat center/contain;
  content: "";
  position: absolute;
}

.dark:hover {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="0.8" /><feFuncG type="linear" slope="0.8" /><feFuncB type="linear" slope="0.8" /></feComponentTransfer></filter></svg>#filter');
  filter: brightness(80%);
}

.detailBtn {
  display: table;
  font-weight: 400;
  border: 1px solid #999;
  border-radius: 6px;
  color: #000;
  background: #fff;
  padding: 8px 64px;
  position: relative;
  transition: .3s;
}

.detailBtn:hover {
  transform: translateX(10px);
  background: #224B8F;
  border: 1px solid #224B8F;
  color: #fff;
}

.detailBtn__right {
  margin: 48px 12px 0 auto;
}

.detailBtn__center {
  margin: 48px auto 0;
}

.detailBtn:after {
  content: '';
  background-image: url(../image/icon/icon_arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 40px;
  height: 16px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto -20px;
}

html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
}

body {
  position: relative;
}

/*----------▼▼ wrapper ▼▼----------*/
.wrapper {
  letter-spacing: 0.05em;
  overflow: hidden;
  position: relative;
  width: 100%;
}

/*----------▼▼ section ▼▼----------*/
/*
.section {
	@include sp {
		padding: 60px 0;
	};
	@include pc {
		padding: 60px 0;
	};
}
*/
/*---------- float ----------*/
.fL {
  float: left !important;
}

.fR {
  float: right !important;
}

/*----------▼▼ clearfix ▼▼----------*/
.cf:after {
  clear: both;
  content: "";
  display: block;
}

/*----------▼▼ flex-box ▼▼----------*/
/* common */
.flexBox {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

/* SP */

/* PC */

/*----------grid-box ----------*/
/* common */
.gridBox {
  display: -ms-grid;
  display: grid;
}

/* SP */

/* PC */

/*----------▼▼ content-size ▼▼----------*/
/* SP */

/* PC */

section {
  padding: 80px 0;
}

.anchor {
  padding-top: 90px;
  margin-top: -90px;
}

.breadcrumb > div > span {
  display: block;
  position: relative;
  padding-right: 24px;
  float: left;
  color: #666;
  font-weight: 400;
}

.breadcrumb > div > span:after {
  content: '';
  width: 8px;
  height: 8px;
  background-size: contain;
  background-image: url(../image/icon/icon_breadcrumb.svg);
  background-repeat: no-repeat;
  position: absolute;
  right: 8px;
  top: 11px;
}

.breadcrumb > div > span:last-child {
  padding-right: 0;
}

.breadcrumb > div > span:last-child:after {
  background-image: none;
}

.breadcrumb span a span {
  font-weight: 500;
  color: #333;
  transition: 0.3s;
}

.breadcrumb span a span:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  transition: 0.3s;
}

.breadcrumb span[property="name"] {
  display: inline-block;
  padding: 0;
  margin-top: 2px;
  vertical-align: middle;
  max-width: 400px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cmnTtl__type1 {
  font-size: 36px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.1em;
}

.cmnTtl__type1 span {
  position: relative;
  font-family: 'Quicksand', sans-serif;
  font-size: 16px;
  font-weight: 500;
  vertical-align: -130%;
  margin: 0 0px 0 12px;
  letter-spacing: 0.1em;
}

.cmnTtl__type1 span:before {
  position: absolute;
  content: "";
  background-image: url(../image/icon/icon_titleLine.svg);
  width: 25px;
  height: 26px;
  left: 0;
  bottom: 0;
  margin: 0px 0px 0 -24px;
}

.cmnTtl__type2 {
  position: relative;
  display: block;
  width: 500px;
  font-size: 24px;
  line-height: 1.4;
  margin-bottom: 14px;
  padding-left: 18px;
  padding-bottom: 6px;
  border-left: 5px solid #007AFF;
  border-bottom: 1px solid #ccc;
}

.cmnTtl__type3 {
  position: relative;
  font-size: 36px;
  letter-spacing: 0.1em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
}

.cmnTtl__type3:after {
  content: "";
  background-color: #333;
  width: 30px;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
  margin: 26px auto 0;
}

.cmnTtl__type3 span {
  display: block;
  font-family: 'Quicksand', sans-serif;
  font-size: 16px;
  font-weight: 500;
  left: 0;
  right: 0;
  margin: 24px 0 0;
}

.cmnTtl__type4 {
  position: relative;
  font-size: 18px;
  font-weight: 500;
  color: #333;
  padding: 0 0 14px;
}

.cmnTtl__type4:after {
  content: '';
  position: absolute;
  background-color: #333;
  width: 30px;
  height: 2px;
  left: 0;
  right: 0;
  bottom: 0;
}

.cmnTtl__type5 {
  border-bottom: 1px solid #ccc;
  line-height: 1.5;
}

.cmnTtl__type5 span.head {
  position: relative;
  font-size: 32px;
  font-weight: 500;
}

.cmnTtl__type5 span.head:after {
  content: '';
  position: absolute;
  background-color: #007AFF;
  width: 100%;
  height: 3px;
  left: 0;
  bottom: 0;
  margin-bottom: -3px;
}

.cmnTtl__type5 span.tail {
  font-size: 18px;
  font-weight: 500;
  padding-left: 20px;
  padding-right: 20px;
  color: #666;
}

.cmnTtl__type6 {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: 36px;
  font-weight: 500;
  color: #333;
  padding: 0 0 14px;
}

.cmnTtl__type6 span {
  position: relative;
  font-family: 'Quicksand', sans-serif;
  font-size: 24px;
  font-weight: 500;
  vertical-align: -130%;
  letter-spacing: 0.1em;
}

.cmnTtl__type6:after {
  position: absolute;
  content: "";
  width: 400px;
  height: 1px;
  background: #ccc;
  left: 0;
  top: 0;
  margin: 64px 0 0 -180px;
}

.cmsContents {
  padding-bottom: 96px;
}

.cmsContents img {
  width: 100%;
}

.cmsContents strong {
  font-weight: 600;
}

.cmsContents h1 {
  border-bottom: 1px solid #ccc;
  line-height: 1.5;
  margin-bottom: 10px;
  padding-bottom: 4px;
  font-size: 34px;
}

.cmsContents h1 span.head {
  position: relative;
  font-weight: 500;
}

.cmsContents h1 span.head:after {
  content: '';
  position: absolute;
  background-color: #007AFF;
  width: 100%;
  height: 3px;
  left: 0;
  bottom: 0;
  margin-bottom: -3px;
}

.cmsContents h1 span.tail {
  font-size: 18px;
  font-weight: 500;
  padding-left: 20px;
  padding-right: 20px;
  color: #666;
}

.cmsContents h2 {
  color: #007AFF;
  margin: 32px 0 16px;
  font-weight: 500;
  position: relative;
}

.cmsContents h3 {
  color: #333;
  margin: 32px 0 16px;
  line-height: 1.4;
  font-weight: 600;
  position: relative;
}

.cmsContents h4 {
  color: #333;
  margin: 32px 0 16px;
  font-weight: 500;
  line-height: 1.4;
  position: relative;
}

.cmsContents h4:before {
  content: '';
  background-color: #000;
  display: inline-block;
  width: 14px;
  height: 1px;
  vertical-align: middle;
  margin-right: 10px;
}

.cmsContents h5 {
  margin: 32px 0 16px;
  font-weight: 500;
  line-height: 1.4;
}

.cmsContents h6 {
  margin: 32px 0 16px;
  font-weight: 600;
  line-height: 1.4;
}

.cmsContents p {
  margin: 18px 0;
  color: #333;
  font-weight: 400;
}

.cmsContents a:hover {
  border-bottom: 2px solid #a6d8f7;
  padding-bottom: 2px;
}

.cmsContents ul {
  margin: 16px 0 16px 1.5em;
}

.cmsContents ul li {
  list-style-type: disc;
  margin-top: 8px;
}

.cmsContents ul li:first-child {
  margin-top: 0;
}

.cmsContents ul.iroha li {
  list-style-type: katakana-iroha;
}

.cmsContents ul.aiueo li {
  list-style-type: katakana;
}

.cmsContents ul.abcde li {
  list-style-type: lower-alpha;
}

.cmsContents ol {
  margin: 16px 0 16px 1.5em;
}

.cmsContents ol > li {
  list-style-type: decimal;
  margin-top: 8px;
}

.cmsContents ol > li:first-child {
  margin-top: 0;
}

.cmsContents ol > li > ol {
  margin: 16px 0;
}

.cmsContents ol > li > ol > li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  margin-top: 8px;
  position: relative;
  padding-left: 3em;
}

.cmsContents ol > li > ol > li:before {
  display: marker;
  content: "（" counter(cnt) "）";
  position: absolute;
  left: 0;
  top: 0;
}

.cmsContents ol > li > ol > li:first-child {
  margin-top: 0;
}

.cmsContents ol.kakko > li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  margin-top: 8px;
  position: relative;
  padding-left: 3em;
}

.cmsContents ol.kakko > li:before {
  display: marker;
  content: "（" counter(cnt) "）";
  position: absolute;
  left: 0;
  top: 0;
}

.cmsContents ol.kakko > li:first-child {
  margin-top: 0;
}

.cmsContents ol.iroha li {
  list-style-type: katakana-iroha;
}

.cmsContents ol.aiueo li {
  list-style-type: katakana;
}

.cmsContents ol.abcde li {
  list-style-type: lower-alpha;
}

.cmsContents dl {
  margin: 16px 0;
}

.cmsContents dl dt {
  font-weight: bold;
}

.cmsContents dl dd {
  margin-left: 8px;
  padding-left: 8px;
  margin-top: 8px;
  margin-bottom: 16px;
}

.cmsContents blockquote {
  margin: 32px 0 32px 0;
  position: relative;
}

.cmsContents blockquote:before {
  content: '“';
  position: absolute;
  top: -65px;
  left: 0px;
  font-size: 120px;
  z-index: 0;
  opacity: 0.2;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
}

.cmsContents table {
  margin: 32px 0 32px 0;
  width: 100%;
}

.cmsContents table th {
  min-width: 120px;
}

.cmsContents table th, .cmsContents table td {
  padding: 8px;
}

.cmsContents table th:first-child, .cmsContents table td:first-child {
  border-left: none;
}

.cmsContents table td > *:first-child {
  margin-top: 0;
}

.cmsContents table td > *:last-child {
  margin-bottom: 0;
}

.nav-below {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 12px 0px;
}

.nav-previous a,
.nav-next a {
  font-family: 'Quicksand', sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  background: #333;
  padding: 5px 24px;
  border-radius: 2px;
}

.nav-previous a:hover,
.nav-next a:hover {
  border-bottom: none;
  color: #aaa;
}

.wp-pagenavi {
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 24px;
  font-size: 16px;
  font-family: 'Quicksand', sans-serif;
}

.wp-pagenavi a, .wp-pagenavi span {
  height: 44px;
  line-height: 38px;
  padding: 3px 5px;
  vertical-align: top;
  margin: 2px;
}

.wp-pagenavi a:hover, .wp-pagenavi span.current {
  border: none;
}

.wp-pagenavi a {
  transition: .3s;
}

.wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink {
  background-color: #000;
  color: #fff;
}

.wp-pagenavi .first, .wp-pagenavi .page, .wp-pagenavi .last {
  border: 1px solid #ccc;
  background-color: #fff;
  color: #222;
}

.wp-pagenavi .previouspostslink, .wp-pagenavi .current, .wp-pagenavi .page, .wp-pagenavi .extend, .wp-pagenavi .nextpostslink {
  width: 40px;
  border-radius: 4px;
}

.wp-pagenavi .first, .wp-pagenavi .previouspostslink, .wp-pagenavi .extend, .wp-pagenavi .nextpostslink, .wp-pagenavi .last {
  position: relative;
}

.wp-pagenavi .first:before, .wp-pagenavi .first:after, .wp-pagenavi .previouspostslink:before, .wp-pagenavi .previouspostslink:after, .wp-pagenavi .extend:before, .wp-pagenavi .extend:after, .wp-pagenavi .nextpostslink:before, .wp-pagenavi .nextpostslink:after, .wp-pagenavi .last:before, .wp-pagenavi .last:after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
}

.wp-pagenavi .pages {
  padding: 3px 8px;
}

.wp-pagenavi .first:before, .wp-pagenavi .previouspostslink:before, .wp-pagenavi .nextpostslink:after, .wp-pagenavi .last:after {
  height: 12px;
  top: calc(50% - 6px);
  width: 12px;
}

.wp-pagenavi .first {
  padding-left: 18px;
  width: 68px;
}

.wp-pagenavi .first:before {
  background-image: url(../image/icon/icon_arrow_pager-double_black.svg);
  left: 8px;
  transform: scale(-1, 1);
}

.wp-pagenavi .previouspostslink:before {
  background-image: url(../image/icon/icon_arrow_pager-single_white.svg);
  left: calc(50% - 6px);
  transform: scale(-1, 1);
}

.wp-pagenavi .extend:before {
  background-image: url(../image/icon/icon_ellipsis_black.svg);
  height: 20px;
  left: calc(50% - 10px);
  top: calc(50% - 10px);
  width: 20px;
}

.wp-pagenavi .nextpostslink:after {
  background-image: url(../image/icon/icon_arrow_pager-single_white.svg);
  left: calc(50% - 6px);
}

.wp-pagenavi .last {
  padding-left: 10px;
  text-align: left;
  width: 68px;
}

.wp-pagenavi .last:after {
  background-image: url(../image/icon/icon_arrow_pager-double_black.svg);
  right: 10px;
}

.wp-pagenavi .pages, .wp-pagenavi .extend {
  background-color: #e6eae8;
  color: #222;
}

.wp-pagenavi .current {
  background: #0097FF;
  color: #fff;
  font-weight: 700;
}

.gmap {
  height: 500px;
  overflow: hidden;
  position: relative;
}

.contact table {
  position: relative;
  width: 900px;
  margin: auto;
}

.contact tr {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 24px;
}

.contact th {
  width: 25%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 500;
}

.contact td {
  padding: 2px 10px 2px 30px;
  width: 75%;
  height: 70px;
  background: #ececec;
  color: #bbb;
  display: -ms-flexbox;
  display: flex;
}

.contact td.select {
  position: relative;
  background: none;
  padding: 2px 10px 2px 0px;
}

.contact td.select:before {
  content: '';
  width: 11px;
  height: 7px;
  background-image: url(../image/icon/icon_arrow-down.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  margin: auto 0 auto 270px;
  transition: 0.3s;
  z-index: 5;
}

.contact td.textArea {
  height: 250px;
  padding: 10px 10px 10px 30px;
}

.contact td span {
  width: 100%;
}

.req .formLbl, .any .formLbl {
  box-sizing: border-box;
  width: 100%;
  display: block;
  position: relative;
  padding-left: 45px;
}

.req .formLbl:before, .any .formLbl:before {
  left: 0;
}

.req .formLbl, .any .formLbl {
  position: relative;
}

.req .formLbl:before, .any .formLbl:before {
  position: absolute;
  color: #fff;
  border-radius: 3px;
  font-size: 13px;
  padding: 2px 5px;
}

.req .formLbl:before {
  content: '必須';
  background-color: #d32f2f;
}

.any .formLbl:before {
  content: '任意';
  background-color: #e7ebf4;
  color: #000;
}

.screen-reader-response {
  display: none;
}

.submitBtn {
  display: table;
  font-size: 16px;
  font-weight: 600;
  margin: 64px auto 0px;
  cursor: pointer;
  padding: 20px 90px;
  color: #fff;
  background: #224B8F;
  border-radius: 6px;
  border: none;
}

textarea,
input[type=text],
input[type=email],
input[type=tel],
input[type=date] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: #ececec;
  height: 100%;
  width: 100%;
  font-size: 16px;
  outline: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #ececec;
  border: 1px solid #ccc;
  height: 100%;
  width: 100%;
  font-size: 16px;
  outline: none;
  padding-left: 30px;
  border-radius: 6px;
  padding: 0 64px 0 30px;
}

:-ms-input-placeholder {
  color: #bbb;
}

::placeholder {
  color: #bbb;
}

.wpcf7 form.sent .wpcf7-response-output {
  text-align: center;
  border-color: #333 !important;
  padding: 1.5em;
  font-size: 18px;
}

.wpcf7 form .wpcf7-response-output {
  margin: 2em 96px 1em !important;
  border: 3px solid #333 !important;
  border-radius: 8px;
}

.wpcf7-not-valid-tip {
  font-weight: bold !important;
  margin-top: 6px;
  text-align: right;
}

.dropdown-menu_wrap .wpcf7-form-control {
  width: 100%;
  height: 100%;
  padding: 10px 20px;
  box-sizing: border-box;
  border-radius: 6px;
  border: 1px solid gray;
  font-size: 14px;
  color: #333;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.FixedFt {
  width: 100%;
  height: 60px;
  z-index: 10;
  background-color: #eaeaea;
}

.FixedFt__top a {
  color: #fff;
  height: 60px;
  width: 60px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  float: right;
  border-radius: 50px;
  margin-right: 12px;
  /*transition: .3s;*/
  margin-bottom: 4px;
}

.Footer {
  background-color: #224B8F;
}

.FtSMap {
  position: relative;
  width: 700px;
  margin: auto;
  padding: 64px 0 48px;
  color: #fff;
}

.FtSMap p {
  font-weight: 400;
}

.FtSMap__wrap {
  margin-top: 24px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.FtSMap__wrap a {
  font-size: 12px;
}

.FtSMap__logo {
  width: 120px;
  display: table;
  margin: auto;
}

.FtSMap__btn {
  background: #fff;
  color: #000;
  font-weight: 500;
  padding: 0 14px;
  border-radius: 14px;
}

.FtSMap__btn:hover {
  background: #ccc;
  color: #000;
}

.Footer__copyYear {
  font-size: 10px;
  border-top: 1px solid #6f6f6f;
  padding-top: 20px;
}

#header {
  width: 100%;
  height: 90px;
  position: fixed;
  z-index: 20;
}

.Header {
  background: rgba(249, 249, 249, 0.8);
}

.Header__brandName {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  height: 90px;
  position: absolute;
}

.Header__brandName a, .Header__brandName p {
  background-image: url(../image/logo/logo.svg);
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  width: 220px;
  height: 42px;
  margin-left: 32px;
}

.GNav__menuOpenBtn {
  position: absolute;
  z-index: 50;
}

.GNav__menuOpenBtn span {
  background: #000;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  transition: .3s ease-in-out;
}

.GNav__menuBtnMenu {
  color: #fff;
}

.GNav__menuOpenBtn.js_gnavMenu-open span {
  background: #000;
}

.GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(1) {
  transform: rotate(315deg);
}

.GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(2) {
  left: 50%;
  width: 0;
}

.GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(3) {
  transform: rotate(-315deg);
}

/*@include sp {
	.toggleContents {
		display: none;
    	background: #e6eae8;
    	margin-top: -5px;
    	width: 250px;
		li {
    		border-bottom: 1px solid #fff;
			a {
				font-size: 14px;
			    display: block;
			    padding: 14px 20px;
			    text-align: center;
			}
			&:last-child {
				border-bottom: none;
			}
		}
	}
	.hoverArea {
		width: 100%;
	}
}*/
/*
.hoverContent {
	@include pc {
	    display: none;
	    position: absolute;
	    background: #e6eae8;
	    border-bottom: 1px solid #ddd;
	    z-index: 5;
	    right: 0;
	    li {
	    	border-top: 1px solid #ddd;
	    	position: relative;
		    a {
		    	height: 70px;
		    	width: 150px;
			    font-size: 13px;
			    text-align: left;
			    background-color: #e6eae8;
			    display: -ms-flexbox;
			    display: flex;
			    -ms-flex-align: center;
			    align-items: center;
			    padding: 20px;
		    	&:hover {
					background-color: $white;
				}
		    }
		}
	};
}
*/
.hoverContent {
  /*@include sp {
	    &__sub {
	    	a {
	    		width: 100%;
				background: $blue;
				color: $white;
	    		font-size: 14px !important;
	    		font-weight: 600 !important;
	    		letter-spacing: 0.1em;
	    		border-bottom: 1px solid rgba(255,255,255,0.17);
			    &:hover {
			    	background: $sky;
			    	color: $white;
			    }
	    	}
	    }
	};*/
}

.news__cat {
  width: 100px;
  text-align: center;
  font-size: 12px;
  font-weight: 600;
  padding: 3px 0;
  margin: 0;
  border: 1px solid #ccc;
  background: #fff;
  border-radius: 4px;
}

/*
.video_wrapper {
    position: relative;
    height: calc(100vh - 90px);
    overflow: hidden;
    margin-top: 90px;
    @include sp {
	    height: calc(70vh - 60px);
	    overflow: hidden;
	    margin-top: 60px;
    };
}
.video_wrapper > video {
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 177.77777778vh;
    height: 56.25vw;
    min-height: 100%;
    min-width: 100%;
}
.classPageHead {
	position: relative;
    height: calc(100vh - 90px);
    &__title {
    	position: absolute;
		text-align: center;
		color: #fff;
		border: 1px solid #fff;
		border-radius: 14px;
		background: rgba(0, 0, 0, 0.3);
		padding: 80px 114px 64px;
	    top: 0;
	    bottom: 40px;
	    left: 0;
	    right: 0;
	    margin: auto;
	    display: table;
    	p {
    		font-family: "Noto Serif JP", serif;
    		font-size: 36px;
    		font-weight: 300;
    		line-height: 1;
    		margin-bottom: 30px;
    		position: relative;
			&:before {
			    content: "";
			    position: absolute;
			    right: 0;
			    top: 0;
			    background: url(../image/bg/exclamation.svg) center / contain;
			    background-repeat: no-repeat;
			    width: 83px;
			    height: 34px;
			    margin: -32px 48px 0 0;
			}
    	}
    	&--h1 {
    		font-family: "Noto Serif JP", serif;
    		font-size: 80px;
    		font-weight: 400;
    		line-height: 1;
    		position: relative;
    		&:after, &:before {
			    content: "";
			    background: #ddd;
			    width: 160px;
			    height: 1px;
			    position: absolute;
			    left: 0;
			    right: 0;
			    margin: auto;
    		}
    		&:before { top: -8px; }
			&:after { bottom: -16px; }
    	}
    	&--lead {
    		font-size: 20px;
    		font-weight: 300;
    		line-height: 1.4;
    		margin-top: 32px;
    	}
    }
    @include sp {
    	height: calc(70vh - 60px);
		&__title {
	        width: 330px;
			padding: 80px 14px 56px;
			bottom: 0;
			margin: auto;
	    	p {
	    		font-size: 5vw;
	    		margin-bottom: 32px;
				&:before {
				    width: 64px;
				    height: 34px;
				    margin: -36px 70px 0 0;
				}
	    	}
	    	&--h1 {
	    		font-size: 12vw;
	    	}
	    	&--lead {
	    		font-size: 3.6vw;
	    		line-height: 1.6;
	    		margin-top: 28px;
	    	}
    	}
	};
}

.childPageHead {
	margin-top: 90px;
	@include sp {
		margin-top: 60px;
	};
}

.information {
	padding: 64px 80px;
	border: 1px solid #B2B2B2;
	border-radius: 16px;
	&__window {
		margin-top: 48px;
		width: 100%;
		font-size: 24px;
		tbody {
			width: 100%;
		}
		th {
			background: #000;
			color: #fff;
			height: 90px;
        	font-weight: 400;
			text-align: center;
			padding: 0 24px;
			white-space: nowrap;
		}
		td {
			background: #fff;
			width: 100%;
			font-weight: 400;
			padding-left: 24px;
		}
	}
	&__wrap {
		display: flex;
		margin-top: 48px;
	}
	&__detail, &__schedule {
		&--ttl {
			font-size: 18px;
			font-weight: 500;
			margin-bottom: 6px;
		}
		&--head {
			font-size: 18px;
			font-weight: 500;			
		}
		&--list {
			display: flex;
		}
		&--day {
			font-weight: 500;
		}
		&--time {
			font-weight: 300;
		}
	}
	&__detail {
		width: 45%;
	}
	&__schedule {
		width: 55%;
		border-left: 1px solid #aaa;
		padding-left: 24px;
		&--desc {
			font-size: 14px;
			font-weight: 400;
			line-height: 1.6;
			margin-top: 14px;
		}
	}
	@include sp {
		padding: 32px 24px;
        border-radius: 12px;
		&__window {
	        margin-top: 24px;
			th {
		        display: block;
		        height: auto;
		        padding: 8px 14px;
		        font-size: 18px;
			}
			td {
				display: block;
				font-size: 16px;
				padding-left: 0px;
				text-align: center;
				padding: 8px 14px;
			}
		}
		&__wrap {
			flex-direction: column;
			margin-top: 14px;
		}
		&__detail, &__schedule {
			&--ttl {
				font-size: 15px;
				font-weight: 600;
			}
			&--head {
				font-size: 14px;		
			}
			&--list {

			}
			&--day {
				font-size: 14px;
			}
			&--time {
				font-size: 14px;
			}
		}
		&__detail {
			width: 100%;
		}
		&__schedule {
			margin-top: 14px;
			width: 100%;
			border-left: none;
			padding-left: 0px;
			&--desc {
				font-size: 13px;
			}
		}
	};
}

.classroom {
	table {
		margin: 48px auto 0;
		width: 900px;
		border: 1px solid #ccc;
	}
	th, td {border: 1px solid #ccc;}
	th {
		background: #000;
		color: #fff;
		font-weight: 500;
		text-align: center;
		height: 40px;
	}
	td {
		text-align: center;
		font-weight: 400;
		height: 70px;
	}
	&__note {
		font-size: 14px;
		font-weight: 400;
		height: 50px !important;
	}
	&__pay {
		font-weight: 500;
		height: 50px !important;
	}
	@include sp {
		table {
			margin: 48px auto 0;
			width: 100%;
		}
		th {
			background: #000;
			color: #fff;
			font-weight: 500;
			text-align: center;
			height: 40px;
			font-size: 15px;
		}
		td {
			text-align: center;
			font-weight: 400;
			height: 70px;
			font-size: 14px;
		}
		&__note {
			font-size: 13px !important;
			font-weight: 400;
			height: 70px !important;
		}
		&__pay {
			font-weight: 500;
			height: 70px !important;
		}
	};
}

.access {
	background: #e7e7e7;
	padding: 64px 0 0;
	&__wrap {
		display: flex;
		justify-content: space-around;
		margin-top: 48px;
	}
	&__img, &__route {
		width: 40%;
		span {
			display: block;
			height: 300px;
			background-size: cover;
			background-position: center;
		}
	}
    @include sp {
		padding: 32px 0 0;
		&__wrap {
			display: flex;
			flex-direction: column;
			margin-top: 24px;
			padding: 0 24px;
		}
		&__img, &__route {
			width: 100%;
			margin: 14px 0;
			span {
				display: block;
				height: 300px;
				background-size: cover;
				background-position: center;
			}
		}
    };
}

.contact {
	table {
		margin-top: 32px;
		position: relative;
		width: 800px;
		margin: auto;
	}
	th {
		padding: 30px 0px 10px 10px;
		vertical-align: top;
		display: block;
		font-weight: 500;
	}
	td {
		padding: 2px 10px 2px 30px;
		width: 100%;
		height: 70px;
		background: #f0f0f0;
		display: -ms-flexbox;
		display: flex
	}
	.textArea {
		height: 250px;
    	padding: 10px 10px 10px 30px;
	}
    @include sp {
		padding: 24px 14px 32px;
		table {
			position: relative;
			width: 100%;
			margin: auto;
		}
		th {
			padding: 30px 0px 10px 10px;
			vertical-align: top;
			display: block;
			font-weight: 500;
		}
		td {
			padding: 2px 10px 2px 30px;
			width: 100%;
			height: 70px;
			background: #f0f0f0;
			display: -ms-flexbox;
			display: flex
		}
		.textArea {
			height: 250px;
	    	padding: 10px 10px 10px 30px;
		}
    };
}

.policy {
	margin: 48px 0 64px;
	background: #fff;
	padding: 48px;
	border-radius: 6px;
	font-size: 15px;
	font-weight: 400;
	@include sp {
		font-size: 14px;
		margin: 24px 0 32px;
		padding: 32px;
	};
}

.newsPage {
	padding-bottom: 96px;
	dl {
	    padding: 0 64px;
	    margin: 48px 0 0;
	    color: #333;
		div {
		    display: flex;
		    border-bottom: 1px solid #ccc;
		    padding: 32px 0;

	    }
	}
	dt {
	    width: 20%;
	    color: #000;
	    font-family: 'Quicksand', sans-serif;
	    font-weight: 500;
	    text-align: right;
	    margin-right: 14px;		
	}
	&__cat {
	    display: inline-block;
	    width: 80px;
	    text-align: center;
	    font-size: 12px;
	    font-weight: 600;
	    color: #fff;
	    padding: 3px 0;
	    margin: 0 0px 0 20px;
	    border-radius: 2px;
	    &.blogCat {
	    	background: #00AFEC;
	    }
	    &.infoCat {
	    	background: #6FC246;
	    }		
	}
	&__navi {
	    width: 350px;
	    margin: 64px auto 0;
	}
	@include sp {
		margin-bottom: 64px;
		dl {
		    padding: 0 14px;
		    margin: 24px 0 0;
		    color: #333;
			div {
			    display: block;
			    border-bottom: 1px solid #ccc;
			    padding: 14px 0;
		    }
		}
		dt {
		    width: 100%;
		    color: #000;
		    font-family: 'Quicksand', sans-serif;
		    font-weight: 500;
		    text-align: left;
		    margin-right: 14px;		
		}
		dd {
			font-size: 15px;
		}
		&__cat {
		    display: inline-block;
		    width: 80px;
		    text-align: center;
		    font-size: 12px;
		    font-weight: 600;
		    color: #fff;
		    padding: 3px 0;
		    margin: 0 0px 0 20px;
		    border-radius: 2px;
		    &.blog {
		    	background: #00AFEC;
		    }
		    &.info {
		    	background: #6FC246;
		    }		
		}
		&__navi {
		    width: 350px;
		    margin: 64px auto 0;
		}
	};
}

*/
.mainVisual {
  height: 100vh;
  width: 100%;
  padding-top: 90px;
  background: #fafafa;
  position: relative;
}

.mainVisual__movie {
  height: 100%;
}

.mainVisual__movie video {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.news dl {
  padding: 0 64px;
  margin: 48px 0 0;
  color: #333;
}

.news dl div {
  display: -ms-flexbox;
  display: flex;
  border-bottom: 2px dotted #c3c3c3;
  padding: 32px 0;
}

.news dt {
  width: 25%;
  color: #000;
  font-family: 'Quicksand', sans-serif;
  font-weight: 500;
  text-align: right;
  padding-right: 14px;
}

.news dt span {
  display: inline-block;
  width: 90px;
  text-align: center;
  font-size: 12px;
  font-weight: 600;
  padding: 3px 0;
  margin: 0 0px 0 20px;
  border: 1px solid #ccc;
  background: #fff;
  border-radius: 4px;
}

.news dd {
  width: 75%;
  font-weight: 400;
  padding-left: 14px;
}

.news dd a {
  display: block;
  transition: .4s all;
}

.news dd a:hover {
  transform: translate(10px, 0px);
}

.service {
  background: url(../image/bg/serviceBg.webp) center/cover;
  padding: 0;
}

.service__item {
  display: -ms-flexbox;
  display: flex;
}

.service__item--img {
  width: 35%;
  height: 500px;
  background: url(../image/photo/serviceImg.webp) center/cover;
}

.service__item--text {
  width: 65%;
  padding: 64px 12% 0 64px;
  background: rgba(255, 255, 255, 0.7);
}

.service__item--text p {
  font-size: 17px;
}

.service__achievement {
  padding: 80px 0;
}

.service__achievement--wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 64px;
}

.service__achievement--item {
  position: relative;
  width: 31%;
  background: #fff;
  height: 520px;
  border-radius: 0 0 0 14px;
  transition: .3s;
}

.service__achievement--item:hover {
  box-shadow: 3px 6px 20px rgba(0, 0, 0, 0.08);
  position: relative;
}

.service__achievement--img span {
  display: block;
  height: 240px;
  background-size: cover;
  background-position: center;
}

.service__achievement--text {
  padding: 0 14px;
}

.service__achievement h4 {
  font-size: 24px;
  font-weight: 500;
}

.service__achievement .icon {
  position: absolute;
  right: 0;
  bottom: 0;
}

.company__wrap {
  border: 1px solid #ddd;
  border-radius: 12px;
  display: -ms-flexbox;
  display: flex;
}

.company__wrap--text {
  width: 55%;
  padding: 64px 0 0 80px;
}

.company__wrap--text ul li {
  margin-top: 20px;
}

.company__wrap--img {
  width: 45%;
}

.company__wrap--img img {
  width: 100%;
  height: 480px;
  border-radius: 0 11px 11px 0;
  -o-object-fit: cover;
  object-fit: cover;
}

.company__btn {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #f8f8f8;
  width: 350px;
  height: 50px;
  font-size: 18px;
  transition: .3s;
}

.company__btn:after {
  content: '';
  background-image: url(../image/icon/icon_semiround.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 44px;
  height: 50px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto -35px auto 0px;
}

.company__btn:hover {
  box-shadow: 3px 6px 20px rgba(0, 0, 0, 0.08);
  transform: translate(10px, 0px);
  position: relative;
}

.access {
  position: relative;
  background: #f0f0f0;
  padding: 0;
}

.access__wrap {
  height: auto;
}

.access__text {
  width: 400px;
  background: #f0f0f0;
  float: left;
  margin-top: 100px;
}

.childHead {
  height: 100px;
  background-image: url(../image/bg/childHeadBg.webp);
  background-size: cover;
  margin-top: 90px;
}

.servicePage__head {
  text-align: center;
  font-size: 17px;
  margin: 64px 48px;
}

.servicePage__list {
  margin-bottom: 80px;
}

.servicePage__list--img {
  background-size: cover;
  height: 500px;
}

.servicePage__list--img.kanri {
  background-image: url(../image/bg/kanriBg.webp);
}

.servicePage__list--img.consul {
  background-image: url(../image/bg/consulBg.webp);
}

.servicePage__list--img.tsuyomi {
  background-image: url(../image/bg/tsuyomiBg.webp);
}

.servicePage__list--text {
  position: relative;
  z-index: 5;
  margin: -200px 0 0;
  padding: 80px 100px;
  background: rgba(255, 255, 255, 0.8);
}

.servicePage__list--text h4 {
  margin-top: 20px;
}

.servicePage__list--text h5 {
  font-size: 16px;
  margin-top: 20px;
}

.servicePage__list--text p {
  font-size: 14px;
  font-weight: 400;
  margin-top: 14px;
}

.servicePage__list--text ul {
  margin-top: 14px;
}

.servicePage__list--text ul li {
  font-size: 14px;
  color: #224B8F;
}

.servicePage__list--text table tr th {
  width: 75%;
  padding: 0 24px 0 0;
}

.servicePage__list--text table tr td {
  width: 20%;
  vertical-align: bottom;
}

.servicePage__list--text table tr td img {
  aspect-ratio: 1 / 1;
  -o-object-fit: cover;
  object-fit: cover;
}

.achievementPage {
  padding: 64px 0;
}

.achievementPage__head {
  position: relative;
  font-size: 36px;
  letter-spacing: 0.1em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  margin-bottom: 64px;
}

.achievementPage__head:after {
  content: "";
  background-color: #333;
  width: 30px;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
  margin: 26px auto 0;
}

.achievementPage__head span {
  display: block;
  font-family: 'Quicksand', sans-serif;
  font-size: 16px;
  font-weight: 500;
  left: 0;
  right: 0;
  margin: 24px 0 0;
}

.achievementPage__wrap {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
  border-radius: 0 14px 0 0;
  margin-bottom: 32px;
}

.achievementPage__wrap:hover {
  box-shadow: 3px 6px 20px rgba(0, 0, 0, 0.08);
  position: relative;
}

.achievementPage__wrap--img {
  width: 150px;
}

.achievementPage__wrap--img span {
  display: block;
  height: 150px;
  background-size: cover;
  background-position: center;
}

.achievementPage__wrap--text {
  width: calc( 100% - 150px);
  padding: 0 48px;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.achievementPage__wrap--text h1 {
  font-size: 24px !important;
}

.achievementPage__wrap .icon {
  position: absolute;
  right: 0;
  bottom: 0;
}

.achievementPage__list--img span {
  display: block;
  height: 500px;
  background-size: cover;
  background-position: center;
}

.achievementPage__list--img img {
  aspect-ratio: 1 / 1;
  -o-object-fit: cover;
  object-fit: cover;
}

.achievementPage__list--text {
  padding: 0 64px;
}

.achievementPage h1 {
  line-height: 1.5;
  margin-bottom: 32px;
  font-size: 34px;
  border-bottom: 1px solid #ccc;
}

.achievementPage h1 span.head {
  position: relative;
  font-weight: 500;
}

.achievementPage h1 span.head:after {
  content: '';
  position: absolute;
  background-color: #007AFF;
  width: 100%;
  height: 3px;
  left: 0;
  bottom: 0;
  margin-bottom: -3px;
}

.achievementPage h1 span.tail {
  font-size: 16px;
  font-weight: 500;
  padding-left: 20px;
  padding-right: 20px;
  color: #666;
}

.achievementPage h2 {
  color: #007AFF;
  margin: 24px 0 16px;
  line-height: 1.4;
  font-weight: 600;
  position: relative;
}

.achievementPage h3 {
  color: #333;
  margin: 24px 0 14px;
  font-weight: 500;
  line-height: 1.4;
  position: relative;
}

.achievementPage h3:before {
  content: '';
  background-color: #000;
  display: inline-block;
  width: 14px;
  height: 1px;
  vertical-align: middle;
  margin-right: 10px;
}

.achievementPage h4 {
  color: #333;
  margin: 32px 0 16px;
  font-weight: 500;
  line-height: 1.4;
  position: relative;
}

.achievementPage h4:before {
  content: '';
  background-color: #007aff;
  display: inline-block;
  width: 10px;
  height: 10px;
  vertical-align: middle;
  margin-right: 10px;
}

.achievementPage h5 {
  margin: 32px 0 16px;
  font-weight: 500;
  line-height: 1.4;
}

.achievementPage h6 {
  margin: 32px 0 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #838383;
}

.achievementPage p {
  margin: 18px 0;
  color: #333;
  font-weight: 400;
}

.achievementPage .dataBox {
  border: 5px solid #bebebe;
  border-radius: 8px;
  padding: 48px 64px;
  margin: 48px 0;
}

.achievementPage .dataBox > dl {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  margin: 8px 0;
  font-size: 16px;
}

.achievementPage .dataBox > dl dt {
  width: 20%;
}

.achievementPage .dataBox > dl dd {
  width: 80%;
}

.achievementPage .dataBox__thumb {
  margin-top: 48px;
  display: -ms-flexbox;
  display: flex;
}

.achievementPage .dataBox__thumb > li {
  margin-right: 8px;
  list-style-type: none;
  margin-top: 0px;
}

.achievementPage .dataBox__thumb > li span {
  width: 100px;
  height: 100px;
  display: block;
  background-size: cover;
  background-position: center;
}

.achievementPage .dataBox__thumb > li span img {
  aspect-ratio: 1 / 1;
  -o-object-fit: cover;
  object-fit: cover;
}

.achievementPage .dataBox__sns {
  display: -ms-flexbox;
  display: flex;
}

.achievementPage .dataBox__sns li {
  width: 40px;
  margin: 0 14px;
}

.companyPage__head {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  padding-left: 48px;
  -ms-flex-align: center;
  align-items: center;
  z-index: 5;
}

.companyPage__head--img {
  width: 55%;
}

.companyPage__head--img span {
  display: block;
  height: 500px;
  background-size: cover;
  background-position: center;
}

.companyPage__head--text {
  width: 44%;
  padding-left: 96px;
}

.companyPage__wrap.row {
  margin-top: 144px;
  padding-bottom: 0;
}

.companyPage__content {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  margin-left: 80px;
  margin: -64px 0 0 0;
  padding: 144px 80px 96px 80px;
  background: #fff;
  border-radius: 0 24px 0 0;
}

.companyPage__content--tit {
  width: 25%;
  position: relative;
  font-size: 24px;
  line-height: 1;
}

.companyPage__content--tit:after {
  content: '';
  position: absolute;
  background-color: #666;
  width: 35px;
  height: 3px;
  left: 0;
  top: 0;
  margin-top: 52px;
}

.companyPage__content--tit.mes {
  width: 25%;
}

.companyPage__content--text {
  width: 70%;
  font-weight: 400;
}

.companyPage__content--text div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  border-bottom: 1px dotted #aaa;
  padding: 24px;
}

.companyPage__content--text dt {
  width: 30%;
  text-align: right;
  color: #224B8F;
  padding-right: 100px;
}

.companyPage__content--text dd {
  width: 70%;
  text-align: left;
}

.companyPage__content--messege {
  width: 75%;
}

.companyPage__content--photo {
  width: 90%;
  margin-top: 64px;
}

.companyPage__content--photo p {
  margin-top: 14px;
  font-size: 13px;
  line-height: 1.6;
}

.companyPage__content--photo p span {
  font-size: 16px;
}

.companyPage__content--words {
  font-weight: 400;
  padding: 80px 0px 0 20px;
  font-size: 16px;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mtXS, .mtXSSp {
    margin-top: 4px !important;
  }
  .mtS, .mtSSp {
    margin-top: 8px !important;
  }
  .mtM, .mtMSp {
    margin-top: 16px !important;
  }
  .mtL, .mtLSp {
    margin-top: 32px !important;
  }
  .mtXL, .mtXLSp {
    margin-top: 48px !important;
  }
  .mtXXL, .mtXXLSp {
    margin-top: 64px !important;
  }
  .mbXS, .mbXSSp {
    margin-bottom: 4px !important;
  }
  .mbS, .mbSSp {
    margin-bottom: 8px !important;
  }
  .mbM, .mbMSp {
    margin-bottom: 16px !important;
  }
  .mbL, .mbLSp {
    margin-bottom: 32px !important;
  }
  .mbXL, .mbXLSp {
    margin-bottom: 48px !important;
  }
  .mbXXL, .mbXXLSp {
    margin-bottom: 64px !important;
  }
  .mlXS, .mlXSSp {
    margin-left: 4px !important;
  }
  .mlS, .mlSSp {
    margin-left: 8px !important;
  }
  .mlM, .mlMSp {
    margin-left: 16px !important;
  }
  .mlL, .mlLSp {
    margin-left: 32px !important;
  }
  .mlXL, .mlXLSp {
    margin-left: 48px !important;
  }
  .mrXS, .mrXSSp {
    margin-right: 4px !important;
  }
  .mrS, .mrSSp {
    margin-right: 8px !important;
  }
  .mrM, .mrMSp {
    margin-right: 16px !important;
  }
  .mrL, .mrLSp {
    margin-right: 32px !important;
  }
  .mrXL, .mrXLSp {
    margin-right: 48px !important;
  }
  .ptXS, .ptXSSp {
    padding-top: 4px !important;
  }
  .ptS, .ptSSp {
    padding-top: 8px !important;
  }
  .ptM, .ptMSp {
    padding-top: 16px !important;
  }
  .ptL, .ptLSp {
    padding-top: 32px !important;
  }
  .ptXL, .ptXLSp {
    padding-top: 48px !important;
  }
  .pbXS, .pbXSSp {
    padding-bottom: 4px !important;
  }
  .pbS, .pbSSp {
    padding-bottom: 8px !important;
  }
  .pbM, .pbMSp {
    padding-bottom: 16px !important;
  }
  .pbL, .pbLSp {
    padding-bottom: 32px !important;
  }
  .pbXL, .pbXLSp {
    padding-bottom: 48px !important;
  }
  .pbXXL, .pbXXLSp {
    padding-bottom: 64px !important;
  }
  .hideSp {
    display: none !important;
  }
  .textXS, .textXSSp {
    font-size: 1rem;
  }
  .textS, .textSSp {
    font-size: 1.2rem;
  }
  .textM, .textMSp {
    font-size: 1.4rem;
  }
  .textL, .textLSp {
    font-size: 1.8rem;
  }
  .textXL, .textXLSp {
    font-size: 2.2rem;
  }
  .textXXL, .textXXLSp {
    font-size: 3.2rem;
  }
  .taLSp {
    text-align: left !important;
  }
  .taCSp {
    text-align: center !important;
  }
  .taRSp {
    text-align: right !important;
  }
  .detailBtn {
    font-size: 15px;
    color: #333;
  }
  .detailBtn__right, .detailBtn__center {
    margin: 24px auto 0;
  }
  .fLSp {
    float: left;
  }
  .fRSp {
    float: right;
  }
  .flexBoxSp {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gridBoxSp {
    display: -ms-grid;
    display: grid;
  }
  .contentBox, .contentBoxSp,
  .contentBoxS, .contentBoxSSp,
  .contentBoxM, .contentBoxMSp,
  .contentBoxL, .contentBoxLSp {
    margin-left: 3.5% !important;
    margin-right: 3.5% !important;
  }
  section {
    padding: 32px 0;
  }
  .breadcrumb {
    display: none;
  }
  .cmnTtl__type1 {
    font-size: 24px;
  }
  .cmnTtl__type1 span {
    font-size: 12px;
  }
  .cmnTtl__type2 {
    font-size: 18px;
    width: 100%;
    padding-left: 10px;
  }
  .cmnTtl__type3 {
    font-size: 24px;
  }
  .cmnTtl__type3:after {
    margin: 10px auto 0;
  }
  .cmnTtl__type3 span {
    margin: 10px 0 0;
    font-size: 12px;
  }
  .cmnTtl__type4 {
    font-size: 16px;
    padding: 0 0 10px;
  }
  .cmnTtl__type4:after {
    width: 20px;
    height: 2px;
  }
  .cmnTtl__type5 {
    font-size: 18px;
    padding: 0 0 14px;
  }
  .cmnTtl__type5:after {
    width: 40px;
  }
  .cmnTtl__type6 {
    font-size: 24px;
    padding: 0 0 14px;
  }
  .cmnTtl__type6 span {
    font-size: 14px;
    vertical-align: -130%;
    letter-spacing: 0.1em;
  }
  .cmnTtl__type6:after {
    width: 40px;
  }
  .cmsContents {
    padding-bottom: 48px;
  }
  .cmsContents h1 {
    font-size: 2.2rem;
  }
  .cmsContents h2 {
    font-size: 1.8rem;
  }
  .cmsContents h3 {
    font-size: 1.6rem;
  }
  .cmsContents h4 {
    font-size: 1.6rem;
  }
  .cmsContents h5 {
    font-size: 16px;
  }
  .cmsContents h6 {
    font-size: 1.4rem;
  }
  .cmsContents p {
    font-size: 15px;
  }
  .cmsContents ul {
    font-size: 1.4rem;
  }
  .cmsContents ol {
    font-size: 1.4rem;
  }
  .cmsContents dl {
    font-size: 1.4rem;
  }
  .cmsContents blockquote {
    padding: 24px 16px;
  }
  .cmsContents table {
    font-size: 1.4rem;
  }
  .nav-below {
    padding: 0;
    margin-bottom: 16px;
  }
  .nav-next {
    text-align: right;
  }
  .wp-pagenavi {
    margin-top: 32px;
  }
  .wp-pagenavi a, .wp-pagenavi span {
    height: 36px;
    line-height: 28px;
  }
  .wp-pagenavi .current {
    line-height: 27px;
  }
  .gmap {
    height: 400px;
  }
  .contact table {
    width: 100%;
  }
  .contact tr {
    display: block;
    margin-bottom: 24px;
  }
  .contact th {
    width: 100%;
    padding: 0px;
  }
  .contact td {
    width: 100%;
    font-size: 14px;
    padding: 0px;
    height: 60px;
    margin-top: 6px;
  }
  .contact td.textArea {
    height: 200px;
    padding: 10px 10px 10px 20px;
  }
  .submitBtn {
    margin: 0px auto;
    padding: 15px 64px;
  }
  .FixedFt__top a {
    height: 45px;
    width: 45px;
  }
  .Footer {
    padding-top: 24px;
  }
  .FtSMap {
    width: 100%;
    padding: 0px 5% 32px;
  }
  .FtSMap__wrap {
    -ms-flex-pack: center;
    justify-content: center;
  }
  .FtSMap__wrap a {
    line-height: 2.4rem;
    padding: 0px 15px;
    display: inline-block;
  }
  .FtSMap__logo {
    width: 100px;
  }
  .FtSMap__logo img {
    margin-top: 14px;
  }
  .FtSMap__menu {
    width: 100%;
    padding: 0 0 0 14px;
  }
  #header {
    height: 60px;
    min-width: initial;
  }
  .Header {
    background: rgba(249, 249, 249, 0.8);
  }
  .Header__brandName {
    height: 60px;
    width: 100%;
    opacity: 0.8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    z-index: 10;
  }
  .Header__brandName a, .Header__brandName p {
    width: 200px;
    height: 38px;
  }
  .GNav__menuOpenBtn {
    height: 60px;
    right: 0;
    top: 0;
    width: 60px;
  }
  .GNav__menuOpenBtn span {
    height: 2px;
    left: calc(50% - 12px);
  }
  .GNav__menuOpenBtn span:nth-child(1) {
    top: 22px;
    width: 24px;
  }
  .GNav__menuOpenBtn span:nth-child(2) {
    top: 28px;
    width: 24px;
  }
  .GNav__menuOpenBtn span:nth-child(3) {
    top: 34px;
    width: 24px;
  }
  .GNav__menuBtnMenu {
    bottom: 4px;
    font-size: 10px;
    position: absolute;
    text-align: center;
    width: 100%;
  }
  .GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(1) {
    top: 28px;
    width: 24px;
    left: 18px;
  }
  .GNav__menuOpenBtn.js_gnavMenu-open span:nth-child(3) {
    top: 28px;
    width: 24px;
    left: 18px;
  }
  .GNav__menuCloseBtn {
    height: 60px;
    right: 0;
    top: 0;
    width: 60px;
    position: absolute;
    z-index: 50;
  }
  .GNav__menu {
    display: none;
    height: 100vh;
    overflow-y: scroll;
    background-color: #fff;
  }
  .GNav__menu .mainMenu {
    width: 100%;
    margin-top: 64px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -ms-flex-direction: column;
    flex-direction: column;
    align-items: center;
  }
  .GNav__menu .mainMenu__list:after {
    background-color: #ccc;
    width: 30px;
    height: 1px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 14px auto 0px;
  }
  .GNav__menu .mainMenu__list > a {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    font-weight: 500;
    font-size: 24px;
    padding: 14px 14px;
    width: 330px;
  }
  .GNav__menu .mainMenu__list > a span {
    font-size: 12px;
    color: #333;
    font-family: 'Quicksand';
    padding-left: 8px;
    font-weight: 400;
  }
  .GNav__menu .mainMenu__list > a.nonEvent {
    pointer-events: none;
  }
  .GNav__menu .mainMenu .topMenu > .toggleBtn {
    position: absolute;
    display: block;
    width: 30px;
    height: 30px;
    right: 35px;
    top: 24px;
    background: #224B8F;
  }
  .GNav__menu .mainMenu .topMenu > .toggleBtn:before {
    content: '';
    width: 15px;
    height: 10px;
    background-image: url(../image/icon/icon_arrow-down-w.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    transition: 0.3s;
    margin: auto;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
  }
  .GNav__menu .mainMenu .topMenu > .toggleBtn.active:before {
    background-image: url(../image/icon/icon_arrow-down-w.svg);
    transform: rotate(180deg);
    transition: 0.3s;
  }
  .GNav__menuLink {
    font-size: 12px;
    font-weight: 500;
    padding-top: 48px;
    display: block;
  }
  .toggleContents {
    display: none;
    background: #e6eae8;
    margin-top: -5px;
  }
  .toggleContents li {
    border-bottom: 1px solid #fff;
  }
  .toggleContents li a {
    font-size: 14px;
    display: block;
    padding: 14px 20px;
  }
  .toggleContents li:last-child {
    border-bottom: none;
  }
  .mainVisual {
    height: 500px;
    padding-top: 0;
    margin-top: 60px;
    margin-left: 0;
  }
  .mainVisual__movie {
    width: 100%;
    float: none;
    height: 500px;
  }
  .mainVisual__movie video {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%;
  }
  .mainVisual:before {
    width: 80%;
    height: 160px;
    margin: 10px 0 0 4%;
  }
  .news__wrap {
    border: none;
    padding: 24px 0;
  }
  .news dl {
    padding: 0;
    margin: 14px 0 0;
  }
  .news dl div {
    display: block;
    padding: 18px 0;
  }
  .news dt {
    width: 100%;
    text-align: left;
    margin-right: 0;
    font-size: 14px;
  }
  .news dt ul li {
    width: 70px;
    font-size: 10px;
    padding: 2px;
    margin: 0 0px 0 8px;
  }
  .news dd {
    width: 100%;
    line-height: 1.6;
    padding-top: 6px;
  }
  .news dd a {
    font-size: 14px;
  }
  .service__wrap {
    margin: 32px 0 0 0;
  }
  .service__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 32px 0 0 0;
  }
  .service__item--img {
    width: 100%;
    height: 250px;
  }
  .service__item--text {
    width: 100%;
    padding: 24px 14px;
  }
  .service__item--text p {
    font-size: 16px;
  }
  .service__achievement {
    padding: 24px 0;
  }
  .service__achievement--wrap {
    display: block;
    margin-top: 24px;
    padding: 0;
  }
  .service__achievement--item {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0 0 24px;
    padding: 0 0 48px;
    border-radius: 0 0 0 24px;
  }
  .service__achievement h4 {
    font-size: 20px;
  }
  .service__achievement .icon {
    width: 45px;
  }
  .company__wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .company__wrap--text {
    width: 100%;
    padding: 14px;
  }
  .company__wrap--text ul li {
    margin-top: 20px;
  }
  .company__wrap--img {
    width: 100%;
  }
  .company__wrap--img img {
    width: 100%;
    height: 200px;
    border-radius: 0 0 11px 11px;
  }
  .company__btn {
    width: 100%;
    font-size: 16px;
  }
  .company__btn:after {
    margin: 0px;
  }
  .access {
    padding: 0;
  }
  .access__wrap {
    margin-top: 24px;
  }
  .access__text {
    width: 100%;
    background: #f0f0f0;
    float: none;
    margin-top: 24px;
  }
  .childHead {
    height: 60px;
    margin-top: 60px;
    padding-left: 14px;
  }
  .servicePage__head {
    font-size: 16px;
    margin: 32px;
  }
  .servicePage__list {
    margin-bottom: 48px;
  }
  .servicePage__list--img {
    height: 160px;
  }
  .servicePage__list--text {
    margin: -70px 0 0;
    padding: 40px 7%;
  }
  .servicePage__list--text ul {
    margin-top: 14px;
  }
  .servicePage__list--text ul li {
    font-size: 14px;
    color: #224B8F;
    text-indent: -1em;
    padding-left: 1em;
  }
  .servicePage__list--text table tr th {
    display: block;
    width: 100%;
    padding: 0;
  }
  .servicePage__list--text table tr td {
    display: block;
    width: 100%;
    padding: 10%;
  }
  .achievementPage {
    padding: 32px 0;
  }
  .achievementPage__head {
    padding: 0;
    margin-bottom: 32px;
    font-size: 24px;
  }
  .achievementPage__head:after {
    margin: 10px auto 0;
  }
  .achievementPage__head span {
    margin: 10px 0 0;
    font-size: 12px;
  }
  .achievementPage__wrap {
    -ms-flex-align: center;
    align-items: center;
  }
  .achievementPage__wrap--img {
    width: 100px;
  }
  .achievementPage__wrap--img span {
    height: 160px;
  }
  .achievementPage__wrap--text {
    width: calc(100% - 100px);
    padding: 0 24px;
  }
  .achievementPage__wrap--text h1 {
    font-size: 20px !important;
  }
  .achievementPage h1 {
    font-size: 2.4rem;
    margin-bottom: 32px;
  }
  .achievementPage h1 span.head {
    position: relative;
    font-weight: 500;
  }
  .achievementPage h1 span.head:after {
    content: '';
    position: absolute;
    background-color: #007AFF;
    width: 100%;
    height: 3px;
    left: 0;
    bottom: 0;
    margin-bottom: -3px;
  }
  .achievementPage h1 span.tail {
    font-size: 13px;
    float: right;
    padding: 6px 0 0;
  }
  .achievementPage h2 {
    font-size: 1.6rem;
    line-height: 1.6;
    margin: 48px 0 0;
  }
  .achievementPage h3 {
    font-size: 1.6rem;
    line-height: 1.6;
  }
  .achievementPage h4 {
    font-size: 1.6rem;
  }
  .achievementPage h5 {
    font-size: 16px;
  }
  .achievementPage h6 {
    font-size: 16px;
  }
  .achievementPage p {
    font-size: 15px;
  }
  .achievementPage .dataBox {
    padding: 14px 24px;
    margin: 32px 0;
  }
  .achievementPage .dataBox > dl {
    display: block;
    -ms-flex-align: center;
    align-items: center;
    margin: 8px 0;
    padding-bottom: 14px;
    font-size: 16px;
  }
  .achievementPage .dataBox > dl dt {
    width: 100%;
  }
  .achievementPage .dataBox > dl dd {
    width: 100%;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.4;
  }
  .companyPage__head {
    -ms-flex-direction: column;
    flex-direction: column;
    padding-left: 0;
    z-index: initial;
  }
  .companyPage__head--img {
    margin: 0 90px 0 auto;
    width: 80%;
  }
  .companyPage__head--img span {
    height: 300px;
  }
  .companyPage__head--text {
    width: auto;
    background: #f3f3f3;
    padding: 32px;
    z-index: 5;
    position: relative;
    margin: -100px 20px 0 auto;
    text-align: right;
  }
  .companyPage__wrap.row {
    margin-top: 32px;
  }
  .companyPage__content {
    margin: 0px 0 0 0;
    border-radius: 0 24px 0 0;
    padding: 40px 7%;
    display: block;
  }
  .companyPage__content--tit {
    width: 100%;
    font-size: 20px;
    margin-bottom: 0;
  }
  .companyPage__content--tit:after {
    width: 30px;
    height: 3px;
    margin-top: 40px;
  }
  .companyPage__content--tit.mes {
    width: 100%;
  }
  .companyPage__content--text {
    width: 100%;
    margin-top: 48px;
  }
  .companyPage__content--text div {
    display: block;
    padding: 14px 0;
  }
  .companyPage__content--text dt {
    width: 100%;
    text-align: left;
    padding-right: 100px;
  }
  .companyPage__content--text dd {
    width: 100%;
    text-align: left;
  }
  .companyPage__content--messege {
    display: block;
    width: 100%;
  }
  .companyPage__content--photo {
    width: 100%;
    margin: 0;
    padding: 48px;
  }
  .companyPage__content--photo p {
    text-align: right;
  }
  .companyPage__content--words {
    padding: 0;
  }
}

@media screen and (min-width: 768px) {
  .mtXS, .mtXSPc {
    margin-top: 8px !important;
  }
  .mtS, .mtSPc {
    margin-top: 16px !important;
  }
  .mtM, .mtMPc {
    margin-top: 32px !important;
  }
  .mtL, .mtLPc {
    margin-top: 48px !important;
  }
  .mtXL, .mtXLPc {
    margin-top: 64px !important;
  }
  .mtXXL, .mtXXLPc {
    margin-top: 80px !important;
  }
  .mtXXXLPc {
    margin-top: 128px !important;
  }
  .mbXS, .mbXSPc {
    margin-bottom: 8px !important;
  }
  .mbS, .mbSPc {
    margin-bottom: 16px !important;
  }
  .mbM, .mbMPc {
    margin-bottom: 32px !important;
  }
  .mbL, .mbLPc {
    margin-bottom: 48px !important;
  }
  .mbXL, .mbXLPc {
    margin-bottom: 64px !important;
  }
  .mbXXL, .mbXXLPc {
    margin-bottom: 80px !important;
  }
  .mlXS, .mlXSPc {
    margin-left: 8px !important;
  }
  .mlS, .mlSPc {
    margin-left: 16px !important;
  }
  .mlM, .mlMPc {
    margin-left: 32px !important;
  }
  .mlL, .mtlPc {
    margin-left: 48px !important;
  }
  .mlXL, .mlXLPc {
    margin-left: 64px !important;
  }
  .mrXS, .mrXSSPc {
    margin-right: 8px !important;
  }
  .mrS, .mrSPc {
    margin-right: 16px !important;
  }
  .mrM, .mrMPc {
    margin-right: 32px !important;
  }
  .mrL, .mrLPc {
    margin-right: 48px !important;
  }
  .mrXL, .mrXLPc {
    margin-right: 64px !important;
  }
  .ptXS, .ptXSPc {
    padding-top: 8px !important;
  }
  .ptS, .ptSPc {
    padding-top: 16px !important;
  }
  .ptM, .ptMPc {
    padding-top: 32px !important;
  }
  .ptL, .ptLPc {
    padding-top: 48px !important;
  }
  .ptXL, .ptXLPc {
    padding-top: 64px !important;
  }
  .pbXS, .pbXSPc {
    padding-bottom: 8px !important;
  }
  .pbS, .pbSPc {
    padding-bottom: 16px !important;
  }
  .pbM, .pbMPc {
    padding-bottom: 32px !important;
  }
  .pbL, .pbLPc {
    padding-bottom: 48px !important;
  }
  .pbXL, .pbXLPc {
    padding-bottom: 64px !important;
  }
  .pbXXL, .pbXXLPc {
    padding-bottom: 80px !important;
  }
  .hidePc {
    display: none !important;
  }
  .textXS, .textXSPc {
    font-size: 1.2rem;
  }
  .textS, .textSPc {
    font-size: 1.4rem;
  }
  .textM, .textMPc {
    font-size: 2rem;
  }
  .textL, .textLPc {
    font-size: 2.4rem;
  }
  .textXL, .textXLPc {
    font-size: 3.2rem;
  }
  .textXXL, .textXXLPc {
    font-size: 4rem;
  }
  .taLPc {
    text-align: left !important;
  }
  .taCPc {
    text-align: center !important;
  }
  .taRPc {
    text-align: right !important;
  }
  .wrapper {
    min-width: 1200px;
  }
  .fLPc {
    float: left;
  }
  .fRPc {
    float: right !important;
  }
  .flexBoxPc {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gridBoxPc {
    display: -ms-grid;
    display: grid;
  }
  .contentBox, .contentBoxPc {
    max-width: 1100px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2.5%;
    padding-right: 2.5%;
  }
  .contentBoxS, .contentBoxSPc {
    width: 800px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0;
  }
  .contentBoxM, .contentBoxMPc {
    width: 1000px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2.5%;
    padding-right: 2.5%;
  }
  .contentBoxL, .contentBoxLPc {
    max-width: 1200px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 2%;
    padding-right: 2%;
  }
  .breadcrumb {
    height: 25px;
    font-size: 12px;
    padding: 4px 0 0 90px;
  }
  .cmsContents h2 {
    font-size: 1.8rem;
  }
  .cmsContents h3 {
    font-size: 1.6rem;
  }
  .cmsContents h4 {
    font-size: 2.0rem;
  }
  .cmsContents h5 {
    font-size: 18px;
  }
  .cmsContents h6 {
    font-size: 16px;
  }
  .cmsContents ul {
    font-size: 2rem;
  }
  .cmsContents ol {
    font-size: 2rem;
  }
  .cmsContents dl {
    font-size: 2rem;
  }
  .cmsContents blockquote {
    padding: 24px 32px;
  }
  .cmsContents blockquote p {
    font-size: 16px;
  }
  .cmsContents table {
    font-size: 2rem;
  }
  .GNav__menuOpenBtn {
    display: none;
  }
  .GNav__menu {
    display: block;
    width: 100%;
  }
  .GNav__menu .mainMenu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin: 0 0 0 auto;
  }
  .GNav__menu .mainMenu__list:after {
    width: 1px;
    height: 12px;
    background-color: #a4a4a4;
    bottom: 0;
    top: 0;
    right: 0;
    margin: auto;
  }
  .GNav__menu .mainMenu__list a {
    position: relative;
    height: 90px;
    padding: 0 48px;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.6;
    white-space: nowrap;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .GNav__menu .mainMenu__list a span {
    font-size: 12px;
    font-weight: 500;
  }
  .GNav__menu .mainMenu__list:hover {
    background: #224B8F;
    color: #fff;
  }
  .hoverContent {
    display: none;
    position: absolute;
    z-index: 5;
    right: 0;
  }
  .hoverContent__sub a {
    width: 330px;
    background: #224B8F;
    color: #fff;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em;
    border-bottom: 1px solid rgba(255, 255, 255, 0.17);
  }
  .hoverContent__sub a:hover {
    background: #007AFF;
    color: #fff;
  }
  .topMenu:before {
    content: '';
    width: 11px;
    height: 7px;
    background-image: url(../image/icon/icon_arrow-down.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    bottom: 8px;
    left: 0;
    right: 0;
    margin: auto;
    transition: 0.3s;
    z-index: 10;
  }
  .topMenu:hover:before {
    background-image: url(../image/icon/icon_arrow-down-w.svg);
    transform: rotate(180deg);
  }
  .achievementPage h2 {
    font-size: 2.0rem;
  }
  .achievementPage h3 {
    font-size: 1.8rem;
  }
  .achievementPage h4 {
    font-size: 1.8rem;
  }
  .achievementPage h5 {
    font-size: 18px;
  }
  .achievementPage h6 {
    font-size: 16px;
  }
}

@media (hover: hover) {
  a:hover {
    color: inherit;
    text-decoration: none;
  }
  a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]) :hover {
    color: inherit;
    text-decoration: none;
  }
}

/*# sourceMappingURL=style.css.map */
