@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
@import url("https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900");
@import url("https://fonts.googleapis.com/earlyaccess/notosansjp.css");
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

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

.txt-icon,
.txt-icon-pro {
  position: relative;
}

.txt-icon:before,
.txt-icon-pro:before {
  font-family: "Font Awesome 5 Free";
  position: absolute;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  font-size: 2rem;
  font-weight: 900;
}

.txt-icon.icon-pos-left,
.txt-icon-pro.icon-pos-left {
  padding-left: 20px;
}

.txt-icon.icon-pos-left:before,
.txt-icon-pro.icon-pos-left:before {
  left: 0;
}

.txt-icon.icon-pos-right,
.txt-icon-pro.icon-pos-right {
  padding-right: 20px;
}

.txt-icon.icon-pos-right:before,
.txt-icon-pro.icon-pos-right:before {
  right: 0;
}

.txt-icon-inline:after {
  font-family: "Font Awesome 5 Free";
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  margin-left: 5px;
}

.txt-icon-pro:before {
  font-family: "Font Awesome 5 Pro";
  position: absolute;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  font-size: 2rem;
  font-weight: 400;
}

.icon-map:before {
  content: "\f3c5";
}

.icon-tel:before {
  content: "\f095";
}

.icon-fax:before {
  content: "\f1ac";
}

.icon-arrow:before {
  content: "\f054";
  font-size: 1.5rem;
}

.icon-pdf:before {
  content: "\f1c1";
  color: #172A88;
  font-size: 1.6rem;
  font-weight: 400;
  top: 48%;
}

.icon-pdf-inline:after {
  content: "\f1c1";
  color: #172A88;
  font-size: 1.6rem;
  font-weight: 400;
  top: 48%;
}

.icon-arrowdown:before {
  content: "\f107";
  color: #172A88;
}

.icon-arrowup:before {
  content: "\f106";
}

.tb {
  display: none;
}

.sp {
  display: none;
}

.sp-s {
  display: none;
}

@media screen and (min-width: 900px) {
  .pc {
    display: inherit !important;
  }
}

@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

@media screen and (min-width: 900px) {
  .tb {
    display: none !important;
  }
}

@media screen and (max-width: 899px) {
  .tb {
    display: inherit !important;
  }
}

@media screen and (min-width: 900px) {
  .sp {
    display: none !important;
  }
}

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

@media screen and (max-width: 767px) {
  .sp {
    display: inherit !important;
  }
}

@media screen and (min-width: 900px) {
  .sp-s {
    display: none !important;
  }
}

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

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

@media screen and (max-width: 599px) {
  .sp-s {
    display: inherit !important;
  }
}

.mb-120 {
  margin-bottom: 120px !important;
}

.mt-120 {
  margin-top: 120px !important;
}

.mb-112 {
  margin-bottom: 112px !important;
}

.mt-112 {
  margin-top: 112px !important;
}

.mb-104 {
  margin-bottom: 104px !important;
}

.mt-104 {
  margin-top: 104px !important;
}

.mb-96 {
  margin-bottom: 96px !important;
}

.mt-96 {
  margin-top: 96px !important;
}

.mb-88 {
  margin-bottom: 88px !important;
}

.mt-88 {
  margin-top: 88px !important;
}

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

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

.mb-72 {
  margin-bottom: 72px !important;
}

.mt-72 {
  margin-top: 72px !important;
}

.mb-64 {
  margin-bottom: 64px !important;
}

.mt-64 {
  margin-top: 64px !important;
}

.mb-56 {
  margin-bottom: 56px !important;
}

.mt-56 {
  margin-top: 56px !important;
}

.mb-48 {
  margin-bottom: 48px !important;
}

.mt-48 {
  margin-top: 48px !important;
}

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

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

.mb-32 {
  margin-bottom: 32px !important;
}

.mt-32 {
  margin-top: 32px !important;
}

.mb-24 {
  margin-bottom: 24px !important;
}

.mt-24 {
  margin-top: 24px !important;
}

.mb-16 {
  margin-bottom: 16px !important;
}

.mt-16 {
  margin-top: 16px !important;
}

.mb-8 {
  margin-bottom: 8px !important;
}

.mt-8 {
  margin-top: 8px !important;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html,
body {
  height: 100%;
}

main > section {
  padding: 100px 0;
}

@media screen and (max-width: 767px) {
  main > section {
    padding: 6rem 0;
  }
}

main > section.bg-gray {
  background: #F4F6F9;
}

main > section.full {
  padding: 0;
}

main > section:last-child {
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 2;
}

#sec-page .l-inner > section {
  margin-bottom: 80px;
}

#sec-page .l-inner > section:last-of-type {
  margin-bottom: 0;
}

#sec-page .l-inner > section p + p {
  margin-top: 10px;
}

.sp-show {
  display: none !important;
}

.cf:before,
.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

.box-em {
  background: #f7f7f7;
  padding: 35px 35px 30px;
}

@media screen and (max-width: 767px) {
  .box-em {
    padding: 25px;
  }
}

@media screen and (max-width: 599px) {
  .box-em {
    padding: 30px 20px;
  }
}

html {
  font-size: 62.5%;
}

body,
button,
input,
select,
textarea {
  color: #333;
  font-family: 'Roboto',-apple-system,'BlinkMacSystemFont','Segoe UI','Avenir','Helvetica Neue','Helvetica','Arial',"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 1.5rem;
  line-height: 1.8;
  letter-spacing: 1px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  -webkit-text-size-adjust: 100%;
  word-break: break-all;
}

@media screen and (max-width: 767px) {
  body,
  button,
  input,
  select,
  textarea {
    font-size: 1.4rem;
  }
}

main p, main li, main a {
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  main p, main li, main a {
    font-size: 1.5rem;
  }
}

p {
  margin: 0;
  padding: 0;
}

.text-s, .text-s * {
  font-size: 1.3rem;
}

.text-ms, .text-ms * {
  font-size: 1.4rem;
}

.text-m {
  font-size: 1.8rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .text-m {
    font-size: 1.6rem;
  }
}

.align-right {
  text-align: right;
}

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

@media screen and (max-width: 767px) {
  .align-center {
    text-align: left;
  }
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  color: #666;
  font-size: 1.8rem;
  font-size: 1.125rem;
  font-style: italic;
  line-height: 1.7;
  margin: 0;
  overflow: hidden;
  padding: 0;
}

blockquote cite {
  display: block;
  font-style: normal;
  font-weight: 600;
  margin-top: 0.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 1.5rem;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 1.5rem;
  font-size: 0.9375rem;
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: #eee;
  text-decoration: none;
}

big {
  font-size: 125%;
}

blockquote {
  quotes: "" "";
}

q {
  quotes: "“" "”" "‘" "’";
}

blockquote:before,
blockquote:after {
  content: "";
}

:focus {
  outline: none;
}

.title-page {
  font-size: 6rem;
  text-align: center;
  color: #fff;
  letter-spacing: 0.5rem;
  line-height: 1;
  word-break: break-word;
}

