@charset "UTF-8";
/* =========================================================
 reset
========================================================= */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

body {
  line-height: 1;
}

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

ul, ol {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

pre, code, kbd, samp {
  font-family: monospace, serif;
}

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

button,
input,
select,
textarea {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 100%;
  color: #333333;
  margin: 0;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
}

input,
textarea {
  outline: none;
}

textarea {
  resize: vertical;
}

button {
  padding: 0;
  margin: 0;
  border: none;
  background: none;
  -webkit-appearance: none;
}

input::-ms-clear {
  visibility: hidden;
  display: none;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

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

select::-ms-value {
  color: currentColor;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

strong {
  font-weight: bold;
}

img {
  vertical-align: bottom;
  font-size: 0;
  line-height: 0;
  -ms-interpolation-mode: bicubic;
}

html {
  overflow-y: scroll;
}

:focus {
  outline: none;
}

::-webkit-input-placeholder {
  color: #ccc;
}

::-moz-placeholder {
  color: #ccc;
}

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

::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/* =========================================================
 base
========================================================= */
html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  color: #333333;
  line-height: 1.5;
  background-color: #fff;
  -ms-text-size-adjust: 100%;
      text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

a {
  color: #333333;
  text-decoration: none;
}

a:visited {
  color: #333333;
}

a:hover {
  color: #333333;
}

a:active {
  color: #333333;
}

a img {
  -webkit-transition: opacity, 300ms;
  transition: opacity, 300ms;
}

a:hover img {
  -ms-filter: "alpha(opacity=70)";
  filter: alpha(opacity=70);
  opacity: 0.7;
}

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

/* =========================================================
 utility
========================================================= */
/* clearfix */
.cf {
  *zoom: 1;
}

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

.cf:after {
  clear: both;
}

/* clear */
.clear {
  clear: both;
}

/* show hidden */
.only-pc {
  display: block;
}

.only-pc.-inline {
  display: inline-block;
}

.only-sp {
  display: none;
}

.only-sp.-inline {
  display: none;
}

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

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

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

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

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

.-valign-top {
  vertical-align: top;
}

.-valign-middle {
  vertical-align: middle;
}

.-valign-bottom {
  vertical-align: bottom;
}

.-float-left {
  float: left;
}

.-float-right {
  float: right;
}

.-float-none {
  float: none;
}

.-mt5 {
  margin-top: 5px;
}

.-mt10 {
  margin-top: 10px;
}

.-mt15 {
  margin-top: 15px;
}

.-mt20 {
  margin-top: 20px;
}

.-mt25 {
  margin-top: 25px;
}

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

.-mb5 {
  margin-bottom: 5px;
}

.-mb10 {
  margin-bottom: 10px;
}

.-mb15 {
  margin-bottom: 15px;
}

.-mb20 {
  margin-bottom: 20px;
}

.-mb25 {
  margin-bottom: 25px;
}

.-mb30 {
  margin-bottom: 30px;
}

.-ml5 {
  margin-left: 5px;
}

.-ml10 {
  margin-left: 10px;
}

.-ml15 {
  margin-left: 15px;
}

.-ml20 {
  margin-left: 20px;
}

.-ml25 {
  margin-left: 25px;
}

.-ml30 {
  margin-left: 30px;
}

.-mr5 {
  margin-right: 5px;
}

.-mr10 {
  margin-right: 10px;
}

.-mr15 {
  margin-right: 15px;
}

.-mr20 {
  margin-right: 20px;
}

.-mr25 {
  margin-right: 25px;
}

.-mr30 {
  margin-right: 30px;
}

@media screen and (max-width: 768px) {
  .only-pc {
    display: none;
  }
  .only-pc.-inline {
    display: none;
  }
  .only-sp {
    display: block;
  }
  .only-sp.-inline {
    display: inline-block;
  }
  .-sp-align-left {
    text-align: left;
  }
  .-sp-align-center {
    text-align: center;
  }
  .-sp-align-right {
    text-align: right;
  }
}
input[type=radio], input[type=checkbox] {
  display: none;
}

.radio, .checkbox {
    box-sizing: border-box;
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: inline-block;
    margin: 0 5px 4px 0;
    padding: 5px 10px 5px 40px;
    border-radius: 8px;
    vertical-align: middle;
    cursor: pointer;
}


.radio:after, .checkbox:after {
    -webkit-transition: border-color 0.2s linear;
    transition: border-color 0.2s linear;
    position: absolute;
    top: 50%;
    left: 15px;
    display: block;
    margin-top: -10px;
    width: 16px;
    height: 16px;
    border: 1px solid #bbb;
    content: '';
}

.radio:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 20px;
  display: block;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #53b300;
  content: '';
  opacity: 0;
}
input[type=radio]:checked + .radio:before {
  opacity: 1;
}

.checkbox:before {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    position: absolute;
    top: 50%;
    left: 21px;
    display: block;
    margin-top: -7px;
    width: 4px;
    height: 7px;
    border-right: 3px solid #528dab;
    border-bottom: 3px solid #528dab;
    content: '';
    opacity: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
input[type=checkbox]:checked + .checkbox:before {
  opacity: 1;
}
/* =========================================================
 layout
========================================================= */
/* header
--------------------------------------------------------- */



.l-header {
  width: 100%;
  height: 60px;
  min-width: 768px;
  background-color: #ffffff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  box-sizing: border-box;
  -webkit-transition: background-color 300ms;
  transition: background-color 300ms;
				box-shadow:0px 0px 11px -3px #4a4a4a;
-moz-box-shadow:0px 0px 11px -3px #4a4a4a;
-webkit-box-shadow:0px 0px 11px -3px #4a4a4a;

}
.l-header{
  box-shadow: none\9; /* IE10以下 */
}

@media all and (-ms-high-contrast: none){
  .l-header{
    box-shadow: none; /* IE10以上 */
  }
}
.logo {
  width: 250px;
  text-align: center;
  float: left;
  -webkit-transition: all 300ms;
  transition: all 300ms;
  margin-left: 20px;
}

.logo a {
width: 100%;
    padding: 10px 0 0px;
    display: inline-block;
}

.logo a img {
  width: 250px;
}

.global {
  font-size: 0;
  float: right;
}

.global-list {
  display: inline-block;
  vertical-align: top;
}

.global-item {
  display: inline-block;
  -webkit-transition: border-color 300ms;
  transition: border-color 300ms;
  position: relative;
}

.global-item:not(:last-child)::after {
    content: '/';
    font-size: 12px;
    color: #c8c8c8;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.global-item a {
  font-size: 13px;
  font-size: 1.3rem;
  color: #262525;
  letter-spacing: .1em;
  padding: 21px 14px 20px;
  display: block;
  font-weight: 500;
}

.global-item a:hover {
  text-decoration: underline;
}

.global-en {
  display: inline-block;
  background-color: #fff;
}

.global-en a {
  width: 60px;
  height: 60px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 60px;
  color: #fff;
  text-align: center;
  background-color: #073b53;
  display: block;
  -webkit-transition: opacity 300ms;
  transition: opacity 300ms;
  font-weight: 600;
}

.global-en a:hover {
  opacity: .8;
}
.fax {
    margin-left: 30px;
}

  body.home.not-scroll .l-header {
    background-color: transparent;
						box-shadow:noen;
-moz-box-shadow:none;
-webkit-box-shadow:none;
  }
  body.home.not-scroll .logo {
    opacity: 0;
    visibility: hidden;
  }
  body.home.not-scroll .global-item:not(:last-child) {
    border-color: rgba(0, 0, 0, 0.15);
  }
  body.home.not-scroll .global-item a {
    color: #fff;
  }


@media screen and (max-width: 768px) {
  .l-header {
    height: auto;
    min-width: 100%;
    background-color: #fff;
  }
  .header-inner {
    padding: 15px 0;
  }
  .logo {
    width: 155px;
    margin: 0 10px;
    float: none;
    -webkit-transition: all 300ms;
    transition: all 300ms;
  }
  .logo a {
    padding: 0;
    background-color: transparent;
  }
  .logo a img {
    width: 100%;
  }
  .menu {
    background-color: #151414;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 20;
  }
  .menu-btn {
    width: 56px;
    height: 56px;
    display: block;
    box-sizing: border-box;
    position: relative;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }
  .menu-btn.is-active {
    background-color: transparent;
  }
  .menu-btn.is-active .menu-line:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
        -ms-transform: translateY(9px) rotate(-45deg);
            transform: translateY(9px) rotate(-45deg);
  }
  .menu-btn.is-active .menu-line:nth-of-type(2) {
    opacity: 0;
    -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
            transform: translateX(10px);
  }
  .menu-btn.is-active .menu-line:nth-of-type(3) {
    -webkit-transform: translateY(-9px) rotate(45deg);
        -ms-transform: translateY(-9px) rotate(45deg);
            transform: translateY(-9px) rotate(45deg);
  }
  .menu-line {
    border-radius: 10px;
    display: inline-block;
    box-sizing: border-box;
    -webkit-transition: all 400ms;
    transition: all 400ms;
  }
  .menu-line {
    position: absolute;
    left: 16px;
    width: 26px;
    height: 3px;
    background-color: #fff;
  }
  .menu-line:nth-of-type(1) {
    top: 17px;
  }
  .menu-line:nth-of-type(2) {
    top: 26px;
  }
  .menu-line:nth-of-type(3) {
    top: 35px;
  }
  .global {
    width: 100%;
    height: calc( 100% - 0px);
    background-color: #151414;
    position: fixed;
    top: 0px;
    left: 0;
    box-sizing: border-box;
    overflow-y: scroll;
    z-index: 10;
    opacity: 0;
    display: none;
  }
  .global-inner {
    padding: 10px 20px;
  }
  .global-list {
        width: 80%;
    display: block;
    margin: 80px auto;
  }
  .global-item {
    width: 100%;
    border-bottom: 1px dotted #fff;
    display: block;
  }
  .global-item:not(:last-child)::after {
    display: none;
  }
  .global-item a {
    padding: 13px 7px;
    position: relative;
				color: #fff;
  }
  .global-item a::after {
    content: '';
    width: 6px;
    height: 6px;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%) rotate(45deg);
        -ms-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
    pointer-events: none;
  }
  .global-item a:hover {
    text-decoration: none;
  }

}

/* main
--------------------------------------------------------- */
.l-wrap {
  width: 100%;
  min-width: 1000px;
  overflow: hidden;
}

body.page .l-wrap {
  padding-top: 60px;
}

.l-inner-lv1 {
  width: 1000px;
  margin: 0 auto;
}

.l-inner-lv2 {
  width: 840px;
  margin: 0 auto;
}

.l-inner-lv3 {
  width: 720px;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .l-wrap {
    width: 100%;
    min-width: 100%;
  }
  body.page .l-wrap {
    padding-top: 56px;
  }
  .l-inner-lv1,
  .l-inner-lv2,
  .l-inner-lv3 {
    width: 95%;
    min-width: 95%;
  }
}

/* footer
--------------------------------------------------------- */
.l-footer {
padding: 80px 0;
    background-color: #1c222d;
    color: #fff;
    position: relative;
}

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

.l-footer .footcopy {
font-size: 16px;
margin-bottom: 20px;
}
.l-footer .telno {
width: 300px;
margin: 0 auto 10px;

}
.l-footer .teltxt {
font-size: 12px;
margin-bottom: 30px;
}

.l-footer .btnwrap a {
padding: 10px 60px 10px 60px;
margin: 0 auto;
    -moz-border-radius: 45px;
    -webkit-border-radius: 45px;
    border-radius: 45px;
				background: #fff;
    color: #1c222d;
    display: inline-block;
    font-size: 15px;
				font-weight: 500;
    text-decoration: none;
    position: relative;
}
.l-footer .btnwrap a:hover {
opacity: 0.5;
}


.copyright {
margin-top: 40px;
  font-size: 11px;
  font-size: 1.1rem;

}

/* =========================================================
 common
========================================================= */



.siteinfo {
  padding: 20px 20px 19px;
}

.siteinfo-name {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .1em;
  font-weight: bold;
  float: right;
}

.siteinfo-text {
  font-size: 11px;
  font-size: 1.1rem;
  letter-spacing: .05em;
  margin-right: 15px;
  margin-top: 3px;
  float: right;
  font-weight: 500;
}

.topicpath-item {
  font-size: 10px;
  font-size: 1rem;
  display: inline-block;
  position: relative;
}

.topicpath-item::after {
  content: '>';
  font-size: 10px;
  font-size: 1rem;
  padding: 0 1px 0 2px;
}

.topicpath-item:last-child::after {
  display: none;
}

.topicpath-item a {
  color: #159aaf;
  letter-spacing: .025em;
  text-decoration: underline;
}

.topicpath-item a:hover {
  text-decoration: none;
}




.c-table-row {
  width: 100%;
  display: table;
  border-bottom: 1px solid #cccccc;
}

.c-table-row:first-child {
  border-top: 1px solid #cccccc;
}

.c-table-row:nth-of-type(odd) {
  background-color: #f3f3f1;
}

.c-table-th {
  width: 170px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #545454;
  padding: 9px 13px;
  letter-spacing: .05em;
  display: table-cell;
  box-sizing: border-box;
}

.c-table-td {
  width: calc(100% - 170px);
  font-size: 14px;
  font-size: 1.4rem;
  color: #545454;
  line-height: 1.75;
  padding: 9px 13px;
  letter-spacing: .02em;
  display: table-cell;
  font-feature-settings: "palt";
}

.c-table-td a {
  color: #159aaf;
  text-decoration: underline;
}

.c-table-td a:hover {
  text-decoration: none;
}

.c-table-subsection:not(:last-child) {
  margin-bottom: 1em;
}

.c-summary-item {
  width: 260px;
  margin-right: 30px;
  margin-bottom: 80px;
  vertical-align: top;
}

.c-summary-item:nth-child(3n) {
  margin-right: 0;
}

.c-summary-photo {
  max-width: 260px;
  margin-bottom: 17px;
}

.c-summary-photo img {
  width: 100%;
  height: 164px;
  object-fit: cover;
}

.c-summary-photo .object-fit-img {
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.c-summary-title {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: .05em;
  padding-bottom: 11px;
  margin-bottom: 22px;
  text-align: center;
  position: relative;
}

.c-summary-title::after {
  content: '';
  width: 100px;
  height: 2px;
  background-color: #333;
  position: absolute;
  left: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

.c-summary-text {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .025em;
  line-height: 1.9;
  font-weight: 500;
}

.c-summary-link {
  margin-top: 24px;
}

.c-summary-link a {
  font-size: 13px;
  font-size: 1.3rem;
  text-align: center;
  letter-spacing: .025em;
  padding: 8px 0;
  border: 1px solid #333333;
  display: block;
  -webkit-transition: opacity, 300ms;
  transition: opacity, 300ms;
}

.c-summary-link a:hover {
  -ms-filter: "alpha(opacity=70)";
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.aside {
  padding-top: 60px;
  padding-bottom: 65px;
		clear: both;
}

.aside-banner-item {
  width: 190px;
  vertical-align: top;
}

.aside-banner-item:nth-child(5n) {
  margin-right: 0;
}

.m-btn-lv1 {
  text-align: center;
  display: inline-block;
}

.m-btn-lv1 a, .m-btn-lv1 button {
  width: 330px;
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  letter-spacing: .05em;
  padding: 11px 0;
  border-radius: 22px;
  background-color: #f03737;
  display: block;
  box-sizing: border-box;
  -webkit-transition: opacity 300ms;
  transition: opacity 300ms;
		cursor: pointer;
}

.m-btn-lv1 a:hover, .m-btn-lv1 button:hover {
  opacity: .7;
}

.m-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.m-flex-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.m-flex-start {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.m-flex-end {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.m-flex-vertical {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.-flex-wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.-flex-align-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.-flex-align-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

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

@media screen and (min-width: 769px) {
  .m-list {
    width: 100%;
    font-size: 0;
    letter-spacing: normal;
  }
  .m-list [class*="col"] {
    font-size: 16px;
    font-size: 1.6rem;
    display: inline-block;
    *zoom: 1;
  }
  .m-list .-col-2 {
    width: 50%;
  }
  .m-list .-col-3 {
    width: 33.333%;
  }
  .m-list .-col-4 {
    width: 25%;
  }
  .m-list .-col-5 {
    width: 20%;
  }
  .m-list .-col-6 {
    width: 16.6667%;
  }
  .m-list-item {
    vertical-align: top;
    display: inline-block;
    *zoom: 1;
  }
}

@media screen and (max-width: 768px) {
  .m-list.-sp {
    width: 100%;
    font-size: 0;
  }
  .m-list.-sp [class*="col-sm"] {
    font-size: 16px;
    font-size: 1.6rem;
    display: inline-block;
    *zoom: 1;
  }
  .m-list.-sp .-col-sm-1 {
    width: 100%;
  }
  .m-list.-sp .-col-sm-2 {
    width: 50%;
  }
  .m-list.-sp .-col-sm-3 {
    width: 33.333%;
  }
}

/* =========================================================
 page
========================================================= */
/* home
--------------------------------------------------------- */
.intro {
  width: 100%;
  height: 100vh;
  position: relative;
}

.intro-logo {
  width: 380px;
  position: absolute;
  top: 200px;
  left: 50px;
  z-index: 1;
}

.information {
color: #fff;
    border: #fff dotted 1px;
    width: 380px;
    position: absolute;
        top: 280px;
    left: 50px;
    z-index: 1;
    padding: 15px 20px;
}
.infotitle {
font-size: 16px;
}
.infodetail {
font-size: 13px;

}

.leadcopy {
  width: 40%;
  position: absolute;
  top: 46%;
  right: 50px;
  z-index: 1;
}
.leadcopy h1 {
    font-size: 32px;
    color: #fff;
    line-height: 1.2;
    margin-bottom: 15px;
    font-weight: 500;
    letter-spacing: 0.12em;
}

.leadcopy p {
 font-size: 13px;
	color: #fff;
	line-height: 1.8;
}


.intro-news {
  width: 100%;
  max-width: 1200px;
  padding: 0 40px;
  box-sizing: border-box;
  position: absolute;
  bottom: 40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
}

.intro-news-list {
  width: 100%;
  padding: 17px;
  background-color: rgba(255, 255, 255, 0.84);
  box-sizing: border-box;
}

.intro-news-item {
  margin-bottom: 7px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.intro-news-item:last-child {
  margin-bottom: 0;
}

.intro-news-label {
  min-width: 110px;
  font-size: 10px;
  font-size: 1rem;
  color: #fff;
  letter-spacing: .025em;
  text-align: center;
  vertical-align: middle;
  margin-right: 14px;
  padding: 6px 0 5px;
  display: inline-block;
}


.intro-vegas {
  width: 100%;
  height: 100%;
  position: relative;
}

.intro-vegas-item {
  width: 100%;
  height: 100%;
  position: relative;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.intro-vegas-item.-item01 {
  background-image: url(../images/home/mainvisual01.jpg);
}

.home-index {
  padding-top: 140px;
  padding-bottom: 80px;
}

.home-index-item {
  margin-bottom: 52px;
  width: 318px;
  vertical-align: top;
  margin-right: 23px;
  margin-bottom: 80px;
}

.home-index-item:nth-child(3n) {
  margin-right: 0;
}

.home-index-item a {
  display: block;
}

.home-index-thumb {
  margin-bottom: 18px;
  /*img {
		width: 100%;
		height: 170px;
		object-fit: cover;
	}
	.object-fit-img {
		object-fit: cover;
		font-family: 'object-fit: cover;'
	}*/
}

/* sec01
--------------------------------------------------------- */


#sec01 {
    background:url(../images/home/leadbg.png) no-repeat;
    position: relative;
    top: -150px;
				padding-bottom: 100px;
				    background-size: cover;
								margin-bottom: -150px;
}
#sec01 .inner {
width: 900px;
margin: 0 auto;
}

#sec01 h2 {
text-align: center;
    padding-top: 200px;
				font-weight: 600;
				font-size: 20px;
				letter-spacing: 0.025em;
				color: #fff;
				padding-bottom: 15px;
    margin-bottom:80px;
				position: relative;
}
#sec01 h2::after {
    content: '';
    width: 110px;
    height: 3px;
				border-radius: 2px;
    background-color: #fff;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

#sec01 .seccopy {
font-size: 30px;
margin-bottom: 80px;
				font-weight: 600;
				letter-spacing: 0.025em;
				color: #fff;
				text-align: center;
}

#sec01 li {
width: 260px;
display: inline-block;
color: #fff;
margin: 0 15px 60px;

}
#sec01 li .title {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
    margin-bottom: 15px;
    letter-spacing: 0.08em;
}
#sec01 li p {
font-size: 13px;
    line-height: 1.8;
    margin: 0 6px;
				font-weight: 300;
}

.merit {
    width: 260px;
    display: inline-block;
				color: #fff;
				margin: 0 15px 40px;
				position: relative;
				vertical-align: top;
}


.merit .flimg2 {
    width: 60px;
    position: absolute;
    top: 60px;
    right: 10px;
}

.merit .flimg3 {
    width: 60px;
    position: absolute;
    top: 60px;
    right: 10px;
}
.merit p {
    font-size: 13px;
    line-height: 1.8;
    margin-right: 70px;
    margin-left: 10px;
				font-weight: 300;
}
.merit p.full {
    font-size: 13px;
    line-height: 1.8;
    margin-right: 0px;
    margin-left: 5px;
}

/* sec02
--------------------------------------------------------- */


#sec02 {
   
    position: relative;
				padding-bottom: 100px;
}
#sec02 .inner {
width: 900px;
margin: 0 auto;
position: relative;
}

