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

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

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

.cnt, header .inner, .mainimg_wrap .copyarea .inner, .top .ct1 .ct_wrap, .top .ct2 .ct_wrap, .ct3 .ct_wrap, .ct4 .ct_wrap, .ct5 .ct_wrap, .ct6 .ct_wrap {
  width: 1024px;
}

/* ========================================================= */
/* カラー */
/* ========================================================= */
.brown {
  color: #82400f;
}

.red_d {
  color: #cc0707;
}

/* ========================================================= */
/* フォントサイズ */
/* ========================================================= */
.fs10 {
  font-size: 1.0rem;
}

.fs11 {
  font-size: 1.1rem;
}

.fs12 {
  font-size: 1.2rem;
}

.fs13 {
  font-size: 1.3rem;
}

.fs14 {
  font-size: 1.4rem;
}

.fs15 {
  font-size: 1.5rem;
}

.fs16 {
  font-size: 1.6rem;
}

.fs17 {
  font-size: 1.7rem;
}

.fs18 {
  font-size: 1.8rem;
}

.fs19 {
  font-size: 1.9rem;
}

.fs20 {
  font-size: 2.0rem;
}

.fs21 {
  font-size: 2.1rem;
}

.fs22 {
  font-size: 2.2rem;
}

.fs23 {
  font-size: 2.3rem;
}

.fs24 {
  font-size: 2.4rem;
}

.fs25 {
  font-size: 2.5rem;
}

.fs26 {
  font-size: 2.6rem;
}

.fs27 {
  font-size: 2.7rem;
}

.fs28 {
  font-size: 2.8rem;
}

.fs29 {
  font-size: 2.9rem;
}

.fs30 {
  font-size: 3.0rem;
}

/* ========================================================= */
/* フォントタイプ */
/* ========================================================= */
.f_g1, .contact_nav ul li a, article p, article ul, article table th, article table td, article .smlb, footer p, footer span, .top .ct1 .mv-info ol, .top .ct1 .ibox figcaption, .top .ct1 .ex-gallery figure figcaption {
  font-family: "游ゴシック体",YuGothic,"游ゴシック","Yu Gothic",sans-serif;
  font-weight: 500;
}

.f_g2 {
  font-family: "メイリオ",Meiryo,sans-serif;
}

.f_m1 {
  font-family: "游明朝", YuMincho,serif;
  font-weight: 500;
}

.f_m1_n {
  font-family: "游明朝", YuMincho,serif;
  font-weight: 300;
}

.f_noto, .mainimg_wrap .copyarea .inner h1 {
  font-family: "Noto Sans JP", sans-serif;
}

/* ========================================================= */
/* 装飾 */
/* ========================================================= */
.bold {
  font-weight: bold;
}

.bold_red {
  font-weight: bold;
  color: red;
}

.normal {
  font-weight: normal;
}

.imgborder {
  border: 1px solid #999;
}

/* ========================================================= */
/* 表示 */
/* ========================================================= */
.nodisp {
  text-indent: -9999px;
}

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

.hor {
  letter-spacing: -.4em;
}

.hor li, .hor dt, .hor dd, .hor div {
  display: inline-block;
  letter-spacing: normal;
}

.hor_tb {
  display: table;
}

.hor_tb dt, .hor_tb dd, .hor_tb div {
  display: table-cell;
}

/* ========================================================= */
/* レイアウト調整 */
/* ========================================================= */
.al_right {
  text-align: right;
}

.al_left {
  text-align: left;
}

.al_center {
  text-align: center;
}

.f_left {
  float: left;
}

.f_right {
  float: right;
}

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

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

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