@media screen and (max-width: 899px) {
  .title-page {
    font-size: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .title-page {
    font-size: 3rem;
  }
}

.page-head-lead {
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
}

.page-head-intro {
  color: #fff;
  text-align: center;
  margin-top: 40px;
}

@media screen and (max-width: 599px) {
  .page-head-intro {
    text-align: left;
  }
}

.title-bold {
  font-size: 2rem;
  margin-bottom: 20px;
}

.title-text-l {
  font-family: 'Roboto', sans-serif;
  font-size: 4rem;
  color: #000;
  letter-spacing: 3px;
  text-align: center;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .title-text-l {
    font-size: 3rem;
  }
}

/*
各固定ページにある緑色下線の大見出し
*/
.title-l {
  font-family: 'Roboto', sans-serif;
  font-family: 'Roboto', sans-serif;
  font-weight: bold;
  font-size: 3.2rem;
  letter-spacing: 0.44rem;
  text-align: center;
  line-height: 1em;
  padding-bottom: 15px;
  margin-bottom: 10px;
  position: relative;
}

.title-l:before {
  content: '';
  position: absolute;
  bottom: 0;
  display: inline-block;
  width: 200px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #172A88), color-stop(50%, #172A88), color-stop(50%, #E51773));
  background: -webkit-linear-gradient(left, #172A88 50%, #172A88 50%, #E51773 50%);
  background: linear-gradient(to right, #172A88 50%, #172A88 50%, #E51773 50%);
}

.title-lead {
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 60px;
  letter-spacing: 0.3em;
}

.title-m {
  font-size: 3.3rem;
}

.title-line {
  font-size: 2.4rem;
  margin-bottom: 15px;
  border-bottom: 2px solid #D8DDE6;
  margin-top: -2px;
}

@media screen and (max-width: 767px) {
  .title-line {
    font-size: 1.8rem;
  }
}

.title-line span {
  display: inline-block;
  border-bottom: 2px solid #172A88;
  padding-bottom: 15px;
  position: relative;
  top: 2px;
}

.title-line-s {
  font-size: 2rem;
  margin-bottom: 50px;
  margin-top: -2px;
  position: relative;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .title-line-s {
    font-size: 1.8rem;
  }
}

.title-line-s:before {
  content: '';
  position: absolute;
  bottom: -10px;
  display: inline-block;
  width: 64px;
  height: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #172A88), color-stop(50%, #172A88), color-stop(50%, #E51773));
  background: -webkit-linear-gradient(left, #172A88 50%, #172A88 50%, #E51773 50%);
  background: linear-gradient(to right, #172A88 50%, #172A88 50%, #E51773 50%);
}

.title-gray {
  font-size: 1.6rem;
  text-align: center;
  background: #F4F6F9;
  padding: 10px;
  margin-bottom: 25px;
}

h1.lead.index {
  color: #fff;
  padding: 8rem 0 200px;
  text-align: center;
  font-weight: bold;
  font-size: 7.2rem;
  letter-spacing: 5px;
}

h1.lead.index span {
  font-size: 4rem;
  display: block;
  margin-top: 64px;
  line-height: 1.7;
  letter-spacing: 0px;
}

@media screen and (max-width: 899px) {
  h1.lead.index {
    font-size: 6rem;
  }
  h1.lead.index span {
    font-size: 3rem;
  }
}

@media screen and (max-width: 767px) {
  h1.lead.index {
    font-size: 4rem;
    word-break: break-word;
    text-align: left;
    padding: 6rem 3rem 200px;
    line-height: 1.25;
  }
  h1.lead.index span {
    font-size: 1.7rem;
    margin-top: 2rem;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  line-height: 1.4;
  font-weight: bold;
}

.intro {
  text-align: center;
  margin-bottom: 50px;
}

.heading-line {
  font-size: 2rem;
  font-weight: bold;
  border-bottom: 1px solid #333;
  padding-bottom: 10px;
  margin-bottom: 40px;
}

.heading-bold {
  font-size: 1.8rem;
  margin-bottom: 15px;
}

.heading-bg-gray {
  background: #D8DDE6;
  padding: 8px 15px;
  font-size: 1.8rem;
}

.heading-under-line {
  text-align: center;
  font-size: 2rem;
  padding-bottom: 15px;
  position: relative;
}

.heading-under-line:before {
  content: '';
  position: absolute;
  bottom: 0;
  display: inline-block;
  width: 64px;
  height: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: #172A88;
}

.heading-border-l-2 {
  font-size: 1.8rem;
  border-left: 2px solid #172A88;
  border-bottom: 1px dotted #d5dbe6;
  padding-bottom: 5px;
  padding-left: 15px;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .heading-border-l-2 {
    font-size: 1.6rem;
  }
}

.heading-border-l {
  font-size: 1.8rem;
  border-left: 4px solid #172A88;
  padding-left: 15px;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .heading-border-l {
    font-size: 1.6rem;
  }
}

.heading-border-s {
  font-size: 1.6rem;
  border-left: 2px solid #172A88;
  padding-left: 15px;
  margin-bottom: 10px;
}

.heading-border-before {
  font-size: 1.8rem;
  margin-bottom: 20px;
}

.heading-border-before:before {
  content: 'ー';
  display: inline-block;
  font-weight: bold;
  color: #172A88;
  margin-right: 5px;
}

.headeing-link {
  font-size: 1.8rem;
  color: #172A88;
  text-decoration: underline;
  margin-bottom: 10px;
  display: block;
}

@media screen and (max-width: 767px) {
  .headeing-link {
    font-size: 1.6rem;
  }
}

.headeing-link:hover {
  opacity: .7;
}

.font-bold {
  font-weight: bold;
}

.font-size-s, .font-size-s * {
  font-size: 1.4rem;
}

.title-indent {
  font-size: 2.2rem;
  margin: 0 auto;
  max-width: 1210px;
  padding: 0 30px;
}

@media screen and (max-width: 899px) {
  .title-indent {
    padding: 0 15px;
  }
}

@media screen and (max-width: 767px) {
  .title-indent {
    margin-bottom: 15px;
    font-size: 1.8rem;
  }
}

.text-pink {
  color: #E51773;
}

.text-blue {
  color: #172A88;
}

.bold {
  font-weight: bold;
}

/*--------------------------------------------------------------
form
--------------------------------------------------------------*/
label {
  color: #333;
  display: block;
  font-weight: 800;
  margin-bottom: 0.5em;
}

fieldset {
  margin-bottom: 1em;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #333;
  background: #fff;
  background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
  border: 1px solid #bbb;
  border-radius: 3px;
  display: block;
  padding: 0.7em;
  width: 100%;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #222;
  border-color: #333;
}

select {
  border: 1px solid #bbb;
  border-radius: 3px;
  height: 3em;
  max-width: 100%;
}

input[type="radio"],
input[type="checkbox"] {
  margin-right: 0.5em;
}

input[type="radio"] + label,
input[type="checkbox"] + label {
  font-weight: 400;
}

button,
input[type="button"],
input[type="submit"] {
  /*	background-color: #222;
	border: 0;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 800;
	line-height: 1;
	padding: 1em 2em;
	text-shadow: none;
	-webkit-transition: background 0.2s;
	transition: background 0.2s;*/
}

button.secondary,
input[type="reset"],
input[type="button"].secondary,
input[type="reset"].secondary,
input[type="submit"].secondary {
  background-color: #ddd;
  color: #222;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  /*	background: #767676;*/
}

button.secondary:hover,
button.secondary:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="button"].secondary:hover,
input[type="button"].secondary:focus,
input[type="reset"].secondary:hover,
input[type="reset"].secondary:focus,
input[type="submit"].secondary:hover,
input[type="submit"].secondary:focus {
  background: #bbb;
}

.search-area {
  display: block;
  border-bottom: 1px solid #d5dbe6;
  margin-bottom: 40px;
}

.cp_ipselect {
  overflow: hidden;
  width: 240px;
  margin: 0 auto 30px 0;
  text-align: center;
}

.cp_ipselect select {
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  height: 4rem;
  position: relative;
  z-index: 5;
}

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

.cp_ipselect.cp_sl02 {
  position: relative;
  border: 1px solid #d5dbe6;
  border-radius: 2px;
  background: #ffffff;
}

.cp_ipselect.cp_sl02::before {
  position: absolute;
  top: 1.8rem;
  right: 1.3rem;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #fff;
  pointer-events: none;
  z-index: 1;
}

.cp_ipselect.cp_sl02:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 40px;
  content: '';
  background: #172A88;
  background: -webkit-linear-gradient(315deg, #172A88 0%, #2068C0 100%);
  background: linear-gradient(135deg, #172A88 0%, #2068C0 100%);
}

.cp_ipselect.cp_sl02 select {
  padding: 8px 38px 8px 8px;
  color: #666666;
}

/* ==========================================================================
  form-style
  ========================================================================== */
.form_wrap .form_table {
  margin: 30px auto 60px;
}

.form_wrap .form_table a {
  color: #172A88;
  text-decoration: underline;
  font-size: 1.4rem;
  display: inline-block;
  margin-top: 5px;
}

.form_wrap .form_table a:hover {
  opacity: .7;
}

.form_wrap .form_table dl {
  display: table;
  width: 100%;
  border-bottom: 1px dotted #e5e5e5;
}

.form_wrap .form_table dt, .form_wrap .form_table dd {
  display: table-cell;
  vertical-align: top;
}

@media screen and (max-width: 767px) {
  .form_wrap .form_table dt, .form_wrap .form_table dd {
    display: block;
  }
}

.form_wrap .form_table dt {
  width: 30%;
  padding: 36px 0 30px 10px;
  position: relative;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .form_wrap .form_table dt {
    width: 100%;
    padding: 20px 0;
    font-size: 1.5rem;
  }
}

.form_wrap .form_table dt.required:after {
  content: "必須";
  width: 40px;
  position: relative;
  margin-left: 10px;
  display: inline-block;
  background: #172A88;
  color: #000;
  padding: 5px;
  vertical-align: initial;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1;
  color: #fff;
}

.form_wrap .form_table dd {
  width: 70%;
  padding: 30px 0 30px 20px;
  background: #fff;
}

@media screen and (max-width: 767px) {
  .form_wrap .form_table dd {
    width: 100%;
    padding: 0 0 20px;
  }
}

.form_wrap .form_table input[type=text], .form_wrap .form_table input[type=tel], .form_wrap .form_table input[type=url], .form_wrap .form_table input[type=email], .form_wrap .form_table select, .form_wrap .form_table textarea {
  width: 100%;
  padding: 10px 15px;
  background-color: #F4F6F9;
  border-radius: 3px;
  border: 1px solid #D8DDE6;
  font-size: 1.4rem;
  line-height: 2rem;
  letter-spacing: 0.1em;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .form_wrap .form_table input[type=text], .form_wrap .form_table input[type=tel], .form_wrap .form_table input[type=url], .form_wrap .form_table input[type=email], .form_wrap .form_table select, .form_wrap .form_table textarea {
    font-size: 1.6rem;
  }
}

.form_wrap .form_table input[type=text]:focus, .form_wrap .form_table input[type=tel]:focus, .form_wrap .form_table input[type=url]:focus, .form_wrap .form_table input[type=email]:focus, .form_wrap .form_table select:focus, .form_wrap .form_table textarea:focus {
  border: 1px solid #172A88;
}

.form_wrap .check {
  text-align: center;
  padding-top: 0;
  margin-bottom: 20px;
}

.form_wrap .mw_wp_form_input .check {
  display: none;
}

.form_wrap .mw_wp_form_complete .btnWrap {
  margin-top: 30px;
}

.form-block dl:last-child {
  border: none;
  margin-bottom: 20px;
}

.check-wrap {
  width: 100%;
  padding: 10px 15px;
  background-color: #F4F6F9;
  border-radius: 3px;
  text-align: center;
  border: 1px solid #D8DDE6;
  font-size: 1.4rem;
  line-height: 2rem;
  letter-spacing: 0.1em;
  vertical-align: middle;
}

.check-wrap p {
  font-size: 1.4rem;
  margin-bottom: 10px;
}

.check-wrap p:last-child {
  margin-bottom: 0;
}

.checkbox {
  display: none;
}

.checkbox + .mwform-checkbox-field-text {
  position: relative;
  vertical-align: middle;
}

.checkbox + .mwform-checkbox-field-text:before {
  content: "\f0c8";
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

.checkbox:checked + .mwform-checkbox-field-text:before {
  content: "\f14a";
  color: #172A88;
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

.form_wrap .mw_wp_form_preview .form_table dt, .form_wrap .mw_wp_form_preview .form_table dd {
  border-bottom: 1px dotted #eeeeee;
  padding: 30px 10px;
}

@media screen and (max-width: 767px) {
  .form_wrap .mw_wp_form_preview .form_table dt, .form_wrap .mw_wp_form_preview .form_table dd {
    padding: 20px 0;
  }
}

@media screen and (max-width: 767px) {
  .form_wrap .mw_wp_form_preview .form_table dt {
    border-bottom: none;
    padding-bottom: 0;
  }
}

.form_wrap .mw_wp_form_preview .form_table .check-wrap {
  display: none;
}

.form_wrap .mw_wp_form_preview .form_table .form-block {
  margin-bottom: 40px;
}

.form_wrap .mw_wp_form_preview .form_table .form-block dl:last-child dt, .form_wrap .mw_wp_form_preview .form_table .form-block dl:last-child dd {
  border-bottom: none;
}

.form_wrap .mw_wp_form_preview .form_table a.back {
  display: none;
}

.mw_wp_form_complete {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .mw_wp_form_complete {
    text-align: left;
  }
}

.mw_wp_form_complete .btnWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mw_wp_form_complete .btnWrap .btn {
  max-width: 240px;
  height: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.2;
  margin: 0 20px;
}

@media screen and (max-width: 767px) {
  .mw_wp_form_complete .btnWrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .mw_wp_form_complete .btnWrap .btn {
    margin: 20px 0;
  }
}

/*.form_wrap .mw_wp_form_preview .form_table dt, .form_wrap .mw_wp_form_preview .form_table dd{
	border-bottom: 1px dotted #eeeeee;
	    padding: 30px 10px;
}
.form_wrap .mw_wp_form_preview .form_table .check-wrap{
	display: none;
}
.form_wrap .mw_wp_form_preview .form-block {
	margin-bottom: 40px;
}

.form_wrap .mw_wp_form_preview .form_table .form-block dl:last-child dt , .form_wrap .mw_wp_form_preview .form_table .form-block dl:last-child dd {
	border-bottom: none;
}*/
.step-wrap {
  text-align: center;
  margin: 60px auto;
}

.step-wrap img {
  display: block;
  margin: 0 auto;
}

.btnWrap {
  text-align: center;
}

.btnWrap .btn {
  display: inline-block;
  max-width: 240px;
}

@media screen and (max-width: 767px) {
  .btnWrap .btn {
    max-width: inherit;
  }
}

.btnWrap .back {
  background: #54575e;
  background: -webkit-gradient(linear, left top, right top, from(#54575e), color-stop(50%, #54575e), to(#848a93));
  background: -webkit-linear-gradient(left, #54575e 0%, #54575e 50%, #848a93 100%);
  background: linear-gradient(to right, #54575e 0%, #54575e 50%, #848a93 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#54575e', endColorstr='#848a93', GradientType=1);
  margin-right: 40px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-size: 200% auto;
}

.btnWrap .back:hover {
  background-position: right center;
  -webkit-box-shadow: 0 1px 4px rgba(200, 165, 165, 0.5);
          box-shadow: 0 1px 4px rgba(200, 165, 165, 0.5);
}

@media screen and (max-width: 767px) {
  .btnWrap .back {
    margin-right: auto;
    margin-bottom: 20px;
  }
}

.tel-contact-wrap {
  margin-bottom: 60px !important;
}

.tel-contact-wrap h2 {
  margin-bottom: 15px;
}

.tel-contact-wrap .align-center {
  font-size: 1.4rem;
}

ul,
ol {
  margin: 0;
  padding: 0;
}

ul {
  list-style: none;
}

ol {
  list-style: none;
}

li > ul,
li > ol {
  margin: 0;
}

dt {
  font-weight: 700;
}

.list-disc {
  text-align: left;
}

.list-disc li {
  text-indent: -1rem;
  padding-left: 1rem;
}

.list-disc li:before {
  content: '・';
  padding-right: 5px;
  font-size: 1rem;
}

.list-circle li {
  text-indent: -15px;
  padding-left: 10px;
  margin-bottom: 3px;
}

.list-circle li:last-child {
  margin-bottom: 0;
}

.list-circle li:before {
  content: '●';
  padding-right: 7px;
  font-size: 0.8rem;
  color: #172A88;
}

.list-circle.list-circle-gr li:before {
  color: #172A88;
}

.list-circle-bk li {
  text-indent: -15px;
  padding-left: 10px;
  margin-bottom: 3px;
}

.list-circle-bk li:last-child {
  margin-bottom: 0;
}

.list-circle-bk li:before {
  content: '●';
  padding-right: 7px;
  font-size: 0.8rem;
  position: relative;
  top: -1px;
}

.list-circle-bk.list-circle-gr li:before {
  color: #172A88;
}

.list-num {
  counter-reset: listnum;
}

.list-num > li {
  counter-increment: listnum;
}

.list-num > li .list-num-title {
  position: relative;
  margin-bottom: 20px;
  padding: 30px 0 0 50px;
  font-size: 2rem;
}

@media screen and (max-width: 899px) {
  .list-num > li .list-num-title {
    font-size: 1.9rem;
  }
}

@media screen and (max-width: 767px) {
  .list-num > li .list-num-title {
    font-size: 1.8rem;
  }
}

.list-num > li .list-num-title:before {
  font-size: 2rem;
  content: counter(listnum, decimal-leading-zero);
  position: absolute;
  top: 0;
  left: 0;
  font-family: "Noto Sans Japanese",sans-serif;
}

.list-num > li .list-num-title:after {
  content: url("../img/co_ln_01.svg");
  position: absolute;
  top: 0;
  left: 10px;
  color: #172A88;
  font-size: 2rem;
}

.list-case {
  margin: 0 0 50px;
  position: relative;
}

.list-case li {
  padding: 0 15px;
  width: 330px;
}

@media screen and (max-width: 899px) {
  .list-case li {
    width: calc(50% - 30px);
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .list-case li {
    width: 100%;
  }
}

.list-case li a {
  background: #fff;
  display: block;
  height: 100%;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  text-align: left;
  position: relative;
  padding: 30px 20px 30px;
  border: 1px solid #D8DDE6;
}

.list-case li a.events-none {
  pointer-events: none;
}

@media screen and (max-width: 899px) {
  .list-case li a a {
    padding: 25px 17px 20px;
  }
}

.list-case li a .title {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.list-case li a .title p {
  font-weight: bold;
  line-height: 1.2;
}

.list-case li a .logo-area {
  height: 150px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.list-case .slick-arrow {
  width: 30px;
  height: 90px;
  background: #172A88;
  background: -webkit-gradient(linear, left top, right top, from(#172A88), color-stop(70%, #2394CD));
  background: -webkit-linear-gradient(left, #172A88 0%, #2394CD 70%);
  background: linear-gradient(to right, #172A88 0%, #2394CD 70%);
  z-index: 3;
  font-size: 0;
  color: #fff;
  border: none;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.list-case .slick-arrow:after {
  font-family: "Font Awesome 5 Free";
  content: "\f104";
  position: absolute;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-weight: 900;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  font-size: 3rem;
}

.list-case .slick-arrow:hover {
  background: #172A88;
  background: -webkit-linear-gradient(315deg, #172A88 0%, #2068C0 100%);
  background: linear-gradient(135deg, #172A88 0%, #2068C0 100%);
}

.list-case .slick-prev {
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -45px;
}

.list-case .slick-prev:after {
  content: "\f104";
  left: 6px;
}

.list-case .slick-next {
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -45px;
}

.list-case .slick-next:after {
  content: "\f105";
  right: 6px;
}

.list-news {
  margin-bottom: 30px;
}

.list-news li {
  padding-bottom: 10px;
  margin-bottom: 16px;
  border-bottom: 1px solid #e5e5e5;
}

.list-news li .news-title {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.list-news li a {
  display: block;
}

.list-news li a:hover .news-title {
  text-decoration: underline;
}

.list-news li a.events-none {
  pointer-events: none;
}

.list-news li a.blank .news-title:after {
  content: "\f35d";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  font-size: 1.4rem;
}

.list-news .news-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.2rem;
  margin-bottom: 10px;
}

.list-news .news-meta .date {
  font-size: 1.2rem;
}

@media screen and (max-width: 767px) {
  .list-news .news-meta {
    display: block;
  }
  .list-news .news-meta .date {
    display: inline-block;
    margin-right: 10px;
  }
}

.list-news .cat {
  background: #172A88;
  background: -webkit-linear-gradient(315deg, #172A88 0%, #2068C0 100%);
  background: linear-gradient(135deg, #172A88 0%, #2068C0 100%);
  padding: 2px 10px;
  color: #fff;
}

.list-news .cat-wrap {
  margin-left: 10px;
  font-size: 1.2rem;
}

.list-news .cat-wrap .cat:not(:last-child) {
  margin-right: 10px;
}

@media screen and (max-width: 767px) {
  .list-news .cat-wrap {
    display: inline-block;
    margin-left: 0;
  }
}

.list-news .date + .cat {
  margin-left: 10px;
}

.list-news-s li:after {
  content: "";
  display: table;
}

.list-news-s a {
  padding: 0 12px;
}

.list-news-s .news-meta {
  min-width: 103px;
  text-align: center;
  float: left;
}

@media screen and (max-width: 767px) {
  .list-news-s .news-meta {
    float: none;
    max-width: 103px;
  }
}

.list-news-s .cat {
  font-size: 1.2rem;
  margin-top: 2px;
  width: 100%;
}

.list-news-s .news-title {
  margin-left: 130px;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .list-news-s .news-title {
    margin-left: 0;
  }
}

.list-solution {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 60px -1.5rem 60px;
}

.list-solution > li {
  width: calc(33.33% - 30px);
  margin: 0 15px 30px;
  background: #fff;
  text-align: left;
}

.list-solution > li > a {
  position: relative;
  display: block;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  height: 100%;
}

.list-solution > li > a:after {
  content: "";
  background: url("../img/co_shape_01.svg") no-repeat center;
  width: 13px;
  height: 13px;
  background-size: 100%;
  position: absolute;
  bottom: 4px;
  right: 4px;
}

.list-solution > li > a:hover {
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.list-solution > li > a:hover h3 {
  color: #172A88;
}

.list-solution section {
  padding: 46px 20px 35px;
}

@media screen and (max-width: 899px) {
  .list-solution section {
    padding: 50px 20px 40px;
  }
}

@media screen and (max-width: 767px) {
  .list-solution section {
    padding: 40px 20px 30px;
  }
}

.list-solution .list-tag + .icon {
  margin-top: 20px;
}

.list-solution .icon {
  margin-bottom: 35px;
  text-align: center;
}

@media screen and (max-width: 899px) {
  .list-solution .icon {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 767px) {
  .list-solution .icon {
    margin-bottom: 25px;
  }
}

.list-solution h3 {
  font-size: 2rem;
  margin-bottom: 20px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  text-align: center;
}

@media screen and (max-width: 899px) {
  .list-solution > li {
    width: calc(50% - 30px);
  }
  .list-solution > li:last-of-type {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .list-solution > li {
    width: 100%;
  }
}

.list-package {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.list-package li {
  width: calc(33.33% - 30px);
  margin: 0 15px 30px;
}

.list-package li a {
  display: block;
  padding: 20px;
  position: relative;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  background: #fff;
  height: 100%;
}

.list-package li a:after {
  content: "";
  width: 13px;
  height: 13px;
  background: url("../img/co_shape_02.svg") no-repeat center;
  position: absolute;
  right: 4px;
  bottom: 4px;
}

.list-package li a:hover {
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.list-package li a:hover h3 {
  color: #2068C0;
}

.list-package li h3 {
  font-size: 1.5rem;
  letter-spacing: 0;
  margin-bottom: 3px;
  font-weight: bold;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.list-package li p {
  font-size: 1.3rem;
  letter-spacing: -0.01em;
}

@media screen and (max-width: 899px) {
  .list-package li {
    width: 49%;
    margin: 0 0 15px;
  }
  .list-package li:nth-child(even) {
    margin-left: 2%;
  }
}

@media screen and (max-width: 767px) {
  .list-package li {
    width: 100%;
  }
  .list-package li:nth-child(even) {
    margin-left: 0;
  }
}

.list-default li {
  border-bottom: 1px solid #d5dbe6;
}

.list-default dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 767px) {
  .list-default dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.list-default dl dt {
  width: 25%;
  max-width: 200px;
  padding: 2rem;
}

@media screen and (max-width: 767px) {
  .list-default dl dt {
    width: 100%;
    padding-bottom: 0;
  }
}

.list-default dl dd {
  width: 75%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .list-default dl dd {
    width: 100%;
    padding-top: 0;
  }
}

.list-line dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 767px) {
  .list-line dl {
    display: block;
  }
}

.list-line dt {
  max-width: 200px;
  width: 25%;
  border-bottom: 1px solid #172A88;
  padding: 20px;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .list-line dt {
    width: 100%;
    max-width: 100%;
    border-bottom: none;
    padding-bottom: 0;
  }
}

.list-line dd {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  border-bottom: 1px solid #d5dbe6;
  padding: 20px 25px;
}

@media screen and (max-width: 767px) {
  .list-line dd {
    width: 100%;
    display: block;
    padding-top: 10px;
  }
}

.list-line dd h3 {
  font-size: 1.6rem;
  display: inline-block;
  position: relative;
  padding-right: 25px;
}

.list-line dd h3 + p {
  margin-top: 10px;
}

.list-line li:first-child dt {
  border-top: 1px solid #172A88;
}

@media screen and (max-width: 767px) {
  .list-line li:first-child dt {
    border-top: none;
  }
}

.list-line li:first-child dd {
  border-top: 1px solid #d5dbe6;
}

@media screen and (max-width: 767px) {
  .list-line li:first-child dd {
    border-top: none;
  }
}

.list-line-2 > li {
  border-bottom: 1px solid #d5dbe6;
}

.list-line-2 a {
  display: block;
  padding: 20px 10px;
}

.list-line-2 a:hover {
  background: #f8f9fb;
}

.list-line-2 a.events-none {
  pointer-events: none;
}

.list-line-2 a.events-none h3 {
  color: #222;
  text-decoration: none;
}

.list-line-2 a.blank h3:after {
  content: "\f35d";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  font-size: 1.4rem;
}

.list-line-2 h3 {
  color: #172A88;
  text-decoration: underline;
  margin-bottom: 10px;
}

.list-line-2 p {
  font-size: 1.4rem;
}

.list-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 15px;
}

.list-meta p {
  display: inline-block;
  margin-right: 10px;
  font-size: 1.4rem;
}

.list-meta p:last-child {
  margin-right: 0;
}

.list-meta .cat {
  background: #E3E6ED;
  padding: 0 5px;
}

.list-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.list-flex > *:not(:last-child) {
  margin-right: 60px;
}

@media screen and (max-width: 767px) {
  .list-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .list-flex > *:not(:last-child) {
    margin-right: 0px;
    margin-bottom: 30px;
  }
}

.list-margin > li:not(:last-child) {
  margin-bottom: 20px;
}

.list-margin li {
  font-size: 1.4rem;
}

.list-margin p, .list-margin ul {
  font-size: 1.4rem;
  margin-left: 15px;
  margin-top: 5px;
}

.list-check li {
  padding: 16px 16px 16px 70px;
  position: relative;
}

.list-check li:before {
  content: "";
  position: absolute;
  left: 17px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 30px;
  height: 30px;
  display: inline-block;
  background: url("../img/package/clubmate/co_check_01.png");
  background-size: 100% 100%;
}

@media screen and (max-width: 599px) {
  .list-check li {
    padding: 12px 12px 12px 60px;
  }
}

.paging {
  margin-top: 80px;
  width: 100%;
  text-align: center;
}

.paging .list-paging {
  border: 1px solid #d5dbe6;
  border-radius: 4px;
  max-width: 420px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
}

.paging .list-paging li {
  line-height: 48px;
  display: inline-block;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.paging .list-paging li.current {
  background: #172A88;
  background: -webkit-gradient(linear, left top, right top, from(#172A88), color-stop(70%, #2394CD));
  background: -webkit-linear-gradient(left, #172A88 0%, #2394CD 70%);
  background: linear-gradient(to right, #172A88 0%, #2394CD 70%);
  color: #fff;
}

.paging .list-paging a {
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.paging .list-paging a:hover {
  color: #172A88;
}

.paging .list-paging i {
  font-size: 1.3rem;
}

/* 共通 */
.pagination {
  text-align: center;
  width: 100%;
  display: block;
  margin-top: 60px;
}

.pagination a {
  background: #f6f6f6;
  color: #000;
  text-decoration: none;
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}

.pagination a i {
  font-size: 1.3rem;
}

/* スマホ　*/
@media only screen and (max-width: 667px) {
  .pagination .inner {
    width: 90%;
    margin: 0 5%;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    height: 46px;
  }
  .pagination .page-of {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    position: absolute;
    left: 37%;
    width: 26%;
    color: #fff;
    background: #172A88;
    background: -webkit-linear-gradient(315deg, #172A88 0%, #2068C0 100%);
    background: linear-gradient(135deg, #172A88 0%, #2068C0 100%);
    height: 46px;
    line-height: 46px;
    font-size: 1.3rem;
  }
  .pagination .m-prev {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: 15%;
    position: absolute;
    left: 0%;
  }
  .pagination .pn-prev {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 22%;
    position: absolute;
    left: 15%;
  }
  .pagination .pn-next {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    width: 22%;
    position: absolute;
    left: 63%;
  }
  .pagination .m-next {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
    width: 15%;
    position: absolute;
    left: 85%;
  }
  .pagination .current, .pagination .pn-numbers {
    display: none;
  }
  .pagination a {
    line-height: 46px;
    height: 46px;
    font-size: 1.3rem;
  }
}

/* PC */
@media only screen and (min-width: 668px) {
  .pagination .page-of {
    display: none;
    width: 100%;
    font-size: 108%;
    color: #000;
    text-align: center;
    margin-bottom: 2em;
  }
  .pagination a, .pagination .current {
    display: inline-block;
    padding: 0 1.5em;
    line-height: 50px;
    height: 50px;
  }
  .pagination .current {
    background: #172A88;
    background: -webkit-linear-gradient(315deg, #172A88 0%, #2068C0 100%);
    background: linear-gradient(135deg, #172A88 0%, #2068C0 100%);
    color: #fff;
  }
  .pagination a:hover {
    background: #172A88;
    background: -webkit-linear-gradient(315deg, #172A88 0%, #2068C0 100%);
    background: linear-gradient(135deg, #172A88 0%, #2068C0 100%);
    color: #fff;
  }
}

.sec-bg-gray-full .pagination a, .sec-bg-gray .pagination a {
  background: #fff;
}

.sec-bg-gray-full .pagination a:hover, .sec-bg-gray .pagination a:hover {
  background: #172A88;
  background: -webkit-linear-gradient(315deg, #172A88 0%, #2068C0 100%);
  background: linear-gradient(135deg, #172A88 0%, #2068C0 100%);
  color: #fff;
}

.list-pagescroll li:before {
  font-family: "Font Awesome 5 Free";
  content: "\f13a";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  font-size: 2rem;
  margin-right: 5px;
  position: relative;
  font-weight: 900;
  top: 2px;
  color: #172A88;
}

.list-doc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0px -10px 0px;
}

.list-doc li {
  width: calc(25% - 20px);
  margin: 0 10px 20px;
  background: #fff;
}

.list-doc li a {
  position: relative;
  display: block;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  height: 100%;
  padding: 15px;
  font-size: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%;
}

.list-doc li a:after {
  content: "";
  background: url("../img/co_shape_01.svg") no-repeat center;
  width: 13px;
  height: 13px;
  background-size: 100%;
  position: absolute;
  bottom: 4px;
  right: 4px;
}

.list-doc li a:hover {
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.list-doc li a:hover h3 {
  color: #172A88;
}

.list-doc .img {
  margin: auto 0 15px;
  padding-top: 30px;
  border-top: 1px solid #d5dbe6;
  text-align: center;
}

.list-doc .img img {
  max-width: 120px;
  display: block;
  margin: 0 auto;
  border: 1px solid #d5dbe6;
}

.list-doc .catch {
  margin-bottom: 30px;
}

.list-doc .icon {
  margin-bottom: 35px;
}

@media screen and (max-width: 899px) {
  .list-doc .icon {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 767px) {
  .list-doc .icon {
    margin-bottom: 25px;
  }
}

.list-doc h3 {
  font-size: 1.4rem;
  margin-bottom: 15px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.list-doc p {
  font-size: 1.4rem;
}

@media screen and (max-width: 899px) {
  .list-doc li {
    width: calc(50% - 20px);
  }
}

@media screen and (max-width: 767px) {
  .list-doc {
    margin: 0px;
  }
  .list-doc li {
    width: calc(50%);
    margin: 0;
  }
  .list-doc li a {
    -webkit-box-shadow: none;
            box-shadow: none;
    border: 1px solid #d5dbe6;
  }
  .list-doc li .catch {
    margin-bottom: 15px;
  }
  .list-doc li .img {
    padding-top: 15px;
  }
}

.list-date {
  position: relative;
  border-bottom: 1px solid #d5dbe6;
  padding-bottom: 10px;
  margin-bottom: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.list-date .status {
  margin-left: auto;
}

.list-date .tag {
  border-radius: 20px;
  padding: 3px 15px;
  background: #f2f2f2;
}

.list-date .tag.receipt-now {
  background: #00C6B7;
  color: #fff;
  font-weight: bold;
}

.list-date .tag.event-end {
  background: #D8DDE6;
}

.list-date p {
  display: inline-block;
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  .list-date {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .list-date .status {
    margin-bottom: 10px;
  }
}

.list-event {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.list-event li {
  width: 100%;
  margin: 0 0 30px;
  background: #fff;
}

.list-event li:last-child {
  margin-bottom: 0;
}

.list-event li a {
  position: relative;
  display: block;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  height: 100%;
  padding: 15px;
  font-size: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%;
}

.list-event li a:after {
  content: "";
  background: url("../img/co_shape_01.svg") no-repeat center;
  width: 13px;
  height: 13px;
  background-size: 100%;
  position: absolute;
  bottom: 4px;
  right: 4px;
}

.list-event li a:hover {
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.list-event .img {
  margin: auto 0 15px;
  padding-top: 30px;
  border-top: 1px solid #d5dbe6;
  text-align: center;
}

.list-event .img img {
  max-width: 120px;
  display: block;
  margin: 0 auto;
  border: 1px solid #d5dbe6;
}

.list-event .catch {
  margin-bottom: 30px;
}

.list-event .icon {
  margin-bottom: 35px;
}

@media screen and (max-width: 899px) {
  .list-event .icon {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 767px) {
  .list-event .icon {
    margin-bottom: 25px;
  }
}

.list-event h2 {
  font-size: 1.6rem;
  margin-bottom: 15px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  color: #172A88;
  text-decoration: underline;
}

.list-event p {
  font-size: 1.4rem;
}

@media screen and (max-width: 899px) {
  .list-event li {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .list-event {
    margin: 0px;
  }
  .list-event li a {
    -webkit-box-shadow: none;
            box-shadow: none;
    border: 1px solid #d5dbe6;
  }
  .list-event li .catch {
    margin-bottom: 15px;
  }
  .list-event li .img {
    padding-top: 15px;
  }
}

.list-tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 40px -10px 0px;
}

.list-tel li {
  width: calc(50% - 20px);
  margin: 0 10px 20px;
}

.list-tel li:last-child {
  margin-bottom: 0;
}

.list-tel li a {
  background: #f2f2f2;
  border: 1px solid #D8DDE6;
  display: block;
  padding: 20px 30px;
  font-weight: bold;
  height: 100%;
}

.list-tel li a span {
  display: block;
  color: #172A88;
  font-size: 3.6rem;
  line-height: 1;
  margin-top: 5px;
}

@media screen and (max-width: 899px) {
  .list-tel li a {
    font-size: 1.2rem;
  }
  .list-tel li a span {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 767px) {
  .list-tel {
    margin: 40px 0 0;
  }
  .list-tel li {
    width: 100%;
    margin: 0;
  }
}

.list-8 {
  margin-top: 60px;
  counter-reset: number 0;
}

.list-8 > li:not(:last-child) {
  margin-bottom: 40px;
}

.list-8 > li h3 > span:before {
  counter-increment: number;
  content: " " counter(number) ".";
  position: absolute;
  top: 0;
  left: 0;
  width: 3rem;
  text-align: right;
  font-weight: bold;
}

.list-8 > li .title-line span {
  padding-left: 40px;
}

.list-8 .list-8-inner {
  padding: 10px 30px 0;
}

@media screen and (max-width: 767px) {
  .list-8 .list-8-inner {
    padding: 10px 15px 0;
  }
}

.list-8 .list-8-inner ul, .list-8 .list-8-inner ol {
  margin-top: 30px;
}

.list-8 + .align-right {
  margin-top: 60px;
}

.list-num-nomal {
  list-style-type: decimal;
  padding-left: 2.5rem;
}

.list-num-nomal > li:not(:last-child) {
  margin-bottom: 30px;
}

.list-num-nomal ol {
  margin-top: 30px;
}

p + .list-num-nomal {
  margin-top: 30px;
}

.list-num-lower {
  list-style-type: lower-alpha;
  padding-left: 2.5rem;
}

.list-num-lower > li:not(:last-child) {
  margin-bottom: 30px;
}

.list-num-lower ol {
  margin-top: 30px;
  margin-bottom: 30px;
}

.list-num-iroha {
  list-style-type: katakana-iroha;
  padding-left: 2.5rem;
}

.list-num-iroha > li:not(:last-child) {
  margin-bottom: 15px;
}

.list-num-iroha ol {
  margin-top: 15px;
}

.mt-30 {
  margin-top: 30px;
}

.list-type-disc {
  list-style-type: disc;
  padding-left: 2.5rem;
}

.list-type-disc > li:not(:last-child) {
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .list-sitemap:first-child {
    margin-bottom: 30px;
  }
}

.list-sitemap > li > a {
  border-bottom: 1px solid #d5dbe6;
  display: block;
  font-weight: bold;
  padding: 0 5px;
}

.list-sitemap > li > a:before {
  content: "\f054";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  margin-right: 5px;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

.list-sitemap > li > a:hover {
  color: #04BA97;
}

.list-sitemap > li:not(:last-child) {
  margin-bottom: 30px;
}

.list-sitemap-indent {
  margin-left: 20px;
}

.list-sitemap-indent > li:not(:last-child) {
  margin-bottom: 10px;
}

.list-sitemap-indent > li:first-child {
  margin-top: 20px;
}

.list-sitemap-indent > li a {
  display: block;
}

.list-sitemap-indent > li a:before {
  content: "\f054";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-size: 1.1rem;
  margin-right: 5px;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 28px;
}

.list-sitemap-indent > li a:hover {
  color: #04BA97;
}

.list-sitemap-single {
  margin-bottom: 50px;
}

.list-sitemap-db {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: nowrap !important;
      flex-wrap: nowrap !important;
}

.list-sitemap-db > ul:first-child {
  margin-right: 40px;
}

@media screen and (max-width: 767px) {
  .list-sitemap-db {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
  }
  .list-sitemap-db > ul:first-child {
    margin-right: 0px;
  }
}

.list-relation {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -15px;
}

.list-relation li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0%;
          flex: 1 1 0%;
  -ms-flex-preferred-size: 33.33333%;
      flex-basis: 33.33333%;
  max-width: 33.33333%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 15px 30px;
}

.list-relation li .list-relation-inner {
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.list-relation li .list-relation-inner:hover {
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.list-relation li .case-relation-heading {
  background: #D8DDE6;
  text-align: center;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 4rem;
}

.list-relation li .list-relation-img {
  padding: 30px 30px 20px;
}

.list-relation li .list-relation-img img {
  display: block;
  margin: 0 auto;
  width: auto;
  height: 60px;
}

.list-relation li .case-relation-title {
  font-weight: bold;
  font-size: 1.4rem;
  margin-bottom: 10px;
  padding: 0 30px;
}

.list-relation li .case-relation-text {
  font-size: 1.2rem;
  padding: 0 30px 30px;
}

@media screen and (max-width: 767px) {
  .list-relation {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .list-relation li {
    width: 100%;
    max-width: 100%;
  }
}

.list-press li {
  border-bottom: 1px dotted #D8DDE6;
  padding-bottom: 15px;
  margin-bottom: 15px;
}

.list-press li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center;
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  .list-press li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .list-press li a .case-press-heading {
    margin-bottom: 10px;
  }
}

.list-press li .case-press-heading {
  line-height: 2.5rem;
  width: 100px;
  text-align: center;
  color: #fff;
  background: #172A88;
  margin-right: 15px;
  font-size: 1.2rem;
}

.list-case-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0px -10px 0px;
}

.list-case-2 li {
  width: calc(25% - 20px);
  margin: 0 10px 20px;
  background: #fff;
}

.list-case-2 .list-meta {
  display: block;
  height: 50px;
  margin-bottom: 0;
}

.list-case-2 .list-meta p {
  display: inline-block;
  font-size: 1.2rem;
  margin-bottom: 5px;
  margin-right: 5px;
  line-height: 2rem;
}

.list-case-2 a {
  position: relative;
  display: block;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  height: 100%;
  padding: 15px;
  font-size: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%;
}

.list-case-2 a.disabled {
  -webkit-box-shadow: none;
          box-shadow: none;
  pointer-events: none;
}

.list-case-2 a:hover {
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.list-case-2 a:hover .btn {
  background-position: right center;
}

.list-case-2 a:hover .btn-border {
  opacity: .7;
}

.list-case-2 a[target="_blank"] .btn:after {
  content: "\f35d";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  font-size: 1.4rem;
}

.list-case-2 a h2 {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.list-case-2 .case-img {
  padding: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center;
  height: 100px;
  width: 100%;
}

.list-case-2 .case-img img {
  max-width: 100%;
  max-height: 100%;
  display: block;
  margin: 0 auto;
  width: auto;
}

.list-case-2 .text-area {
  border-top: 1px solid #D8DDE6;
  padding-top: 15px;
  margin-top: 20px;
  margin-bottom: 20px;
}

.list-case-2 .text-area h2 {
  margin-bottom: 10px;
}

.list-case-2 .text-area h2 + p {
  font-size: 1.2rem;
}

.list-case-2 .btn {
  font-size: 1.2rem;
  line-height: 2.4rem;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.list-case-2 .btn:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.list-case-2 .btn-border {
  color: #172A88;
  border: 1px solid #172A88;
  background: none;
}

.list-case-2 .btn-border:after {
  color: #172A88;
}

@media screen and (max-width: 899px) {
  .list-case-2 li {
    width: calc(50% - 20px);
  }
}

@media screen and (max-width: 767px) {
  .list-case-2 {
    margin: 0px;
  }
  .list-case-2 li {
    width: calc(100%);
    margin: 0 0 20px;
  }
  .list-case-2 li a {
    -webkit-box-shadow: none;
            box-shadow: none;
    border: 1px solid #d5dbe6;
  }
  .list-case-2 li .catch {
    margin-bottom: 15px;
  }
  .list-case-2 li .img {
    padding-top: 15px;
  }
}

.list-tag {
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.list-tag li {
  display: inline-block;
  background: #EBEEF5;
  font-size: 1.4rem;
  margin: 0 8px 10px 0;
  padding: 0 7px;
}

.list-tab {
  width: 100%;
  display: table;
}

.list-tab li {
  width: 50%;
  display: table-cell;
  vertical-align: bottom;
  text-align: center;
  color: #fff;
  font-size: 2rem;
}

.list-tab li:first-child.current {
  background: #172A88;
}

.list-tab li:first-child a:hover {
  background: #172A88;
}

.list-tab li:last-child.current {
  background: #2068C0;
}

.list-tab li:last-child a:hover {
  background: #2068C0;
}

.list-tab li.current {
  line-height: 79px;
}

@media screen and (max-width: 767px) {
  .list-tab li.current {
    line-height: 69px;
    font-size: 1.7rem;
  }
}

.list-tab li a {
  display: block;
  text-align: center;
  color: #fff;
  line-height: 64px;
  background: #D8DDE6;
  font-size: 2rem;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

@media screen and (max-width: 767px) {
  .list-tab li a {
    line-height: 54px;
    font-size: 1.7rem;
  }
}

.list-keywords-wrap {
  border-top: 1px solid #D8DDE6;
  border-bottom: 1px solid #D8DDE6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 15px 15px 5px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.list-keywords-wrap p {
  font-weight: bold;
  font-size: 1.4rem;
  padding-right: 14px;
}

.list-keywords-wrap .list-keywors {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.list-keywords-wrap .list-keywors > li {
  font-size: 1.4rem;
  background: #EBEEF5;
  border-radius: 24px;
  padding: 0 15px;
  margin-bottom: 10px;
}

.list-keywords-wrap .list-keywors > li:not(:last-child) {
  margin-right: 10px;
}

@media screen and (max-width: 767px) {
  .list-keywords-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 15px 0 10px;
  }
  .list-keywords-wrap p {
    margin-bottom: 10px;
  }
  .list-keywords-wrap .list-keywors {
    display: block;
  }
  .list-keywords-wrap .list-keywors > li {
    display: inline-block;
    font-size: 1.2rem;
    margin-bottom: 10px;
  }
}

.list-dot-line li {
  font-size: 1.4rem;
  border-bottom: 1px dotted #D7D9DE;
  padding: 10px 0 10px 20px;
  position: relative;
}

.list-dot-line li:before {
  content: '・';
  position: absolute;
  left: 10px;
}

.list-dot-line li p {
  margin: 0 !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 767px) {
  .list-dot-line + .list-dot-line {
    margin-top: -40px;
  }
}

.list-like-num {
  counter-reset: my-counter;
}

.list-like-num li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.4rem;
}

.list-like-num li:before {
  margin: 0 5px 0 0;
  content: counter(my-counter) ".";
  counter-increment: my-counter;
}

.list-kome {
  margin: 10px auto 40px;
}

@media screen and (max-width: 767px) {
  .list-kome {
    margin-bottom: 20px;
  }
}

.list-kome li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.3rem;
  color: #E51773;
}

.list-kome li:before {
  content: '※';
}

.list-kome li span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

img,
video {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
  vertical-align: top;
}

img.alignleft,
img.alignright {
  float: none;
  margin: 0;
}

.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

embed,
iframe,
object {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.object-fit-img {
  -o-object-fit: cover;
     object-fit: cover;
  font-family: 'object-fit: cover;';
}

/*--------------------------------------------------------------
tables
--------------------------------------------------------------*/
table {
  border-collapse: collapse;
  margin: 0 0 1.5em;
  width: 100%;
}

table tr {
  border-bottom: 1px solid #dee4eb;
}

table tr:first-child {
  border-top: 1px solid #dee4eb;
}

table th, table td {
  padding: 1.5rem;
}

table th {
  font-weight: bold;
  background: #f0f3f7;
  text-align: left;
  min-width: 220px;
}

table a {
  color: #172A88;
  text-decoration: underline;
}

table a:hover {
  opacity: .7;
}

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

@media (max-width: 36em) {
  table th, table td {
    display: block;
  }
  .detail-table th {
    width: 100%;
  }
}

.table-l-green {
  table-layout: fixed;
}

.table-l-green th {
  background: #00C6B7;
  color: #fff;
  width: 160px;
}

@media screen and (max-width: 767px) {
  .table-l-green th {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .r-table-wrap {
    overflow: auto;
    white-space: nowrap;
  }
  .r-table-wrap::-webkit-scrollbar {
    height: 5px;
  }
  .r-table-wrap::-webkit-scrollbar-track {
    background: #F1F1F1;
  }
  .r-table-wrap::-webkit-scrollbar-thumb {
    background: #cbd4df;
  }
}

a {
  color: #222;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

a:focus {
  outline: 0;
}

a:hover,
a:active {
  outline: 0;
}

.pagetop {
  background: #ffffff;
  border: 1px solid #172A88;
  -webkit-box-shadow: 0 6px 12px 0 rgba(0, 109, 198, 0.2);
          box-shadow: 0 6px 12px 0 rgba(0, 109, 198, 0.2);
  position: fixed;
  right: 40px;
  bottom: 40px;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  text-align: center;
  line-height: 60px;
  font-size: 2rem;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  z-index: 3;
  display: none;
}

.pagetop:hover {
  background: #172A88;
  background: -webkit-linear-gradient(315deg, #172A88 0%, #2068C0 100%);
  background: linear-gradient(135deg, #172A88 0%, #2068C0 100%);
  border: 1px solid #fff;
}

.pagetop:hover i {
  color: #fff;
}

.pagetop i {
  color: #172A88;
}

@media screen and (max-width: 899px) {
  .pagetop {
    right: 25px;
    bottom: 25px;
  }
}

@media screen and (max-width: 767px) {
  .pagetop {
    right: 15px;
    bottom: 15px;
  }
}

.pagetop.fade-in {
  display: block;
  -webkit-animation: show 1s linear 0s;
          animation: show 1s linear 0s;
}

@-webkit-keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.tel {
  display: inline-block;
}

.tel img {
  width: 100%;
  max-width: 100%;
}

.txt-link {
  color: #172A88;
}

.txt-link:hover {
  text-decoration: underline;
}

.btn {
  color: #fff;
  background: #172A88;
  background: -webkit-gradient(linear, left top, right top, from(#172A88), color-stop(70%, #2394CD));
  background: -webkit-linear-gradient(left, #172A88 0%, #2394CD 70%);
  background: linear-gradient(to right, #172A88 0%, #2394CD 70%);
  text-align: center;
  display: block;
  width: 100%;
  line-height: 6rem;
  -webkit-box-shadow: 0 4px 10px rgba(165, 173, 200, 0.5);
          box-shadow: 0 4px 10px rgba(165, 173, 200, 0.5);
  background-size: 200% auto;
  position: relative;
  font-weight: bold;
  max-width: 360px;
  margin: 0 auto;
}

.btn:hover {
  background-position: right center;
  -webkit-box-shadow: 0 1px 4px rgba(165, 179, 200, 0.5);
          box-shadow: 0 1px 4px rgba(165, 179, 200, 0.5);
}

.btn:after {
  font-family: "Font Awesome 5 Free";
  content: "\f105";
  position: absolute;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  top: 50%;
  right: 1rem;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  font-size: 2rem;
  font-weight: 900;
  color: #fff;
}

.btn.btn-arrow-left:after {
  content: none;
}

.btn.btn-arrow-left:before {
  font-family: "Font Awesome 5 Free";
  content: "\f105";
  position: absolute;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  top: 50%;
  right: 1rem;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  font-size: 2rem;
  font-weight: 900;
}

.btn.btn-s {
  max-width: 160px;
  line-height: 4.4rem;
  font-weight: 100;
}

.btn-left {
  max-width: 240px;
  line-height: 6rem;
  margin: 0;
}

@media screen and (max-width: 767px) {
  .btn-left {
    max-width: inherit;
  }
}

.btn-left:after {
  content: none;
}

.btn-back {
  font-size: 1.4rem;
  background: #E3E6ED;
  line-height: 1;
  padding: 10px;
}

.btn-back:hover {
  opacity: 0.7;
}

.btn-back.ab-right-top {
  position: absolute;
  right: 0;
  top: -34px;
}

.btn-back.ab-right-bottom {
  position: absolute;
  right: 0;
  bottom: -34px;
}

.online-discussion-sp {
  background: #E51773;
  background: -webkit-gradient(linear, left top, right top, from(#E51773), color-stop(70%, #fe5757));
  background: -webkit-linear-gradient(left, #E51773 0%, #fe5757 70%);
  background: linear-gradient(to right, #E51773 0%, #fe5757 70%);
  background-size: 200% auto;
  -webkit-box-shadow: 0 4px 10px rgba(229, 23, 115, 0.5);
          box-shadow: 0 4px 10px rgba(229, 23, 115, 0.5);
  margin-top: 2rem !important;
}

.online-discussion-sp:hover {
  background-position: right center;
  -webkit-box-shadow: 0 1px 4px rgba(229, 23, 115, 0.5);
          box-shadow: 0 1px 4px rgba(229, 23, 115, 0.5);
}

.start-btn {
  background: #E51773;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: -webkit-gradient(linear, left top, right top, from(#E51773), color-stop(70%, #fe5757));
  background: -webkit-linear-gradient(left, #E51773 0%, #fe5757 70%);
  background: linear-gradient(to right, #E51773 0%, #fe5757 70%);
  background-size: 200% auto;
  -webkit-box-shadow: 0 4px 10px rgba(229, 23, 115, 0.5);
          box-shadow: 0 4px 10px rgba(229, 23, 115, 0.5);
}

.start-btn:hover {
  background-position: right center;
  -webkit-box-shadow: 0 1px 4px rgba(229, 23, 115, 0.5);
          box-shadow: 0 1px 4px rgba(229, 23, 115, 0.5);
}

.link-arrow {
  display: block;
  margin-top: 20px;
}

.link-arrow:before {
  content: "";
  display: inline-block;
  width: 7px;
  /*画像の幅*/
  height: 9px;
  /*画像の高さ*/
  background: url("../img/co_ar_01_gr.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin-right: 8px;
}

.link-arrow:hover span {
  text-decoration: underline;
}

.link-arrow span {
  display: inline-block;
  vertical-align: middle;
}

.btn-document-box {
  max-width: 840px;
  width: 96%;
  margin: 0 auto 100px;
  overflow: hidden;
  background: url("../img/co_bg_01_pc.jpg") no-repeat left center;
  background-size: auto 100%;
  border-radius: 4px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 767px) {
  .btn-document-box {
    background: none;
  }
}

.btn-document-box .txt {
  float: right;
  width: 50%;
  -webkit-transform: skewX(-10deg);
          transform: skewX(-10deg);
  background-image: -webkit-linear-gradient(283deg, #2394cd 10%, #172a88 100%);
  background-image: linear-gradient(-193deg, #2394cd 10%, #172a88 100%);
  position: relative;
  right: -30px;
}

@media screen and (max-width: 767px) {
  .btn-document-box .txt {
    width: 100%;
    float: none;
    -webkit-transform: skewX(0);
            transform: skewX(0);
    right: 0;
  }
}

.btn-document-box .txt section {
  width: 100%;
  -webkit-transform: skewX(10deg);
          transform: skewX(10deg);
  color: #fff;
  padding: 28px 65px 22px 55px;
}

@media screen and (max-width: 767px) {
  .btn-document-box .txt section {
    -webkit-transform: skewX(0);
            transform: skewX(0);
    padding: 25px;
  }
}

.btn-document-box h3 {
  font-size: 1.8rem;
  margin-bottom: 15px;
  padding: 0 15px;
}

.btn-document-box p {
  margin-bottom: 10px;
}

.btn-document-box .btn-w {
  color: #172a88;
  background: #fff;
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);
  border-radius: 4px;
  width: 184px;
  margin: 0 auto;
  display: block;
  text-align: center;
  padding: 3px 0 2px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.btn-document-box .btn-w:hover {
  opacity: 0.7;
  /*background:#2BA17B;
			color:#fff;*/
}

.archive .btn-document-box {
  max-width: inherit;
  width: 100%;
  margin: 0 auto 60px;
  background: url("../img/co_bg_01_pc_2.jpg") no-repeat left center;
  background-size: cover;
}

@media screen and (max-width: 767px) {
  .archive .btn-document-box {
    background: none;
  }
}

.archive .btn-document-box .txt {
  right: -45px;
}

.archive .btn-document-box .txt section {
  padding: 70px 80px 70px 50px;
}

@media screen and (max-width: 767px) {
  .archive .btn-document-box .txt {
    width: 100%;
    float: none;
    -webkit-transform: skewX(0);
            transform: skewX(0);
    right: 0;
  }
  .archive .btn-document-box .txt section {
    -webkit-transform: skewX(0);
            transform: skewX(0);
    padding: 25px;
  }
  .archive .btn-document-box h3 {
    padding: 0;
  }
}

.archive .btn-document-box .btn-w {
  margin-top: 30px;
}

.btn-back-list {
  display: inline-block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: #999;
}

.btn-back-list:hover {
  opacity: 0.7;
}

.btn-back-list a {
  color: #fff;
  font-size: 1.4rem;
  padding: 0 15px 0 35px;
  line-height: 4rem;
  display: block;
  background: url(../img/package/clubmate/co_bt_01.svg) no-repeat 10px center;
}

.btn-back-list.top {
  position: absolute;
  top: -40px;
  right: 0;
}

.btn-back-list.bottom {
  position: absolute;
  bottom: -40px;
  right: 0;
}

.ban-link {
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  display: block;
}

.ban-link:hover {
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);
  opacity: 0.9;
}

.fixed-btn {
  background: #e51773;
  position: fixed;
  right: 0;
  bottom: 0;
  line-height: 33px;
  padding: 0px 15px;
  font-size: 1.4rem;
  display: inline-block;
  color: #fff;
  z-index: 2;
  width: 250px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .fixed-btn {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  body.ajidas #footer {
    padding-bottom: 33px;
  }
}

.fixed-btn-side {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  background: #7fc6ef;
  position: fixed;
  right: 0;
  position: fixed;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
  line-height: 33px;
  padding: 15px 0;
  font-size: 1.4rem;
  display: inline-block;
  color: #fff;
}

.wp-native {
  /* img */
  /* clearfix */
}

.wp-native h3 {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 1.6em 0;
  clear: both;
  background: #f2f2f2;
  padding: 5px 15px;
}

.wp-native h4 {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 1.3em 0;
  clear: both;
  border-bottom: 2px solid #D8DDE6;
}

.wp-native h5 {
  font-weight: bold;
  font-size: 1.6rem;
  margin: 1.1em 0;
  clear: both;
}

.wp-native ul, .wp-native p {
  margin: 1.5rem 0;
  font-size: 1.4rem;
}

.wp-native hr {
  border-top: 1px dotted #979797;
  margin: 20px 0;
}

.wp-native pre {
  display: block;
  padding: .6em;
  margin: 0 0 .8em;
  font-size: .8em;
  line-height: 1.4;
  color: #333;
  word-break: break-all;
  word-wrap: break-word;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.wp-native pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}

.wp-native strong {
  font-weight: bold;
}

.wp-native em {
  font-style: italic;
}

.wp-native del {
  text-decoration: line-through;
}

.wp-native blockquote {
  display: inline-block;
  padding: 1em;
  position: relative;
}

.wp-native blockquote::before {
  content: '"';
  position: absolute;
  left: 0;
  top: 0;
}

.wp-native blockquote::after {
  content: '"';
  position: absolute;
  right: 0;
  bottom: 0;
}

.wp-native a {
  color: #172A88;
  text-decoration: underline;
}

.wp-native a:hover {
  opacity: .7;
}

.wp-native ul {
  list-style: disc;
  padding: 0 0 0 1.5em;
}

.wp-native ol {
  list-style: decimal;
  padding: 0 0 0 1.5em;
}

@media screen and (min-width: 768px) {
  .wp-native .aligncenter {
    display: block;
    margin: 0 auto 0.8em;
  }
  .wp-native .alignleft {
    float: left;
    margin: 0 0.8em 0.8em 0;
  }
  .wp-native .alignright {
    float: right;
    margin: 0 0 0.8em 0.8em;
  }
}

.wp-native img[class*="wp-image-"],
.wp-native img[class*="attachment-"] {
  height: auto;
  max-width: 100%;
}

.wp-native .clearfix {
  overflow: hidden;
  zoom: 1;
}

.wp-native .clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.hr-gray {
  border-top: 1px solid #d5dbe6;
  margin-bottom: 60px;
}

.sec-bg-gray {
  background: #f2f2f2;
  padding-right: 20px;
  padding-left: 20px;
}

.sec-bg-gray .l-inner {
  background: #fff;
  padding: 60px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .sec-bg-gray .l-inner {
    padding: 40px 20px;
  }
}

.sec-bg-gray-2 {
  padding-right: 20px;
  padding-left: 20px;
}

.sec-bg-gray-full {
  background: #f2f2f2;
}

.l-inner {
  max-width: 1150px;
  padding: 0 30px;
  width: 100%;
  display: block;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .l-inner {
    padding: 0 20px;
  }
}

.l-inner-l {
  width: 96%;
  max-width: 1300px;
  padding: 0 10px;
  margin: 0 auto;
}

.l-inner-s {
  max-width: 900px;
  width: 100%;
  padding: 0 30px;
  display: block;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .l-inner-s {
    padding: 0 10px;
  }
}

.l-sec-inner {
  padding: 30px;
}

@media screen and (max-width: 767px) {
  .l-sec-inner {
    padding: 15px;
  }
}

.l-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: stretch;
      align-content: stretch;
}

.l-flex-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.l-flex-item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.l-column-2 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.l-column-2 > * {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .l-column-2 > *:nth-child(even) {
    margin-left: 0;
  }
}

.l-column-2.l-line-column > * {
  padding: 0 40px;
  margin-bottom: 40px;
  position: relative;
}

@media screen and (max-width: 899px) {
  .l-column-2.l-line-column > * {
    padding: 20px;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .l-column-2.l-line-column > * {
    border-bottom: 1px solid #D8DDE6;
    padding: 20px 10px;
  }
}

.l-column-2.l-line-column > *:nth-child(even) {
  border-left: 1px solid #D8DDE6;
}

@media screen and (max-width: 767px) {
  .l-column-2.l-line-column > *:nth-child(even) {
    border-left: none;
  }
}

.l-column-2.l-line-column > *:nth-child(n+3) {
  border-top: 1px solid #D8DDE6;
  padding-top: 40px;
}

@media screen and (max-width: 767px) {
  .l-column-2.l-line-column > *:nth-child(n+3) {
    border-top: none;
    padding-top: 20px;
  }
}

.l-column-2.l-line-column > *:nth-child(n+3):after {
  content: "";
  width: 1px;
  height: 40px;
  border-left: 1px solid #fff;
  position: absolute;
  top: 0;
  left: -1px;
}

.l-column-2.l-gutters > * {
  width: 48%;
  margin-bottom: 40px;
}

.l-column-2.l-gutters > *:nth-child(even) {
  margin-left: 4%;
}

.l-column-3 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.l-column-3 > * {
  width: 33.333333%;
}

.l-column-3.l-line-column > * {
  padding: 0 40px 40px;
  margin-bottom: 40px;
  position: relative;
}

@media screen and (max-width: 899px) {
  .l-column-3.l-line-column > * {
    padding: 20px;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .l-column-3.l-line-column > * {
    border-bottom: 1px solid #D8DDE6;
  }
}

.l-column-3.l-line-column > *:nth-child(3n+2) {
  border-left: 1px solid #D8DDE6;
}

@media screen and (max-width: 767px) {
  .l-column-3.l-line-column > *:nth-child(3n+2) {
    border-left: none;
  }
}

.l-column-3.l-line-column > *:nth-child(3n+2):after {
  content: "";
  width: 1px;
  height: 40px;
  border-left: 1px solid #fff;
  position: absolute;
  top: 0;
  left: -1px;
}

.l-column-3.l-line-column > *:nth-child(3n+3) {
  border-left: 1px solid #D8DDE6;
}

@media screen and (max-width: 767px) {
  .l-column-3.l-line-column > *:nth-child(3n+3) {
    border-left: none;
  }
}

.l-column-3.l-line-column > *:nth-child(3n+3):after {
  content: "";
  width: 1px;
  height: 40px;
  border-left: 1px solid #fff;
  position: absolute;
  top: 0;
  left: -1px;
}

.l-column-3.l-line-column > *:nth-child(n+4) {
  border-top: 1px solid #D8DDE6;
  padding-top: 40px;
}

@media screen and (max-width: 767px) {
  .l-column-3.l-line-column > *:nth-child(n+4) {
    border-top: none;
    padding-top: 20px;
  }
}

.l-column-3.l-line-column > *:nth-child(2):after, .l-column-3.l-line-column > *:nth-child(3):after {
  display: none;
}

.l-flex-half {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 60px -2rem 0;
}

@media screen and (max-width: 767px) {
  .l-flex-half {
    margin: 40px 0 0;
  }
}

.l-flex-half > * {
  width: calc(50% - 4rem);
  margin: 0 2rem 40px;
}

.l-flex-half > *:nth-last-child(-n+2) {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .l-flex-half > *:nth-last-child(-n+2) {
    margin-bottom: 40px;
  }
}

.heading-border-l + .l-flex-half {
  margin-top: 20px;
}

.flex-1 {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@media screen and (max-width: 767px) {
  .l-flex {
    display: block;
  }
  .l-flex > * {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
  }
}

.doc-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

@media screen and (max-width: 767px) {
  .doc-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.doc-content .img {
  width: 210px;
}

.doc-content .img img {
  border: 1px solid #d5dbe6;
}

@media screen and (max-width: 767px) {
  .doc-content .img {
    width: 100%;
    text-align: center;
  }
  .doc-content .img img {
    max-width: 240px;
    margin: 0 auto 20px;
  }
}

.doc-content .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 30px;
}

@media screen and (max-width: 767px) {
  .doc-content .text {
    padding-left: 0;
  }
}

.doc-content .modified {
  margin-bottom: 15px;
}

.doc-content h4 {
  margin-top: 40px;
  margin-bottom: 20px;
}

.doc-content .file-title {
  font-weight: bold;
  margin-bottom: 15px;
}

.eventseminar-content table, .case-detail table {
  margin: 40px auto;
}

.eventseminar-content .btn, .case-detail .btn {
  margin-top: 0px;
  max-width: 320px;
}

.eventseminar-content .wp-native, .case-detail .wp-native {
  margin-top: 40px;
}

.eventseminar-content .area-inquiry, .case-detail .area-inquiry {
  background: #F4F9F8;
  padding: 40px;
}

.eventseminar-content .area-download, .case-detail .area-download {
  margin: 40px 0 0;
}

.eventseminar-content .area-download + *, .case-detail .area-download + * {
  margin-top: 40px;
}

.eventseminar-content .area-download h4, .case-detail .area-download h4 {
  margin-bottom: 20px;
}

.eventseminar-content .area-download .file-title, .case-detail .area-download .file-title {
  margin-bottom: 15px;
  font-weight: bold;
}

.eventseminar-content .area-download .btn, .case-detail .area-download .btn {
  margin-top: 0;
  line-height: 4rem;
  width: 160px;
  font-size: 1.4rem;
}

.catch-illust-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #EBEEF5;
  padding: 10px;
}

.catch-illust-wrap .catch-illust {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background: #fff;
  padding: 40px 30px 20px;
}

.catch-illust-wrap .catch-illust:not(:first-child) {
  margin-left: 10px;
}

.catch-illust-wrap .catch-illust-img {
  margin: 0 auto 40px;
  width: 140px;
}

.catch-illust-wrap .catch-illust-img img {
  display: block;
}

.catch-illust-wrap .catch-illust-heading {
  font-size: 1.8rem;
  margin-bottom: 15px;
}

.catch-illust-wrap .catch-illust-text p {
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  .catch-illust-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .catch-illust-wrap .catch-illust:not(:first-child) {
    margin-left: 0px;
    margin-top: 10px;
  }
}

.tab-solution {
  overflow-x: hidden;
  white-space: nowrap;
  border-bottom: 2px solid #172A88;
  margin-bottom: 40px;
  overflow-x: auto;
}

.tab-solution .tab-solution-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.tab-solution .tab-solution-list > li {
  padding: 10px 20px;
  font-size: 1.8rem;
  font-weight: bold;
  cursor: pointer;
  background: -webkit-linear-gradient(225deg, transparent 10px, #EBEEF5 10px);
  background: linear-gradient(225deg, transparent 10px, #EBEEF5 10px);
  background-position: bottom left, bottom right, top right, top left;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  color: #172A88;
}

.tab-solution .tab-solution-list > li.select, .tab-solution .tab-solution-list > li:hover {
  background: -webkit-linear-gradient(225deg, transparent 10px, #172A88 10px);
  background: linear-gradient(225deg, transparent 10px, #172A88 10px);
  background-position: bottom left, bottom right, top right, top left;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .tab-solution .tab-solution-list > li {
    font-size: 1.6rem;
    padding: 5px 15px;
  }
}

.tab-solution-contents .tab-solution-content.hide {
  display: none;
}

.tab-solution-contents .tab-solution-content p {
  font-size: 1.4rem;
}

.solution-point-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 30px 0;
}

.solution-point-wrap .solution-point {
  background: #fff;
  padding: 30px;
  background: #EBEEF5;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.solution-point-wrap .solution-point:not(:first-child) {
  margin-left: 10px;
}

.solution-point-wrap .solution-point-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
}

.solution-point-wrap .solution-point-title img {
  width: 60px;
  margin-right: 15px;
}

@media screen and (max-width: 767px) {
  .solution-point-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .solution-point-wrap .solution-point:not(:first-child) {
    margin-left: 0px;
    margin-top: 10px;
  }
}

.solution-point-wrap-thin p {
  font-size: 1.4rem;
}

.solution-point-wrap-thin .solution-point-title {
  display: block;
  margin-bottom: 10px;
}

.solution-point-wrap-thin .solution-point-title img {
  margin: 0 auto 30px !important;
  display: block;
}

.solution-supple {
  display: block;
  margin: 30px 0;
}

.solution-link-wrap {
  background: #dfe2e8;
  padding: 15px;
  margin-top: 30px;
}

.solution-link-wrap h4 {
  font-size: 1.6rem;
  margin-bottom: 10px;
}

.solution-link-wrap .solution-link li {
  display: inline-block;
}

.solution-link-wrap .solution-link li:not(:last-child):after {
  content: '/';
  display: inline-block;
  padding: 0 10px;
}

.solution-link-wrap .solution-link li a {
  color: #172A88;
  font-weight: bold;
}

.solution-link-wrap .solution-link li a:hover {
  text-decoration: underline;
}

.banner-area {
  margin-bottom: 100px;
}

.banner-area a {
  display: block;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}

.banner-area a:hover {
  opacity: .75;
}

#header {
  background: url("../img/hd_bg_01.png") no-repeat center;
  background-size: cover;
  position: relative;
  padding-top: 112px;
}

@media screen and (max-width: 899px) {
  #header {
    padding-top: 101px;
  }
}

#header #js-particles canvas {
  position: absolute;
}

#header a {
  display: inline-block;
  color: #fff;
}

.top-navi, #nav-main, h1 {
  position: relative;
  z-index: 2;
}

.top-navi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.top-navi a {
  line-height: 4rem;
  display: inline-block;
}

.top-navi a:hover {
  text-decoration: underline;
}

.top-navi .online-discussion-pc {
  background: #E51773;
  border-radius: 100px;
  padding: 4px 10px;
  line-height: 1;
  margin-right: 24px;
}

.top-navi .online-discussion-pc:hover {
  text-decoration: none;
  opacity: .9;
}

.top-navi li:last-child a {
  margin-left: 2.4rem;
}

@media screen and (max-width: 899px) {
  .top-navi {
    display: none;
  }
}

#nav-main {
  background: #fff;
}

#nav-main .l-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 16px 21px;
}

@media screen and (max-width: 899px) {
  #nav-main .l-inner {
    padding: 10px 15px;
    display: block;
  }
  #nav-main .l-inner > a {
    height: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #nav-main .l-inner > a img {
    height: 3rem;
  }
}

#nav-main nav ul.main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#nav-main nav ul.main li:not(:first-child) {
  margin-left: 16px;
}

#nav-main nav ul.main a {
  color: #333;
  font-size: 1.4rem;
  font-weight: bold;
  border-bottom: 2px solid transparent;
}

#nav-main nav ul.main a:hover {
  color: #172A88;
  border-bottom: 2px solid #172A88;
}

#nav-main nav .sub-wrap {
  display: none;
}

@media screen and (max-width: 899px) {
  #nav-main nav {
    display: none;
  }
  #nav-main nav ul.main {
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
  #nav-main nav ul.main li {
    border-bottom: 1px solid #e5e5e5;
    margin-left: 0 !important;
    width: 50%;
  }
  #nav-main nav ul.main li:first-child, #nav-main nav ul.main li:nth-child(2) {
    border-top: 1px solid #e5e5e5;
  }
  #nav-main nav ul.main a {
    display: block;
    line-height: 4.5rem;
    padding: 0 1.5rem;
  }
  #nav-main nav .btn {
    line-height: 4.5rem;
    margin-top: 3rem;
  }
  #nav-main nav .sub-wrap {
    background: #F4F6F9;
    display: inherit;
  }
  #nav-main nav .sub-wrap p, #nav-main nav .sub-wrap a {
    display: block;
    line-height: 4.5rem;
    padding: 0 1.5rem;
    color: #333;
    font-weight: bold;
  }
  #nav-main nav .sub-wrap p {
    border-bottom: 1px solid #e5e5e5;
    position: relative;
  }
  #nav-main nav .sub-wrap p .toggle-icon {
    width: 13px;
    height: 13px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    right: 1.5rem;
  }
  #nav-main nav .sub-wrap p .toggle-icon:before, #nav-main nav .sub-wrap p .toggle-icon:after {
    content: "";
    display: block;
    background-color: #333;
    position: absolute;
    width: 11px;
    height: 2px;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    -webkit-transition: -webkit-transform 0.175s cubic-bezier(0.57, 0.15, 0.13, 0.97);
    transition: -webkit-transform 0.175s cubic-bezier(0.57, 0.15, 0.13, 0.97);
    transition: transform 0.175s cubic-bezier(0.57, 0.15, 0.13, 0.97);
    transition: transform 0.175s cubic-bezier(0.57, 0.15, 0.13, 0.97), -webkit-transform 0.175s cubic-bezier(0.57, 0.15, 0.13, 0.97);
    will-change: transform;
  }
  #nav-main nav .sub-wrap p .toggle-icon:after {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  #nav-main nav .sub-wrap.open .toggle-icon:after {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  #nav-main nav .sub-wrap a {
    padding-left: 3rem;
    background: #F4F6F9;
  }
  #nav-main nav .sub-wrap li {
    border-bottom: 1px solid #e5e5e5;
  }
  #nav-main nav .sub-wrap .sub {
    display: none;
  }
}

#nav-main.bg-fixed {
  background: #fff;
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 5;
  overflow: auto;
}

#nav-main.bg-fixed .inner > a {
  /*display: none;*/
}

#nav-main.bg-fixed nav {
  display: block;
  height: 100%;
  width: 100%;
  padding: 3rem 0 0;
}

#nav-main + .l-inner {
  position: relative;
  z-index: 2;
}

.header-fixed {
  position: fixed;
  width: 100%;
  z-index: 5;
  top: 0;
  /*transform: none;*/
}

.mode-scroll-down .header-fixed {
  -webkit-animation: hide-nav .3s both;
          animation: hide-nav .3s both;
}

.mode-scroll-down .header-fixed .top-navi, .mode-scroll-down .header-fixed .breadcrumb {
  display: none;
}

.mode-scroll-up .header-fixed {
  -webkit-animation: show-nav .3s both;
          animation: show-nav .3s both;
  top: 0;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}

.mode-scroll-up .header-fixed .top-navi, .mode-scroll-up .header-fixed .breadcrumb {
  display: none;
}

.mode-fixed .header-fixed {
  top: 0 !important;
  -webkit-animation: none;
          animation: none;
}

body:not([mode-scroll-much]) .header-fixed {
  -webkit-transform: none;
          transform: none;
}

@-webkit-keyframes hide-nav {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(0, -112px);
            transform: translate(0, -112px);
  }
}

@keyframes hide-nav {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(0, -112px);
            transform: translate(0, -112px);
  }
}

@-webkit-keyframes show-nav {
  0% {
    -webkit-transform: translate(0, -112px);
            transform: translate(0, -112px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes show-nav {
  0% {
    -webkit-transform: translate(0, -112px);
            transform: translate(0, -112px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

#page-head {
  padding: 80px 0;
}

@media screen and (max-width: 899px) {
  #page-head {
    padding: 60px 0;
  }
}

#nav-sub {
  background: #F4F6F9;
  text-align: center;
  position: relative;
  z-index: 2;
}

#nav-sub .btn-current {
  display: none;
  position: relative;
  cursor: pointer;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

#nav-sub .btn-current a {
  display: inline-block;
  padding: 20px;
}

@media screen and (max-width: 899px) {
  #nav-sub .btn-current {
    background: #F4F6F9;
    display: block;
  }
  #nav-sub .btn-current.js-open {
    color: #172A88;
  }
  #nav-sub .btn-current.js-open a:before {
    content: "\f106";
  }
}

#nav-sub .inner {
  padding: 24px;
}

@media screen and (min-width: 900px) {
  #nav-sub .inner {
    display: block !important;
  }
}

@media screen and (max-width: 899px) {
  #nav-sub .inner {
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
            box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    background: #F4F6F9;
    display: none;
    padding: 24px 24px 14px;
    text-align: left;
    border-top: 1px solid #d5dbe6;
  }
}

#nav-sub li {
  display: inline-block;
}

@media screen and (min-width: 900px) {
  #nav-sub li a.current {
    color: #172A88;
  }
  #nav-sub li a:hover {
    color: #172A88;
  }
}

@media screen and (max-width: 899px) {
  #nav-sub li {
    margin: 0 5px 10px;
  }
}

#nav-sub li:after {
  content: "/";
  display: inline-block;
  margin: 0 10px;
}

#nav-sub li:last-child:after {
  content: none;
}

@media screen and (max-width: 899px) {
  #nav-sub li:after {
    content: none;
  }
  #nav-sub li a {
    border-radius: 4px;
    color: #172A88;
    border: 1px solid #172A88;
    padding: 0 12px;
    display: block;
    opacity: 0.7;
  }
  #nav-sub li a.current {
    background: #172A88;
    background: -webkit-linear-gradient(315deg, #172A88 0%, #2068C0 100%);
    background: linear-gradient(135deg, #172A88 0%, #2068C0 100%);
    opacity: 1;
    color: #fff;
  }
}

#nav-sub.nav-doc {
  background: #E3E6ED;
}

@media screen and (max-width: 899px) {
  #nav-sub.nav-doc .btn-current, #nav-sub.nav-doc .inner {
    background: #E3E6ED;
  }
}

.link-scroll {
  display: block;
  max-width: 1150px;
  padding: 0 1.5rem;
  width: 100%;
  margin: 0 auto;
  position: absolute;
  z-index: 3;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  left: 0;
  right: 0;
}

@media screen and (max-width: 899px) {
  .link-scroll {
    padding: 0 30px;
  }
}

#open-btn {
  display: none;
}

@media screen and (max-width: 899px) {
  #open-btn {
    display: inherit;
    position: absolute;
    right: 0;
    top: 0;
    width: 60px;
    height: 60px;
    z-index: 2;
    cursor: pointer;
  }
  #open-btn span:nth-of-type(1), #open-btn span:nth-of-type(2), #open-btn span:nth-of-type(3) {
    display: inline-block;
    -webkit-transition: all .4s;
    transition: all .4s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: absolute;
    left: 1.5rem;
    width: 50%;
    margin: 0 auto;
    height: 2px;
    background-color: #172A88;
    border-radius: 2px;
  }
  #open-btn span:nth-of-type(1) {
    top: 20px;
  }
  #open-btn span:nth-of-type(2) {
    top: 29px;
  }
  #open-btn span:nth-of-type(3) {
    bottom: 20px;
  }
  #open-btn.active span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
            transform: translateY(9px) rotate(-45deg);
  }
  #open-btn.active span:nth-of-type(2) {
    -webkit-transform: translateY(0px) rotate(45deg);
            transform: translateY(0px) rotate(45deg);
  }
  #open-btn.active span:nth-of-type(3) {
    opacity: 0;
  }
}

@media screen and (max-width: 899px) {
  .breadcrumb-wrap {
    background: rgba(0, 0, 0, 0.2);
  }
}

.breadcrumb {
  padding: 20px 0;
}

.breadcrumb li {
  display: inline-block;
  color: #fff;
  font-size: 1.3rem;
}

.breadcrumb li:after {
  content: "/";
  padding: 0 5px;
}

.breadcrumb li:last-child:after {
  content: "";
}

.breadcrumb li a {
  font-weight: bold;
  line-height: 1;
  display: initial !important;
}

.breadcrumb li a:hover {
  text-decoration: underline;
}

@media screen and (max-width: 899px) {
  .breadcrumb {
    padding: 8px 0;
  }
  .breadcrumb li {
    font-size: 1rem;
  }
}

.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 20;
}

.modal .modal__title {
  text-align: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .modal .modal__title {
    margin-bottom: 20px;
  }
}

.modal .modal__title h2 {
  font-size: 2rem;
}

.modal .logo {
  max-width: 160px;
  margin: 0 auto 10px;
}

.modal .modal__contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.modal .modal__contact p {
  font-weight: bold;
}

.modal .modal__contact > * {
  width: calc(50% - 2rem);
}

@media screen and (max-width: 899px) {
  .modal .modal__contact {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .modal .modal__contact > * {
    width: 100%;
  }
  .modal .modal__contact > * .start-btn {
    margin-bottom: 20px;
  }
  .modal .modal__contact > * .btn {
    margin-left: auto;
    margin-right: auto;
  }
}

.modal a.js-modal-close {
  color: #999999;
}

.modal a.js-modal-close:hover {
  opacity: .8;
}

.modal .modal__footer {
  margin-top: 30px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .modal .modal__footer {
    margin-top: 20px;
  }
}

.modal__bg {
  background: rgba(0, 0, 0, 0.8);
  height: 100vh;
  position: absolute;
  width: 100%;
}

.modal__content {
  background: #fff;
  border-radius: .8rem;
  left: 50%;
  padding: 40px;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 60%;
  max-height: 80vh;
}

.modal__content .btn {
  max-width: inherit;
}

@media screen and (max-width: 767px) {
  .modal__content {
    padding: 24px 16px;
    width: 80%;
    overflow: auto;
  }
  .modal__content .btn {
    line-height: 4.5rem;
  }
}

#footer .nav-area {
  background: #fff;
  padding: 60px 0;
}

@media screen and (max-width: 899px) {
  #footer .nav-area {
    padding: 0px 0;
  }
}

#footer .footer-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (max-width: 899px) {
  #footer .footer-nav {
    display: none;
  }
}

#footer .footer-nav li a {
  display: inline-block;
}

#footer .footer-nav li a:hover {
  text-decoration: underline;
}

#footer .footer-nav li:not(:last-child):after {
  content: '|';
  padding: 0 12px;
}

#footer .copy-wrap {
  background: url(../img/bg-copy.svg) no-repeat right;
  background-size: cover;
  padding: 5px 0;
}

@media screen and (max-width: 767px) {
  #footer .copy-wrap {
    background: url(../img/bg-copy-sp.svg) no-repeat right;
    background-size: cover;
  }
}

#footer .copy {
  font-size: 1.3rem;
  color: #fff;
}

@media screen and (max-width: 899px) {
  #footer .copy {
    margin-top: 0 !important;
  }
}

#footer .inquiry-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#footer .inquiry-area > div {
  width: 50%;
}

@media screen and (max-width: 899px) {
  #footer .inquiry-area {
    display: block;
  }
  #footer .inquiry-area > div {
    width: 100%;
  }
  #footer .inquiry-area > div.img-area {
    height: 320px;
  }
}

#footer .inquiry-area .img-area {
  background: url(../img/ft_bg_01.jpg) no-repeat center;
  background-size: cover;
}

#footer .inquiry-area .text-area-wrap {
  background: #f4f6f9;
}

#footer .inquiry-area .text-area {
  padding: 8rem 0;
  margin: 0 auto;
  max-width: 495px;
}

#footer .inquiry-area .text-area .lead {
  font-size: 3rem;
  font-weight: bold;
}

#footer .inquiry-area .text-area p {
  font-weight: bold;
}