#sec02 h2 {
text-align: center;
    font-weight: 600;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #3587c0;
    padding-bottom: 15px;
				    margin-top: 40px;
    margin-bottom: 80px;
    position: relative;
}
#sec02 h2::after {
    content: '';
    width: 110px;
    height: 3px;
    border-radius: 2px;
    background-color: #3587c0;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

#sec02 .seccopy {
font-size: 28px;
margin-bottom: 80px;
				font-weight: 600;
				letter-spacing: 0.025em;
				color: #3587c0;
				text-align: left;
}

#sec02 li {
    width: 210px;
    height: 160px;
    display: inline-block;
    color: #3587c0;
    margin: 0 25px 40px;
				vertical-align: top;
				position: relative;
}

#sec02 li:nth-child(3n) {

    margin: 0 0px 40px 25px;
}

#sec02 li .title {
font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 10px;
    text-align: center;
				font-weight: 600;
				    padding-top: 30px;
}
#sec02 li p {
font-size: 13px;
    line-height: 1.6;
    margin: 0 6px;
}
#sec02 ul {
margin-left: 120px;
}
#sec02 .flimg1 {
    position: absolute;
    top: 320px;
    left: 5px;
    width: 80px;
}
#sec02 .flimg2 {
    position: absolute;
    top: 500px;
    left: 3px;
    width: 140px;
}



