@charset "UTF-8";
.font_gothic, body .site-header .header_inner .header_right nav.navigation ul li a span, body .site-footer .footer_inner .footer_intro .footer_logo a span, body .site-footer .footer_inner .footer_intro .footer_contents .footer_content .name, body .site-footer .footer_inner .footer_intro .footer_contents .footer_content address, body .site-footer .footer_inner .footer_nav ul li a span, body .site-footer small, body, body p, body .internal__title_w span.japanese, body .internal__title span.japanese, body .internal__contactBtn a span.textBox span.japanese, body.home .top__main_contact .info_text, body.home .top__business_text .sub_title, body.home .top__business_text_sp .sub_title, body.home .top__message_detailBox .message_title, body.lower .business__listArea li, body.lower .creative__listArea li, body.lower .consul__list li {
  font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif; }

.font_mincho {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif; }

.font_serif {
  font-family: "Sorts Mill Goudy", serif; }

.font_maru {
  font-family: "FOT-筑紫A丸ゴシック Std M", TsukuARdGothicStd-M, "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", メイリオ, Meiryo, sans-serif; }

.font_robo, body .site-header .header_inner .header_right nav.navigation ul li a, body .site-header .header_inner .ham_menu ul.accordion li.menu a, body .site-footer .footer_inner .footer_nav ul li a, body .internal__title_w span.alphabet, body .internal__title span.alphabet, body .internal__morebtn a, body .internal__morebtn_com a, body .internal__contactBtn a span.textBox span.alphabet, body.home .top__main_visualCopy .passing-bar .passing-text p, body.home .top__main_visualName .passing-bar .passing-text p, body.home .top__business_image .item_no span, body.home .top__business_image_sp .item_no span, body.home .top__textanimation .loop_wrap .text_inline {
  font-family: 'Roboto', sans-serif; }

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

body {
  line-height: 1; }

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

img {
  vertical-align: bottom; }

nav ul, nav li {
  margin: 0;
  list-style: none;
  list-style-image: none; }

ul li {
  margin: 0;
  list-style: none;
  list-style-image: none; }

ol li {
  margin: 0;
  list-style: none !important;
  list-style-image: none; }

blockquote, q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

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

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

select, input, textarea, button {
  font: 99% sans-serif; }

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

html {
  overflow-y: scroll; }

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

small {
  font-size: 100%; }

strong, th {
  font-weight: bold; }

td {
  vertical-align: top; }

sup {
  bottom: 1ex; }

sub {
  top: .5ex; }

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
  padding: 15px; }

textarea {
  overflow: auto; }

input[type="radio"] {
  vertical-align: text-bottom; }

input[type="checkbox"] {
  vertical-align: bottom; }

label, input[type="button"], input[type="submit"], input[type="image"], button {
  cursor: pointer; }

button, input, select, textarea {
  margin: 0; }

a:link {
  -webkit-tap-highlight-color: #FF5E99; }

button {
  width: auto;
  overflow: visible; }

.ir {
  display: block;
  text-indent: -999em;
  overflow: hidden;
  background-repeat: no-repeat;
  text-align: left;
  direction: ltr; }

.hidden {
  display: none;
  visibility: hidden; }

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

.invisible {
  visibility: hidden; }

.clearfix:before, .clearfix:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden; }

.clearfix:after {
  clear: both; }

.clearfix {
  zoom: 1; }

a, a:visited {
  text-decoration: none; }

.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
  content: ""; }

pre, blockquote {
  border: 1px solid #999;
  page-break-inside: avoid; }

thead {
  display: table-header-group; }

tr, img {
  page-break-inside: avoid; }

@page {
  margin: 0.5cm; }

p, h2, h3 {
  orphans: 3;
  widows: 3; }

h2, h3 {
  page-break-after: avoid; }

/*アニメーション関係*/
@-webkit-keyframes passing-bar {
  0% {
    left: 0;
    width: 0%; }
  50% {
    left: 0;
    width: 100%; }
  51% {
    left: 0;
    width: 100%; }
  100% {
    left: 100%;
    width: 0; } }
@keyframes passing-bar {
  0% {
    left: 0;
    width: 0%; }
  50% {
    left: 0;
    width: 100%; }
  51% {
    left: 0;
    width: 100%; }
  100% {
    left: 100%;
    width: 0; } }

@-webkit-keyframes passing-text {
  0% {
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes passing-text {
  0% {
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes former {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0px) scale3d(1, 1, 1) rotate(0deg);
    transform: translate3d(0, 0, 0px) scale3d(1, 1, 1) rotate(0deg); }
  100% {
    -webkit-transform: translate3d(100%, 0, 0) scale3d(1, 1, 1) rotate(0deg);
    transform: translate3d(100%, 0, 0) scale3d(1, 1, 1) rotate(0deg);
    opacity: 1; } }

@keyframes former {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0px) scale3d(1, 1, 1) rotate(0deg);
    transform: translate3d(0, 0, 0px) scale3d(1, 1, 1) rotate(0deg); }
  100% {
    -webkit-transform: translate3d(100%, 0, 0) scale3d(1, 1, 1) rotate(0deg);
    transform: translate3d(100%, 0, 0) scale3d(1, 1, 1) rotate(0deg);
    opacity: 1; } }

@-webkit-keyframes pink-slide {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100px, -100px, 0px) scale3d(1, 1, 1) rotate(0deg);
    transform: translate3d(100px, -100px, 0px) scale3d(1, 1, 1) rotate(0deg); }
  100% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0deg);
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0deg);
    opacity: 1; } }

@keyframes pink-slide {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100px, -100px, 0px) scale3d(1, 1, 1) rotate(0deg);
    transform: translate3d(100px, -100px, 0px) scale3d(1, 1, 1) rotate(0deg); }
  100% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0deg);
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0deg);
    opacity: 1; } }

@keyframes company-In {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 1);
    transform: scale3d(0.3, 0.3, 1); }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@-webkit-keyframes company-In {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 1);
    transform: scale3d(0.3, 0.3, 1); }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@-webkit-keyframes scroll {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes scroll {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@-webkit-keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%); }
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

@keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%); }
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

@-webkit-keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -webkit-transform: translateX(-200%);
    transform: translateX(-200%); } }

@keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -webkit-transform: translateX(-200%);
    transform: translateX(-200%); } }

@-webkit-keyframes bg-opacity {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes bg-opacity {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2); } }

@keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2); } }

@-webkit-keyframes zoom_soon {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  80% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1); }
  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2); } }

@keyframes zoom_soon {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  80% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1); }
  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2); } }

@-webkit-keyframes zoom_show {
  0% {
    -webkit-filter: brightness(100%);
    filter: brightness(100%); }
  90% {
    -webkit-filter: brightness(130%);
    filter: brightness(130%); }
  100% {
    -webkit-filter: brightness(190%) blur(5px) saturate(120%);
    filter: brightness(190%) blur(5px) saturate(120%); } }

@keyframes zoom_show {
  0% {
    -webkit-filter: brightness(100%);
    filter: brightness(100%); }
  90% {
    -webkit-filter: brightness(130%);
    filter: brightness(130%); }
  100% {
    -webkit-filter: brightness(190%) blur(5px) saturate(120%);
    filter: brightness(190%) blur(5px) saturate(120%); } }

@-webkit-keyframes slide-In {
  0% {
    width: 0%; }
  50% {
    opacity: 1; }
  100% {
    opacity: 1;
    width: 100%; } }

@keyframes slide-In {
  0% {
    width: 0%; }
  50% {
    opacity: 1; }
  100% {
    opacity: 1;
    width: 100%; } }

@-webkit-keyframes slideIn {
  0% {
    width: 0%; }
  100% {
    width: 88.5%; } }

@keyframes slideIn {
  0% {
    width: 0%; }
  100% {
    width: 88.5%; } }

@-webkit-keyframes slideIn_sp {
  0% {
    width: 0%; }
  100% {
    width: 90%; } }

@keyframes slideIn_sp {
  0% {
    width: 0%; }
  100% {
    width: 90%; } }

@-webkit-keyframes slideIn_p {
  0% {
    width: 0%; }
  30% {
    opacity: 1; }
  100% {
    opacity: 1;
    width: 85%; } }

@keyframes slideIn_p {
  0% {
    width: 0%; }
  30% {
    opacity: 1; }
  100% {
    opacity: 1;
    width: 85%; } }

@-webkit-keyframes slideIn_t {
  0% {
    width: 0%; }
  30% {
    opacity: 1; }
  100% {
    opacity: 1;
    width: 95%; } }

@keyframes slideIn_t {
  0% {
    width: 0%; }
  30% {
    opacity: 1; }
  100% {
    opacity: 1;
    width: 95%; } }

@-webkit-keyframes slideIn_s {
  0% {
    width: 0%; }
  30% {
    opacity: 1; }
  100% {
    opacity: 1;
    width: 115%; } }

@keyframes slideIn_s {
  0% {
    width: 0%; }
  30% {
    opacity: 1; }
  100% {
    opacity: 1;
    width: 115%; } }

@-webkit-keyframes slideIn02 {
  0% {
    width: 0%; }
  5% {
    opacity: 1; }
  100% {
    width: 78%;
    opacity: 1; } }

@keyframes slideIn02 {
  0% {
    width: 0%; }
  5% {
    opacity: 1; }
  100% {
    width: 78%;
    opacity: 1; } }

@-webkit-keyframes slideIn02_sp {
  0% {
    width: 0%; }
  5% {
    opacity: 1; }
  100% {
    width: 100%;
    opacity: 1; } }

@keyframes slideIn02_sp {
  0% {
    width: 0%; }
  5% {
    opacity: 1; }
  100% {
    width: 100%;
    opacity: 1; } }

/*-----斜めから表示----*/
.slanting {
  opacity: 0;
  -webkit-transition: all 1.2s;
  -o-transition: all 1.2s;
  transition: all 1.2s;
  -webkit-transform: translate3d(0, 10%, 0) rotate3d(1, 1, 0, -30deg);
  transform: translate3d(0, 10%, 0) rotate3d(1, 1, 0, -30deg); }
  .slanting.move {
    opacity: 1;
    -webkit-transform: translate3d(0, -30%, 0) rotate3d(1, 1, 0, 0deg);
    transform: translate3d(0, -30%, 0) rotate3d(1, 1, 0, 0deg); }

@-webkit-keyframes downImg {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100px, 0) scale(1, 1.25);
    transform: translate3d(0, 100px, 0) scale(1, 1.25); }
  100% {
    -webkit-transform: translate3d(0, 0, 0) scale(1, 1);
    transform: translate3d(0, 0, 0) scale(1, 1);
    opacity: 1; } }

@keyframes downImg {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100px, 0) scale(1, 1.25);
    transform: translate3d(0, 100px, 0) scale(1, 1.25); }
  100% {
    -webkit-transform: translate3d(0, 0, 0) scale(1, 1);
    transform: translate3d(0, 0, 0) scale(1, 1);
    opacity: 1; } }

@-webkit-keyframes img_bg {
  0% { }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes img_bg {
  0% { }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@-webkit-keyframes bg_up {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0%, 0);
    transform: translate3d(0, 0%, 0); } }

@keyframes bg_up {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0%, 0);
    transform: translate3d(0, 0%, 0); } }

@-webkit-keyframes downBox {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 80px, 0);
    transform: translate3d(0, 80px, 0); }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes downBox {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 80px, 0);
    transform: translate3d(0, 80px, 0); }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@-webkit-keyframes downItem {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 30px, 0);
    transform: translate3d(0, 30px, 0); }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes downItem {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 30px, 0);
    transform: translate3d(0, 30px, 0); }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@-webkit-keyframes slideItem {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-50px, 0, 0) skewX(-20deg);
    transform: translate3d(-50px, 0, 0) skewX(-20deg); }
  100% {
    -webkit-transform: translate3d(0, 0, 0) skewX(-20deg);
    transform: translate3d(0, 0, 0) skewX(-20deg);
    opacity: 1; } }

@keyframes slideItem {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-50px, 0, 0) skewX(-20deg);
    transform: translate3d(-50px, 0, 0) skewX(-20deg); }
  100% {
    -webkit-transform: translate3d(0, 0, 0) skewX(-20deg);
    transform: translate3d(0, 0, 0) skewX(-20deg);
    opacity: 1; } }

@-webkit-keyframes sp_menu {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-80px, 0, 0);
    transform: translate3d(-80px, 0, 0); }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes sp_menu {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-80px, 0, 0);
    transform: translate3d(-80px, 0, 0); }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

/*-----スクロールダウン----*/
@-webkit-keyframes scro {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    transform: rotate(-45deg) translate(0, 0);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: rotate(-45deg) translate(-20px, 20px);
    transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0; } }
@keyframes scro {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    transform: rotate(-45deg) translate(0, 0);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: rotate(-45deg) translate(-20px, 20px);
    transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0; } }

html {
  font-size: 62.5%; }