#footer .inquiry-area .text-area p.title {
  font-size: 1.8rem;
  line-height: 1;
}

#footer .inquiry-area .text-area p.text-s {
  font-size: 1.2rem;
}

#footer .inquiry-area .text-area .btn {
  max-width: inherit;
}

@media screen and (max-width: 1180px) {
  #footer .inquiry-area .text-area .lead {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 767px) {
  #footer .inquiry-area .text-area {
    padding: 4rem 30px;
  }
  #footer .inquiry-area .text-area .lead {
    font-size: 2rem;
  }
}

@media screen and (max-width: 1180px) {
  #footer .inquiry-area .text-area {
    padding: 4rem !important;
  }
}

/*.inquiry-area {
  background: #F5F5F5;
  text-align: center;
  padding: 4rem 0;
  p {
    font-size: 2.4rem;
    font-weight: bold;
    margin-bottom: 30px;
  }
  .btn-base {
    font-size: 20px;
    width: 300px;
    height: 60px;
    line-height: 60px;
    @include media(sp) {
      width: calc(100% - 20px);
      margin: 0 10px;
      padding: 0;
    }
  }
}*/
.footer-list {
  text-align: center;
  position: relative;
}

@media screen and (max-width: 767px) {
  .footer-list {
    height: 100%;
  }
}

