@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Oswald:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Oswald:wght@400;700&display=swap");
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
}

audio[controls],
canvas,
video {
  display: inline-block;
  *display: inline;
  zoom: 1;
}

html {
  font-size: 100%; /* 1 */
  overflow-y: scroll; /* 2 */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); /* 3 */
  -webkit-text-size-adjust: 100%; /* 4 */
  -ms-text-size-adjust: 100%; /* 4 */
}

body {
  margin: 0;
}

body,
button,
input,
select,
textarea {
  font-family: sans-serif;
}

a:focus {
  outline: thin dotted;
}

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

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

pre,
code,
kbd,
samp {
  font-family: monospace, monospace;
  _font-family: "courier new", monospace;
  font-size: 1em;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

q {
  quotes: none;
}

q:before,
q:after {
  content: "";
  content: none;
}

small {
  font-size: 75%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

ul,
ol {
  margin: 1em 0;
  padding: 0 0 0 40px;
}

dd {
  margin: 0 0 0 40px;
}

nav ul,
nav ol {
  /*list-style: none;*/
}

img {
  border: 0; /* 1 */
  -ms-interpolation-mode: bicubic; /* 2 */
}

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

figure {
  margin: 0;
}

form {
  margin: 0;
}

fieldset {
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0; /* 1 */
  *margin-left: -7px; /* 2 */
}

button,
input,
select,
textarea {
  font-size: 100%; /* 1 */
  margin: 0; /* 2 */
  vertical-align: baseline; /* 3 */
  *vertical-align: middle; /* 3 */
}

button,
input {
  line-height: normal; /* 1 */
  *overflow: visible; /* 2 */
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  cursor: pointer; /* 1 */
  -webkit-appearance: button; /* 2 */
}

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

input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto; /* 1 */
  vertical-align: top; /* 2 */
}

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

/*
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: normal;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
*/
html, body {
  width: 100%;
}

body {
  margin: 0px;
  padding: 0px;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Noto Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 16px;
  text-align: left;
  font-weight: normal;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 2em;
  letter-spacing: 0.02em;
  font-weight: bold;
  color: #353333;
}
@media screen and (max-width: 750px) {
  h1, h2, h3, h4, h5, h6 {
    font-size: 4vw;
  }
}

hr {
  display: none;
}

ul {
  margin: 0;
  padding: 0;
}
ul li {
  margin: 0;
  padding: 0;
}

p, li, dt, dd, th, td, figcaption, time, address {
  margin: 0px;
  padding: 0px;
  font-size: 16px;
  line-height: 2em;
  color: #1A1311;
}
@media screen and (max-width: 750px) {
  p, li, dt, dd, th, td, figcaption, time, address {
    font-size: 3.2vw;
  }
}

th p, td p {
  font-size: 100%;
}

p {
  margin-bottom: 2em;
}

a {
  color: #1A1311;
  text-decoration: underline;
  outline: none;
}

a.outline:focus {
  outline: 1px dotted;
}

a:focus {
  outline: none;
}

a:hover {
  text-decoration: none;
}

a img {
  margin: 0px;
  padding: 0px;
  border: none;
}

ol li p,
ul li p,
ol li table tr th,
ol li table tr td,
table tr td p,
table tr td ol li,
table tr td ul li,
table tr td ol li p,
table tr td ul li p {
  font-size: 100%;
}

ol.lmnone,
ul.lmnone {
  margin: 0;
  padding: 0;
  list-style: none;
}

ol.fllist li,
ul.fllist li {
  float: left;
  list-style: none;
}

/* dl table */
dl.table1 dt,
dl.table2 dt {
  margin: 0;
  margin-right: -110px;
  float: left;
  clear: both;
  display: inline;
  width: 110px;
}

dl.table1 dd {
  margin-left: 110px;
}

dl.table1 {
  /*\*/
  min-height: 1px;
  _height: 1%;
  /* */
  /*\*/ /*/
overflow: hidden;
/**/
}

dl.table1::after {
  height: 0;
  visibility: hidden;
  content: ".";
  display: block;
  clear: both;
}

dl.table2 dt {
  width: 120px;
  margin-right: -120px;
}

dl.table2 dd {
  margin-left: 120px;
}

form {
  margin: 0;
  padding: 0;
}

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

.cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

#layout {
  width: 100%;
  padding: 0;
  margin: 0;
}

.dwrap {
  position: relative;
  clear: both;
}

.dleft {
  float: left;
}

.dright {
  float: right;
}

/* スペースの調整用 */
.pt-15 {
  padding-top: -15px;
}

.pt0 {
  padding-top: 0;
}

.pt1em {
  padding-top: 1em;
}

.pt2em {
  padding-top: 2em;
}

.pt3em {
  padding-top: 3em;
}

.pt5 {
  padding-top: 5px;
}

.pt10 {
  padding-top: 10px;
}

.pt15 {
  padding-top: 15px;
}

.pt20 {
  padding-top: 20px;
}

.pt25 {
  padding-top: 25px;
}

.pt30 {
  padding-top: 30px;
}

.pt35 {
  padding-top: 35px;
}

.pt40 {
  padding-top: 40px;
}

.pt45 {
  padding-top: 45px;
}

.pt50 {
  padding-top: 50px;
}

.pt55 {
  padding-top: 55px;
}

.pt60 {
  padding-top: 60px;
}

.pt65 {
  padding-top: 65px;
}

.pt70 {
  padding-top: 70px;
}

.pt75 {
  padding-top: 75px;
}

.pt80 {
  padding-top: 80px;
}

.pt85 {
  padding-top: 85px;
}

.pt124 {
  padding-top: 124px;
}

.pb0 {
  padding-bottom: 0 !important;
}

.pb1em {
  padding-bottom: 1em;
}

.pb2em {
  padding-bottom: 2em;
}

.pb3em {
  padding-bottom: 3em;
}

.pb4em {
  padding-bottom: 4em;
}

.pb5em {
  padding-bottom: 5em;
}

.pb6em {
  padding-bottom: 6em;
}

.pb5 {
  padding-bottom: 5px;
}

.pb10 {
  padding-bottom: 10px;
}

.pb15 {
  padding-bottom: 15px;
}

.pb20 {
  padding-bottom: 20px;
}

.pb25 {
  padding-bottom: 25px;
}

.pb30 {
  padding-bottom: 30px;
}

.pb35 {
  padding-bottom: 35px;
}

.pb40 {
  padding-bottom: 40px;
}

.pb45 {
  padding-bottom: 45px;
}

.pb50 {
  padding-bottom: 50px;
}

.pb55 {
  padding-bottom: 55px;
}

.pb60 {
  padding-bottom: 60px;
}

.pb65 {
  padding-bottom: 65px;
}

.pb70 {
  padding-bottom: 70px;
}

.pb75 {
  padding-bottom: 75px;
}

.pb80 {
  padding-bottom: 80px;
}

.pb85 {
  padding-bottom: 85px;
}

.pb120 {
  padding-bottom: 120px;
}

.mt0 {
  margin-top: 0;
}

.mt1em {
  margin-top: 1em;
}

.mt2em {
  margin-top: 2em;
}

.mt3em {
  margin-top: 3em;
}

.mt4em {
  margin-top: 4em;
}

.mt5em {
  margin-top: 5em;
}

.mt6em {
  margin-top: 6em;
}

.mt7em {
  margin-top: 7em;
}

.mt8em {
  margin-top: 8em;
}

.mt9em {
  margin-top: 9em;
}

.mt5 {
  margin-top: 5px;
}

.mt10 {
  margin-top: 10px;
}

.mt15 {
  margin-top: 15px;
}

.mt20 {
  margin-top: 20px;
}

.mt25 {
  margin-top: 25px;
}

.mt30 {
  margin-top: 30px;
}

.mt35 {
  margin-top: 35px;
}

.mt40 {
  margin-top: 40px;
}

.mt45 {
  margin-top: 45px;
}

.mt50 {
  margin-top: 50px;
}

.mt55 {
  margin-top: 55px;
}

.mt60 {
  margin-top: 60px;
}

.mt65 {
  margin-top: 65px;
}

.mt70 {
  margin-top: 70px;
}

.mt75 {
  margin-top: 75px;
}

.mt80 {
  margin-top: 80px;
}

.mt85 {
  margin-top: 85px;
}

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

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

.mb1em {
  margin-bottom: 1em;
}

.mb2em {
  margin-bottom: 2em;
}

.mb3em {
  margin-bottom: 3em;
}

.mb4em {
  margin-bottom: 4em;
}

.mb5em {
  margin-bottom: 5em;
}

.mb6em {
  margin-bottom: 6em;
}

.mb7em {
  margin-bottom: 7em;
}

.mb8em {
  margin-bottom: 8em;
}

.mb9em {
  margin-bottom: 9em;
}

.mb7 {
  margin-bottom: 7px;
}

.mb5 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb35 {
  margin-bottom: 35px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb45 {
  margin-bottom: 45px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb55 {
  margin-bottom: 55px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb65 {
  margin-bottom: 65px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb75 {
  margin-bottom: 75px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb85 {
  margin-bottom: 85px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb95 {
  margin-bottom: 95px;
}

.mb120 {
  margin-bottom: 120px;
}

.pl1em {
  padding-left: 1em;
}

.ml1em {
  margin-left: 1em;
}

.rp0 {
  padding-right: 0;
}

.rm0 {
  margin-right: 0;
}

.pr10 {
  padding-right: 10px;
}

.pr20 {
  padding-right: 20px;
}

.pr35 {
  padding-right: 35px;
}

.pr50 {
  padding-right: 50px;
}

.pl15 {
  padding-left: 15px;
}

.pl20 {
  padding-left: 20px;
}

.pl25 {
  padding-left: 25px;
}

.pl30 {
  padding-left: 30px;
}

.pl340 {
  padding-left: 340px;
}

.bb5 {
  border-bottom: 5px solid #78BE00;
}

.bt5 {
  border-top: 5px solid #78BE00;
  padding-top: 70px;
}

.f11 {
  font-size: 11px !important;
}

.f12 {
  font-size: 12px !important;
}

.red {
  color: red;
}

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

.text-rightb {
  font-weight: bold;
  text-align: right;
}

.tcenter {
  text-align: center;
}

body {
  _zoom: 0.7;
}

.pcv {
  display: block;
}
@media screen and (max-width: 750px) {
  .pcv {
    display: none !important;
  }
}

.pcvin {
  display: inline-block;
}
@media screen and (max-width: 750px) {
  .pcvin {
    display: none;
  }
}

.spv {
  display: none;
}
@media screen and (max-width: 750px) {
  .spv {
    display: block;
  }
}

.spvin {
  display: none;
}
@media screen and (max-width: 750px) {
  .spvin {
    display: inline-block;
  }
}

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

.inview.fadeno {
  opacity: 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.inview.fadeno.show {
  opacity: 1;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.inview.fade,
.inview.fade1 {
  opacity: 0;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.inview.fade.show,
.inview.fade1.show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.inview.fade2 {
  opacity: 0;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.inview.fade2.show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.inview.fade3 {
  opacity: 0;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  -webkit-transition: 0.7s;
  transition: 0.7s;
}

.inview.fade3.show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}

.inview.fade4 {
  opacity: 0;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  -webkit-transition: 0.9s;
  transition: 0.9s;
}

.inview.fade4.show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.inview.left {
  opacity: 0;
  -webkit-transform: translateX(-30px);
          transform: translateX(-30px);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.inview.left.show {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.inview.right {
  opacity: 0;
  -webkit-transform: translateX(30px);
          transform: translateX(30px);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.inview.right.show {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.inview.right2 {
  opacity: 0;
  -webkit-transform: translateX(30px);
          transform: translateX(30px);
  -webkit-transition: 0.7s;
  transition: 0.7s;
}

.inview.right2.show {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}

.inview.right3 {
  opacity: 0;
  -webkit-transform: translateX(30px);
          transform: translateX(30px);
  -webkit-transition: 0.9s;
  transition: 0.9s;
}

.inview.right3.show {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.inview.d1.show {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.inview.d2.show {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.inview.d3.show {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

.inview.top::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #f2f2f2;
  z-index: 2;
  -webkit-transition: all 0.4s cubic-bezier(0, 0.48, 0.24, 0.96);
  transition: all 0.4s cubic-bezier(0, 0.48, 0.24, 0.96);
}

.inview.top::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  /* background-color: transparent; */
  z-index: 2;
  -webkit-transition: all 0.4s cubic-bezier(0, 0.48, 0.24, 0.96);
  transition: all 0.4s cubic-bezier(0, 0.48, 0.24, 0.96);
}

.inview.top.show::after, .inview.top.show::before {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}

.image.inview.top.show::after, .image.inview.top.show::before {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

#is-loading {
  top: 0;
  left: 0;
  z-index: 50;
  position: relative;
}

#loading {
  position: fixed;
  background: #FDFDFD;
  width: 100%;
  height: 100vh;
}
#loading .loadcopy {
  width: 80px;
  position: absolute;
  text-align: center;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#loading svg {
  display: none;
  width: auto;
  height: 80px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  #loading .loadcopy {
    max-width: 75%;
    height: auto;
  }
}

.contents,
main,
footer {
  position: relative;
  clear: both;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  text-align: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.footer_base,
.contents_base {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 1100px) {
  .footer_base,
  .contents_base {
    width: 90%;
  }
}
@media screen and (max-width: 750px) {
  .footer_base,
  .contents_base {
    width: 76.7%;
  }
}

main {
  position: relative;
  margin: 0 auto;
  z-index: 1;
}
@media screen and (max-width: 750px) {
  main {
    overflow: hidden;
  }
}

header {
  padding: 65px 140px 153px 70px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
header h1 {
  width: 239px;
  line-height: 0;
  font-size: 0;
}
header .header_contact {
  position: absolute;
  right: 140px;
  top: 30px;
  font-weight: bold;
}
header .header_contact a {
  position: relative;
  padding-bottom: 1.5em;
  color: #E64B0A;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
header .header_contact a:hover {
  opacity: 0.5;
}
header .header_contact a::after {
  position: absolute;
  left: calc(50% - 0.5em);
  bottom: 0;
  content: "▲";
  color: #ADA9A7;
  font-weight: normal;
  font-size: 8px;
}
header ul {
  list-style: none;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: end;
  -webkit-box-pack: end;
          justify-content: flex-end;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
header ul li {
  font-size: 20px;
  font-weight: bold;
  padding: 0 3.5em;
  letter-spacing: 0.1em;
  line-height: 1.1em;
  border-right: 1px solid #707070;
}
header ul li:first-child {
  padding-left: 0;
}
header ul li:last-child {
  padding-right: 0;
  border-right: none;
}
header ul li a {
  color: #707070;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
header ul li a:hover {
  color: #E64B0A;
}
@media screen and (max-width: 1400px) {
  header h1 {
    width: 239px;
  }
  header ul li {
    font-size: 1.35vw;
  }
}
@media screen and (max-width: 1160px) {
  header {
    padding: 5.6vw 12vw 13vw 6vw;
  }
  header h1 {
    width: 20vw;
  }
  header h1 img {
    width: 100%;
  }
  header ul li {
    font-size: 1.4vw;
    padding: 0 2.5em;
  }
}
@media screen and (max-width: 750px) {
  header {
    padding: 5.1vw 12vw 14.6vw 6.2vw;
  }
  header h1 {
    width: 41.3vw;
  }
  header ul {
    display: none;
  }
  header .header_contact {
    right: 43px;
    top: 65px;
  }
  header .header_contact a {
    padding-bottom: 0;
    padding-right: 1.5em;
  }
  header .header_contact a::after {
    left: auto;
    right: 0;
    bottom: auto;
    top: -0.2em;
    content: "▶";
    color: #ADA9A7;
    font-size: 8px;
  }
}

header ul li,
.din {
  font-family: "Oswald", sans-serif;
}

/* gnav */
/* sp menu */
#menu {
  position: fixed;
  width: 68px;
  height: 24px;
  right: 43px;
  top: 33px;
  cursor: pointer;
  margin: 0px;
  z-index: 40;
}
@media screen and (max-width: 1124px) {
  #menu {
    top: 2.5vw;
  }
}
@media screen and (max-width: 756px) {
  #menu {
    top: 1.8%;
  }
}
#menu::before, #menu::after,
#menu .icon {
  position: absolute;
  top: 8px;
  left: 0;
  width: 68px;
  height: 1px;
  background-color: #E64B0A;
  text-indent: -9999px;
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#menu::after {
  content: "";
  top: 16px;
  width: 68px;
  background: #E64B0A;
}
#menu::before {
  content: "";
  top: 24px;
  width: 68px;
  left: auto;
  right: 0;
  background: #E64B0A;
}
#menu .open {
  display: block;
}
#menu .close {
  display: none;
}
#menu.on::before {
  -webkit-transform: translateY(-8.5px) rotate(-45deg);
          transform: translateY(-8.5px) rotate(-45deg);
  background-color: #FFF;
}
#menu.on::after {
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
#menu.on .icon {
  -webkit-transform: translateY(8.5px) rotate(45deg);
          transform: translateY(8.5px) rotate(45deg);
  background-color: #FFF;
}
#menu.on .open {
  display: none;
}
#menu.on .close {
  display: block;
}
#menu p {
  position: absolute;
  width: 100%;
  bottom: 6px;
  font-size: 10px;
  margin: 0;
  line-height: 1.1em;
  color: #FFF;
  text-align: center;
}
@media screen and (max-width: 756px) {
  #menu {
    display: block;
  }
}

#spnav {
  position: fixed;
  display: none;
  opacity: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  margin: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  background: rgba(230, 75, 10, 0.95);
  z-index: 38;
}
#spnav .spnav_wrap {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#spnav .spnav_inner {
  position: relative;
  padding-right: 100px;
}
#spnav .spnav_inner:last-child {
  padding-right: 0;
}
#spnav .spnav_inner ul {
  list-style: none;
  margin-bottom: 1em;
}
#spnav .spnav_inner ul:last-child {
  margin-bottom: 0;
}
#spnav .spnav_inner ul li {
  color: white;
}
#spnav .spnav_inner ul li a {
  color: #FFF;
  text-decoration: none;
}
#spnav .spnav_inner ul li a:hover {
  opacity: 0.7;
}
#spnav .spnav_inner ul li.spli_title {
  opacity: 0.8;
}
#spnav h2 {
  width: 46.4vw;
  padding: 0 0 85px 0;
}
#spnav .spgnav {
  position: relative;
  display: inline-block;
  width: auto;
  list-style: none;
  left: auto;
}
#spnav .spgnav li {
  text-align: left;
  font-size: 18px;
  margin-bottom: 1em;
}
#spnav .spgnav li a {
  color: #FFF;
  text-decoration: none;
}
#spnav .spgnav li a:hover {
  opacity: 0.7;
}
#spnav .sns_nav li {
  width: 25px;
  margin: 0 22px 0 0;
}
#spnav.view {
  background: rgba(230, 75, 10, 0.95);
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
  opacity: 1;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