.flow1 {
background: url(../images/home/sec02_no01.png) center no-repeat;
background-size: contain;
}
.flow1::before {
    content: '';
    background: url(../images/home/sec02_arrow.png) center no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    position: absolute;
    top: 65px;
    left: -40px;
}



.flow2 {
background: url(../images/home/sec02_no02.png) center no-repeat;
background-size: contain;
}
.flow2::before {
    content: '';
    background: url(../images/home/sec02_arrow.png) center no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    position: absolute;
    top: 65px;
    left: -40px;
}
.flow3 {
background: url(../images/home/sec02_no03.png) center no-repeat;
background-size: contain;
}
.flow3::before {
    content: '';
    background: url(../images/home/sec02_arrow.png) center no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    position: absolute;
    top: 65px;
    left: -40px;
}
.flow3::after {
    content: '';
    background: url(../images/home/sec02_arrow3.png) center no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    position: absolute;
    top: 167px;
    left: 92px;
}
.flow4 {
background: url(../images/home/sec02_no04.png) center no-repeat;
background-size: contain;
}
.flow4::before {
    content: '';
    background: url(../images/home/sec02_arrow2.png) center no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    position: absolute;
    top: 65px;
    left: -40px;
}
.flow5 {
background: url(../images/home/sec02_no05.png) center no-repeat;
background-size: contain;
}
.flow5::before {
    content: '';
    background: url(../images/home/sec02_arrow2.png) center no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    position: absolute;
    top: 65px;
    left: -40px;
}
.flow6 {
background: url(../images/home/sec02_no06.png) center no-repeat;
background-size: contain;
}
.flow6::before {
    content: '';
    background: url(../images/home/sec02_arrow2.png) center no-repeat;
    background-size: contain;
    width: 26px;
    height: 26px;
    position: absolute;
    top: 65px;
    left: -40px;
}
/* sec03
--------------------------------------------------------- */