.footer-list .sns-list {
  overflow: hidden;
}

.footer-list .footer-nav {
  text-align: center;
  margin: 0 auto;
  overflow: hidden;
  display: table;
  margin-bottom: 5px;
}

.footer-list .footer-nav li {
  font-size: 12px;
  color: #666;
  float: left;
  margin: 0 10px;
}

.footer-list .footer-nav li a {
  color: #666;
  font-size: 12px;
}

.pagetop-btn {
  width: 50px;
  height: 50px;
  background-color: #666;
  background-image: url(../img/ico-arrow_upward_white.svg);
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  right: 30px;
  top: 0;
}

@media screen and (max-width: 767px) {
  .pagetop-btn {
    position: absolute;
    bottom: 0;
    right: 0;
    top: inherit;
  }
}

.copyright {
  color: #999;
  font-size: 12px;
  text-align: center;
  padding: 30px 0 60px;
  display: block;
}

.sns-list {
  width: 130px;
  margin: 0 auto 30px;
  padding-top: 4rem;
}

.sns-list li {
  width: 30px;
  display: inline-block;
  line-height: 0;
  margin: 0 5px;
}

.sns-list li a {
  width: 100%;
  height: 100%;
  display: inline-block;
  line-height: 0;
}

.home main {
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 2;
  overflow-x: hidden;
}