.mauto, header .inner, .mainimg_wrap, .mainimg_wrap .par-mainimg, .mainimg_wrap .copyarea .inner, .top .ct1 .ct_wrap, .top .ct2 .ct_wrap, .ct3 .ct_wrap, .ct4 .ct_wrap, .ct5 .ct_wrap, .ct6 .ct_wrap, article .mauto, article header .inner, header article .inner, article .mainimg_wrap, article .mainimg_wrap .par-mainimg, .mainimg_wrap article .par-mainimg, article .mainimg_wrap .copyarea .inner, .mainimg_wrap .copyarea article .inner, article .top .ct1 .ct_wrap, .top .ct1 article .ct_wrap, article .top .ct2 .ct_wrap, .top .ct2 article .ct_wrap, article .ct3 .ct_wrap, .ct3 article .ct_wrap, article .ct4 .ct_wrap, .ct4 article .ct_wrap, article .ct5 .ct_wrap, .ct5 article .ct_wrap, article .ct6 .ct_wrap, .ct6 article .ct_wrap {
  margin-left: auto;
  margin-right: auto;
}

.mg, article .mg {
  margin: 0;
}

.mg5, article .mg5 {
  margin: 5px;
}

.mg10, article .mg10 {
  margin: 10px;
}

.mg20, article .mg20 {
  margin: 20px;
}

.mg30, article .mg30 {
  margin: 30px;
}

.mg40, article .mg40 {
  margin: 40px;
}

.mg50, article .mg50 {
  margin: 50px;
}

.mg60, article .mg60 {
  margin: 60px;
}

.mg70, article .mg70 {
  margin: 70px;
}

.mg80, article .mg80 {
  margin: 80px;
}

.mg90, article .mg90 {
  margin: 90px;
}

.mg100, article .mg100 {
  margin: 100px;
}

.mtop, article .mtop {
  margin-top: 0;
}

.mtop5, article .mtop5 {
  margin-top: 5px;
}

.mtop10, article .mtop10 {
  margin-top: 10px;
}

.mtop20, article .mtop20 {
  margin-top: 20px;
}

.mtop30, article .mtop30 {
  margin-top: 30px;
}

.mtop40, article .mtop40 {
  margin-top: 40px;
}

.mtop50, article .mtop50 {
  margin-top: 50px;
}

.mtop60, article .mtop60 {
  margin-top: 60px;
}

.mtop70, article .mtop70 {
  margin-top: 70px;
}

.mtop80, article .mtop80 {
  margin-top: 80px;
}

.mtop90, article .mtop90 {
  margin-top: 90px;
}

.mtop100, article .mtop100 {
  margin-top: 100px;
}

.mbottom, article .mbottom {
  margin-bottom: 0;
}

.mbottom5, article .mbottom5 {
  margin-bottom: 5px;
}

.mbottom10, article .mbottom10 {
  margin-bottom: 10px;
}

.mbottom20, article .mbottom20 {
  margin-bottom: 20px;
}

.mbottom30, article .mbottom30 {
  margin-bottom: 30px;
}

.mbottom40, article .mbottom40 {
  margin-bottom: 40px;
}

.mbottom50, article .mbottom50 {
  margin-bottom: 50px;
}

.mbottom60, article .mbottom60 {
  margin-bottom: 60px;
}

.mbottom70, article .mbottom70 {
  margin-bottom: 70px;
}

.mbottom80, article .mbottom80 {
  margin-bottom: 80px;
}

.mbottom90, article .mbottom90 {
  margin-bottom: 90px;
}

.mbottom100, article .mbottom100 {
  margin-bottom: 100px;
}

.mleft, article .mleft {
  margin-left: 0;
}

.mleft5, article .mleft5 {
  margin-left: 5px;
}

.mleft10, article .mleft10 {
  margin-left: 10px;
}

.mleft20, article .mleft20 {
  margin-left: 20px;
}

.mleft30, article .mleft30 {
  margin-left: 30px;
}

.mleft40, article .mleft40 {
  margin-left: 40px;
}

.mleft50, article .mleft50 {
  margin-left: 50px;
}

.mleft60, article .mleft60 {
  margin-left: 60px;
}

.mleft70, article .mleft70 {
  margin-left: 70px;
}

.mleft80, article .mleft80 {
  margin-left: 80px;
}

.mleft90, article .mleft90 {
  margin-left: 90px;
}

.mleft100, article .mleft100 {
  margin-left: 100px;
}

