@charset "UTF-8";
/*ーーーーーーーーーー

共通

ーーーーーーーーーーー*/
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;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  font-size: 14px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: normal;
  box-sizing: border-box;
}

@media (min-width: 767px) {
  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 {
    font-size: 15px;
  }
}

html img, body img, div img, span img, object img, iframe img, h1 img, h2 img, h3 img, h4 img, h5 img, h6 img, p img, blockquote img,
pre img, abbr img, address img, cite img, code img, del img, dfn img, em img, img img, ins img, kbd img, q img, samp img, small img,
strong img, sub img, sup img, var img, b img, i img, dl img, dt img, dd img, ol img, ul img, li img, fieldset img, form img, label img,
legend img, table img, caption img, tbody img, tfoot img, thead img, tr img, th img, td img, article img, aside img,
canvas img, details img, figcaption img, figure img, footer img, header img, hgroup img, menu img, nav img,
section img, summary img, time img, mark img, audio img, video img {
  max-width: 100%;
  height: auto;
}

html p, body p, div p, span p, object p, iframe p, h1 p, h2 p, h3 p, h4 p, h5 p, h6 p, p p, blockquote p,
pre p, abbr p, address p, cite p, code p, del p, dfn p, em p, img p, ins p, kbd p, q p, samp p, small p,
strong p, sub p, sup p, var p, b p, i p, dl p, dt p, dd p, ol p, ul p, li p, fieldset p, form p, label p,
legend p, table p, caption p, tbody p, tfoot p, thead p, tr p, th p, td p, article p, aside p,
canvas p, details p, figcaption p, figure p, footer p, header p, hgroup p, menu p, nav p,
section p, summary p, time p, mark p, audio p, video p {
  font-size: 20px;
}

@media (max-width: 767px) {
  html p, body p, div p, span p, object p, iframe p, h1 p, h2 p, h3 p, h4 p, h5 p, h6 p, p p, blockquote p,
  pre p, abbr p, address p, cite p, code p, del p, dfn p, em p, img p, ins p, kbd p, q p, samp p, small p,
  strong p, sub p, sup p, var p, b p, i p, dl p, dt p, dd p, ol p, ul p, li p, fieldset p, form p, label p,
  legend p, table p, caption p, tbody p, tfoot p, thead p, tr p, th p, td p, article p, aside p,
  canvas p, details p, figcaption p, figure p, footer p, header p, hgroup p, menu p, nav p,
  section p, summary p, time p, mark p, audio p, video p {
    line-height: 2;
    font-size: 20px;
  }
}

body {
  line-height: 1.8;
  font-weight: 400;
  font-family: fot-tsukuardgothic-std,sans-serif;
  font-weight: 400;
  font-style: normal;
  font-weight: 500;
  font-style: normal;
  width: 100%;
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
  min-height: 100vh;
  position: relative;
}

body .mincho {
  font-family: "Yu Mincho", "YuMincho", serif;
}

body .gothic {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-style: normal;
}

body img {
  max-width: 100%;
}

main {
  width: 100%;
}

.con {
  max-width: 1100px;
  margin: auto;
}

@media (max-width: 1024px) {
  .con {
    max-width: 94%;
  }
}

.pc_only {
  display: block;
}

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

.sp_only {
  display: none;
}

@media (max-width: 767px) {
  .sp_only {
    display: block;
  }
}

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

ul, ol {
  list-style: none;
}

a {
  text-decoration: none;
  color: #000;
  -webkit-transition: all .6s ease 0s;
  transition: all .6s ease 0s;
}

a:hover {
  opacity: .8;
}

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

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

.txt_right {
  text-align: right;
}

.txt_center {
  text-align: center;
}

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

.bold {
  font-weight: bold;
}

.pb1 {
  padding-bottom: 1%;
}

.pt3 {
  padding-top: 3%;
}

.pb3 {
  padding-bottom: 3%;
}

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

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

.mb20 {
  margin-bottom: 20px;
}

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

@media (max-width: 767px) {
  .w90 {
    width: 90% !important;
  }
}

h3.jp {
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  position: relative;
  padding-bottom: 30px;
}

.btn {
  text-align: center;
  padding: 50px 0 0;
}

@media (max-width: 767px) {
  .btn {
    padding: 30px 0 0;
  }
}

.btn a {
  background: #D6D6D6;
  padding: 1em 1.5em;
  color: #fff;
  font-weight: bold;
  border-radius: 10px;
  font-size: 20px;
  display: inline-block;
}

.futura {
  font-family: futura-pt, sans-serif;
  font-weight: 600;
  font-style: normal;
}

section {
  width: 100%;
}

.max_wrap {
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
}

.flex_wrap {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media (max-width: 767px) {
  .flex_wrap {
    display: block;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.cm_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;
}

.ttl_n {
  text-align: center;
  color: #0068C1;
  font-size: 40px;
  font-weight: bold;
}

@media (max-width: 767px) {
  .ttl_n {
    font-size: 36px;
  }
}

.note {
  text-align: right;
  font-size: 15px;
  margin-top: 20px;
}

.note_list li {
  font-size: 15px;
  padding-left: 1em;
  text-indent: -1em;
}

.btn_wrap a {
  background: #000467;
  color: #fff;
  font-weight: bold;
  padding: .8em 1.5em;
  white-space: nowrap;
}

.ttl_be {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
}

.ttl_be:before, .ttl_be:after {
  border-top: 1px solid;
  content: "";
  width: 3em;
  /* 線の長さ */
}

.ttl_be:before {
  margin-right: 1em;
}

.ttl_be:after {
  margin-left: 1em;
}

/*ーーーーーーーーーー
header
ーーーーーーーーーーー*/
header .contact {
  position: absolute;
  top: 13px;
  right: 20px;
  width: 120px;
  text-align: center;
}

@media (max-width: 767px) {
  header .contact {
    position: static;
    width: 60%;
    margin: auto;
  }
}

header .contact a {
  display: block;
  padding: 10px;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  background: #000467;
}

@media (max-width: 767px) {
  header .contact a {
    border-radius: 50px;
    padding: 10px;
    font-size: 18px;
    color: #0068C1;
    background: #D6D6D6;
    border: 1px solid #0068C1;
  }
}

header .experience {
  position: absolute;
  top: 13px;
  right: 160px;
  width: 120px;
  text-align: center;
}

@media (max-width: 767px) {
  header .experience {
    position: static;
    width: 60%;
    margin: auto;
  }
}

header .experience a {
  display: block;
  padding: 8px;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  background: #D70C16;
  border: solid #D70C16 2px;
}

@media (max-width: 767px) {
  header .experience a {
    border-radius: 50px;
    padding: 10px;
    font-size: 18px;
    color: #000;
    background: #D6D6D6;
    border: 1px solid #000;
    margin-bottom: 10px;
  }
}

#head_wrap {
  top: -100px;
  position: absolute;
  width: 100%;
  margin: 70px auto 0;
  line-height: 1;
  z-index: 999;
  height: 0px;
  text-decoration: none;
  top: 0;
}

#head_wrap a {
  text-decoration: none;
}

#head_wrap .inner {
  width: 100%;
  margin: 0 auto;
  height: 56px;
  background: #0068C1;
  position: relative;
}

#head_wrap .inner:after {
  content: "";
  clear: both;
  display: block;
}

#head_wrap .logo {
  padding: 20px 10px;
  max-width: 240px;
}

@media (max-width: 1210px) {
  #head_wrap .logo {
    max-width: 13%;
  }
}

@media (max-width: 1024px) {
  #head_wrap .logo {
    opacity: 0;
  }
}

@media (max-width: 767px) {
  #head_wrap .logo {
    display: none;
  }
}

#global-nav {
  position: absolute;
  right: 0;
  top: 0;
  background: #0068C1;
}

#global-nav ul {
  list-style: none;
  font-size: 14px;
  margin-right: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 20px;
}

@media (max-width: 767px) {
  #global-nav ul {
    display: block;
    margin-right: 0px;
    background: none;
    margin: 10px auto;
  }
}

#global-nav ul li {
  padding: 0 1em;
}

@media (max-width: 767px) {
  #global-nav ul li {
    border-left: 1px solid #fff;
    border-right: none;
    padding: 0;
  }
}

#global-nav ul li a {
  padding: 0 5px;
  padding: 2px;
  -webkit-transition: all .6s ease 0s;
  transition: all .6s ease 0s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: normal;
  color: #fff;
  display: inline-block;
}