#sec03 {
   
    position: relative;
				padding-bottom: 100px;
}
#sec03 .inner {
width: 840px;
margin: 0 auto;
position: relative;
}

#sec03 h2 {
text-align: center;
    font-weight: 600;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #3587c0;
    padding-bottom: 15px;
    margin-bottom: 60px;
    position: relative;
}
#sec03 h2::after {
    content: '';
    width: 110px;
    height: 3px;
    border-radius: 2px;
    background-color: #3587c0;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}


#sec03 li {
    width: 380px;
    display: inline-block;
				color: #fff;
				margin: 0 15px 60px;
				position: relative;
				vertical-align: top;
}


#sec03 li .flimg {
    width: 50px;
    position: absolute;
    top: 80px;
    right: 10px;
}
#sec03 li .title {
margin-bottom: 15px;
}


#sec03 li p {
    font-size: 14px;
    line-height: 1.8;
    margin-right: 70px;
    margin-left: 20px;
				    color: #4394d0;

}
/* sec04
--------------------------------------------------------- */


#sec04 {
   
    position: relative;
				padding-bottom: 100px;
}
#sec04 .inner {
width: 840px;
margin: 0 auto;
position: relative;
}

#sec04 h2 {
text-align: center;
    font-weight: 600;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #3587c0;
    padding-bottom: 15px;
    margin-bottom: 60px;
    position: relative;
}
#sec04 h2::after {
    content: '';
    width: 110px;
    height: 3px;
    border-radius: 2px;
    background-color: #3587c0;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.a_ico{