.mright, article .mright {
  margin-right: 0;
}

.mright5, article .mright5 {
  margin-right: 5px;
}

.mright10, article .mright10 {
  margin-right: 10px;
}

.mright20, article .mright20 {
  margin-right: 20px;
}

.mright30, article .mright30 {
  margin-right: 30px;
}

.mright40, article .mright40 {
  margin-right: 40px;
}

.mright50, article .mright50 {
  margin-right: 50px;
}

.mright60, article .mright60 {
  margin-right: 60px;
}

.mright70, article .mright70 {
  margin-right: 70px;
}

.mright80, article .mright80 {
  margin-right: 80px;
}

.mright90, article .mright90 {
  margin-right: 90px;
}

.mright100, article .mright100 {
  margin-right: 100px;
}

.pd, article .pd {
  padding: 0;
}

.pd5, article .pd5 {
  padding: 5px;
}

.pd10, article .pd10 {
  padding: 10px;
}

.pd20, article .pd20 {
  padding: 20px;
}

.pd30, article .pd30 {
  padding: 30px;
}

.pd40, article .pd40 {
  padding: 40px;
}

.pd50, article .pd50 {
  padding: 50px;
}

.pd60, article .pd60 {
  padding: 60px;
}

.pd70, article .pd70 {
  padding: 70px;
}

.pd80, article .pd80 {
  padding: 80px;
}

.pd90, article .pd90 {
  padding: 90px;
}

.pd100, article .pd100 {
  padding: 100px;
}

.pdtop, article .pdtop {
  padding-top: 0;
}

.pdtop5, article .pdtop5 {
  padding-top: 5px;
}

.pdtop10, article .pdtop10 {
  padding-top: 10px;
}

.pdtop20, article .pdtop20 {
  padding-top: 20px;
}

.pdtop30, article .pdtop30 {
  padding-top: 30px;
}

.pdtop40, article .pdtop40 {
  padding-top: 40px;
}

.pdtop50, article .pdtop50 {
  padding-top: 50px;
}

.pdtop60, article .pdtop60 {
  padding-top: 60px;
}

.pdtop70, article .pdtop70 {
  padding-top: 70px;
}

.pdtop80, article .pdtop80 {
  padding-top: 80px;
}

.pdtop90, article .pdtop90 {
  padding-top: 90px;
}

.pdtop100, article .pdtop100 {
  padding-top: 100px;
}

.pdbottom, article .pdbottom {
  padding-bottom: 0;
}

.pdbottom5, article .pdbottom5 {
  padding-bottom: 5px;
}

.pdbottom10, article .pdbottom10 {
  padding-bottom: 10px;
}

.pdbottom20, article .pdbottom20 {
  padding-bottom: 20px;
}

.pdbottom30, article .pdbottom30 {
  padding-bottom: 30px;
}

.pdbottom40, article .pdbottom40 {
  padding-bottom: 40px;
}

.pdbottom50, article .pdbottom50 {
  padding-bottom: 50px;
}

.pdbottom60, article .pdbottom60 {
  padding-bottom: 60px;
}

.pdbottom70, article .pdbottom70 {
  padding-bottom: 70px;
}

.pdbottom80, article .pdbottom80 {
  padding-bottom: 80px;
}

.pdbottom90, article .pdbottom90 {
  padding-bottom: 90px;
}

.pdbottom100, article .pdbottom100 {
  padding-bottom: 100px;
}

.pdleft, article .pdleft {
  padding-left: 0;
}

.pdleft5, article .pdleft5 {
  padding-left: 5px;
}

.pdleft10, article .pdleft10 {
  padding-left: 10px;
}

.pdleft20, article .pdleft20 {
  padding-left: 20px;
}

.pdleft30, article .pdleft30 {
  padding-left: 30px;
}

.pdleft40, article .pdleft40 {
  padding-left: 40px;
}

.pdleft50, article .pdleft50 {
  padding-left: 50px;
}

.pdleft60, article .pdleft60 {
  padding-left: 60px;
}