body {
  width: 100%;
  /*-----------斜線----------*/
  /*-----------縦書きの文字を左右ズレを揃える----------*/
  /*-----------page top----------*/ }
  body .selector {
    letter-spacing: .05em;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    text-align: justify;
    text-justify: inter-ideograph;
    word-break: normal;
    line-break: strict; }
  body .selector02 {
    letter-spacing: 0em;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    text-align: justify;
    text-justify: inter-ideograph;
    word-break: normal;
    line-break: strict; }
  body .border-bg {
    height: auto;
    display: block;
    width: 100%;
    background-image: -webkit-repeating-linear-gradient(135deg, transparent, transparent 4.8px, rgba(210, 210, 210, 0.8) 4.8px, rgba(210, 210, 210, 0.8) 5.5px);
    background-image: -o-repeating-linear-gradient(135deg, transparent, transparent 4.8px, rgba(210, 210, 210, 0.8) 4.8px, rgba(210, 210, 210, 0.8) 5.5px);
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 4.8px, rgba(210, 210, 210, 0.8) 4.8px, rgba(210, 210, 210, 0.8) 5.5px);
    bottom: 0; }
  body .pc_none {
    display: block; }
    @media (max-width: 1200px) {
      body .pc_none {
        display: none !important; } }
  body .pc_inherit {
    display: none; }
    @media (max-width: 1200px) {
      body .pc_inherit {
        display: block !important; } }
  body .tb_none {
    display: block; }
    @media (max-width: 1024px) {
      body .tb_none {
        display: none !important; } }
  body .tb_inherit {
    display: none; }
    @media (max-width: 1024px) {
      body .tb_inherit {
        display: block !important; } }
  body .sb_none {
    display: block; }
    @media (max-width: 768px) {
      body .sb_none {
        display: none !important; } }
  body .sb_inherit {
    display: none; }
    @media (max-width: 768px) {
      body .sb_inherit {
        display: block !important; } }
  body .sp_none {
    display: block; }
    @media (max-width: 480px) {
      body .sp_none {
        display: none !important; } }
  body .sp_inherit {
    display: none; }
    @media (max-width: 480px) {
      body .sp_inherit {
        display: block !important; } }
  body .se_none {
    display: block; }
    @media (max-width: 320px) {
      body .se_none {
        display: none !important; } }
  body .se_inherit {
    display: none; }
    @media (max-width: 320px) {
      body .se_inherit {
        display: block !important; } }
  body .__pt40 {
    padding-top: 40px; }
  body .__pt60 {
    padding-top: 60px; }
  body .__pt80 {
    padding-top: 80px; }
  body .__pt100 {
    padding-top: 100px; }
  body .__pt120 {
    padding-top: 120px; }
  body .__pt140 {
    padding-top: 140px; }
  body .__pt160 {
    padding-top: 160px; }
  body .__pt180 {
    padding-top: 180px; }
  body .__pt200 {
    padding-top: 200px; }
  body .__pt220 {
    padding-top: 220px; }
  body .__pt240 {
    padding-top: 240px; }
  body .__mt40 {
    margin-top: 40px; }
  body .__mt60 {
    margin-top: 60px; }
  body .__mt80 {
    margin-top: 80px; }
  body .__mt100 {
    margin-top: 100px; }
  body .__mt120 {
    margin-top: 120px; }
  body .__mt140 {
    margin-top: 140px; }
  body .__mt160 {
    margin-top: 160px; }
  body .__mt180 {
    margin-top: 180px; }
  body .__mt200 {
    margin-top: 200px; }
  body .__mt220 {
    margin-top: 220px; }
  body .__mt240 {
    margin-top: 240px; }
  body .w_mode {
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl; }
  body a.page_top {
    position: fixed;
    bottom: 50px;
    right: 35px;
    z-index: 5;
    display: block;
    width: 60px;
    height: 60px;
    background: none;
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s; }
    body a.page_top:hover {
      opacity: .7; }
    @media (max-width: 480px) {
      body a.page_top {
        display: none; } }
    body a.page_top p.pagetop {
      width: 30px;
      height: 30px;
      border: 10px solid;
      border-color: #d60039 #d60039 transparent transparent;
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
      position: relative;
      top: 20px;
      left: 4px; }