width: 40px;
float: left;
    margin-left: 13px;
}
.a_ico img{
width: 100%;

}
/* sec05
--------------------------------------------------------- */


#sec05 {
    background:url(../images/home/outline_bg.png) no-repeat;
    position: relative;
				padding-bottom: 80px;
				    background-size: cover;
									color: #fff;
}
#sec05 .inner {
width: 900px;
margin: 0 auto;
}

#sec05 h2 {
text-align: center;
    padding-top: 200px;
				font-weight: 600;
				font-size: 20px;
				letter-spacing: 0.025em;
				color: #fff;
				padding-bottom: 15px;
    margin-bottom:80px;
				position: relative;
}
#sec05 h2::after {
    content: '';
    width: 110px;
    height: 3px;
				border-radius: 2px;
    background-color: #fff;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

#sec05 .seccopy {
font-size: 30px;
margin-bottom: 80px;
				font-weight: 600;
				letter-spacing: 0.025em;
				color: #fff;
				text-align: center;
}
.message {
width: 47%;
float: left;
}

.message .messagecopy {
font-size: 18px;
font-weight: 600;
margin-bottom: 18px;
}
.message p{
font-size: 13px;
font-weight: 400;
margin-bottom: 14px;
line-height: 2.2;
}
.message p.job{
font-size: 12px;
text-align: right;
font-weight: 400;
margin-bottom: 0px;
line-height: 1.4;
}
.message p.name{
font-size: 17px;
text-align: right;
font-weight: 500;
margin-bottom: 10px;
line-height:1.4;
}

.outline {
width: 47%;
float: right;
}
.outline dt {
    width: 7em;
    padding: 12px 0 10px 8px;
    float: left;
    clear: left;
}
.outline dd {
    padding: 12px 8px 10px 8em;
    border-bottom: 1px dotted #fff;
}

.outline dl {
    display: block;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    margin: 20px 0px 20px 0px;
    font-size: 88%;
    line-height: 1.6;
    clear: both;
}


/* works
--------------------------------------------------------- */

#bgwrap {
width:100%;
position: absolute;
z-index:-99;
}
#bgwrap img {
width:100%;
}
#workswrap {
position: relative;
    padding-bottom: 100px;
    top: 150px;
    margin-bottom: 100px;

}

#workswrap:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 120%;
  height: 80%;
  margin: 2% -10% 0;
  background: #fff;
  -webkit-transform-origin: right center;
  -ms-transform-origin: right center;
  transform-origin: right center;
  -webkit-transform: rotate(-3deg);
  -ms-transform: rotate(-3deg);
  transform: rotate(-3deg);
  z-index: 1;
}
#workswrap .inner {
width: 900px;
margin: 0 auto;
z-index: 2;
    position: relative;
}


#workswrap h2 {
text-align: center;
    font-weight: 600;
    padding-top: 150px;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #3587c0;
    padding-bottom: 15px;
    margin-bottom: 80px;
    position: relative;
}
#workswrap h2::after {
    content: '';
    width: 110px;
    height: 3px;
    border-radius: 2px;
    background-color: #3587c0;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

#workswrap .seccopy {
font-size: 20px;
margin-bottom: 80px;
				font-weight: 600;
				letter-spacing: 0.025em;
				color: #3587c0;
				text-align: left;
}