.pdleft70, article .pdleft70 {
  padding-left: 70px;
}

.pdleft80, article .pdleft80 {
  padding-left: 80px;
}

.pdleft90, article .pdleft90 {
  padding-left: 90px;
}

.pdleft100, article .pdleft100 {
  padding-left: 100px;
}

.pdright, article .pdright {
  padding-right: 0;
}

.pdright5, article .pdright5 {
  padding-right: 5px;
}

.pdright10, article .pdright10 {
  padding-right: 10px;
}

.pdright20, article .pdright20 {
  padding-right: 20px;
}

.pdright30, article .pdright30 {
  padding-right: 30px;
}

.pdright40, article .pdright40 {
  padding-right: 40px;
}

.pdright50, article .pdright50 {
  padding-right: 50px;
}

.pdright60, article .pdright60 {
  padding-right: 60px;
}

.pdright70, article .pdright70 {
  padding-right: 70px;
}

.pdright80, article .pdright80 {
  padding-right: 80px;
}

.pdright90, article .pdright90 {
  padding-right: 90px;
}

.pdright100, article .pdright100 {
  padding-right: 100px;
}

.dis-b {
  display: block;
}

.dis-ib {
  display: inline-block;
}

.pos-rl {
  position: relative;
}

.pos-fix {
  position: fixed;
  z-index: 500;
}

.of {
  overflow: hidden;
}

.br-pc, .dn-sp {
  display: block;
}

.br-sp, .dn-pc {
  display: none;
}

.clearfix:before, .clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}

.clearfix {
  *zoom: 1;
}

/* ========================================================= */
/* Width調整 */
/* ========================================================= */
.w5 {
  width: 5%;
}

.w6 {
  width: 6%;
}

.w8 {
  width: 8%;
}

.w10 {
  width: 10%;
}

.w12 {
  width: 12%;
}

.w15 {
  width: 15%;
}

.w18 {
  width: 18%;
}

.w20 {
  width: 20%;
}

.w25 {
  width: 25%;
}

.w30 {
  width: 30%;
}

.w33 {
  width: 33.3%;
}

.w35 {
  width: 35%;
}

.w40 {
  width: 40%;
}

.w45 {
  width: 45%;
}

.w48 {
  width: 48%;
}

.w50 {
  width: 50%;
}

.w55 {
  width: 55%;
}

.w60 {
  width: 60%;
}

.w65 {
  width: 65%;
}

.w70 {
  width: 70%;
}

.w75 {
  width: 75%;
}

.w80 {
  width: 80%;
}

.w85 {
  width: 85%;
}

.w90 {
  width: 90%;
}

.w92 {
  width: 92%;
}

.w93 {
  width: 93%;
}

.w94 {
  width: 94%;
}

.w95 {
  width: 95%;
}

.w96 {
  width: 96%;
}

.w97 {
  width: 97%;
}

.w98 {
  width: 98%;
}

.w99 {
  width: 99%;
}

.w100 {
  width: 100%;
}

html {
  height: 100%;
  font-size: 62.5%;
}

body {
  text-align: center;
  color: #1e1e1e;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", メイリオ, Meiryo, "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: 1.6rem;
  overflow-x: hidden;
  background-color: white;
  position: relative;
  min-width: 1024px;
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
}

p, li, dt, dd, table, th, td {
  line-height: 1.8;
}

img {
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: bottom;
}

a {
  color: #1e1e1e;
  text-decoration: none;
  text-decoration: none;
  /*	-webkit-transition: 0.3s ease-in-out;
  	   -moz-transition: 0.3s ease-in-out;
  	     -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out;*/
}
a.link-color {
  color: #9b0606;
  font-weight: bold;
}
a:visited {
  color: #1e1e1e;
}
a.noborder {
  text-decoration: none;
}
a.noborder:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=10);
  opacity: 0.1;
}

a:hover, a:hover img, input[type="submit"]:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
}

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]:focus,
input[type="button"]:focus {
  outline-offset: -2px;
}