.home .top-message-wrap {
  position: relative;
  z-index: 2;
  padding: 0 21px;
  margin-top: 20px;
  margin-bottom: -40px;
  color: #fff;
}

.home .top-message-wrap .top-message {
  background: rgba(0, 0, 0, 0.1);
  padding: 15px;
}

.home .top-message-wrap .title {
  font-size: 2.4rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 899px) {
  .home .top-message-wrap {
    margin-top: -20px;
  }
}

.home .title-l {
  font-size: 4.4rem;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.home .title-l .title-lead {
  font-weight: bold;
}

.home .title-l:before {
  width: 80px;
}

@media screen and (max-width: 899px) {
  .home .title-l {
    font-size: 4rem;
  }
}

@media screen and (max-width: 767px) {
  .home .title-l {
    font-size: 3.5rem;
  }
}

.home .list-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
  -webkit-box-shadow: 0px 5px 10px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 5px 10px 10px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 767px) {
  .home .list-top {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 1rem;
  }
}

.home .list-top li {
  width: 25%;
  padding: 1.5rem 0;
}

.home .list-top li:not(:last-child) a {
  border-right: 1px solid #172A88;
}

@media screen and (max-width: 767px) {
  .home .list-top li:not(:last-child) a {
    border-right: none;
  }
}