@media (max-width: 767px) {
  #global-nav ul li a {
    color: #000;
  }
}

#global-nav ul li a .din {
  font-size: 24px;
}

#global-nav ul.sp_only {
  display: none;
}

@media (max-width: 767px) {
  #global-nav ul.sp_only {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

/* Fixed */
#head_wrap.fixed {
  margin-top: 0;
  top: 0;
  position: fixed;
  height: 60px;
  transition: top 0.65s ease-in;
  -webkit-transition: top 0.65s ease-in;
  -moz-transition: top 0.65s ease-in;
  z-index: 9999;
  background: #0068C1;
}

#head_wrap.fixed .inner {
  background: rgba(214, 214, 214, 0.8);
  height: auto;
}

@media (max-width: 1024px) {
  #head_wrap.fixed .inner {
    padding-bottom: 6px;
  }
}

@media (max-width: 1000px) {
  #head_wrap.fixed .inner {
    padding-bottom: 10px;
  }
}

@media (max-width: 767px) {
  #head_wrap.fixed .inner {
    padding-bottom: 0px;
  }
}

/* Toggle Button */
#nav-toggle {
  display: none;
  position: absolute;
  left: 12px;
  top: 14px;
  width: 25px;
  height: 36px;
  cursor: pointer;
  z-index: 101;
}

#nav-toggle div {
  position: relative;
}

@media (max-width: 767px) {
  #head_wrap {
    top: 0;
    position: fixed;
    margin-top: 0;
    width: 100%;
    padding: 0;
    /* Fixed reset */
  }
  #head_wrap .inner {
    width: 100%;
    padding: 0;
  }
  #head_wrap .fixed {
    padding-top: 0;
    background: transparent;
  }
  #mobile-head {
    background: rgba(255, 255, 255, 0.9);
    width: 100%;
    height: 56px;
    z-index: 999;
    position: relative;
  }
}

@media (max-width: 767px) and (max-width: 767px) {
  #mobile-head {
    background: none;
  }
}

@media (max-width: 767px) {
  #mobile-head .m_menu {
    color: #fff;
    position: absolute;
    top: 11px;
    left: 50px;
    font-size: 16px;
  }
  #head_wrap.fixed .logo,
  #head_wrap .logo {
    position: absolute;
    left: 13px;
    top: 13px;
    color: #333;
    font-size: 26px;
  }
  #global-nav {
    position: absolute;
    /* 開いてないときは画面外に配置 */
    top: -556px;
    background: #D6D6D6;
    width: 100%;
    text-align: center;
    -webkit-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    padding-bottom: 20px;
    padding-top: 30px;
  }
  #global-nav ul {
    list-style: none;
    position: static;
    right: 0;
    bottom: 0;
    font-size: 14px;
    margin-top: 20px;
  }
}

@media (max-width: 767px) and (max-width: 767px) {
  #global-nav ul {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
}

@media (max-width: 767px) {
  #global-nav ul li {
    float: none;
    position: static;
  }
}

@media (max-width: 767px) and (max-width: 767px) {
  #global-nav ul li {
    width: 50%;
    border: none;
  }
  #global-nav ul li:nth-child(odd) {
    border-left: solid 1px #fff;
  }
}

@media (max-width: 767px) {
  #global-nav ul.sp_only {
    margin-top: 50px;
  }
  #head_wrap #global-nav ul li a,
  #head_wrap.fixed #global-nav ul li a {
    width: 100%;
    display: block;
    padding: 5px 0;
  }
}

@media (max-width: 767px) and (max-width: 767px) {
  #head_wrap #global-nav ul li a,
  #head_wrap.fixed #global-nav ul li a {
    padding: 10px 0;
  }
}

@media (max-width: 767px) {
  #nav-toggle {
    display: block;
  }
  /* #nav-toggle 切り替えアニメーション */
  #nav-toggle span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background: #fff;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
  }
  #nav-toggle span:nth-child(1) {
    top: 0;
  }
  #nav-toggle span:nth-child(2) {
    top: 11px;
  }
  #nav-toggle span:nth-child(3) {
    top: 22px;
  }
  .open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    transform: rotate(315deg);
  }
  .open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%;
  }
  .open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    transform: rotate(-315deg);
  }
  /* #global-nav スライドアニメーション */
  .open #global-nav {
    /* #global-nav top + #mobile-head height */
    -webkit-transform: translateY(556px);
    transform: translateY(556px);
  }
}

.top_head {
  background: #D6D6D6;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 70px;
}

.top_head h1 {
  width: 140px;
  padding: 10px 0 0 10px;
}

.top_head ul {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.top_head ul li {
  padding: 0 1em 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}

.top_head ul li a {
  color: #000;
}

.top_head .seriesBtn {
  margin-right: 10px;
}

.top_head .seriesBtn li {
  padding: 0;
  margin-bottom: 10px;
}

.top_head .seriesBtn li a {
  border-left: solid 1px #000;
  padding: 0 1em;
}

.top_head .seriesBtn li:last-child a {
  border-right: solid 1px #000;
}

ul.menu__second-level {
  visibility: hidden;
  opacity: 0;
  z-index: 1;
}

ul.menu__third-level {
  visibility: hidden;
  opacity: 0;
}

ul.menu__fourth-level {
  visibility: hidden;
  opacity: 0;
}

.menu:after {
  clear: both;
}

.menu {
  *zoom: 1;
}

.menu > li.menu__single {
  position: relative;
}

li.menu__single ul.menu__second-level {
  position: absolute;
  width: 100%;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  left: 0;
  display: block !important;
  margin-top: 0 !important;
}

li.menu__single:hover ul.menu__second-level {
  visibility: visible;
  opacity: 1;
}

.menu__second-level {
  display: block;
}

#global-nav .menu__second-level li {
  width: 100%;
  padding: .5em;
  border: none;
  background: rgba(18, 18, 18, 0.8);
  border-bottom: 1px solid #fff;
  text-align: center;
}

#global-nav .menu__second-level li:last-child {
  border-bottom: none;
}

.tag_list {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  margin-top: 10px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}

.tag_list li {
  color: #fff;
  margin-right: 5px;
  width: auto;
  padding: 1px 3px;
  margin-bottom: 2px;
}

@media (max-width: 767px) {
  .tag_list li {
    margin: .5%;
  }
}

.tag_list .g {
  background: #777777;
}

/*ーーーーーーーーーー
.fvWrap
ーーーーーーーーーーー*/
.fvWrap {
  background: url(../img/fv.jpg) no-repeat bottom right;
  background-size: cover;
  height: 670px;
  min-height: 50vh;
  width: 100%;
  max-width: 100%;
  margin-top: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 1360px) {
  .fvWrap {
    min-height: 70vh;
    height: auto;
  }
}

@media (max-width: 1024px) {
  .fvWrap {
    min-height: 35vh;
    height: auto;
  }
}

@media (max-width: 767px) {
  .fvWrap {
    background: url(../img/fv_sp.jpg) no-repeat bottom center;
    background-size: cover;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    height: 78vh;
  }
}

.fvWrap .fv {
  margin: 0 30px;
}

@media (max-width: 1360px) {
  .fvWrap .fv {
    background: rgba(255, 255, 255, 0.6);
    padding: 20px;
  }
}

@media (max-width: 1024px) {
  .fvWrap .fv {
    margin: 50px 30px;
  }
}

@media (max-width: 767px) {
  .fvWrap .fv {
    padding: 0;
  }
}

.fvWrap .fv h2 {
  font-size: 3.5vw;
  font-weight: bold;
  color: #0068C1;
}

@media (max-width: 767px) {
  .fvWrap .fv h2 {
    font-size: 7vw;
  }
}

.fvWrap .fv h3 {
  font-size: 2.2vw;
  font-weight: bold;
  margin: 20px 0;
}

@media (max-width: 767px) {
  .fvWrap .fv h3 {
    font-size: 4.5vw;
    margin: 10px 0;
  }
}

.fvWrap .fv p {
  width: 40vw;
}

@media (max-width: 767px) {
  .fvWrap .fv p {
    width: 100%;
    font-size: 15px;
  }
}

/*ーーーーーーーーーー
#cloud
ーーーーーーーーーーー*/
#cloud {
  padding: 3% 0;
}

#cloud p {
  padding: 10px 20px;
  background: #000467;
  color: #fff;
  font-weight: bold;
  font-size: 30px;
  line-height: 1.5;
  display: inline-block;
  border-radius: 5px;
  position: relative;
}