/* ====================================================================== */
/* HEADER */
/* ====================================================================== */
header {
  width: 100%;
  position: fixed;
  overflow: hidden;
  background-color: rgba(54, 60, 67, 0.9);
  z-index: 200;
  top: 0;
}
header .inner {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  padding: 15px 0;
}

.contact_nav ul {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  position: relative;
}
.contact_nav ul li {
  margin-right: 1.5em;
  position: relative;
  text-align: left;
}
.contact_nav ul li a {
  padding-left: 2em;
  font-size: 1.4rem;
  color: white;
  font-weight: bold;
  position: relative;
}
.contact_nav ul li a::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.contact_nav ul li.top a::before {
  background: url(../img/common/top.svg) no-repeat;
  background-size: contain;
}
.contact_nav ul li.company a::before {
  background: url(../img/common/info.svg) no-repeat;
  background-size: contain;
}
.contact_nav ul li.contact {
  margin-right: auto;
}
.contact_nav ul li.contact a::before {
  background: url(../img/common/envelope.svg) no-repeat;
  background-size: contain;
}

/* ====================================================================== */
/* CONTENT */
/* ====================================================================== */
article {
  width: 100%;
  position: relative;
  left: 0;
  z-index: 100;
  overflow: hidden;
}
article p {
  margin-top: 50px;
  text-align: left;
}
article p strong {
  font-weight: bold;
  font-size: 1.8rem;
}
article ul {
  margin-top: 50px;
  text-align: left;
}
article ul.list_disc li {
  margin-left: 1em;
  list-style-type: disc;
}
article table {
  margin-top: 50px;
  border-collapse: collapse;
}
article table th, article table td {
  padding: .5em;
  line-height: 1.3;
}
article table th {
  font-weight: bold;
}
article table td {
  text-align: left;
}
article .ibox {
  margin-top: 50px;
  /*    text-align: left;*/
}
article a.linktxt {
  font-weight: bold;
  color: #005cbb;
}
article a.linktxt::after {
  margin-left: .75rem;
  font-family: "Font Awesome 5 Pro";
  content: "\f08e";
  font-weight: normal;
}
article .smlb {
  position: relative;
  line-height: 1.4;
  padding: 0.5em 2em;
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
}
article .smlb::before, article .smlb::after {
  position: absolute;
  top: 0;
  content: '';
  width: 8px;
  height: 100%;
  display: inline-block;
}
article .smlb::before {
  border-left: solid 1px #adadad;
  border-top: solid 1px #adadad;
  border-bottom: solid 1px #adadad;
  left: 0;
}
article .smlb::after {
  content: '';
  border-top: solid 1px #adadad;
  border-right: solid 1px #adadad;
  border-bottom: solid 1px #adadad;
  right: 0;
}

/* ====================================================================== */
/* Footer */
/* ====================================================================== */
footer {
  width: 100%;
  padding: 1em 0;
  text-align: center;
  overflow: hidden;
  background-color: #f6f6f6;
  position: relative;
  z-index: 100;
}
footer p {
  overflow: hidden;
  font-size: 1.2rem;
  color: #1e1e1e;
}
footer span {
  display: inline-block;
  font-size: 1.2rem;
}

#pagetop {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 200;
}
#pagetop a {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  background-color: #363c43;
  /*    @include border-radius(50%);*/
  color: white;
  font-size: 2.5rem;
}

/* ================================================================== */
/* TOP */
/* ================================================================== */
.parallax-slider {
  top: 0;
  left: 0;
}

