@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700");
@import url("https://fonts.googleapis.com/css?family=Cabin");
@import url("https://fonts.googleapis.com/css?family=M+PLUS+1p:300");
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,700");
@import url("https://fonts.googleapis.com/css?family=Capriola&display=swap");
@import url("https://fonts.googleapis.com/css?family=Marcellus&display=swap");
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: local("Noto Sans CJK JP Regular"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format("opentype"); }

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

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }

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

a img {
  border: none; }

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

input[type="button"], input[type="submit"] {
  -webkit-appearance: none; }

/*
  base
--------------------------------------------- */
html {
  font-size: 62.5%;
  width: 100%;
  height: 100%;
  -webkit-text-size-adjust: none; }

* {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

body {
  width: 100%;
  height: 100%;
  min-width: 1200px;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif;
  font-weight: normal;
  line-height: 2;
  color: #333;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  @media screen and (max-width: 767px) {
    body {
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 2;
      min-width: inherit; } }

img {
  border-style: none;
  display: block;
  vertical-align: bottom; }
  @media screen and (max-width: 767px) {
    img {
      max-width: 100%; } }

a,
a img,
button {
  transition: .4s; }

a img:hover {
  opacity: .7; }

a {
  text-decoration: none; }

a:link {
  color: #333;
  /*text-decoration: underline;*/ }

a:visited {
  color: #333; }

a:hover {
  color: #333;
  text-decoration: none; }

a:active {
  color: #333; }

/*
  common
--------------------------------------------- */
@media screen and (max-width: 767px) {
  .sp_only {
    display: block; } }

@media screen and (min-width: 1060px) {
  .sp_only {
    display: none; } }

@media screen and (min-width: 1060px) {
  .pc_only {
    display: block; } }

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

/* float
______________________________________________*/
.fl_r {
  float: right; }

.fl_l {
  float: left; }

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

/* align
______________________________________________*/
.ta_l {
  text-align: left !important; }

.ta_c {
  text-align: center !important; }

.ta_r {
  text-align: right !important; }

.va_t {
  vertical-align: top !important; }

.va_m {
  vertical-align: middle !important; }

.va_b {
  vertical-align: bottom !important; }

/* margin
______________________________________________*/
.mt_100 {
  margin-top: 100px !important; }

.mb_100 {
  margin-bottom: 100px !important; }

.mr_100 {
  margin-right: 100px !important; }

.ml_100 {
  margin-left: 100px !important; }

.mt_95 {
  margin-top: 95px !important; }

.mb_95 {
  margin-bottom: 95px !important; }

.mr_95 {
  margin-right: 95px !important; }

.ml_95 {
  margin-left: 95px !important; }

.mt_90 {
  margin-top: 90px !important; }

.mb_90 {
  margin-bottom: 90px !important; }

.mr_90 {
  margin-right: 90px !important; }

.ml_90 {
  margin-left: 90px !important; }

.mt_85 {
  margin-top: 85px !important; }

.mb_85 {
  margin-bottom: 85px !important; }

.mr_85 {
  margin-right: 85px !important; }

.ml_85 {
  margin-left: 85px !important; }

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

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

.mr_80 {
  margin-right: 80px !important; }

.ml_80 {
  margin-left: 80px !important; }

.mt_75 {
  margin-top: 75px !important; }

.mb_75 {
  margin-bottom: 75px !important; }

.mr_75 {
  margin-right: 75px !important; }

.ml_75 {
  margin-left: 75px !important; }

.mt_70 {
  margin-top: 70px !important; }

.mb_70 {
  margin-bottom: 70px !important; }

.mr_70 {
  margin-right: 70px !important; }

.ml_70 {
  margin-left: 70px !important; }

.mt_65 {
  margin-top: 65px !important; }

.mb_65 {
  margin-bottom: 65px !important; }

.mr_65 {
  margin-right: 65px !important; }

.ml_65 {
  margin-left: 65px !important; }

.mt_60 {
  margin-top: 60px !important; }

.mb_60 {
  margin-bottom: 60px !important; }

.mr_60 {
  margin-right: 60px !important; }

.ml_60 {
  margin-left: 60px !important; }

.mt_55 {
  margin-top: 55px !important; }

.mb_55 {
  margin-bottom: 55px !important; }

.mr_55 {
  margin-right: 55px !important; }

.ml_55 {
  margin-left: 55px !important; }

.mt_50 {
  margin-top: 50px !important; }

.mb_50 {
  margin-bottom: 50px !important; }

.mr_50 {
  margin-right: 50px !important; }

.ml_50 {
  margin-left: 50px !important; }

.mt_45 {
  margin-top: 45px !important; }

.mb_45 {
  margin-bottom: 45px !important; }

.mr_45 {
  margin-right: 45px !important; }

.ml_45 {
  margin-left: 45px !important; }

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

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

.mr_40 {
  margin-right: 40px !important; }

.ml_40 {
  margin-left: 40px !important; }

.mt_35 {
  margin-top: 35px !important; }

.mb_35 {
  margin-bottom: 35px !important; }

.mr_35 {
  margin-right: 35px !important; }

.ml_35 {
  margin-left: 35px !important; }

.mt_30 {
  margin-top: 30px !important; }

.mb_30 {
  margin-bottom: 30px !important; }

.mr_30 {
  margin-right: 30px !important; }

.ml_30 {
  margin-left: 30px !important; }

.mt_25 {
  margin-top: 25px !important; }

.mb_25 {
  margin-bottom: 25px !important; }

.mr_25 {
  margin-right: 25px !important; }

.ml_25 {
  margin-left: 25px !important; }

.mt_20 {
  margin-top: 20px !important; }

.mb_20 {
  margin-bottom: 20px !important; }

.mr_20 {
  margin-right: 20px !important; }

.ml_20 {
  margin-left: 20px !important; }

.mt_15 {
  margin-top: 15px !important; }

.mb_15 {
  margin-bottom: 15px !important; }

.mr_15 {
  margin-right: 15px !important; }

.ml_15 {
  margin-left: 15px !important; }

.mt_10 {
  margin-top: 10px !important; }

.mb_10 {
  margin-bottom: 10px !important; }

.mr_10 {
  margin-right: 10px !important; }

.ml_10 {
  margin-left: 10px !important; }

.mt_5 {
  margin-top: 5px !important; }

.mb_5 {
  margin-bottom: 5px !important; }

.mr_5 {
  margin-right: 5px !important; }

.ml_5 {
  margin-left: 5px !important; }

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

.mb_0 {
  margin-bottom: 0px !important; }

.mr_0 {
  margin-right: 0px !important; }

.ml_0 {
  margin-left: 0px !important; }

/* Padding
______________________________________________*/
.pt_100 {
  padding-top: 100px !important; }

.pb_100 {
  padding-bottom: 100px !important; }

.pr_100 {
  padding-right: 100px !important; }

.pl_100 {
  padding-left: 100px !important; }

.p_100 {
  padding: 100px !important; }

.pt_95 {
  padding-top: 95px !important; }

.pb_95 {
  padding-bottom: 95px !important; }

.pr_95 {
  padding-right: 95px !important; }

.pl_95 {
  padding-left: 95px !important; }

.p_95 {
  padding: 95px !important; }

.pt_90 {
  padding-top: 90px !important; }

.pb_90 {
  padding-bottom: 90px !important; }

.pr_90 {
  padding-right: 90px !important; }

.pl_90 {
  padding-left: 90px !important; }

.p_90 {
  padding: 90px !important; }

.pt_85 {
  padding-top: 85px !important; }

.pb_85 {
  padding-bottom: 85px !important; }

.pr_85 {
  padding-right: 85px !important; }

.pl_85 {
  padding-left: 85px !important; }

.p_85 {
  padding: 85px !important; }

.pt_80 {
  padding-top: 80px !important; }

.pb_80 {
  padding-bottom: 80px !important; }

.pr_80 {
  padding-right: 80px !important; }

.pl_80 {
  padding-left: 80px !important; }

.p_80 {
  padding: 80px !important; }

.pt_75 {
  padding-top: 75px !important; }

.pb_75 {
  padding-bottom: 75px !important; }

.pr_75 {
  padding-right: 75px !important; }

.pl_75 {
  padding-left: 75px !important; }

.p_75 {
  padding: 75px !important; }

.pt_70 {
  padding-top: 70px !important; }

.pb_70 {
  padding-bottom: 70px !important; }

.pr_70 {
  padding-right: 70px !important; }

.pl_70 {
  padding-left: 70px !important; }

.p_70 {
  padding: 70px !important; }

.pt_65 {
  padding-top: 65px !important; }

.pb_65 {
  padding-bottom: 65px !important; }

.pr_65 {
  padding-right: 65px !important; }

.pl_65 {
  padding-left: 65px !important; }

.p_65 {
  padding: 65px !important; }

.pt_60 {
  padding-top: 60px !important; }

.pb_60 {
  padding-bottom: 60px !important; }

.pr_60 {
  padding-right: 60px !important; }

.pl_60 {
  padding-left: 60px !important; }

.p_60 {
  padding: 60px !important; }

.pt_55 {
  padding-top: 55px !important; }

.pb_55 {
  padding-bottom: 55px !important; }

.pr_55 {
  padding-right: 55px !important; }

.pl_55 {
  padding-left: 55px !important; }

.p_55 {
  padding: 55px !important; }

.pt_50 {
  padding-top: 50px !important; }

.pb_50 {
  padding-bottom: 50px !important; }

.pr_50 {
  padding-right: 50px !important; }

.pl_50 {
  padding-left: 50px !important; }

.p_50 {
  padding: 50px !important; }

.pt_45 {
  padding-top: 45px !important; }

.pb_45 {
  padding-bottom: 45px !important; }

.pr_45 {
  padding-right: 45px !important; }

.pl_45 {
  padding-left: 45px !important; }

.p_45 {
  padding: 45px !important; }

.pt_40 {
  padding-top: 40px !important; }

.pb_40 {
  padding-bottom: 40px !important; }

.pr_40 {
  padding-right: 40px !important; }

.pl_40 {
  padding-left: 40px !important; }

.p_40 {
  padding: 40px !important; }

.pt_35 {
  padding-top: 35px !important; }

.pb_35 {
  padding-bottom: 35px !important; }

.pr_35 {
  padding-right: 35px !important; }

.pl_35 {
  padding-left: 35px !important; }

.p_35 {
  padding: 35px !important; }

.pt_30 {
  padding-top: 30px !important; }

.pb_30 {
  padding-bottom: 30px !important; }

.pr_30 {
  padding-right: 30px !important; }

.pl_30 {
  padding-left: 30px !important; }

.p_30 {
  padding: 30px !important; }

.pt_25 {
  padding-top: 25px !important; }

.pb_25 {
  padding-bottom: 25px !important; }

.pr_25 {
  padding-right: 25px !important; }

.pl_25 {
  padding-left: 25px !important; }

.p_25 {
  padding: 25px !important; }

.pt_20 {
  padding-top: 20px !important; }

.pb_20 {
  padding-bottom: 20px !important; }

.pr_20 {
  padding-right: 20px !important; }

.pl_20 {
  padding-left: 20px !important; }

.p_20 {
  padding: 20px !important; }

.pt_15 {
  padding-top: 15px !important; }

.pb_15 {
  padding-bottom: 15px !important; }

.pr_15 {
  padding-right: 15px !important; }

.pl_15 {
  padding-left: 15px !important; }

.p_15 {
  padding: 15px !important; }

.pt_10 {
  padding-top: 10px !important; }

.pb_10 {
  padding-bottom: 10px !important; }

.pr_10 {
  padding-right: 10px !important; }

.pl_10 {
  padding-left: 10px !important; }

.p_10 {
  padding: 10px !important; }

.pt_5 {
  padding-top: 5px !important; }

.pb_5 {
  padding-bottom: 5px !important; }

.pr_5 {
  padding-right: 5px !important; }

.pl_5 {
  padding-left: 5px !important; }

.p_5 {
  padding: 5px !important; }

.pt_0 {
  padding-top: 0px !important; }

.pb_0 {
  padding-bottom: 0px !important; }

.pr_0 {
  padding-right: 0px !important; }

.pl_0 {
  padding-left: 0px !important; }

.p_0 {
  padding: 0px !important; }

@media screen and (max-width: 1059px) {
  .pt_100--tab {
    padding-top: 100px !important; } }

@media screen and (max-width: 1059px) {
  .pb_100--tab {
    padding-bottom: 100px !important; } }

@media screen and (max-width: 1059px) {
  .pr_100--tab {
    padding-right: 100px !important; } }

@media screen and (max-width: 1059px) {
  .pl_100--tab {
    padding-left: 100px !important; } }

@media screen and (max-width: 1059px) {
  .p_100--tab {
    padding: 100px !important; } }

@media screen and (max-width: 1059px) {
  .pt_95--tab {
    padding-top: 95px !important; } }

@media screen and (max-width: 1059px) {
  .pb_95--tab {
    padding-bottom: 95px !important; } }

@media screen and (max-width: 1059px) {
  .pr_95--tab {
    padding-right: 95px !important; } }

@media screen and (max-width: 1059px) {
  .pl_95--tab {
    padding-left: 95px !important; } }

@media screen and (max-width: 1059px) {
  .p_95--tab {
    padding: 95px !important; } }

@media screen and (max-width: 1059px) {
  .pt_90--tab {
    padding-top: 90px !important; } }

@media screen and (max-width: 1059px) {
  .pb_90--tab {
    padding-bottom: 90px !important; } }

@media screen and (max-width: 1059px) {
  .pr_90--tab {
    padding-right: 90px !important; } }

@media screen and (max-width: 1059px) {
  .pl_90--tab {
    padding-left: 90px !important; } }

@media screen and (max-width: 1059px) {
  .p_90--tab {
    padding: 90px !important; } }

@media screen and (max-width: 1059px) {
  .pt_85--tab {
    padding-top: 85px !important; } }

@media screen and (max-width: 1059px) {
  .pb_85--tab {
    padding-bottom: 85px !important; } }

@media screen and (max-width: 1059px) {
  .pr_85--tab {
    padding-right: 85px !important; } }

@media screen and (max-width: 1059px) {
  .pl_85--tab {
    padding-left: 85px !important; } }

@media screen and (max-width: 1059px) {
  .p_85--tab {
    padding: 85px !important; } }

@media screen and (max-width: 1059px) {
  .pt_80--tab {
    padding-top: 80px !important; } }

@media screen and (max-width: 1059px) {
  .pb_80--tab {
    padding-bottom: 80px !important; } }

@media screen and (max-width: 1059px) {
  .pr_80--tab {
    padding-right: 80px !important; } }

@media screen and (max-width: 1059px) {
  .pl_80--tab {
    padding-left: 80px !important; } }

@media screen and (max-width: 1059px) {
  .p_80--tab {
    padding: 80px !important; } }

@media screen and (max-width: 1059px) {
  .pt_75--tab {
    padding-top: 75px !important; } }

@media screen and (max-width: 1059px) {
  .pb_75--tab {
    padding-bottom: 75px !important; } }

@media screen and (max-width: 1059px) {
  .pr_75--tab {
    padding-right: 75px !important; } }

@media screen and (max-width: 1059px) {
  .pl_75--tab {
    padding-left: 75px !important; } }

@media screen and (max-width: 1059px) {
  .p_75--tab {
    padding: 75px !important; } }

@media screen and (max-width: 1059px) {
  .pt_70--tab {
    padding-top: 70px !important; } }

@media screen and (max-width: 1059px) {
  .pb_70--tab {
    padding-bottom: 70px !important; } }

@media screen and (max-width: 1059px) {
  .pr_70--tab {
    padding-right: 70px !important; } }

@media screen and (max-width: 1059px) {
  .pl_70--tab {
    padding-left: 70px !important; } }

@media screen and (max-width: 1059px) {
  .p_70--tab {
    padding: 70px !important; } }

@media screen and (max-width: 1059px) {
  .pt_65--tab {
    padding-top: 65px !important; } }

@media screen and (max-width: 1059px) {
  .pb_65--tab {
    padding-bottom: 65px !important; } }

@media screen and (max-width: 1059px) {
  .pr_65--tab {
    padding-right: 65px !important; } }

@media screen and (max-width: 1059px) {
  .pl_65--tab {
    padding-left: 65px !important; } }

@media screen and (max-width: 1059px) {
  .p_65--tab {
    padding: 65px !important; } }

@media screen and (max-width: 1059px) {
  .pt_60--tab {
    padding-top: 60px !important; } }

@media screen and (max-width: 1059px) {
  .pb_60--tab {
    padding-bottom: 60px !important; } }

@media screen and (max-width: 1059px) {
  .pr_60--tab {
    padding-right: 60px !important; } }

@media screen and (max-width: 1059px) {
  .pl_60--tab {
    padding-left: 60px !important; } }

@media screen and (max-width: 1059px) {
  .p_60--tab {
    padding: 60px !important; } }

@media screen and (max-width: 1059px) {
  .pt_55--tab {
    padding-top: 55px !important; } }

@media screen and (max-width: 1059px) {
  .pb_55--tab {
    padding-bottom: 55px !important; } }

@media screen and (max-width: 1059px) {
  .pr_55--tab {
    padding-right: 55px !important; } }

@media screen and (max-width: 1059px) {
  .pl_55--tab {
    padding-left: 55px !important; } }

@media screen and (max-width: 1059px) {
  .p_55--tab {
    padding: 55px !important; } }

@media screen and (max-width: 1059px) {
  .pt_50--tab {
    padding-top: 50px !important; } }

@media screen and (max-width: 1059px) {
  .pb_50--tab {
    padding-bottom: 50px !important; } }

@media screen and (max-width: 1059px) {
  .pr_50--tab {
    padding-right: 50px !important; } }

@media screen and (max-width: 1059px) {
  .pl_50--tab {
    padding-left: 50px !important; } }

@media screen and (max-width: 1059px) {
  .p_50--tab {
    padding: 50px !important; } }

@media screen and (max-width: 1059px) {
  .pt_45--tab {
    padding-top: 45px !important; } }

@media screen and (max-width: 1059px) {
  .pb_45--tab {
    padding-bottom: 45px !important; } }

@media screen and (max-width: 1059px) {
  .pr_45--tab {
    padding-right: 45px !important; } }

@media screen and (max-width: 1059px) {
  .pl_45--tab {
    padding-left: 45px !important; } }

@media screen and (max-width: 1059px) {
  .p_45--tab {
    padding: 45px !important; } }

@media screen and (max-width: 1059px) {
  .pt_40--tab {
    padding-top: 40px !important; } }

@media screen and (max-width: 1059px) {
  .pb_40--tab {
    padding-bottom: 40px !important; } }

@media screen and (max-width: 1059px) {
  .pr_40--tab {
    padding-right: 40px !important; } }

@media screen and (max-width: 1059px) {
  .pl_40--tab {
    padding-left: 40px !important; } }

@media screen and (max-width: 1059px) {
  .p_40--tab {
    padding: 40px !important; } }

@media screen and (max-width: 1059px) {
  .pt_35--tab {
    padding-top: 35px !important; } }

@media screen and (max-width: 1059px) {
  .pb_35--tab {
    padding-bottom: 35px !important; } }

@media screen and (max-width: 1059px) {
  .pr_35--tab {
    padding-right: 35px !important; } }

@media screen and (max-width: 1059px) {
  .pl_35--tab {
    padding-left: 35px !important; } }

@media screen and (max-width: 1059px) {
  .p_35--tab {
    padding: 35px !important; } }

@media screen and (max-width: 1059px) {
  .pt_30--tab {
    padding-top: 30px !important; } }

@media screen and (max-width: 1059px) {
  .pb_30--tab {
    padding-bottom: 30px !important; } }

@media screen and (max-width: 1059px) {
  .pr_30--tab {
    padding-right: 30px !important; } }

@media screen and (max-width: 1059px) {
  .pl_30--tab {
    padding-left: 30px !important; } }

@media screen and (max-width: 1059px) {
  .p_30--tab {
    padding: 30px !important; } }

@media screen and (max-width: 1059px) {
  .pt_25--tab {
    padding-top: 25px !important; } }

@media screen and (max-width: 1059px) {
  .pb_25--tab {
    padding-bottom: 25px !important; } }

@media screen and (max-width: 1059px) {
  .pr_25--tab {
    padding-right: 25px !important; } }

@media screen and (max-width: 1059px) {
  .pl_25--tab {
    padding-left: 25px !important; } }

@media screen and (max-width: 1059px) {
  .p_25--tab {
    padding: 25px !important; } }

@media screen and (max-width: 1059px) {
  .pt_20--tab {
    padding-top: 20px !important; } }

@media screen and (max-width: 1059px) {
  .pb_20--tab {
    padding-bottom: 20px !important; } }

@media screen and (max-width: 1059px) {
  .pr_20--tab {
    padding-right: 20px !important; } }

@media screen and (max-width: 1059px) {
  .pl_20--tab {
    padding-left: 20px !important; } }

@media screen and (max-width: 1059px) {
  .p_20--tab {
    padding: 20px !important; } }

@media screen and (max-width: 1059px) {
  .pt_15--tab {
    padding-top: 15px !important; } }

@media screen and (max-width: 1059px) {
  .pb_15--tab {
    padding-bottom: 15px !important; } }

@media screen and (max-width: 1059px) {
  .pr_15--tab {
    padding-right: 15px !important; } }

@media screen and (max-width: 1059px) {
  .pl_15--tab {
    padding-left: 15px !important; } }

@media screen and (max-width: 1059px) {
  .p_15--tab {
    padding: 15px !important; } }

@media screen and (max-width: 1059px) {
  .pt_10--tab {
    padding-top: 10px !important; } }

@media screen and (max-width: 1059px) {
  .pb_10--tab {
    padding-bottom: 10px !important; } }

@media screen and (max-width: 1059px) {
  .pr_10--tab {
    padding-right: 10px !important; } }

@media screen and (max-width: 1059px) {
  .pl_10--tab {
    padding-left: 10px !important; } }

@media screen and (max-width: 1059px) {
  .p_10--tab {
    padding: 10px !important; } }

@media screen and (max-width: 1059px) {
  .pt_5--tab {
    padding-top: 5px !important; } }

@media screen and (max-width: 1059px) {
  .pb_5--tab {
    padding-bottom: 5px !important; } }

@media screen and (max-width: 1059px) {
  .pr_5--tab {
    padding-right: 5px !important; } }

@media screen and (max-width: 1059px) {
  .pl_5--tab {
    padding-left: 5px !important; } }

@media screen and (max-width: 1059px) {
  .p_5--tab {
    padding: 5px !important; } }

@media screen and (max-width: 1059px) {
  .pt_0--tab {
    padding-top: 0px !important; } }

@media screen and (max-width: 1059px) {
  .pb_0--tab {
    padding-bottom: 0px !important; } }

@media screen and (max-width: 1059px) {
  .pr_0--tab {
    padding-right: 0px !important; } }

@media screen and (max-width: 1059px) {
  .pl_0--tab {
    padding-left: 0px !important; } }

@media screen and (max-width: 1059px) {
  .p_0--tab {
    padding: 0px !important; } }

@media screen and (max-width: 767px) {
  .pt_100--sp {
    padding-top: 100px !important; } }

@media screen and (max-width: 767px) {
  .pb_100--sp {
    padding-bottom: 100px !important; } }

@media screen and (max-width: 767px) {
  .pr_100--sp {
    padding-right: 100px !important; } }

@media screen and (max-width: 767px) {
  .pl_100--sp {
    padding-left: 100px !important; } }

@media screen and (max-width: 767px) {
  .p_100--sp {
    padding: 100px !important; } }

@media screen and (max-width: 767px) {
  .pt_95--sp {
    padding-top: 95px !important; } }

@media screen and (max-width: 767px) {
  .pb_95--sp {
    padding-bottom: 95px !important; } }

@media screen and (max-width: 767px) {
  .pr_95--sp {
    padding-right: 95px !important; } }

@media screen and (max-width: 767px) {
  .pl_95--sp {
    padding-left: 95px !important; } }

@media screen and (max-width: 767px) {
  .p_95--sp {
    padding: 95px !important; } }

@media screen and (max-width: 767px) {
  .pt_90--sp {
    padding-top: 90px !important; } }

@media screen and (max-width: 767px) {
  .pb_90--sp {
    padding-bottom: 90px !important; } }

@media screen and (max-width: 767px) {
  .pr_90--sp {
    padding-right: 90px !important; } }

@media screen and (max-width: 767px) {
  .pl_90--sp {
    padding-left: 90px !important; } }

@media screen and (max-width: 767px) {
  .p_90--sp {
    padding: 90px !important; } }

@media screen and (max-width: 767px) {
  .pt_85--sp {
    padding-top: 85px !important; } }

@media screen and (max-width: 767px) {
  .pb_85--sp {
    padding-bottom: 85px !important; } }

@media screen and (max-width: 767px) {
  .pr_85--sp {
    padding-right: 85px !important; } }

@media screen and (max-width: 767px) {
  .pl_85--sp {
    padding-left: 85px !important; } }

@media screen and (max-width: 767px) {
  .p_85--sp {
    padding: 85px !important; } }

@media screen and (max-width: 767px) {
  .pt_80--sp {
    padding-top: 80px !important; } }

@media screen and (max-width: 767px) {
  .pb_80--sp {
    padding-bottom: 80px !important; } }

@media screen and (max-width: 767px) {
  .pr_80--sp {
    padding-right: 80px !important; } }

@media screen and (max-width: 767px) {
  .pl_80--sp {
    padding-left: 80px !important; } }

@media screen and (max-width: 767px) {
  .p_80--sp {
    padding: 80px !important; } }

@media screen and (max-width: 767px) {
  .pt_75--sp {
    padding-top: 75px !important; } }

@media screen and (max-width: 767px) {
  .pb_75--sp {
    padding-bottom: 75px !important; } }

@media screen and (max-width: 767px) {
  .pr_75--sp {
    padding-right: 75px !important; } }

@media screen and (max-width: 767px) {
  .pl_75--sp {
    padding-left: 75px !important; } }

@media screen and (max-width: 767px) {
  .p_75--sp {
    padding: 75px !important; } }

@media screen and (max-width: 767px) {
  .pt_70--sp {
    padding-top: 70px !important; } }

@media screen and (max-width: 767px) {
  .pb_70--sp {
    padding-bottom: 70px !important; } }

@media screen and (max-width: 767px) {
  .pr_70--sp {
    padding-right: 70px !important; } }

@media screen and (max-width: 767px) {
  .pl_70--sp {
    padding-left: 70px !important; } }

@media screen and (max-width: 767px) {
  .p_70--sp {
    padding: 70px !important; } }

@media screen and (max-width: 767px) {
  .pt_65--sp {
    padding-top: 65px !important; } }

@media screen and (max-width: 767px) {
  .pb_65--sp {
    padding-bottom: 65px !important; } }

@media screen and (max-width: 767px) {
  .pr_65--sp {
    padding-right: 65px !important; } }

@media screen and (max-width: 767px) {
  .pl_65--sp {
    padding-left: 65px !important; } }

@media screen and (max-width: 767px) {
  .p_65--sp {
    padding: 65px !important; } }

@media screen and (max-width: 767px) {
  .pt_60--sp {
    padding-top: 60px !important; } }

@media screen and (max-width: 767px) {
  .pb_60--sp {
    padding-bottom: 60px !important; } }

@media screen and (max-width: 767px) {
  .pr_60--sp {
    padding-right: 60px !important; } }

@media screen and (max-width: 767px) {
  .pl_60--sp {
    padding-left: 60px !important; } }

@media screen and (max-width: 767px) {
  .p_60--sp {
    padding: 60px !important; } }

@media screen and (max-width: 767px) {
  .pt_55--sp {
    padding-top: 55px !important; } }

@media screen and (max-width: 767px) {
  .pb_55--sp {
    padding-bottom: 55px !important; } }

@media screen and (max-width: 767px) {
  .pr_55--sp {
    padding-right: 55px !important; } }

@media screen and (max-width: 767px) {
  .pl_55--sp {
    padding-left: 55px !important; } }

@media screen and (max-width: 767px) {
  .p_55--sp {
    padding: 55px !important; } }

@media screen and (max-width: 767px) {
  .pt_50--sp {
    padding-top: 50px !important; } }

@media screen and (max-width: 767px) {
  .pb_50--sp {
    padding-bottom: 50px !important; } }

@media screen and (max-width: 767px) {
  .pr_50--sp {
    padding-right: 50px !important; } }

@media screen and (max-width: 767px) {
  .pl_50--sp {
    padding-left: 50px !important; } }

@media screen and (max-width: 767px) {
  .p_50--sp {
    padding: 50px !important; } }

@media screen and (max-width: 767px) {
  .pt_45--sp {
    padding-top: 45px !important; } }

@media screen and (max-width: 767px) {
  .pb_45--sp {
    padding-bottom: 45px !important; } }

@media screen and (max-width: 767px) {
  .pr_45--sp {
    padding-right: 45px !important; } }

@media screen and (max-width: 767px) {
  .pl_45--sp {
    padding-left: 45px !important; } }

@media screen and (max-width: 767px) {
  .p_45--sp {
    padding: 45px !important; } }

@media screen and (max-width: 767px) {
  .pt_40--sp {
    padding-top: 40px !important; } }

@media screen and (max-width: 767px) {
  .pb_40--sp {
    padding-bottom: 40px !important; } }

@media screen and (max-width: 767px) {
  .pr_40--sp {
    padding-right: 40px !important; } }

@media screen and (max-width: 767px) {
  .pl_40--sp {
    padding-left: 40px !important; } }

@media screen and (max-width: 767px) {
  .p_40--sp {
    padding: 40px !important; } }

@media screen and (max-width: 767px) {
  .pt_35--sp {
    padding-top: 35px !important; } }

@media screen and (max-width: 767px) {
  .pb_35--sp {
    padding-bottom: 35px !important; } }

@media screen and (max-width: 767px) {
  .pr_35--sp {
    padding-right: 35px !important; } }

@media screen and (max-width: 767px) {
  .pl_35--sp {
    padding-left: 35px !important; } }

@media screen and (max-width: 767px) {
  .p_35--sp {
    padding: 35px !important; } }

@media screen and (max-width: 767px) {
  .pt_30--sp {
    padding-top: 30px !important; } }

@media screen and (max-width: 767px) {
  .pb_30--sp {
    padding-bottom: 30px !important; } }

@media screen and (max-width: 767px) {
  .pr_30--sp {
    padding-right: 30px !important; } }

@media screen and (max-width: 767px) {
  .pl_30--sp {
    padding-left: 30px !important; } }

@media screen and (max-width: 767px) {
  .p_30--sp {
    padding: 30px !important; } }

@media screen and (max-width: 767px) {
  .pt_25--sp {
    padding-top: 25px !important; } }

@media screen and (max-width: 767px) {
  .pb_25--sp {
    padding-bottom: 25px !important; } }

@media screen and (max-width: 767px) {
  .pr_25--sp {
    padding-right: 25px !important; } }

@media screen and (max-width: 767px) {
  .pl_25--sp {
    padding-left: 25px !important; } }

@media screen and (max-width: 767px) {
  .p_25--sp {
    padding: 25px !important; } }

@media screen and (max-width: 767px) {
  .pt_20--sp {
    padding-top: 20px !important; } }

@media screen and (max-width: 767px) {
  .pb_20--sp {
    padding-bottom: 20px !important; } }

@media screen and (max-width: 767px) {
  .pr_20--sp {
    padding-right: 20px !important; } }

@media screen and (max-width: 767px) {
  .pl_20--sp {
    padding-left: 20px !important; } }

@media screen and (max-width: 767px) {
  .p_20--sp {
    padding: 20px !important; } }

@media screen and (max-width: 767px) {
  .pt_15--sp {
    padding-top: 15px !important; } }

@media screen and (max-width: 767px) {
  .pb_15--sp {
    padding-bottom: 15px !important; } }

@media screen and (max-width: 767px) {
  .pr_15--sp {
    padding-right: 15px !important; } }

@media screen and (max-width: 767px) {
  .pl_15--sp {
    padding-left: 15px !important; } }

@media screen and (max-width: 767px) {
  .p_15--sp {
    padding: 15px !important; } }

@media screen and (max-width: 767px) {
  .pt_10--sp {
    padding-top: 10px !important; } }

@media screen and (max-width: 767px) {
  .pb_10--sp {
    padding-bottom: 10px !important; } }

@media screen and (max-width: 767px) {
  .pr_10--sp {
    padding-right: 10px !important; } }

@media screen and (max-width: 767px) {
  .pl_10--sp {
    padding-left: 10px !important; } }

@media screen and (max-width: 767px) {
  .p_10--sp {
    padding: 10px !important; } }

@media screen and (max-width: 767px) {
  .pt_5--sp {
    padding-top: 5px !important; } }

@media screen and (max-width: 767px) {
  .pb_5--sp {
    padding-bottom: 5px !important; } }

@media screen and (max-width: 767px) {
  .pr_5--sp {
    padding-right: 5px !important; } }

@media screen and (max-width: 767px) {
  .pl_5--sp {
    padding-left: 5px !important; } }

@media screen and (max-width: 767px) {
  .p_5--sp {
    padding: 5px !important; } }

@media screen and (max-width: 767px) {
  .pt_0--sp {
    padding-top: 0px !important; } }

@media screen and (max-width: 767px) {
  .pb_0--sp {
    padding-bottom: 0px !important; } }

@media screen and (max-width: 767px) {
  .pr_0--sp {
    padding-right: 0px !important; } }

@media screen and (max-width: 767px) {
  .pl_0--sp {
    padding-left: 0px !important; } }

@media screen and (max-width: 767px) {
  .p_0--sp {
    padding: 0px !important; } }

/* border
______________________________________________*/
.bdr_t {
  border-top: 1px #ddd solid; }

.bdr_b {
  border-bottom: 1px #ddd solid; }

.bdr_l {
  border-left: 1px #ddd solid; }

.bdr_r {
  border-right: 1px #ddd solid; }

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

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

@media (min-width: 768px) {
  /*
 PC common
---------------------------------------- */
  .sp_only {
    display: none; }
  .pc_only {
    display: block; }
  .wrap01 {
    width: 1400px;
    margin: 0 auto; }
  .wrap02 {
    width: 1120px;
    margin: 0 auto; }
  .wrap03 {
    width: 1000px;
    margin: 0 auto; }
  .wrap04 {
    width: 800px;
    margin: 0 auto; }
  h2.h2_tit01 {
    text-align: center;
    font-size: 24px; }
    h2.h2_tit01 span {
      font-family: "Marcellus", serif;
      font-size: 38px;
      line-height: 1;
      display: block;
      position: relative;
      padding-bottom: 20px;
      margin-bottom: 10px; }
      h2.h2_tit01 span::before {
        content: "";
        position: absolute;
        width: 20px;
        height: 1px;
        background-color: #333;
        bottom: 0;
        left: calc((100% - 20px) / 2); }
  h2.h2_tit02 {
    font-size: 32px; }
  h3.h3_tit01 {
    font-size: 32px; }
  h3.h3_tit02 {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 32px;
    font-weight: 600; }
  h4.h4_tit01 {
    font-size: 20px; }
  .column-2 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .bg-g {
    background-color: #f5f5f5; }
  .btn_w {
    border: 1px solid;
    width: 340px; }
    .btn_w a {
      display: block;
      background-color: #fff;
      height: 55px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center;
      text-decoration: none; }
      .btn_w a:hover {
        background-color: #194279;
        color: #fff; }
  .btn_blk {
    width: 300px;
    position: relative;
    z-index: 1; }
    .btn_blk a {
      display: block;
      height: 55px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      text-decoration: none;
      color: #fff;
      padding: 0 20px;
      position: relative;
      background: #333 url(../img/ico-btn-w.png) no-repeat 90% center; }
      .btn_blk a:after {
        background: #fff url(../img/ico-btn-b.png) no-repeat 90% center;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        content: '';
        transform-origin: right top;
        transform: scale(0, 1);
        transition: transform .3s;
        z-index: 2; }
      .btn_blk a:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: #dcdddd;
        right: -5px;
        bottom: -5px;
        z-index: -1; }
      .btn_blk a:hover:after {
        transform-origin: left top;
        transform: scale(1, 1); }
      .btn_blk a:hover span {
        color: #333; }
      .btn_blk a span {
        position: relative;
        z-index: 3; }
  .point_list li {
    text-align: left;
    position: relative;
    padding-left: 100px;
    counter-increment: point_list; }
    .point_list li::before, .point_list li::after {
      position: absolute;
      width: 80px;
      color: #fff;
      left: 0;
      text-align: center; }
    .point_list li::before {
      content: "Point";
      font-size: 18px;
      height: 80px;
      border-radius: 50%;
      background-color: #c30d23;
      top: 0;
      z-index: 1;
      padding-top: 5px;
      box-sizing: border-box; }
    .point_list li::after {
      content: counter(point_list);
      z-index: 2;
      top: 35px;
      font-size: 40px;
      line-height: 1; }
    .point_list li:not(:last-child) {
      margin-bottom: 80px; }
  .point_list_tit {
    font-size: 22px;
    line-height: 1;
    margin-bottom: 15px; }
  .c-event {
    margin-top: 150px;
    margin-bottom: -150px; }
    .c-event img {
      width: 100%;
      height: auto; }
    .c-event .event_btn {
      margin: 0 auto; }
    .c-event .l-block {
      padding-bottom: 150px; }
      .c-event .l-block_event_bg {
        padding-top: 150px; }
      .c-event .l-block_event_wh {
        padding-top: 150px;
        background-color: #fff; }
    .c-event_top_img {
      width: 836px;
      margin: 0 auto 50px; }
    .c-event_top_head {
      text-align: center; }
    .c-event_top_ttl {
      display: inline-block;
      line-height: 1;
      padding-bottom: 25px;
      margin-bottom: 150px;
      border-bottom: 6px solid #333;
      font-size: 50px;
      font-size: 5rem;
      font-weight: 700; }
    .c-event_top_main .c-event_txt {
      padding-top: 25px; }
    .c-event_ttl {
      margin-bottom: 30px;
      font-size: 36px;
      font-size: 3.6rem;
      font-weight: 700;
      text-align: center; }
    .c-event_point {
      position: relative;
      z-index: 0;
      margin-bottom: 40px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center; }
      .c-event_point::after {
        position: absolute;
        z-index: 0;
        top: 45%;
        left: 50%;
        line-height: 1;
        font-weight: 800;
        transform: translate(-50%, -50%); }
      .c-event_point_top::after {
        font-size: 100px;
        font-size: 10rem;
        content: "\FF0B"; }
      .c-event_point_price::after {
        font-size: 80px;
        font-size: 8rem;
        content: "\00D7"; }
      .c-event_point_wrap {
        position: relative;
        z-index: 0;
        width: 176px;
        height: 176px;
        line-height: 1.6;
        border-radius: 50%;
        color: #fff;
        font-weight: 700;
        font-size: 24px;
        font-size: 2.4rem;
        text-align: center; }
        .c-event_point_wrap--left {
          margin-right: 190px; }
      .c-event_point_row {
        position: absolute;
        z-index: 0;
        top: 48%;
        left: 50%;
        width: 100%;
        height: auto;
        transform: translate(-50%, -50%); }
      .c-event_point_img {
        width: 433px;
        margin: 0 auto 150px; }
    .c-event_figure {
      position: relative;
      z-index: 0;
      margin-bottom: 70px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center; }
      .c-event_figure_wrap {
        position: relative;
        z-index: 0;
        width: 176px;
        height: 176px;
        line-height: 1.4;
        border-radius: 50%;
        color: #fff;
        font-weight: 700;
        font-size: 24px;
        font-size: 2.4rem;
        text-align: center; }
      .c-event_figure_row {
        position: absolute;
        z-index: 0;
        top: 48%;
        left: 50%;
        width: 100%;
        height: auto;
        transform: translate(-50%, -50%); }
      .c-event_figure_arw {
        margin-top: 10px; }
        .c-event_figure_arw--txt {
          width: 100px;
          line-height: 1;
          background-repeat: no-repeat;
          background-size: 89px 33px;
          font-weight: 700;
          font-size: 24px;
          font-size: 2.4rem;
          text-align: center; }
          .c-event_figure_arw--txt--top {
            margin-bottom: 30px;
            padding-bottom: 40px;
            background-image: url(../img/service/inner/volunteer/img_arw_right.png);
            background-position: center 32px; }
          .c-event_figure_arw--txt--btm {
            padding-top: 40px;
            background-image: url(../img/service/inner/volunteer/img_arw_left.png);
            background-position: center 0; }
      .c-event_figure_logo {
        width: 351px;
        margin: 0 auto 60px; }
    .c-event_txt {
      margin-bottom: 140px;
      text-align: center; }
    .c-event_head {
      position: relative;
      z-index: 0;
      margin-bottom: 60px;
      text-align: center; }
      .c-event_head::after {
        position: absolute;
        z-index: 0;
        top: 50%;
        left: 50%;
        width: 20px;
        height: 1px;
        background-color: #333;
        transform: translate(-50%, -50%);
        content: ""; }
      .c-event_head_en {
        line-height: 1;
        padding-bottom: 40px;
        font-family: "Marcellus", serif;
        font-size: 38px;
        font-size: 3.8rem; }
      .c-event_head_ja {
        font-size: 24px;
        font-size: 2.4rem; }
    .c-event_recommended {
      position: relative;
      z-index: 0; }
      .c-event_recommended::after {
        position: absolute;
        z-index: -1;
        top: 40px;
        right: 0;
        width: 75%;
        height: 95%;
        content: ""; }
      .c-event_recommended_list {
        width: 96%;
        max-width: 1200px;
        margin: 0 auto; }
        .c-event_recommended_list li {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-pack: center;
              justify-content: center;
          margin-bottom: 115px; }
          .c-event_recommended_list li:last-child {
            margin-bottom: 0; }
          .c-event_recommended_list li .c-event_recommended_img {
            margin-right: 30px; }
          .c-event_recommended_list li .c-event_recommended_ttl {
            margin-top: 95px; }
          .c-event_recommended_list li:nth-child(even) {
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
            margin-left: auto; }
            .c-event_recommended_list li:nth-child(even) .c-event_recommended_img {
              margin-left: 30px;
              margin-right: 0; }
      .c-event_recommended_img {
        width: 45%;
        max-width: 538px; }
      .c-event_recommended_ttl p {
        margin-bottom: 5px; }
        .c-event_recommended_ttl p span {
          display: inline-block;
          line-height: 1;
          padding: 5px 20px;
          background-color: #fff;
          font-size: 28px;
          font-size: 2.8rem; }
    .c-event_box {
      width: 80%;
      max-width: 835px;
      margin: 0 auto 150px;
      border: 1px solid #151b29; }
      .c-event_box_ttl {
        padding: 10px 0;
        background-color: #151b29;
        color: #fff;
        font-size: 20px;
        font-size: 2rem;
        text-align: center; }
      .c-event_box_detail {
        padding: 25px 25px 15px; }
      .c-event_box_row {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: start;
            align-items: flex-start;
        line-height: 1.8;
        padding: 10px 0;
        border-bottom: 1px dashed #dcdddd; }
        .c-event_box_row:last-child {
          border-bottom: 0; }
        .c-event_box_row dt {
          width: 20%; }
        .c-event_box_row dd {
          width: 80%; }
      .c-event_box_list li {
        position: relative;
        z-index: 0;
        padding-left: 20px; }
        .c-event_box_list li::after {
          position: absolute;
          z-index: 0;
          top: 0;
          left: 0;
          width: 20px;
          height: 20px; }
        .c-event_box_list li:nth-child(1)::after {
          content: "1."; }
        .c-event_box_list li:nth-child(2)::after {
          content: "2."; }
    .c-event_bg {
      position: relative;
      z-index: 0;
      width: 100%;
      height: 413px;
      background-image: url(../img/service/inner/bg_event.png);
      background-repeat: no-repeat;
      background-size: cover; }
      .c-event_bg_wrap {
        position: absolute;
        z-index: 0;
        top: 50%;
        left: 50%;
        width: 100%;
        transform: translate(-50%, -50%); }
      .c-event_bg_ttl {
        margin-bottom: 10px;
        color: #fff;
        font-weight: 700;
        font-size: 36px;
        font-size: 3.6rem;
        text-align: center; }
      .c-event_bg_logo {
        width: 268px;
        margin: 0 auto; }
    .c-event_secret {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: start;
          align-items: flex-start;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 92%;
      max-width: 1000px;
      margin: 0 auto; }
      .c-event_secret li {
        width: 47%;
        margin-right: 6%;
        margin-bottom: 6%;
        padding: 35px 35px 25px;
        border: 1px solid #151b29;
        background-color: #fff;
        text-align: center; }
        .c-event_secret li:nth-child(even) {
          margin-right: 0; }
        .c-event_secret li:nth-child(3), .c-event_secret li:nth-child(4) {
          margin-bottom: 0; }
      .c-event_secret_img {
        width: 295px;
        margin: 0 auto 20px; }
      .c-event_secret_ttl {
        line-height: 1.6;
        font-size: 20px;
        font-size: 2rem; }
    .c-event_entry {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      width: 57%;
      max-width: 720px;
      margin: 0 auto; }
      .c-event_entry li {
        width: 48%;
        padding: 20px;
        background-color: #151b29;
        text-align: center; }
        .c-event_entry li:first-child a {
          pointer-events: none; }
        .c-event_entry li:last-child {
          transition: .4s; }
          .c-event_entry li:last-child:hover {
            opacity: .7; }
        .c-event_entry li a {
          display: block;
          color: #fff; }
      .c-event_entry_img {
        width: 64px;
        margin: 0 auto 25px; }
      .c-event_entry_number {
        line-height: 1;
        font-weight: 700;
        font-size: 40px;
        font-size: 4rem; }
      .c-event_entry_contact {
        font-size: 24px;
        font-size: 2.4rem; }
    .c-event_customers {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 92%;
      max-width: 1000px;
      margin: 0 auto; }
      .c-event_customers li {
        position: relative;
        z-index: 0;
        width: 48%;
        margin-bottom: 50px;
        padding: 120px 60px 110px;
        background-color: #151b29;
        font-size: 24px;
        font-size: 2.4rem;
        color: #fff; }
        .c-event_customers li:nth-child(3), .c-event_customers li:nth-child(4) {
          margin-bottom: 0; }
        .c-event_customers li::before, .c-event_customers li::after {
          position: absolute;
          z-index: 0;
          line-height: 1;
          font-weight: 700;
          font-size: 77px;
          font-size: 7.7rem;
          color: #fff; }
        .c-event_customers li::before {
          top: 30px;
          left: 45px;
          content: "\201C"; }
        .c-event_customers li::after {
          right: 45px;
          bottom: 30px;
          content: "\201D"; }
    .c-event_bnr {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 90%;
      max-width: 960px;
      margin: 0 auto; }
      .c-event_bnr li {
        width: auto; }
    .c-event_other {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: start;
          align-items: flex-start;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 92%;
      max-width: 1000px;
      margin: 0 auto; }
      .c-event_other li {
        width: 29%;
        margin-right: 60px;
        margin-bottom: 50px;
        padding: 45px 0;
        background-color: #151b29;
        color: #fff;
        text-align: center; }
        .c-event_other li:nth-child(3n) {
          margin-right: 0; }
        .c-event_other li:nth-child(4), .c-event_other li:nth-child(5), .c-event_other li:nth-child(6) {
          margin-bottom: 0; }
      .c-event_other_img {
        width: 210px;
        margin: 0 auto 20px; }
        .c-event_other_img img {
          width: auto;
          margin: 0 auto; }
      .c-event_other_ttl {
        line-height: 1.6;
        font-size: 20px;
        font-size: 2rem; }
    .c-event_price {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      width: 92%;
      max-width: 1000px;
      margin: 0 auto; }
      .c-event_price_list {
        width: 29%; }
      .c-event_price_tri {
        position: relative;
        z-index: 0;
        margin-bottom: 50px;
        border-right: 1px solid #151b29;
        border-left: 1px solid #151b29;
        background-color: #fff;
        font-size: 24px;
        font-size: 2.4rem;
        text-align: center; }
        .c-event_price_tri::before, .c-event_price_tri::after {
          position: absolute;
          width: 0;
          height: 0;
          border-left: 146px solid transparent;
          border-right: 146px solid transparent;
          content: ""; }
        .c-event_price_tri::before {
          z-index: 0;
          left: -2px;
          bottom: -39px;
          border-top: 40px solid #fff; }
        .c-event_price_tri::after {
          z-index: -1;
          left: -2px;
          bottom: -40px;
          border-top: 40px solid #151b29; }
      .c-event_price_ttl {
        line-height: 1.6;
        padding: 15px 0;
        background-color: #151b29;
        color: #fff;
        font-size: 20px;
        font-size: 2rem; }
      .c-event_price_txt {
        line-height: 1;
        margin-bottom: 20px;
        padding-top: 20px; }
      .c-event_price_yen {
        padding-bottom: 20px;
        line-height: 1;
        font-weight: 700;
        font-size: 34px;
        font-size: 3.4rem; }
        .c-event_price_yen span {
          padding-right: 5px; }
      .c-event_price_box {
        margin-bottom: 10px;
        padding: 5px 20px; }
        .c-event_price_box:last-child {
          margin-bottom: 0; }
        .c-event_price_box li {
          color: #fff; }
      .c-event_price_bottom {
        position: relative;
        z-index: 0;
        width: 54%;
        max-width: 640px;
        margin: 200px auto 0;
        padding: 10px 0;
        text-align: center; }
        .c-event_price_bottom::before {
          position: absolute;
          z-index: 0;
          top: -160px;
          left: 50%;
          line-height: 1;
          font-weight: 800;
          font-size: 110px;
          font-size: 11rem;
          transform: translateX(-50%);
          content: "\FF0B"; }
        .c-event_price_bottom--txt {
          color: #fff;
          font-size: 24px;
          font-size: 2.4rem; }
    .c-event_bottom {
      width: 60%;
      max-width: 745px;
      margin: 0 auto;
      border: 8px solid #fff;
      background-repeat: no-repeat;
      background-size: cover;
      box-shadow: 2px 2px 7px #464646;
      transition: .4s; }
      .c-event_bottom:hover {
        box-shadow: none; }
      .c-event_bottom a {
        display: block;
        position: relative;
        z-index: 0;
        height: 304px;
        color: #fff;
        font-weight: 700;
        font-size: 36px;
        font-size: 3.6rem;
        text-align: center; }
      .c-event_bottom_wrap {
        position: absolute;
        z-index: 0;
        top: 50%;
        left: 50%;
        width: 100%;
        transform: translate(-50%, -50%); }
      .c-event_bottom_ttl {
        margin-bottom: 10px; }
      .c-event_bottom_logo {
        width: 259px;
        margin: 0 auto; }
  header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    border-bottom: 1px solid #fff;
    z-index: 999;
    transition: background-color .4s; }
    header .header {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: justify;
          justify-content: space-between;
      height: 88px; }
      header .header_tel {
        margin-top: 10px;
        margin-bottom: 5px; }
        header .header_tel img {
          margin-left: auto; }
      header .header_nav ul {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between; }
        header .header_nav ul li:not(:last-child) {
          margin-right: 50px; }
        header .header_nav ul li a {
          color: #fff;
          text-decoration: none; }
    header.active {
      background-color: #151b29;
      border-bottom: none;
      padding-bottom: 15px; }
      header.active::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 1px;
        background-color: #fff;
        bottom: 15px;
        left: 0; }
    header.eventlab-header {
      border: none; }
      header.eventlab-header .header_nav {
        transition: all 0.6s;
        opacity: 0;
        position: relative;
        z-index: 5;
        display: none; }
        header.eventlab-header .header_nav ul {
          border-top: 1px solid #fff;
          display: block; }
          header.eventlab-header .header_nav ul li {
            border-bottom: 1px solid #fff;
            background-color: #151b29; }
            header.eventlab-header .header_nav ul li a,
            header.eventlab-header .header_nav ul li p {
              padding: 23px 20px;
              font-size: 15px;
              line-height: 1;
              display: block;
              color: #fff;
              text-decoration: none; }
        header.eventlab-header .header_nav.active {
          opacity: 1;
          height: calc(100vh - 60px);
          overflow-y: auto;
          display: block;
          animation: show .4s linear 0s; }
      header.eventlab-header .menu-trigger,
      header.eventlab-header .menu-trigger span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box; }
      header.eventlab-header .menu-trigger {
        position: relative;
        width: 30px;
        height: 18px;
        margin-top: 6px; }
      header.eventlab-header .menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #fff;
        border-radius: 4px; }
        header.eventlab-header .menu-trigger span:nth-of-type(1) {
          top: 0; }
        header.eventlab-header .menu-trigger span:nth-of-type(2) {
          top: 8px; }
      header.eventlab-header .menu-trigger.active span:nth-of-type(1) {
        transform: translateY(4px) rotate(-45deg); }
      header.eventlab-header .menu-trigger.active span:nth-of-type(2) {
        transform: translateY(-4px) rotate(45deg); }
  .footer_sub {
    background-color: #f5f5f5;
    padding: 60px 0; }
    .footer_sub_tel {
      text-align: center;
      border-right: 1px solid #727171; }
      .footer_sub_tel img {
        margin: auto;
        margin-bottom: 20px; }
      .footer_sub_tel .tel {
        font-size: 40px;
        font-family: "Open Sans", sans-serif;
        line-height: 1;
        font-weight: 700; }
    .footer_sub a:hover {
      color: #036eb8; }
    .footer_sub .column-2 {
      -ms-flex-align: center;
          align-items: center; }
      .footer_sub .column-2 > div {
        width: 50%; }
    .footer_sub .slanting {
      width: 125px;
      height: 550px;
      background-color: #000;
      transform: skewX(-12deg);
      margin: auto; }
    .footer_sub_txt {
      margin: 50px 0; }
    .footer_sub_logo img {
      margin: auto; }
  #page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999; }
    #page-top a {
      background: #194279;
      text-decoration: none;
      width: 62px;
      height: 62px;
      padding: 25px 23px;
      display: block; }
      #page-top a:hover {
        opacity: .7; }
  footer {
    background-color: #151b29;
    color: #fff;
    position: relative;
    z-index: 4;
    padding: 85px 0 10px;
    font-size: 14px; }
    footer .column-2 {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      padding-bottom: 65px;
      border-bottom: 1px solid #fff; }
    footer .f_content {
      width: calc(100% - 500px);
      padding-right: 65px; }
      footer .f_content > div:not(:last-child) {
        margin-bottom: 30px; }
      footer .f_content_bnr {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between; }
        footer .f_content_bnr a {
          display: block;
          width: calc((100% - 20px) / 2); }
          footer .f_content_bnr a img {
            width: 100%; }
      footer .f_content_privacy {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: start;
            justify-content: flex-start;
        -ms-flex-align: center;
            align-items: center; }
        footer .f_content_privacy p {
          margin-right: 30px; }
    footer .f_fb {
      width: 500px;
      height: 430px;
      margin: 0 auto; }
    footer .footer_nav {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      padding-top: 50px;
      margin-bottom: 100px; }
      footer .footer_nav ul li:not(:last-child) {
        margin-bottom: 10px; }
      footer .footer_nav ul li a {
        text-decoration: none;
        color: #fff; }
    footer .copyright {
      padding-top: 10px;
      text-align: center;
      font-size: 12px; }
    footer.eventlab-footer {
      background-color: transparent;
      color: #333;
      text-align: center;
      padding-top: 0; }
      footer.eventlab-footer .eventlab-footer_logo a {
        display: inline-block; }
      footer.eventlab-footer .eventlab-footer_logo svg {
        margin: auto; }
      footer.eventlab-footer .eventlab-footer_address {
        margin-bottom: 100px; }
      footer.eventlab-footer .wrap02 {
        border-top: 1px solid #333;
        padding-top: 60px; }
  .btn_eventlab_link {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 3; }
    .btn_eventlab_link a {
      text-decoration: none;
      display: block; }
      .btn_eventlab_link a:hover {
        opacity: .7; }
  /*
 PC index
---------------------------------------- */
  body.home .top {
    position: relative; }
    body.home .top_slider li {
      position: relative;
      width: 100%;
      height: 100vh;
      overflow: hidden;
      z-index: 1; }
      body.home .top_slider li .bg {
        position: absolute;
        min-width: 100%;
        min-height: 100%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
    body.home .top_slider_text {
      position: absolute;
      z-index: 2;
      left: calc((100% - 840px) / 2);
      top: 50%;
      transform: translateY(-50%); }
    body.home .top::before {
      position: absolute;
      content: "scroll";
      left: 50%;
      font-family: "Marcellus", serif;
      transform: translateX(-50%);
      bottom: 40px;
      color: #fff;
      z-index: 2; }
    body.home .top::after {
      content: "";
      position: absolute;
      width: 2px;
      height: 25px;
      background-color: #fff;
      left: calc((100% - 2px) / 2);
      z-index: 2;
      bottom: 0; }
  body.home section {
    padding-top: 150px; }
  body.home .sec_01 {
    position: relative; }
    body.home .sec_01::before {
      content: "";
      position: absolute;
      width: 2px;
      height: 25px;
      background-color: #000;
      left: calc((100% - 2px) / 2);
      z-index: 2;
      top: 0; }
    body.home .sec_01 .column-2 {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center;
      background-color: #fff; }
    body.home .sec_01 img {
      width: 50%; }
    body.home .sec_01_txt {
      width: 50%;
      padding: 0 80px; }
      body.home .sec_01_txt h3 {
        margin-bottom: 40px; }
      body.home .sec_01_txt p {
        margin-bottom: 60px; }
  body.home .sec_02 .event {
    position: relative;
    height: 548px; }
    body.home .sec_02 .event > div {
      width: 50%;
      height: 100%;
      overflow: hidden;
      position: absolute;
      top: 0;
      background-size: auto 110%;
      background-position: center right;
      background-repeat: no-repeat;
      z-index: 1;
      color: #fff;
      transition: all 1s, z-index 3s, background-size 2s; }
      body.home .sec_02 .event > div .event_txt {
        position: absolute;
        width: 490px;
        bottom: 60px; }
        body.home .sec_02 .event > div .event_txt h3 {
          margin-bottom: 20px;
          font-size: 32px; }
        body.home .sec_02 .event > div .event_txt p {
          margin-bottom: 25px;
          font-size: 18px; }
      body.home .sec_02 .event > div.active {
        width: 100%;
        z-index: 2;
        background-size: auto 150%; }
        body.home .sec_02 .event > div.active .event_txt {
          left: calc((100% - 1120px) / 2); }
    body.home .sec_02 .event_01 {
      background-image: url("../img/index_event_01.jpg");
      left: 0; }
      body.home .sec_02 .event_01 .event_txt {
        right: 80px; }
      body.home .sec_02 .event_01:hover {
        transition: all 1s, z-index 0s, background-size 2s; }
    body.home .sec_02 .event_02 {
      background-image: url("../img/index_event_02.jpg");
      right: 0; }
      body.home .sec_02 .event_02 .event_txt {
        left: 80px; }
      body.home .sec_02 .event_02:hover {
        transition: all 1s, z-index 0s, background-size 2s; }
    body.home .sec_02 .event:hover .more_btn {
      display: none; }
    body.home .sec_02 .event:hover .more_btn_active {
      display: block; }
    body.home .sec_02 .event .more_btn {
      height: 41px;
      display: inline-block; }
      body.home .sec_02 .event .more_btn img {
        display: inline-block;
        vertical-align: bottom; }
    body.home .sec_02 .event .more_btn_active {
      height: 41px;
      display: none; }
      body.home .sec_02 .event .more_btn_active a {
        color: #fff;
        font-size: 16px; }
        body.home .sec_02 .event .more_btn_active a:after {
          content: '';
          display: inline-block;
          vertical-align: -5px;
          margin-left: 30px;
          width: 22px;
          height: 22px;
          background: url(../img/ico-btn-w.png) no-repeat;
          background-size: contain; }
  body.home .sec_03 .news {
    margin-top: 40px; }
    body.home .sec_03 .news > div {
      width: calc((100% - 40px) / 2); }
    body.home .sec_03 .news_01 {
      margin-right: 40px; }
    body.home .sec_03 .news_tit {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      position: relative;
      padding-bottom: 10px; }
      body.home .sec_03 .news_tit h4 {
        font-size: 18px; }
      body.home .sec_03 .news_tit a {
        color: #194279; }
        body.home .sec_03 .news_tit a::after {
          content: " ≫"; }
      body.home .sec_03 .news_tit::before, body.home .sec_03 .news_tit::after {
        content: "";
        position: absolute;
        height: 1px;
        left: 0;
        bottom: 0; }
      body.home .sec_03 .news_tit::before {
        width: 100%;
        background-color: #9fa0a0;
        z-index: 1; }
      body.home .sec_03 .news_tit::after {
        width: 100px;
        background-color: #194279;
        z-index: 2; }
    body.home .sec_03 .news_list li {
      padding: 20px 20px 17px;
      border-bottom: 1px solid #9fa0a0;
      line-height: 1.75; }
    body.home .sec_03 .news_list a:hover {
      opacity: .5; }
    body.home .sec_03 .news_list_tag {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start;
      margin-bottom: 10px;
      font-size: 14px;
      -ms-flex-align: center;
          align-items: center; }
      body.home .sec_03 .news_list_tag .date {
        line-height: 1;
        margin-right: 10px; }
      body.home .sec_03 .news_list_tag .category {
        color: #194279; }
        body.home .sec_03 .news_list_tag .category a {
          border: 1px solid;
          line-height: 1;
          font-size: 14px;
          padding: 2px 10px;
          display: block;
          color: inherit; }
  body.home .sec_04 .ta_r {
    margin: 10px 0; }
    body.home .sec_04 .ta_r a {
      color: #194279; }
  body.home .sec_04 .case_slider {
    padding: 50px 0;
    background-color: #dcdddd;
    position: relative; }
    body.home .sec_04 .case_slider li {
      max-width: 263px;
      margin: 0 25px; }
      body.home .sec_04 .case_slider li a {
        display: block; }
        body.home .sec_04 .case_slider li a img {
          margin-bottom: 20px; }
    body.home .sec_04 .case_slider .slick-arrow {
      position: absolute;
      height: 100%;
      width: 84px;
      background-color: rgba(255, 255, 255, 0.55);
      top: 0;
      z-index: 1;
      cursor: pointer; }
      body.home .sec_04 .case_slider .slick-arrow::before {
        content: "";
        position: absolute;
        width: 25px;
        height: 25px;
        border-top: 1px solid #333;
        border-right: 1px solid #333;
        z-index: 2;
        left: calc((100% - 37px) / 2);
        top: calc((100% - 37px) / 2); }
      body.home .sec_04 .case_slider .slick-arrow.next {
        right: 0; }
        body.home .sec_04 .case_slider .slick-arrow.next::before {
          transform: rotate(45deg); }
      body.home .sec_04 .case_slider .slick-arrow.prev {
        left: 0; }
        body.home .sec_04 .case_slider .slick-arrow.prev::before {
          transform: rotate(-135deg); }
  body.home .sec_04 .event_solution ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    background: #000; }
    body.home .sec_04 .event_solution ul li {
      width: calc(100% / 3);
      position: relative;
      counter-increment: event-count;
      overflow: hidden;
      background: #000; }
      body.home .sec_04 .event_solution ul li img {
        width: 100%; }
      body.home .sec_04 .event_solution ul li h3 {
        line-height: 1.35;
        text-align: center;
        position: absolute;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-align: center;
            align-items: center;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        color: #fff;
        font-size: 28px; }
      body.home .sec_04 .event_solution ul li::before {
        font-size: 14px;
        content: "イベントソリューション" counter(event-count, decimal-leading-zero);
        position: absolute;
        color: #fff;
        left: 55px;
        top: 28px; }
      body.home .sec_04 .event_solution ul li::after {
        content: "";
        position: absolute;
        width: 45px;
        height: 1px;
        background-color: #fff;
        left: 0;
        top: 40px; }
      body.home .sec_04 .event_solution ul li:hover {
        opacity: 1; }
      body.home .sec_04 .event_solution ul li:hover .hover {
        width: 100%;
        opacity: 1;
        transform: translateX(0); }
      body.home .sec_04 .event_solution ul li .hover {
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        min-height: 100%;
        transition: .4s;
        transform: translateX(-100%);
        z-index: 2; }
  body.home .sec_05_tit {
    font-size: 32px;
    font-family: 游明朝,"Yu Mincho",YuMincho;
    text-align: center;
    font-weight: bold; }
  body.home .sec_05 .inner_nav {
    padding-top: 50px; }
    body.home .sec_05 .inner_nav ul {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      body.home .sec_05 .inner_nav ul li {
        text-align: center; }
        body.home .sec_05 .inner_nav ul li a {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-pack: center;
              justify-content: center;
          -ms-flex-align: center;
              align-items: center;
          width: 316px;
          height: 316px;
          border-radius: 50%;
          background-size: contain;
          background-repeat: no-repeat;
          color: #fff; }
        body.home .sec_05 .inner_nav ul li h3 {
          font-size: 28px;
          width: 100%;
          text-align: center;
          padding-top: 30px;
          line-height: 1.42; }
        body.home .sec_05 .inner_nav ul li h4 {
          font-size: 22px;
          height: 80px;
          width: 100%;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-align: center;
              align-items: center;
          -ms-flex-pack: center;
              justify-content: center;
          margin-top: 10px;
          line-height: 1.42; }
        body.home .sec_05 .inner_nav ul li:nth-child(1) a {
          background-image: url("../img/inner_nav_bg_01.png"); }
        body.home .sec_05 .inner_nav ul li:nth-child(1) h4 {
          color: #a59a7c; }
        body.home .sec_05 .inner_nav ul li:nth-child(2) a {
          background-image: url("../img/inner_nav_bg_02.png"); }
        body.home .sec_05 .inner_nav ul li:nth-child(2) h4 {
          color: #cca3a3; }
        body.home .sec_05 .inner_nav ul li:nth-child(3) a {
          background-image: url("../img/inner_nav_bg_03.png"); }
        body.home .sec_05 .inner_nav ul li:nth-child(3) h4 {
          color: #6995b2; }
        body.home .sec_05 .inner_nav ul li:nth-child(4) a {
          background-image: url("../img/inner_nav_bg_04.png"); }
        body.home .sec_05 .inner_nav ul li:nth-child(4) h4 {
          color: #f4b4d0; }
        body.home .sec_05 .inner_nav ul li:nth-child(5) a {
          background-image: url("../img/inner_nav_bg_05.png"); }
        body.home .sec_05 .inner_nav ul li:nth-child(5) h4 {
          color: #1d877a; }
        body.home .sec_05 .inner_nav ul li:nth-child(6) a {
          background-image: url("../img/inner_nav_bg_07.png"); }
        body.home .sec_05 .inner_nav ul li:nth-child(6) h4 {
          color: #67827f; }
        body.home .sec_05 .inner_nav ul li:nth-child(7) a {
          background-image: url("../img/inner_nav_bg_08.png"); }
        body.home .sec_05 .inner_nav ul li:nth-child(7) h4 {
          color: #00913a; }
        body.home .sec_05 .inner_nav ul li:nth-child(8) a {
          background-image: url("../img/inner_nav_bg_06.png"); }
        body.home .sec_05 .inner_nav ul li:nth-child(8) h4 {
          color: #f8b62d; }
        body.home .sec_05 .inner_nav ul li:not(:nth-child(3n)) {
          margin-right: 26px; }
        body.home .sec_05 .inner_nav ul li:nth-child(n+4) {
          margin-top: 26px; }
  body.home .sec_06 {
    padding-top: 0; }
    body.home .sec_06 .hero {
      max-width: 100vw;
      height: 550px;
      background-color: #000;
      background-image: url("../img/top_bg.png");
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      position: relative; }
      body.home .sec_06 .hero a {
        display: block; }
    body.home .sec_06__link {
      width: 100%;
      text-align: center;
      margin-top: 60px; }
      body.home .sec_06__link img {
        margin: auto;
        width: 400px; }
  body.home .sec_07 {
    padding-top: 60px;
    padding-bottom: 150px;
    background-color: #fff; }
    body.home .sec_07 .h2_tit01 {
      margin-bottom: 35px; }
    body.home .sec_07 .top_bnr_list {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      -ms-flex-pack: center;
      justify-content: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      body.home .sec_07 .top_bnr_list li {
        margin-right: 10%; }
        body.home .sec_07 .top_bnr_list li:last-child {
          margin-right: 0; }
        body.home .sec_07 .top_bnr_list li img {
          width: 100%;
          height: auto;
          margin: 0 auto; }
      body.home .sec_07 .top_bnr_list--01 {
        width: 215px; }
      body.home .sec_07 .top_bnr_list--02 {
        width: 114px; }
      body.home .sec_07 .top_bnr_list--03 {
        width: 298px; }
      body.home .sec_07 .top_bnr_list--04 {
        width: 146px; }
  _:-ms-lang(x)::-ms-backdrop, .sec_06 .hero a {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  /*
 PC page
---------------------------------------- */
  body.page header {
    background-color: #151b29;
    border-bottom: none;
    padding-bottom: 15px; }
    body.page header::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 1px;
      background-color: #fff;
      bottom: 15px;
      left: 0; }
  body.page main {
    margin-top: 103px;
    margin-bottom: 150px; }
  body.page .page_top {
    position: relative;
    margin-top: 185px;
    padding-bottom: 45px;
    text-align: center; }
    body.page .page_top::before {
      content: "";
      position: absolute;
      z-index: -1;
      background-color: #f5f5f5;
      width: 100%;
      height: calc(100% - 220px);
      bottom: 0;
      left: 0; }
    body.page .page_top_min {
      padding-top: 30px;
      background: #f5f5f5; }
      body.page .page_top_min::before {
        content: none; }
    body.page .page_top_other::before {
      content: none; }
    body.page .page_top img {
      margin: auto; }
    body.page .page_top_tit {
      font-size: 50px;
      font-weight: bold;
      line-height: 1;
      border-bottom: 6px solid;
      display: inline-block;
      padding-bottom: 20px;
      margin: 50px auto 70px; }
    body.page .page_top .sub_nav {
      margin: 0 60px; }
      body.page .page_top .sub_nav ul {
        padding: 30px 20px 10px;
        background-color: #fff;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        body.page .page_top .sub_nav ul li {
          line-height: 1;
          font-size: 18px;
          margin-bottom: 20px; }
          body.page .page_top .sub_nav ul li a {
            display: block;
            position: relative;
            text-decoration: none; }
            body.page .page_top .sub_nav ul li a::after {
              transition: .4s;
              display: block;
              position: absolute;
              content: '';
              width: 100%;
              height: 6px;
              background: #fff;
              bottom: -13px;
              left: 0; }
            body.page .page_top .sub_nav ul li a:hover::after {
              background: #333; }
          body.page .page_top .sub_nav ul li .is-current {
            display: block;
            position: relative; }
            body.page .page_top .sub_nav ul li .is-current::after {
              transition: .4s;
              display: block;
              position: absolute;
              content: '';
              width: 100%;
              height: 6px;
              background: #333;
              bottom: -13px;
              left: 0; }
          body.page .page_top .sub_nav ul li:not(:first-child) {
            padding-left: 35px;
            margin-left: 35px;
            border-left: 1px solid; }
  body.page .page_top02 {
    padding-top: 82px;
    text-align: center; }
    body.page .page_top02 img {
      margin: auto; }
    body.page .page_top02 h2 {
      margin-bottom: 160px; }
    body.page .page_top02 .h3_tit02 {
      margin-bottom: 65px; }
    body.page .page_top02 p {
      margin-bottom: 30px; }
  body.page .page_link {
    margin-top: 150px; }
    body.page .page_link_item {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 1000px;
      margin: auto; }
      body.page .page_link_item li {
        background-color: #f5f5f5;
        min-height: 500px;
        width: 468px;
        padding-bottom: 40px;
        position: relative; }
        body.page .page_link_item li:nth-child(n+3) {
          margin-top: 50px; }
        body.page .page_link_item li:nth-child(odd) {
          margin-right: 64px; }
      body.page .page_link_item_tit {
        position: relative; }
        body.page .page_link_item_tit h3 {
          position: absolute;
          width: 100%;
          height: 100%;
          left: 0;
          top: 0;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-pack: center;
              justify-content: center;
          -ms-flex-align: center;
              align-items: center;
          font-size: 28px;
          color: #fff; }
      body.page .page_link_item_txt {
        margin: 20px 40px 0;
        min-height: 110px; }
      body.page .page_link_item_content {
        padding: 30px 40px 40px;
        margin-bottom: 55px; }
        body.page .page_link_item_content .h4_tit01 {
          margin-bottom: 20px; }
        body.page .page_link_item_content [class^="btn"] {
          position: absolute;
          left: calc((100% - 340px) / 2);
          bottom: 40px; }
  body.page .page_key {
    width: 834px;
    height: 426px;
    position: relative;
    margin: 150px auto 140px; }
    body.page .page_key_img {
      position: relative; }
    body.page .page_key_txt {
      width: 100%;
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      text-align: center; }
    body.page .page_key_en {
      font-family: "Open Sans", sans-serif;
      font-style: italic;
      font-weight: 700;
      font-size: 54px;
      color: #fff; }
      body.page .page_key_en::after {
        content: '';
        display: block;
        width: 28px;
        height: 2px;
        background: #fff;
        margin: 0 auto 20px; }
    body.page .page_key_jp {
      font-size: 22px;
      color: #fff; }
    body.page .page_key_cross {
      width: 50px;
      height: 50px;
      position: relative;
      display: block;
      margin: auto; }
      body.page .page_key_cross::before, body.page .page_key_cross::after {
        content: "";
        position: absolute;
        height: 50px;
        width: 2px;
        background-color: #fff;
        top: 0;
        left: 48%; }
      body.page .page_key_cross::before {
        transform: skewX(45deg); }
      body.page .page_key_cross::after {
        transform: skewX(-45deg); }
  body.page .page_catch {
    width: 100%;
    height: auto;
    position: relative; }
    body.page .page_catch::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: calc(100% - 140px);
      background-color: #f5f5f5;
      z-index: -1; }
    body.page .page_catch .page_key {
      margin-bottom: 0; }
    body.page .page_catch .h2_tit02 {
      color: #fff; }
    body.page .page_catch .page_key_content {
      padding: 130px 0 150px;
      text-align: center;
      width: 834px;
      margin: auto; }
      body.page .page_catch .page_key_content h3 {
        margin-bottom: 60px; }
      body.page .page_catch .page_key_content p {
        margin-bottom: 40px; }
      body.page .page_catch .page_key_content .point_list {
        margin-bottom: 150px; }
        body.page .page_catch .page_key_content .point_list p {
          margin-bottom: 0; }
      body.page .page_catch .page_key_content .btn_w {
        margin: 0 auto; }
  body.page .page_inner {
    width: 836px;
    margin-left: auto;
    margin-right: auto; }
  body.page .sec_ttl {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 32px;
    font-weight: 600;
    position: relative;
    margin-bottom: 60px; }
    body.page .sec_ttl::before {
      content: '';
      width: 100%;
      height: 1px;
      background: #b5b5b6;
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 1; }
    body.page .sec_ttl::after {
      content: '';
      width: 144px;
      height: 1px;
      background: #194279;
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 2; }
  /*
 PC company
---------------------------------------- */
  .company .message_cont {
    width: 741px;
    margin-left: auto;
    margin-right: auto; }
  .company .message_txt {
    margin-bottom: 20px; }
  .company .message_name {
    margin-top: 50px;
    text-align: right; }
  .company .pride_copy_cont {
    background: url(../img/company/pride_bg_01.svg) no-repeat center 30px;
    background-size: 473px auto;
    padding-bottom: 120px; }
  .company .pride_copy_img {
    text-align: center;
    margin: 0 auto; }
    .company .pride_copy_img img {
      text-align: center;
      margin: 0 auto; }
  .company .pride_copy_txt {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    text-align: center;
    font-size: 28px;
    line-height: 1.78;
    padding: 50px 0 0;
    font-weight: 600; }
  .company .pride_txt {
    width: 741px;
    margin: 0 auto 120px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 24px;
    line-height: 1.75;
    font-weight: 600; }
  .company .pride_img {
    margin: -40px auto 0; }
    .company .pride_img img {
      text-align: center;
      margin: 0 auto; }
  .company .about_cont {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 150px; }
    .company .about_cont dt {
      font-weight: bold;
      width: 174px;
      padding: 0 40px 15px 20px;
      margin-top: 15px;
      clear: both;
      border-bottom: 1px #ddd solid;
      letter-spacing: .2em; }
    .company .about_cont dd {
      width: calc(100% - 174px);
      border-bottom: 1px #ddd solid;
      padding-bottom: 15px;
      margin-top: 15px; }
  .company .about_txt {
    margin-bottom: 60px; }
  .company .about_map iframe {
    width: 100%;
    height: 468px; }
  .company .history_cont dt {
    float: left;
    font-weight: bold;
    width: 104px;
    margin-right: 20px;
    clear: both;
    padding-bottom: 10px; }
  .company .history_cont dd {
    width: calc(100% - 124px);
    float: left;
    padding-bottom: 10px; }
  /*
 PC other
---------------------------------------- */
  .privacy_cont {
    padding: 100px;
    background: #f5f5f5; }
    .privacy_cont p {
      margin-bottom: 20px; }
  .contact_cont {
    width: 1000px;
    margin: 0 auto; }
  .contact_txt {
    border: 1px #ddd solid;
    padding: 30px 40px;
    margin: 60px auto 50px; }
    .contact_txt ul {
      margin-top: 20px; }
    .contact_txt a {
      color: #036eb8;
      text-decoration: underline; }
      .contact_txt a:hover {
        text-decoration: none; }
  .contact .req {
    background: #c30d23;
    border-radius: 2px;
    color: #fff;
    line-height: 1;
    display: inline-block;
    padding: 2px 14px;
    margin: 0 10px; }
  .contact_form table {
    width: 100%;
    border: 1px #ddd solid; }
    .contact_form table th, .contact_form table td {
      border: 1px #ddd solid; }
    .contact_form table th {
      padding: 20px 25px;
      background: #f5f5f5;
      width: 276px; }
    .contact_form table td {
      padding: 20px 50px; }
  .contact_form input, .contact_form select, .contact_form textarea {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif;
    border: 1px #ddd solid;
    background: #fff;
    padding: 7px 10px;
    border-radius: 4px;
    width: 100%; }
    .contact_form input.contact_form_min, .contact_form select.contact_form_min, .contact_form textarea.contact_form_min {
      width: 390px; }
  .contact_form textarea {
    height: 175px;
    display: block; }
  .contact_form_btn {
    width: 185px;
    background: #194279;
    border: none;
    text-align: center;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif;
    color: #fff;
    padding: 7px 0;
    margin-left: 30px; }
  .contact_privacy .link {
    text-align: center;
    margin: 50px auto 40px; }
    .contact_privacy .link a {
      color: #036eb8;
      text-decoration: underline; }
      .contact_privacy .link a:hover {
        text-decoration: none; }
  .contact_privacy .check {
    text-align: center; }
    .contact_privacy .check span {
      display: inline-block;
      vertical-align: top;
      text-align: left; }
  .contact_btn {
    margin: 40px auto 70px;
    text-align: center; }
    .contact_btn_input {
      color: #fff;
      text-align: center;
      font-size: 20px;
      border: none;
      border-bottom: 4px #81c7e8 solid;
      background: #194279 url(../img/ico_arw.svg) no-repeat 90% center;
      border-radius: 5px;
      font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif;
      width: 288px;
      padding: 10px;
      cursor: pointer; }
      .contact_btn_input:disabled {
        background: #999 url(../img/ico_arw.svg) no-repeat 90% center; }
  .contact_bottom p {
    margin-bottom: 50px; }
  .news_cont {
    width: 1000px;
    margin: 60px auto 0; }
    .news_cont_single {
      width: 800px;
      margin: 60px auto 0; }
      .news_cont_single html, .news_cont_single address,
      .news_cont_single blockquote,
      .news_cont_single body, .news_cont_single dd, .news_cont_single div,
      .news_cont_single dl, .news_cont_single dt, .news_cont_single fieldset, .news_cont_single form,
      .news_cont_single frame, .news_cont_single frameset,
      .news_cont_single h1, .news_cont_single h2, .news_cont_single h3, .news_cont_single h4,
      .news_cont_single h5, .news_cont_single h6, .news_cont_single noframes,
      .news_cont_single ol, .news_cont_single p, .news_cont_single ul, .news_cont_single center,
      .news_cont_single dir, .news_cont_single hr, .news_cont_single menu, .news_cont_single pre {
        display: block;
        unicode-bidi: embed;
        color: inherit; }
      .news_cont_single ol {
        list-style: decimal;
        list-style-position: inside; }
      .news_cont_single ul {
        list-style: disc;
        list-style-position: inside; }
      .news_cont_single li {
        display: list-item; }
      .news_cont_single head {
        display: none; }
      .news_cont_single table {
        display: table; }
      .news_cont_single tr {
        display: table-row; }
      .news_cont_single thead {
        display: table-header-group; }
      .news_cont_single tbody {
        display: table-row-group; }
      .news_cont_single tfoot {
        display: table-footer-group; }
      .news_cont_single col {
        display: table-column; }
      .news_cont_single colgroup {
        display: table-column-group; }
      .news_cont_single td, .news_cont_single th {
        display: table-cell; }
      .news_cont_single caption {
        display: table-caption; }
      .news_cont_single th {
        font-weight: bolder;
        text-align: center; }
      .news_cont_single caption {
        text-align: center; }
      .news_cont_single body {
        margin: 8px; }
      .news_cont_single h1 {
        font-size: 2em;
        margin: .67em 0; }
      .news_cont_single h2 {
        font-size: 1.5em;
        margin: .75em 0; }
      .news_cont_single h3 {
        font-size: 1.17em;
        margin: .83em 0; }
      .news_cont_single h4, .news_cont_single p,
      .news_cont_single blockquote, .news_cont_single ul,
      .news_cont_single fieldset, .news_cont_single form,
      .news_cont_single ol, .news_cont_single dl, .news_cont_single dir,
      .news_cont_single menu {
        margin: 1.12em 0; }
      .news_cont_single h5 {
        font-size: .83em;
        margin: 1.5em 0; }
      .news_cont_single h6 {
        font-size: .75em;
        margin: 1.67em 0; }
      .news_cont_single h1, .news_cont_single h2, .news_cont_single h3, .news_cont_single h4,
      .news_cont_single h5, .news_cont_single h6, .news_cont_single b,
      .news_cont_single strong {
        font-weight: bolder; }
      .news_cont_single blockquote {
        margin-left: 40px;
        margin-right: 40px; }
      .news_cont_single i, .news_cont_single cite, .news_cont_single em,
      .news_cont_single var, .news_cont_single address {
        font-style: italic; }
      .news_cont_single .category {
        color: #194279;
        border: 1px #194279 solid;
        display: inline-block;
        padding: 2px 5px;
        line-height: 1; }
      .news_cont_single .ttl {
        font-size: 32px;
        line-height: 1.5;
        padding-top: 20px; }
      .news_cont_single .date {
        padding: 30px 0; }
      .news_cont_single .news_main {
        font-size: 18px; }
      .news_cont_single .news_back {
        margin: 150px auto 0; }
        .news_cont_single .news_back a {
          display: block;
          margin: 0 auto;
          width: 380px;
          background: #f5f5f5;
          border-bottom: 3px #aca59b solid;
          padding: 13px 0; }
          .news_cont_single .news_back a::before {
            content: '≪';
            padding: 0 40px;
            font-size: 14px; }
          .news_cont_single .news_back a:hover {
            background: #65655e;
            color: #fff;
            border-bottom: 3px #464546 solid; }
  .news_select {
    margin: 0 auto 60px;
    text-align: center; }
  .news select {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif;
    border: 1px #727171 solid;
    background: #fff url(../img/ico_arw_down.svg) no-repeat 96% center;
    text-align: center;
    color: #727171;
    padding: 7px 10px;
    width: 230px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
  .news select::-ms-expand {
    display: none; }
  .news_link ul {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    border-bottom: 1px #ddd solid; }
    .news_link ul li {
      padding: 0 40px; }
      .news_link ul li.is-current a::before {
        content: "";
        display: inline-block;
        width: 100%;
        height: 4px;
        background: #194279;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        transition: width .4s; }
    .news_link ul a {
      position: relative;
      color: #333;
      font-size: 18px;
      transition: border-color .2s ease-in-out;
      padding-bottom: 8px; }
      .news_link ul a::before {
        content: "";
        display: inline-block;
        width: 0;
        height: 4px;
        background: #194279;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        transition: width .4s; }
      .news_link ul a:hover::before {
        width: 100%; }
  .news_list_cont li {
    border-bottom: 1px #ddd solid; }
    .news_list_cont li a {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start; }
      .news_list_cont li a:hover {
        opacity: .5; }
  .news_list_cont .date {
    width: 144px;
    padding: 30px;
    line-height: 1.2; }
    .news_list_cont .date span {
      display: inline-block;
      line-height: 1;
      color: #fff;
      background: #c30d23;
      font-weight: bold;
      padding: 1px 5px; }
  .news_list_cont .ttl {
    -ms-flex: 1;
        flex: 1;
    padding: 23px 50px 23px 22px;
    position: relative;
    color: #036eb8; }
    .news_list_cont .ttl::before {
      font-size: 15px;
      content: '▶';
      color: #c30d23;
      position: absolute;
      top: 25px;
      left: 0; }
  .news_pager ul {
    font-size: 0;
    margin: 150px auto 0;
    text-align: center; }
    .news_pager ul li {
      display: inline-block;
      font-size: 16px;
      padding: 0 2px; }
      .news_pager ul li a, .news_pager ul li span {
        text-align: center;
        display: block;
        width: 58px;
        line-height: 58px;
        height: 58px;
        color: #9d9d9e;
        background: #f5f5f5;
        border-bottom: 3px #aca59b solid; }
      .news_pager ul li span, .news_pager ul li a:hover {
        background: #65655e;
        color: #fff;
        border-bottom: 3px #464546 solid; }
  /*
 PC service
---------------------------------------- */
  body.service.event_design {
    counter-reset: event_design; }
    body.service.event_design .page_link_item li {
      counter-increment: event_design; }
    body.service.event_design .page_link_item_tit::before {
      content: "イベントデザイン" counter(event_design, decimal-leading-zero); }
    body.service.event_design .page_key_content {
      text-align: left; }
  body.service.event_solution {
    counter-reset: event_solution; }
    body.service.event_solution .page_link_item li {
      counter-increment: event_solution; }
      body.service.event_solution .page_link_item li:hover img + img.hover {
        width: 100%;
        transform: translateX(0); }
    body.service.event_solution .page_link_item_tit {
      position: relative;
      overflow: hidden; }
      body.service.event_solution .page_link_item_tit img.hover {
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        min-height: 100%;
        transition: .4s;
        transform: translateX(-100%);
        z-index: 2; }
      body.service.event_solution .page_link_item_tit::before {
        content: "イベントソリューション" counter(event_solution, decimal-leading-zero); }
  body.service.inner .top {
    position: relative; }
    body.service.inner .top_slider li {
      position: relative;
      width: 100%;
      height: calc(100vh - 103px);
      overflow: hidden;
      z-index: 1;
      padding-top: 55px; }
      body.service.inner .top_slider li > img {
        margin-left: auto;
        padding-right: calc((100vw - 1340px) / 2); }
      body.service.inner .top_slider li::before {
        content: "";
        height: 100%;
        width: 60%;
        position: absolute;
        left: 0;
        top: 0;
        z-index: -1; }
      body.service.inner .top_slider li:nth-child(1)::before {
        background-color: #d5c8a0; }
      body.service.inner .top_slider li:nth-child(2)::before {
        background-color: #e2c7c7; }
      body.service.inner .top_slider li:nth-child(3)::before {
        background-color: #90b6d6; }
      body.service.inner .top_slider li:nth-child(4)::before {
        background-color: #fadce9; }
    body.service.inner .top_slider_text {
      position: absolute;
      z-index: 2;
      left: calc((100% - 1000px) / 2);
      top: 50%;
      transform: translateY(-50%);
      color: #fff;
      height: 350px;
      width: auto;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-line-pack: justify;
          align-content: space-between; }
      body.service.inner .top_slider_text_tit {
        font-family: Segoe UI,SegoeUI,"Helvetica Neue",Helvetica,Arial,sans-serif;
        font-size: 37px;
        width: 100%;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
            align-items: center; }
        body.service.inner .top_slider_text_tit span {
          width: 188px;
          position: relative;
          display: -ms-flexbox;
          display: flex;
          margin-left: 10px; }
          body.service.inner .top_slider_text_tit span img {
            margin: auto;
            padding: 0; }
          body.service.inner .top_slider_text_tit span::before {
            content: "";
            position: absolute;
            left: 0;
            top: 18px;
            width: 100%;
            height: 35px;
            border: 1px solid; }
      body.service.inner .top_slider_text_catch {
        font-family: 'M PLUS 1p', sans-serif; }
        body.service.inner .top_slider_text_catch h3 {
          font-size: 32px; }
        body.service.inner .top_slider_text_catch_bg {
          font-size: 26px;
          background-color: #151b29;
          text-align: center; }
    body.service.inner .top::before {
      position: absolute;
      content: "scroll";
      left: 50%;
      font-family: "Marcellus", serif;
      transform: translateX(-50%);
      bottom: 40px;
      color: #fff;
      z-index: 2; }
    body.service.inner .top::after {
      content: "";
      position: absolute;
      width: 2px;
      height: 25px;
      background-color: #fff;
      left: calc((100% - 2px) / 2);
      z-index: 2;
      bottom: 0; }
  body.service.inner section {
    margin-top: 150px; }
  body.service.inner .sec_01 {
    position: relative;
    margin-top: 0;
    padding-top: 150px; }
    body.service.inner .sec_01::before {
      content: "";
      position: absolute;
      width: 2px;
      height: 25px;
      background-color: #000;
      left: calc((100% - 2px) / 2);
      z-index: 2;
      top: 0; }
    body.service.inner .sec_01 img {
      margin: auto; }
    body.service.inner .sec_01_tit {
      margin-bottom: 20px; }
    body.service.inner .sec_01_img {
      margin-bottom: 20px; }
    body.service.inner .sec_01_txt {
      margin-bottom: 50px; }
      body.service.inner .sec_01_txt p:not(:last-of-type) {
        margin-bottom: 30px; }
    body.service.inner .sec_01 .btn_blk {
      margin: auto; }
  body.service.inner .inner_nav {
    padding-top: 150px; }
    body.service.inner .inner_nav ul {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      body.service.inner .inner_nav ul li {
        text-align: center; }
        body.service.inner .inner_nav ul li:nth-child(1) a {
          background-image: url("../img/service/inner/inner_nav_bg_01.png"); }
        body.service.inner .inner_nav ul li:nth-child(2) a {
          background-image: url("../img/service/inner/inner_nav_bg_02.png"); }
        body.service.inner .inner_nav ul li:nth-child(3) a {
          background-image: url("../img/service/inner/inner_nav_bg_03.png"); }
        body.service.inner .inner_nav ul li:nth-child(4) a {
          background-image: url("../img/service/inner/inner_nav_bg_04.png"); }
        body.service.inner .inner_nav ul li:nth-child(5) a {
          background-image: url("../img/service/inner/inner_nav_bg_05.png"); }
        body.service.inner .inner_nav ul li:nth-child(6) a {
          background-image: url("../img/service/inner/inner_nav_bg_07.png"); }
        body.service.inner .inner_nav ul li:nth-child(7) a {
          background-image: url("../img/service/inner/inner_nav_bg_08.png"); }
        body.service.inner .inner_nav ul li:nth-child(8) a {
          background-image: url("../img/service/inner/inner_nav_bg_06.png"); }
        body.service.inner .inner_nav ul li a {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
          -ms-flex-line-pack: end;
              align-content: flex-end;
          width: 316px;
          height: 316px;
          border-radius: 50%;
          padding-bottom: 50px;
          background-size: contain;
          background-repeat: no-repeat; }
        body.service.inner .inner_nav ul li h3 {
          font-size: 24px;
          width: 100%;
          line-height: 1.4;
          text-align: center; }
        body.service.inner .inner_nav ul li p {
          font-size: 20px;
          height: 80px;
          width: 100%;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-align: center;
              align-items: center;
          -ms-flex-pack: center;
              justify-content: center;
          line-height: 1.8; }
        body.service.inner .inner_nav ul li:not(:nth-child(3n)) {
          margin-right: 26px; }
        body.service.inner .inner_nav ul li:nth-child(n+4) {
          margin-top: 26px; }
  body.service.inner .event .column-2 {
    display: -ms-flexbox;
    display: flex;
    background-color: #fff; }
  body.service.inner .event_img {
    width: 50%; }
    body.service.inner .event_img img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover;
      font-family: 'object-fit: cover;'; }
  body.service.inner .event_txt {
    width: 50%;
    padding: 30px 80px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    font-size: 18px; }
    body.service.inner .event_txt h3 {
      margin-bottom: 20px;
      width: 100%; }
    body.service.inner .event_txt > p {
      margin-bottom: 20px;
      width: 100%; }
    body.service.inner .event_txt_box {
      width: 100%;
      background-color: #fff;
      border-radius: 10px;
      padding: 20px; }
      body.service.inner .event_txt_box p {
        margin-bottom: 0; }
  body.service.inner .event_list {
    margin: 80px 0; }
    body.service.inner .event_list ul {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      body.service.inner .event_list ul li {
        width: 240px;
        height: 240px;
        font-size: 18px;
        border: 1px solid #b5b5b6;
        border-radius: 50%;
        position: relative;
        text-align: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-align: end;
            align-items: flex-end;
        padding-bottom: 50px;
        background-size: auto;
        background-position: center 20%;
        background-repeat: no-repeat; }
  body.service.inner .event_slider {
    position: relative;
    margin-bottom: 60px; }
    body.service.inner .event_slider li {
      max-width: 332px;
      margin: 0 30px; }
      body.service.inner .event_slider li a {
        display: block; }
        body.service.inner .event_slider li a img {
          margin-bottom: 20px; }
  body.service.inner .event_btn {
    margin: auto; }
  body.service.inner .event.sec_02 .event_txt {
    background-image: url("../img/service/inner/event_bg_01.jpg"); }
  body.service.inner .event.sec_02 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/y-flag01.png"); }
  body.service.inner .event.sec_02 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/y-flag02.png"); }
  body.service.inner .event.sec_02 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/y-flag03.png"); }
  body.service.inner .event.sec_02 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/y-flag04.png"); }
  body.service.inner .event.sec_03 .event_img {
    -ms-flex-order: 2;
        order: 2; }
  body.service.inner .event.sec_03 .event_txt {
    -ms-flex-order: 1;
        order: 1;
    background-image: url("../img/service/inner/event_bg_02.jpg"); }
  body.service.inner .event.sec_03 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/bp-flag01.png"); }
  body.service.inner .event.sec_03 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/bp-flag02.png"); }
  body.service.inner .event.sec_03 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/bp-flag03.png"); }
  body.service.inner .event.sec_03 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/bp-flag04.png"); }
  body.service.inner .event.sec_04 .event_txt {
    background-image: url("../img/service/inner/event_bg_03.jpg"); }
  body.service.inner .event.sec_04 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/b-flag01.png"); }
  body.service.inner .event.sec_04 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/b-flag02.png"); }
  body.service.inner .event.sec_04 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/b-flag03.png"); }
  body.service.inner .event.sec_04 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/b-flag04.png"); }
  body.service.inner .event.sec_05 .event_img {
    -ms-flex-order: 2;
        order: 2; }
  body.service.inner .event.sec_05 .event_txt {
    background-image: url("../img/service/inner/event_bg_04.jpg");
    -ms-flex-order: 1;
        order: 1; }
  body.service.inner .event.sec_05 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/p-flag01.png"); }
  body.service.inner .event.sec_05 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/p-flag02.png"); }
  body.service.inner .event.sec_05 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/p-flag03.png"); }
  body.service.inner .event.sec_05 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/p-flag04.png"); }
  body.service.inner .event.sec_06 .event_txt {
    background-image: url("../img/service/inner/event_bg_05.png"); }
  body.service.inner .event.sec_06 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/g-flag01.png"); }
  body.service.inner .event.sec_06 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/g-flag02.png"); }
  body.service.inner .event.sec_06 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/g-flag03.png"); }
  body.service.inner .event.sec_06 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/g-flag04.png"); }
  body.service.inner .event.sec_07 .event_img {
    -ms-flex-order: 2;
        order: 2; }
  body.service.inner .event.sec_07 .event_txt {
    background-image: url("../img/service/inner/event_bg_07.jpg");
    -ms-flex-order: 1;
        order: 1; }
  body.service.inner .event.sec_07 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/s-flag01.png"); }
  body.service.inner .event.sec_07 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/s-flag02.png"); }
  body.service.inner .event.sec_07 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/s-flag03.png"); }
  body.service.inner .event.sec_07 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/s-flag04.png"); }
  body.service.inner .event.sec_08 .event_txt {
    background-image: url("../img/service/inner/event_bg_08.jpg"); }
  body.service.inner .event.sec_08 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/v-flag01.png"); }
  body.service.inner .event.sec_08 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/v-flag02.png"); }
  body.service.inner .event.sec_08 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/v-flag03.png"); }
  body.service.inner .event.sec_08 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/v-flag04.png"); }
  body.service.inner .event.sec_09 .event_img {
    -ms-flex-order: 2;
        order: 2; }
  body.service.inner .event.sec_09 .event_txt {
    background-image: url("../img/service/inner/event_bg_06.jpg");
    -ms-flex-order: 1;
        order: 1; }
  body.service.inner .event.sec_09 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/o-flag01.png"); }
  body.service.inner .event.sec_09 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/o-flag02.png"); }
  body.service.inner .event.sec_09 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/o-flag03.png"); }
  body.service.inner .event.sec_09 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/o-flag04.png"); }
  body.service .page_link {
    padding: 130px 0; }
    body.service .page_link.bg-g {
      margin: 0;
      margin-top: 100px; }
      body.service .page_link.bg-g .page_link_item li {
        background-color: #fff; }
    body.service .page_link h3 {
      text-align: center;
      margin-bottom: 40px; }
    body.service .page_link_item {
      -ms-flex-align: initial;
          align-items: initial; }
      body.service .page_link_item li {
        height: initial; }
      body.service .page_link_item_tit {
        position: relative; }
        body.service .page_link_item_tit::before {
          position: absolute;
          color: #fff;
          left: 55px;
          top: 30px; }
        body.service .page_link_item_tit::after {
          content: "";
          position: absolute;
          width: 45px;
          height: 1px;
          background-color: #fff;
          left: 0;
          top: 40px; }
  .solution01_copy {
    width: 741px;
    margin: 55px auto 145px; }
    .solution01_copy .copy_ttl {
      font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
      font-size: 32px;
      margin-bottom: 50px;
      font-weight: 600;
      line-height: 1.6; }
  .solution01_wrap {
    background: #f5f5f5; }
  .solution01_event {
    padding: 150px 0; }
    .solution01_event ul {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      .solution01_event ul li {
        width: 347px;
        min-height: 127px;
        margin-bottom: 24px;
        display: -ms-flexbox;
        display: flex;
        background: #fff;
        border: 1px solid;
        -ms-flex-align: stretch;
            align-items: stretch; }
        .solution01_event ul li span {
          -ms-flex-align: center;
              align-items: center;
          -ms-flex-pack: center;
              justify-content: center;
          text-align: center;
          display: -ms-flexbox;
          display: flex;
          line-height: 1.58;
          font-size: 24px;
          width: 100%; }
  .solution01 .case_link {
    width: 384px;
    position: relative;
    z-index: 1;
    margin: 120px auto 0; }
    .solution01 .case_link a {
      display: block;
      height: 76px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: center;
          justify-content: center;
      text-align: center;
      text-decoration: none;
      color: #333;
      border: 2px solid;
      padding: 0 20px;
      position: relative;
      background: #fff url(../img/ico-btn-b.png) no-repeat 90% center; }
      .solution01 .case_link a::after {
        background: #333 url(../img/ico-btn-w.png) no-repeat 90% center;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        content: '';
        transform-origin: right top;
        transform: scale(0, 1);
        transition: transform .3s;
        z-index: 2; }
      .solution01 .case_link a::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: #dcdddd;
        right: -6px;
        bottom: -6px;
        z-index: -1; }
      .solution01 .case_link a:hover::after {
        transform-origin: left top;
        transform: scale(1, 1); }
      .solution01 .case_link a:hover span {
        color: #fff; }
      .solution01 .case_link a span {
        position: relative;
        z-index: 3; }
  .solution01_menu {
    padding-bottom: 150px; }
  .solution01 .caution {
    margin-top: 20px; }
  .solution01_privacy {
    padding-top: 150px; }
    .solution01_privacy .privacy_mark {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start; }
      .solution01_privacy .privacy_mark .img {
        margin-left: 20px; }
    .solution01_privacy .min_ttl {
      font-size: 22px;
      margin: 60px 0 5px; }
  .solution01_works {
    padding-top: 150px; }
  .solution_tbl {
    width: 100%;
    line-height: 1.4; }
    .solution_tbl th {
      width: 20%;
      background: #333;
      color: #fff;
      text-align: center;
      padding: 10px; }
      .solution_tbl th.price {
        text-align: left; }
    .solution_tbl td {
      text-align: center;
      background: #fff;
      padding: 10px; }
    .solution_tbl th, .solution_tbl td {
      border: 1px #ddd solid; }
    .solution_tbl_min th {
      width: 25%;
      padding: 30px 10px; }
    .solution_tbl_min td {
      padding: 20px 10px; }
  .movie_sec01 {
    padding-bottom: 150px; }
  .movie_sec02 {
    padding-top: 150px;
    padding-bottom: 0; }
    .movie_sec02 .txt + .tbl_wrap {
      margin-top: 20px; }
    .movie_sec02 .tbl_wrap tr:not(:first-of-type) td:nth-child(1),
    .movie_sec02 .tbl_wrap tr:not(:first-of-type) td:nth-child(3) {
      text-align: left; }
  /*
 PC recruit
---------------------------------------- */
  body.recruit .shinsotsu-top {
    margin: auto; }
  body.recruit main {
    overflow: hidden; }
  body.recruit .btn_blk {
    width: 340px;
    margin: auto; }
    body.recruit .btn_blk a {
      text-align: center;
      background: #333;
      margin: 0 auto;
      border: 1px #333 solid; }
      body.recruit .btn_blk a span {
        text-align: center;
        margin: 0 auto; }
      body.recruit .btn_blk a:hover {
        color: #333;
        background: #fff; }
      body.recruit .btn_blk a::before {
        display: none; }
      body.recruit .btn_blk a::after {
        display: none; }
  body.recruit .page_inner {
    margin-top: 150px; }
  body.recruit .recruit_catch {
    margin: 5% 0;
    padding: 5% 0; }
    body.recruit .recruit_catch::before {
      height: 94%;
      top: 3%;
      width: 120%;
      margin: 0 -10%;
      transform: rotate(3deg); }
    body.recruit .recruit_catch::after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 120%;
      margin: 0 -10%;
      transform: rotate(-5deg);
      z-index: -1; }
    body.recruit .recruit_catch .page_key {
      margin: 0 auto; }
      body.recruit .recruit_catch .page_key_content {
        padding-left: 30px;
        padding-right: 30px;
        padding-bottom: 0;
        text-align: left; }
    body.recruit .recruit_catch .btn_blk {
      margin-top: 50px; }
  body.recruit .recruit_ttl {
    font-size: 24px;
    text-align: center;
    background-color: #f5f5f5;
    border: 1px solid #464646;
    margin-bottom: 60px; }
  body.recruit .recruit_cont {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 100px; }
    body.recruit .recruit_cont dt {
      font-weight: bold;
      width: 200px;
      padding: 0 40px 15px 20px;
      margin-top: 15px;
      clear: both;
      border-bottom: 1px #ddd solid;
      letter-spacing: .2em; }
    body.recruit .recruit_cont dd {
      width: calc(100% - 200px);
      border-bottom: 1px #ddd solid;
      padding-bottom: 15px;
      margin-top: 15px; }
  body.recruit .recruit_step {
    margin-bottom: 100px; }
    body.recruit .recruit_step li {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      counter-increment: recruit_step;
      border-bottom: 1px solid #81c7e8;
      padding: 25px 0;
      min-height: 150px;
      -ms-flex-align: end;
          align-items: flex-end; }
    body.recruit .recruit_step_cont {
      -ms-flex: 1;
          flex: 1;
      padding-right: 40px; }
      body.recruit .recruit_step_cont h4 {
        position: relative;
        color: #036eb8;
        font-size: 26px;
        padding-left: 160px;
        line-height: 1;
        margin-bottom: 25px; }
        body.recruit .recruit_step_cont h4::before {
          content: "STEP" counter(recruit_step);
          position: absolute;
          left: 0;
          padding-right: 40px;
          border-right: 1px solid; }
    body.recruit .recruit_step_img {
      width: 264px; }
      body.recruit .recruit_step_img img {
        width: 100%;
        height: auto; }
  body.recruit.shinsotsu .recruit_catch::after {
    background-color: #81c7e8; }
  body.recruit.chuto .recruit_catch::after {
    background-color: #e5d9bd; }
  body.recruit .recruit_bnr {
    width: 402px; }
    body.recruit .recruit_bnr img {
      max-width: 100%; }
    body.recruit .recruit_bnr_wrap {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      margin-bottom: 100px; }
  .shinsotsu_copy {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 26px;
    font-size: 2.6rem;
    text-align: center;
    padding-bottom: 30px; }
  body.interview .page_inner {
    margin-top: 0 !important; }
  body.interview .interview_cont {
    margin-bottom: 80px;
    display: -ms-flexbox;
    display: flex; }
    body.interview .interview_cont:last-of-type {
      margin-bottom: 100px; }
    body.interview .interview_cont_img {
      width: 344px;
      margin-right: 30px; }
      body.interview .interview_cont_img img {
        max-width: 100%; }
    body.interview .interview_cont_inner {
      -ms-flex: 1;
          flex: 1;
      margin-top: -10px; }
    body.interview .interview_cont_ttl {
      font-weight: bold;
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1.6;
      font-feature-settings: 'palt';
      background: linear-gradient(transparent 70%, #fff000 0%);
      display: inline;
      padding: 0 2px; }
    body.interview .interview_cont_txt {
      margin-top: 20px; }
  body.interview .interview_detail_cont {
    width: 836px;
    margin: 0 auto;
    padding: 120px 0 50px; }
    body.interview .interview_detail_cont .interview_cont {
      margin-bottom: 70px; }
  body.interview .interview_detail_inner {
    margin-bottom: 70px; }
  body.interview .interview_detail_ttl {
    display: block;
    background: #151b29;
    color: #fff;
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 30px;
    padding: 0 15px; }
  .modal_cont {
    display: none;
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    background: rgba(255, 255, 255, 0.8);
    z-index: 999999; }
    .modal_cont.is-show {
      display: block;
      opacity: 1;
      animation-duration: .5s;
      animation-name: fade-in;
      -moz-animation-duration: .5s;
      -moz-animation-name: fade-in;
      -webkit-animation-duration: .5s;
      -webkit-animation-name: fade-in; }
  .modal_inner {
    width: 1120px;
    position: relative;
    background: #efe8d9;
    margin: 30px auto; }
  .modal_close {
    position: absolute;
    right: 40px;
    top: 40px;
    cursor: pointer; }
  .modal_btn {
    cursor: pointer; }
  @keyframes fade-in {
    0% {
      display: none;
      opacity: 0; }
    1% {
      display: block;
      opacity: 0; }
    100% {
      display: block;
      opacity: 1; } }
  /*
 PC strength
---------------------------------------- */
  .strength main {
    margin-bottom: 0 !important; }
  .strength_wrap {
    background: #f5f5f5; }
  .strength_copy {
    padding: 150px 0 130px;
    text-align: center; }
    .strength_copy_ttl {
      font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
      font-size: 32px;
      margin-bottom: 70px;
      font-weight: 600; }
    .strength_copy_txt {
      margin-bottom: 20px; }
  .strength_case {
    position: relative;
    width: 710px;
    margin: 0 auto; }
    .strength_case .slick-slider {
      width: 710px;
      margin: 70px auto 130px;
      position: relative; }
      .strength_case .slick-slider .slick-list {
        background: #fff; }
      .strength_case .slick-slider .slick-slide {
        background: #fff;
        cursor: grab; }
        .strength_case .slick-slider .slick-slide .txt {
          padding: 20px; }
        .strength_case .slick-slider .slick-slide .ttl {
          font-size: 22px;
          font-weight: 500; }
        .strength_case .slick-slider .slick-slide .sub-ttl {
          padding: 0 0 20px; }
    .strength_case .slide-dots {
      display: -ms-flexbox;
      display: flex;
      text-align: center;
      -ms-flex-pack: center;
          justify-content: center;
      margin: 0 auto; }
      .strength_case .slide-dots button {
        font-size: 20px;
        background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        color: #9fa0a0;
        padding: 15px 10px;
        font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif; }
      .strength_case .slide-dots .slick-active button {
        color: #333; }
    .strength_case .slick-arrow {
      width: 24px;
      height: 24px;
      cursor: pointer;
      position: absolute; }
      .strength_case .slick-arrow.prev {
        background: url(../img/arw_prev.svg) no-repeat center;
        bottom: 15px;
        left: 0; }
      .strength_case .slick-arrow.next {
        background: url(../img/arw_next.svg) no-repeat center;
        bottom: 15px;
        right: 0; }
    .strength_case .link_list {
      position: absolute;
      bottom: 15px;
      right: 0; }
      .strength_case .link_list a {
        color: #194279; }
  .strength_point {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    padding-bottom: 150px; }
    .strength_point .point_cont {
      width: 320px;
      background: #eae9e8;
      border: 1px #333 solid; }
      .strength_point .point_cont .num {
        font-size: 14px;
        padding: 30px 0 0; }
        .strength_point .point_cont .num::before {
          display: inline-block;
          vertical-align: middle;
          content: '';
          width: 45px;
          height: 1px;
          background: #333;
          margin-right: 5px; }
      .strength_point .point_cont .ttl {
        text-align: center; }
        .strength_point .point_cont .ttl span {
          display: inline-block;
          margin: 30px auto;
          line-height: 1.1;
          font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
          text-align: center;
          font-size: 40px;
          font-weight: 600;
          border-bottom: 5px #333 solid; }
      .strength_point .point_cont .txt {
        width: 250px;
        margin: 0 auto;
        padding-bottom: 55px; }
  .strength .event_solution ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    background: #000; }
    .strength .event_solution ul li {
      width: calc(100% / 3);
      position: relative;
      counter-increment: event-count;
      overflow: hidden;
      background: #000; }
      .strength .event_solution ul li img {
        width: 100%; }
      .strength .event_solution ul li h3 {
        line-height: 1.35;
        text-align: center;
        position: absolute;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-align: center;
            align-items: center;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        color: #fff;
        font-size: 28px; }
      .strength .event_solution ul li::before {
        font-size: 14px;
        content: "イベントソリューション" counter(event-count, decimal-leading-zero);
        position: absolute;
        color: #fff;
        left: 55px;
        top: 28px; }
      .strength .event_solution ul li::after {
        content: "";
        position: absolute;
        width: 45px;
        height: 1px;
        background-color: #fff;
        left: 0;
        top: 40px; }
      .strength .event_solution ul li:hover {
        opacity: 1; }
      .strength .event_solution ul li:hover .hover {
        width: 100%;
        opacity: 1;
        transform: translateX(0); }
      .strength .event_solution ul li .hover {
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        min-height: 100%;
        transition: .4s;
        transform: translateX(-100%);
        z-index: 2; }
  /*
 PC case
---------------------------------------- */
  .case_first {
    width: 1120px;
    margin: 0 auto;
    background: url(../img/case/case_bg.jpg) no-repeat center;
    background-size: cover; }
    .case_first .page_top_tit {
      margin: 80px auto 50px !important;
      color: #fff;
      border-bottom: 6px solid #fff; }
    .case_first .case_link_ttl {
      color: #fff;
      font-size: 26px;
      text-align: center;
      font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
      background: #151b29;
      margin: 20px 60px 0; }
    .case_first::before {
      display: none; }
    .case_first.page_top .sub_nav ul {
      padding: 30px 20px 0 !important; }
      .case_first.page_top .sub_nav ul li {
        margin-bottom: 30px !important; }
  .case_cont_ttl {
    text-align: center;
    background: url(../img/case/case_ttl_bg.svg) no-repeat center;
    background-size: contain;
    padding: 58px 0;
    margin: 30px auto 45px; }
    .case_cont_ttl .min {
      font-size: 14px; }
      .case_cont_ttl .min::after {
        content: '';
        width: 20px;
        height: 1px;
        background: #333;
        display: block;
        margin: 20px auto 0; }
    .case_cont_ttl .category {
      font-size: 38px; }
  .case_main {
    margin-bottom: 150px; }
    .case_main .sub-ttl {
      font-size: 22px;
      margin-bottom: 15px; }
    .case_main_inner {
      margin-top: 50px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      .case_main_inner .img {
        width: 563px;
        margin-right: 30px; }
      .case_main_inner .detail {
        -ms-flex: 1;
            flex: 1; }
        .case_main_inner .detail dt {
          float: left;
          clear: both; }
        .case_main_inner .detail dd {
          padding-left: 84px; }
    .case_main_sub {
      margin-top: 60px;
      padding: 60px;
      background: #f5f5f5; }
      .case_main_sub .arw_point {
        margin: 30px auto 50px;
        text-align: center; }
        .case_main_sub .arw_point img {
          text-align: center;
          margin: 0 auto; }
      .case_main_sub .point_list li {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between; }
        .case_main_sub .point_list li .point_list_txt {
          -ms-flex: 1;
              flex: 1; }
        .case_main_sub .point_list li .point_list_img {
          width: 406px;
          margin-left: 20px; }
      .case_main_sub .voice {
        margin-top: 60px; }
  /*
 PC eventlab
---------------------------------------- */
  body.eventlab .hero {
    width: 100vw;
    height: 100vh;
    background-color: #000;
    background-image: url("../img/eventlab/top_bg.png");
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center; }
  body.eventlab .eventlab_ttl {
    font-size: 28px;
    font-size: 2.8rem;
    text-align: center;
    margin-bottom: 50px; }
    body.eventlab .eventlab_ttl_en {
      display: block;
      font-family: "Capriola", sans-serif;
      font-size: 50px;
      font-size: 5rem;
      position: relative;
      padding-bottom: 10px;
      margin-bottom: 20px; }
      body.eventlab .eventlab_ttl_en::before {
        content: "";
        position: absolute;
        width: 32px;
        height: 1px;
        background-color: #333;
        left: calc((100% - 32px) / 2);
        bottom: 0; }
  body.eventlab .eventlab_link {
    margin: 50px auto 0; }
    body.eventlab .eventlab_link a {
      color: #fff;
      display: block;
      position: relative; }
    body.eventlab .eventlab_link_key_txt {
      position: absolute;
      left: 0;
      top: 0;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-line-pack: center;
          align-content: center;
      width: 100%;
      height: 100%;
      z-index: 2;
      text-align: center;
      padding-top: 100px; }
    body.eventlab .eventlab_link_key_en {
      font-family: "Capriola", sans-serif;
      line-height: 1.2;
      font-size: 90px;
      font-size: 9rem;
      width: 100%;
      margin-bottom: 30px; }
    body.eventlab .eventlab_link_key_jp {
      font-size: 46px;
      font-size: 4.6rem;
      width: 100%; }
    body.eventlab .eventlab_link_key:not(:last-of-type) {
      margin-bottom: 30px; }
  body.eventlab .footer_sub {
    background-color: transparent;
    text-align: center;
    margin-top: 100px; }
  /*
 PC event undoukai
---------------------------------------- */
  .undoukai .c-event .l-block_event_bg {
    background-color: #eae2cc; }
  .undoukai .c-event_point_top::after {
    color: #d5c8a0; }
  .undoukai .c-event_point_price::after {
    color: #d5c8a0; }
  .undoukai .c-event_point_wrap {
    background-color: #d5c8a0; }
  .undoukai .c-event_recommended::after {
    background-color: #eae2cc; }
  .undoukai .c-event_price_tri {
    color: #d5c8a0; }
  .undoukai .c-event_price_box {
    background-color: #d5c8a0; }
  .undoukai .c-event_bottom {
    background-image: url(../img/service/inner/undoukai/bnr_btm.png); }
  /*
 PC event sweetsparty
---------------------------------------- */
  .sweetsparty .c-event .l-block_event_bg {
    background-color: #ead7d7; }
  .sweetsparty .c-event_point_top::after {
    color: #e2bfbf; }
  .sweetsparty .c-event_point_price::after {
    color: #e2bfbf; }
  .sweetsparty .c-event_point_wrap {
    background-color: #e2bfbf; }
  .sweetsparty .c-event_recommended::after {
    background-color: #ead7d7; }
  .sweetsparty .c-event_price_tri {
    color: #e2bfbf; }
  .sweetsparty .c-event_price_box {
    background-color: #e2bfbf; }
  .sweetsparty .c-event_bottom {
    background-image: url(../img/service/inner/sweetsparty/bnr_btm.png); }
  /*
 PC event kickoff
---------------------------------------- */
  .kickoff .c-event .l-block_event_bg {
    background-color: #b9d9ea; }
  .kickoff .c-event_point_top::after {
    color: #90b6d6; }
  .kickoff .c-event_point_price::after {
    color: #90b6d6; }
  .kickoff .c-event_point_wrap {
    background-color: #90b6d6; }
  .kickoff .c-event_recommended::after {
    background-color: #b9d9ea; }
  .kickoff .c-event_price_tri {
    color: #90b6d6; }
  .kickoff .c-event_price_box {
    background-color: #90b6d6; }
  .kickoff .c-event_price_bottom {
    background-color: #90b6d6; }
    .kickoff .c-event_price_bottom::before {
      color: #90b6d6; }
  .kickoff .c-event_bottom {
    background-image: url(../img/service/inner/kickoff/bnr_btm.png); }
  /*
 PC event indoorhanami
---------------------------------------- */
  .indoorhanami .c-event .l-block_event_bg {
    background-color: #fee5f2; }
  .indoorhanami .c-event_point_top::after {
    color: #f4b4c9; }
  .indoorhanami .c-event_point_price::after {
    color: #f4b4c9; }
  .indoorhanami .c-event_point_wrap {
    background-color: #f4b4c9; }
  .indoorhanami .c-event_recommended::after {
    background-color: #fee5f2; }
  .indoorhanami .c-event_customers li:nth-child(1), .indoorhanami .c-event_customers li:nth-child(2) {
    margin-bottom: 0; }
  .indoorhanami .c-event_price_tri {
    color: #f4b4c9; }
  .indoorhanami .c-event_price_box {
    background-color: #f4b4c9; }
  .indoorhanami .c-event_bottom {
    background-image: url(../img/service/inner/indoorhanami/bnr_btm.png); }
  /*
 PC event cardgame
---------------------------------------- */
  .cardgame .c-event .l-block_event_bg {
    background-color: #b3dad5; }
  .cardgame .c-event_point_top::after {
    color: #68c6bf; }
  .cardgame .c-event_point_price::after {
    color: #68c6bf; }
  .cardgame .c-event_point_wrap {
    background-color: #68c6bf; }
  .cardgame .c-event_recommended::after {
    background-color: #b3dad5; }
  .cardgame .c-event_price_tri {
    color: #68c6bf; }
  .cardgame .c-event_price_box {
    background-color: #68c6bf; }
  .cardgame .c-event_bottom {
    background-image: url(../img/service/inner/cardgame/bnr_btm.png); }
  /*
 PC event survivalgame
---------------------------------------- */
  .survivalgame .c-event .l-block_event_bg {
    background-color: #b3c6c3; }
  .survivalgame .c-event_point_top::after {
    color: #67827f; }
  .survivalgame .c-event_point_price::after {
    color: #67827f; }
  .survivalgame .c-event_point_wrap {
    background-color: #67827f; }
  .survivalgame .c-event_recommended::after {
    background-color: #b3c6c3; }
  .survivalgame .c-event_customers li:nth-child(1), .survivalgame .c-event_customers li:nth-child(2) {
    margin-bottom: 0; }
  .survivalgame .c-event_price_tri {
    color: #67827f; }
  .survivalgame .c-event_price_box {
    background-color: #67827f; }
  .survivalgame .c-event_bottom {
    background-image: url(../img/service/inner/survivalgame/bnr_btm.png); }
  /*
 PC event volunteer
---------------------------------------- */
  .volunteer .c-event .l-block_event_bg {
    background-color: #88c9a1; }
  .volunteer .c-event_point_top::after {
    color: #00913a; }
  .volunteer .c-event_point_price::after {
    color: #00913a; }
  .volunteer .c-event_point_wrap {
    background-color: #00913a; }
  .volunteer .c-event_figure_wrap {
    background-color: #00913a; }
  .volunteer .c-event_recommended::after {
    background-color: #88c9a1; }
  .volunteer .c-event_customers li:nth-child(1), .volunteer .c-event_customers li:nth-child(2) {
    margin-bottom: 0; }
  .volunteer .c-event_price_tri {
    color: #00913a; }
  .volunteer .c-event_price_box {
    background-color: #00913a; }
  .volunteer .c-event_bottom {
    background-image: url(../img/service/inner/volunteer/bnr_btm.png); } }

@media (max-width: 767px) {
  /*
 SP common
---------------------------------------- */
  .sp_only {
    display: block; }
  .pc_only {
    display: none; }
  .wrap01,
  .wrap02,
  .wrap03,
  .wrap04 {
    width: calc(100% - 40px);
    margin: 0 20px; }
  h2.h2_tit01 {
    text-align: center;
    font-size: 15px; }
    h2.h2_tit01 span {
      font-family: "Marcellus", serif;
      font-size: 24px;
      line-height: 1;
      display: block;
      position: relative;
      padding-bottom: 10px;
      margin-bottom: 10px; }
      h2.h2_tit01 span::before {
        content: "";
        position: absolute;
        width: 20px;
        height: 1px;
        background-color: #333;
        bottom: 0;
        left: calc((100% - 20px) / 2); }
  h2.h2_tit02 {
    font-size: 20px; }
  h3.h3_tit01 {
    font-size: 23px; }
  h3.h3_tit02 {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 20px;
    font-weight: 600; }
  h4.h4_tit01 {
    font-size: 18px; }
  .bg-g {
    background-color: #f5f5f5; }
  .btn_blk {
    width: 250px;
    position: relative;
    z-index: 1; }
    .btn_blk a {
      display: block;
      height: 50px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      text-decoration: none;
      color: #fff;
      background-color: #333;
      padding: 0 20px;
      position: relative; }
      .btn_blk a::after {
        content: "";
        position: absolute;
        width: 25px;
        height: 25px;
        background-image: url("../img/ico-btn-w.png");
        right: 25px;
        top: calc((100% - 25px) / 2); }
      .btn_blk a::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: #dcdddd;
        right: -5px;
        bottom: -5px;
        z-index: -1; }
  .btn_w {
    border: 1px solid;
    background-color: #fff;
    width: 200px; }
    .btn_w a {
      display: block;
      height: 40px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center;
      text-decoration: none; }
  .point_list li {
    position: relative;
    padding-top: 70px;
    counter-increment: point_list; }
    .point_list li::before, .point_list li::after {
      position: absolute;
      width: 60px;
      color: #fff;
      left: 0;
      text-align: center;
      left: 50%;
      margin-left: -30px; }
    .point_list li::before {
      content: "Point";
      font-size: 16px;
      height: 60px;
      border-radius: 50%;
      background-color: #c30d23;
      top: 0;
      z-index: 1;
      padding-top: 5px;
      box-sizing: border-box; }
    .point_list li::after {
      content: counter(point_list);
      z-index: 2;
      top: 30px;
      font-size: 22px;
      line-height: 1; }
    .point_list li:not(:last-child) {
      margin-bottom: 40px; }
  .point_list_tit {
    font-size: 17px;
    margin-bottom: 10px; }
  .c-event {
    margin-bottom: -60px; }
    .c-event_wrap {
      width: calc(100% - 40px);
      margin: 0 20px; }
    .c-event img {
      width: 100%;
      height: auto; }
    .c-event .event_btn {
      margin: 0 auto; }
    .c-event .l-block {
      padding-bottom: 60px; }
      .c-event .l-block_event {
        width: calc(100% - 40px);
        margin: 0 20px; }
        .c-event .l-block_event_bg {
          padding-top: 60px;
          padding-right: 20px;
          padding-left: 20px; }
        .c-event .l-block_event_wh {
          padding-top: 60px;
          padding-right: 20px;
          padding-left: 20px;
          background-color: #fff; }
    .c-event_top {
      width: calc(100% - 40px);
      margin: 0 20px;
      padding-top: 30px; }
      .c-event_top_img {
        margin: 0 auto 40px; }
      .c-event_top_head {
        text-align: center; }
      .c-event_top_ttl {
        display: inline-block;
        line-height: 1.4;
        padding-bottom: 10px;
        margin-bottom: 40px;
        border-bottom: 3px solid #333;
        font-size: 25px;
        font-size: 2.5rem;
        font-weight: 700; }
    .c-event_ttl {
      margin-bottom: 20px;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: 700;
      text-align: center; }
    .c-event_point {
      position: relative;
      z-index: 0;
      margin-bottom: 40px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      .c-event_point::after {
        position: absolute;
        z-index: 0;
        top: 45%;
        left: 50%;
        line-height: 1;
        font-weight: 800;
        transform: translate(-50%, -50%); }
      .c-event_point_top::after {
        font-size: 80px;
        font-size: 8rem;
        content: "\FF0B"; }
      .c-event_point_price::after {
        font-size: 70px;
        font-size: 7rem;
        content: "\00D7"; }
      .c-event_point_wrap {
        position: relative;
        z-index: 0;
        width: 110px;
        height: 110px;
        line-height: 1.6;
        border-radius: 50%;
        color: #fff;
        font-weight: 700;
        font-size: 15px;
        font-size: 1.5rem;
        text-align: center; }
      .c-event_point_row {
        position: absolute;
        z-index: 0;
        top: 50%;
        left: 50%;
        width: 100%;
        height: auto;
        transform: translate(-50%, -50%); }
      .c-event_point_img {
        width: 90%;
        margin: 0 auto 40px; }
    .c-event_figure {
      position: relative;
      z-index: 0;
      margin-bottom: 40px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center; }
      .c-event_figure_wrap {
        position: relative;
        z-index: 0;
        width: 110px;
        height: 110px;
        line-height: 1.4;
        border-radius: 50%;
        color: #fff;
        font-weight: 700;
        font-size: 15px;
        font-size: 1.5rem;
        text-align: center; } }
      @media screen and (max-width: 767px) and (max-width: 320px) {
        .c-event_figure_wrap {
          width: 100px;
          height: 100px;
          font-size: 14px;
          font-size: 1.4rem; } }

@media (max-width: 767px) {
      .c-event_figure_row {
        position: absolute;
        z-index: 0;
        top: 48%;
        left: 50%;
        width: 100%;
        height: auto;
        transform: translate(-50%, -50%); }
      .c-event_figure_arw {
        margin-top: 5px; }
        .c-event_figure_arw--txt {
          width: 80px;
          line-height: 1;
          background-repeat: no-repeat;
          background-size: 65% auto;
          font-weight: 700;
          font-size: 15px;
          font-size: 1.5rem;
          text-align: center; } }
        @media screen and (max-width: 767px) and (max-width: 320px) {
          .c-event_figure_arw--txt {
            width: 65px;
            font-size: 14px;
            font-size: 1.4rem; } }

@media (max-width: 767px) {
          .c-event_figure_arw--txt--top {
            margin-bottom: 10px;
            padding-bottom: 28px;
            background-image: url(../img/service/inner/volunteer/img_arw_right.png);
            background-position: center 22px; }
          .c-event_figure_arw--txt--btm {
            padding-top: 28px;
            background-image: url(../img/service/inner/volunteer/img_arw_left.png);
            background-position: center 2px; }
      .c-event_figure_logo {
        width: 80%;
        margin: 0 auto 40px; }
    .c-event_txt {
      margin-bottom: 40px;
      font-size: 15px;
      font-size: 1.5rem;
      text-align: center; }
    .c-event_head {
      position: relative;
      z-index: 0;
      margin-bottom: 30px;
      text-align: center; }
      .c-event_head::after {
        position: absolute;
        z-index: 0;
        top: 50%;
        left: 50%;
        width: 20px;
        height: 1px;
        background-color: #333;
        transform: translate(-50%, -50%);
        content: ""; }
      .c-event_head_en {
        line-height: 1;
        padding-bottom: 20px;
        font-family: "Marcellus", serif;
        font-size: 23px;
        font-size: 2.3rem; }
      .c-event_head_ja {
        font-size: 17px;
        font-size: 1.7rem; }
    .c-event_recommended {
      position: relative;
      z-index: 0; }
      .c-event_recommended::after {
        position: absolute;
        z-index: -1;
        top: 20px;
        right: 0;
        width: 85%;
        height: 103%;
        content: ""; }
      .c-event_recommended_list {
        width: 88%;
        margin-left: 20px; }
        .c-event_recommended_list li {
          margin-bottom: 60px; }
          .c-event_recommended_list li .c-event_recommended_ttl {
            margin-top: 30px; }
      .c-event_recommended_ttl p {
        margin-bottom: 5px; }
        .c-event_recommended_ttl p span {
          display: inline-block;
          line-height: 1;
          padding: 5px 10px;
          background-color: #fff;
          font-size: 18px;
          font-size: 1.8rem; } }
        @media screen and (max-width: 767px) and (max-width: 320px) {
          .c-event_recommended_ttl p span {
            font-size: 16px;
            font-size: 1.6rem; } }

@media (max-width: 767px) {
    .c-event_box {
      margin: 0 auto 40px;
      border: 1px solid #151b29; }
      .c-event_box_ttl {
        padding: 15px 0;
        background-color: #151b29;
        color: #fff;
        font-size: 18px;
        font-size: 1.8rem;
        text-align: center; }
      .c-event_box_detail {
        padding: 5px 20px 10px; }
      .c-event_box_row {
        line-height: 1.8;
        padding: 10px 0;
        border-bottom: 1px dashed #dcdddd; }
        .c-event_box_row:last-child {
          border-bottom: 0; }
      .c-event_box_list li {
        position: relative;
        z-index: 0;
        padding-left: 20px; }
        .c-event_box_list li::after {
          position: absolute;
          z-index: 0;
          top: 0;
          left: 0;
          width: 20px;
          height: 20px; }
        .c-event_box_list li:nth-child(1)::after {
          content: "1."; }
        .c-event_box_list li:nth-child(2)::after {
          content: "2."; }
    .c-event_bg {
      position: relative;
      z-index: 0;
      width: 100%;
      height: 284px;
      background-image: url(../img/service/inner/bg_event.png);
      background-repeat: no-repeat;
      background-position: center bottom;
      background-size: cover; }
      .c-event_bg_wrap {
        position: absolute;
        z-index: 0;
        top: 50%;
        left: 50%;
        width: 100%;
        transform: translate(-50%, -50%); }
      .c-event_bg_ttl {
        margin-bottom: 10px;
        color: #fff;
        font-weight: 700;
        font-size: 20px;
        font-size: 2rem;
        text-align: center; } }
      @media screen and (max-width: 767px) and (max-width: 320px) {
        .c-event_bg_ttl {
          font-size: 18px;
          font-size: 1.8rem; } }

@media (max-width: 767px) {
      .c-event_bg_logo {
        width: 40%;
        margin: 0 auto; }
    .c-event_secret li {
      margin-bottom: 30px;
      padding: 20px 0 25px;
      border: 1px solid #151b29;
      background-color: #fff;
      text-align: center; }
      .c-event_secret li:last-child {
        margin-bottom: 0; }
    .c-event_secret_img {
      width: 88%;
      margin: 0 auto 20px; }
    .c-event_secret_ttl {
      line-height: 1.8;
      font-size: 15px;
      font-size: 1.5rem; }
    .c-event_entry {
      width: 75%;
      margin: 0 auto; }
      .c-event_entry li {
        padding: 15px 20px 10px;
        background-color: #151b29;
        text-align: center; }
        .c-event_entry li:first-child {
          margin-bottom: 30px; }
        .c-event_entry li:last-child {
          transition: .4s; }
          .c-event_entry li:last-child:hover {
            opacity: .7; }
        .c-event_entry li a {
          display: block;
          color: #fff; }
      .c-event_entry_img {
        width: 50px;
        margin: 0 auto 20px; } }
      @media screen and (max-width: 767px) and (max-width: 320px) {
        .c-event_entry_img {
          width: 40px; } }

@media (max-width: 767px) {
      .c-event_entry_number {
        line-height: 1;
        font-weight: 700;
        font-size: 28px;
        font-size: 2.8rem; } }
      @media screen and (max-width: 767px) and (max-width: 320px) {
        .c-event_entry_number {
          font-size: 22px;
          font-size: 2.2rem; } }

@media (max-width: 767px) {
      .c-event_entry_hour {
        font-size: 12px;
        font-size: 1.2rem; }
      .c-event_entry_contact {
        margin-bottom: 10px;
        font-size: 18px;
        font-size: 1.8rem; } }
      @media screen and (max-width: 767px) and (max-width: 320px) {
        .c-event_entry_contact {
          font-size: 15px;
          font-size: 1.5rem; } }

@media (max-width: 767px) {
    .c-event_customers {
      margin: 0 auto 60px; }
      .c-event_customers li {
        position: relative;
        z-index: 0;
        margin-bottom: 40px;
        padding: 90px 30px;
        background-color: #151b29;
        font-size: 18px;
        font-size: 1.8rem;
        color: #fff; }
        .c-event_customers li:last-child {
          margin-bottom: 0; }
        .c-event_customers li::before, .c-event_customers li::after {
          position: absolute;
          z-index: 0;
          line-height: 1;
          font-weight: 700;
          font-size: 58px;
          font-size: 5.8rem;
          color: #fff; }
        .c-event_customers li::before {
          top: 20px;
          left: 20px;
          content: "\201C"; }
        .c-event_customers li::after {
          right: 20px;
          bottom: 0;
          content: "\201D"; }
    .c-event_bnr01 {
      width: 60%;
      margin: 0 auto 20px; }
    .c-event_bnr02 {
      width: 65%;
      margin: 0 auto 20px; }
    .c-event_bnr03 {
      width: 55%;
      margin: 0 auto; }
    .c-event_other {
      width: 70%;
      margin: 0 auto; }
      .c-event_other li {
        margin-bottom: 30px;
        padding: 50px 0 40px;
        background-color: #151b29;
        color: #fff;
        text-align: center; }
      .c-event_other_img {
        width: 50%;
        margin: 0 auto 20px; }
      .c-event_other_ttl {
        line-height: 1.6;
        font-size: 15px;
        font-size: 1.5rem; }
    .c-event_price {
      width: 80%;
      margin: 0 auto; }
      .c-event_price_list {
        margin-bottom: 30px; }
        .c-event_price_list:last-child {
          margin-bottom: 0; }
      .c-event_price_tri {
        position: relative;
        z-index: 0;
        margin-bottom: 50px;
        border-right: 1px solid #151b29;
        border-left: 1px solid #151b29;
        background-color: #fff;
        font-size: 22px;
        font-size: 2.2rem;
        text-align: center; }
        .c-event_price_tri::before, .c-event_price_tri::after {
          position: absolute;
          width: 0;
          height: 0;
          border-left: 135px solid transparent;
          border-right: 135px solid transparent;
          content: ""; } }
        @media screen and (max-width: 767px) and (max-width: 320px) {
          .c-event_price_tri::before, .c-event_price_tri::after {
            border-left: 112px solid transparent;
            border-right: 112px solid transparent; } }

@media (max-width: 767px) {
        .c-event_price_tri::before {
          z-index: 0;
          left: -2px;
          bottom: -39px;
          border-top: 40px solid #fff; } }
        @media screen and (max-width: 767px) and (max-width: 320px) {
          .c-event_price_tri::before {
            left: -1px; } }

@media (max-width: 767px) {
        .c-event_price_tri::after {
          z-index: -1;
          left: -2px;
          bottom: -40px;
          border-top: 40px solid #151b29; } }
        @media screen and (max-width: 767px) and (max-width: 320px) {
          .c-event_price_tri::after {
            left: -1px; } }

@media (max-width: 767px) {
      .c-event_price_ttl {
        line-height: 1.6;
        padding: 15px 0;
        background-color: #151b29;
        color: #fff;
        font-size: 19px;
        font-size: 1.9rem; }
      .c-event_price_txt {
        line-height: 1;
        margin-bottom: 20px;
        padding-top: 20px; }
      .c-event_price_yen {
        padding-bottom: 10px;
        line-height: 1;
        font-weight: 700;
        font-size: 32px;
        font-size: 3.2rem; } }
      @media screen and (max-width: 767px) and (max-width: 320px) {
        .c-event_price_yen {
          font-size: 30px;
          font-size: 3rem; } }

@media (max-width: 767px) {
        .c-event_price_yen span {
          padding-right: 5px; }
      .c-event_price_box {
        margin-bottom: 10px;
        padding: 5px 20px; }
        .c-event_price_box:last-child {
          margin-bottom: 0; }
        .c-event_price_box li {
          font-size: 15px;
          font-size: 1.5rem;
          color: #fff; }
      .c-event_price_bottom {
        position: relative;
        z-index: 0;
        margin-top: 110px;
        padding: 10px 0;
        text-align: center; }
        .c-event_price_bottom::before {
          position: absolute;
          z-index: 0;
          top: -100px;
          left: 50%;
          line-height: 1;
          font-weight: 800;
          font-size: 80px;
          font-size: 8rem;
          transform: translateX(-50%);
          content: "\FF0B"; }
        .c-event_price_bottom--txt {
          color: #fff;
          font-size: 19px;
          font-size: 1.9rem; }
    .c-event_bottom {
      border: 4px solid #fff;
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover;
      box-shadow: 2px 2px 7px #464646;
      transition: .4s; }
      .c-event_bottom:hover {
        box-shadow: none; }
      .c-event_bottom a {
        display: block;
        position: relative;
        z-index: 0;
        height: 138px;
        color: #fff;
        font-weight: 700;
        font-size: 18px;
        font-size: 1.8rem;
        text-align: center; }
      .c-event_bottom_wrap {
        position: absolute;
        z-index: 0;
        top: 50%;
        left: 50%;
        width: 100%;
        transform: translate(-50%, -50%); }
      .c-event_bottom_ttl {
        margin-bottom: 10px; }
      .c-event_bottom_logo {
        width: 40%;
        margin: 0 auto; }
  header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999; }
    header .wrap02 {
      width: 100%;
      margin: 0; }
    header .header {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: justify;
          justify-content: space-between;
      height: 60px;
      position: relative;
      z-index: 10;
      padding: 0 20px;
      transition: all 0.6s; }
      header .header_logo a {
        display: block;
        position: relative; }
        header .header_logo a img {
          width: auto;
          height: 21px;
          animation-fill-mode: none; }
          header .header_logo a img.logo {
            opacity: 1; }
          header .header_logo a img.logo-nav {
            display: none;
            max-width: 200px;
            height: 21px; }
      header .header_nav {
        transition: all 0.6s;
        opacity: 0;
        position: relative;
        z-index: 5;
        display: none; }
        header .header_nav ul {
          border-top: 1px solid #fff; }
          header .header_nav ul li {
            border-bottom: 1px solid #fff;
            background-color: #151b29; }
            header .header_nav ul li a,
            header .header_nav ul li p {
              padding: 23px 20px;
              font-size: 15px;
              line-height: 1;
              display: block;
              color: #fff;
              text-decoration: none; }
        header .header_nav.active {
          opacity: 1;
          height: calc(100vh - 60px);
          overflow-y: auto;
          display: block;
          animation: show .4s linear 0s; }
      header .header.active {
        background-color: #151b29; }
        header .header.active .header_logo img.logo {
          display: none;
          animation: clone .4s linear 0s; }
        header .header.active .header_logo img.logo-nav {
          display: block;
          animation: show .4s linear 0s; }
    header .menu-trigger,
    header .menu-trigger span {
      display: inline-block;
      transition: all .4s;
      box-sizing: border-box; }
    header .menu-trigger {
      position: relative;
      width: 28px;
      height: 18px;
      margin-top: 6px; }
    header .menu-trigger span {
      position: absolute;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #fff;
      border-radius: 4px; }
      header .menu-trigger span:nth-of-type(1) {
        top: 0; }
      header .menu-trigger span:nth-of-type(2) {
        top: 8px; }
      header .menu-trigger span:nth-of-type(3) {
        bottom: 0; }
    header .menu-trigger.active span:nth-of-type(1) {
      transform: translateY(8px) rotate(-45deg); }
    header .menu-trigger.active span:nth-of-type(2) {
      opacity: 0; }
    header .menu-trigger.active span:nth-of-type(3) {
      transform: translateY(-8px) rotate(45deg); }
    header .toggle {
      position: relative; }
      header .toggle_btn {
        position: absolute;
        right: 5px;
        top: 8px;
        display: inline-block !important;
        padding: 0 !important;
        transition: all .4s;
        box-sizing: border-box;
        width: 47px;
        height: 47px; }
        header .toggle_btn span {
          display: inline-block;
          transition: all .4s;
          box-sizing: border-box;
          width: 25px;
          height: 2px;
          background-color: #fff;
          position: absolute;
          left: calc((100% - 25px) / 2);
          top: calc((100% - 3px) / 2); }
          header .toggle_btn span:nth-of-type(1) {
            transform: rotate(0deg);
            opacity: 1; }
          header .toggle_btn span:nth-of-type(2) {
            transform: rotate(90deg); }
        header .toggle_btn.active span:nth-of-type(1) {
          opacity: 0; }
        header .toggle_btn.active span:nth-of-type(2) {
          transform: rotate(180deg); }
      header .toggle_menu {
        position: relative;
        display: none; }
        header .toggle_menu li {
          background-color: #28303d !important; }
          header .toggle_menu li:last-child {
            border-bottom: none; }
    header.active {
      background-color: #151b29; }
  .footer_sub {
    background-color: #f5f5f5;
    padding: 50px 0;
    font-size: 10px; }
    .footer_sub .wrap02 {
      width: 100%;
      margin: 0; }
    .footer_sub .h2_tit01 {
      font-size: 13px; }
      .footer_sub .h2_tit01 span {
        padding-bottom: 10px;
        margin-bottom: 10px; }
    .footer_sub_tel {
      text-align: center;
      border-right: 1px solid #727171; }
      .footer_sub_tel img {
        width: 29px;
        margin: auto;
        margin-bottom: 10px; }
      .footer_sub_tel .tel {
        font-size: 21px;
        line-height: 1;
        font-weight: 700; }
    .footer_sub .column-2 {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-align: center;
          align-items: center; }
      .footer_sub .column-2 > div {
        padding: 10px 0;
        width: 50%; }
    .footer_sub .slanting {
      width: 125px;
      height: 550px;
      background-color: #000;
      transform: skewX(-12deg);
      margin: auto; }
    .footer_sub_txt {
      margin: 50px 0; }
    .footer_sub_logo img {
      margin: auto; }
  #page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999; }
    #page-top a {
      background: #194279;
      text-decoration: none;
      width: 34px;
      height: 34px;
      padding: 12px 10px;
      display: block; }
      #page-top a:hover {
        opacity: .7; }
  footer {
    position: relative;
    z-index: 4;
    background-color: #151b29;
    color: #fff;
    padding: 50px 0 10px;
    font-size: 14px; }
    footer .column-2 {
      display: -ms-flexbox;
      display: flex;
      padding-bottom: 30px;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
    footer .f_content {
      width: 100%;
      -ms-flex-order: 2;
          order: 2; }
      footer .f_content > div:not(:last-child) {
        margin-bottom: 50px; }
      footer .f_content_bnr {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between; }
        footer .f_content_bnr a {
          display: block;
          width: calc((100% - 20px) / 2); }
          footer .f_content_bnr a img {
            width: 100%; }
      footer .f_content_privacy {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: start;
            justify-content: flex-start;
        -ms-flex-align: center;
            align-items: center; }
        footer .f_content_privacy p {
          font-size: 12px;
          margin-right: 15px; }
        footer .f_content_privacy img {
          width: 50px; }
      footer .f_content_logo a img {
        height: 29px;
        margin: auto; }
      footer .f_content_nav {
        margin: 0 -20px 50px; }
        footer .f_content_nav ul {
          border-top: 1px solid; }
          footer .f_content_nav ul li {
            width: 50%;
            text-align: center;
            border-bottom: 1px solid;
            float: left; }
            footer .f_content_nav ul li a {
              padding: 15px 0;
              display: block;
              color: inherit; }
            footer .f_content_nav ul li:nth-child(odd) {
              border-right: 1px solid; }
    footer .f_content_address {
      margin-bottom: 20px !important; }
    footer .f_content_bnr {
      margin-bottom: 20px !important; }
    footer .f_fb {
      width: 100%;
      margin: 0 auto;
      -ms-flex-order: 1;
          order: 1;
      padding-bottom: 50px; }
    footer .copyright {
      padding-top: 10px;
      text-align: center;
      font-size: 12px; }
    footer.eventlab-footer {
      background-color: transparent;
      color: #333;
      text-align: center;
      padding-top: 0; }
      footer.eventlab-footer .eventlab-footer_logo {
        margin-bottom: 10px; }
        footer.eventlab-footer .eventlab-footer_logo a {
          display: inline-block; }
        footer.eventlab-footer .eventlab-footer_logo svg {
          margin: auto; }
      footer.eventlab-footer .eventlab-footer_address {
        margin-bottom: 100px; }
      footer.eventlab-footer .wrap02 {
        border-top: 1px solid #333;
        padding-top: 60px; }
  .btn_eventlab_link {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 3;
    width: 92px;
    height: 92px; }
    .btn_eventlab_link a {
      text-decoration: none;
      display: block; }
      .btn_eventlab_link a:hover {
        opacity: .7; }
  /*
 SP page
---------------------------------------- */
  body.page header {
    background-color: #151b29; }
  body.page main {
    margin: 60px 0; }
  body.page .page_top {
    position: relative;
    margin-top: 90px;
    padding-bottom: 20px;
    text-align: center; }
    body.page .page_top::before {
      content: "";
      position: absolute;
      z-index: -1;
      background-color: #f5f5f5;
      width: 100%;
      height: calc(100% - 110px);
      bottom: 0;
      left: 0; }
    body.page .page_top_min {
      background: #f5f5f5; }
      body.page .page_top_min::before {
        content: none; }
    body.page .page_top_other::before {
      content: none; }
    body.page .page_top_tit {
      font-size: 25px;
      font-weight: bold;
      line-height: 1;
      border-bottom: 3px solid;
      display: inline-block;
      padding-bottom: 10px;
      margin: 30px auto; }
    body.page .page_top .sub_nav {
      margin: 0 20px; }
      body.page .page_top .sub_nav ul {
        background-color: #fff;
        padding: 20px; }
        body.page .page_top .sub_nav ul li {
          border-bottom: 1px solid; }
          body.page .page_top .sub_nav ul li a {
            text-decoration: none;
            padding: 5px 0;
            display: block; }
          body.page .page_top .sub_nav ul li:first-child {
            border-top: 1px solid; }
          body.page .page_top .sub_nav ul li .is-current {
            display: block;
            background: #f5f5f5;
            padding: 5px 0; }
  body.page .page_top02 {
    padding-top: 30px;
    text-align: center; }
    body.page .page_top02 img {
      margin: auto; }
    body.page .page_top02 h2 {
      margin-bottom: 40px; }
    body.page .page_top02 .h3_tit02 {
      margin-bottom: 20px; }
    body.page .page_top02 p {
      margin-bottom: 20px;
      text-align: left; }
  body.page .page_link {
    margin-top: 30px; }
    body.page .page_link_item {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: start;
          align-items: flex-start;
      -ms-flex-pack: distribute;
          justify-content: space-around;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      body.page .page_link_item li {
        background-color: #f5f5f5;
        min-height: 300px;
        position: relative;
        padding-bottom: 80px;
        width: 100%; }
        body.page .page_link_item li:not(:last-child) {
          margin-bottom: 40px; }
        body.page .page_link_item li img {
          width: 100%; }
      body.page .page_link_item_tit {
        position: relative; }
        body.page .page_link_item_tit h3 {
          position: absolute;
          width: 100%;
          height: 100%;
          left: 0;
          top: 0;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-pack: center;
              justify-content: center;
          -ms-flex-align: center;
              align-items: center;
          font-size: 18px;
          color: #fff; }
      body.page .page_link_item_txt {
        margin: 15px 20px 0; }
      body.page .page_link_item_content {
        padding: 20px; }
        body.page .page_link_item_content .h4_tit01 {
          margin-bottom: 20px; }
      body.page .page_link_item .btn_w {
        position: absolute;
        bottom: 20px;
        left: calc((100% - 200px) / 2); }
  body.page .page_key {
    width: 100%;
    height: auto;
    position: relative;
    margin: 30px auto 30px; }
    body.page .page_key_img {
      position: relative; }
    body.page .page_key_txt {
      width: 100%;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      text-align: center; }
    body.page .page_key_en {
      font-family: "Open Sans", sans-serif;
      font-style: italic;
      font-weight: 700;
      font-size: 25px;
      color: #fff; }
      body.page .page_key_en::after {
        content: '';
        display: block;
        width: 14px;
        height: 1px;
        background: #fff;
        margin: 0 auto 5px; }
    body.page .page_key_jp {
      font-size: 18px;
      color: #fff; }
    body.page .page_key_cross {
      width: 30px;
      height: 30px;
      position: relative;
      display: block;
      margin: auto; }
      body.page .page_key_cross::before, body.page .page_key_cross::after {
        content: "";
        position: absolute;
        height: 30px;
        width: 2px;
        background-color: #fff;
        top: 0;
        left: 48%; }
      body.page .page_key_cross::before {
        transform: skewX(45deg); }
      body.page .page_key_cross::after {
        transform: skewX(-45deg); }
  body.page .page_catch {
    width: 100%;
    height: auto;
    position: relative;
    margin-top: 40px; }
    body.page .page_catch::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: calc(100% - 140px);
      background-color: #f5f5f5;
      z-index: -1; }
    body.page .page_catch .page_key {
      margin-bottom: 0; }
    body.page .page_catch .h2_tit02 {
      color: #fff; }
    body.page .page_catch .page_key_content {
      padding: 30px 20px;
      text-align: center; }
      body.page .page_catch .page_key_content h3 {
        margin-bottom: 30px; }
      body.page .page_catch .page_key_content p {
        margin-bottom: 20px;
        text-align: left; }
      body.page .page_catch .page_key_content .point_list {
        margin-bottom: 50px; }
        body.page .page_catch .page_key_content .point_list p {
          margin-bottom: 0; }
      body.page .page_catch .page_key_content .btn_w {
        margin: 0 auto; }
  body.page .page_inner {
    width: 100%;
    margin-left: auto;
    margin-right: auto; }
  body.page .sec_ttl {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 18px;
    line-height: 1.4;
    padding-bottom: 8px;
    font-weight: 600;
    position: relative;
    margin-bottom: 20px; }
    body.page .sec_ttl::before {
      content: '';
      width: 100%;
      height: 1px;
      background: #b5b5b6;
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 1; }
    body.page .sec_ttl::after {
      content: '';
      width: 25%;
      height: 1px;
      background: #194279;
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 2; }
  /*
 PC index
---------------------------------------- */
  body.home .top {
    position: relative; }
    body.home .top_slider li {
      position: relative;
      width: 100%;
      height: 100vh;
      overflow: hidden;
      z-index: 1; }
      body.home .top_slider li .bg {
        position: absolute;
        min-height: 100%;
        max-height: 100vh;
        min-width: 100%;
        max-width: none;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
    body.home .top_slider_text {
      position: absolute;
      width: calc(100% - 40px);
      z-index: 2;
      left: 20px;
      top: 30%; }
  body.home .top_content_nav ul {
    background-color: #151b29; }
    body.home .top_content_nav ul li {
      width: 50%;
      text-align: center;
      border-bottom: 1px solid;
      float: left;
      color: #fff; }
      body.home .top_content_nav ul li a {
        padding: 15px 0;
        display: block;
        color: inherit; }
      body.home .top_content_nav ul li:nth-child(odd) {
        border-right: 1px solid; }
  body.home section {
    padding-top: 50px; }
  body.home .sec_01 {
    position: relative;
    padding-top: 0; }
    body.home .sec_01 img {
      width: 100%; }
    body.home .sec_01_txt {
      width: 100%;
      padding: 50px 20px;
      background-color: #fff; }
      body.home .sec_01_txt h3 {
        margin-bottom: 20px; }
      body.home .sec_01_txt p {
        margin-bottom: 60px; }
  body.home .sec_02 .event {
    position: relative; }
    body.home .sec_02 .event > div {
      width: 100%;
      overflow: hidden;
      top: 0;
      background-size: cover;
      background-position: center right;
      background-repeat: no-repeat;
      z-index: 1;
      color: #fff;
      transition: all 1s, z-index 3s, background-size 2s;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; }
      body.home .sec_02 .event > div .event_txt {
        width: 100%;
        padding: 20px; }
        body.home .sec_02 .event > div .event_txt h3 {
          margin-bottom: 20px; }
        body.home .sec_02 .event > div .event_txt p {
          margin-bottom: 20px; }
    body.home .sec_02 .event_01 {
      background-image: url("../img/index_event_01.jpg"); }
    body.home .sec_02 .event_02 {
      background-image: url("../img/index_event_02.jpg"); }
    body.home .sec_02 .event .more_btn {
      display: none; }
    body.home .sec_02 .event .more_btn_active a {
      color: #fff; }
      body.home .sec_02 .event .more_btn_active a:after {
        content: '';
        display: inline-block;
        vertical-align: -5px;
        margin-left: 10px;
        width: 21px;
        height: 21px;
        background: url(../img/ico-btn-w.png) no-repeat;
        background-size: contain; }
  body.home .sec_03 .news {
    margin-top: 40px; }
    body.home .sec_03 .news > div {
      width: 100%; }
    body.home .sec_03 .news02 {
      margin-top: 50px; }
    body.home .sec_03 .news_tit {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      position: relative;
      padding-bottom: 8px; }
      body.home .sec_03 .news_tit h4 {
        font-size: 18px; }
      body.home .sec_03 .news_tit a {
        color: #194279;
        padding-top: 6px; }
        body.home .sec_03 .news_tit a::after {
          content: " ≫"; }
      body.home .sec_03 .news_tit::before, body.home .sec_03 .news_tit::after {
        content: "";
        position: absolute;
        height: 1px;
        left: 0;
        bottom: 0; }
      body.home .sec_03 .news_tit::before {
        width: 100%;
        background-color: #9fa0a0;
        z-index: 1; }
      body.home .sec_03 .news_tit::after {
        width: 100px;
        background-color: #194279;
        z-index: 2; }
    body.home .sec_03 .news_list li {
      padding: 15px;
      border-bottom: 1px solid #9fa0a0;
      line-height: 1.73; }
    body.home .sec_03 .news_list_tag {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start;
      margin-bottom: 10px;
      font-size: 14px;
      -ms-flex-align: center;
          align-items: center; }
      body.home .sec_03 .news_list_tag .date {
        line-height: 1;
        margin-right: 10px; }
      body.home .sec_03 .news_list_tag .category {
        color: #194279;
        border: 1px solid;
        padding: 1px 10px;
        line-height: 1; }
        body.home .sec_03 .news_list_tag .category a {
          color: inherit; }
  body.home .sec_04 .ta_r {
    margin: 10px 0; }
    body.home .sec_04 .ta_r a {
      color: #194279; }
  body.home .sec_04 .case_slider {
    padding: 50px 0;
    background-color: #dcdddd;
    position: relative; }
    body.home .sec_04 .case_slider li {
      max-width: 263px;
      margin: 0 10px;
      line-height: 1.4; }
      body.home .sec_04 .case_slider li a {
        display: block; }
        body.home .sec_04 .case_slider li a img {
          margin-bottom: 20px; }
    body.home .sec_04 .case_slider .slick-arrow {
      position: absolute;
      height: 100%;
      width: 84px;
      background-color: rgba(255, 255, 255, 0.55);
      top: 0;
      z-index: 1; }
      body.home .sec_04 .case_slider .slick-arrow::before {
        content: "";
        position: absolute;
        width: 25px;
        height: 25px;
        border-top: 1px solid #333;
        border-right: 1px solid #333;
        z-index: 2;
        left: calc((100% - 37px) / 2);
        top: calc((100% - 37px) / 2); }
      body.home .sec_04 .case_slider .slick-arrow.prev {
        right: 0; }
        body.home .sec_04 .case_slider .slick-arrow.prev::before {
          transform: rotate(45deg); }
      body.home .sec_04 .case_slider .slick-arrow.next {
        left: 0; }
        body.home .sec_04 .case_slider .slick-arrow.next::before {
          transform: rotate(-135deg); }
  body.home .sec_04 .event_solution ul li {
    width: 100%;
    position: relative;
    counter-increment: event-count; }
    body.home .sec_04 .event_solution ul li img {
      width: 100%; }
    body.home .sec_04 .event_solution ul li h3 {
      position: absolute;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center;
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      color: #fff;
      font-size: 20px;
      text-align: center;
      line-height: 1.35; }
    body.home .sec_04 .event_solution ul li::before {
      content: "イベントソリューション" counter(event-count, decimal-leading-zero);
      position: absolute;
      color: #fff;
      left: 55px;
      top: 15px;
      font-size: 14px; }
    body.home .sec_04 .event_solution ul li::after {
      content: "";
      position: absolute;
      width: 45px;
      height: 1px;
      background-color: #fff;
      left: 0;
      top: 28px; }
  body.home .sec_04 .event_solution ul .hover {
    display: none; }
  body.home .sec_05_tit {
    font-size: 20px;
    font-family: 游明朝,"Yu Mincho",YuMincho;
    text-align: center;
    font-weight: bold; }
  body.home .sec_05 .inner_nav {
    padding-top: 50px; }
    body.home .sec_05 .inner_nav ul li a {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center;
      width: 75vw;
      height: 75vw;
      border-radius: 50%;
      padding-top: 20px;
      margin: auto;
      text-align: center;
      background-size: contain;
      background-repeat: no-repeat;
      color: #fff; }
    body.home .sec_05 .inner_nav ul li h3 {
      font-size: 22px;
      width: 100%;
      text-align: center;
      padding-top: 20px;
      line-height: 1.42; }
    body.home .sec_05 .inner_nav ul li h4 {
      font-size: 18px;
      margin-top: 5px;
      text-align: center;
      line-height: 1.42; }
    body.home .sec_05 .inner_nav ul li:not(:last-child) {
      margin-bottom: 30px; }
    body.home .sec_05 .inner_nav ul li:nth-child(1) a {
      background-image: url("../img/inner_nav_bg_01.png"); }
    body.home .sec_05 .inner_nav ul li:nth-child(1) h4 {
      color: #a59a7c; }
    body.home .sec_05 .inner_nav ul li:nth-child(2) a {
      background-image: url("../img/inner_nav_bg_02.png"); }
    body.home .sec_05 .inner_nav ul li:nth-child(2) h4 {
      color: #cca3a3; }
    body.home .sec_05 .inner_nav ul li:nth-child(3) a {
      background-image: url("../img/inner_nav_bg_03.png"); }
    body.home .sec_05 .inner_nav ul li:nth-child(3) h4 {
      color: #6995b2; }
    body.home .sec_05 .inner_nav ul li:nth-child(4) a {
      background-image: url("../img/inner_nav_bg_04.png"); }
    body.home .sec_05 .inner_nav ul li:nth-child(4) h4 {
      color: #f4b4d0; }
    body.home .sec_05 .inner_nav ul li:nth-child(5) a {
      background-image: url("../img/inner_nav_bg_05.png"); }
    body.home .sec_05 .inner_nav ul li:nth-child(5) h4 {
      color: #1d877a; }
    body.home .sec_05 .inner_nav ul li:nth-child(6) a {
      background-image: url("../img/inner_nav_bg_07.png"); }
    body.home .sec_05 .inner_nav ul li:nth-child(6) h4 {
      color: #67827f; }
    body.home .sec_05 .inner_nav ul li:nth-child(7) a {
      background-image: url("../img/inner_nav_bg_08.png"); }
    body.home .sec_05 .inner_nav ul li:nth-child(7) h4 {
      color: #00913a; }
    body.home .sec_05 .inner_nav ul li:nth-child(8) a {
      background-image: url("../img/inner_nav_bg_06.png"); }
    body.home .sec_05 .inner_nav ul li:nth-child(8) h4 {
      color: #f8b62d; }
  body.home .sec_06 {
    padding-top: 0; }
    body.home .sec_06 .hero {
      max-width: 100vw;
      height: auto;
      padding: 80px 20px;
      background-color: #000;
      background-image: url("../img/top_bg.png");
      background-position-x: center;
      background-size: 200% auto; }
      body.home .sec_06 .hero svg {
        width: 100%;
        height: auto; }
      body.home .sec_06 .hero a {
        display: block; }
    body.home .sec_06__link {
      width: 100%;
      text-align: center;
      margin-top: 30px; }
      body.home .sec_06__link img {
        margin: auto; }
  body.home .sec_07 {
    padding-bottom: 50px;
    background-color: #fff; }
    body.home .sec_07 .h2_tit01 {
      margin-bottom: 35px; }
    body.home .sec_07 .top_bnr_list {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      body.home .sec_07 .top_bnr_list li img {
        width: 100%;
        height: auto;
        margin: 0 auto; }
      body.home .sec_07 .top_bnr_list--01 {
        width: 50%; }
      body.home .sec_07 .top_bnr_list--02 {
        width: 38%;
        margin-bottom: 20px; }
      body.home .sec_07 .top_bnr_list--03 {
        width: 55%; }
      body.home .sec_07 .top_bnr_list--04 {
        width: 35%; }
  /*
 SP company
---------------------------------------- */
  .company .message_cont {
    width: 100%;
    margin-left: auto;
    margin-right: auto; }
  .company .message_txt {
    margin-bottom: 20px; }
  .company .message_name {
    margin-top: 30px;
    text-align: right; }
  .company .pride_copy_cont {
    background: url(../img/company/pride_bg_01.svg) no-repeat center 10px;
    background-size: contain;
    padding: 20px 0 50px; }
  .company .pride_copy_img {
    width: 90%;
    text-align: center;
    margin: 0 auto; }
    .company .pride_copy_img img {
      text-align: center;
      margin: 0 auto; }
  .company .pride_copy_txt {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    text-align: center;
    font-size: 16px;
    line-height: 1.78;
    padding: 30px 0 0;
    font-weight: 600; }
  .company .pride_txt {
    width: 100%;
    margin: 0 auto 30px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 16px;
    line-height: 1.75;
    font-weight: 600; }
  .company .pride_img {
    margin: -20px auto 0; }
    .company .pride_img img {
      text-align: center;
      margin: 0 auto; }
  .company .about_cont {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 60px; }
    .company .about_cont dt {
      font-weight: bold;
      width: 30%;
      padding: 0 2% 8px 0;
      margin-top: 8px;
      clear: both;
      border-bottom: 1px #ddd solid; }
    .company .about_cont dd {
      width: 70%;
      border-bottom: 1px #ddd solid;
      padding-bottom: 8px;
      margin-top: 8px; }
  .company .about_txt {
    margin-bottom: 20px; }
  .company .about_map iframe {
    width: 100%;
    height: 250px; }
  .company .history_cont dt {
    float: left;
    font-weight: bold;
    width: 20%;
    margin-right: 5%;
    clear: both;
    padding-bottom: 10px; }
  .company .history_cont dd {
    width: 75%;
    float: left;
    padding-bottom: 10px; }
  /*
 SP other
---------------------------------------- */
  .privacy_cont {
    padding: 20px;
    background: #f5f5f5; }
    .privacy_cont p {
      margin-bottom: 20px; }
  .contact_cont {
    margin: 0 auto; }
  .contact_txt {
    border: 1px #ddd solid;
    padding: 20px;
    margin: 0 auto 20px; }
    .contact_txt ul {
      margin-top: 20px; }
    .contact_txt a {
      color: #036eb8;
      text-decoration: underline; }
      .contact_txt a:hover {
        text-decoration: none; }
  .contact .req {
    background: #c30d23;
    border-radius: 2px;
    color: #fff;
    line-height: 1;
    display: inline-block;
    padding: 2px 14px;
    margin: 0 10px; }
  .contact_form table {
    width: 100%;
    border: 1px #ddd solid; }
    .contact_form table th, .contact_form table td {
      display: block;
      width: 100%; }
    .contact_form table th {
      padding: 10px 20px;
      background: #f5f5f5; }
    .contact_form table td {
      padding: 15px 20px;
      border-bottom: 1px #ddd solid; }
    .contact_form table tr:last-of-type td {
      border-bottom: none; }
  .contact_form input, .contact_form select, .contact_form textarea {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif;
    border: 1px #ddd solid;
    background: #fff;
    padding: 12px 10px;
    border-radius: 4px;
    width: 100%; }
  .contact_form textarea {
    height: 175px;
    display: block; }
  .contact_form_btn {
    width: 100%;
    background: #194279;
    border: none;
    text-align: center;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif;
    color: #fff;
    padding: 12px 0; }
  .contact_privacy .link {
    text-align: center;
    margin: 30px auto 20px; }
    .contact_privacy .link a {
      color: #036eb8;
      text-decoration: underline; }
      .contact_privacy .link a:hover {
        text-decoration: none; }
  .contact_privacy .check {
    text-align: center; }
    .contact_privacy .check input {
      margin: 8px; }
    .contact_privacy .check span {
      text-align: left; }
  .contact_btn {
    margin: 20px auto 40px;
    text-align: center; }
    .contact_btn_input {
      color: #fff;
      text-align: center;
      font-size: 18px;
      border: none;
      border-bottom: 4px #81c7e8 solid;
      background: #194279 url(../img/ico_arw.svg) no-repeat 90% center;
      border-radius: 5px;
      font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif;
      width: 80%;
      padding: 10px;
      cursor: pointer; }
      .contact_btn_input:disabled {
        background: #999 url(../img/ico_arw.svg) no-repeat 90% center; }
  .contact_bottom p {
    margin-bottom: 50px; }
  .news_cont {
    margin: 0 auto; }
    .news_cont_single {
      margin: 0 auto; }
      .news_cont_single html, .news_cont_single address,
      .news_cont_single blockquote,
      .news_cont_single body, .news_cont_single dd, .news_cont_single div,
      .news_cont_single dl, .news_cont_single dt, .news_cont_single fieldset, .news_cont_single form,
      .news_cont_single frame, .news_cont_single frameset,
      .news_cont_single h1, .news_cont_single h2, .news_cont_single h3, .news_cont_single h4,
      .news_cont_single h5, .news_cont_single h6, .news_cont_single noframes,
      .news_cont_single ol, .news_cont_single p, .news_cont_single ul, .news_cont_single center,
      .news_cont_single dir, .news_cont_single hr, .news_cont_single menu, .news_cont_single pre {
        display: block;
        unicode-bidi: embed;
        color: inherit; }
      .news_cont_single ol {
        list-style: decimal;
        list-style-position: inside; }
      .news_cont_single ul {
        list-style: disc;
        list-style-position: inside; }
      .news_cont_single li {
        display: list-item; }
      .news_cont_single head {
        display: none; }
      .news_cont_single table {
        display: table; }
      .news_cont_single tr {
        display: table-row; }
      .news_cont_single thead {
        display: table-header-group; }
      .news_cont_single tbody {
        display: table-row-group; }
      .news_cont_single tfoot {
        display: table-footer-group; }
      .news_cont_single col {
        display: table-column; }
      .news_cont_single colgroup {
        display: table-column-group; }
      .news_cont_single td, .news_cont_single th {
        display: table-cell; }
      .news_cont_single caption {
        display: table-caption; }
      .news_cont_single th {
        font-weight: bolder;
        text-align: center; }
      .news_cont_single caption {
        text-align: center; }
      .news_cont_single body {
        margin: 8px; }
      .news_cont_single h1 {
        font-size: 2em;
        margin: .67em 0; }
      .news_cont_single h2 {
        font-size: 1.5em;
        margin: .75em 0; }
      .news_cont_single h3 {
        font-size: 1.17em;
        margin: .83em 0; }
      .news_cont_single h4, .news_cont_single p,
      .news_cont_single blockquote, .news_cont_single ul,
      .news_cont_single fieldset, .news_cont_single form,
      .news_cont_single ol, .news_cont_single dl, .news_cont_single dir,
      .news_cont_single menu {
        margin: 1.12em 0; }
      .news_cont_single h5 {
        font-size: .83em;
        margin: 1.5em 0; }
      .news_cont_single h6 {
        font-size: .75em;
        margin: 1.67em 0; }
      .news_cont_single h1, .news_cont_single h2, .news_cont_single h3, .news_cont_single h4,
      .news_cont_single h5, .news_cont_single h6, .news_cont_single b,
      .news_cont_single strong {
        font-weight: bolder; }
      .news_cont_single blockquote {
        margin-left: 40px;
        margin-right: 40px; }
      .news_cont_single i, .news_cont_single cite, .news_cont_single em,
      .news_cont_single var, .news_cont_single address {
        font-style: italic; }
      .news_cont_single img {
        height: auto; }
      .news_cont_single .category {
        color: #194279;
        border: 1px #194279 solid;
        display: inline-block;
        padding: 2px 5px;
        line-height: 1; }
      .news_cont_single .ttl {
        font-size: 20px;
        line-height: 1.5;
        padding-top: 10px; }
      .news_cont_single .date {
        padding: 15px 0; }
      .news_cont_single .news_back {
        margin: 50px auto 0; }
        .news_cont_single .news_back a {
          display: block;
          margin: 0 auto;
          width: 90%;
          background: #f5f5f5;
          border-bottom: 2px #aca59b solid;
          padding: 8px 0; }
          .news_cont_single .news_back a::before {
            content: '≪';
            padding: 0 6%;
            font-size: 14px; }
          .news_cont_single .news_back a:hover {
            background: #65655e;
            color: #fff;
            border-bottom: 3px #464546 solid; }
  .news_select {
    margin: 0 auto 30px;
    text-align: center; }
  .news select {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif;
    border: 1px #727171 solid;
    background: #fff url(../img/ico_arw_down.svg) no-repeat 96% center;
    text-align: center;
    color: #727171;
    padding: 12px 10px;
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
  .news select::-ms-expand {
    display: none; }
  .news_link ul {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    border-bottom: 1px #ddd solid; }
    .news_link ul li {
      padding-right: 15px; }
      .news_link ul li.is-current a::before {
        content: "";
        display: inline-block;
        width: 100%;
        height: 4px;
        background: #194279;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        transition: width .4s; }
    .news_link ul a {
      position: relative;
      color: #333;
      transition: border-color .2s ease-in-out;
      padding-bottom: 8px; }
      .news_link ul a::before {
        content: "";
        display: inline-block;
        width: 0;
        height: 4px;
        background: #194279;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        transition: width .4s; }
      .news_link ul a:hover::before {
        width: 100%; }
  .news_list_cont li {
    border-bottom: 1px #ddd solid; }
    .news_list_cont li a {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start; }
  .news_list_cont .date {
    width: 26%;
    padding: 20px 0;
    line-height: 1.2; }
    .news_list_cont .date span {
      display: inline-block;
      line-height: 1;
      color: #fff;
      background: #c30d23;
      font-weight: bold;
      padding: 1px 5px; }
  .news_list_cont .ttl {
    -ms-flex: 1;
        flex: 1;
    padding: 15px 0 15px 22px;
    position: relative;
    color: #036eb8; }
    .news_list_cont .ttl::before {
      font-size: 15px;
      content: '▶';
      color: #c30d23;
      position: absolute;
      top: 16px;
      left: 0; }
  .news_pager ul {
    font-size: 0;
    margin: 50px auto 0;
    text-align: center; }
    .news_pager ul li {
      display: inline-block;
      font-size: 15px;
      padding: 0 2px; }
      .news_pager ul li a, .news_pager ul li span {
        text-align: center;
        display: block;
        width: 44px;
        line-height: 44px;
        height: 44px;
        color: #9d9d9e;
        background: #f5f5f5;
        border-bottom: 2px #aca59b solid; }
      .news_pager ul li span, .news_pager ul li a:hover {
        background: #65655e;
        color: #fff;
        border-bottom: 2px #464546 solid; }
  /*
 SP service
---------------------------------------- */
  body.service.event_design {
    counter-reset: event_design; }
    body.service.event_design .page_link_item li {
      counter-increment: event_design; }
    body.service.event_design .page_link_item_tit::before {
      content: "イベントデザイン" counter(event_design, decimal-leading-zero); }
    body.service.event_design .page_key_content {
      text-align: left; }
  body.service.event_solution {
    counter-reset: event_solution; }
    body.service.event_solution .page_link_item li {
      counter-increment: event_solution; }
      body.service.event_solution .page_link_item li:hover img + img.hover {
        width: 100%;
        transform: translateX(0); }
    body.service.event_solution .page_link_item_tit {
      position: relative;
      overflow: hidden; }
      body.service.event_solution .page_link_item_tit img.hover {
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        min-height: 100%;
        transition: .4s;
        transform: translateX(-100%);
        z-index: 2; }
      body.service.event_solution .page_link_item_tit::before {
        content: "イベントソリューション" counter(event_solution, decimal-leading-zero); }
  body.service.inner .top {
    position: relative; }
    body.service.inner .top_slider li {
      position: relative;
      width: 100%;
      height: calc(100vh - 60px);
      overflow: hidden;
      z-index: 1;
      padding-top: 55px;
      padding-left: 20px; }
      body.service.inner .top_slider li > img {
        margin-left: auto; }
      body.service.inner .top_slider li::before {
        content: "";
        height: 100%;
        width: 100%;
        position: absolute;
        left: 0;
        top: 0;
        z-index: -1; }
      body.service.inner .top_slider li:nth-child(1)::before {
        background-color: #d5c8a0; }
      body.service.inner .top_slider li:nth-child(2)::before {
        background-color: #e2c7c7; }
      body.service.inner .top_slider li:nth-child(3)::before {
        background-color: #90b6d6; }
      body.service.inner .top_slider li:nth-child(4)::before {
        background-color: #fadce9; }
    body.service.inner .top_slider_text {
      color: #fff;
      width: auto;
      position: absolute;
      bottom: 10vh; }
      body.service.inner .top_slider_text_tit {
        font-family: Segoe UI,SegoeUI,"Helvetica Neue",Helvetica,Arial,sans-serif;
        font-size: 24px;
        width: 100%;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
            align-items: center; }
        body.service.inner .top_slider_text_tit span {
          width: 120px;
          position: relative;
          display: -ms-flexbox;
          display: flex;
          margin-left: 10px; }
          body.service.inner .top_slider_text_tit span img {
            width: 80px;
            height: auto;
            margin: auto;
            padding: 0; }
          body.service.inner .top_slider_text_tit span::before {
            content: "";
            position: absolute;
            left: 0;
            top: 20px;
            width: 100%;
            height: 20px;
            border: 1px solid; }
      body.service.inner .top_slider_text_catch {
        font-family: 'M PLUS 1p', sans-serif; }
        body.service.inner .top_slider_text_catch h3 {
          font-size: 21px; }
        body.service.inner .top_slider_text_catch_bg {
          font-size: 17px;
          background-color: #151b29;
          text-align: center; }
  body.service.inner .top_content_nav ul {
    background-color: #151b29; }
    body.service.inner .top_content_nav ul li {
      width: 50%;
      text-align: center;
      border-bottom: 1px solid;
      float: left;
      color: #fff; }
      body.service.inner .top_content_nav ul li a {
        padding: 15px 0;
        display: block;
        color: inherit; }
      body.service.inner .top_content_nav ul li:nth-child(odd) {
        border-right: 1px solid; }
  body.service.inner section {
    margin-top: 50px; }
  body.service.inner .sec_01 {
    position: relative; }
    body.service.inner .sec_01 img {
      margin: auto; }
    body.service.inner .sec_01_tit {
      margin-bottom: 20px; }
    body.service.inner .sec_01_img {
      margin-bottom: 20px; }
    body.service.inner .sec_01_txt {
      margin-bottom: 50px; }
      body.service.inner .sec_01_txt p:not(:last-of-type) {
        margin-bottom: 30px; }
  body.service.inner .inner_nav {
    padding-top: 50px; }
    body.service.inner .inner_nav ul li:nth-child(1) a {
      background-image: url("../img/service/inner/inner_nav_bg_01.png"); }
    body.service.inner .inner_nav ul li:nth-child(2) a {
      background-image: url("../img/service/inner/inner_nav_bg_02.png"); }
    body.service.inner .inner_nav ul li:nth-child(3) a {
      background-image: url("../img/service/inner/inner_nav_bg_03.png"); }
    body.service.inner .inner_nav ul li:nth-child(4) a {
      background-image: url("../img/service/inner/inner_nav_bg_04.png"); }
    body.service.inner .inner_nav ul li:nth-child(5) a {
      background-image: url("../img/service/inner/inner_nav_bg_05.png"); }
    body.service.inner .inner_nav ul li:nth-child(6) a {
      background-image: url("../img/service/inner/inner_nav_bg_07.png"); }
    body.service.inner .inner_nav ul li:nth-child(7) a {
      background-image: url("../img/service/inner/inner_nav_bg_08.png"); }
    body.service.inner .inner_nav ul li:nth-child(8) a {
      background-image: url("../img/service/inner/inner_nav_bg_06.png"); }
    body.service.inner .inner_nav ul li a {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-line-pack: end;
          align-content: flex-end;
      width: 75vw;
      height: 75vw;
      border-radius: 50%;
      padding-bottom: 50px;
      margin: auto;
      text-align: center;
      background-size: contain;
      background-repeat: no-repeat; }
    body.service.inner .inner_nav ul li h3 {
      font-size: 20px;
      width: 100%;
      text-align: center; }
    body.service.inner .inner_nav ul li p {
      font-size: 16px;
      height: 60px;
      width: 100%;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: center;
          justify-content: center;
      line-height: 1.8; }
    body.service.inner .inner_nav ul li:not(:last-child) {
      margin-bottom: 20px; }
  body.service.inner .event_img {
    width: 100%; }
    body.service.inner .event_img img {
      width: 100%; }
  body.service.inner .event_txt {
    width: 100%;
    padding: 20px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    body.service.inner .event_txt h3 {
      margin-bottom: 20px;
      width: 100%;
      letter-spacing: -0.02em; }
    body.service.inner .event_txt > p {
      margin-bottom: 20px;
      width: 100%; }
    body.service.inner .event_txt_box {
      width: 100%;
      background-color: #fff;
      border-radius: 10px;
      padding: 20px; }
      body.service.inner .event_txt_box p {
        margin-bottom: 0; }
  body.service.inner .event_list {
    margin: 50px 0;
    font-size: 13px; }
    body.service.inner .event_list ul {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      body.service.inner .event_list ul li {
        width: calc((100vw - 60px) / 2);
        height: calc((100vw - 60px) / 2);
        border: 1px solid #b5b5b6;
        border-radius: 50%;
        position: relative;
        text-align: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-align: end;
            align-items: flex-end;
        padding: 0 5px 30px;
        background-size: 50px auto;
        background-position: center 20%;
        background-repeat: no-repeat; }
        body.service.inner .event_list ul li:nth-child(n+3) {
          margin-top: 20px; }
  body.service.inner .event_slider {
    position: relative;
    margin-bottom: 50px; }
    body.service.inner .event_slider li {
      max-width: 60vw;
      margin: 0 5vw; }
      body.service.inner .event_slider li a {
        display: block; }
        body.service.inner .event_slider li a img {
          margin-bottom: 20px; }
  body.service.inner .event_btn {
    margin: auto; }
  body.service.inner .event.sec_01 .btn_blk {
    margin: 0 auto; }
  body.service.inner .event.sec_02 .event_txt {
    background-image: url("../img/service/inner/event_bg_01.jpg"); }
  body.service.inner .event.sec_02 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/y-flag01.png"); }
  body.service.inner .event.sec_02 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/y-flag02.png"); }
  body.service.inner .event.sec_02 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/y-flag03.png"); }
  body.service.inner .event.sec_02 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/y-flag04.png"); }
  body.service.inner .event.sec_03 .event_txt {
    background-image: url("../img/service/inner/event_bg_02.jpg"); }
  body.service.inner .event.sec_03 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/bp-flag01.png"); }
  body.service.inner .event.sec_03 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/bp-flag02.png"); }
  body.service.inner .event.sec_03 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/bp-flag03.png"); }
  body.service.inner .event.sec_03 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/bp-flag04.png"); }
  body.service.inner .event.sec_04 .event_txt {
    background-image: url("../img/service/inner/event_bg_03.jpg"); }
  body.service.inner .event.sec_04 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/b-flag01.png"); }
  body.service.inner .event.sec_04 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/b-flag02.png"); }
  body.service.inner .event.sec_04 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/b-flag03.png"); }
  body.service.inner .event.sec_04 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/b-flag04.png"); }
  body.service.inner .event.sec_05 .event_txt {
    background-image: url("../img/service/inner/event_bg_04.jpg"); }
  body.service.inner .event.sec_05 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/p-flag01.png"); }
  body.service.inner .event.sec_05 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/p-flag02.png"); }
  body.service.inner .event.sec_05 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/p-flag03.png"); }
  body.service.inner .event.sec_05 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/p-flag04.png"); }
  body.service.inner .event.sec_06 .event_txt {
    background-image: url("../img/service/inner/event_bg_05.png"); }
  body.service.inner .event.sec_06 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/g-flag01.png"); }
  body.service.inner .event.sec_06 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/g-flag02.png"); }
  body.service.inner .event.sec_06 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/g-flag03.png"); }
  body.service.inner .event.sec_06 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/g-flag04.png"); }
  body.service.inner .event.sec_07 .event_txt {
    background-image: url("../img/service/inner/event_bg_07.jpg"); }
  body.service.inner .event.sec_07 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/s-flag01.png"); }
  body.service.inner .event.sec_07 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/s-flag02.png"); }
  body.service.inner .event.sec_07 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/s-flag03.png"); }
  body.service.inner .event.sec_07 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/s-flag04.png"); }
  body.service.inner .event.sec_08 .event_txt {
    background-image: url("../img/service/inner/event_bg_08.jpg"); }
  body.service.inner .event.sec_08 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/v-flag01.png"); }
  body.service.inner .event.sec_08 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/v-flag02.png"); }
  body.service.inner .event.sec_08 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/v-flag03.png"); }
  body.service.inner .event.sec_08 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/v-flag04.png"); }
  body.service.inner .event.sec_09 .event_txt {
    background-image: url("../img/service/inner/event_bg_06.jpg"); }
  body.service.inner .event.sec_09 .event_list ul li:nth-child(1) {
    background-image: url("../img/service/inner/o-flag01.png"); }
  body.service.inner .event.sec_09 .event_list ul li:nth-child(2) {
    background-image: url("../img/service/inner/o-flag02.png"); }
  body.service.inner .event.sec_09 .event_list ul li:nth-child(3) {
    background-image: url("../img/service/inner/o-flag03.png"); }
  body.service.inner .event.sec_09 .event_list ul li:nth-child(4) {
    background-image: url("../img/service/inner/o-flag04.png"); }
  body.service .page_link {
    padding: 30px 0;
    margin-top: 0; }
    body.service .page_link.bg-g {
      margin: 0;
      margin-top: 30px; }
      body.service .page_link.bg-g .page_link_item li {
        background-color: #fff; }
    body.service .page_link h3 {
      text-align: center;
      margin-bottom: 20px; }
    body.service .page_link_item {
      -ms-flex-align: initial;
          align-items: initial; }
      body.service .page_link_item li {
        height: initial;
        padding-bottom: 0; }
      body.service .page_link_item_tit {
        position: relative; }
        body.service .page_link_item_tit::before {
          position: absolute;
          color: #fff;
          left: 55px;
          top: 15px;
          font-size: 14px; }
        body.service .page_link_item_tit::after {
          content: "";
          position: absolute;
          width: 45px;
          height: 1px;
          background-color: #fff;
          left: 0;
          top: 28px; }
      body.service .page_link_item .btn_w {
        position: initial !important;
        margin: 40px auto 0; }
  .solution01_copy {
    width: 100%;
    margin: 0 auto 60px; }
    .solution01_copy .copy_ttl {
      font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
      font-size: 18px;
      margin-bottom: 20px;
      font-weight: 600;
      line-height: 1.6; }
  .solution01_wrap {
    background: #f5f5f5; }
  .solution01_event {
    padding: 60px 0; }
    .solution01_event ul {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      .solution01_event ul li {
        width: 49%;
        padding: 10px 1%;
        margin-bottom: 8px;
        display: -ms-flexbox;
        display: flex;
        background: #fff;
        border: 1px solid;
        -ms-flex-align: stretch;
            align-items: stretch; }
        .solution01_event ul li span {
          -ms-flex-align: center;
              align-items: center;
          -ms-flex-pack: center;
              justify-content: center;
          text-align: center;
          display: -ms-flexbox;
          display: flex;
          line-height: 1.3;
          font-size: 16px;
          width: 100%; }
  .solution01 .case_link {
    width: 90%;
    position: relative;
    z-index: 1;
    margin: 30px auto 0; }
    .solution01 .case_link a {
      display: block;
      height: 48px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: center;
          justify-content: center;
      text-align: center;
      text-decoration: none;
      color: #333;
      border: 2px solid;
      padding: 0 20px;
      position: relative;
      background: #fff url(../img/ico-btn-b.png) no-repeat 90% center;
      background-size: 18px; }
      .solution01 .case_link a::after {
        background: #333 url(../img/ico-btn-w.png) no-repeat 90% center;
        background-size: 18px;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        content: '';
        transform-origin: right top;
        transform: scale(0, 1);
        transition: transform .3s;
        z-index: 2; }
      .solution01 .case_link a::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: #dcdddd;
        right: -6px;
        bottom: -6px;
        z-index: -1; }
      .solution01 .case_link a:hover::after {
        transform-origin: left top;
        transform: scale(1, 1); }
      .solution01 .case_link a:hover span {
        color: #fff; }
      .solution01 .case_link a span {
        position: relative;
        z-index: 3; }
  .solution01_menu {
    padding-bottom: 60px; }
  .solution01 .tbl_wrap {
    width: 100%;
    overflow-x: scroll; }
  .solution01 .caution {
    margin-top: 10px; }
  .solution01_privacy {
    padding-top: 60px; }
    .solution01_privacy .privacy_mark {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start; }
      .solution01_privacy .privacy_mark .img {
        margin-left: 10px; }
    .solution01_privacy .min_ttl {
      font-size: 18px;
      margin: 30px 0 5px; }
  .solution01_works {
    padding-top: 60px; }
  .solution_tbl {
    width: 900px;
    line-height: 1.4; }
    .solution_tbl th {
      width: 20%;
      background: #333;
      color: #fff;
      text-align: center;
      padding: 5px; }
      .solution_tbl th.price {
        text-align: left; }
    .solution_tbl td {
      text-align: center;
      background: #fff;
      padding: 5px; }
    .solution_tbl th, .solution_tbl td {
      border: 1px #ddd solid; }
    .solution_tbl_min th {
      width: 25%;
      padding: 10px 5px; }
    .solution_tbl_min td {
      padding: 10px 5px; }
  .movie_sec01 {
    padding-bottom: 60px; }
  .movie_sec02 {
    padding-top: 60px;
    padding-bottom: 0; }
    .movie_sec02 .txt + .tbl_wrap {
      margin-top: 20px; }
    .movie_sec02 .tbl_wrap {
      overflow-x: scroll; }
      .movie_sec02 .tbl_wrap tr:not(:first-of-type) td:nth-child(1),
      .movie_sec02 .tbl_wrap tr:not(:first-of-type) td:nth-child(3) {
        text-align: left; }
  /*
 PC recruit
---------------------------------------- */
  body.recruit .shinsotsu-top {
    margin: auto; }
  body.recruit main {
    overflow: hidden; }
  body.recruit .btn_blk {
    width: 100%;
    margin: auto; }
    body.recruit .btn_blk a {
      text-align: center;
      background: #333;
      margin: 0 auto;
      border: 1px #333 solid; }
      body.recruit .btn_blk a span {
        text-align: center;
        margin: 0 auto; }
      body.recruit .btn_blk a:hover {
        color: #333;
        background: #fff; }
      body.recruit .btn_blk a::before {
        display: none; }
      body.recruit .btn_blk a::after {
        display: none; }
  body.recruit .page_inner {
    margin-top: 150px; }
  body.recruit .recruit_catch {
    margin: 5% 0;
    padding: 5% 0; }
    body.recruit .recruit_catch::before {
      height: 100%;
      top: 0;
      width: 150vw;
      margin: 0 -25vw;
      transform: rotate(3deg); }
    body.recruit .recruit_catch::after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 150vw;
      margin: 0 -25vw;
      transform: rotate(-5deg);
      z-index: -1; }
    body.recruit .recruit_catch .page_key {
      margin: 0 auto; }
      body.recruit .recruit_catch .page_key_content {
        padding-bottom: 0;
        text-align: left; }
    body.recruit .recruit_catch .btn_blk {
      margin-top: 50px; }
  body.recruit .recruit_ttl {
    font-size: 20px;
    text-align: center;
    background-color: #f5f5f5;
    border: 1px solid #464646;
    margin-bottom: 40px; }
  body.recruit .recruit_cont {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 100px; }
    body.recruit .recruit_cont dt {
      font-weight: bold;
      width: 30%;
      padding: 0 2% 15px 0;
      margin-top: 15px;
      clear: both;
      border-bottom: 1px #ddd solid;
      letter-spacing: .2em; }
    body.recruit .recruit_cont dd {
      width: calc(100% - 30%);
      border-bottom: 1px #ddd solid;
      padding-bottom: 15px;
      margin-top: 15px; }
  body.recruit .recruit_step {
    margin-bottom: 100px; }
    body.recruit .recruit_step li {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      counter-increment: recruit_step;
      border-bottom: 1px solid #81c7e8;
      padding: 25px 0;
      min-height: 150px;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
    body.recruit .recruit_step_cont h4 {
      position: relative;
      color: #036eb8;
      font-size: 20px;
      padding-left: 120px;
      line-height: 1;
      margin-bottom: 25px; }
      body.recruit .recruit_step_cont h4::before {
        content: "STEP" counter(recruit_step);
        position: absolute;
        left: 0;
        padding-right: 30px;
        border-right: 1px solid; }
    body.recruit .recruit_step_img {
      margin-top: 20px;
      width: 100%; }
      body.recruit .recruit_step_img img {
        width: 100%; }
  body.recruit.shinsotsu .recruit_catch::after {
    background-color: #81c7e8; }
  body.recruit.chuto .recruit_catch::after {
    background-color: #e5d9bd; }
  body.recruit .recruit_bnr {
    width: 100%;
    margin-bottom: 50px; }
    body.recruit .recruit_bnr_wrap {
      margin-bottom: 100px; }
  .shinsotsu_copy {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center;
    padding-bottom: 20px; }
  body.interview .page_inner {
    margin-top: 0 !important; }
  body.interview .interview_cont {
    margin-bottom: 80px; }
    body.interview .interview_cont:last-of-type {
      margin-bottom: 100px; }
    body.interview .interview_cont_img {
      width: 100%;
      margin-bottom: 20px; }
    body.interview .interview_cont_ttl {
      font-weight: bold;
      font-size: 22px;
      font-size: 2.2rem;
      line-height: 1.6;
      font-feature-settings: 'palt';
      background: linear-gradient(transparent 70%, #fff000 0%);
      display: inline;
      padding: 0 2px; }
    body.interview .interview_cont_txt {
      margin-top: 20px; }
  body.interview .interview_detail_cont {
    width: calc(100% - 40px);
    margin: 0 20px;
    padding: 70px 0; }
    body.interview .interview_detail_cont .interview_cont {
      margin-bottom: 40px; }
  body.interview .interview_detail_inner {
    margin-bottom: 40px; }
  body.interview .interview_detail_ttl {
    display: block;
    background: #151b29;
    color: #fff;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4;
    margin-bottom: 20px;
    padding: 5px 10px; }
  .modal_cont {
    display: none;
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    background: rgba(255, 255, 255, 0.8);
    z-index: 999999; }
    .modal_cont.is-show {
      display: block;
      opacity: 1;
      animation-duration: .5s;
      animation-name: fade-in;
      -moz-animation-duration: .5s;
      -moz-animation-name: fade-in;
      -webkit-animation-duration: .5s;
      -webkit-animation-name: fade-in; }
  .modal_inner {
    width: 100%;
    position: relative;
    background: #efe8d9;
    margin: 0 auto; }
  .modal_close {
    width: 26px;
    position: absolute;
    right: 20px;
    top: 20px;
    cursor: pointer; }
  .modal_btn {
    cursor: pointer; }
  @keyframes fade-in {
    0% {
      display: none;
      opacity: 0; }
    1% {
      display: block;
      opacity: 0; }
    100% {
      display: block;
      opacity: 1; } }
  /*
 SP strength
---------------------------------------- */
  .strength main {
    margin-bottom: 0 !important; }
  .strength_wrap {
    background: #f5f5f5; }
  .strength_copy {
    padding: 40px 0; }
    .strength_copy_ttl {
      text-align: center;
      font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
      font-size: 20px;
      margin-bottom: 20px;
      font-weight: 600; }
    .strength_copy_txt {
      margin-bottom: 20px; }
  .strength_case {
    position: relative;
    width: 100%;
    margin: 0 auto; }
    .strength_case .slick-slider {
      width: 100%;
      margin: 30px auto 0;
      position: relative; }
      .strength_case .slick-slider .slick-list {
        background: #fff; }
      .strength_case .slick-slider .slick-slide {
        background: #fff;
        cursor: grab; }
        .strength_case .slick-slider .slick-slide .txt {
          padding: 20px; }
        .strength_case .slick-slider .slick-slide .ttl {
          font-size: 18px;
          font-weight: 500;
          line-height: 1.35; }
        .strength_case .slick-slider .slick-slide .sub-ttl {
          padding: 10px 0; }
    .strength_case .slide-dots {
      display: -ms-flexbox;
      display: flex;
      text-align: center;
      -ms-flex-pack: center;
          justify-content: center;
      margin: 0 auto; }
      .strength_case .slide-dots button {
        font-size: 18px;
        background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        color: #9fa0a0;
        padding: 10px 8px;
        font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "游ゴシック", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS P Gothic", Helvetica, Arial, Verdana, sans-serif; }
      .strength_case .slide-dots .slick-active button {
        color: #333; }
    .strength_case .slick-arrow {
      width: 24px;
      height: 24px;
      cursor: pointer;
      position: absolute; }
      .strength_case .slick-arrow.prev {
        background: url(../img/arw_prev.svg) no-repeat center;
        bottom: 15px;
        left: 0; }
      .strength_case .slick-arrow.next {
        background: url(../img/arw_next.svg) no-repeat center;
        bottom: 15px;
        right: 0; }
    .strength_case .link_list {
      margin-bottom: 60px; }
      .strength_case .link_list a {
        color: #194279;
        border: 1px solid;
        display: block;
        padding: 10px 0;
        background: #fff;
        text-align: center; }
  .strength_point {
    padding-bottom: 60px; }
    .strength_point .point_cont {
      width: 100%;
      background: #eae9e8;
      border: 1px #333 solid;
      margin-bottom: 10px; }
      .strength_point .point_cont .num {
        font-size: 14px;
        padding: 15px 0 0; }
        .strength_point .point_cont .num::before {
          display: inline-block;
          vertical-align: middle;
          content: '';
          width: 45px;
          height: 1px;
          background: #333;
          margin-right: 5px; }
      .strength_point .point_cont .ttl {
        text-align: center; }
        .strength_point .point_cont .ttl span {
          display: inline-block;
          margin: 20px auto;
          line-height: 1.1;
          font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
          text-align: center;
          font-size: 30px;
          font-weight: 600;
          border-bottom: 5px #333 solid; }
      .strength_point .point_cont .txt {
        width: 90%;
        margin: 0 auto;
        padding-bottom: 25px; }
  .strength .event_solution ul li {
    width: 100%;
    position: relative;
    counter-increment: event-count; }
    .strength .event_solution ul li img {
      width: 100%; }
    .strength .event_solution ul li h3 {
      position: absolute;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center;
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      color: #fff;
      font-size: 20px;
      text-align: center;
      line-height: 1.35; }
    .strength .event_solution ul li::before {
      content: "イベントソリューション" counter(event-count, decimal-leading-zero);
      position: absolute;
      color: #fff;
      left: 55px;
      top: 15px;
      font-size: 14px; }
    .strength .event_solution ul li::after {
      content: "";
      position: absolute;
      width: 45px;
      height: 1px;
      background-color: #fff;
      left: 0;
      top: 28px; }
  .strength .event_solution ul .hover {
    display: none; }
  /*
 SP case
---------------------------------------- */
  body.page .case_first .page_top_tit {
    width: calc(100% - 40px);
    padding: 70px 0 !important;
    background: url(../img/case/case_bg_sp.jpg) no-repeat center;
    background-size: cover;
    color: #fff;
    margin: 0 20px 30px !important; }
    body.page .case_first .page_top_tit::after {
      content: '';
      width: 4em;
      height: 3px;
      display: block;
      margin: 10px auto 0;
      background: #fff; }
  body.page .case_first .case_link_ttl {
    width: 100%;
    position: relative;
    color: #fff;
    font-size: 15px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    text-align: center;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    background: #151b29;
    line-height: 1.46;
    min-height: 60px;
    margin: 0; }
  body.page .case_first.page_top .sub_nav {
    display: none;
    margin: 0; }
    body.page .case_first.page_top .sub_nav ul {
      padding: 0; }
      body.page .case_first.page_top .sub_nav ul li {
        font-size: 13px;
        background: #eae8e4;
        border-bottom: 1px #fff solid;
        text-align: left; }
        body.page .case_first.page_top .sub_nav ul li span,
        body.page .case_first.page_top .sub_nav ul li a {
          padding: 15px 20px; }
  body.page .case_first::before {
    display: none; }
  body.page .case_cont_ttl {
    text-align: center;
    background: url(../img/case/case_ttl_bg.svg) no-repeat center;
    background-size: contain;
    padding: 48px 0;
    margin: 30px auto 45px; }
    body.page .case_cont_ttl .min {
      font-size: 14px; }
      body.page .case_cont_ttl .min::after {
        content: '';
        width: 20px;
        height: 1px;
        background: #333;
        display: block;
        margin: 10px auto 0; }
    body.page .case_cont_ttl .category {
      font-size: 28px; }
  body.page .case_main {
    margin-bottom: 60px; }
    body.page .case_main .sub-ttl {
      font-size: 17px;
      margin-bottom: 10px; }
    body.page .case_main_inner {
      margin-top: 20px; }
      body.page .case_main_inner .img {
        width: 100%;
        margin-bottom: 20px; }
      body.page .case_main_inner .detail dt {
        float: left;
        clear: both; }
      body.page .case_main_inner .detail dd {
        padding-left: 84px; }
    body.page .case_main_sub {
      margin-top: 30px;
      padding: 30px 20px;
      background: #f5f5f5; }
      body.page .case_main_sub .arw_point {
        width: 30%;
        margin: 20px auto 30px;
        text-align: center; }
        body.page .case_main_sub .arw_point img {
          text-align: center;
          margin: 0 auto; }
      body.page .case_main_sub .point_list li .point_list_img {
        width: 100%;
        margin: 20px auto; }
      body.page .case_main_sub .voice {
        margin-top: 30px; }
  .case .ac_btn {
    width: 20px;
    height: 20px;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%); }
    .case .ac_btn::before {
      transition: .4s;
      content: '';
      width: 20px;
      height: 1px;
      background: #fff;
      display: block;
      position: absolute;
      top: 10px;
      left: 0; }
    .case .ac_btn::after {
      transition: .4s;
      content: '';
      height: 20px;
      width: 1px;
      background: #fff;
      position: absolute;
      top: 0;
      left: 10px; }
  .case .is-active .ac_btn::before {
    opacity: 0; }
  .case .is-active .ac_btn::after {
    opacity: 1;
    transform: rotate(90deg); }
  /*
 SP event undoukai
---------------------------------------- */
  .undoukai .c-event .l-block_event_bg {
    background-color: #eae2cc; }
  .undoukai .c-event_point_top::after {
    color: #d5c8a0; }
  .undoukai .c-event_point_price::after {
    color: #d5c8a0; }
  .undoukai .c-event_point_wrap {
    background-color: #d5c8a0; }
  .undoukai .c-event_recommended::after {
    background-color: #eae2cc; }
  .undoukai .c-event_price_tri {
    color: #d5c8a0; }
  .undoukai .c-event_price_box {
    background-color: #d5c8a0; }
  .undoukai .c-event_bottom {
    background-image: url(../img/service/inner/undoukai/bnr_btm.png); }
  /*
 SP event sweetsparty
---------------------------------------- */
  .sweetsparty .c-event .l-block_event_bg {
    background-color: #ead7d7; }
  .sweetsparty .c-event_point_top::after {
    color: #e2bfbf; }
  .sweetsparty .c-event_point_price::after {
    color: #e2bfbf; }
  .sweetsparty .c-event_point_wrap {
    background-color: #e2bfbf; }
  .sweetsparty .c-event_recommended::after {
    background-color: #ead7d7; }
  .sweetsparty .c-event_price_tri {
    color: #e2bfbf; }
  .sweetsparty .c-event_price_box {
    background-color: #e2bfbf; }
  .sweetsparty .c-event_bottom {
    background-image: url(../img/service/inner/sweetsparty/bnr_btm.png); }
  /*
 SP event kickoff
---------------------------------------- */
  .kickoff .c-event .l-block_event_bg {
    background-color: #b9d9ea; }
  .kickoff .c-event_point_top::after {
    color: #90b6d6; }
  .kickoff .c-event_point_price::after {
    color: #90b6d6; }
  .kickoff .c-event_point_wrap {
    background-color: #90b6d6; }
  .kickoff .c-event_recommended::after {
    background-color: #b9d9ea; }
  .kickoff .c-event_price_tri {
    color: #90b6d6; }
  .kickoff .c-event_price_box {
    background-color: #90b6d6; }
  .kickoff .c-event_price_bottom {
    background-color: #90b6d6; }
    .kickoff .c-event_price_bottom::before {
      color: #90b6d6; }
  .kickoff .c-event_bottom {
    background-image: url(../img/service/inner/kickoff/bnr_btm.png); }
  /*
 SP event indoorhanami
---------------------------------------- */
  .indoorhanami .c-event .l-block_event_bg {
    background-color: #fee5f2; }
  .indoorhanami .c-event_point_top::after {
    color: #f4b4c9; }
  .indoorhanami .c-event_point_price::after {
    color: #f4b4c9; }
  .indoorhanami .c-event_point_wrap {
    background-color: #f4b4c9; }
  .indoorhanami .c-event_recommended::after {
    background-color: #fee5f2; }
  .indoorhanami .c-event_price_tri {
    color: #f4b4c9; }
  .indoorhanami .c-event_price_box {
    background-color: #f4b4c9; }
  .indoorhanami .c-event_bottom {
    background-image: url(../img/service/inner/indoorhanami/bnr_btm.png); }
  /*
 SP event cardgame
---------------------------------------- */
  .cardgame .c-event .l-block_event_bg {
    background-color: #b3dad5; }
  .cardgame .c-event_point_top::after {
    color: #68c6bf; }
  .cardgame .c-event_point_price::after {
    color: #68c6bf; }
  .cardgame .c-event_point_wrap {
    background-color: #68c6bf; }
  .cardgame .c-event_recommended::after {
    background-color: #b3dad5; }
  .cardgame .c-event_price_tri {
    color: #68c6bf; }
  .cardgame .c-event_price_box {
    background-color: #68c6bf; }
  .cardgame .c-event_bottom {
    background-image: url(../img/service/inner/cardgame/bnr_btm.png); }
  /*
 SP event survivalgame
---------------------------------------- */
  .survivalgame .c-event .l-block_event_bg {
    background-color: #b3c6c3; }
  .survivalgame .c-event_point_top::after {
    color: #67827f; }
  .survivalgame .c-event_point_price::after {
    color: #67827f; }
  .survivalgame .c-event_point_wrap {
    background-color: #67827f; }
  .survivalgame .c-event_recommended::after {
    background-color: #b3c6c3; }
  .survivalgame .c-event_price_tri {
    color: #67827f; }
  .survivalgame .c-event_price_box {
    background-color: #67827f; }
  .survivalgame .c-event_bottom {
    background-image: url(../img/service/inner/survivalgame/bnr_btm.png); }
  /*
 PC event volunteer
---------------------------------------- */
  .volunteer .c-event .l-block_event_bg {
    background-color: #88c9a1; }
  .volunteer .c-event_point_top::after {
    color: #00913a; }
  .volunteer .c-event_point_price::after {
    color: #00913a; }
  .volunteer .c-event_point_wrap {
    background-color: #00913a; }
  .volunteer .c-event_figure_wrap {
    background-color: #00913a; }
  .volunteer .c-event_recommended::after {
    background-color: #88c9a1; }
  .volunteer .c-event_price_tri {
    color: #00913a; }
  .volunteer .c-event_price_box {
    background-color: #00913a; }
  .volunteer .c-event_bottom {
    background-image: url(../img/service/inner/volunteer/bnr_btm.png); } }

/*# sourceMappingURL=maps/style.css.map */