#cloud p:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #000467;
}

/*ーーーーーーーーーー
.trader
ーーーーーーーーーーー*/
.trader .flex_wrap {
  width: 100%;
}

.trader .flex_wrap .ttl_wrap {
  width: 25%;
  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;
  background: #0068C1;
  height: 300px;
}

@media (max-width: 767px) {
  .trader .flex_wrap .ttl_wrap {
    width: 100%;
    height: auto;
    padding: 30px 0;
    text-align: center;
  }
}

.trader .flex_wrap .ttl_wrap h3 {
  color: #fff;
  font-weight: bold;
  font-size: 40px;
}

@media (max-width: 767px) {
  .trader .flex_wrap .ttl_wrap h3 {
    font-size: 20px;
  }
}

.trader .flex_wrap .trader_list {
  width: 75%;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-line-pack: center;
      align-content: center;
  padding-left: 40px;
}

@media (max-width: 767px) {
  .trader .flex_wrap .trader_list {
    width: 100%;
    padding: 20px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}

.trader .flex_wrap .trader_list li {
  width: 25%;
  height: 50px;
  font-size: 20px;
  padding: 10px 0 0 55px;
  margin: 20px 0;
}

@media (max-width: 767px) {
  .trader .flex_wrap .trader_list li {
    font-size: 15px;
    width: 50%;
  }
}

.trader .flex_wrap .trader_list .ico1 {
  background: url(../img/ico1.png) no-repeat left center;
  background-size: 50px;
}

.trader .flex_wrap .trader_list .ico2 {
  background: url(../img/ico2.png) no-repeat left center;
  background-size: 50px;
}

.trader .flex_wrap .trader_list .ico3 {
  background: url(../img/ico3.png) no-repeat left center;
  background-size: 50px;
}

.trader .flex_wrap .trader_list .ico4 {
  background: url(../img/ico4.png) no-repeat left center;
  background-size: 50px;
}

.trader .flex_wrap .trader_list .ico5 {
  background: url(../img/ico5.png) no-repeat left center;
  background-size: 50px;
}

.trader .flex_wrap .trader_list .ico6 {
  background: url(../img/ico6.png) no-repeat left center;
  background-size: 50px;
}

.trader .flex_wrap .trader_list .ico7 {
  background: url(../img/ico7.png) no-repeat left center;
  background-size: 50px;
}

/*ーーーーーーーーーー
.achievement
ーーーーーーーーーーー*/
.achievement {
  background: url(../img/top1.jpg) no-repeat;
  background-size: cover;
  background-attachment: fixed;
  height: 524px;
  text-align: center;
}

@media (max-width: 767px) {
  .achievement {
    height: 430px;
  }
}

.achievement h3 {
  line-height: 1.2;
  margin-bottom: 20px;
  text-shadow: 8px -4px 6px #d8e8f9;
}

.achievement h3 span {
  font-size: 20px;
  font-weight: bold;
}

.achievement p {
  font-weight: bold;
  text-shadow: 8px -4px 6px #d8e8f9;
}

/*ーーーーーーーーーー
.step
ーーーーーーーーーーー*/
.step {
  margin-top: 150px;
}

@media (max-width: 767px) {
  .step {
    margin-top: 50px;
  }
}

.step h3 {
  margin-bottom: 100px;
}

.step .flex_wrap {
  width: 100%;
}

.step .flex_wrap li {
  width: calc(100% / 3);
  text-align: center;
  background: #0068C1;
  color: #fff;
  padding-bottom: 50px;
  position: relative;
}

@media (max-width: 767px) {
  .step .flex_wrap li {
    width: 100%;
  }
}

.step .flex_wrap li img {
  width: 80%;
  margin-top: -50px;
}

@media (max-width: 767px) {
  .step .flex_wrap li img {
    width: 90%;
    margin-top: 50px;
  }
}

.step .flex_wrap li .arrow {
  position: absolute;
  top: 54%;
  left: -20px;
  width: 40px;
}

@media (max-width: 767px) {
  .step .flex_wrap li .arrow {
    display: none;
  }
}

.step .flex_wrap li h4 {
  margin: 20px 0;
}

.step .flex_wrap li h4 span {
  background: #fff;
  font-size: 26px;
  color: #0068C1;
  padding: 1px 2px;
  font-weight: bold;
}

.step .flex_wrap li:first-child {
  background: #469EEB;
}

.step .flex_wrap li:first-child span {
  color: #469EEB;
}

.step .flex_wrap li:last-child {
  background: #000467;
}

.step .flex_wrap li:last-child span {
  color: #000467;
}

.step .flex_wrap li p {
  font-weight: bold;
}

/*ーーーーーーーーーー
.point
ーーーーーーーーーーー*/
.point {
  margin-top: 150px;
}

@media (max-width: 767px) {
  .point {
    margin-top: 80px;
  }
}

.point .point_box {
  background: #F8F8F8;
  width: 90%;
  margin: auto;
  padding: 0 50px 50px;
}

@media (max-width: 767px) {
  .point .point_box {
    padding: 0 20px 20px;
  }
}

.point .point_box h3 {
  margin: -30px auto 0;
  display: inline-block;
  width: 100%;
}

.point .point_box h4 {
  font-size: 30px;
  font-weight: bold;
  margin-top: 50px;
}

@media (max-width: 767px) {
  .point .point_box h4 {
    font-size: 22px;
  }
}

.point .point_box h4 span {
  font-size: 1em;
  color: #0068C1;
}

.point .point_box p {
  margin-top: 20px;
}

@media (max-width: 767px) {
  .point .point_box p {
    font-size: 20px;
  }
}

/*ーーーーーーーーーー
.features
ーーーーーーーーーーー*/
.features {
  margin-top: 150px;
}

@media (max-width: 767px) {
  .features {
    margin-top: 50px;
  }
}

.features .series_list {
  background: #0068C1;
  margin-top: 50px;
  padding: 80px 0 30px;
}

.features .series_list li {
  width: 90%;
  max-width: 1500px;
  background: #fff;
  margin: 0 auto 50px;
}

.features .series_list li img {
  margin: -20px 0 0 -20px;
  width: 35%;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}

@media (max-width: 767px) {
  .features .series_list li img {
    margin: 20px 20px 0;
    width: 90%;
    height: auto;
  }
}

.features .series_list li .series_txt_box {
  width: 65%;
  padding: 30px 10px 20px;
  min-height: 340px;
}

@media (max-width: 767px) {
  .features .series_list li .series_txt_box {
    width: 100%;
    padding: 20px;
  }
}

.features .series_list li .txt {
  margin-top: 20px;
}

.features .series_list li .txt span {
  color: #0068C1;
  font-weight: bold;
  font-size: 1em;
}

.features .series_txt_box .ttl_box {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  width: 100%;
  border-bottom: #000 1px solid;
  padding-bottom: 5px;
}

@media (max-width: 767px) {
  .features .series_txt_box .ttl_box {
    padding-bottom: 10px;
  }
}

.features .series_txt_box .ttl_box h4 {
  font-size: 30px;
  font-weight: bold;
}

.features .series_txt_box .ttl_box h4 span {
  font-size: 36px;
  color: #0068C1;
  font-weight: bold;
}

.features .series_txt_box .ttl_box p {
  font-size: 15px;
  font-weight: bold;
}

.features .series_txt_box .ttl_box .series_icon {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

@media (max-width: 767px) {
  .features .series_txt_box .ttl_box .series_icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-top: 20px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
  }
}

.features .series_txt_box .ttl_box .series_icon li {
  color: #fff;
  width: 24%;
  background: #0068C1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 50px;
  height: 50px;
  margin: 0 5px;
  font-weight: bold;
}

.features .series_txt_box .ttl_box .series_icon li sup {
  font-size: .5em;
}

.features .series_txt_box .ttl_box .series_icon li.lite {
  background: #469EEB;
}

.features .series_txt_box .ttl_box .series_icon li.pro {
  background: #000467;
}

.features .series_txt_box .ttl_box .series_icon li.one {
  background: #AAD02E;
  border-radius: 50px;
}

.features .pu_all {
  margin: 50px 0 50px;
  padding-bottom: 50px;
  border-bottom: 1px solid #000;
}

.features .pu_all h5 {
  font-size: 24px;
  color: #0068C1;
  font-weight: bold;
  margin-bottom: 20px;
}

.features .pu_all .box1 img {
  width: 40%;
}

@media (max-width: 767px) {
  .features .pu_all .box1 img {
    width: 100%;
  }
}

.features .pu_all .box1 .txt_box {
  width: 60%;
  padding-left: 10px;
}

@media (max-width: 767px) {
  .features .pu_all .box1 .txt_box {
    width: 100%;
  }
}

.features .pu_all .box2 li {
  width: 45%;
}

@media (max-width: 767px) {
  .features .pu_all .box2 li {
    width: 100%;
  }
}

.features .pu_all .box2 li h5 {
  text-align: center;
}

.features .pu_all .box3 {
  background: #F8F8F8;
  margin-bottom: 50px;
}

.features .pu_all .box3 h5 {
  font-weight: bold;
  text-align: center;
  margin-top: -20px;
  display: inline-block;
  width: 100%;
}

.features .pu_all .box3 .flex_wrap {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.features .pu_all .box3 .flex_wrap li {
  width: 30%;
  margin: 20px;
  position: relative;
}

@media (max-width: 767px) {
  .features .pu_all .box3 .flex_wrap li {
    width: 100%;
    margin: 20px 0;
    padding: 0 20px;
  }
}

.features .pu_all .box3 .flex_wrap li img {
  width: 100%;
}

.features .pu_all .box3 .flex_wrap li .arrow {
  position: absolute;
  top: 37%;
  left: -30px;
  width: 20px;
}

.features .pu_all .box4 {
  margin-bottom: 50px;
}

.features .pu1_1 .box1 {
  margin-bottom: 20px;
}

.features .pu1_1 .box2 {
  margin: 20px auto 50px;
}

.features .pu1_3 .box1, .features .pu1_4 .box1, .features .pu3_1 .box1 {
  margin-top: 40px;
}

.features .pu1_4, .features .pu3_2 {
  border: none;
}

.features .pu2_1 {
  border: none;
}

.features .pu2_1 .box2 {
  padding-bottom: 50px;
}

.features .pu2_1 .box2 li {
  margin: 50px 0 30px;
}

.features .pu2_1 .note {
  text-align: left;
}

.features .pu3_1 .box2, .features .pu3_2 .box2 {
  padding-bottom: 50px;
}

.features .pu3_1 .box2 li, .features .pu3_2 .box2 li {
  margin: 50px 0 30px;
}

.features .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.features .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/*ポップアップここから*/
.popup_wrap input {
  display: none;
}

.popup_overlay {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  -webkit-transition: opacity 0.5s, -webkit-transform 0s 0.5s;
  transition: opacity 0.5s, -webkit-transform 0s 0.5s;
  transition: opacity 0.5s, transform 0s 0.5s;
  transition: opacity 0.5s, transform 0s 0.5s, -webkit-transform 0s 0.5s;
  -webkit-transform: scale(0);
          transform: scale(0);
}

.popup_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}

.popup_content {
  position: relative;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  width: 90%;
  max-width: 1300px;
  padding: 30px 60px 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

@media (max-width: 767px) {
  .popup_content {
    padding: 30px 10px 15px;
  }
}

.close_btn {
  position: absolute;
  top: 14px;
  right: 16px;
  font-size: 30px;
  cursor: pointer;
}

.popup_wrap input:checked ~ .popup_overlay {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

.open_btn {
  position: relative;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 10px auto 0;
  color: #fff;
  font-weight: bold;
  border-radius: 3px;
  cursor: pointer;
  -webkit-transition: .3s ease;
  transition: .3s ease;
}

.open_btn span {
  -webkit-transition: .3s ease;
  transition: .3s ease;
  font-size: 24px;
  font-weight: bold;
  padding: .5em;
  padding: 5px 30px;
  border: 1px solid #fff;
  text-align: center;
  background: #000467;
}

@media (max-width: 1000px) {
  .open_btn span {
    font-size: 22px;
  }
}

@media (max-width: 767px) {
  .open_btn span {
    width: 100%;
  }
}

.open_btn:hover {
  color: #fff;
  -webkit-transition: .3s ease;
  transition: .3s ease;
}

.open_btn:hover span {
  -webkit-transition: .3s ease;
  transition: .3s ease;
  padding: 5px 30px;
  border: 1px solid #fff;
  opacity: .8;
}

.scroll {
  overflow: scroll;
  width: 100%;
  max-height: 90vh;
  padding: 5px;
}

/*ポップアップココまで*/
/*ーーーーーーーーーー
.product
ーーーーーーーーーーー*/
.product {
  background: url(../img/bk.gif) repeat;
  margin-top: 150px;
  padding-bottom: 80px;
}

@media (max-width: 767px) {
  .product {
    margin-top: 80px;
  }
}

.product .ttl_n {
  margin-top: -30px;
  width: 100%;
  display: inline-block;
}

.product .product_list {
  width: 100%;
}

.product .product_list li {
  background: #fff;
  width: 90%;
  max-width: 1500px;
  margin: 50px auto 0;
  padding: 30px;
}

@media (max-width: 767px) {
  .product .product_list li {
    padding: 20px;
  }
}

.product .product_list li:last-child {
  border-radius: 20px;
}

.product .product_list li .flex_wrap {
  width: 100%;
}

.product .product_list li .package {
  width: 30%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

@media (max-width: 767px) {
  .product .product_list li .package {
    width: 100%;
    height: auto;
  }
}

.product .product_list li .product_txt_box {
  width: 70%;
  padding-left: 20px;
}

@media (max-width: 767px) {
  .product .product_list li .product_txt_box {
    width: 100%;
    padding-left: 0;
    text-align: center;
  }
}

.product .product_list li .product_txt_box .ttl_box {
  width: 100%;
  border-bottom: 1px solid #000;
  margin-bottom: 10px;
}

.product .product_list li .product_txt_box h4 {
  margin-top: 20px;
}

.product .product_list li .product_txt_box h4 .lite {
  width: 360px;
}

.product .product_list li .product_txt_box h4 .std {
  width: 400px;
}

.product .product_list li .product_txt_box h4 .pro {
  width: 400px;
}

.product .product_list li .product_txt_box h4 .one {
  width: 430px;
}

.product .product_list li .product_txt_box .catch {
  font-size: 20px;
  padding: 5px 10px;
  border: #0068C1 1px solid;
  border-radius: 50px;
  display: inline-block;
}

@media (max-width: 767px) {
  .product .product_list li .product_txt_box .catch {
    width: 100%;
  }
}

.product .product_list li .product_txt_box .catch span {
  font-size: 1em;
  font-weight: bold;
  color: #0068C1;
}

.product .product_list li .product_txt_box .catch_one {
  border: #AAD02E 1px solid;
}

.product .product_list li .product_txt_box .btn_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 10px;
}

.product .product_list li .product_txt_box .btn_wrap a {
  font-size: 20px;
}

@media (max-width: 767px) {
  .product .product_list li .product_txt_box .btn_wrap a {
    width: 100%;
    margin-top: 30px;
  }
}

.product .product_list li .product_txt_box .kakaku {
  font-weight: bold;
  padding-bottom: 50px;
  font-size: 24px;
}

@media (max-width: 767px) {
  .product .product_list li .product_txt_box .kakaku {
    line-height: 1.5;
    margin-top: 30px;
  }
}

.product .product_list li .product_txt_box .kakaku .l {
  font-size: 1.2em;
  font-weight: bold;
}

.product .product_list li .product_txt_box .kakaku .s {
  font-size: .8em;
}

.product .product_list li .product_txt_box .kakaku a.s {
  text-decoration: underline;
}

.product .product_list li .product_txt_box .osusume {
  background: #F8F8F8;
  padding: 0 20px 20px;
}

.product .product_list li .product_txt_box .osusume h5 {
  color: #0068C1;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  display: inline-block;
  width: 100%;
  margin-top: -20px;
  padding-bottom: 10px;
}

.product .product_list li .product_txt_box .osusume .flex_wrap {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.product .product_list li .product_txt_box .osusume li {
  width: 25%;
  height: 50px;
  font-size: 18px;
  padding: 10px 0 0 55px;
  margin: 11px 0;
}

@media (max-width: 767px) {
  .product .product_list li .product_txt_box .osusume li {
    width: 100%;
    text-align: left;
  }
}

.product .product_list li .product_txt_box .osusume .ico1 {
  background: url(../img/ico1.png) no-repeat left center;
  background-size: 50px;
}

.product .product_list li .product_txt_box .osusume .ico2 {
  background: url(../img/ico2.png) no-repeat left center;
  background-size: 50px;
}

.product .product_list li .product_txt_box .osusume .ico3 {
  background: url(../img/ico3.png) no-repeat left center;
  background-size: 50px;
}

.product .product_list li .product_txt_box .osusume .ico4 {
  background: url(../img/ico4.png) no-repeat left center;
  background-size: 50px;
}

.product .product_list li .product_txt_box .osusume .ico5 {
  background: url(../img/ico5.png) no-repeat left center;
  background-size: 50px;
}

.product .product_list li .product_txt_box .osusume .ico6 {
  background: url(../img/ico6.png) no-repeat left center;
  background-size: 50px;
}

.product .product_list li .product_txt_box .osusume .ico7 {
  background: url(../img/ico7.png) no-repeat left center;
  background-size: 50px;
}

/*ーーーーーーーーーー
.case
ーーーーーーーーーーー*/
.case {
  margin-top: 150px;
}

@media (max-width: 767px) {
  .case {
    margin-top: 80px;
  }
}

.case .case_box {
  background: #F8F8F8;
  width: 90%;
  max-width: 1100px;
  margin: auto;
  padding: 0 60px 60px;
}

@media (max-width: 767px) {
  .case .case_box {
    padding: 0 20px 20px;
  }
}

.case .case_box .ttl_n {
  margin-top: -30px;
  width: 100%;
  display: inline-block;
  padding-bottom: 60px;
}

.case .case_box .flex_wrap {
  width: 100%;
}

.case .case_box .flex_wrap .txt_box {
  width: 85%;
}

@media (max-width: 767px) {
  .case .case_box .flex_wrap .txt_box {
    width: 100%;
  }
}

.case .case_box .flex_wrap .txt_box h4 {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 20px;
}

.case .case_box .flex_wrap .txt_box h4 span {
  font-size: 1em;
  color: #0068C1;
}

.case .case_box .flex_wrap .img_box {
  width: 15%;
}

@media (max-width: 767px) {
  .case .case_box .flex_wrap .img_box {
    width: 100%;
    text-align: center;
    margin-top: 30px;
  }
}

.case .case_box .flex_wrap .img_box img {
  width: 100%;
}

@media (max-width: 767px) {
  .case .case_box .flex_wrap .img_box img {
    width: 50%;
  }
}

.case .case_box h5 {
  font-size: 26px;
  font-weight: bold;
  color: #0068C1;
  border-bottom: 1px solid #000;
  margin: 30px 0 10px;
  padding-bottom: 10px;
}

.case .case_box .btn_wrap {
  margin-top: 100px;
}

@media (max-width: 767px) {
  .case .case_box .btn_wrap {
    margin-top: 50px;
    margin-bottom: 50px;
  }
}

.case .case_box .btn_wrap a {
  font-size: 30px;
}

@media (max-width: 767px) {
  .case .case_box .btn_wrap a {
    font-size: 24px;
  }
}

/*ーーーーーーーーーー
.support
ーーーーーーーーーーー*/
.support {
  margin-top: 150px;
  background: #F8F8F8;
  padding-bottom: 150px;
}

@media (max-width: 767px) {
  .support {
    margin-top: 80px;
    padding: 0 20px 50px;
  }
}

.support .ttl_n {
  margin-top: -30px;
  width: 100%;
  display: inline-block;
  padding-bottom: 60px;
}

.support .flex_wrap {
  width: 100%;
}

@media (max-width: 767px) {
  .support .flex_wrap {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}

.support .flex_wrap li {
  width: 25%;
  margin: 50px 0 30px;
  padding: 40px 0;
  background: #0068C1;
}

@media (max-width: 767px) {
  .support .flex_wrap li {
    width: 50%;
    margin: 0;
  }
}

.support .flex_wrap li p {
  color: #fff;
  font-weight: bold;
}

@media (max-width: 767px) {
  .support .flex_wrap li p {
    font-size: 15px;
    line-height: 1.5;
    margin-top: 20px;
  }
}

.support .flex_wrap li .img_box {
  height: 200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 767px) {
  .support .flex_wrap li .img_box {
    width: 100%;
    text-align: center;
    max-height: 100px;
  }
}

.support .flex_wrap li .img_box img {
  max-width: 100%;
}

@media (max-width: 767px) {
  .support .flex_wrap li .img_box img {
    height: 100%;
    max-width: 80%;
  }
}

.support .flex_wrap li:first-child {
  background: #6FB9FA;
}

.support .flex_wrap li:nth-child(2) {
  background: #469EEB;
}

.support .flex_wrap li:last-child {
  background: #000467;
}

.support .btn_wrap {
  margin-top: 30px;
}

.support .btn_wrap a {
  font-size: 30px;
}

/*ーーーーーーーーーー
  footer
ーーーーーーーーーーー*/
footer {
  background: #D6D6D6;
  padding: 50px 0 0;
}

footer .max_wrap {
  padding: 0 20px;
}

footer .flex_wrap {
  width: 100%;
}

footer .flex_wrap .left {
/*  width: 60%;*/
  width: 55%;
  border-right: 1px solid #000;
}

@media (max-width: 767px) {
  footer .flex_wrap .left {
    width: 100%;
    border: none;
  }
}

footer .flex_wrap .left h3 {
  padding: 10px 0;
  margin-bottom: 30px;
}

footer .flex_wrap .left .tell {
  background: url(../img/tell.png) left center no-repeat;
  background-size: 45px;
  padding-left: 50px;
  margin-top: 30px;
}

@media (max-width: 767px) {
  footer .flex_wrap .left .tell {
    line-height: 1;
    margin-bottom: 50px;
  }
}

footer .flex_wrap .left .tell a {
  font-size: 30px;
  font-weight: bold;
  color: #0068C1;
  margin-right: 10px;
}

footer .flex_wrap .center, footer .flex_wrap .right {
/*  width: 20%;*/
  width: 15%;
  padding-left: 30px;
}

@media (max-width: 767px) {
  footer .flex_wrap .center, footer .flex_wrap .right {
    width: 100%;
    padding-left: 0;
  }
}

footer .flex_wrap .center h4, footer .flex_wrap .right h4 {
  font-weight: bold;
  margin-bottom: 20px;
}

@media (max-width: 767px) {
  footer .flex_wrap .center h4, footer .flex_wrap .right h4 {
    margin: 30px auto 10px;
    font-size: 20px;
    text-align: center;
  }
}

@media (max-width: 767px) {
  footer .flex_wrap .center ul, footer .flex_wrap .right ul {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

footer .flex_wrap .center li, footer .flex_wrap .right li {
  line-height: 2.5;
  position: relative;
  padding-left: 10px;
}

footer .flex_wrap .center li::before, footer .flex_wrap .right li::before {
  content: "";
  position: absolute;
  top: 1em;
  left: 0;
  width: 0;
  height: 0;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent transparent #0068C1;
}

@media (max-width: 767px) {
  footer .flex_wrap .center li, footer .flex_wrap .right li {
    width: 50%;
  }
}

footer .flex_wrap .center li a, footer .flex_wrap .right li a {
  color: #0068C1;
  text-decoration: underline;
  font-weight: bold;
}

footer .flex_wrap .center li a:hover, footer .flex_wrap .right li a:hover {
  text-decoration: none;
}

footer .flex_wrap .center {
  border-right: 1px solid #000;
}

@media (max-width: 767px) {
  footer .flex_wrap .center {
    border: none;
  }
}

footer .flex_wrap .add li {
  width: 48%;
}

@media (max-width: 767px) {
  footer .flex_wrap .add li {
    width: 100%;
    margin-bottom: 20px;
  }
}

footer .btn_wrap {
  margin: 50px auto;
}

footer .btn_wrap a {
  font-size: 26px;
}

footer p.bottom {
  font-size: 12px;
  color: #fff;
  text-align: center;
  background: #0068C1;
}

/*ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーー
#experience_page
ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーーー*/
#experience_page {
  /*ーーーーーーーーーー
    .fvWrap
    ーーーーーーーーーーー*/
  /*ーーーーーーーーーー
    .team_viewer
    ーーーーーーーーーーー*/
  /*ーーーーーーーーーー
    .free
    ーーーーーーーーーーー*/
  /*ーーーーーーーーーー
    .simulation
    ーーーーーーーーーーー*/
}

#experience_page .fvWrap {
  background: url(../img/experience1.png) no-repeat right center;
  height: 80vh;
  background-size: contain;
}

@media (max-width: 1024px) {
  #experience_page .fvWrap {
    height: 40vh;
  }
}

@media (max-width: 1000px) {
  #experience_page .fvWrap {
    height: 80vh;
    background-size: cover;
    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;
  }
}

#experience_page .fvWrap .fv {
  background: #fff;
  padding: 60px;
}

@media (max-width: 1000px) {
  #experience_page .fvWrap .fv {
    padding: 20px;
    background: rgba(255, 255, 255, 0.8);
    width: 94%;
  }
}

#experience_page .fvWrap .fv .txt_box h2, #experience_page .fvWrap .fv .txt_box h3 {
  color: #D70C16;
}