.mainimg_wrap {
  width: 100%;
  height: 800px;
  position: relative;
  box-sizing: border-box;
}
.mainimg_wrap .par-mainimg {
  width: 100%;
  min-height: 800px;
  background: transparent;
}
.mainimg_wrap .copyarea {
  width: 100%;
  padding-bottom: 50px;
  /*    padding: 30px 0;*/
  /*    background-color: rgba($c_white,.9);*/
  position: absolute;
  bottom: 0;
}
.mainimg_wrap .copyarea .inner {
  text-align: left;
}
.mainimg_wrap .copyarea .inner div {
  display: table;
  background-color: rgba(255, 255, 255, 0.85);
  padding: 2em;
  padding: 30px;
}
.mainimg_wrap .copyarea .inner h1 {
  font-size: 4.2rem;
  font-size: 3.5rem;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: -.025em;
}
.mainimg_wrap .copyarea .inner h1 small {
  font-size: 3rem;
}
.mainimg_wrap .copyarea .inner h2 {
  margin-top: 0.5em;
  font-size: 2.1rem;
  color: #6e5523;
}
.mainimg_wrap .copyarea .inner p {
  margin-top: 1.5em;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5;
}
.mainimg_wrap .subsidy-link {
  margin: 30px 0 0;
  padding: 1em;
  display: table;
  background-color: #cc0707;
  color: white;
}