@media screen and (max-width: 767px) {
  .home .list-top li {
    width: 50%;
    padding: 0;
  }
  .home .list-top li:first-child, .home .list-top li:nth-child(2) {
    border-bottom: 1px solid #172A88;
  }
  .home .list-top li:first-child, .home .list-top li:nth-child(3) {
    border-right: 1px solid #172A88;
  }
  .home .list-top li a {
    padding: 1rem;
  }
}

.home .list-top li a {
  display: block;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
}

.home .list-top li a figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 105px;
  width: 120px;
  margin: 0 auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.home .list-top li a .arrow-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 4rem;
  width: 4rem;
  margin: 0 auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.home .list-top li a:hover {
  color: #172A88;
}

.home .list-top li a:hover figure {
  padding-top: 1.5rem;
}

.home .list-top li a:hover .arrow-wrap {
  padding-bottom: 1.5rem;
}

@media screen and (max-width: 767px) {
  .home .list-top li a figure {
    width: 100%;
    padding: 0 3rem;
    height: 6rem;
  }
  .home .list-top li a figure img {
    max-height: 4rem;
  }
  .home .list-top li a .arrow-wrap {
    height: 2rem;
  }
  .home .list-top li a .arrow-wrap img {
    width: 1.2rem;
  }
  .home .list-top li a p {
    font-size: 1.5rem;
  }
}

.home #sec-can {
  padding-top: 190px;
}

.home #sec-can .list-gr {
  padding: 20px;
  background: #F4F6F9;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.home #sec-can .list-gr > li {
  background: #fff;
  width: 33%;
}

.home #sec-can .list-gr > li:nth-child(2) {
  margin: 0 20px;
}

.home #sec-can .list-gr > li .list-title {
  margin-bottom: 20px;
  font-size: 3.6rem;
  font-weight: bold;
  font-family: "Noto Sans Japanese";
}

@media screen and (max-width: 899px) {
  .home #sec-can .list-gr > li .list-title {
    font-size: 2.8rem;
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 599px) {
  .home #sec-can .list-gr > li .list-title {
    margin-bottom: 13px;
  }
}

.home #sec-can .list-gr > li .text-area {
  padding: 20px;
}

.home #sec-can .list-gr > li .list-circle {
  margin-bottom: 20px;
  font-weight: bold;
}

@media screen and (max-width: 599px) {
  .home #sec-can .list-gr > li .list-circle {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .home #sec-can .list-gr {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .home #sec-can .list-gr > li {
    width: 100%;
  }
  .home #sec-can .list-gr > li:nth-child(2) {
    margin: 0 0 30px;
  }
  .home #sec-can .list-gr > li:not(:last-child) {
    margin-bottom: 30px;
  }
}

.home #sec-can #sec-can-02 .list-title {
  color: #2068C0;
}

.home #sec-can #sec-can-02 li:before {
  color: #2068C0;
}

.home #sec-can #sec-can-01 .list-title {
  color: #172A88;
}

.home #sec-can #sec-can-01 li:before {
  color: #172A88;
}

.home #sec-can #sec-can-03 .list-title {
  color: #2394CD;
}

.home #sec-can #sec-can-03 li:before {
  color: #2394CD;
}

.home #sec-reason {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.home #sec-reason > div {
  width: 50%;
}

@media screen and (max-width: 899px) {
  .home #sec-reason {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .home #sec-reason > div {
    width: 100%;
  }
  .home #sec-reason > div.img-area {
    height: 320px;
  }
}

@media screen and (max-width: 767px) {
  .home #sec-reason > div.img-area {
    height: 24rem;
  }
  .home #sec-reason img {
    width: 60%;
    display: block;
    margin: 0 auto;
    min-width: 270px;
  }
}

.home #sec-reason .text-area {
  padding: 8rem 1.5rem;
}

@media screen and (max-width: 767px) {
  .home #sec-reason .text-area {
    padding: 6rem 3rem;
  }
  .home #sec-reason .text-area .mb-56 {
    margin-bottom: 2.4rem !important;
  }
}

.home #sec-reason .img-area {
  background: url("../img/index/co_bg_01.jpg") no-repeat center;
  background-size: cover;
}

.home #sec-solution {
  background: url("../img/index/co_bg_02.jpg") no-repeat center;
  background-size: cover;
}

@media screen and (min-width: 900px) {
  .home #sec-solution {
    padding-bottom: 200px;
  }
}

@media screen and (max-width: 767px) {
  .home #sec-solution {
    background: url("../img/index/co_bg_02_sp.jpg") no-repeat center;
    background-size: cover;
  }
}

.home #sec-package {
  background: url("../img/index/co_bg_03.jpg") no-repeat center;
  background-size: cover;
  padding-bottom: 100px;
}

@media screen and (min-width: 900px) {
  .home #sec-package {
    background-size: cover;
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
    margin: -100px -10% 0;
    padding-bottom: 200px;
  }
  .home #sec-package .l-inner {
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
}

@media screen and (min-width: 900px) {
  .home #sec-case {
    position: relative;
    z-index: 1;
    margin-top: -100px;
  }
}

.home #sec-info-area {
  padding: 60px 0 100px;
}

@media screen and (max-width: 899px) {
  .home #sec-info-area h2 {
    text-align: center;
  }
}

.home #sec-info-area .l-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.home #sec-info-area .l-inner #sec-news {
  width: 50%;
  border-right: 1px solid #172A88;
  padding-right: 30px;
}

.home #sec-info-area .l-inner .other {
  width: 50%;
  padding-left: 30px;
}

@media screen and (max-width: 899px) {
  .home #sec-info-area .l-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .home #sec-info-area .l-inner #sec-news, .home #sec-info-area .l-inner .other {
    width: 100%;
  }
  .home #sec-info-area .l-inner #sec-news {
    border-right: none;
    border-bottom: 1px solid #172A88;
    padding-right: 0;
    padding-bottom: 60px;
    margin-bottom: 60px;
  }
  .home #sec-info-area .l-inner .other {
    padding-left: 0;
  }
}

.home #sec-info-area .partner {
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.home #sec-info-area .iso-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.home #sec-info-area .iso-wrap > div {
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.home #sec-info-area .iso-wrap > div:first-child {
  padding-right: 1.5rem;
  border-right: 1px solid #e5e5e5;
}

.home #sec-info-area .iso-wrap > div:last-child {
  padding-left: 1.5rem;
}

.home #sec-info-area .iso-wrap > div > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}

.home #sec-info-area .iso-wrap > div a {
  margin-top: auto;
}

@media screen and (max-width: 767px) {
  .home #sec-info-area .iso-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .home #sec-info-area .iso-wrap > div {
    width: 100%;
  }
  .home #sec-info-area .iso-wrap > div:first-child {
    padding-right: 0;
    border-right: none;
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
  }
  .home #sec-info-area .iso-wrap > div:last-child {
    padding-left: 0;
  }
}

.home #sec-info-area .social img {
  display: inline-block;
  vertical-align: middle;
}

.home #sec-info-area .social img:first-child {
  margin-right: 1.5rem;
}

.has-ban {
  max-width: 1150px;
  padding: 0 1.5rem;
  width: 100%;
  display: block;
  margin: 0 auto;
}

.has-ban .lead.index {
  text-align: left;
  padding-bottom: 160px;
}

.has-ban .lead.index span {
  position: relative;
  margin-top: 0px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.has-ban .index-ban {
  max-width: 400px;
  margin-left: 2rem;
  -webkit-box-shadow: 0px 3px 5px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 3px 5px 5px rgba(0, 0, 0, 0.1);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.has-ban a:hover {
  opacity: .9;
}

.has-ban a:hover .index-ban {
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.has-ban .ban-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 64px;
}

@media screen and (max-width: 1080px) {
  .has-ban .index-ban {
    max-width: 320px;
    width: 100%;
  }
  .has-ban h1.lead.index span {
    font-size: 3rem;
  }
}

@media screen and (max-width: 899px) {
  .has-ban {
    padding: 0 30px;
  }
  .has-ban .index-ban {
    max-width: 280px;
  }
  .has-ban h1.lead.index span {
    font-size: 2.4rem;
  }
  .has-ban .ban-area {
    margin-top: 4rem;
  }
  .has-ban .lead.index {
    padding-top: 4rem;
  }
}

@media screen and (max-width: 767px) {
  .has-ban {
    padding: 0;
    margin-bottom: 2rem;
  }
  .has-ban .ban-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 0;
  }
  .has-ban .ban-area .index-ban {
    margin-left: 0;
    max-width: inherit;
  }
  .has-ban .lead.index {
    padding-top: 0rem;
  }
  .has-ban h1.lead.index span {
    font-size: 1.7rem;
    margin: 3rem 0;
  }
}

.company #sec-greeting {
  margin-bottom: 120px;
}

.company #sec-greeting h3 {
  background: url("../img/company/co_bg_01.jpg") no-repeat center;
  background-size: cover;
  color: #fff;
  font-size: 4rem;
  padding: 40px;
  margin-bottom: 50px;
}

@media screen and (max-width: 899px) {
  .company #sec-greeting h3 {
    font-size: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .company #sec-greeting h3 {
    font-size: 2.2rem;
    padding: 25px;
  }
}

.company #sec-greeting .txt {
  margin-right: 50px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.company #sec-greeting .txt p {
  margin-bottom: 40px;
  font-size: 1.6rem;
  text-indent: 1em;
  line-height: 2;
}

.company #sec-greeting .txt p:last-of-type {
  margin-bottom: 0;
  margin-top: -30px;
}

@media screen and (max-width: 899px) {
  .company #sec-greeting .txt p {
    font-size: 1.5rem;
  }
}

.company #sec-greeting .img {
  width: 23%;
}

@media screen and (max-width: 767px) {
  .company #sec-greeting .img {
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
  }
}

.company #sec-philosophy .sec-head {
  background: url("../img/company/co_bg_02.jpg") no-repeat center;
  padding: 180px 50px;
  text-align: center;
  background-size: cover;
}

@media screen and (max-width: 899px) {
  .company #sec-philosophy .sec-head {
    padding: 150px 50px;
  }
}

@media screen and (max-width: 767px) {
  .company #sec-philosophy .sec-head {
    padding: 100px 50px;
  }
}

.company #sec-philosophy .sec-head h2 {
  background-size: cover;
  color: #fff;
  font-size: 3.2rem;
  letter-spacing: 0.44rem;
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 10px;
}

.company #sec-philosophy .sec-head h2:before {
  content: '';
  position: absolute;
  bottom: 0px;
  display: inline-block;
  width: 200px;
  height: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #172A88), color-stop(50%, #172A88), color-stop(50%, #E51773));
  background: -webkit-linear-gradient(left, #172A88 50%, #172A88 50%, #E51773 50%);
  background: linear-gradient(to right, #172A88 50%, #172A88 50%, #E51773 50%);
}

.company #sec-philosophy .sec-head p {
  color: #fff;
  font-size: 1.6rem;
  font-weight: normal;
}

.company #sec-philosophy .philosophy-lead {
  margin-top: -180px;
  margin-bottom: 30px;
  color: #fff;
  font-size: 4rem;
  font-weight: bold;
  text-align: center;
}

@media screen and (max-width: 899px) {
  .company #sec-philosophy .philosophy-lead {
    font-size: 3.2rem;
    margin-top: 10px;
    color: #333;
  }
}

@media screen and (max-width: 767px) {
  .company #sec-philosophy .philosophy-lead {
    font-size: 2rem;
    margin-top: 20px;
  }
}

.company #sec-philosophy li {
  background: #F4F6F9;
  padding: 30px;
}

@media screen and (max-width: 899px) {
  .company #sec-philosophy li {
    width: 100%;
    margin-left: 0 !important;
  }
}

.company #sec-philosophy li p {
  font-size: 1.6rem;
  line-height: 2;
}

@media screen and (max-width: 899px) {
  .company #sec-philosophy li p {
    font-size: 1.5rem;
  }
}

.company .l-sec-inner {
  max-width: 1090px;
  margin: 0 auto;
}