#experience_page .fvWrap .fv .txt_box h2 {
  margin-top: 0;
}

@media (max-width: 1000px) {
  #experience_page .fvWrap .fv .txt_box p {
    width: 100%;
  }
}

#experience_page .team_viewer {
  background: #0068C1;
  padding: 150px 0;
  text-align: center;
}

@media (max-width: 767px) {
  #experience_page .team_viewer {
    padding: 50px 0;
  }
}

#experience_page .team_viewer h3 {
  font-size: 30px;
  color: #fff;
  font-weight: bold;
}

#experience_page .team_viewer .max_wrap {
  max-width: 1000px;
  background: rgba(255, 255, 255, 0.8);
  margin-top: 50px;
  padding: 50px 0;
}

#experience_page .team_viewer .max_wrap img {
  width: 600px;
  max-width: 80%;
}

#experience_page .team_viewer .max_wrap img:hover {
  opacity: .8;
}

#experience_page .team_viewer .max_wrap a {
  display: block;
  text-decoration: underline;
  margin: 30px auto 20px;
}

#experience_page .team_viewer .max_wrap a:hover {
  text-decoration: none;
}

#experience_page .free {
  padding: 150px 0;
  background: url(../img/experience3.png) no-repeat top;
  background-size: cover;
}

@media (max-width: 767px) {
  #experience_page .free {
    padding: 50px 0;
  }
}