.top .ct_lb {
  display: -webkit-flex;
  display: flex;
  height: 100px;
  justify-content: center;
  align-items: center;
  background-color: #363c43;
  color: white;
  font-size: 3rem;
  position: relative;
  line-height: 1.3;
}
.top .ct_lb.ct_lb_sm {
  font-size: 2.4rem;
}
.top .ct_lb h3 {
  position: relative;
  z-index: 100;
}
.top .ct_lb::before {
  content: "";
  display: block;
  width: 300px;
  height: 100%;
  background-color: #1f4198;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
.top .ct_lb::after {
  content: "";
  position: absolute;
  top: 0;
  right: 300px;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent #1f4198 transparent transparent;
  border-width: 100px 80px 0 0;
  z-index: 1;
}
.top .ct1 {
  padding: 0 0 100px;
}
.top .ct1.ct-lead {
  padding-top: 100px;
  padding-bottom: 50px;
}
.top .ct1 .lb {
  color: #cc0707;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.3;
}
.top .ct1 .lb .lb_copy {
  display: block;
  margin-bottom: 0.5em;
}
.top .ct1 .lb small {
  display: block;
  margin-top: 10px;
  font-weight: normal;
  font-size: 1.8rem;
}
.top .ct1 .lb .contact-txt {
  display: inline-block;
  padding: .25em .5em;
  font-size: 2rem;
  border: 1px solid #cc0707;
  vertical-align: middle;
}
.top .ct1 .topic-1 {
  display: table;
  margin: 50px auto 0;
  padding: 1em;
  background-color: #f6fbff;
  border: 1px solid #4898d6;
}
.top .ct1 .topic-1 a {
  font-weight: bold;
  color: #005991;
  text-decoration: underline;
}
.top .ct1 .ct_wrap {
  position: relative;
}
.top .ct1 .mv-info {
  margin-top: 50px;
}
.top .ct1 .mv-info iframe {
  width: 700px;
  height: 380px;
  border: 15px solid #e4e4e4;
}
.top .ct1 .mv-info ol {
  display: table;
  margin: 50px auto 0;
}
.top .ct1 .mv-info ol li {
  margin-left: 1em;
  list-style-type: decimal;
  text-align: left;
}
.top .ct1 .mv-info ol li:first-child {
  margin-left: 0;
  font-weight: bold;
  list-style-type: none;
}
.top .ct1 .movie_wide {
  width: 700px;
  margin: 50px auto;
}
.top .ct1 .movie_wide iframe {
  display: block;
  width: 100%;
  height: 400px;
}
.top .ct1 .movie_wide video {
  width: 100%;
}
.top .ct1 .movie_wide .caption {
  margin-top: 15px;
  text-align: center;
}
.top .ct1 .movie {
  width: 480px;
  margin-top: 100px;
  margin-left: 100px;
  float: right;
  text-align: center;
}
.top .ct1 .movie video {
  width: 480px;
  height: auto;
}
.top .ct1 .movie video:nth-of-type(1) {
  margin-bottom: 50px;
}
.top .ct1 p strong {
  color: #82400f;
  font-weight: bold;
}
.top .ct1 p:nth-of-type(1) {
  *zoom: 1;
}
.top .ct1 p:nth-of-type(1):after {
  content: "";
  display: table;
  clear: both;
}
.top .ct1 .img_wrap1 {
  margin-top: 100px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.top .ct1 .ibox {
  margin-top: 70px;
}
.top .ct1 .ibox img {
  width: 100%;
}
.top .ct1 .ibox figcaption {
  display: block;
  margin-top: 20px;
  line-height: 1.5;
}
.top .ct1 .ibox.i007 img {
  width: 50%;
}
.top .ct1 .ibox.i007 figcaption {
  margin-top: 0;
}
.top .ct1 .ibox.i009 img {
  width: 60%;
}
.top .ct1 .ibox.ex-i001 img {
  width: 60%;
}
.top .ct1 .ibox.ex-i009 img {
  width: 60%;
}
.top .ct1 .ibox.ex-i017 {
  /*        padding-bottom: 100px;*/
}
.top .ct1 .ibox.ex-i017 img {
  width: 70%;
}
.top .ct1 .ibox.ex-i301 img {
  width: 70%;
}
.top .ct1 .ibox.ex-i301 + p {
  margin-bottom: 50px;
}
.top .ct1 .ibox.ex-large img {
  width: 94%;
}
.top .ct1 .ibox.ex-medium img {
  width: 60%;
}
.top .ct1 .ex-gallery {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.top .ct1 .ex-gallery-mtop figure {
  margin-top: 0 !important;
}
.top .ct1 .ex-gallery figure {
  margin-top: 50px;
  width: 33.33333%;
}
.top .ct1 .ex-gallery figure img {
  display: block;
  width: 80%;
  margin: 0 auto;
}
.top .ct1 .ex-gallery figure figcaption {
  display: block;
  margin-top: 20px;
  line-height: 1.5;
}
.top .ct1 .ex-gallery.col2 figure {
  width: 50%;
}
.top .ct1 .ex-gallery.col2 figure img {
  width: 88%;
}
.top .ct1 .ex-gallery.col4 figure {
  width: 25%;
}
.top .ct1 .ex-gallery.col4 figure img {
  width: 90%;
}
.top .ct1 .ex-gallery.col5 figure {
  width: 20%;
}
.top .ct1 .ex-gallery.col5 figure img {
  width: 90%;
}
.top .ct1 .ex-gallery.col5 figure figcaption {
  margin: 0 0 .5em;
}
.top .ct1 .ex-gallery.pos-center {
  -webkit-justify-content: center;
  justify-content: center;
}
.top .ct1 .spec-tb {
  width: 100%;
}
.top .ct1 .spec-tb th, .top .ct1 .spec-tb td {
  font-size: 1.4rem;
  border: 1px solid #ccc;
}
.top .ct1 .spec-tb th {
  background-color: #f7f7f7;
}
.top .ct1 .spec-tb td.ptn1 {
  background-color: #fffbee;
  font-size: 1.2rem;
}
.top .ct1 .spec-tb td small {
  font-size: 1.2rem;
}
.top .ct1 .spec-tb tr:nth-child(1) th {
  background-color: #4a4f55;
  color: white;
}
.top .ct1 .contact-info {
  margin-top: 50px;
}
.top .ct1 .contact-info p {
  text-align: center;
  color: #cc0707;
  font-size: 1.8rem;
  line-height: 1.3;
}
.top .ct1 .contact-info p strong {
  font-size: 2.4rem;
  font-weight: bold;
  color: #cc0707;
}
.top .ct1 .contact-info p.normal-txt {
  padding: 0 100px;
  font-size: 1.6rem;
  color: #1e1e1e;
  text-align: left;
  line-height: 1.8;
}
.top .ct1 .contact-info .link-btn {
  margin: 30px auto 0;
  padding: .75em 1.5em;
  display: table;
  background-color: #363c43;
  color: white;
  font-size: 1.8rem;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  position: relative;
}
.top .ct1 .contact-info .link-btn::before {
  content: "";
  display: inline-block;
  margin-right: .5em;
  width: 18px;
  height: 18px;
  background: url(../img/common/envelope.svg) no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.top .ct1 .contact-info .zoom-demo {
  display: table;
  margin: 50px auto 0;
  padding: 30px 100px;
  border: 10px solid #cce0ee;
  box-sizing: border-box;
}
.top .ct1 .contact-info .zoom-demo__heading {
  font-size: 3.2rem;
  font-weight: bold;
}
.top .ct1 .contact-info .zoom-demo ul {
  display: table;
  margin: 20px auto 0;
}
.top .ct1 .contact-info .zoom-demo ul li {
  font-size: 1.8rem;
  position: relative;
}
.top .ct1 .contact-info .zoom-demo ul li::before {
  content: "";
  display: inline-block;
  margin-right: 1em;
  width: 10px;
  height: 10px;
  background-color: #1666bf;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  vertical-align: middle;
}
.top .ct1 .contact-info .zoom-demo p {
  margin-top: 20px;
  color: #1e1e1e;
}
.top .ct1 .contact-info .zoom-demo img {
  display: block;
  width: 600px;
  margin: 20px auto 0;
}
.top .ct1 .bss {
  width: 700px;
  margin: 70px auto 0;
  text-align: center;
}
.top .ct1 .bss img {
  display: block;
  width: 400px;
  margin: 0 auto;
}
.top .ct1 .bss img + p {
  margin-top: 30px;
}
.top .ct1 .bss p {
  margin-top: 30px;
}
.top .ct1 .bss p strong {
  color: #cc0707;
  font-weight: bold;
}
.top .ct1 .bss p a {
  color: #cc0707;
  font-weight: bold;
  text-decoration: underline;
}
.top .ct2 {
  padding: 100px 0;
}
.top .ct2 .ct_wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  position: relative;
}
.top .ct2 .ct_wrap img {
  margin: 0 100px 0 0;
}
.top .ct2 .ct_wrap ul:nth-of-type(1) {
  margin-top: 0;
}
.top .ct2 .ct_wrap ul:nth-of-type(1) li strong {
  color: #82400f;
  font-weight: bold;
}

.ct3 {
  padding: 100px 0;
  background-color: black;
}

.ct4 {
  padding: 100px 0;
}
.ct4 .ct_wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  flex-direction: row-reverse;
  position: relative;
}
.ct4 .ct_wrap img {
  margin: 0 0 0 100px;
}
.ct4 .ct_wrap p:nth-of-type(1) {
  margin-top: 0;
}

.ct5 {
  padding: 100px 0;
}
.ct5 .ct_wrap .smlb:not(:nth-of-type(1)) {
  margin-top: 50px;
}
.ct5 .ct_wrap table {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.ct5 .ct_wrap table col:nth-of-type(1) {
  width: 40%;
}
.ct5 .ct_wrap table th,
.ct5 .ct_wrap table td {
  padding: 1em;
  text-align: center;
  vertical-align: middle;
  border: 1px solid #999;
}
.ct5 .ct_wrap table th {
  text-align: left;
}
.ct5 .ct_wrap table td small.sm {
  font-size: 1.1rem;
  vertical-align: top;
}
.ct5 .ct_wrap table tr:nth-of-type(odd) th,
.ct5 .ct_wrap table tr:nth-of-type(odd) td {
  background-color: rgba(244, 244, 244, 0.7);
}
.ct5 .ct_wrap .option {
  width: 90%;
  margin: 0 auto;
  color: #cc0707;
}
.ct5 .ct_wrap .option dl {
  display: table;
  width: 100%;
  text-align: left;
}
.ct5 .ct_wrap .option dl dt,
.ct5 .ct_wrap .option dl dd {
  display: table-cell;
}
.ct5 .ct_wrap .option dl dt {
  width: 20%;
}

.ct6 {
  padding: 100px 0;
}
.ct6 .ct_wrap .gallery {
  margin-top: 50px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.ct6 .ct_wrap .gallery div {
  width: 20%;
  text-align: center;
}
.ct6 .ct_wrap .gallery div p {
  margin-top: 10px;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.3;
}

/*@import "_smp";*/