#workswrap li {
    width: 276px;
    display: inline-block;
    color: #3587c0;
    margin-right: 30px;
				margin-bottom: 50px;
				vertical-align: top;
				position: relative;
}
#workswrap li:nth-child(3n) {

    margin-right: 0px;

}
#works .intro-logo {

    top: 80px;

}
#workswrap li img {
   margin-bottom: 14px;
}
#workswrap li dt {
    width: 7em;
    padding: 5px 0 0px 2px;
    float: left;
    clear: left;
				font-size: 13px;
				color: #333;
}
#workswrap li dd {
    padding: 5px 0px 0px 7em;
				font-size: 13px;
				color: #333;
}
/* inquiry
--------------------------------------------------------- */

#inquirywrap {
position: relative;
    padding-bottom: 100px;
    top: 150px;
    margin-bottom: 100px;

}

#inquirywrap:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 120%;
  height: 80%;
  margin: 2% -10% 0;
  background: #fff;
  -webkit-transform-origin: right center;
  -ms-transform-origin: right center;
  transform-origin: right center;
  -webkit-transform: rotate(-3deg);
  -ms-transform: rotate(-3deg);
  transform: rotate(-3deg);
  z-index: 1;
}
#inquirywrap .inner {
width: 900px;
margin: 0 auto;
z-index: 2;
    position: relative;
}


#inquirywrap h2 {
text-align: center;
    font-weight: 600;
    padding-top: 150px;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #3587c0;
    padding-bottom: 15px;
    margin-bottom: 80px;
    position: relative;
}
#inquirywrap h2::after {
    content: '';
    width: 110px;
    height: 3px;
    border-radius: 2px;
    background-color: #3587c0;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
#inquirywrap .seccopy {
font-size: 20px;
margin-bottom: 80px;
				font-weight: 600;
				letter-spacing: 0.025em;
				color: #3587c0;
				text-align: left;
}

#inquirywrap .lead-text {
;
margin-bottom: 40px;
font-size: 14px;
line-height: 1.8;
}
.hred {
color: #E30003;
}

#inquirywrap .message {
    width: 100%;
    float: none;
    margin-bottom: 20px;
}



/* form
--------------------------------------------------------- */
.form-table {
  margin-bottom: 60px;
}

.form-table .c-table-th,
.form-table .c-table-td {
  padding: 15px 13px;
}
#confirm td,
#confirm th {
  padding: 15px 13px;
		font-size: 13px;
  font-size: 1.3rem;
  margin-bottom: 8px;
		border-top: 1px dotted #333;
		text-align: left;
}
.form table {
  width: 100%;
}
#submit{
    width: 330px;
    font-size: 16px;
    font-size: 1.6rem;
    color: #fff;
    letter-spacing: .05em;
    padding: 11px 0;
    border-radius: 22px;
    background-color: #f03737;
    display: block;
    box-sizing: border-box;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
margin: 10px auto;

}
#myreset {
    width: 330px;
    font-size: 16px;
    font-size: 1.6rem;
    color: #fff;
    letter-spacing: .05em;
    padding: 11px 0;
    border-radius: 22px;
    background-color: #333;
    display: block;
    box-sizing: border-box;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
margin: 10px auto;
}
.form-text {
  font-size: 13px;
  font-size: 1.3rem;
  margin-bottom: 8px;
}

.form-item {
  position: relative;
}

.form-list .form-item {
  margin: 0 0 10px;
}

.form-list.-horizontal .form-item {
  margin: 0 20px 0 0;
  display: inline-block;
}

.form-list.-number .form-item {
  margin: 0 20px 0 0;
  display: inline-block;
}

.form-list.-number .form-item:not(:last-child)::after {
  content: '';
  width: 10px;
  height: 1px;
  background-color: #d5d5d5;
  position: absolute;
  top: 50%;
  right: -17px;
  box-sizing: border-box;
}

.form-input,
.form-textarea {
  width: 100%;
  font-size: 13px;
  font-size: 1.3rem;
  color: #333;
  padding: 5px 8px;
  border: 1px solid #d5d5d5;
  background-color: #fff;
  box-sizing: border-box;
  -webkit-transition: border-color 500ms;
}

.form-input.-size-xs,
.form-textarea.-size-xs {
  width: 70px;
}

.form-input.-size-s,
.form-textarea.-size-s {
  width: 100px;
}

.form-input.-size-m,
.form-textarea.-size-m {
  width: 150px;
}

.form-input.-size-l,
.form-textarea.-size-l {
  width: 220px;
}

.form-input.-size-xl,
.form-textarea.-size-xl {
  width: 350px;
}

.form-textarea {
  height: 120px;
  vertical-align: top;
}

.form-select {
  width: 120px;
  position: relative;
}

.form-select::after {
  content: '';
  width: 6px;
  height: 6px;
  border-right: 2px solid #666;
  border-top: 2px solid #666;
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -5px;
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg);
  z-index: 1;
  pointer-events: none;
}

.form-select select {
  font-size: 13px;
  font-size: 1.3rem;
  height: 36px;
  padding: 0 14px;
  border: 1px solid #d5d5d5;
  background-color: #fff;
}

.form-submit {
  text-align: center;
}
.wtn_copyright {
	display: none;
}
#confirm strong {
    color: #d70808;
    font-weight: bold;
}
#confirm table{
    width: 100%;
}



@media screen and (max-width: 768px) {
body.home.not-scroll .global-item:not(:last-child) {
    border-color: #f3f3f1;
}
.l-main {
    position: relative;
    top: -60px;
				margin-bottom:-60px;
}
.intro-logo {
    width: 300px;
    position: relative;
    top: 300px;
    left: 0px;
    margin: 0 auto;
    z-index: 1;
}
.header-inner {
    padding: 11px 0;
}
.leadcopy h1 {
    font-size: 24px;
    color: #fff;
    line-height: 1.2;
    margin-bottom: 15px;
    font-weight: 600;
    letter-spacing: 0.08em;
}
.leadcopy {
    width: 80%;
    position: absolute;
    top: 500px;
    margin: 0 auto;
    right: 0;
    left: 0;
    z-index: 1;
}
.information {
    color: #fff;
    border: #fff dotted 1px;
    width: 90%;
    position: absolute;
    top: 380px;
    left: 50px;
    z-index: 1;
    padding: 15px 20px;
    box-sizing: border-box;
}
#sec01 .inner {
    width: 92%;
    margin: 0 auto;
}
#sec01 li {
    width: 30.9%;
    display: inline-block;
    color: #fff;
    margin: 0 1% 60px;
}