#experience_page .free .btn_wrap {
  text-align: center;
  margin-bottom: 150px;
}

@media (max-width: 767px) {
  #experience_page .free .btn_wrap {
    margin-bottom: 50px;
  }
}

#experience_page .free .btn_wrap a {
  font-size: 30px;
  background: #D63100;
}

#experience_page .simulation {
  margin: 150px auto;
  text-align: center;
}

@media (max-width: 767px) {
  #experience_page .simulation {
    margin: 50px auto;
  }
}

#experience_page .simulation .ttl_n {
  margin-bottom: 30px;
}

#experience_page .simulation .btn_wrap {
  text-align: center;
  margin: 80px 0 150px;
}

@media (max-width: 767px) {
  #experience_page .simulation .btn_wrap {
    margin: 80px 0;
  }
}

#experience_page .simulation .btn_wrap a {
  font-size: 24px;
}

#experience_page .simulation .btnimg {
  margin: 80px 0 150px;
  text-align: center;
}

#experience_page .simulation .btnimg a {
  max-width: 500px;
  display: inline-block;
}

#experience_page .simulation .btnimg a img {
  max-width: 100%;
}

/*ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーー
.page
ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーーー*/
.page .fvWrap {
  height: 380px;
  min-height: auto;
}

@media (max-width: 767px) {
  .page .fvWrap {
    height: 200px;
  }
  .page .fvWrap .fv {
    margin: 50px 0;
  }
  .page .fvWrap .fv h2 {
    padding: 1em;
  }
}