.facilities .link-area {
  margin-bottom: 100px;
}

.facilities .link-area section {
  margin-bottom: 10px;
}

@media screen and (max-width: 899px) {
  .facilities .link-area section {
    margin-bottom: 20px;
  }
}

.facilities .link-area .l-flex {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .facilities .link-area .l-flex {
    display: block;
  }
}

.facilities .link-area h3 {
  margin-bottom: 30px;
  font-size: 1.8rem;
  font-weight: bold;
  position: relative;
}

@media screen and (max-width: 899px) {
  .facilities .link-area h3 {
    margin-bottom: 20px;
  }
}

.facilities .link-area h3 span {
  display: inline-block;
  background: #fff;
  padding-right: 20px;
  position: relative;
}

.facilities .link-area h3:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  height: 1px;
  background-color: #D8DDE6;
  right: 0;
  width: 100%;
}

.facilities .link-area li {
  width: 25%;
  margin-bottom: 25px;
}

@media screen and (max-width: 899px) {
  .facilities .link-area li {
    display: inline-block;
    width: auto;
    margin-right: 10px;
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 767px) {
  .facilities .link-area li {
    margin-bottom: 10px;
  }
}

.facilities .link-area a {
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .facilities .link-area a {
    font-size: 1.5rem;
  }
}

.facilities .link-area a:hover {
  color: #172A88;
}

.facilities .sec-map {
  margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
  .facilities .sec-map {
    margin-bottom: 70px;
  }
}

.facilities .sec-map .txt-icon:before {
  color: #333;
  font-size: 1.6rem;
}

.facilities .map {
  margin-bottom: 30px;
}

.facilities .map > div {
  width: 100%;
  height: 400px;
}

@media screen and (max-width: 767px) {
  .facilities .map > div {
    height: 240px;
  }
}

.facilities .info-box {
  position: relative;
}

.facilities .info {
  padding-right: 170px;
}

@media screen and (max-width: 767px) {
  .facilities .info {
    padding-right: 0;
  }
}

.facilities .btn.btn-s {
  position: absolute;
  right: 0;
  top: 0;
  font-weight: 400;
}

@media screen and (max-width: 767px) {
  .facilities .btn.btn-s {
    position: relative;
    margin: 20px auto;
  }
}

.history .list-default li {
  position: relative;
}

.history .list-default li:last-child {
  border-bottom: none;
}

.history .list-default li:first-child dt:before {
  content: "";
  border-right: 1px solid #fff;
  position: absolute;
  right: -1px;
  top: 0;
  width: 1px;
  height: 30px;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .history .list-default li:before {
    content: "";
    border-left: 1px solid #172A88;
    position: absolute;
    left: 8px;
    top: 0;
    width: 1px;
    height: 100%;
    z-index: 1;
  }
  .history .list-default li:after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 8px;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    background: #172A88;
    z-index: 2;
  }
}

.history .list-default dt {
  position: relative;
  border-right: 1px solid #172A88;
  padding-left: 35px;
}

@media screen and (max-width: 767px) {
  .history .list-default dt {
    width: 100%;
    max-width: 100%;
    border: none;
  }
}

.history .list-default dt:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 8px;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  top: 50%;
  right: -8px;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  background: #172A88;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .history .list-default dt:after {
    content: none;
  }
}

.history .list-default dd {
  padding-left: 45px;
}

.qualification #sec-head {
  margin-bottom: 70px;
}

.qualification #sec-partner .l-flex > li {
  text-align: center;
}

.qualification #sec-partner .img {
  width: 194px;
  margin: 0 auto;
}

.qualification #sec-partner .title-bold {
  margin-bottom: 0;
  margin-top: 20px;
}

.qualification #sec-qualification section {
  margin-bottom: 80px;
}

.qualification #sec-ios li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.qualification #sec-ios li > .img {
  text-align: center;
  width: 104px;
}

.qualification #sec-ios li > .img img {
  height: auto;
}

.qualification #sec-ios li > .txt {
  padding-left: 20px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.csr .txt-link {
  display: block;
}

.csr .l-flex > .img {
  text-align: center;
}

.csr .l-flex > .img img {
  width: 170px;
}

.csr .l-flex > .txt {
  margin-left: 30px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@media screen and (max-width: 767px) {
  .csr .l-flex > .txt {
    margin-left: 0;
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .csr section .img {
    margin-bottom: 20px;
    width: 100% !important;
  }
}

.csr .list-num {
  margin-top: 20px;
}

.csr .list-num > li {
  padding: 40px 0;
  border-bottom: 1px solid #D8DDE6;
}

.csr .list-num > li:first-child {
  border-top: 1px solid #D8DDE6;
}

@media screen and (min-width: 900px) {
  .csr #sec-environment .txt {
    position: relative;
  }
  .csr #sec-environment .txt p {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
  }
}

.ir .list-line a h3 {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.ir .list-line a:hover h3 {
  color: #172A88;
}

.section-lead {
  padding: 0 30px;
}

@media screen and (max-width: 767px) {
  .section-lead {
    padding: 0 15px;
  }
}

.cat-tag {
  background: #F7F7F7;
  padding: 5px 10px;
  margin-bottom: 30px;
}

.cat-tag > div {
  display: inline-block;
}

.cat-tag > div:first-child {
  margin-right: 10px;
  padding: 5px 5px;
}

.cat-list p, .cat-list li, .tag-list p, .tag-list li {
  font-size: 1.2rem;
  display: inline-block;
}

.cat-list ul, .cat-list li, .tag-list ul, .tag-list li {
  display: inline-block;
}

.cat-list li:not(:first-child):before, .tag-list li:not(:first-child):before {
  content: '/';
  padding: 0 5px;
}

.heading-case-title {
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .heading-case-title {
    font-size: 1.8rem;
  }
}

.case-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 767px) {
  .case-meta {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.case-meta-list li {
  display: inline-block;
  font-size: 1.4rem;
}

.case-meta-list li:not(:first-child):before {
  content: '/';
  padding: 0 5px;
}

.case-meta-list li a {
  font-size: 1.4rem;
  color: #172A88;
}

.case-meta-list li a:hover {
  text-decoration: underline;
}

.case-img-area {
  border-right: 1px solid #B8B8B8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 20px;
  margin-right: 20px;
}

.case-img-area img {
  height: 60px;
  width: auto;
}

@media screen and (max-width: 767px) {
  .case-img-area {
    border-right: none;
    border: 4px solid #E3E6ED;
    padding: 20px;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .case-img-area img {
    display: block;
    margin: 0 auto;
  }
}

.case-person {
  margin: 20px auto 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px;
  border-top: 1px solid #B8B8B8;
  border-bottom: 1px solid #B8B8B8;
}

@media screen and (max-width: 767px) {
  .case-person {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 20px 0;
  }
}

.case-person .case-person-img-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
      align-content: center;
  margin-right: 20px;
}

.case-person .case-person-img-area img {
  width: 120px;
  height: 120px;
  border-radius: 60px;
}

@media screen and (max-width: 767px) {
  .case-person .case-person-img-area img {
    margin-bottom: 20px;
  }
}

.case-person .case-person-text-area {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.case-person .case-person-text-area p {
  margin-top: 10px;
  font-size: 1.4rem;
}

.case-person .case-person-text-area .text-bold {
  font-weight: bold;
  margin-top: 0;
}

.case-catch-title {
  font-size: 1.8rem;
  margin-bottom: 15px;
  font-weight: bold;
}

.case-catch-detail {
  font-size: 1.5rem;
}

.case-detail {
  border: 8px solid #F6F6F6;
  margin-top: 40px;
}

.case-heading {
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
  position: relative;
  padding-bottom: 10px;
  margin-bottom: 40px;
}

.case-heading:before {
  content: '';
  position: absolute;
  bottom: 0px;
  display: inline-block;
  width: 64px;
  height: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #172A88), color-stop(50%, #172A88), color-stop(50%, #E51773));
  background: -webkit-linear-gradient(left, #172A88 50%, #172A88 50%, #E51773 50%);
  background: linear-gradient(to right, #172A88 50%, #172A88 50%, #E51773 50%);
}

.case-task {
  background: #F6F6F6;
  padding: 40px;
}

@media screen and (max-width: 767px) {
  .case-task {
    padding: 40px 20px 10px;
  }
}

.case-task-list li {
  border-bottom: 1px dotted #D8DDE6;
  padding-bottom: 15px;
  margin-bottom: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.case-task-list li:before {
  display: block;
  content: ' ';
  background: url("../img/icon/check-off.svg") no-repeat center;
  background-size: 30px 30px;
  height: 30px;
  width: 30px;
  margin-right: 10px;
}

.case-task-list li span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.task-detail {
  font-size: 1.4rem;
}

.triangle {
  background: url("../img/bg-triangle.png") no-repeat center;
  background-size: cover;
  height: 40px;
}

.case-solution {
  padding: 40px 40px 0px;
}

@media screen and (max-width: 767px) {
  .case-solution {
    padding: 40px 20px 0px;
  }
}

.case-solution-list li {
  border-bottom: 1px dotted #D8DDE6;
  padding-bottom: 15px;
  margin-bottom: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.case-solution-list li:before {
  display: block;
  content: ' ';
  background: url("../img/icon/check-on.svg") no-repeat center;
  background-size: 30px 30px;
  height: 30px;
  width: 30px;
  margin-right: 10px;
}

.case-solution-list li span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.case-detail .wp-native {
  padding: 0 40px 40px;
}

@media screen and (max-width: 767px) {
  .case-detail .wp-native {
    padding: 0px 20px 20px;
  }
}

.case-detail .wp-native h3:first-child {
  margin-top: 0;
}

.case-relation {
  max-width: 1150px;
  width: 100%;
  display: block;
  margin: 0 auto;
  padding: 60px 60px 30px;
  background: #E7EBF1;
}

@media screen and (max-width: 767px) {
  .case-relation {
    padding: 40px 20px 30px;
  }
}

.case-press {
  max-width: 1150px;
  position: relative;
  width: 100%;
  display: block;
  margin: 0 auto;
  padding: 60px 60px 60px;
  background: #fff;
}

@media screen and (max-width: 767px) {
  .case-press {
    padding: 40px 20px 30px;
  }
}

.case-back {
  max-width: 1150px;
  position: relative;
  width: 100%;
  display: block;
  margin: 0 auto;
  padding: 0 60px;
}

@media screen and (max-width: 767px) {
  .case-back {
    padding: 0 20px;
  }
}

.solution #sec-page {
  background: #f2f2f2;
}

.solution .list-tab {
  border-bottom: 4px solid #172A88;
}

.solution .list-solution section {
  padding-top: 30px;
}

.solution .list-solution h3 {
  text-align: left;
}

.solution .list-solution p {
  text-align: left;
  font-size: 1.4rem;
}

.package #sec-page {
  background: #f2f2f2;
}

.package .list-tab {
  border-bottom: 4px solid #2068C0;
}

.package .list-solution section {
  padding-top: 30px;
}

.package .list-solution h3 {
  text-align: left;
}

.package .list-solution p {
  text-align: left;
  font-size: 1.4rem;
}

.package .list-solution li a:hover h3 {
  color: #2068C0;
}

.package .list-solution li a:after {
  background: url("../img/package/solution/co_shape_01.svg") no-repeat center;
  width: 13px;
  height: 13px;
  background-size: 100%;
  position: absolute;
  bottom: 4px;
  right: 4px;
}

.package .icon {
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.package .icon img {
  height: 60px;
}

#package #sec-page {
  background: #f2f2f2;
}

#package #sec-page .l-inner {
  /*max-width:96%;*/
  background: #fff;
  padding: 60px;
  max-width: 1150px;
  position: relative;
}

@media screen and (max-width: 1180px) {
  #package #sec-page .l-inner {
    /*max-width:96%;*/
  }
}

@media screen and (max-width: 899px) {
  #package #sec-page .l-inner {
    padding: 30px;
  }
}

@media screen and (max-width: 599px) {
  #package #sec-page .l-inner {
    padding: 30px 20px;
  }
}

#package #sec-page .l-inner > .title {
  font-size: 3rem;
  margin-bottom: 40px;
  table-layout: fixed;
}

@media screen and (max-width: 767px) {
  #package #sec-page .l-inner > .title {
    font-size: 2rem;
  }
}

#package #sec-page .l-inner > .title .img {
  width: 140px;
  display: table-cell;
  vertical-align: middle;
  padding-right: 20px;
  border-right: 1px solid #d5dbe6;
  text-align: center;
}

#package #sec-page .l-inner > .title .img img {
  vertical-align: middle;
}

@media screen and (max-width: 899px) {
  #package #sec-page .l-inner > .title .img {
    display: block;
    text-align: center;
    margin-bottom: 15px;
    padding: 40px 20px;
    width: 100%;
    border: 5px solid #d5dbe6;
  }
  #package #sec-page .l-inner > .title .img img {
    width: 140px;
  }
}

#package #sec-page .l-inner > .title .txt {
  padding-left: 20px;
  display: table-cell;
}

@media screen and (max-width: 899px) {
  #package #sec-page .l-inner > .title .txt {
    display: block;
    padding: 0 0 20px 0;
    border-bottom: 1px solid #d5dbe6;
  }
  #package #sec-page .l-inner > .title .txt .list-tag {
    margin-bottom: 10px;
  }
}

#package #sec-page #sec-contact {
  background: #dfe2e8;
  position: relative;
}

#package #sec-page #sec-contact .l-flex {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
}

#package #sec-page #sec-contact .align-center {
  margin-bottom: 20px;
}

#package #sec-page #sec-contact .btn {
  line-height: 7rem;
  margin: 0 auto;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  #package #sec-page #sec-contact .btn {
    margin: 0 auto;
  }
}

#package #sec-page #sec-contact .tel-wrap p {
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  #package #sec-page #sec-contact .tel-wrap {
    text-align: center;
    margin-bottom: 30px;
    margin-top: 30px;
  }
}

#package #sec-page #sec-contact .tel-wrap .tel {
  margin-top: auto;
  font-weight: bold;
  color: #00C6B7;
  font-size: 3.6rem;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  #package #sec-page #sec-contact .tel-wrap .tel {
    font-size: 2.4rem;
  }
}

#package .lead {
  font-weight: bold;
}

#package .lead p {
  font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
  #package .lead p {
    font-size: 1.5rem;
  }
}

#package .box-line {
  border: 8px solid #f2f2f2;
  margin-bottom: 60px;
  overflow: hidden;
}

#package .box-line section {
  padding: 50px;
}

@media screen and (max-width: 899px) {
  #package .box-line section {
    padding: 30px;
  }
}

@media screen and (max-width: 599px) {
  #package .box-line section {
    padding: 20px;
  }
}

#package #sec-task {
  background: #f2f2f2;
  position: relative;
}

#package #sec-task:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  bottom: -50px;
  left: 50%;
  margin-left: -575px;
  border-style: solid;
  border-color: #f2f2f2 transparent transparent transparent;
  border-width: 50px 575px 0 575px;
  z-index: 1;
}

@media screen and (max-width: 599px) {
  #package #sec-task {
    padding: 20px 0;
  }
}

#package #sec-effect {
  padding-bottom: 0;
  padding-top: 100px;
}

#package #sec-effect section {
  padding: 0;
  width: 48%;
  float: left;
  margin-bottom: 40px;
}

#package #sec-effect section:nth-child(even) {
  margin-left: 4%;
}

@media screen and (max-width: 599px) {
  #package #sec-effect section {
    width: 100%;
  }
  #package #sec-effect section:nth-child(even) {
    margin-left: 0;
  }
}

#package #sec-effect .icon {
  text-align: center;
  margin-bottom: 30px;
}

#package #sec-effect .icon img {
  width: 100px;
}

@media screen and (max-width: 599px) {
  #package #sec-effect .icon img {
    width: 120px;
  }
}

#package #sec-effect h4 {
  margin-bottom: 16px;
  font-size: 1.6rem;
}

#package #sec-effect p {
  font-size: 1.4rem;
}

#package #sec-function .l-flex {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-line-pack: stretch;
      align-content: stretch;
}

#package #sec-function .l-flex .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@media screen and (max-width: 767px) {
  #package #sec-function .l-flex .txt {
    margin-bottom: 50px;
  }
}

#package #sec-function .l-flex .img {
  text-align: center;
}

#package #sec-function .list-line {
  padding-right: 30px;
}

#package #sec-function .list-line dt {
  padding: 5px 20px;
  /*white-space: nowrap;*/
}

@media screen and (max-width: 767px) {
  #package #sec-function .list-line dt {
    padding: 5px 10px 0;
  }
}

#package #sec-function .list-line dd {
  padding: 5px 20px;
  font-size: 1.4rem;
}

#package #sec-function .list-line dd ul *, #package #sec-function .list-line dd ol * {
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  #package #sec-function .list-line dd {
    padding: 0 10px 5px;
  }
}

#package #sec-related ul {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#package #sec-related li {
  background: #F7F7F7;
  width: 31%;
}

@media screen and (max-width: 767px) {
  #package #sec-related li {
    width: 100%;
    margin-bottom: 20px;
  }
}

#package #sec-related li:last-child {
  margin-bottom: 0;
}

#package #sec-related li .cat {
  border: 1px solid;
  padding: 0px 7px;
  margin-bottom: 15px;
  display: inline-block;
  font-size: 1.4rem;
}

#package #sec-related li h4 {
  font-weight: bold;
}

#package #sec-related li p {
  border-top: 1px solid #d5dbe6;
  margin-top: 20px;
  padding-top: 10px;
}

#package #sec-related li a {
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  display: block;
  padding: 30px;
  position: relative;
  height: 100%;
}

#package #sec-related li a:hover {
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

#package #sec-related li a:after {
  content: "";
  background: url(../img/co_shape_01.svg) no-repeat center;
  width: 13px;
  height: 13px;
  background-size: 100%;
  position: absolute;
  bottom: 4px;
  right: 4px;
}