.merit {
    width: 30.9%;
    display: inline-block;
    color: #fff;
    margin: 0 1% 40px;
    position: relative;
    vertical-align: top;
}

#sec02 .inner {
    width: 92%;
    margin: 0 auto;
    position: relative;
}
#sec02 li {
    width: 27%;
    height: 160px;
    display: inline-block;
    color: #3587c0;
    margin: 0 18px 40px;
    vertical-align: top;
    position: relative;
}
#sec02 li p {
    font-size: 12px;
    line-height: 1.6;
    margin: 0 6px;
}

.flow1::before {
       width: 20px;
    height: 20px;
    top: 65px;
    left: -30px;
}
.flow2::before {
       width: 20px;
    height: 20px;
    top: 65px;
    left: -30px;
}

.flow3::before {
       width: 20px;
    height: 20px;
    top: 65px;
    left: -30px;
}

.flow4::before {
       width: 20px;
    height: 20px;
    top: 65px;
    left: -30px;
}

.flow5::before {
       width: 20px;
    height: 20px;
    top: 65px;
    left: -30px;
}
.flow6::before {
       width: 20px;
    height: 20px;
    top: 65px;
    left: -30px;
}



.flow3::after {
    width: 20px;
    height: 20px;
    top: 167px;
    left: 70px;
}


#sec03 .inner {
    width: 92%;
    margin: 0 auto;
    position: relative;
}

#sec03 li {
    width: 45%;
    display: inline-block;
    color: #fff;
    margin: 0 2% 60px;
    position: relative;
    vertical-align: top;
}

#sec04 .inner {
    width: 92%;
    margin: 0 auto;
    position: relative;
}

#sec05 .inner {
    width: 92%;
    margin: 0 auto;
}

.outline dl {
    display: block;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    margin: 20px 0px 20px 0px;
    font-size: 12px;
    line-height: 1.6;
    clear: both;
}

.message p {
    font-size: 12px;
    font-weight: 400;
    margin-bottom: 14px;
    line-height: 2.2;
}

#bgwrap {
    width: 100%;
    position: relative;
    z-index: -99;
}

#workswrap .inner {
    width: 92%;
    margin: 0 auto;
    z-index: 2;
    position: relative;
}
#workswrap {
    position: relative;
    padding-bottom: 100px;
    top: 0px;
    margin-bottom: 0px;
}
#workswrap h2 {
    text-align: center;
    font-weight: 600;
    padding-top: 60px;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #3587c0;
    padding-bottom: 15px;
    margin-bottom: 80px;
    position: relative;
}
#workswrap li {
    width: 30%;
    display: inline-block;
    color: #3587c0;
    margin-right: 30px;
    margin-bottom: 50px;
    vertical-align: top;
    position: relative;
}
#workswrap li dt {
    width: 7em;
    padding: 5px 0 0px 2px;
    float: left;
    clear: left;
    font-size: 11px;
    color: #333;
}
#workswrap li dd {
    padding: 5px 0px 0px 7em;
    font-size: 11px;
    color: #333;
}
#works .intro-logo {
    top: 170px;
}


#inquirywrap .inner {
    width: 92%;
    margin: 0 auto;
    z-index: 2;
    position: relative;
}
#inquirywrap {
    position: relative;
    padding-bottom: 100px;
    top: 0px;
    margin-bottom: 0px;
}
#inquirywrap h2 {
    text-align: center;
    font-weight: 600;
    padding-top: 60px;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #3587c0;
    padding-bottom: 15px;
    margin-bottom: 80px;
    position: relative;
}
#inquiry .intro-logo {
    top: 170px;
}

}


@media screen and (max-width: 500px) {

.leadcopy h1 {
    font-size: 18px;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 15px;
    font-weight: 600;
    letter-spacing: 0.08em;
}
.leadcopy {
    width: 80%;
    position: absolute;
    top: 380px;
    margin: 0 auto;
    right: 0;
    left: 0;
    z-index: 1;
}
.information {
    color: #fff;
    border: #fff dotted 1px;
    width: 90%;
    position: absolute;
    top: 280px;
    left: 20px;
    box-sizing: border-box;
    z-index: 1;
    padding: 15px 20px;
}
.infodetail {
    font-size: 11px;
}
.infotitle {
    font-size: 13px;
}


.leadcopy p {
    font-size: 12px;
    color: #fff;
    line-height: 1.7;
}
.intro-logo {
width: 260px;
    position: relative;
    top: 220px;
    left: 0px;
    margin: 0 auto;
    z-index: 1;
}
#sec01 {
    background: url(../images/home/leadbg2.png) no-repeat;
    position: relative;
    top: -180px;
    padding-bottom: 100px;
    background-size: cover;
    margin-bottom: -180px;
}
#sec01 h2 {
    text-align: center;
    padding-top: 250px;
    font-weight: 600;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #fff;
    padding-bottom: 15px;
    margin-bottom: 40px;
    position: relative;
}



.home-index-item {
    width: 100%;
    vertical-align: top;
    margin-right: 0px;
    margin-bottom: 60px;
    display: block;
}

.c-table-th {
    width: 100px;
    font-size: 14px;
    font-size: 1.2rem;
    color: #545454;
    padding: 9px 13px;
    letter-spacing: .05em;
    display: table-cell;
    box-sizing: border-box;
}
.outline-table-define dt {
    width: 100px;
    float: left;
    clear: both;
}
.outline-table-define dd {
    padding-left: 120px;
}