/*ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーー
#case_page
ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーーー*/
#case_page {
  /*ーーーーーーーーーー
    .case
    ーーーーーーーーーーー*/
}

#case_page .fvWrap {
  background: url(../img/case1.png) no-repeat center left;
  background-size: cover;
}

@media (max-width: 767px) {
  #case_page .case {
    margin-top: 50px;
  }
}

#case_page .case .case_box {
  padding: 60px;
  margin-bottom: 60px;
}

#case_page .case .case_box:last-child {
  margin-bottom: 150px;
}

@media (max-width: 767px) {
  #case_page .case .case_box:last-child {
    margin-bottom: 50px;
  }
}

@media (max-width: 767px) {
  #case_page .case .case_box {
    padding: 20px;
  }
}

/*ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーー
#specification_page
ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーーー*/
#specification_page {
  /*ーーーーーーーーーー
    .comparison
    ーーーーーーーーーーー*/
  /*ーーーーーーーーーー
    .price
    ーーーーーーーーーーー*/
  /*ーーーーーーーーーー
    .price_one
    ーーーーーーーーーーー*/
  /*ーーーーーーーーーー
    .product
    ーーーーーーーーーーー*/
}

#specification_page .fvWrap {
  background: url(../img/specification1.png) no-repeat center right;
  background-size: cover;
}

@media (max-width: 767px) {
  #specification_page .fvWrap {
    background: url(../img/specification1.png) no-repeat center right -100px;
    background-size: cover;
  }
}

@media (max-width: 767px) {
  #specification_page .ttl_n img {
    max-width: 90%;
  }
}

#specification_page .comparison {
  margin-top: 150px;
}

@media (max-width: 767px) {
  #specification_page .comparison {
    margin-top: 0px;
  }
}

#specification_page .comparison .ttl_n {
  line-height: 1.2;
  margin-top: 80px;
}

@media (max-width: 767px) {
  #specification_page .comparison .ttl_n {
    margin-top: 50px;
  }
}

#specification_page .comparison .ttl_n span {
  font-size: .6em;
  font-weight: bold;
}

#specification_page .price {
  margin-top: 150px;
}

@media (max-width: 767px) {
  #specification_page .price {
    margin-top: 50px;
  }
}

#specification_page .price .ttl_n {
  margin-bottom: 50px;
}

@media (max-width: 767px) {
  #specification_page .price .ttl_n {
    margin-bottom: 0;
  }
}

#specification_page .price_one {
  background: #F8F8F8;
  margin-top: 150px;
  padding: 150px 0 70px;
}

@media (max-width: 767px) {
  #specification_page .price_one {
    margin-top: 50px;
    padding: 50px 0 35px;
  }
}

#specification_page .price_one .ttl_n {
  font-size: 30px;
  margin-bottom: 50px;
}

@media (max-width: 767px) {
  #specification_page .price_one .ttl_n {
    font-size: 20px;
  }
}

#specification_page .price_one .ttl_n img {
  width: 350px;
  margin-bottom: 20px;
}

#specification_page .product .product_list li:last-child {
  border-radius: 0;
}

#specification_page .product .catch {
  font-size: 20px;
  padding: 5px 10px;
  border: #0068C1 1px solid;
  border-radius: 50px;
  display: inline-block;
  background: #fff;
  margin-top: 50px;
}

@media (max-width: 767px) {
  #specification_page .product .catch {
    width: 100%;
  }
}

#specification_page .product .catch span {
  font-size: 1em;
  font-weight: bold;
  color: #0068C1;
}

#specification_page .product .catch_one {
  border: #AAD02E 1px solid;
}

#specification_page .product .powered_list {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}

#specification_page .product .powered_list li {
  color: #0068C1;
  font-weight: bold;
  margin: 20px;
  font-size: 20px;
}

@media (max-width: 767px) {
  #specification_page .product .powered_list li {
    text-align: center;
  }
}

#specification_page .product .kakaku {
  padding-bottom: 10px;
}

#specification_page .product .osusume {
  margin-top: 50px;
}

#specification_page .product#one {
  background: #F8F8F8;
  margin-bottom: 150px;
}

@media (max-width: 767px) {
  #specification_page .product#one {
    margin-bottom: 50px;
  }
}

#specification_page .product#one .catch {
  border: #AAD02E 1px solid;
}

#specification_page .product#one .product_txt_box h4 {
  font-size: 24px;
  color: #0068C1;
  font-weight: bold;
  margin-bottom: 20px;
}

#specification_page .product#one .bubble {
  background: #AAD02E;
  padding: 10px 20px;
  font-weight: bold;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 30px auto;
  position: relative;
}

#specification_page .product#one .bubble:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #AAD02E;
}

#specification_page .product#one h5 {
  font-size: 26px;
  color: #0068C1;
  font-weight: bold;
  margin-bottom: 30px;
}

#specification_page .product#one .step {
  margin: 80px auto;
}