/* 骨組み */
body {
  /*-----------header ham&sp_nav----------*/
  /*-----------menu 横から----------*/
  /*.open .ham_menu
    transform: translateX( 0)!important*/
  /*-----------header clone start----------*/ }
  body .site-header {
    width: 100%;
    height: 80px;
    background: rgba(32, 31, 30, 0.85);
    position: fixed;
    top: 0;
    z-index: 4;
    min-width: 1024px; }
    @media (max-width: 768px) {
      body .site-header {
        min-width: initial;
        height: 50px;
        background: #3f3f3f; } }
    body .site-header .header_inner {
      width: 100%;
      height: 100%;
      padding: 0 3%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      @media (max-width: 768px) {
        body .site-header .header_inner {
          padding: 0; } }
      body .site-header .header_inner .header_left {
        width: 241px; }
        @media (max-width: 768px) {
          body .site-header .header_inner .header_left {
            width: 172px;
            padding-left: 3%;
            -webkit-box-sizing: border-box;
            box-sizing: border-box; } }
        body .site-header .header_inner .header_left h1 {
          width: 100%; }
          body .site-header .header_inner .header_left h1 a {
            display: block;
            -webkit-transition: .5s;
            -o-transition: .5s;
            transition: .5s; }
            body .site-header .header_inner .header_left h1 a:hover {
              opacity: .6; }
            body .site-header .header_inner .header_left h1 a img {
              width: 100%; }
      body .site-header .header_inner .header_right {
        width: 65%; }
        @media (max-width: 768px) {
          body .site-header .header_inner .header_right {
            width: 100px;
            height: 50px;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex; } }
        body .site-header .header_inner .header_right nav.navigation {
          width: 100%; }
          @media (max-width: 768px) {
            body .site-header .header_inner .header_right nav.navigation {
              display: none; } }
          body .site-header .header_inner .header_right nav.navigation ul {
            width: 100%;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: reverse;
            -ms-flex-flow: row-reverse nowrap;
            flex-flow: row-reverse nowrap;
            -webkit-box-pack: start;
            -ms-flex-pack: start;
            justify-content: flex-start;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center; }
            body .site-header .header_inner .header_right nav.navigation ul li {
              margin-left: 8%;
              text-align: center; }
              @media (max-width: 1024px) {
                body .site-header .header_inner .header_right nav.navigation ul li {
                  margin-left: 6%; } }
              body .site-header .header_inner .header_right nav.navigation ul li a {
                font-size: 15px;
                font-size: 1.5rem;
                display: inline-block;
                -webkit-transform: scale(1.1, 1);
                -ms-transform: scale(1.1, 1);
                transform: scale(1.1, 1);
                color: #fff;
                font-weight: 400;
                -webkit-transition: .5s;
                -o-transition: .5s;
                transition: .5s; }
                body .site-header .header_inner .header_right nav.navigation ul li a:hover {
                  color: #d60039; }
                  body .site-header .header_inner .header_right nav.navigation ul li a:hover span {
                    color: #d60039; }
                body .site-header .header_inner .header_right nav.navigation ul li a span {
                  font-size: 10px;
                  font-size: 1rem;
                  color: #fff;
                  display: block;
                  letter-spacing: -.05em;
                  padding-top: 5px;
                  -webkit-transition: .5s;
                  -o-transition: .5s;
                  transition: .5s; }
                body .site-header .header_inner .header_right nav.navigation ul li a span.s_wide {
                  letter-spacing: -.2em; }
        body .site-header .header_inner .header_right .sp_tel {
          display: none; }
          @media (max-width: 768px) {
            body .site-header .header_inner .header_right .sp_tel {
              display: block;
              width: 50px;
              height: 100%;
              background: #d60039; }
              body .site-header .header_inner .header_right .sp_tel a {
                display: block;
                text-align: center;
                padding-top: 8px;
                -webkit-box-sizing: border-box;
                box-sizing: border-box; }
                body .site-header .header_inner .header_right .sp_tel a img {
                  width: 19px; } }
        body .site-header .header_inner .header_right .sp_nav {
          display: none; }
          @media (max-width: 768px) {
            body .site-header .header_inner .header_right .sp_nav {
              width: 50px;
              height: 100%;
              background: #111;
              display: block;
              position: relative; } }
          body .site-header .header_inner .header_right .sp_nav #ham_nav {
            display: block;
            width: 100%;
            height: 100%;
            cursor: pointer;
            padding: 12px 9px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
            position: absolute;
            top: 3px;
            z-index: 3; }
            body .site-header .header_inner .header_right .sp_nav #ham_nav div {
              position: relative;
              width: 100%;
              height: 100%; }
              body .site-header .header_inner .header_right .sp_nav #ham_nav div span {
                display: block;
                height: 2px;
                background: #fff;
                position: absolute;
                width: 100%;
                left: 0;
                -webkit-transition: 0.5s ease-in-out;
                -moz-transition: 0.5s ease-in-out;
                -o-transition: 0.5s ease-in-out;
                transition: 0.5s ease-in-out; }
                body .site-header .header_inner .header_right .sp_nav #ham_nav div span:nth-child(1) {
                  top: 0px; }
                body .site-header .header_inner .header_right .sp_nav #ham_nav div span:nth-child(2) {
                  top: 10px; }
                body .site-header .header_inner .header_right .sp_nav #ham_nav div span:nth-child(3) {
                  top: 20px; }
      body .site-header .header_inner .ham_menu {
        display: none;
        position: absolute;
        top: 50px;
        left: 0;
        width: 100%;
        height: calc( 100vh - 50px);
        background: rgba(20, 20, 20, 0.84);
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        z-index: 52; }
        body .site-header .header_inner .ham_menu ul.accordion {
          display: block;
          margin: 0 auto;
          width: 100%;
          padding: 10px 0 20px; }
          body .site-header .header_inner .ham_menu ul.accordion li.menu {
            width: 100%;
            padding: 12px 5% 0;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
            text-align: center;
            position: relative; }
            body .site-header .header_inner .ham_menu ul.accordion li.menu:after {
              content: '';
              display: inline-block;
              position: absolute;
              right: 12%;
              top: 19px; }
            body .site-header .header_inner .ham_menu ul.accordion li.menu a {
              font-size: 18px;
              font-size: 1.8rem;
              display: block;
              color: #fff;
              padding: 15px 0;
              border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
              body .site-header .header_inner .ham_menu ul.accordion li.menu a span {
                font-size: 14px;
                font-size: 1.4rem;
                display: block;
                margin-top: 5px; }
          body .site-header .header_inner .ham_menu ul.accordion li.slide {
            opacity: 0; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(1).move {
              -webkit-animation: sp_menu .5s ease .5s 1 normal forwards;
              animation: sp_menu .5s ease .5s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(2).move {
              -webkit-animation: sp_menu .5s ease .7s 1 normal forwards;
              animation: sp_menu .5s ease .7s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(3).move {
              -webkit-animation: sp_menu .5s ease .9s 1 normal forwards;
              animation: sp_menu .5s ease .9s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(4).move {
              -webkit-animation: sp_menu .5s ease 1.1s 1 normal forwards;
              animation: sp_menu .5s ease 1.1s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(5).move {
              -webkit-animation: sp_menu .5s ease 1.3s 1 normal forwards;
              animation: sp_menu .5s ease 1.3s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(6).move {
              -webkit-animation: sp_menu .5s ease 1.5s 1 normal forwards;
              animation: sp_menu .5s ease 1.5s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(7).move {
              -webkit-animation: sp_menu .5s ease 1.7s 1 normal forwards;
              animation: sp_menu .5s ease 1.7s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(8).move {
              -webkit-animation: sp_menu .5s ease 1.9s 1 normal forwards;
              animation: sp_menu .5s ease 1.9s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(9).move {
              -webkit-animation: sp_menu .5s ease 2.1s 1 normal forwards;
              animation: sp_menu .5s ease 2.1s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(10).move {
              -webkit-animation: sp_menu .5s ease 2.3s 1 normal forwards;
              animation: sp_menu .5s ease 2.3s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(11).move {
              -webkit-animation: sp_menu .5s ease 2.5s 1 normal forwards;
              animation: sp_menu .5s ease 2.5s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(12).move {
              -webkit-animation: sp_menu .5s ease 2.7s 1 normal forwards;
              animation: sp_menu .5s ease 2.7s 1 normal forwards; }
            body .site-header .header_inner .ham_menu ul.accordion li.slide:nth-child(13).move {
              -webkit-animation: sp_menu .5s ease 2.9s 1 normal forwards;
              animation: sp_menu .5s ease 2.9s 1 normal forwards; }
  body .open #ham_nav div span:nth-child(1) {
    top: 10px !important;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg); }
  body .open #ham_nav div span:nth-child(2) {
    width: 0 !important;
    left: 50% !important; }
  body .open #ham_nav div span:nth-child(3) {
    top: 10px !important;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg); }
  body .site-footer {
    width: 100%;
    background: url("../img/home/footer_bg_@1.5x.jpg") no-repeat;
    background-size: cover;
    background-position: center top;
    padding: 160px 0 30px;
    position: relative;
    z-index: 0;
    margin-top: -70px;
    min-width: 1024px; }
    @media (max-width: 768px) {
      body .site-footer {
        min-width: initial;
        background-position: left top;
        padding: 140px 0 30px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body .site-footer {
      background: url("../img/home/footer_bg_sp02_@2x.jpg") no-repeat;
      background-size: cover;
      background-position: center top;
      margin-top: -50px; } }
    body .site-footer .footer_inner {
      width: 84%;
      max-width: 1400px;
      margin: 0 auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      @media (max-width: 768px) {
        body .site-footer .footer_inner {
          width: 100%;
          position: relative; } }
      body .site-footer .footer_inner .footer_intro {
        width: 32%; }
        @media (max-width: 1200px) {
          body .site-footer .footer_inner .footer_intro {
            width: 32%; } }
  @media (max-width: 1200px) and (max-width: 768px) {
    body .site-footer .footer_inner .footer_intro {
      width: 100%;
      padding-left: 30%; } }
  @media (max-width: 1200px) and (max-width: 768px) and (max-width: 480px) {
    body .site-footer .footer_inner .footer_intro {
      padding-left: 0; } }
        body .site-footer .footer_inner .footer_intro .footer_logo {
          width: 294px; }
          @media (max-width: 480px) {
            body .site-footer .footer_inner .footer_intro .footer_logo {
              width: 75%;
              margin: 0 auto; } }
          body .site-footer .footer_inner .footer_intro .footer_logo a {
            display: block;
            width: 100%; }
            body .site-footer .footer_inner .footer_intro .footer_logo a:hover img,
            body .site-footer .footer_inner .footer_intro .footer_logo a:hover span {
              opacity: .6; }
            body .site-footer .footer_inner .footer_intro .footer_logo a img {
              width: 100%;
              -webkit-transition: .4s;
              -o-transition: .4s;
              transition: .4s; }
            body .site-footer .footer_inner .footer_intro .footer_logo a span {
              font-size: 18px;
              font-size: 1.8rem;
              color: #fff;
              display: block;
              margin-top: 8px;
              -webkit-transition: .4s;
              -o-transition: .4s;
              transition: .4s; }
              @media (max-width: 480px) {
                body .site-footer .footer_inner .footer_intro .footer_logo a span {
                  font-size: 16px;
                  font-size: 1.6rem; } }
        body .site-footer .footer_inner .footer_intro .footer_contents {
          width: 100%;
          margin-top: 55px; }
          @media (max-width: 480px) {
            body .site-footer .footer_inner .footer_intro .footer_contents {
              padding-left: 5%;
              -webkit-box-sizing: border-box;
              box-sizing: border-box;
              margin-top: 100px; } }
          body .site-footer .footer_inner .footer_intro .footer_contents .footer_content {
            width: 100%;
            color: #fff; }
            body .site-footer .footer_inner .footer_intro .footer_contents .footer_content + .footer_content {
              margin-top: 25px; }
              @media (max-width: 768px) {
                body .site-footer .footer_inner .footer_intro .footer_contents .footer_content + .footer_content {
                  margin-top: 40px; } }
            body .site-footer .footer_inner .footer_intro .footer_contents .footer_content .name {
              font-size: 16px;
              font-size: 1.6rem;
              line-height: 1.2; }
            body .site-footer .footer_inner .footer_intro .footer_contents .footer_content .name02 {
              letter-spacing: -.05em; }
              @media (max-width: 480px) {
                body .site-footer .footer_inner .footer_intro .footer_contents .footer_content .name02 {
                  letter-spacing: -.1em; } }
            body .site-footer .footer_inner .footer_intro .footer_contents .footer_content address {
              font-size: 14px;
              font-size: 1.4rem;
              margin-top: 5px;
              line-height: 1.5; }
              @media (max-width: 480px) {
                body .site-footer .footer_inner .footer_intro .footer_contents .footer_content address {
                  margin-top: 10px; } }
      body .site-footer .footer_inner .footer_nav {
        width: 56%; }
        @media (max-width: 768px) {
          body .site-footer .footer_inner .footer_nav {
            display: none; } }
        body .site-footer .footer_inner .footer_nav ul {
          width: 100%;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
          flex-flow: row wrap;
          -webkit-box-pack: justify;
          -ms-flex-pack: justify;
          justify-content: space-between;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          margin-top: -35px; }
          body .site-footer .footer_inner .footer_nav ul li {
            width: calc(1 / 3 * 100%);
            margin-top: 40px; }
            body .site-footer .footer_inner .footer_nav ul li a {
              font-size: 16px;
              font-size: 1.6rem;
              -webkit-transform: scale(1.1, 1);
              -ms-transform: scale(1.1, 1);
              transform: scale(1.1, 1);
              -webkit-transform-origin: top left;
              -ms-transform-origin: top left;
              transform-origin: top left;
              color: #fff;
              display: block;
              -webkit-transition: .3s;
              -o-transition: .3s;
              transition: .3s;
              letter-spacing: .05em;
              will-change: transform; }
              body .site-footer .footer_inner .footer_nav ul li a:hover {
                color: #d60039;
                -webkit-transform: scale(1.1, 1);
                -ms-transform: scale(1.1, 1);
                transform: scale(1.1, 1); }
                body .site-footer .footer_inner .footer_nav ul li a:hover span.line {
                  background: #d60039;
                  -webkit-transform: translateX(10px);
                  -ms-transform: translateX(10px);
                  transform: translateX(10px); }
              body .site-footer .footer_inner .footer_nav ul li a span {
                font-size: 12px;
                font-size: 1.2rem;
                margin-top: 5px;
                display: block;
                -webkit-transform: scale(1, 1);
                -ms-transform: scale(1, 1);
                transform: scale(1, 1);
                letter-spacing: 0; }
                body .site-footer .footer_inner .footer_nav ul li a span.s_wide {
                  letter-spacing: -.1em; }
              body .site-footer .footer_inner .footer_nav ul li a span.line {
                width: 40px;
                height: 1px;
                background: #fff;
                display: inline-block;
                margin-left: 8%;
                -webkit-transition: .3s;
                -o-transition: .3s;
                transition: .3s; }
                @media (max-width: 1200px) {
                  body .site-footer .footer_inner .footer_nav ul li a span.line {
                    display: none; } }
    body .site-footer small {
      font-size: 12px;
      font-size: 1.2rem;
      color: #fff;
      width: 84%;
      margin: 20px auto 0;
      display: block;
      text-align: right;
      max-width: 1400px; }
      @media (max-width: 480px) {
        body .site-footer small {
          max-width: initial;
          width: 100%;
          text-align: center;
          margin: 70px 0 0; } }

body {
  width: 100%;
  min-width: 750px;
  font-size: 15px;
  font-size: 1.5rem;
  color: #454545;
  -webkit-text-size-adjust: 100%;
  background: #fff; }
  @media (max-width: 480px) {
    body {
      min-width: 100%;
      -webkit-overflow-scrolling: touch; } }
  body p {
    font-size: 14px;
    font-size: 1.4rem;
    color: #454545;
    line-height: 2;
    letter-spacing: .05em;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    text-align: justify;
    text-justify: inter-ideograph;
    word-break: normal;
    line-break: strict; }
    @media (max-width: 480px) {
      body p {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.8; } }
  body .internal__title_box {
    width: 100%;
    text-align: center; }
  body .internal__title_w {
    text-align: center; }
    body .internal__title_w span.alphabet {
      font-size: 26px;
      font-size: 2.6rem;
      display: inline-block;
      font-weight: 500;
      color: #fff;
      overflow: hidden;
      -webkit-transform: scale(1.2, 1);
      -ms-transform: scale(1.2, 1);
      transform: scale(1.2, 1); }
      @media (max-width: 768px) {
        body .internal__title_w span.alphabet {
          font-size: 22px;
          font-size: 2.2rem; } }
      body .internal__title_w span.alphabet:first-letter {
        font-size: 36px;
        font-size: 3.6rem;
        color: #d60039; }
        @media (max-width: 768px) {
          body .internal__title_w span.alphabet:first-letter {
            font-size: 32px;
            font-size: 3.2rem; } }
    body .internal__title_w span.japanese {
      font-size: 14px;
      font-size: 1.4rem;
      color: #fff;
      display: block;
      -webkit-transform: scale(1, 1);
      -ms-transform: scale(1, 1);
      transform: scale(1, 1);
      margin-top: 5px; }
  body .internal__title {
    text-align: center; }
    body .internal__title span.alphabet {
      font-size: 26px;
      font-size: 2.6rem;
      display: inline-block;
      color: #252525;
      font-weight: 500;
      -webkit-transform: scale(1.2, 1);
      -ms-transform: scale(1.2, 1);
      transform: scale(1.2, 1); }
      @media (max-width: 768px) {
        body .internal__title span.alphabet {
          font-size: 22px;
          font-size: 2.2rem; } }
      body .internal__title span.alphabet:first-letter {
        font-size: 36px;
        font-size: 3.6rem;
        color: #d60039; }
        @media (max-width: 768px) {
          body .internal__title span.alphabet:first-letter {
            font-size: 32px;
            font-size: 3.2rem; } }
    body .internal__title span.japanese {
      font-size: 14px;
      font-size: 1.4rem;
      color: #252525;
      display: block;
      -webkit-transform: scale(1, 1);
      -ms-transform: scale(1, 1);
      transform: scale(1, 1);
      margin-top: 5px; }
  body .internal__morebtn {
    width: 320px;
    height: 65px;
    margin: 0 auto;
    text-align: center; }
    @media (max-width: 480px) {
      body .internal__morebtn {
        width: 80%; } }
    body .internal__morebtn a {
      font-size: 16px;
      font-size: 1.6rem;
      color: #fff;
      font-weight: 400;
      -webkit-transform: scale(1.1, 1);
      -ms-transform: scale(1.1, 1);
      transform: scale(1.1, 1);
      width: 100%;
      height: 100%;
      display: inline-block;
      border: 1px solid #111;
      background: #111;
      line-height: 65px;
      letter-spacing: 1px;
      padding-left: 80px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      -webkit-transition: .3s;
      -o-transition: .3s;
      transition: .3s;
      position: relative; }
      @media (max-width: 480px) {
        body .internal__morebtn a {
          font-size: 15px;
          font-size: 1.5rem; } }
      body .internal__morebtn a:hover {
        color: #111; }
        body .internal__morebtn a:hover::before {
          -webkit-transform-origin: left top;
          -ms-transform-origin: left top;
          transform-origin: left top;
          -webkit-transform: scale(1, 1);
          -ms-transform: scale(1, 1);
          transform: scale(1, 1); }
        body .internal__morebtn a:hover::after {
          background: #111;
          -webkit-transform: translateX(15px);
          -ms-transform: translateX(15px);
          transform: translateX(15px); }
      body .internal__morebtn a::after {
        content: '';
        display: inline-block;
        width: 30px;
        height: 1px;
        background: #fff;
        margin-left: 15px;
        position: relative;
        top: -6px;
        -webkit-transition: .3s;
        -o-transition: .3s;
        transition: .3s; }
      body .internal__morebtn a::before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: -1;
        background: #fff;
        -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
        transform-origin: right top;
        -webkit-transform: scale(0, 1);
        -ms-transform: scale(0, 1);
        transform: scale(0, 1);
        -webkit-transition: -webkit-transform .3s;
        transition: -webkit-transform .3s;
        -o-transition: transform .3s;
        transition: transform .3s;
        transition: transform .3s, -webkit-transform .3s; }
  body .internal__morebtn_com {
    width: 320px;
    height: 65px;
    margin: 0 auto;
    text-align: center; }
    @media (max-width: 768px) {
      body .internal__morebtn_com {
        width: 280px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body .internal__morebtn_com {
      height: 50px;
      width: 260px; } }
    body .internal__morebtn_com a {
      font-size: 16px;
      font-size: 1.6rem;
      color: #fff;
      font-weight: 400;
      -webkit-transform: scale(1.1, 1);
      -ms-transform: scale(1.1, 1);
      transform: scale(1.1, 1);
      width: 100%;
      height: 100%;
      display: inline-block;
      border: 1px solid #111;
      background: #111;
      line-height: 65px;
      letter-spacing: 1px;
      padding-left: 80px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      -webkit-transition: .3s;
      -o-transition: .3s;
      transition: .3s;
      position: relative; }
      @media (max-width: 480px) {
        body .internal__morebtn_com a {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 50px; } }
      body .internal__morebtn_com a:hover {
        color: #111; }
        body .internal__morebtn_com a:hover::before {
          -webkit-transform-origin: left top;
          -ms-transform-origin: left top;
          transform-origin: left top;
          -webkit-transform: scale(1, 1);
          -ms-transform: scale(1, 1);
          transform: scale(1, 1); }
        body .internal__morebtn_com a:hover::after {
          background: #111;
          -webkit-transform: translateX(15px);
          -ms-transform: translateX(15px);
          transform: translateX(15px); }
      body .internal__morebtn_com a::after {
        content: '';
        display: inline-block;
        width: 30px;
        height: 1px;
        background: #fff;
        margin-left: 15px;
        position: relative;
        top: -6px;
        -webkit-transition: .3s;
        -o-transition: .3s;
        transition: .3s; }
      body .internal__morebtn_com a::before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: -1;
        background: #fff;
        -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
        transform-origin: right top;
        -webkit-transform: scale(0, 1);
        -ms-transform: scale(0, 1);
        transform: scale(0, 1);
        -webkit-transition: -webkit-transform .3s;
        transition: -webkit-transform .3s;
        -o-transition: transform .3s;
        transition: transform .3s;
        transition: transform .3s, -webkit-transform .3s; }
  body .internal__sub_title {
    font-size: 20px;
    font-size: 2rem;
    font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
    color: #454545;
    position: relative;
    margin-left: 33px; }
    @media (max-width: 480px) {
      body .internal__sub_title {
        font-size: 16px;
        font-size: 1.6rem;
        margin-left: 26px;
        line-height: 1.5; } }
    body .internal__sub_title::before {
      content: '';
      display: inline-block;
      width: 20px;
      height: 20px;
      background: #d60039;
      position: absolute;
      top: 1px;
      left: -33px; }
      @media (max-width: 480px) {
        body .internal__sub_title::before {
          width: 15px;
          height: 15px;
          top: 5px;
          left: -25px; } }
    body .internal__sub_title::after {
      content: '';
      display: inline-block;
      width: 17px;
      height: 17px;
      background: #d60039;
      border: 2px solid #fff;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      position: absolute;
      top: -6px;
      left: -23px; }
      @media (max-width: 480px) {
        body .internal__sub_title::after {
          width: 14px;
          height: 14px;
          top: -2px;
          left: -18px; } }
  body .internal__contactArea {
    width: 100%;
    position: relative;
    z-index: 1; }
  body .internal__contactInner {
    width: 990px;
    margin: 0 auto; }
    @media (max-width: 1024px) {
      body .internal__contactInner {
        width: 80%; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body .internal__contactInner {
      width: 90%; } }
  body .internal__contactBtn {
    width: 100%;
    height: 235px; }
    @media (max-width: 480px) {
      body .internal__contactBtn {
        height: 180px; } }
    body .internal__contactBtn a {
      display: inline-block;
      width: 100%;
      height: 100%;
      background: #111;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      -webkit-transition: .3s;
      -o-transition: .3s;
      transition: .3s;
      position: relative; }
      body .internal__contactBtn a:hover::after {
        background: #fff;
        -webkit-transform: translateX(25px);
        -ms-transform: translateX(25px);
        transform: translateX(25px); }
      body .internal__contactBtn a:hover::before {
        -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
        transform-origin: left top;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        transform: scale(1, 1); }
      body .internal__contactBtn a:hover span.textBox span.alphabet:first-letter {
        color: #fff; }
      body .internal__contactBtn a::after {
        content: '';
        display: inline-block;
        width: 100px;
        height: 1px;
        background: #fff;
        position: absolute;
        top: 50%;
        -webkit-transform: translatey(-50%);
        -ms-transform: translatey(-50%);
        transform: translatey(-50%);
        right: 10%;
        -webkit-transition: -webkit-transform .3s;
        transition: -webkit-transform .3s;
        -o-transition: transform .3s;
        transition: transform .3s;
        transition: transform .3s, -webkit-transform .3s; }
        @media (max-width: 480px) {
          body .internal__contactBtn a::after {
            width: 50px; } }
      body .internal__contactBtn a::before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 0;
        background: #d60039;
        -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
        transform-origin: right top;
        -webkit-transform: scale(0, 1);
        -ms-transform: scale(0, 1);
        transform: scale(0, 1);
        -webkit-transition: -webkit-transform .3s;
        transition: -webkit-transform .3s;
        -o-transition: transform .3s;
        transition: transform .3s;
        transition: transform .3s, -webkit-transform .3s; }
      body .internal__contactBtn a span.textBox {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        right: 30%; }
        @media (max-width: 480px) {
          body .internal__contactBtn a span.textBox {
            right: 50%; } }
        body .internal__contactBtn a span.textBox span.alphabet {
          font-size: 33px;
          font-size: 3.3rem;
          display: inline-block;
          -webkit-transform: scale(1.2, 1);
          -ms-transform: scale(1.2, 1);
          transform: scale(1.2, 1);
          color: #fff;
          line-height: 1;
          -webkit-transition: .3s;
          -o-transition: .3s;
          transition: .3s; }
          @media (max-width: 480px) {
            body .internal__contactBtn a span.textBox span.alphabet {
              font-size: 26px;
              font-size: 2.6rem; } }
          body .internal__contactBtn a span.textBox span.alphabet:first-letter {
            font-size: 46px;
            font-size: 4.6rem;
            color: #d60039; }
            @media (max-width: 480px) {
              body .internal__contactBtn a span.textBox span.alphabet:first-letter {
                font-size: 38px;
                font-size: 3.8rem; } }
        body .internal__contactBtn a span.textBox span.japanese {
          font-size: 20px;
          font-size: 2rem;
          margin-top: 5px;
          display: block;
          color: #fff;
          line-height: 1;
          margin-left: -10px; }
          @media (max-width: 480px) {
            body .internal__contactBtn a span.textBox span.japanese {
              font-size: 16px;
              font-size: 1.6rem;
              margin-left: -5px; } }
  body .wrap {
    height: 0px; }
    body .wrap .color {
      position: fixed;
      Z-index: 60;
      left: 0;
      top: 0;
      width: 100vw;
      height: 100%; }
      @media (max-width: 1024px) {
        body .wrap .color {
          display: none; } }
      body .wrap .color .block {
        position: absolute;
        top: 0;
        width: 0;
        height: 100%;
        z-index: -1;
        -webkit-transition: -webkit-transform 1.5s 0.7s cubic-bezier(0, 0.7, 0.5, 1);
        transition: -webkit-transform 1.5s 0.7s cubic-bezier(0, 0.7, 0.5, 1);
        -o-transition: transform 1.5s 0.7s cubic-bezier(0, 0.7, 0.5, 1);
        transition: transform 1.5s 0.7s cubic-bezier(0, 0.7, 0.5, 1);
        transition: transform 1.5s 0.7s cubic-bezier(0, 0.7, 0.5, 1), -webkit-transform 1.5s 0.7s cubic-bezier(0, 0.7, 0.5, 1); }
      body .wrap .color .block.left {
        left: 0; }
      body .wrap .color .block.right {
        right: 0; }
      body .wrap .color .block.left::after,
      body .wrap .color .block.right::after {
        content: '';
        position: absolute;
        width: 0;
        height: 0;
        border-style: solid;
        border-color: transparent; }
      body .wrap .color .block.left::after {
        left: 0;
        bottom: 0;
        border-width: 100vw 0 0 100vw;
        border-left-color: #d60039; }
      body .wrap .color .block.right::after {
        right: 0;
        top: 0;
        border-width: 0 100vw 100vw 0;
        border-right-color: #d60039; }

body.show .block.left {
  -webkit-transform: translateX(-100vw);
  -ms-transform: translateX(-100vw);
  transform: translateX(-100vw); }

body.show .block.right {
  -webkit-transform: translateX(100vw);
  -ms-transform: translateX(100vw);
  transform: translateX(100vw); }

/*-----------lower start----------*/
body.lower .contact {
  /*selectを囲むdivのクラス*/ }
  body.lower .contact__site-container {
    width: 100%; }
  body.lower .contact__content {
    width: 100%;
    padding: 100px 0 180px; }
    @media (max-width: 480px) {
      body.lower .contact__content {
        padding: 80px 0 100px; } }
  body.lower .contact__contentInner {
    width: 900px;
    margin: 0 auto; }
    @media (max-width: 768px) {
      body.lower .contact__contentInner {
        width: 100%;
        padding: 0 5%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; } }
  body.lower .contact__tableArea {
    width: 100%;
    margin-top: 90px; }
    @media (max-width: 480px) {
      body.lower .contact__tableArea {
        margin-top: 40px; } }
  body.lower .contact__mostcaption {
    font-size: 15px;
    font-size: 1.5rem;
    color: #d60039;
    font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
    font-weight: bold;
    margin-bottom: 10px; }
    @media (max-width: 480px) {
      body.lower .contact__mostcaption {
        font-size: 13px;
        font-size: 1.3rem; } }
  body.lower .contact__mailformpro {
    width: 100%;
    margin: 0 !important;
    padding: 0 !important; }
  body.lower .contact__mailform {
    width: 100%;
    margin: 0 auto;
    color: #454545;
    font-size: 15px;
    font-size: 1.5rem;
    font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
    table-layout: fixed; }
    @media (max-width: 480px) {
      body.lower .contact__mailform {
        width: 100% !important;
        padding: 0 7% !important;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 14px;
        font-size: 1.4rem;
        table-layout: fixed; } }
    body.lower .contact__mailform tr {
      width: 100%;
      border-bottom: 1px solid #ccc; }
      body.lower .contact__mailform tr:first-child {
        border-top: 1px solid #ccc; }
  body.lower .contact__title_area {
    width: 36%;
    line-height: 1.2;
    text-indent: -2.4em;
    padding-left: 2.4em;
    vertical-align: middle !important;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-weight: bold; }
    @media (max-width: 480px) {
      body.lower .contact__title_area {
        display: block;
        width: 100%;
        padding: 15px 0 0 2.4em;
        font-weight: normal; }
        body.lower .contact__title_area br {
          display: none; } }
    body.lower .contact__title_area span.must_01 {
      font-size: 12px;
      font-size: 1.2rem;
      color: #fff;
      padding: 1px 4px 2px;
      background: #d60039;
      border-radius: 3px;
      margin-right: 6px;
      position: relative;
      top: -2px; }
      @media (max-width: 480px) {
        body.lower .contact__title_area span.must_01 {
          font-size: 11px;
          font-size: 1.1rem;
          padding: 1px 3px; } }
  body.lower .contact__title_indents {
    width: 36%;
    line-height: 1.2;
    padding-left: 2.3em;
    vertical-align: middle !important;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media (max-width: 480px) {
      body.lower .contact__title_indents {
        display: block;
        width: 100%;
        padding: 15px 0 0;
        padding-left: 0; }
        body.lower .contact__title_indents br {
          display: none; } }
  body.lower .contact__entry_area {
    width: 64%;
    overflow: hidden;
    padding: 20px 0;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media (max-width: 480px) {
      body.lower .contact__entry_area {
        width: 100% !important;
        display: block;
        padding: 10px 0 13px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; } }
    body.lower .contact__entry_area input::-webkit-input-placeholder {
      color: #c3c3c3;
      font-size: 15px; }
      @media (max-width: 480px) {
        body.lower .contact__entry_area input::-webkit-input-placeholder {
          font-size: 14px;
          font-size: 1.4rem; } }
    body.lower .contact__entry_area input:-moz-placeholder {
      color: #c3c3c3;
      font-size: 15px; }
      @media (max-width: 480px) {
        body.lower .contact__entry_area input:-moz-placeholder {
          font-size: 14px;
          font-size: 1.4rem; } }
    body.lower .contact__entry_area input::-moz-placeholder {
      color: #c3c3c3;
      font-size: 15px; }
      @media (max-width: 480px) {
        body.lower .contact__entry_area input::-moz-placeholder {
          font-size: 14px;
          font-size: 1.4rem; } }
    body.lower .contact__entry_area input:-ms-input-placeholder {
      color: #c3c3c3;
      font-size: 15px; }
      @media (max-width: 480px) {
        body.lower .contact__entry_area input:-ms-input-placeholder {
          font-size: 14px;
          font-size: 1.4rem; } }
    body.lower .contact__entry_area ol span.l_space {
      display: inline-block;
      padding: 0 8px 0 6px; }
    body.lower .contact__entry_area textarea.contact__text_area {
      width: 100% !important;
      height: calc(1.3em * 10);
      line-height: 1.3;
      padding: 15px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      margin: 0; }
      @media (max-width: 480px) {
        body.lower .contact__entry_area textarea.contact__text_area {
          padding: 5px;
          width: 100% !important; } }
      body.lower .contact__entry_area textarea.contact__text_area::-webkit-input-placeholder {
        color: #ccc; }
      body.lower .contact__entry_area textarea.contact__text_area:-ms-input-placeholder {
        color: #ccc; }
      body.lower .contact__entry_area textarea.contact__text_area::-ms-input-placeholder {
        color: #ccc; }
      body.lower .contact__entry_area textarea.contact__text_area::placeholder {
        color: #ccc; }
  body.lower .contact__dis_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  body.lower .contact__harf_box_01 {
    width: 48% !important;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0; }
  body.lower .contact__harf_box_02 {
    width: 48% !important;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0; }
  body.lower .contact__harf_box_03 {
    width: 84%;
    margin: 0; }
    @media (max-width: 480px) {
      body.lower .contact__harf_box_03 {
        width: 100%; } }
  body.lower .contact__all_box {
    width: 100% !important; }
  body.lower .contact__harf_box_01, body.lower .contact__harf_box_02, body.lower .contact__harf_box_03, body.lower .contact__all_box {
    padding: 7px 0 7px 10px;
    line-height: 1.8;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 0; }
  body.lower .contact__harf_box_01, body.lower .contact__harf_box_02, body.lower .contact__harf_box_03, body.lower .contact__all_box, body.lower .contact__text_area {
    border: none;
    background: #f2f2f2;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 0 !important;
    margin: 0; }
  body.lower .contact__t_space {
    padding: 14px 0 0 10px;
    display: inline-block; }
  body.lower .contact__h_space + .contact__h_space {
    margin-top: 10px; }
  body.lower .contact__h_space:nth-child(1) span {
    display: inline-block;
    margin-right: 3px; }
  body.lower .contact__h_space:nth-child(2) span, body.lower .contact__h_space:nth-child(3) span {
    display: inline-block;
    margin-right: 7px; }
    @media (max-width: 480px) {
      body.lower .contact__h_space:nth-child(2) span, body.lower .contact__h_space:nth-child(3) span {
        margin-right: 0;
        padding: 6px 0 4px; } }
  body.lower .contact__h_space01 {
    padding: 0; }
    body.lower .contact__h_space01 span {
      margin-right: 4px; }
  body.lower .contact__wide_space_i {
    margin-right: 15px !important; }
    @media (max-width: 480px) {
      body.lower .contact__wide_space_i {
        vertical-align: middle;
        margin-right: 5px;
        position: relative;
        top: -.05em; } }
  @media (max-width: 480px) and (max-width: 480px) {
    body.lower .contact__wide_space_i {
      top: -.1em; } }
  @media (max-width: 480px) {
    body.lower .contact__wide_space {
      vertical-align: middle;
      margin-right: 5px;
      position: relative;
      top: -.05em; } }
  body.lower .contact__buttons {
    margin-top: 50px;
    text-align: center; }
    body.lower .contact__buttons .button_deco {
      background: #d60039;
      padding: 8px 34px;
      border: 1px solid #d60039;
      color: #fff;
      -webkit-transition: .7s;
      -o-transition: .7s;
      transition: .7s; }
      @media (max-width: 480px) {
        body.lower .contact__buttons .button_deco {
          padding: 5px 10px; } }
  @media (max-width: 480px) and (max-width: 320px) {
    body.lower .contact__buttons .button_deco {
      font-size: 14px;
      font-size: 1.4rem; } }
    body.lower .contact__buttons .button_deco:hover {
      color: #d60039;
      background: #fff; }
  body.lower .contact__select_box {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none !important;
    margin: 0;
    height: 44px !important;
    background: transparent !important;
    color: #454545 !important;
    position: relative;
    z-index: 1;
    padding: 0 30px 0 5px;
    border: none;
    width: 100% !important;
    max-width: 100% !important;
    line-height: 2; }
    @media (max-width: 480px) {
      body.lower .contact__select_box {
        width: 12.5em; } }
    body.lower .contact__select_box option {
      display: inline-block;
      padding: 0 !important; }
  body.lower .contact__select_box::-ms-expand {
    display: none; }
  body.lower .contact__select_box02 {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none !important;
    padding: 0;
    margin: 0;
    height: 40px !important;
    background: transparent !important;
    color: #454545 !important;
    position: relative;
    z-index: 1;
    padding: 0 30px 0 0px;
    border: 1px solid #ccc !important;
    width: 7em;
    max-width: 100% !important;
    line-height: 2; }
    @media (max-width: 320px) {
      body.lower .contact__select_box02 {
        width: 5.5em;
        padding: 0 30px 0 10px; } }
  body.lower .contact__select_box02::-ms-expand {
    display: none; }
  body.lower .contact__select_box03 {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none !important;
    padding: 0;
    margin: 0;
    margin-left: 3px;
    height: 40px !important;
    background: transparent !important;
    color: #454545 !important;
    position: relative;
    z-index: 1;
    padding: 0 30px 0 10px;
    border: 1px solid #ccc !important;
    width: 5em;
    max-width: 100% !important;
    line-height: 2; }
    @media (max-width: 320px) {
      body.lower .contact__select_box03 {
        width: 4.5em;
        padding: 0 30px 0 10px; } }
  body.lower .contact__select_box03::-ms-expand {
    display: none; }
  body.lower .contact__entry_box {
    position: relative;
    display: inline-block;
    background: #f2f2f2;
    width: 100%; }
    @media (max-width: 480px) {
      body.lower .contact__entry_box {
        margin-top: 10px; }
        body.lower .contact__entry_box:nth-child(1) {
          margin-top: 0; } }
  body.lower .contact__entry_box::before {
    content: '';
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    background: #c3c3c3;
    height: 100%;
    width: 40px; }
  body.lower .contact__entry_box::after {
    content: '';
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 12px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 8px 0 8px;
    border-color: #fff transparent transparent transparent; }
  body.lower .contact__text_top {
    width: 100%;
    display: inline-block;
    margin-top: 5px;
    margin-left: 1em;
    color: blue;
    text-decoration: underline;
    line-height: 1.5; }
    @media (max-width: 480px) {
      body.lower .contact__text_top {
        margin-top: 5px;
        margin-left: 0; } }
  @media (max-width: 480px) and (max-width: 320px) {
    body.lower .contact__text_top {
      font-size: 12px;
      font-size: 1.2rem; } }
  body.lower .contact__thanksArea {
    width: 100%;
    margin-top: 70px; }
    @media (max-width: 480px) {
      body.lower .contact__thanksArea {
        margin-top: 40px; } }
  body.lower .contact__thanks--title {
    font-size: 24px;
    font-size: 2.4rem;
    font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
    color: #d60039;
    font-weight: bold;
    text-align: center; }
    @media (max-width: 480px) {
      body.lower .contact__thanks--title {
        font-size: 18px;
        font-size: 1.8rem; } }
  body.lower .contact__thanks--text {
    width: 100%;
    margin-top: 40px; }
    @media (max-width: 480px) {
      body.lower .contact__thanks--text {
        margin-top: 25px; } }
    body.lower .contact__thanks--text p {
      text-align: center; }
      @media (max-width: 480px) {
        body.lower .contact__thanks--text p {
          text-align: left; } }
      body.lower .contact__thanks--text p + p {
        margin-top: 20px; }

/*-----------home start----------*/
body.home .top__main_visualArea {
  width: 100%;
  position: relative;
  min-width: 1024px; }
  @media (max-width: 768px) {
    body.home .top__main_visualArea {
      min-width: initial; } }

body.home .top__mainVisual {
  width: 100%;
  height: 100vh;
  position: relative;
  z-index: -1; }
  @media (max-width: 768px) {
    body.home .top__mainVisual {
      margin-top: 50px;
      height: calc(100vh - 50px); } }
  body.home .top__mainVisual img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }

body.home .top__main_visualCopy {
  position: absolute;
  top: 35%;
  left: 8%; }
  @media (max-width: 768px) {
    body.home .top__main_visualCopy {
      top: 26%;
      left: 5%; } }
  body.home .top__main_visualCopy.move .passing-bar:before {
    -webkit-animation: passing-bar .7s ease 1s 1 normal forwards;
    animation: passing-bar .7s ease 1s 1 normal forwards; }
  body.home .top__main_visualCopy.move .passing-text {
    -webkit-animation: passing-text 0s ease 1.5s 1 normal forwards;
    animation: passing-text 0s ease 1.5s 1 normal forwards; }
  body.home .top__main_visualCopy .passing-bar {
    position: relative;
    display: inline-block;
    will-change: transform; }
    body.home .top__main_visualCopy .passing-bar::before {
      content: '';
      display: inline-block;
      width: 0;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background: #fff; }
    body.home .top__main_visualCopy .passing-bar .passing-text {
      opacity: 0;
      will-change: transform; }
      body.home .top__main_visualCopy .passing-bar .passing-text p {
        color: #fff;
        font-size: 4.83vw;
        line-height: 1;
        font-weight: 900;
        letter-spacing: .05em; }
        @media (max-width: 1024px) {
          body.home .top__main_visualCopy .passing-bar .passing-text p {
            font-size: 49.5px;
            font-size: 4.95rem; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.home .top__main_visualCopy .passing-bar .passing-text p {
      font-size: 9.6vw; } }
        body.home .top__main_visualCopy .passing-bar .passing-text p:nth-child(2) {
          font-size: 2.6vw;
          letter-spacing: .02em;
          padding: 15px 0; }
          @media (max-width: 1024px) {
            body.home .top__main_visualCopy .passing-bar .passing-text p:nth-child(2) {
              font-size: 26.5px;
              font-size: 2.65rem; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.home .top__main_visualCopy .passing-bar .passing-text p:nth-child(2) {
      font-size: 5.2vw;
      padding: 10px 0; } }

body.home .top__main_visualName {
  padding-top: 10%; }
  body.home .top__main_visualName.move .passing-bar:before {
    -webkit-animation: passing-bar .7s ease 1.5s 1 normal forwards;
    animation: passing-bar .7s ease 1.5s 1 normal forwards; }
  body.home .top__main_visualName.move .passing-text {
    -webkit-animation: passing-text 0s ease 2s 1 normal forwards;
    animation: passing-text 0s ease 2s 1 normal forwards; }
  body.home .top__main_visualName .passing-bar {
    position: relative;
    display: inline-block;
    will-change: transform; }
    body.home .top__main_visualName .passing-bar::before {
      content: '';
      display: inline-block;
      width: 0;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background: #fff; }
    body.home .top__main_visualName .passing-bar .passing-text {
      opacity: 0;
      will-change: transform; }
      body.home .top__main_visualName .passing-bar .passing-text p {
        font-size: 1.62vw;
        color: #fff;
        font-weight: 400; }
        @media (max-width: 1024px) {
          body.home .top__main_visualName .passing-bar .passing-text p {
            font-size: 17px;
            font-size: 1.7rem; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.home .top__main_visualName .passing-bar .passing-text p {
      font-size: 3.5vw; } }

body.home .top__main_contact {
  width: 320px;
  height: 120px;
  padding: 35px 0 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #d60039;
  text-align: center;
  position: absolute;
  bottom: 0;
  right: 0; }
  @media (max-width: 768px) {
    body.home .top__main_contact {
      display: none; } }
  body.home .top__main_contact .tel {
    width: 256px;
    margin: 0 auto; }
    body.home .top__main_contact .tel img {
      width: 100%;
      height: auto;
      display: inline-block; }
  body.home .top__main_contact .info_text {
    font-size: 14px;
    font-size: 1.4rem;
    display: inline-block;
    color: #fff;
    padding: 3px 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #fff;
    margin-top: 10px;
    letter-spacing: -.03em; }

body.home .top__main_scroll {
  position: absolute;
  bottom: 80px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%); }
  @media (max-width: 768px) {
    body.home .top__main_scroll {
      left: 52%; } }
  body.home .top__main_scroll a {
    color: #fff;
    padding-top: 160px; }
    body.home .top__main_scroll a span {
      position: absolute;
      top: 0;
      left: 50%;
      width: 15px;
      height: 15px;
      margin-left: -12px;
      border-left: 1px solid #fff;
      border-bottom: 1px solid #fff;
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
      -webkit-animation: scroll 2s infinite;
      animation: scroll 2s infinite;
      opacity: 0;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      @media (max-width: 768px) {
        body.home .top__main_scroll a span {
          width: 12px;
          height: 12px; } }
      body.home .top__main_scroll a span:nth-of-type(1) {
        -webkit-animation-delay: 0s;
        animation-delay: 0s; }
      body.home .top__main_scroll a span:nth-of-type(2) {
        top: 16px;
        -webkit-animation-delay: .15s;
        animation-delay: .15s; }
      body.home .top__main_scroll a span:nth-of-type(3) {
        top: 32px;
        -webkit-animation-delay: .3s;
        animation-delay: .3s; }

body.home .top__site-container {
  width: 100%;
  display: block;
  min-width: 1024px; }
  @media (max-width: 768px) {
    body.home .top__site-container {
      min-width: initial; } }

body.home .top__content {
  width: 100%;
  position: relative;
  overflow: hidden; }

body.home .top__business_bg {
  width: 100%;
  height: calc(100% - 52%);
  background: url("../img/home/message_bg.jpg") repeat;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0; }
  @media (max-width: 1024px) {
    body.home .top__business_bg {
      height: calc(100% - 57%); } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.home .top__business_bg {
      height: calc(100% - 54%); } }

body.home .top__businessArea {
  width: 84%;
  margin: 0 auto;
  padding: 130px 0 180px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 1400px; }
  @media (max-width: 1024px) {
    body.home .top__businessArea {
      padding: 120px 0 150px; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.home .top__businessArea {
      width: 100%; } }
  @media (max-width: 1024px) and (max-width: 768px) and (max-width: 480px) {
    body.home .top__businessArea {
      padding: 100px 0 120px; } }

body.home .top__business_intro {
  width: 100%;
  margin-top: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media (max-width: 768px) {
    body.home .top__business_intro {
      display: none; } }

body.home .top__business_item {
  width: 30%;
  background: #fff; }

body.home .top__business_image {
  width: 100%;
  padding-top: 100%;
  position: relative; }
  body.home .top__business_image:before {
    content: '';
    width: 5px;
    height: 100%;
    background: #d60039;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1; }
  body.home .top__business_image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0; }
  body.home .top__business_image .item_no {
    text-align: center;
    width: 80px;
    height: 80px;
    background: #d60039;
    position: absolute;
    bottom: -9px;
    right: -9px; }
    body.home .top__business_image .item_no span {
      font-size: 40px;
      font-size: 4rem;
      color: #fff;
      font-style: italic;
      font-weight: 400;
      position: relative;
      top: 18px;
      left: -3px; }

body.home .top__business_text {
  width: 100%;
  padding-top: 30px; }
  body.home .top__business_text .sub_title {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #252525; }
    body.home .top__business_text .sub_title::after {
      content: '';
      display: inline-block;
      width: 30px;
      height: 1px;
      background: #d60039;
      margin-left: 15px;
      position: relative;
      top: -5px; }
  body.home .top__business_text p {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 15px; }

body.home .top__business_intro_sp {
  display: none; }
  @media (max-width: 768px) {
    body.home .top__business_intro_sp {
      display: block;
      width: 100%;
      height: 720px;
      margin-top: 80px;
      position: relative; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.home .top__business_intro_sp {
      height: 500px;
      margin-top: 10px;
      padding-top: 80px; } }
  @media (max-width: 768px) {
      body.home .top__business_intro_sp ul.swiper-wraper {
        width: 100%; }
        body.home .top__business_intro_sp ul.swiper-wraper li.swiper_slide {
          width: 80% !important; }
      body.home .top__business_intro_sp .swiper-button-next,
      body.home .top__business_intro_sp .swiper-button-prev {
        position: absolute; }
        body.home .top__business_intro_sp .swiper-button-next::after,
        body.home .top__business_intro_sp .swiper-button-prev::after {
          content: ''; }
      body.home .top__business_intro_sp .swiper-button-next {
        width: 60px !important;
        height: 60px !important;
        background: #111;
        position: absolute;
        right: 0; } }
    @media (max-width: 768px) and (max-width: 480px) {
      body.home .top__business_intro_sp .swiper-button-next {
        top: 20px;
        background: #d60039; } }
  @media (max-width: 768px) {
        body.home .top__business_intro_sp .swiper-button-next:before {
          content: '';
          display: inline-block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 10px 0 10px 16px;
          border-color: transparent transparent transparent #fff;
          margin-right: -5px; }
      body.home .top__business_intro_sp .swiper-button-prev {
        width: 60px !important;
        height: 60px !important;
        background: #111;
        position: absolute;
        left: 0; } }
    @media (max-width: 768px) and (max-width: 480px) {
      body.home .top__business_intro_sp .swiper-button-prev {
        top: 20px;
        background: #d60039; } }
  @media (max-width: 768px) {
        body.home .top__business_intro_sp .swiper-button-prev:before {
          content: '';
          display: inline-block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 10px 16px 10px 0;
          border-color: transparent #fff transparent transparent;
          margin-left: -5px; }
      body.home .top__business_intro_sp .swiper-pagination {
        position: absolute;
        bottom: 0px; } }
    @media (max-width: 768px) and (max-width: 480px) {
      body.home .top__business_intro_sp .swiper-pagination {
        bottom: 20px; } }
  @media (max-width: 768px) {
        body.home .top__business_intro_sp .swiper-pagination span.swiper-pagination-bullet {
          width: 12px;
          height: 12px;
          background: #ccc !important;
          border-radius: 0;
          margin: 0 10px;
          opacity: .8; }
          body.home .top__business_intro_sp .swiper-pagination span.swiper-pagination-bullet-active {
            background: #d60039 !important; } }

body.home .top__business_image_sp {
  width: 100%;
  padding-top: 100%;
  position: relative; }
  body.home .top__business_image_sp:before {
    content: '';
    width: 5px;
    height: 100%;
    background: #d60039;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1; }
  body.home .top__business_image_sp img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0; }
  body.home .top__business_image_sp .item_no {
    text-align: center;
    width: 80px;
    height: 80px;
    background: #d60039;
    position: absolute;
    bottom: -9px;
    right: -9px; }
    body.home .top__business_image_sp .item_no span {
      font-size: 40px;
      font-size: 4rem;
      color: #fff;
      font-style: italic;
      font-weight: 400;
      position: relative;
      top: 18px;
      left: -3px; }

body.home .top__business_text_sp {
  width: 100%;
  padding: 30px 5%;
  background: #fafafa;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  @media (max-width: 480px) {
    body.home .top__business_text_sp {
      background: #fff; } }
  body.home .top__business_text_sp .sub_title {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #252525; }
    body.home .top__business_text_sp .sub_title::after {
      content: '';
      display: inline-block;
      width: 30px;
      height: 1px;
      background: #d60039;
      margin-left: 15px;
      position: relative;
      top: -5px; }
  body.home .top__business_text_sp p {
    margin-top: 10px; }

body.home .top__btnArea {
  width: 100%;
  margin-top: 80px; }
  @media (max-width: 480px) {
    body.home .top__btnArea {
      margin-top: 40px; } }

body.home .top__conceptArea {
  width: 100%;
  height: 550px;
  position: relative; }
  @media (max-width: 480px) {
    body.home .top__conceptArea {
      height: 600px; } }
  body.home .top__conceptArea .concept_bg {
    width: 100%;
    height: 100%;
    background: url("../img/home/concept_bg_@1.5x.jpg") no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-position: center; }
    @media (max-width: 480px) {
      body.home .top__conceptArea .concept_bg {
        background: url("../img/home/concept_bg_sp_@2x.jpg") no-repeat;
        background-size: cover; } }
  body.home .top__conceptArea .concept_copy {
    width: 580px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
    @media (max-width: 768px) {
      body.home .top__conceptArea .concept_copy {
        width: 464px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.home .top__conceptArea .concept_copy {
      width: 210px; } }
    body.home .top__conceptArea .concept_copy img {
      width: 100%; }

body.home .top__messageArea {
  padding: 160px 0 60px;
  background: #fff;
  position: relative;
  z-index: 0; }
  @media (max-width: 1024px) {
    body.home .top__messageArea {
      padding: 140px 0 100px; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.home .top__messageArea {
      padding: 120px 0 100px; } }
  @media (max-width: 1024px) and (max-width: 768px) and (max-width: 480px) {
    body.home .top__messageArea {
      padding: 100px 0; } }

body.home .top__messageBoxInner {
  width: 100%;
  margin-top: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media (max-width: 768px) {
    body.home .top__messageBoxInner {
      margin-top: 80px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.home .top__messageBoxInner {
      margin-top: 60px; } }

body.home .top__messageImage {
  width: 50%;
  position: relative;
  z-index: 1; }
  @media (max-width: 768px) {
    body.home .top__messageImage {
      width: 100%;
      padding: 0 5% 0 0;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; } }
  body.home .top__messageImage .passing-text {
    width: 100%;
    height: 0;
    padding-top: calc(38 / 64 * 100%);
    position: relative;
    margin-left: 15%; }
    @media screen and (min-width: 1600px) {
      body.home .top__messageImage .passing-text {
        height: 500px;
        padding-top: 0; } }
    @media (max-width: 768px) {
      body.home .top__messageImage .passing-text {
        height: 0;
        padding-top: calc(516 / 714 * 100%);
        margin: 0; } }
    body.home .top__messageImage .passing-text img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
      object-fit: cover;
      position: absolute;
      top: 0; }

body.home .top__message_detailArea {
  width: 50%;
  position: relative; }
  @media (max-width: 768px) {
    body.home .top__message_detailArea {
      width: 100%;
      padding-left: 5%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      margin-top: -50%; } }
  body.home .top__message_detailArea .accent_box {
    width: 29%;
    position: absolute;
    left: -20%;
    bottom: -10%;
    z-index: -1; }
    @media (max-width: 768px) {
      body.home .top__message_detailArea .accent_box {
        left: 0%;
        bottom: -5%; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.home .top__message_detailArea .accent_box {
      bottom: -3%; } }
    body.home .top__message_detailArea .accent_box .accent_in {
      width: 100%;
      padding-top: 100%;
      background: #d60039; }

body.home .top__message_detailBox {
  width: auto;
  background: #414141;
  padding: 17% 10% 17% 32%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  margin-left: -10%; }
  @media screen and (min-width: 1600px) {
    body.home .top__message_detailBox {
      padding: 18% 10% 18% 32%; } }
  @media screen and (max-width: 1580px) {
    body.home .top__message_detailBox {
      padding: 13% 10% 13% 32%; } }
  @media screen and (max-width: 1580px) and (max-width: 1400px) {
    body.home .top__message_detailBox {
      padding: 11% 10% 11% 32%; } }
  @media screen and (max-width: 1580px) and (max-width: 1400px) and (max-width: 1300px) {
    body.home .top__message_detailBox {
      padding: 10% 10% 10% 32%; } }
  @media screen and (max-width: 1580px) and (max-width: 1400px) and (max-width: 1300px) and (max-width: 768px) {
    body.home .top__message_detailBox {
      padding: 60% 7% 11% 7%;
      margin-left: 0; } }
  body.home .top__message_detailBox:after {
    content: '';
    display: inline-block;
    width: 10px;
    height: 75%;
    background: #d60039;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%); }
    @media (max-width: 480px) {
      body.home .top__message_detailBox:after {
        width: 3px; } }
  body.home .top__message_detailBox .message_title {
    font-size: 18px;
    font-size: 1.8rem;
    width: 100%;
    color: #fff;
    line-height: 1.6; }
    @media (max-width: 1200px) {
      body.home .top__message_detailBox .message_title {
        font-size: 1.5vw; } }
  @media (max-width: 1200px) and (max-width: 1024px) {
    body.home .top__message_detailBox .message_title {
      font-size: 15.5px;
      font-size: 1.55rem; } }
  @media (max-width: 1200px) and (max-width: 1024px) and (max-width: 768px) {
    body.home .top__message_detailBox .message_title {
      font-size: 16px;
      font-size: 1.6rem; } }
  @media (max-width: 1200px) and (max-width: 1024px) and (max-width: 768px) and (max-width: 480px) {
    body.home .top__message_detailBox .message_title br {
      display: none; } }
  body.home .top__message_detailBox .message_text {
    width: 100%;
    margin-top: 40px; }
    @media (max-width: 1200px) {
      body.home .top__message_detailBox .message_text {
        margin-top: 20px; } }
    body.home .top__message_detailBox .message_text p {
      font-size: 14px;
      font-size: 1.4rem;
      color: #fff; }
      @media (max-width: 1200px) {
        body.home .top__message_detailBox .message_text p {
          font-size: 1.17vw; } }
  @media (max-width: 1200px) and (max-width: 1024px) {
    body.home .top__message_detailBox .message_text p {
      font-size: 11.9px;
      font-size: 1.19rem; } }
  @media (max-width: 1200px) and (max-width: 1024px) and (max-width: 768px) {
    body.home .top__message_detailBox .message_text p {
      font-size: 14px;
      font-size: 1.4rem; }
      body.home .top__message_detailBox .message_text p br {
        display: none; } }
      body.home .top__message_detailBox .message_text p + p {
        margin-top: 20px; }
  body.home .top__message_detailBox .message_name {
    width: 100%;
    margin-top: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
    @media (max-width: 768px) {
      body.home .top__message_detailBox .message_name {
        margin-top: 25px; } }
    body.home .top__message_detailBox .message_name .nameInner {
      width: 200px; }
      @media (max-width: 480px) {
        body.home .top__message_detailBox .message_name .nameInner {
          width: 160px; } }

body.home .top__companyArea {
  width: 100%;
  padding-top: calc( 56 / 140 * 100%);
  position: relative;
  margin-top: 200px; }
  @media (max-width: 1024px) {
    body.home .top__companyArea {
      margin-top: 120px; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.home .top__companyArea {
      margin-top: 100px; } }
  @media (max-width: 1024px) and (max-width: 768px) and (max-width: 480px) {
    body.home .top__companyArea {
      margin-top: -80px; } }

body.home .top__companyInner {
  width: 100%;
  position: absolute;
  top: 0;
  height: 100%;
  max-height: 700px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-flow: row-reverse wrap;
  flex-flow: row-reverse wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

@media (max-width: 768px) and (max-width: 480px) {
  body.home .top__companyInner {
    position: static;
    height: auto;
    max-height: initial; } }

body.home .top__companyRight {
  width: 64%;
  height: 100%;
  background: #fff; }
  @media (max-width: 480px) {
    body.home .top__companyRight {
      width: 100%;
      height: auto; } }
  body.home .top__companyRight ul.companyImage {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    @media (max-width: 480px) {
      body.home .top__companyRight ul.companyImage {
        height: auto; } }
    body.home .top__companyRight ul.companyImage li {
      width: calc(1 / 3 * 100% - 0.01px);
      height: 50%; }
      @media (max-width: 480px) {
        body.home .top__companyRight ul.companyImage li {
          width: calc(1 / 2 * 100%); } }
      @media (max-width: 480px) {
        body.home .top__companyRight ul.companyImage li:nth-child(1) {
          -webkit-box-ordinal-group: 5;
          -ms-flex-order: 4;
          order: 4; } }
      @media (max-width: 480px) {
        body.home .top__companyRight ul.companyImage li:nth-child(2) {
          -webkit-box-ordinal-group: -1;
          -ms-flex-order: -2;
          order: -2; } }
      @media (max-width: 480px) {
        body.home .top__companyRight ul.companyImage li:nth-child(3) {
          -webkit-box-ordinal-group: -2;
          -ms-flex-order: -3;
          order: -3; } }
      @media (max-width: 480px) {
        body.home .top__companyRight ul.companyImage li:nth-child(4) {
          -webkit-box-ordinal-group: 5;
          -ms-flex-order: 4;
          order: 4; } }
      @media (max-width: 480px) {
        body.home .top__companyRight ul.companyImage li:nth-child(5) {
          -webkit-box-ordinal-group: 1;
          -ms-flex-order: 0;
          order: 0; } }
      @media (max-width: 480px) {
        body.home .top__companyRight ul.companyImage li:nth-child(6) {
          -webkit-box-ordinal-group: 0;
          -ms-flex-order: -1;
          order: -1; } }
      body.home .top__companyRight ul.companyImage li span {
        width: 100%;
        height: 100%;
        display: block; }
        @media (max-width: 480px) {
          body.home .top__companyRight ul.companyImage li span {
            height: 0;
            padding-top: calc(56 / 60 * 100%);
            position: relative; } }
        body.home .top__companyRight ul.companyImage li span img {
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
          object-fit: cover; }
          @media (max-width: 480px) {
            body.home .top__companyRight ul.companyImage li span img {
              position: absolute;
              top: 0; } }

body.home .top__companyLeft {
  width: 36%;
  height: 100%;
  background: #414141;
  position: relative; }
  @media (max-width: 480px) {
    body.home .top__companyLeft {
      width: 100%;
      height: 0;
      padding-bottom: calc(290 / 375 * 100%);
      position: static; } }

body.home .top__company_box {
  width: 475px;
  height: 380px;
  position: absolute;
  top: 50%;
  right: -15%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }
  @media screen and (max-width: 1300px) {
    body.home .top__company_box {
      width: 403.75px;
      height: 323px; } }
  @media screen and (max-width: 1300px) and (max-width: 768px) {
    body.home .top__company_box {
      width: 332.5px;
      right: -30%;
      height: 266px; } }
  @media screen and (max-width: 1300px) and (max-width: 768px) and (max-width: 480px) {
    body.home .top__company_box {
      width: 90%;
      height: 254.6px;
      margin: 0 auto;
      position: static; } }

body.home .top__companyLabel {
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.7);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 15%;
  position: relative; }
  @media screen and (max-width: 1300px) {
    body.home .top__companyLabel {
      padding-top: 10%; } }
  @media screen and (max-width: 1300px) and (max-width: 480px) {
    body.home .top__companyLabel {
      padding-top: 13%;
      margin-top: 31%; } }
  body.home .top__companyLabel::before {
    content: '';
    display: inline-block;
    width: 5px;
    height: 100%;
    background: #d60039;
    position: absolute;
    top: 0;
    left: 0; }
  body.home .top__companyLabel .companyComment {
    width: 100%;
    padding-top: 7%; }
    @media (max-width: 480px) {
      body.home .top__companyLabel .companyComment {
        padding-top: 5%; } }
    body.home .top__companyLabel .companyComment p {
      font-size: 14px;
      font-size: 1.4rem;
      color: #fff;
      text-align: center; }

body.home .top__companyBtn {
  padding-top: 8%; }
  @media (max-width: 768px) {
    body.home .top__companyBtn {
      padding-top: 5%; } }

body.home .top__textanimation {
  width: 100%;
  height: 220px;
  margin: 0px auto 60px;
  overflow: hidden;
  background: #fff;
  position: relative; }
  @media (max-width: 1024px) {
    body.home .top__textanimation {
      height: 180px;
      margin: 0 auto 50px; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.home .top__textanimation {
      height: 150px; } }
  @media (max-width: 1024px) and (max-width: 768px) and (max-width: 480px) {
    body.home .top__textanimation {
      height: 120px;
      margin: 0 auto 20px; } }
  body.home .top__textanimation .loop_wrap {
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    opacity: 1;
    position: absolute;
    top: 55%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    white-space: nowrap; }
    body.home .top__textanimation .loop_wrap .text_inline {
      font-size: 170px;
      font-size: 17rem;
      font-weight: 400;
      color: #efecec;
      display: block;
      padding-right: .5em;
      letter-spacing: 0;
      white-space: nowrap;
      text-align: center; }
      body.home .top__textanimation .loop_wrap .text_inline:nth-child(1) {
        -webkit-animation: loop 120s -60s linear infinite;
        animation: loop 120s -60s linear infinite; }
      body.home .top__textanimation .loop_wrap .text_inline:nth-child(2) {
        -webkit-animation: loop2 120s linear infinite;
        animation: loop2 120s linear infinite; }
      @media (max-width: 1024px) {
        body.home .top__textanimation .loop_wrap .text_inline {
          font-size: 140px;
          font-size: 14rem; } }
  @media (max-width: 1024px) and (max-width: 480px) {
    body.home .top__textanimation .loop_wrap .text_inline {
      font-size: 80px;
      font-size: 8rem; } }

/*-----------lower start----------*/
body.lower .main_visual_area {
  width: 100%;
  height: 584px;
  min-width: 1024px;
  position: relative; }
  @media (max-width: 768px) {
    body.lower .main_visual_area {
      min-width: initial; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .main_visual_area {
      height: 178px;
      margin-top: 50px; } }
  body.lower .main_visual_area .main_visual {
    width: 621px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1; }
    @media (max-width: 480px) {
      body.lower .main_visual_area .main_visual {
        width: 188px; } }
    body.lower .main_visual_area .main_visual img {
      width: 100%;
      height: 100%; }
  body.lower .main_visual_area .main_markerArea {
    width: 170px;
    height: 170px;
    position: absolute;
    right: 0;
    bottom: 0; }
    @media (max-width: 1024px) {
      body.lower .main_visual_area .main_markerArea {
        width: 150px;
        height: 150px; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.lower .main_visual_area .main_markerArea {
      width: 100px;
      height: 100px; } }
  @media (max-width: 1024px) and (max-width: 768px) and (max-width: 480px) {
    body.lower .main_visual_area .main_markerArea {
      width: 50px;
      height: 50px; } }
    body.lower .main_visual_area .main_markerArea .marker {
      width: 170px;
      height: 170px;
      background: #d60039;
      position: relative; }
      @media (max-width: 1024px) {
        body.lower .main_visual_area .main_markerArea .marker {
          width: 150px;
          height: 150px; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.lower .main_visual_area .main_markerArea .marker {
      width: 100px;
      height: 100px; } }
  @media (max-width: 1024px) and (max-width: 768px) and (max-width: 480px) {
    body.lower .main_visual_area .main_markerArea .marker {
      width: 50px;
      height: 50px; } }
      body.lower .main_visual_area .main_markerArea .marker::before {
        content: '';
        display: inline-block;
        width: 170px;
        height: 170px;
        background: #d60039;
        position: absolute;
        bottom: -170px;
        right: 170px; }
        @media (max-width: 1024px) {
          body.lower .main_visual_area .main_markerArea .marker::before {
            width: 150px;
            height: 150px;
            bottom: -150px;
            right: 150px; } }
  @media (max-width: 1024px) and (max-width: 768px) {
    body.lower .main_visual_area .main_markerArea .marker::before {
      width: 100px;
      height: 100px;
      bottom: -100px;
      right: 100px; } }
  @media (max-width: 1024px) and (max-width: 768px) and (max-width: 480px) {
    body.lower .main_visual_area .main_markerArea .marker::before {
      width: 50px;
      height: 50px;
      bottom: -50px;
      right: 50px; } }
  body.lower .main_visual_area .main_visualInner {
    width: 78%;
    height: 100%;
    margin: 0 auto;
    padding: 280px 0 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media (max-width: 480px) {
      body.lower .main_visual_area .main_visualInner {
        width: 100%;
        padding: 30px 5% 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; } }
    body.lower .main_visual_area .main_visualInner .breadcrumb {
      width: 100%; }
      body.lower .main_visual_area .main_visualInner .breadcrumb ol {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch; }
        body.lower .main_visual_area .main_visualInner .breadcrumb ol li {
          font-size: 16px;
          font-size: 1.6rem;
          font-family: 'Roboto', sans-serif;
          font-weight: 400;
          color: #a9a9a9; }
          @media (max-width: 480px) {
            body.lower .main_visual_area .main_visualInner .breadcrumb ol li {
              font-size: 14px;
              font-size: 1.4rem; } }
          body.lower .main_visual_area .main_visualInner .breadcrumb ol li + li {
            margin-left: 10px; }
            body.lower .main_visual_area .main_visualInner .breadcrumb ol li + li::before {
              content: '';
              display: inline-block;
              width: 40px;
              height: 1px;
              background: #414141;
              margin-right: 10px;
              position: relative;
              top: -5px; }
              @media (max-width: 480px) {
                body.lower .main_visual_area .main_visualInner .breadcrumb ol li + li::before {
                  width: 25px; } }
          body.lower .main_visual_area .main_visualInner .breadcrumb ol li a {
            color: #414141;
            display: inline-block;
            -webkit-transition: .3s;
            -o-transition: .3s;
            transition: .3s;
            position: relative;
            text-decoration: none; }
            body.lower .main_visual_area .main_visualInner .breadcrumb ol li a::after {
              position: absolute;
              bottom: -3px;
              left: 0;
              content: '';
              width: 100%;
              height: 1px;
              background: #d60039;
              -webkit-transform: scale(0, 1);
              -ms-transform: scale(0, 1);
              transform: scale(0, 1);
              -webkit-transform-origin: right top;
              -ms-transform-origin: right top;
              transform-origin: right top;
              -webkit-transition: -webkit-transform .3s;
              transition: -webkit-transform .3s;
              -o-transition: transform .3s;
              transition: transform .3s;
              transition: transform .3s, -webkit-transform .3s; }
            body.lower .main_visual_area .main_visualInner .breadcrumb ol li a:hover {
              color: #d60039; }
              body.lower .main_visual_area .main_visualInner .breadcrumb ol li a:hover::after {
                -webkit-transform-origin: left top;
                -ms-transform-origin: left top;
                transform-origin: left top;
                -webkit-transform: scale(1, 1);
                -ms-transform: scale(1, 1);
                transform: scale(1, 1); }
    body.lower .main_visual_area .main_visualInner .main_copy {
      width: 100%;
      height: 100%;
      margin-top: 60px;
      overflow: hidden; }
      @media (max-width: 480px) {
        body.lower .main_visual_area .main_visualInner .main_copy {
          margin-top: 50px; } }
      body.lower .main_visual_area .main_visualInner .main_copy h2 {
        font-size: 86px;
        font-size: 8.6rem;
        font-size: 6.1vw;
        font-family: 'Roboto', sans-serif;
        color: #111111;
        font-weight: 500;
        -webkit-transform: scale(1.1, 1);
        -ms-transform: scale(1.1, 1);
        transform: scale(1.1, 1);
        -webkit-transform-origin: 5% top;
        -ms-transform-origin: 5% top;
        transform-origin: 5% top;
        letter-spacing: -.03em; }
        body.lower .main_visual_area .main_visualInner .main_copy h2:first-letter {
          font-size: 130px;
          font-size: 13rem;
          font-size: 9.3vw; }
          @media (max-width: 1024px) {
            body.lower .main_visual_area .main_visualInner .main_copy h2:first-letter {
              font-size: 95px;
              font-size: 9.5rem; } }
  @media (max-width: 1024px) and (max-width: 480px) {
    body.lower .main_visual_area .main_visualInner .main_copy h2:first-letter {
      font-size: 47px;
      font-size: 4.7rem; } }
        @media (max-width: 1024px) {
          body.lower .main_visual_area .main_visualInner .main_copy h2 {
            font-size: 62px;
            font-size: 6.2rem; } }
  @media (max-width: 1024px) and (max-width: 480px) {
    body.lower .main_visual_area .main_visualInner .main_copy h2 {
      font-size: 32px;
      font-size: 3.2rem; } }
      body.lower .main_visual_area .main_visualInner .main_copy .under_line {
        width: 84%;
        height: 1px;
        background: #414141;
        position: relative; }
        @media (max-width: 480px) {
          body.lower .main_visual_area .main_visualInner .main_copy .under_line {
            width: 78%; } }
        body.lower .main_visual_area .main_visualInner .main_copy .under_line::after {
          content: '';
          display: inline-block;
          width: 25%;
          height: 3px;
          background: #d60039;
          position: absolute;
          top: -1px; }
          @media (max-width: 480px) {
            body.lower .main_visual_area .main_visualInner .main_copy .under_line::after {
              width: 33%; } }

body.lower .company__site-container {
  width: 100%; }

body.lower .company__content {
  width: 100%;
  padding: 100px 0 0; }
  @media (max-width: 480px) {
    body.lower .company__content {
      padding-top: 80px; } }
  body.lower .company__content + .company__content {
    padding-top: 140px; }
    @media (max-width: 480px) {
      body.lower .company__content + .company__content {
        padding-top: 100px; } }
  body.lower .company__content:nth-child(3) {
    padding-bottom: 180px; }
    @media (max-width: 480px) {
      body.lower .company__content:nth-child(3) {
        padding-bottom: 100px; } }

body.lower .company__contentInner {
  width: 900px;
  margin: 0 auto; }
  @media (max-width: 768px) {
    body.lower .company__contentInner {
      width: 100%;
      padding: 0 5%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; } }

body.lower .company__tableArea {
  width: 100%;
  margin-top: 90px; }
  @media (max-width: 480px) {
    body.lower .company__tableArea {
      margin-top: 40px; } }
  body.lower .company__tableArea dl {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    border-top: 1px solid #ccc; }
    body.lower .company__tableArea dl:last-child {
      border-bottom: 1px solid #ccc; }
    body.lower .company__tableArea dl dt {
      font-size: 15px;
      font-size: 1.5rem;
      font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
      font-weight: bold;
      color: #454545;
      line-height: 2;
      letter-spacing: .05em;
      width: 23%;
      padding: 30px 0; }
      @media (max-width: 480px) {
        body.lower .company__tableArea dl dt {
          font-size: 14px;
          font-size: 1.4rem;
          width: 100%;
          padding: 20px 0 0;
          line-height: 1.8; } }
    body.lower .company__tableArea dl dd {
      font-size: 15px;
      font-size: 1.5rem;
      font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
      color: #454545;
      line-height: 2;
      letter-spacing: .05em;
      width: 77%;
      padding: 30px 0; }
      @media (max-width: 480px) {
        body.lower .company__tableArea dl dd {
          font-size: 14px;
          font-size: 1.4rem;
          width: 100%;
          padding: 0 0 20px;
          line-height: 1.8; } }

body.lower .company__accessArea {
  width: 100%;
  margin-top: 90px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch; }
  @media (max-width: 480px) {
    body.lower .company__accessArea {
      margin-top: 40px; } }

body.lower .company__mapBox {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 480px) {
    body.lower .company__mapBox + .company__mapBox {
      margin-top: 40px; } }
  @media (max-width: 480px) {
    body.lower .company__mapBox {
      width: 100%; } }
  body.lower .company__mapBox.-t_space {
    margin-top: 50px; }
    @media (max-width: 480px) {
      body.lower .company__mapBox.-t_space {
        margin-top: 40px; } }

body.lower .company__map {
  width: 100%;
  height: 0;
  padding-top: calc(330 / 435 * 100%);
  position: relative;
  overflow: hidden; }
  body.lower .company__map iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0; }

body.lower .company__address {
  font-size: 15px;
  font-size: 1.5rem;
  font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
  color: #454545;
  line-height: 1.8;
  letter-spacing: .05em;
  margin-top: 10px;
  text-align: center; }
  @media (max-width: 480px) {
    body.lower .company__address {
      font-size: 14px;
      font-size: 1.4rem; } }

body.lower .business__site-container {
  width: 100%; }

body.lower .business__content {
  width: 100%;
  padding: 100px 0 60px; }
  @media (max-width: 480px) {
    body.lower .business__content {
      padding: 80px 0 40px; } }

body.lower .business__contentInner {
  width: 70%;
  max-width: 1100px;
  min-width: 990px;
  margin: 0 auto; }
  @media (max-width: 1024px) {
    body.lower .business__contentInner {
      width: 100%;
      padding: 0 5%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      min-width: initial; } }

body.lower .business__contentGroup {
  width: 100%;
  padding: 100px 0;
  border-bottom: 1px solid #ccc; }
  @media (max-width: 768px) {
    body.lower .business__contentGroup {
      padding: 80px 0; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .business__contentGroup {
      padding: 50px 0; } }

body.lower .business__contentBox, body.lower .business__contentBox_r {
  width: 100%;
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-flow: row-reverse wrap;
  flex-flow: row-reverse wrap; }
  @media (max-width: 480px) {
    body.lower .business__contentBox, body.lower .business__contentBox_r {
      margin-top: 20px; } }

body.lower .business__contentBox {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap; }

body.lower .business__contentImage {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 768px) {
    body.lower .business__contentImage {
      width: 100%; } }
  body.lower .business__contentImage img {
    width: 100%; }

body.lower .business__contentText {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 768px) {
    body.lower .business__contentText {
      width: 100%;
      margin-top: 30px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .business__contentText {
      margin-top: 15px; }
      body.lower .business__contentText p br {
        display: none; } }

body.lower .business__btnArea {
  width: 100%;
  margin-top: 60px; }
  @media (max-width: 480px) {
    body.lower .business__btnArea {
      width: auto;
      margin: 30px -5% 0 -5%; } }

body.lower .business__listArea {
  width: 100%; }
  body.lower .business__listArea li {
    font-size: 14px;
    font-size: 1.4rem;
    color: #454545;
    line-height: 2;
    letter-spacing: .05em;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    text-align: justify;
    text-justify: inter-ideograph;
    word-break: normal;
    line-break: strict;
    list-style: disc;
    margin-left: 20px; }
    @media (max-width: 480px) {
      body.lower .business__listArea li {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.8; } }
    body.lower .business__listArea li span {
      color: #d60039; }

body.lower .business__lineNone {
  border-bottom: none; }

body.lower .creative__site-container {
  width: 100%;
  min-width: 1100px; }
  @media (max-width: 1024px) {
    body.lower .creative__site-container {
      min-width: initial; } }

body.lower .creative__content {
  width: 100%;
  padding: 100px 0 80px; }
  @media (max-width: 480px) {
    body.lower .creative__content {
      padding: 80px 0 40px; } }

body.lower .creative__contentInner {
  width: 70%;
  max-width: 1100px;
  margin: 0 auto; }
  @media (max-width: 1024px) {
    body.lower .creative__contentInner {
      width: 100%;
      padding: 0 5%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      min-width: initial; } }

body.lower .creative__mainTitleArea {
  font-size: 22px;
  font-size: 2.2rem;
  font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
  margin-top: 80px;
  text-align: center; }
  @media (max-width: 768px) {
    body.lower .creative__mainTitleArea {
      margin-top: 60px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .creative__mainTitleArea {
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 40px; } }

body.lower .creative__contentGroup {
  width: 100%;
  padding: 100px 0;
  border-bottom: 1px solid #ccc; }
  @media (max-width: 768px) {
    body.lower .creative__contentGroup {
      padding: 80px 0; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .creative__contentGroup {
      padding: 50px 0; } }

body.lower .creative__small_title {
  width: 100%;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
  line-height: 1.6;
  font-weight: bold;
  margin-top: 40px; }
  @media (max-width: 480px) {
    body.lower .creative__small_title {
      font-size: 14px;
      font-size: 1.4rem;
      margin-top: 20px; } }

body.lower .creative__contentImage_sb {
  width: 100%; }
  body.lower .creative__contentImage_sb img {
    width: 100%; }

body.lower .creative__contentBox_l {
  width: 100%;
  margin-top: 40px; }
  @media (max-width: 480px) {
    body.lower .creative__contentBox_l {
      margin-top: 20px; } }

body.lower .creative__contentImage_sb {
  display: none; }
  @media (max-width: 768px) {
    body.lower .creative__contentImage_sb {
      display: block; } }

body.lower .creative__contentText_l {
  width: 100%; }
  @media (max-width: 768px) {
    body.lower .creative__contentText_l {
      margin-top: 30px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .creative__contentText_l {
      margin-top: 15px; }
      body.lower .creative__contentText_l p br {
        display: none; } }

body.lower .creative__contentImage_l {
  width: 100%;
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch; }
  @media (max-width: 768px) {
    body.lower .creative__contentImage_l {
      margin-top: 30px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .creative__contentImage_l {
      margin-top: 15px; } }

body.lower .creative__image_l, body.lower .creative__image_r {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 768px) {
    body.lower .creative__image_l, body.lower .creative__image_r {
      width: 100%; } }
  body.lower .creative__image_l img, body.lower .creative__image_r img {
    width: 100%; }

body.lower .creative__contentBox, body.lower .creative__contentBox_r {
  width: 100%;
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-flow: row-reverse wrap;
  flex-flow: row-reverse wrap; }
  @media (max-width: 480px) {
    body.lower .creative__contentBox, body.lower .creative__contentBox_r {
      margin-top: 20px; } }

body.lower .creative__contentBox {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap; }

body.lower .creative__contentImage {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 768px) {
    body.lower .creative__contentImage {
      width: 100%; } }
  body.lower .creative__contentImage img {
    width: 100%; }

body.lower .creative__contentText {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 768px) {
    body.lower .creative__contentText {
      width: 100%;
      margin-top: 30px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .creative__contentText {
      margin-top: 15px; }
      body.lower .creative__contentText p br {
        display: none; } }

body.lower .creative__btnArea {
  width: 100%;
  margin-top: 60px; }
  @media (max-width: 480px) {
    body.lower .creative__btnArea {
      width: auto;
      margin: 30px -5% 0 -5%; } }

body.lower .creative__listArea {
  width: 100%; }
  body.lower .creative__listArea li {
    font-size: 14px;
    font-size: 1.4rem;
    color: #454545;
    line-height: 2;
    letter-spacing: .05em;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    text-align: justify;
    text-justify: inter-ideograph;
    word-break: normal;
    line-break: strict;
    list-style: disc;
    margin-left: 20px; }
    @media (max-width: 480px) {
      body.lower .creative__listArea li {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.8; } }
    body.lower .creative__listArea li span {
      color: #d60039; }

body.lower .creative__lineNone {
  border-bottom: none; }

body.lower .consul__site-container {
  width: 100%;
  min-width: 1100px; }
  @media (max-width: 1024px) {
    body.lower .consul__site-container {
      min-width: initial; } }

body.lower .consul__content {
  width: 100%;
  padding: 100px 0 80px; }
  @media (max-width: 480px) {
    body.lower .consul__content {
      padding: 80px 0 40px; } }

body.lower .consul__contentInner {
  width: 70%;
  max-width: 1100px;
  min-width: 990px;
  margin: 0 auto; }
  @media (max-width: 1024px) {
    body.lower .consul__contentInner {
      width: 100%;
      padding: 0 5%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      min-width: initial; } }

body.lower .consul__mainTitleArea {
  font-size: 22px;
  font-size: 2.2rem;
  font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
  margin-top: 80px;
  text-align: center; }
  @media (max-width: 768px) {
    body.lower .consul__mainTitleArea {
      margin-top: 60px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .consul__mainTitleArea {
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 40px; } }

body.lower .consul__contentGroup {
  width: 100%;
  padding: 100px 0;
  border-bottom: 1px solid #ccc; }
  @media (max-width: 768px) {
    body.lower .consul__contentGroup {
      padding: 80px 0; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .consul__contentGroup {
      padding: 50px 0; } }

body.lower .consul__small_title {
  width: 100%;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
  line-height: 1.6;
  font-weight: bold;
  margin-top: 40px; }
  @media (max-width: 480px) {
    body.lower .consul__small_title {
      font-size: 14px;
      font-size: 1.4rem;
      margin-top: 20px; } }

body.lower .consul__contentBox_l {
  width: 100%;
  margin-top: 40px; }
  @media (max-width: 480px) {
    body.lower .consul__contentBox_l {
      margin-top: 20px; } }

body.lower .consul__contentImage_sb {
  display: none; }
  @media (max-width: 768px) {
    body.lower .consul__contentImage_sb {
      display: block; } }

body.lower .consul__contentBox {
  width: 100%;
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-flow: row-reverse wrap;
  flex-flow: row-reverse wrap; }
  @media (max-width: 480px) {
    body.lower .consul__contentBox {
      margin-top: 20px; } }

body.lower .consul__contentImage {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 768px) {
    body.lower .consul__contentImage {
      width: 100%; } }
  body.lower .consul__contentImage img {
    width: 100%; }

body.lower .consul__contentText {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 768px) {
    body.lower .consul__contentText {
      width: 100%;
      margin-top: 30px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .consul__contentText {
      margin-top: 15px; }
      body.lower .consul__contentText p br {
        display: none; } }
  body.lower .consul__contentText p.marking::before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    background: #454554;
    margin-right: 5px;
    position: relative;
    top: -1px; }

body.lower .consul__list li {
  font-size: 14px;
  font-size: 1.4rem;
  color: #454545;
  line-height: 2;
  letter-spacing: .05em;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: normal;
  line-break: strict; }
  @media (max-width: 480px) {
    body.lower .consul__list li {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.8; } }

body.lower .consul__lineNone {
  border-bottom: none; }

body.lower .election__site-container {
  width: 100%;
  min-width: 1100px; }
  @media (max-width: 1024px) {
    body.lower .election__site-container {
      min-width: initial; } }

body.lower .election__content {
  width: 100%;
  padding: 100px 0 180px; }
  @media (max-width: 768px) {
    body.lower .election__content {
      padding: 100px 0 120px; } }
  @media (max-width: 480px) {
    body.lower .election__content {
      padding: 80px 0 90px; } }

body.lower .election__contentInner {
  width: 70%;
  max-width: 1100px;
  margin: 0 auto; }
  @media (max-width: 1024px) {
    body.lower .election__contentInner {
      width: 100%;
      padding: 0 5%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      min-width: initial; } }

body.lower .election__contentGroup {
  width: 100%;
  padding: 100px 0 0; }
  @media (max-width: 768px) {
    body.lower .election__contentGroup {
      padding: 80px 0 0; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .election__contentGroup {
      padding: 50px 0 0; } }

body.lower .election__detailBox {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin-top: 30px; }
  @media (max-width: 480px) {
    body.lower .election__detailBox {
      margin-top: 15px; } }

body.lower .election__detailImage {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 768px) {
    body.lower .election__detailImage {
      width: 100%; } }
  body.lower .election__detailImage img {
    width: 100%; }

body.lower .election__detail_comment {
  width: calc(1 / 2 * 100% - 3%); }
  @media (max-width: 768px) {
    body.lower .election__detail_comment {
      width: 100%;
      margin-top: 30px; } }
  @media (max-width: 768px) and (max-width: 480px) {
    body.lower .election__detail_comment {
      margin-top: 15px; }
      body.lower .election__detail_comment p br {
        display: none; } }

body.lower .election__detailArea {
  width: 100%;
  margin-top: 100px;
  padding: 80px 0;
  background: #f7f7f7; }
  @media (max-width: 768px) {
    body.lower .election__detailArea {
      margin-top: 60px;
      padding: 60px 0; } }

body.lower .election__detailTitle {
  font-size: 20px;
  font-size: 2rem;
  font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
  text-align: center; }
  body.lower .election__detailTitle::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 1px;
    background: #d60039;
    margin-right: 10px;
    position: relative;
    top: -7px; }
  body.lower .election__detailTitle::after {
    content: '';
    display: inline-block;
    width: 20px;
    height: 1px;
    background: #d60039;
    margin-left: 10px;
    position: relative;
    top: -7px; }
  @media (max-width: 480px) {
    body.lower .election__detailTitle {
      font-size: 16px;
      font-size: 1.6rem; } }

body.lower .election__detailInner {
  width: 550px;
  margin: 60px auto 0; }
  @media (max-width: 480px) {
    body.lower .election__detailInner {
      width: 100%;
      padding: 0 5%;
      margin: 30px auto 0;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; } }

body.lower .election__detail_group {
  width: 100%;
  margin-top: 10px; }
  body.lower .election__detail_group p {
    margin-left: .7em; }
    @media (max-width: 480px) {
      body.lower .election__detail_group p br {
        display: none; } }

body.lower .election__detail_subTitle {
  font-size: 14px;
  font-size: 1.4rem;
  font-family: Arial,Verdana,"Helvetica Neue",Helvetica,"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"Ｓ Ｐゴシック","MS PGothic", sans-serif;
  line-height: 2;
  font-weight: bold; }
  @media (max-width: 768px) {
    body.lower .election__detail_subTitle {
      line-height: 1.8; } }
  body.lower .election__detail_subTitle::before {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    background: #d60039;
    margin-right: 5px;
    position: relative;
    top: -3px; }

body.lower .election__resultBox {
  width: 100%;
  padding-top: 100px; }
  @media (max-width: 480px) {
    body.lower .election__resultBox {
      padding-top: 60px; } }

body.lower .election__result_group {
  width: 100%;
  margin-top: 40px; }
  @media (max-width: 480px) {
    body.lower .election__result_group {
      margin-top: 30px; } }
  body.lower .election__result_group p {
    text-align: center; }
    body.lower .election__result_group p span {
      color: #d60039; }