.c-table-td {
    width: calc(100% - 200px);
    font-size: 14px;
    font-size: 1.2rem;
    color: #545454;
    line-height: 1.75;
    padding: 9px 13px;
    letter-spacing: .05em;
    display: table-cell;
}
.aside-banner-item {
    width: 50%;
    vertical-align: top;
    float: left;
}
.aside-banner-list {
    display: block;

}
.l-footer {
    padding: 70px 0;
    clear: both;
}
.licence-row {
    display: block;
}
.licence-col {
    width: 100%;
    display: block;
}
.c-summary-photo img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
.c-summary-photo {
    max-width: 100%;
    margin-bottom: 17px;
}
.c-summary-item {
    width: 100%;
    margin-right: 1%;
    margin-bottom: auto;
    vertical-align: top;
    display: block;
    margin-bottom: 30px;
}
.lead-copy.-large {
    font-size: 25px;
    font-size: 2.2rem;
    line-height: 1.4;
    margin-bottom: 45px;
}
#sec01 .seccopy {
    font-size: 20px;
    margin-bottom: 0px;
    font-weight: 600;
    letter-spacing: 0.025em;
    color: #fff;
    text-align: center;
}
#sec01 .inner {
    width: 90%;
    margin: 0 auto;
}
#sec01 li {
    width: 80%;
    display: block;
    color: #fff;
    margin: 0 auto 20px;
}
.merit {
    width: 80%;
    display: block;
    color: #fff;
    margin: 0 auto 40px;
    position: relative;
    vertical-align: top;
}
#sec02 .inner {
    width: 90%;
    margin: 0 auto;
    position: relative;
}
#sec02 li {
    width: 80%;
    height: 160px;
    display: block;
    color: #3587c0;
    margin: 0 auto 40px;
    vertical-align: top;
    position: relative;
}
#sec01 ul {
    margin-bottom: 40px;
}
#sec02 .seccopy {
    font-size: 20px;
    margin-bottom: 80px;
    font-weight: 600;
    letter-spacing: 0.025em;
    color: #3587c0;
    text-align: left;
}
#sec02 .flimg1 {
    display: none;

}
#sec02 .flimg2 {
    display: block;
    position: relative;
    top: 0;
    left: 15px;
    margin: 0 auto;

}
#sec02 ul {
    margin-left: 0px;
}
#sec03 li {
    width: 90%;
    display: block;
    color: #fff;
    margin: 0 auto 40px;
    position: relative;
    vertical-align: top;
}
#sec04 iframe{

height:250px;
}
#sec04 {
    position: relative;
    padding-bottom: 60px;
}
#sec05 h2 {
    text-align: center;
    padding-top: 140px;
    font-weight: 600;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #fff;
    padding-bottom: 15px;
    margin-bottom: 80px;
    position: relative;
}
.message {
    width: 90%;
    float: none;
    margin: 0 auto 40px;
}
.outline {
    width: 90%;
    float: none;
    margin: 0 auto 40px;
}

.flow1::before {
    background: url(../images/home/sec02_arrow3.png) center no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    top: 170px;
    left: 46%;
}
.flow2::before {
    background: url(../images/home/sec02_arrow3.png) center no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    top: 170px;
    left: 46%;
}
.flow3::before {
    background: url(../images/home/sec02_arrow3.png) center no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    top: 170px;
    left: 46%;
}
.flow4::before {
    background: url(../images/home/sec02_arrow3.png) center no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    top: 170px;
    left: 46%;
}
.flow5::before {
    background: url(../images/home/sec02_arrow3.png) center no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    top: 170px;
    left: 46%;
}
.flow6::before {
    background: url(../images/home/sec02_arrow3.png) center no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    top: 170px;
    left: 46%;
}
.flow3::after {
  display: none;
}
#sec02 li:nth-child(3n) {
    margin: 0 auto 40px;
}

#works .intro-logo {
    top: 100px;
    width: 180px;
}
#inquiry .intro-logo {
    top: 100px;
    width: 180px;
}
#workswrap .seccopy {
    font-size: 16px;
    margin-bottom: 80px;
    font-weight: 600;
    letter-spacing: 0.025em;
    color: #3587c0;
    text-align: left;
}
#workswrap .seccopy br {
display: none;
}
#workswrap li {
    width: 100%;
    display: inline-block;
    color: #3587c0;
    margin-right: 30px;
    margin-bottom: 50px;
    vertical-align: top;
    position: relative;
}
.form-input.-size-s, .form-textarea.-size-s {
    width: 50px;
}
.form-input.-size-xl, .form-textarea.-size-xl {
    width: 260px;
}
#inquirywrap h2 {
    text-align: center;
    font-weight: 600;
    padding-top: 60px;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #3587c0;
    padding-bottom: 15px;
    margin-bottom: 40px;
    position: relative;
}
#inquirywrap .seccopy {
    font-size: 16px;
    margin-bottom: 30px;
    font-weight: 600;
    letter-spacing: 0.025em;
    color: #3587c0;
    text-align: left;
}
#workswrap h2 {
    text-align: center;
    font-weight: 600;
    padding-top: 57px;
    font-size: 20px;
    letter-spacing: 0.025em;
    color: #3587c0;
    padding-bottom: 15px;
    margin-bottom: 40px;
    position: relative;
}
#workswrap .seccopy {
    font-size: 16px;
    margin-bottom: 40px;
    font-weight: 600;
    letter-spacing: 0.025em;
    color: #3587c0;
    text-align: left;
}
}
@media screen and (max-width:375px) {

.form-table .c-table-th, .form-table .c-table-td {
    padding: 10px 5px;
}
.form-input.-size-s, .form-textarea.-size-s {
    width: 50px;
}
.form-input.-size-xl, .form-textarea.-size-xl {
    width: 200px;
}
.form-input, .form-textarea {
    width: 100%;
    font-size: 13px;
    font-size: 1.3rem;
    color: #333;
    padding: 3px 4px;
    border: 1px solid #d5d5d5;
    background-color: #fff;
    box-sizing: border-box;
    -webkit-transition: border-color 500ms;
}
}


.btn-works{
    width: 164px;
    position: fixed;
    z-index: 3;
    top: 80px;
    right: 40px;
}

.btn-works-sp{
display: none;
}
@media screen and (max-width:650px) {
  
  .btn-works-sp{
display: block;
    position: fixed;
    width: 100%;
    bottom: 0;
        z-index: 3;
}
.btn-works{
display: none;
}

}