@media (max-width: 767px) {
  #specification_page .product#one .step {
    margin: 40px auto;
  }
}

#specification_page .product#one .step .flex_wrap {
  width: 100%;
}

#specification_page .product#one .step li {
  width: calc(100% / 3);
  background: #AAD02E;
}

@media (max-width: 767px) {
  #specification_page .product#one .step li {
    width: 100%;
    margin: 0;
  }
}

#specification_page .product#one .step li:first-child {
  background: #E2FF80;
}

#specification_page .product#one .step li:nth-child(2) {
  background: #CBEF5D;
}

#specification_page .product#one .step li span {
  color: #AAD02E;
}

#specification_page .product#one .step li p {
  color: #000;
}

.price_table {
  max-width: 1270px;
  width: 90%;
  margin: auto;
  margin-bottom: 80px;
}

@media (max-width: 767px) {
  .price_table {
    margin-bottom: 40px;
  }
}

.price_table tr th {
  background: #F8F8F8;
  width: 30%;
  padding: 20px;
  border: #D6D6D6 solid 2px;
}

@media (max-width: 767px) {
  .price_table tr th {
    display: block;
    width: 100%;
    border: #D6D6D6 solid 1px;
  }
}

.price_table tr th img {
  width: 70%;
  padding: 10px 0 !important;
}

.price_table tr td {
  width: 70%;
  border: #D6D6D6 solid 2px;
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  background: #fff;
}

@media (max-width: 767px) {
  .price_table tr td {
    display: block;
    width: 100%;
    border: #D6D6D6 solid 1px;
    padding: 20px 0 !important;
  }
}

.price_table tr td span {
  font-size: .8em;
  font-weight: bold;
}

.price_table tr:first-child th {
  background: #0068C1;
  color: #fff;
  font-weight: bold;
  font-size: 26px;
}

@media (max-width: 767px) {
  .price_table tr:first-child th {
    line-height: 1.2;
  }
}

.price_table tr:first-child th span {
  font-size: .8em;
  font-weight: bold;
}

@media (max-width: 767px) {
  .price_table tr:first-child th span {
    font-size: .5em;
  }
}

.price_table tr:first-child th:first-child {
  background: none;
  border: none;
}

#one_table tr:first-child th {
  font-size: 20px;
  color: #fff;
}

#one_table tr:nth-child(2) th {
  background: #0068C1;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
}

#one_table tr:nth-child(2) td {
  font-size: 26px;
  color: #000;
}

#one_table th {
  width: 15%;
  font-size: 20px;
  vertical-align: middle;
  color: #0068C1;
  font-weight: bold;
  font-size: 14px;
}

@media (max-width: 767px) {
  #one_table th {
    display: table-cell !important;
    font-size: 15px;
    white-space: nowrap;
    padding: 5px;
  }
}

#one_table td {
  width: calc(70% / 3) !important;
  vertical-align: middle;
  font-size: 14px;
  color: #b1b1b1;
}

@media (max-width: 767px) {
  #one_table td {
    display: table-cell !important;
    font-size: 15px;
    padding: 5px 0;
  }
}

#comparison_table {
  margin-top: 50px;
}

@media (max-width: 767px) {
  #comparison_table {
    margin-top: 25px;
  }
}

#comparison_table tr:first-child th {
  font-size: 20px;
  width: calc(70% / 3);
  color: #fff;
}

#comparison_table tr:first-child th:first-child {
  width: 30%;
}

#comparison_table th {
  width: 30%;
  font-size: 20px;
  vertical-align: middle;
  color: #0068C1;
  font-weight: bold;
}

@media (max-width: 767px) {
  #comparison_table th {
    display: table-cell !important;
    font-size: 15px;
    white-space: nowrap;
    padding: 5px;
  }
}

#comparison_table td {
  width: calc(70% / 3);
  vertical-align: middle;
  font-size: 30px;
}

@media (max-width: 767px) {
  #comparison_table td {
    display: table-cell !important;
    font-size: 15px;
    padding: 5px 0;
  }
}

/*===========
.scroll-box
===========*/
.scroll-box {
  overflow-x: auto;
  padding: 0 5% 0;
  padding-bottom: 10px;
  -webkit-overflow-scrolling: touch;
}

.scroll-box .price_table {
  margin-bottom: 10px;
}

/*===========
  scrollbar
  ===========*/
/*スクロールバー全体の高さ*/
.scroll-box::-webkit-scrollbar {
  height: 4px;
}

/*スクロールバー全体の背景*/
.scroll-box::-webkit-scrollbar-track {
  background: #eee;
}

/*スクロールバーの動く部分*/
.scroll-box::-webkit-scrollbar-thumb {
  background: #aaa;
  border: none;
}

/*スクロールバーの動く部分のホバー（マウスオーバー）*/
.scroll-box::-webkit-scrollbar-thumb:hover {
  background: #999;
}

/*ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーー
#support_page
ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーーー*/
#support_page {
  /*ーーーーーーーーーー
    .point
    ーーーーーーーーーーー*/
  /*ーーーーーーーーーー
    .comparison
    ーーーーーーーーーーー*/
  /*ーーーーーーーーーー
    .remote
    ーーーーーーーーーーー*/
  /*ーーーーーーーーーー
    .maintenance
    ーーーーーーーーーーー*/
}

#support_page .fvWrap {
  background: url(../img/support1.png) no-repeat center right;
  background-size: cover;
}

@media (max-width: 767px) {
  #support_page .fvWrap {
    background: url(../img/support1.png) no-repeat center right -140px;
    background-size: cover;
  }
}

@media (max-width: 767px) {
  #support_page .point .ttl_n {
    font-size: 18px;
  }
}

#support_page .point .txt_center img {
  width: 400px;
}

#support_page .point .txt_center a {
  text-decoration: underline;
}

#support_page .point .txt_center a:hover {
  text-decoration: none;
}

#support_page .comparison {
  margin-top: 150px;
}

@media (max-width: 767px) {
  #support_page .comparison {
    margin-top: 0px;
  }
}

#support_page .comparison .ttl_n {
  line-height: 1.2;
  margin-top: 80px;
}

@media (max-width: 767px) {
  #support_page .comparison .ttl_n {
    margin-top: 50px;
  }
}

#support_page .comparison .ttl_n span {
  font-size: .6em;
  font-weight: bold;
}

#support_page .remote {
  margin-top: 150px;
  background: #F8F8F8;
  padding-bottom: 100px;
}

@media (max-width: 767px) {
  #support_page .remote {
    margin-top: 50px;
    padding: 0 5% 50px;
  }
}

#support_page .remote .ttl_n {
  margin-top: -30px;
  display: inline-block;
  width: 100%;
  text-align: center;
  padding-bottom: 50px;
}

#support_page .remote .remote_box {
  border: #D6D6D6 solid 1px;
  margin: 50px auto 0;
  padding: 30px;
  max-width: 1200px;
}

#support_page .remote .remote_box p {
  margin-bottom: 30px;
}

#support_page .maintenance {
  margin-top: 150px;
}

@media (max-width: 767px) {
  #support_page .maintenance {
    margin-top: 50px;
    padding: 0 5% 50px;
  }
}

#support_page .maintenance .ttl_n {
  margin-bottom: 50px;
}

#support_page .maintenance .maintenance_box {
  margin: 50px auto 150px;
  background: #F8F8F8;
  padding: 60px 0;
}

@media (max-width: 767px) {
  #support_page .maintenance .maintenance_box {
    margin-bottom: 0px;
  }
}

#support_page .maintenance .maintenance_box .flex_wrap {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}

#support_page .maintenance .maintenance_box .flex_wrap .left {
  padding-right: 30px;
}

@media (max-width: 767px) {
  #support_page .maintenance .maintenance_box .flex_wrap .left {
    padding: 0;
    text-align: center;
  }
}

#support_page .maintenance .maintenance_box .flex_wrap .left p {
  font-size: 20px;
  color: #0068C1;
  font-weight: bold;
}

#support_page .maintenance .maintenance_box .flex_wrap ul {
  border-left: 1px solid #0068C1;
  padding-left: 30px;
}

@media (max-width: 767px) {
  #support_page .maintenance .maintenance_box .flex_wrap ul {
    border: none;
    padding: 20px;
  }
}

#support_page .maintenance .maintenance_box .flex_wrap ul li {
  line-height: 2;
  font-weight: bold;
  font-size: 24px;
  color: #0068C1;
}

#support_page .maintenance .maintenance_box .flex_wrap ul li span {
  font-size: .7em;
  color: #000;
}