#solution #sec-page {
  background: #f2f2f2;
}

#solution #sec-page .title-line-s {
  font-size: 2.4rem;
}

@media screen and (max-width: 767px) {
  #solution #sec-page .title-line-s {
    font-size: 2rem;
  }
}

#solution #sec-page .l-inner {
  /*max-width:96%;*/
  background: #fff;
  padding: 60px;
  max-width: 1150px;
  position: relative;
}

@media screen and (max-width: 1180px) {
  #solution #sec-page .l-inner {
    /*max-width:96%;*/
  }
}

@media screen and (max-width: 767px) {
  #solution #sec-page .l-inner {
    padding: 30px;
  }
}

@media screen and (max-width: 599px) {
  #solution #sec-page .l-inner {
    padding: 30px 20px;
  }
}

#solution #sec-page .l-inner > .title {
  font-size: 3rem;
  margin-bottom: 32px;
  table-layout: fixed;
  border-bottom: 1px solid #222;
  padding-bottom: 10px;
}

@media screen and (max-width: 767px) {
  #solution #sec-page .l-inner > .title {
    font-size: 2rem;
  }
}

#solution #sec-page .l-inner > .title .txt {
  display: table-cell;
}

#solution #sec-page .list-keywords-wrap {
  margin-bottom: 32px;
}

#solution #sec-page .sub-lead p {
  font-size: 1.4rem;
}

#solution #sec-page #sec-contact {
  background: #dfe2e8;
  position: relative;
}

#solution #sec-page #sec-contact .align-center {
  margin-bottom: 20px;
}

#solution #sec-page #sec-contact .btn {
  line-height: 7rem;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  #solution #sec-page #sec-contact .btn {
    margin: 0 auto;
  }
}

#solution .lead {
  font-weight: bold;
}

#solution .lead p {
  font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
  #solution .lead p {
    font-size: 1.5rem;
  }
}

#solution .box-line {
  border: 8px solid #f2f2f2;
  margin-bottom: 60px;
  overflow: hidden;
}

#solution .box-line section {
  padding: 50px;
}

@media screen and (max-width: 767px) {
  #solution .box-line section {
    padding: 30px;
  }
}

@media screen and (max-width: 599px) {
  #solution .box-line section {
    padding: 20px;
  }
}

@media screen and (max-width: 599px) {
  #solution #sec-task {
    padding: 20px 0;
  }
}

#solution #sec-effect {
  padding-bottom: 0;
  padding-top: 100px;
}

#solution #sec-effect section {
  padding: 0;
  width: 48%;
  float: left;
  margin-bottom: 70px;
}

#solution #sec-effect section:nth-child(even) {
  margin-left: 4%;
}

@media screen and (max-width: 599px) {
  #solution #sec-effect section {
    width: 100%;
  }
  #solution #sec-effect section:nth-child(even) {
    margin-left: 0;
  }
}

#solution #sec-effect .icon {
  text-align: center;
  margin-bottom: 30px;
}

#solution #sec-effect .icon img {
  width: 136px;
}

@media screen and (max-width: 599px) {
  #solution #sec-effect .icon img {
    width: 120px;
  }
}

#solution #sec-effect h4 {
  margin-bottom: 20px;
  font-size: 1.6rem;
}

#solution #sec-effect p {
  font-size: 1.4rem;
}

#solution #sec-function .l-flex {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-line-pack: stretch;
      align-content: stretch;
}

#solution #sec-function .l-flex .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@media screen and (max-width: 767px) {
  #solution #sec-function .l-flex .txt {
    margin-bottom: 50px;
  }
}

#solution #sec-function .l-flex .img {
  text-align: center;
}

#solution #sec-function .list-line {
  padding-right: 30px;
}

#solution #sec-function .list-line dt {
  padding: 5px 20px;
  /*white-space: nowrap;*/
}

@media screen and (max-width: 767px) {
  #solution #sec-function .list-line dt {
    padding: 5px 10px 0;
  }
}

#solution #sec-function .list-line dd {
  padding: 5px 20px;
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  #solution #sec-function .list-line dd {
    padding: 0 10px 5px;
  }
}

#solution #sec-related ul {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#solution #sec-related li {
  background: #F7F7F7;
  width: 31%;
}

@media screen and (max-width: 767px) {
  #solution #sec-related li {
    width: 100%;
    margin-bottom: 20px;
  }
}

#solution #sec-related li:last-child {
  margin-bottom: 0;
}

#solution #sec-related li h4 {
  font-weight: bold;
  border-bottom: 1px solid #d5dbe6;
  padding-bottom: 10px;
  margin-bottom: 20px;
}

#solution #sec-related li a {
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  display: block;
  padding: 30px;
  position: relative;
  height: 100%;
}

#solution #sec-related li a:hover {
  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

#solution #sec-related li a:after {
  content: "";
  background: url(../img/co_shape_01.svg) no-repeat center;
  width: 13px;
  height: 13px;
  background-size: 100%;
  position: absolute;
  bottom: 4px;
  right: 4px;
}

.solution-tel-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 20px;
}

.solution-tel-area .solution-tel {
  width: 33.33%;
  padding: 0 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
}

.solution-tel-area .solution-tel:not(:first-child) {
  border-left: 1px dotted #172A88;
}

@media screen and (max-width: 899px) {
  .solution-tel-area .solution-tel {
    padding: 10px;
  }
}

.solution-tel-area .solution-tel p {
  margin-bottom: 10px;
  line-height: 1.5;
}

.solution-tel-area .solution-tel a {
  margin-top: auto;
  font-weight: bold;
  color: #172A88;
  font-size: 3.6rem;
  line-height: 1;
}

@media screen and (max-width: 899px) {
  .solution-tel-area .solution-tel a {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 767px) {
  .solution-tel-area .solution-tel a {
    font-size: 3rem;
  }
}

.solution-tel-area .solution-tel a:hover {
  opacity: .7;
}

.solution-tel-area p {
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .solution-tel-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    margin-bottom: 20px;
  }
  .solution-tel-area .solution-tel {
    width: 100%;
  }
  .solution-tel-area .solution-tel:not(:first-child) {
    border-left: none;
    border-top: 1px dotted #172A88;
  }
}

#recruit table {
  margin-top: 20px;
  margin-bottom: 10px;
  width: 100%;
  table-layout: fixed;
}

@media screen and (max-width: 767px) {
  #recruit table {
    table-layout: inherit;
  }
}

#recruit table thead th {
  text-align: center;
}

#recruit table td {
  text-align: center;
}

#recruit table th, #recruit table td {
  border: 1px solid #dee4eb;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  #recruit table th, #recruit table td {
    display: table-cell;
    width: 100px;
    font-size: 1.2rem;
    padding: 10px;
    min-width: 80px;
  }
  #recruit table th .sp-hide, #recruit table td .sp-hide {
    display: none;
  }
}

#recruit .new.title-line span {
  border-bottom: 2px solid #45B4D8;
}

#recruit .btn-document-box {
  max-width: inherit;
  width: 100%;
  margin: 0 auto 60px;
  background: url("../img/recruit/co_bg_01_pc_2.jpg") no-repeat left center;
  background-size: cover;
}

@media screen and (max-width: 767px) {
  #recruit .btn-document-box {
    background: none;
  }
}

#recruit .btn-document-box h3 {
  padding: 0;
}

#recruit .btn-document-box .txt {
  right: -45px;
  background-image: -webkit-linear-gradient(283deg, #6087d4 10%, #3ea7c9 100%);
  background-image: linear-gradient(-193deg, #6087d4 10%, #3ea7c9 100%);
}

#recruit .btn-document-box .txt section {
  padding: 70px 80px 70px 50px;
}

@media screen and (max-width: 767px) {
  #recruit .btn-document-box .txt {
    width: 100%;
    float: none;
    -webkit-transform: skewX(0);
            transform: skewX(0);
    right: 0;
  }
  #recruit .btn-document-box .txt section {
    -webkit-transform: skewX(0);
            transform: skewX(0);
    padding: 25px;
  }
  #recruit .btn-document-box h3 {
    padding: 0;
  }
}

#recruit .btn-document-box .btn-w {
  margin-top: 30px;
  color: #6087d4;
}

@media screen and (max-width: 767px) {
  .left50th {
    width: 100%;
  }
  .right50th {
    width: 100%;
  }
  .cover50th img {
    margin-bottom: 50px;
    -webkit-box-shadow: 0 1.9px 2.5px rgba(0, 0, 0, 0.057), 0 5px 6.1px rgba(0, 0, 0, 0.076), 0 10.1px 11.4px rgba(0, 0, 0, 0.086), 0 19.2px 19.8px rgba(0, 0, 0, 0.092), 0 38.4px 34.8px rgba(0, 0, 0, 0.1), 0 1px 14px rgba(0, 0, 0, 0.13);
            box-shadow: 0 1.9px 2.5px rgba(0, 0, 0, 0.057), 0 5px 6.1px rgba(0, 0, 0, 0.076), 0 10.1px 11.4px rgba(0, 0, 0, 0.086), 0 19.2px 19.8px rgba(0, 0, 0, 0.092), 0 38.4px 34.8px rgba(0, 0, 0, 0.1), 0 1px 14px rgba(0, 0, 0, 0.13);
  }
  .box11 {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #5d627b;
    background: white;
    border-top: solid 5px #5d627b;
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
            box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
  }
  .box11 p {
    margin: 0;
    padding: 0;
  }
}

@media screen and (min-width: 767px) {
  .left50th {
    width: 40%;
  }
  .right50th {
    width: 60%;
  }
  .cover50th img {
    width: 80%;
    margin-bottom: 50px;
    -webkit-box-shadow: 0 1.9px 2.5px rgba(0, 0, 0, 0.057), 0 5px 6.1px rgba(0, 0, 0, 0.076), 0 10.1px 11.4px rgba(0, 0, 0, 0.086), 0 19.2px 19.8px rgba(0, 0, 0, 0.092), 0 38.4px 34.8px rgba(0, 0, 0, 0.1), 0 51px 74px rgba(0, 0, 0, 0.13);
            box-shadow: 0 1.9px 2.5px rgba(0, 0, 0, 0.057), 0 5px 6.1px rgba(0, 0, 0, 0.076), 0 10.1px 11.4px rgba(0, 0, 0, 0.086), 0 19.2px 19.8px rgba(0, 0, 0, 0.092), 0 38.4px 34.8px rgba(0, 0, 0, 0.1), 0 51px 74px rgba(0, 0, 0, 0.13);
  }
  .box11 {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #5d627b;
    background: white;
    border-top: solid 5px #5d627b;
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
            box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
  }
  .box11 p {
    margin: 0;
    padding: 0;
  }
}

.post_password_style {
  text-align: center;
  left: 50%;
}

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




.sdgshr {
  border: 0;
  height: 1px;
  background-image:    -moz-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
  background-image:     -ms-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
  background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
  background-image:      -o-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
  margin: 20px 0;
}

.clarboth{
  clear: both;
}

@media screen and (max-width: 767px) {
  .sp-hide {
    display: none;
  }
}

.box12 {
  padding: 0.5em 1em;
  border: double 5px #cbcdda;
}


/*# sourceMappingURL=style.css.map */
/* 右側の追従バナーエリア */
#flyin {
  z-index:5;
  border-radius:10px 0 0;
  -moz-border-radius:10px 0 0;
  -webkit-border-radius:10px 0 0;
  width: 360px;
  position:fixed;
  bottom:40px;
  left:10px;
  -webkit-backface-visibility:visible!important;
  -ms-backface-visibility:visible!important;
  backface-visibility:visible!important;
  -webkit-animation:flipInY 1s cubic-bezier(0.77,0,.175,1);
  -moz-animation:flipInY 1s cubic-bezier(0.77,0,.175,1);
  -o-animation:flipInY 1s cubic-bezier(0.77,0,.175,1);
  animation:flipInY 1s cubic-bezier(0.77,0,.175,1);
  -webkit-transition:bottom .5s ease,background-position .5s ease;
  transition:bottom .5s ease,background-position .5s ease;
  padding:0;
  filter: drop-shadow(0px 0px 7px #aaa);
  transition: 0.3s ease-in-out;
  }
  
  #flyin .flyin-man {
  position:absolute;
  right:5%;
  top:110px;
  z-index:3;
  width:82px;
  height:130px;
  display:block;
  background-image:url(//cdn.elegantthemes.com/images/flyin-man.png);
  -webkit-animation:float 3s infinite;
  -moz-animation:float 3s infinite;
  -o-animation:float 3s infinite;
  animation:float 3s infinite;
  -webkit-transition:top 1s ease,opacity 1s ease;
  transition:top 1s ease,opacity 1s ease;
  }
  
  #flyin #flying_subscribe {
  -webkit-transition:opacity .5s ease,background-color .5s ease;
  transition:opacity .5s ease,background-color .5s ease;
  border-radius:5px;
  -moz-border-radius:5px;
  -webkit-border-radius:5px;
  border:none;
  width:100%;
  color:#fff;
  font-size:16px;
  font-family:'Goudy Bookletter 1911',arial,sans-serif;
  background:#55a753;
  text-align:center;
  cursor:pointer;
  padding:11px 0 10px;
  }
  
  #flyin #flying_subscribe:hover,#flyin .flyinbutton:hover {
  background-color:#408c3f;
  }
  
  #flyin #exit_emailinput {
  -webkit-transition:opacity .5s;
  transition:opacity .5s;
  border-radius:5px;
  -moz-border-radius:5px;
  -webkit-border-radius:5px;
  width:220px;
  background:#f8fafa;
  border:1px solid #e4e9e9;
  color:#b3b3b3;
  font-size:13px;
  margin:0 0 10px;
  padding:11px 20px;
  }
  
  #flyin .flyinclose {
  -webkit-transition:0 .5s ease .2s,opacity .5s ease,top .5s ease .2s;
  transition:transform .5s ease .2s,opacity .5s ease,top .5s ease .2s;
  content:'';
  display:block;
  z-index:2;
  box-shadow:0 0 10px rgba(0,0,0,.2);
  cursor:pointer;
  width:30px;
  height:30px;
  border-radius:30px;
  background:#fff url(//cdn.elegantthemes.com/img/exitpopup-x.png) no-repeat center center;
  position:absolute;
  top:-10px;
  right:-5px;
  margin:0;
  padding:0;
  }
  
  #flyin .flyinbutton {
  -webkit-transition:top .5s ease,opacity .5s ease,background-color .5s ease;
  transition:top .5s ease,opacity .5s ease,background-color .5s ease;
  width:300px;
  height:20px;
  top:400px;
  opacity:0;
  position:absolute;
  left:10px;
  z-index:5;
  display:block;
  border-radius:5px;
  -moz-border-radius:5px;
  -webkit-border-radius:5px;
  border:none;
  color:#fff;
  font-size:16px;
  font-family:'Goudy Bookletter 1911',arial,sans-serif;
  background:#55a753;
  text-align:center;
  cursor:pointer;
  padding:11px 0 10px;
  }
  
  .hide {
  opacity:0;
  -webkit-transition:opacity 1s ease;
  transition:opacity 1s ease;
  }
  
  .hide div {
  top:60%!important;
  -webkit-transition:top 1s ease;
  transition:top 1s ease;
  }
  
  .minimize {
  bottom:-320px!important;
  background-position:320px 127px!important;
  }
  
  .minimize .flyin-man {
  top:-300px!important;
  opacity:0!important;
  }
  
  .minimize .flyinbutton {
  top:10px!important;
  opacity:1!important;
  }
  
  .minimize .flyinclose {
  top:15px!important;
  transform:rotate(180deg);
  -ms-transform:rotate(180deg);
  -webkit-transform:rotate(180deg);
  }
  
  #flyin .free,#flyin .present_bottom,#flyin .present_top {
  display:block;
  position:absolute;
  left:50%;
  }
  
  #flyin .present_top {
  -webkit-transition:all .5s ease .5s;
  transition:all .5s ease .5s;
  width:100px;
  height:42px;
  margin-left:-50px;
  top:114px;
  background-image:url(//cdn.elegantthemes.com/images/flyin-present-top.png);
  }
  
  #flyin .present_bottom {
  width:108px;
  height:74px;
  margin-left:-54px;
  top:182px;
  background-image:url(//cdn.elegantthemes.com/images/flyin-present-bottom.png);
  }
  
  #flyin .free {
  -webkit-transition:all .5s ease 1s;
  transition:all .5s ease 1s;
  width:175px;
  height:82px;
  margin-left:-87px;
  top:133px;
  background-image:url(//cdn.elegantthemes.com/images/flyin-free.png);
  }
  
  .minimize .flyinclose {
  }
  .target.is-hidden {
    padding-top: 0;
    padding-bottom: 0;
    line-height: 0;
    pointer-events: none;
    display:none;
  }
  
.videocover {
    padding: 10px 10px 5px;
    position: absolute;
    bottom: 9px;
    right: 150px;
    font-size: 0.6em;
    color: #E51773;
    left: 0;
    text-align: center;
}
.videocover p {
    border-bottom: solid 1px #FFF;
    padding-bottom: 5px;
    letter-spacing: 0.09em;
    font-size: 2.1em;
    line-height: 1em;
    margin: 0;
    font-weight: bold;
}

.videocover img {
    width: 150px;
    margin-top: 6px;
}

.videocover .kigen{
  position: absolute;
  right: -120px;
  top: 20px;
  
}

.balloon1 {
  position: relative;
  padding-top: 16px;
  padding-left: 5px;
  width: 90px;
  height: 70px;
  line-height: 1.2em;
  border-radius: 50%;
  text-align: center;
  color: #ffffff;
  letter-spacing: 0.2em;
  font-size: 2em;
  font-weight: bold;
  background-color: #172a88;
  }
  
  .balloon1::before {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 2px;
  bottom: 2px;
  border-right: 20px solid #172a88;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(-45deg);
  }
  
  div#flyin:hover {
      transform: translateY(-5px);
      transition: all .5s;
  }
  