@media screen and (max-width: 900px) {
  #spnav .spnav_inner {
    padding-right: 11vw;
  }
}
@media screen and (max-width: 750px) {
  #spnav .spnav_wrap {
    width: 76.6%;
  }
  #spnav .spnav_wrap .spnav_inner {
    padding-right: 0;
    width: 50%;
  }
  #spnav .spnav_wrap .spnav_inner ul li {
    font-size: 3.2vw;
    line-height: 1.4em;
    margin-bottom: 1em;
  }
  #spnav .spnav_wrap .spnav_inner ul li .spnbr {
    display: block;
  }
}

footer {
  background: #EFEFEF;
  padding: 145px 0 135px 0;
}
@media screen and (max-width: 1160px) {
  footer {
    padding: 12.5vw 0 11.6vw 0;
  }
}
@media screen and (max-width: 750px) {
  footer {
    padding: 17.2vw 0 23.7vw 0;
  }
}

.footer_contact {
  text-align: center;
}
.footer_contact a {
  display: block;
  text-decoration: none;
  padding: 63px 0 70px 0;
  background: url(/common/images/share/icon_linkr1.svg) no-repeat center right 90px #FFF;
  background-size: 62px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.footer_contact a:hover {
  background: url(/common/images/share/icon_linkr1_on.svg) no-repeat center right 90px #E64B0A;
}
.footer_contact a:hover p,
.footer_contact a:hover h2 {
  color: #FFF;
}
.footer_contact p {
  font-size: 16px;
  margin: 0;
}
.footer_contact h2 {
  letter-spacing: 0.6em;
  font-size: 36px;
  line-height: 1.1em;
}
@media screen and (max-width: 1160px) {
  .footer_contact a {
    padding: 5.4vw 0 6vw 0;
    background: url(/common/images/share/icon_linkr1.svg) no-repeat center right 7.7vw #FFF;
    background-size: 5.3vw;
  }
  .footer_contact a:hover {
    background: url(/common/images/share/icon_linkr1_on.svg) no-repeat center right 7.7vw #E64B0A;
    background-size: 5.3vw;
  }
  .footer_contact p {
    font-size: 1.4vw;
  }
  .footer_contact h2 {
    font-size: 3.1vw;
  }
}
@media screen and (max-width: 750px) {
  .footer_contact a {
    padding: 6vw 0 18.1vw 0;
    background: url(/common/images/share/icon_linkr1.svg) no-repeat bottom 5.3vw center #FFF;
    background-size: 10.6vw;
  }
  .footer_contact a:hover {
    background: url(/common/images/share/icon_linkr1_on.svg) no-repeat bottom 5.3vw center #E64B0A;
    background-size: 10.6vw;
  }
  .footer_contact p {
    font-size: 1.8vw;
  }
  .footer_contact h2 {
    font-size: 6vw;
  }
}

.footer_add_nav {
  padding: 90px 0 130px 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.footer_add_nav article {
  width: 50%;
}
.footer_add_nav article h2 {
  width: 239px;
  line-height: 0;
  font-size: 0;
}
.footer_add_nav article div {
  padding-left: 100px;
}
.footer_add_nav article div p {
  font-size: 14px;
}
.footer_add_nav article:nth-child(2) {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
}
.footer_add_nav article:nth-child(2) ul {
  list-style: none;
  padding-right: 2em;
}
.footer_add_nav article:nth-child(2) ul li {
  letter-spacing: 0.1em;
  font-size: 20px;
}
.footer_add_nav article:nth-child(2) ul li a {
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.footer_add_nav article:nth-child(2) ul li a:hover {
  color: #E64B0A;
}
@media screen and (max-width: 1160px) {
  .footer_add_nav {
    padding: 7.7vw 0 11.2vw 0;
  }
  .footer_add_nav article h2 {
    width: 20vw;
  }
  .footer_add_nav article div {
    padding-left: 8.6vw;
  }
  .footer_add_nav article div p {
    font-size: 1.2vw;
  }
  .footer_add_nav article:nth-child(2) ul li {
    font-size: 1.7vw;
  }
}
@media screen and (max-width: 750px) {
  .footer_add_nav {
    padding: 9.3vw 0 0 0;
  }
  .footer_add_nav article {
    width: 100%;
  }
  .footer_add_nav article h2 {
    width: 45.8vw;
    margin-bottom: 10vw;
  }
  .footer_add_nav article div {
    padding-left: 0;
    margin-bottom: 12.3vw;
  }
  .footer_add_nav article div p {
    font-size: 3.2vw;
  }
  .footer_add_nav article:nth-child(2) ul li {
    font-size: 4.6vw;
  }
}

.copyright {
  text-align: center;
  background: #FFF;
  padding: 28px 0 38px 0;
  font-size: 16px;
}
@media screen and (max-width: 1160px) {
  .copyright {
    padding: 2.4vw 0 3.2vw 0;
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 750px) {
  .copyright {
    padding: 5.3vw 0 9.3vw 0;
    font-size: 2.8vw;
  }
}

#pagetop {
  position: fixed;
  right: 30px;
  bottom: 30px;
  width: 65px;
  line-height: 0;
  font-size: 0;
  z-index: 37;
}
#pagetop a {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
#pagetop a:hover {
  opacity: 0.5;
}
.dwrap {
  position: relative;
  width: 1080px;
  margin: 0 auto;
}
@media screen and (max-width: 1160px) {
  .dwrap {
    width: 90%;
  }
}
@media screen and (max-width: 750px) {
  .dwrap {
    width: 76.7vw;
  }
}

.page_title_yoko {
  text-align: center;
  width: 1600px;
  margin: 0 auto 155px auto;
}
.page_title_yoko h1 {
  display: block;
  position: relative;
  font-size: 49px;
  padding-bottom: 130px;
  margin-bottom: 35px;
  letter-spacing: 0.046em;
  width: 100%;
}
.page_title_yoko h1::after {
  position: absolute;
  content: "";
  display: block;
  left: calc(50% - 36px);
  bottom: 0;
  width: 72px;
  height: 72px;
  background: url(/common/images/share/title_slash.svg) no-repeat center center;
  background-size: 72px;
}
.page_title_yoko figure {
  line-height: 0;
  font-size: 0;
  height: 172px;
}
.page_title_yoko figure img {
  width: 100%;
  height: 172px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1680px) {
  .page_title_yoko {
    width: 90%;
  }
}
@media screen and (max-width: 1160px) {
  .page_title_yoko {
    margin: 0 auto 13.3vw auto;
  }
  .page_title_yoko h1 {
    font-size: 4.2vw;
    padding-bottom: 11.2vw;
    margin-bottom: 3vw;
  }
  .page_title_yoko h1::after {
    left: calc(50% - 3.1vw);
    width: 6.2vw;
    height: 6.2vw;
    background-size: 6.2vw;
  }
  .page_title_yoko figure {
    height: 14.8vw;
  }
  .page_title_yoko figure img {
    height: 14.8vw;
  }
}
@media screen and (max-width: 750px) {
  .page_title_yoko {
    width: 87vw;
    margin: 0 auto 14.1vw auto;
  }
  .page_title_yoko h1 {
    font-size: 9vw;
    padding-bottom: 18.6vw;
    margin-bottom: 10vw;
  }
  .page_title_yoko h1::after {
    left: calc(50% - 5vw);
    width: 10vw;
    height: 10vw;
    background-size: 10vw;
  }
  .page_title_yoko figure {
    height: 9.5vw;
  }
  .page_title_yoko figure img {
    height: 9.5vw;
  }
}

.home_image {
  position: relative;
  background: url(/common/images/home/home_image.jpg) no-repeat center center;
  background-size: cover;
  height: 960px;
  margin: 0 0 10px 0;
  padding: 90px 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.home_image div {
  margin: 0 0 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(50% + 540px);
  padding: 0 0 95px 265px;
  border-bottom: 1px solid #FFF;
}
.home_image p {
  color: #FFF;
  letter-spacing: 0.4em;
  font-size: 20px;
  margin: 0 0 50px 0;
}
.home_image h2 {
  color: #FFF;
  font-size: 90px;
  line-height: 1.6em;
  letter-spacing: 0.4em;
  font-weight: normal;
}
@media screen and (max-width: 1700px) {
  .home_image {
    height: 56.4vw;
    margin: 0 0 0.5vw 0;
    padding: 5.2vw 0 0 0;
  }
  .home_image div {
    width: calc(50% + 31.7vw);
    padding: 0 0 5.5vw 15.5vw;
  }
  .home_image p {
    font-size: 1.1vw;
    margin: 0 0 2.9vw 0;
  }
  .home_image h2 {
    font-size: 5.2vw;
  }
}
@media screen and (max-width: 750px) {
  .home_image {
    background: url(/common/images/home/home_imagesp.jpg) no-repeat center center;
    background-size: cover;
    height: 80vh;
    margin: 0 0 8px 0;
    padding: 15vh 0 0 0;
  }
  .home_image div {
    width: 88%;
    padding: 0 0 20vw 0;
    margin: 0 0 0 auto;
  }
  .home_image p {
    letter-spacing: 0.3em;
    font-size: 3.7vw;
    margin: 0 0 13vw 0;
  }
  .home_image h2 {
    font-size: 7vw;
    line-height: 1.6em;
    letter-spacing: 0.3em;
  }
}

.home_nav {
  position: relative;
}
.home_nav figure {
  width: 100%;
  line-height: 0;
  font-size: 0;
}
.home_nav figure img {
  width: 100%;
}
.home_nav .home_nav_inner {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: 2px solid #E64B0A;
  border-bottom: 2px solid #E64B0A;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.home_nav .home_nav_inner article {
  width: 33.333%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  border-right: 2px solid #E64B0A;
}
.home_nav .home_nav_inner article a {
  text-decoration: none;
  display: block;
  padding: 70px 0 155px 0;
  background: url(/common/images/share/icon_linkr1.svg) no-repeat center bottom 60px;
  background-size: 62px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_nav .home_nav_inner article a:hover {
  background: url(/common/images/share/icon_linkr1_on.svg) no-repeat center bottom 60px #E64B0A;
  background-size: 62px;
}
.home_nav .home_nav_inner article a:hover p {
  color: #FFF;
}
.home_nav .home_nav_inner article a:hover h3 {
  color: #FFF;
}
.home_nav .home_nav_inner article p {
  margin: 0;
  color: #E64B0A;
  font-size: 35px;
  line-height: 1em;
  margin-bottom: 5px;
  font-weight: bold;
}
.home_nav .home_nav_inner article h3 {
  font-size: 20px;
  color: #5F5E5E;
}
@media screen and (max-width: 1500px) {
  .home_nav .home_nav_inner article a {
    padding: 4.6vw 0 10vw 0;
    background: url(/common/images/share/icon_linkr1.svg) no-repeat center bottom 4vw;
    background-size: 4.1vw;
  }
  .home_nav .home_nav_inner article a:hover {
    background: url(/common/images/share/icon_linkr1_on.svg) no-repeat center bottom 4vw #E64B0A;
    background-size: 4.1vw;
  }
  .home_nav .home_nav_inner article p {
    font-size: 2.3vw;
    margin-bottom: 0.3vw;
  }
  .home_nav .home_nav_inner article h3 {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 750px) {
  .home_nav {
    margin-bottom: 19.7vw;
  }
  .home_nav .home_nav_inner {
    border-left: none;
    border-bottom: none;
  }
  .home_nav .home_nav_inner article {
    width: 100%;
    border-right: none;
    border-bottom: 2px solid #E64B0A;
  }
  .home_nav .home_nav_inner article a {
    padding: 15vw 0 33vw 0;
    background: url(/common/images/share/icon_linkr1.svg) no-repeat center bottom 10vw;
    background-size: 14.4vw;
  }
  .home_nav .home_nav_inner article a:hover {
    background: url(/common/images/share/icon_linkr1_on.svg) no-repeat center bottom 10vw #E64B0A;
    background-size: 14.4vw;
  }
  .home_nav .home_nav_inner article p {
    font-size: 8.1vw;
    margin-bottom: 0.3vw;
  }
  .home_nav .home_nav_inner article h3 {
    font-size: 4.6vw;
  }
}

.home_whatspr {
  position: relative;
  padding: 138px 0 0 0;
  background: url(/common/images/home/whatspr_back.jpg) no-repeat center bottom 0;
  background-size: 100%;
}
.home_whatspr.noback {
  background: none;
}
@media screen and (max-width: 1160px) {
  .home_whatspr {
    padding: 11.8vw 0 0 0;
  }
}
@media screen and (max-width: 750px) {
  .home_whatspr {
    background: url(/common/images/home/whatspr_back_sp.jpg) no-repeat center bottom 0;
    background-size: 100%;
  }
  .home_whatspr.noback {
    background: none;
  }
}

.whatspr_inner {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.whatspr_inner figure {
  position: relative;
  width: 290px;
}
.whatspr_inner .whatspr_text {
  width: 600px;
}
.whatspr_inner .whatspr_text h2 {
  width: 138px;
  line-height: 0;
  font-size: 0;
  margin: 0 auto 90px auto;
}
.whatspr_inner .whatspr_text h3 {
  font-size: 24px;
  line-height: 1.7em;
  margin-bottom: 195px;
}
.whatspr_inner .whatspr_text p {
  font-size: 16px;
  line-height: 2.75em;
  margin-bottom: 115px;
}
.whatspr_inner .whatspr_text p.whtaspr_btn {
  margin: 0 0 160px 0;
  font-size: 20px;
  font-weight: bold;
}
.whatspr_inner .whatspr_text p.whtaspr_btn a {
  display: block;
  text-decoration: none;
  background: url(/common/images/share/icon_rightallow.svg) no-repeat right top 1em;
  background-size: 56px;
  padding-bottom: 18px;
  border-bottom: 1px solid #1A1311;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.whatspr_inner .whatspr_text p.whtaspr_btn a:hover {
  opacity: 0.5;
}
.whatspr_inner .whatspr_text.noimage_title {
  padding-top: 65px;
  margin-bottom: 160px;
}
.whatspr_inner .whatspr_text.noimage_title h2 {
  font-size: 50px;
  color: #E33C0B;
  line-height: 1.2em;
  width: auto;
  margin: 0;
}
.whatspr_inner .whatspr_text.noimage_title p {
  font-size: 16px;
  margin-bottom: 40px;
  color: #5F5E5E;
}
.whatspr_inner .whatspr_text.noimage_title p.pr_support {
  font-size: 14px;
  margin-bottom: 125px !important;
}
.whatspr_inner .whatspr_text.noimage_title div p {
  color: #1A1311;
}
@media screen and (max-width: 1160px) {
  .whatspr_inner {
    width: 90%;
  }
  .whatspr_inner figure {
    width: 25vw;
  }
  .whatspr_inner .whatspr_text {
    width: 51.7vw;
  }
  .whatspr_inner .whatspr_text h2 {
    width: 11.8vw;
    margin: 0 auto 7.7vw auto;
  }
  .whatspr_inner .whatspr_text h3 {
    font-size: 2vw;
    margin-bottom: 16.8vw;
  }
  .whatspr_inner .whatspr_text p {
    font-size: 1.4vw;
    margin-bottom: 9.9vw;
  }
  .whatspr_inner .whatspr_text p.whtaspr_btn {
    margin: 0 0 13.7vw 0;
    font-size: 1.7vw;
  }
  .whatspr_inner .whatspr_text p.whtaspr_btn a {
    background: url(/common/images/share/icon_rightallow.svg) no-repeat right top 1.2em;
    background-size: 4.8vw;
    padding-bottom: 1.6vw;
  }
  .whatspr_inner .whatspr_text.noimage_title {
    padding-top: 5.6vw;
    margin-bottom: 13.7vw;
  }
  .whatspr_inner .whatspr_text.noimage_title h2 {
    font-size: 4.3vw;
  }
  .whatspr_inner .whatspr_text.noimage_title p {
    font-size: 1.4vw;
    margin-bottom: 3.4vw;
  }
  .whatspr_inner .whatspr_text.noimage_title p.pr_support {
    font-size: 1.2vw;
    margin-bottom: 10.7vw !important;
  }
}
@media screen and (max-width: 750px) {
  .whatspr_inner {
    width: 100%;
  }
  .whatspr_inner figure {
    width: 100%;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-pack: start;
    -webkit-box-pack: start;
            justify-content: flex-start;
    -ms-flex-align: end;
    -webkit-box-align: end;
            align-items: flex-end;
  }
  .whatspr_inner figure img {
    width: 56.7%;
    margin-right: 6.5%;
  }
  .whatspr_inner figure h2 {
    position: relative;
    width: 32%;
    bottom: -12vw;
  }
  .whatspr_inner figure h2 img {
    width: 100%;
  }
  .whatspr_inner .whatspr_text {
    width: 72%;
    margin: 23.4vw auto 0 auto;
  }
  .whatspr_inner .whatspr_text h3 {
    font-size: 5vw;
    margin-bottom: 9vw;
  }
  .whatspr_inner .whatspr_text p {
    font-size: 3.7vw;
    margin-bottom: 13.7vw;
  }
  .whatspr_inner .whatspr_text p.whtaspr_btn {
    margin: 0 0 18.8vw 0;
    font-size: 4.6vw;
  }
  .whatspr_inner .whatspr_text p.whtaspr_btn a {
    background-size: 13vw;
    padding-bottom: 5vw;
  }
  .whatspr_inner .whatspr_text.noimage_title {
    padding-top: 0;
    margin-bottom: 19vw;
    margin-top: 10.6vw;
  }
  .whatspr_inner .whatspr_text.noimage_title h2 {
    font-size: 8.3vw;
  }
  .whatspr_inner .whatspr_text.noimage_title p {
    font-size: 3.2vw;
    margin-bottom: 10vw;
  }
  .whatspr_inner .whatspr_text.noimage_title p.pr_support {
    font-size: 2.8vw;
    margin-bottom: 14vw !important;
  }
  .whatspr_inner .pr_main_image {
    width: 75vw;
  }
  .whatspr_inner .pr_main_image img {
    width: 100%;
  }
}

.home_works {
  position: relative;
  background: #FED095;
  top: -2px;
  padding-bottom: 183px;
}
@media screen and (max-width: 1160px) {
  .home_works {
    padding-bottom: 15.7vw;
  }
}
@media screen and (max-width: 750px) {
  .home_works {
    padding-bottom: 24.6vw;
  }
}

.home_works_inner {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  background: #FFF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 68px 84px 30px 84px;
}
.home_works_inner h2 {
  margin-bottom: 150px;
  width: 250px;
}
.home_works_inner .allview_btn {
  position: absolute;
  right: 84px;
  top: -20px;
  width: 257px;
}
.home_works_inner .allview_btn a {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_works_inner .allview_btn a:hover {
  opacity: 0.5;
}
@media screen and (max-width: 1160px) {
  .home_works_inner {
    width: 90%;
    padding: 5.8vw 7.2vw 2.5vw 7.2vw;
  }
  .home_works_inner h2 {
    margin-bottom: 12.9vw;
    width: 21.5vw;
  }
  .home_works_inner .allview_btn {
    right: 7.2vw;
    top: -1.7vw;
    width: 22vw;
  }
}
@media screen and (max-width: 750px) {
  .home_works_inner {
    width: 100%;
    padding: 11.6vw 12% 11.6vw 12%;
  }
  .home_works_inner h2 {
    margin-bottom: 24vw;
    width: 43.2vw;
  }
  .home_works_inner .allview_btn {
    right: 12%;
    top: -2vw;
    width: 37.4vw;
  }
}

.works_list {
  position: relative;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.works_list::after {
  display: block;
  width: 29.4%;
  content: "";
}
.works_list article {
  width: 29.4%;
  margin: 0 0 55px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.works_list article a {
  display: block;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.works_list article a:hover {
  opacity: 0.5;
}
.works_list article figure {
  border: 1px solid #BDBEBF;
  line-height: 0;
  font-size: 0;
  margin-bottom: 18px;
}
.works_list article p {
  font-size: 14px;
  margin: 0;
  line-height: 1.35em;
}
.works_list article p.category {
  font-size: 16px;
  line-height: 1.2em;
  font-weight: bold;
}
.works_list article h4 {
  font-size: 18px;
  line-height: 1.2em;
  font-weight: normal;
}
@media screen and (max-width: 1160px) {
  .works_list article {
    margin: 0 0 4.7vw 0;
  }
  .works_list article figure {
    margin-bottom: 1.6vw;
  }
  .works_list article p {
    font-size: 1.2vw;
  }
  .works_list article p.category {
    font-size: 1.4vw;
  }
  .works_list article h4 {
    font-size: 1.6vw;
  }
}
@media screen and (max-width: 750px) {
  .works_list {
    width: 49vw;
    margin: 0 auto;
  }
  .works_list article {
    width: 100%;
    margin: 0 0 12vw 0;
  }
  .works_list article figure {
    margin-bottom: 2.8vw;
  }
  .works_list article p {
    font-size: 3.2vw;
  }
  .works_list article p.category {
    font-size: 3.7vw;
  }
  .works_list article h4 {
    font-size: 3.7vw;
  }
}

.home_project {
  position: relative;
  background: #B7BBBC;
  padding: 194px 0 155px 0;
  margin: 165px 0 165px 0;
}
.home_project h2 {
  position: absolute;
  width: 458px;
  margin-top: -200px;
}
.home_project ul {
  position: relative;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.home_project ul li {
  list-style: none;
  width: 47%;
}
.home_project ul li a {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_project ul li a:hover {
  opacity: 0.5;
}
.home_project .home_project_item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.home_project .home_project_item article {
  position: relative;
  width: 47%;
  background: #FFF;
  padding-bottom: 80px;
  border-bottom: 10px solid #E64B0A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.home_project .home_project_item article a {
  display: block;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_project .home_project_item article a:hover {
  opacity: 0.5;
}
.home_project .home_project_item article:nth-child(1) {
  background: url(/common/images/share/icon_linkr1.svg) no-repeat right 35px bottom 30px #FFF;
  background-size: 62px;
}
.home_project .home_project_item article figure {
  line-height: 0;
  font-size: 0;
  margin-bottom: 38px;
}
.home_project .home_project_item article h3 {
  font-size: 46px;
  margin-bottom: 25px;
  text-align: center;
  line-height: 1em;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.home_project .home_project_item article h3.img_title {
  line-height: 0;
  font-size: 0;
  width: 325px;
  margin: 0 auto 30px auto;
}
.home_project .home_project_item article p {
  width: 325px;
  margin: 0 auto;
  font-size: 14px;
  line-height: 2em;
}
.home_project .home_project_item article p.comesoon {
  position: absolute;
  font-size: 20px;
  letter-spacing: 0.2em;
  bottom: 40px;
  right: 50px;
  margin: 0;
  width: auto;
  line-height: 1em;
  font-weight: bold;
  color: #E64B0A;
}
@media screen and (max-width: 1160px) {
  .home_project .home_project_item article {
    padding-bottom: 6.8vw;
  }
  .home_project .home_project_item article:nth-child(1) {
    background: url(/common/images/share/icon_linkr1.svg) no-repeat right 3vw bottom 2.6vw #FFF;
    background-size: 5.3vw;
    margin-bottom: 12.3vw;
  }
  .home_project .home_project_item article figure {
    margin-bottom: 3.2vw;
  }
  .home_project .home_project_item article h3 {
    font-size: 4vw;
    margin-bottom: 2.1vw;
  }
  .home_project .home_project_item article h3.img_title {
    width: 28vw;
    margin: 0 auto 2.6vw auto;
  }
  .home_project .home_project_item article p {
    width: 28vw;
    font-size: 1.2vw;
  }
  .home_project .home_project_item article p.comesoon {
    font-size: 1.7vw;
    bottom: 3.4vw;
    right: 4.3vw;
  }
}
@media screen and (max-width: 750px) {
  .home_project .home_project_item {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .home_project .home_project_item article {
    width: 100%;
    padding-bottom: 22vw;
  }
  .home_project .home_project_item article:nth-child(1) {
    background: url(/common/images/share/icon_linkr1.svg) no-repeat right 4.8vw bottom 4.8vw #FFF;
    background-size: 12.5vw;
  }
  .home_project .home_project_item article figure {
    margin-bottom: 9vw;
  }
  .home_project .home_project_item article h3 {
    font-size: 8vw;
    margin-bottom: 5vw;
  }
  .home_project .home_project_item article h3.img_title {
    width: 54vw;
    margin: 0 auto 6vw auto;
  }
  .home_project .home_project_item article p {
    width: 54vw;
    font-size: 3.2vw;
  }
  .home_project .home_project_item article p.comesoon {
    font-size: 4.6vw;
    bottom: 7.6vw;
    right: 10vw;
  }
}

.home_company {
  position: relative;
}
.home_company a {
  display: block;
  width: 100%;
  height: 876px;
  background: url(/common/images/home/home_company_back.jpg) no-repeat center center;
  background-size: cover;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.home_company h2 {
  line-height: 0;
  font-size: 0;
  width: 720px;
  margin: 0 auto;
}
@media screen and (max-width: 1600px) {
  .home_company a {
    height: 54.7vw;
  }
  .home_company h2 {
    width: 45vw;
  }
}
@media screen and (max-width: 750px) {
  .home_company a {
    height: 100vh;
    background: url(/common/images/home/home_company_backsp.jpg) no-repeat center center;
  }
  .home_company h2 {
    width: 76%;
  }
}

#contact header {
  padding-bottom: 75px;
}
@media screen and (max-width: 1160px) {
  #contact header {
    padding-bottom: 6.4vw;
  }
}
@media screen and (max-width: 750px) {
  #contact header {
    padding-bottom: 18.6vw;
  }
}

.form_wrap {
  position: relative;
  width: 610px;
  margin: 0 auto;
}
.form_wrap p {
  font-size: 16px;
  margin: 0 0 35px 0;
}
.form_wrap p textarea,
.form_wrap p input[type=text],
.form_wrap p input[type=email] {
  border: 1px solid #D1D1D1;
  background: #FFF;
  padding: 1em 0.7em;
  width: 100%;
  border-radius: 6px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.form_wrap p textarea {
  margin-bottom: 65px;
}
@media screen and (max-width: 750px) {
  .form_wrap {
    width: 76vw;
  }
  .form_wrap p {
    font-size: 3.7vw;
    margin: 0 0 8.3vw 0;
  }
  .form_wrap p textarea,
  .form_wrap p input[type=text],
  .form_wrap p input[type=email] {
    padding: 1em 0.7em;
    border-radius: 6px;
    font-size: 3.7vw;
  }
  .form_wrap p textarea {
    margin-bottom: 14vw;
  }
}

.sbm_wrap {
  text-align: center;
  padding-bottom: 220px;
}
.sbm_wrap input {
  background: #111318;
  border: 1px solid #111318;
  border-radius: 6px;
  color: #FFF;
  padding: 0.7em 2em;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.sbm_wrap input:hover {
  color: #111318;
  background: #FFF;
}
@media screen and (max-width: 1160px) {
  .sbm_wrap {
    padding-bottom: 18.9vw;
  }
}
@media screen and (max-width: 750px) {
  .sbm_wrap {
    padding-bottom: 26.7vw;
  }
  .sbm_wrap input {
    font-size: 3.2vw;
  }
}

#concept main .concept_text {
  margin-bottom: 100px;
}
#concept main .concept_text h2 {
  font-size: 47px;
  margin: 0 0 120px 0;
  line-height: 1.68em;
}
#concept main .concept_text p {
  font-size: 16px;
  line-height: 3.75em;
}
#concept main .concept_text p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 1160px) {
  #concept header {
    padding-bottom: 18.6vw;
  }
  #concept main .concept_text {
    margin-bottom: 8.6vw;
  }
  #concept main .concept_text h2 {
    font-size: 5vw;
    margin: 0 0 13vw 0;
  }
  #concept main .concept_text p {
    font-size: 3.7vw;
    line-height: 2.75em;
  }
}
#aboutus header {
  padding-bottom: 95px;
}
@media screen and (max-width: 1160px) {
  #aboutus header {
    padding-bottom: 8.1vw;
  }
}
@media screen and (max-width: 1160px) {
  #aboutus header {
    padding-bottom: 14.8vw;
  }
}
@media screen and (max-width: 750px) {
  #aboutus header {
    padding-bottom: 18.6vw;
  }
}

.about_contents1 {
  width: 750px;
  margin: 0 auto 160px auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.about_contents1 h2 {
  width: 205px;
}
.about_contents1 div {
  width: 460px;
}
.about_contents1 div h3 {
  font-size: 18px;
  margin-bottom: 2em;
}
.about_contents1 div h4 {
  font-size: 16px;
  margin-bottom: 0.5em;
  font-weight: normal;
}
.about_contents1 div p {
  padding-left: 1.4em;
  line-height: 1.5em;
}
.about_contents1 div p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 1160px) {
  .about_contents1 {
    width: 65vw;
    margin: 0 auto 13.7vw auto;
  }
  .about_contents1 h2 {
    width: 17.6vw;
  }
  .about_contents1 div {
    width: 39.6vw;
  }
  .about_contents1 div h3 {
    font-size: 1.6vw;
  }
  .about_contents1 div h4 {
    font-size: 1.4vw;
  }
  .about_contents1 p {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 750px) {
  .about_contents1 {
    width: 76vw;
    margin: 0 auto 23vw auto;
  }
  .about_contents1 h2 {
    width: 34vw;
    margin: 0 auto 13vw auto;
  }
  .about_contents1 div {
    width: 100%;
  }
  .about_contents1 div h3 {
    font-size: 4.2vw;
  }
  .about_contents1 div h4 {
    font-size: 3.7vw;
  }
  .about_contents1 p {
    font-size: 3.7vw;
  }
}

.about_name {
  position: relative;
  width: 1600px;
  margin: 0 auto 120px auto;
  background: url(/aboutus/images/about_image.png) no-repeat right 35px center #E64B0A;
  background-size: 710px;
  height: 460px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
@media screen and (max-width: 1680px) {
  .about_name {
    width: 100%;
    margin: 0 auto 7.5vw auto;
    background: url(/aboutus/images/about_image.png) no-repeat right 2.1vw center #E64B0A;
    background-size: 44.3vw;
    height: 28.75vw;
  }
}
@media screen and (max-width: 750px) {
  .about_name {
    padding: 23vw 0 8.6vw 0;
    width: 100%;
    background: #E64B0A;
    display: block;
    height: auto;
  }
  .about_name figure {
    line-height: 0;
    font-size: 0;
    width: 100%;
  }
}

.about_name_inner {
  width: 1080px;
  margin: 0 auto;
  padding-left: 80px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.about_name_inner p {
  color: #FFF;
  margin: 0;
  font-size: 14px;
}
.about_name_inner h2 {
  font-size: 27px;
  margin-bottom: 1em;
  color: #FFF;
}
.about_name_inner h3 {
  font-size: 14px;
  color: #FFF;
  font-weight: normal;
}
@media screen and (max-width: 1160px) {
  .about_name_inner {
    width: 90%;
    padding-left: 6.8vw;
  }
  .about_name_inner p {
    font-size: 1.2vw;
  }
  .about_name_inner h2 {
    font-size: 2.3vw;
  }
  .about_name_inner h3 {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 750px) {
  .about_name_inner {
    width: 76vw;
    padding-left: 5.5vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .about_name_inner p {
    font-size: 3.2vw;
    margin: 0 0 2vw 0;
    line-height: 1.2em;
  }
  .about_name_inner h2 {
    font-size: 6.2vw;
    margin-bottom: 5vw;
    line-height: 1.2em;
  }
  .about_name_inner h3 {
    font-size: 3.2vw;
  }
}

.about_contents2 {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 80px;
}
.about_contents2 h2 {
  letter-spacing: 0.1em;
  font-size: 14px;
  font-weight: normal;
  margin-bottom: 1.5em;
}
.about_contents2 p {
  font-size: 14px;
  line-height: 2.57em;
}
.about_contents2 ul {
  list-style: none;
  padding-top: 50px;
  padding-bottom: 150px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.about_contents2 ul li {
  width: 42.5%;
}
.about_contents2 ul li.btn_concept {
  font-weight: bold;
  line-height: 1.2em;
  font-size: 29px;
}
.about_contents2 ul li.btn_concept a {
  display: block;
  text-decoration: none;
  color: #555;
  border: 2px solid #E33C0B;
  padding: 0.2em 0;
  text-align: center;
  background: url(/common/images/share/icon_linkr1.svg) no-repeat right 38px center;
  background-size: 30px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.about_contents2 ul li.btn_concept a:hover {
  color: #FFF;
  background: url(/common/images/share/icon_linkr1_on.svg) no-repeat right 38px center #E33C0B;
  background-size: 30px;
}
@media screen and (max-width: 1160px) {
  .about_contents2 {
    width: 90%;
    padding: 0 6.8vw;
  }
  .about_contents2 h2,
  .about_contents2 p {
    font-size: 1.2vw;
  }
  .about_contents2 ul {
    padding-top: 4.3vw;
  }
  .about_contents2 ul li.btn_concept {
    font-size: 2.5vw;
  }
  .about_contents2 ul li.btn_concept a {
    background: url(/common/images/share/icon_linkr1.svg) no-repeat right 3.2vw center;
    background-size: 2.5vw;
  }
  .about_contents2 ul li.btn_concept a:hover {
    background: url(/common/images/share/icon_linkr1_on.svg) no-repeat right 3.2vw center #E33C0B;
    background-size: 2.5vw;
  }
}
@media screen and (max-width: 750px) {
  .about_contents2 {
    width: 76vw;
    padding: 12vw 0;
  }
  .about_contents2 h2 {
    font-size: 3.2vw;
  }
  .about_contents2 p {
    font-size: 3.2vw;
  }
  .about_contents2 ul {
    padding-top: 25vw;
  }
  .about_contents2 ul li {
    width: 100%;
    margin-bottom: 10vw;
  }
  .about_contents2 ul li.btn_concept {
    font-size: 6.7vw;
  }
  .about_contents2 ul li.btn_concept a {
    padding: 2.8vw 0;
    background: url(/common/images/share/icon_linkr1.svg) no-repeat right 3.2vw center;
    background-size: 6.9vw;
  }
  .about_contents2 ul li.btn_concept a:hover {
    background: url(/common/images/share/icon_linkr1_on.svg) no-repeat right 3.2vw center #E33C0B;
    background-size: 6.9vw;
  }
  .about_contents2 ul li:nth-child(2) {
    margin-bottom: 0;
    text-align: center;
  }
  .about_contents2 ul li:nth-child(2) img {
    width: 61vw;
    margin: 0 auto;
  }
}

.about_contents3 {
  position: relative;
  padding: 115px 0 100px 0;
  background: #EFEFEF;
}
@media screen and (max-width: 1160px) {
  .about_contents3 {
    padding: 10vw 0 8.6vw 0;
  }
}
@media screen and (max-width: 750px) {
  .about_contents3 {
    padding: 17vw 0;
  }
}

.about_ct3_inner {
  position: relative;
  width: 1080px;
  margin: 0 auto;
}
.about_ct3_inner h2 {
  font-size: 20px;
  font-weight: normal;
  margin-bottom: 75px;
}
.about_ct3_inner table {
  width: 100%;
}
.about_ct3_inner table td,
.about_ct3_inner table th {
  padding-bottom: 1em;
  font-size: 16px;
  line-height: 2.5em;
  vertical-align: top;
  font-weight: normal;
}
.about_ct3_inner table th {
  width: 7em;
}
.about_ct3_inner table td {
  width: calc(100% - 7em);
}
.about_ct3_inner table p {
  margin: 0;
}
.about_ct3_inner table ul {
  padding-left: 1.5em;
}
@media screen and (max-width: 1160px) {
  .about_ct3_inner {
    width: 90%;
    margin: 0 auto;
  }
  .about_ct3_inner h2 {
    font-size: 1.7vw;
    margin-bottom: 6.4vw;
  }
  .about_ct3_inner table td,
  .about_ct3_inner table th {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 750px) {
  .about_ct3_inner {
    width: 76vw;
  }
  .about_ct3_inner h2 {
    font-size: 4.2vw;
    margin-bottom: 1em;
  }
  .about_ct3_inner table td,
  .about_ct3_inner table th {
    font-size: 3.2vw;
  }
  .about_ct3_inner table th {
    width: 7em;
  }
}

#whtspr header {
  padding-bottom: 95px;
}
#whtspr .whatspr_inner .whatspr_text {
  margin-bottom: 133px;
}
#whtspr .whatspr_inner .whatspr_text h2 {
  margin-right: auto;
  margin-left: 0;
}
#whtspr .whatspr_inner .whatspr_text h3 {
  margin-bottom: 90px;
}
#whtspr .whatspr_inner .whatspr_text p:last-of-type {
  margin: 0;
}
@media screen and (max-width: 1160px) {
  #whtspr header {
    padding-bottom: 8.1vw;
  }
  #whtspr .whatspr_inner {
    margin-bottom: 11.4vw;
  }
  #whtspr .whatspr_inner .whatspr_text h3 {
    margin-bottom: 7.7vw;
  }
}
@media screen and (max-width: 750px) {
  #whtspr .whatspr_inner {
    margin-bottom: 22vw;
  }
}

.whatspr_contents1 {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  padding-bottom: 80px;
}
.whatspr_contents1 figure {
  line-height: 0;
  font-size: 0;
  margin-bottom: 130px;
}
.whatspr_contents1 article {
  margin-bottom: 110px;
}
.whatspr_contents1 article h2 {
  font-size: 24px;
  color: #C75120;
  line-height: 1.6em;
  margin-bottom: 80px;
}
.whatspr_contents1 article p {
  font-size: 16px;
  line-height: 2.75em;
}
.whatspr_contents1 article p:last-of-type {
  margin: 0;
}
@media screen and (max-width: 1160px) {
  .whatspr_contents1 {
    width: 90%;
    padding-bottom: 6.8vw;
  }
  .whatspr_contents1 figure {
    margin-bottom: 12vw;
  }
  .whatspr_contents1 article {
    margin-bottom: 9.4vw;
  }
  .whatspr_contents1 article h2 {
    font-size: 2vw;
    margin-bottom: 6.8vw;
  }
  .whatspr_contents1 article p {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 750px) {
  .whatspr_contents1 {
    width: 100%;
    padding-bottom: 6.8vw;
  }
  .whatspr_contents1 figure {
    margin-bottom: 17vw;
  }
  .whatspr_contents1 article {
    width: 76vw;
    margin: 0 auto 23.2vw auto;
  }
  .whatspr_contents1 article h2 {
    font-size: 5.5vw;
    line-height: 1.6em;
    margin-bottom: 11.6vw;
  }
  .whatspr_contents1 article p {
    font-size: 3.7vw;
    line-height: 2.75em;
  }
}

.pr_link {
  position: relative;
  background: #FDBB02;
  padding: 100px 0 82px 0;
}
.pr_link .dwrap {
  position: relative;
  background: #FFF;
  width: 1080px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
}
.pr_link .dwrap a {
  display: block;
  text-decoration: none;
  padding: 80px 90px;
  background: url(/common/images/share/icon_linkr1.svg) no-repeat right 90px center;
  background-size: 62px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.pr_link .dwrap a:hover {
  background: url(/common/images/share/icon_linkr1_on.svg) no-repeat right 90px center #E33C0B;
  background-size: 62px;
}
.pr_link .dwrap a:hover p,
.pr_link .dwrap a:hover h2 {
  color: #FFF;
}
.pr_link .dwrap h2 {
  font-size: 34px;
  margin-right: 90px;
  line-height: 1em;
  color: #E33C0B;
}
.pr_link .dwrap p {
  margin: 0;
  line-height: 1em;
}
@media screen and (max-width: 1160px) {
  .pr_link {
    padding: 8.6vw 0 7vw 0;
  }
  .pr_link .dwrap {
    width: 90%;
  }
  .pr_link .dwrap a {
    padding: 6.8vw 7.7vw;
    background: url(/common/images/share/icon_linkr1.svg) no-repeat right 7.7vw center;
    background-size: 5.3vw;
  }
  .pr_link .dwrap a:hover {
    background: url(/common/images/share/icon_linkr1_on.svg) no-repeat right 7.7vw center #E33C0B;
    background-size: 5.3vw;
  }
  .pr_link .dwrap h2 {
    font-size: 2.9vw;
    margin-right: 7.7vw;
  }
  .pr_link .dwrap p {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 750px) {
  .pr_link {
    padding: 18vw 0;
  }
  .pr_link .dwrap {
    width: 76%;
  }
  .pr_link .dwrap a {
    padding: 10vw 0 30vw 0;
    text-align: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    background: url(/common/images/share/icon_linkr1.svg) no-repeat bottom 7.4vw center;
    background-size: 14.4vw;
  }
  .pr_link .dwrap a:hover {
    background: url(/common/images/share/icon_linkr1_on.svg) no-repeat bottom 7.4vw center #E33C0B;
    background-size: 14.4vw;
  }
  .pr_link .dwrap h2 {
    font-size: 5.5vw;
    margin-right: 0;
    margin-bottom: 6vw;
    width: 100%;
  }
  .pr_link .dwrap p {
    font-size: 2.8vw;
    width: 100%;
  }
}

.pr_nav {
  padding: 185px 0;
}
.pr_nav .dwrap {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.pr_nav .dwrap ul {
  list-style: none;
  width: 47.4%;
}
.pr_nav .dwrap ul li {
  width: 100%;
  margin-bottom: 25px;
  background: #FFF;
}
.pr_nav .dwrap ul li a {
  text-decoration: none;
  display: block;
  border: 3px solid #E33C0B;
  padding: 20px 23px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.pr_nav .dwrap ul li a:hover {
  background: #E33C0B;
}
.pr_nav .dwrap ul li a:hover h3 {
  color: #FFF;
}
.pr_nav .dwrap ul li a:hover p {
  color: #FFF;
}
.pr_nav .dwrap ul li h3 {
  color: #E33C0B;
  font-size: 18px;
  width: 205px;
}
.pr_nav .dwrap ul li p {
  font-size: 14px;
  margin: 0;
}
.pr_nav .dwrap div {
  width: 47.4%;
  margin: 0;
}
.pr_nav .dwrap div a {
  display: block;
  text-decoration: none;
  border: 3px solid #E33C0B;
  padding: 130px 0 125px 42px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.pr_nav .dwrap div a:hover {
  background: #E33C0B;
}
.pr_nav .dwrap div a:hover h3 {
  color: #FFF;
}
.pr_nav .dwrap div a:hover p {
  color: #FFF;
}
.pr_nav .dwrap div a h3 {
  width: 105px;
  color: #E33C0B;
}
.pr_nav .dwrap div a p {
  font-size: 14px;
  margin: 0;
}
@media screen and (max-width: 1160px) {
  .pr_nav {
    padding: 15.9vw 0;
  }
  .pr_nav .dwrap ul li {
    margin-bottom: 2.1vw;
  }
  .pr_nav .dwrap ul li a {
    padding: 1.7vw 2vw;
  }
  .pr_nav .dwrap ul li h3 {
    font-size: 1.6vw;
    width: 17.6vw;
  }
  .pr_nav .dwrap ul li p {
    font-size: 1.2vw;
  }
  .pr_nav .dwrap div a {
    padding: 11.6vw 0 11vw 3.6vw;
  }
  .pr_nav .dwrap div a h3 {
    width: 9vw;
    font-size: 1.6vw;
  }
  .pr_nav .dwrap div a p {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 750px) {
  .pr_nav {
    padding: 16.7vw 0;
  }
  .pr_nav .dwrap ul {
    width: 100%;
  }
  .pr_nav .dwrap ul li {
    width: 100%;
    margin-bottom: 8vw;
  }
  .pr_nav .dwrap ul li a {
    padding: 5.8vw 7vw 5vw 7vw;
  }
  .pr_nav .dwrap ul li h3 {
    font-size: 3.2vw;
    width: 32vw;
  }
  .pr_nav .dwrap ul li p {
    font-size: 2.8vw;
    letter-spacing: -0.2em;
  }
  .pr_nav .dwrap div {
    width: 100%;
  }
  .pr_nav .dwrap div a {
    padding: 5.8vw 7vw 5vw 7vw;
  }
  .pr_nav .dwrap div a h3 {
    width: 32vw;
    font-size: 3.2vw;
  }
  .pr_nav .dwrap div a p {
    font-size: 2.8vw;
  }
}

.pr_contents01 {
  position: relative;
  background: #E64B0A;
}
.pr_contents01 article {
  width: 100%;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.pr_contents01 article figure {
  width: 50%;
}
.pr_contents01 article .pr_cnt1_text {
  width: 50%;
}
.pr_contents01 article .prc1_inner {
  width: 540px;
  margin: 0 0 0 auto;
}
.pr_contents01 article .prc1_inner h2 {
  color: #FFF;
  font-size: 24px;
  margin-bottom: 1em;
}
.pr_contents01 article .prc1_inner p {
  color: #FFF;
  font-size: 16px;
  margin: 0;
  line-height: 2.6em;
}
.pr_contents01 article:nth-of-type(2n) figure {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.pr_contents01 article:nth-of-type(2n) .pr_cnt1_text {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.pr_contents01 article:nth-of-type(2n) .prc1_inner {
  margin: 0 auto 0 0;
}
@media screen and (max-width: 1300px) {
  .pr_contents01 article {
    width: 100%;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -ms-flex-align: center;
    -webkit-box-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .pr_contents01 article figure {
    width: 50%;
    min-height: 35vw;
  }
  .pr_contents01 article figure img {
    min-height: 35vw;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: left bottom;
       object-position: left bottom;
  }
  .pr_contents01 article .pr_cnt1_text {
    width: 50%;
  }
  .pr_contents01 article .prc1_inner {
    width: 41vw;
  }
  .pr_contents01 article .prc1_inner h2 {
    font-size: 1.8vw;
  }
  .pr_contents01 article .prc1_inner p {
    font-size: 1.23vw;
  }
  .pr_contents01 article:nth-of-type(2n) figure img {
    -o-object-position: right bottom;
       object-position: right bottom;
  }
}
@media screen and (max-width: 750px) {
  .pr_contents01 {
    margin-bottom: 0;
    padding-bottom: 40vw;
  }
  .pr_contents01 article {
    width: 100%;
  }
  .pr_contents01 article figure {
    width: 100%;
    min-height: inherit;
  }
  .pr_contents01 article figure img {
    min-height: inherit;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: inherit;
       object-position: inherit;
  }
  .pr_contents01 article .pr_cnt1_text {
    width: 100%;
  }
  .pr_contents01 article .prc1_inner {
    width: 76%;
    padding: 15.1vw 0 12.7vw 0;
    margin: 0 auto;
  }
  .pr_contents01 article .prc1_inner h2 {
    font-size: 5.5vw;
  }
  .pr_contents01 article .prc1_inner p {
    font-size: 3.7vw;
  }
  .pr_contents01 article:nth-of-type(2n) figure {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    position: relative;
    bottom: -30vw;
  }
  .pr_contents01 article:nth-of-type(2n) figure img {
    -o-object-position: inherit;
       object-position: inherit;
  }
  .pr_contents01 article:nth-of-type(2n) .pr_cnt1_text {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .pr_contents01 article:nth-of-type(2n) .pr_cnt1_text .prc1_inner {
    margin: 0 auto;
  }
}

.art2img {
  position: relative;
  margin-top: -40vw;
}

.pr_contents02 {
  position: relative;
  width: 1080px;
  margin: 0 auto;
}
.pr_contents02 h2 {
  font-size: 24px;
  color: #C75120;
  margin-bottom: 65px;
}
.pr_contents02 p {
  font-size: 16px;
}
.pr_contents02 article {
  border-top: 3px solid #C75120;
  padding-top: 23px;
  margin-top: 195px;
}
.pr_contents02 .prct2_inner {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.pr_contents02 .prct2_inner div {
  width: 54.9%;
}
.pr_contents02 .prct2_inner figure {
  width: 41.8%;
}
@media screen and (max-width: 1160px) {
  .pr_contents02 {
    width: 90%;
  }
  .pr_contents02 h2 {
    font-size: 2vw;
    margin-bottom: 5.6vw;
  }
  .pr_contents02 p {
    font-size: 1.4vw;
  }
  .pr_contents02 article {
    padding-top: 2vw;
    margin-top: 16.8vw;
  }
}
@media screen and (max-width: 750px) {
  .pr_contents02 {
    width: 76vw;
  }
  .pr_contents02 h2 {
    font-size: 5.5vw;
    margin-bottom: 11.6vw;
  }
  .pr_contents02 p {
    font-size: 3.7vw;
  }
  .pr_contents02 article {
    padding-top: 5.4vw;
    margin-top: 27.4vw;
  }
  .pr_contents02 .prct2_inner div {
    width: 100%;
    margin-bottom: 12vw;
  }
  .pr_contents02 .prct2_inner figure {
    width: 100%;
  }
}

.support_wrap {
  position: relative;
  padding-top: 40px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.support_wrap div {
  width: 45.8%;
  margin-bottom: 42px;
}
.support_wrap h3 {
  font-size: 20px;
  font-weight: normal;
  border: 1px solid #C75120;
  padding: 0.2em 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 30px;
  margin-bottom: 35px;
}
.support_wrap h3 strong {
  color: #C75120;
  font-size: 16px;
}
.support_wrap p {
  font-size: 16px;
  margin: 0;
}
@media screen and (max-width: 1160px) {
  .support_wrap {
    padding-top: 3.4vw;
  }
  .support_wrap div {
    margin-bottom: 3.6vw;
  }
  .support_wrap h3 {
    font-size: 1.7vw;
    border-radius: 2.5vw;
    margin-bottom: 3vw;
  }
  .support_wrap h3 strong {
    font-size: 1.4vw;
  }
  .support_wrap p {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 750px) {
  .support_wrap {
    padding-top: 20vw;
  }
  .support_wrap div {
    width: 100%;
    margin-bottom: 19.3vw;
  }
  .support_wrap h3 {
    font-size: 4.6vw;
    border-radius: 6vw;
    margin-bottom: 8.8vw;
  }
  .support_wrap h3 strong {
    font-size: 3vw;
  }
  .support_wrap p {
    font-size: 3.7vw;
    line-height: 2.25em;
  }
}

.prct2_two_wrap {
  position: relative;
  width: 100%;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
}
.prct2_two_wrap article {
  width: 45.8%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 750px) {
  .prct2_two_wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .prct2_two_wrap article {
    width: 100%;
  }
}

.blanding_title {
  position: relative;
}
.blanding_title figure {
  width: 100%;
  z-index: 1;
}
.blanding_title figure img {
  width: 100%;
}
@media screen and (max-width: 750px) {
  .blanding_title figure img {
    width: 124%;
    max-width: 124%;
    -o-object-position: center bottom;
       object-position: center bottom;
    -o-object-fit: contain;
       object-fit: contain;
  }
}

.blanding_title_text {
  position: absolute;
  width: 1080px;
  left: calc(50% - 540px);
  bottom: 100px;
  z-index: 2;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: end;
  -webkit-box-align: end;
          align-items: flex-end;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.blanding_title_text h1 {
  color: #FFF;
  font-size: 50px;
  line-height: 1.1em;
  margin-right: 50px;
}
.blanding_title_text p {
  margin: 0;
  color: #FFF;
  font-size: 16px;
}
@media screen and (max-width: 1160px) {
  .blanding_title_text {
    width: 90vw;
    left: calc(50% - 45vw);
    bottom: 8.6vw;
  }
  .blanding_title_text h1 {
    font-size: 4.3vw;
    margin-right: 4.3vw;
  }
  .blanding_title_text p {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 750px) {
  .blanding_title_text {
    width: 76vw;
    left: calc(50% - 38vw);
    bottom: 9.4vw;
  }
  .blanding_title_text h1 {
    font-size: 8.3vw;
    margin-right: 0;
    width: 100%;
  }
  .blanding_title_text p {
    font-size: 3.7vw;
    width: 100%;
  }
}

.blanding_copy {
  position: relative;
  margin: 0 auto;
  width: 1080px;
  padding: 80px 0 135px 0;
}
.blanding_copy p {
  font-size: 20px;
  color: #F2790E;
  margin-bottom: 0;
  font-weight: bold;
}
@media screen and (max-width: 1160px) {
  .blanding_copy {
    width: 90%;
    padding: 7.5vw 0 11.6vw 0;
  }
  .blanding_copy p {
    font-size: 1.7vw;
  }
}
@media screen and (max-width: 750px) {
  .blanding_copy {
    width: 76vw;
    padding: 11.6vw 0 24.4vw 0;
  }
  .blanding_copy p {
    font-size: 3.7vw;
  }
}

.blanding_howto {
  position: relative;
  width: 100%;
  background: #EFEFEF;
  padding: 180px 0 120px 0;
}
.blanding_howto.bhowto2 {
  background: none;
  padding: 130px 0 0 0;
}
.blanding_howto.bhowto2 .bhowto_inner article:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 1160px) {
  .blanding_howto {
    padding: 15.5vw 0 10vw 0;
  }
  .blanding_howto.bhowto2 {
    padding: 11.2vw 0 0 0;
  }
}
@media screen and (max-width: 750px) {
  .blanding_howto {
    padding: 22vw 0 3.4vw 0;
  }
  .blanding_howto.bhowto2 {
    padding: 19.3vw 0 0 0;
  }
  .blanding_howto figure {
    position: relative;
    top: -65vw;
    margin-bottom: -50vw;
    width: 100%;
  }
}

.bhowto_inner {
  position: relative;
  width: 1080px;
  margin: 0 auto;
}
.bhowto_inner article {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-top: 1px solid #727272;
  padding: 30px 15px 0 15px;
  margin-bottom: 140px;
}
.bhowto_inner article:last-child {
  margin-bottom: 215px;
}
.bhowto_inner article h2 {
  font-size: 24px;
  margin-bottom: 1em;
}
.bhowto_inner article p {
  font-size: 16px;
}
@media screen and (max-width: 1160px) {
  .bhowto_inner {
    width: 90%;
  }
  .bhowto_inner article {
    padding: 2.5vw 1.3vw 0 1.3vw;
    margin-bottom: 12vw;
  }
  .bhowto_inner article:last-child {
    margin-bottom: 18.5vw;
  }
  .bhowto_inner article h2 {
    font-size: 2vw;
  }
  .bhowto_inner article p {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 750px) {
  .bhowto_inner {
    width: 76vw;
  }
  .bhowto_inner article {
    padding: 7.9vw 0 0 0;
    margin-bottom: 25vw;
  }
  .bhowto_inner article:last-child {
    margin-bottom: 25vw;
  }
  .bhowto_inner article h2 {
    font-size: 5vw;
    letter-spacing: -0.05em;
  }
  .bhowto_inner article p {
    font-size: 3.7vw;
  }
}

.bland_sanka_open {
  background: #F07C0F;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.bland_sanka_open .bsanka_text {
  width: 50%;
}
.bland_sanka_open .bsanka_text_inner {
  width: 540px;
  margin: 0 0 0 auto;
}
.bland_sanka_open .bsanka_text_inner h2 {
  color: #FFF;
  font-size: 24px;
  margin: 0 0 1.5em 0;
}
.bland_sanka_open .bsanka_text_inner p {
  color: #FFF;
  font-size: 16px;
  margin: 0;
}
.bland_sanka_open figure {
  width: 50%;
  line-height: 0;
  font-size: 0;
}
.bland_sanka_open figure img {
  width: 100%;
}
@media screen and (max-width: 1160px) {
  .bland_sanka_open .bsanka_text_inner {
    width: 88%;
  }
  .bland_sanka_open .bsanka_text_inner h2 {
    font-size: 2vw;
  }
  .bland_sanka_open .bsanka_text_inner p {
    font-size: 1.3vw;
  }
}
@media screen and (max-width: 750px) {
  .bland_sanka_open {
    padding: 20vw 0 84vw 0;
  }
  .bland_sanka_open .bsanka_text {
    width: 100%;
  }
  .bland_sanka_open .bsanka_text_inner {
    width: 76vw;
    margin: 0 auto;
  }
  .bland_sanka_open .bsanka_text_inner h2 {
    font-size: 5vw;
    margin-bottom: 12vw;
  }
  .bland_sanka_open .bsanka_text_inner p {
    font-size: 3.7vw;
  }
}

.planning_title {
  position: relative;
  width: 1080px;
  margin: 0 auto 215px auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.planning_title .planning_ttext {
  width: 35.3%;
}
.planning_title .planning_ttext h1 {
  font-size: 50px;
  color: #DD8231;
  margin-bottom: 55px;
  line-height: 1.32em;
}
.planning_title .planning_ttext h2 {
  font-size: 50px;
  color: #DD8231;
  line-height: 1.32em;
}
.planning_title figure {
  width: 64.7%;
  margin: 0 0 120px 0;
}
.planning_title figure img {
  max-width: 118.6%;
}
.planning_title .plan_copy {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 35.3%;
}
.planning_title .plan_copy p {
  color: #DD8231;
  font-weight: bold;
  font-size: 20px;
  line-height: 2.2em;
}
@media screen and (max-width: 1360px) {
  .planning_title figure {
    margin: 0 0 10.3vw 0;
  }
  .planning_title figure img {
    width: 100%;
    max-height: 100%;
  }
}
@media screen and (max-width: 1160px) {
  .planning_title {
    width: 100%;
    margin: 0 auto 18.5vw auto;
  }
  .planning_title .planning_ttext {
    padding-left: 5%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .planning_title .planning_ttext h1 {
    font-size: 4.3vw;
    margin-bottom: 4.7vw;
  }
  .planning_title .planning_ttext h2 {
    font-size: 4.3vw;
  }
  .planning_title .plan_copy p {
    font-size: 1.7vw;
  }
}
@media screen and (max-width: 750px) {
  .planning_title {
    width: 100%;
    margin: 0 auto 31.3vw auto;
  }
  .planning_title .planning_ttext {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 76vw;
    padding-left: 0;
    margin: 0 auto 16vw auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .planning_title .planning_ttext h1 {
    font-size: 8.3vw;
    margin-bottom: 8.8vw;
  }
  .planning_title .planning_ttext h2 {
    font-size: 8.3vw;
    line-height: 1.55em;
  }
  .planning_title figure {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 74.1vw;
    margin: 0 0 11.6vw auto;
  }
  .planning_title figure img {
    max-width: 100%;
  }
  .planning_title .plan_copy {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    padding-left: 0%;
    width: 76vw;
    margin: 0 auto;
  }
  .planning_title .plan_copy p {
    font-size: 4.6vw;
  }
}

.plan_vision {
  position: relative;
  width: 100%;
  background: #BB5E24;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.plan_vision figure {
  width: 50%;
  line-height: 0;
  font-size: 0;
}
.plan_vision .pvision_text {
  width: 50%;
}
.plan_vision .pvision_text h2 {
  color: #FFF;
  font-size: 24px;
  margin-bottom: 2em;
}
.plan_vision .pvision_text p {
  color: #FFF;
  font-size: 16px;
  margin: 0;
  line-height: 2.2em;
}
.plan_vision .pvision_text_inner {
  width: 540px;
}
@media screen and (max-width: 1160px) {
  .plan_vision .pvision_text h2 {
    font-size: 2vw;
  }
  .plan_vision .pvision_text p {
    font-size: 1.4vw;
  }
  .plan_vision .pvision_text_inner {
    width: 46.5vw;
  }
}
@media screen and (max-width: 750px) {
  .plan_vision {
    padding-top: 15.5vw;
    padding-bottom: 40vw;
  }
  .plan_vision figure {
    width: 100%;
  }
  .plan_vision .pvision_text {
    width: 100%;
  }
  .plan_vision .pvision_text h2 {
    font-size: 5.2vw;
  }
  .plan_vision .pvision_text p {
    font-size: 3.7vw;
  }
  .plan_vision .pvision_text_inner {
    width: 76vw;
    margin: 0 auto;
  }
}

.plan_vision_spimg {
  position: relative;
  margin-top: -30vw;
}

#planning .blanding_howto h2 {
  color: #707070;
}
#planning .blanding_howto h2 em {
  font-style: normal;
  color: #BB5E24;
}
#planning .blanding_howto p {
  color: #6B6B6B;
}
#planning .blanding_howto div {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#planning .blanding_howto div p {
  width: 55%;
}
#planning .blanding_howto div figure {
  width: 36.7%;
  line-height: 0;
  font-size: 0;
  border: 1px solid #707070;
}
@media screen and (max-width: 750px) {
  #planning .blanding_howto figure {
    position: relative;
    top: auto;
    margin-bottom: auto;
  }
  #planning .blanding_howto div p {
    width: 100%;
  }
  #planning .blanding_howto div figure {
    width: 100%;
  }
}

.planning_direction {
  position: relative;
  border: 1px solid #707070;
  width: 1180px;
  margin: 110px auto 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 55px 80px 40px 80px;
}
.planning_direction::after {
  position: absolute;
  content: "";
  left: 80px;
  top: 0;
  width: 298px;
  height: 18px;
  background: #BB5E24;
}
.planning_direction p {
  font-size: 21px;
  color: #BB5E24;
  line-height: 1.4em;
  font-weight: bold;
  margin: 0;
}
.planning_direction h2 {
  line-height: 1.5em;
  font-size: 24px;
  margin-bottom: 55px;
}
.planning_direction ul {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.planning_direction ul li {
  display: inline-block;
  margin-right: 2em;
  font-size: 22px;
  color: #707070;
  margin-bottom: 40px;
}
@media screen and (max-width: 1260px) {
  .planning_direction {
    width: 90%;
    margin: 8.5vw auto 0 auto;
    padding: 4.3vw 6.25vw 3.15vw 6.25vw;
  }
  .planning_direction::after {
    left: 6.25vw;
    width: 23.2vw;
    height: 1.5vw;
  }
  .planning_direction p {
    font-size: 1.64vw;
  }
  .planning_direction h2 {
    font-size: 1.9vw;
    margin-bottom: 4.3vw;
  }
  .planning_direction ul li {
    font-size: 1.7vw;
    margin-bottom: 3.125vw;
  }
}
@media screen and (max-width: 750px) {
  .planning_direction {
    width: 76vw;
    margin: 15vw auto 0 auto;
    padding: 14.4vw 5.2vw 14.4vw 5.2vw;
  }
  .planning_direction::after {
    left: 6.25vw;
    width: 23.2vw;
    height: 1.5vw;
  }
  .planning_direction p {
    font-size: 4.2vw;
  }
  .planning_direction h2 {
    font-size: 5.2vw;
    margin-bottom: 8.3vw;
  }
  .planning_direction ul li {
    width: 100%;
    font-size: 4.2vw;
    margin-bottom: 3.125vw;
  }
}

#mitsukeru_lp {
  overflow: hidden;
}
#mitsukeru_lp header {
  position: relative;
  padding: 0;
  margin: 0;
  display: block;
  z-index: 2;
}
#mitsukeru_lp header h1 {
  padding: 0;
  margin: 0;
  width: 100%;
  z-index: 1;
}
#mitsukeru_lp header h1 img {
  width: 100%;
}
#mitsukeru_lp header h2 {
  position: absolute;
  width: 1080px;
  z-index: 2;
  bottom: -55px;
  left: calc(50% - 540px + 120px);
}
#mitsukeru_lp header h2 img {
  width: 387px;
}
#mitsukeru_lp main {
  z-index: 1;
}
#mitsukeru_lp .mitsukerulp_contents1 {
  border-left: 42px solid #E3E2DE;
  border-right: 42px solid #E3E2DE;
  padding: 0 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 1300px) {
  #mitsukeru_lp header h2 {
    position: absolute;
    width: 1080px;
    z-index: 2;
    bottom: -55px;
    left: calc(50% - 540px + 120px);
  }
  #mitsukeru_lp header h2 img {
    width: 387px;
  }
  #mitsukeru_lp .dwrap {
    width: 100%;
  }
  #mitsukeru_lp .mitsukerulp_contents1 {
    border-left: 3.2vw solid #E3E2DE;
    border-right: 3.2vw solid #E3E2DE;
    padding: 0 2.3vw;
  }
}
.en_wrap {
  position: absolute;
  background: url(/mitsukeru/images/en1.svg) no-repeat left top;
  background-size: 109px;
  padding: 55px 0 0 55px;
}
.en_wrap h2 {
  font-size: 20px;
  margin-bottom: 20px;
}
.en_wrap p {
  font-size: 16px;
}
@media screen and (max-width: 1230px) {
  .en_wrap {
    background-size: 8.8vw;
    padding: 4.4vw 0 0 4.4vw;
  }
  .en_wrap h2 {
    font-size: 1.6vw;
    margin-bottom: 1.6vw;
  }
  .en_wrap p {
    font-size: 1.3vw;
  }
}

.mlp1_inner {
  padding-top: 115px;
}
.mlp1_inner .mlp1_title {
  padding-left: 120px;
  width: 485px;
  margin-bottom: 70px;
}
.mlp1_inner .mlp1_title h2 {
  margin-bottom: 60px;
}
.mlp1_inner .mlp1_title h2 img {
  width: 100%;
}
.mlp1_inner .mlp1_title p {
  font-size: 18px;
  line-height: 2.7em;
  margin: 0;
  color: #5E4935;
}
.mlp1_inner .mct1_img0 {
  position: absolute;
  right: 74px;
  top: -25px;
  width: 290px;
  z-index: 2;
}
.mlp1_inner .mct1_text1 {
  top: 592px;
  right: 80px;
  z-index: 2;
  background: url(/mitsukeru/images/en2.svg) no-repeat left top;
  background-size: 109px;
}
.mlp1_inner .mct1_text1 h2,
.mlp1_inner .mct1_text1 p {
  color: #B14B52;
}
.mlp1_inner .mct1_text2 {
  top: 695px;
  left: 255px;
  z-index: 2;
  background: url(/mitsukeru/images/en1.svg) no-repeat left top;
  background-size: 109px;
}
.mlp1_inner .mct1_text2 h2,
.mlp1_inner .mct1_text2 p {
  color: #A97EAD;
}
.mlp1_inner .mct1_text3 {
  position: relative;
  display: inline-block;
  padding: 55px 55px 30px 70px;
  background: url(/mitsukeru/images/en3.svg) no-repeat right top;
  background-size: 135px;
}
.mlp1_inner .mct1_text3 h2,
.mlp1_inner .mct1_text3 p {
  text-align: right;
  color: #718F3A;
}
.mlp1_inner .mct1_img1 {
  position: absolute;
  top: 277px;
  right: -50px;
  width: 417px;
  z-index: 1;
  line-height: 0;
  font-size: 0;
}
.mlp1_inner .mct1_img2 {
  position: relative;
  left: -75px;
  width: 286px;
  z-index: 1;
  margin: 0 0 72px 0;
  line-height: 0;
  font-size: 0;
}
.mlp1_inner .mct1_img3 {
  position: absolute;
  width: 697px;
  top: 868px;
  right: -99px;
  line-height: 0;
  font-size: 0;
}
.mlp1_inner .mct1_img4 {
  position: relative;
  left: -39px;
  width: 485px;
  line-height: 0;
  font-size: 0;
}
@media screen and (max-width: 1400px) {
  .mlp1_inner .mct1_img3 {
    position: absolute;
    width: 47vw;
    top: 868px;
    right: -4vw;
  }
}
@media screen and (max-width: 1330px) {
  .mlp1_inner .mct1_img1 {
    top: 277px;
    right: -2vw;
    width: 29vw;
  }
  .mlp1_inner .mct1_img2 {
    left: -2vw;
    width: 19vw;
    margin: 0 0 72px 0;
  }
  .mlp1_inner .mct1_img3 {
    right: -1vw;
  }
  .mlp1_inner .mct1_img4 {
    left: -1vw;
  }
}
@media screen and (max-width: 1230px) {
  .mlp1_inner {
    padding-top: 9.3vw;
  }
  .mlp1_inner .mlp1_title {
    padding-left: 9.7vw;
    width: 39vw;
    margin-bottom: 5.6vw;
  }
  .mlp1_inner .mlp1_title h2 {
    margin-bottom: 4.8vw;
  }
  .mlp1_inner .mlp1_title p {
    font-size: 1.5vw;
  }
  .mlp1_inner .mct1_img0 {
    right: 6vw;
    top: -2vw;
    width: 23vw;
  }
  .mlp1_inner .mct1_text1 {
    top: 48vw;
    right: 6.5vw;
    background-size: 8.8vw;
  }
  .mlp1_inner .mct1_text2 {
    top: 56.5vw;
    left: 20vw;
    background-size: 8.8vw;
  }
  .mlp1_inner .mct1_text3 {
    padding: 4.4vw 4.4vw 2.4vw 5.6vw;
    background-size: 10vw;
  }
  .mlp1_inner .mct1_img1 {
    top: 22.5vw;
  }
  .mlp1_inner .mct1_img2 {
    margin: 0 0 5.8vw 0;
  }
  .mlp1_inner .mct1_img3 {
    top: 73vw;
  }
  .mlp1_inner .mct1_img4 {
    left: -1vw;
    width: 37vw;
  }
}

.mlp2_inner {
  position: relative;
  padding: 105px 0 0 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mlp2_inner .mlp2_text {
  width: 41.6%;
  margin: 0;
}
.mlp2_inner .mlp2_contents {
  width: 53.2%;
}
.mlp2_inner .mlp2_img1 {
  position: relative;
  right: -100px;
  top: 25px;
  width: 574px;
  margin-bottom: 30px;
}
.mlp2_inner .mct1_text4 {
  position: relative;
  left: -50px;
  z-index: 2;
  background: url(/mitsukeru/images/en4.svg) no-repeat left top;
  background-size: 109px;
}
.mlp2_inner .mct1_text4 h2,
.mlp2_inner .mct1_text4 p {
  color: #346A8C;
}
.mlp2_inner .mct1_text4 p {
  font-size: 12px;
}
.mlp2_inner .mlp2_img2 {
  position: absolute;
  right: -50px;
  bottom: 120px;
  width: 265px;
}
@media screen and (max-width: 1400px) {
  .mlp2_inner .mlp2_img1 {
    right: -2vw;
    width: 41vw;
  }
  .mlp2_inner .mlp2_img2 {
    right: -2vw;
    width: 18.9vw;
  }
}
@media screen and (max-width: 1230px) {
  .mlp2_inner {
    padding: 8.5vw 0 0 0;
  }
  .mlp2_inner .mlp2_img1 {
    right: -1vw;
    top: 2vw;
    margin-bottom: 2.4vw;
  }
  .mlp2_inner .mct1_text4 {
    left: -4vw;
    background-size: 8.8vw;
  }
  .mlp2_inner .mct1_text4 p {
    font-size: 1vw;
  }
  .mlp2_inner .mlp2_img2 {
    right: -1vw;
    bottom: 9.7vw;
    width: 21.5vw;
  }
}

.mlp3_inner {
  position: relative;
  text-align: center;
  padding-bottom: 110px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 100px;
}
.mlp3_inner .mct1_text5 {
  position: relative;
  display: inline-block;
  z-index: 2;
  text-align: right;
  margin: -55px 0 60px 0;
  padding: 55px 55px 0 0;
  background: url(/mitsukeru/images/en5.svg) no-repeat right top;
  background-size: 109px;
}
.mlp3_inner .mct1_text5 h2,
.mlp3_inner .mct1_text5 p {
  color: #861E1C;
}
.mlp3_inner .mct1_text5 p {
  font-size: 12px;
  margin: 0;
}
.mlp3_inner .mlp3_timg {
  width: 278px;
  margin: 0 auto;
  padding-left: 25px;
}
.mlp3_inner .mlp3_img1 {
  position: absolute;
  left: -15px;
  bottom: 150px;
  width: 130px;
  z-index: 2;
}
.mlp3_inner .mlp3_img2 {
  position: absolute;
  left: 120px;
  bottom: 260px;
  width: 220px;
  z-index: 1;
}
.mlp3_inner .mlp3_img3 {
  position: absolute;
  right: -100px;
  top: -30px;
  width: 508px;
}
.mlp3_inner .mlp3_img1_cap {
  position: absolute;
  font-size: 12px;
  color: #504F60;
  bottom: 150px;
  left: 150px;
  text-align: left;
}
@media screen and (max-width: 1400px) {
  .mlp3_inner .mlp3_img3 {
    right: calc(-3vw + 20px);
    width: 35vw;
  }
}
@media screen and (max-width: 1230px) {
  .mlp3_inner {
    padding-bottom: 8.9vw;
    padding-right: 8.1vw;
  }
  .mlp3_inner .mct1_text5 {
    margin: -4.4vw 0 4.8vw 0;
    padding: 4.4vw 4.4vw 0 0;
    background-size: 8.8vw;
  }
  .mlp3_inner .mct1_text5 p {
    font-size: 1vw;
  }
  .mlp3_inner .mlp3_timg {
    width: 22vw;
    padding-left: 2vw;
  }
  .mlp3_inner .mlp3_img1 {
    left: -1.2vw;
    bottom: 12vw;
    width: 10vw;
  }
  .mlp3_inner .mlp3_img2 {
    left: 9vw;
    bottom: 21vw;
    width: 17vw;
  }
  .mlp3_inner .mlp3_img3 {
    top: -2.4vw;
    width: 35vw;
  }
  .mlp3_inner .mlp3_img1_cap {
    font-size: 1vw;
    bottom: 12vw;
    left: 12vw;
  }
}

.mitsukerulp_contents2 {
  position: relative;
  background: #F4F3F0;
  padding-bottom: 155px;
}
@media screen and (max-width: 1230px) {
  .mitsukerulp_contents2 {
    padding-bottom: 12.6vw;
  }
}

.mlpc2_wrap1 {
  position: relative;
  border-bottom: 1px solid #6E3D18;
  padding-bottom: 55px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mlpc2_wrap1 .mlpc2_1text {
  width: 600px;
}
.mlpc2_wrap1 .mlpc2_1text h2 {
  position: relative;
  width: 736px;
  top: -40px;
  left: -75px;
  line-height: 0;
  font-size: 0;
}
.mlpc2_wrap1 .mlpc2_1text p {
  width: 600px;
  margin: 0;
}
.mlpc2_wrap1 .mlpc2_1face {
  width: 340px;
  padding-top: 45px;
}
.mlpc2_wrap1 .mlpc2_1face h3 {
  width: 162px;
  line-height: 0;
  font-size: 0;
  margin-bottom: 22px;
}
.mlpc2_wrap1 .mlpc2_1face figure {
  position: relative;
  left: -20px;
  width: 261px;
  line-height: 0;
  font-size: 0;
  margin-bottom: 11px;
}
.mlpc2_wrap1 .mlpc2_1face p {
  line-height: 0;
  font-size: 0;
  margin: 0;
  width: 340px;
}
@media screen and (max-width: 1300px) {
  .mlpc2_wrap1 {
    width: 90% !important;
  }
}
@media screen and (max-width: 1230px) {
  .mlpc2_wrap1 {
    padding-bottom: 4.4vw;
  }
  .mlpc2_wrap1 .mlpc2_1text {
    width: 48.7vw;
  }
  .mlpc2_wrap1 .mlpc2_1text h2 {
    width: 59.8vw;
    top: -3.2vw;
    left: -6vw;
  }
  .mlpc2_wrap1 .mlpc2_1text p {
    width: 48.7vw;
  }
  .mlpc2_wrap1 .mlpc2_1face {
    width: 27.6vw;
    padding-top: 3.6vw;
  }
  .mlpc2_wrap1 .mlpc2_1face h3 {
    width: 13vw;
    margin-bottom: 1.7vw;
  }
  .mlpc2_wrap1 .mlpc2_1face figure {
    left: -1.6vw;
    width: 21.2vw;
    margin-bottom: 1vw;
  }
  .mlpc2_wrap1 .mlpc2_1face p {
    width: 27.6vw;
  }
}

.mlpc2_wrap2 {
  position: relative;
  padding: 19px 0 93px 0;
}
@media screen and (max-width: 1300px) {
  .mlpc2_wrap2 {
    width: 90% !important;
  }
}
@media screen and (max-width: 1230px) {
  .mlpc2_wrap2 {
    padding: 1.5vw 0 7.5vw 0;
  }
}

.mlpc2_wrap2_title {
  margin: 0 0 37px 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mlpc2_wrap2_title p {
  width: 162px;
  line-height: 0;
  font-size: 0;
  margin: 0 32px 0 0;
}
.mlpc2_wrap2_title h2 {
  width: 665px;
  line-height: 0;
  font-size: 0;
  left: auto;
  top: auto;
}
@media screen and (max-width: 1230px) {
  .mlpc2_wrap2_title {
    margin: 0 0 3vw 0;
  }
  .mlpc2_wrap2_title p {
    width: 13vw;
    margin: 0 2.6vw 0 0;
  }
  .mlpc2_wrap2_title h2 {
    width: 54vw;
  }
}

.mlpc2_wrap2_inner {
  position: relative;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mlpc2_wrap2_inner article {
  width: 19.8%;
}
.mlpc2_wrap2_inner article figure {
  width: 85%;
  line-height: 0;
  font-size: 0;
  margin: 0 auto 18px auto;
}
.mlpc2_wrap2_inner article p {
  margin: 0;
  width: 100%;
}

.mlpc2_wrap3 {
  position: relative;
  margin-bottom: 110px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mlpc2_wrap3 .mlpc2_wrap3_titles {
  position: relative;
  width: 50%;
  padding: 125px 0 0 0;
}
.mlpc2_wrap3 .mlpc2_wrap3_titles h2 {
  font-size: 22px;
  padding-left: 28px;
  line-height: 1.7em;
  color: #C1686A;
}
.mlpc2_wrap3 .mlpc2_wrap3_titles p {
  font-size: 13px;
  padding-left: 28px;
  color: #C1686A;
}
.mlpc2_wrap3 .mlpc2_wrap3_titles figure {
  width: 417px;
}
.mlpc2_wrap3 .mlpc2_wrap3_titles .mlpc2_3fig2 {
  position: absolute;
  right: -220px;
  bottom: 0;
  width: 402px;
}
@media screen and (max-width: 1300px) {
  .mlpc2_wrap3 {
    width: 90% !important;
  }
}
@media screen and (max-width: 1230px) {
  .mlpc2_wrap3 {
    margin-bottom: 8.9vw;
  }
  .mlpc2_wrap3 .mlpc2_wrap3_titles {
    padding: 10vw 0 0 0;
  }
  .mlpc2_wrap3 .mlpc2_wrap3_titles h2 {
    font-size: 1.7vw;
    padding-left: 2.2vw;
  }
  .mlpc2_wrap3 .mlpc2_wrap3_titles p {
    font-size: 1vw;
    padding-left: 2.2vw;
  }
  .mlpc2_wrap3 .mlpc2_wrap3_titles figure {
    width: 33vw;
  }
  .mlpc2_wrap3 .mlpc2_wrap3_titles .mlpc2_3fig2 {
    right: -17vw;
    width: 32vw;
  }
}

.mlpc2_wrap3_detail {
  position: relative;
  width: 49%;
}

.mlpc2_wrap3_target {
  padding: 103px 0 33px 38px;
  background: #E3E2DE;
}
.mlpc2_wrap3_target h3 {
  font-size: 26px;
  margin-bottom: 20px;
  line-height: 1.4em;
}
.mlpc2_wrap3_target .mlpc2_3target_title {
  line-height: 0;
  font-size: 0;
  margin-bottom: 25px;
  width: 180px;
}
.mlpc2_wrap3_target p {
  font-size: 13px;
}
.mlpc2_wrap3_target p:last-child {
  margin: 0;
}
@media screen and (max-width: 1230px) {
  .mlpc2_wrap3_target {
    padding: 8.3vw 0 2.6vw 3vw;
  }
  .mlpc2_wrap3_target h3 {
    font-size: 2.1vw;
    margin-bottom: 1.6vw;
  }
  .mlpc2_wrap3_target .mlpc2_3target_title {
    margin-bottom: 2vw;
    width: 14.6vw;
  }
  .mlpc2_wrap3_target p {
    font-size: 1vw;
  }
}

.mlpc2_3target_image {
  list-style: none;
  margin: 0 0 58px 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mlpc2_3target_image li {
  width: 48.9%;
  line-height: 0;
  font-size: 0;
}
@media screen and (max-width: 1230px) {
  .mlpc2_3target_image {
    margin: 0 0 4.7vw 0;
  }
}

.mlpc2_jinbutsu {
  position: relative;
  width: 246px;
  background: #FFF;
  padding: 17px 0 185px 0;
  margin: 0 0 0 auto;
}
.mlpc2_jinbutsu h3 {
  position: relative;
  font-size: 20px;
  margin-bottom: 14px;
  left: -20px;
}
.mlpc2_jinbutsu p {
  position: relative;
  margin: 0;
  left: -20px;
  font-size: 11px;
}
.mlpc2_jinbutsu figure {
  position: absolute;
  bottom: -180px;
  right: 0;
  width: 333px;
}
@media screen and (max-width: 1230px) {
  .mlpc2_jinbutsu {
    width: 20vw;
    padding: 1.3vw 0 15vw 0;
  }
  .mlpc2_jinbutsu h3 {
    font-size: 1.6vw;
    margin-bottom: 1.1vw;
    left: -1.6vw;
  }
  .mlpc2_jinbutsu p {
    left: -1.6vw;
    font-size: 1vw;
  }
  .mlpc2_jinbutsu figure {
    bottom: -14.6vw;
    width: 27vw;
  }
}

.mlpc2_wrap4 {
  position: relative;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mlpc2_wrap4 .press_title {
  width: 58%;
}
.mlpc2_wrap4 .press_title h2 {
  line-height: 0;
  font-size: 0;
  line-height: 1.1em;
  width: 250px;
  margin: 0 0 5px 0;
}
.mlpc2_wrap4 .press_title h3 {
  font-size: 20px;
  color: #C1686A;
  margin-bottom: 1em;
  line-height: 1.4em;
}
.mlpc2_wrap4 .press_title p {
  font-size: 15px;
  color: #767676;
}
.mlpc2_wrap4 .press_sns {
  width: 29%;
}
.mlpc2_wrap4 .press_sns h4 {
  background: #C1686A;
  color: #FFF;
  letter-spacing: 0.6em;
  font-size: 16px;
  font-weight: normal;
  padding: 0.3em 0 0.3em 1em;
  margin-bottom: 27px;
}
.mlpc2_wrap4 .press_sns p {
  font-size: 14px;
  color: #767676;
}
@media screen and (max-width: 1300px) {
  .mlpc2_wrap4 {
    width: 90% !important;
  }
}
@media screen and (max-width: 1230px) {
  .mlpc2_wrap4 .press_title h2 {
    width: 20vw;
    margin: 0 0 0.5vw 0;
  }
  .mlpc2_wrap4 .press_title h3 {
    font-size: 1.6vw;
  }
  .mlpc2_wrap4 .press_title p {
    font-size: 1.2vw;
  }
  .mlpc2_wrap4 .press_sns h4 {
    font-size: 1.3vw;
    margin-bottom: 2.1vw;
  }
  .mlpc2_wrap4 .press_sns p {
    font-size: 1.1vw;
  }
}

.mlpc2_wrap5 {
  position: relative;
  padding: 95px 80px 60px 80px;
  background: #FFF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.mlpc2_wrap5 h2 {
  font-size: 27px;
  letter-spacing: 0.2em;
  margin-bottom: 77px;
}
.mlpc2_wrap5 ul {
  list-style: none;
}
.mlpc2_wrap5 ul li {
  line-height: 0;
  font-size: 0;
  margin-bottom: 35px;
}
.mlpc2_wrap5 .mlpc2_5left {
  width: 45.5%;
}
.mlpc2_wrap5 .mlpc2_5right {
  width: 45.5%;
}
@media screen and (max-width: 1230px) {
  .mlpc2_wrap5 {
    padding: 7.7vw 6.5vw 4.8vw 6.5vw;
  }
  .mlpc2_wrap5 h2 {
    font-size: 2.1vw;
    margin-bottom: 6.2vw;
  }
  .mlpc2_wrap5 ul li {
    margin-bottom: 2.8vw;
  }
}
@media screen and (max-width: 750px) {
  .mlpc2_wrap5 {
    width: 84%;
  }
  .mlpc2_wrap5 h2 {
    font-size: 6vw;
    margin-bottom: 5vw;
  }
  .mlpc2_wrap5 .mlpc2_5left,
  .mlpc2_wrap5 .mlpc2_5right {
    width: 100%;
  }
  .mlpc2_wrap5 .mlpc2_5left ul li,
  .mlpc2_wrap5 .mlpc2_5right ul li {
    margin-bottom: 5vw;
  }
  .mlpc2_wrap5 .mlpc2_5left ul li img,
  .mlpc2_wrap5 .mlpc2_5right ul li img {
    width: 100%;
  }
}

.works_index_title {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  z-index: 2;
}
.works_index_title h1 {
  width: 250px;
  margin-left: 25px;
}
@media screen and (max-width: 1160px) {
  .works_index_title {
    width: 90%;
  }
  .works_index_title h1 {
    width: 21.5vw;
    margin-left: 2.1vw;
  }
}
@media screen and (max-width: 750px) {
  .works_index_title {
    width: 76vw;
  }
  .works_index_title h1 {
    width: 43vw;
    margin-left: 0;
  }
  .works_index_title h1 img {
    width: 100%;
  }
}

.works_detail,
.works_index {
  position: relative;
  padding: 90px 0 135px 0;
  margin-top: -30px;
  background: url(/common/images/home/whatspr_back.jpg) no-repeat center top #FED095;
  background-size: 100%;
  z-index: 1;
}
@media screen and (max-width: 1160px) {
  .works_detail,
  .works_index {
    padding: 7.7vw 0 11.6vw 0;
    margin-top: -2.5vw;
  }
}
@media screen and (max-width: 750px) {
  .works_detail,
  .works_index {
    margin-top: -20vw;
    padding-top: 55vw;
    background: url(/common/images/home/whatspr_back_sp.jpg) no-repeat center top #FED095;
    background-size: 100%;
  }
}

@media screen and (max-width: 1160px) {
  #works .home_works_inner {
    width: 76vw;
    margin: 0 auto;
  }
}

.nav_wrap {
  position: relative;
  clear: both;
}
.nav_wrap ul {
  list-style: none;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.nav_wrap ul li {
  line-height: 1.2em;
  font-weight: bold;
  font-size: 16px;
}
.nav_wrap ul span,
.nav_wrap ul a {
  display: inline-block;
  text-decoration: none;
  border: 1px solid #000;
  margin: 0 5px;
  padding: 0.3em 0.4em;
}
.nav_wrap ul span {
  background: #000;
  color: #FFF;
}
.nav_wrap ul a {
  background: #FFF;
  color: #000;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.nav_wrap ul a:hover {
  background: #666;
  color: #FFF;
}

.works_detail {
  background: url(/common/images/home/whatspr_back.jpg) no-repeat center top;
  background-size: 100%;
}
@media screen and (max-width: 750px) {
  .works_detail {
    background: url(/common/images/home/whatspr_back_sp.jpg) no-repeat center top;
    background-size: 100%;
  }
}

.works_inner {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  background: #FFF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 78px 0 30px 0;
}
@media screen and (max-width: 1160px) {
  .works_inner {
    width: 90%;
    padding: 6.7vw 0 2.5vw 0;
  }
}
@media screen and (max-width: 750px) {
  .works_inner {
    width: 100%;
    padding: 11.6vw 0 11.6vw 0;
  }
}

.works_title_image {
  position: relative;
  width: 88%;
  margin: 0 auto;
  padding: 35px 0 0 0;
  border-top: 1px solid #E64B0A;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.works_title_image figure {
  width: 26.7%;
}
.works_title_image.noimage .works_title {
  width: 100%;
}
@media screen and (max-width: 1160px) {
  .works_title_image {
    padding: 2.8vw 0 0 0;
    width: 88%;
  }
}
@media screen and (max-width: 750px) {
  .works_title_image {
    width: 76vw;
    padding: 6vw 0 14.4vw 0;
  }
  .works_title_image figure {
    width: 58.3%;
    margin: 0 auto;
    text-align: center;
  }
}

.works_title {
  width: 68.6%;
}
.works_title .category {
  font-weight: bold;
  line-height: 1.18em;
  letter-spacing: 0.2em;
  color: #E64B0A;
  margin: 0 0 8px 0;
}
.works_title .sub_category {
  font-size: 14px;
  line-height: 1.35em;
  margin-bottom: 35px;
}
.works_title h2 {
  font-size: 20px;
  line-height: 1.5em;
  margin-bottom: 50px;
  color: #707070;
}
@media screen and (max-width: 1160px) {
  .works_title .sub_category {
    font-size: 1.2vw;
    margin-bottom: 3vw;
  }
  .works_title h2 {
    font-size: 1.7vw;
    margin-bottom: 4.3vw;
  }
}
@media screen and (max-width: 750px) {
  .works_title {
    width: 100%;
  }
  .works_title .category {
    font-size: 3.7vw;
    margin: 0 0 3.7vw 0;
  }
  .works_title .sub_category {
    font-size: 3.2vw;
    margin-bottom: 7.4vw;
  }
  .works_title h2 {
    font-size: 4.2vw;
    line-height: 1.5em;
    margin-bottom: 11.6vw;
  }
}

.works_subtitle {
  border-left: 3px solid #E64B0A;
  padding-left: 24px;
  margin-bottom: 35px;
}
.works_subtitle .works_place {
  font-size: 14px;
  line-height: 1.4em;
  color: #707070;
}
.works_subtitle h1 {
  font-size: 20px;
  line-height: 1.2em;
  margin-bottom: 12px;
  color: #707070;
}
.works_subtitle p {
  font-size: 12px;
  margin: 0;
  line-height: 1.6em;
}
@media screen and (max-width: 1160px) {
  .works_subtitle {
    padding-left: 2vw;
    margin-bottom: 3vw;
  }
  .works_subtitle .works_place {
    font-size: 1.2vw;
  }
  .works_subtitle h1 {
    font-size: 1.7vw;
    margin-bottom: 1vw;
  }
  .works_subtitle p {
    font-size: 1vw;
  }
}
@media screen and (max-width: 750px) {
  .works_subtitle {
    padding-left: 6vw;
    margin-bottom: 16.7vw;
  }
  .works_subtitle .works_place {
    font-size: 2.8vw;
    margin-bottom: 2vw;
  }
  .works_subtitle h1 {
    font-size: 4.2vw;
    margin-bottom: 4vw;
  }
  .works_subtitle p {
    font-size: 2.8vw;
  }
}

.works_mokuteki {
  width: 88%;
  margin: 0 auto 115px auto;
  padding: 25px 29px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #707070;
}
.works_mokuteki h2 {
  position: relative;
  left: -1em;
  font-size: 14px;
  font-weight: normal;
  margin-bottom: 1em;
}
.works_mokuteki p {
  font-size: 14px;
  margin: 0;
  color: #1A1311;
}
@media screen and (max-width: 1160px) {
  .works_mokuteki {
    margin: 0 auto 10vw auto;
    padding: 2.1vw 2.5vw;
  }
  .works_mokuteki h2 {
    font-size: 1.2vw;
  }
  .works_mokuteki p {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 750px) {
  .works_mokuteki {
    width: 76vw;
    margin: 0 auto 14.6vw auto;
    padding: 10vw 5.8vw;
  }
  .works_mokuteki h2 {
    font-size: 3.2vw;
  }
  .works_mokuteki p {
    font-size: 3.2vw;
  }
}

.works_entry_detail {
  position: relative;
  width: 88%;
  margin: 0 auto 200px auto;
}
.works_entry_detail h2.wp-block-heading {
  line-height: 1.5em;
  color: #707070;
  border-bottom: 1px solid #E64B0A;
  font-size: 20px;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
.works_entry_detail p {
  margin-bottom: 52px;
}
.works_entry_detail .wp-block-gallery {
  margin-bottom: 50px;
}
@media screen and (max-width: 1160px) {
  .works_entry_detail {
    margin: 0 auto 17.2vw auto;
  }
  .works_entry_detail h2.wp-block-heading {
    font-size: 1.7vw;
    padding-bottom: 1.7vw;
    margin-bottom: 1.7vw;
  }
  .works_entry_detail p {
    font-size: 1.4vw;
    margin-bottom: 4.5vw;
  }
  .works_entry_detail .wp-block-gallery {
    margin-bottom: 4.3vw;
  }
}
@media screen and (max-width: 750px) {
  .works_entry_detail {
    width: 76vw;
    margin: 0 auto 55vw auto;
  }
  .works_entry_detail h2.wp-block-heading {
    font-size: 3.7vw;
    padding-bottom: 8.8vw;
    margin-bottom: 8.8vw;
  }
  .works_entry_detail .wp-block-gallery {
    margin-bottom: 8vw;
  }
  .works_entry_detail p {
    font-size: 3.2vw;
    margin-bottom: 8vw;
  }
}

.works_entry_nav {
  position: relative;
  clear: both;
  width: 88%;
  list-style: none;
  margin: 0 auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.works_entry_nav li {
  height: 40px;
}
.works_entry_nav li a {
  text-decoration: none;
  height: 40px;
  padding-top: 0.3em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.works_entry_nav li a:hover {
  opacity: 0.5;
}
.works_entry_nav .prev {
  text-align: right;
  width: 207px;
}
.works_entry_nav .prev a {
  display: block;
  background: url(/common/images/share/nav_prev_back.svg) no-repeat center center;
  background-size: 207px;
}
.works_entry_nav .list {
  text-align: center;
  width: 207px;
}
.works_entry_nav .next {
  text-align: left;
  width: 207px;
}
.works_entry_nav .next a {
  display: block;
  background: url(/common/images/share/nav_next_back.svg) no-repeat center center;
  background-size: 207px;
}

.works_seika_jisseki {
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
  border: 1px solid #E64B0A;
  padding: 44px 30px;
  font-size: 14px;
  line-height: 2em;
}
.works_seika_jisseki h2 {
  font-size: 14px;
  margin-bottom: 1em;
  line-height: 2em;
}
.works_seika_jisseki p {
  font-size: 14px;
  line-height: 2em;
}
.works_seika_jisseki p:last-of-type {
  margin-bottom: 0;
}
.works_seika_jisseki h3 {
  font-size: 14px;
  color: #E64B0A;
  margin-bottom: 1em;
  line-height: 2em;
  margin-top: 70px;
}
.works_seika_jisseki ul {
  padding-left: 1.5em;
}
.works_seika_jisseki ul li {
  font-size: 14px;
  line-height: 2em;
}

.min {
  font-family: "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "メイリオ", "Meiryo", sans-serif;
}

.lato {
  font-family: "Lato", sans-serif;
}

.comesoon,
.home_project_item h3,
.header_contact,
.about_contents2 ul,
.pr_link h2,
.home_image,
.page_title_yoko,
.footer_add_nav ul li,
header ul,
.din {
  font-family: "Oswald", sans-serif;
}