@media (max-width: 767px) {
  #support_page .maintenance .maintenance_box .flex_wrap ul li span {
    display: block;
  }
}

#support_page .maintenance .maintenance_box .btn_wrap {
  margin-top: 80px;
}

@media (max-width: 767px) {
  #support_page .maintenance .maintenance_box .btn_wrap {
    margin-top: 50px;
  }
}

#support_page .maintenance .maintenance_box .btn_wrap a {
  font-size: 30px;
}

#support_page .environment {
  background: url(../img/bk.gif) repeat;
  padding-bottom: 100px;
  margin-top: 150px;
}

@media (max-width: 767px) {
  #support_page .environment {
    margin-top: 100px;
  }
}

#support_page .environment .ttl_n {
  display: inline-block;
  width: 100%;
  text-align: center;
  margin-top: -30px;
  padding-bottom: 80px;
}

#support_page .environment .comment {
  font-weight: bold;
  color: #0068C1;
  margin-bottom: 50px;
  padding: 5%;
}

#support_page .faq {
  margin-top: 150px;
}

@media (max-width: 767px) {
  #support_page .faq {
    margin-top: 50px;
  }
}

#support_page .faq .faq_list {
  margin: 50px auto 120px;
  max-width: 1100px;
}

#support_page .faq .faq_list li {
  background: #F8F8F8;
  margin-bottom: 30px;
  padding: 0 20px;
}

#support_page .faq .faq_list li dl {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-top: 1px solid #D6D6D6;
  padding: 20px 0;
}

#support_page .faq .faq_list li dl dt {
  width: 6%;
  font-size: 30px;
  font-weight: bold;
  color: #0068C1;
}

@media (max-width: 767px) {
  #support_page .faq .faq_list li dl dt {
    width: 10%;
  }
}

#support_page .faq .faq_list li dl dd {
  width: 94%;
}

@media (max-width: 767px) {
  #support_page .faq .faq_list li dl dd {
    width: 90%;
  }
}

#support_page .faq .faq_list li dl:first-child {
  border: none;
}

#support_page .faq .faq_list li dl:first-child dt {
  color: #767676;
}

#support_table tr:first-child th {
  font-size: 20px;
  width: 15% !important;
  text-align: center;
  color: #fff;
}

#support_table tr:first-child th:first-child {
  width: 70%;
}

#support_table th {
  width: 70% !important;
  font-size: 20px;
  vertical-align: middle;
  color: #0068C1;
  font-weight: bold;
  text-align: left;
}

#support_table th h4 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}

#support_table th p {
  font-size: 15px;
  color: #000;
}

@media (max-width: 767px) {
  #support_table th {
    display: table-cell !important;
    font-size: 15px;
    white-space: nowrap;
    padding: 5px;
  }
}

#support_table td {
  width: 15% !important;
  vertical-align: middle;
  font-size: 30px;
}

@media (max-width: 767px) {
  #support_table td {
    display: table-cell !important;
    font-size: 15px;
    padding: 5px 0;
  }
}

#en_table tr:first-child th {
  font-size: 20px;
  width: calc(65% / 2);
  text-align: center;
  color: #fff;
}

#en_table tr:first-child th:first-child {
  width: 35%;
}

#en_table th {
  width: 35% !important;
  font-size: 20px;
  vertical-align: middle;
  color: #0068C1;
  font-weight: bold;
}

#en_table th h4 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}

#en_table th p {
  font-size: 15px;
  color: #000;
}

@media (max-width: 767px) {
  #en_table th {
    display: table-cell !important;
    font-size: 15px;
    white-space: nowrap;
    padding: 5px;
  }
  #en_table th img {
    max-width: 220px;
    width: 220px !important;
  }
}

#en_table td {
  width: 15% !important;
  vertical-align: middle;
  font-size: 20px !important;
}

@media (max-width: 767px) {
  #en_table td {
    display: table-cell !important;
    font-size: 15px;
    white-space: nowrap;
  }
  #en_table td p {
    padding: 0 20px;
  }
}

#en_table td h4 {
  font-size: 24px;
  color: #0068C1;
  font-weight: bold;
}

/*ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーー
Leica商品のお問い合わせ
ーーーーーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーーーーーーーー*/
.contact {
  margin: 0 0 100px;
}

.contact h2 {
  margin-top: 100px;
  text-align: center;
  font-size: 60px;
  font-weight: bold;
  margin-bottom: 30px;
}

@media (max-width: 767px) {
  .contact h2 {
    font-size: 50px;
  }
}

.contact .sub {
  text-align: center;
  margin-bottom: 40px;
}

.contact .checkbox_wrap {
  max-width: 1000px;
  padding: 1em;
  background: #222;
  border-radius: 5px;
  margin: 20px auto;
}

.contact .checkbox_wrap h3 {
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  margin-bottom: 20px;
}

.contact .checkbox_wrap ul {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}

.contact .checkbox_wrap ul li {
  width: calc(100% / 3);
  margin-bottom: 10px;
}

@media (max-width: 767px) {
  .contact .checkbox_wrap ul li {
    width: 50%;
  }
}

.contact .checkbox_wrap ul li label {
  font-size: 18px;
}

.contact .commentary {
  font-size: 18px;
  text-align: center;
  margin: 50px auto 40px;
}

.contact .table_wrap {
  max-width: 1120px;
  margin: auto;
}

@media (max-width: 767px) {
  .contact .table_wrap {
    width: 96%;
  }
}

.contact .table_wrap table {
  width: 100%;
  table-layout: fixed;
}

.contact .table_wrap table tr {
  width: 100%;
}

.contact .table_wrap table sup {
  font-size: 10px;
  vertical-align: top;
}

.contact .table_wrap table th {
  width: 20%;
  text-align: left;
  vertical-align: middle;
  background: #323232;
  color: #fff;
  font-size: 16px;
  padding: 1em;
  border: #222 solid 1px;
  border-right: none;
}

@media (max-width: 767px) {
  .contact .table_wrap table th {
    display: block;
    width: 100%;
  }
}

.contact .table_wrap table td {
  border: #404040 solid 1px;
  border-left: none;
  font-size: 16px;
  padding: 1em;
  vertical-align: middle;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
}

@media (max-width: 767px) {
  .contact .table_wrap table td {
    display: block;
    width: 100%;
    border-right: none;
  }
}

.contact .table_wrap table td input {
  width: 100%;
  margin: auto;
  height: 1.5em;
}

.contact .table_wrap table td .half {
  width: 50%;
}

@media (max-width: 767px) {
  .contact .table_wrap table td .half {
    width: 100%;
  }
}

.contact .table_wrap table td .half span {
  width: 17%;
  display: inline-block;
  text-align: center;
}

.contact .table_wrap table td .half input {
  width: 80%;
}

.contact .table_wrap table td .ttl {
  width: 30%;
  font-size: 16px;
  vertical-align: middle;
  padding: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #222;
}

.contact .table_wrap table td .post {
  width: 70%;
}

.contact .table_wrap table td .post input {
  width: 20%;
}

.contact .table_wrap table td .pad1 {
  padding: 1em;
  width: 70%;
}

.contact .table_wrap table td .example {
  width: 100%;
  font-size: 12px;
  display: block;
}

.contact .table_wrap table td p.w100 {
  width: 99.5%;
}

.contact .table_wrap table td textarea {
  width: 100%;
}

.contact .table_wrap table .no_p {
  padding: 0;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media (max-width: 767px) {
  .contact .table_wrap table .no_p {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}

.contact .verification {
  font-size: 18px;
  margin: 70px 0;
  text-align: center;
}

.contact .scroll {
  max-width: 1000px;
  margin: auto;
  height: 230px;
  border: #fff solid 1px;
  padding: 1em;
}

.contact .scroll p {
  font-size: 16px;
  margin: 1em 0;
}

.contact p.agree {
  text-align: center;
  margin: 20px auto;
}

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

.contact .btn_wrap button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  border-radius: 0;
  font-weight: bold;
  font-size: 28px;
  padding: 1em;
  color: #fff;
}

.contact .tel_wrap {
  max-width: 1000px;
  border-radius: 5px;
  margin: 100px auto 50px;
}

.contact .tel_wrap h3 {
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  margin-bottom: 20px;
}

.contact .tel_wrap p {
  text-align: center;
  font-size: 40px;
  font-weight: bold;
}
/*# sourceMappingURL=common.css.map */